计算机组成原理课程设计报告
- 格式:doc
- 大小:1007.00 KB
- 文档页数:13
重庆理工大学《计算机组成原理》实验报告学号 __***********____姓名 __张致远_________专业 __软件工程_______学院 _计算机科学与工程二0一六年四月二十三实验一基本运算器实验报告一、实验名称基本运算器实验二、完成学生:张致远班级115030801 学号11503080109三、实验目的1.了解运算器的组成结构。
2.掌握运算器的工作原理。
四、实验原理:两片74LS181 芯片以并/串形式构成的8位字长的运算器。
右方为低4位运算芯片,左方为高4位运算芯片。
低位芯片的进位输出端Cn+4与高位芯片的进位输入端Cn相连,使低4位运算产生的进位送进高4位。
低位芯片的进位输入端Cn可与外来进位相连,高位芯片的进位输出到外部。
两个芯片的控制端S0~S3 和M 各自相连,其控制电平按表2.6-1。
为进行双操作数运算,运算器的两个数据输入端分别由两个数据暂存器DR1、DR2(用锁存器74LS273 实现)来锁存数据。
要将内总线上的数据锁存到DR1 或DR2 中,则锁存器74LS273 的控制端LDDR1 或LDDR2 须为高电平。
当T4 脉冲来到的时候,总线上的数据就被锁存进DR1 或DR2 中了。
为控制运算器向内总线上输出运算结果,在其输出端连接了一个三态门(用74LS245 实现)。
若要将运算结果输出到总线上,则要将三态门74LS245 的控制端ALU-B 置低电平。
否则输出高阻态。
数据输入单元(实验板上印有INPUT DEVICE)用以给出参与运算的数据。
其中,输入开关经过一个三态门(74LS245)和内总线相连,该三态门的控制信号为SW-B,取低电平时,开关上的数据则通过三态门而送入内总线中。
总线数据显示灯(在BUS UNIT 单元中)已与内总线相连,用来显示内总线上的数据。
控制信号中除T4 为脉冲信号,其它均为电平信号。
由于实验电路中的时序信号均已连至“W/R UNIT”单元中的相应时序信号引出端,因此,需要将“W/R UNIT”单元中的T4 接至“STATE UNIT”单元中的微动开关KK2 的输出端。
计算机组成原理数据通路实验报告计算机组成原理实验报告计算机组成原理实验报告实验一基本运算器实验一、实验目的1. 了解运算器的组成结构2. 掌握运算器的工作原理3. 深刻理解运算器的控制信号二、实验设备PC机一台、TD-CMA实验系统一套三、实验原理1. (思考题)运算器的组成包括算数逻辑运算单元ALU(Arithmetic and Logic Unit)、浮点运算单元FPU(Floating Point Unit)、通用寄存器组、专用寄存器组。
①算术逻辑运算单元ALU (Arithmetic and Logic Unit)ALU主要完成对二进制数据的定点算术运算(加减乘除)、逻辑运算(与或非异或)以及移位操作。
在某些CPU中还有专门用于处理移位操作的移位器。
通常ALU由两个输入端和一个输出端。
整数单元有时也称为IEU(IntegerExecution Unit)。
我们通常所说的“CPU 是XX位的”就是指ALU所能处理的数据的位数。
②浮点运算单元FPU(Floating Point Unit)FPU主要负责浮点运算和高精度整数运算。
有些FPU还具有向量运算的功能,另外一些则有专门的向量处理单元。
③通用寄存器组通用寄存器组是一组最快的存储器,用来保存参加运算的操作数和中间结果。
④专用寄存器专用寄存器通常是一些状态寄存器,不能通过程序改变,由CPU自己控制,表明某种状态。
而运算器内部有三个独立运算部件,分别为算术、逻辑和移位运算部件,逻辑运算部件由逻辑门构成,而后面又有专门的算术运算部件设计实验。
下图为运算器内部原理构造图2. 运算器的控制信号实验箱中所有单元的T1、T2、T3、T4都连接至控制总线单元的T1、T2、T3、T4,CLR都连接至CON单元的CLR按钮。
T4由时序单元的TS4提供(脉冲信号),其余控制信号均由CON单元的二进制数据开关模拟给出。
控制信号中除T4为脉冲信号外,其余均为电平信号,其中ALU_B为低有效,其余为高有效。
课程设计报告课程设计名称:计算机组成原理系:学生姓名:班级:学号:成绩:指导教师:开课时间:2011-2012学年2 学期一、设计题目计算机组成原理课程设计——简单模型机的微程序设计二、主要内容通过课程设计更清楚地理解下列基本概念:1.计算机的硬件基本组成;2.计算机中机器指令的设计;3.计算机中机器指令的执行过程;4.微程序控制器的工作原理。
5.微指令的格式设计原则;在此基础上设计可以运行一些基本机器指令的微程序的设计三.具体要求1.通过使用作者开发的微程序分析和设计仿真软件,熟悉介绍的为基本模型机而设计的微程序的执行过程。
必须充分理解并正确解释下些问题:(1)微程序中的微指令的各个字段的作用。
哪些字段是不译码的,哪些字段是直接译码的,哪些字段又可以看成是字段间接编码的。
(2)微程序中的微指令是否是顺序执行的,如果不是,那么次地址是如何产生的。
什么情况下,次地址字段才是将要执行的微指令的地址。
(3)在微程序中如何根据机器指令中的相关位实现分支,据此,在设计机器指令时应如何避免和解决与其它指令的微指令的微地址冲突。
(4)哪些微指令是执行所有指令都要用到的。
(5)解释一条机器指令的微程序的各条微指令的微地址是否连续?这些微指令的微地址的安排的严重原则是什么?(6)为什么读写一次内存总要用两条微指令完成?(7)机器程序中用到的寄存器是R0,是由机器指令中哪些位决定的?如果要用R1或R2,是否要改写微程序或改写机器指令?如果要,应如何改写?2.在原有5条机器指令的基础上增加实现下述各功能的机器指令,试设计相应的机器指令的格式并改写原来的微程序使其可以运行所有的机器指令。
新增加的机器指令的功能是:求反指令NOT RS,RD :/(RS) →(RD)与指令AND RD,(addr):(RD)与(addr)→(RD)异或指令XOR RD,(addr):(addr)异或(RD)→(RD)或指令OR RD,(addr):(RD)或(addr)→(RD)减法指令SUB RD,RS :(RS)减(RD)→(RD)其中的RS、RD可以是R0、R1、R2中的任何一个。
计算机组成原理实验报告实验报告运算器实验⼀、实验⽬的掌握⼋位运算器的数据传输格式,验证运算功能发⽣器及进位控制的组合功能。
⼆、实验要求完成算术、逻辑、移位运算实验,熟悉ALU运算控制位的运⽤。
三、实验原理实验中所⽤的运算器数据通路如图2-3-1所⽰。
ALU运算器由CPLD描述。
运算器的输出FUN经过74LS245三态门与数据总线相连,运算源寄存器A和暂存器B的数据输⼊端分别由2个74LS574锁存器锁存,锁存器的输⼊端与数据总线相连,准双向I/O 输⼊输出端⼝⽤来给出参与运算的数据,经2⽚74LS245三态门与数据总线相连。
图2-3-1运算器数据通路图中A WR、BWR在“搭接态”由实验连接对应的⼆进制开关控制,“0”有效,通过【单拍】按钮产⽣的脉冲把总线上的数据打⼊,实现运算源寄存器A、暂存器B的写⼊操作。
四、运算器功能编码算术运算逻辑运算K23~K0置“1”,灭M23~M0控位显⽰灯。
然后按下表要求“搭接”部件控制路。
表2.3.2 运算实验电路搭接表算术运算1.运算源寄存器写流程通过I/O单元“S7~S0”开关向累加器A和暂存器B置数,具体操作步骤如下:2.运算源寄存器读流程关闭A、B写使能,令K18=K17=“1”,按下流程分别读A、B。
3.加法与减法运算令M S2 S1 S0(K15 K13~K11=0100),为算术加,FUN及总线单元显⽰A+B的结果令M S2 S1 S0(K15 K13~K11=0101),为算术减,FUN及总线单元显⽰A-B的结果。
逻辑运算1.运算源寄存器写流程通过“I/O输⼊输出单元”开关向寄存器A和B置数,具体操作步骤如下:2.运算源寄存器读流程关闭A、B写使能,令K17= K18=1,按下流程分别读A、B。
①若运算控制位设为(M S2 S1 S0=1111)则F=A,即A内容送到数据总线。
②若运算控制位设为(M S2 S1 S0=1000)则F=B,即B内容送到数据总线。
《计算机组成原理》学生实验报告(2011~2012学年第二学期)专业:信息管理与信息系统班级: A0922学号:10914030230姓名:李斌目录实验准备------------------------------------------------------------------------3 实验一运算器实验-----------------------------------------------------------7 实验二数据通路实验-------------------------------------------------------13 实验三微控制器实验--------------------------------------------------------18 实验四基本模型机的设计与实现------------------------------------------22实验准备一、DVCC实验机系统硬件设备1、运算器模块运算器由两片74LS181构成8位字长的ALU。
它是运算器的核心。
可以实现两个8位的二进制数进行多种算术或逻辑运算,具体由74181的功能控制条件M、CN、S3、S2、S1、S0来决定,见下表。
两个参与运算的数分别来自于暂存器U29和U30(采用8位锁存器),运算结果直接输出到输出缓冲器U33(采用74LS245,由ALUB信号控制,ALUB=0,表示U33开通,ALUB=1,表示U33不通,其输出呈高阻),由输出缓冲器发送到系统的数据总线上,以便进行移位操作或参加下一次运算。
进位输入信号来自于两个方面:其一对运算器74LS181的进位输出/CN+4进位倒相所得CN4;其二由移位寄存器74LS299的选择参数S0、S1、AQ0、AQ7决定所得。
触发器的输出QCY就是ALU结果的进位标志位。
QCY为“0”,表示ALU结果没有进位,相应的指示灯CY灭;QCY为“1”,表示ALU结果有进位,相应的指示灯CY点亮。
《计算机组成原理》教案一、课程简介1.1 课程背景计算机组成原理是计算机科学与技术专业的一门核心课程,旨在帮助学生了解和掌握计算机的基本组成、工作原理和性能优化方法。
通过本课程的学习,学生将能够理解计算机硬件系统的整体结构,掌握各种计算机组件的功能和工作原理,为后续学习操作系统、计算机网络等课程打下基础。
1.2 课程目标(1)了解计算机系统的基本组成和各部分功能;(2)掌握计算机指令系统、中央处理器(CPU)的工作原理;(3)熟悉存储器层次结构、输入输出系统及总线系统;(4)学会分析计算机系统的性能和优化方法。
二、教学内容2.1 计算机系统概述(1)计算机的发展历程;(2)计算机系统的层次结构;(3)计算机系统的硬件和软件组成。
2.2 计算机指令系统(1)指令的分类和格式;(2)寻址方式;(3)指令的执行过程。
2.3 中央处理器(CPU)(1)CPU的结构和功能;(2)流水线技术;(3)多核处理器。
2.4 存储器层次结构(1)存储器概述;(2)随机存取存储器(RAM);(3)只读存储器(ROM);(4)缓存(Cache)和虚拟存储器。
2.5 输入输出系统(1)输入输出设备;(2)中断和DMA方式;(3)总线系统。
三、教学方法3.1 讲授法通过讲解、举例、分析等方式,使学生掌握计算机组成原理的基本概念、原理和应用。
3.2 实验法安排实验课程,使学生在实践中了解和验证计算机组成原理的相关知识。
3.3 案例分析法分析实际案例,使学生了解计算机组成原理在实际应用中的作用和意义。
四、教学评价4.1 平时成绩包括课堂表现、作业完成情况、实验报告等。
4.2 期末考试采用闭卷考试方式,测试学生对计算机组成原理知识的掌握程度。
五、教学资源5.1 教材《计算机组成原理》(唐朔飞著,高等教育出版社)。
5.2 辅助资料包括课件、实验指导书、案例分析资料等。
5.3 网络资源推荐学生访问相关学术网站、论坛,了解计算机组成原理的最新研究动态和应用成果。
课程设计报告课程名称:计算机组成原理与汇编语言报告题目:汇编语言名字排序学生姓名:所在学院:信息科学与工程学院专业班级:指导教师:2013 年6月26 日摘要汇编语言是直接面向处理器(Processor)的程序设计语言,处理器是在指令的控制下工作的,处理器可以识别的每一条指令称为机器指令。
每一种处理器都有自己可以识别的一整套指令,称为指令集。
处理器执行指令时,根据不同的指令采取不同的动作,完成不同的功能,既可以改变自己内部的工作状态,也能控制其它外围电路的工作状态。
汇编语言的排序,方法有许多,最常见的冒有泡排序、快速排序等等,冒泡排序的方法在软件开发中运用的十分广泛,其运行的效率很高,是排序问题的首选,这项目的排序我也采用冒泡排序,根据字母的先后顺序排列,然后显示出来。
关键词:处理器;指令;排序目录一、课题分析 (1)二、需求分析 (2)1.功能描述 (2)2. 功能模块分析………………………………………………………三、设计方案 (3)1.系统流程图 (3)2.子程序模块设计 (3)3. 详细设计 (3)4.程序调试结果及分析 (4)四、结论与心得 (6)五、参考文献 (6)一、课题分析用汇编语言进行人名排序其核心就是按照人名的字母的顺序进行排序,在此我用的是冒泡排序法。
整个设计思路就是:首先是输入所有的名字,然后把所有的名字放到Nametab表中,然后就是在表中对所有的名字运用冒泡排序法进行排序,先比较相邻的元素。
如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,在这一点,最后的元素应该会是最大的数,针对所有的元素重复以上的步骤,除了最后一个,持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字或字符串需要比较。
最后就是通过k10dispz子程序把排好序的名字输出。
二、需求分析1.功能描述1.从键盘输入人的名字并且显示出来。
2. 建立一个表用来存放所有名字。
计组课程设计报告--谢育武计算机组成原理课程设计--------- 微程序控制及CPU指令执行姓名:谢育武学号:20211003789 指导老师:刘超班号:192103--271第五节微程序控制器组成实验一、实验目的(1)掌握时序产生器的组成原理。
(2)掌握微程序控制器的组成原理。
(3)掌握微指令格式的化简和归并。
二、实验电路1.时序发生器TIMER1GAL22V101GND2晶振43VCCMF1CLR#2QD3DP4DZ5TJI6P17INTS8INTC9DB1011GND12CLKININININININININININGNDVC CIOIOIOIOIOIOIOIOIOIOIN242322212021181716151413VCCCLK1INTECLK11INTR2INTE34CLR# 5SKIP67891011GND12TIMER2GAL22V10CLKININININININININININGNDVCCIOIOIOIOIOIOIOIOI OIOIN1242322212021181716151413VCCINTQW4W3W2W1GNDT4T3T2T1W4图9 时序信号发生器图TEC―4计算机组成原理实验系统的时序电路如图9所示。
电路采用2片GAL22V10(U6、U7),可产生两级等间隔时序信号T1-T4和W1-W4,其中一个W由一轮T1-T4循环组成,它相当于一个微指令周期或硬布线控制器的一拍,而一轮W1―W4循环可供硬布线控制器执行一条机器指令。
本次实验不涉及硬布线控制器,因此时序发生器中的相关内容也可根据需要放到硬布线控制器实验中进行。
微程序控制器只使用时序信号T1-T4,产生T信号的功能集成在GAL22V10芯片TIMER1(U6)中,另外它还产生节拍信号W1、W2、W3、W4的控制时钟CLK1。
该芯片的逻辑功能用ABEL语言实现,其源程序如下: MODULE TIMER1TITLE 'CLOCK GGENERATOR T1,T2,T3,T4' \\MF,CLR,QD,DP,DZ,TJ,P1,INTS,INTC,DB PIN 1..10; W4 PIN 13;\T1,T2,T3,T4,QD1,QD2,ACT,INTE,QDR PIN 14..22; CLK1 PIN 23;T1,T2,T3,T4,QD1,QD2,INTE,QDR ISTYPE 'REG'; ACT,CLK1 ISTYPE 'COM'; CLK = .C.;S =[T1,T2,T3,T4,QD1,QD2,INTE,QDR];EQUATIONSQD1 := QD; QD2 := QD1;QDR := CLR & QD # CLR & QDR; ACT = QD1 & !QD2;T1 := CLR & T4 & ACT # CLR & T4 & !(DP # TJ # DZ & P1 # DB & W4) & QDR;T2 := CLR & T1; T3 := CLR & T2;T4 := !CLR # T3 # T4 & !ACT & (DP # TJ # DZ & P1 # DB & W4) # !QDR;INTE := CLR & INTS # CLR & INTE & !INTC; CLK1 = T1 # !CLR & MF;S.CLK = MF; ENDMFQDQD1QD2ACTQDR硬布线控制器只使用时序信号W1-W4,产生W信号的功能集成在GAL22V10芯片TIMER2(U7)中,该芯片的逻辑功能用ABEL语言实现,其源程序如下: MODULE TIMER2TITLE 'CLOCK GGENERATOR W1 W2 W3 W4' \\CLK1,INTR,IE PIN 1..3;CLR,SKIP PIN 5..6;\W1,W2,W3,W4,INTR1 PIN 14..18 ISTYPE 'REG'; INTQ PIN 20 ISTYPE'COM'; CLK = .C.;EQUATIONSW1 := CLR & W4 ;W2 := CLR & W1 & !SKIP; W3 := CLR & W2 & !SKIP;W4 := !CLR # W3 # SKIP & W1 # SKIP & W2 ; INTR1 := INTR; INTQ = IE & INTR1;[W1,W2,W3,W4,INTR1].CLK = CLK1; ENDTIMER1和TIMER2中还集成了中断逻辑,中断逻辑的介绍见第八节。
湖南师范大学工程与设计学院计算机组成原理实验报告姓名:年级:2014级专业:计算机科学与技术学号:**********任课教师:***开课时间:2015~2016学年第二学期湖南师范大学工程与设计学院实验数据报告单实验课程:计算机组成原理实验题目:基本运算器实验实验日期:2016年 6月13日专业:计算机年级:2014级班级:五班姓名:一.实验目的:1.了解运算器的组成结构2.掌握运算器的工作原理二..实验内容:主要内容:该试验旨在了解运算器内部运算过程及组成结构,并能进行一些简单的数据运算。
该实验通过一片CPLD来实现运算器部件的功能,在接好的实验电路上,用CMA软件将数据加载加入内存,最终实现通过设置CON单元的S3、S2、S1、S0以及时序T1、T2、T3、T4的不同值来实现不同的功能。
表现在:用S3、S2、S1、S0的不同值并配合CN的值来实现将寄存器A、寄存器B中的两个数进行逻辑运算、移位运算、算术运算,并且加上时间脉冲的加入,并且能够准确的实现值的输出。
结果体现在:用FC灯亮表示有进位,FZ灯亮表示零标志,D7…D0灯显示通过运算后得出来的值。
三.实验原理图:图一(运算器原理图)四.实验数据与分析:0000:功能是F=A(直通),因为A=65,所以F=65,且没有进位,标志位也没有变化,所以FC=0,FZ=0. 0001: 功能是F=B (直通),因为A=A7,所以F=A7,且没有进位,标志位也没有变化,所以FC=0,FZ=0. 0010: 功能是F=AB,也就是A与B的逻辑与,所以F=25, 且没有进位,标志位也没有变化,所以FC=0,FZ=0. 0011:功能是F=A+B,也就是A与B的逻辑或,所以F=E7, 且没有进位,标志位也没有变化,所以FC=0,FZ=0. 0100: 功能是F=/A,0101:功能是F=A不带进位循环右移B(取低三位)位。
0110:功能是当CN=0时,F=A逻辑右移一位;当CN=1时,F=A带进位逻辑右移一位。
计算机组成原理八位原码加减法器电路课程设计是一个重要的课题,它涉及到计算机内部数字运算的实现方式。
在加减法器电路的设计中,我们需要考虑到输入数据的编码方式以及运算的性质。
在这个设计中,我们将使用八位原码进行加减法运算。
首先,我们需要明确输入的数据格式。
原码表示法是一种最直观的数值表示方法,它直接反映了数值的正负和绝对大小。
对于八位二进制原码,它的取值范围是-256到255。
在这个范围内,数值的大小和其对应的二进制表示之间的关系是简单的线性关系。
接下来,我们来看一下加减法器的电路设计。
由于我们需要进行的是加法和减法运算,我们需要使用两个不同的电路模块:加法器和减法器。
对于加法器,我们可以使用异或门和与门组合的方式来实现。
八位二进制数的异或运算具有"无进位"的性质,因此在需要加法运算时,我们可以通过异或门来实现逐位相加。
由于输入的数据是以原码形式给出的,因此在输出端需要进行一次模2取反操作,将加法结果转化为实际的数值大小。
这个过程可以用一个简单的逻辑表达式描述如下:C[7:0] = A[7:0] XOR B[7:0]D[7:0] = 255 - C[7:0]其中,C[7:0]是异或运算的结果,D[7:0]是实际数值大小。
对于减法器,我们同样可以使用异或门和与门来实现。
由于减法运算涉及到负数的情况,我们需要引入进位信号来处理负数减法的溢出问题。
具体的实现方式可以参考加法器的设计,只是在输出端需要进行一次模2加操作,将减法结果转化为实际的数值大小。
在进行电路设计时,我们还需要考虑到一些细节问题,比如输入输出端的延迟问题、电路的稳定性和抗干扰能力等。
这些因素都可能影响到电路的性能和精度。
因此,在进行电路设计时,我们需要充分考虑这些因素,并通过实验和测试来验证我们的设计是否满足要求。
总的来说,八位原码加减法器电路的设计是一个复杂而又重要的任务。
通过这个设计,我们可以更好地理解计算机内部数字运算的实现方式,也可以为更高级的计算机组成原理课程设计打下基础。
课程设计报告课程名称:计算机组成原理题目名称:复杂模型机设计专业名称:计算机科学与技术班级: 2013240203学生姓名:李俊同组同学:丰翔王兆宇学号:201324020311指导教师:兰勇完成时间: 2016年1月8 日目录一、课程设计概述 (3)1.1 课程设计的教学目的 (3)1.2 课程设计任务和基本要求 (3)1.3 设计原理 (3)二、规定项目的实验验证 (4)2.1 设计原理 (4)一、课程设计概述1.1 课程设计的教学目的进1.3 设计原理在部件实验中,我们是人为用二进制开关来模拟一些控制信号完成数据通路的控制。
而在本课程设计中,数据通路的控制由微程序控制器来完成。
计算机从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令的列来完成,即一条机器指令对应一个微程序。
WR、RD、IOM的功能S3~S0以及CN的功能寻址模式寻址模式M 有效地址E 说明00 E=D 直接寻址01 E=(D) 间接寻址10 E=(R2)+D R2变址寻址11 E=(PC)+D 相对寻址RS、RD的表示RS/RD RI00 R001 R110 R211 R3一般D表示立即数;P表示地址复杂模型机数据流图微指令格式如表3所示,当微指令格式确定之后,下一步就是确定后续微指令地当微指令格式确定之后,下一步就是确定后续微指令址通常的方法是先确定微程序分支处的微地址,因为微程序分支处需要进行判断测试,这些微地址确定以后,就可以在一个“微地址表”中将分支微地址填入相应的分支微地址单元,避免以后的设计中因重复使用而造成错误,对于其他位置按照数据通路可画出机器指令的微程序流程图如图2所示,当拟定“取值”微指令时,该微指令的判别测试字段为P(1)测试,由于取值指令是所有微程序都是用的公用微序,因此P(1)测试结果出现多路分支,本机使用指令寄存器的前四位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定的微地址单元。
计算机组成原理实验报告实验⼀静态随机存取存贮器实验⼀.实验⽬的了解静态随机存取存贮器的⼯作原理;掌握读写存贮器的⽅法。
⼆.实验内容实验仪的存贮器MEM单元选⽤⼀⽚静态存贮器6116(2K×8bit)存放程序和数据。
CE:⽚选信号线,低电平有效,实验仪已将该管脚接地。
OE:读信号线,低电平有效。
WE:写信号线,低电平有效。
A0..A10: 地址信号线。
I/O0..I/O7:数据信号线。
SRAM6116存贮器挂在CPU的总线上,CPU通过读写控制逻辑,控制MEM的读写。
实验中的读写控制逻辑如下图:读写控制逻辑M_nI/O⽤来选择对MEM还是I/O读写,M_nI/O = 1,选择存贮器MEM;M_nI/O = 0,选择I/O设备。
nRD = 0为读操作;nWR = 0为写操作。
对MEM、I/O的写脉冲宽度与T2⼀致;读脉冲宽度与T2+T3⼀致,T2、T3由CON单元提供。
存贮器实验原理图存贮器数据信号线与数据总线DBus相连;地址信号线与地址总线ABus相连,6116的⾼三位地址A10..A8接地,所以其实际容量为256字节。
数据总线DBus、地址总线ABus、控制总线CBus与扩展区单元相连,扩展区单元的数码管、发光⼆极管上显⽰对应的数据。
IN单元通过⼀⽚74HC245(三态门),连接到内部数据总线iDBus上,分时提供地址、数据。
MAR由锁存器(74HC574,锁存写⼊的地址数据)、三态门(74HC245、控制锁存器中的地址数据是否输出到地址总线上)、8个发光⼆极管(显⽰锁存器中的地址数据)组成。
T2、T3由CON单元提供,按⼀次CON单元的uSTEP键,时序单元发出T1信号;按⼀次uSTEP键,时序单元发出T2信号;按⼀次uSTEP键,时序单元发出T3信号;再按⼀次uSTEP键,时序单元⼜发出T1信号,……按⼀次STEP键,相当于按了三次uSTEP键,依次发出T1、T2、T3信号。
其余信号由开关区单元的拨动开关模拟给出,其中M_nI/O应为⾼(即对MEM 读写操作)电平有效,nRD、nWR、wMAR、nMAROE、IN单元的nCS、nRD 都是低电平有效。
南通大学计算机科学与技术学院计算机组成原理课程设计报告书课题名模型计算机的设计与实现班级计082姓名施磊磊学号 **********指导教师顾晖日期 2011.1.10 ~ 2011.1.14一、设计目的1、融会贯通教材各章的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,经阿什计算机工作中“时间-空间”概念的理解,从而清晰地建立计算机的整机概念。
2、学习设计和调试计算机的基本步骤和方法,培养科学研究的独立工作能力,取得工程设计和调试的实践和经验。
二、设计内容1、根据给定的数据格式和指令系统,设计一台微程序控制的模型计算机。
2、根据设计图,在QUARTUS II环境下仿真调试成功。
3、在调试成功的基础上,整理出设计图纸和相关文件,包括:(1)总框图(数据通路图);(2)微程序控制器逻辑图;(3)微程序流程图;(4)微程序代码表;(5)设计说明书;(6)工作小结。
三、数据格式与指令系统1、数据格式数据字规定采用定点整数补码表示法,字长8位,其中最高位为符号位,其格式如下:7 6 5 4 3 2 1 02、指令格式本实验设计使用5条机器指令,其格式与功能说明如下:7 6 5 4 3 2 1 0INADDSTAOUTJMPIN指令为单字长(字长为8bits)指令,其功能是将数据开关的8位数据输入到R0寄存器。
ADD指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将R0寄存器的内容与内存中地址为A的数相加,结果存放在R0寄存器中。
STA指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将R0寄存器中的内容存储到以第二个字为地址的内存单元中。
OUT指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是将内存中以第二个字为地址的内存单元中的数据读出到数据总线,显示之。
JMP指令为双字长指令,第一个字为操作码,第二个字为操作数地址,其功能是程序无条件转移到第二个字指定的内存单元地址。
计算机组成原理的实验报告一、实验目的本次实验的主要目的是深入理解计算机组成原理中的关键概念和组件,通过实际操作和观察,增强对计算机硬件系统的认识和掌握能力。
具体包括:1、了解计算机内部各部件的工作原理和相互关系。
2、熟悉计算机指令的执行流程和数据的传输方式。
3、掌握计算机存储系统的组织和管理方法。
4、培养分析和解决计算机硬件相关问题的能力。
二、实验设备本次实验使用的设备包括计算机、逻辑分析仪、示波器以及相关的实验软件和工具。
三、实验内容1、运算器实验进行了简单的算术运算和逻辑运算,如加法、减法、与、或等操作。
观察运算结果在寄存器中的存储和变化情况。
2、控制器实验模拟了指令的取指、译码和执行过程。
分析不同指令对计算机状态的影响。
3、存储系统实验研究了内存的读写操作和地址映射方式。
考察了缓存的工作原理和命中率的计算。
4、总线实验观察数据在总线上的传输过程和时序。
分析总线竞争和仲裁的机制。
四、实验步骤1、运算器实验步骤连接实验设备,将运算器模块与计算机主机相连。
打开实验软件,设置运算类型和操作数。
启动运算,通过逻辑分析仪观察运算过程中的信号变化。
记录运算结果,并与预期结果进行比较。
2、控制器实验步骤连接控制器模块到计算机。
输入指令序列,使用示波器监测控制信号的产生和变化。
分析指令执行过程中各个阶段的状态转换。
3、存储系统实验步骤搭建存储系统实验电路。
进行内存读写操作,改变地址和数据,观察存储单元的内容变化。
分析缓存的替换策略和命中率的影响因素。
4、总线实验步骤连接总线模块,配置总线参数。
多个设备同时发送数据,观察总线的仲裁过程。
测量数据传输的时序和带宽。
五、实验结果与分析1、运算器实验结果加法、减法等运算结果准确,符合预期。
逻辑运算的结果也正确无误。
观察到在运算过程中,寄存器的值按照预定的规则进行更新。
分析:运算器的功能正常,能够准确执行各种运算操作,其内部的电路和逻辑设计合理。
2、控制器实验结果指令能够正确取指、译码和执行,控制信号的产生和时序符合指令的要求。
1. 寄存器五、实验总结按照实验要求进行连接和操作,对通用寄存器组进行了数据的写入和读出,两组数据完全对照,得到了预期效果,说明了存入数据的正确性,在整个过程中也对寄存器组的构成和硬件电路有了更深层次的理解。
2. 运算器五、实验总结基本熟悉了整个实验系统的基本结构,了解了该实验装置按功能分成几大区,学会何时操作各种开关、按键。
最重要的是通过实验掌握了运算器工作原理,熟悉了算术/逻辑运算的运算过程以及控制这种运算的方法,了解了进位对算术与逻辑运算结果的影响,对时序是如何起作用的没太弄清楚,相信随着后续实验的进行一定会搞清楚的3。
存储器五、实验总结按照实验要求连接器材设备元件,按照给定步骤进行实验操作.通过向静态RAM中写入数据并读出数据,在INPUT单元输入数并存入地址寄存器,再向相应的地址单元存入数,验证读出数据时,只需再INPUT单元输入想要读出单元的地址,再通过片选端CE读出存储单元内的数据,其中We=0是控制写端,WE=1控制读,CE低电平有效。
实验过程遇到一些问题,对实验内容不是很熟,有待提高。
4. CPU与简单模型机设计实验一、实验目的(1) 掌握一个简单CPU的组成原理.(2)在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。
(3)为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念.二、实验设备PC机一台,TD—CMA实验系统一套。
三、实验原理本实验要实现一个简单的CPU,并且在此CPU的基础上,继续构建一个简单的模型计算机。
CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图5-1—1 所示。
这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
计算机组成原理课程设计
计算机组成原理课程设计
一、课程介绍
本课程主要介绍计算机组成原理,包括计算机的结构,功能,性能,介绍CPU,存储器,总线,输入/输出系统,及这些部件之间的工作关系。
二、课程目标
1. 学生能够认识计算机的概念、主要组成部分及功能。
2. 了解计算机基本工作原理,包括CPU,存储器,总线,输入/输出系统,以及这些部件之间的工作关系。
3. 掌握主要软件技术,包括汇编语言,编译语言,操作系统等。
三、内容安排
本课程包括以下主要内容:
1. 计算机基本概念:计算机的构成,计算机系统和计算机网络。
2. CPU:架构、指令集、运算法则和程序控制。
3. 存储器:存储器的类型、特性和性能。
4. 总线:总线的结构、架构及特点。
5. 输入输出系统:计算机系统的输入输出结构、设备接口、通信协议。
6. 汇编语言程序设计:汇编语言基本语法,程序编写及调试。
7. 编译语言程序设计:编译语言程序设计,程序语言、数据结构、程序编写及调试。
8. 操作系统程序设计:操作系统概念、基本功能结构,虚拟存储器,任务调度,工作管理,系统文件管理等。
四、课程评价
课程主要采用学习报告、小组讨论、实验报告等方式进行评价。
目录1 需求分析 (1)1.1课程设计目的 (1)1.2课程设计内容及要求 (1)1.3TDN-CM++计算机组成原理实验教学系统特点 (2)1.4微指令格式分析 (2)1.5指令译码电路分析 (5)1.6寄存器译码电路分析 (6)1.7时序分析 (7)2 总体设计 (9)2.1数据格式和机器指令描述 (9)2.2机器指令设计 (11)3 详细设计 (16)3.1控制台微程序流程的详细设计 (16)3.2运行微程序流程的详细设计 (19)4 实现阶段 (31)4.1所用模型机数据通路图及引脚接线图 (31)4.2 测试程序及结果 (33)心得体会 (35)参考资料 (36)1 需求分析1.1 课程设计目的本课程设计是计算机科学与技术专业重要的实践性教学环节之一,是在学生学习完《计算机组成原理》课程后进行的一次全面的综合设计。
目的是通过一个完整的8位指令系统结构(ISA)的设计和实现,加深对计算机组成原理课程内容的理解,建立起整机系统的概念,掌握计算机设计的基本方法,培养学生科学的工作作风和分析、解决实际问题的工作能力。
1.2 课程设计内容及要求基于TDN-CM++计算机组成原理实验教学系统,设计和实现一个8位指令系统结构(ISA),通过调试和运行,使设计的计算机系统能够完成指定的功能。
设计过程中要求考虑到以下各方面的问题:(1)指令系统风格(寄存器-寄存器,寄存器-存储器,存储器-存储器);(2)数据类型(无符号数,有符号数,整型,浮点型);(3)存储器划分(指令,数据);(4)寻址方式(立即数寻址,寄存器寻址,直接寻址等);(5)指令格式(单字节,双字节,多字节);(6)指令功能类别(算术/逻辑运算,存储器访问,寄存器操作,程序流控制,输入/输出)。
要求学生综合运用计算机组成原理、数字逻辑和汇编语言等相关课程的知识,理解和熟悉计算机系统的组成原理,掌握计算机主要功能部件的工作原理和设计方法,掌握指令系统结构设计的一般方法,掌握并运用微程序设计(Microprogramming)思想,在设计过程中能够发现、分析和解决各种问题,自行设计自己的指令系统结构(ISA)。
计算机科学学院课程设计报告课程计算机组成原理题目基于TEC-2000平台(A+B)*2⊕C的指令设计年级2011级专业计算机科学与技术学号学生任课教师2014年3月13日课程设计题目设计(A+B)*2⊕C的指令验收时间2013.3.11验收地点9#307指导教师小组成员具体分工备注无课题总体设计思想概述在硬件教学计算机TEC-2000上,在已有基本指令的基础上,完成扩展几条新的指令,使新指令能够在教学机上运行。
掌握指令格式、指令操作码编码、寻址方式和指令功能等基本内容,熟悉教学计算机总体组成和各部件的运行原理,设计出新扩展指令的微程序段,并合理安排到已有基本指令的微程序中,增强硬件调试能力,能熟练地将微程序装入到控制存储器中,发现和排除设计中的错误。
设计一条指令,将加法作为入口,设计乘法与异或的微程序断作为一个新的指令扩展,通过修改上一指令的下地址来实现下一指令的实现。
课题设计目的和原理目的:通过对计算机组成原理的课程设计,(1)进一步熟练掌握计算机各功能部件的内部构造和相互之间的联系,功能部件的性能参数的相互匹配、机器指令级的各种功能和特性。
(2)将所学知识融会贯通、进一步系统化,进一步提高硬件系统设计的能力,为以后更高的一级硬件设计打下坚实课题设计方案1、编写汇编程序(1)在汇编程序中实现加法:org 2000mvrd r0,4h mvrd r1,3h mvrd r2,2h add r0,r1ret end(2)实现乘2的微程序:找到上一指令(加法)的地址04,此时它的下一地址为30,即结束程序的地址,将其改为SHL 的地址0E,即向左移实现(A+B)*2。
查找04地址将04地址的下址改为0E运行结果(3)实现异或的微程序:可以选择一个原有微程序中没有使用的微地址如76,来存放该段微程序。
指令名称功能格式操作码编码入口地址xor异或DR⊕SR DR0111010176指令的实现过程编码意义下地址30指令执行完后执行得下一条指令的地址CI3~00011条件转移执行SCC3~00000程序执行方式0MRW0100无读写操作0I2~I00001数据来源于A、B寄存器SA I8~60011选择指令中的寄存器SB I5~30110选择指令中的寄存器B口0000使用指定寄存器A口0010使用指定寄存器0SST0001接收标志位输出得值SSH、SCI0001加1,通用寄存器逻辑移位DC20000寄存器接受信息不用DC10000内部总线信息来源来自开关程序执行结果将上一地址的下址改为76将76地址的微程序改为异或最终执行结果课题测试方案(1)设计一段汇编语言程序,包含有(A+B)*2的指令,装入到测试程序中运行调试,通过观察寄存器状态,检查设计正确与否。
课程设计教学院计算机学院课程名称计算机组成原理题目阵列乘法器专业计算机科学与技术班级2011级计科(X)班姓名XXX同组人员XXX XXX XXX指导教师XXX2013 年 1 月22 日1 课程设计概述1.1 课设目的计算机组成原理是计算机专业的核心专业基础课。
课程设计属于设计型实验,不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高分析和解决问题的能力。
同时也巩固了我们对课本知识的掌握,加深了对知识的理解。
在设计中我们发现问题,分析问题,到最终的解决问题。
凝聚了我们对问题的思考,充分的锻炼了我们的动手能力、团队合作能力、分析解决问题的能力。
1.2 设计任务计算机系统设计的总体目标是设计模型机系统的总体结构、指令系统和时序信号。
所设计的主机系统能支持自动和单步运行方式。
具体设计任务如下:(1).设计一位全加器(2).设计4位求补电路(3).设计8位求补电路(4).设计4*4位无符号阵列乘法器1.3 设计要求根据理论课程所学的至少设计出简单计算机系统的总体方案,结合各单元实验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统。
(1)制定设计方案:我们小组做的是阵列乘法器,阵列乘法器主要由求补器和阵列全加器组成。
因此我们四人分两小组,一组做四位及八位求补器的内容,一组做阵列全加器的内容,最后综合就可以完成阵列全加器的任务。
(2)客观要求要掌握电子逻辑学的基本内容能在设计时运用到本课程中,其次是要思维灵活遇到问题能找到合理的解决方案。
小组成员要积极配合共同达到目的。
2 实验原理与环境2.1 1.实验原理计算机组成原理,数字逻辑,FPGA(Field Programmable Gate Array)是现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
沈阳航空航天大学课程设计报告课程设计名称:计算机组成原理课程设计课程设计题目:位同步时钟提取电路设计与实现院(系):计算机学院专业:计算机科学与技术班级:34010101学号:2012040101017姓名:金福鹏指导教师:胡光元日16月1年2015完成日期:沈阳航空航天大学课程设计报告目录第1章总体设计方案 (1)1.1设计原理 (1)1.2设计思路 (2)1.3设计环境 (2)第2章详细设计方案 (5)2.1顶层方案图的设计与实现 (5)2.1.1位同步提取电路的设计与实现 (5)2.1.2器件的选择与引脚锁定 (6)2.1.3十六进制计数器和鉴相器 (9)2.2功能模块的设计与实现 (9)2.2.1 十六进制计数器模块的设计与实现 (9)2.2.2 鉴相器模块的设计与实现 (10)2.3仿真调试 (11)第3章编程下载与硬件测试 (12)3.1编程下载 (12)3.2硬件测试及结果分析 (13)参考文献 (14)附录 (15)I--沈阳航空航天大学课程设计报告第1章总体设计方案1.1设计原理1 位同步时钟提取方案的原理本文设计的方案可以从异步串行码流中提取位同步时钟信号,设计思想的基本出发点是在外部码流(code_in)的上升沿和本地时钟(clk)上跳沿相比较无非两种情况,如图1和图2所示:码流滞后于本地时钟△T示意图图1示意图T图2 码流超前于本地时钟△进行逻辑相与,与本地时钟若将码流code_inclk从码流上跳沿的角度来看,”则说明码流超前于本”则说明码流滞后于本地时钟,若为“01若相与结果为“地时钟。
本设计方案的系统框图如图3所示:21--沈阳航空航天大学课程设计报告系统功能框图图3设计思路1.2根据题目要求,设计位同步时钟提取电路,主要采用自上而下地方法,顶层设计为原理图设计输入方式,底层设计为自定义,设计的电路有门电路和触发器等逻辑部件组成,电路主要有分频器,相位选择调整模式,鉴相器,和控制计数器组成,分频器的功能是把一个周期分成了十六份,即一个周期内产生十六个数字,分别分配给十六路电路,放在移位寄存器当中(它当中的数字始终在发生变鉴相器的功能是判断码元信号和本地时钟,化)然后由多路选择器选择一路输出。
计算机组成原理课程设计报告
课程设计题目:计算机组成原理
专业名称:计算机科学与技术班级: 2013240202
关童:201324020217
张一轮:201324020218
孙吉阳:201324020219
张旭:201324020220
老师姓名:单博炜
2015年12月31日
第一章课程设计概述
1.1 课程设计的教学目的
本课程设计的教学目的是在掌握计算机系统组成及内部工作机制、理解计算机各功能部件工作原理的基础上,深入掌握数据信息流和控制信息流的流动过程,进一步加深计算机系统各模块间相互关系的认识
无条件转移),其指令格式如表1(前4位是操作码):
表1:
IN为单字长(8位),含义是将数据开关8位数据输入到R0寄存器;ADD为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相加,结果放在
R0;STA为双字长指令,含义是将R0中的内容存储到以第二字A为地址内存单元中;OUT为双字长指令,含义是将内存中以第二字为地址的数据读到数据总线上,由数码管进行显示;JMP是双字长指令,执行该指令时,程序无条件转移到第二字所指定的内存单元地址。
为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还设计了三个控制台操作微程序:存储器读操作”(KRD):拨动总清开关CLR后,当控制台开关SWB、SWA置为“00”时,按START 微动开关,可对RAM进行连续手动读操作;存储器写操作(KWE):拨动总清开关CLR后,当控制台开关SWB、SWA置为“01”时,按START微动开关,可对RAM进行连续手动写入;启动程序:拨动总清开关CLR后,当控制台开关SWB、SWA置为“11”时,按START微动开关,即可转入第01号“取指”微指令,启动程序运行。
这三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如表2:表2:
C字段:
按照数据通路可画出机器指令的微程序流程图如图2所示,当拟定“取值”微指令时,该微指令的判
别测试字段为P(1)测试,由于取值指令是所有微程序都是用的公用微程序,因此P(1)测试结果出现多路分支,本机使用指令寄存器的前四位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定的微地址单元。
控制台操作作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定的微地址单元,当分支地址单元固定后,其余每条微指令各占用控存一个微地址单元,随意填写即可,注意:微程序流程图上的单元地址为八进制。
指令寄存器(IR)用来保存当前正在执行的一条指令。
当执行一条指令时,先把它从内存中取到缓存,然后在传送到指令寄存器中。
图2 微程序流程图
当全部微程序设计完毕后,应将每条微指令代码化,表4即为将图2微程序流程图按微指令格式转化得到的“二进制微代码表”。
下图为表4:
2.2 操作步骤
1 按附页中图3进行连线。
2 测试:在联机软件CMPP中打开复杂模型机的数据通路图,在测试菜单中点击“开始”,按照提示进行测试。
3 写程序:采用联机读/写程序
按下面规定格式,用联机软件在CMPP中建立将机器指令及微指令的二进制代码编辑成十六进制的*.TXT文档,并用联机软件的转储功能将该格式文件装载到实验系统中。
程序:$P0000 微程序:$M00018110
$P0110 $M0101ED82
$P020A $M0200C048
$P0320 $M0300E004
→【复杂模型机】功能菜单打开相应动态数据通路图,按相应功能键即可联机运行、监控、调试程序。
第三章指定应用项目的设计实现
3.1 设计任务:
将指令中所带数据X与以R0内容K为地址的内存单元内容Y执行X减Y的反的运算,结果送入Y 的上一个内存单元。
3.2 任务分析及解决方案:
对该任务而言,可以看出,该任务中涉及到了减法运算和逻辑非运算。
根据题目,X存于R0寄存器中,Y存在于以K为直接地址的R1寄存器中,然后将Y取反,存入R1,将R0与R1中内容相减存入R0,最
后将结果存入R1寄存器中以60位地址的单元中。
3.3 设计原理:
整体设计原理与第二章规定项目设计原理相似,其中,数据通路框图如附页图1所示。
本任务采用的的五条机器指令为:IN(输入),SUB(二进制减法),AND(逻辑非运算后求逻辑与),STA(存数),OUT(输出),其功能和格式见表5。
表5:
→
将该为该任务设计的程序做成*.TXT文档,其内容如下:$P 00 60
$P 01 01
$P 02 C1
$P 03 61
$P 04 45 ;R1寄存器内容取反
$P 05 84 ;R0-R1->R0
$M 11 103001
$M 12 06B201
$M 13 002414
$M 14 05B201
$M 15 002416
$M 16 01B201
$M 17 002418
$M 18 02B201
$M 1B 005341
$M 1C 10101D
$M 1D 10608C $M 1E 10601F $M 1F 101020 $M 20 10608C $M 28 101029 $M 29 00282A $M 2A 04E22B $M 2B 04928C $M 2C 10102D $M 2D 002C2E $M 2E 04E22F
4.1 收获、体会
关童:虽然曾经在相关课程中学到了与课程设计有关的内容,但现在上手的时候感觉非常茫然,不知该如何下手,但是在老师的悉心指导和同学们之间的热烈讨论,让任务的进行渐渐有了方向,找到了关键所在。
随着不断的研究和尝试,设计的思路渐渐清晰,终于完成。
虽然在整个过程中经历了不少挫折,但是最后的成功带来的喜悦和收获让我觉得一切努力都是值得的。
张一轮:这次实验经过了四天的时间,因为平时对这方面的知识了解的不够多,所以在实验中遇到了一些困难,但是在老师和同学的帮助下还是圆满的完成了这次课设,让我更加的喜欢上了这一门课,最后感谢老师这学期的教学与指导。
孙吉阳:这次课设,加强了我们动手、思考、解决问题的能力,提高了综合应用所学知识解决问题的能力。
这次课设让我更加了解到计算机组成原理的重要性。
以及它对我们专业的发展发挥的作用。
对我们而
言,知识上的收获很重要,谢谢老师一学期的教导。
张旭:课设已经结束,学到了很多以前不理解的东西,我以前不曾了解的东西也懂得了如何运用,受益匪浅,对计算机的内部结构和原理有了更深的理解,最后感谢老师的指导。
附页
图1 数据通路框图
图3 接线图。