欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    计算机组织与体系结构实验报告Word文档下载推荐.docx

    • 资源ID:16726491       资源大小:1.96MB        全文页数:31页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机组织与体系结构实验报告Word文档下载推荐.docx

    1、 5、实验体会 13三 CPU与简单模型机设计实验 13 1、实验目的 13 2、实验设备 13 3、实验原理 13 4、实验步骤 18 5、实验流图 21 6、实验体会 25实验一 基本运算器实验1. 实验目的 (1) 了解运算器的组成结构。 (2) 掌握运算器的工作原理。2. 实验设备 PC机一台,TD-CMA实验系统一套。3. 实验原理本实验的原理如下图所示:运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),各部件对操作数进行何种运算由

    2、控制信号S3S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为ALU的输出。如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。ALU中所有模块集成在一片FPGA中。逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-1-2所示。图中显示的是一个4X4的矩阵(系统中是一个8X8的矩阵)。每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即:(1) 对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,

    3、这将所有的输入位与所使用的输出分别相连,而没有同任何输入相连的则输出连接0。(2) 对于循环右移功能,右移对角线同互补的左移对角线一起激活。例如,在4位矩阵中使用右1和左3对角线来实现右循环1位。(3) 对于未连接的输出位,移位时使用符号扩展或是0填充,具体由相应的指令控制。使用另外的逻辑进行移位总量译码和符号判别。运算器逻辑功能表4. 实验步骤(1) 按图所示连接实验电路,并检查无误。(2) 将时序与操作台单元的开关KK2置为单拍档,开关KK1、KK3置为运行档。(3) 打开电源开关,如果听到有嘀报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。然后按动CON单元的CL

    4、R按钮,将运算器的A、B和FC、FZ清零。(4) 用输入开关向暂存器A置数。 拨动CON单元的SD27SD20数据开关,形成二进制数01100101(或其它数值),数据显示亮为1,灭为0。 置LDA=1,LDB=0,连续按动时序单元的ST按钮,产生一个T4上沿,则将二进制数01100101置入暂存器A中,暂存器A的值通过ALU单元的A7A0八位LED灯显示。(5) 用输入开关向暂存器B置数。 拨动CON单元的SD27SD20数据开关,形成二进制数10100111(或其它数值)。 置LDA=0,LDB=1,连续按动时序单元的ST按钮,产生一个T4上沿,则将二进制数10100111 置入暂存器B中

    5、,暂存器B的值通过ALU单元的B7B0八位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按钮,数据通路图会有数据的流动,反映当前运算

    6、器所做的操作,或在软件中选择“【调试】【单节拍】”,其作用相当于将时序单元的状态开关KK2置为单拍档后按动了一次ST按钮,数据通路图也会反映当前运算器所做的操作。 数据通路图5. 实验结果运算类型ABS3 S2 S1 S0CN结果逻辑结果65A70 0 0 0XF=(65) FC=( 0 ) FZ=( 0 )0 0 0 1F=(A7) FC=( 0 ) FZ=( 0 )0 0 1 0F=(25) FC=( 0 ) FZ=( 0 )0 0 1 1F=(E7) FC=( 0 ) FZ=( 0 )0 1 0 0F=(9A) FC=( 0 ) FZ=( 0 )移位运算0 1 0 1F=(CA) FC=

    7、( 0 ) FZ=( 0 )0 1 1 0F=(32) FC=( 0 ) FZ=( 0 )1F=(B2) FC=( 1 ) FZ=( 0 )0 1 1 1F=(CA) FC=( 1 ) FZ=( 0 )算术运算1 0 0 0F=(65) FC=( 1 ) FZ=( 0 )1 0 0 1F=(0C) FC=( 1 ) FZ=( 0 )1 0 1 0(FC=0)1 0 1 0(FC=1)F=(0D) FC=( 1 ) FZ=( 0 )1 0 1 1F=(BE) FC=( 0 ) FZ=( 0 )1 1 0 0F=(64) FC=( 0 ) FZ=( 0 )1 1 0 1F=(66) FC=( 0

    8、) FZ=( 0 )6. 实验体会这个实验是我们第一次接触这个试验箱,刚开始还是有些陌生,但是好在本次试验比较简单,在弄懂原理之后根据试验连线图很快的就把线连接好了。在实验中,我通过和同学的探讨,弄懂了各个运算的实现原理和步骤,知道每个数据的用法。在实验中还是遇到了一些小问题,那就是带进位循环移位和不带进位循环移位,经过和同学探讨还是解决了这一问题。通过此次实验过程,我了解了计算机的主要的功能就是处理各种算数和逻辑运算,而这个功能是由CPU的运算器来完成。虽然我们计算机组织与体系结构这门课已经结束,但这更加加深了我对计算机内部结构的理解,对今后的学习和生活有很大的帮助。实验二 微程序控制器实验

    9、1、实验目的 (1) 掌握微程序控制器的组成原理。(2) 掌握微程序的编制、写入,观察微程序的运行过程。2、实验设备 3、实验原理微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理框图如图3-2-1所示。控制器是严格按照系统时序来工作的,因而

    10、时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地了解时序电路的工作原理,本实验所用的时序由时序单元来提供,分为四拍TS1、TS2、TS3、TS4。微程序控制器的组成见图3-2-2,其中控制存储器采用3片2816的E2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(273)和一片4D(175)触发器组成。微地址寄存器6位,用三片正沿触发的双D触发器(74)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修

    11、改。在实验平台中设有一组编程控制开关KK3、KK4、KK5(位于时序与操作台单元),可实现对存储器(包括存储器和控制存储器)的三种操作:编程、校验、运行。考虑到对于存储器(包括存储器和控制存储器)的操作大多集中在一个地址连续的存储空间中,实验平台提供了便利的手动操作方式。以向00H单元中写入332211为例,对于控制存储器进行编辑的具体操作步骤如下:首先将KK1拨至停止档、KK3拨至编程档、KK4拨至控存档、KK5拨至置数档,由CON单元的SD05SD00开关给出需要编辑的控存单元首地址(000000),IN单元开关给出该控存单元数据的低8位(00010001),连续两次按动时序与操作台单元的

    12、开关ST(第一次按动后MC单元低8位显示该单元以前存储的数据,第二次按动后显示当前改动的数据),此时MC单元的指示灯MA5MA0显示当前地址(000000),M7M0显示当前数据(00010001)。然后将KK5拨至加1档,IN单元开关给出该控存单元数据的中8位(00100010),连续两次按动开关ST,完成对该控存单元中8位数据的修改,此时MC单元的指示灯MA5MA0显示当前地址(000000),M15M8显示当前数据(00100010);再由IN单元开关给出该控存单元数据的高8位(00110011),连续两次按动开关ST,完成对该控存单元高8位数据的修改此时MC单元的指示灯MA5MA0显示

    13、当前地址(000000),M23M16显示当前数据(00110011)。此时被编辑的控存单元地址会自动加1(01H),由IN单元开关依次给出该控存单元数据的低8位、中8位和高8位配合每次开关ST的两次按动,即可完成对后续单元的编辑。编辑完成后需进行校验,以确保编辑的正确。以校验00H单元为例,对于控制存储器进行校验的具体操作步骤如下:首先将KK1拨至停止档、KK3拨至校验档、KK4拨至控存档、KK5拨至置数档。由CON单元的SD05SD00开关给出需要校验的控存单元地址(000000),连续两次按动开关ST,MC单元指示灯M7M0显示该单元低8位数据(00010001);KK5拨至加1档,再连

    14、续两次按动开关ST,MC单元指示灯M15M8显示该单元中8位数据(00100010);再连续两次按动开关ST,MC单元指示灯M23M16显示该单元高8位数据(00110011)。再连续两次按动开关ST,地址加1,MC单元指示灯M7M0显示01H单元低8位数据。如校验的微指令出错,则返回输入操作,修改该单元的数据后再进行校验,直至确认输入的微代码全部准确无误为止,完成对微指令的输入。位于实验平台MC单元左上角一列三个指示灯MC2、MC1、MC0用来指示当前操作的微程序字段,分别对应M23M16、M15M8、M7M0。实验平台提供了比较灵活的手动操作方式,比如在上述操作中在对地址置数后将开关KK4

    15、拨至减1档,则每次随着开关ST的两次拨动操作,字节数依次从高8位到低8位递减,减至低8位后,再按动两次开关ST,微地址会自动减一,继续对下一个单元的操作。微指令字长共24位,控制位顺序如表3-2-1:其中MA5MA0为6位的后续微地址,A、B、C为三个译码字段,分别由三个控制位译码出多位。C字段中的P为测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现完成对指令的识别,并实现微程序的分支,本系统上的指令译码原理如图3-2-3所示,图中I7I2为指令寄存器的第72位输出,SE5SE0为微控器单元微地址锁存器的强置端输出,指令译码逻辑在IR单元的INS_DE

    16、C(GAL20V8)中实现。本实验除了用到指令寄存器(IR)和通用寄存器R0外,还要用到IN和OUT单元,从微控器出来的信号中只有IOM、WR和RD三个信号,所以对这两个单元的读写信号还应先经过译码,其译码原理如图3-2-4所示。IR单元的原理图如图3-2-5所示,R0单元原理如图3-2-7所示,IN单元的原理图见图2-1-3所示,OUT单元的原理图见图3-2-6所示。本实验安排了四条机器指令,分别为ADD(0000 0000)、IN(0010 0000)、OUT(0011 0000)和HLT(0101 0000),括号中为各指令的二进制代码,指令格式如下:实验中机器指令由CON单元的二进制开

    17、关手动给出,其余单元的控制信号均由微程序控制器自动产生,为此可以设计出相应的数据通路图,见图3-2-8所示。几条机器指令对应的参考微程序流程图如图3-2-9所示。图中一个矩形方框表示一条微令,方框中的内容为该指令执行的微操作,右上角的数字是该条指令的微地址,右下角的数字是该条指令的后续微地址,所有微地址均用16进制表示。向下的箭头指出了下一条要执行的指令。P为测试字,根据条件使微程序产生分支。将全部微程序按微指令格式变成二进制微代码,可得到表3-2-2的二进制代码表。4、实验步骤1. 按图3-2-10所示连接实验线路,仔细查线无误后接通电源。如果有滴报警声,说明总线有竞争现象,应关闭电源,检查

    18、接线,直到错误排除。2. 对微控器进行读写操作,手动读写。 (1) 手动对微控器进行编程(写) 将时序与操作台单元的开关KK1置为停止档,KK3置为编程档,KK4置为控存档,KK5置为置数档。 使用CON单元的SD05SD00给出微地址,IN单元给出低8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的低8位。 将时序与操作台单元的开关KK5置为加1档。 IN单元给出中8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的中8位。IN单元给出高8位应写入的数据,连续两次按动时序与操作台的开关ST,将IN单元的数据写到该单元的高8位。 重

    19、复、四步,将表3-2-2的微代码写入2816芯片中。(2) 手动对微控器进行校验(读) 将时序与操作台单元的开关KK1置为停止档,KK3置为校验档,KK4置为控存档,KK5置为置数档。 使用CON单元的SD05SD00给出微地址,连续两次按动时序与操作台的开关ST,MC单元的指数据指示灯 M7M0显示该单元的低8位。 连续两次按动时序与操作台的开关ST,MC单元的指数据指示灯 M15M8显示该单元的中8位,MC单元的指数据指示灯 M23M16显示该单元的高8位。 重复、四步,完成对微代码的校验。如果校验出微代码写入错误,重新写入、校验,直至确认微指令的输入无误为止。3. 运行微程序 将时序与操

    20、作台单元的开关KK1、KK3置为运行档,按动CON单元的CLR按钮,将微地址寄存器(MAR)清零,同时也将指令寄存器(IR)、ALU单元的暂存器A和暂存器B清零。 将时序与操作台单元的开关KK2置为单拍档,然后按动ST按钮,体会系统在T1、 T2、T3、T4节拍中各做的工作。T2节拍微控器将后续微地址(下条执行的微指令的地址)打入微地址寄存器,当前微指令打入微指令寄存器,并产生执行部件相应的控制信号;T3、T4节拍根据T2节拍产生的控制信号做出相应的执行动作,如果测试位有效,还要根据机器指令及当前微地址寄存器中的内容进行译码,使微程序转入相应的微地址入口,实现微程序的分支。 按动CON单元的C

    21、LR按钮,清微地址寄存器(MAR)等,并将时序与单元的开关KK2置为单步档。 置IN单元数据为00100011,按动ST按钮,当MC单元后续微地址显示为000001时,在CON单元的SD27SD20模拟给出IN指令00100000并继续单步执行,当MC单元后续微地址显示为000001时,说明当前指令已执行完;在CON单元的SD27SD20给出ADD指令00000000,该指令将会在下个T3被打入指令寄存器(IR),它将R0中的数据和其自身相加后送R0;接下来在CON单元的SD27SD20给出OUT指令00110000并继续单步执行,在MC单元后续微地址显示为000001时,观查OUT单元的显示

    22、值是否为01000110。5、实验体会在实验开始的时候老师就给我们说这个实验比较发杂,让我们在做的时候耐心点,当时还没怎么有感觉,在读原理的时候也没怎么发现复杂。在做手动读写的时候没怎么发现难,顺利的将一个数谢了进去,也读了出来,在运行微程序的时候困难来了,这才发现原来对实验原理的了解并不透彻。之后又把实验原理好好看了一遍。后来老师在一个同学的机器上给我们演示了一下,深入的给我们讲解了一遍,我发现我理解的并不透彻,在老师演示后再次自己验证,终于在五点多的时候成功了。 通过实验我知道了我对微程序控制器的了解还不透彻,还有很多欠缺,能在试验中发现这一点我很欣慰,要是在考试是才发现自己对微程序控制器

    23、的了解不深刻恐怕一切都晚了。实验三 CPU与简单模型机设计实验(1) 掌握一个简单 CPU 的组成原理。(2) 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。(3) 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。PC 机一台,TD-CMA 实验系统一套。3、实验原理 本实验要实现一个简单的 CPU,并且在此 CPU 的基础上,继续构建一个简单的模型计算机。CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图 5-1-1 所示。这个 CPU 在写入相应的微指令后,就具备了执行机

    24、器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该 CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。除了程序计数器(PC),其余部件在前面的实验中都已用到,在此不再讨论。系统的程序计数器(PC)和地址寄存器(AR)集成在一片 FPGA 芯片中 。CLR 连接至 CON 单元的总清端 CLR,按下 CLR 按钮,将使 PC 清零,LDPC 和 T3 相与后作为计数器的计数时钟,当 LOAD 为低时,计数时钟到来后将 CPU 内总线上的数据打入 PC。本模型机和前面微程序控制器实验相比,新增加一条跳转指令 JMP,共

    25、有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高位为操作码):其中 JMP 为双字节指令,其余均为单字节指令,*为 addr 对应的二进制地址码。微程序控制器实验的指令是通过手动给出的,现在要求 CPU 自动从存储器读取指令并执行。根据以上要求,设计数据通路图,如图 5-1-3 所示。本实验在前一个实验的基础上增加了三个部件,一是 PC(程序计数器),另一个是 AR(地址寄存器),还有就是 MEM(主存)。因而在微指令中应增加相应的控制位,其微指令格式如表5-1-1 所示。图 5-1-3 数据通路图系统涉及到的微程序流程见

    26、图 5-1-4 所示,当拟定“取指”微指令时,该微指令的判别测试字段为 P测试。指令译码原理见图 3-2-3 所示,由于“取指”微指令是所有微程序都使用的公用微指令,因此 P 的测试结果出现多路分支。本机用指令寄存器的高6 位(IR7IR2)作为测试条件,出现路分支,占用个固定微地址单元,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写,微程序流程图上的单元地址16进制。当全部微程序设计完毕后,应将每条微指令代码化,表 5-1-2 即为将图 5-1-4 的微程序流程图按微指令格式转化而成的“二进制微代码表”。设计一段机器程序,要求从 IN 单元读入一个数据,存于 R0,将 R0 和

    27、自身相加,结果存于R0,再将 R0 的值送 OUT 单元显示。根据要求可以得到如下程序,地址和内容均为二进制数。地 址 内 容 助记符 说 明 00000000 00100000 ; START: IN R0 从 IN 单元读入数据送 R0 00000001 00000000 ; ADD R0,R0 R0 和自身相加,结果送 R0 00000010 00110000 ; OUT R0 R0 的值送 OUT 单元显示 00000011 11100000 ; JMP START 跳转至 00H 地址 00000100 00000000 ;00000101 01010000 ; HLT 停机 1. 按图 5-1-5 连接实验线路。2. 写入实验程序,并进行校验,分两种方式,手动写入和联机写入。1) 手动写入和校验 (1) 手动写入微程序 将时序与操作台单元的开关 KK1 置为停止档,KK3 置为编程档,KK4 置为控存档,KK5 置为置数档。 使用 CON


    注意事项

    本文(计算机组织与体系结构实验报告Word文档下载推荐.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开