加法器、减法器的设计 VHDL

加法器、减法器的设计 VHDL
加法器、减法器的设计 VHDL

实验报告

课程名称电子设计自动化实验(基于FPGA)实验项目加法器、减法器的设计

实验仪器计算机+ Quartus Ⅱ9.1

系别信息与通信工程学院

专业通信工程

班级/学号

学生姓名

实验日期2012、5

成绩_______________________ 指导教师_______________________

加法器、减法器的设计

完成一个8位二进制带符号数的加减电路设计。设计要求如下:通过拨码开关输入两组8位二进制数,最高位为符号位,0表示正数,1表示负数,其余位表示二进制数值。用一按键对加、减方式进行控制,0表示加,1表示减。输出用四位LED数码管显示BCD码。其中LED显示器最高位为符号位。

VHDL代码

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

USE IEEE.std_logic_arith.all;

USE IEEE.std_logic_unsigned.all;

ENTITY add IS

PORT(a:in std_logic_vector(7 downto 0);

b:in std_logic_vector(7 downto 0);

ctrl:in std_logic;

bcd:out std_logic_vector(15 downto 0));

END ENTITY;

ARCHITECTURE func OF add IS

SIGNAL x:std_logic_vector(9 downto 0);

SIGNAL y:std_logic_vector(9 downto 0);

SIGNAL z:std_logic_vector(9 downto 0);

SIGNAL c:std_logic_vector(8 downto 0);

SIGNAL dec:integer;

BEGIN

yunsuan:BLOCK --运算模块

BEGIN

PROCESS(a)

BEGIN

IF (a(7) = '0') THEN --判断正负

x <= '0'&'0'&a;

ELSE

x(9 downto 8) <= '1'&'1';

x(7 downto 0) <= NOT('0'&a(6 downto 0)) + 1;

END IF;

END PROCESS;

PROCESS(a,ctrl)

BEGIN

IF(ctrl = '0') THEN --控制键为0,则做加法IF(b(7) = '0') THEN

y <= '0'&'0'&b;

ELSE

y <= '1'&'1'&(NOT('0'&b(6 downto 0))+1);

END IF;

ELSE

IF(b(7) = '1') THEN

y <= '0'&'0'&'0'&b(6 downto 0);

ELSE

y <= '1'&'1'&(NOT('0'&b(6 downto 0))+1);

END IF;

END IF;

END PROCESS;

PROCESS(a,b)

BEGIN

IF(a(6 downto 0) = 0) THEN

z <= y;

ELSE IF(b(6 downto 0) = 0) THEN

z <= x;

ELSE

z <= x + y;

END IF;

END IF;

END PROCESS;

PROCESS(z)

BEGIN

IF(z(9) = '1') THEN --判断结果的正负c(7 downto 0) <= NOT z(7 downto 0) + 1;

c(8) <= '1';

ELSE

c(8 downto 0) <= '0'&z(7 downto 0);

END IF;

END PROCESS;

END BLOCK;

bcdout:BLOCK

BEGIN

dec <= CONV_INTEGER(c); --二进制转十进制

PROCESS(c)

BEGIN

CASE c(8) IS --判断最高位正负

WHEN '0' => bcd(15 downto 12) <= "0000";

WHEN '1' => bcd(15 downto 12) <= "0001";

WHEN OTHERS => bcd(15 downto 12) <= NULL;

END CASE;

CASE dec/100 IS --判断百位数字

WHEN 0 => bcd(11 downto 8) <= "0000";

WHEN 1 => bcd(11 downto 8) <= "0001";

WHEN OTHERS => bcd(11 downto 8) <= NULL;

END CASE;

CASE (dec REM 100)/10 IS

WHEN 0 => bcd(7 downto 4) <= "0000";

WHEN 1 => bcd(7 downto 4) <= "0001";

WHEN 2 => bcd(7 downto 4) <= "0010";

WHEN 3 => bcd(7 downto 4) <= "0011";

WHEN 4 => bcd(7 downto 4) <= "0100";

WHEN 5 => bcd(7 downto 4) <= "0101";

WHEN 6 => bcd(7 downto 4) <= "0110";

WHEN 7 => bcd(7 downto 4) <= "0111";

WHEN 8 => bcd(7 downto 4) <= "1000";

WHEN 9 => bcd(7 downto 4) <= "1001";

WHEN OTHERS => bcd(7 downto 4) <= NULL;

END CASE;

CASE dec REM 10 IS

WHEN 0 => bcd(3 downto 0) <= "0000";

WHEN 1 => bcd(3 downto 0) <= "0001";

WHEN 2 => bcd(3 downto 0) <= "0010";

WHEN 3 => bcd(3 downto 0) <= "0011";

WHEN 4 => bcd(3 downto 0) <= "0100";

WHEN 5 => bcd(3 downto 0) <= "0101";

WHEN 6 => bcd(3 downto 0) <= "0110";

WHEN 7 => bcd(3 downto 0) <= "0111";

WHEN 8 => bcd(3 downto 0) <= "1000";

WHEN 9 => bcd(3 downto 0) <= "1001";

WHEN OTHERS => bcd(3 downto 0) <= NULL;

END CASE;

END PROCESS;

END BLOCK;

END ARCHITECTURE;

未下载验证、调试,如发现错误,见谅!

——Higashi Q83831295

8位行波进位加减法器课程设计报告

南通大学计算机科学与技术学院计算机组成原理课程设计 报告书 课题名8位行波进位加减法器 班级_____ _____ 姓名_____ _________ 学号_____ ___ 指导教师 日期

目录 1.设计目的 (1) 2.设计内容 (1) 3.设计要求 (1) 4.设计原理与电路图 (1) 5.系统调试情况 (3) 6.设计总结与体会 (4) 7.参考文献 (5)

1 设计目的 熟练掌握补码加减法运算规则 2 设计内容 设计一个能够完成8位补码加减法运算的ALU 3 设计要求 采用行波(串行)进位的方式,并具备溢出判断功能 4设计原理与电路图(包括总框图、微程序控制器的逻辑图、电路图和封装图) 1位全加器逻辑电路图

n位行波进位的补码加法/加法器原理图 n位行波进位的补码加法/加法器 5系统调试情况 测试1:当m=0时,执行00000001+00000001,结果为00000010,如下图所示:

测试2:当m=1时,执行00000001-00000001,结果为00000000,如下图所示: 如下图所示:

图所示: 6 设计总结与体会 本次课程设计,让我学到了很多。首先,我学会了如何去设计一个简单的加法器。其次, 在这次的设计中,我也遇到了很多问题,本次设计是设计一个8位的补码加法器,需要考 虑加数的正负和溢出情况,所以我找出了数电课本复习了有关知识。在画图方面的也让我 知道:做任何小事情都不要粗心,有时候你不注意一些小细节,所得的电路图就是错误的。 7 参考文献 [1]白中英计算机组成原理(第四版立体化教材)[M].北京:科学出版社,2008. [2]康光华电子技术基础(第五版.数字部分)[M] 北京:高等教育出版社,2006.

实验二加减法器

计算机组成原理实验报告 一、实验目的及要求 本次实验要求掌握加法器、减法器的设计与实现。 可以利用原理图设计并实现 1 位、8 位和32 位加法器,以及32 位加减器。设计1 位加法器,将加法器中加入减法功能,可以利用SUB(减)的控制信号; 二、实验设备(环境)及要求 1. Windows 2000 或Windows XP 2. QuartusII9.1 sp2、DE2-115 计算机组成原理教学实验系统一台。 三、实验内容与步骤 (1)两个二进制数字A,B 和一个进位输入C0相加,产生一个和输出S,以及一个进位输出C1,这种运算电路成为全加器(1 位加法器)。1 位全加器有两个输出S 和C1,其中S 为加法器的和,C1 为进位位输出。下表中列出一位全加器进行加法运算的输入输出真值表: 表2-1 加法器的真值表 根据以上真值表,可以得到 1 位加法器的输入与输出逻辑关系。 根据上面的逻辑关系式可以建立如下图的 1 位加法器的原理图

接着进行功能仿真: 开始功能仿真,在【Processing】菜单下,选择【Start Simulation】启动仿真工具。实验结果: 在5-10ns 时,A=1,B=0,C0=0,则C1=0,S=1; 在15-20ns 时,A=1,B=1,C0=0,则C1=1,S=0; 在30-35ns 时,A=0,B=1,C0=1,则C1=1,S=0; 在35-40ns 时,A=1,B=1,C0=1,则C1=1,S=1; (2)8 位加法器的原理图设计 实验原理8 位加法器用于对两个8 位二进制数进行加法运算,并产生进位。8 位加法器真值表如下所示:

8位全加器设计

基于原理图的8位全加器设计 实验目的:熟悉利用Quartus II的原理图输入方法设计简单的组合电路,掌握层次化设 计的方法,并通过一个8位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。 实验原理:一个8位全加器可以由8个1位全加器串行构成,即将低位加法器的进位输 出cout与相临的高位加法器的最低位输入信号cin相接。 试验任务:1.完成半加器和全加器的设计。 2.建立一个更高层次的原理图设计,利用以上获得的1位全加器构成8位全加器,完成编译、综合、适配、仿真和硬件测试。 实验步骤: 一、1位全加器设计 1.建立工程文件夹adder,路径d:\adder。 2.输入设计项目和存盘 原理图编辑输入流程如下: (1)打开Quartus II,选择file—>new命令,在弹出的窗口中选择block diagram/schematic file 选项,单击ok按钮后将打开原理图编辑窗口。 (2)在编辑窗口中的任何一个位置上右击,将弹出快捷菜单,选择inset—>symbol命令,将弹出元件输入对话框。 (3)单击“…”按钮,找到基本元件库路径d:/altera/90/quartus/libraries/primitives/logic项(假设软件安装在D盘),选中需要的元件,单击“打开”按钮,此元件即显示在窗口中,然后单击symbol窗口中的ok按钮,即可将元件调入原理图编辑窗口中。也可以在name栏输入需要的元件名。调入好元件和引脚后,连接好电路,再输入各引脚名。 (4)选择file—>save as命令,选择刚才为自己的工程建立的目录d:\adder,将已设计好的原理图取名为h_adder.bdf,并存盘此文件夹内。 3.将设计好的项目设置成可调用的元件 为了构成全加器的顶层设计,必须将以上设计的半加器h_adder.bdf设置成可调用的元件。在打开半加器原理图文件的情况下,选择file—>create/update—>create symbol file for current file命令,即可将当前文件h_adder.bdf变成一个元件符号存盘,以待高层次设计中调用。4.设计全加器顶层文件 打开一个原理图编辑窗口,方法同前。在新打开的原理图窗口中双击,在弹出的窗口中选择project选项,选择h_adder.bdf,并调入其他元件,连接好电路。以f_adder.bdf名存在同一路径d:\adder中。 二、8位全加器设计 1.将刚设计好的1位全加器设置成可调用的元件,方法同上。 2.调入元件,连接电路图,以8f_adder.bdf保存于同一路径d:\adder中的文件夹中。 3.将顶层文件8f_adder.bdf设置为工程。 4.编译与仿真 原理图与仿真波形分析:

实验六:加法器的使用

实验六:加法器的使用 1.实验目的 1) 熟悉加法器的工作原理与逻辑功能; 2) 掌握加法器的使用。 2.理论准备 1)二进制并行加法器是一种能并行产生两个二进制数算术和的逻辑部件,按其进位方式的不同可分为串行进位和超前进位二进制并行加法器; 2)串行进位二进制并行加法器是由全加器级联而成的。其特点是:被加数和加数的各位能同时并行到达各位的输入端,而各位全加器的进位输入则是按照由低位向高位逐级串行传递的,各进位形成一个进位链。由于每一位相加的和都与本位进位输入有关,所以,最高位必须等到各低位全部相加完成并送来进位信号之后才能产生运算结果。显然,这种加法器运算速度较慢,而且位数越多,速度就越低; 3)为了提高加法器的运算速度,必须设法减小或去除由于进位信号逐级传送所花的时间,使各位的进位直接由加数和被加数来决定,而不需依赖低位进位。根据这一思想设计的加法器称为超前进位(又称先行进位)二进制并行加法器。超前进位4位二进制并行加法器有74283。 3.实验内容 用4位并行加法器(74283)设计一个可以做加法和减法的电路。当控制信号M=0时,将两个无符号的4位二进制数相加,当M=1时它将两个无符号数相减。 4.设计过程 1)输入:a[4..1]为被加数(或被减数,b[4..1]为加数(或减数),a[4..1]和b[4..1]为4位二进制数,控制信号M,当M=0时,电路实现加法运算,即执行a[4..1]+b[4..1],当M=1时,电路实现减法运算,即执行a[4..1]-b[4..1]。减法采用补码运算。 2)用一个4位二进制并行加法器(74283)和4个异或门实现上述逻辑功能。将4位二进制a[4..1]直接加到并行加法器的A4、A3、A2和A1输入端,4位二进制b[4..1]通过异或门加到并行加法器的B4、B3、B2和B1输入端,并将功能变量M作为异或门的另一个输入且同时加到并行加法器的CIN进位输入端。 3)当M=0时,CIN=0,b[4..1]⊕M= b[4..1]⊕0= b[4..1],加法器实现a[4..1]+b[4..1];当M=1时,CIN=1,b[4..1]⊕M= b[4..1]⊕1 = b[4..1]’,加法器实现a[4..1]+b[4..1]’+1,即a[4..1]-b[4..1]。 4)根据真值表和逻辑函数画逻辑图。根据上式可以画出如图一所示的逻辑图。

加法器与减法器

电子设计自动化 大作业 题目加法器与减法器 学院泉城学院 班级电气09Q2班 姓名李文建 学号 20093005034 二O一一年十一月六日

加法器和减法器 一、设计要求: (1)构造一个四位二进制加法器和一个四位二进制减法器,完成各自的功能仿真。(2)利用四个按键输入四位加数(或减数)和被加数(或被减数)。 (3)用七段数码管显示四位和(或差),用一只发光二极管指示进位(或借位)信号。(4)利用个开关控制,确定是四位二进制加法器还是一个四位二进制减法器。 二、总体设计: 1、总体结构图

2、各模块功能 (1)第一个4-16译码器实现输入四位加数(或减数)和被加数(或被减数)。 (2)开关模块:控制B0、B1、B2、B3,当M=0时,执行A+B,当M=1时,执行A-B。 (3)加法(减法)器模块: 加法器:采用全加器的串行进位,本四位二进制加法器由四个一位二进制加法器组成,输入A i、B i、C i,输出S i、C i+1。 减法器:与加法器的区别仅仅在于最后的和数为两数相减。 (4)LED灯: 加法器:灯亮表示有进位,灯灭表示无进位。 减法器:灯亮表示有借位,灯灭表示无进位。 (5)第二个4-16译码器:输入为四为加法器的和S0、S1、S2、S3,输出为Y0—Y6分别控制七段数码管的a1、b1、c1、d1、e1、f1、g1,输出Y9—Y15分别控制第二个七段数码管的a2、b2、c2、d2、e2、f2、g2。 (6)数码管:显示输出结果。 三、单元模块设计 1、第一个4—16译码器 (1)模块功能 通过四个按键输入四位二进制数,由译码器得到四位加数(或减数)和被加数(或被减数)的所有组合,从而实现加法器(或减法器)的输入。 (2)端口定义

减法器设计与制作

减法器设计与制作 专业:应用物理学 [中文摘要]:在很多物理实验中减法器已成为必不可少的仪器,尤其是光信号的探测与分析。本文将在简单介绍集成运放的基础上,引入减法电路的设计原理并详细分析其构成以及运放特性,并进一步根据实际要求,对实验中要用到的减法电路进行优化处理,使其达到实验要求,为实验的顺利进行做好准备。本实验在优化方面将主要论述如何使电路增加滤波功能,减小背景噪声,以电路的信噪比大大提高。 [关键词]:减法电路,输入信号,输出信号,电压放大倍数 Abstract : in many physics experiments subtraction tool has became a requisite tools, above all light signal probe and analyze, our this text will introduce integrated fundamentally ,to pull into subtraction circuit design theory and analyze its property ,and basis reality require, optimize to handle subtraction circuit ,make it reach experiments require ,keep our power dry the experiment .in our experiments, we will treatise how to raise filtration function, subtracting noise background in optimize faces , to make circuit signal-to-noise greatly raise. Key words :subtraction circuit , input signal , output signal , voltage enlarge mutiple

数电实验报告1.2-一位减法器、一位加法器

<熟悉QuartusII和Verilog HDL数字逻辑电路设计基础环境> 实验报告 学生姓名:李旭文超周 班级学号:11自动化1138033 1138019 指导老师:潘秀琴

<实验报告内容> 一、实验名称:学习QurtusII基本功能和使用方法,完成一位减法器、一位 加法器的原理图输入和文本输入、编译校验及功能仿真。 二、实验学时:4学时 三、实验目的:熟悉Quartus II基本功能和使用方法,掌握原理图输入、文本输入的步骤。 四、实验内容:完成一位加法器、一位减法器的设计输入并进行仿真输出。 五、实验原理:数字逻辑电路中各种门电路的功能和使用方法 六、实验步骤: 1.了解quartusII的基本功能使用; 2.设计输入:首先设计出逻辑电路,然后将所设计的数字逻辑电路以某种方式输入到计算机中,QuartusII有原理图输入和文本(代码)输入两种输入模式。3.设计编译校验:编译连接好的输入图形。 七、实验结果: 1.加法器:A.半加器 原理图: 文本:

波形图: B.一位全加器全加器: 原理图: 文本输入:

波形图: 2.减法器:原理图: 文本输入:

波形图: 八、心得体会:这是使用这个软件的第二次实验对于软件的使用已经比较熟练能够很快连接好电路进行试验 九、附录:<程序代码> 1.加法器: A.半加器 module adder(a,b,s,co); input a,b; output s,co; and X1(a,b); xor Y1(a,b); endmodule B.一位全加器 module onebit_fulladd(a,b,ci,sum,cout); input a,b,ci; output sum,cout; wire sum_temp,c_1,c_2,c_3; xor xor1(sum_temp,a,b);

VHDL加法器和减法器的原理

加法器 3.2.1 加法器的原理 在将两个多位二进制数相加时,除了最低位以外,每一位都应该考虑来自低位的进位,即将两个对应位的加数和来自低位的进位3个数相加。这种运算称为全加,所用的电路称为全加器。 多位加法器的构成有两种方式:并行进位和串行进位。并行进位加法器设有进位产生逻辑,预算速度较快;串行进位方式是将全加器级联构成多位加法器。并行进位加法器通常比串行级联加法器占用更多的资源。随着为数的增加,相同位数的并行加法器与串行加法器的资源占用差距也越来越大,因此,在工程中使用加法器时,要在速度和容量之间寻找平衡点。 本次设计采用的是并行加法器方式。 3.2.2 加法器要求实现的功能 实现两个二进制数字的相加运算。当到达时钟上升沿时,将两数输入,运算,输出结果。 3.2.3 加法器的VHDL语言实现 (以下以12位数加16位数生成16位数的加法器为例) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_arith.ALL; ENTITY add121616 is PORT(clk : in STD_LOGIC; Din1 :in signed (11 downto 0); Din2 :in signed (15 downto 0); Dout:out signed (15 downto 0)); END add121616; ARCHITECTURE a of add121616 is SIGNAL s1: signed(15 downto 0); BEGIN s1<=(Din1(11)&Din1(11)&Din1(11)&Din1(11)&Din1); PROCESS(Din1,Din2,clk) BEGIN if clk'event and clk='1' then Dout<=s1+Din2; end if; end process; end a; 3.2.4 加法器的模块图

8位全加器

目录 一、设计目的和要求 (1) 1.课程设计目的 (1) 2.课程设计的基本要求 (1) 3.课程设计类型 (1) 二、仪器和设备 (1) 三、设计过程 (1) 1.设计内容和要求 (1) 2.设计方法和开发步骤 (2) 3.设计思路 (2) 4.设计难点 (4) 四、设计结果与分析 (4) 1.思路问题以及测试结果失败分析 (4) 2.程序简要说明 (5) 五、心得体会 (9) 六、参考文献 (9)

一、设计目的和要求 1.课程设计目的 设计一个带进位的八位二进制加法计数器:要求在MAX+plusⅡ10.2软件的工作平台上用VHDL语言层次设计出一个带进位的八位二进制加法器,并通过编译及时序仿真检查设计结果。 2.课程设计的基本要求 全加器与带进位输入8位加法器设计要求我们通过8位全加器的设计掌握层次化设计的方法,充分理解全加器的设计过程,掌握一位全加器的程序,熟悉MAX+plusⅡ10.2软件的文本和原理图输入方法设计简单组合电路。 课程设计过程中要求能实现同步和异步的八位二进制全加器的设计。 3.课程设计类型 EDA课程设计 二、仪器和设备 PC机、MAX+plusⅡ10.2软件 三、设计过程 1.设计内容和要求 方法一: 1.原理图输入完成半加器和1位全加器的设计,并封装入库 2.层次化设计,建立顶层文件,由8个1位全加器串联构成8位全加器 3.每一层次均需进行编译、综合、适配及仿真 方法二: 1. 原理图输入完成一个四位全加器的设计 2.层次化设计,建立顶层文件,由2个4位全加器串联构成8位全加器 3.每一层次均需进行编译、综合、适配及仿真

2.设计方法和开发步骤 加法器是数字系统中的基本逻辑器件。例如:为了节省资源,减法器和硬件乘法器都可由加法器来构成。但宽位加法器的设计是很耗费资源的,因此在实际的设计和相关系统的开发中需要注意资源的利用率和进位速度等两方面的问题。多位加法器的构成有两种方式:并行进位和串行进位方式。并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。 实验表明,4 位二进制并行加法器和串行级联加法器占用几乎相同的资源。这样,多位数加法器由4 位二进制并行加法器级联构成是较好的折中选择。 因此这次课程设计中的8 位加法器可采用两个4位二进制并行加法器级联而成。此外我们还讨论了由八个一位全加器串联构成的八位二进制全加器。设计中前者设计为同步加法器,后者设计为异步加法器。 3.设计思路 方法一:异步八位全加器 设计流程图如下: 图 1异步八位流程图

8位全加器的设计与实现

实验二 8位全加器的设计与实现 [实验目的] 1 掌握Quartus II 环境下原理图输入、编译综合、仿真、引脚锁定、下载及硬件 测试测试方法; 2 掌握Quartus II 对FPGA 的设计方法。 3 学习8位全加器原理图的设计,掌握Quartus II 原理图层次化设计方法。 [实验仪器] Pentium PC 机 、EDA 实验箱 各一台 Quartus II 6.0软件 [实验内容] 采用Quartus II 原理图输入方式及层次化设计方法设计8位全加器并进行器件编程、检测。 1. 完成全加器的设计(包括原理图输入、编译综合、适配、仿真并将它们设置成硬件符号入库)。 2. 建立顶层原理图文件。采用已产生的全加器元件设计一个8位串行全加器电路,并完成编译综合、适配、仿真和硬件测试。 一、一位全加器 每个全加器有三位输入,分别是加数A,B 和一个进位位CI 。将这三个数相加,得 出全加和数D 和进位数CO 。这个过程称为”全加”,全加器的真值表参见表1。 全加器的真值表1 A B CI CO D 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 由表2得: ABCI CI AB CI B A BCI A CO +++= D ABCI ABCI ABCI ABCI =+++ 可用两个四选一芯片完成。原理图如下:

A BCI 1 0001111011 1 cout D0D1D2D31 A BCI 1 00011110111S D0D1D2 D3 1 可得: Cout 的连接方式如下: D0=0;D1=CI=D2;D3=1 S 的连接方式如下: D0=CI;D1=CI =D2;D3=CI 选用两片4选1,可绘制全加器如图1所示。 VCC ci INPUT VCC A INPUT VCC B INPUT S OUTPUT COUT OUTPUT S0D2S1D3D0INH D1 Q MUX41 inst9 NOT inst10 S0D2S1D3D0INH D1Q MUX41 inst GND VCC 图1一位全加器 1. 为全加器项目工程设计建立文件夹 Windows 环境下在D :盘建立8位加法器设计项目的文件夹,取名为adder8, 路径为d :\adder8。 2. 输入原理图文件 (1) 打开Quartus II ,选择菜单File →New 。在New 窗口中的Device Design Files 中选择硬件设计文件类型为Block Diagram/Sxhematic File ,单击OK 按钮后进入Quartus II 图形编辑窗口。 (2) 选择输入元件项Inset →Symbol ,分别调入mux41、not 元件及输入、输出端口,参照图上图合理布局、布线,最后输入各引脚名:A 、B 、ci 和s 、cout 。 (3) 原理图文件存盘,注意应选择刚才建立的文件夹 d:\adder8,将已设计好的原理图 文件取名为has.bdf,点击OK 存盘。存盘后Quartus II 弹出“Do you want to create a new project with this file?” 窗口,窗口选择“是”,将进入建立新工程项目操作。(具体操作见第3点) 3、 建立新工程项目 如在前一步操作中选择“否”的话,可按下面的操作建立新工程项目。建立工程项目

8位行波进位加减法器课程设计报告

v1.0 可编辑可修改 1 南通大学计算机科学与技术学院计算机组成原理课程设计 报告书 课题名8位行波进位加减法器 班级_____ _____ 姓名_____ _________ 学号_____ ___ 指导教师 日期

v1.0 可编辑可修改 目录 1.设计目的 (1) 2.设计内容 (1) 3.设计要求 (1) 4.设计原理与电路图 (1) 5.系统调试情况 (3) 6.设计总结与体会 (4) 7.参考文献 (5)

v1.0 可编辑可修改 1 设计目的 熟练掌握补码加减法运算规则 2 设计内容 设计一个能够完成8位补码加减法运算的ALU 3 设计要求 采用行波(串行)进位的方式,并具备溢出判断功能 4设计原理与电路图(包括总框图、微程序控制器的逻辑图、电路图和封装图) 逻辑表达式: i i i i C B A S ⊕⊕= i i i i i i i i i i i i i i i i i C B A B A C B A B A C B C A B A C ).(.)(1⊕=⊕+=++=+

v1.0 可编辑可修改 1位全加器逻辑电路图 1位全加器封装图FA n位行波进位的补码加法/加法器原理图

v1.0 可编辑可修改 n位行波进位的补码加法/加法器 5系统调试情况 测试1:当m=0时,执行00000001+00000001,结果为00000010,如下图所示: 测试2:当m=1时,执行00001,结果为00000000,如下图所示:

v1.0 可编辑可修改 测试3:当m=0时,执行01111111+000000001,结果为0,产生溢出,红灯亮,如下图所示: 测试4:当m=1时,执行0001,结果为1,产生溢出,红灯亮,如图所示:

八位加法器设计实验报告

实验四:8位加法器设计实验 1.实验目的:熟悉利用quartus原理图输入方法设计简单组合电路,掌握层次化设计方法。 2.实验原理:一个八位加法器可以由八个全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接。 3.实验任务:完成半加器,全加器,八位加法器设计,使用例化语句,并将其设计成一个原件符号入库,做好程序设计,编译,程序仿真。 1)编译成功的半加器程序: module h_adder(a,b,so,co); input a,b; output so,co; assign so=a^b; assign co=a&b; endmodule 2)编译成功的全加器程序: module f_adder(ain,bin,cin,cout,sum); output cout,sum;input ain,bin,cin; wire net1,net2,net3; h_adder u1(ain,bin,net1,net2); h_adder u2(.a(net1),.so(sum),.b(cin),.co(net3));

or u3(cout,net2,net3); endmodule 3)编译成功的八位加法器程序: module f_adder8(ain,bin,cin,cout,sum); output [7:0]sum; output cout;input [7:0]ain,bin;input cin; wire cout0, cout1, cout2 ,cout3, cout4,cout5,cout6; f_adder u0(.ain(ain[0]),.bin(bin[0]),.cin(cin),.sum(sum[0]) ,.cout(cout0)); f_adder u1(.ain(ain[1]),.bin(bin[1]),.cin(cout0),.sum(sum[1 ]),.cout(cout1)); f_adder u2(.ain(ain[2]),.bin(bin[2]),.cin(cout1),.sum(sum[2 ]),.cout(cout2)); f_adder u3(.ain(ain[3]),.bin(bin[3]),.cin(cout2),.sum(sum[3 ]),.cout(cout3)); f_adder u4(.ain(ain[4]),.bin(bin[4]),.cin(cout3),.sum(sum[4

8位加法器和减法器设计实习报告

综合电子系统实习报告 设计题目:8位加法器和减法器的设计

一、实习目的:综合电子系统实习是电子信息类专业学生了解电子系统设计实现过程,培养实践动手能力的实践性教学环节,是电子信息工程等理工科专业学生一门必修的实践性课程。通过学习和实践,可以让学生进一步接触电子元器件,电子材料及电子产品的生产实际,了解电子工艺的一般知识和掌握基本电路板的制作,元件的焊接,产品的组装等技能,了解电子工艺生产线的流程和基本管理知识,使学生通过设计一个课题,巩固和加深在“模拟电子技术基础”和“数字电子技术基础”等课程中所学到的理论知识和实验技能,掌握常用电子电路中的一般分析和设计方法,熟悉protel和其他开发软件的使用方法,提高电子电路的分析、设计和实验能力,为以后从事生产和科研工作打下一定的基础,为今后专业实验,毕业设计准备必要的工艺知识和操作技能。同时培养学生严谨的工作作风,养成良好的工作习惯,它是基本技能和工艺知识的入门向导,又是创新实践和创新精神的启蒙。综合电子系统实习对训练我们基本操作技能,提高我们实际动手能力是难得的一次好机会。 二、实习基本内容和要求: (1)掌握常用电子元器件的种类,性能,选用原则及质量辨别; (2)掌握电子产品装配及材料; (3)学会印制电路板的制作,掌握锡焊原理及手工焊接工艺技术; (4)学会器件的装配,焊接,调试; (5)学会使用常用电子测试仪器设备,初步具有借助说明书或资料掌握常用工具,仪器的使用能力; (6)掌握常用电子电路的设计方法,学会系统实物制作和调试。 三、实习工具: (1)电烙铁:由于焊接的元件多,所以使用的是外热式电烙铁,功率为30w,烙铁头是铜制。 (2)螺丝刀、钻孔机、斜口钳、尖嘴钳等必备工具。 (3)焊锡,由于锡它的熔点低,焊接时,焊锡能迅速散步在金属表面焊接牢固,焊点光亮美观。 (4)数字万用表,5V直流稳压电源。 要求:1、利用逻辑门电路设计8位加法器和减法器,实现两个8位二进制数的加法运算和减法运算; 2、具有进位信号输入和输出能力; 3、通过功能选择控制信号F选择运算功能,F=0,加法运算,F=1, 进行减法运算; 4、用发光二极管显示两个输入数据和运算结构。 1、设计原理:

8位加法器设计程序过程

实验8位加法器设计 一、实验目的 熟悉利用QuartusⅡ的图形编辑输入法设计简单组合电路,掌握层次化设计方法,并通过8位全加器的设计,进一步熟悉利用EDA软件进行数字系统设计的流程。 二、实验仪器与器材 计算机1台,GW48-PK2S实验箱1台,QuartusⅡ6.0 1套。 三、实验内容 1. 基本命题 利用图形输入法设计一个一位半加器和全加器,再利用级联方法构成8位加法器。 2. 扩展命题 利用文本输入法设计4位并行进位加法器,再利用层次设计方法构成8位加法器。通过时序仿真,比较两种加法器的性能。 四、实验设计思路 按照如图2-1,2-2,2-3设计半加器、全加器、串行级联加法器 ①设计半加器 图2-1半加器设计图 ②设计全加器

图2-2全加加器设计图 ③设计串行级联8位加法器 图2-3串行级联8位加法器设计图 ④仿真波形图 对以上的串行级联加法器进行仿真。设置时钟频率为/1/10ns。每20ns对a,b输入口进行+2操作。所得结果见图2-8。由图可知延时大约为14ns。

图2-4串行级联加法器仿真波形图 对以上的串行级联加法器进行仿真。设置时钟频率为/2.0us。每10us对a,b输入口进行 +2操作。所得结果见图2-4。由图可知延时大约为10us。 五、实验要求 将实验原理、设计过程、编译仿真波形和分析结果、硬件测试实验结果写进实验报告。 六、实验思考题 (1)与单一设计文件比较,实现层次化设计应注意哪些问题? 答:实现层次化设计需要注意的是:假设B设计中引用A设计,那么需要将A 设计的工程文件放在B设计的工程文件中,另外,B设计的工程必须要以B的实体名称对应,不然仿真的时候会出错。 (2)比较图形编辑和文本编辑两种8位二进制加法器的性能,分析它们的主要异同点。以下是文本编辑的参考程序。 1) 4位二进制数加法器ADDER4B的VHDL描述 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ADDER4B IS PORT ( CIN4 : IN STD_LOGIC; A4 : IN STD_LOGIC_VECTOR(3DOWNTO0);

加法器、减法器的设计 VHDL

实验报告 课程名称电子设计自动化实验(基于FPGA)实验项目加法器、减法器的设计 实验仪器计算机+ Quartus Ⅱ9.1 系别信息与通信工程学院 专业通信工程 班级/学号 学生姓名 实验日期2012、5 成绩_______________________ 指导教师_______________________

加法器、减法器的设计 完成一个8位二进制带符号数的加减电路设计。设计要求如下:通过拨码开关输入两组8位二进制数,最高位为符号位,0表示正数,1表示负数,其余位表示二进制数值。用一按键对加、减方式进行控制,0表示加,1表示减。输出用四位LED数码管显示BCD码。其中LED显示器最高位为符号位。 VHDL代码 LIBRARY IEEE; USE IEEE.std_logic_1164.all; USE IEEE.std_logic_arith.all; USE IEEE.std_logic_unsigned.all; ENTITY add IS PORT(a:in std_logic_vector(7 downto 0); b:in std_logic_vector(7 downto 0); ctrl:in std_logic; bcd:out std_logic_vector(15 downto 0)); END ENTITY; ARCHITECTURE func OF add IS SIGNAL x:std_logic_vector(9 downto 0); SIGNAL y:std_logic_vector(9 downto 0); SIGNAL z:std_logic_vector(9 downto 0); SIGNAL c:std_logic_vector(8 downto 0); SIGNAL dec:integer; BEGIN yunsuan:BLOCK --运算模块 BEGIN PROCESS(a) BEGIN

计算机组成原理实验报告-八位补码加减法器的设计与实现

计算机科学与技术学院 计算机组成原理 实验报告书 实验名称八位补码加/减法器的设计与实现班级 学号 姓名 指导教师 日期 成绩

实验1八位补码加/减法器的设计与实现 一、实验目的 1.掌握算术逻辑运算单元(ALU)的工作原理。 2.熟悉简单运算器的数据传送通路。 3.掌握8位补码加/减法运算器的设计方法。 4.掌握运算器电路的仿真测试方法 二、实验任务 1.设计一个8位补码加/减法运算器 (1)参考图1,在QUARTUS II里输入原理图,设计一个8位补码加/减法运算器。 (2)创建波形文件,对该8位补码加/减法运算器进行功能仿真测试。 (3)测试通过后,封装成一个芯片。 2.设计8位运算器通路电路 参考下图,利用实验任务1设计的8位补码加/减法运算器芯片建立运算器通路。 3.利用仿真波形,测试数据通路的正确性。 设定各控制信号的状态,完成下列操作,要求记录各控制信号的值及时序关系。 (1)在输入数据IN7~IN0上输入数据后,开启输入缓冲三态门,检查总线BUS7~BUS0上的值与IN0~IN7端输入的数据是否一致。 (2)给DR1存入55H,检查数据是否存入,请说明检查方法。 (3)给DR2存入AAH,检查数据是否存入,请说明检查方法。 (4)完成加法运算,求55H+AAH,检查运算结果是否正确,请说明检查方法。 (5)完成减法运算,分别求55H-AAH和AAH-55H,检查运算结果是否正确,请说明检查方法。 (6)求12H+34H-56H,将结果存入寄存器R0,检查运算结果是否正确,同时检查数据是否存入,请说明检查方法。 三、实验要求 (1)做好实验预习,掌握运算器的数据传送通路和ALU的功能特性。 (2)实验完毕,写出实验报告,内容如下: ①实验目的。

加法器、减法器

南京铁道职业技术学院 创新电子培训 项目:加法器 老师:袁秀红 姓名:高书杰 二〇一三年三月二十五日

目录 一、实验目的 (3) 二、实验设备 (3) 三、实验原理 (3) 1.加法电路 (3) (1) 反相加法电路 (3) (2) 同相加法电路 (5) 2.差分放大电路 (6) 四、实验过程 (7) 1.双电源反相加法器电路 (7) (1) 双电源反相加法器直流测试电路 (7) (2) 双电源反相加法器交流测试电路 (16) (3) 双电源反相加法器动态范围测试 (22) 2.单电源反相加法器电路 (29) 3.双电源同相加法器电路 (29) (1) 双电源同相加法器直流测试电路 (29) (2) 双电源同相加法器交流测试电路 (37) 4.单电源同相加法器电路 (42) 5.双电源差分放大器电路 (43) (1)双电源差分放大器直流测试电路 (43) (2)双电源差分放大器交流测试电路 (50) 6.单电源差分放大器电路 (56) 五、实验结果 (57) 六、实验心得 (57)

加 法 器 一、实验目的 1.掌握运算放大器线性电路的设计方法。 2.熟悉掌握Multisim 软件对运算放大器进行仿真的用法及仿真分析的方法。 3.能正确判断和分析电路在仿真中的故障并正确解决。 4.理解运算放大器的工作原理。 二、实验设备 表1 序号 设备、材料 数量 备注 1 计算机 1台 2 Multisim 软件 1套 三、实验原理 1.加法电路 (1)反相加法电路 反相加法器电路是根据“虚断”和“虚短”的概念,运用节点电流法推导而出。 由“虚断”可得 n i f i i i i i +++== 21; 再根据“虚短”可得 1 11R u i i = ,222R u i i = ,…,n in n R u i =; )( 2211n in i i f f f o R u R u R u R i R u +++-=-= 。

CMOS数字集成电路设计_八位加法器实验报告

CMOS数字集成电路设计课程设计报告 学院:****** 专业:****** 班级:****** 姓名:Wang Ke qin 指导老师:****** 学号:****** 日期:2012-5-30

目录 一、设计要求 (1) 二、设计思路 (1) 三、电路设计与验证 (1) (一)1位全加器的电路设计与验证 (1) 1)原理图设计 (1) 2)生成符号图 (2) 3)建立测试激励源 (2) 4)测试电路 (3) 5)波形仿真 (4) (二)4位全加器的电路设计与验证 (4) 1)原理图设计 (4) 2)生成符号图 (5) 3)建立测试激励源 (5) 4)测试电路 (6) 5)波形仿真 (6) (三)8位全加器的电路设计与验证 (7) 1)原理图设计 (7) 2)生成符号图 (7) 3)测试激励源 (8) 4)测试电路 (8) 5)波形仿真 (9) 6)电路参数 (11) 四、版图设计与验证 (13) (一)1位全加器的版图设计与验证 (13) 1)1位全加器的版图设计 (13) 2)1位全加器的DRC规则验证 (13) 3)1位全加器的LVS验证 (14) 4)错误及解决办法 (14) (二)4位全加器的版图设计与验证 (15) 1)4位全加器的版图设计 (15) 2)4位全加器的DRC规则验证 (15) 3)4位全加器的LVS验证 (16) 4)错误及解决办法 (16) (三)8位全加器的版图设计与验证 (16) 1)8位全加器的版图设计 (16) 2)8位全加器的DRC规则验证 (17) 3)8位全加器的LVS验证 (17) 4)错误及解决办法 (18) 五、设计总结 (18)

加法器实验报告

加法器实验报告 篇一:加法器实验报告 实验 __一__ 【实验名称】 1位加法器 【目的与要求】 1. 掌握1位全加器的设计 2. 学会1位加法器的扩展 【实验内容】 1. 设计1位全加器 2. 将1位全加器扩展为4位全加器 3. 使4位的全加器能做加减法运算 【操作步骤】 1. 1位全加器的设计 (1)写出1位全加器的真值表 (2)根据真值表写出表达式并化简 (3)画出逻辑电路 (4)用quartusII进行功能仿真,检验逻辑电路是否正确,将仿真波形截图并粘贴于此 (5)如果电路设计正确,将该电路进行封装以用于下一个环节 2. 将1位全加器扩展为4位全加器 (1)用1位全加器扩展为4位的全加器,画出电路图 (2)分别用两个4位补码的正数和负数验证加法器的正确性(注意这两 个数之和必须在4位补码的数的范围内,这两个数包括符号在内共4位),用quartusII进行功能仿真并对仿真结果进行截图。 3. 将4位的全加器改进为可进行4位加法和减法的运算器 (1)在4位加法器的基础上,对电路进行修改,使该电路不仅能进行加 法运算而且还能进行减法运算。画出该电路

(2)分别用两个4位补码的正数和负数验证该电路的正确性(注意两个 数之和必须在4位补码的数的范围内),用quartusII进行功能仿真并对仿真结果进行截图。 【附录】 篇二:加法器的基本原理实验报告 一、实验目的 1、了解加法器的基本原理。掌握组合逻辑电路在Quartus Ⅱ中的图形输入方法及文本输入方法。 2、学习和掌握半加器、全加器的工作和设计原理 3、熟悉EDA工具Quartus II和Modelsim的使用,能够熟练运用Vrilog HDL 语言在Quartus II下进行工程开发、调试和仿真。 4、掌握半加器设计方法 5、掌握全加器的工作原理和使用方法 二、实验内容 1、建立一个Project。 2、图形输入设计:要求用VHDL结构描述的方法设计一个半加器 3、进行编译,修改错误。 4、建立一个波形文件。(根据真值表) 5、对该VHDL程序进行功能仿真和时序仿真Simulation 三、实验步骤 1、启动QuartusⅡ 2、建立新工程 NEW PROJECT 3、设定项目保存路径\项目名称\顶层实体名称 4、建立新文件 Blok Diagram/Schematic File 5、保存文件FILE /SAVE 6、原理图设计输入 元件符号放置通过EDIT_>SYMBOL 插入元件或点击图标

加减法器的设计

本文运用数字电路知识来设计加减法器,在PROTEUS中仿真出电路原理图,通过控制开关的闭合来模拟数据的输入以及控制控制开关来选择加法器或者减法器。通过数码管的显示可以看到所输入的数据以及输入数据的运算结果。通过加减法器的课程设计,可以从中学习和巩固数字电路的相关知识。比如,减法器电路的设计,全加器芯片以及各种逻辑门器件的使用等等。 关键字:加减法器;数码管;逻辑门;全加器;PROTEUS。

1概述 (1) 2方案设计 (2) 2.1设计要求 (2) 2.2方案设计 (2) 2.3设计原理 (3) 3电路设计 (4) 3.1置数电路的设计 (4) 3.2加减法器电路的设计 (5) 3.3数码管显示电路的设计 (5) 3.4完整电路图的设计 (6) 4仿真与调试 (7) 4.1系统仿真步骤 (7) 4.2系统仿真结果分析 (7) 5总结 (10) 参考文献 (11) 致谢 (12)

第1章概述 目前,随着社会经济的发展,运算是人们生活中必不可少的,因此设计性能可靠的计算器是很有必要的。信息技术代表着当今先进生产力的发展方向,信息技术的广泛应用使信息的重要生产要素战略资源的作用得以发挥,使人们能更高效地进行资源优化配置,从而推动传统产业不断升级,提高社会劳动生产率和社会运行效率。 21世纪初,人类将全面迈向一个信息时代,信息技术革命是经济全球化的重要推动力量和桥梁,是促进全球经济和社会发展的主导力最,以信息技术为中心的新技术革命将成为世界经济发展史上的新亮点。信息技术将使人类能够进一步把潜藏在物质运动中的巨大信息资源挖掘出来,把世界变成一个没有边界的信息空间,以微处理机进入亿万办公室和家庭、超级计算机问世、卫星通信与光导通信的发展,特别是网络化的迅速发展为标志的,信息技术革命不仅以最为便捷的方式沟通了各国、各地区、各企业、各团体以及个人之间的联系,而且在一定程度上打破了种种地域乃至国家的限制,把核个世界空前地联系在一起,推动了全球化的迅速发展。 当今的世界是信息时代,而运算能力的强弱关系到自身获取信息的速度。这点对于人们很重要,它不仅对于个人,对于国家的安全和发展和国家的安全也是极其重要的。一个国家的综合实力的强弱可以从多个方面看出来,其中就包括对信息处理的能力,所以,研究高性能的计算机是每个国家都十分重视的一件事情。 我国以建设创新型国家为目标,把掌握装备制造业和信息产业核心技术的自主知识产权作为提高国家竞争力的突破口。虽然我国信息技术的总体水平与国际先进水平仍有不少差距,但近年来我国在一些有较大影响的关键信息技术领域有了可喜的突破。因此,作为天之骄子的我们很有必要学好信息技术,努力成为国家所需要的人才,为国家的繁荣富强作出自己的贡献,为中华民族的伟大复兴尽一份自己的力量。

相关文档
最新文档