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

合集下载

一位全加器VHDL的设计实验报告

一位全加器VHDL的设计实验报告

EDA技术及应用实验报告——一位全加器VHDL的设计班级:XXX姓名:XXX学号:XXX一位全加器的VHDL设计一、实验目的:1、学习MAX+PLUSⅡ软件的使用,包括软件安装及基本的使用流程。

2、掌握用VHDL设计简单组合电路的方法和详细设计流程。

3、掌握VHDL的层次化设计方法。

二、实验原理:本实验要用VHDL输入设计方法完成1位全加器的设计。

1位全加器可以用两个半加器及一个或门连接构成,因此需要首先完成半加器的VHDL设计。

采用VHDL层次化的设计方法,用文本编辑器设计一个半加器,并将其封装成模块,然后在顶层调用半加器模块完成1位全加器的VHDL设计。

三、实验内容和步骤:1、打开文本编辑器,完成半加器的设计。

2、完成1位半加器的设计输入、目标器件选择、编译。

3、打开文本编辑器,完成或门的设计。

4、完成或门的设计输入、目标器件选择、编译。

5、打开文本编辑器,完成全加器的设计。

6、完成全加器的设计输入、目标器件选择、编译。

7、全加器仿真8、全加器引脚锁定四、结果及分析:该一位加法器是由两个半加器组成,在半加器的基础上,采用元件的调用和例化语句,将元件连接起来,而实现全加器的VHDL编程和整体功能。

全加器包含两个半加器和一或门,1位半加器的端口a和b分别是两位相加的二进制输入信号,h是相加和输出信号,c是进位输出信号。

构成的全加器中,A,B,C分别是该一位全加器的三个二进制输入端,H是进位端,Ci是相加和输出信号的和,下图是根据试验箱上得出的结果写出的真值表:信号输入端信号输出端Ai Bi Ci Si Ci0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 1。

一位全加器 实验报告

一位全加器 实验报告

一位全加器实验报告实验报告:全加器的原理与实验一、实验目的本实验旨在探究全加器的原理及其在数字电路中的应用,通过实际操作加深对全加器的理解,并掌握其工作原理和性能特点。

二、实验器材1. 74LS86集成电路芯片2. 电源3. 示波器4. 逻辑分析仪5. 连接线6. 示波器探头三、实验原理全加器是数字电路中常用的逻辑运算器件,用于实现三个二进制数的相加运算。

全加器由两个半加器和一个进位输入组成,能够实现三个二进制数的相加运算,并输出相应的和与进位。

全加器的工作原理是基于二进制加法的逻辑运算规则,通过逻辑门的组合实现。

四、实验步骤1. 将74LS86集成电路芯片插入实验板中,并连接电源。

2. 将输入端A、B、Cin分别与电源接通,观察输出端Sum和Cout的变化。

3. 使用逻辑分析仪和示波器对输入端和输出端进行观测和分析,记录实验数据。

4. 分别改变输入端A、B、Cin的状态,观察输出端Sum和Cout的变化,记录实验数据。

5. 对实验数据进行分析和总结,验证全加器的工作原理和性能特点。

五、实验结果通过实验观测和数据分析,得出以下结论:1. 全加器能够实现三个二进制数的相加运算,并输出相应的和与进位。

2. 输入端A、B、Cin的状态改变会影响输出端Sum和Cout的变化,符合二进制加法的逻辑运算规则。

3. 74LS86集成电路芯片的性能稳定,能够满足数字电路的应用要求。

六、实验总结本实验通过实际操作加深了对全加器的理解,掌握了全加器的工作原理和性能特点。

全加器作为数字电路中常用的逻辑运算器件,具有重要的应用价值,能够实现二进制加法运算,广泛应用于计算机、通信等领域。

通过本实验的学习,对数字电路和逻辑运算有了更深入的理解,为今后的学习和工作打下了坚实的基础。

七、实验建议在实验过程中,应注意安全操作,避免短路和电路损坏。

同时,对实验数据进行仔细分析和总结,加深对全加器的理解,为今后的学习和应用提供有力支持。

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

实验一  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、记录实验现象或波形,并与理论值比较、分析。

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

实验一 1位全加器的设计(修改后)

实验一 1位全加器的设计(修改后)

• 步骤三:编辑全加器的原理图: 步骤三:编辑全加器的原理图:
• 由file->new,打开原理图文件Block Diaoram/Schematic File,并存盘为full_adder.bdf
左键双击原理图编辑窗空白处,弹出如下窗口
• 调入 1)半加器:half_adder, 2)二输入或门:2or, 3)输入,输出引脚
实验一 1位全加器的设计 位全加器的设计
一位全加器的原理分析
• 一位全加器可由两个一位半加器与一个或 门构成,其原理图如下图。
该设计利用层次结构描述法, • 首先设计半加器电路,将其打包为半加器 模块; • 然后在顶层调用半加器模块 半加器模块和ALTERA提供 半加器模块 的二输入或门 输入或门组成全加器电路; 输入或门 • 最后将全加器电路编译下载到实验箱,
输入是 两个加数:ain,bin, 一个进位:cin 这三个输入数据是1位(1bit),可由DE2的 SW0,SW1,SW2提供 为了显示更加清楚,可以将ain,bin,cin的输出引 出到DE2上的红色发光二极管显示,可选用 LEDR0,LEDR1,LEDR2. 输出是: 输出是: 和:sum 进位:cout 输出可由DE2的绿色发光二极管显示,可选用 LEDG0,LEDG1
• 步骤一:建立full_adder的工程 (project)
新建立full_adder工程(project)
设置project相关参数
• 设置project放置的位置及其名称,随后按 Next继续
• 添加文件到工程(project)中,在无相关文件需要 添加的情况下,按Next继续
• 选择FPGA目标器件,根据DE2的平台情况,选 择cyclone II系列的EP2C35F672C6,继续

全加器实验原理

全加器实验原理

全加器实验原理
全加器是电子数字电路中的一种重要电路,用于对两个二进制数进行加法运算。

全加器由两个输入和一个进位输入组成,输出为一个和位和一个进位输出。

全加器的输入包括两个二进制数位和一个进位输入。

其中,两个二进制数位分别代表被加数和加数的对应位,进位输入表示上一位的进位值。

全加器的输出有两个部分:和位输出和进位输出。

和位输出即为对两个二进制数位和进位输入进行加法运算的结果,它由两个输入进行异或运算得到。

异或运算的规则是:当输入的两个二进制数字相同时,结果为0;当输入的两个二进
制数字不同时,结果为1。

和位输出的作用是表示对应位相加
后的结果。

进位输出则表示相加时的进位情况,由两个输入和进位输入进行与运算得到。

与运算的规则是:当输入的两个二进制数字都为1时,结果为1;其他情况下,结果为0。

进位输出的作用
是传递进位信号,以便进行下一位的运算。

全加器由逻辑门组成,通常使用门电路实现。

常见的实现方式是使用异或门、与门和或门组合而成。

通过适当的电路连接,可以实现一个全加器的功能。

全加器的实验原理是基于二进制加法的原理。

在二进制加法中,相加的两个二进制数位及上一位的进位共同决定了该位的和位
和进位输出。

全加器通过逻辑门的组合,实现了这一原理。

通过实验可以验证全加器的原理和功能。

实验中,可以利用开关代表二进制数位和进位输入,通过观察和位和进位的输出情况,验证全加器的正确性。

实验还可以通过改变输入和观察输出的变化,进一步了解全加器的工作原理和逻辑操作。

整理实验一-一位二进制全加器设计实验

整理实验一-一位二进制全加器设计实验

整理人 尼克 实验一一位二进制全加器设计实验目录实验一Protel DXP 2004认识实验 (1)实验二两级阻容耦合三极管放大电路原理图设计 (1)实验三原理图元件库建立与调用 (3)实验四两级阻容耦合三极管放大电路PCB图设计 (5)实验五集成电路的逻辑功能测试 (7)实验六组合逻辑电路分析与设计 (12)实验七Quartus II 的使用 (17)实验八组合逻辑器件设计 (17)实验九组合电路设计 (25)实验一 Protel DXP 2004 认识实验一、实验目的1.掌握Prot e l DXP 2004 的安装、启动和关闭。

2.了解Protel DXP 2004 主窗口的组成和各部分的作用。

3.掌握Prot e l 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安装目录里,默认路径为C:\Program Files\Altium2004\),程序会自动替换文件中的公开密钥。

一位二进制全加器

一位二进制全加器

一位二进制全加器
对两个一位二进制数及来自低位的“进位”进行相加,产生本位“和”及向高位“进位”的逻辑电路称为全加器。

由此可知,全加器有三个输入端,二个输出端,其真值表如表8-15所示。

其中Ai、Bi分别是被加数、加数,Ci-1是低位进位,Si为本位全加和,C i为本位向高位的进位方法是由真值表列逻辑表达式画电路图值表如下
A i
B i
C i-1S i C i
0 0000
00110
01010
01101
10010
10101
11001
11111
由真值表可分别写出输出端Si和Ci的逻辑表达式
Si=Ai BiCi-1+AiBiCi-1+ AiBi Ci-1+ AiBiCi-1
= Ai(BiCi-1+ BiCi-1)+ Ai(BiCi-1+ BiCi-1)
= Ai(Bi⊕Ci-1 )+ Ai(Bi⊕Ci-1)
=Ai⊕Bi⊕Ci-1
Ci= Ai BiCi-1+ AiBiCi-1+Ai BiCi-1+ AiBiCi-1
= Ai( Bi⊕Ci-1)+BiCi-1(Ai+ Ai)
= Ai( Bi⊕Ci-1)+BiCi-1
= Ai( Bi⊕Ci-1) BiCi-1由逻辑表达式可设计电路Si和Ci加的逻辑表达式中有公用项,因此,在组成电路时,可令其共享同一异或门,从而使整体得到进一步简化。


位全加器的逻辑电路图和逻辑符此为异或门芯片为74ls86
此为或非门芯片为74ls00从上至下
号如图所示。

全加器应用实验报告

全加器应用实验报告

一、实验目的1. 理解全加器的逻辑功能和工作原理。

2. 掌握全加器的组成和电路结构。

3. 学习全加器在实际电路中的应用。

4. 培养动手实践能力和分析问题、解决问题的能力。

二、实验原理全加器是一种能够实现二进制加法运算的数字电路,它由半加器和与门组成。

全加器有三个输入端:两个加数输入端A和B,以及一个进位输入端Cin;三个输出端:进位输出端Cout,和输出端Sum,以及一个进位输入端Cin。

全加器的逻辑功能如下:- 当Cin为0时,全加器相当于一个半加器,即A和B相加,进位输出Cout为0,和输出Sum为A+B。

- 当Cin为1时,全加器将A、B和Cin相加,进位输出Cout为1,和输出Sum为A+B+Cin。

三、实验仪器与设备1. 数字电路实验箱2. 集成芯片(如74LS00、74LS86等)3. 导线4. 逻辑分析仪或示波器5. 实验指导书四、实验步骤1. 搭建全加器电路(1) 使用74LS86芯片搭建半加器电路,连接A、B和Sum端。

(2) 使用74LS00芯片搭建与门电路,连接Sum和Cin端,输出为Cout。

(3) 将半加器和与门电路连接起来,形成全加器电路。

2. 验证全加器功能(1) 将A、B和Cin端分别接入逻辑电平开关。

(2) 通过逻辑电平开关改变A、B和Cin端的电平,观察Cout和Sum端的输出。

(3) 将实验结果与理论计算结果进行对比,验证全加器的功能。

3. 全加器在实际电路中的应用(1) 使用全加器搭建一个4位加法器电路。

(2) 将A、B和Cin端分别接入4位二进制数输入端。

(3) 观察Cout和Sum端的输出,验证4位加法器电路的功能。

五、实验结果与分析1. 全加器功能验证通过实验验证,全加器能够实现二进制加法运算,其逻辑功能与理论计算结果一致。

2. 全加器在实际电路中的应用通过实验验证,全加器可以应用于4位加法器电路,实现多位二进制数的加法运算。

六、实验总结1. 全加器是一种能够实现二进制加法运算的数字电路,具有广泛的应用。

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

南昌大学实验报告学生姓名: 学 号: 专业班级: 中兴101实验类型:■ 验证 □ 综合 □设计 □ 创新 实验日期: 2012 9 28 实验成绩:实验一 一位二进制全加器设计实验一.实验目的(1)掌握Quartus II 的VHDL 文本设计和原理图输入方法设计全过程; (2)熟悉简单组合电路的设计,掌握系统仿真,学会分析硬件测试结果; (3) 熟悉设备和软件,掌握实验操作。

二.实验内容与要求(1)在利用VHDL 编辑程序实现半加器和或门,再利用原理图连接半加器和或门完成全加器的设计,熟悉层次设计概念;(2)给出此项设计的仿真波形;(3)参照实验板1K100的引脚号,选定和锁定引脚,编程下载,进行硬件测试。

三.设计思路一个1位全加器可以用两个1位半加器及一个或门连接而成。

而一个1位半加器可由基本门电路组成。

(1) 半加器设计原理能对两个1位二进制数进行相加而求得和及进位的逻辑电路称为半加器。

或:只考虑两个一位二进制数的相加,而不考虑来自低位进位数的运算电路,称为半加器。

图1为半加器原理图。

其中:a 、b 分别为被加数与加数,作为电路的输入端;so 为两数相加产生的本位和,它和两数相加产生的向高位的进位co 一起作为电路的输出。

半加器的真值表为表1 半加器真值表absoco0 0 0 0 0 1 1 0 1 0 1 0 111由真值表可分别写出和数so ,进位数co 的逻辑函数表达式为:b a b a b a so ⊕=+=--(1)ab co = (2)图1半加器原理图(2) 全加器设计原理除本位两个数相加外,还要加上从低位来的进位数,称为全加器。

图2全加器原理图。

全加器的真值表如下:表2全加器真值表c a b co so0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1其中a为加数,b为加数,c为低位向本位的进位,co为本位向高位的进位,so为本位和。

图2.全加器原理图四.实现方法一:原理图输入法设计(自己独立完成)1. 建立文件夹建立自己的文件夹(目录),如c:\myeda,进入Windows操作系统QuartusII不能识别中文,文件及文件夹名不能用中文。

2. 原理图设计输入打开Quartus II,选菜单File→New,选择“Device Design File->Block Diagram->Schematic File”项。

点击“OK”,在主界面中将打开“Block Editor”窗口。

(1) 放置元件在原理图编辑窗中的任何一个空白处双击鼠标左键或单击右键,跳出一个选择窗,选择此窗中的Enter Symbol项输入元件,出现元件选择窗口。

元件选择窗口窗口中Symbol Libraries:的路径c:\ Quartus2\max2lib\prim下为基本逻辑元件库,双击之,在Symbol Files:下出现prim中的所有元件,选中你需要的元件(如:二与门,即and2);或者在Symbol Name:中直接输入元件名称(and2),单击OK键。

你需要的元件(and2)会出现在原理图编辑窗中。

为了设计半加器,分别调入元件and2、not、xnor、input和output。

●如果安放相同元件,只要按住CTRL键,同时用鼠标拖动该元件。

(2) 添加连线把鼠标移到引脚附近,则鼠标光标自动由箭头变位十字,按住鼠标左键拖动,即可画出连线。

然后用鼠标分别在input和output的PIN-NAME上双击使其变黑色,再用键盘分别输入各引脚名:ain、bin、co和so。

(3). 保存原理图单击File→Save as…按扭,出现对话框,选择自己的目录(如c:\myeda)、合适名称保存刚才输入的原理图,原理图的扩展名为.bdf,本实验取名gate.bdf。

如图3所示。

图3 一位半加器图(4) 设置工程文件(Project)方法1 选择File→Project→Set Project to Current File,即将当前的设计文件设置成工程。

方法2 如果设计文件未打开,选File→Project→Name,然后在跳出的Project Name 窗中找到c:\myeda目录,在其File小窗口中双击gate.bdf文件。

●选择此项后可以看到窗口左上角显示出所设文件路径的变化。

3. 选择目标器件单击Assign→Device,跳出Device窗口,此窗口的Device Family是器件序列栏,首先在此栏中选定目标器件对应的序列名,如EPM7128S对应的是MAX7000S系列;EPF10K10对应的是FLEX10K系列等。

根据实际情况完成器件选择后(本实验为Cyclone||系列的EP2C35F672C8),按OK键。

●应将此栏下方标有Show only Fastest Speed Grades的勾消去,以便显示出所有速度级别的器件。

4. 编译(Compiler)单击QuartusII→Compiler,跳出Compiler窗口,此编译器的功能包括网表文件的提取、设计文件的排错、逻辑综合、逻辑分配、适配(结构综合)、时序仿真文件提取和编程下载文件装配等。

单击Start,开始编译!如果发现有错,排除错误后再次编译。

5. 包装元件入库。

编译通过后,单击File→Create Default Symbol,当前文件变成了一个包装好的自己的单一元件(半加器:gate),并被放置在工程路径指定的目录中以备后用。

6. 用两个半加器及一个或门连接而成一位全加器我们将上述1~5步的工作看成是完成了的一个底层元件,并被包装入库。

利用已做好的半加器gate,完成原理图输入、连线、引脚命名、器件选择、保存、项目设置、编译等过程,完成顶层项目全加器的设计。

如图4所示。

图4全加器的设计图●半加器元件gate的调用与库元件的调用方法一样。

●以文件名aaa.bdf存在同一目录(c:\myeda)中。

以下步骤同方法二:7. 仿真,测试项目的正确性8. 观察分析波形9. 时序分析五.VHDL文本输入法设计1.试验程序(程序来源:自己独立编写)--全加器设计的文本输入法设计程序--设计人:邓小娇--2012年9月26日--1位二进制全加器顶层设计描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY aaa ISPORT(ain,bin,cin:IN STD_LOGIC;--输入信号ain为加数,bin为加数,cin为低位向本位的进位cout,sum:OUT STD_LOGIC); --输出信号:co为本位向高位的进位,--so为本位和END ENTITY aaa;--半加器描述:真值表描述方法LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY gate ISPORT(a,b:IN STD_LOGIC;--a为加数,b也为加数co,so:OUT STD_LOGIC); -- co为本位向高位进位,so为本位和END ENTITY gate;ARCHITECTURE ART4 OF gate ISSIGNAL abc:STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据类型BEGINabc<=a&b;--a相并b,即a与b并置操作PROCESS(abc)BEGINCASE abc IS --类似于真值表的CASE语句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 ART4;--或门逻辑描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY or2a ISPORT(a,b:IN STD_LOGIC;--a .b 都为或门的输入c:OUT STD_LOGIC);--c为或门的输出END ENTITY or2a;ARCHITECTURE one OF or2a ISBEGINc <= a OR b;END ARCHITECTURE one;ARCHITECTURE fd1 OF aaa ISCOMPONENT gate --调用半加器声明语句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个信号作为内部的连接线。

BEGINu1: gate PORT MAP(a=>ain,b=>bin,co=>d,so=>e);--例化语句,=>表示信号连接u2: gate PORT MAP(a=>e,b=>cin,co=>f,so=>sum);u3: or2a PORT MAP(a=>d,b=>f,c=>cout);END ARCHITECTURE fd1;2.程序说明对于对数综合器来说,程序所列的全部程序可以同时输入相应的EDA 软件进行编译,也能以单独的元件模块分别进行编辑、文件存档、编译和综合。

程序中共有3 个独立的VHDL 设计模块即2 个元件模块和一个顶层设计模块aaa存档的文件名最好与对应的VHDL 程序的实体一致如可分别将它们取名为or2a.vhd gate.vhd和aaa.vhd。

程序的解析如下:(1) 作为文件说明部分由双横线“--”引导了一段注释语句在VHDL 程序的任何一行中双横线“--”后的文字都不参加编译和综合(2) 实体or2a 语句段定义了或门or2a 的引脚信号a b (输入)和c (输出) 其结构体语句段描述了输入与输出信号间的逻辑关系,即将输入信号a b 相或后传给输出信号端c。

相关文档
最新文档