EDA 1位全加器实验报告
- 格式:doc
- 大小:47.00 KB
- 文档页数:4
一位全加器实验报告一位全加器实验报告引言:全加器是数字电路中常用的逻辑门,用于将两个二进制数相加并输出和与进位。
本实验旨在通过搭建一位全加器电路并进行测试,加深对数字电路原理的理解。
一、实验背景数字电路是现代电子技术中的重要组成部分,其广泛应用于计算机、通信等领域。
全加器作为数字电路的基础,具有重要的意义。
全加器的设计和实现对于提高计算机的运算速度和效率至关重要。
二、实验目的1. 了解全加器的原理和工作方式;2. 掌握全加器的电路搭建方法;3. 进行全加器的测试,验证其正确性。
三、实验材料和器件1. 电路实验箱;2. 电源;3. 逻辑门集成电路(如74LS08、74LS32等);4. 连线和插线板。
四、实验原理全加器是由两个半加器和一个或门组成的。
半加器用于计算两个二进制位的和与进位,全加器则利用半加器的结果和第三个输入位的进位来计算三个二进制位的和与进位。
五、实验步骤1. 首先,将所需的逻辑门集成电路插入插线板中;2. 将电源连接到插线板上的电源接口上,并调整电源电压;3. 按照全加器的电路图,将逻辑门按正确的方式连接起来;4. 完成电路的搭建后,将输入信号接入逻辑门的输入端,将输出信号接入逻辑门的输出端;5. 打开电源,观察输出结果;6. 调整输入信号,测试多种情况下的输出结果。
六、实验结果与分析通过实验,我们得到了全加器的输出结果。
在输入信号为0、0、0的情况下,输出结果为0、进位为0;在输入信号为0、1、0的情况下,输出结果为1、进位为0;在输入信号为1、1、0的情况下,输出结果为0、进位为1;在输入信号为1、1、1的情况下,输出结果为1、进位为1。
实验结果与预期一致,说明全加器的电路搭建正确。
七、实验总结通过本次实验,我们深入了解了全加器的原理和工作方式,并通过实际操作验证了其正确性。
全加器作为数字电路中的重要组成部分,对于计算机等领域的应用具有重要意义。
通过实验,我们不仅加深了对数字电路原理的理解,还提高了实际操作的能力。
EDA 技术实验报告实验项目名称:在QuartusII中用原理图输入法设计1位加法器实验日期: 2012年5月7日实验成绩:实验评定标准:1)实验程序是否正确A()B()C()A()B()C()2)实验仿真、结果及分析是否合理3)实验报告是否按照规定格式A()B()C()1、实验目的熟悉利用Quartus II 的原理图输入方法设计简单组合电路,掌握层次化设计的方法。
2、实验器材电脑一台、GW48 EDA/SOPC试验箱。
3、实验内容(实验过程)1.实验内容:按照附录四介绍的方法和流程,完成半加器和全加器的设计,包括原理图输入、编译、综合、仿真、实验板上的硬件测试,并将此全加器电路设置成一个硬件符号入库。
2.实验过程:A.打开Quartus II 软件,选择new project wizard新建项目。
B.在该项目下新建图形文件,完成半加器的设计。
C.进行编译和仿真,记录实验结果。
D.为了构成全加器的项目设计,将该半加器设置成可调用的元件,即生成一个元件符号存盘,以待在高层次设计中调用。
E. 在该项目下新建图形文件,调入上步存盘的半加器,完成全加器的设计。
F.将该项目设置成顶层文件,进行编译和仿真,并记录实验结果。
G.将全加器设置成可调用的元件,以待在高层次设计中调用。
4、实验程序1. 半加器的电路原理图:2. 全加器的电路原理图:5、实验仿真、结果及分析1. 半加器的波形仿真图:2. 全加器的波形仿真图:实验分析:1. 根据实验要求和步骤建立半加器的实验原理图,完成半加器的设计,并进行编译和仿真。
由上面的半加器仿真波形图可知,在存在延时的情况下,a、b分别为两个输入端,co为进位输出端口,s为本位和输出端口。
当a=0,b=1或a=1,b=0时,co=0,s=1;当a=0,b=0时,co=0,s=0;当a=1,b=1时,co=1,s=1;即完成半加器的设计。
2. 同理,完成全加器的设计。
ain ,bin 是两个输入端口;cin 是相邻低位的进位;sum是本位和,cout是进位输出端。
一位全加器设计摘要EDA技术就是以计算机为工具,设计者在EDA软件平台(quartus II)上,用硬件描语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
目录一、设计任务与要求 41.1实验目的 41.2实验内容 4二、总体设计思路 4三、实验步骤 51、半加器定义 52、用模块例化方式设计一位全加器83、一位全加器功能仿真波形9四、实验总结12一、设计任务与要求1.1实验目的1、学会使用Quartus Ⅱ软件,使用Verilog语言设计简单的逻辑电路;2、熟悉利用Quartus Ⅱ软件对设计电路进行仿真的方法;3、理解层次化的设计方法。
1.2实验内容利用Quartus II软件设计一位全加器。
二、总体设计思路利用Quartus II软件设计一位全加器,可以使用原理图输入方式完成半加器电路,再构成一位全加器原理图电路进行编译与仿真。
也可以使用Verilog语言描述后进行编译与仿真。
利用Verilog语言描述时,根据描述方式不同,分为门级结构描述、数据流描述、行为描述、层次化方式描述等。
本次试验决定采用Verilog语言层次化方式设计一位全加器。
用两个半加器和一个或门电路构成一位全加器。
如下图2.1所示,通过设置半加器模块并调用组合或门之后实现该电路。
此设计相当于采用了层次化的设计方法,半加器为底块模块,全加器为顶层模块,在顶层模块中调用底层模块(或称模块例化),类似于在原理图设计中调用元器件来构成整个系统。
图2.1三、实验步骤1、半加器定义打开Quartus软件,新建Verilog语言模块(Verilog HDL File),在其中输入半加器的定义语句:module half_add(a,b,so,co);input a,b; output so,co;assign co=a&b; assign so=a^b;endmodule图3.1 如右上图3.1,保存至D:\My_design\add\half_add.v。
实验一利用原理图输入法设计4位全加器一、实验目的:掌握利用原理图输入法设计简单组合电路的方法,掌握MAX+plusII的层次化设计方法。
通过一个4位全加器的设计,熟悉用EDA软件进行电路设计的详细流程。
二、实验原理:一个4位全加器可以由4个一位全加器构成,全加器的进位以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的低位进位输入信号cin相接。
1位全加器f-adder由2个半加器h-adder和一个或门按照下列电路来实现。
半加器h-adder由与门、同或门和非门构成。
四位加法器由4个全加器构成1234三、实验内容:1. 熟悉QuartusII软件界面,掌握利用原理图进行电路模块设计的方法。
QuartusII设计流程见教材第五章:QuartusII应用向导。
2.设计1位全加器原理图(1)生成一个新的图形文件(file->new->graphic editor)(2)按照给定的原理图输入逻辑门(symbol->enter symbol)(3)根据原理图连接所有逻辑门的端口,并添加输入/输出端口(4)为管脚和节点命名:在管脚上的PIN_NAME处双击鼠标左键,然后输入名字;选中需命名的线,然后输入名字。
(5)创建缺省(Default)符号:在File菜单中选择Create Symbol Files for Current File项,即可创建一个设计的符号,该符号可被高层设计调用。
3.利用层次化原理图方法设计4位全加器(1)生成新的空白原理图,作为4位全加器设计输入(2)利用已经生成的1位全加器的缺省符号作为电路单元,设计4位全加器的原理图.4.新建波形文件(file->new->Other Files->Vector Waveform File),保存后进行仿真(Processing ->Start Simulation),对4位全加器进行时序仿真。
课程名称:EDA技术与FPGA应用设计实验项目:1位全加器2012年 6 月22 日一、实验目的①熟悉ispDesignEXPERT System、Quartus II原理图设计流程的全过程。
②学习简单组合电路的设计方法、输入步骤。
③学习层次化设计步骤。
④学习EDA设计的仿真和硬件测试方法。
二、实验原理1位全加器可以由2个半加器及1个或门连接而成,因此首先完成如图的半加器设计。
使用原理图输入的方法先进行底层半加器设计,在建立上层全加器设计文件,调用半加器和或门符号,连线完成原理设计。
半加器原理图全加器原理图三、主要仪器设备Isp Design EXPERT软件,FPGA配置存储芯片,硬件电路板。
四、实验步骤(1)启动Isp Design EXPERT软件,并创立半加器设计项目和选择器件ispLSI 1016E。
(2)添加原理图输入源文件(3)根据上图添加半加器中的元件符号和输入输出符号,然后连线,画好半加器。
(4)将图形中半加器的添加输入输出端口并锁定引脚。
(5)画出半加器的仿真波形。
(6)删掉半加器的输入输出端口链接和引脚,将半加器变成模块的形式并保存。
(7)再把半加器当作元件,按照原理图链接。
(8)根据图形标记输入输出和锁定引脚(9)保存所完成的全加器图(10)建立波形仿真源文件,分别进行功能和时序仿真(11)接好编程电缆,选择Scan Board命令。
完成一个包含菊花链中所有器件的基本结构文件。
(12)添加JEDEC文件和器件编程。
(13)根据锁定的引脚观察实验板上相应的LED灯的变化。
五、实验结果及分析设计校验过程:功能仿真:在设计输入阶段,进行逻辑功能验证,称为功能仿真或前仿真。
时序仿真:在选择了具体器件并完成布局布线方案后进行的时序仿真称为后仿真或延时仿真。
由于不同器件的内部延时不一样,不同的布局、布线方案也给延迟造成了很大的影响,因此在设计处理以后,分析时序关系,估计设计的性能以及检查和消除竞争冒险等是必要的。
一位全加器的实验报告一位全加器的实验报告摘要:本实验旨在通过搭建一位全加器电路,探究数字电路中的加法运算原理。
通过实验,我们成功验证了全加器的功能,并观察到了其在二进制加法中的作用。
实验结果表明,全加器是一种重要的数字电路元件,能够实现多位二进制数的相加运算。
引言:全加器是一种常见的数字电路元件,用于实现二进制数的相加运算。
它能够处理两个输入位和一个进位位,并输出一个和位和一个进位位。
全加器的设计和实现对于数字电路的理解和应用具有重要意义。
本实验将通过搭建一位全加器电路,探究其工作原理和应用。
材料与方法:1. 逻辑门:与门、或门、异或门、非门2. 连线材料:导线、电源线3. 电源:直流电源4. 示波器:用于观察电路输出波形实验步骤:1. 按照电路图搭建一位全加器电路,包括两个输入位A和B,一个进位位Cin,一个和位S和一个进位位Cout。
2. 将电源线连接至电路,确保电路正常供电。
3. 分别将输入位A和B的电平信号输入到与门和异或门中,将进位位Cin的电平信号输入到与门中。
4. 将与门和异或门的输出信号输入到或门中,得到和位S的输出信号。
5. 将与门的输出信号输入到与非门中,得到进位位Cout的输出信号。
6. 使用示波器观察和位S和进位位Cout的波形。
结果与讨论:通过实验观察,我们得到了一位全加器的输出波形。
当输入位A和B均为0时,和位S和进位位Cout均为0;当输入位A和B均为1时,和位S为0,进位位Cout为1;当输入位A和B中有一个为1时,和位S为1,进位位Cout为0;当输入位A和B均为1时,和位S和进位位Cout均为1。
这一结果与全加器的逻辑运算规则相符,验证了全加器电路的正确性。
全加器在二进制加法中起到了关键作用。
通过将多个全加器连接起来,我们可以实现多位二进制数的相加运算。
在实际应用中,全加器被广泛应用于计算机的算术逻辑单元(ALU)中,用于实现加法和其他运算。
结论:通过本实验,我们成功搭建了一位全加器电路,并验证了其在二进制加法中的功能。
EDA实验报告EDA 实验实验一用原理图输入法设计半加器一、实验目的:1.熟悉利用Quartus Ⅱ的原理图输入方法设计简单组合电路;2.通过一个半加器的设计把握利用EDA 软件进行电子线路设计的详细流程;3.学会对实验板上的FPGA/CPLD 进行编程下载,硬件验证自己的设计项目。
二、实验器材:1、计算机及操作系统2、QUARTUS II 软件三、实验要求:1. 利用原理图输入法对半加器电路进行描述;2. 进行波形仿真测试;3. 严格按照实验步骤进行实验;4. 管脚映射按照芯片的要求进行。
四、实验原理其中a, b 为输入端口,So 与Co 分别为半加器和与进位。
其逻辑表达式为:2. 根据逻辑表达式进行原理图输入。
五、实验步骤:1. 为本项工程设计建立文件夹。
注意文件夹名不能用中文,且不可带空格。
2. 输入设计项目并存盘。
3. 将设计项目设计为工程文件。
4. 选择目标器件并编译。
b a b a b a So ⊕=+=ab Co =5. 时序仿真。
6. 引脚锁定。
7. 编程下载。
实验二用原理图法设计一位、四位全加器一、实验目的:1. 熟悉利用QuartusⅡ的原理图输入方法设计简单组合电路;2. 通过一个半加器的设计把握利用EDA 软件进行电子线路设计的详细流程;3. 学会对实验板上的FPGA/CPLD 进行编程下载,硬件验证自己的设计项目。
二、实验器材:1、计算机及操作系统2、QUARTUS II软件三、实验要求:1.利用原理图输入法对一位全加器电路进行描述;2. 进行波形仿真测试;3. 严格按照实验步骤进行实验;四、实验原理:利用实验一所设计的半加器设计一位全加器;利用设计封装好的一位全加器进行四位全加器的设计。
五、实验步骤:与实验一相同。
六、实验报告:1. 要求画出一位、四位全加器的真值表;2. 分析用半加器实现一位全加器的优点;3. 对波形进行分析,并绘制波形图。
实验三用文本输入法设计D触发器和锁存器一、实验目的:1. 熟悉QuartusⅡ的VHDL 文本设计过程。
实验一一位全加器电路设计实验目的:1.熟悉EDA软件开发工具(MAX+plus II)的基本操作;2.熟悉KHF-4型CPLD/FPGA实验箱的板上资源分布。
3. 以原理图方式设计一位全加器,进行软件仿真、下载和硬件测试。
实验设备:微型计算机一台、KHF-4型实验箱一个实验原理:全加器原理图和真值表分别如图1和表1所示:图1. 半加器原理图表1. 半加器真值表全加器原理图和真值表分别如图2和表2所示:图2. 全加器原理图表2. 全加器真值表实验步骤:1)打开MAX+plus II设计软件。
2)新建图形编辑文件(File/New/Graphic Edit file),在文件空白处双击鼠标左键(或选择菜单Symbol/Enter Symbol)打开添加符号对话框(Enter Symbol),在“Symbol Libraries”框中双击选择“../maxplus2/max2lib/prim”库,在Symbol Files添加半加器原理图中各元件、输入(input)和输出(output)管脚,修改管脚名称后完成半加器原理图的绘制如图1;保存文件到具体设计目下。
图3.新建文件、添加符号和保存文件3)将半加器文件设为顶层文件(File/Project/Set Project to Current File),打开编译器(MAX+plus II/Complier)进行编译综合。
图4.设为顶层和编译4)创建半加器符号(File/Creat Default Symble)。
5)新建图形编辑文件(File/New/Graphic Edit file),在文件空白处双击鼠标左键打开添加符号对话框(Enter Symbol),从“File Symbol”框中调用半加器符号,完成全加器原理图的绘制如图2,保存文件到具体设计目录。
6)将全加器文件设为顶层文件,打开编译器进行编译综合。
7)新建波形编辑文件(File/New/Waveform Edit file),添加节点信号(在Name下点击鼠标右键选择Enter Nodes from SNF…)并编辑输入信号波形;保存(File/Save)波形文件(按默认文件名点击OK保存)。
南昌大学实验报告
学生姓名:刘光林学号: 6100209064 专业班级:卓越通信(3+1)实验类型:□验证□综合□设计□创新实验日期:实验成绩:实验一熟悉QuartusⅡ软件及实验装置设计全加器
(一)实验目的
以一位二进制全加器为例熟悉利用QuartusII的原理图输入方法和文本输入法设计简单组合电路;学习多层次工程的设计方法。
(二)实验要求
⑴用文本方法实现半加器,再采用层次设计法用原理图输入完成全加器的设计;
⑵给出此项设计的仿真波形;
⑶用发光管指示显示结果。
(三)实验步骤:
1.建立工作库文件夹,输入半加器VHDL代码并存盘。
ENTITY h_adder IS
PORT (a ,b:IN STD_LOGIC;
co, so:OUT STD_LOGIC);
END ENTITY h_adder;
ARCHITECTURE fh1 OF adder is
BEGIN
So<=NOT(a XOR(NOT b)); co<=A and b;
END ARCHITECTURE fh1:
2.选目标器件并编译。
3.建立仿真波形文件,进行波形仿真。
半加器的仿真波形
4.引脚锁定,包装元件。
5.建立顶层电路实验原理图
全加器的原理图
6.对全加器进行波形仿真
(四)实验结果:
实验波形结果基本正确,但是稍微有一点延时,这里不是非常准确。
竭诚为您提供优质文档/双击可除eda全加器实验报告篇一:eDA全加器实验报告1位全加器设计实验报告彭世晶32211317实验目的:用原理图输入法完成半加器和全加器的设计,熟悉和练习QuartusⅡ的应用。
实验原理:1位全加器可以用两个半加器及一个或门连接而成,因此需要首先完成半加器的设计。
用最简单的原理图输入法来完成半加器及全加器的设计。
实验真值表:半加器全加器实验逻辑图:半加器全加器实验程序:半加器moduleh_adder(a,b,so,co);//半加器描述inputa,b;outputso,co;assign{co,so}=a+b;//两位二进制数直接相加endmodule或门moduleor2a(a.b.c);//或门逻辑描述outputc;inputa,bassignc=a|b;endmodule全加器顶层文件modulef_adder(ain,bin,c(:eda全加器实验报告)in,cout,sum);//一位全加器顶层设计描述outputcout,sum;inputain,bin,cin;wiree,d,f;//定义网线型变量作内部单元连接线h_adderu1(ain,bin,e,d);//使用位置关联法进行例化h_adderu2(.a(e),.so(sum),.b(cin),.co(f));or2au3(.a(d),.b(f),.c(cout));//使用端口名关联法进行例化endmodule实验波形图:半加器全加器实验RTL图:实验结果与分析:通过eDA实验我对编程环境QuartusⅡ有了一定的了解,也初步了解了硬件平台。
我个人认为老师应当增加实验次数,以便我们加强自己的动手能力。
篇二:eDA实验报告4位全加器实验报告eDA实验报告书篇三:eDA实验报告(四位全加器的实现)实验一四位全加器的实现一、实验目的1、掌握Quartus9.0图形编辑输入法2、掌握Quartus环境下文件的编译、仿真及下载方法3、了解VhDL语言的设计流程4、掌握quartus环境下VhDL的使用方法二、实验内容1、用图形/原理图法实现4位全加器。
太原理工大学EDA实验报告1-1位全加器
太原理工大学Eda实验报告1-1位全加器
实验报告
课程名称:Eda技术与FPGa应用设计
课设题目:
1位全加器
实验地点:信息学院楼cPLd实验室
专业班级:
学号:
学生姓名:
指导教师:张文爱
20XX年4月1日
实验一1位全加器
一、实验目的
1.熟悉ispdesignEXPERTSystem、Quartusii的原理图设计流程的全过程。
2.学习简单组合电路的设计方法、输入步骤。
3.学习层次化设计步骤。
4.学习Eda设计的仿真和硬件测试方法。
二、实验原理
1.位全加器可以用两个半加器及一个或门连接而成。
图1.半加器原理图
图2.全加器原理图
三、实验任务
1.用原理图输入方法设计半加器电路。
2.建立顶层原理图电路。
3.对全加器电路进行引脚锁定、硬件测试。
四、实验内容
1.用原理图输入方法设计半加器电路
图3.半加器电路图
2.半加器经封装后作为一个元件为全加器电路使用,调用半加器设计全加器:
图4.全加器电路图
五、实验结果
六、实验感想
通过本次试验我熟悉了ispdesignEXPERTSystem、Quartusii的原理图设计流程的全过程。
学习了简单组合电路的设计方法、输入步骤以及Eda设计的仿真和硬件测试方法。
学会了使用FPGa设计的顶层设计的简单实验,通过设计半加器完成全加器的设计。
对所学的知识得到很好的实践和检验。
()。
EDA实验实验报告学号:姓名:彭文勇院系:微电子技术系专业:嵌入式教师:李海2010年12月实验一一位全加器的设计实验地点:第二实验楼405同组人员:孙腾坤一、实验目的通过次实验我们逐步了解、熟悉和掌握FPGA开发软件Quartus II 的使用及Verilog HDL的编程方法。
学习用Verilog HDL语言以不同的方式来描述1位全加器及电路的设计仿真和硬件测试。
二、实验原理和内容本实验的内容是建立一个1位全加器。
具体内容包括:(1)使用Quartus II建立工程、编写程序;(2)进行波形仿真验证;(3)进行硬件测试。
通过SmartSOPC试验箱上的按键KEY1~KEY3输入信号,分别为A、B和cin,并通过LED1~LED3指示相应的状态。
输出Sum和cout通过LED7和LED8指示(灯亮表示输入或输出为“1”)。
三、实验步骤(1)启动Quartus II建立一个空白工程,然后命名为full_add。
(2)新建Verilog HDL源文件full_add.v,输入程序代码并保存,然后进行综合编译。
若在编译过程中发现错误,则找出并更正错误,直至编译成功为止,并生成图形符号文件full_add.bdf。
(3)波形仿真验证。
(4)新建图形设计文件命名为full_add.bdf并保存。
微电子技术系(5)选择目标器件并对相应的引脚进行锁定,我们选Altera公司Cyclone系列的EP1C6Q240C8芯片,引脚锁定方法参考实验书后面的附录A引脚分配。
将为使用的引脚设置为三态输入(一定要设置否则可能损坏芯片)。
(6)将full_add.bdf设置为顶层实体。
对该工程文件进行全程便已处理。
若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。
(7)将跳线短接帽调解到JP6的KEY1~KEY3、LED0~LED2、LED6和LED7,使KEY1~KEY3、LED1~LED3、LED7、LED8与芯片对应的引脚相连。
EDA技术与应用实验报告姓名学号专业年级电子信息工程实验题目八位全加器设计实验目的1.熟悉QuartuaⅡ的文本和原理图输入方法设计简单组合电路2.通过8位全加器的设计掌握层次化设计的方法3.学会对实验板上的FPGA/CPLD开发系统硬件电路的编程下载及测试实验原理1.由文本输入利用元件例化语句或者原理图输入封装元件的方式,层次化设计1位全加器2.用原理图输入方法,由1位全加器通过低位进位输出cout与高位进位输入cin以串行方式相连接,构成8位全加器实验内容实验一:用原理图输入法设计8位全加器1.原理图输入完成半加器和1位全加器的设计,并封装入库2.层次化设计,建立顶层文件,由1位全加器构成8位全加器3.每一层次均需进行编译、综合、适配、仿真及实验板上硬件测试实验二:用文本输入法设计8位全加器1. VHDL文本输入完成半加器和一位全加器的设计2. 用元件例化语句由1位全加器设计一个8位全加器3.每一层次均需进行编译、综合、适配、仿真及实验板上硬件测试实验步骤实验一1.设计1位全加器<1>完成对半加器的设计(详见P117),编译、仿真、生成可调用元件h_adder.bsf;<2>完成对1位全加器的设计(详见P118),编译、仿真与下载,生成可调用原件f_adder.bsf;2.利用1位全加器进行8位全加器的设计<1>新建文件夹adder_8bit,作为顶层文件的目录,将底层文件h_adder.bdf、f_adder.bdf拷贝到此目录下。
新建一个初始原理图adder_8bit.bdf,并为其创建project,将三个设计文件加入工程。
<2>在原理图编辑窗口,调入元件f_adder.bsf,连接线路,对引脚命名,完成对8位全加器的设计。
<3>选择芯片EP1K100QC208-3,引脚锁定并再次编译,编程下载,分析实验结果。
实验二1.设计1位全加器<1>分别新建子文件夹,用来保存底层文件或门or2a.VHDL、半加器h_adder.VHDL的设计,并分别建立相应的project,进行编译、综合、适配、仿真,确保无error(详见P72)。
EDA技术与 VHDL 实验报告电气工程系电子信息工程实验一: 1 位全加器设计实验目的:I1131.学习 QuartusII9.1 集成开发环境的使用方法以及如何建立工程和文件;2.用原理图输入设计法和VHDL 文本输入设计法设计1 位全加器;3.通过电路仿真和硬件验证,进一步了解1 位全加器的功能I113实验内容:用原理图输入设计法和VHDL 文本输入设计法分别设计1 位全加器,并下载到 CH4 实验箱上运行。
实验原理: 1 位全加器可以由两个半加器和一个或门连接而成, 因而可根据半加器的电路 (如图 3-1 所示)或真值表写出或门和半加器的 VHDL 描述。
然后根据图 3-2 写出全加器的顶层描述。
co a b so co0 0 0 0 aand20 1 1 0bnot xnor2so1 0 1 0111图 3-1半加器 h_adder 电路图及其真值表u1dh_adder a or2aainh_adder ccoutf_addercoutain A coAco f bbinsumbin BsoeBsou3sumcincinu2图 3-2全加器 f_adder 电路图及其实体模块实验步骤:1.打开实验箱电源; 2.输入移位寄存器 VHDL 程序;3.点击图标,进行分析和综合;4. 建立波形文件,进行功能仿真; 5.按接线图配置 FPGA 引脚; 6.点击图标 ,进行编译;7.下载 ****.sof 配置文件到 EP3C16Q240C8中;1 半加器的 vhdl 描述有两种,我用的是下面这种,布尔函数描述法 :( 1)布尔函数描述方法的VHDL 源程序如下:LIBRARY IEEE; --半加器描述 (1):布尔方程描述方法USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_adder ISPORT (a, b : IN STD_LOGIC;co, so : OUT STD_LOGIC);END ENTITY h_adder;ARCHITECTURE fh1 OF h_adder isBEGINso <= NOT(a XOR (NOT b)) ; co <= 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 ISBEGINc <= a OR b ;END ARCHITECTURE one ;( 3) 1 位二进制全加器顶层设计描述:LIBRARY IEEE; --1 位二进制全加器顶层设计描述USE IEEE.STD_LOGIC_1164.ALL;ENTITY f_adder ISPORT (ain, bin, cin : IN STD_LOGIC;cout , sum: OUT STD_LOGIC );END ENTITY f_adder;ARCHITECTURE fd1 OF f_adder ISCOMPONENT h_adder--调用半加器声明语句PORT ( a, b :IN STD_LOGIC;co, so :OUT STD_LOGIC);END COMPONENT ;COMPONENT or2aPORT (a, b : IN STD_LOGIC;c : OUT STD_LOGIC);END COMPONENT;SIGNAL d, e,f : STD_LOGIC; --定义 3 个信号作为内部的连接线。
实验二:一位全加器的设计一、实验目的1、了解和学习Quartus II 7.2软件设计平台。
2、了解EDA的设计过程。
3、通过实例,学习和掌握Quartus II 7.2平台下的文本输入法。
4、学习和掌握全加器的设计原理。
5、初步掌握该实验的软件仿真过程。
二、实验仪器PC机,操作系统为Windows7,本课程所用系统均为Windows7(下同),Quartus II 7.2设计平台。
三、实验步骤1、创建工程,在File菜单中选择New Project Wizard,弹出对话框如下图所示在这个窗口中第一行为工程保存路径,第二行为工程名,第三行为顶层文件实体名,和工程名一样。
2、新建设计文本文件,在file中选择new,出现如下对话框:选择VHDL File 点击OK。
2、文本输入,在文本中输入如下程序代码:library ieee;use ieee.std_logic_1164.all;ENTITY xor31 isport (a,b,cin:in std_logic;sum:out std_logic);end xor31;ARCHITECTURE d1 OF xor31 isbeginsum<=a xor b xor cin;end d1;library ieee;use ieee.std_logic_1164.all;ENTITY and21 isport (a,b:in std_logic;c:out std_logic);end and21;ARCHITECTURE d2 OF and21 isbeginc<=a and b;end d2;library ieee;use ieee.std_logic_1164.all; ENTITY or31 isport (s1,s2,s3:in std_logic;y:out std_logic);end or31;ARCHITECTURE d3 OF or31 isbeginy<=s1 or s2 or s3;end d3;library ieee;use ieee.std_logic_1164.all; ENTITY f_adder1 isport (a,b,cin:in std_logic;cout,sum:out std_logic); end f_adder1;ARCHITECTURE bhv OF f_adder1 iscomponent and21 isport(a,b:in std_logic;c:out std_logic);end component;component xor31 isport(a,b,cin:in std_logic;sum:out std_logic);end component;component or31 isport(s1,s2,s3:in std_logic;y:out std_logic);end component;signal s1,s2,s3:std_logic;beginu1:xor31 port map(a,b,cin,sum); u2:and21 port map(a,b,s1);u3:and21 port map(b,cin,s2);u4:and21 port map(a,cin,s3);u5:or31 port map(s1,s2,s3,cout); end bhv;然后保存到工程中,结果如下图所示:4、编译,如果有多个文件要把这个文件设为当前顶层实体,这样软件编译时就只编译这个文件。
实验一:1位全加器设计实验目的:用原理图输入法完成半加器和全加器的设计,熟悉和练习Max+PlusⅡ的应用。
实验原理:1位全加器可以用两个半加器及一个或门连接而成,因此需要首先完成半加器的设计。
用最简单的原理图输入法来完成半加器及全加器的设计。
实验内容:一:(1)、建立一个文件夹,设此文件夹为本项设计工程的工作库。
文件夹起名为Quanjiaqi。
(2)、进入原理图输入系统,在File/New下建立新的原理图设计文件。
(3)、在原理图输入窗口中右击选择输入元件项Enter Symbol,在所弹出窗口中查找所需元件INPUT、OUTPUT、AND2、XNOR、NOT并放入当前窗口。
完成半加器电路图(如下图)并起名为Banjiqi.gdf保存在Quanjiaqi工作库内。
(4)、选择File/Project/Set Project to Current File项,将当前设计项目设置成工程文件。
然后在MAX+PLUSⅡ下拉菜单中选择Compiler项对原理图工程文件进行编译。
(5)、进入波形文件输入系统,在File/New下建立新的波形设计文件,文件名默认为Banjiaqi.scf。
(6)、选择Node/Node from SNF项,在弹出的窗口首选List键,将节点信号添加到右栏。
(7)、设置波形参量,设置File/End time项为34us,设半加器输入信号a、b 为高低电平,保存文件,用默认文件名及扩展名。
(8)、运行时序仿真器:选择MAX+plusⅡ/Simulateor项,并观察分析输出信号co、so。
波形图如下(9)、选择File/open下Banjiaqi.gdf文件,并将其设置成当前工程文件,然后选择File/C reate Default Symbol项将当前文件设置成包装好的单一元件,留以备用。
二、(1)、重复“一”中的步骤从第(2)开始,将调入元件改成INPU、TOUTPUT、OR2以及第一步中包装入库的Banjiaqi元件,输入原理图,起名为Quanjiaqi.gdf 保存在Quanjiaqi工作库中,并对其进行编译。
实验一1位全加器和四位全加器的设计一、实验目的1、掌握Quartus Ⅱ6.0软件使用流程。
2、初步掌握VHDL的编程方法。
3、掌握图形层次设计方法;4、掌握全加器原理,能进行多位加法器的设计。
二、实验原理(一位全加器的逻辑表达式为:sum=a^b^Cl;Ch= a&b|(a^b)&Cl.(2)四位加法器加法器是数字系统中的基本逻辑器件。
多位加法器的构成有两种方式:并行进位和串行进位方式。
并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。
通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。
三、实验连线(1)一位全加器1、将EP2C5适配板左下角的JTAG用十芯排线和万用下载区左下角的SOPC JTAG 口连接起来,万用下载区右下角的电源开关拨到SOPC下载的一边2、将JPLED1短路帽右插,JPLED的短路帽全部上插。
3、请将JP103的短路帽全部插上,,打开实验箱电源。
( 2 ) 四位加法器1、将EP2C5适配板左下角的JTAG用十芯排线和万用下载区左下角的SOPC JTAG 口连接起来,万用下载区右下角的电源开关拨到SOPC下载的一边2、JPLED1短路帽右插,JPLED的短路帽全部上插。
3、请将JP103的短路帽全部插上,,打开实验箱电源。
四、实验代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY fulladder ISPORT(A,B,C1 :IN STD_LOGIC;CH,SUM : OUT STD_LOGIC);END ENTITY fulladder;ARCHITECTURE ADO OF fulladder isSIGNAL AB :STD_LOGIC;BEGINSUM<=A XOR B XOR C1;AB<=A XOR B;CH<=(A AND B) OR (AB AND C1);END ARCHITECTURE ADO;一位全加器波形如下:图4-1四位加法器波形如下:图4-2五、实验仿真过程SW1,SW2,SW3对应a,b,Cl;D101,D102分别对应sum和Ch,当结果为0时彩色LED灯熄灭,当结果为1时彩灯点亮,改变SW1,SW2,SW3的输入状态,观察实验结果。
南华大学
船山学院
实验报告
(2009 ~2010 学年度第二学期)
课程名称EDA
实验名称1位全加器
姓名学号200994401
专业计算机科学与
班级01
技术
地点8-212 教师
一、实验目的:
熟悉MAX+plus 10.2的VHDL 文本设计流程全过程
二、实验原理图:
ain cout
cout ain bin sum
cin
bin sum
cin
f_adder
or2a
f e d
u3
u2u1b
a c
co so
B
co so
B
h_adder A h_adder
A
三、实验代码:
(1)LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;
ENTITY f_adder IS
PORT (ain ,bin ,cin : IN STD_LOGIC; cout ,sum : OUT STD_LOGIC ); END ENTITY f_adder;
ARCHITECTURE fd1 OF f_adder IS COMPONENT h_adder 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_adder PORT MAP(a=>ain ,b=>bin ,co=>d ,so=>e); u2 : h_adder PORT MAP(a=>e , b=>cin , co=>f ,so=>sum); u3 : or2a PORT MAP(a=>d , b=>f , c=>cout);
END ARCHITECTURE fd1;
(2)LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY h_adder IS
PORT (a, b : IN STD_LOGIC;
co, so : OUT STD_LOGIC);
END ENTITY h_adder;
ARCHITECTURE fh1 OF h_adder is
SIGNAL abc : STD_LOGIC_VECTOR(1 DOWNTO 0) ;
BEGIN
abc <= a & b ;
PROCESS(abc)
BEGIN
CASE abc IS
WHEN "00" => so<='0'; co<='0' ;
WHEN "01" => so<='1'; co<='0' ;
WHEN "10" => so<='1'; co<='0' ;
WHEN "11" => so<='0'; co<='1' ;
WHEN OTHERS => NULL ;
END CASE;
END PROCESS;
END ARCHITECTURE fh1 ;
(3)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 ;
四、实验结果:
五、实验心得:
一位全加器设计可以由两个半加器组合而成,那么八位全加器的VHDL设计应该也可以由八个一位全加器来完成,效果应该和原理图输入一样呢?。