文档库 最新最全的文档下载
当前位置:文档库 › eda实验7

eda实验7

eda实验7
eda实验7

电子信息工程学系实验报告

课程名称:EDA技术与实验

实验项目名称:用always块实现较复杂的组合逻辑电路实验时间:2011-11-21

班级:通信091 姓名:简必建学号:910705116

实验目的:

1.掌握用always实现较大组合逻辑电路的方法。

2.进一步了解assign与always两种组合电路实现方法的区别和注意点。

实验环境:

max+plusⅡ

实验原理:

1.结构描述。

在Verilog程序中可通过如下方式描述电路的结构

◆调用Verilog内置门元件(门级结构描述)

◆调用开关级元件(晶体管级结构描述)

◆用户自定义元件UDP(也在门级)

2.行为描述。

就是对设计实体的数学模型的描述,其抽象程度远高于结构描述方式。行为描述类似于高级编程语言,当描述一个设计实体的行为时,无需知道具体电路的结构,只需要描述清楚输入与输出信号的行为,而不需要花费更多的精力关注设计功能的门级实现。

3.数据流描述。

数据流描述方式主要使用持续赋值语句,多用于描述组合逻辑电路,其格式为:

assign LHS_net=RHS_expression;

右边表达式中的操作数无论何时发生变化,都会引起表达式值的重新计算, 并将重新计算后的值赋予左边表达式的net型变量

4.使用assign结构来实现组合逻辑电路

举例:简单指令译码电路的设计示例

模块源代码:

//----------文件名alu.v----------------

`define plus 3'd0

`define minus 3'd1

`define band 3'd2

`define bor 3'd3

`define unegate 3'd4

module alu(out,opcode,a,b); output[7:0] out;

reg[7:0] out;

input[2:0] opcode;

input[7:0] a,b;

always @(opcode or a or b)

begin

case(opcode)

`plus: out=a+b;

`minus: out=a-b;

`band: out=a&b;

`bor: out=a|b;

`unegate: out=~a;

default: out=8'hx;

endcase

end

endmodu

le 仿真结果如下:成绩:

指导教师(签名):

实验内容及过程:

实验内容:

1.学习Verilog HDL 设计课件。

2.运用always块设计一个8路数据选择器。要求:每路输入数据与输出数据均为4位2进制数,当选择开关(至少3位)或输入数据发生变化时,输出数据也相应地变化

实验步骤:

1.在教师的指导下,学习Verilog HDL课件。

2.由教师演示max+plusⅡ软件的文本设计流程。

3.参考课件实例,动手操作软件,按照流程做完从新建文件,编译,仿真,分配引脚等软件操作部分的全过程。

4.参考上述实例,完成实验内容2。

实验结果及其分析:

一.调用门元件实现的4选一MUX

1.新建文件并保存

图一

2.编译

图二

3仿真波形

图三4.仿真结果

图四二.四位计数器

操作同上

1.新建文件并输入程序

图五

2.仿真结果

图六

三.四选一MUX

1.新建文件并输入程序

图七2.仿真结果

图八四.八选一数据选择器

1.新建文件并保存程序

图九2.仿真结果

图十

实验心得

1. 通过本次实验我们掌握用always实现较大组合逻辑电路的方法。

2进一步了解assign与always两种组合电路实现方法的区别和注意点

四选一、四位比较器、加法器、计数器、巴克码发生器、七人表决器

EDA实验报告 姓名: 学号: 班级:

实验14选1数据选择器的设计 一、实验目的 1.学习EDA软件的基本操作。 2.学习使用原理图进行设计输入。 3.初步掌握器件设计输入、编译、仿真和编程的过程。 4.学习实验开发系统的使用方法。 二、实验仪器与器材 1.EDA开发软件一套 2.微机一台 3.实验开发系统一台 4.打印机一台 三、实验说明 本实验通过使用基本门电路完成4选1数据选择器的设计,初步掌握EDA设计方法中的设计输入、编译、综合、仿真和编程的过程。实验结果可通过实验开发系统验证,在实验开发系统上选择高、低电平开关作为输入,选择发光二极管显示输出电平值。 本实验使用Quartus II 软件作为设计工具,要求熟悉Quartus II 软件的使用环境和基本操作,如设计输入、编译和适配的过程等。 实验中的设计文件要求用原理图方法输入,实验时,注意原理图编辑器的使用方法。例如,元件、连线、网络名的放置方法和放大、缩小、存盘、退出等命令的使用。学会管脚锁定以及编程下载的方法等。 四、实验要求 1.完成4选1数据选择器的原理图输入并进行编译; 2.对设计的电路进行仿真验证; 3.编程下载并在实验开发系统上验证设计结果。 五、实验结果 4选1数据选择器的原理图: 仿真波形图:

管脚分配:

实验2 四位比较器 一、实验目的 1.设计四位二进制码比较器,并在实验开发系统上验证。 2.学习层次化设计方法。 二、实验仪器与器材 1.EDA 开发软件 一套 2.微机 一台 3.实验开发系统 一台 4.打印机 一台 5.其它器件与材料 若干 三、实验说明 本实验实现两个4位二进制码的比较器,输入为两个4位二进制码0123A A A A 和 0123B B B B ,输出为M (A=B ),G (A>B )和L (A

七人表决器实验报告

七人表决器 一.实验目的 1.掌握Quartus II软件安装,熟悉Quartus II操作环境。 2.初步了解VHDL语言。 3.学习使用行为级描述方法设计电路。 二.实验原理 七人表决器 使用7个电平开关作为表决器的7个输入变量,输入为电平“1”时表示表决者“赞同”,输入为电平“0”时表示表决者“不赞同”。当表决器的7个输入变量中有不少于4个输入变量输入“1”,那么表决结果输出逻辑高电平,表示表决“通过”,否则,输出逻辑低电平,表示表决“不通过”。 七人表决器的可选设计方案非常多,可以采用使用全加器的组合逻辑。使用VHDL 进行设计的时候,可以选择行为级描述、寄存器级描述,结等方法。 当采用行为级描述的时候,采用一个变量记载选举通过的总人数。当这个变量的数值大于等于4时,表决通过,绿灯亮;否则表决不通过,黄灯亮。因此,设计时,需要检查每一个输入的电平,并且将逻辑高电平的输入数目进行相加,并且进行判断,从而决定表决是否通过。 二.实验内容 1.安装Quartus II软件,熟悉Quartus II操作环境。 2.使用VHDL实现上述描述。 3.波形仿真。 4.生成元件以及RTL 四.设计提示 1.初次接触VHDL应该注意程序的框架结构,数据类型和运算操作符。 2.了解变量和信号的区别。 3.了解进程内外语句的顺序和并行执行的区别。 4.设计文本的端口可如下:

《VHDL 语言与数字逻辑电路设计》实验指导书 - 2 – 设计文本: LIBRARY IEEE; library ieee; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_unsigned.ALL; ENTITY vote7 IS PORT( men:in std_logic_vector(6 downto 0); LedPass,LedFail:OUT std_logic ); END vote7; ARCHITECTURE behave OF vote7 IS signal pass:std_logic; BEGIN PROCESS(men) variable temp:std_logic_vector(2 downto 0); BEGIN temp:="000"; for i in 0 to 6 loop if(men(i)='1')then temp:=temp+1; else temp:=temp+0; end if; end loop; pass<=temp(2); END PROCESS; LedPass<='1' WHEN pass='1'ELSE '0'; LedFail<='1' WHEN pass='0'ELSE '0'; --库和程序包 --实体 --结构体 --结束

西安电子科技大学EDA实验报告

EDA大作业及实验报告

实验一:QUARTUS Ⅱ软件使用及组合电路设计仿真 实验目的: 学习QUARTUS Ⅱ软件的使用,掌握软件工程的建立,VHDL源文件的设计和波形仿真等基本内容; 实验内容: 1.四选一多路选择器的设计 首先利用QuartusⅡ完成4选1多路选择器的文本编辑输入(mux41a.vhd)和仿真测试等步骤,给出仿真波形。 步骤: (1)建立工作库文件夹和编辑设计文件; (2)创建工程; (3)编译前设置; (4)全程编译; (5)时序仿真; (6)应用RTL电路图观测器(可选择) 实验程序如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS PORT( S10:IN STD_LOGIC_VECTOR(1 DOWNTO 0); A,B,C,D:IN STD_LOGIC; Q:OUT STD_LOGIC ); END ENTITY mux41; ARCHITECTURE bhv OF mux41 IS BEGIN PROCESS(A,B,C,D,S10) BEGIN IF S10="00" THEN Q<=A; ELSIF S10="01" THEN Q<=B; ELSIF S10="10" THEN Q<=C; ELSE Q<=D; END IF; END PROCESS; END bhv; 波形仿真如图:

其中,分别设置A,B,C,D四个输入都为10.0ns的方波,其占空比分别为25%,50%,75%,90%以作为四种输入的区分,使能端s10以此输入00(即[0]),01(即[1]),10(即[2]),11(即[3]),可以观察到输出端Q依次输出分别为A,B,C,D。试验成功。 其RTL电路图为: 2.七段译码器程序设计仿真 2.1 原理:7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。本项实验很容易实现这一目的。例1作为7段BCD码译码器的设计,输出信号LED7S的7位分别接如实验图1数码管的7个段,高位在左,低位在右。例如当LED7S输出为"0010010" 时,数码管的7个段:g、f、e、d、c、b、a分别接0、0、1、0、0、1、0,实验中的数码管为共阳极的,接有低电平的段发亮,于是数码管显示“5”。 实验图1 数码管及其电路 2.2 实验内容:参考后面的七段译码器程序,在QUARTUS II上对以下程序进行编辑、编译、综

单片机七人表决器

一.方案设计 1.设计题目:七人表决器。 2.实训要求 利用AT89S51单片机设计并制作会议表决计票器电路。具体要求如下: 1、可供57个人进行表决,每个人有一个“同意”和一个“反对”按键,表决时两个键先按下的一个有效,若再按另一个键将清楚前一次按键的效能;每次表决每个按键只能是第一次按的有效,多按的次数无效,除非前一次按键的效能已被清楚或没有生效。 2、会议主持人可利用按键控制表决开始和结束;开始表决后,点亮黄色指示灯,表示可以进行表决,同时清楚原来的表决结果;结束表决后显示表决结果;“同意”多于“反对”点亮绿色指示灯,反之点亮红色指示灯。 3、在实现上述功能的基础上增加“同意”数和“反对”数的显示。 二.硬件电路设计和原理。 1.硬件设计思路: 设计题目为5—7人表决器,题目选为七人表决器,七个按键表示同意,七个按键表示反对,各按键与单片机的输入端口相连,因此可选用单片机的四个I/O口,因为在单片机内部P1和P2都有上啦电阻,而P0没有上啦电阻,要在外部加上一个上拉电阻,为了简化电路,把P1和P2口选为按键同意和反对的输入端,因为表决考试和结束要

利用主持人按键来控制,我采用外部中断0和外部中断一来控制其开始和结束;设计要求中需要四张灯,分别为2个红灯,一个黄灯,一个绿灯,其中三个灯用于输出显示,可用单片机的I/O口,另外一个红灯作为电源灯来显示,判断是否通电,因为P1口和P2口用做按键的同意和反对,把P2剩余的I/O口与三个灯连接,分别连接在P2.3,P2.4,P2.5口,因为P0口是低电平有效所以我的P0口与LED现实器相连用于显示反对与同意的人数的多少,采用动态显示的方式,为了保证两个显示器不再相同时间显示相同的数字,所以LED显示器的公共端受另外一组信号的控制,采用延时的方式让它们分别显示出来。 2.元件参数确定: 设计中需要四盏灯,分别为两个红灯,一个绿灯,一个黄灯,P0口的输出端输出高电平一般为5伏左右,最大电流为五毫安,因此必须加上限流电阻,我选用的是470欧的电阻,然后将单片机的最小系统加入此次的电路中。 3.元件清单: 14个开关用于7人同意与反对按键,另外两个开关用做控制投票开始和结束的总开关。 电容:用于单片机的最小系统。 发光二极管:用于表示投票开始与结束,和最后同意与反对票数的对比情况。 电阻:用于限流。

EDA实验指导书

实验一上机学习电路原理图的绘制(2) 一、设计目的 1. 掌握PROTEL软件的安装、运行及卸载,掌握Protel 99 SE的基本操作; 2. 掌握设计管理器的使用和设计环境的设置,熟悉常用元件库和各主要菜单及命令的使用; 3.学习电路原理图的基本绘图方法 二、设计内容 1.设置原理图的环境参数,添加相应的元件库文件 2.绘制课本P92页的一个D/A功能模块电路图,其中由一片12位的D/A、两片运放、一些电阻和电容组成 图1-1 实验1电路原理图实例 三、设计设备和仪器 1.计算机 1 台(CPU要求Pentium 166MHz以上,推荐内存应为16MB以上,显示器分辨率为800×600(或1024×768)模式。) 2.Protel 99SE 软件 四、设计方法 根据电路图加载相应的元件库文件,然后选择放置电子元件,编辑各元件并精确调整元件位置。对放置好的元件根据例图连接导线,绘制总线和总线出入端口,放置网络标号及电源和输入输出端口。最后放置注释文字。 五、实验步骤 (1)新建名为自己学号姓名的设计数据库 点击“NEW新建”新建数据库文件 在上图所示的选项栏里设置名为自己姓名学号的数据库文件 (2)建立名为自己姓名的原理图文件

点击上图所示图标建立名为自己姓名的原理图文件(3)进入原理图设计环境,修改文件名并修改图纸大小为A4 点击下图中“Options”选项设置图纸大小 (4)加载常用元件库 (5)从元件库中选出需用元件放在原理图设计工作面上 (6)利用绘图工具对所有元器件进行连线 最终原理图如图所示。 六、设计报告 1.明确实验目的和实验要求; 2.写出详细的实验内容和步骤; 3.写出实验中遇到的问题及改正的方法 七、注意事项 熟悉绘图工具的功能和用法是绘制好电路原理图的关键。

EDA实验指导 基于FPGA的动态扫描电路设计new

FPGA实验指导及记录 实验三基于FPGA的数码管动态扫描电路设计 1.实验目的: (1)掌握FPGA工作的基本原理、FPGA硬件平台的使用; (2)熟悉7段数码管显示译码电路的设计。 (3)掌握数码管动态扫描显示原理及动态扫描电路的设计。 2.实验任务:利用FPGA硬件平台上的6位数码管动态显示计数器输出数据。 3.电路设计 (1)顶层电路 由分频模块fre_div,计数器模块counter100,译码显示模块diaplay构成。分频模块fre_div将可将实验平台晶体振荡器提供的50MHz时钟信号分频,输出500Hz,1KHz及1Hz三种信号备用,conter100模块实现模100计数功能,display模块为数码管动态显示模块,实现计数数字在6位数码管上的动态显示。 (2)分频器模块fre_div 该模块已经设计完成,存放在F盘502文件夹里,使用时请自行拷贝至当前工程文件夹,并按设计需要选择合适的输出。 (3)计数器模块counter100 该计数器模块实现模100计数。此处同学们应掌握数据总线的画法。

(4)译码显示模块display 该模块由counter6模块,dig_select模块,seg_select模块以及decoder模块构成,请同学们自行完成该模块总体设计,当display模块的输入信号scanclk频率为1KHz时,数码管扫描周期为36ms,每次扫描每位数码管显示时长6ms。各子模块设计思路如下。 a)counter6模块 该模块需使用74390设计一个模6的计数器。请在空白处做预设计,画出电路图。 b)dig_select模块 该模块用于选择6位数码管中的某一位显示相应字形。74138为3-8译码器,功能表见附录。

基于VHDL语言的EDA实验报告(附源码)

EDA 实验报告 ——多功能电子钟 姓名:张红义 班级:10级电科五班 学号:1008101143 指导老师:贾树恒

电子钟包括:主控模块,计时模块,闹钟模块,辅控模块,显示模块,蜂鸣器模块,分频器模块。 1.主控模块: 主要功能:控制整个系统,输出现在的状态,以及按键信息。 源代码: libraryieee; use ieee.std_logic_1164.all; useieee.std_logic_arith.all; useieee.std_logic_unsigned.all; entity mc is port(functionswitch,k,set,lightkey: in std_logic; chose21,setout: out std_logic; lightswitch:bufferstd_logic; modeout,kmodeout : out std_logic_vector(1 downto 0); setcs,setcm,setch,setas,setam,setah:outstd_logic); end mc; architecture work of mc is signalmode,kmode:std_logic_vector(1 downto 0); signal light,chose21buf:std_logic; signalsetcount:std_logic_vector(5 downto 0); begin process(functionswitch,k,set,lightkey) begin iffunctionswitch'event and functionswitch='1' then mode<=mode+'1'; end if; iflightkey'event and lightkey='1' then lightswitch<=not lightswitch; end if; if mode="01" thenchose21buf<='0'; else chose21buf<='1'; end if; ifk'event and k='1' then if mode="01" or mode="11" then kmode<=kmode+'1'; end if;end if; if set='1' then if mode = "01" then ifkmode="01" then setcount<="000001"; elsifkmode="10" thensetcount<="000010"; elsifkmode="11" then setcount<="000100";

七人表决器

学院名称电子技术基础课程设计报告 七人表决器电路设计报告 学生姓名__ _____ 学号 专业 指导教师 系别__ _ 年月日

一、评语(根据学生答辩情况及其报告质量综合评定)。 二、评分 指导教师签字: 年月日

摘要 本次设计的七人表决器,是投票系统中的客户端,是一种代表投票或举手表决的表决装置。表决时,与会的有关人员只要按动各自表决器上“赞成”“反对”“弃权”的某一按钮,相应灯的明亮即显示出表决结果。在七人表决器中七个人分别用手指拨动开关 SW1、SW2、SW3、SW4、SW5、SW6、SW7 来表示自己的意愿,如果对某决议同意,各人就把自己的指拨开关拨到高电平(上方)不同意就把自己的指拨开关拨到低电平(下方)。表决结果用 LED(高电平亮)显示,如果决议通过那么发光二极管会发亮;如果不通过那么发光二极管就不亮;如果对某个决议有任意四到七人同意,那么此决议通过,发光二极管就会发亮;如果对某个决议只有一个人或没人同意,那么此决议不通过,发光二极管就不会亮。根据设计与制作的主要内容按照设计题目,以及所学的组合逻辑所学的知识及数字电路和嵌入式的知识完成七人表决器的设计,使之能够满足表决时少数服从多数的表决规则,根据逻辑真值表和逻辑表达式完成表决功能。首先根据七人多数表决电路列出真值表,进行化简,写出逻辑表达式,画出逻辑图。

目录 1 概述 (1) 2 系统总体方案及硬件设计 (2) 2.1电路的总体原理框图 (2) 2.2元件选择 (2) 3 各模块设计 (3) 3.1投票按键部分电路设计 (3) 3.2输入转换部分及控制电路 (3) 3.3票数统计部分及控制电路 (4) 3.4票据分析与结果显示分 (5) 3.5总体电路 (7) 4 软件仿真 (8) 5 课程设计体会 (9) 参考文献(按照标准格式) (10)

EDA实验指导书

实验一 MAX+PLUSII软件的使用 [实验目的] 掌握MAX+PLUSII软件的使用。 [实验内容] 学习MAX+PLUSII软件的设计操作步骤。 [实验原理] MAX+PLUSII软件介绍。 MAX+PLUSII软件功能简介: 1 原理图输入(Graphic Editor) MAX+PLUSII软件具有图形输入能力,用户可以方便的使用图形编辑器输入电路图,图中的元器件可以调用元件库中元器件,除调用库中的元件以外,还可以调用该软件中的符号功能形成的功能块。 2 硬件描述语言输入(Text Editor) MAX+PLUSII软件中有一个集成的文本编辑器,该编辑器支持VHDL,AHDL和Verilog硬件描述语言的输入,同时还有一个语言模板使输入程序语言更加方便,该软件可以对这些程序语言进行编译并形成可以下载配置数据。 3 波形编辑器(waveform Editor) 在进行逻辑电路的行为仿真时,需要在所设计电路的输入端加入一定的波形,波形编辑器可以生成和编辑仿真用的波形(*.SCF文件),使用该编辑器的工具条可以容易方便的生成波形和编辑波形。 4 编译与仿真 当设计文件被编译好,并在波形编辑器中将输入波形编辑完毕后,就可以进行行为仿真了,通过仿真可以检验设计的逻辑关系是否准确。 5 器件编程 当设计全部完成后,就可以将形成的目标文件下载到芯片中,实际验证设计的准确性。[实验步骤] 设计过程如下: 1)输入项目文件名(File/Project/Name) 2)输入源文件(图形、VHDL、AHDL、Verlog和波形输入方式) (Max+plusⅡ/graphic Editor, Max+plusⅡ/Text Editor, Max+plusⅡ/Waveform Editor) 3)指定CPLD型号(Assign/Device) 4)设置管脚、下载方式和逻辑综合的方式 (Assign/Global Project Device Option,Assign/Global Logic Synthesis) 5)保存并检查源文件(File/project/Save & Check) 6)指定管脚(Max+plusⅡ/Floorplan Editor) 7)保存和编译源文件(File/project/Save & Compile) 8)生成波形文件(Max+plusⅡ/Waveform Editor) 9)仿真(Max+plusⅡ/Simulator) 10)下载配置(Max+plusⅡ/Programmer) [实验报告要求] 不做要求。 实验二简单组合逻辑电路设计 [实验目的] 1 通过本实验提供的实例,掌握组合逻辑电路的设计方法。

EDA实验

河南农业大学 课程设计报告 设计题目:交通灯控制器的设计 学院:理学院 专业:电子信息科学与技术 班级: 08级电科(2)班 学号: 0808101035 姓名:石利芳 电子邮件: Shiliminanyang@https://www.wendangku.net/doc/406080416.html, 日期: 2011年12 月 成绩: 指导教师:贾树恒

河南农业大学 理学院 课程设计任务书 学生姓名石利芳指导教师贾树恒 学生学号0808101035 专业电子信息科学与技术 题目交通灯控制器的设计 任务与要求 主要内容: 设计主干道的交叉路口交通信号灯无人自动管理的控制系统.将路口红绿灯的各种亮灯情况定义为不同的状态,路口状况定义为触发条件,组成有限状态机。 要求: (1)采用VHDL语言编写程序,并在QUARTUSII工具平台中进行仿真,下载到EDA实验箱进行验证。 (2)熟练操作设计所用的软硬件系统:Max+plusⅡ软件。 (3)按要求编写课程设计报告,正确绘制程序流程图、实验接线图等,正确阐述设计原理、方法和实验结果。 (4)通过课程设计培养学生严谨的科学态度,认真地工作作风。 (5)在老师的指导下,要求每个学生独立完成课程设计报告的全部内容。 开始日期2011 年 12 月 6 日完成日期2011 年 12 月 15 日课程设计所在单位理学院电子科学系

1引言 当前,大量的信号灯电路正向着数字化、小功率、多样化、方便人、车、路三者关系的协调,多值化方向发展随着社会经济的发展,城市交通问题越来越引起人们的关注。,这些城市纷纷修建城市高速道路,在高速道路建设完成的初期,它们也曾有效地改善了交通状况。然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路耦合处交通状况的制约。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。 1.1 设计的目的 本次课程设计的目的是通过设计交通灯控制器,了解EDA技术,了解并掌握VHDL硬件描述语言的设计方法和思想,巩固和综合运用所学过的计算机组成原理知识,提高分析、解决计算机技术实际问题的独立工作能力。 1.2 设计的基本内容 这次课程设计的题目是交通灯控制器的设计。设计了主干道的交叉路口交通信号灯无人自动管理的控制系统.将路口红绿灯的各种亮灯情况定义不同的状态,路口状况定义为触发条件,组成有限状态机.基于此模型的交通信号灯控制系统可充分利用现有交通资源,缓解城市交通压力。 2 EDA、VHDL、有限状态机简介 2.1 EDA简介 EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。EDA 技术是以计算机为工具,根据硬件描述语言HDL( Hardware Descriptionlanguage)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。 典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。综合器的功能就是将设计者在EDA 平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。综合器在工作前,必须给定所要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来。也就是说,综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换低级的、可与目标器件FPGA/CPLD相映射的网表文件。 适配器的功能是将由综合器产生的王表文件配置与指定的目标器件中,产生最终的下载文件,如JED 文件。适配所选定的目标器件(FPGA/CPLD芯片)必须属于在综合器中已指定的目标器件系列。 硬件描述语言HDL是相对于一般的计算机软件语言,如:C、PASCAL而言的。HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电路结构和连接方式。设计者可利用HDL程序

七人表决器

EDA技术课程设计设计题目:七人表决器设计 院系:电气信息学院 专业年级:电子信息工程2010级 学生姓名:XXX 学号:XXXXXXX 指导教师:XXXXX 时间:2013年1月13日

用VHDL 设计七人表决器 一、实验目的 1、熟悉 VHDL 的编程。 2、熟悉七人表决器的工作原理。 3、进一步了解实验系统的硬件结构。 二、实验原理 所谓表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。 七人表决器顾名思义就是由七个人来投票,当同意的票数大于或者等于4 时,则认为同意;反之,当否决的票数大于或者等于4时,则认为不同意。实验中用7个拨动开关来表示七个人,当对应的拨动开关输入为‘1’时,表示此人同意;否则若拨动开关输入为‘0’,则表示此人反对。表决的结果用一个LED表示,若表决的结果为同意,则 LED 被点亮;否则,如果表决的结果为反对,则 LED 不会被点亮。同时,数码管上显示通过的票数。 三、实验内容 本实验就是利用实验系统中的拨动开关模块和LED模 块以及数码管模块来实现一个简单的七人表决器的功能。 拨动开关模块中的K1~K7表示七个人,当拨动开关输入为 ‘1’时,表示对应的人投同意票,否则当拨动开关输入为

‘0’时,表示对应的人投反对票;LED 模块中 LED1 表示七人表决的结果,当 LED1 点亮时,表示此行为通过表决;否则当 LED1 熄灭时,表示此行为未通过表决。同时通过的票数在数码管上显示出来。 四、硬件系统组成框图 五、VHDL程序实现 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity bjq7 is

09EDA实验指导书

EDA实验指导书

目录 实验一基于QUARTUSII图形输入电路的设计 (2) 实验二含异步清零和同步使能的加法计数器 (5) 实验三图形和VHDL混合输入的电路设计 (7) 实验四矩阵键盘接口电路的设计 (10) 实验五交通灯控制电路实验 (16) 附图EP1K10TC100管脚图 (24) 主芯片:ACEX 1K 系列的EP1K10TC100-3 下载电缆:Byte Blaster II

实验一基于QUARTUSII图形输入电路的设计 一、实验目的 1、通过一个简单的3线—8线译码器的设计,掌握组合逻辑电路的设计方法。 2、初步了解QUARTUSII原理图输入设计的全过程。 3、掌握组合逻辑电路的静态测试方法。 二、实验原理 3线-8线译码器三输入,八输出。当输入信号按二进制方式的表示值为N时,输出端标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为高电平的情况下,能表示所有的输入组合。其真值表如表1-1所示 输入输出 D2 D1 D0 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 表1-1 3线-8线译码器真值表 译码器不需要像编码器那样用一个输出端指示输出是否有效。但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使 能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表 示无任何信号。本例设计中没有考虑使能输入端,自己设计时可以考虑加入使 能输入端时,程序如何设计。 三、实验内容 在本实验中,用三个拨动开关来表示3线-8线译码器的三个输入(D2-D0);用

eda实验

实验一3/8 译码器和半加器的实现 一.实验目的 1.学习QuartusⅡ的基本操作; 2.熟悉教学实验箱的使用 3.设计一个3/8 译码器和一个半加器; 4.初步掌握VHDL语言和原理图的设计输入,编译,仿真和调试过程; 二.实验说明 1.本次实验要求应用VHDL语言实现一个3/8 译码器。3/8 译码器的逻辑功能如下: 本实验要求使用VHDL语言描述3/8译码器,并在实验平台上面实现这个译码器。描述的时候要注意VHDL语言的结构和语法,并熟悉QuartusⅡ的文本编辑器的使用方法。尝试使用不同的VHDL语言描述语句实现3/8译码器,并查看其RTL结构区别,理解不同描述方法对综合结果的影响。将程序下载到实验箱上,分别用按键和LED作为输入和输出对结果进行验证,进一步熟悉所用EDA实验箱系统。 2. 采用原理图的方式实现一个半加器。 本实验的具体电路自己通过真值表或布尔方程式得出,建立工程和和块原理图文件,并进行编译和仿真,验证设计的正确性。 本实验的内容比较简单,主要是通过这次实验熟悉实验环境,为以后更好的做实验做准备。 所用器件 EDA实验箱、EP1K10TC100-3器件。 三.实验步骤 按照教学课件《QUARTUS II 使用方法》,学习QuartusⅡ软件的使用方法:1.在WINDOWS 界面双击QuartusⅡ图标进入QuartusⅡ环境; 2.单击File 菜单下的New Project Wizard: Introduction 按照向导里面的介绍新建一个工程并把它保存到自己的路径下面。(注意路径当中不要有中文和空格)3.单击File 菜单下的New,选择VHDL File(原理图方式时选择Block

七人表决器实验报告

竭诚为您提供优质文档/双击可除七人表决器实验报告 篇一:哈工大电工学新技术实践实验报告-7人表决器 总成绩: 一、设计任务 1、有七人参与表决,显示赞同者个数。 2当赞同者达到及超过4人时,绿灯显示表示通过。 二、设计条件 本设计基于软件multisim10.0.1进行仿真,在电机楼实验室20XX5进行验证。 三、设计要求 1、熟悉74Ls161,74Ls151,数码管的工作原理。 2、设计相应的电路图,标注元件参数,并进行仿真验证。 四、设计内容 1.电路原理图(含管脚接线)电路原理图如图1所示 图1电路原理图 2.计算与仿真分析

仿真结果如图2、3、4所示 图2仿真结果 图4仿真结果 4.调试流程 调试流程如图5所示 图5调试流程 5.设计和使用说明 74Ls151芯片为互补输出的8选1数据选择器,引脚排列如图6所示,功能见表1。选择控制端(地址端)为c~A,按二进制译码,从8个输入数据D0~D7中,选择一个需要的数据送到输出端Y,g为使能端,低电平有效。 (1)使能端g=1时,不论c~A状态如何,均无输出(Y=0,w=1),多路开关被禁止。 (2)使能端g=0时,多路开关正常工作,根据地址码c、b、A的状态选择D0~D7中某一个通道的数据输送到输出端Y。如:cbA=000,则选择D0数据到输出端,即Y=D0。如:cbA=001,则选择D1数据到输出端,即Y=D1,其余类推。 图674Ls151引脚排列 表174Ls151功能表 74Ls161功能: (1)异步置“0”功能:接好电源和地,将清除端接低

电平无论其他各输入端的状态如何,测试计数器的输出端,如果操作无误Q3~Q0均为0。 (2)预置数功能:将清除端接高电平,预置控制端接低电平,数据输入端D3~D0置0011,在cp的上升沿作用后,测试输出端Q3~Q0的电平。如果操作准确,D3~D0的数据为0011,说明D3~D0的数据已预置到Q3~Q0端。 (3)计数和进位功能:将LD、cr、ceT、cep端均接高电平,cLK端输入单脉冲,记录输出端状态。如果操作准确,每输入一个cp 脉冲,计数器就进行一 篇二:课程设计报告---七人表决器设计 电子综合设计 题目 学院 专业 班级学生姓名指导教师 七人抢答器设计计信学院电子信息工程 20XX年6月18日 一、设计原理 所谓表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。七人表决器顾名思义就是由七个人

EDA实验

实验报告 课程名称:EDA实验 实验题目:EDA实验总结 学生姓名:裴彬彬学号:20101050045 物理科学技术学院物理系2010 级电子科学与技术专业 指导教师:陈永康 实验时间:2013 年 实验地点:物科学院3414

一:3-8译码器 实验程序: module no1(y,en,a) ; output [7:0]y ; input en ; input [2:0]a; reg[7:0] y ; always @ (en or a) if (!en) y = 8'b1111_1111 ; else case(a) 3'b000 : y = 8'b1111_1110 ; 3'b001 : y = 8'b1111_1101 ; 3'b010 : y = 8'b1111_1011 ; 3'b011 : y = 8'b1111_0111 ; 3'b100 : y = 8'b1110_1111 ; 3'b101 : y = 8'b1101_1111 ; 3'b110 : y = 8'b1011_1111 ; 3'b111 : y = 8'b0111_1111 ; default : y = 8'bx ; endcase endmodule 波形: 实验总结: 1.编程中在使用CASE语句时,容易将ENDCASE语句忘掉,导致程序错误。 2.在文件名必须与VHDL文件中的设计实体名保持一致。

二:4位并行乘法器 实验程序: module no2(a,b,y); input [3:0]a; input [3:0]b; output [7:0]y; assign y=a*b; endmodule 波形: 实验总结: 本实验学习了assign语句的使用方法和使用条件。三:补码生成 实验程序: module no3 (a,y); input [7:0]a; output [7:0]y; reg [7:0]y;

七人表决器实验

3.3实验三七人表决器设计 3.3.1实验目的 1、掌握用QuartusII软件设计基本数字系统流程及注意事项。 2、进一步熟练掌握程序的编译、仿真、生成模块及芯片引脚号码锁定方法。 3、掌握分层设计的方法和注意事项 4、在实验报告中,总结数字系统设计步骤及注意事项。 3.3.2实验内容 基于QuartusII软件及VHDL语言实现七人表决器。当参与表决的7人中有4个或4个以上赞同时,表决器输出“1”表示通过,否则输出“0”表示不通过,并显示赞成和反对的人数。用7个开关作为表决器的7个输入变量,数码管显示人数,LED灯显示是否通过。 本实验4学时。 3.3.3实验仪器 ZY11EDA13BE型实验箱。 3.3.4实验原理 分析实验要求,七人表决器系统主要由两个模块构成:投票计数模块和数码管显示模块。 一、建立项目 (1)新建文件夹。路径及文件名中不可出现汉字。 (2)新建项目。一个数字系统可以由多个模块构成,使所有模块连接在一起的总文件叫做顶层文件,只有顶层文件名可以且必须与项目名相同。项目取名为bjq7。 (3)选择芯片

二、建立文件 首先,建立各个VHDL功能模块。 1.投票计数模块。 (1)新建VHDL文件 编辑VHDL程序。投票计数模块输入为七个电平开关input,输出为同意的人数agree,反对的人数disagree,是否通过指示灯y,程序清单如下: library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity BJQ is port(input:in std_logic_vector(6downto0);七个输入开关agree:out std_logic_vector(3downto0);同意的人数 disagree:out std_logic_vector(3downto0);不同意的人数 y:out std_logic);是否通过标志 end; architecture one of BJQ is begin process(input) variable cnt:integer range0to7; variable cnt0:integer range0to7; begin cnt:=0; for i in6downto0loop if input(i)='1'then cnt:=cnt+1; end if; end loop; cnt0:=7-cnt; if cnt>3then y<='0'; else y<='1'; end if; case cnt is when0=>agree<="0000"; when1=>agree<="0001"; when2=>agree<="0010"; when3=>agree<="0011"; when4=>agree<="0100"; when5=>agree<="0101"; when6=>agree<="0110"; when7=>agree<="0111"; when others=>agree<="0000"; end case; case cnt0is when0=>disagree<="0000"; when1=>disagree<="0001"; when2=>disagree<="0010"; when3=>disagree<="0011"; when4=>disagree<="0100"; when5=>disagree<="0101"; when6=>disagree<="0110"; when7=>disagree<="0111";

EDA实验指导书

ED心验指导书齐鲁理工学院

目录 实验一Protel DXP 2004认识实验 0 实验二两级阻容耦合三极管放大电路原理图设计 0 实验三原理图元件库建立与调用 (2) 实验四两级阻容耦合三极管放大电路PCB图设计............................ .4实验五集成电路的逻辑功能测试.. (6) 实验六组合逻辑电路分析与设计............................................... 1.1实验七Quartus II的使用 ................................................. 1.6实验八组合逻辑器件设计. (16) 实验九组合电路设计 (24)

实验一Protel DXP 2004 认识实验 一、实验目的 1. 掌握Protel DXP 2004的安装、启动和关闭。 2. 了解Protel DXP 2004主窗口的组成和各部分的作用。 3. 掌握Protel DXP 2004工程和文件的新建、保存、打开。 二、实验内容与步骤 1、Protel_DXP_2004 的安装 (1) 用虚拟光驱软件打开Protel_DXP_2004.iso 文件 (2) 运行setup\Setup.exe 文件,安装Protel DXP 2004 (3) 运行破解程序后,点击导入模版”,先导入一个ini文件模版(如果要生成单机版的License选择Unified Nexar-Protel License.ini;要生成网络版的License选择Unified Nexar-Protel Network License.ini ),然后修改里面的参数:TransactorName=Your Name (将"Your Name替换为你想要注册的用户名);SerialNumber=0000000 (如果你只有一台计算 机,那么这个可以不用修改,如果有两台以上的计算机且连成局域网,那么请保证每个License文件中的SerialNumber=为不同的值。修改完成后点击生成协议文件",任意输入一 个文件名(文件后缀为.alf)保存,程序会在相应目录中生成1个License文件。点击替换密钥”,选取DXP.exe (在DXP 2004安装目录里,默认路径为),程序会自动替换文件中的公开密钥。将前面生成的License文件拷贝至DXP 2004安装目录里(默认路径为)授权完成。 (4) 打开Protel 在左上角DXP 菜单下的Preference 菜单项里,选中Use localize resources后关闭Protel_DXP_2004 ,重新打开软件变为简体中文版本。 2、Protel_DXP_2004 的卸载 卸载Protel_DXP_2004的具体步骤如下: (1) 在Windows的“开始”菜单中选择“设置/控制面板”,然后在控制面板中选择“添加/删除程序”选项,将弹出对话框。从中选择DXP 2004应用软件。 (2) 单击删除”按钮,将弹出对话框,询问用户是否真的要删除程序。 (3) 单击“是”按钮,开始卸载。在卸载过程中,若想终止卸载,可单击“取消”按

相关文档