EDA FPGA设计实例 四位加法器(含源程序)
FPGA 4位全加器的设计
目录4位全加器设计报告一、设计原理全加器是指能进行加数、被加数和低位来的进位信号相加,并依照求和结果给出该位的进位。
4位加法器能够采纳4个以为全加器级连成串行进位加法器,如以下图所示,其中CSA为一名全加器。
显然,关于这种方式,因高位运算必需要等低位进位来到后才能进行,因此它的延迟超级可观,高速运算无法胜任。
A和B为加法器的输入位串,关于4位加法器其位宽为4位,S为加法器输出位串,与输入位串相同,C为进位输入(CI)或输出(CO)。
实现代码为:全加器真值表如下:输入输出Xi Yi Ci-1 Si Ci0 0 0 0 00 0 1 1 0output[3:0]sum;output cout;input[3:0]ina,inb;input cin;assign {count,sum}=ina+inb+cin;endmodule二、设计目的⑴熟悉开发环境,把握工程的生成方式。
⑵熟悉SEED-XDTK XUPV2Pro实验环境。
⑶了解Verilog HDL语言在FPGA中的利用。
⑷了解4位全加器的Verilog HDL语言实现。
三、设计内容用Verilog HDL语言设计4位全加器,进行功能仿真演示。
四、设计步骤1、创建工程及设计输入。
⑴在E:\progect\目录下,新建名为count8的新工程。
⑵器件族类型(Device Family)选择“Virtex2P”器件型号(Device)选“XC2VP30 ff896-7”综合工具(Synthesis Tool)选“XST(VHDL/Verilog)”仿真器(Simulator)选“ISE Simulator”⑶下面一直next和确信。
⑷设计输入:在源代码窗口中单击右键,在弹出的菜单被选择“New Source”,在弹出的对话框被选择“Verilog Moudle”,在右端的“File name”中输入源文件名adder4,下面各步单击“Next”按钮。
EDA 四位加法器 实验报告
实验报告课程名称:EDA技术与VHDL实验题目:四位加法器设计班级学号:姓名:成绩:一、实验目的 ..................................................................................... - 1 -二、实验任务 ..................................................................................... - 1 -三、系统总体设计 ............................................................................. - 1 -四、VHDL程序设计......................................................................... - 1 -1. 用原理图输入方式设计半加器 ................................................ - 2 -2. 全加器的设计 ............................................................................ - 4 -3.4位全加器的设计 ....................................................................... - 5 -五、仿真 ............................................................................................... - 5 -六、仿真结果分析 ............................................................................... - 6 -一、实验目的熟悉利用QuartusⅡ的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个4位全加器的设计把握文本和原理图输入方式设计的详细流程。
EDA原理图输入法设计4位全加器
EDA原理图输入法设计4位全加器实验课程名称:EDA实验_实验项目名称用原理图输入法设计4位全加器实验成绩实验者专业班级组别同组者实验日期一、实验目的熟悉利用Quartus II 的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个4位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。
二、实验内容和步骤1:完成半加器和全加器的设计,包括原理图输入、编译、综合、适配、仿真、实验板上的硬件测试,并将此全加器电路设计成一个硬件符号入库。
键1、键2、键3(PIO0/1/2)分别接ain、bin、cin;发光管D2、D1(PIO9/8)分别接sum 和cout。
2:建立一个更高层次的原理图设计,利用以上获得的1位全加器构成4位全加器,并完成编译、综合、适配、仿真、和硬件测试。
建议选择电路模式1(附图F-2):键2、键1输入4位加数:键4、键3输入4位被加数:数码6和数码5显示加和:D8显示进位cout。
三、实验仪器Quartus II软件四、实验原理一个4位全加器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低一位全加器仿真波形如下图所示:3.四位全加器原理图如下所示:四位全加器波形图如下所示:五、实验小结通过此次实验,对Quartus II软件有了更加深入的认识,能较为熟练的使用。
在开始仿真的时候,要先弄清原理,接下来的线路连接就较为简单了。
设计顶层文件也是一个重要的知识点,掌握好之后对后面的设计有很大的帮助。
同时对时序仿真部分也要了解相关的步骤设置才能得到最终的仿真结果。
经过反复的联系,全加器的仿真图能很好的掌握并得出正确的仿真结果,对EDA的相应知识点也能很好的掌握,而且能熟练的使用Quartus II,这些对我都有很重要的意义。
EDA课程设计报告--四位加法器设计
信商《EDA》课程设计题目:四位加法器设计学号: 200906024245姓名:梁晓群班级:机自094指导老师:韩晓燕2011年12月28日—2011年12月30日目录摘要----------------------------------3 EDA简介---------------------------3 概述----------------------------------4 1.1目的与要求-------------------4 1.2实验前预习-------------------4 1.3设计环境----------------------5 四位全加器的设计过程----------5 2.1 半加器的设计-----------------6 2.2一位全加器的设计-----------9 2.3四位全加器的设计----------11 收获与心得体会----------------13摘要本文主要介绍了关于EDA技术的基本概念及应用,EDA设计使用的软件Quartus7.2的基本操作及使用方法,以及半加器、1位全加器和四位全加器的设计及仿真过程。
EDA简介EDA的概念EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作.EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。
基于FPGA的四位加法器设计
基于FPGA的四位加法器设计4位加法器设计。
取开发板上的4位按键作为4位被加数,取4位拨码开关作为4位被加数,其中8个led灯取5位作为输出结果,led0-led3作为相加的结果,led4作为进位(LED亮表示低电平0,LED灭表示高电平1,)数码管以十进制数显示被加数,加数和相加的结果。
包括vhdl文件、和vwf文件。
利用两组按键作为两个加数输入,用数码管做加数显示和结果显示,开发板上只有4个数码管,但加数都是两位的,所以只能做轮流显示,用“=”键做显示切换。
程序如下:library ieee;use ieee.std_logic_unsigned.all;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;entity adder_4 isport(clk:in std_logic; --时钟输入,应该输入分频后的clkenter:in std_logic; --显示切换,可以理解位“=”键clear:in std_logic; --清除键,预留接口可扩展key_num1:in std_logic_vector(3 downto 0); --加数1key_num2:in std_logic_vector(3 downto 0); --加数2duan:out std_logic_vector(6 downto 0); --输出结果wei:out std_logic_vector(3 downto 0);led5:out std_logic_vector(4 downto 0) --led结果显示);end entity;architecture fun of adder_4 issignal num1,num2:std_logic_vector(3 downto 0); --中间信号定义signal add_num1: integer range 15 downto 0;signal add_num2: integer range 15 downto 0;signal add_sum: integer range 30 downto 0;signal ten_data:integer range 9 downto 0;signal add_num1ge,add_num1shi,add_num2ge,add_num2shi,sumge,sumshi:integer range 9 downto 0;signal wei_data:integer range 0 to 3;beginduan<="1000000"when ten_data=0 else --显示部分,数码管共阳"1111001"when ten_data=1 else"0100100"when ten_data=2 else"0110000"when ten_data=3 else"0111001"when ten_data=4 else"0010010"when ten_data=5 else"0000010"when ten_data=6 else"1111000"when ten_data=7 else"0000000"when ten_data=8 else"0010000";process(clk,clear,enter,key_num1,key_num2,num1,num2,add_num1ge,add_num1shi,add_n um2ge,add_num2shi,sumge,sumshi)beginif clear = '0' thenadd_num1<=0;add_num2<=0;add_sum<=0;else--if key_num1/="1111" or key_num2/="1111" thennum1<=not key_num1;num2<=not key_num2;--加数处理,二进制转十进制。
EDA技术与FPGA应用设计实验报告--4位二进制加法计数器
本科实验报告课程名称:EDA技术与FPGA应用设计实验项目:4位二进制加法计数器实验地点:跨越机房专业班级:学号:学生姓名:指导教师:2012年6 月20 日一、实验目的:1.学习时序电路的VHDL描述方法。
2.掌握时序进程中同步、异步控制信号的设计。
3.熟悉EDA的仿真分析和硬件测试技术。
二、实验原理:设计一个含计数使能、异步复位和并行预置功能的4位加法计数器,RST是异步复位信号,高电平有效;CLK是时钟信号;当使能信号ENA为“1”'时,加法计数,COUT为计数进位输出,OUTY为计数输出。
三、实验内容:1.编写4位二进制加法计数器的VHDL程序。
2.在ispDesignEXPERT System上对编码器进行仿真。
3.将输入引脚连接到拨码开关,时钟输入锁定到相应频率的时钟信号,输出连接到发光二极管,下载后在实验板上验证其功能,记录实验结果。
四、实验程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALLUSE IEEE.STD_LOGIC_UNSIGNED.ALLENTITY CNT4B ISPORT(CLK:IN STD_LOGIC;RST:IN STG_LOGIC;ENA:IN STD_LOGIC;OUTY:OUT STD_LODGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END CNT4B;ARCHITECTURE BEHAV OF CNT4B ISSIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINP_REG: PROCESS(CLK,RST,ENA)BEGINIF RST=’1’THEN CQI<=”0000”;ELSIF CLK’EVENT AND CLK=’1’THENIF ENA= ’1’THEN CQI<=CQI+1;ENG IF;END IF;OUTY <= CQI;END PROCESS P_REG;COUT<= CQI(0) AND CQI(1) AND CQI(2) AND CQI(3); END BEHAV;五、仿真结果:1.时序图:2.功能图:六、心得体会:通过本实验,让我对VHDL编程有了一定的了解和认识,让我初步学习了VHDL的编写及调试过程,实验中有错误产生,但是经过细心的改正,解决了问题,希望下次实验能有更大的提高。
eda课程设计论文4位全加器
eda课程设计论文4位全加器一、教学目标本课程的目标是让学生理解并掌握全加器的工作原理和设计方法,能够运用数字逻辑设计出功能完整的全加器。
知识目标:使学生了解全加器的功能和作用,理解其内部电路的工作原理,掌握全加器的真值表和布尔表达式。
技能目标:培养学生运用数字逻辑设计简单电路的能力,能够独立完成全加器的设计和仿真。
情感态度价值观目标:培养学生对电子技术的兴趣,提高学生解决问题的能力,培养学生的创新精神和团队协作精神。
二、教学内容本课程的教学内容主要包括全加器的功能和工作原理、全加器的真值表和布尔表达式、全加器的设计和仿真。
首先,讲解全加器的功能和作用,通过具体的实例让学生了解全加器在计算机中的重要性。
然后,讲解全加器的内部电路工作原理,使学生理解全加器是如何实现加法的。
接下来,介绍全加器的真值表和布尔表达式,让学生掌握全加器的工作原理。
最后,讲解全加器的设计和仿真方法,培养学生运用数字逻辑设计电路的能力。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法。
首先,通过讲授法向学生传授全加器的理论知识,使学生了解全加器的基本概念和工作原理。
然后,通过讨论法引导学生进行思考和讨论,提高学生的理解能力。
接下来,通过案例分析法分析实际案例,使学生了解全加器在计算机中的应用。
最后,通过实验法让学生动手设计和仿真全加器,提高学生的实践能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备适当的教学资源,包括教材、参考书、多媒体资料和实验设备。
教材:选用《数字逻辑设计》作为主教材,系统地介绍全加器的理论知识。
参考书:推荐《计算机组成原理》等参考书,供学生深入学习和参考。
多媒体资料:制作全加器的原理讲解和设计过程的视频,通过动画和图像等形式直观地展示全加器的工作原理。
实验设备:准备数字逻辑设计实验室,提供全加器的设计和仿真实验所需设备。
eda4位加法课程设计
eda4位加法课程设计一、课程目标知识目标:1. 学生能理解并掌握4位加法的基本概念和原理;2. 学生能够掌握并运用EDA工具进行4位加法电路的设计与实现;3. 学生能够理解并描述4位加法器的工作原理及其在各种电子设备中的应用。
技能目标:1. 学生能够运用所学知识,独立完成4位加法电路的设计和搭建;2. 学生能够运用EDA工具进行电路仿真,分析并解决4位加法电路中可能出现的实际问题;3. 学生通过实践操作,提高逻辑思维能力和问题解决能力。
情感态度价值观目标:1. 学生在学习过程中,培养对电子技术和数字电路的兴趣和热情;2. 学生通过团队协作,培养合作精神和沟通能力;3. 学生在实践过程中,认识到科技对社会发展的作用,增强创新意识和责任感。
课程性质:本课程为电子设计自动化(EDA)相关课程,旨在让学生掌握4位加法电路的设计与实现,提高学生的实践操作能力和逻辑思维能力。
学生特点:学生处于初中阶段,对电子技术有一定的好奇心,但可能对具体操作和理论知识掌握不足。
教学要求:结合学生特点,注重理论与实践相结合,通过实例分析和动手操作,使学生能够扎实掌握4位加法电路的相关知识。
同时,关注学生的情感态度价值观培养,提高学生的综合素质。
在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 4位加法电路基本原理:包括全加器、半加器的概念,4位加法器的工作原理及其在不同进位模式下的特点。
- 教材章节:第三章第三节《加法器的设计与应用》2. EDA工具的使用:介绍并练习使用EDA工具进行4位加法电路的设计、仿真和验证。
- 教材章节:第五章《电子设计自动化工具》3. 4位加法电路的设计与实现:- 教学内容:指导学生利用EDA工具进行4位加法电路的设计,包括原理图绘制、电路仿真和波形分析。
- 教材章节:第四章《数字电路设计与实现》4. 实践操作与问题分析:- 教学内容:组织学生进行4位加法电路的搭建,分析并解决实际操作中遇到的问题。
EDA四位加法器
EAD课程设计《四位加法器设计》*名:***学号:********专业:电子信息工程班级:093252指导教师:**2012年11月8日目录一、摘要 ..................................................................................................... 3\二、设计目的 (4)三、设计要求 (4)四、设计环境 (4)五、设计内容 (5)5.1、全加器原理图 (5)5.2、四位加法器原理图 (5)5.2、一位全加器 (6)5.3、四位加法器 (8)六、心得体会 (12)七、参考文献 (12)附录 (13)一、摘要随着电子技术和计算机技术的飞速发展,电子线路的设计工作也日益显得重要。
经过人工设计、制作实验板、调试再修改的多次循环才定型的传统产品设计方法必然被计算机辅助设计所取代,因为这种费时费力又费资源的设计调试方法既增加了产品开发的成本,又受到实验工作场地及仪器设备的限制。
20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。
在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。
这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。
这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。
EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
四位加法器设计范文
四位加法器设计范文四位加法器是一种用于执行四位二进制数加法的数字电路。
它可以通过将四个单独的一位加法器相连来实现。
每个一位加法器接收两个输入位和进位位,并输出一个和位和一个进位位。
四位加法器还需要一个额外的输入位作为最高位的进位位,以便处理溢出情况。
1.第一步:设计一位全加器全加器是执行两个输入位和一个进位位的加法操作,并输出一个和位和一个进位位。
它可以使用两个半加器和一个或门来实现。
半加器有两个输入位a和b,以及两个输出位s和c。
其中,s为和位,c为进位位。
半加器的真值表如下:a,b,s,c---,---,---,---0,0,0,00,1,1,01,0,1,01,1,0,1将两个半加器串联起来,可以得到一个全加器。
全加器的真值表如下:a ,b ,c , s , carry---,---,---,---,-------0,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,12.第二步:设计四位加法器四位加法器可以通过将四个全加器相连来实现。
它有四个输入位a3、a2、a1和a0,四个输入位b3、b2、b1和b0,一个输入位carry_in,四个输出位s3、s2、s1和s0,一个输出位carry_out。
其中,s3为最高位的和位,carry_out为溢出位。
首先,将a0和b0送入第一个全加器,得到s0和carry_out_0。
然后,将a1、b1和carry_out_0送入第二个全加器,得到s1和carry_out_1、同样地,将a2、b2和carry_out_1送入第三个全加器,得到s2和carry_out_2、最后,将a3、b3和carry_out_2送入第四个全加器,得到s3和carry_out。
3.第三步:使用多路选择器处理溢出当四位加法器出现溢出时,carry_out为1、为了处理溢出情况,我们可以使用一个多路选择器。
EDA实验报告(四位全加器的实现)
实验一四位全加器的实现一、实验目的1、掌握Quartus9.0图形编辑输入法2、掌握Quartus环境下文件的编译、仿真及下载方法3、了解VHDL语言的设计流程4、掌握quartus环境下VHDL的使用方法二、实验内容1、用图形/原理图法实现4位全加器。
2、用VHDL语言实现4位全加器,必须使用元件例化。
3、仿真并通过。
3、下载到实验板,并验收三、实验步骤1、图形编辑发设计4位加法器(1)新建图形文件,设计一位全加器,逻辑电路图如下图(图1-1)所示。
图1-1(2)将设计好的一位全加器进行例化,操作为file→Create/Update→Create symbol files for currentfile,完成此操作后会在元器件符号表里找到刚刚做好的一位全加器。
(3)再新建一个图形文件,用四个已经做好的一位全加器级联成一个四位全加器,其逻辑原理图如图1-2所示。
编辑好后保存文件,在文件列表里找到该文件,右键→Set as Top-level Entity,将其设置为顶层文件,点击编译按钮就行编译。
图1-2(4)新建波形文件,赋予每个输入端口某种输入信号,保存波形文件,进行功能仿真,观察输出端波形与输入信号关系是否正确。
若不正确,查找问题所在并解决问题;若正确,则进行管脚分配,分配完毕后再编译一次使分配生效,连接DE2开发板到电脑,将文件下载到开发板进行验证。
2、用VHDL语言设计4位加法器(1)新建一个VHDL源文件,文件名为adder1.vhd,使用VHDL实现一位全加器,其VHDL代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY adde1r ISPORT(A,B,Ci:IN STD_LOGIC;S,Co:OUT STD_LOGIC);END adder1;ARCHITECTURE qadder OF adder1 ISBEGINPROCESS(A,B,Ci)VARIABLE n1,n2,n3:STD_LOGIC;BEGINn1:=A AND B;n2:=A XOR B;n3:=Ci AND n2;Co<=n3 OR n1;S<=n2 XOR Ci;END PROCESS;END qadder;(2)再新建一个VHDL源文件,命名为adder4.vhd,在这里将adder 一位全加器例化并使用它,做成四位全加器,代码如下:library ieee;use ieee.std_logic_1164.all;entity adder4 isport(A,B:in std_logic_vector(3 downto 0);S:out std_logic_vector(3 downto 0);Co:out std_logic;Ci:in std_logic);end adder4;architecture adder_4 of adder4 iscomponent adderport(A:in std_logic;B:in std_logic;Ci:in std_logic;Co:out std_logic;S:out std_logic);end component;signal c1,c2,c3:std_logic;beginu1:adder port map(A(0),B(0),Ci,c1,S(0));u2:adder port map(A(1),B(1),c1,c2,S(1));u3:adder port map(A(2),B(2),c2,c3,S(2));u4:adder port map(A(3),B(3),c3,Co,S(3));end adder_4;(3)保存文件后将adder4设置为顶层文件并编译,编译通过后按照与图形编辑发一样的仿真、管脚分配方式进行操作,最后下载到开发板验证四、实验现象两种方式实现的四位加法器下载到DE2开发板后都可正常工作,其中使用SW0作为低位的进位,SW4~1作为数据B,SW8~5作为数据A,LDG3~0作为输出的结果,LEDG4作为输出的进位。
EDA-四位二进制加法器设计实验步骤
作业2:4位加法器设计(1)任务设计带进位的4位二进制加法器。
(2)要求要考虑低位的进位。
进行仿真。
用ispLSI1016E-80LJ44实现。
步骤一:打开ispDesign EXPERT,单击file,选择new project,弹出如下创建新项目对话框,建子目录,在“保存在(I)”栏,用鼠标点击▼,任选可用区(盘),如 D:区(盘),用鼠标点击从右数的第三个小图标(新建文件夹),自动生成新建文件夹子目录,起一个项目文件夹名(应为便于你记住的英文或拼音),如liu2009,并用鼠标双击文件夹名。
选择 project type:Verilog HDL 。
步骤二:给项目起名(应为便于你记住的英文或拼音,如liu),用鼠标点击保存(S)。
选中器件为ispLSI1016E-80LJ44。
并用鼠标双击下图第一行,并给项目源文件加标题名如liu蓝条示(如将有多个项目源文件,加标题名时要加以区分,这里只针对一题,为了简单,标题名用 liu)。
图1.步骤三:点击Source下拉选New,弹出窗口,选择上面左下角的Verilog Module ,设置名称如图所示:步骤四:在TextEditer中编辑输入Verilog 语言源程序:module liu1(a,b,c1,cout,sum);output cout;output[3:0] sum;input[3:0] a,b;input c1;assign {cout,sum}=a+b+c1;endmodule步骤五:在Text Editor中点File下拉Save As,将源文件Liu1.v存D盘Liu2009,退出。
选择tools ,synplicity synplify synthesis,点击菜单栏上的“P”,ADD :步骤六:在如下界面下部点击Chang,确认选器件ispLSI1016E-80LJ44,并运行。
通过Done!在该界面点File下拉Save As,以Liu1保存,退出。
EDA实验四 四位全加器设计
物理与电子工程学院实验报告(2020----2021学年第 1学期)课程名称:EDA技术实验实验名称:四位全加器设计专业班级:学号:姓名:实验时间:2020年11月4日(第十周)注:报告内容根据具体实验课程或实验项目的要求确定,一般包括实验目的、实验仪器、原理摘要、数据记录及结果分析等。
如纸张不够请自行加纸。
一、实验目的:通过实验让学生熟悉Quartus Ⅱ的VHDL 文本设计流程全过程,掌握组合逻辑电路的文本输入设计法,通过对设计电路的仿真和硬件验证,让学生进一步了解加法器的功能。
二、实验内容1. 编写1位全加器full_add1的VHDL 源程序,并进行编译。
2. 利用元件例化语句编写4位全加器full_adder4的VHDL 源程序,并进行编 译和仿真。
3. 锁定引脚,建议选择电路模式1:键1输入4位加数,键2输入4位被加数, 键8输入Cin ,数码管5显示相加和,D8显示进位CO 。
4.编程下载与硬件验证。
三、实验条件1、开发软件: QuartusII 9.0。
2、实验设备:GW48-PK2++型 EDA 实验开发系统3、拟用芯片:EP1C6Q240C8N 。
四、实验设计1、系统的原理框图4位全加器可看作4个1位全加器串行构成,具体连接方法如下图所示:图3-1 由1位全加器构成4位全加器连接示意图b sb sb sb sB 3 A 3 B 2 AS 3 C O S 22、VHDL源程序3、管脚锁定信号名实验箱位置锁定目标器件引脚(EP1C6Q240)Cin键8PIN_173a[0...3]键1PIN_233、234、235、236 b[0...3]键2PIN_237、238、239、240co D8PIN_160S[0...3]数码管5PIN_13、14、15、16备注验证设备:GW48-PK2实验开发系统五、实验结果及总结1、系统时序仿真情况2、硬件验证情况3、实验心得通过这次实验我掌握了组合逻辑电路的文本输入法,了解了加法器的功能写到了先通过一位加法器,扩展到四位加法器,在老师的帮助下收获良多。
FPGA四位加法器实验报告
题目:含异步清0和同步使能的4位加法计数器一. 实验目的.学习时序电路的设计、仿真和硬件测试,进一步熟悉VHDL技术。
二.实验原理.如图是一含计数使能、异步复位和计数值并行预置功能4位加法计数器,4位锁存器;rst是异步清0信号,高电平有效;clk是锁存信号;D[3..0]是4位数据输入端。
ENA是使能信号,当ENA为'1'时,多路选择器将加1器的输出值加载于锁存器的数据端;当ENA为'0'时将"0000"加载于锁存器。
三.实验内容.设计一个含异步清0和同步使能的4位加法计数器;实现对输入时钟(clk)的计数。
任务分析:在RST=1,ENA=1时,系统对输入时钟进行计数,所计数值输出至OUTY(3 DOWNTO 0),当计数满15时,产生一个进位,输出至COUT,同时OUTY溢出归零;如果RST=1,ENA=0时,保持原来的计数值不变。
如果RST=0,置输出信号为0;1)异步复位,则输入信号有复位信号RST2)同步使能, 则输入信号有使能信号ENA3)要求同步的时序,则输入信号有时钟CLK在QuartusII上对下列程序进行编辑、编译、综合、适配、仿真。
module CNT4B(CLK,RST,ENA,CLK_1,RST_1,ENA_1,OUTY,COUT);input CLK,RST,ENA;output CLK_1,RST_1,ENA_1;output[3:0] OUTY;output COUT;reg[3:0] OUTY;reg COUT;wire CLK_1; wire RST_1; wire ENA_1;assign CLK_1 = CLK; assign RST_1 = RST; assign ENA_1 = ENA;always@(posedge CLK or negedge RST)begin if(!RST)begin OUTY<=4'b0000;COUT<=1'b0; endelse if(ENA)Begin OUTY<=OUTY+1;COUT<=OUTY[0] & OUTY[1] & OUTY[2] & OUTY[3]; end end endmodule四.实验步骤.1.在QUARTUSII软件下创建一工程,工程名为CNT4B,芯片名为EP2C35F672C6;2.新建Verilog语言文件,输入以上Verilog语言源程序,并将程序命名为CNT4B.vhd,保存在与工程相同的文件夹中;3.进行功能仿真、全编译、时序仿真,如出现错误请按照错误提示进行修改,保证设计的正确性。
电子设计(EDA)实验报告(4位二进制加法器)
电子设计(EDA)实验报告(4位二进制加法器)一、实验名称4位二进制加法器二、实验目的掌握输入编辑原理图文件的方法;掌握编译原理图文件的方法;掌握仿真原理图文件的方法;理解Quartus 2 器件编程的方法三、实验环境计算机与Quartus 2 工具软件四、实验原理图、源程序entity halfadd isport(a1,b1:in bit;s1,c1:out bit);end ;architecture a of halfadd isbeginprocess(a1,b1)begins1<=a1 xor b1 after 10ns;c1<=a1 and b1 after 10ns;end process;end a;entity orgate isport(a,b:in bit;o:out bit);end orgate;architecture a of orgate isbegino<=a or b;end a;entity fulladd isport(i1,i2,c_in:in bit;fs,c_out:out bit);end ;architecture a of fulladd issignal temp_s,temp_c1,temp_c2:bit; component halfaddport(a1,b1:in bit;s1,c1:out bit);end component;component orgate port(a,b:in bit;o:out bit);end component;beginu0:halfadd port map(i1,i2,temp_s,temp_c1);u1:halfadd port map(temp_s,c_in,fs,temp_c2); u2:orgate port map(temp_c1,temp_c2,c_out); end a;entity add4 isport(a,b:in bit_vector(3 downto 0);cin:in bit;fs:out bit_vector(3 downto 0);cout:out bit);end add4;architecture a of add4 issignal temp_co0,temp_co1,temp_co2:bit; component fulladd isport(i1,i2,c_in:in bit;fs,c_out:out bit);end component;beginu0:fulladd port map(a(0),b(0),cin,fs(0),temp_co0);u1:fulladd port map(a(1),b(1),temp_co0,fs(1),temp_co1);u2:fulladd port map(a(2),b(2),temp_co1,fs(2),temp_co2);u3:fulladd port map(a(3),b(3),temp_co2,fs(3),cout);end a;五、实验波形图及分析延迟12.08ns。
四位全加器设计
河南工业大学EDA技术实验报告专业电科班级1301 姓名田学号20131603实验地点6316+ 6515 实验日期2014-9-25 成绩评定一、实验项目四位全加器设计二、实验目的熟悉利用Quartus II 的原理图输入法来设计简单组合逻辑电路,学会层次化设计方法,并通过一个4位全加器的设计,学会利用EDA软件进行电子电路设计的详细流程。
学会对实验板上的FPGA/CPLD进行编程下载,用硬件验证自己的设计项目。
三、实验原理该四位全加器是由一位全加器作底层文件,四位全加器作顶层文件组合而成,将制作好的一位全加器文件sdder.bdf进行编译,并设置成可调用的原件。
将4个一位全加器的原件按照低位加法器的进位输出与相邻的高位加法器的进位输入信号连接。
四、仿真结果及分析当输入CIN=‘0’,A=“0011”,B=“1100”时此时无进位信号输出,且输出S=“1111”。
当CIN=‘1’,其他输入保持不变时,此时进位输出信号COUT=‘1’,且S=“0000”。
当CIN=‘0’,且A=“0101”,B=“0101”,此时无进位输出,且输出S=“1010”。
当进位输入CIN=‘1’时,同样无进位输出,此时S=“1011”。
由以上分析可知仿真结果正确,表明电路原理图正确。
五、硬件验证过程及结果分析硬件验证方法及过程:首先要进行原理图的管脚锁定,采用高电平输出作为进位信号的输入,八位本位输入信号采用两个四位二进制控制按键来进行按键输入。
全加器的进位输出信号我采用点亮二极管的方式显示进位端口有信号输出。
四位二进制的本位相加和采用数码管方式来显示。
结果现象:当按动按键时数码管上数值依次加一,当同时将两个四位二进制数增加到最大值时,数码管上显示“FF”。
此时若使用单独的高电平作为进位信号,数码管上数值显示变为“00”,相对应的是连接进位输出的二极管被点亮。
六、实验总结此次四位全加器原理图的设计总的来说比较轻松,在之前一位全加器的基础上,制作四位全加器还是比较简单的。
EDA实验4位加法器
实验7 4位二进制并行加法器的设计一、实验目的学习加法器的设计、仿真和硬件测试,进一步熟悉Verilog设计技术。
二、实验条件1、PC机一台。
2、开发软件:Q uartusII。
3、实验设备:GW48-CK EDA实验开发系统。
4、选用芯片:ACEX系列EP1K30TC144-3。
三、实验原理多位加法器的构成有两种方式:并行进位和串行进位。
并行进位加法器设有进位产生逻辑,运算速度较快;串行进位方式是将全加器级联构成多位加法器。
并行进位加法器通常比串行级联加法器占用更多的资源。
随着位数的增加,相同位数的并行加法器与串行加法器的资源占用差距也越来越大。
因此,在工程中使用加法器时,要在速度和容量之间寻找平衡点。
实践证明,4位二进制并行加法器和串行级联加法器占用几乎相同的资源。
这样,多位加法器由4位二进制并行加法器级联构成是较好的折中选择。
图1 4位二进制并行加法器原理图四、实验内容1、编写图1 所示4位二进制并行加法器的Verilog程序,并在Quartus II上对4位加法器进行编译、仿真。
2、实验内容2:引脚锁定以及硬件下载测试。
目标器件是ACEX1K30,建议选实验电路模式1,键1可输入4位加数(此值显示于键对应的数码管上);键3可输入4位被加数(此值显示于键对应的数码管上);加法器最低进位位由键8控制;加数和显示于数码管5;加法器溢出位由发光管D8显示。
五、实验报告:将实验原理、硬件测试实验结果写进实验报告。
六、参考资料1、4位加法器的参考程序:module adder4(cout,sum,ina,inb,cin);output[3:0] sum;output cout;input[3:0] ina,inb;input cin;assign{cout,sum}=ina+inb+cin;endmodule2、参考管脚设定图2 4位加法器参考管脚设定实验报告:根据实验内容写出实验报告,包括实验目的,实验原理,实验内容,程序设计或原理图;给出程序分析报告、仿真波形图、硬件下载实验结果及其分析报告。
eda实验报告(四位全加器的实现)
eda实验报告(四位全加器的实现)一、概述本实验是基于EDA软件对四位全加器电路进行实现的过程。
在EDA软件中,通过电路图的设计和仿真,可以有效地判断电路的正确性,从而进一步改进设计方案。
二、实验过程本实验的目的是实现四位全加器的电路。
在四位全加器的电路中,需要实现三个输入端口A、B和CIN,以及两个输出端口SUM和COUT。
其中,SUM输出端口表示输入端口A和B相加的结果,COUT输出端口则表示两个输入端口相加后的进位。
首先,在EDA软件中,使用电路图工具设计了四位全加器的电路。
在电路图中,输入端口和输出端口均使用标准连接器进行连接。
在电路图中,使用四个完整加法器电路连接起来,从而实现四位全加器电路的功能。
接着,对设计出的电路进行了仿真。
仿真的过程中,需要给输入端口设置相应的电信号,以模拟实际应用中的电路电信号。
通过观察仿真结果,可以判断输入端口和输出端口的功能是否正确,从而判断电路图的设计是否正确。
最后,将完成的电路图经过PCB工具进行绘制。
绘制完成后,将其导入到模拟工具中,进行实际电路的模拟测试。
在测试过程中,需要将输入端口和输出端口分别连接到接口测试架,并按照正常的电路连接方式进行测试。
通过测试结果,可以判断电路图中所设计的电路是否正确。
同时,测试结果还能验证电路的可靠性和稳定性,从而进行后续改进。
三、实验结果根据以上实验过程,在EDA软件中,成功设计了四位全加器电路,并进行了仿真和实际测试。
在测试结果中,电路功能正常,而输出端口的结果也与预期结果一致。
经过多次测试,电路的稳定性和可靠性也得到了验证。
四、结论通过以上实验,得出如下结论:1. EDA软件在电路设计和仿真方面具有很大的优势,能够极大地提高电路设计的效率和可靠性。
2. 在设计电路时,需要充分考虑各个输入端口之间的电路连接方式,以确保电路的准确性和稳定性。
3. 在完成电路设计之后,需要进行仿真和测试,以验证电路的正常功能和性能表现,从而进一步改进和优化电路设计方案。
EDA实验报告——四位二进制加法器的设计
(2)部分真值表: (2)部分真值表: 部分真值表
四位加法器部分真值表(括号内的是十六进制) :
输 入 C4 A43 A42 A41 A40 B43 0 1111(F) 1 0000(0) 0 0010(2) 1 0100(4) 0 0110(6) 1 1000(8) 0 1010(A) 1 1100(C) 输 出 B42 B41 B40 S43 S42 S41 S40 CO4 1111(F) 1110(E) 1 0000(0) 0001(1) 0 0010(2) 0010(4) 0 0100(4) 1001(9) 0 0110(6) 1100(C) 0 1000(8) 0001(1) 1 1010(A) 0010(4) 1 1100(C) 1001(9) 1
1 1 1 0 0 1 1 0 0 1 0 0 1 1
3
�
(附页) 附页)
设计一个四位二进制加法器
(1)实验程序: (1)实验程序: 实验程序
LIBRARY ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity siweijiafaqi is port( C4: in std_logic; A4: in std_logic_vector(3 downto 0); B4: in std_logic_vector(3 downto 0); S4: out std_logic_vector(3 downto 0); CO4:out std_logic); end entity siweijiafaqi; architecture art of siweijiafaqi is signal S5 :std_logic_vector(4 downto 0); signal A5,B5:std_logic_vector(4 downto 0); begin A5<='0' & A4; B5<='0' & B4; S5<=A5+B5+C4; S4<=S5(3 downto 0); CO4<=S5(4); end archi3)实验仿真结果: (3)实验仿真结果: 实验仿真结果
EDA实验一 1位全加器和四位全加器的设计
实验一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的输入状态,观察实验结果。