计算机组成原理课程设计-硬布线控制器的设计_第1页
计算机组成原理课程设计-硬布线控制器的设计_第2页
计算机组成原理课程设计-硬布线控制器的设计_第3页
计算机组成原理课程设计-硬布线控制器的设计_第4页
计算机组成原理课程设计-硬布线控制器的设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计(论文)编 号:B04911053学 号: 课 程 设 计教 学 院计算机学院课程名称计算机组成原理课程设计题 目硬布线控制器的设计专 业计算机科学与技术班 级二班姓 名同组人员指导教师杨 斐2015年1月5日 课程设计任务书 20152016学年第 1 学期学生姓名: 张祥 专业班级: 计科二班 指导教师: 杨斐 工作部门: 计算机学院 一、课程设计题目 硬布线控制器的设计二、课程设计内容(含技术指标)1利用QUARTUS软件设计一个小型CPU中的硬布线控制器。总体框图参考下图:图2.1.1 总体框图操作控制信号格式:WRRDIOMS3S2S1S0LDALDBLDR0LDIRALU_BR0_BP(1)表2.1.1 操作控制信号格式表执行单元总体框图如下:(不必设计)图2.1.2 执行单元总体框图 该CPU的指令系统包含8条机器指令,分别为ADD、SUB、INC 、AND、OR 、IN 、OUT、HLT,指令代码如下:助记符机器码说明ADD00000000R0+R0-R0SUB00010000R0-R0-R0IN00100000IN-R0OUT00110000R0-OUTINC01000000R0+1 -R0HLT01010000停机AND01100000R0 与 R0-R0OR01110000R0 或 R0-R0表2.1.2 机器指令表2. 写出每一个操作控制信号的逻辑代数表达式,化简并设计电路。3. 每输入一条机器指令代码打入IR中,由硬布线控制器得到14位操作控制信号,在发光二极管上显示每一位的值。三、进度安排1. 2015年12月14日,课题讲解,布置任务2. 2015年12月15-17日,分析、讨论、进行各子模块的设计设计3. 2015年12月18-24日,完成各模块联调,进行测试4. 2015年12月25日,成果验收,进行答辩四、基本要求1. 能够熟练掌握计算机中硬布线控制器的工作原理及特点;2. 掌握硬件描述语言VHDL及原理图设计方法;3. 熟练掌握Quartus II软件平台;4. 各小组按模块分工,每人独立完成自己负责的模块;5. 合作完成最终的硬件下载及调试;6. 独立撰写符合要求的课程设计报告。目 录一 、概述11.1课程设计的目的11.2课程设计的要求1二 、总体方案设计22.1小组分工22.2硬连线控制器部件描述22.3介绍EDA技术及QUARTUS II软件3三、 详细设计43.1设计指令寄存器R_843.2设计指令译码器ID53.3编写指令逻辑函数表达式63.4设计树形逻辑图LOGIC83.5整合设计10四、程序的调试与运行结果说明114.1我设计的版块三的仿真波形图114.2最终模块的仿真波形11五、课程设计总结13参考文献14一 、概述1.1课程设计的目的1培养综合运用所学知识独立完成课题的能力;2培养勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质;3理解和掌握该课程中的有关基本概念,程序设计思想和方法;4掌握从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力;5.同学们需完整学习相关理论课中的有关内容,学会阅读相关的参考资料和利用网络查找自己需求的资料。1.2课程设计的要求1.掌握硬件描述语言VHDL及原理图设计方法;2.熟练掌握Quartus II软件平台; 3.各小组按模块分工,每人独立完成自己负责的模块;4.合作完成最终的硬件下载及调试;5.能够熟练掌握计算机中硬布线控制器的工作原理及特点; 6.独立撰写符合要求的课程设计报告。二 、总体方案设计2.1小组分工吴进主负责对指令寄存器R_8的设计;张常勋主负者对指令译码器ID的设计;张祥主负者对树形逻辑网络LOGIC的设计;谢石林主负机器指令函数以及流程图的编写。逻辑网络N的输入信号就是为操控控制信号,它用来对执行部件进行控制。另有一些信号则根据条件变量来改变时序发生器的计数顺序,以便跳过某些状态。所谓微程序控制方式是指微命令不是由组合逻辑电路产生的,而是由微指令译码产生。一条机器指令往往分成几步执行,将每一步操作所需的若干位命令以代码形式编写在一条微指令中,若干条微指令组成一端微程序,对应一条及其指令。我所负者的关键根据八条指令函数在Quartus设计出电路图。2.2硬连线控制器部件描述硬连线控制器由指令寄存器IR,程序计数器PC,时序控制信号产生部件,脉冲源、起停控制逻辑和节拍发生器组成。1指令寄存器存放当前从主存储器读出的正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器中,然后再传送至IR。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器就是做这项工作的。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。在本模型中,用的是8位。2程序计数器程序计数器是用于存放下一条指令所在单元的地址的地方。当执行一条指令时,首先需要根据PC中存放的指令地址,将指令由内存取到指令寄存器中,此过程称为“取指令”。与此同时,PC中的地址或自动加1或由转移指针给出下一条指令的地址。此后经过分析指令,执行指令。完成第一条指令的执行,而后根据PC取出第二条指令的地址,如此循环,执行每一条指令。3节拍发生器节拍发生器是多位触发器的输出信号的不同组合状态,来标志每条指令的不同执行步骤。4时序信号产生部件它依据指令的操作码,指令执行步骤作为输入,使用大量组合逻辑门电路来形成并提供出计算机各部件当前时刻要用到的控制信号。设计过程中要列出每个控制信号的逻辑表达式,再对全部的控制信号的逻辑表达式进行综合化简,得到最尽量可能简单的逻辑实现,有利于提高机器的运算速度和降低成本。2.3介绍EDA技术及QUARTUS II软件 EDA是Electronic Design Automation(电子设计自动化)的缩写 。EDA技术就是依靠功能强大的电子计算机,在EDA工具软件平台上,对以硬件描述语言为逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、优化和仿真,直至下载到可编程逻辑器件CPLD/FPGA芯片中,实现特定的电子电路设计功能。Quartus II是Altera公司推出的新一代、 功能强大的可编程逻辑器件PLD设计环境。 QuartusII软件提供了EDA设计的综合开发 环境,是EDA设计的基础。Quartus II集成 环境支持设计输入、编译、综合、布局、布 线、时序分析、仿真、编程下载等EDA设计过程。QuartusII提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:可利用原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片(电路)平面布局连线编辑;LogicLock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTapII逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件;能生成第三方EDA软件使用的VHDL网表文件和Verilog网表文件。三、 详细设计3.1设计指令寄存器R_8 在Quartus根据老师给的代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY R_8 ISPORT(D:IN STD_LOGIC_VECTOR(7 DOWNTO 0); CLK:IN STD_LOGIC; EN:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END ;ARCHITECTURE ART1 OF R_8 IS BEGINPROCESS(CLK,D) BEGIN IF CLKEVENT AND CLK=1 THEN IF EN=1 THEN Q=D; END IF; END IF;END PROCESS; END ART1;打包出指令寄存器R_8图3.1.1 指令寄存器然后在R-8的基础上设计出指令寄存器连线R-8OUT。图3.1.2 指令寄存器路线图3.2设计图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图图3.1.2 指令寄存器路线图指令译码器ID 在老师的帮助下完成译码器代码的编写,代码如下。LIBRARY ieee;USE ieee.std_logic_1164.all;entity ID isport(IR:in std_logic_vector(7 downto 0); -8位指令代码输入 EN:in std_logic; -工作使能端 I0,I1,I2,I3,I4,I5,I6,I7 :out std_logic); -8条机器指令译码输出,对应关系I0:ADD,I1:SUB,I2:IN,I3:OUT,I4:INC,I5:HLT,I6:AND,I7:ORend ID;architecture behave OF ID issignal s:std_logic_vector(3 downto 0);begin s I0=1;I1=0;I2=0;I3=0;I4=0;I5=0;I6=0;I7 I0=0;I1=1;I2=0;I3=0;I4=0;I5=0;I6=0;I7 I0=0;I1=0;I2=1;I3=0;I4=0;I5=0;I6=0;I7 I0=0;I1=0;I2=0;I3=1;I4=0;I5=0;I6=0;I7 I0=0;I1=0;I2=0;I3=0;I4=1;I5=0;I6=0;I7 I0=0;I1=0;I2=0;I3=0;I4=0;I5=1;I6=0;I7 I0=0;I1=0;I2=0;I3=0;I4=0;I5=0;I6=1;I7 I0=0;I1=0;I2=0;I3=0;I4=0;I5=0;I6=0;I7 NULL; end case; else I0=0;I1=0;I2=0;I3=0;I4=0;I5=0;I6=0;I7A赋值运算LAD、R0-B处于开启状态,T3时刻进行R0-B赋值运算LDB,R0-B处于开启状态,T4时刻进行A+B-R0运算逻辑运算函数S0、S3、LDR0、ALU-B处于开启状态,并与微指令代码逐一核对,设想与事实成立,故ADD运算成功,即仿真成功。4.2最终模块的仿真波形图4.2 硬布线控制器仿真图输入运算的机器码,例如:00000000代表ADD,00010000代表SUB。输入机器码00000000,拨开EN、EN0、T1T4 如上述一样根据图状态与微指令代码核对。在T1时刻,LDIR、P1、RD处于开启状态,T2时刻进行R0-A赋值运算LAD、R0-B处于开启状态,T3时刻进行R0-B赋值运算LDB,R0-B处于开启状态,T4时刻进行A+B-R0运算逻辑运算函数S0、S3、LDR0、ALU-B处于开启状态,并与微指令代码逐一核对,设想与事实成立,故ADD运算成功,即仿真成功。五、课程设计总结这是我们计算机专业做的第一个硬件和软件结合的课程设计,掌握硬件描述语言VHDL及原理图设计方法,并熟练掌握Quartus II软件平台。硬布线控制器是依赖于组合逻辑而实现的,老师在课堂上对微程序控制器讲解得比较多,所以在微程序控制器方面掌握的知识对我们研究硬布线控制器是很有帮助的。当然,前提是这个组合逻辑译码表是完全正确的。其实,数据通路是非常重要的,每个方框里的每个信号都是不可缺少的部分。我们必须能知道每一步要做什么操作,而且要知道各个操作在哪个节拍电位里执行。硬布线控制器在课本上没有详细讲解,但却是以前的CPU 使用的布线方式,想要深入学习硬件知识,了解这些东西是很有必要的。微程序控制器的出现是为了代替硬布线控制器,如果没有对微程序控制器的工作方式和原理的理解,不可能设计出硬布线控制器的控制逻辑。数据通路是基础,组合逻辑译码表是关键。只要这两个任务能完美地完成,代码就能自然而然地编写出来了。同时,一个小组里组员之间的合作也是非常重要的,所谓集思广益,只有大家相互配合,各司其能,这个课程设计才能获得成功个人认为,这是最好的一个课程设计安排,将学习道德东西用起来,才是最好的结果,锻炼了我们的动手能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论