计算机组成原理实验报告 福建农林大学计算机与信息学院信息工程类实验报告 系: 计算机科学与技术 专业: 计算机科学与技术 年级: 09级 姓名: 张
文绮 学号: 091150022 实验课程: 计算机组成原理 实验室号:___田405
实验设备号: 43 实验时间:2010.12.19 指导教师签字: 成绩: 实验一 算术逻辑运算实验 1.实验目的和要求
1. 熟悉简单运算器的数据传送通路; 2. 验证4位运算功能发生器功能(74ls181)的组合功能。 2.实验原理 计算机组成原理实验报告 实验中所用到的运算器数据通路如图1-1所示。其中运算器由两片74181以并/串形式构成8位字长的alu。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74373)锁存,锁存器的输入连接至数据总线,数据开关input device用来给出参与运算的数据,并经过一个三态门(74245)和数据总线相连,数据显示灯
“bus unit”已和数据总线相连,用来显示数据总线内容。 图1-2中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除t4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至w/r unit的相应时序信号引出端,因此,在进行实验时,只需将w/r unit的t4接至state unit的微动开关kk2的输出端,按动微动开关,即可获得实验所需的单脉冲,而s3,s2,s1,s0,cn,lddr1,lddr2,alu-b,sw-b各电平控制信号用switch unit中的二进制数据开关来模拟,其中cn,
alu-b,sw-b为低电平控制有效,lddr1,lddr2为高电平有效。 计算机组成原理实验报告
3.主要仪器设备(实验用的软硬件环境) zye1603b计算机组成原理教学实验系统一台,排线若干。 4.操作方法与实验步骤 1. 按图1-2连接好实验线路,认真仔细对照接线图,查线无误后,接通电源。 2.用输入单元的二进制数据开关向寄存器dr1和dr2置数,数据开关的内容可以用与开关对应的指示灯来观察,灯亮表示开关量为“1”,灯灭表示开关量为“0”。以向dr1中置入11000001(c1h)
和向dr2中置入01000011(43h)为例,具体操作步骤如下: 首先使各个控制电平的初始状态为:clr=1,lddr1=0,lddr2=0.alu_g=1, sw_g=1,s3 s2 s1 s0 m cn=111111,并将控制台的单元的开关sp05打在“norm”状态,sp03打在“step”状态,
sp04打在“run”状态。然后按下图所示步骤进行。 上面括号中的控制电平变化要按照从上到下的顺序来进行,其中t4的正脉冲使通过按动一次控制台单元的触动开关start来产生的。(形成时钟脉冲信号t4,操作步骤如下:将控制台单元中的两个二进制开关“sp03”设置为“step”状态、“sp04”设置“run”状态,每按动一次触动开关start,则t4输出一个单脉冲。) 置数完成以后,检验dr1和dr2中存的数是否正确,具体操作为:关闭数据输入三态门(sw_g=1),打开alu输出三态门(alu_g=0),使alu单元的输出结果进入总线。当设置s3、s2、s1、s0、m、cn的状态为111111时,data bus单元的指示灯显示dr1中的数;而设置成101011时,data bus单元的指示灯显示dr2中的数,然后将指示灯的显示值与输入的数据进行对比。
3. 验证74ls181的算术运算和逻辑运算功能(采用正逻辑) 计算机组成原理实验报告 74ls181的功能见表1-1,可以通过改变s3 s2 s1 s0 m cn的组合来实现不同的功能,表中“a”和“b”分别表示参与运算的两个数,“+”表示逻辑或,“加”表示算术求和。
表1-1 74ls181功能表 计算机组成原理实验报告 通过前面的操作,我们已经向寄存器dr1写入c1h,dr2写入43h,即a=c1h,b=43h。然后改变运算器的控制电平s3 s2 s1 s0 m cn的组合,观察运算器的输出,填入表1-2中,并
和理论值进行比较、验证74ls181的功能。 5.实验内容及实验数据记录 6.实验数据处理与分析
所得实验数据与74ls181功能表对应无误。所得结果正确。 7.质疑、建议、问题讨论 实验过程中经常会因为粗心把线接错,导致实验结果有误。实验过程中应该仔细认真的
接线并进行检查,才能保证出错率最低。篇二:74181alu设计 算术逻辑单元alu的设计 班 级:计科1201班 学 号:1208030113 姓 名:何志强 设计日期:2014-11-20 西安科技大学计算机科学与技术学院 1. 实验题目 算数逻辑单元alu的设计 2. 实验目的 设计一个简单的算数逻辑单元,并用 verilog实现,得到仿真波形。 3. 实验设备
安装有modelsim和quartus2的pc机一台 4.实验原理 算术逻辑单元alu集成了各种算术运算和逻辑运算部件的功能,包括加、减、乘、除等数值运算、逻辑运算、移位运算等。把这些功能集成在一个逻辑部件alu之中,使得alu具有算术运算和逻辑运算功能。这种设计方法可以使得功能比较紧凑,简化对逻辑运算部件和
算术运算部件的使用。同时还能最大限度的复用某些逻辑部件,从而减少逻辑电路的使用。 设计alu首先要对各种算数逻辑运算进行编码。表1为本文设计的处理器实用的alu功
能编码表。 表1 alu功能编码表 算术逻辑单元alu的实现 算术逻辑单元alu的内部详细设计 算术逻辑单元alu的verilog的实现 module alu181a(s,a,b,f,m,cn,co,fz); input[3:0] s; input[7:0] a,b; input m,cn;
output[7:0] f; output co,fz; wire[7:0] f; wire co; wire[8:0] a9,b9; reg fz; reg[8:0] f9; assign a9={1b0,a}; assign b9={1b0,b}; always @(m or cn or a9 or b9 or s) begin case(s) 4b0000: if(m==0) f9<=a9+cn; else f9<=~a9; 4b0001: if(m==0)
f9<=(a9|b9)+cn; else f9<=(~a9)&b9; 4b0010: if(m==0) f9<=(a9|(~b9))+cn; else f9<=~a9; 4b0011: if(m==0) f9<=9b000000000-cn; else f9<=9b000000000; 4b0100: if(m==0) f9<=a9+(a9&~b9)+cn; else f9<=~(a9&b9); 4b0101: if(m==0) f9<=((a9+b9)+(a9&~b9)+cn); else f9<=~b9; 4b0110: f9<=a9^b9;
4b0111: if(m==0) f9<=a9+(~b9)-cn; else f9<=a9&(~b9); 4b1000: if(m==0) f9<=a9+(a9&b9)+cn; else f9<=(~a9)+b9; 4b1001: if(m==0)
f9<=a9+b9+cn;
else
f9<=~(a9^b9);
4b1010: if(m==0) f9<=a9+(~b9)+(a9&b9)+cn; else f9<=b9; 4b1011: if(m==0) f9<=(a9&b9)+cn; else f9<=(a9&b9); 4b1100: if(m==0)
f9<=a9+a9+cn; else
f9<=9b000000001; if(m==0)
f9<=a9-b9-cn; else篇三:计算机组成原理实验报告 实验报告书 实验名称: 运算器实验 专业班级: 113030102 学 号: 11303010221 姓 名: 王韬 联系电话: 18182204274 指导教师: 徐世军 实验时间: 1、 实验名称:运算器实验
2、 完成学生:王韬,班级:13312, 学号:11303010234 3. 实验日期: 1.实验目的和要求
1. 熟悉简单运算器的数据传送通路; 2. 验证4位运算功能发生器功能(74ls181)的组合功能。 2.实验原理 实验中所用到的运算器数据通路如图1-1所示。其中运算器由两片74181 以并/串形式构成8位字长的alu。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74373)锁存,锁存器的输入连接至数据总线,数据开关input device用来给出参与运算的数据,并经过一个三态门(74245)和数据总线相
连,数据显示灯“bus unit”已和数据总线相连,用来显示数据总线内容。 图1-2中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说 明),其中除t4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至w/r unit的相应时序信号引出端,因此,在进行实验时,只需将w/r unit的t4接至state unit的微动开关kk2的输出端,按动微动开关,即可获得实验所需的单脉冲,而s3,s2,s1,s0,cn,lddr1,lddr2,alu-b,sw-b各电平控制信号用switch unit中的二进制数据开关来模
拟,其中cn,alu-b,sw-b为低电平控制有效,lddr1,lddr2为高电平有效。 3.主要仪器设备(实验用的软硬件环境) zye1603b计算机组成原理教学实验系统一台,排线若干。 4.操作方法与实验步骤 1. 按图连接好实验线路,认真仔细对照接线图,查线无误后,接通电源。 2.用输入单元的二进制数据开关向寄存器dr1和dr2置数,数据开关的内容可以用与开关对应的指示灯来观察,灯亮表示开关量为“1”,灯灭表示开关量为“0”。以向dr1中置入
11000001(c1h)和向dr2中置入01000011(43h)为例,具体操作步骤如下: 首先使各个控制电平的初始状态为:clr=1,lddr1=0,lddr2=0.alu_g=1, sw_g=1,s3 s2 s1 s0 m cn=111111,并将控制台的单元的开关sp05打在“norm”状态,sp03打在“step”状态,
sp04打在“run”状态。然后按下图所示步骤进行。 上面括号中的控制电平变化要按照从上到下的顺序来进行,其中t4的正脉冲使通过按动一次控制台单元的触动开关start来产生的。(形成时钟脉冲信号t4,操作步骤如下:将控制
台单元中的两个二进制开关“sp03”设置为“step” 状态、“sp04”设置“run”状态,每按动一次触动开关start,则t4输出一个单脉冲。)
置数完成以后,检验dr1和dr2中存的数是否正确,具体操作为:关闭数据输入三态门(sw_g=1),打开alu输出三态门(alu_g=0),使alu单元的输出结果进入总线。当设置s3、s2、s1、s0、m、cn的状态为111111时,data bus单元的指示灯显示dr1中的数;而设置成101011时,data bus单元的指示灯显示dr2中的数,然后将指示灯的显示值与输入的数据进行对比。
3. 验证74ls181的算术运算和逻辑运算功能(采用正逻辑) 74ls181的功能见表1-1,可以通过改变s3 s2 s1 s0 m cn的组合来实现不同的功能,表中“a”和“b”分别表示参与运算的两个数,“+”表示逻辑或,“加”表示算术求和。 表1-1 74ls181功能表 篇四:运算器 实验报告 计算机科学与技术系
实 验 报 告 专业名称 计算机科学与技术 课程名称 计算机组成与结构
项目名称 基本运算器实验 班 级 学 号 姓 名 同组人员 无
实验日期 2015-11-1 一、实验目的
1.了解运算器的组成结构; 2.掌握运算器的工作原理。 二、实验逻辑原理图与分析 2.1 实验逻辑原理图及分析 运算器内部含有三个独立运算部件,分别是算术、逻辑和移位运算部件,要处理的数据存于暂存器a和暂存器b,三部件同时接受来自a和b的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如arm),各部件对操作数进行何种运算由控制信号s3?s0和cn来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为alu的输出。如果是影响进位的运算,还将置进位标志fc,在运算结果输出前,置alu零标志。alu中所有模
块集成在一片cpld中。 逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不在赘述。移位运算采用的是桶形移位器,一般采用交叉开关矩形来实现。每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可以实现移位功能,即: ⑴ 对于逻辑左移或者逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所
使用的输出分别相连。而没有同任何输入相连的则输出连接0. ⑵ 对于循环右移功能,右移对角线同互补的左移对角线一起激活。 ⑶ 对于未连接的输出位,移位时使用符号扩展或者是0填充,具体由相应的指令控制,使用另外的逻辑进位移
位总量译码和符号判别, 运算器部件由一片cpld实现。alu的输入和输出通过三态门74ls245连到cpu内总线上,另外还有指示灯表明进位标志fc。图中除t4和clr,其余信号均来自于alu单元的排线座,实验箱中所有单元的t1、t2、t3、t4都连接至控制总线单元的t1、t2、t3、t4,clr都连接至con单元的clr按钮。t4由时序单元的ts4提供,其余控制线号均由con单元的二进制数据开关模拟给出。控制信号中除t4为脉冲信号外,其余均为电平信号,其中alu_b为低有效,
其余为高有效。 运算器原理图 暂存器a和暂存器b的数据能在led灯上实时显示,原理如图所示。进位标志fc、零标
志fz和数据总线d7?d0的显示原理也是如此。 alu和外围电路的连接如图所示,图中的小方框代表排针座。 在运算器的逻辑功能表中,s3、s2、s1、s0及cn为控制信号,fc为进位标志,fz为运
算器零标志,在功能栏内的fc、fz表示当前运算会影响到该标志。 三、 数据通路图及分析 (画出数据通路图并作出分析) 如果实验箱和pc联机操作,则可通过软件中的数据通路图来观测实验结果。操作过程为:打开软件,选择联机软件的“实验——运算器实验”,打开运算器实验的数据通路图,如下图所示。进行手动操作,每按动一次st按钮,数据通路图会有数据的流动,反应当前运算器所做的操作或在软件中选择“调试——单节拍”,其作用相当于将时序单元的状态开关kk2置为’
单拍’档后按动了一次st按钮,数据通路图也会反应当前运算器所做的操作。 数据通路图 四、实验数据和结果分析
4.1 实验结果数据和结果数据分析如图所示 ⑴将两个数的值置入暂存器中a和b中 ⑵逻辑运算:置alu_b=0,lda=0,ldb=0,s3、s2、s1、s0=0010,做与运算: 置alu_b=0,lda=0,ldb=0,s3、s2、s1、s0=0011,做a+b运算:篇五:计算机组成原
理实验报告 计算机组织与体系结构
课程设计报告 ? 题 目 ? 学 号 ? 姓 名 ? 指导老师 摘要:本文主要介绍了利用微程序设计控制器的指令系统的过程,指令系 统中包过in(读数),add(加),sta(存数)并,out(存数),jmp(跳转),rr(右环移), rrc(带进位右环移),rl(左环移),rlc(带进位左环移),set(置1)10条机器指令。
并详细介绍了置1操作的实现过程。最后就本实验遇到的问题和处理方法进行了总结。 1. 设计思路 实现指令系统,从较小的方面来说就是实现一些基本操作的机器指令,从更小的方面来
说就是写出实现机器指令的微程序。下面给出实现指令系统的步骤: 1. 设计指令系统
2.根据数据通路框图画出流程图 3. 根据流程图和数据通路框图写出微指令 4. 将二进制的微指令转换成十六进制
5. 根据指令编号编写测试程序 6. 实验箱连线,验证指令的正确性 下面给出本次实验的数据通路图 74299芯片可以实现对数据的左环移,右环移,带进位左环移,带进位右环移 74181 alu可以根据m和cn做逻辑运算和算术运算,根据s3s2s1s0的不同组合 做不同的算术和逻辑运
算。dr1,dr2分别为运算器的两个输入端。 r0:寄存器
pc:为程序计数器 ar:地址寄存器 ir: 指令寄存器,取指周期中存放从内存读出的指令 ram:内存,用存储指令和数据 input: 对应于试验箱上的k7~k0为,用于输入数据 output:输出数据 2. 设计指令系统
本实验共实现10条机器指令分别为: 3. 画出流程图 指令系统中的所有指令有一个公共的微指令:取指微指令,当取出微指令的时候通过判
别测试字段判断指令的类型并决定程序是否需要跳转。
下面给出本实验完成的指令系统的每条机器指令的流程图 图 2 为说明流程图的实现过程,下面再添加置1指令set 画出set 图 3 由于判别测试字段跳转的下一条指令编码需要连续,所以将流程图的第一个微指令编码设置成为31,相应的把原来编码为31的微指令改成45。图 3的第二个微指令设置成46,第
三个微指令设置成47。47指令结束后应返回到取指指令01。 为了写出二进制微指令,还需要知道微指令的格式。 s3s2s1s0: alu运算的控制位 m: m=1 alu进行的是逻辑运算,m=0 alu进行算术运算 cn: 低位向本位的进位 we:w/r信号对 ram 和 out 进行写操作,高电平为写有效。 a9a8:对外部设备(ram,output,input)地址进行译码 a9a8=00 时,input(即 swb)选中; a9a8=01 时,ram(即
ce)选中; a9a8=10 时,output(即 ledb)选中, a9a8=11 时,外部设备都不选中。 表3 a字段 b字段 c字段 ab c三个译码字段分别由三组译码控制电路译码产生各控制信号。