计算机组成原理课程设计1.doc_第1页
计算机组成原理课程设计1.doc_第2页
计算机组成原理课程设计1.doc_第3页
计算机组成原理课程设计1.doc_第4页
计算机组成原理课程设计1.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录 一.目录-2二.实验目的-3三.实验电路-4四.实验任务-9五.连线过程-9六.实验过程-10七.实验结果-11八.实验问题及解决方法-12九.实验心得-13- 14 -二实验目的1. 掌握时序产生器的组成原理。2.掌握微程序控制器的组成原理。3.掌握微指令格式的化简和归并。4.将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机。5.用微程序控制器控制模型机数据通路。6.通过cpu运行九条机器指令(排除中断指令)组成的简单程序,掌握机器指令与微指令的关系,牢固建立计算机的整机概念。三实验电路1.时序发生器tec4计算机组成原理实验系统的时序电路如图9所示。电路采用2片gal22v10(u6、u7),可产生两级等间隔时序信号t1t4和w1w4,其中一个w由一轮t1t4循环组成,它相当于一个微指令周期或硬布线控制器的一拍,而一轮w1w4循环可供硬布线控制器执行一条机器指令。本次实验不涉及硬布线控制器,因此时序发生器中的相关内容也可根据需要放到硬布线控制器实验中进行。 微程序控制器只使用时序信号t1t4,产生t信号的功能集成在gal22v10芯片timer1(u6)中,另外它还产生节拍信号w1、w2、w3、w4的控制时钟clk1。该芯片的逻辑功能用abel语言实现。 2.微指令格式与微程序控制器电路根据给定的12条机器指令功能和数据通路总体图的控制信号,采用的微指令格式见图10。微指令字长共35位。其中顺序控制部分10位:后继微地址位,判别字段位,操作控制字段25位,各位进行直接控制。微指令格式中,信号名带有后缀“#”的信号为低有效信号,不带有后缀“#”的信号为高有效信号。3.微程序控制组成图 对应微指令格式,微程序控制器的组成见图11。控制存储器采用5片eeprom 28c64(u8、u9、u10、u11、u12)。28c64的输出是d0d7,分别与引脚11、12、13、15、16、17、18、19相对应,cm0是最低字节,cm4是最高字节。微地址寄存器位,用一片6d触发器74hc174(u1)组成,带有清零端。两级与门、或门构成微地址转移逻辑,用于产生下一微指令的地址。在每个t1上升沿时刻,新的微指令地址会打入微地址寄存器中,控制存储器随即输出相应的微命令代码。微地址转移逻辑生成下一地址,等下一个t1上升沿时打入微地址寄存器。跳转开关jump(j1)是一组6个跳线开关。当用短路子将它们连通时,微地址寄存器mar从本实验系统提供的微程序地址译码电路得到新的微程序地址md0md5。当他们被断开时,用户提供自己的新微程序地址md0md5。这样用户能够使用自己设计的微程序地址译码电路。5片eeprom的地址a6(引脚4)直接与控制台开关swc连接,当swc = 1时,微地址大于或者等于40h,当swc = 0时,微地址的范围为00h3fh。swc主要用于实现读寄存器堆的功能。 微地址转移逻辑的多个输入信号中,intq是中断请求,本实验中可以不理会。swa、swb是控制台的两个二进制开关信号,实验台上线已接好接。是进位信号,ir7ir4是机器指令代码,由于本次实验不连接数据通路,这些信号都接到二进制开关k0k15上。4.指令功能与格式指令的高位提供给微程序控制器,低位提供给数据通路。表5 指令功能与格式名称助记符功能指令格式r7 r6 r5 r4r3 r2r1 r0加法add rd,rsrd+rs-rd0 0 0 0rs1 rs0rd1 rd0减法sub rd,rsrd-rs-rd0 0 0 1rs1 rs0rd1 rd0乘法mul rd,rsrd*rs-rd0 0 1 0rs1 rs0rd1 rd0逻辑与and rd,rsrd&rs-rd0 0 1 1rs1 rs0rd1 rd0存数sta rd,rsrd-rs0 1 0 0rs1 rs0rd1 rd0取数lda rd,rsrs-rd0 1 0 1rs1 rs0rd1 rd0无条件转移jmp rsrs-pc1 0 0 0rs1 rs0x x条件转移jc d若c=1则pc+d-pc1 0 0 1d3 d2d1 d0停机stp暂停运行0 1 1 0x xx x中断返回iret返回断点1 0 1 0x xx x开中断ints允许中断1 0 1 1x xx x关中断intc禁止中断1 1 0 0x xx x5.微程序流程图存储器写操作(kwe):按下复位按钮clr#后,微地址寄存器状态为全零。此时置swc = 0、swb ,swa ,按启动按钮后微指令地址转入27h,从而可对连续进行手动写入。存储器读操作(krd):按下复位按钮clr#后,置swc = 0,swb ,swa ,按启动按钮后微指令地址转入17h,从而可对ram连续进行读操作。写寄存器操作(kld):按下复位按钮clr#后,置swc = 0,swb 1,swa ,按启动按钮后微指令地址转入37h,从而可对寄存器堆中的寄存器连续进行写操作。读寄存器操作(krr):按下复位按钮clr#后,置swc = 1,swb 0,swa 0,按启动按钮后微指令地址转入47h,从而可对寄存器堆中的寄存器连续进行读操作。启动程序(pr):按下复位按钮clr#后,置swc = 0,swb 0,swb a,用数据开关sw7sw0设置内存中程序的首地址,按启动按钮后微指令地址转入07h,然后转到“取指”微指令。6.微指令按十六进制编码微指令地址微指令编码微指令地址微指令编码00h005c002073ch405c8003d07h00541200517h00544003f27h40544003d3fh409c0003e3dh00140003c3eh005c8003f7.对机器指令系统组成的简单程序进行译码。 将下表的程序按指令格式手工汇编成十六进制机器代码,此项任务应在预习时完成。地址指令机器代码00hlda r0,r258h01hlda r1,r35dh02hadd r0,r104h03hjc +595h04hand r2,r33eh05hsub r3,r21bh06hsta r3,r24bh07hmul r0,r124h08hstp60h09hjmp r184h8.模拟计算机连线示意图 开关控制 控制台 时序发生器 时序信号 开关控制 指示灯信号 控制信号 时序信号 控制信号 微程序控制器 数据通路 指令代码、条件信号图13 模型计算机连线示意图四实验任务1. 在tec-4计算机组成原理实验台上,依次输入以下十条指令。2.其中r2的地址为36h,36h里边的数是03h。r3的地址是37h,37h里边的数是05h。3.输入完毕后把r0,r1里的数读出来。4.执行完毕后把r0,r1,r2,r3里的数读出来,把存储器36h,37h的内容读出来。并记录结果。所要输入的十条指令地址指令机器代码00hlda r0,r258h01hlda r1,r35dh02hadd r0,r104h03hjc +595h04hand r2,r33eh05hsub r3,r21bh06hsta r3,r24bh07hmul r0,r124h08hstp60h09hjmp r184h五连线过程1. 将跳线开关j1用短路子短接。时序发生器的输入tj1接控制存储器的输入tj。控制存储器的输入c接运算器alu的c。控制器的输入ir7,ir6,ir5,ir4依次接指令寄存器ir的输出端ir7,ir6,ir5,ir4。共6根线。2. 控制器的输出ldir(cer),ldpc(ldr4),pc_add,pc_nc,m4,ldiar,ldar1(ldar2),ar1_inc,m3,lder,iar_bus#,sw_bus#,rs_bus#,alu_bus,cer#,lrw,wrd,lddr1(lddr2),m1(m2),s2,s1,s0依次与数据通路的对应信号连接。共27条线。 3.指令寄存器ir的输出ir0接双端口寄存器堆的rd0,wr0,ir1接rd1,wr1,ir2接rs0,ir3接rs1.共6条线。六实验过程1. 利用控制台微程序kld设置通用寄存器r2,r3的值(1) 。令dp=0,db=0,dz=0,使实验系统处于与连续运行状态。令swc=0,swb=1,swa=1,使实验系统处于寄存器加载工作方式。按clr#按钮,是系统处于初始状态。(2) 在sw7-sw0上设置一个寄存器地址,该地址供设置通用寄存器使用。可将该地址设置为0ffh。(3) 在sw7-sw0上设置02h,作为r2的寄存器号。按一次qd,将02h写入ir。(4)在sw7-sw0设置36h,作为r2的值。按一次qd,将36h写入指定的寄存器中。(5)在sw7-sw0上设置03,作为通用寄存器r3的寄存器号。按一次qd,将03h写入ir。(6)在sw7-sw0设置37h,作为r3的值。按一次qd按钮,将37h写入r3。(7)设置r2,r3结束,按clr#按钮,使实验系统处于初始状态。2. 利用控制台微程序kwe存程序机器代码从00h地址开始存储10个机器代码:58h,5dh,04h,95h,3eh,1bh,4bh,24h,60h,84h。在36h存入03h,用于给r0置初值;在37h存入05h,用于给r1置初值。(1) 令dp=0,db=0,dz=0,使系统处于连续状态。令swc=0,sws=1,swa=0。(2) 置sw7-sw0为00h,按qd按钮,将00h写入ar1。(3) 置sw7-sw0为58h,按qd按钮,将58h写入存储器00h单元。ar1自动加1,变为01h.(4) 如此重复下去,一直到将84h写入存储器09h单元。按cle#,使实验系统处于初始状态。(5) 置sw7-sw0为36h,按qd按钮,将36h写入ar1。(6) 置sw7=sw0为03h,按qd按钮,将03h写入存储器36h单元,ar1自动加1,变为61h。(7) 置sw7-sw0为05h,按qd按钮,将05h写入存储器37h,按cle#使系统处于初始状态。3. 用单拍(dp)方式执行一遍程序在单拍执行过程中,首先要随时监测ar2的值和ir的值,一判定程序执行到何处。七实验结果1. lda r0,r2执行结果 r2=36h,r0=03h。2. lda r1,r3执行结果 r3=37h,r1=05h.3.add r0,r1执行结果 r0=08h,r1=05h,c=0。4. jc+5执行结果转移到03h,以为c=05. and r2,r3执行结果 r2=36h,r3=37h6. sub r3,r2执行结果 r2=36h,r3=01h.7. sta r3,r2执行结果 r2=36h,r3=01h,寄存器36h单元的内容为01h.8. mul r0,r1执行结果 r0=28h,r1=05h9. stp执行结果 无变化10.jmpr1执行结果 转移到05h执行结束后,执行结果为r0=28h,r1=05h,r2=36h,r3=01h。寄存器36h单元的内容为01h,37h单元的内容为05h。8 实验问题及解决方案 在实验过程中,我遇到了许多问题。对实验原理的不理解,对实验电路图的不理解,好多知识都忘记了,动手能力差,而且实验台好多都是坏的。在开始试验后,我又看了课本上的相关内容,认真的对实验电路图加以分析理解,并请教同学不会的地方,势必把不懂的地方弄懂,在大检查时由于好多试验台是坏的,在等待其他同学检查时,我在其他实验台上操作了很多遍,直到很流利为止。9 实验心得 在接触计算机语言之前,我们就已经学过了数字逻辑,给计算机组成原理这门课打下了一些基础。但是,学习了计算机组成原理之后才了解到jmp,mov,lda,add,sub,sta,mul,stp等指令的执行原理,执行过程与执行结果,让我们更加的深入了解了计算机的内部的组织结构,对我们计算机专业的学生来说,学习计算机组成原理提高了我们

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论