计算机组成原理课程设计桂电求负数平方和CISC.docx

上传人:b****3 文档编号:975039 上传时间:2022-10-14 格式:DOCX 页数:25 大小:287.73KB
下载 相关 举报
计算机组成原理课程设计桂电求负数平方和CISC.docx_第1页
第1页 / 共25页
计算机组成原理课程设计桂电求负数平方和CISC.docx_第2页
第2页 / 共25页
计算机组成原理课程设计桂电求负数平方和CISC.docx_第3页
第3页 / 共25页
计算机组成原理课程设计桂电求负数平方和CISC.docx_第4页
第4页 / 共25页
计算机组成原理课程设计桂电求负数平方和CISC.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

计算机组成原理课程设计桂电求负数平方和CISC.docx

《计算机组成原理课程设计桂电求负数平方和CISC.docx》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计桂电求负数平方和CISC.docx(25页珍藏版)》请在冰豆网上搜索。

计算机组成原理课程设计桂电求负数平方和CISC.docx

计算机组成原理课程设计桂电求负数平方和CISC

 

计算机组成原理课程设计报告

 

题目:

求负数平方和CISC模型

院系:

计算机科学与工程学院

专业:

计算机科学与技术

指导教师:

陈智勇

 

2014年3月30号

 

一:

课程设计的题目及内容

 1 题目 

输入包含5个整数(有符号数)的数组M,输出所有负数的平方和。

 2 要求

 采用定长CPU周期、联合控制方式,并运行能完成一定功能的机器语言源程序进行验证,机器语言源程序功能如下:

五个有符号数从外部输入,一定要使用符号位(比如说SF),并且要使用负的时候转移(比如说JS)或不为负的时候转移(比如说JNS)指令;

采用三数据总线结构的运算器,采用RAM,先将输入数据依次存放在RAM的某一连续的存储区域内,再依次读出判断是否为负数,若为负数再求其平方和。

二:

课程设计的要求

 1.完成系统的总体设计,画出模型机数据通路框图;

2.设计微程序控制器(CISC模型计算机)的逻辑结构框图;

3.设计机器指令格式和指令系统;

4.设计时序产生器电路;

5.设计所有机器指令的微程序流程图;

6.设计操作控制器单元;

 在CISC模型计算机中,设计的内容包括微指令格式(建议采用全水平型微指令)、微指令代码表(根据微程序流程图和微指令格式来设计)和微程序控制器硬件电路(包括地址转移逻辑电路、微地址寄存器、微命令寄存器和控制存储器等。

具体电路根据微程序控制器的逻辑结构框图、微指令格式和微指令代码来设计)。

7.设计模型机的所有单元电路,并用VHDL语言(也可使用GDF文件----图形描述文件)对模型机中的各个部件进行编程,并使之成为一个统一的整体,即形成顶层电路或顶层文件;

8.由给出的题目和设计的指令系统编写相应的汇编语言源程序;

9.根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机中的ROM中去;

10.使用EDA软件进行功能仿真,要保证其结果满足题目的要求;(其中要利用EDA软件提供的波形编辑器,选择合适的输入输出信号及中间信号进行调试。

11.器件编程,并在EDA实验平台上进行操作演示

三:

系统开发环境及VHDL语言介绍 

1 MaxplusII

Max+plusⅡ是Altera公司上一代的PLD开发软件,Max+plusⅡ界面友好,使用便捷,主要用于设计新器件和大规模CPLD/FPGA).使用MAX+PLUSII的设计者不需精通器件内部的复杂结构。

设计者可以用自己熟悉的设计工具(如原理图输入或硬件描述语言)建立设计,MAX+PLUSII把这些设计转自动换成最终所需的格式。

其设计速度非常快。

对于一般几千门的电路设计,使用MAX+PLUSII,从设计输入到器件编程完毕,用户拿到设计好的逻辑电路,大约只需几小时。

在Max+plusⅡ上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。

 设计处理一般在数分钟内内完成。

特别是在原理图输入等方面,Maxplus2被公认为是最易使用,人机界面最友善的PLD开发软件,特别适合初学者使用.

使用Maxplus2基本上也是以上几个步骤,可简化为:

(1设计输入

(2)设计编译(3)设计仿真(4)优化(5)布局布线(6)后仿真(7)生产

2VHDL

VHDL全称超高速集成电路硬件描述语言(英语:

VHSIChardwaredescriptionlanguage),在基于复杂可编程逻辑器件、现场可编程逻辑门阵列和专用集成电路的数字系统设计中有着广泛的应用。

VHDL语言诞生于1983年,1987年被美国国防部和IEEE确定为标准的硬件描述语言。

自从IEEE发布了VHDL的第一个标准版本IEEE1076-1987后,各大EDA公司都先后推出了自己支援VHDL的EDA工具。

VHDL在电子设计行业得到了广泛的认同.VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。

VHDL主要用于描述数字系统的结构,行为,功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。

这种将设计实体分成内外部分的概念是VHDL系统设计的基本点.

四:

系统总体设计

1嵌入式CISI模型机系统总体设计 

2 嵌入式CISC系统控制器的逻辑结构框图

 

 

3 模型机的指令系统和所有指令的指令格式设计

输入指令(IN1)格式:

15141312

1110

98

76543210

操作码

××

Rd

××××××

MOV指令格式:

15141312

1110

98

76543210

操作码

××

Rd

立即数im

 

取数指令(LAD)格式:

15141312

1110

98

76543210

操作码

Rs

Rd

××××××

相加指令(ADD)格式:

15141312

1110

98

76543210

操作码

Rs

Rd

××××××

 

加1指令(INC)格式:

15141312

1110

98

76543210

操作码

××

Rd

××××××

减1指令(DEC)格式:

15141312

1110

98

76543210

操作码

××

Rd

××××××

 

非零条件转移指令(JNZ)格式:

15141312

1110

98

76543210

操作码

××

××

地址addr

 

传送指令(STO)格式:

15141312

1110

98

76543210

操作码

Rs

××

地址addr

 

无条件转移指令(JMP)格式:

15141312

1110

98

76543210

操作码

××

××

地址addr

 

输出指令(OUT1)格式:

15141312

1110

98

76543210

操作码

Rs

××

××××××

存数指令(STOI)格式:

15141312

1110

98

76543210

操作码

Rs

Rd

××××××

乘法指令(IMUL)格式:

15141312

1110

98

76543210

操作码

××

Rd

××××××

 

判断箱号位转移(TEST)格式:

15141312

1110

98

76543210

操作码

××

Rd

地址addr

非负条件转移指令(JNS)格式:

15141312

1110

98

76543210

操作码

××

××

地址addr

 

模型机规定数据的表示采用定点整数补码表示,单字长为8位,其格式如下:

7

6543210

符号位

尾数

对于Rs或Rd的格式我们规定如下:

Rs或Rd

选定的寄存器

00

R0

01

R1

10

R2

11

R3

其中S2,S1,S0表示的是算术逻辑运算单元ALU,其功能表为:

S2

S1

S0

功能

0

0

0

X+Y

0

0

1

X-Y

0

1

0

X+1

0

1

1

X-1

1

0

0

SF

1

0

1

X∨Y

1

1

0

SF=TEMP(7)

1

1

1

Y×Y

 

4 指令系统表如下

指令助记符

指令格式

功能

15--12

1110

98

7-----------0

IN1Rd

0001

××

Rd

××××××××

输入设备→Rd

MOVRd,im

0010

××

Rd

im

立即数→Rd

LAD(Rs),Rd

0011

Rs

Rd

××××××××

((Rs))→Rd

ADDRs,Rd

0100

Rs

Rd

××××××××

(Rs)+(Rd)→Rd,锁存标志位

INCRd

0101

××

Rd

××××××××

(Rd)+1→Rd,锁存标志位

DECRd

0110

××

Rd

××××××××

(Rd)-1→Rd,锁存标志位

JNZaddr

0111

××

××

addr

若不等,则addr→PC

STORs,addr

1000

Rs

××

addr

(Rs)→addr

JMPaddr

1001

××

××

addr

addr→PC

OUT1Rs

1010

Rs

××

××××××××

(Rs)→输出设备

STOIRs,(Rd)

1011

Rs

Rd

××××××××

(Rs)→(Rd)

IMULRd,Rd

1100

××

Rd

××××××××

(Rd)×(Rd)→Rd

TEST Rd

1101

××

Rd

××××××××

(RD)→TEMPSF标志位

JNSaddr

1110

××

××

addr

若不为正,则addr→PC

5 时序产生器 

 时序信号产生器用于产生多级食醋系统中需要的时序信号,本实验采用的是微程序控制器的时序产生器,如下图

 

6 微程序控制器的设计全过程 

    微程序控制器的设计包括以下几个阶段:

(1)机器指令的微程序流程图 

(2)设计微指令格式和微指令代码表 

(3)设计地址转移逻辑电路  

(4)设计微程序控制器中的其它逻辑单元电路,包括微地址寄存器、微命令寄存器和控制存储器  

(5)设计微程序控制器的顶层电路(由多个模块组成)。

  

 

7 地址转移逻辑电路的设计

地址转移逻辑电路是根据微程序流程图中的棱形框部分及多个分支微地址,利用微地址寄存器的异步置“1”端,实现微地址的多路转移。

由于微地址寄存器中的触发器异步置“1”端低电平有效,与µA5~µA0对应的异步置“1”控制信号SE6~SE1的逻辑表达式为:

SE6=ZF·P(3)·T4

SE5=ZF·P

(2)·T4

SE4=I15·P

(1)·T4

SE3=I14·P

(1)·T4

SE2=I13·P

(1)·T4

SE1=I12·P

(1)·T4

 

8 汇编程序代码设计如下:

MOVR1,11H ;寄存器R1用于存放RAM的某个连续区域的首地址

MOVR2,5H ;寄存器R2用于存放循环次数

L0:

 IN1R0   ;寄存器R0用于接收外部输入的数据

STOIR0,(R1) ;将R

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

当前位置:首页 > 经管营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1