当前位置:文档之家› 北科大第二次计组实验报告_超前进位加法器

北科大第二次计组实验报告_超前进位加法器

北科大第二次计组实验报告_超前进位加法器
北科大第二次计组实验报告_超前进位加法器

北京科技大学计算机与通信工程学院

实验报告

实验名称:超前进位加法器

学生姓名:

专业:计算机科学与技术

班级:

学号:

指导教师:

实验成绩:

实验地点:

实验时间:2015 年 5 月28 日

一、实验目的与实验要求

1、实验目的

(1)掌握静态随机存储器的基本结构;

(2)掌握静态随机存储器RAM工作特性及数据的读写方法;(3)掌握超前进位加法器的原理及其设计方法;

(4)理解使用超前进位逻辑设计ALU的方法;

(5)掌握乘法器的原理及其设计方法;

(6)熟悉FPGA应用设计及QuartusⅡ软件的使用。

2、实验要求

(1)验证静态随机存储器的读写功能;

(2)用QuartusⅡ软件设计一个超前进位加法器;

(3)用QuartusⅡ软件设计一个阵列乘法器。

二、实验设备(环境)及要求

Window 8,QuartusⅡ软件

三、实验内容与步骤

1、实验1

(1)实验内容

验证静态随机存储的读写功能:

(2)主要步骤

①关闭实验系统电源,在断电状态下按图3.15所示连接实验电路,并检查无误。

②将时序单元的状态开关置为“单步”档,MEM单元的编程开关置为“运行”档。

③将CON单元的IOR开关置为1(使IN单元无输出),打开电源开关,如果听到有“嘀”报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。

④给存储器写入数据:要先写地址,后写数据。

写存储器的流程如图3.16所示(以向00地址单元写入11H为例):

读存储器的流程如图3.17所示(以从00地址单元读出11H为例):

⑤根据对实验原理的描述,以向03H地址单元写入数据33H为例,填写表3.6.中的操作步骤以及相关信号状态。在以从03H地址单元读取数据为例,填写表3.7中的操作步骤及相关的信号状态。

2、实验2

(1)实验内容

用QuartusⅡ软件设计一个8位超前进位加法器。

(2)主要步骤

①打开Quartus Ⅱ软件,进入软件初始界面;

②通过File→New→Block Diagram/Schematic File选项,建立原理图文件;

③添加原件和连接线:分别在原理图上画出A、B模块,保存原理图文件,通过File→Create/Update→Crate Symbol Files for File选项,把A、B原理图转换为元件符号。再建立一个原理图文件,按照图3.8接线。原理图如下:

A模块

B模块

④完成原理图后,过File→New Project Wizard选项,建立一个新工程,在建立时候在Add Files窗口添加原理图文件;

⑤进行功能仿真。通过Processing→Generate Functional Simulation Netlist选项产生功能仿真网络表。有了功能仿真网络表,就可以对工程进行功能仿真。通过File→New或者单击

工具按钮新建一个Vector Waveform File向量波形文件;

⑥在向量波形文件窗口中,在Name下方空白处右击,在弹出的快捷菜单中选择

Insert→Insert Node or Bus菜单项,或者在Name正文空白处双击弹出Insert Node or Bus对话框,单击Node Finder按钮,进行信号的添加;添加a、b、C0,s信号,a、b,s设为十进制值,a、b设置为随机值,C0置零,保存文件;

⑦通过Assignments→Settings选项或者单击工具按钮进行仿真设置;更改Simulation mode 为Functional,选择仿真输入为刚刚新建的向量波形文件。完成设置后,通过Processing→Start Simulation选项或者单击工具按钮进行功能仿真,仿真结果为下图:

3、实验3

(1)实验内容

用QuartusⅡ软件设计一个4*4阵列乘法器。

(2)主要步骤

①打开Quartus Ⅱ软件,进入软件初始界面;

②通过File→New Project Wizard选项,建立一个新工程;

③通过File→New选项或单击工具按钮,在工程里新建Verilog HDL代码文件,保存文件,在Quartus Ⅱ提供的代码编辑器里进行代码编辑:

module chengfa(a,b,p);

input [3:0]a,b;

output reg [7:0]p;

integer c;

always@(a or b)

begin

{c,p[0]}=a[0]*b[0];

{c,p[1]}=a[1]*b[0]+a[0]*b[1]+c;

{c,p[2]}=a[2]*b[0]+a[1]*b[1]+a[0]*b[2]+c;

{c,p[3]}=a[3]*b[0]+a[2]*b[1]+a[1]*b[2]+a[0]*b[3]+c;

{c,p[4]}=a[3]*b[1]+a[2]*b[2]+a[1]*b[3]+c;

{c,p[5]}=a[3]*b[2]+a[2]*b[3]+c;

{c,p[6]}=a[3]*b[3]+c;

p[7]=c;

end

endmodule

④完成代码编写后,通过Processing →Start →Start Analysis&Synthesis选项或者单击工具按钮进行Quartus Ⅱ工程的语法与综合编译;编译无误后,通过Tools→Netlist Viewers→RTL Viewer选项可以生成综合后的电路结构图;

⑤完成编译与综合后,进行功能仿真。通过Processing→Generate Functional Simulation Netlist选项产生功能仿真网络表。有了功能仿真网络表,就可以对工程进行功能仿真。通过File→New选项或者单击工具按钮新建一个Vector Waveform File向量波形文件;

⑥在向量波形文件窗口中,在Name下方空白处右击,在弹出的快捷菜单中选择

Insert→Insert Node or Bus菜单项,或者在Name正文空白处双击弹出Insert Node or Bus对话框,单击Node Finder按钮,进行信号的添加;添加a、b、p信号,a、b、p设置为十进制值,a、b设置为随机值;保存文件;

⑦通过Assignments→Settings选项或者单击工具按钮进行仿真设置;更改Simulation mode 为Functional,选择仿真输入为刚刚新建的向量波形文件。完成设置后,通过

Processing→Start Simulation选项或者单击工具按钮进行功能仿真,仿真结果为下图:

四:实验结果与分析

1、实验1

表3.6存储器写操作流程

信号 步骤 IN 单元置地址 地址打入AR IN 单元置输出 数据打入MEM WR 0 0 0 1 RD 0 0 0 0 IOM 0 0 0 0 IOR 0 0 0 0 LDAR 0 1 0 0 T2

按一下

按一下

表3.7存储器读操作流程

信号 步骤 IN

单元置地址 地址打入AR 关闭IN 单元输出 读出MEM 数据 WR 0 0 0 0 RD 0 0 0 1 IOM 0 0 0 0 IOR 0 0 1 1 LDAR 0 1 0 0 T2

按一下

2、实验2

经验证,上图的结果是正确的。

3、实验3

经验证,上图的结果是正确的。

五:结论(讨论)

1、实验结论

(1)基本掌握了静态随机存储器的基本结构;

(2)学会了用实验箱进行静态随机存储器数据的读写;

(3)基本掌握了超前进位加法器的原理及其设计方法;

(4)基本掌握了乘法器的原理及其设计方法。

2、讨论

存在的问题:编写程序的速度太慢了,而且不会把程序下载到实验箱,并且进行接线使用。改进方向:要多看verilog教程,提高编程速度。在下次实验中学会实验箱使用方法。

六、教师评审

教师评语实验成绩

签名:

日期:

16位超前加法器实验报告

16位超前加法器设计实验 一、实验分析: 四位超前进位加法器HDL程序: module add4_head ( a, b, ci, s, pp, gg); input[3:0] a; input[3:0] b; input ci; output[3:0] s; output pp; output gg; wire[3:0] p; wire[3:0] g; wire[2:0] c; assign p[0] = a[0] ^ b[0]; assign p[1] = a[1] ^ b[1]; assign p[2] = a[2] ^ b[2]; assign p[3] = a[3] ^ b[3]; assign g[0] = a[0] & b[0]; assign g[1] = a[1] & b[1]; assign g[2] = a[2] & b[2]; assign g[3] = a[3] & b[3]; assign c[0] = (p[0] & ci) | g[0]; assign c[1] = (p[1] & c[0]) | g[1]; assign c[2] = (p[2] & c[1]) | g[2]; assign pp = p[3] & p[2] & p[1] & p[0]; assign gg = g[3] | (p[3] & (g[2] | p[2] & (g[1] | p[1] & g[0]))); assign s[0] = p[0] ^ ci; assign s[1] = p[1] ^ c[0]; assign s[2] = p[2] ^ c[1]; assign s[3] = p[3] ^ c[2]; endmodule p表示进位否决信号(pass),如果p为0就否决调前一级的进位输入。否决的意思就是即使前一级有进位,本级也不会向后一级产生进位输出。 g表示进位产生信号(generate),如果g为1就表示一定会向后一级产生进位输出。p[n] = a[n] ^ b[n]这句话的意思是说,当a=1,b=0或a=0,b=1时前一级的进位输入信号不能否决。这样就有个问题了,即当a=1,b=1时前一级的进位输入信号也不能否决啊,怎么没有体现出来?其实当a=1,b=1时产生了进位产生信号g,它的优先级高于p信号,就忽略了p信号,直接产生了向后一级产生进位输出,是没有逻辑错误的。 g[n] = a[n] & b[n] 这句话的意思是说,如果a=1,b=1时就直接向后一级产生进位输出信号,而不用考虑其它的任何因素。

四位超前进位加法器原理

超前进位加法器原理 74283为4位超前进位加法器,不同于普通串行进位加法器由低到高逐级进位,超前进位加法器所有位数的进位大多数情况下同时产生,运算速度快,电路结构复杂。其管脚如图1所示: 图1 74283管脚图 其真值表如下所示: 表1 4位超前进位加法器真值表

由全加器的真值表可得S i 和C i 的逻辑表达式: 定义两个中间变量G i 和P i : 当A i =B i =1时,G i =1,由C i 的表达式可得C i =1,即产生进位,所以G i 称为产生量变。若P i =1,则A i ·B i =0,C i =C i-1 ,即P i =1时,低位的进位能传 送到高位的进位输出端,故P i 称为传输变量,这两个变量都与进位信号无关。 将G i 和P i 代入S i 和C i 得: 进而可得各位进位信号的逻辑表达如下:

根据逻辑表达式做出电路图如下: 逻辑功能图中有2输入异或门,2输入与门,3输入与门,4输入与门,2输入或门,3输入或门,4输入或门,其转化成CMOS晶体管图如下:

电路网表如下: *xor 2 .subckt xor2 a b c d f mxorpa 1 a vdd vdd pmos l=2 w=8 mxorpb f d 1 vdd pmos l=2 w=8 mxorpc 2 b vdd vdd pmos l=2 w=8 mxorpd f c 2 vdd pmos l=2 w=8 mxorna f a 3 0 nmos l=2 w=4 mxornb 3 b 0 0 nmos l=2 w=4 mxornc f c 4 0 nmos l=2 w=4 mxornd 4 d 0 0 nmos l=2 w=4 .ends xor2 *and2 .subckt and2 a b f mandpa f a vdd vdd pmos l=2 w=4 mandpb f b vdd vdd pmos l=2 w=4 mandna f a 1 0 nmos l=2 w=4 mandnb 1 b 0 0 nmos l=2 w=4 .ends and2 *and3 .subckt and3 a b c f mandpa f a vdd vdd pmos l=2 w=4 mandpb f b vdd vdd pmos l=2 w=4 mandpc f c vdd vdd pmos l=2 w=4 mandna f a 1 0 nmos l=2 w=6 mandnb 1 b 2 0 nmos l=2 w=6 mandnc 2 c 0 0 nmos l=2 w=6 .ends and3 *and4 .subckt and4 a b c d f mandpa f a vdd vdd pmos l=2 w=4 mandpb f b vdd vdd pmos l=2 w=4 mandpc f c vdd vdd pmos l=2 w=4 mandpd f d vdd vdd pmos l=2 w=4 mandna f a 1 0 nmos l=2 w=8 mandnb 1 b 2 0 nmos l=2 w=8 mandnc 2 c 3 0 nmos l=2 w=8 mandnd 3 d 0 0 nmos l=2 w=8 .ends and4

北科大数字图像处理实验报告

北京科技大学计算机与通信工程学院 实验报告 实验名称:《数字图像处理》课程实验 学生姓名:徐松松 专业:计算机科学与技术 班级:计1304 学号:41345053 指导教师:王志明 实验成绩: 实验时间:2016 年12 月15 日

一、实验目的与实验要求 1、实验目的 1. 熟悉图像高斯、脉冲等噪声的特点,以及其对图像的影响; 2. 理解图像去噪算法原理,并能编程实现基本的图像去噪算法,达到改善图像质量的效果,并能对算法性能进行简单的评价。 3. 理解图像分割算法的原理,并能编程实现基本的灰度图像分割算法,并显示图像分割结果。 2、实验要求 1. 对于给定的两幅噪声图像(test1.jpg, test 2.jpg),设计或选择至少两种图像滤波算法对图像进行去噪。 2.利用给出的参考图像(org1.jpg, org2.jpg),对不同算法进行性能分析比较。 3. 对于给定的两幅数字图像(test.jpg,test 4.jpg),将其转换为灰度图像,设计或选择至少两种图像分割算法对图像进行分割,用适当的方式显示分割结果,并对不同算法进行性能分析比较。 二、实验设备(环境)及要求 1. Mac/Windows计算机 2. Matlab编程环境。 三、实验内容与步骤 1、实验1 (1)实验内容 1. 对于给定的两幅噪声图像(test1.jpg, test 2.jpg), 设计或选择至少两种图像滤波算法对图像进行去噪。 2. 利用给出的参考图像(org1.jpg, org2.jpg), 对不同算法进行性能分析比较。(2)主要步骤 1. 打开Matlab编程环境; 2. 利用’imread’函数读入包含噪声的原始图像数据; 3. 利用’imshow’函数显示所读入的图像数据;

西安邮电大学Verilog 四位超前进位全加器

西安邮电大学Verilog HDL实验报告(二) ——带超前进位的四位全加器 学院名称:电子工程学院 班级:电子 学生姓名: 学号:

实验题目带超前进位的四位全加器 一、实验内容 设计的一个带超前进位的四位全加器。 二、实验步骤 1、在ModelSim软件中对激励模块和设计模块进行书写和编译; 2、对编译好的模块进行仿真。 三、源代码: 1、主程序 module fulladd4(sum, c_out, a, b, c_in); output [3:0] sum; output c_out; input [3:0] a,b; input c_in; wire p0,g0,p1,g1,p2,g2,p3,g3; wire c4,c3,c2,c1; xor a1(p0,a[0],b[0]); xor a2(p1,a[1],b[1]); xor a3(p2,a[2],b[2]); xor a4(p3,a[3],b[3]); and b1(g0,a[0],b[0]); and b2(g1,a[1],b[1]); and b3(g2,a[2],b[2]); and b4(g3,a[3],b[3]); and d1(e1,p0,c_in); or f1(c1,e1,g0); and d2(e2,p1,g0);and d3(e3,p1,p0,c_in);or f2(c2,g1,e2,e3); A nd d4(e4,p2,g1);and d5(e5,p2,p1,g0);and d6(e6,p2,p1,c_in);or f3(c3,g2,e4,e5,e6); and d7(e7,p3,g2);and d8(e8,p3,p2,g1);and d9(e9,p3,p2,p1,g0);and d10(e10,p3,p2,p1,p0,c_in);or f4(c4,g3,e7,e8,e9,e10); xor m0(sum[0],p0,c_in); xor m1(sum[1],p1,c1); xor m2(sum[2],p2,c2); xor m3(sum[3],p3,c3); and n1(c_out,c4,c4); endmodule 2、激励程序 module fulladd4_tb;

4位超前进位加法器设计讲解学习

4位超前进位加法器 设计

、、 模拟集成电路分析与设计课程设计报告 题目4位超前进位加法器设计 学院(部)电控学院 专业电子科学与技术 班级 学生姓名 学号

前言 20世纪是IC迅速发展的时代。计算机等信息产业的飞速发展推动了集成电路(Integrated Circuit—IC)产业。大多数超大规模集成电路(Very Large Scale IC—VLSI)在日常生活中有着广泛的应用。在这些广泛应用的运算中,加法器是组成这些运算的基本单元。在高性能微处理器和DSP处理器中,加法器的运算时间至关重要。加法器运算常常处于高性能处理器运算部件的关键路径中,特别是在算术逻辑单元中加法器的运算时间对处理器的速度起着决定性的作用。随着微处理器的运算速度越来越快,对快速加法器的需求也越来越高。 当今,加法器的设计面临两大课题,首先是如何降低功耗。随着便携式IC产品例如MP3播放器,手机和掌上电脑等的广泛使用,要求IC工程师对现有运算模块的性能作进一步改进,尤其是在电路的功耗和尺寸方面。由于现在相应的电池技术难以和微电子技术的发展速度匹敌,这使得IC设计师遇到了许多限制因素,比如高速,大吞吐量,小尺寸,低功耗等。因此,这使得研究低功耗高性能加法单元持续升温。另一方面就是如何提高加法器的运算速度。因为加法运算存在进位问题,使得某一位计算结果的得出和所有低于它的位相关。因此,为了减少进位传输所耗的时间,提高计算速度,人们设计了多种类型的加法器,如超前进位加法器曼彻斯特加法器、进位旁路加法器、进位选择加法器等。它们都是利用各位之间的状态来预先产生高位的进位信号,从而减少进位从低位向高位传递的时间。 本文首先介绍了的加法器的类型以及其工作原理,然后重点分析了超前进位加法器的组成结构、结构参数以及

数电实验报告

北京邮电大学 数字电路与逻辑设计实验简易电子琴演奏器 班级: 学号: 姓名:

一.设计课题的任务要求 题目五简易电子琴演奏器 原理概述: 根据声乐知识,产生音乐的两个因素是音乐频率的持续时间,音乐的十二平均率规定,每两个八音度之间的频率相差一倍,在两个八音度之间,又可分为12个半音。每两个半音的频率比为4。另外,音名A(乐谱中的低音6)的频率为440HZ,音名B到C之间,E到F之间为半音,其余为全音。由此可以计算出乐谱中从低音1到高音1之间每个音名的频率如下表所示。 基本要求: 1、用8×8点阵显示“1 2 3 4 5 6 7”七个音符构成的电子琴键盘。其中点阵 的第一列用一个LED点亮表示音符“1”,第二列用二个LED点亮表示音符“2”,依此类推,如下图所示。 图1 点阵显示的电子琴键盘 2、用BTN1~BTN7七个按键模拟电子琴手动演奏时的“1 2 3 4 5 6 7”七个 音符。当某个按键按下时,数码管显示相应的音符,点阵上与之对应的音符显示列全灭,同时蜂鸣器演奏相应的声音;当按键弹开时数码管显示的音符灭掉,点阵显示恢复,蜂鸣器停止声音的输出。下图所示为按下BTN3按键时点阵的显示情况。

图2 按键按下后的点阵显示 3、由拨码开关切换选择高、中、低音,并用数码管进行相应的显示。 4、通过按键BTN0进行复位,控制点阵显示图1的初始状态。 提高要求: 1、可通过一个拨码开关进行手动/自动演奏的切换,并与点阵显示配合增加 自动演奏乐曲的功能。 2、增加手动演奏的音符存储、播放功能。 二、系统设计(包括设计思路、总体框图、分块设计) 设计思路 电子琴的设计主要包括了显示与发声部分,发声部分主要分为三个不同的音阶,每个音阶包括了七个音,发生部分可以通过对50M晶振的分频,通过改变分频系数,得到响应频率的时钟脉冲,以这个脉冲控制蜂鸣器发出声音;显示部分则包括了数码管的音阶显示与点阵的琴键显示。数码管可以动态显示出音阶与当前音符,点阵则模拟显示琴键,动态显示实现了一个三角阵,并对应到音符琴键,这两个显示模块可以通过动态显示来实现显示显示不同的内容,配合按键可以实现基本功能。不同的音阶可以通过相应拨码开关的选择来调节,至于显示的复位,则不需要专门设置键位来完成,因为每个转台结束后就会自动转入等待状态。对于音调,乐曲的12平均率规定:每2个八度音之间的频率相差1倍。在2个八度音之间,又可分为12个半音,每2个半音的频率比为12√2。另外,音符A 的频率为440Hz,音符B到C之间、E到F之间为半音,其余为全音。由此可以计算出简谱中从低音1到高音1之间每个音符的频率。而对于节拍,如果将一拍的长度定为1秒,则1/4拍的时间为1/4秒,为其提供一个4Hz的时钟频率即可产生出1/4拍的效果了。若需要半拍,只需将该音符记录两次就可以了。 总体框图

计组-加法器实验报告

半加器、全加器、串行进位加法器以及超前进位加法器 一、实验原理 1.一位半加器 A和B异或产生和Sum,与产生进位C 2.一位全加器 将一位半加器集成封装为halfadder元件,使用两个半加器构成一位的全加器 3.4位串行进位加法器 将一位全加器集成封装为Fulladder元件,使用四个构成串行进位加法器

4.超前进位加法器(4位) ⑴AddBlock 产生并行进位链中的ti(即Cthis)和di(即Cpass),以及本位结果Sum ⑵进位链(Cmaker) 四位一组并行进位链,假设与或非门的级延迟时间为1.5ty,与非门的延迟时间为1ty,在di和ti产生之后,只需2.5ty就可产生所有全部进位

⑶超前进位加法器 将以上二者结合起来即可完成,A和B各位作为各个AddBlock的输入,低一位的进位Ci-1作为本位AddBlock的C-1的输入。各个AddBlock输出的C_this和C_pass作为对应的Cmaker的thisi和passi的输入。

二、实验器材 QuartusII仿真软件,实验箱 三、实验结果 1.串行进位加法器结果 2.超前进位加法器结果

四、实验结果分析 1.实验仿真结果显示串行加法器比超前进位加法器快,部分原因应该是电路结构优化 不到位。另外由于计算的位数比较少,超前进位加法链结构较复杂,所以优势没体现出来,反倒运作的更慢一点。当位数增加的时候,超前进位加法器会比串行的更快。 2.波形稳定之前出现上下波动,应该与“竞争冒险”出现的情况类似,门的延迟和路径 的不同导致了信号变化时到达的时间有先有后,因此在最终结果形成前出现了脉冲尖峰和低谷;另外也可能部分原因由于电路结构优化的不到位所致

数电实验报告1

实验一门电路逻辑功能及测试 一、实验目的 1、熟悉门电路逻辑功能。 2、熟悉数字电路学习机及示波器使用方法。 二、实验仪器及材料 1、双踪示波器 2、器件 74LS00 二输入端四与非门2片 74LS20 四输入端双与非门1片 74LS86 二输入端四异或门1片 74LS04 六反相器1片 三、预习要求 1、复习门电路工作原理相应逻辑表达示。 2、熟悉所有集成电路的引线位置及各引线用途。 3、了解双踪示波器使用方法。 四、实验内容 实验前按学习机使用说明先检查学习机是否正常,然后选择实验用的集成电路,按自己设计的实验接线图接好连线,特别注意Vcc及地线不能接错。线接好后经实验指导教师检查无误方可通电。试验中改动接线须先断开电源,接好线后在通电实验。 1、测试门电路逻辑功能。 (1)选用双输入与非门74LS20一只,插入面包板,按图 连接电路,输入端接S1~S4(电平开关输入插口),输 出端接电平显示发光二极管(D1~D8任意一个)。 (2)将电平开关按表1.1置位,分别测出电压及逻辑状态。(表1.1) 输入输出 1 2 3 4 Y 电压(V) H H H H 0 0.11 L H H H 1 4.23 L L H H 1 4.23 L L L H 1 4.23 L L L L 1 4.23

2、异或门逻辑功能测试 (1)选二输入四异或门电路74LS86,按图接线,输入端1﹑2﹑4﹑5接电平开关,输出端A ﹑B ﹑Y 接电平显示发光二极管。 (2)将电平开关按表1.2置位,将结果填入表中。 表 1.2 3、逻辑电路的逻辑关系 (1)选用四二输入与非门74LS00一只,插入面包板,实验电路自拟。将输入输出逻辑关系分别填入表1.3﹑表1.4。 输入 输出 A B Y Y 电压(V ) L L L L 0 0 0 0.16 H L L L 1 0 1 4.18 H H L L 0 0 0 0.17 H H H L 0 1 1 4.18 H H H H 0 0 0 0.17 L H L H 1 1 0.17 输入 输出 A B Y L L 0 L H 1 H L 1 H H 输入 输出 A B Y Z L L 0 0 L H 1 0 H L 1 0 H H 1

FPGA一位全加器设计实验报告

题目:1位全加器的设计 一.实验目的 1.熟悉QUARTUSII软件的使用; 2.熟悉实验硬件平台的使用; 3.掌握利用层次结构描述法设计电路。 二.实验原理 由于一位全加器可由两个一位半加器与一个或门构成,首先设计半加器电路,将其打包为半加器模块;然后在顶层调用半加器模块组成全加器电路;最后将全加器电路编译下载到实验箱,其中ain,bin,cin信号可采用实 验箱上SW0,SW1,SW2键作为输入,并将输 入的信号连接到红色LED管 LEDR0,LEDR1,LEDR2上便于观察,sum,cout 信号采用绿色发光二极管LEDG0,LEDG1来 显示。 三.实验步骤 1.在QUARTUSII软件下创建一工程,工程名为full_adder,芯片名为EP2C35F672C6; 2.新建Verilog语言文件,输入如下半加器Verilog语言源程序; module half_adder(a,b,s,co); input a,b; output s,co; wire s,co; assign co=a & b; assign s=a ^ b; Endmodule 3.保存半加器程序为,进行功能仿真、时序仿真,验证设计的正确性。 其初始值、功能仿真波形和时序仿真波形分别如下所示

4.选择菜单File→Create/Update→Create Symbol Files for current file,创建半加器模块; 5.新建一原理图文件,在原理图中调用半加器、或门模块和输入,输出引脚,按照图1所示连接电路。并将输入ain,bin,cin连接到FPGA的输出端,便于观察。完成后另保存full_adder。 电路图如下 6.对设计进行全编译,锁定引脚,然后分别进行功能与时序仿真,验证全加器的逻辑功能。其初始值、功能仿真波形和时序仿真波形分别如下所示

超前进位加法器设计

湖南师范大学职业技术学院(工学院)实验数据报告单 实验课程:计算机组成原理 实验题目:超前进位加法器设计 实验日期: 2011年 10 月 25 日 专业:计算机科学与技术年级:09级班级:04班姓名:涂小康学号:2009180414 一.实验目的 (1)掌握超前进位加法器的原理及其设计方法。 (2)熟悉CPLD应用设计及EMA软件的使用。 二.实验内容 (1)设计电路原理图. (2)了解加法器的工作原理,掌握超前进位产生电路的设计方法. (3)正确将电路原理图下载到试验箱中. (4)正确通过实验箱连线实现4位二进制数的相加并得到正确结果 三.实验原理 加法器是执行二进制加法运算的逻辑部件,也是CPU运算器的基本逻辑部件(减法可以通过补码相加来实现)。加法器又分半加器和全加器,不考虑低位的进位,只考虑两个二进制数相加,得到和以及向高位进位的加法器叫半加器,而全加器是在半加器的基础上又考虑了低位进来的进位信号。 串行加法器运算速度慢,其根本原因是每一位的结果就要依赖于低位的进位,因而可以通过并行进位的方式来提高效率。只要能设计出专门的电路,使得每一位的进位能够并行地产生而与低位的运算情况无关,就能解决这个问题。可以对加法器进位的逻辑表达式做进一步的推导: C o=0 C i+1=A i B i+A i C i+B i C i=A i B i+(A i+B i)C i 设 G i=A i B i P i=A i+B i 则有: C i+1=g i+p i C i =g i+p i(g i-1+p i-1C i-1) =g i+p i(g i-1+p i-1(g i-2+p i-2C i-2)) … =g i+p i g i-1+p i p i-1g i-2+…+p i p i-1… p1p0+p i p i-1…p1p0C0 由于g i、p i只和A i、B i有关,这样C i=1就只和A i、A i-1、…、A0,B i、B i-1、…、B0及C0有关。所以各位的进位C i、C i-1…、C1就可以并行产生,这种进位就叫超前进位。 根据上面的推导,随着加法器位数的增加,越是高位的进位逻辑电路就会越复杂,逻辑器件使用也就越多。事实上我们可以继续推导进位的逻辑表达式,使得某些基本逻辑单元能够复用,且能照顾到进位位的并行产生。 定义:G i,j=g i+P i g i-1+p i p i-1g i-2+…+p i p i-1…p j+1g j P i,j=p i p i-1…p j+1p j 则有 G i,j=g i P i,j=p i

数电实验实验报告

数字电路实验报告

实验一 组合逻辑电路分析 一.试验用集成电路引脚图 74LS00集成电路 74LS20集成电路 四2输入与非门 双4输入与非门 二.实验内容 1.实验一 自拟表格并记录: 2.实验二 密码锁的开锁条件是:拨对密码,钥匙插入锁眼将电源接通,当两个条件同时满足时,开锁信号为“1”,将锁打开。否则,报警信号为“1”,则接通警铃。试分析密码锁的密码ABCD 是什么? X1 2.5 V A B C D 示灯:灯亮表示“1”,灯灭表示“0” ABCD 按逻辑开关,“1”表示高电平,“0”表示低电平

ABCD 接逻辑电平开关。 最简表达式为:X1=AB ’C ’D 密码为: 1001 A B C D X1 X2 A B C D X1 X2 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 1 0 0 1 1 0 1 0 0 1 0 0 1 1 0 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 三.实验体会: 1.分析组合逻辑电路时,可以通过逻辑表达式,电路图和真值表之间的相互转换来到达实验所要求的目的。 2.这次试验比较简单,熟悉了一些简单的组合逻辑电路和芯片 ,和使用仿真软件来设计和构造逻辑电路来求解。 实验二 组合逻辑实验(一) 半加器和全加器 一.实验目的 1. 熟悉用门电路设计组合电路的原理和方法步骤 二.预习内容 1. 复习用门电路设计组合逻辑电路的原理和方法步骤。 2. 复习二进制数的运算。 3. 用“与非门”设计半加器的逻辑图。 4. 完成用“异或门”、“与或非”门、“与 非”门设计全加器的逻辑图。 5. 完成用“异或”门设计的3变量判奇 电路的原理图。 三.元 件参考 U1A 74LS00D U1B 74LS00D U1C 74LS00D U1D 74LS00D U2A 74LS00D U2B 74LS00D U2C 74LS00D U3A 74LS20D X1 2.5 V X2 2.5 V VCC 5V A B C D

设计示例432位先行进位加法器的设计

设计示例4:32位先行进位加法器的设计 1、功能概述: 先行进位加法器是对普通的全加器进行改良而设计成的并行加法器,主要是针对普通全加器串联时互相进位产生的延迟进行了改良。超前进位加法器是通过增加了一个不是十分复杂的逻辑电路来做到这点的。 设二进制加法器第i位为A i,B i,输出为S i,进位输入为C i,进位输出为C i+1,则有:S i=A i⊕B i⊕C i (1-1) C i+1 =A i * B i+ A i *C i+ B i*C i =A i * B i+(A i+B i)* C i(1-2) 令G i = A i * B i , P i = A i+B i,则C i+1= G i+ P i *C i 当A i和B i都为1时,G i = 1,产生进位C i+1 = 1 当A i和B i有一个为1时,P i = 1,传递进位C i+1= C i 因此G i定义为进位产生信号,P i定义为进位传递信号。G i的优先级比P i高,也就是说:当G i = 1时(当然此时也有P i = 1),无条件产生进位,而不管C i是多少;当G i=0而P i=1时,进位输出为C i,跟C i之前的逻辑有关。 下面推导4位超前进位加法器。设4位加数和被加数为A和B,进位输入为C in,进位输出为C out,对于第i位的进位产生G i = A i·B i ,进位传递P i=A i+B i , i=0,1,2,3。于是这各级进位输出,递归的展开Ci,有: C0 = C in C1=G0 + P0·C0 C2=G1 + P1·C1 = G1 + P1·G0 + P1·P0?C0 C3=G2 + P2·C2 = G2 + P2·G1 + P2·P1·G0 + P2·P1·P0·C0 C4=G3 + P3·C3 = G3 + P3·G2 + P3·P2·G1 + P3·P2·P1·G0 + P3·P2·P1·P0·C0 (1-3) C out=C4 由此可以看出,各级的进位彼此独立产生,只与输入数据Ai、Bi和Cin有关,将各级间的进位级联传播给去掉了,因此减小了进位产生的延迟。每个等式与只有三级延迟的电路对应,第一级延迟对应进位产生信号和进位传递信号,后两级延迟对应上面的积之和。实现上述逻辑表达式(1-3)的电路称为超前进位部件(Carry Lookahead Unit),也称为CLA 部件。通过这种进位方式实现的加法器称为超前进位加法器。因为各个进位是并行产生的,所以是一种并行进位加法器。 从公式(1-3)可知,更多位数的CLA部件只会增加逻辑门的输入端个数,而不会增加门的级数,因此,如果采用超前进位方式实现更多位的加法器,从理论上讲,门延迟不变。但是由于CLA部件中连线数量和输入端个数的增多,使得电路中需要具有大驱动信号和大扇入门,这会大大增加门的延迟,起不到提高电路性能的作用。因此更多位数的加

加法器实验报告

加法器实验报告 篇一:加法器实验报告 实验 __一__ 【实验名称】 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下进行工程开发、调试和仿真。

数电实验报告

数字电子技术实验报告 学院:工程学院 专业:※※※ 姓名: ※※※ 学号: ※※※ 指导教师:※※ 时间: 2013.12.10

目录 实验一 2位二进制乘法器 (1) 一、实验要求: (1) 二、实验原理: (1) 三、实验分析 (1) 四、实验电路(如图1-7): (4) 五、仿真结果: (4) 六、注意事项: (6) 实验二可控加/减法 (7) 一、实验要求: (7) 二、实验原理: (7) 三、实验分析: (7) 四、实验电路: (11) 五、仿真结果: (13) 六、注意事项: (14) 实验三可控乘/除法 (15) 一、实验要求: (15) 二、实验原理: (15) 三、实验分析: (15) 四、实验电路: (19) 五、仿真结果: (20) 六、注意事项: (21) 实验四模拟信号可控乘除法 (22) 一、实验要求: (22) 二、实验原理: (22) 三、实验分析: (24)

四、实验电路 (26) 五、仿真结果: (27) 六、注意事项: (32) 实验五自动控制增益电路 (33) 一、实验要求: (33) 二、实验原理: (33) 三、实验分析: (34) 四、实验电路: (35) 五、仿真结果: (36) 六、注意事项: (39) 参考文献 (40) 总结 (41)

实验一2位二进制乘法器 一、实验要求: 用加法器实现两位二进制数的乘法。 二、实验原理: 设两位二进制数分别为A1A0和B1B0,就跟我们平常进行手工乘法一样,我们需要列乘式,则它们之间的乘法可用如下计算表示(如图1-1): 图1-1 二进制数间乘法图 所以我们如果实现了两个一位二进制的相乘,再利用加法器就可以得出结果,而两个位二进制的乘法即与运算。 三、实验分析 乘法的相乘利用与门实现,比如74LS08,然后将乘出的结果进行相加可以利用加法实现,比如四位加法器74LS283。 74LS08只是含有4个独立的与门,没有什么需要深入分析的。74LS283是快速进位集成4位加法器,所谓快速进位,是指加法运算过程中,各级进位信号同时送到各位全加器的进位输出端。超前进位加法器使每位的进位直接由加数和被加数产生,而无需等待低位的进位信号。这种加法器比串行进位加法器速度快了不少。74LS283是由4个全加器构成的,全加器的结构图如下图1-2: 1位二进制数和 1位二进制数相加 低位来的进位高位进位 图1-2 全加器的结构图

加法器的基本原理实验报告

一、实验目的 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 /SA VE 6、原理图设计输入 元件符号放置通过EDIT_>SYMBOL 插入元件或点击图标 元件复制 元件移动 元件转动 元件删除 管脚命名PIN_NAME 元件之间连线(直接连接,引线连接) 7、保存原理图 8 、编译:顶层文件设置,PROJECT_>Set as Top_Level 开始编译processing_>Start Compilation 编译有两种:全编译包括分析与综合(Analysis&Synthesis)、适配(Fitter)、编程(assembler)时序分析(Classical Timing Analysis)4个环节,而这4个环节各自对应相应菜单命令,可单独发布执行也可以分步执行

四位超前进位加法器

1.课程设计名称 四位超前进位加法器 2.课程设计内容 设计一个四位加法器,要求要有超前进位,减小输出的延迟,采用0.13um 工艺设计。 3.课程设计目的 训练学生综合运用学过的数字集成电路的基本知识,独立设计相对复杂的数字集成电路的能力。 4.课程设计要求 4.1、按设计指导书中要求的格式书写,所有的内容一律打印; 4.2、报告内容包括设计过程、仿真的HSPICE网表,软件仿真的结果及分析、延时的手工计算; 4.3、要有整体电路原理图,仿真的波形图; 4.4、软件仿真必须要有必要的说明;要给出各个输入信号的具体波形和输出信号的测试结果。 4.5、写出对应的HSPICE设计网表,网表仿真结果符合设计要求。把仿真图形附在报告上。 4.6、设输入端的电容为C ,输出端的负载电容为5000C inv,从输入到输出任意找一通 inv 路,优化通路延时,手工计算确定通路中每个门对应的晶体管的尺寸。每组三个同学选择不能为同一通路。此部分的计算参数可采用书中第六章的参数。 4.7、各种器件的具体结构可参考阎石的《数字电子技术基础》一书。不允许有完全一样的报告,对于报告完全相同者,记为不及格。 5.使用软件 软件为HSPICE和COSMOS-SCOPE。 6.课程设计原理 由全加器的真值表可得S i和C i的逻辑表达式:

定义两个中间变量G i和P i: 当A i=B i=1时,G i=1,由C i的表达式可得C i=1,即产生进位,所以G i 称为产生量变。若P i=1,则A i·B i=0,C i=C i-1,即P i=1时,低位的进位能传送到高位的进位输出端,故P i称为传输变量,这两个变量都与进位信号无关。将G i和P i代入S i和C i得: 进而可得各位进位信号的逻辑表达如下: 根据逻辑表达式做出电路图(如图):

加法器及差分放大器项目实验报告

加法器及差分放大器项目实验报告 一、项目内容和要求 (一)、加法器 1、任务目的: (1)掌握运算放大器线性电路的设计方法; (2)理解运算放大器的工作原理; (3)掌握应用仿真软件对运算放大器进行仿真分析的方法。 2、任务内容: 2.1 设计一个反相加法器电路,技术指标如下: (1)电路指标 运算关系:)25(21i i O U U U +-=。 输入阻抗Ω≥Ω≥K R K R i i 5,521。 (2)设计条件 电源电压Ec=±5V ; 负载阻抗Ω=K R L 1.5 (3)测试项目 A :输入信号V U V U i i 5.0,5.021±=±=,测试4种组合下的输出电压; B :输入信号V KHz U V U i i 1.0,1,5.021为正弦波±=信号,测试两种输入组合情况下的输出电 压波形。 C :输入信号V U i 01=,改变2i U 的幅度,测量该加法器的动态范围。 D :输入信号V U i 01=,V U i 1,2为正弦波,改变正弦波的频率,从1kHz 逐渐增加,步长为 2kHz ,测量该加法器的幅频特性。 2.2 设计一个同相加法器电路,技术指标如下: (1)电路指标 运算关系:21i i O U U U +=。 (2)设计条件 电源电压Ec=±5V ; 负载阻抗Ω=K R L 1.5 (3)测试项目 A :输入信号V U V U i i 1,121±=±=,测试4种组合下的输出电压; B :输入信号V KHz U V U i i 1,1,121为正弦波±=信号,测试两种输入组合情况下的输出电压 波形。 (二)、差分放大器 1、任务目的: (1)掌握运算放大器线性电路的设计方法; (2)理解运算放大器的工作原理; (3)掌握应用仿真软件对运算放大器进行仿真分析的方法。 2、任务内容 2.1 设计一个基本运放差分放大器电路,技术指标如下: (1)电路指标 运算关系:)(521i i O U U U --=。 输入阻抗Ω≥Ω≥K R K R i i 5,521。 (2)设计条件

数电实验报告半加全加器

实验二 半加/减器与全加/减器 一、 实验目的: (1) 掌握全加器和半加器的逻辑功能。 (2) 熟悉集成加法器的使用方法。 (3) 了解算术运算电路的结构。 二、 实验设备: 1、 74LS00 (二输入端四与非门) 2、 74LS86 (二输入端四异或门) 3、 数字电路实验箱、导线若干。 Ver 4B 4A 4¥ 3B 3A 3Y 1A IB !Y 2A 2B 2Y GND (74LS86引脚图) 三、 实验原理: 两个二进制数相加,叫做半加,实现半加操作的电路,称为半加器。 A 表示 被加数,B 表示加数,S 表示半加和,Co 表示向高位的进位。 全加器能进行加数、被加数和低位来的信号相加,并给出该位的进位信号以 及和。 四、 实验内容: 用74LS00和74LS86实现半加器、全加器的逻辑电路功能。 (一)半加器、半减器 M=0寸实现半加,M=1时实现半减,真值表如下: (74LS00引脚 )

功能M A B S C 半加00000 00110 01010 01101 半减10000 10111 11010 11100 —s +/- ——co M (半加器图形符号) 2、 ⑴S真值表: 00011110 00110 11001 A ⑵C真值表: 00011110 00000 10101 C 二B(A二M)

(二)全加器、全减器 S CO C^BC i-1 ?(M 十 A )(B 十 C ) 、实验结果 半加器: S 二 AB AB = A 二 B C =B (A 二 M ) 全加器: S = A 二 B - C i-1 G 二GM C 2M CI B +/一

数字电子技术实验报告

实验一组合逻辑电路设计与分析 1.实验目的 (1)学会组合逻辑电路的特点; (2)利用逻辑转换仪对组合逻辑电路进行分析与设计。 2.实验原理 组合逻辑电路是一种重要的数字逻辑电路:特点是任何时刻的输出仅仅取决 于同一时刻输入信号的取值组合。根据电路确定功能,是分析组合逻辑电路的过 程,一般按图 1-1 所示步骤进行分析。 组合逻辑电路逻辑表达式最简表达式真值表确切电路功能 图 1-1组合逻辑电路的分析步骤 根据要求求解电路,是设计组合逻辑电路的过程,一般按图1-2 所示步骤进 行设计。 问题提出真值表逻辑表达式化简变换逻辑图 图 1-2组合逻辑电路的设计步骤 3.实验电路及步骤 (1)利用逻辑转换仪对已知逻辑电路进行分析。 a.按图 1-3 所示连接电路。 XLC1 U1A U2A 74LS136D74LS04D U1C U2C U1B U2B 74LS136D74LS04D B74LS136D74LS04D A 图1-3 待分析的逻辑电路 A b.在逻辑转换仪面板上单击由逻辑电路转换为真值表的按钮和由真值表导出 简化表达式后,得到如图 1-4 所示结果。观察真值表,我们发现:当四个输

入变量 A,B,C,D 中 1 的个数为奇数时,输出为 0,而当四个输入变量A,B,C,D 中1 的个数为偶数时,输出为 1。因此这是一个四位输入信号的奇偶校验电 路。 图 1-4 经分析得到的真值表和表达式 (2)根据要求利用逻辑转换仪进行逻辑电路的设计。 a.问题提出:有一火灾报警系统,设有烟感、温感和紫外线三种类型不同的火灾 探测器。为了防止误报警,只有当其中有两种或两种以上的探测器发出火灾探 测信号时,报警系统才产生报警控制信号,试设计报警控制信号的电路。 b.在逻辑转换仪面板上根据下列分析出真值表如图1-5 所示:由于探测器发出 的火灾探测信号也只有两种可能,一种是高电平( 1),表示有火灾报警;一种是低电平( 0),表示正常无火灾报警。因此,令 A、B、C 分别表示烟感、温感、紫外线三种探测器的探测输出信号,为报警控制电路的输入、令 F 为报 警控制电路的输出。

quarters加法器实验报告

加法器数字逻辑实验报告 一、实验目的 1.熟悉Quartus II软件的基本操作,了解各种设计方法(原理图设计、文本设计、波形设计) 2.用VHDL语言设计一个加法器。 3.用VHDL语言设计串行加法器、并行加法器。 二、实验内容 1、熟悉QuartusⅡ软件的基本操作,了解各种设计输入方法 (原理图设计、文本设计、波形设计) 2、用VHDL语言设计加法器、串行全加器、并行全加器,再利 用波形编辑区进行逻辑功能仿真,以此验证电路的逻辑功能 是否正确,最终在FPGA芯片上下载验证逻辑实现。三、实验原理 1.全加器 用途:实现一位全加操作 逻辑图 真值表 X Y CIN S COUT

0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 VHDL程序 数据流描述: 波形图

2.四位串行加法器逻辑图 波形图

3.74283:4位先行进位全加器(4-Bit Full Adder) 逻辑框图 逻辑功能表 注:1、输入信号和输出信号采用两位对折列表,节省表格占用的空间,如:[A1/A3]对应的列取值相同,结果和值[Σ1/Σ3]对应的运算是Σ1=A1+B1和Σ3=A3+B3。请自行验证一下。 2、C2是低两位相加产生的半进位,C4是高两位相加后产

生的进位输出,C0是低位级加法器向本级加法器的进位输入。四、实验方法与步骤 实验方法: 采用基于FPGA进行数字逻辑电路设计的方法。 采用的软件工具是QuartusII软件仿真平台,采用的硬件平台是Altera EPF10K20TI144_4的FPGA电路板。 实验步骤: 1、建立工程project,并命名顶层文件为JFQ,按照实验箱上 FPGA的芯片名更改编程芯片的设置。操作是点击Assignment/Device,选取芯片的类型。选择“FLEX10K—— EPF10K20TI144_4” 2、编写VHDL源代码。打开QuartusⅡ软件平台,点击File中得 New建立一个VHDL文件。编写的文件名与实体名一致且为JFQ。VHDL如下:

相关主题
文本预览
相关文档 最新文档