计算机组成原理实验报告-单周期CPU的设计与实现
- 格式:docx
- 大小:32.46 KB
- 文档页数:11
MIPS-CPU设计实验报告实验名称:32位单周期MIPS-CPU设计姓名学号:刘高斯11072205实验日期:2014年12月19日目录前言MIPS简介------------------------------------------------------------- 3 实验目的------------------------------------------------------------- 3第一部分VERILOG HDL 语言实现部分实验内容------------------------------------------------------------- 4 试验环境------------------------------------------------------------- 4 模块简介------------------------------------------------------------- 4 实验截图------------------------------------------------------------- 5 实验感想------------------------------------------------------------- 5 实验代码------------------------------------------------------------- 6第二部分LOGISIM 语言实现部分实验内容------------------------------------------------------------- 16 实验环境------------------------------------------------------------- 16模块设计------------------------------------------------------------- 16 试验感想------------------------------------------------------------- 23前言一、MIPS简介MIPS是世界上很流行的一种RISC处理器。
《计算机组成原理实验》实验报告(实验二)学院名称:专业(班级):学生姓名:学号:时间:2017 年11 月25 日成绩 :实验二:单周期CPU设计与实现一.实验目的(1) 掌握单周期CPU数据通路图的构成、原理及其设计方法;(2) 掌握单周期CPU的实现方法,代码实现方法;(3) 认识和掌握指令与CPU的关系;(4) 掌握测试单周期CPU的方法;(5) 掌握单周期CPU的实现方法。
二.实验内容设计一个单周期的MIPSCPU,使其能实现下列指令:==> 算术运算指令说明:以助记符表示,是汇编指令;以代码表示,是机器指令功能:rd←rs + rt。
reserved为预留部分,即未用,一般填“0”。
符号扩展再参加“加”运算。
(3)sub rd , rs , rt功能:rd←rs - rt==> 逻辑运算指令(4)ori rt , rs ,immediate功能:rt←rs | (zero-extend)immediate;immediate做“0”扩展再参加“或”运算。
(5)and rd , rs , rt功能:rd←rs & rt;逻辑与运算。
功能:rd←rs | rt;逻辑或运算。
==>移位指令==>比较指令功能:if (rs<rt) rd =1 else rd=0, 具体请看表2 ALU运算功能表,带符号==> 存储器读/写指令(9)sw rt ,immediate(rs) 写存储器功能:memory[rs+ (sign-extend)immediate]←rt;immediate符号扩展再相加。
即将rt寄存器的内容保存到rs寄存器内容和立即数符号扩展后的数相加作为地址的内存单元中。
(10) lw rt , immediate(rs) 读存储器功能:rt ← memory[rs + (sign-extend)immediate];immediate符号扩展再相加。
计算机组成与系统结构实验报告CPU设计与实现院(系):专业班级:计算机科学与技术组员:指导教师:实验目的:设计实现CPU部件。
实验仪器:PC机(安装Altebra 公司的开发软件QuartusII,Modelsim)两台TEC-CA计算机组成原理试验箱实验过程:一、理论设计1.1、设计指令集设计CPU第一步,就是根据需求,确定功能,并且设计出指令集。
指令集包括每一条指令的编码方式,操作码以及每一条指令实现的功能。
考虑到第一次设计CPU,在指令集设计过程中难免会出现考虑不周全或者指令集设计不科学的问题,我们借鉴了经典的31条MIPS指令集。
在对指令集每一条指令进行解读、分析后,我们确定:31条MIPS指令可以满足我们的CPU的基本功能。
下面将31条MIPS指令的编码格式、对应的操作类型以表格的形式列举出来:经典的MIPS指令有三种格式:R-TYPE、I-TYPE、J-TYPE。
其编码格式各不相同,分别代表寄存器操作指令、立即数操作指令、跳转指令。
寄存器操作主要是将寄存器中的树取出进行运算并存回寄存器;立即数操作为一个寄存器数与指令中的扩展后的立即数进行运算得到结果再存回寄存器;跳转我们后面的设计都是对这31条指令进行具体实现,所有的容紧密围绕这31条指令。
1.2、画数据通路图在设计完指令后,要做的就是根据指令描述的功能确定CPU有哪些部件,并且确定各部件之间的连线方式。
首先,一个CPU最重要的部件一定是控制器。
控制器就像人的大脑,控制其他各个部件的工作。
其次,由于是基于MIPS指令集的CPU,大多数操作基于寄存器,因此必须设计一个寄存器堆。
此外,ALU 运算部件对于CPU来说也是必不可少的。
由于有六条指令涉及比较操作,并且给有效位置位。
考虑到本CPU设计初衷是四级流水控制,若一条指令多个节拍使用ALU部件会造成部件冲突,后期控制会比较复杂。
因此,在本CPU中额外设计了一个比较部件。
此外,还有其他部件,如PC部件、立即数扩展部件、数据寄存器、地址寄存器等。
单周期CPU设计实验报告一、引言计算机是现代信息社会必不可少的工具,而CPU作为计算机的核心部件,承担着执行指令、进行运算和控制系统资源的任务。
随着科技的进步和计算能力的需求,CPU的设计也趋于复杂和高效。
本次实验旨在设计一种单周期CPU,探究其设计原理和实现过程,并通过实验验证其正确性和性能。
二、理论基础1.单周期CPU概述单周期CPU即每个时钟周期内只完成一条指令的处理,它包括指令取址阶段(IF)、指令译码阶段(ID)、执行阶段(EX)、访存阶段(MEM)和写回阶段(WB)等多个阶段。
每条指令都顺序地在这些阶段中执行,而不同的指令所需的时钟周期可能不同。
2.控制信号单周期CPU需要根据不同的指令类型产生不同的控制信号来控制各个阶段的工作。
常见的控制信号包括时钟信号(clk)、使能信号(En)、写使能信号(WE)和数据选择信号(MUX)等。
这些信号的产生需要通过译码器、控制逻辑电路和时序逻辑电路等来实现。
三、实验设计本次实验采用的单周期CPU包括以下五个阶段:指令取址阶段、指令译码阶段、执行阶段、访存阶段和写回阶段。
每个阶段的具体操作如下:1.指令取址阶段(IF)在IF阶段,通过计数器实现程序计数器(PC)的自增功能,并从存储器中读取指令存储地址所对应的指令码。
同时,设置PC使能信号,使其可以更新到下一个地址。
2.指令译码阶段(ID)在ID阶段,对从存储器中读取的指令码进行解码,确定指令的操作类型和操作数。
同时,根据操作类型产生相应的控制信号,如使能信号、写使能信号和数据选择信号等。
3.执行阶段(EX)在EX阶段,根据ID阶段产生的控制信号和操作数,进行相应的算术逻辑运算。
这里可以包括加法器、乘法器、逻辑运算器等。
4.访存阶段(MEM)在MEM阶段,根据EX阶段的结果,进行数据存储器的读写操作。
同时,将读取的数据传递给下一个阶段。
5.写回阶段(WB)在WB阶段,根据MEM阶段的结果,将数据传递给寄存器文件,并将其写入指定的寄存器。
计算机组成原理实验报告1-单周期计算机组成原理实验报告单周期处理器开发Q:64⽂档⽬录:1、功能设计说明2、模块化和层次化设计说明3、具体模块定义4、测试代码及结果5、实验完成时间安排6、⼼得体会1、功能设计说明1.完成的指令集:a) add,sub,and,or,slt,lw,sw,beq 和J 指令。
b) 不⽀持溢出。
2. 处理器为单周期设计。
3. 功能模块统⼀采⽤书上201页的图4-24设计,信号控制采⽤书上的193页图4-12和200页图4-22的真值表进⾏化简。
2、模块化和层次化设计说明3、具体模块定义数据通路:1)PC模块定义:(1) 基本描述PC 主要功能是完成输出当前指令地址。
复位后,PC指向0x0000_0000,此处为第⼀条指令的地址。
(2) 模块接⼝(3)功能定义2)NPC模块定义:(1) 基本描述NPC 主要功能是根据当前指令是否为beq指令,输出下⼀条指令的地址。
该模块调⽤了MUX模块。
(2) 模块接⼝(3)功能定义实现加、减、与、或、⼩于则赋1五种计算。
(2) 模块接⼝(3)功能定义4)MUX模块定义:(1) 基本描述实现32位和5位⼆选⼀数据选择器(2) 模块接⼝(3)功能定义5)EXT模块定义:(1) 基本描述将输⼊的16位地址按符号位扩展为32位。
(2) 模块接⼝(3)功能定义6)regfile模块定义:(1) 基本描述根据输⼊的两个寄存器地址,输出相应寄存器的值,根据寄存器写信号和寄存器地址,将输⼊的数据选择写⼊寄存器。
(2) 模块接⼝(3)功能定义7)im_4k模块定义:(1) 基本描述指令内存⼤⼩为4K,初始化从载⼊指令。
根据输⼊的指令地址,输出当前位置存储的指令。
(2) 模块接⼝(3)功能定义“数据内存”⼤⼩为4K,根据输⼊的地址读出“数据内存”中的数据,并根据数据写信号,将输⼊的数据选择写⼊“数据内存”中。
(2) 模块接⼝(3)功能定义9)Jump模块定义:(1) 基本描述将输⼊的低26位指令左移两位,⾼四位加上pc+4的⾼4位,组成32位地址输出。
计算机组成原理实验报告单周期处理器开发Q:10649503642015.05.12文档目录:1、功能设计说明2、模块化和层次化设计说明3、具体模块定义4、测试代码及结果5、实验完成时间安排6、心得体会1、功能设计说明1.完成的指令集:a) add,sub,and,or,slt,lw,sw,beq 和J 指令。
b) 不支持溢出。
2. 处理器为单周期设计。
3. 功能模块统一采用书上201页的图4-24设计,信号控制采用书上的193页图4-12和200页图4-22的真值表进行化简。
2、模块化和层次化设计说明3、具体模块定义数据通路:1)PC模块定义:(1) 基本描述PC 主要功能是完成输出当前指令地址。
复位后,PC指向0x0000_0000,此处为第一条指令的地址。
(2) 模块接口(3)功能定义2)NPC模块定义:(1) 基本描述NPC 主要功能是根据当前指令是否为beq指令,输出下一条指令的地址。
该模块调用了MUX模块。
(2) 模块接口(3)功能定义3)ALU模块定义:(1) 基本描述实现加、减、与、或、小于则赋1五种计算。
(2) 模块接口(3)功能定义4)MUX模块定义:(1) 基本描述实现32位和5位二选一数据选择器(2) 模块接口(3)功能定义5)EXT模块定义:(1) 基本描述将输入的16位地址按符号位扩展为32位。
(2) 模块接口(3)功能定义6)regfile模块定义:(1) 基本描述根据输入的两个寄存器地址,输出相应寄存器的值,根据寄存器写信号和寄存器地址,将输入的数据选择写入寄存器。
(2) 模块接口(3)功能定义7)im_4k模块定义:(1) 基本描述指令内存大小为4K,初始化从code.txt载入指令。
根据输入的指令地址,输出当前位置存储的指令。
(2) 模块接口(3)功能定义8)dm_4k模块定义:(1) 基本描述“数据内存”大小为4K,根据输入的地址读出“数据内存”中的数据,并根据数据写信号,将输入的数据选择写入“数据内存”中。
MIPS单周期CPU实验报告一、实验目的本实验旨在设计一个基于MIPS指令集架构的单周期CPU,具体包括CPU的指令集设计、流水线的划分与控制信号设计等。
通过本实验,可以深入理解计算机组成原理中的CPU设计原理,加深对计算机体系结构的理解。
二、实验原理MIPS(Microprocessor without Interlocked Pipeline Stages)是一种精简指令集(RISC)架构的处理器设计,大大简化了指令系统的复杂性,有利于提高执行效率。
MIPS指令集由R、I、J三种格式的指令组成,主要包括算术逻辑运算指令、存储器访问指令、分支跳转指令等。
在单周期CPU设计中,每个指令的执行时间相同,每个时钟周期只执行一个指令。
单周期CPU的主要部件包括指令内存(IM)、数据存储器(DM)、寄存器文件(RF)、运算单元(ALU)、控制器等。
指令执行过程主要分为取指、译码、执行、访存、写回等阶段。
三、实验步骤1.设计CPU指令集:根据MIPS指令集的格式和功能,设计符合需求的指令集,包括算术逻辑运算指令、存储器访问指令、分支跳转指令等。
2.划分CPU流水线:将CPU的执行过程划分为取指、译码、执行、访存、写回等阶段,确定每个阶段的功能和控制信号。
3.设计控制器:根据CPU的流水线划分和指令集设计,设计控制器实现各个阶段的控制信号生成和时序控制。
4.集成测试:进行集成测试,验证CPU的指令执行功能和正确性,调试并优化设计。
5.性能评估:通过性能评估指标,如CPI(平均时钟周期数)、吞吐量等,评估CPU的性能优劣,进一步优化设计。
四、实验结果在实验中,成功设计了一个基于MIPS指令集架构的单周期CPU。
通过集成测试,验证了CPU的指令执行功能和正确性,实现了取指、译码、执行、访存、写回等阶段的正常工作。
同时,通过性能评估指标的测量,得到了CPU的性能参数,如CPI、吞吐量等。
通过性能评估,发现了CPU的性能瓶颈,并进行了相应的优化,提高了CPU的性能表现。
CPU实验报告范文一、实验目的本次实验的目的是设计和实现一个简单的中央处理器(CPU),通过实践掌握CPU的基本工作原理和实现方法。
二、实验原理1.CPU的基本概念中央处理器(CPU)是计算机的核心部件,负责执行计算机指令和控制计算机的操作。
它由运算器、控制器和寄存器组成。
运算器负责执行算术和逻辑运算,包括加法、减法、乘法、除法等。
控制器负责指挥CPU的工作,通过控制总线实现对内存和其他外部设备的访问。
寄存器是CPU内部的存储器,用于暂时存放指令、数据和中间结果。
2.CPU的实现方法CPU的实现采用组合逻辑电路和时序逻辑电路相结合的方法。
组合逻辑电路是由逻辑门构成的电路,它的输入只依赖于当前时刻的输入信号,输出也只与当前时刻的输入信号有关。
而时序逻辑电路则包含存储元件,其输出不仅与当前时刻的输入信号有关,还与之前的输入信号有关。
CPU的实现过程主要包括以下步骤:(1)设计指令集:确定CPU支持的指令集,包括指令的格式和操作码。
(2)设计控制器:根据指令集设计控制器,确定各个指令的执行过程和控制信号。
(3)设计运算器:根据指令集设计运算器,确定支持的算术和逻辑运算。
(4)设计寄存器:确定需要的寄存器数量和位数,设计寄存器的输入输出和工作方式。
3.实验环境和工具本次实验使用的环境和工具如下:(1)硬件环境:计算机、开发板、示波器等。
(2)软件环境:Win10操作系统、Vivado开发工具等。
三、实验步骤1.设计指令集根据实验要求,我们设计了一个简单的指令集,包括加法、减法、逻辑与、逻辑或和移位指令。
每个指令有特定的操作码和操作数。
2.设计控制器根据指令集设计了一个控制器。
控制器根据指令的操作码产生相应的控制信号,控制CPU内部寄存器、运算器和总线的操作。
3.设计运算器根据指令集设计了一个运算器。
运算器包括加法器、减法器、与门和或门等。
它通过输入的操作数和控制信号完成相应的运算操作。
4.设计寄存器根据实验需求确定了所需的寄存器数量和位数。
计算机组成原理CPU设计实验报告课程设计题目:16位CPU设计学院: 信息学院班级:电子A班学号:1115102015姓名:方茹1目录1 实验方法 ..................................................................... . (4)2 总体说明 ..................................................................... ................................................. 5 2.1指令系统: .................................................................... .......................... 5 2.1.1指令格式分类(按指令字长和操作数不同): ...................................................... 5 2.1.2具体指令汇总表: .................................................................... .......................... 6 2.1.3相关指令流程图: .................................................................... .......................... 6 2.1.4指令数据通路的构建: .................................................................... ................... 8 2.1.5指令的分组及节拍: .................................................................... ..................... 12 2.1.6指令执行状态图:(见下页)..................................................................... ........... 13 2.1.7具体微指令: .................................................................... ............................... 13 2.2 系统整体介绍 ..................................................................... .................. 16 2.2.1系统基本模块划分 ..................................................................... ....................... 16 2.2.2总体结构图:(见下页)..................................................................... (17)3 CPU的控制逻辑与具体数据通道设计 ..................................................................... ......18 3.1取指令逻辑的设计 ..................................................................... .. (19)3.1.1指令地址的保存 ..................................................................... (19)3.1.2指令存储器 ..................................................................... .................................. 20 3.1.3下一条指令地址的计算 ..................................................................... ................ 20 3.2指令译码逻辑的设计...................................................................... ...................... 21 3.3指令执行逻辑的设计...................................................................... ...................... 22 3.4存储器访问逻辑的设计 ..................................................................... ................... 23 3.5结果写回逻辑的设计...................................................................... ...................... 24 3.6单周期CPU的总成...................................................................... (25)4各部分说明 ..................................................................... .............................................26 4.1ALU .................................................................................................................... 26 4.2数据选择器BUS_MUX ................................................................ ........................ 28 4.3器件T1 ..................................................................... .......................................... 30 4.4标志寄存器FLAG_REG ............................................................... ........................ 31 4.5T2: .................................................................... ................................................ 33 4.6程序计数器PC ..................................................................... ............................... 33 4.7地址寄存器AR和指令寄存器IR: .................................................................... .. 34 4.8寄存器、寄存器组和寄存器的选择.......................................................................36 4.9一位控制信号/WR .................................................................... ........................... 37 4.10 节拍发生器 ..................................................................... .................................. 37 4.11控制逻辑 ..................................................................... ...................................... 39 4.12T3...................................................................... ................................................ 42 4.13REG_OUT ......................................................................................................... 43 4.14存储器 ..................................................................... .......................................... 44 4.15总线选择器 ..................................................................... .. (45)24.16REG_TEST ............................................................... .. (46)5附录: .................................................................... .. (47)附录A:组员分工: .................................................................... .. (47)附录B:组员设计总结: .................................................................... . (47)31 实验方法实验要完成的工作主要包括:指令系统的设计,FPGA-CPU的整体结构设计及其细化,逻辑设计的具体实现(VHDL语言程序的编写),软件模拟,以及硬件调试。
1个时钟周期 Clock 电子科技大学计算机科学与工程学院标 准 实 验 报 告(实验)课程名称: 计算机组成原理实验 电子科技大学教务处制表电 子 科 技 大 学 实 验 报 告学生姓名: 郫县尼克杨 学 号: 2014 指导教师:陈虹 实验地点: 主楼A2-411 实验时间:12周-15周一、 实验室名称:主楼A2-411二、 实验项目名称:单周期CPU 的设计与实现。
三、 实验学时:8学时四、 实验原理:(一) 概述单周期(Single Cycle )CPU 是指CPU 从取出1条指令到执行完该指令只需1个时钟周期。
一条指令的执行过程包括:取指令→分析指令→取操作数→执行指令→保存结果。
对于单周期CPU 来说,这些执行步骤均在一个时钟周期内完成。
(二) 单周期cpu 总体电路本实验所设计的单周期CPU 的总体电路结构如下。
(三) MIPS 指令格式化MIPS 指令系统结构有MIPS-32和MIPS-64两种。
本实验的MIPS 指令选用MIPS-32。
以下所说的MIPS 指令均指MIPS-32。
MIPS 的指令格式为32位。
下图给出MIPS 指令的3种格式。
本实验只选取了9条典型的MIPS 指令来描述CPU 逻辑电路的设计方法。
下图列出了本实验的所涉及到的9条MIPS 指令。
五、 实验目的1、掌握单周期CPU 的工作原理、实现方法及其组成部件的原理和设计方法,如控制器、运算器等。
?2、认识和掌握指令与CPU 的关系、指令的执行过程。
?3、熟练使用硬件描述语言Verilog 、EDA 工具软件进行软件设计与仿真,以培养学生的分析和设计CPU 的能力。
六、 实验内容(一)拟定本实验的指令系统,指令应包含R 型指令、I 型指令和J 型指令,指令数为9条。
(二)CPU 各功能模块的设计与实现。
(三)对设计的各个模块的仿真测试。
(四)整个CPU 的封装与测试。
七、 实验器材(设备、元器件):(一)安装了Xilinx ISE Design Suite 的PC 机一台(二)FPGA 开发板:Anvyl Spartan6/XC6SLX45(三)计算机与FPGA 开发板通过JTAG (Joint Test Action Group )接口连接,其连接方式如图所示。
八、 实验步骤一个CPU 主要由ALU (运算器)、控制器、寄存器堆、取指部件及其它基本功能部件等构成。
?在本实验中基本功能部件主要有:32位2选1多路选择器、5位2选1多路选择器、32位寄存器堆、ALU 等。
(一)新建工程(New Project )启动ISE Design Suite 软件,然后选择菜单File →New Project ,弹出New Project 26 31 25 21 20 16 15 11 10 6 5 0op rs rt rd sa func R 型指令26 31 25 21 20 16 15 0op rs rt immediate I 型指令26 31 25 0op addressJ 型指令Wizard对话框,在对话框中输入工程名CPU,并指定工作路径D:\Single_Cycle_CPU。
(二)基本功能器件的设计与实现(1)多路选择器的设计与实现位2选1多路选择器(MUX5_2_1)的设计与实现在ISE集成开发环境中,在工程管理区任意位置单击鼠标右键,在弹出的菜单中选择New Source命令,创建一个Verilog Module模块,名称为:MUX5_2_1,然后输入其实现代码:MODULE MUX5_2_1(INPUT [4:0]A,INPUT [4:0]B,INPUT S EL,OUTPUT [4:0]O);ASSIGN O=S EL ?B:A;ENDMODULE在ISE集成开发环境中,对模块MUX5_2_1进行综合(Synthesize),综合结果如图所示:在ISE集成开发环境中,对模块MUX5_2_1进行仿真(Simulation)。
输入如下测式代码:MODULE MUX5_2_1_T;(A),.B(B),.SEL(SEL),.C(C));INITIAL BEGIN(A),.SEL(SEL),.O(O));INITIAL BEGINA=0;B=0;SEL=0;(D),.O(O));INITIAL BEGINN1(R N1),.R N2(R N2),.W N(W N),.W RITE(W RITE),.W D(W D),.A(A),.B(B),.C LOCK(C LOCK) );INITIAL BEGIN.B(B),.ALU_OPERATION(ALU_OPERATION), .R ESULT(R ESULT),.Z ERO(Z ERO));INITIAL BEGINP(OP),.R EG D ST(R EG D ST),.R EG W RITE(R EG W RITE),.ALUS RC(ALUS RC),.M EM W RITE(M EM W RITE),.M EM R EAD(M EM R EAD),.M EMTO R EG(M EMTO R EG),.B RANCH(B RANCH),.ALU CTR(ALU CTR));INITIAL BEGIN(A),.B(B),.ALU_OPERATION(ALU_OPERATION), .R ESULT(R ESULT),.Z ERO(Z ERO));INITIAL BEGINP(OP),.FUNC(FUNC),.R EG D ST(R EG D ST),.R EG W RITE(R EG W RITE),.ALUS RC(ALUS RC),.M EM W RITE(M EM W RITE),.M EM R EAD(M EM R EAD),.M EMTO R EG(M EMTO R EG),.B RANCH(B RANCH),.ALU_OP(ALU_OP) );INITIAL BEGINLOCK(CLOCK),.RESET(RESET),.B_ADDR(B_ADDR),.B(B),.Z(Z),.INST(INST),.O_ADDR(O_ADDR),.O_SUM(O_SUM),.O_SUM1(O_SUM1) );INITIAL BEGINESET(R ESET),.C LOCK(C LOCK),.I NST(I NST),.D ATA(D ATA),.M EM W RITE(M EM W RITE),.M EM R EAD(M EM R EAD),.R ESULT(R ESULT),.B_DATA(B_DATA),.N EXT PC(N EXT PC) );INITIAL BEGINDDRESS(ADDRESS),.INST(INST));INITIAL BEGINLOCK(C LOCK),.R ESET(R ESET),.I NST(I NST),.P C(P C),.A LUOUT(A LUOUT),.B_DATA(B_DATA));INITIAL BEGIN//I NITIALIZE I NPUTSC LOCK =0;R ESET =0;//W AIT 100 NS FOR GLOBAL RESET TO FINISH #100;C LOCK =~C LOCK;R ESET =1;#100;C LOCK =~C LOCK;R ESET =1;#100;C LOCK =~C LOCK;R ESET =1;#100;C LOCK =~C LOCK;R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK;R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK; R ESET =1;#100;C LOCK =~C LOCK;R ESET =1;ENDENDMODULE然后进行仿真,仿真结果如图:在该转移的地方进行了转移,成功。
九、实验数据及结果分析:在一个时钟周期内所设计的CPU能够完成一条指令的执行,指令执行结果与预期的结果是一致的。
通过仿真可以看到最终顺利实现了每个模块的功能,成功解决了之前出错的PC转移问题,整个CPU按照设计好的指令运行。
十、实验结论:单周期CPU在一个时钟周期完成指令的所有执行步骤,简化了CPU的设计,但是这样没有考虑不同部件完成时间上的差异,所以导致CPU各部件的利用率不高,采用多周期流水线CPU可以提高利用率,但是难度也会增大许多。
十一、总结及心得体会:我本身对这次实验很兴趣,指导教师陈老师也非常和蔼耐心地指导,所以比较顺利地完成了整个实验。
本次实验完全是独立完成,没有任何抄袭,包括实验报告的编写,每一段代码都是自己写出来的,每一张图片也都是自己截的图,虽然整个过程花的时间比较多,但确实收获很多,很开心,也希望能得到一个好的成绩。
本次实验让我切实感受到了仿真的好处,计算机仿真在实际生产中的作用,也很好地锻炼了自己的逻辑思维能力,对课堂第四章第五章的内容有了更为深刻的理解。
要合理地将本次实验中“把庞大的部件分割为许多小部件,逐一解决”的方法运用到对其它问题的解决中。
十二、对本实验过程及方法、手段的改进建议:建议增加2个实验学时,同时将要实现的指令增加为十一条,增加运算器溢出信号Overflow、判断溢出的加法运算,以及J型指令的设计与实现,从而进一步锻炼自己。
报告评分:指导教师签字:。