计算机组成原理实验 2.2 进位加法器 赖晓铮
进位控制实验 计算机组成原理实验报告
《计算机组成与结构》课程实验报告1计算机科学与信息工程系·2006年编制·二、实验准备1.仔细查线无误后,接通电源。
2.用二进制数码开关KDO ~KD7向DRl 和DR2 寄存器置数,方法:关闭ALU 输出三态门ALUB=1,开启输入三态门SWB=0,输入脉冲T4按手动脉冲发生按钮产生。
如果选择参与操作的两个数据分别为55H 、AAH ,将这两个数存入DR1和DR2的具体操作步骤如下:3.开关ALUB=0,开启输出三态门,开关SWB=1,关闭输入三态门,同时让LDDR1=0,LDDR2=0。
4.如果原来有进位,CY=1,进位灯亮,但需要清零进位标志时,具体操作方 法如下:S3、S2、S1、S0、M 的状态置为0 0 0 0 0,AR 信号置为“0”电平(清零操作时DRl 寄存器中的数应不等于FF )。
按动手动脉冲发生开关,CY=0,即清进位标志。
注:进位标志指示灯CY 亮时表示进位标志为“1”,有进位;进位标志指示灯CY 灭时,表示进位位为“0”,无进位。
数据开关置数 开输入三态门数据存入寄存ALUB=1LDDR1= 0LDDR2=1KD0~KD7数据开关置数 开输入三态门数据存入寄存ALUB=1LDDR1=1LDDR2=0KD0~KD7 010101015.验证带进位运算及进位锁存功能这里有两种情况:进位标志已清零,即CY=0,进位灯灭。
使开关CN=0,再来进行带进位算术运算。
例如步骤(2)参与运算的两个数为55H和AAH,当S3、S2、S1、S0状态为10010,此时输出数据总线显示灯上显示的数据为DRl加DR2再加初始进位位“1”(因CN=0),相加的结果应为ALU=00,并且产生进位,此时按动手动脉冲开关,则进位标志灯亮,表示有进位。
使开关CN=1,当S3、S2、S1、S0状态为10010,则相加的结累ALU=FF,并且不产生进位。
原来有进位,即CY=1,进位灯亮。
此时不考虑CN的状态,再来进行带进位算术运算。
计算机组成原理实验 2.3 比较器(仲裁器) 赖晓铮
●
●
三 路 仲 裁 器 电 路 图
“线与”电路
仲 裁 器 输 入 A 电 行 路 图
仲裁器输入B行和C行电路图
(三)比较器(仲裁器) 实验
思考题:
●
●
●
●
假设仲裁器不仅输出最大值,还要标识最大值所在的输入 端。请参考比较器电路的三色LED灯,在三路仲裁器的基础 上增加三路标志位LED灯,标注最大值所在的输入端。 请在三路仲裁器的基础上,把仲裁电路改为“留小撤大”, 即把三路输入数据中的最小者输出到仲裁总线上显示。 请在数据比较器电路的基础上,增加总线、74LS244缓冲器 和数码管,构造一个双路仲裁器:不仅可以判断两路8位输 入数据的大小,而且输出其中最大者到数码管显示。 除了串行级联,74LS85比较器还可以通过并行级联方式扩 展比较器的位数,原理如后图所示。请参照后图使用 74LS85并行级联的方式构造一个16位数据比较器,并说明 其工作原理。
●
实验步骤:
● 请根据逻辑图和真值表制作
一位和双位比较器电路。 单位比较器
双 位 比 较 器
实验步骤:
● 启动仿真,在八位数据比较器的输入端DSW_A和DSW_B随
机
写入两个相等或不等的8位数据,记录比较器输出的结果 (LED灯显示)。
比较器(仲裁器)实验
实验步骤:
●
请在8位数据比较器电路的基础上,通过74LS85串行级联 的方式构造一个16位数据比较器。并且启动仿真,随机输 入两个16位数据,记录16位数据比较器输出的结果。 启动仿真,在三路仲裁器的输入端DSW_A、DSW_B和DSW_C 随机写入三个相等或不等的8位数据,记录数码管显示的仲 裁总线结果。 请在三路仲裁器电路的基础上,扩充成四路仲裁器。启动 仿真,随机输入四个相等或不等的8位数据,记录数码管显 示的仲裁总线结果。
计算机组成原理2.2 运算方法
乘数/(低位积)
R1
最低位
原码一位乘算法
0 0 F 加 法 器 加运算
R0
0 0 0 0 1
R1
0 1 1
为各寄存器给初值
0 0被 1 乘 数 1 1 0
R2
0 0 0分0 积 0 0 部
R0
移位线路 每位1套
乘 0 1 1 数 1
R1
最低位
原码一位乘算法
0 0 1 1 0 1 F 加 法 器 加运算
1. 移位运算:左移和右移
逻辑移位 算术移位(符号位不变) 2. 移位功能的实现 a.利用寄存器移位
0 1 1 0 0 0 1 1 1 1 01 1 1 10
b.移位器(左移、右移一位、直送)
二、原码一位乘算法
定义:操作数用原码表示,从最低位开 始,
解:因为 [X]补=0.1011 [Y]补=1.0010 0.1 0 1 1 +1.0 0 1 0 1.1 1 0 1
所以 :
[X+Y]补= 1.1101
X+Y = - 0.0011
[例2]:X=0.1011, Y= -0.0010, 求 X-Y。 解:因为 [X]补=0.1011 [-Y]补=0.0010 0.1 0 1 1 所以 : [Y]补=1.1110
Y = - 0.1011
000100 + 001101 010001 加被乘数 0010001111右移 移出位保存 求第四次部分积
再用一步完成2数符号异或求 积的符号, 结果为 -0.10001111
原码一位乘算法
所用逻辑线路框图
F 加 法 器 加运算 被 乘 数
R2
部分积(高位)
R0
移位线路 每位1套
计算机组成原理实验 2.7 时序发生器 赖晓铮
实验内容:
●
设计一个时序发生器,控制红黄绿“交通灯”按照以下 “状态机”循环点亮:绿黄红绿„„红灯、绿灯 和黄灯的亮灯持续时间通过拨码开关独立设置。
【T1】南北向绿灯亮, 倒计时t1秒
Moore状态机
【T2】南北向黄灯亮(闪烁), 倒计时t2秒
【T3】南北向红灯亮, 倒计时t3秒
状态机 (state machine)
实验步骤:
● 启动仿真,手动按钮START一次,使交通灯按照状态机运行。
● 在运行过程中,改变当前状态【TX】对应的拨码开关DSWx,
设置新的计数初始值,观测当前交通灯运行是否受到影响? 什么时候新设置的计数初始值生效?
思考题:
● 请在本实验的基础上,在环形十字路口增加东西向的两组
红黄绿信号灯。四组“交通灯”遵守以下交通规则:“亮灯 周期分成两个阶段,周而复始循环。第一阶段:南北向的绿 灯倒计时t1秒,接着黄灯倒计时t2秒,同时,东西向的红灯 倒计时(t1+t2)秒;第二阶段,南北向的红灯倒计时(t3+t4) 秒,同时,东西向的绿灯倒计时t3秒,接着黄灯倒计时t4 秒”。 上述时间t1~t4的值都可以独立通过拨码开关设置,东西 向和南北向各自有一组数码管,独立显示倒计时过程。请描 述四组“交通灯”的状态机,并设计电路图。
计算机组成原理 实验系列 一、总线与寄存器 二、进位加法器 三、比较器(仲裁器) 四、计数器 五、运算器 六、存储器 七、时序发生器 赖晓铮 博士 华南理工大学 八、微程序控制器 laixz@ 九、硬布线控制器 QQ: 68046508
(七)时序发生器 实验
实验目的:
● ●
理解“状态机”概念,掌握“状态机”思想描述时序系统。 熟悉时序发生器的组成结构和设计方法。
计算机组成原理实验exp_2(运算器 ── 进位控制实验)
实验二运算器──进位控制实验一实验目的(1) 验证带进位控制的算术运算功能发生器的功能;(2) 按指定数据完成几种指定的算术运算。
二实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。
三实验内容进位控制运算器的实验原理如图3所示,在算术逻辑运算实验的基础上增加进位控制部分,其中74181的进位进入一个7474锁存器,其写入是由T4和AR信号控制,T4是脉冲信号,实验时将T4连至STA TE UNIT的微动开关KK2上。
AR是电平控制信号(低电平有效),可用于实现带进位控制实验,而T4脉冲是将本次运算的进位结果锁存到进位锁存器中。
图 3 进位控制实验原理图线四实验步骤(1) 按图4连接实验线路,仔细查线无误后,接通电源。
(2) 用二进制数码开关向DR1和DR2寄存器置数,具体方法:图 4 进位控制实验接线图线① 关闭ALU 输出三态门(ALU-B=1),开启输入三态门(SW-B=0),设置数据开关; ② 例如向DR 1存入01010101,向DR 2存入10101010。
具体操作步骤如下:(3) 关闭输入三态门(SW-B=1),开启ALU 输出三态门(ALU-B=0)。
(4) 进位标志清零具体操作方法如下:实验板中SWITCH UNIT 单元中的CLR 开关为标志CY ,ZI 的清零开关,它为零时是清零状态,所以依次将开关做1→0→1操作,即可使标志位清零。
注:进位标志指示灯CY 亮时表示进位标志为“0”,无进位:标志指示灯CY 灭时表示进位为“1”,有进位.(5) 验证带进位运算及进位锁存功能,使Cn=1,AR=0来进行带进位算术运算。
数据开关 (01010101) 三态门 寄存器DR 1 (01010101) 数据开关寄存器DR 2 (10101010) LDDR 1=1 LDDR 2=0 T4=ALU-B=1 SW-B=0LDDR 1=0 LDDR 2=1 T4= 关寄存器 LDDR 1=0 LDDR 2=0例如:做加法运算,首先向DR1,DR2置数,然后使ALU-B=0,S3S2S1S0M状态为10010,此时数据总线上显示的数据为DR1加DR2加当前进位标志,这个结果是否产生进位,则要按动微动开关KK2,若进位标志灯亮,表示无进位;反之,有进位。
计算机组成原理加法器实验实训报告
计算机组成原理加法器实验实训报告一、实验目的本次实验旨在通过实际操作加法器电路,加深对计算机组成原理中加法器的理解,掌握加法器的工作原理和实验操作技能。
二、实验内容1. 搭建基本加法器电路2. 进行加法器实验3. 分析实验结果并撰写实验报告三、实验器材和工具1. 电路实验箱2. 电源3. 电路连接线4. 示波器5. 多用途数字实验仪6. 逻辑门集成电路四、实验步骤1. 搭建基本加法器电路1) 将逻辑门集成电路插入电路实验箱中2) 连接逻辑门的输入端和输出端3) 接入电源并进行必要的调试2. 进行加法器实验1) 输入两个二进制数,并将其连接到逻辑门输入端2) 观察输出端的变化3) 调节输入信号,验证加法器的正确性和稳定性3. 分析实验结果1) 记录实验数据2) 分析实验结果,对比理论值和实际值的差异3) 总结实验中的经验和问题,并提出改进建议五、实验数据1. 输入数据:A = 1010B = 11012. 输出数据:Sum = xxxCarryout = 1六、实验结果分析通过实验,我们成功搭建了基本加法器电路,并进行了加法器实验。
实验结果表明,加法器能够正确地对两个二进制数进行加法运算,并输出正确的结果。
通过比对理论值和实际值,我们发现存在一定的偏差,可能是由于电路连接不良或逻辑门延迟等因素导致。
在今后的实验中,我们需要注意电路连接质量和信号延迟,以提高实验结果的准确性和稳定性。
七、实验总结通过本次加法器实验,我们加深了对计算机组成原理中加法器的理解,掌握了基本的加法器实验操作技能。
我们也发现了一些问题并提出了改进建议。
在今后的学习和实验中,我们将继续加强对计算机组成原理的学习,不断提升实验操作能力,为今后的科研工作和实际应用打下坚实的基础。
八、参考资料1. 《计算机组成原理》(第五版),唐朔飞,张善民,电子工业出版社2. 《数字逻辑与计算机设计》(第三版),David M. Harris,Sarah L. Harris,清华大学出版社以上是本次计算机组成原理加法器实验实训报告的全部内容,谢谢阅读。
计算机组成原理实验报告(加法运算)
池州学院数学计算机科学系实验报告专业:计算机科学与技术班级:11计本(2)班实验课程:计算机组成原理姓名:惠昊学号:110312210 实验室:硬件实验室同组同学:邓晓煜刘广东时应东于小波黄震朱斌斌钟建强王凤侠王敏实验时间:2013年3月20日指导教师签字:何向荣成绩:基本运算器实验:加法运算一实验目的和要求1.了解运算器的组成结构。
2.掌握运算器的工作原理。
二实验环境PC机一台,TD-CMA 实验系统一套三实验步骤及实验记录(1)按图连接电路,并检查无误。
(2)将时序与操作台单元的开关KK2 置为‘单拍’档, 开关KK1 、KK3 置为‘运行’档。
(3) 打开电源开关,然后按动CON单元的CLR 按钮,将运算器的A、B 和FC、FZ清零。
(4) 用输入开关向暂存器A 置数①拨动CON单元的SD27…SD20 数据开关,形成二进制数,数据显示亮为‘1 ’,灭为‘0 ’。
②置LDA=1,LDB=0,连续按动时序单元的 ST 按钮,产生一个 T4上沿,则将二进制数置入暂存器 A 中,暂存器A 的值通过ALU单元的A7…A0八位 LED 灯显示。
(5) 用输入开关向暂存器B 置数。
①拨动CON单元的SD27…SD20 数据开关,形成二进制数。
②置LDA=0,LDB=1,连续按动时序单元的 ST 按钮,产生一个T4上沿,则将二进制数置入暂存器B 中,暂存器 B 的值通过 ALU单元的B7…B0八位LED 灯显示(6)改变运算器的功能设置,观察运算器的输出。
置ALU_B=0、LDA=0、LDB=0,置 S3、S2、S1、S0为1001 ,运算器作加法运算四实验结果与分析。
计算机系统结构实验 3.1 微程序版CPU 赖晓铮
03H:00000000
04H:11010001 05H:00010100 06H:00001100 07H:01010000 08H:11000001
ADD0_SUB0
09H:00010100
0AH:00001100 0BH:01010000 0CH:00000001
实验步骤(循环结构程序):
1) 单操作数运算指令验证程序SOP_JZ是典型的循环结构程序, 其功能类似于汇编语言的“LOOP”语句,实现了“1+2+„ +9+10”的连续十次相加求和,代码如后页所示。
ADD
汇编助记符 SET R0, 03H (M地址:机器指令) 00H:00110000
01H:00000011 02H:00110100 03H:00110000 04H:00111000 05H:11110000
SET R1, 30H
SET R2, F0H
ADD R0, R1
ADD R2, R1 HLT
JS
OUT R1, PORT0
HLT
0CH:01010100
0DH:00000001
汇编助记符 SET R0, 0
(M地址:机器指令) 00H:00110000 01H:00000000 02H:00110100
SET R1, 0 ADD R0, R1 JC 0CH OUT R0, PORT0 SUB R0, R1 JC 0CH OUT R0, PORT0 HLT
重启过程(跳出“断点”)
1) 时钟信号CLK接开关MANUAL=0, 手动令复位信号端#RESET的状 态“101”变化,即重启完 成,跳出“断点”继续执行 。
注:跳出“断点”后,CPU进入HLT指令的 后续下一条指令的取指周期。
计算机组成原理实验总线和寄存器赖晓铮
件74LS244、74LS273和74LS374旳异同。
【3】寄存器试验
试验环节:
7) 手动拨码开关输入新数据0x55到总线BUS(#SW_BUS= 0)。 此时,新旳数据会冲掉R0寄存器保存旳原有数据0xAA么? 若再令#R0_BUS=0,会出现什么情况?
2) 令#SW_BUS=0,三态门74LS244导通,统计BUS总线上旳数 据,与总线BIN相比较:
BUS_7 BUS_6 BUS_5 BUS_4 BUS_3 BUS_2 BUS_1 BUS_0 BUS总线
单位D触发器:74LS7பைடு நூலகம் 四位D触发器:74LS175
D触发器逻辑功能 表
【2】D触发器试验
试验环节:
1) 令#R0_BUS= #DR_BUS= #SFT_BUS=1,#SW_BUS=0;开启仿 真,经过拨码开关送入总线BUS任意八位二进制数,赋值 74LS194旳输入端D0D1D2D3。按照后页旳逻辑功能表置位 74LS194旳MR、S1、S0 、SL、SR端,观察并统计CLK端上升 沿和下降沿跳变时刻输出端Q0Q1Q2Q3旳状态。
手动拨码开关输入数据到BUS总线,使 74LS175旳D端(即BUS总线旳BUS_0)分 别接高,低电平,观察并记录CLK上升沿
74LS273&374 逻辑功能表
寄存器R0:74LS374 数据缓冲寄存器DR:74LS273
【3】寄存器试验
试验环节:
1) 令#R0_BUS= #DR_BUS= #SFT_BUS=1; #SW_BUS=0,开启仿 真,三态门74LS244导通,手动拨码开关输入数据0xAA 到 总线,观察此时寄存器74LS374和74LS273输出端旳状态。
计算机组成原理实验 2.4 微程序控制器实验
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
DB 00000000B
END
END
END
问题:在写入控制存储器的微指令代码表中,地址[00001]和[00010]
【T2】BUS PC
【T2】BUSPC
【T2】
00000 00001
00001
?
【T1】PCAR,ROMBUS 【T1】
【T2】BUS PC
【T2】
00000
?
【T1】
【T2】
微程序控制器 结构示意图
指令寄存器 IR
OP码
状态条件
…
地址译码
控制存储器
微地址寄存器
地址转移 逻辑
微指令 寄存器
P字段
微操作信号
NOP
ROMIR
HLT
ROMIR
JMP1
ROMIR
JMP2
ROMIR
执行周期
停机
ROMPC
ROMPC
ROMPC
有效的微操作信号
功能
指令流 T1
#OE, AR_CLK(LDAR)
PCAR, ROMBUS
ROMIR T2 #OE, IR_CLK (LDIR), PC_CLK (PC_INC) BUSIR, PC+1
实验步骤(JMP1/JMP2指令):
1) 根据微指令代码表编写下列微程序,编译并生成三个HEX文 件,分别烧写到控制存储器EPROM1、EPROM2及EPROM3(切 记勿写错存储器!)。
【免费下载】计算机组成原理实验 加减法运算器设计
计算机组成原理与汇编语言实验报告实验二: 加减法运算器的设计与实现专业班级:xxxxxxxxxx学号:xxxxxxx 姓名:xxx学号:xxxxxxx 姓名:xxx实验地点:实验时间:实验二加减法运算器的设计一、实验目的1、理解加减法运算器的原理图设计方法2、掌握加减法运算器的VERILOG语言描述方法3、理解超前进位算法的基本原理4、掌握基于模块的多位加减运算器的层次化设计方法5、掌握溢出检测方法和标志线的生成技术6、掌握加减运算器的宏模块设计方法二、实验任务1、用VERILOG设计完成一个4位行波进位的加减法运算器,要求有溢出和进位标志,并封装成模块。
模块的端口描述如下:module lab2_RippleCarry 宽度可定制(默认为4位)的行波进位有符号数的加减法器。
#(parameter WIDTH=4)( input signed [WIDTH-1:0] dataa,input signed [WIDTH-1:0] datab,input add_sub, // if this is 1, add; else subtractinput clk,input cclr,input carry_in, //1 表示有进位或借位output overflow,output carry_out,output reg [WIDTH-1:0] result)2、修改上述运算器的进位算法,设计超前进位无符号加法算法器并封装成模块。
模块的端口描述如下:module lab2_LookaheadCarry // 4位超前进位无符号加法器(input [3:0] a,input [3:0] b,input c0,//carry_ininput clk,input cclr,output reg carry_out,output reg [3:0]sum);3、在上述超前进位加法运算器的基础上,用基于模块的层次化设计方法,完成一个32位的加法运算器,组内超前进位,组间行波进位。
实验二 进位控制实验-报告
·1·沈 阳 工 程 学 院学 生 实 验 报 告实验室名称:计算机组成原理实验室 实验课程名称:计算机组成原理 实验项目名称:进位控制实验 实验日期: 20 年 月 日 班级: 姓名: 学号: 指导教师: 批阅教师: 成绩:一.实验目的1.验证带进位控制的算术运算功能发生器(74LS181)的功能。
2.完成加法和减法算术运算,记录结果并分析进位变化情况。
二.实验设备TDN-CM 计算机组成原理教学实验系统一台,排线若干。
三.实验内容1.实验原理进位控制运算器的实验原理如图2-1所示。
图2-1 进位控制实验原理图图中①~④对应的信号名称分别是①( )、②( )、③( )、④( )。
其中AR 为( )电平有效,LDDR1为( )电平有效。
本次实验在前面的算术逻辑运算实验基础上增加了进位控制部分。
当( )为低电平并且( )为正脉冲信号时,本次74LS181运算结果的进位将写入到74LS74锁存器中,并通过( )指示灯显示。
实验时将T4连至“STATE UNIT ”的微动开关KK2上。
2.实验步骤(1)请将图2-2实验接线图中缺少的接线及信号名称补充完整,仔细查无误后,接通电源。
实验二 进位控制实验·2·图2-2 实验接线图(2)用二进制数码开关向DR1和DR2寄存器置数。
请将操作步骤补充完整。
按照实验一中介绍的方法检验DR1和DR2中存的数是否正确,如果不正确需要( )。
如果正确请将SW-B 置为( ),将LDDR1、LDDR2和ALU-B 均设置为( ),以防止( )。
(3)在开始运算之前,如果进位标志指示灯CY 为灭,表示( )。
此时需要将进位标志( ),具体操作方法是将S3、S2、S1、S0、M 、AR 、LDDR1和LDDR2的状态置为( ),然后按动微动开关( )。
若清零时DR1寄存器中的数为FFH ,则会出现( )的情况。
(4)使Cn=( )、AR=( )、ALU-B=( ),S3 S2 S1 S0 M 状态为( ),来验证带进位加法运算及进位锁存功能。
计算机组成原理实验 2.5 运算器 赖晓铮
2) 启动仿真前,同上述步骤;启动仿真后,令#SW_BUS = 0, 手动拨码开关向锁存器DRA、DRB分别打入两个8位十六进制 有符号数(例如A= + 0x7A,B=-0x75)。再令#SW_BUS=1, #ASLU_OE=0,参照逻辑功能表,改变运算器的控制信号 (S3,S2,S1,S0,M,CN),观察运算器的输出F和标志位CF、SF、 ZF,并填表记录。
五)运算器 实验
思考题:
74LS181运算器可以区分有符号数运算和无符号数运算么? 可以执行无符号数的加法和减法运算么?对于有符号数的运 算,74LS181运算器是补码运算器还是原码运算器? ● 在74LS181运算器的通路中,输入锁存器DRA、DRB的作用是 什么?运算结果输出端连接的74LS244缓冲器的作用又是什 么? 如果去掉上述器件之一,运算器还能正常工作么? ● 当74LS181运算器进行无符号数运算的过程中,运算结果的 标志位SF有无意义?在有符号数运算过程中,标志位CF的含 义是一致的么?如果做两个有符号数加法“A+0”,标志位 CF置位么?如果做两个有符号数减法“A-0”,标志位CF置 位么?在什么情况下有符号数加法会出现标志位CF置位?
计算机组成原理 实验系列 一、总线与寄存器 二、进位加法器 三、比较器(仲裁器) 四、计数器 五、运算器 六、存储器 七、时序发生器 赖晓铮 博士 华南理工大学 八、微程序控制器 laixz@ 九、硬布线控制器 QQ: 68046508
(五)运算器 实验
实验目的:
● 了解算术逻辑运算器(74LS181)的组成和功能。
●
●
掌握基本算术和逻辑运算的实现方法。
实验内容:
●
运用算术逻辑运算器74LS181进行有符号数/无符号数的算 术运算和逻辑运算。
计算机组成原理带进位算术逻辑运算单元alu设计实验
《计算机组成原理》课程实验报告实验名称带进位算术逻辑运算单元ALU设计实验实验序号 2姓名系院专业班级学号实验日期指导教师成绩一、实验目的1、验证带进位控制的算术运算功能发生器的功能;2、按指定数据完成几种指定的算术运算。
二、实验内容与要求在实验4-1的基础上增加进位控制电路,将运算器ALU181的进位位送入D锁存器,由T4和CN控制其写入,在此,T4是由键5产生的脉冲信号,这时,CN的功能是电平控制信号(高电平时,CN有效),控制是否允许将进位信号co加入下一加法周期的最低进位位,从而可实现带进位控制运算。
三、实验设备地点:实验实训中心硬件环境:windows软件环境:quartus四、实验步骤1、根据电路图图4-51和波形图图4-52,首先使键5(控制T4)和键7(控制CN)=0;键8(控制M)和键3(控制A0_B1)=1;连续按键6,使产生9个脉冲,这时数码管8显示9(作加法运算);再用键2,键1输入加数9DH(数码管4/3显示9D);2、按键3=0,再用键2,键1输入被加数E5H(数码管4、3、2、1分别显示加数和被加数);再将键8(M)置0,使ALU作算术运算,这时可以从数码管6,5上看到9DH+E5H=82H(低8位和);③先将键7(CN)置为1(允许锁存ALU的进位),再用键5(T4)产生一个正脉冲,就能将进位锁入D触发器中:数码管7将显示1,表示加法有进位,并被锁;同时可以看到此进位被累加,使数码管6,5=83H。
④置键8=1,在实验系统上作逻辑运算方面的实验,给出相应的仿真波形图;⑤利用带进位控制,控制T4,分别由低到高输入3个8位加数和被加数,计算24位加法:7AC5E9 H+ BD5AF8H = ?最后按照表4-6完成实验,记录实验数据,给出对应仿真波形图。
实验原理图:五、实验结果与分析1.测试数据及结果带进位的控制的ALU 的仿真波形:带进位ALU 实验数据表:选择端 高电平作用数据S3 S2 S1 S0 M=H M=L 算术操作逻辑功能Cn=L (无进位)Cn=H (有进位)0 0 0 0 A F =A F = 1加A F =0 0 0 1 B A F +=B A F += )(B A F +=加10 0 1 0 B A F = B A F +=B A F +=+10 0 1 1 0=F=F 减1(2的补码)0=F0 1 0 0 AB F =B A A F 加=B A A F 加=加10 1 0 1 B F = )(B A F +=加B A)(B A F +=加B A +10 1 1 0 B A F ⊕= B A F 减=1减减B A F =0 1 1 1 B A F = B A F +=1)(减B A F +=1 0 0 0 B A F +=AB A F 加= AB A F 加=加1 1 0 0 1B A F ⊕=B A F 加=B A F 加=加11 0 1 0 B F = AB B A F )加(+=AB B A F 加)(+=加11 0 1 1 AB F = AB F =1减AB F =1 1 0 0 1=F A A F 加=*1加加A A F = 1 1 0 1 B A F += A B A F )加(+= A B A F )加(+=加1 1 1 1 0 B A F += A B A F )加(+=A B A F )加(+=加11 1 1 1A F =A F = 1减A F =移位逻辑运算实验原理图:2.实验中遇到的问题及解决办法 无3.实验中尚未解决的问题,不足之处以及改进设想等 无六、实验成绩。
杭电计组实验2-超前进位加法器设计实验
四、引脚配置(约束文件)
NET "A[3]" LOC = T10;
NET "A[2]" LOC = T9;
NET "A[1]" LOC = V9;
NET "A[0]" LOC = M8;
NET "B[3]" LOC = N8;
NET "B[2]" LOC = U8;
NET "B[1]" LOC = V8;
reg [3:0] A;
reg [3:0] B;
reg Ci;
// Outputs
wire [3:0] F;
wire [4:1] Co;
// Instantiate the Unit Under Test (UUT)
top uut (
.A(A),
.B(B),
.Ci(Ci),
.F(F),
.Co(Co)
(3)将原有的4位超前进位的二进制加法器通过两次级联拼成1个16位的二级逻辑的超前进位加法器即可。
一、实验程序源代码
1.一位全加器模块代码:
module First_M(A,B,Ci,F,Co);
input A,B,Ci;
output F,Co;
wire A,B,Ci,F,Co;
wire S1,S2,S3;
xor XU1(F,A,B,Ci),
XU2(S1,A,B);
and AU1(S2,A,B),
NET "B[0]" LOC = T5;
NET "Ci" LOC = C4;
NET "F[3]" LOC = U16;
计算机组成原理实验报告 进位位控制、通用寄存器判零实验
计算机组成原理实验报告进位位控制、通用寄存器判零实验西华大学数学与计算机学院实验报告课程名称:计算机组成原理年级:2011级实验成绩:指导教师:祝昌宇姓名:蒋俊实验名称:进位位控制、通用寄存器判零实验学号:3128实验日期:2013-12-15一、目的1.熟悉带进位位控制的算术逻辑运算器的组成和硬件电路2.用进位寄存器来实现带进位的左移、右移3.熟悉判零线路二、实验原理(1)进位和判零电路的实验构成进位和判零电路由1片GAL、74LS74和两个LED(CY、ZD)发光管组成。
当有进位时CY发光管亮,ZD发光管亮表示当前通用寄存器的内容为0。
(2)进位控制的原理1.进位电路与通用寄存器、ALU有着非常紧密的关系,算术逻辑单元的进位输出和通用寄存器带进位移动都会影响进位寄存器的结果。
2.若实验者在做算术逻辑实验时,选择了算术运算方式,当ALU的计算结果输出至总线时,在CCK上来一个上升沿,将把74LS181的进位输出位(CN+4)上的值(为了统一进位标识,1表示有进位,0表示无进位),打入进位寄存器(74LS74)中,并且有进位时CY (LED)发光。
3.在进行通用寄存器的数据移位实验时,把CCK和通用寄存器的工作脉冲接在一起,当选择带进位左移时,在工作脉冲下,通用寄存器的最高位将移入进位寄存器中,进位寄存器中的值将移入通用寄存器的最低位。
当进位寄存器中的值为1时,CY(LED)发光,若进位寄存器中的值为0时,CY(LED)灭。
同样在带进位右移时,也会产生这样的结果。
4.通过把通用寄存器中的每一位做“或”运算,当寄存器的每一位为0时,ZD输出0,ZD(LED)发光图1进位控制原理图三、使用环境计算机组成原理实验箱四、实验步骤(一)算术逻辑运算单元带进位位的加法运算实验把RA-IN(8芯的盒型插座)与CPT-B板上二进制开关单元中的J1插座相连(对应二进制开关H16~H23),把RA-OUT(8芯的盒型插座)与数据总线上的DJ2相连。
进位控制实验计算机组成原理实验报告
进位控制实验一、引言计算机组成原理是计算机科学与技术专业中的重要课程之一。
通过学习计算机组成原理,我们可以了解计算机的基本构成和工作原理,并能够实际操作,进行实验验证。
进位控制是计算机组成原理中的一个关键概念,它涉及到二进制的加法运算中的进位规则。
二、实验目的本实验旨在通过编写程序实现进位控制,加深对计算机组成原理中进位控制的理解。
三、实验原理在二进制加法运算中,当两个二进制位相加时,有以下四种可能的情况:1. 0+0=0:没有进位;2. 0+1=1:没有进位;3. 1+0=1:没有进位;4. 1+1=0:产生进位。
进位控制的实质是通过判断两个位相加时是否产生进位,并根据不同的进位情况进行处理。
通常情况下,进位的处理方式有以下两种:1. 进位加1:当两个位相加产生进位时,将进位加1,并与低位相加;2. 进位不变:当两个位相加产生进位时,保持进位的值不变,并与低位相加。
四、实验步骤1. 编写程序:首先,根据计算机组成原理中的进位控制规则,编写程序实现进位控制的功能;2. 输入数据:随机生成两个二进制数,作为加法运算的操作数;3. 进行二进制加法运算:使用编写的程序对两个二进制数进行加法运算,并进行进位控制;4. 输出结果:输出运算结果;五、实验结果经过实验验证,编写的程序能够正确地实现进位控制功能,并输出正确的运算结果。
通过对不同情况下的进位进行处理,程序能够准确地得出正确的进位控制结果。
六、实验总结通过本次实验,我进一步加深了对计算机组成原理中进位控制的理解。
在实验过程中,我发现进位控制在二进制加法运算中起到了重要的作用,能够有效解决进位问题,保证运算结果的正确性。
通过编写程序实现进位控制功能,我不仅掌握了相关的编程技巧,还对计算机组成原理中的进位控制有了更加深入的认识。
七、参考文献[1] 计算机组成原理(第2版),王逢南,高教出版社,2018年。
[2] 计算机组成与设计(第5版),David A. Patterson,John L. Hennessy,机械工业出版社,2014年。
计算机组成原理实验 2.8 微程序控制器 赖晓铮
JMP1_2
汇编助记符 JMP1, 06H HLT NOP/Addr NOP 注释 程序跳转到地址06H执行 06HPC 停机 空/【地址】
空
(M地址:机器指令) 00H:00100000 01H:00000110 02H:11101010 03H:00001010 04H:00000000
NOP
未定义
实验步骤(新指令JMP3):
1) 增加一条二次间接寻址的跳转指令JMP3。请补充微程序流 程图及微指令代码表(新增微指令地址[00011]),实现如 上所示JMP3指令的功能。 JMP3
0110 XX addr1 XX
二次间址:[addr1]=addr2, [addr2]=addr3, addr3PC
09H:00000110
0AH:11111111 0BH:11111111
数 据 通 路 电 路 图
指令
NOP
ROMIR
HLT
ROMIR
JMP1
ROMIR
JMP2
ROMIR
取指周期
停机
ROMPC
ROMPC
执行周期
ROMPC
T1 指令流 ROMIR T2 #OE, IR_CLK (LDIR), PC_CLK (PC_INC) T1 #OE, #LDPC, AR_CLK (LDAR) 数据流 ROMPC T2 #OE, #LDPC, PC_CLK (PC_INC)
计算机组成原理 实验系列 一、总线与寄存器 二、进位加法器 三、比较器(仲裁器) 四、计数器 五、运算器 六、存储器 七、时序发生器 赖晓铮 博士 华南理工大学 八、微程序控制器 laixz@ 九、硬布线控制器 QQ: 68046508
(八)微程序控制器 实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(二)进位加法器 实验
实验目的:
● 了解半加器和全加器的电路结构。
●
●
(二)进位加法器 实验
思考题:
●
请问本实验的运算器是补码运算器。原码运算器还是无符 号数运算器?与串行进位加法器相比,并行进位加法器的优 势是什么?所谓的“并行”在哪里? 本实验中,运算器可以表示的数值范围是多少?请把运算 器电路分别修改为四位无符号数运算器和五位补码运算器 (一位符号位),并分别写出各自新的数值范围。
●
并行进位加法器的进位链
C1=Y0+X0C0 C2=Y1+X1C1 =Y1+X1Y0 +X1X0C0 C3=Y2+X2C2=Y2+X2Y1 +X2X1Y0 +X2X1X0C0 C4=Y3+X3C3=Y3+X3Y2 +X3X2Y1 +X3X2X1Y0 +X3X2X1X0C0
串行 并行
令Yn= An· Bn Xn= (An⊕Bn) 称Yn为4位进位加法链的进位产生函数。 称Xn为4位进位加法链的进位传递函数。
……
Fn-2
F1
F0
Cn B’n-1
FA
Cn-1 B’n-2
FA
Cn-2
C2
B’1 ……… …
FA
C1
FA B’0
C0
M=0加 M=1减
方式控制M Bn-1
An-1
Bn-2
An-2
……
B1
A1
B0
A0
符号位
An-1和Bn-1是符号位,判断溢出:OF = Cn ⊕ Cn-1
串 行 进 位 加 法 器 电 路 图
●
掌握串行进位加法器和并行进位加法器的原理及设计方法。
实验内容:
●
设计拥有共同输入端的4位带符号位串行加法器和并行加法 器,比较两者运算结果。
实验步骤:
● 请根据逻辑图和真值表制作
全加器
半加器和全加器电路。 半加器
(二)进位加法器 实验 电路图
串行进位 运算器原理图
OF Fn-1
[A]补=An-1An-2…A1A0 [B]补=Bn-1Bn-2…B1B0 Fi = Ai⊕ Bi⊕Ci Ci+1=Ai· Bi+(Ai ⊕Bi)· Ci
Cn+1=Yn+XnCn
并行进位加法器 电路图(源自)进位加法器 实验实验步骤:
●
启动仿真,令BUS_[7..4]=0101,BUS_[3..0]=0010,M=0, 记录并比较串行与并行加法器的运算结果,是否溢出?如 果改为BUS_[3..0]=0011,结果如何? 启动仿真,令BUS_[7..4]=0101,BUS_[3..0]=0011,M=1, 记录并比较串行与并行加法器的运算结果,是否溢出?如 果运算器输入改为BUS_[7..4] =0011,BUS_[3..0]=0101, M=1不变,结果如何? 启动仿真,令BUS_[7..4]=1101,BUS_[3..0]=0011,M=0, 记录并比较串行与并行加法器的运算结果。是否溢出?如 果改为M=1,结果如何?