嵌入式的8位CISC模型机设计报告Word文档格式.doc
《嵌入式的8位CISC模型机设计报告Word文档格式.doc》由会员分享,可在线阅读,更多相关《嵌入式的8位CISC模型机设计报告Word文档格式.doc(34页珍藏版)》请在冰豆网上搜索。
![嵌入式的8位CISC模型机设计报告Word文档格式.doc](https://file1.bdocx.com/fileroot1/2022-10/7/82efedf2-526d-4ba8-95b1-e289f586e830/82efedf2-526d-4ba8-95b1-e289f586e8301.gif)
2.微程序控制器的组成原理框图
3.模型机机器指令格式和指令系统
4.时序产生器的设计原理及时序波形图
5.微程序流程图
6.微程序控制器单元
7.汇编语言源程序
8.机器语言的源程序
四、设计的过程与步骤
五.模型机系统顶层电路图
六.模型机的时序仿真波形图
七.设计总结
八.参考文献
韶关学院课程设计任务书
学生姓名
专业班级
09科学与技术2班
学号
指导教师姓名及职称
设计地点
信息418
设计题目
嵌入式的8位CISC
本课程设计课题任务的内容和要求:
设计一台嵌入式的8位CISC模型计算机,并运行能完成一定功能的机器语言程序进行验证,程序功能可以是以下两个之一:
²
求出1到任意一个整数N之间的所有奇数之和并输出显示,和为单字长。
说明:
N从开关输入,和从数码管输出,然后输出显示停止。
对本课程设计工作任务及工作量的要求:
课程设计完成工作任务内容如下:
(1)完成系统的总体设计,画出模型机数据通路框图。
(2)设计微程序控制器(CISC模型计算机)的逻辑结构图。
(3)设计机器指令格式和指令系统。
(4)设计时序产生器电路。
(5)设计所有机器指令的微程序流程图(CISC模型计算机)
(6)设计操作控制单元。
l设计的是CISC模型计算机,设计微指令格式(建议采用全水平型微指令),并根据微程序流程图和微指令格式设计微指令代码表。
根据微程序控制器的逻辑结构框图、微指令格式和微指令代码设计微程序控制器,包括地址转移逻辑电路、微地址寄存器、微命令寄存器和控制存储器。
(7)设计模型机的所有单元电路,并用VHDL语言(也可使用GDF文件——图形描述文件)对模型机中的各个部件进行编程,并使之成为一个的整体,即形成顶层电路或顶层文件。
(8)由给出的题目和设计的指令系统编写相应汇编语言源程序(验证程序)。
(9)根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机的ROM中。
(10)使用EDA软件MAX+plusII进行功能仿真,要保证其结果满足题目的要求(其中要利用MAX+plusII提供的波形编辑器,选择合适的输入/输出信号及中间信号进行调试)。
(11)选用给定的FPGA芯片——EP1K30TQC144进行器件编程和时序仿真,并将顶层电路或顶层文件下载到专用的EDA实验平台——GW48EDA教学实验系统后进行操作演示。
课程设计应完成的图纸:
(1)顶层设计的电路原理图;
(2)元件(模块)符号图;
(3)仿真波形图。
进度安排:
时间为18学时,分散在9周进行,每周2学时。
1、第1--4周:
EDA技术基础知识教学讲座;
2、第5—8周:
MAX+PLUS基础实验,确定课程设计题目,进行资料收集和学习、设计方案确定、电路设计、程序设计与计算机仿真;
3、第9周:
编写课程设计实验报告。
主要参考文献:
[1]]陈智勇等编.《计算机原理课程设计》.西安电子科技大学.2006年6月
[2]潘松黄继业编.《EDA技术实用教程》(第二版).科学出版社2005年2月
[3]罗克露等编.《计算机组成原理》.电子工业出版社2004年8月
[4]江国强编.《EDA技术习题与实验》.电子工业出版社2005年1月
[5]彭玄璋编《基于EDA技术的组成原理课程设计实验指导书》(自编教材)2010年3月
院系(或教研室)审核意见:
审核人签名及系公章:
年月日
任务下达人(签字)
年月日
任务接受人(签字)
年月日
备注:
1、本任务书由指导教师填写相关栏目,经系审核同意后,交学生根据要求完成设计任务。
2、本任务书须与学生的课程设计说明书(或论文)一并装订存档。
一、实验目的:
1.通过课程设计加深对计算机各功能部件的理解;
掌握数据信息流和控制信息流的流动和实现过程,建立起整机概念;
培养设计、开发和调试计算机的能力。
2.提高使用EDA工具软件和可编程器件芯片的基本技能。
3.培养科学研究的独立工作能力,取得工程设计与组装调试的实践和经验。
二、设计题目及要求:
设计一台8位的CISC模型机,要求具有以下验证程序所要求的功能:
求出1到任意一个整数N之间的所有奇数之和并输出显示,和单字节长。
N从开关输入,和数码管输出,然后输出显示停止。
模型机的总体设计的内容包括确定各种部件的设置以及它们之间的数据通路结构。
CISC模型机由CISC微处理器、地址寄存器AR、ROM和RAM存储器等组成。
微处理器由算术逻辑运算单元ALU、状态条件寄存器、累加器AC、数据暂存器DR、通用寄存器R0~R2、程序计数器PC、指令寄存器IR、操作控制器和时序产生器组成。
CISC模型机的操作控制器采用微程序控制器。
根据模型机功能要求,画出如图1所示模型机数据通路框图。
图1模型机数据通路框图
微程序控制器组成原理框图如图2所示。
它主要由控制器、微指令寄存器和地址转移逻辑电路三大部分组成,其中微指令寄存器分为微地址寄存器和微命令寄存器两部分。
图2微程序控制器组成原理框图
CISC模型机的指令系统采用复杂的指令格式、多种指令字长度和多种寻址方式,但指令功能强大,单条指令的执行速度较慢。
为了完成题目所要求的功能,模型机的指令系统共设计了8条不同的功能指令。
指令字长度有单字长(1个字节)和双字长(2个字节)两种;
寻址方式有三种,分别是寄存器寻址、直接寻址和立即寻址。
这8条指令是IN1(输入),MOV(将一个数送入寄存器),CMP(比较),JB(小于跳转),ADD(两数相加),INC(自增1),JMP(无条件跳转),OUT1(输出)。
下面分别介绍这些指令的格式:
(1)、I/O指令
输入(IN1)采用单字节指令,其格式如下:
输入(OUT1)采用单字节指令,其格式如下:
说明:
RS为源寄存器,RD为目的寄存器。
(2)、转移指令
条件转移指令(JB)和无条件转移指令(JMP)采用双字节指令,其格式如下:
“addr”中的值就是要转移的地址值。
(3)、比较指令和相加指令
比较(CMP)指令和相加指令(ADD)采用单字节指令,其格式如下:
(4)、MOV指令
MOV指令采用双字节指令,其格式如下:
“data”为立即数。
(5)、自增指令
自增1指令(INC)指令采用单字节指令,其格式如下:
以下是对Rs和Rd的规定:
模型机规定数据的表示采用定点整数补码表示,单字长为8位,其格式如下:
模型机的指令系统中共有8条基本指令,表1列出每条指令的助记符号、指令格式和功能。
表18条机器指令的助记符号、指令格式和功能
CISC微处理器的时钟信号Q和清除信号CLR由外部输入,节拍脉冲信号Ti由时序产生器产生。
图4-14描述了节拍脉冲信号与外部时钟信号、清除信号的时序关系。
由图3可以看出,节拍脉冲信号T1、T2、T3、T4实际上是以Q为时钟输入信号的计数状态经过译码器译码后生成的,因此可写出节拍脉冲信号的逻辑表达式,并用VHDL语言实现之,然后将它创建为一个元件符号,供顶层电路调用。
图3T1、T2、T3、T4与CLR、Q之间的时序关系图
如果系统的时钟控制信号(即工作脉冲P)是在T1、T2、T3或T4的中间产生,且上升沿有效,则它产生方法是:
先将Q取反,再和节拍脉冲信号Ti相“与”得到。
如图4所示。
图4时钟控制信号的形成方法
根据模型机的数据通路图(图1)以及所有指令在CISC模型机中的操作过程,画出所有机器指令的微程序流程图,如图5所示。
图中每个框为一个CPU周期(包含T1~T4共4个节拍脉冲周期)对应于一条微指令。
框中上面的十六进制数表示的是当前微指令在控制存储器中的微地址;
框中下面的十六进制数表示的是当前微指令的后续微坡地。
在编写微指令时,图中的菱形框从属于它上面的方框。
图5CISC模型机中所有机器指令的微程序流程图
(1)、设计微指令格式和微指令代码表
CISC模型机系统使用的微指令采用全水平型微指令,字长25位,其中微指令字段17位,P字段2位,后续微地址6位。
其格式如下:
微指令格式中的后继微地址从左到右依次为:
ü
A5、ü
A4、ü
A3、ü
A2、ü
A1、ü
A0;
由微指令格式和微程序流程图编写的微指令代码表如表2所示。
表2微指令代码表
(2)、设计地址转移逻辑电路
地址转移逻辑电路是根据微程序流程图5中的菱形部分及多个分支微地址,利用微地址寄存器的异步置“1”端,实现微地址的多路转移。
在图5中进行P
(1)(高电平有效)测试时,根据指令的操作码I7~I4强制修改后继微地址的低4位,在P
(2)(高电平有效)测试时,根据借位标志FC和零标志FZ进行两路分支,并且都在T4内形成后继微指令的微地址。
由于微地址寄存器中的触发器异步置“1”端低电平有效,与ü
A4~ü
A0对应的异步置“1”控制信号SE5~SE1的逻辑表达式为:
(ü
A5的异步置“1”端SE6实际未使用):
算法思想为:
采用R0寄存器存放从开关输入的任意一个整数,R1存放准备参加累加运算的奇数,R2存放累加的和,用一个循环程序实现如下:
功能
IN1R0从开关输入任意一个整数n→R0
MOVR1,1将立即数1→R1(R1用于存放参与运算的奇数)
MOVR2,0将立即数0→R2(R2用于存放累加和)
L1:
CMPR0,R1将R0的整数n与R1的奇数进行比较,锁存CY和ZI
JBL2小于,则转到L2处执行
ADDR1,R2否则,累加求和,并将R1的内容加2,形成下一个奇数
INCR1
JMPL1无条件跳转到L1处继续执行
L2:
OUTR2输出累加和
JMPL2循环显示
根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机的ROM中去。
与汇编语言源程序对应的机