




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机组成原理与接口技术实验实 验 报 告实 验 人:郑熙霖 学 号:09388334 日 期:2011-04-10 院(系):软件学院 专业(班级):09软件工程(数字媒体技术) 实验题目:tec-2实验计算机运算器实验 一. 实验目的1 了解和掌握am2901运算器的组成结构和工作原理2 认识和掌握tec-2机运算器的组成和工作原理3 了解和掌握tec-2机运算器相关控制信号的含义和使用方法4 了解和掌握运算器的进位时间的测试方法,及进一步掌握双踪示波器的使用方法。二. 实验原理(一)概述运算器部件是计算器五大功能部件中的数据加工部件。运算器的首要功能是完成对数据的算术和逻辑运算,由算术逻辑运算部件(alu)实现,它在给出运算结果的同时,还给出运算结果的标志,如溢出否、进位否、结果为零否和符号正负等,这些标志都保存在一个状态寄存器中。运算器的第二项功能,是暂存将参加运算的数据和中间结果,由其内部的一组寄存器来承担。因为这些寄存器可以被汇编程序直接访问与使用,因此将他们称为通用寄存器,以区别于那些计算机内部设置的、不能为汇编程序员访问的专用寄存器。为了用硬件线路完成乘除指令运算,运算器内一般还有一个能自行左右移位的专用寄存器,称为乘商寄存器。tec-2试验机的运算核心组成部分是am2901。am2901芯片是一个4位的位片结构的完整的运算器部件。(二)am2901运算器1 am2901芯片内部组成结构图i am2901内部结构图 4 位的alu,实现实种运算功能,其每一位上的2个输入端数据分别用r和s表示,则这8种功能是r+s,s-r,r-s 3种算术运算和r s, r s, /r s, r s,/(r s)5咱逻辑运算,这8种功能的选择控制,是用外部送入的3位编码值i5i3实现的。alu还能给出cn+4,f,ovr和f = 0000 4位状态信息,并能接收最低位的一个进位输入信号cn。alu还给出了超前进位信号/g和/p。 16个4位的通用寄存器组,用r0-r15表示,和1个4位的q寄存器。通用寄存器组为双端口读出(用a地址与b地址选取择每个寄存器)和单端口(用b地址选取择)控制写入的运行方式,而且运算后的结果经一个移位器实现写入(左移,不移,右移)。q寄存器本身具有左移,右移功能且能接收alu的运算结果,左右移位时,就有移出,移入信号ram3,ram0,q3,q0, 4个入号,它们都通过具有双向传送功能的三态门实现的。 该芯片能接收外部送入的4位数据d3-d0,并输出奇制胜们的数据y3-y0。y3-y0可以是通用寄存器a端口上的输出或alu的运算结果f,并还受输出允许控制信号/oe的控制,仅在/oe为低时,y3-y0才有输出,否则处于高阻态。 从图上可以看到,alu的两个输入端r和s分别可以接收d输入,a端口或逻辑0数据,和a端口,b端口,q寄存器或逻辑0数据,am2901器件只选取用了它们可能的全部12种组合中的8种,即a-q,a-b,0-q,0-b,0-a,d-a,d-q,和d-0这8种,并用外部送来的3位控制码i2-i0来选择这是种组合。 am2901还采用另外来货位外部送来的控制信号i8-i6,一是选择向外部送出的数据的来源(a口数据还是alu运算结果),二是选择其内部的通用寄存器组和q寄存器接收不接收和如何接收数据库写入(左移,右移,直送)。 通用寄存器组通过a端口,b端口读出内容的输出处均有锁存器线路支持,以保证在执行诸如a+b结果送b运算时操作的正确性。2 am2901的操作时序am2901芯片要用一个clk(cp)时钟信号作为芯片内通用寄存器、锁存器和q寄存器的打入信号。其有关规定如图ii所示。图ii am2901的时钟信号的作用3 am2901芯片的控制信号及其控制码与操作am2901芯片的控制信号有9个,即i8-i0,这回个控制信号分成三组,它们是:i8、i7、i6(b30-28):选择运算结果或有关数据以何种方式送往何处;i5、i4、i3(b26-24):选择alu的运算功能,共8种;i2、i1、i0(b22-20):选择送入alu进行运算的两个操作数据r和s来源,共有8种组合。这三组控制信号与相应控制码的关系如下表:表iii am2901 9个控制信号i8i0控制码i8、i7、i6i5、i4、i3i2、i1、i00 0 0fqfr + saq0 0 1无fs rab0 1 0fbar s0q0 1 1fbfr s0b1 0 0f/2bq/2qfr s0a1 0 1f/2bf/r sda1 1 02fb2qqfr sdq1 1 12fbfr sd0寄存器结果选择y输出选择运算功能选择rs注:r、s中的“0”为逻辑0。4 tec-2机运算器(1) tec-2机运算器主体构造由4片am2901 芯片级联构成tec-2机的运算器,4片间的连接关系是:(1)16位的数据 输入由4片各自的d3-d0组成,其位序号人高位芯片向低位芯片顺序排成d15-d0(2)16位的数据 输出由4片各自的y3-y0组成,其位序号人高位芯片向低位芯片顺序排成y15-y0.(3)有高低位进位关系的3组信号,在高低位相邻芯片间连接关系是:高位芯片的ram0与低位芯片的ram3相连:高位芯片的q0与低位芯片的q3相连:在串行进位方式下,高位芯片的cn与低位芯片的cn+4相连;若选用am2902芯片(与74ls182芯片功能相同,两者可以互换使用)实现并行进位,则低位的3个芯片的并行进位信号/g和/p应送往am2902的相并没有管脚,并将各自对应的片间进位输出信号送入相邻高位芯片am2901的cn管脚。同时支持串,并行丙种方式,有利于教学实验中方便地观察与测量每种进位方式的进位延迟时间。此时,最低位芯片的ram0与q0是该16位的运算器的最低位的移入/出信号,最高位芯片的ram3与q3是运算器最高位的移入/出信号,均需有另外的逻辑电路与之连接,最低位的cn是整个运算器的最低位进位输入信号。最高位的cn+4是16位完整运算器的进位输出信号。同理,只有最高们芯片的f3和ovr有意义,低位的3个芯片的f3和ovr不被使用。4个芯片的f=0000管脚连接在一起,并经一个电阻接到+5v电源,已得到16位的alu的运算结果为“0”的标志位信号。(4)其它的几组输入信号,支4片am2901器件来说应有相同的值,包括/oe(控制选 通y的输出),a地址,b地址,i8-80(控制am2901的运算功能,数据来源,结果的处置)和工作脉冲cp,故应将4个芯片的这些的各对应管脚连接在一起。完整的16位运算器的组成框图如下:图 完整的16位运算器的组成框图(2) 通用寄存器16个16位通用寄存器r0r15,其中r4(sp)堆栈指针、r5(pc)程序计数器、r6(ip)指令地址寄存器(存放当前正在执行的指令地址)为系统所用。此外,还有一个q寄存器。(3) 移位器运算的结果经一个移位器实现写入操作(左移、不移、右移),q寄存器本身具有左、右移或不移功能且能接收alu(f)的运算结果。左、右移位时,对于通用寄存器来说,就有移出、移入信号ram15、ram0;对于q寄存器来说,有移出、移入信号q15、q0。移位否由i8i6控制信号决定。5 tec-2机运算器部件的辅助组成部分(1) 运算结果的标志位标志位的含义及取值:c:进/借位标志,有进/借位产生,则c=1,否则为c=0;z:运算结果标志,运算结果为0,则z=1,否则为z=0;v:溢出标志,有溢出,则v=1,否则v=0;s:符号标志,结果为负数,则s=1,否则s=0。(2) 微指令中三位微码(sst)与标志位的关系三位微码与这8种处理的对应关系,已用表格形式给出。表 三位微码与状态位的关系表sst编码状态位输入说 明b34 b33 b32czvs0 0 0czvs四个标志位的值保持不变0 0 1cyf=0ovf15接收alu的标志位输出值0 1 0ib7ib6ib5ib4恢复标志位现场值0 1 10zvs置c为0,另三个标志不变1 0 01zvs置c为1,另三个标志不变1 0 1ram0zvs右移操作,另三个标志不变1 1 0ram15zvs左移操作,另三个标志不变1 1 1q0zvs联合右移,另三个标志不变(3) 运算器最低位进位信号的给出与控制(sci)运算器最低位的进位信号cin,可能为0、1、c标志的值,为了调试与实验的方便,有时可送入一个连续的方波信号,当运算器执行16位全1与这个最低位的进位方波信号相加时,则加法器每一位的输出结果均为方波,有利于观察与调试。表sci编码(b11、b10)00011011cin取值01ctclk方波(4) 运算器最高位、最低位的输入信号(ssh)移入通用寄存器中的移入信号ram15和ram0,以及乘商寄存器中的移入信号q15和q0。左移时,向ram0,或者ram0与q0移入数据;右移时,向ram15,或ram15与q15移入数据。我们把5条移位指令和剩除法计算中的联合移位都考虑进去,可以归纳出如下4种结果,并用两位微码ssh区分它们。移位控制码ssh如下表所示:表控制码ssh左 移右 移说 明b9 b8ram0 q0ram15 q150 00 x0 x通用寄存器逻辑位移0 1c xc x通用寄存器与c循环移位1 0q15 /f15cy ram0原码除(左移)乘(右移)1 1x xf15ovr ram0右移用于补码乘法说明: 表中“x”为任意值,表示取任意值都不受影响 当通用寄存器本身移位时,q寄存器不受影响 乘除法运算要求通用寄存器与q寄存器联合移位,没有q寄存器单独移位功能 左右移是由指令功能确定的 ssh为0,用于逻辑移位指令为1,用于循环移位指令为2,用于乘除法运算的联合移位及上商为3,用于算术右移指令,或补码乘法计算三. 实验内容1 脱机实验实验中所述将开关置为“1”,即表示将开关向上拨;将某开关置为“0”,即表示将开关向下拨。(1)将tec-2机功能开关fs4置为“1”。(2)主脉冲置为单步方式,step/cont开关拨向step一边,step为单脉冲方式,cont为连续脉冲方式;(3)用d0+0r0将立即数d0(从数据开关输入:a000h)置入寄存器r0。(4)用d1+0r1将立即数d1(从数据开关输入;4000h)置入寄存器r1。(5)对r0和r1进行各种算术、逻辑运算。将开关s2 s1 s0置于“110”时,指示灯将显示alu的运算结果;将开关s2 s1 s0置于“000”时,指示灯将显示svzc的状态,(h25=s,h26=v,h27=z,h28=c)。2 联机实验(1)将fs1fs4置成1010.,step/cont置成cont,启动tec-2机,进入监控程序。(2)在联机状态下,在命令行状态用“a”命令输入程序。(3)用“g”命令运行程序。(4)用“r”命令观察运行结果及状态。(5)用“t”或“p”命令单步执行。四. 实验器材tec-2机一台,电脑一台五. 实验分析与设计1.脱机实验根据am2901 9个控制信号i8i0与相应控制码的关系,设计实现各功能的指令微码脱机实验步骤:(1)将tec-2机功能开关fs4置为“1”。(2)主脉冲置为单步方式,step/cont开关拨向step一边,step为单脉冲方式,cont为连续脉冲方式;(3)用d0+0r0将立即数d0(从数据开关输入:a000h)置入寄存器r0。波特率开关数据开关sw2(共12位,最末三位未用)sw1(共12位)mi876mi543mi210未用a口b口(r0)scisshd15d0011000111000000000000000a000h 按上表设置各控制信号(mi8mi0)为垂直板元件v60 sw2,a口、b口、sci、ssh为垂直板元件v61 sw1。 按上表设置十六位数据开关(为“a000h”,即“1010 0000 0000 0000b”)。 按压一次step键后,立即数d0即置入寄存器r0中。(4)用d1+0r1将立即数d1(从数据开关输入;4000h)置入寄存器r1。波特率开关数据开关sw2(共12位,最末三位未用)sw1(共12位)mi876mi543mi210未用a口b口(r1)scisshd15d00110001110000000000100004000h 按上表设置各控制信号(mi8mi0)为垂直板元件v60 sw2,a口、b口、sci、ssh为垂直板元件v61 sw1。 按上表设置十六位数据开关(为“4000h”,即“0100 0000 0000 0000b”)。 按压一次step键后,立即数d0即置入寄存器r1中。(5)根据指令微码输入各控制信号,将开关s2 s1 s0置于“110”时,指示灯将显示alu的运算结果;将开关s2 s1 s0置于“000”时,指示灯将显示svzc的状态(h25=s,h26=v,h27=z,h28=c),按压step前,记录alu的输出、svzc状态;按压step,记录按压后alu的输出、svzc状态,然后输入下个微码。(6)按照设计的微码,逐个测试并记录。设计思路:(a) 根据表iii am2901 9个控制信号i8i0,明确i8i6用于选择运算结果或数据传送到什么寄存器中,i5i3用于选择alu的运算功能,i2i0用于选择送入alu的操作数据的来源。(b) 根据功能需要,例如r1+r0r0,将两个通用寄存器r1和r0的数值进行加法运算后,结果保存在寄存器r0中,那么,就可以让a口选择r1,b口选择r0,即a口设为0001,b口设为0000;由于传入alu的两个数值分别来源于a口和b口,所以i2i0选择001(即r为a,s为b);i5i3明显应该选择加法000;运算结果保存到寄存器b,故i8i6选择011(fb)。这样就完成了一条微码的设计。(c) 按压step前纪录alu输出的值,还有svzc的值;在tec-2模拟机上,开关s2 s1 s0为110则查看alu输出(16个灯),为000则查看svzc的值(末尾4个灯)。(d) 按压step后纪录alu输出的值,还有svzc的值。(e) 其他各条微码按照(b)(d)的步骤设计并逐条测试。(f) 当有进位端参与计算时,如r1+r0+cr0和r0+1r0,根据表,此时需要把sci分别设置为10和01;10表示进位端参与计算;01表示直接在寄存器的值+1。(g) 当没有进位端参与计算时,其余情况均将sci设置为00。(h) 最终得到结果如下:表功 能mi86mi5mi20a口b口按压 step 前按压 step 后alu输出svzcalu输出svzcr1+r0r001100000100010000e000h00002000h10000+r0r001100001100000000e000h1000e000h1000r0-r1r001100100100010000a000h10006000h10000+r0r001100001100000000a000h1000a000h1000r1r0r001101100100010000e000h1000e000h10000+r0r001100001100000000e000h1000e000h1000r1r0r0011100001000100004000h10004000h00000+r0r0011000011000000004000h00004000h0000r1r0r0011110001000100000000h00004000h00100+r0r0011000011000000000000h00100000h0010r1+r0+cr0011000001000100004000h00108000h00000+r0r0011000011000000004000h00004000h0000r0*2r0 111000011000000004000h00008000h00000+r0r0011000011000000008000h00008000h1000r0+1r0011000011000000008001h10008002h10000+r0r0011000011000000008001h10008001h1000sci的设置:r0+r1+cr0,sci= 10 ;r0+1r0,sci= 01 其余sci= 00说明:表中alu输出用16进制数表示,而svzc用二进制数表示。2.联机实验(1)将fs1fs4置成1010.,step/cont置成cont,启动tec-2机,进入监控程序。(2)在联机状态下,在命令行状态用“a”命令输入程序。a8000800: mov r0,a000 mov r1, 40000804: add r0, r1 sub r0,r1 or r0,r1 and r0, r1 xor r0, r1 adc r0,r1 shl r0 inc r0 ret(3)用“g”命令运行程序。在命令行提示符状态下输入:g800执行上面输入的程序(4)用“r”命令观察运行结果及状态。在命令行提示符状态下输入:r观察运行结果及状态屏幕显示:r0=8001 r1=4000 r2=0000 r3=0000 sp=ffff pc=0800 ip=080c r7=0000 r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000111110800: 2c00 a000 mov r0, a000(5) 用“t”或“p”命令单步执行。在单步执行之前,先将寄存器r0、r1清空,输入命令:rr08000:-0rr14000:-0在命令行提示符状态下输入:t 或 p执行之后,观察运行结果及状态屏幕显示:tr0=a000 r1=0000 r2=0000 r3=0000 sp=ofd0 pc=0802 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000111110802: 2c10 4000 mov r1, 4000tr0=a000 r1=4000 r2=0000 r3=0000 sp=ofd0 pc=0804 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000111110804: 0401 add r0, r1tr0=e000 r1=4000 r2=0000 r3=0000 sp=ofd0 pc=0805 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000111110805: 0c01 sub r0, r1tr0=a000 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=0806 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000111110806: 5801 or r0, r1tr0=e000 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=0807 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000111110807: 5001 and r0, r1tr0=4000 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=0808 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=000011110808: 5401 xor r0, r1tr0=0000 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=0809 ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=010011110809: 0801 adc r0, r1tr0=4000 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=080a ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=00001111080a: 6000 shl r0tr0=8000 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=080b ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=00001111080b: 7400 inc r0tr0=8001 r1=4000 r2=0000 r3=0000 sp= ofd0 pc=080c ip=00cd r7=016a r8=0000r9=0000 r10=0000 r11=0000 r12=0000 r13=0000 r14=0000 r15=0000 f=00011111080c: ac00 ret六. 思考题1. 在脱机方式下进行运算器实验室,在按step键之前和按step键之后,alu的输出结果及状态svzc有何不同,为什么?根据am2901运算器的组成结构及其工作原理加以说明。从am2901运算器的组成结构可以看出,a口和b口的寄存器在将数据传入alu之前,会经过对应的a锁存器和b锁存器。而由图iiam2901时钟信号的作用图中可以看出,在一个时钟周期内,cp高电平时寄存器的内容通过两个锁存器传送到输入端r和s中,且通用寄存器不接收数据。由于alu是组合逻辑电路,不受时钟信号影响,因而alu输出的数据即为当前状态下的运算结果。在按下step前alu输出当前运算结果,svzc显示当前的状态结果;当按下step后,cp下降沿到来时,a、b锁存器锁存数据,通用寄存器开始接收新数据,此时在下降沿,alu将输出的结果存入通用寄存器中,alu则根据通用寄存器中新的数据再次进行运算,因而alu输出新的运算结果,而svzc状态寄存器则将上次的状态记录下来。2. 写出实现以下功能操作微码:(按下表形式书
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 申请书请求书恳请书区别
- 村上转正申请书2022
- 安装监控申请书
- 上海社保补缴申请书
- 申请晚交税款申请书
- 车子退股申请书
- 消防设计备案申请书
- 昆明落户申请书
- 入团申请书书写页面
- 消防复审申请书
- GB/T 10125-2021人造气氛腐蚀试验盐雾试验
- GB 7231-2003工业管道的基本识别色、识别符号和安全标识
- 医疗机构财政电子票据管理平台建设方案
- 吸附及吸附过程课件
- 食品安全主题班会课件
- 二年级奥数《走迷宫》
- 管道施工安全检查表
- 云南省雨露计划改革试点资金补助申请表
- 部编版七年级上册语文《雨的四季》课件(定稿;校级公开课)
- 项目试运行上线确认单模板
- 道德与法治-四年级(上册)-《我们班 他们班》教学课件
评论
0/150
提交评论