ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:624.40KB ,
资源ID:14546551      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14546551.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机组成原理课程设计说明书.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

计算机组成原理课程设计说明书.docx

1、计算机组成原理课程设计说明书计算机组成原理课程设计说明书计算机组成原理课程设计说明书题 目: 设计求负数平方和的CISC模型计算机院 (系): 计算机科学与工程学院专 业: 计算机科学与技术学生姓名: 学 号: 指导教师: 陈智勇 1课程设计的题目与内容1.1题目设计一台嵌入式CISC模型计算机(采用定长CPU周期、联合控制方式),并运行能完成一定功能的机器语言程序进行验证,机器语言源程序功能如下:连续输入5个有符号整数(用8位二进制补码表示,十六进制数输入),求所有负数的平方和并输出显示。说明:15个有符号数从外部输入;2一定要使用符号位(比如说SF),并且要使用负的时候转移(比如说JS)或

2、不为负的时候转移(比如说JNS)指令;3采用三数据总线结构的运算器,采用RAM,先将输入数据依次存放在RAM的某一连续的存储区域内,再依次读出判断是否为负数,若为负数再求其平方和。1.2内容(1)完成系统的总体设计,画出模型机数据通路框图;(2)设计微程序控制器(CISC模型计算机)的逻辑结构框图; (3)设计机器指令格式和指令系统; (4)设计时序产生器电路; (5)设计所有机器指令的微程序流程图; (6)设计操作控制器单元;在CISC模型计算机中,设计的内容包括微指令格式(建议采用全水平型微指令)、微指令代码表(根据微程序流程图和微指令格式来设计)和微程序控制器硬件电路(包括地址转移逻辑电

3、路、微地址寄存器、微命令寄存器和控制存储器等。具体电路根据微程序控制器的逻辑结构框图、微指令格式和微指令代码来设计)。(7)设计模型机的所有单元电路,并用VHDL语言(也可使用GDF文件-图形描述文件)对模型机中的各个部件进行编程,并使之成为一个统一的整体,即形成顶层电路或顶层文件; (8)由给出的题目和设计的指令系统编写相应的汇编语言源程序;(9)根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机中的ROM中去;(10)使用EDA软件进行功能仿真,要保证其结果满足题目的要求;(其中要利用EDA软件提供的波形编辑器,选择合适的输入输出信号及中间信号进行调试。)(1

4、1)器件编程,并在EDA实验平台上进行操作演示。2系统总体设计2.1CISC模型机数据通路框图的设计2.2操作控制器的逻辑框图的设计2.3模型机的指令系统和所有指令的指令格式的设计1)I/O指令输入指令(IN1)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 Rd输出指令(OUT1)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rs2)转移指令非零条件转移指令(JNZ)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 地址addr非负条件转移指令(JNS)格式:15 14 13 1211 109

5、 87 6 5 4 3 2 1 0操作码 地址addr无条件转移指令(JMP)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 地址addr3)MOV指令MOV指令格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 Rd立即数im4)相加指令相加指令(ADD)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码RsRd5)有符号乘法指令乘法指令(IMUL)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rd6)加1指令加1指令(INC)格式:15 14 13 1211 10

6、9 87 6 5 4 3 2 1 0操作码Rd7)减1指令减1指令(DEC)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rd8)相与指令相与指令(AND)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rd9)字符串存储指令乘法指令(STO)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rs地址addr10)字符串存储指令乘法指令(STOI)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码RsRd11)取数指令取数指令(LAD)格式:15 14 13 1211

7、109 87 6 5 4 3 2 1 0操作码RsRd指令系统表:指令助记符 指令格式 功能 15-12 11 10 9 8 7-0 IN1 Rd 0001 Rd 输入设备Rd MOV Rd,im 0010 Rd im 立即数Rd LAD (Rs),Rd 0011 Rs Rd (Rs)Rd ADD Rs,Rd0100RsRd(Rs)+(Rd)RdINC Rd 0101 Rd (Rd)+1Rd DEC Rd 0110 Rd (Rd)-1Rd JNZ addr 0111 addr 若不等,则addrPC STO Rs,addr 1000 Rs addr (Rs)addr JMP addr 1001

8、 addr addrPC OUT1 Rs 1010 Rs (Rs)输出设备 STOI Rs,(Rd) 1011 Rs Rd (Rs)(Rd) IMUL Rd,Rd1100Rd(Rd) (Rd)RdAND Rd,Rd1101Rd(Rd) (Rd)RdJNS addr1110addr若不为正,则addrPC 其中,对源寄存器Rs与目的寄存器Rd的规定如下:Rs或Rd选定的寄存器00R001R110R211R3模型机规定数据的表示采用定点整数补码表示,单字长为8位,其格式如下: 76 5 4 3 2 1 0符号位尾数2.4时序产生电路的设计T1、T2、T3、T4与CLR、Q之间的关系图如图 1所示。

9、图 12.5机器指令的微程序流程图以及微指令的设计要设计微程序控制器,首先要设计微程序流程图以及微指令,其次再设计地址转移逻辑电路以及其它逻辑单元电路,设计步骤如下:1.根据指令格式和指令系统设计所有机器指令的微程序流程图,并确定每条微指令的微地址和后继微地址;2.设计微指令格式和微指令代码表;3.设计地址转移逻辑电路;4.设计微程序控制器中的其它逻辑单元电路,包括微地址寄存器、微命令寄存器和控制存储器。其中,微程序流程图设计如下图所示:微指令流程图设计完成后,开始设计微指令格式和微指令代码表,按照要求,CISC模型机系统使用的微指令采用全水平型微指令,字长为28位,其中微命令字段为19位,P

10、字段为3位,后继微地址为6位,其格式如下:LOAD LDPC LDAR LDIR LDRi LDPSW RS_B S2 S1 S0 ALU_B SW_B LED_B RD_D CS_D RAM_B CS_I ADDR_B CS_I P1 P2 P3 u5-uO按照以上格式,依据自身设计的微指令流程图,可以得到以下的微指令代码表:2.6地址转移逻辑电路的设计地址转移逻辑电路是根据微程序流程图中的棱形框部分及多个分支微地址,利用微地址寄存器的异步置“1”端,实现微地址的多路转移。由于微地址寄存器中的触发器异步置“1”端低电平有效,与A5A0对应的异步置“1”控制信号SE6SE1的逻辑表达式为: S

11、E6= ZFP(3)T4SE5=ZFP(2)T4SE4=I15P(1)T4SE3=I14P(1)T4SE2=I13P(1)T4SE1=I12P(1)T42.7软件清单ALU设计:其中S2,S1,S0表示的是算术逻辑运算单元ALU,其功能表为:S2S1S0功能000X+Y001X-Y010X+1011X-1100YY101XY110Y111YYVHDL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_SIGNED.all;ENTITY ALU ISPORT( X

12、: IN STD_LOGIC_VECTOR(7 DOWNTO 0); Y: IN STD_LOGIC_VECTOR(7 DOWNTO 0); S2,S1,S0: IN STD_LOGIC; ALUOUT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ; SF,ZF: OUT STD_LOGIC );END ALU;ARCHITECTURE A OF ALU ISSIGNAL AA,BB,TEMP:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN PROCESS BEGIN IF(S2=0 AND S1=0 AND S0=0) THEN -ADD AA=

13、X; BB=Y; TEMP=AA+BB; ALUOUT=TEMP(7 DOWNTO 0); SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000)THEN ZF=1; ELSE ZF=0; END IF; ELSIF(S2=0 AND S1=0 AND S0=1) THEN -CMP(SUB) ALUOUT=X-Y; IF(XY) THEN SF=1; ZF=0; ELSIF(X=Y) THEN SF=0; ZF=1; ELSE SF=0; ZF=0; END IF; ELSIF(S2=0 AND S1=1 AND S0=0) THEN -INC AA=

14、Y; TEMP=AA+1; ALUOUT=TEMP(7 DOWNTO 0); SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZF=0; END IF; ELSIF(S2=0 AND S1=1 AND S0=1) THEN -DEC AA=Y; TEMP=AA-1; ALUOUT=TEMP(7 DOWNTO 0); SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZF=0; END IF; ELSIF(S2=1 AND S1=0 AND

15、 S0=0) THEN -AND TEMP=Y AND Y; ALUOUT=TEMP; SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZF=0; END IF; ELSIF(S2=1 AND S1=0 AND S0=1) THEN -OR TEMP=X OR Y; ALUOUT=TEMP; SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZFBUS ALUOUT=Y; SF=Y(7); ELSIF(S2=1 AND S1=1 AND

16、S0=1) THEN -IMUL TEMP=Y *Y; SF=TEMP(7); ALUOUT=TEMP; IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZF=0; END IF; ELSE ALUOUT=00000000 ; ZF=0; END IF; END PROCESS;END A;算术逻辑单元ALU电路图如图 2所示: 图 24选1数据选择器MUX4VHDL源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX4_1 ISPORT( R0,R1,R2,R3:IN STD_LO

17、GIC_VECTOR(7 DOWNTO 0); X:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); I11,I10:IN STD_LOGIC);END MUX4_1;ARCHITECTURE A OF MUX4_1 ISBEGIN PROCESS BEGIN IF(I11=0 AND I10=0) THEN X=R0; ELSIF(I11=0 AND I10=1)THEN X=R1; ELSIF(I11=1 AND I10=0)THEN X=R2; ELSE X=R3; END IF; END PROCESS;END A;4选1选择器MUX4电路图如图 3所示:图 35选1

18、数据选择器MUX5VHDL源程序:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX5 ISPORT( SW_B,RS_B,RAM_B,ADDR_B,ALU_B : IN STD_LOGIC; SW,RS,RAM,ADDR,ALU: IN STD_LOGIC_VECTOR(7 DOWNTO 0); W: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END MUX5;ARCHITECTURE A OF MUX5 ISSIGNAL SEL:STD_LOGIC_VECTOR(4 DOWNTO 0);BEGIN SEL=S

19、W_B&RS_B&RAM_B&ADDR_B&ALU_B; PROCESS(SEL) BEGIN IF(SEL=01111)THEN W=SW; ELSIF(SEL=10111)THEN W=RS; ELSIF(SEL=11011)THEN W=RAM; ELSIF(SEL=11101)THEN W=ADDR; ELSIF(SEL=11110)THEN W=ALU; ELSE NULL; END IF; END PROCESS;END A;5选1数据选择器电路图如图 4所示:图 4状态字器存器PSWVHDL源程序:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL

20、;ENTITY PSW ISPORT( LDPSW : IN STD_LOGIC; ZI,SI: IN STD_LOGIC; FZ,FS: OUT STD_LOGIC );END PSW;ARCHITECTURE A OF PSW ISBEGIN PROCESS(LDPSW) BEGIN IF(LDPSWEVENT AND LDPSW=1)THEN FZ=ZI; FS=SI; END IF; END PROCESS;END A;状态字寄存器PSW电路图如图 5所示:图 5微程序控制器CROMCROM的电路图如图 6所示:图 6其内部电路图如图 7所示:图 7其组成的部件有以下:地址转移逻辑AD

21、DRLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ADDR IS PORT( I15,I14,I13,I12:IN STD_LOGIC; FZ,FS,T4,P1,P2,P3:IN STD_LOGIC; SE6,SE5,SE4,SE3,SE2,SE1:OUT STD_LOGIC);END ADDR;ARCHITECTURE A OF ADDR ISBEGIN SE6=NOT (NOT FS) AND P3 AND T4); SE5=NOT (NOT FZ) AND P2 AND T4); SE4=NOT ( I15 AND P1 AND T4);

22、 SE3=NOT (I14 AND P1 AND T4); SE2=NOT (I13 AND P1 AND T4); SE1=NOT (I12 AND P1 AND T4);END A; 地址转移逻辑ADDR电路图如图 8所示:图 8微命令寄存器MCOMMANDVHDL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_SIGNED.ALL;ENTITY MCOMMAND ISPORT( T2,T3,T4:IN STD_LOGIC; D:IN STD_LOGIC

23、_VECTOR(20 DOWNTO 0); LOAD,LDPC,LDAR,LDIR,LDRI,LDPSW,RS_B,S2,S1,S0:OUT STD_LOGIC; ALU_B,SW_B,LED_B,RD_D,CS_D,RAM_B,CS_I,ADDR_B,P1,P2,P3:OUT STD_LOGIC );END MCOMMAND;ARCHITECTURE A OF MCOMMAND ISSIGNAL DATAOUT:STD_LOGIC_VECTOR(20 DOWNTO 0);BEGIN PROCESS(T2) BEGIN IF(T2EVENT AND T2=1) THEN DATAOUT(20

24、DOWNTO 0)=D(20 DOWNTO 0); END IF; LOAD=DATAOUT(20); LDPC=DATAOUT(19) AND T4; LDAR=DATAOUT(18) AND T3; LDIR=DATAOUT(17) AND T3; LDRI=DATAOUT(16) AND T4; LDPSW=DATAOUT(15) AND T4; RS_B=DATAOUT(14); S2=DATAOUT(13); S1=DATAOUT(12); S0=DATAOUT(11); ALU_B=DATAOUT(10); SW_B=DATAOUT(9); LED_B=DATAOUT(8); RD

25、_D=NOT(NOT DATAOUT(7) AND (T2 OR T3); CS_D=NOT(NOT DATAOUT(6) AND T3); RAM_B=DATAOUT(5); CS_I=DATAOUT(4); ADDR_B=DATAOUT(3); P1=DATAOUT(2); P2=DATAOUT(1); P3=DATAOUT(0); END PROCESS;END A; 微命令寄存器MCOMMAND电路图如图 9所示:图 9微地址寄存器aaVHDL源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MMM IS PORT( SE:IN ST

26、D_LOGIC; T2:IN STD_LOGIC; D:IN STD_LOGIC; CLR:IN STD_LOGIC; UA:OUT STD_LOGIC );END MMM;ARCHITECTURE A OF MMM ISBEGIN PROCESS(CLR,SE,T2) BEGIN IF(CLR=0) THEN UA=0; ELSIF(SE=0)THEN UA=1; ELSIF(T2EVENT AND T2=1) THEN UA=D; END IF; END PROCESS;END A;微程序寄存器内部电路图如图 10所示:图 10微地址寄存器aa合成图如图 11所示:图 11微地址转换器F1VHDL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY F1

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2