八位运算器实验报告

合集下载

八位加法器的设计实验报告

八位加法器的设计实验报告

八位加法器的设计实验报告学号: U200915272班级:信息安全 0901姓名:方浏洋日期: 2011-5-2目录一、实验概述 ....................................................................................................................... - 2 -二、设计思路 ....................................................................................................................... - 3 -2.1 QuartusⅡ中74181的功能分析 ....................................................................... - 3 -2.2 8位先行加法器的设计 ...................................................................................... - 3 -2.3 8位行波进位加法器的设计 .............................................................................. - 4 -三、实验内容 ....................................................................................................................... - 5 -3.1 8位先行加法器 .................................................................................................. - 5 -3.2 8位行波加法器 .................................................................................................. - 7 -3.3 对先行进位和行波进位的时序分析 ................................................................. - 9 -四、心得体会 ..................................................................................................................... - 11 -- 1 -一、实验概述利用EDA软件分别设计一个先行进位和行波进位的8位加法器,分别对它们进行时序分析,比较先行进位和行波进位在时间上的差异。

计算机组成原理实验报告

计算机组成原理实验报告

计算机组成原理实验报告实验报告运算器实验⼀、实验⽬的掌握⼋位运算器的数据传输格式,验证运算功能发⽣器及进位控制的组合功能。

⼆、实验要求完成算术、逻辑、移位运算实验,熟悉ALU运算控制位的运⽤。

三、实验原理实验中所⽤的运算器数据通路如图2-3-1所⽰。

ALU运算器由CPLD描述。

运算器的输出FUN经过74LS245三态门与数据总线相连,运算源寄存器A和暂存器B的数据输⼊端分别由2个74LS574锁存器锁存,锁存器的输⼊端与数据总线相连,准双向I/O 输⼊输出端⼝⽤来给出参与运算的数据,经2⽚74LS245三态门与数据总线相连。

图2-3-1运算器数据通路图中A WR、BWR在“搭接态”由实验连接对应的⼆进制开关控制,“0”有效,通过【单拍】按钮产⽣的脉冲把总线上的数据打⼊,实现运算源寄存器A、暂存器B的写⼊操作。

四、运算器功能编码算术运算逻辑运算K23~K0置“1”,灭M23~M0控位显⽰灯。

然后按下表要求“搭接”部件控制路。

表2.3.2 运算实验电路搭接表算术运算1.运算源寄存器写流程通过I/O单元“S7~S0”开关向累加器A和暂存器B置数,具体操作步骤如下:2.运算源寄存器读流程关闭A、B写使能,令K18=K17=“1”,按下流程分别读A、B。

3.加法与减法运算令M S2 S1 S0(K15 K13~K11=0100),为算术加,FUN及总线单元显⽰A+B的结果令M S2 S1 S0(K15 K13~K11=0101),为算术减,FUN及总线单元显⽰A-B的结果。

逻辑运算1.运算源寄存器写流程通过“I/O输⼊输出单元”开关向寄存器A和B置数,具体操作步骤如下:2.运算源寄存器读流程关闭A、B写使能,令K17= K18=1,按下流程分别读A、B。

①若运算控制位设为(M S2 S1 S0=1111)则F=A,即A内容送到数据总线。

②若运算控制位设为(M S2 S1 S0=1000)则F=B,即B内容送到数据总线。

计算机组成原理实验三运算器

计算机组成原理实验三运算器

实验三:八位运算器组成实验一:实验目的:1:掌握运算器的组成原理、工作原理;2:了解总线数据传输结构;3:熟悉简单的运算器的数据通路与控制信号的关系;4:完成给定数据的算术操作、逻辑操作;二:实验条件:1:PC机一台;2:MAX+PLUSⅡ软件;三:实验内容(一)1:所用到的芯片74181:四位算术逻辑运算单元;74244:收发器(双向的三态缓冲器)74273:八位D触发器;74374:八位D锁存器;74163:八进制计数器;7449:七段译码器2:实验电路图(1)运算器电路图(A)数据输入电路由两个十六进制计数器连接成16*16=256进制的计数器,可以实现八位的输入。

(B)运算功能选择电路由一个十六进制计数器组成,可以实现16种不同运算的选择。

再加上逻辑运算器上的M位和Cn位的选择,一共可以实现16*3=48种运算功能。

内部由一个74163构成。

内部结构:(C)数码管扫描显示电路由一个扫描电路scan和一个七段译码器7449组成,scan 内部是一个二选一的多路复用器。

scan内部结构:(D)运算器电路图(2)波形仿真图(A)输入两个数A=05H,B=0AH,O5H DR1,0AH DR2,并通过经由74181在总线上显示。

(B )对两个数进行各种数学运算和逻辑运算。

加法运算:输出控制:s4s3s2s1=0001,M=0,CN=0 输出使能:ALU_BUS=0 计算结果:05H+0AH=10H四:实验内容(二)给定A,B两个数,设A=05H,B=0AH,完成几种常见的算术运算和逻辑运算画出运算的波形和仿真图(1)逻辑运算:A and B,A or B,取反/A,A⊙B,A⊕B;(2)算术运算:A加B,A加B(带进位),A减B;(3)复合运算:A加B 减((/A)〃B)加B;(/(A⊙B)减(A⊕B)))加1计算(A加B)减((/A)〃B)后需要重新送入数据B,存入R5并且装载到LDDR2中。

八位加法器设计实验报告

八位加法器设计实验报告

实验四: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;endmodule2)编译成功的全加器程序: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);endmodule3)编译成功的八位加法器程序: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_adderu0(.ain(ain[0]),.bin(bin[0]),.cin(cin),.sum(sum[0]),.cout(cout0));f_adderu1(.ain(ain[1]),.bin(bin[1]),.cin(cout0),.sum(sum[1]),.cout(cout1)); f_adderu2(.ain(ain[2]),.bin(bin[2]),.cin(cout1),.sum(sum[2]),.cout(cout2)); f_adderu3(.ain(ain[3]),.bin(bin[3]),.cin(cout2),.sum(sum[3]),.cout(cout3)); f_adderu4(.ain(ain[4]),.bin(bin[4]),.cin(cout3),.sum(sum[4]),.cout(cout4)); f_adderu5(.ain(ain[5]),.bin(bin[5]),.cin(cout4),.sum(sum[5]),.cout(cout5)); f_adderu6(.ain(ain[6]),.bin(bin[6]),.cin(cout5),.sum(sum[6]),.cout(cout6));f_adderu7(.ain(ain[7]),.bin(bin[7]),.cin(cout6),.sum(sum[7]),.cout(cout)); endmodule4)八位加法器仿真程序:module f_adder8_vlg_tst();// constants// general purpose registers//reg eachvec;// test vector input registersreg [7:0] ain;reg [7:0] bin;reg cin;// wireswire cout;wire [7:0] sum;// assign statements (if any)f_adder8 i1 (// port map - connection between master ports and signals/registers.ain(ain),.bin(bin),.cin(cin),.cout(cout),.sum(sum));initialbeginain=10;bin=11;cin=0;#100 ain=10;bin=10;cin=0;#100 ain=10;bin=10;cin=1;#100 ain=12;bin=18;cin=0;#100 ain=12;bin=18;cin=1;#100 $stop;endendmodule5)八位加法器仿真图:6)元件原理图及元件入库:半加器原理图:文件入库bsf:全加器原理图:全加器元件入库:八位全加器rtl图:八位全加器仿真图:如有侵权请联系告知删除,感谢你们的配合!。

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

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

计算机科学与技术学院计算机组成原理实验报告书实验名称八位补码加/减法器的设计与实现班级学号姓名指导教师日期成绩实验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的要求,填写下表,以记录各控制信号的值及时序关系。

表中的序号表示各控制信号之间的时序关系。

要求一个控制任务填一张表,并可用文字对有关内容进行说明。

序号nsw-busnR0-BUSLDR0LDR1LDR2mnalu-busIN7~INBUS7~BUS0 ⑤实验体会与小结。

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

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 八位算术逻辑运算
一、实验目的和要求
1、掌握运算器的基本组成结构;
2、掌握运算器的工作原理。

二、实验原理图
实验采用的运算器数据通路如图1-1所示,其中74HC18是4位算数逻辑运算单元,本实验采用2片构成8位的算数逻辑运算单元。

两个操作数从最下面的8个乒乓开关输入,分别锁存在两个锁存器74273中,分别作为ALU的两个操作数。

74HC18有16种算数逻辑运算,控制端由S3、S2、S1、S0控制,在电路中由SWS3、SWS2、SWS1、SWS0四个开关控制。

M=1,逻辑运算,M=0算数运算,CN为进位位。

运算的结果显示在上方的8个LED灯。

图1-1运算器原理图
逻辑功能表如表1-1所示。

表5-1 ALU逻辑功能表
三、实验要求完成: 1、实验要求
(1)在暂存器A 中设置操作数A=65H ;在暂存器B 中设置操作数B=A7H 。

(2)通过对ALU 操作控制端S3、S2、S1、S0、CN 、M 的设置,完成两个操作数的算术、逻辑运算,并将运算结果填入表1-2中。

最后将运算结果同74HC181逻辑功能表(表1-1)对比分析,判断运算结果是否正确。


、实验数据记录
验证74HC181的逻辑功能,将运算结果记录在表1-2中。

六、实验结果分析
1、对比分析表1-1和表1-2,判断运算结果是否正确,并分析原因。

2、暂存器A置数完成后,如果操作控制信号 wA仍保持有效电平(wA=0),在对暂存器B置数时会出现什么情况?。

运算器实验实验报告(计算机组成原理)

运算器实验实验报告(计算机组成原理)

运算器实验实验报告(计算机组成原理)西安财经学院信息学院《计算机组成原理》实验报告实验名称运算器实验实验室实验楼 418实验日期第一部分8 位算术逻辑运算实验一、实验目的 1、掌握算术逻辑运算器单元 ALU(74LS181)的工作原理。

2、掌握简单运算器的数据传送通路组成原理。

3、验证算术逻辑运算功能发生器 74LSl8l 的组合功能。

4、按给定数据,完成实验指导书中的算术/逻辑运算。

二、实验内容 1 、实验原理实验中所用的运算器数据通路如图 1-1 所示。

其中运算器由两片 74LS181以并/串形成 8 位字长的 ALU 构成。

运算器的输出经过一个三态门 74LS245(U33)到内部数据总线 BUSD0~D7 插座 BUS1~2 中的任一个(跳线器JA3 为高阻时为不接通),内部数据总线通过 LZD0~LZD7 显示灯显示;运算器的两个数据输入端分别由二个锁存器 74LS273(U29、U30)锁存,两个锁存器的输入并联后连至内部总线BUS,实验时通过 8 芯排线连至外部数据总线 E_D0~D7 插座E_J1~E_J3 中的任一个;参与运算的数据来自于 8 位数据开并KD0~KD7,并经过一三态门 74LS245(U51)直接连至外部数据总线 E_D0~E_D7,通过数据开关输入的数据由 LD0~LD7 显示。

图 1-1 中算术逻辑运算功能发生器 74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M 并行相连后连至 6 位功能开关,以手动方式用二进制开关 S3、S2、S1、S0、CN、M 来模拟74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信号 LDDR1、LDDR2、ALUB`、SWB`以手动方式用二进制开关 LDDR1、LDDR2、ALUB、SWB 来模拟,这几个信号姓名学号班级年级指导教师李芳有自动和手动两种方式产生,通过跳线器切换,其中ALUB`、SWB`为低电平有效,LDDR1、LDDR2 为高电平有效。

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

《组成原理》实验报告
姓名:***____________
专业:网络工程________
学号:**********______
日期:2014年11月25日
实验一:8位运算器的设计
1,设计目的:
1)学习并练习verilog语言
2)了解8位加法器实现原理
2,设计目标:
1)使用verilog语言编写8为运算器并进行仿真模拟3,模块设计规格及输入输出端变量说明
1)3模块设计规格及输入输出端变量说明:
输入:[2:0]s(操作指令), LDA,LDB(输入控制), [7:0]IN(输入数);
输出:[7:0]A,B(操作数), ALU(结果寄存器),
FZ(判零), FC(进位);
2)操作指令表:
4,程序原理连接图
5,程序代码
Module test (T4,s,A,B,LDA,LDB,FZ,FC,IN,ALU);
input [2:0] s;
input LDA,LDB,T4;
input [7:0] IN;
output [7:0] A,B,ALU;
output FZ,FC;
reg [7:0] A,B,ALU;
reg FZ,FC;
/*
* 输入模块,当clk上升沿时,如果LDA为1,则把IN的值给A,否则赋给B */
always @ (posedge CLK)
begin
if(LDA==1'b1)
begin
A<=IN;
end
else if(LDB==1'b1)
begin
B<=IN;
end
end
/*
*计算模块,根据操作数s的不同值为A和B进行八种不同的计算,其中当A+B *进行加法计算时,把进位值赋给FC
*/
always @ (s[2] or s[1] or s[0])
begin
case ({s[2],s[1],s[0]})
3'b000:ALU<=A;//直接赋值
3'b001:ALU<=A&B;//A与B按位与
3'b010:ALU<=A|B;//A与B按位或
3'b011:ALU<=~A;//非A
3'b100:ALU<=(A<<1);//A左移一位
3'b101:{FC,ALU}<=A+B;//ALU=A+B,FC为A+B的进位
3'b110:ALU<=A+1;//加一操作
3'b111:ALU<=A-1;//减一操作
endcase
end
/*
*该模块的作用是判断ALU是否为,若是FZ赋为1
*/
always @ (negedge T4)
begin
if(ALU==8'b00000000)
FZ<=1'b1;
else
FZ<=1'b0;
end
endmodule
6时序仿真图:。

相关文档
最新文档