计算机设计与实践实验报告.docx
《计算机设计与实践实验报告.docx》由会员分享,可在线阅读,更多相关《计算机设计与实践实验报告.docx(83页珍藏版)》请在三一文库上搜索。
1、洛需演/家人季计算机设计与实践实验报告给定指令系统设计一一CPU院系:计算机科学与技术名*学号:班级:目录实验目的4实验环境5设计思想5CPU接口信号定义5指令格式设计6RISC处理器设计格式6微操作的定义9节拍的划分9处理器结构设计框图及功能描述10各模块结构设计框图及功能描述12时钟模块122取指模块133运算模块144访存模块155回写模块166访存控制模块18进度安排20实验各模块的设计及仿真20时钟模块20产生节拍的代码:20仿真波形:24取指模块24代码:24仿真波形:29ALU运算模块30代码:30仿真波形:38访存模块39代码:39仿真波形:43回写模块43代码:43仿真波形:
2、51访存控制模块52代码:52仿真波形:59cpu元件例化61代码:61仿真波形:73UCF文件:76总体测试结果及说明81测试指令序列81设计、调试、下载中遇到问题及解决方案821、设计中遇到的问题及解决方案822、调试中遇到的问题及解决方案833、下载中遇到的问题及解决方案83实验总结83实验目的1. 掌握XilinxISE集成开发环境和ModeSim仿真工具的使用方法2. 掌握VHDL语言3. 掌握FPGA编程方法及硬件调试手段4. 深刻理解处理器结构和计算机系统的整体工作原理实验环境XilinxISE集成开发环境、MOdeSim或ISim仿真工具SD2100数字逻辑设计实验平台设计思想
3、CPU接口信号定义信号名位数方向来源/去向意义RST1I处理器板高电平复位elk1I处理器板系统时钟nMREQ10主存储器存储器片选nrd10主存储器存储器读nwr10主存储器存储器写nbhe10主存储器高位字节访问允许nble10主存储器低位字节访问允许abus160主存储器地址总线dbus16I/O主存储器数据总线timeout40FPGA-二极管节拍显示nirout10FPGA-SOS1指令显示ndbus160FPGA-S3S4数据总线内容显示nabus160FPGA-S5S2地址总线内容显示ncyout10FPGA-AO进位标志位显示nbheout10FPGA-A5高位字节访问允许显示
4、nbleout10FPGA-A4低位字节访问允许显示nmreqout10FPGA-A7存储器片选显示nrdout10FPGA-A6存储器读显示nwrout10FPGA-A3存储器写显示k8IFPGA-KO控制使其显示存放器npcout40FPGA-B4-B7显示PC改变指令格式设计RISC处理器设计格式1)指令系统中指定所有的指令都是二进制指令2)通用存放器的数量为8,需要3位地址与之对应3)访存的形式地址为8位4)定义指令的高5位表示操作码存放器-存放器型指令5353OPADlAD2其他指令类型538OPADlAD2实验中指令设计JMPX(RX-PC)OOOOOOOOXJZRiX(ifRi=
5、OthenPC+R力/XPC)OOOlORiXSUBRi7RjRi-Rj-RiOOlOORiOOOOORjADDRi,RjRi+Rj-RiOOllORiOOOOORjMVIRi,XX-RiOlOOORiXMOVRi,RjRj-RiOlOlORlOOOOORjSTARi,XRi-R/XOllOORiXLDARi7XR“X-RiOHIORiXSET1cy-l100OOSETOcy-0100lO微操作的定义指令名称助记符二进制操作码无条件跳转JMP00000条件跳转JZ00010减法操作SUB00100加法操作ADD00110立即数传送MVI01000存放器传送MOV01010存数操作STA0110
6、0取数操作LDAOlllO进位置工SETl10000进位置OSETO10010节拍的划分划分4个节拍节拍对应操作TO取指操作Tl运算ALUT2访存操作T3回写操作处理器结构设计框图及功能描述Cpu总体设计图Cuodatepcoutl5:0)mupdatealouout(7:0)RtemnADDRPCoUTlM(15:。)LMIR(15:0)IRin(15:0)addr(15:0)pcnewpcupdateRtempin(7:0)pcnewtopcABus(15:0)mreq访存控制DBus(15:0)WR主存储器功能:设计的CPU是一个简单的RISC处理器,该处理器是在给定的指令集下构建,支持
7、以上的十条指令。主存在一个时钟周期内完成一次存取操作,而且和CPU同步工作。能根据自己设计的指令完成以上的操作。并将其局部显示在SD2100数字逻辑设计实验平台各模块结构设计框图及功能描述时钟模块COunt4CIkF、t(3:0)rstSZAcount4信号接口定义:信号名位数方向来源/去向意义elk1I系统时钟外接系统时钟rst1I系统复位外接系统复位t40产生节拍节拍控制各个模块模块功能描述:时钟模块是一个四节拍的计数器,负责对各个模块输送节拍,以此来控制各个节拍协调工作。CIk产生脉冲,t会循环改变t的值,每次都只有一个1,到达节拍的效果。当复位信号有效,才会都变成02)取指模块GetI
8、RGetIR信号接口定义:信号名位数方向来源/去向意义TO1I时钟模块第一个节拍取指Rst1I系统复位系统复位Pcin16I访存控制回写的PC送给PCRupdate1I回写模块回写模块控制pc更新控制Pcout160回写模块Pc送往同写模块Pcout_m160访存控制Pc送往访存控制Irin16I访存控制访存控制取出的指令送取指模块Rout1O访存控制取指的读信号送完访存控制irout16O运算模块指令输出便其他模块使用模块功能描述:to节拍控制取指模块工作。Rst复位pc,1到初始地址。Rupdate负责PC更新的值送到pc,形成新的地址。取指模块主要功能是送地址给访存控制,取出指令到R3)
9、运算模块aluIRiMI5:0)addn(15:0)Huout(ZO)Rdata(TiO)CupdatecyinMUPdateRupdatep(15:0)BgPOUtO(7:0)Rejout1(7:0)BgJOUt2(7:0)BgPoUt3(7:0)Rejout4(7:0)Rejout5(7:0)Rejout6(7:0)gjout7(7:0)CyOUtalu信号接口定义:信号名位数方向来源/去向意义Rupdate1I回写模块回写数据控制信号Mupdate1I回写模块Mvi/mov回写控制Cupdate1I回写模块进位回写控制Rdata8I回写模块回写的数据Tl1I时钟模块节拍控制Cyin1I回
10、写模块进位输入Cyout10进位送回写进位输出至回写Irin16I指令输入指令输入aluAluout80送回写/访存控制运算等结果输出pcjmp160跳转指令至PC跳转指令送到取指的pcAddr160形成地址送访存指令形成地址送访存控制RegoutO-Regout780存放器输出显示存放器引出到cpu,显示存放器功能描述:tl节拍控制alu,在alu中执行各条指令。根据IRin指令的操作码,执行指令,结果从aluout,CyoUt,addr送出。回写的时候,Rupdate控制回写数据送入,cupdate控制进位回写,Mupdate控制mov/mvi的回写数据。其中pcjmp是直接跳转的地址送往
11、pc。其中显示存放器,将RegoutO-Regout7引出到cpu4)访存模块MemoryMemory信号接口定义:信号名位数方向来源/去向意义T21I时钟模块节拍控制访存模块Irin16I取指ir输出指令输入,发读写信号Rtempin8I访存控制存储器中取出的数输入Rtempout80回写模块暂存的数送回写Wout10送访存控制发写信号rout10送访存控制发读信号功能描述:t2控制访存模块,主要是取数的时候,取出的数暂存在访存模块,然后通过回写送到对应的存放器5)回写模块WriteBackWriteBack信号接口定义:信号名位数方向来源/去向意义T31I时钟模块节拍控制回写Irin16I
12、取指模块IR输出指令上操作码给出对应控制Pcin16I取指模块Pc值输入Pcjmp16I运算模块JmP跳转地址回写Pcout160送取指模块回写新PC回写Rupdate10送运算模块回写控制回写运算、取数数据控制Mupdate10送运算模块回写控制HI写mov/mvi数据控制Pcupdate10送取指模块回写控制Pc回写控制Cupdate10送运算模块回写控制进位回写控制Rtempin8I访存模块取出的数送回写Aluout8I运算模块运算等结果送回写Cyin1I运算模块进位结果送回写cyout10送运算模块回写进位结果回写至运算模块Rdataout80送运算模块回写数据回写至运算模块功能描述:
13、t3节拍控制回写模块的工作。回写模块主要是将各个指令产生的结果暂时送到回写模块里,然后在相对应的时间送到对应的地方。加减运算结果,mov/mvi结果,取数结果,PC更新的结果以及进位都暂存在回写模块,通过指令译码,在对应的指令上添加控制信号:Rupdate,mupdate,cupdate,pcupdateo再送取指和运算模块。6)访存控制模块MemControaddrin(150)Abus(15:0)aluout(O)IROUt(15:0)Pein(I型MreqRinnBHEnBLErstRtoMRDtoWRt2Dbus(15:0)WinRtemp(7:0)MemContro信号接口定义:信号
14、名位数方向来源/去向意义TO1I时钟模块时钟产生的节拍控制T21I时钟模块时钟产生的节拍控制Rst1I系统复位系统复位Pcin16I取指模块取指送的PC至存储器,取出指令Addrin16I运算模块形成的地址送存储器Aluout8I运算模块运算结果送存储器存Rin16I访存模块访存模块读信号Win1I访存模块访存模块发写信号Rtom1I取指模块取指发的读信号Rtemp8I/O数据送访存模块取数取出的数据Irout160取指输出指令取出的指令放回取指模块Abus160存储器地址总线存储器地址总线Dbus16I/O存储器数据总线存储器数据总线给数据Mreq10存储器片选存储器片选控制信号Wr10存储
15、器写存储器写控制Rd10存储器读存储器读控制Nbhe10存储器高位字节存储器高位字节访问允许nble10存储器低位字节存储器低位字节访问允许功能描述:访存控制模块主要是与存储器相连接,能够从存储器中取数据,指令,能将数据、地址送到存储器中存储。tot2两个节拍分别控制不同的操作,to是取指的时候,从存储器中读出指令;t2那么是在需要访存的时候,由访存模块给读写信号,使访存控制对应存储器操作。进度安排第二周完成所有的仿真,在硬件实验平台上调试第三周写实验报告,准备考试第一周完成总体设计及各个模块代码编写实验各模块的设计及仿真时钟模块产生节拍的代码:LIBRARYieee;USEieee.std_
16、logic_1164.ALL;entitycount4isPrt(clk,rst:instd_logic;t:outstd_logic_vector(3downto0);endcount4;architectureBehavioralofcount4issignaltemp:stdjogic_vector(3downto0);beginprocess(rst,clk)beginif(rst=,l,)then-复位t=0000;temp=0001;-准备一个时钟之后送给telsif(clk=,l,andclk,event)thenttemptemptemptemptempelk,rst=rst,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 设计 实践 实验 报告
