计算机系统结构试验报告.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《计算机系统结构试验报告.pdf》由会员分享,可在线阅读,更多相关《计算机系统结构试验报告.pdf(71页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、rjw rjw r j*r j*rjw rjw rj设 计 性 实 验(报告)题 目:课 程:院(部):专 业:班 级:学生姓名:学 号:简 单16位CPU设计计算机系统结构计算机科学与技术学院计算机科学与技术专业指导教师:完成日期:*大学计算机科学与技术学院简单16位CPU设计一、实验内容完成从指令系统到CPU的设计,编写测试程序,通过运行测试程序对CPU设计进行正确性评定。具体内容包括:典型指令系统(包括运算类、转移类、访存类)设计;CPU结构设计;CPU的VHDL程序代码编写;规则文件与调试程序设计;CPU调试及测试程序运行。完成指令系统扩展后的CPU设计,为提高CPU性能,鼓励有条件的
2、学生完成多级流水CPU设计、甚至多级流水带Cache的CPU设计,编写测试程序,通过运行测试程序对CPU设计进行正确性评定。二、实验目的及要求1.加深对计算机的基本概念、基本原理和基本结构的理解;2.掌握计算机组成与系统结构方面的基本设计、分析与实现方法;3.掌握典型16CPU设计方法;4.熟练掌握VHDL语言及应用,完成对CPU各功能模块的代码描述,实现各个功能模块部分的连接,从而形成一个完整的CPU体系结构;5.学会利用先进的硬件设计工具软件Quartos II对程序进行仿真和调试;6.掌握基于“TEC-CA试验教学系统”进行CPU调试的方法。三、实验仪器设备1.实验环境(1)TEC-CA
3、试验教学系统;(2)虚拟仪器平台;(3)计算机。2.预备知识应具备如下课程相关知识。(1)数字电路与数字逻辑;(2)汇编语言程序设计(3)计算机组成原理;(4)计算机系统结构;(5)电子设计自动化E D A技术四、实验方案设计(-)依据需求,完成指令系统定义(1)指令由操作码和地址码组成。(2)指令集格式的设计确定操作码字段和地址码字段的大小及其组合形式,以及各种寻址方式的编码方法。设计原则1)尽可能地增加寄存器数目和寻址方式类型;2)充分考虑寄存器字段和寻址方式字段对指令平均字长的影响,以及它们对目标代码大小的影响;3)设计出的指令集格式能够在具体实现中容易处理。(4)指令集格式的选择三种指
4、令集编码格式:1)变长编码格式;2)固定长度编码格式;将操作类型和寻址方式组合编码在操作码中,所有指令的长度是固定唯一的3)混合型编码格式.改进:指令格式的优化:如何用最短的位数来表示指令的操作信息和地址信息,使程序中指令的平均字长最短。操作码的三种编码方法:固定长度:规整性好,解码简单,空间大。H uf f m a n 编码:空间小,规整性不好,解码复杂。扩展编码:折衷方案主要目标:节省程序的存储空间指令格式尽量规整,便于译码典型指令系统(1)分类:运算指令、转移指令、存储器访问指令。(2)寻址方式:寄存器寻址、立即寻址、寄存器间接寻址、相对寻址。(3)格式功能1)加法格式:A D DD R
5、,S R ;S U M功能:D R2)加 1D R+S R,影响C 和 Z 标志格式:I N CD R功能:D R3)减法D R+1,影响C 和 Z 标志。格式:S U BD R,S R功能:D R4)减 1D R-S R,影响C 和 Z 标志。格式:D E CD R功能:D R5)逻辑与D R-1,影响C 和 Z 标志。格式:A N DD R,S R功能:D R6)逻辑或D R a n d S R,影响Z 标志。格式:O RD R,S R功能:D R7)逻辑非D R or S R,影响Z 标志。格式:N O TD R功能:D R n ot D R,影响Z 标志。8)R 传送格式:M O V
6、D R,S R功能:D R S R,不影响标志位。9)绝对转移(长转移)格式:J M P A D R功能:P C A D R,不影响标志位。1 0)条件C转 移(相对转移)格式:J N C A D R功能:C=0,P C A D RC=1,P C P C+1,不影响标志位。1 1)条件Z 转 移(相对转移)格式:J N Z A D R功能:Z=0,P C A D RZ=1,P C P C+1,不影响标志位。1 2)立即数传送格式:M V R D R D,D A T A ;S T R D功能:R D D A T A,不影响标志位。1 3)访存读(寄存器间接寻址)格式:L D R D R,S R功
7、能:D R S R ,不影响标志位。1 4)访存写(寄存器间接寻址)格式:S T R S R,D R功能:D R S R,不影响标志位。(流行做法)1 5)空操作格式:N O P功能:空操作本指令系统共1 5条指令,基本上是齐全的。(4)指 令 编 码(机器码)1)儿点说明C P U为1 6位:C P U的并行处理能力1 6位,总线宽度为1 6位,指令长度至少1 6位。采用对称式寄存器结构:无累加器的概念(都可),形成的通用寄存器组有两个输出端口(读端口)、一个输入端口(写端口)。设共有4个R (R 0-R 3)o2)指令编码中应反映如下信息(方便译码)指令分类:运算类、转移类、访存类。N O
8、 P 用 M O V R O,R 0 实现。用两位编码:I R 1 5,I R 1 4运算类:0 0转移类:1 0访存类:1 1运算类指令操作码(直送A L U)7条运算类指令,3位编码:(I R 1 5=0)I R 1 4,I R 1 3,I R 1 2A D D 00 0I N C 00 1S U B 01 0D E C 01 1(I R 1 5=0)I R 1 4,I R 1 3,I R 1 2A N D 10 0O R 10 1N O T 11 0N O P 11 1结 果 处 理(送R或送M)两种选择,1位编码:I R O=1:送D R;影 响Z标志否,1位编码:I R 1=1,影响
9、;影响C标志否,1位编码:I R 2=1,影响。没用的位设为0 (保留位)3)指令机器码A D D D R,S R :0 0 0 0 D R S R-0 0 0 0 0 1 1 1I N CD R:0 0 0 1 D R S R-0 0 0 0 0 1 1 1S U B D R,S R :0 0 1 0 D R S R-0 0 0 0 0 1 1 1D E C D R:0 0 1 1 D R S R-0 0 0 0 0 1 1 1A N D D R,S R :0 1 0 0 D R S R-0 0 0 0 0 0 1 1O RD R,S R:0 1 0 1 D R S R-0 0 0 0 0
10、0 1 1N O TD R:0 1 1 0 D R S R-0 0 0 0 0 0 1 1M O VD R,S R:0 1 1 1 D R S R-0 0 0 0 0 0 0 1J M PA D R:1 0 0 0 0 0 0 0-0 0 0 0 0 0 0 0:“1 6 位 A D R”J N CA D R:1 0 0 1 0 0 0 0-re l(8 b i t)J N ZA D R:1 0 1 0 0 0 0 0-re l(8 b i t)M V R D R D,D A T A:1 1 0 0 0 0 0 0-0 0 0 0 0 0 0 0“1 6 位 D A T A”L D AD R,
11、S R:1 1 0 1 D R S R-0 0 0 0 0 0 0 1S T RS R,D R:1 1 1 0 D R S R-0 0 0 0 0 0 0 0N O P:0 1 1 1 0 0 0 0-0 0 0 0 0 0 0 0()C P U结构设计简单C P U结构:无流水、无C a ch e;主要部件有:(1)运算单元A L U;(2)通用寄存器组;(3)控制器(译码);(4)取指操作(时序电路);(5)存储器操作。C P U主要功能部件及关系:1、时 序 部 件(电路)(1)概 述C P U工作的关键部件,产生计算机执行机器指令所需的时序信号。计算机的工作过程:一个指令周期接一个指令
12、周期;在一个指令周期内是一个机器周期接一个机器周期;在一个机器周期内是一个节拍接一个节拍;在一个节拍内产生哪些微操作信号取决于指令操作流程。伴随着指令的执行,计算机内部有两股信息在流动:一股是数据流,流过不同的部件完成不同处理;一股是控制信号流,控制数据从何处流出、经 过 何 地(运算处理部件)、流往何处,微控制信号的产生由指令操作流程规定(操作码),控制信号有效状态的先后顺序由节拍控制。(2)机器周期目标:一个机器周期执行一条单字指令。如:A D D D R,SR执行过程:1)取指;2)译码分析;3)执 行(运算);4)写结果。可合并为三个阶段:1)取指;2)分析、执行;3)写 结 果(存储
13、器、寄存器)(3)节拍三个 阶 段(取指、分析执行、写结果)对应三个节拍。CP:t1;t2:t3:t l:取指一t l上升沿M A D D R l P C,t 2上升沿指令送I R;P C+1 (t em p)t 2:译码分析、运算处理(Z、C T E M P);t 3:存储器、寄存器读写,下降沿写寄存器,改变C、Z、P C等。2、指令译码器及微操作控制部件(1)指令译码器:对I R中的指令进行译码,并将译码信号送微操作控制器,以产生该指令所需的微操作控制信号。(2)微操作控制部件:微操作控制部件是一个函数发生器。其输入信号有:译码器的输出信号(指令)、时序部件输出的时序信号(节拍)和某些反馈
14、信号(条件);其输出信号为微操作控制信号(有序的系列信号)。(3)微操作控制部件构成:根据微操作控制信号产生的方式不同,微操作控制部件可分为:常规逻辑控制器、微程序控制器两种。(4)常规逻辑控制器:又称组合逻辑控制器或硬连线控制器,是由逻辑门和触发器实现的。(三)C P U设计实现C P U由5部分组成:取指部分i n s t r u_f et c h、指令译码部分dec o der u n i t执行部分ex e_un i t、存储器部分m em o r y _un i t、和通用寄存器组r eg f i l e。另外,还需设计一个程序包ex e_c p u_c o m p o n en t
15、 s,将各底层设计实体作为元件存储,供各设计实体使用。顶层设计实体ex e_c p u完 成C P U的5个组成部分的连接。memory_umtHIWASRDRwritechange_zchangeresetelkc jnz jnd.inpulout_SRout_DRc_outz_outresetelkt3Mcm_addrMcm_WritcSel_memda(aSR.dataresultwrobdata.readDR_(bta_outwc曲ar三Instru_fetchdecoder_unit$el_memdatac.inippc_incpc_incIRIRsjmp.addr(kita_rca
16、dz_tmpc_zj_llagsjmp_addrMem_Addrresultc_zj_flagDW_inslructDRDRWrchange/change_cIjjnstruciMein_WriteDWJnsirucir_sjmp_addrcj_instructop_c(xlezj_instructMein.W riieDW_insiruc(r_sjinp_addrcjjnstructop_codczj_instructDR_data1、取值部分i n s t r u_f et c h的实现取指部分完成4项工作:(1)产生时钟信号t l、t 2和t 3,供实验C P U各部分使用。(2)在复位
17、信号r es et为低时将P C复位为0;在一条指令执行结束后,根据指令执行的结果在t 3的下降沿改变P C的值。(3)将从存储器读出的指令的第一个字在t 2的上升沿送指令寄存器I R o(4)计算P C+1的值p c _i n c,为双字指令取第二个指令字做准备。传统上取指部分属控制器部分。指令instru_fetch:G_INSTRU_FETCH取指部分 instru_fetch:p a s s al i b r a r y i eee;us e i eee.s t d_l o g i c _l 1 6 4.a l l;us e i eee.s t d_l o g i c _a r i t
18、 h.a l l;use ieee.std_logic_unsigned.all;use work.exp_cpu_components.all;entity instru_fetch isport(reset,elk:in std_logic;data_read:in std_logic_vector(15 down to 0);一存储器读出的数1 j_instruct:in std_logic;-长转移指令DW_intruct:in std_logic;c_z_j_flag:in std_logic;一为 1 时进行条件转移sjmp_addr:in std_logic_vector(15
19、down to 0);-条件转移指令的转移地址tl,t2,t3:buffer std_logic;pc:buffer std_logic_vector(15 downto 0);pc_inc:buffer std_logic_vector(15 downto 0);IR:out std_logic_vector(15 downto 0);end instru_fetch;architecture behav of instru_fetch issignal start:std_logic;beginIR_poc:process(reset,t2)beginif reset=0,thenIR=x
20、7000;一nop 指令elsif t2event and t2=1 thenIR=data_read;end if;end process;p r o c es s(r es et,el k)b eg i ni f r es et =0,t h ens t a r t =1 ;el s ei f el k even t a n d el k =O t h ens t a r t =O ;en d i f;en d i f;en d p r o c es s;p r o c es s(r es et,el k)b eg i ni f r es et =O t h ent l 妇 O ;t 2
21、=O ;t3 二 O ;el s i f el k even t a n d el k =1 t h ent l =s t a r t o r t 3;t 2 =t l;t 3 =t 2;en d i f;en d p r o c es s;p c _i n c =p c +T;一为取双字指令的第2个字或者计算相对转移地址做准备P C _p r o c:p r o c es s (r es et,t 3)b eg i ni f r es et =O t h enp c =x 0 0 0 0”;el s i f t 3 even t a n d t 3 =O t h eni f 1 j _i n
22、 s t r uc t =1 t h enp c =da t a _r ea d;el s i f c _z _j _f l a g =1 t h enp c =s j m p _a ddr;el s i f D W _i n t r uc t =1 t h enp c =p c +1 0”;el s ep c =p c _i n c;en d i f;en d i f;en d p r o c es s;en d b eh a v;2、指令译码部分dec o der _un i t的实现指令译码部分根据指令寄存器IR的值产生实验C P U所需要的各种控制信号和其他信号:S R 源寄存器号(编
23、址)。DR 目的寄存器号(编址)。o p_ c o d e 控制A L U进行8种运算操作的3位编码。z j _ i n s t r u c t为1表示本条指令是条“J N Z ADR”指令。c j _ i n s t r u c t为1表示本条指令是条“J N C ADR”指令。l j _ i n s t r u c t为1表示本条指令是条“J M P ADR”指令。DRW r 为1表示在t3的下降沿将本条指令的执行结果写入目的寄存器。M e m.W r i t e为1表示本条指令有存储器写操作,存储器的地址是源寄存器的内容。DW _ i n t r u c t 为1表示本条指令是双字指令。
24、c h a n g e _ z 为1表示本条指令可能改变z (结果为0)标志。c h a n g e _ c 为1表示本条指令本条指令可能改变c (进位)标志。s e l.m e m d a t a为1表示本条指令写入目的寄存器的值来自读存储器。r _ s j m p_ a d d r计算条件转移指令转移地址所需要的16位相对地址。它是由条件转移指令中的8位相对地址经过符号扩展生成的。从上述控制信号看,实验CP U的指令译码器是很简单的。指令译码器在传统上属于控制器部分,是控制器的核心。所谓组合逻辑控制器是指指令译码器是由组合逻辑构成的,所谓微程序控制器是指指令译码器主要由控制存储器RO M和
25、少许组合逻辑构成的。decoder_unit:G_DECODER指令译码部分d e c o d e r _ u n i t:pa s s al i br a r y i e e e;u s e i e e e.s t d _ l o g i c _ 116 4.a l l;u s e i e e e.s t d _ l o g i c _ a r i t h.a l l;u s e i e e e.s t d _ l o g i c _ u n s i g n e d.a l l;u s e w o r k.e x p_ c pu _ c o m po n e n t s.a l l;e n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统 结构 试验报告
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内