东秦组成原理课设报告Word文档格式.docx

上传人:b****1 文档编号:1466514 上传时间:2023-04-30 格式:DOCX 页数:25 大小:1.66MB
下载 相关 举报
东秦组成原理课设报告Word文档格式.docx_第1页
第1页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第2页
第2页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第3页
第3页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第4页
第4页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第5页
第5页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第6页
第6页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第7页
第7页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第8页
第8页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第9页
第9页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第10页
第10页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第11页
第11页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第12页
第12页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第13页
第13页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第14页
第14页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第15页
第15页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第16页
第16页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第17页
第17页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第18页
第18页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第19页
第19页 / 共25页
东秦组成原理课设报告Word文档格式.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

东秦组成原理课设报告Word文档格式.docx

《东秦组成原理课设报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《东秦组成原理课设报告Word文档格式.docx(25页珍藏版)》请在冰点文库上搜索。

东秦组成原理课设报告Word文档格式.docx

【课程设计内容】

1.指令系统设计

第7号指令:

助记符:

ADDA,EM

格式:

操作码和地址码

操作码:

ADD

地址码:

A,EM

功能:

将存储器EM地址的值加入累加器A中

寻址方式:

直接寻址

第14号指令:

SUBA,@R?

SUB

A,@R?

从累加器A中减去间址存储器的值

寄存器间接寻址

第28号指令:

ORA,#II

OR

A,#II

累加器A“或”立即数II

立即数寻址

第33号指令:

MOVR?

A

MOV

R?

A

将A中的值送入R?

2.模型机硬件设计:

题目:

机器周期产生电路

设计电路,实现A、B类指令分别有2和4个机器周期。

3.逻辑电路设计:

74LS139译码器。

功能:

实现双二—四译码器

机器周期

A

B

CYACYB

CYA‘CYB’

CYA’CYB’

M0

00

11

00

01

M1

10

M2

M3

【系统设计】

1.模型机逻辑框图

图1

图2

图3

2.指令系统设计

ADDA,EM

指令类型:

算术运算指令

指令格式:

001110

XX

操作码及寻址类型

第14号指令:

SUBA,@R?

001101

XX

操作码及R?

的选择00,01,10,11

第28号指令:

ORA,#II

逻辑运算指令

010111XX

操作码

MOVR?

数据传送指令

001001

操作码及R?

的选择00,01,10,11

3.微操作控制信号

1、XRD:

外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。

2、EMWR:

程序存储器EM写信号。

3、EMRD:

程序存储器EM读信号。

4、PCOE:

将程序计数器PC的值送到地址总线ABUS上(MAR)。

5、EMEN:

将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决

是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。

6、IREN:

将程序存储器EM读出的数据打入指令寄存器IR。

7、EINT:

中断返回时清除中断响应和中断请求标志,便于下次中断。

8、ELP:

PC打入允许,与指令寄存器IR3、IR2位结合,控制程序跳转。

9、FSTC:

进位置1,CY=1

10、FCLC:

进位置0,CY=0

11、MAREN:

将地址总线ABUS上的地址打入地址寄存器MAR。

12、MAROE:

将地址寄存器MAR的值送到地址总线ABUS上。

13、OUTEN:

将数据总线DBUS上数据送到输出端口寄存器OUT里。

14、STEN:

将数据总线DBUS上数据存入堆栈寄存器ST中。

15、RRD:

读寄存器组R0-R3,寄存器R?

的选择由指令的最低两位决定。

16、RWR:

写寄存器组R0-R3,寄存器R?

17、CN:

决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。

18、FEN:

将标志位存入ALU内部的标志寄存器。

19、WEN:

将数据总线DBUS的值打入工作寄存器W中。

20、AEN:

将数据总线DBUS的值打入累加器A中。

21-23:

X2~X0:

X2、X1、X0三位组合来译码选择将数据送到DBUS上的寄存器。

24-26:

S2~S0:

S2、S1、S0三位组合决定ALU做何种运算。

4.指令执行流程

编号

助记符

功能

机器码

周期总数CT

节拍数

微操作

控制信号

涉及的硬件

1

_FATCH_

取指令

000000XX

T2

PC→MAR

PCOE,MAREN

PC,MAR,EM,W,IR

T1

EM→W

EMEN,EMRD,WEN

T0

W→IR

IREN

PC+1

7

ADDA,

EM

001110XX

111

T7

POCE,MAREN

PC,MAR,EM,W,A,ALU,F

T6

PC→PC+1

T5

W→MAR

WEN,WAREN

T4

EMEN,WEN

T3

A+W→DBUS→A

S2~S0,AEN,FEN

14

SUBA,

@R

001101XX

101

→DBUS→MAR

RRD,MAREN,

X2~X0

R,DBUS,MAR,EM,A,W,ALU,F

ALU(A-W)→DBUS

→A

28

ORA,#II

011011XX

PCOEMAREN

PC,MAR,EM,W,A,

ALU,F

EM→W,

EMEN,EMRDWEN

WORA→DBUS

→A

S2~S0,AEN

33

100000XX

011

A→DBUS→R?

AEN

A,DBUS,A

流程图如下:

图47号指令流程图

图5第14号指令

图628号指令

图7第33号指令

指令周期安排:

图8分3号指令

【系统实现】

1.模型机实现

1)逻辑电路的图形符号表示、功能

图9

(2)系统实现

libraryIEEE;

useIEEE.STD_LOGIC_1164.ALL;

--Uncommentthefollowinglibrarydeclarationifusing

--arithmeticfunctionswithSignedorUnsignedvalues

--useIEEE.NUMERIC_STD.ALL;

--Uncommentthefollowinglibrarydeclarationifinstantiating

--anyXilinxprimitivesinthiscode.

--libraryUNISIM;

--useUNISIM.VComponents.all;

entitycycleis

Port(A:

inSTD_LOGIC;

B:

CYA:

CYB:

CLK:

cya1:

OUTSTD_LOGIC;

cyb1:

OUTSTD_LOGIC);

endcycle;

architectureBehavioralofcycleis

begin

PROCESS(CLK)IS

BEGIN

IF(CLK'

EVENTANDCLK='

1'

)THEN

IF(A='

)THEN

IF(CYA='

0'

ANDCYB='

)THEN

cya1<

='

;

cyb1<

ENDIF;

IF(CYA='

ENDIF;

ENDIF;

IF(B='

ENDIF;

ENDPROCESS;

endBehavioral;

1、逻辑电路设计

(1)逻辑电路的图形符号表示、功能

图10

useIEEE.STD_LOGIC_ARITH.ALL;

useIEEE.STD_LOGIC_UNSIGNED.ALL;

----Uncommentthefollowinglibrarydeclarationifinstantiating

----anyXilinxprimitivesinthiscode.

entityyjyis

inSTD_LOGIC_VECTOR(1downto0);

Y1:

outSTD_LOGIC_VECTOR(3downto0);

Y2:

outSTD_LOGIC_VECTOR(3downto0));

endyjy;

architectureBehavioralofyjyis

P1:

PROCESS(A)

BEGIN

CASEAIS

WHEN"

00"

=>

Y1<

="

0111"

WHEN"

01"

1011"

10"

1101"

11"

1110"

WHENOTHERS=>

1111"

ENDCASE;

PROCESS(B)

BEGIN

CASEBIS

Y2<

ENDPROCESS;

【系统测试】

(一)、模型机测试

1.功能仿真:

仿真过程如下:

●在sources窗口处右击,加入新的源文件

●创建波形仿真激励文件.tbw:

选TestBenchWaveform,并输入文件名test_74ls

●初始化时钟周期及相关参数→finash

●右侧会出现.tbw文件窗口,设置输入引脚的值,存盘

●左侧sources窗口选择“behavioralsimulation”,下面processes窗口会自动出现"

ModelsimSimulator"

●双击其中的“Simulatebehavioralmodel”会自动调用“Modelsim”进行仿真,观察波形窗口,观察是否正确

A=1,B=0,CYA=1,CYB=1;

输出结果为:

cya1=0,cyb1=0

图11

2.级RTL逻辑电路

图12

(二)硬件测试

1、功能仿真

A=11,B=00,输出:

y1=1110,y2=0111

图13

A=01,B=10,输出:

y1=1011,y2=1101

图14

2、RTL级逻辑电路

图15

【总结】

在模拟机的设计中,周期a,b同时为1时,也就是当指令同时为2个周期和4个周期时,输出应为EOF,但是这段程序中输出为00.由于时间关系,我并没有解决这个问题。

在硬件设计实验中,可以在硬件中加入两个使能端控制A,B的输入。

【心得体会】

通过这次课程设计,我学习了VHDL进行FPGA/CPLD设计的基本步骤和方法,可以熟练的掌握xilinx设计程序的使用和modelsim模拟器的模拟方法。

当在这次课设中遇到困难时,在和同学的交流中加深了同学的友谊,同时也让我知道了自己知识的不足。

遇到问题并解决问题是一件很愉快的事情。

在三天时间完成这次课设是一件很艰巨的任务,但我还是尽自己的能力完成了这次课设,虽然程序在设计中还是会有一些问题和瑕疵,但是任务书中的要求全部完成并进行了调试。

在这次实践中我增长了知识,在解决问题的途中学会了自我寻找问题的答案。

将理论和实践结合在一起,为以后工作,科研做下基础。

【参考文献(资料)】

[1]袁静波等.计算机组成与结构.北京:

机械工业出版社,2011.

[2]刘福奇。

基于VHDL的FPGA和Nios实例精炼,北京航空航天大学出版社,2011

[3]陈耀和.VHDL语言设计技术[M].北京:

电子工业出版社,2004.

[4]汉泽西.EDA技术及其应用[M].北京:

北京航空航天出版社,2004

[5]程晓荣,翟学明,王晓霞.计算机组成与结构[M].北京:

中国电力出版社,2007.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

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

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