EDA数字设计之全加器课件
EDA课程设计_一位全加器的设计

EDA课程设计一位全加器的设计The design of one bit full adder学校:兰州交通大学学院:电子与信息工程学院班级:姓名:学号:指导老师:成绩:摘要:本设计主要是利用VHDL语言设计一个一位全加器,它由半加器和或门两个模块组成。
两个模块通过顶层元件例化连接到一起。
几个模块组成的整体能够实现全加器的功能,对所给数据,能够准确快速地计算出其结果.具体的该设计利用VHDL语言使用文本输入,新建工程,通过设计输入、编译、仿真完成各种模块设计,然后生成元器件,再根据元件例化完成各部分的整合,从而形成一个完整的全加器,功能上很好地被满足。
关键字:全加器元件例化Abstract:This design primarily uses VHDL language to design the one bit full adder, which is composed of two half adder and a OR gate. The two modules are connected by top Component instance. Finally, the whole of several parts achieve the function of full adder. For given dates, it can calculate its consequence accurately and quickly.In detail, the design uses text input method by VHDL language to create new projects. By designing the input, compile, simulate, it complete various modules design and generate new components. Then it forms a complete one bit full adder by accomplishing the integration of all parts, according to component instance. And the function can be well satisfied.Key word:full adder component instance一.原理(说明)在计算机中2个二进制数之间的加减乘除算术运算都是由若干加法运算实现的.全加器是算术逻辑运算的重要组成部分,对其深入探索研究有重要的意义。
EDA实训资料1·全加器&全减器程序

给出1位全减器的VHDL描述。
首先设计1位半减器,然后用例化语句将它们连接起来底层文件半减器(h_suber)程序设计:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_suber ISPORT ( x , y : IN STD_LOGIC;diff , s_out : OUT STD_LOGIC ) ;END ENTITY h_suber;ARCHITECTURE fh1 OF h_suber ISSIGNAL abc : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ;BEGINabc <= x & y ;PROCESS ( abc )BEGINCASE abc ISWHEN "00" => diff <= '0'; s_out <= '0' ;WHEN "01" => diff <= '1'; s_out <= '1' ;WHEN "10" => diff <= '1'; s_out <= '0' ;WHEN "11" => diff <= '0'; s_out <= '0' ;WHEN OTHER => NULL ;END CASE;END PROCESS;END ARCHITECTURE fh1 ;底层文件或门(or2a)程序设计: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;根据连接图,顶层文件全减器(f_suber)程序设计:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY f_suber ISPORT ( xin , yin , sub_in : IN STD_LOGIC;diffout , sub_out : OUT STD_LOGIC ) ;END ENTITY f_suber;ARCHITECTURE fd1 OF f_suber ISCOMPONENT h_suberPORT ( x , y : IN STD_LOGIC;diff , s_out : OUT STD_LOGIC ) ;END COMPONENT ;COMPONENT or2aPORT ( a , b : IN STD_LOGIC;c : OUT STD_LOGIC ) ;END COMPONENT ;SIGNAL d , e , f : STD_LOGIC;BEGINu1 : h_suber PORT MAP ( x => xin , y => yin , diff => d , s_out => e );u2 : h_suber PORT MAP ( x => d , y => sub_in , diff => diffout , s_out => f ); u3 : or2a PORT MAP ( a => f , b => e , c => sub_out );END ARCHITECTURE fd1;全加器程序参照自动化同学课本,原理与全减器类似。
eda实验报告 全加器

eda实验报告全加器EDA实验报告:全加器一、引言在数字电路设计中,全加器是一种基本的组合逻辑电路,用于实现两个二进制数的加法运算。
全加器的设计和性能对于数字电路的正确性和效率至关重要。
本实验报告将介绍全加器的原理、设计方法以及实验结果。
二、全加器的原理全加器是由两个半加器和一个额外的输入引脚组成的。
它可以实现三个二进制输入数的相加运算,并输出相应的和与进位。
1. 半加器半加器是一个简单的组合逻辑电路,用于实现两个二进制数的相加运算。
它有两个输入引脚A和B,分别代表两个二进制数的对应位,一个和输出引脚S和一个进位输出引脚C。
半加器的真值表如下所示:A B S C0 0 0 00 1 1 01 0 1 01 1 0 1可以看出,和输出引脚S等于A和B的异或运算结果,进位输出引脚C等于A 和B的与运算结果。
2. 全加器全加器是由两个半加器和一个额外的输入引脚组成的。
它有三个输入引脚A、B 和Cin,分别代表两个二进制数的对应位以及上一位的进位,两个输出引脚S 和Cout,分别代表相加结果的和以及当前位的进位。
全加器的真值表如下所示:A B Cin S Cout0 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可以看出,和输出引脚S等于A、B和Cin的异或运算结果,进位输出引脚Cout等于A、B和Cin的与运算结果与A和B的或运算结果的与运算结果。
三、全加器的设计方法全加器的设计可以使用逻辑门电路实现。
常用的逻辑门包括与门、或门、非门和异或门。
根据全加器的真值表,可以使用这些逻辑门组合来实现全加器。
1. 使用逻辑门实现半加器半加器可以使用异或门和与门来实现。
异或门用于计算和输出引脚S,与门用于计算和输出引脚C。
2. 使用逻辑门实现全加器全加器可以使用两个半加器和一个或门来实现。
两个半加器分别用于计算和输出引脚S和C1,或门用于计算和输出引脚Cout。
EDA技术实用教程 设计8位全加器

END IF;
END PROCESS;
END BHV;
4. h_adder
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY h_adder IS
PORT ( a , b : IN STD_LOGIC ;
co, so : OUT STD_LOGIC );
component or2a
PORT ( a , b : IN STD_LOGIC ;
c : OUT STDຫໍສະໝຸດ LOGIC );END component ;
component CNT4
PORT ( CLK : IN BIT ;
Q : BUFFER INTEGER RANGE 7 DOWNTO 0);
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:or2aport map (a=>d, b=>f, c=>cout);
ENTITY E_adder IS
PORT ( CLK1,LOAD1: IN STD_LOGIC ;
A :IN STD_LOGIC_VECTOR(7 DOWNTO 0):="00000000";
B :IN STD_LOGIC_VECTOR(7 DOWNTO 0);
COUNTOUT,E : OUT STD_LOGIC );
第01章 全加器的设计

1.2 项目理论知识
1.2.1 EDA技术简介 1.2.2 可编程逻辑器件的硬件结构 1.2.3 QuartusⅡ集成开发环境
1.2.1 EDA技术简介
一、EDA技术的概念 EDA 是Electronic Design Automation(电子设计自动 化)的缩写. EDA 技术以计算机为工具,设计者在EDA 软件平台上, 用硬件描述语言完成设计文件,然后由计算机自动地完 成逻辑编译、化简、分割、综合、优化、布局、布线 和仿真,以及对特定目标芯片的适配编译、逻辑映射和 编程下载等工作.
1.2.2 可编程逻辑器件的硬件结构
2.可编程逻辑器件的分类
可编程逻辑器件按集成度,可分为低集成度可编程逻辑 器件和高集成度可编程逻辑器件。
1.2.2 可编程逻辑器件的硬件结构
3.低集成度可编程逻辑器件 (1)PROM:Programmable Read Only Memory (2)PLA:Programmable Array Logic (3)PAL:Programmable Logic Array (4)GAL:Generic Array Logic
1.2.2 可编程逻辑器件的硬件结构
4.高集成度可编程逻辑器件 (1)EPLD:Erasable Programmable Logic Device (2)CPLD:Complex Programmable Logic Device ①宏单元是CPLD的基本结构,由它来实现基本的逻辑功 能. ②可编程连线负责信号传递,连接所有的宏单元. ③I/O 引脚控制块负责输入、输出的电气特性控制,比如 可以设定集电极开路输出、摆率控制、三态输出等. (3)FPGA:Field Programmable Gate Array ①IOE(inputoutputelement,输入输出单元) ②LAB(logicarrayblock,逻辑阵列块) ③Interconnect(内部连接线).
EDA部分课件(常见电路)

四、程序说明 1.本设计可用顺序语句中的IF语句或并行语句中的条件 信号赋值语句来描述。因为这两类语句本身就具有优先顺 序。在本例中,输入端d7的优先级最高,只要d7=‟0‟,无 论其他输入端为何值,编码器的结果都由d7=‟0‟决定;d0 的优先级最低,只有当其他输入端信号无效时,才对 d0=‟0‟进行编码。
• • • • • • • • • • • • •
使用LOOP语句 architecture behav3 of priorityencoder is begin process( input) variable i:integer; begin for i in 0 to 7 loop if input(i) =„0‟ then y<=conv_std_logic_vector(i,3); end if; end loop; end process; end behav3;
• P1:process(a,dr,en) • begin • if ((en=„0‟) and (dr=„1‟) then • bout<=a; • else • bout<=“ZZZZZZZZ”; • end if; • b<=bout; • end process p1;
• P2: process(b,dr,en) • begin • if ((en=„0‟) and (dr=„0‟) then • bout<=b; • else • aout<=“ZZZZZZZZ”; • end if; • a<=bout; • end process p2; • end rt;
PROCESS(d) BEGIN IF d(7)=‟0‟ THEN y<=”000”; ELSIF d(6)=‟0‟ THEN y<=”001”; ELSIF d(5)=‟0‟ THEN y<=”010”; ELSIF d(4)=‟0‟ THEN y<=”011”; ELSIF d(3)=‟0‟ THEN y<=”100”; ELSIF d(2)=‟0‟ THEN y<=”101”; ELSIF d(1)=‟0‟ THEN y<=”110”; ELSIF d(0)=‟0‟ THEN y<=”111”; END IF; END PROCESS; END beh;
EDA 1位全加器

课程名称: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灯的变化。
五、实验结果及分析设计校验过程:功能仿真:在设计输入阶段,进行逻辑功能验证,称为功能仿真或前仿真。
时序仿真:在选择了具体器件并完成布局布线方案后进行的时序仿真称为后仿真或延时仿真。
由于不同器件的内部延时不一样,不同的布局、布线方案也给延迟造成了很大的影响,因此在设计处理以后,分析时序关系,估计设计的性能以及检查和消除竞争冒险等是必要的。
EDA层次设计之全加器设计

目的要求:掌握原理图输入设计方法掌握基本组合逻辑电路层次设计方法重难点:层次设计方法一.层次化设计流程1.用文本方法设计半加器(35’)1)建立存储文件夹2)新建一个工程adder,保存在文件夹下;3)新建一个文本文件,保存为half_adder.v存在同一工程目录下;代码如下:module half_adder(a,b,so,co);input a,b;output so,co;assign {co,so} = a+b ;endmodule4)将该文件设置为项目顶层文件(否则会报错);编译文件,检查语法错误;5)仿真,验证设计正确。
新建波形文件保存为half_adder.vwf,管脚导入,设置波形;将编译后的文件,操作processing->generate functional simulation netlist在settings中的simulation verfication页面中将波形文件导入;执行simulation6)flie->project->set project to cunrent file,执行file->create default symbol ,生成一个元件符号2. 按利用设计好的的半加器按原理图设计全加器,文件保存为adder.bdf3.用上面设计的一位全加器设计4位全加器1)新一个原理图文件,选择上述4个所设计的一位全加器,根据4位全加器的原理图设计4位并行全加器;(注意粗细信号线的设置:用鼠标左键单击信号线,使之变为红色,然后在红线上单击鼠标右键,选择line style,然后选择相应的粗线或者细线)2)将设计好的文件保存为adder_4.gdf3)编译项目并仿真仿真波形如下:。
eda全加器,频率计课设

一、实验目的和要求复习加法器的原理,掌握加法器的设计实现方法,设计实现数字系统设计中常用的4位全加器,在此基础上进一步熟悉MAX+PLUSⅡ或Quartus II软件的使用方法,熟练掌握EDA的图形编程方法、开发流程、以及组合逻辑电路的设计、分析、综合、仿真方法。
二、实验主要仪器和设备1. 计算机及操作系统2. MAX+Plus II或Quartus II软件3. 编程电缆(可选)三、实验原理1. 4位全加器的管脚如图:2. 说明:其中CIN表示输入进位位,COUT表示输出进位位,输入A和B分别表示加数和被加数。
输出SUM=A+B+CIN,当SUM大于255时,COUT 置‘1’。
四、实验方案设计、实验方法1.实验方案4位全加器可以看作四个1位全加器级联而成,首先采用基本逻辑门设计1位全加器,而后通过多个1位全加器级联实现4位全加器。
1位全加器示意图如下:其中,其中CI 表示输入进位位,CO 表示输出进位位,输入A 和B 分别表示加数和被加数。
S 为输出和,其功能可用布尔代数式表示为:ii i i o ii i ABCABC ABC ABC C ABCC B A C B A C B A S +++=+++=2. 实验方法首先根据一位全加器的布尔代数式应用基本逻辑门设计一位全加器,而后仿真验证一位全加器设计,准确无误后生成元件,供4位全加器设计用。
将4个1位全加器级联构成四位全加器。
五、实验步骤1. 一位全加器设计输入1) 创建文件 采用File\new 菜单,创建图形文件。
2) 添加元件 采用菜单symbol\enter symbol ,在弹出的对话框中选中相应的库与元件,添加元件,构成一位全加器并保存。
2. 一位全加器元件的创建1) 对上述文件编译综合仿真…. 2) 生成元件….采用菜单FILE\CREATE SYMBOL 生成一位全加器元件3. 4位全加器设计输入1) 创建文件….2) 添加元件 采用菜单symbol\enter symbol ,选中生成的元件FADD1 3) 级联 前级1位全加器CO 与后级CI 相连…. 4) 添加I/O …. 4. 设计编译….5. 器件选择及管脚分配….6. 设计仿真….7. 时序分析….8. 编程下载(可选)….六、实验结果与分析1. 1位全加器设计1) 1位全加器原理图2) 1位全加器仿真波形2. 四位全加器设计1. 四位全加器原理图1. 器件及管脚逻分配图管脚分配情况如图,所选器件为EPM7032AELCC44-42. 仿真波形四位全加器的仿真波形如下图,从波形可以得出,输入输出满足表达式S=A+B+CI,S>15时进位位置‘1’,设计电路功能达1. 时序分析图上述时间分析可以得到,输出信号存在4.5-7.5ns不等的时间延迟,它主要与器件速度、表达逻辑的合理性有关,选用速度更高器件、优化设计可以使该值降低。
EDA全加器

实验一全加器设计一、实验名称:全加器设计二、实验目的:用原理图输入法设计全加器电路,简历全加器的实验模式。
通过电路仿真和硬件验证,进一步了解全加器的功能。
三、实验仪器:EDA试验箱个人计算机四、实验原理:将来自低位进位的加法运算陈伟“全加”,能实现全加运算的电路称为全加器。
1位全加器的真值表如表2.1所示,表中的A,B是两个一位二进制加数的输入端,CI是低位进位输入端。
根据真值表写出电路输出与输入之间的逻辑关系表达式为A B CI SO CO0 0 0 0 0 1 0 1 00 1 11 0 0 1 0 1 1 1 0 1 1 1 0 01 0 1 00 11 0 0 10 11 1五、实验步骤创建工程准备工作项目的建立选择目标器件EP1C6Q240C8建立的工程选择编辑文件选择元件编译成功仿真选择编辑矢量波形文件建立波形文件节点发现者对话框设置仿真时间对话框全加器电路的仿真波形建立试验模式在EDA6000/EDA2000软件主界面上打开“结构框图”的“新建模式”窗口,将EDA2000实验开发系统的按键K0、K1、和K2设置为“高/低”输入键,分别与IO40、IO41和IO42管脚连接,将按键名分别更改为“A”“B”“CI”,作为全加器A、B和CI的输入按键。
将发光管L0、L1和L2分别设置与IO40、IO41和IO42管脚连接,发红光,信号名更改为“A”“B”和“CI”,作为按键K0、K1、和K2的显示器。
将发光管L8和L9分别设置与IO43、IO44管脚连接,发绿光,信号名更改为“SO和“CO”,作为全加器输出SO和CO的显示器。
将设置好的全加器实验模拟式以m3l.mod为文件名,保存在模式文件夹中。
引脚锁定下载设计文件通过并行电缆将EDA6000/EDA2000实验开发系统的FPGA/EPLD编程下载打印接口“PRT”与计算机的并行打印机接口连接好,用串行电缆将实验开发系统的配置232通信接口“SYSTEM232”与计算机的串行232接口连好,打开实验开发系统的电源。
EDA数字设计之全加器PPT学习教案

解决方案2——现代的数字系统设计方法
基于芯片的设计方法——采用PLD(可编程逻辑器件) ,利用EDA开发工具,通过芯片设计来实现系统功能。
编程
EDA软件 + 空白PLD
数字系统
首先在计算机上安装EDA软件,它 们能帮助设计者自动完成几乎所 有的设计过程;再选择合适的PLD 芯片,可以在一片芯片 第4页/共67页 中实现整 个数字系统。
布线、仿真、时序分析、器件编程的全过程 同时还支持SOPC(可编程片上系统)设计开发
第15页/共67页
16
QuartusⅡ简介
QuartusⅡ提供了方便的设计输入方式、快速的编 译和直接易懂的器件编程。能够支持逻辑门数在百万 门以上的逻辑器件的开发,并且为第三方工具提供了 无缝接口。QuartusⅡ支持的器件有:Stratix Ⅱ、 Stratix GX、Stratix、Mercury、MAX3000A、 MAX 7000B、MAX 7000S、MAX 7000AE、 MAX Ⅱ、FLEX6000、FLEX10K、FLEX10KA、 FLEX10KE、Cyclone、Cyclone Ⅱ、APEX Ⅱ、 APEX20KC、APEX20KE和ACEX1K系列。 QuartusⅡ软件包的编程器是系统的核心,提供功能 强大的设计处理,设计者可以添加特定的约束条件来 提高芯片的利用率。
EDA技术的范畴
PCB 设计
本课程内容!
电路设计 PLD 设计
IC 版图设计
模拟电路 数字电路 混合电路 设计输入 逻辑综合 仿真 编程下载
第9页/共67页
真有趣,可以按自己的想法设计一个芯片!
我也要参加全国大学 生电子设计竞赛!
呀,毕业设计正好能用得上哎!
EDA综合实验——八位全加器

学生实验报告系别电子信息学院课程名称《EDA综合实验》班级实验名称8位全加器的设计姓名实验时间2014年月日学号指导教师王红航成绩批改时间2014年月日报告内容一、实验目的和任务利用Quartus II 原理图输入方法设计简单组合电路, 通过一个8位全加器的设计掌握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。
二、实验原理介绍三、一个8位全加器可以由2个4位全加器构成, 加法器间的进位可以用串行方式实现, 即将低位加法器的进位输出cout 与相邻的高位加法器的最低进位输入信号cin相接。
四、设计代码(或原理图)、仿真波形及分析在Quartus II 集成环境下, 选择“Bock Diagram/Schematic File”, 进入Quartus II图形编辑方式。
双击编辑窗口, 在元件选择窗口的符号库“Library”栏中, 选择”Primitives”文件夹中的”Logic”后, 调出元件。
根据8位加法器设计的原理图, 将2个4位加法器74283及输入、输出元件符号调入, 完成电路内部的连接及输入、输出元件的连接, 并将相应的输入、输出元件符号名分别更改为A[7..0]、B[7..0]、SUM[7...0]和OUT2。
再将当前设计设定为工程, 目标芯片类型为ACEX1K;型号为EP1K30TC144-3。
编译设计文件, 选择“Start Compilation”对文件进行编译。
然后进行逻辑仿真设计, 先建立波形文件, 然后输入信号节点, 设置波形参量, 编辑输入信号, 保存文件。
时序仿真图功能仿真图由图片可以看出, 当8位全加器的输入端口A输入为60时, B端口输入为160时, 输出SUM 为220, 进位OUT2为0;当输入端口A输入为60时, B输入为200时, SUM为4, 进位OUT2为1.当8位全加器的输入端口A输入为80时, B端口输入为200时, 输出SUM为24, 进位OUT2为1;当输入端口A输入为80时, B输入为160时, SUM为240, 进位OUT2为0.证明设计是正确的。
基于EDA的八位全加器原理图设计

广—— —J — —一 - 广 —— — -
l l _ J
l
— — — — — — .
l
L
设计保存并打包 , 模块名为 b 。 j q
…
…
~
一
…
。
…
…
哥 … … ……一… J
l
r 一
_
一
I I
I I
j
3 一位全加器的设计
设计完成后仍然进行波形仿 真 , 后将整个设计 电路 然 下载到实验箱上测试 ,如能实现 预期 功能 ,再将全加器 打
参考文献
[ 潘松, 1 1 ] 黄继业.D E A技术实用教程【 】 M. 北京: 出版社, 0 . 科学 2 2 0 [ 林敏, 2 】 方颖立.H L V D 数字系统设计与高层综合[ 】 M. 北京: 电子工
业出版社 , 0 . 2 2 0
编辑
( 接第 4 上 9页 )
黄严磊
Au h rS a d e s S c u n Vo ain la d T c n c lC l g , t o ’ d r s i h a c t a n e h ia ol e o e 6 9 0 , u n n , ih a , h n 2 0 0 S ii g Sc u n C i a
2 半加 器 的设计
“…… ”‘
一 … ,
5 仿真 结果
原理图编译完成无误后 , 将设计 电路进行波形仿 真 , 结 果如下
图 1一位半加器原理 图 原理 图( 图 1 编译 完成后 , 如 ) 一定要 进行仿 真实验 , 确
保半加器设计 的正确性 , 这里 由于篇幅原 因 , 不再 累述。将
EDA—VHDL的四位全加器

EDA —VHDL 的四位全加器设计1 设计分析全加器是能进行加数、被加数和低位来的进位信号相加,并根据求和结果给出该位的进位信号的加法电路。
其真值表如表1所示:根据真值表可得出下列表达式:根据以上表达式,可以用数据流方式设计出1位全加器。
要设计的是4位全加器,这里采用串行进位来设计。
先设计4个1位的全加器,然后将低位的进位输出与高位的进位输入相连,将要进行加法运算的两个4位数的每一位分别作为每一个1位全加器的输入,进行加法运算,所有的1位全加器的输出组成一个4位数,即输入的两个4位数之和,最高位的全加器产生的进位输出即两个4位数求和的进位输出。
4位全加器的原理图如图1所示:()()cinb a ab cin b a b a ab abcincin b a bcin a cin ab cout ⊕+=++=+++=()()()()cinb a cin b a cin b a cin ab b a cin b a b a abcin cin b a cin b a cin b a s ⊕⊕=⊕+⊕=+++=+++=图1 4位全加器原理图根据图1所示,可以采用结构化描述方式设计4位全加器。
2 程序设计设计的程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY adder1 IS --1位全加器设计PORT(a,b,cin:IN STD_LOGIC;s,cout:OUT STD_LOGIC);END adder1;ARCHITECTURE dataflow OF adder1 IS --用数据流方式设计1位全加器SIGNAL tmp:STD_LOGIC; --用tmp表示a⊕b BEGINtmp<=a XOR b AFTER 10 ns;s<=tmp XOR cin AFTER 10 ns;cout<=(a AND b)OR(tmp AND cin) AFTER 20 ns;END dataflow;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY adder4 IS --4位全加器设计PORT(a,b:IN STD_LOGIC_VECTOR(3 DOWNTO 0);cin:IN STD_LOGIC;s:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);cout:OUT STD_LOGIC);END adder4;ARCHITECTURE structural OF adder4 IS --用结构化描述风格设计4位全加器COMPONENT adder1PORT(a,b,cin:IN STD_LOGIC;s,cout:OUT STD_LOGIC);END COMPONENT;SIGNAL x,y,z:STD_LOGIC;FOR u1,u2,u3,u4:adder1 USE ENTITY WORK.adder1(dataflow);BEGINu1:adder1 PORT MAP(a(0),b(0),cin,s(0),x);u2:adder1 PORT MAP(a(1),b(1),x,s(1),y);u3:adder1 PORT MAP(a(2),b(2),y,s(2),z);u4:adder1 PORT MAP(a(3),b(3),z,s(3),cout);END structural;3 仿真结果对上面的程序进行仿真,先对1位全加器仿真,结果如图2所示:图2 1位全加器仿真图由图2可以看出,1位全加器的仿真结果与表1相符,说明1位全加器设计成功。
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的输入状态,观察实验结果。
EDA加法器

学生实验报告
系别
电子工程系
课程名称
《EDA技术及其应用》实验
班级
实验名称
8位全加器设计
姓名
实验时间
学号
指导教师
报告内容
一、实验目的和任务
学习使用QuartusⅡ软件,熟悉EDA设计流程。
学习用图形输入法设计八位全加器,并对其进行分析和测试。
二、实验原理介绍
学习用四位全加器设计八位全加器,第1片74283(四位全加器)的进位输出信号应该和第2片74283的进位输入信号相连。
三、设计代码、仿真波形及分析
任务1:学习使用QuartusⅡ软件,熟悉EDA设计流程(主要为软件设计部分)。
步骤:
实验室演示
四、实验结验的全部内容。很好( ) 一般( ) 否( )
2.实验数据全面,调试步骤准确,结果正确。很好( ) 一般( ) 否( )
3.实验报告格式规范,图表清晰。很好( ) 一般( ) 否( )
成绩
教师签名
王红航
批改时间
年月日
编辑输入图形、编译设计文件、仿真设计文件
仿真波形如下图所示:
任务2:硬件验证8位全加器的功能。
步骤:
引脚锁定、编译、下载、硬件测试
可选实验电路模式1;
键2、键1和键3、4分别负责输入两个加数A和B;且能在数码管1、2和3、4上显示;两个加数的和在数码管5、6显示;发光管D1显示进位输出。
编译下载后进行硬件测试;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
呀,毕业设计正好能用得上哎!
原来在一个芯片里就可以设计 一个完整的计算机系统呀!
找工作时也算得上一技之长哦!
EDA及其发展
电子设计自动化(Electronic Design Automation,EDA)技 术是以计算机科学和微电子技术发展为先导,汇集了计算机图形 学、拓扑逻辑学、微电子工艺与结构学和计算数学等多种计算机 应用学科最新成果的先进技术,它是在先进的计算机工作平台上 开发出的一整套电子系统设计的软件工具。从20世纪60年代中期 开始,人们不断开发出各种计算机辅助设计工具来帮助设计人员 进行集成电路和电子系统的设计,集成电路技术的不断发展对 EDA技术提出新的要求,并促进了EDA技术的发展。
上过程,重新制板。
传统的数字系统设计方法
• 采用自下而上(Bottom Up)的设计方法 • 采用通用型逻辑器件 • 搭积木式的方式 • 在系统硬件设计的后期进行仿真和调试 • 主要设计文件是电路原理图
传统的数字系统设计方法的缺点
➢ 效率低下——所有这一切,几乎都是手 工完成!
➢ 设计周期很长; ➢ 容易出错; ➢ 芯片种类多,数量大,受市场的限制; ➢ 设计灵活性差; ➢ 产品体积大。
QuartusⅡ设计流程
QuartusⅡ设计流程
编译报告:
QuartusⅡ设计流程
4.设计仿真
QuartusII支持多种仿真输入方法,它支持波形方式输 入,如:向量波形文件(.vwf)、向量文件(.vec)、 列表文件(.tbl),也支持Testbench如:Tcl/TK脚 本文件,同时也支持第三方的仿真工具的 Verilog/VHDL Testbench。
Block diagram/schematic file, 选好后单击【OK】按钮, 打开原理图编辑器窗口。
QuartusⅡ设计流程— 设计输入 将所设计的电路—的逻辑功能按照开发系统要求的形式表达
出来的过程称为设计输入。
设计输入有如下三种方式:
(1)原理图输入方式 适用于对系统及各部分电路很熟悉的场合。
设计流程
设计准备
设计输入 设计处理 器件编程
功能仿真 时序仿真 器件测试
QuartusⅡ设计流程介绍
Quartus II软件的设计过程主要包括: ① 建立项目 ② 输入设计电路(可采用不同方式) ③ 设计编译 ④ 设计仿真 ⑤ 设计下载
QuartusⅡ设计流程
启动QuartusⅡ 5.0
双击桌面上的QuartusⅡ5.0图标或单击开始按扭,在程序 菜单中选择QuartusⅡ5.0 ,可以启动QuartusⅡ5.0。其 初始界面如图所示。
解决方案1——传统的数字系统设计方法
搭积木的方式!
基 于 电 路板 的 设 计方 法 —— 采 用 固 定功 能 的 器件 (通用型器件),通过设计电路板来实现系统功能
1. 根据设计要求划分功能模块; 2. 确定输入和输出的关系,画出真值表,写出逻辑表达式; 4. 利用公式或卡诺图进行人工化简; 5. 根据化简后的逻辑表达式画出电路原理图; 6. 在面包板上进行实验,验证电路的正确性; 7. 若无错误,再在透明薄膜上用贴图符号贴PCB图; 8. 检查后送制板厂制板; 9. 对PCB板进行安装、调试,若有大的错误,修改设计,重复以
是立足于计算机工作平台开发出来的一整套先进 的设计电子系统的软件工具。
计算机并口
编程目 标文件
PLD
器件编程接口
ห้องสมุดไป่ตู้
PCB Board
EDA技术的范畴
PCB 设计
电路设计
本课程内容!
PLD 设计
IC 版图设计
模拟电路 数字电路 混合电路 设计输入 逻辑综合 仿真 编程下载
真有趣,可以按自己的想法设计一个芯片!
可编程器件开发工具:
常见的有MAXPLUS II、QUARTUS II、MATLAB/DSP BUILDER等。
EDA设计方 法
EDA即电子设计自动化技术,是利用计算机工作 平台,从事电子系统和电路设计的一项技术。
EDA技术为电子系统设计带来了很大的变化:
(1)设计效率提高,设计周期缩短; (2)设计质量提高; (3)设计成本降低; (4)能更充分地发挥设计人员的创造性; (5)设计成果的重用性大大提高,省去了不必要的重复劳动。
②编译设置好后,在主菜单中选择Processing/Start Compilation 对所设置的项目进行编译。
③阅读编译报告:编译后自动生成的编译报告如图所示,它包 含了怎样将一个设计放到一个器件中的所有信息。有器件使用 统计,编译设置情况,底层显示,器件资源利用率,状态机的 实现,方程式,延时分析结果,CPU使用资源。
④下面弹出的是选择可编程逻辑器件对话框,如下图所示。 选Yes,手动选择需要的器件,选No,则由编译器自动 选择。
QuartusⅡ设计流程
⑤在下一步弹出的对话框中通过选择器件的封装形式,引脚 数目,以及速度级别来约束可选器件的范围。如图所示。
EP1K30TC144-3
器件设置对话框
QuartusⅡ设计流程
(2)硬件描述语言输入方式 硬件描述语言是用文本方式描述设计,硬件描述语言有
ABEL、AHDL、VHDL、Verilog等,其中VHDL和Verilog已 成为IEEE标准。 (3)波形输入方式
QuartusⅡ设计流程
在编辑窗中的任何一个位置上单击鼠标右键,在弹出的快捷菜 单中选择其中的输入元件项Insert--Symbol,于是将弹出如下 图所示的输入元件的对话框
③层建如的设上工计图程实所工名示体程称的添名顶保好称持后,新程一,要建名致按求的称。N顶工e层xt设按新工的计钮建作路实,工 目 径体将程 录名会称弹和出新加 入文件对层话设框计实,如下图所示。
体名称
加入文件对话框:
QuartusⅡ设计流程
可以在File空白处选择添入其他已存在的设计文件加入到 这个工程中,也可以使用User Library Pathnames按 钮把用户自定义的库函数加入到工程中使用。完成后按 Next按钮进入下一步。
(3)功能仿真和时序仿真; (4)编程下载到实际芯片中,在实验台上进行验证; (5)在每一阶段若有问题,可在计算机上直接修改设计,重复以
上过程。
现代的数字系统设计方法(续2)
3. 设计包含PLD芯片的电路板
(1)在计算机上利用EDA软件画电路原理图; (2) 进行电气规则检查无误后,自动生成网表文件; (3) 利用EDA软件画PCB图,自动布线; (4) 自动进行设计规则检查,无误后输出文件,制板。
QuartusⅡ软件入门
(全加器)
电子技术实验(II)
问题的提出
设计一个数字钟,使之完成以下功能:
实现时、分、秒的计时;时可采取12小时计时 也可采取24小时计时;具有异步清零和启动/ 停止功能;并可调整时间。
用数码管显示时分秒;具有整点报时功能; 可继续设计日、星期、月、年等其他万年历功
能。 可设计秒表功能,闹钟功能。
传统设计方法 vs EDA设计方法
传统设计方法
自底向上 手动设计 软硬件分离 原理图设计方式 系统功能固定 不易仿真 难测试修改 模块难移植共享 设计周期长
EDA设计方法
自顶向上 自动设计 打破软硬件屏障 原理图、HDL等设计方式 系统功能易改 易仿真 易测试修改 模块可移植共享 设计周期短
本课程要学习的PLD设计EDA工具软件
• 通常采用自上而下(Top Down)的设计方法 • 采用可编程逻辑器件 • 在系统硬件设计的早期进行仿真 • 主要设计文件是用硬件描述语言编写的源程序 • 降低了硬件电路设计难度
什么是EDA技术?
EDA(Electronic Design Automation,电子 设计自动化)
是在计算机的辅助下完成电子产品设计的一种先 进的硬件设计技术!
QuartusⅡ设计流程
1.建立项目
利用Quartus II提供的新建工程指南可以帮助我们很容易的建立一 个工程:
①在主菜单上选择File\New Project Wizard 将弹出如下图所示对 话框。
QuartusⅡ设计流程
②在上图中的第一个空白处需添入新建工程工作 目录的路径,为便于管理,Quartus II软件要 求每一个工程项目及其相关文件都统一存储在 单独的文件夹中。第二个空白处需添入新建的 工程名称。第三个空白处需添入的是工程的顶
● 第一阶段:计算机辅助设计(CAD阶段) ● 第二阶段:电子设计自动化(EDA)阶段 ● 第三阶段:电子设计自动化(EDA)的发展阶段
EDA工具
电路仿真工具:
主要用于模拟电路和数字电路的仿真,常见的有SPICE/ PSPICE 、EWB、MULTISIM等;
电路板级设计工具:
常见的有PROTEL、POWER PCB等;
解决方案2——现代的数字系统设计方法
基于芯片的设计方法——采用PLD(可编程逻辑器件), 利用EDA开发工具,通过芯片设计来实现系统功能。
编程
EDA软件 + 空白PLD
数字系统
首先在计算机上安装EDA软件,它们能帮助设计者 自动完成几乎所有的设计过程;再选择合适的PLD 芯片,可以在一片芯片中实现整个数字系统。
Quartus Ⅱ 美国Altera公司自行设计的第四代PLD开发软件 可以完成PLD的设计输入、逻辑综合、布局与布
线、仿真、时序分析、器件编程的全过程 同时还支持SOPC(可编程片上系统)设计开发
17
QuartusⅡ简介
QuartusⅡ提供了方便的设计输入方式、快速的编 译和直接易懂的器件编程。能够支持逻辑门数在百万 门以上的逻辑器件的开发,并且为第三方工具提供了 无缝接口。QuartusⅡ支持的器件有:Stratix Ⅱ、 Stratix GX、Stratix、Mercury、MAX3000A、 MAX 7000B、MAX 7000S、MAX 7000AE、 MAX Ⅱ、FLEX6000、FLEX10K、FLEX10KA、 FLEX10KE、Cyclone、Cyclone Ⅱ、APEX Ⅱ、 APEX20KC、APEX20KE和ACEX1K系列。 QuartusⅡ软件包的编程器是系统的核心,提供功能 强大的设计处理,设计者可以添加特定的约束条件来 提高芯片的利用率。