计算机组成原理课程设计实验报告-基本模型机设计与实现_第1页
计算机组成原理课程设计实验报告-基本模型机设计与实现_第2页
计算机组成原理课程设计实验报告-基本模型机设计与实现_第3页
计算机组成原理课程设计实验报告-基本模型机设计与实现_第4页
计算机组成原理课程设计实验报告-基本模型机设计与实现_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、计 算机组 成原理实验报告评语:成绩教师:年月班级:1403011学号:140301124姓名:丁梦鸽地点:eii-312 时间:第3批计算机组成原理与体系结构课程设计基本模型机设计与实现一. 实验目的1. 深入理解基木模型计算机的功能、组成知识;2. 深入学习计算机各类典型指令的执行流程;3. 学习微程序控制器的设计过程和相关技术,掌握lpm_rom的配置方法。4. 在掌握部件单元电路实验的基础上,进一步将单元电路组成系统,构造一台基本模 型计算机。5. 定义五条机器指令,并编写相应的微程序,上机调试,掌握计算机整机概念。掌握 微程序的设计方法,学会编写二进制微指令代码表。6. 通过熟悉较完

2、整的计算机的设计,全面了解并掌握微程序控制方式计算机的设计方 法。二. 实验原理1. 在部件实验过程中,各部件单元的控制信号是人为模拟产生的,而木实验将能在微过程控制下白动产生各部件单元控制信号,实现特定的功能。实验中,计算机数据通路的控 制将山微过程控制器來完成,cpu从内存中収出一条机器指令到指令执行结朿的一个指令周 期,金部由微指令组成的序列来完成,即-条机器指令对应-个本实验采用五条机器指令:in (输入)、add (二进制加法)、sta (存数)、out (输出)、jmp (无条件转移),其指令格 式如下(最高4位二进制数为操作码):微程序。2. 指令格式(1)指令格式采用寄存器直接

3、寻址方式,其格式如下:位7654321 0功能op-codersrd其中,op-code为操作码,rs为源寄存器,rd为目的寄存器,并规定:rs 或 rd选定的寄存器00ro01r110r2助记符机器指令码addr地址码功能说明inooh“input”中的数据一roadd addr1 ohxx 11ro+addr->rosta addr2ohxx hro -> addrout addr3 ohxx haddr -> busjmp addr4 ohxx haddr fpc其中in为单字长(8位二进制),其余为双字长指令,xxh为addr对应的十六进制地 址码。为了向ram中装入

4、程序和数据,检查写入是否正确,并能启动程序执行,述必须设 计三个控制台操作微程序。m carj tsarmemory2drpcwkj11j-bv/rldpcjrozbt-ldrol lcpu丽惋控制軽匚竺ni mj i ilbjhjcso s1 cs2cd1put图64数据通路框图1, 存储 器读操作(krd):下 载实验程序 后按总清除 按键(clr) 后,控制台 swa、swb 为“00”吋, 可对ram连 续手动读入 操作。2, 存 储器写操作(kwe):下 载实验程序 后按总清除按键(clr)后,控制台swa、swb为“0 1”时,可对ram连续手动写操作。3、启动程序(rp):下载实

5、验程序后按总清除按键(clr)后,控制台swa、swb为 “11”时,即可转入到微地址“01”号“取指令”微指令,启动程序运行。根据以上要求设计数据通路框图,如图5-1所swbswa控制台指令00读内存(krd)01写内存(kwe)11启动程序(rp)表61 24位微代码定义:2423222120191817161514131211109 8 7654321s3s2s1somcnwea9a8abcua5ua4ua3ua2ualuao表6-2 a、b、c各字段功能说明:a字段b字段c字段151413选择121110选择987选择000000000001ldri001rs-b001p (1)010

6、lddr1010010011lddr2011011100ldir100100p (4)101load101alu-b101ldar110ldar110pc-b110ldpc24位微代码中各信号的功能(1) ua5-ua0:微程序控制器的微地址输出信号,是下一条要执行的微指令的微地址。(2) s3、s2、si、s0:由微程序控制器输出的alu操作选择信号,以控制执行16种算术 操作或16种逻辑操作中的某一种操作。(3) m:微程序控制输岀的alu操作方式选择信号端。m = 0执行算术操作;m = l执行 逻辑操作。(4) cn:微程序控制器输出的进位标志信号,cn = o表示alu运算吋最低位有

7、进位,cn=1则表示无进位。(5)we:微程序控制器输出的ram控制信号。当/ce = o时,如we=0为存储器读:如we = 1为存储器写。(6) a9、a8译码后产生cso、cs1、cs2信号, 分别作为sw_b、ram、led的选通控制信号。(7) a字段(15、14、13)译码后产生 与总线相连接的各单元的输入选通信号(见表6-l)o(8)b字段(12、11. 10)译码后产生与总线札i连接的各单元的输出选通信号。(9)c字段(9、8、7)译码后产生分支判断测试信号p(irp(4闲ldpc信号。系统涉及到的微程序流程见图6-2o当执行“取指令”微指令时,该微指令的判断测 试字段为p(l

8、)测试。山于“収指令”微指令是所有微程序都使用的公用微指令,因此p(l) 的测试结果出现多路分支(见图6-2左图)。用指令寄存器的高4位(ir7-ir4)作为测试条 件,出现5路分支,占用5个固定地址单元。控制台操作为p测试(见图62右图),它以控制台信号swb、swa作为测试条件, 出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就 可以一条微指令占用控制存储器的一个微地址单元,随意填写。注意:微程序流程图上的微 地址为8进制!当全部微程序设计完毕后,应将每条微指令代码化,表6-2即为图6-2的微程序流程 图按微指令格式转化而成的“二进制微代码表”。表&

9、2二进制微代码表微地址微指令s3s2s 1somc nw ea9a8abcua5-uao0 00 18 1100000000110 0 00 0 010 00 100 0 00 10 0 e d 8 20000000011101101100 0 00 100 20 0 c 0 4 800000000110 00 0 00 0 10 0 10 0 00 30 0 e 0 0 40000000011100 0 00 0 00 0 010 00 40 0 b 0 0 5000000001oil0 0 00 0 00 0 010 10 50 1 a 2 0 60000000110 100 0 10 0

10、 00 0 01100 66 1 9 a 0 10110000110 0 110 10 0 00 0 00 0 10 70 0 e 0 0 d0000000011100 0 00 0 00 0 110 11 00 0 1 0 1 b0000000000 0 10 0 00 0 0oiloil1 10 1 e d 8 30000000111101101100 0 0oil1 20 1 e d 8 70000000111101101100 0 01111 30 1 e d 8 e0000000111101101100 0 11101 40 1 e d 9 60000000111101 1 01 1

11、 00 101101 50 0 b 0 1 70000000010 1 10 0 00 0 00 101111 60 0 e 0 0 f0000000011100 0 00 0 00 0 11111 70 0 b 0 1 5000000001oil0 0 00 0 00 1010 12 00 1 e d 9 20000000111101101100 100 102 10 1 e d 9 40000000111101 1 01 1 00 1010 02 20 1 a 0 1 00000000110 100 0 00 0 00 100 0 02 30 1 8 0 0 10000000110 0 0

12、0 0 00 0 00 0 00 0 12 40 6 2 0 1 10000011000 100 0 00 0 00 100 0 12 50 1 a 2 1 90000000110 100 0 10 0 0oil0 0 12 60 1 a 2 1 a0000000110 100 0 10 0 0oil0 102701a21800000001101000100001100030b99a0110111001100110100000000131e99a0111101001100110100000000132099a010000100110011010000000013301a21c000000011

13、01000100001110034059a01000001011001101000000001指令寄存器(ir):指令寄存器用來保存当前正在执行的一条指令。当执行一条指令时,先 把它从内存取到缓冲寄存器中,然后再传送至指令奇存器。指令划分为操作码和地址码段, 由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试“p(l)”,通过节拍脉 冲t4的控制,以便识别所要求的操作。指令译码器:根据指令中的操作码强置微控制器单元的微地址,使下一条微指令指向相应的 微程序首地址。实验中lcd液品显示屏可以用來显示模型机cpu中各组成单元的内容。将b100_c.sof 文件下载到实验台后,按系统复位键

14、,lcd液晶显示屏即显示cpu中各组成单元的内容。其 功能说明如下:lcd液晶显示侨功能说明作用名称计算机组成原理名称in输入单元inputdr1暂存器dr1out输出单元output dr2 暂存器dr2alubus算术逻辑单元内部数据总线pcar程序计数器地址寄心器r0r1寄存器r0寄冇器r1ramir程序/数据存储器 指令寄存器r2寄存器r2mc微程序控制器in00out00alu00r000r100r200dr100dr200bus00pc00ar00ram00ir00mc018110图6-4 lcd液晶显示屏rjrrsji3 :if7rdjldri710r1 o ro bro.0 :

15、1 3rx br1 bi 2r2 br2jt3:rd b ldr0:lor x ldr1i 1ldr21 o-moldr0 2n00dsppi16q117.01;"9 3dc7 03r0c7. 0rlt7o12t3rsc7oldr2rstqe7.dr1xss电17ari7.0j押 jld席罕二c(oi7.o1b 叫 100口 biw.cgwifm ram dq dertalt addre$() ineixk q(key2xey1 ho d0fdd01|7.01 :z絲dr2j?;rlbt:roh 1299克 ©ram :alubt:sw_b74148on1n2necm3ng

16、sn4naon5na1n6na2n7neinaenc006rd”t1:t2t3t4clk1 istep7t1ulka1 vrst 1t3t 4 clocko 扔0018珈 clk1 (=-key7 i>100.c®14 込step(=-key8 bw0.c15 前rst1key4卜叫11云sv6(=-key3 bwo,牡swa& 1櫛otpllp12t41d【70jclkc70jrstq c 7. . qolk*»邨? 273m24 21cfi27 01cfi17 .01wo.枫19)alu181cofzfzcn225dmoj t70】piost2 odp13

17、宰迺二亡5 p13 we*6.训7丿sell)witswasubt2pism?a.尸【4】l】 sci 41jrstqc7 03clk4xwaddress regdc70】clkqc703st1rstloadloadldpc :t2;pc7r busmux ciatarst1rstled bclkoc70j273273rst1:ldr:s£(6 .1:0(6. 1jt3【6clkclrx) qf1):rst1 :svbswaxuxbu 屮.0result61pc.b0】output devtte9 :17.0-0沁匚二硕和jm3i7.03ldri;uurglddr1那4:nlddr2

18、磧15:blddr2:ldrcld 1 rloadlordldarlorrdecodea0?decodebin创rod4r1d(01(7.0 :f卄w唯i7.old(6i(7 .01p(5h7 .0dr1dr2drip.fi:.01dr2|7.0busarbus7.,01 :rs.b rd_b rj_b299-balu.bpc.brst9c7.0】olkrom aclkmicro-cortrolfer52(13rpp12jyc3jp【3jaryc©3lore8 decoaee_4(a9)(as)©cxi yc2jdcoj yc1j!【<)】 qci>.m8|m9

19、|mqzlmi161kvedc 7- - 03m(10mgm12iuas; 01fti :j.75 insiructicr) reg * se6 ld«oode2_4yc3jch yc2joroj venvc 03ledjham§w b299aluramdecodecpulprl pprl arldpc7.严d(2i(7.0p(101(7.0p(121(7.0ir1(7 .0:p(13i7.0|p(141(7.0w 血i7.000p161(7.0图6-3模熨计算机电路原理图地址(16进制)内容(16进制)助记符说明0000inc口增0110sub减法020a0320and与

20、040b0530or或05oc0740not非080009000a01自定0b00oc02自定0d000e03自定三. 实验步骤(做了两个程序,以下是第一个)1. 微程序的输入:根据表6-2所对应的二进制微代码,编辑lpm.rom配置文件 rom_ll.mif惨考demod_cpu5文件夹中的同名文件),并将其保存在与实验电路bloo_c.bdf 工程所在的文件夹中,与实验电路bloo.c.bdf -同编译后,得到下载文件bloo_c.sofq下载 配置文件bus_c.sof卜载到实验系统。实验板上的时钟clocko选择输入频率为1.5mhz0图6-3 是示例原理图,详见bl00_c.bdfo

21、2. 输入模型机的程序romaddr0000c04800e00400b005619a01099ao101ed87e99a0100ao150000002030000000 i “000000odoood000000000000000000oboooo ooodoooooooo oooooo01a206038201"oooooo ooooooooooooc'noooij ilhuijljij oooooo oooooo oooooo0181111001liii101ed92000000000000oooooo01 ah1i:i oooooo uuijijoo oooooo ooo

22、ooo oooooo门062011 oooooo01ed8201ed8301ed94 oooooouu0000oooooo01ed8es800toooooo000000 _oooooo (ooooooooooooooooooif拿| 60oooooooooooooooooooooooo40ram1 ramc:0000000010oa200b30ob40120034340000000000000000000000000000001900000000000000000000000000000000000000000000000000000032000000000000000000000000000

23、0000000000000000000000000004b000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000007d0000000000000000000000000000000000000000000000000000009600000000000000000000000000000000000000000000000000ooooaf00000000000000000000000000000000000000000000000

24、0000000c800000000000000000000000000000000000000000000000000ooooe1000000000000000000000000000000000000000000000000000000fa0000000000003自动配置lpm_ram如果程序量大,手动输入效率太低,可以在计算机上编译好代码文件,并随同模型cpu 设计文件一同编译进sof下载文件中,直接下载进入fpga。在quartusll环境下,打开工程文件bloo_c.bdf,修改bloo_c.bdf中lpm_ram_dq 的参数,将初始化文件lpm_file设置为:u./5_ram.

25、mir;打开“5_ram.mif(在示例中已有 此文件),根据“实验程序1”,在5_ram.mif屮输入全部机器指令代码(示例屮已经输入)。(2)将工程文件重新编译后,下载到实验台小,即完成lpm_ram的配置。(3)根据以上的方法,复位信号rst (键8) =1;将控制开关swb、swa (键4、键3) 设置为:0、0,按键7,每两个2次单步运行(产牛.2个正脉冲),检验配置进入fpga中的 程序代码。4. eab在系统读写使用在系统eab读写工具对模型cpu中的存放微程序的rom和存放程序与数据的ram 进行观察和改写(图6-3)05. 用嵌入式逻辑分析仪了解cpu运行情况可以利川实验系统

26、上的液晶屏上的数据显示和嵌入式逻辑分析仪同时了解cpu的每一 单步运行情况(图6-4)o注意,图6-4的嵌入式逻辑分析仪设置情况:采用吋钟使用cpu 的工作时钟(clkl=1.5mhz),釆样深度64位,触发位置:pre.,触发信号用单步控制信 号:step;触发方式:上升沿。左侧的观察信号,datal是alu; data2是ram; p10j是ar; p是ir;百 |cpu5a gl q cpusabdfimtnce managerindex i instance id»j0 rom51?旳5jjglulcbdti 艺|rm5mifi 豹 ramj电.訂 |rea(fy to acquire 勿 xi®心| width| dedthnot running2464not running8256j tag chain con/iguogn ptag re妙hardware |usb-blai/ef (usb-ojdevice|1 ep1c6|0xo20820od)01ed8201ed8301ed94000000000000000000nn0

温馨提示

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

评论

0/150

提交评论