EDA一位二进制全减器设计

实验一 1位二进制全减器设计
一、实验目的
1.熟悉EDA 技术开发流程;
2.熟悉Quartes II 集成开发软件的使用; 3.初步熟悉PH-1V 型实验装置的使用;
4.学习用原理图输入法和文本输入法进行简单的数字电路设计。

二、实验要求
1.用文本输入法和原理图输入法分别实现一位二进制全减器的设计。

2.进行时序波形仿真,并分析仿真波形图
3.在仿真正确的情况下,对1位二进制全减器分别下载到实验箱中做硬件测试。

三、设计思路/原理图
(1)一位全减器的设计
表一、半减器真值表(so 差值 co 向高位的借位) 表二
表二、全减器真值表(cin 低位来的借位 cout 向高位的借位)
根据半减器真值表可以用文本输入法(VHDL 语言)设计出半减器,,再根据全减器的真值表通过文本输入法(VHDL 语言)调用两个半减器构成一个全减器。

此外还可以通过原理图输入法设计出半减器,然后通过两个半减器和一个或门构成一个全减器。

实验原理图如下
(1)由半减器真值表可画出其原理图如下:
将半减器设计成可调用元件如下:
h_sub inst
a b
co so
(2)由全减器的真值表可以画出原理图如下:
四、实验程序
(1)一位半减器文本描述 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY h_sub IS
PORT(a,b:IN STD_LOGIC; co,so:OUT STD_LOGIC); END ENTITY h_sub;
ARCHITECTURE fh1 OF h_sub is BEGIN
so<=NOT(a XOR (NOT b));co<=(NOT a)AND b; END ARCHITECTURE fh1; (2)或门逻辑描述 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY or2a IS
PORT(a,b:IN STD_LOGIC; c:OUT STD_LOGIC); END ENTITY or2a;
ARCHITECTURE one OF or2a IS BEGIN c<=a OR b;
END ARCHITECTURE one;ne;
(3)一位二进制全减器顶层文件描述 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY f_sub IS
PORT (ain,bin,cin:IN STD_LOGIC; cout,sub:OUT STD_LOGIC); END ENTITY f_sub;
ARCHITECTURE fd1 OF f_sub IS
COMPONENT h_sub—调用半减器的声明语句
PORT(a,b:IN STD_LOGIC;
co,so:OUT STD_LOGIC);
END COMPONENT;
COMPONENT or2a—调用或门的声明语句
PORT(a,b:IN STD_LOGIC;
c:OUT STD_LOGIC);
END COMPONENT;
SIGNAL d,e,f:STD_LOGIC;
BEGIN
u1:h_sub PORT MAP(a=>ain,b=>bin,co=>d,so=>e);--例化语句
u2:h_sub PORT MAP(a=>e,b=>cin,co=>f,so=>sub);
u3:or2a PORT MAP(a=>d,b=>f,c=>cout);
END ARCHITECTURE fd1;
五、实验步骤
1、建立工作库文件和编辑设计文件
(1)在D盘新建一个文件夹用来保存工程文件
(2)打开QuartusⅡ8.0软件,选择菜单File->New->VHDL File,点击OK后在打开的界面下输入已经设计好的程序。

(3)输入完程序后,保存文件选择菜单File->Save as,将文件保存到工程文件夹中,文件名不能含有中文字符,最好与程序实体名一样。

(4)保存好文件后,一般会提示是否新建一个工程,选择是,如果没有就在菜单打开File->New project Wizard项,将出现工程项目建立向导。

(5)按照工程项目向导提示设计好工程中要用到的文件放到同一个工程文件夹中,选择实验中用到的芯片和第三方工具(一般默认EDA自带的工具箱,在这里不做任何选择)。

(6)完成工程项目建立后选择processing->start compilation或选择按钮开始全程编译,如果编译过程中出现错误或警告提示,则双击错误或警告提示就可以找到该错误或警告在设计文件的位置。

(7)在完成设计输入和综合编译以后,可以通过时序仿真来检查设计是否符合要求,这里我们可以通过建立波形文件(.vmf)。

在选择File->New->Vetor Waveform File项后选择OK。

(8)设计Edit栏选择End Time设计时间为50 us ,在View->ulitity windows中选择Node Finder 或按Alt+1,然后将所有的输入输出拖到波形文件中,设计好输入时序和输出方式后保存文件。

选择
processing栏中的Start simulation或选择按钮开始波形仿真。

(9)仿真成功后得到了预期的设计效果后,将引脚锁定。

方法如下:选择assignment 中的pins,将To栏的信号锁定到相应的Location引脚列中。

引脚号对应关系可以从实验手册中查找。

(10)引脚锁定以后,再编译全程编译一次,然后编程下载,选择Tools->programmer 菜单,设计好编程硬件后点击Start开始下载。

(11)下载成功后在硬件上检测设计思路的是否正确。

六、仿真波形分析
下图为实验所得的波形图
如图所示仿真结果对应于下面相应的真值表,表明实验设计思路正确。

六、硬件测试结果
按照引脚锁定的管脚,逐一验证真值表的结果,经测试结果都正确,所以实验方案正确。

七、实验心得体会
通过本次实验,我了解了EDA设计的各个流程,知道如何通过EDA软件来实现不同的硬件要求。

第一次做实验虽然准备了很充分,但还是出了一点问题。

自己在选择实验芯片时太粗心大意了,结果试了好多次都没有成功,这样浪费了很多时间。

我会吸取这次教训,下次不会再这么粗心大意,犯下这种小错误。

不过话说回来,发现问题解决问题才能学到更多的东西。

合集下载

实验一1位二进制全减器设计

实验一1位二进制全减器设计

实验一 1位二进制全减器设计实验一:1位二进制全减器设计一、实验目的本实验旨在通过硬件设计和编程,实现一个1位二进制全减器的设计。

通过本实验,希望学生能够深入理解二进制数的减法运算规则,掌握硬件电路的基本设计和调试方法,提高实践能力和编程技能。

二、实验原理二进制全减器是一种实现两个二进制数相减的逻辑电路。

在一个二进制全减器中,我们需要考虑两个输入位(被减数和减数)以及一个借位输入(来自低位的借位输出)。

根据这些输入,二进制全减器会生成一个输出位(差)和一个借位输出(向低位的借位)。

三、实验步骤1.确定设计方案:根据实验要求,选择合适的硬件设计和编程语言。

本实验中,我们采用Verilog语言进行编程,并使用FPGA(现场可编程门阵列)来实现硬件电路。

2.编写代码:根据二进制全减器的设计要求,编写Verilog代码。

代码应包括模块定义、输入输出端口声明、逻辑设计和时序控制等部分。

3.编译与仿真:将编写的Verilog代码进行编译,生成可被FPGA识别的二进制文件。

然后,使用仿真工具进行功能仿真,验证设计的正确性。

4.硬件调试:将生成的二进制文件下载到FPGA开发板上,进行硬件调试。

通过观察硬件电路的输出结果,验证全减器功能的正确性。

5.性能分析:对设计的全减器进行性能评估,包括运算速度、功耗、资源利用率等指标。

通过对比不同设计方案,分析优劣并提出改进意见。

四、实验结果与分析1.实验结果:通过本次实验,我们成功地设计并实现了一个1位二进制全减器。

在功能仿真和硬件调试中,均验证了该全减器的正确性。

2.结果分析:在设计过程中,我们充分考虑了电路的简洁性和高效性。

在满足设计要求的前提下,尽量减少了逻辑门的数量和复杂度。

这使得我们的全减器在资源利用率、运算速度和功耗等方面均表现出较好的性能。

五、结论与展望通过本次实验,我们成功地设计并实现了一个1位二进制全减器。

该全减器在功能仿真和硬件调试中均表现出良好的性能。

实验一:一位二进制全减器设计

实验一:一位二进制全减器设计

南昌大学实验报告学生姓名:刘志强学号: 6100409222 专业班级:电子091班实验类型:验证□综合□设计■创新□实验日期:实验成绩:实验一一位二进制全减器设计一、实验目的(1)掌握QuartusII的VHDL原理图设计和文本设计全过程;(2)熟悉简单组合电路的设计,掌握系统仿真,学会分析硬件测试结果。

二、实验内容与要求(1)设计一个二进制全减器,用分层设计方法,顶层为全减器,底层为半减器和逻辑门组成;(2)进行波形仿真,并分析仿真波形图;(3)下载测试全减法器是否正确。

三、设计思路/原理图一位全减器可以由两个半减器和一个或门连接而成,根据半减器真值表对半减器进行描述,再对或门的VHDL描述,而后根据原理图对全减器的VHDL描述。

图1 全减器f_suber电路图四、实验程序(程序来源:教科书本)library ieee; --半减器描述use ieee.std_logic_1164.all;entity h_suber is --定义半减器h_suber实体port(a,b:in std_logic;do,vo:out std_logic);end entity h_suber;architecture fs1 of h_suber issignal abc:std_logic_vector (1 downto 0);beginabc <= a&b ;process (abc)begincase abc iswhen "00" => do<='0';vo<='0';when "01" => do<='1';vo<='1';when "10" => do<='1';vo<='0';when "11" => do<='0';vo<='0';when others => null;end case;end process;end architecture fs1;library ieee; --一位二进制全减器顶层设计描述use ieee.std_logic_1164.all;entity f_suber is --定义全减器f_suber实体port (ain,bin,cin:in std_logic;v,sub:out std_logic);end entity f_suber;architecture fs of f_suber iscomponent h_suber ---调用半减器声明语句port (a,b:in std_logic;do,vo:out std_logic);end component;component or2a --调用或逻辑门声明语句port (m,n:in std_logic;h:out std_logic);end component;signal e,f,g:std_logic; ---定义3个信号作为内部的连接线beginu1:h_suber port map(a=>ain,b=>bin,do=>e,vo=>f); ---例化语句u2:h_suber port map(a=>e,b=>cin,do=>sub,vo=>g);u3:or2a port map(m=>g,n=>f,h=>v);end architecture fs;五、实验步骤1. 利用Quartus II 7.2建立工程在file中打开【】→【】→在【】中选择存放的目录→【】f_suber要与顶层文件中entity f_suber相同→点击next→点击next→选择芯片→next完成;再在file下面点【】→【】→点击ok→编写程序→编译并保存在f_suber文件中(改动程序后,再保存,再编译)→管脚【】→【】→而后对芯片设置,即打开device→点【】→点【】与【】→选如【】与【】→选芯片→确定ok ;重新编译→点下载,后选【】硬件有“JTAG【】”和“ASP【】手动添加以扩展名为.pof的文件【】”两个接口其一(要看硬件接口),选中【】”→添加【】中的驱动程序→【】→点【】开始下载。

实验一1位二进制全加器的设计

实验一1位二进制全加器的设计

实验一1位二进制全加器的设计(共6页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--龙岩学院实验报告班级学号姓名同组人实验日期室温大气压成绩实验题目:基于原理图输入法的1位二进制全加器的设计一、实验目的1、学习、掌握QuartusⅡ开发平台的基本使用。

2、学习基于原理图输入设计法设计数字电路的方法,能用原理图输入设计法设计1位二进制半加器、1位二进制全加器。

3、学习EDA-V型实验系统的基本使用方法。

二、实验仪器装有QuartusⅡ软件的计算机一台、EDA系统实验箱、导线若干三、实验原理半加器只考虑两个1位二进制数相加,而不考虑低位进位数相加。

半加器的逻辑函数为式中A和B是两个相加的二进制数,S是半加和,C是向高位的进位数。

表1为半加器真值表。

表1A B C S0000010110011110显然,异或门具有半加器求和的功能,与门具有进位功能。

其逻辑图跟逻辑符号如下图:全加器除了两个1位二进制数相加以外,还与低位向本位的进位数相加。

表2为全加器的真值表。

表2A iB iC I-1C i S0000000101010010111010001101101101011111由真值表可得出逻辑函数式式中,A i和B i是两个相加的1为二进制数,C i-1是由相邻低位送来的进位数,S I是本位的全加和,C I是向相邻高位送出的进位数。

其逻辑图跟逻辑符号如下图所示:四、实验内容1、根据1位二进制半加器、1位二进制全加器的真值表,设计并画出1位二进制半加器的原理框图,由半加器及门电路设计并画出1位二进制全加器的原理框图(最终设计的是1位二进制全加器)。

2、用QuartusⅡ原理图输入输入法输入1位二进制半加器的原理框图,并进行编译。

如有输入错误,修改后再进行编译。

4、根据1位二进制半加器的工作原理,选择输入合适的输入信号和波形及其输出信号,进行仿真,得到器件的输入与输出波形,验证设计是否正确。

一位二进制全加减器的设计

一位二进制全加减器的设计

一位二进制全加减器的设计在咱们的生活中,数字无处不在,没错,不管是买东西还是算账,数字就是我们的好伙伴。

说到数字,大家一定听说过二进制。

二进制就像是数字的二重奏,只有0和1这两个小家伙,真是简单又有趣。

不过,今天我们不聊二进制的故事,而是聊聊它的一个超级英雄,二进制全加减器。

这家伙可是个了不起的角色,能够让我们轻松进行加法和减法,简直就像是厨房里的万能调料,随时随地为你解闷。

想象一下,你正在和朋友玩游戏,突然间需要计算得分,这时候二进制全加减器就像那救星般闪亮登场。

咱们先来说说加法吧。

二进制的加法其实跟咱们平常的加法差不多,不过就是多了点小规则。

比如说,0加0当然是0,0加1或者1加0就是1,1加1则会产生进位,变成0再加1,这个时候就像是变魔术一样,瞬间升华了。

把这简单的加法放在一起,嘿,整个过程简直就像是舞蹈,轻松而优雅。

再来看看减法。

哦,减法在二进制里也是大有可为。

想象一下,你手里有一块大蛋糕,想给朋友分,但是蛋糕不够,怎么办?这时候就需要用到借位的技巧。

二进制减法就像是抢夺蛋糕的小朋友,借位就是从旁边的小朋友那里借来一口,然后再继续分蛋糕。

这样看似复杂,但实际上只要理解规则,嘿,就能轻松搞定。

那好,咱们再深入一点,聊聊这个全加减器是怎么工作的。

它就像一个聪明的管家,负责所有的数字进出。

内部的结构就像一座精密的机器,采用逻辑门电路,真是科技的结晶。

这个小家伙有两部分,一部分是加法器,另一部分是减法器,它们就像两位默契的舞者,在舞台上完美配合。

每当有输入数字的时候,它们立刻就开始工作,快速而高效,仿佛时间都为它们停驻。

听到这里,大家可能会想,二进制全加减器有什么用呢?别急,咱们就来聊聊它的应用。

无论是计算机还是电子设备,都离不开这位全加减器。

想想看,咱们每天都在用手机,玩游戏,浏览网页,这些背后可都是二进制全加减器在默默奉献。

它就像一位无名英雄,虽然不显山露水,却是整个系统运作的基石。

说到这里,可能有人会觉得,哎呀,二进制这玩意儿真复杂。

EDA实验报告实验一:一位二进制全减器的设计

EDA实验报告实验一:一位二进制全减器的设计

实验一、一位二进制全减器的设计一、实验目的:(1)掌握Quartus II 的VHDL 文本设计的全过程;(2)熟练和掌握EDA设计流程;熟悉简单组合电路的设计,掌握系统仿真,学会分析硬件测试结果。

(3)学习PH-1V型实验装置上发光二极管和按键的使用方法。

二、实验内容与要求:(1)用文本方法实现半减器,再利用半减器完成全减器的设计,熟悉层次设计概念;(2)给出此项设计的仿真波形;(3)选择实验电路NO.1验证, 用发光管指示显示结果。

三、设计原理:(1)半减器真值表:xx yy Diff1 S_out10 0 0 00 1 0 11 0 0 01 1 0 0(表中Diff1表示本位向高位的借位,S_out1表示本位)(2)全减器真值表:x y Sub_in diffr Sub_out0 0 0 0 00 0 1 1 10 1 0 1 10 1 1 0 11 0 0 1 01 0 1 0 01 1 0 0 01 1 1 1 1(表中Sub_in表示低位向本位的借位,diffr表示本位向高位的借位,Sub_out表示本位)四、实验程序:(1)对半减器进行描述:(2)对全减器进行原理图编辑:五、实验步骤:1.建立工作库文件夹和编辑设计文件(1)在D盘下建立一个文件夹保存工程文件;(2)打开QuartusII,建立新的VHDL文件,再打开的页面下输入程序。

2.编译过程(1)输入完程序之后逐个编译(2)逐个编译无错之后进行全程编译3.系统仿真(1)建立新的波形激励文件(2)在波形编辑器窗口添加节点(3)通过Edit->End Time 来设定仿真结束时间(4)点击save保存(5)通过Tools下的Simulator Tools项进行仿真,然后观察输出波形。

4.引脚锁定(1)通过Assignment->Assignment Editor->Pin查找到所有的引脚(2)选择各个输入输出信号来锁定到不同引脚,进行全编译。

一位全减器:一位全加全减器的实现一位全减器

一位全减器:一位全加全减器的实现一位全减器

一位全减器:一位全加全减器的实现一位全减器话题:一位全减器日记本卡诺课程实验报告课程名称:数字电路与逻辑设计专业班级:计实1001班学号:U201014488姓名:王宸敏指导教师:唐九飞周次:第九周同组人员:熊凯报告日期:2012年4月18日计算机科学与技术学院【内容A】【好文章】一、实验名称一位全加/全减器的实现二、实验目的1. 掌握组合逻辑电路的功能测试2. 验证半加器和全加器的逻辑功能3. 学会二进制数的运算规律三、实验所用仪器和组件1. 二输入四“与非”门1片,型号为74LS002. 三输入三“与非”门1片,型号为74LS103. 二输入四“异或”门1片,型号为74LS86四、实验设计方案及逻辑图首先根据真值表得到了其卡诺图如下所示:根据输入与输出写出全加/减法器的函数表达式,如下:实现全加法器的表达式:M?0时,S?A?B?CinCO?AB?ACin?BCin?AB?ACin?BCin; 实现全减法器的表达式:M?1时,S?A?B?CinCO?AB?ACin?BCin?AB?ACin?BCin.由表达式可知:S采用异或的逻辑门而Co则采用与非的逻辑门得到,因此画出逻辑图如下:五、实验记录六、描述实验现象,并运用所学的知识进行分析、处理及讨论1. 在m=0时,在输入端输入三个电平时,输出实现了全加器的功能,即把三个输入当作被加数、加数和低位的进位,同时两个输出分别表示了和与低位的进位。

2. 在m=1时,在输入端输入三个电平时,输出实现了全减器的功能,即把三个输入当作被减数、减数和低位的借位,同时两个输出分别表示了差与高位的借位。

因为电路的设计是根据真值表的结果得到的,通过真【】值表画出卡诺图从而的到输出关于输入的表达式,因此他所实现的功能正是我们所需要的全加器与全减器的功能,只不过是通过逻辑门进行了处理,得到的是正确的值。

【内容C】一、实验名称舍入与检测电路的设计二、实验目的1. 掌握组合逻辑电路的功能测试2. 验证半加器和全加器的逻辑功能3. 学会二进制数的运算规律三、实验所用仪器和组件1. 六门反向器组件1片,型号为74LS042. 二输入四“与非”门组件1片,型号为74LS003. 三输入三“与非”门组件1片,型号为74LS104. 二输入四“异或”门组件1片,型号为74LS86四、实验设计方案及逻辑图根据题意,输入为8421码,F1表示“四舍五入”电路的输出,其卡诺图如下:由卡诺图可得到其函数表达式,并且经过化简如下:F1?B8?B4B2?B4B1?B8?B4B2?B4B1因此,根据表达式可以设计电路图如下所示:同理,可以容易分析得到卡诺图如下:输出F2的表达式,如下:F2?B8?B4?B2?B1由表达式,得到逻辑电路如下:五、实验记录六、描述实验现象,并运用所学的知识进行分析、处理及讨论1.对于“四舍五入”电路,当输入的8421码小于等于4时,即0000,0001,0010,0011,0100这五种状态,显示灯不亮,表示输出为0;当输入的8421码大于等于5时,即0101,0110,0111,1000,1001这五种状态,显示灯亮,表示输出2.为1.对于输入的1的个数的电路,当输入的1的个数为奇数时,即0001,0010,0100,0111,1000这五种状态,显示灯亮,表示输出为1;当输入的1的个数为偶数时,即0000,0011,0101,0110,1001这五种状态,显示灯不亮,表示输出为0.当四个输出进入所对应的逻辑门电路后,根据之前的真值表、卡诺图及表达式,得到了正确的输出状态,在这里逻辑门电路就是让输入完成得到正确的输出结果。

EDA实验一全减器

实验一 1位二进制全减器设计一、实验目的1. 熟悉EDA 技术开发流程;2. 熟悉Quartes II 集成开发软件的使用;3. 学习用原理图输入法和文本输入法进行简单设计;4. 熟悉简单组合电路设计,掌握系统仿真,学会分析硬件测试结果;5. 初步熟悉EDA 实验装置的使用。

二、实验内容与要求1.完成全减器的设计:分别使用原理图输入法和文本输入法设计一位二进制全减器,用分层设计方法,顶层为全减器,底层由半减器(也用原理图输入法)和逻辑门组成;2.进行波形仿真,并分析仿真波形图;3.下载测试减法器是否正确。

三、设计思路/原理图由课本P79:1位二进制全加器的设计可以仿照出1位二进制全减器的设计。

实验框图如真值表画出卡诺图并化简可得: Ca=M N ;Re=(M N)+(M ·N)。

选择相应组合逻辑器件可以构成半减器和全减器。

四、 实验程序:按照实验要求:底层半减器用原理图输入法,顶层为全减器,可知只需写出全减器和或门程序如下:(1)全减器程序:library ieee; --1位二进制全减器顶层设计描述 use ieee.std_logic_1164.all; entity f_suber isport (min, nin, lin : in std_logic; --减数、被减数和低位来的借位 cary, sub : out std_logic); --进位和结果end entity f_suber;architecture fs1 of f_suber iscomponent h_suber--对要调用的元件h_suber的界面端口进行定义port ( m, n: in std_logic;ca, re: out std_logic);end component;component or2a --对要调用的元件or2a的界面端口进行定义port (a, b: in std_logic;c:out std_logic);end component;signal g, h, y: std_logic;begins1 : h_suber port map (m=>min, n=>nin, ca=>g, re=>h);--例化一个1位二进制半减器s2 : h_suber port map (m=>h, n=>lin, ca=>y, re=>sub);--例化一个1位二进制半减器s3 : or2a port map (a=>g, b=>y, c=>cary); --例化一个或门end architecture fs1;(2)或门程序:library ieee;use ieee.std_logic_1164.all;entity or2a isport (a,b :in std_logic;c :out std_logic);end entity or2a;architecture one of or2a isbeginc<=a or b;end architecture one;五、实验步骤1.用原理图输入法设计半减器(1)打开Quartus II软件,进入编辑环境。

实验一 1位二进制全加器的设计

实验一基于原理图输入法的1位二进制全加器的设计一、实验目的1、学习、掌握QuartusⅡ开发平台的基本使用。

2、学习基于原理图输入设计法设计数字电路的方法,能用原理图输入设计法设计1位二进制半加器、1位二进制全加器。

3、学习EDA-V型实验系统的基本使用方法。

二、实验内容1、根据1位二进制半加器、1位二进制全加器的真值表,设计并画出1位二进制半加器的原理框图,由半加器及门电路设计并画出1位二进制全加器的原理框图(最终设计的是1位二进制全加器)。

2、用QuartusⅡ原理图输入输入法输入1位二进制半加器的原理框图,并进行编译。

如有输入错误,修改后再进行编译。

4、根据1位二进制半加器的工作原理,选择输入合适的输入信号和波形及其输出信号,进行仿真,得到器件的输入与输出波形,验证设计是否正确。

5、创建1位二进制半加器的的元件图形符号。

6、用QuartusⅡ原理图输入输入法输入1位二进制半加器的原理框图(要求用半加器及门电路设计),并进行编译,仿真。

7、确定实验箱电源关闭的情况下,连接好下载线,然后打开实验箱电源,对器件进行编程下载。

8、编程下载成功后,关闭实验箱电源,拆除下载线,按器件引脚设定及功能要求,连接好各测试线,进行硬件测试验证。

三、实验预习要求1、学习、掌握QuartusⅡ的基本使用,学习本EDA-V实验开发系统。

2、根据1位二进制半加器、1位二进制全加器的真值表,设计并画出1位二进制半加器的原理框图,由半加器及门电路设计并画出1位二进制全加器的原理框图。

3、根据1位二进制半加器、1位二进制全加器的工作原理,设计并画出它们的输入、输出的理论工作波形。

4、初步制定全加器的引脚锁定。

四、实验要求1、实验原理中详细写出1位二进制半加器、1位二进制全加器的设计过程,及它们的输入、输出的理论工作波形。

2、根据实验内容,详细写出实验的各个步骤,方法。

3、记录实验现象或波形,并与理论值比较、分析。

(如仿真波形与理论工作波形的比较分析,硬件测试与理论真值表的比较分析)。

EDA一位二进制全减器设计

实验一 1位二进制全减器设计一、实验目的1.熟悉EDA 技术开发流程;2.熟悉Quartes II 集成开发软件的使用; 3.初步熟悉PH-1V 型实验装置的使用;4.学习用原理图输入法和文本输入法进行简单的数字电路设计.二、实验要求1.用文本输入法和原理图输入法分别实现一位二进制全减器的设计。

2。

进行时序波形仿真,并分析仿真波形图3。

在仿真正确的情况下,对1位二进制全减器分别下载到实验箱中做硬件测试。

三、设计思路/原理图(1)一位全减器的设计表一、半减器真值表(so 差值 co 向高位的借位) 表二表二、全减器真值表(cin 低位来的借位 cout 向高位的借位)根据半减器真值表可以用文本输入法(VHDL 语言)设计出半减器,,再根据全减器的真值表通过文本输入法(VHDL 语言)调用两个半减器构成一个全减器。

此外还可以通过原理图输入法设计出半减器,然后通过两个半减器和一个或门构成一个全减器.实验原理图如下(1)由半减器真值表可画出其原理图如下:将半减器设计成可调用元件如下:h_sub insta bco so(2)由全减器的真值表可以画出原理图如下:四、实验程序(1)一位半减器文本描述 LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164。

ALL ; ENTITY h_sub ISPORT (a ,b :IN STD_LOGIC ; co,so :OUT STD_LOGIC ); END ENTITY h_sub ;ARCHITECTURE fh1 OF h_sub is BEGINso 〈=NOT (a XOR (NOT b ));co 〈=(NOT a )AND b; END ARCHITECTURE fh1; (2)或门逻辑描述 LIBRARY IEEE;USE IEEE 。

STD_LOGIC_1164.ALL; ENTITY or2a ISPORT (a ,b :IN STD_LOGIC; c:OUT STD_LOGIC); END ENTITY or2a ;ARCHITECTURE one OF or2a IS BEGIN c<=a OR b ;END ARCHITECTURE one;ne ;(3)一位二进制全减器顶层文件描述 LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164。

《EDA技术及应用》朱正伟-三,四,五章部分课后题答案

第三章3-5设计一个4选1多路选择器,当选择输入信号分别取“00”、“01”、“10”和“11”时,输出信号分别与一路输入信号相连。

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MAX4_1 ISPORT(A,B,C,D,S1,S2 : IN STD_LOGIC;Y : OUT STD_LOGIC);END ENTITY MAX4_1;ARCHITECTURE HF1 OF MAX4_1 ISSIGNAL SS : STD_LOGIC_VECTOR (0 TO 1);BEGINSS<=S2&S1;PROCESS(SS)BEGINCASE SS ISWHEN "00" => Y<=A;WHEN "01" => Y<=B;WHEN "10" => Y<=C;WHEN "11" => Y<=D;WHEN OTHERS => NULL;END CASE;END PROCESS;END HF1;3-6设计一个7人表决电路,参加表决者7人,同意为1,不同意为0,同意者过半则表决通过,绿指示灯亮;表决不通过则红指示灯亮。

设计思路:根据7人表决电路设计要求,7人中至少有4个通过才可以表决通过,故可以在程序中设置一个变量TEMP,使其在表决电路中遇1则加1,遇0则加0(设计中1表示通过,0表示不通过)。

当TEMP>=4时,表示表决通过,当TEMP<4时表决不通过。

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY VOTE7 ISPORT (MEN:IN STD_LOGIC_VECTOR(6 DOWNTO 0);OUTPUT: OUT BIT);END VOTE7;ARCHITECTURE BEHA VE OF VOTE7 ISBEGINPROCESS(MEN)V ARIABLE TEMP: INTEGER RANGE 0 TO 7;BEGINTEMP:=0;FOR I IN 0 TO 6 LOOPIF(MEN(I)='1')THENTEMP:=TEMP+1;ELSETEMP:=TEMP;END IF;END LOOP;CASE TEMP ISWHEN 0 TO 3 =>OUTPUT<='0';WHEN 4 TO 7 =>OUTPUT<='1';END CASE ;END PROCESS;END BEHA VE;第四章4-6试写出4选1多路选择器VHDL描述。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档