矿大计算机组织与体系结构——实验报告
发布时间:2024-11-12
发布时间:2024-11-12
计算机组织与体系结构
目录
一 基本运算器实验 1 1、实验目的 1 2、实验设备 1
3、实验原理 1 4、实验步骤 2 5、实验体会 4 二 静态随机存储器实验 5 1、实验目的 5 2、实验设备 5 3、实验原理 5 4、实验步骤 6 5、实验体会 7 三 微程序控制器实验 8 1、实验目的 8 2、实验设备 8 3、实验原理 8 4、实验步骤 9 5、实验体会 11
一 基本运算器实验
1 实验目的
(1) 了解运算器的组成结构。 (2) 掌握运算器的工作原理。 2 实验设备
PC 机一台,TD-CMA 实验系统一套。 3 实验原理
本实验的原理如图 1 所示。
运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器 A和暂存器 B,三个部件同时接受来自 A 和B 的数据(有些处理器体系结构把移位运算 器放于算术和逻辑运算部件之前,如 ARM),各部件对操作数进行何种运算由控制信号 S3 S0 和 CN 来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为 ALU的输出。如果是影响进位的运算,还将置进位标志 FC,在运算结果输出前,置 ALU 零标志。ALU 中所有模块 集成在一片 FPGA 中。
逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此 对这两个部件不再赘述。移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现。每一 个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即:
(1) 对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使 用的输出分别相连,而没有同任何输入相连的则输出连接 0。 (2) 对于循环右移功能,右移对角线同互补的左移对角线一起激活。例如,在 4 位矩阵中 使用‘右 1’和‘左 3’对角线来实现右循环 1 位。
(3) 对于未连接的输出位,移位时使用符号扩展或是 0 填充,具体由相应的指令控制。使 用另外的逻辑进行移位总量译码和符号判 (4)实验连线图如图2
实验原理图
1
实验接线图2
4 实验步骤
(1) 按图1-1-5连接实验电路,并检查无误。图中将用户需要连接的信号用圆圈标明。
(2) 将时序与操作台单元的开关KK2置为 单拍 档,开关KK1、KK3置为 运行 档。
(3) 打开电源开关,如果听到有 嘀 报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。然后按动CON单元的CLR按钮,将运算器的A、B和FC、FZ清零。
(4) 用输入开关向暂存器A置数。
① 拨动CON单元的SD27 SD20数据开关,形成二进制数01100101(或其它数值),数据显示亮为 1 ,灭为 0 。
② 置LDA=1,LDB=0,连续按动时序单元的ST按钮,产生一个T4上沿,则将二进制数01100101置入暂存器A中,暂存器A的值通过ALU单元的A7 A0八位LED灯显。 (5) 用输入开关向暂存器B置数。
① 拨动CON单元的SD27 SD20数据开关,形成二进制数10100111(或其它数值)。 ② 置LDA=0,LDB=1,连续按动时序单元的ST按钮,产生一个T4上沿,则将二进制数10100111
置入暂存器B中,暂存器B的值通过ALU单元的B7 B0八位LED灯显示。 (6) 改变运算器的功能设置,观察运算器的输出。置ALU_B=0、LDA=0、LDB=0,然后按表1-1-1置S3、S2、S1、S0和Cn的数值,并观察数据总线LED显示灯显示的结果。如置S3、S2、S1、S0为0010,运算器作逻辑与运算,置S3、S2、S1、S0为1001,运算器作加法运算。
如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测实验结果(软件使用说明请看附录一),方法是:打开软件,选择联机软件的“【实验】—【运算器实验】”,打开运算器实验的数据通路图,如图1-1-6所示。进行上面的手动操作,每按动一次ST按钮,数据通路图会有数据的流动,反映当前运算器所做的操作,或在软件中选择“【调试】—【单节拍】”,其作用相当于将时序单元的状态开关KK2置为 单拍 档后按动了一次ST按钮,数据通路图也会反映当前运算器所做的操作。
重复上述操作,并完成表如下:
5 实验感受
二 1 实验目的
掌握静态随机存储器 RAM 工作特性及数据的读写方法。 2 实验设备
PC 机一台,TD-CMA 实验系统一套。
静态随机存储器实验
3 实验原理
实验所用的静态存储器由一片 6116(2K×8bit)构成(位于 MEM 单元)。 6116 有三个控制线:CS(片选线)、OE(读线)、WE(写线),其功能如表 2-1-1 所示,当片选有效(CS=0)时,OE=0 时进行读操作,WE=0 时进行写操作,本实验将 CS常接地。
由于存储器(MEM)最终是要挂接到 CPU 上,所以其还需要一个读写控制逻辑,使得 CPU 能控制 MEM 的读写,实验中的读写控制逻辑如图 2-1-2 所示,由于 T3 的参与,可以保证 MEM 的写 脉宽与 T3 一致,T3 由时序单元的 TS3 给出。IOM 用来选择是对 I/O 还是对 MEM进行读写操作,RD=1 时为读,WR=1时为写。实验连线图如下图
4 实验步骤
(1) 关闭实验系统电源,按图连接实验电路,并检查无误,图中将用户需要连接的信号用圆圈标明。
(2) 将时序与操作台单元的开关 KK1、KK3 置为运行档、开关 KK2 置为‘单步’档。
(3) 将CON单元的 IOR开关置为 1(使 IN 单元无输出),打开电源开关,如果听到有‘嘀’报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。
(4) 给存储器的 00H、01H、02H、03H、04H 地址单元中分别写入数据 11H、12H、13H、14H、 15H。由前面的存储器实验原理可以看出,由于数据和地址由同一个数据开关给 出,因此数据和地址要分时写入,先写地址,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0),数据开关输出地址(IOR=0),然后打开地址寄存器门控信号(LDAR=1),按动 ST 产生T3 脉冲,即将地址打入到 AR 中。再写数据,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0)和地址寄存器门控信号(LDAR=0),数据开关输出要写入的数据,打开输入三态门(IOR=0),然后使存储器处于写状态(WR=1,RD=0,IOM=0),按动 ST 产生 T3 脉冲,即将数据打入到存储器中。
写存储器流程图
(5) 依次读出第 00、01、02、03、04 号单元中的内容,观察上述各单元中的内容是否与前 面写入的一致。同写操作类似,也要先给出地址,然后进行读,地址的给出和前面一样,而在进行读操作时,应先关闭IN 单元的输出(IOR=1),然后使存储器处于读状态(WR=0,RD=1,IOM=0), 此时数据总线上的数即为从存储器当前地址中读出的数据内容。
读存储器流程图
进行上面的手动操作,每按动一次 ST 按钮,数据通路图会有数据的流动,反映当前存储器所做的操作(即使是对存储器进行读,也应按动一次 ST 按钮,数据通路图才会有数据流动),或在软件中选择“【调试】—【单周期】”,其作用相当于将时序单元的状态开关置为‘单步’档后按动了一次 ST 按钮,数据通路图也会反映当前存储器所做的操作,借助于数据通路图,仔细分析 SRAM 的读写过程。
5 试验体会:
三 微程序控制器实验
1 实验目的
(1) 掌握微程序控制器的组成原理。
(2) 掌握微程序的编制、写入,观察微程序的运行过程。 2 实验设备
PC 机一台,TD-CMA 实验系统一套。 3 实验原理
微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理
控制器是严格按照系统时序来工作的,因而时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地了解时序电路的工作原理,本实验所用的时序由时序单元来提供,分为四拍 TS1、TS2、TS3、TS4。
微程序控制器控制存储器采用 3 片 2816 的E2PROM,具有掉电保护功能,微命令寄存器 18 位,用两片 8D触发器(273)和一片 4D(175)触发器组成。微地址寄存器 6 位,用三片正沿触发的双D触发器(74)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2 时刻打入微地址寄存器的内容即为下一条微指令地址。当T4 时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
微程序控制器组成原理框图
4 实验步骤
(1). 按图 3-2-10 所示连接实验线路,仔细查线无误后接通电源。如果有‘滴’
报警声,说明总线有竞争现象,应关闭电源,检查接线,直到错误排除。 (2). 对微控器进行读写操作,分两种情况:手动读写和联机读写。 1) 手动读写
※ 手动对微控器进行编程(写)
① 将时序与操作台单元的开关 KK1 置为‘停止’档,KK3 置为‘编程’档,KK4 置为‘控存’档,KK5置为‘置数’档。
② 使用 CON 单元的 SD05——SD00 给出微地址,IN 单元给出低 8 位应写入的数据,连续两次按动时序与操作台的开关 ST,将IN 单元的数据写到该单元的低 8 位。
③ 将时序与操作台单元的开关 KK5置为‘加 1’档。
④ IN 单元给出中 8 位应写入的数据,连续两次按动时序与操作台的开关 ST,将IN单元的数据写到该单元的中 8 位。IN 单元给出高 8 位应写入的数据,连续两次按动时序与操作台的开关 ST,将 IN单元的数据写到该单元的高 8 位。
⑤ 重复①、②、③、④四步,将表 3-2-2 的微代码写入 2816芯片中。 ※ 手动对微控器进行校验(读)
① 将时序与操作台单元的开关 KK1 置为‘停止’档,KK3 置为‘校验’档,KK4 置为‘控存’档,KK5置为‘置数’档。
② 使用 CON 单元的 SD05——SD00 给出微地址,连续两次按动时序与操作台的开关 ST,MC单元的指数据指示灯 M7——M0 显示该单元的低 8 位。 ③ 将时序与操作台单元的开关 KK5置为‘加 1’档。
④ 连续两次按动时序与操作台的开关 ST,MC 单元的指数据指示灯 M15——M8 显示该单元的中 8 位,MC 单元的指数据指示灯 M23——M16 显示该单元的高 8 位。
⑤ 重复①、②、③、④四步,完成对微代码的校验。如果校验出微代码写入错误,重新写入、校验,直至确认微指令的输入无误为止。
实验接线图
(3)运行微程序
运行时也分两种情况:本机运行和联机运行。 1) 本机运行
① 将时序与操作台单元的开关KK1、KK3置为 运行 档,按动CON单元的CLR按钮,将微地址寄存器(MAR)清零,同时也将指令寄存器(IR)、ALU单元的暂存器A和暂存器B清零。
② 将时序与操作台单元的开关KK2置为 单拍 档,然后按动ST按钮,体会系统在T1、 T2、T3、T4节拍中各做的工作。T2节拍微控器将后续微地址(下条执行的微指令的地址)打入微地址寄存器,当前微指令打入微指令寄存器,并产生执行部件相应的控制信号;T3、T4节拍根据T2节拍产生的控制信号做出相应的执行动作,如果测试位有效,还要根据机器指令及当前微地址寄存器中的内容进行译码,使微程序转入相应的微地址入口,实现微程序的分支。
③ 按动CON单元的CLR按钮,清微地址寄存器(MAR)等,并将时序与单元的开关KK2置为 单步 档。
④ 置IN单元数据为00100011,按动ST按钮,当MC单元后续微地址显示为000001时,在CON单元的SD27 SD20模拟给出IN指令00100000并继续单步执行,当MC单元后续微地址显示为000001时,说明当前指令已执行完;在CON单元的SD27 SD20给出ADD指令00000000,该指令将会在下个T3被打入指令寄存器(IR),它将R0
中的数据和其自身相加后送R0;接下来在CON单元的SD27 SD20给出OUT指令00110000并继续单步执行,在MC单元后续微地址显示为000001时,观查OUT单元的显示值是否为01000110。 2) 联机运行
联机运行时,进入软件界面,在菜单上选择【实验】-【微控器实验】,打开本实验的数据通路图,也可以通过工具栏上的下拉框打开数据通路图,数据通路图如图3-2-8所示。
将时序与操作台单元的开关KK1、KK3置为 运行 档,按动CON单元的总清开 关后,按动软件中单节拍按钮,当后续微地址(通路图中的MAR)为000001 时,置CON单元SD27 SD20,产生相应的机器指令,该指令将会在下个T3 被打入指令寄存器(IR)在后面的节拍中将执行这条机器指令。仔细观察每条机 器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行 指令的根基。也可以打开微程序流程图,跟踪显示每条机器指令的执行过程。
5 实验感想
上一篇:T6财务业务一体化培训