计算机组成原理课程设计(江苏大学最新版)
说明书
《计算机组成原理》课程设计说明书设计题目:简单计算机系统的设计与实现(方案一:系统采用微程序控制方式,主控存合并)目录一.实验目的 (3)二.实验要求及任务 (3)三.数据通路设计 (3)3-1. 数据通路设计分析 (3)3-1-1.逻辑部件的选择 (3)3-1-2.芯片的选择 (3)3-2. 数据通路线路图: (4)四.机器指令与微指令设计 (4)4-1. 存储地址分配 (4)4-2. 机器指令编码 (4)4-3. 微指令周期流程图设计: (5)4-4. 控制电路设计: (5)4-4-1.控点由时序控制还是由微指令控制的选择思路 (5)4-4-2. 控点在哪个时钟周期有效,是否加时间延迟选择思路 (6)4-4-3. 主控存合并引起的控制问题 (6)4-4-4. 各控点的周期流程图、控点信号形式 (8)4-4-5.微指令编码 (8)4-4-6. 控制位逻辑表达式 (9)4-4-7. 控制信号电路图:见附录2 (9)五.电路调试 (9)5-1. 连线方式 (9)5-2. 硬件连线查错方式 (9)5-3. 硬件连线错误与解决方法 (10)5-3-1. 内存某一单元不稳定 (10)5-3-2. PC计数不稳定 (10)5-3-3. 74373锁不住数据 (10)5-3-4. 沿控信号的控制 (10)5-3-5. 数据冲突 (10)5-3-6. 循环累加 (10)5-3-7. 结果时对时错 (11)5-3-8.良好的连线习惯 (11)六. 系统功能扩展 (11)6-1. PC地址计数器进行地址扩展思路 (11)6-2. 二、十进制转换电路思路 (11)七.实验体会................................................................................................... 错误!未定义书签。
.................................................................................................................. 错误!未定义书签。
计算机组成原理课程设计江苏大学版
江苏大学计算机组成原理课程设计报告专业名称:网络工程班级学号:3130610031学生姓名:张杰指导教师:胡广亮设计时间:2013年6月24日—2013年7月2日第一天:熟悉微程序的设计和调试方法一、设计目标1、掌握微程序的设计方法2、熟悉利用调试软件运行、调试微程序的方法二、操作提示1、连接实验设备注意:请在断电状态下连接调试电缆。
2、下载FPGA配置数据从课程网站下载CPU.sof等文件,使用Quartus II Programmer 软件将CPU.sof下载到FPGA。
3、输入微程序利用调试软件将微程序写入控存,微程序如下。
取指令微程序取源操作数为立即数的微程序取目的操作数为寄存器寻址的微程序MOV指令的微程序(目的数寄存器寻址)4、输入调机程序今天的将调机程序就是一条指令:“MOV #0001H, R1”。
首先将指令翻译成机器码,根据指令的编码规则,该指令的编码是:0761 0001。
然后利用调试软件将指令码写入主存,地址从主存的0030H开始。
5、调试微程序。
利用调试软件“Step”按钮控制微指令单步执行,执行结果如图2.3所示2.3 例2.1 MOV指令的单步运行跟踪数据6、分析微程序的执行结果,一般方法如下:首先分析微程序执行流程是否正确,根据前面指令微流程的设计,理论上该指令微程序的执行顺序应该是001→002→003→004→00B→00F→016→006→018→007→031→02D→02E→000,通过调试软件的执行结果图2.3可以看出,该指令微程序的微指令次序是正确的。
如果执行的微指令次序不正确,那就要分析原因,检查BM和NC设置是否正确、检查uAR 的各个输入信号的值是否正确,如IR、NA等。
然后分析指令的运行结果。
理论上本条测试指令执行完后,R1的值应该是0001。
通过调试软件的执行结果图2.3可以看出,指令执行结果是正确的。
如果结果不对,就需要进一步分析每一条微指令。
计算机组成原理课程设计
计算机组成原理课程设计1. 引言计算机组成原理是计算机科学与技术专业中一门重要的基础课程。
通过学习计算机组成原理,可以了解计算机的基本组成结构、工作原理和性能提升方法。
为了更好地掌握和应用所学知识,本文将介绍一项针对计算机组成原理课程的设计任务。
2. 任务描述本次课程设计任务要求设计一个简单的单周期CPU,实现基本的指令执行功能。
具体要求如下:•CPU的指令集包括加载(Load)、存储(Store)和算术逻辑运算(ALU)指令,需要支持整数加法、减法、乘法和除法运算。
•CPU需要具备基本的流水线功能,包括取指(Instruction Fetch)、译码(Decode)、执行(Execute)和写回(Write Back)。
•CPU需要支持基本的寄存器操作,包括寄存器读取(Register Read)和寄存器写入(Register Write)。
•CPU的指令和数据存储器使用单端口RAM,指令和数据的访问都需要经过存储器。
3. 设计思路针对上述需求,我们可以采用以下设计思路:3.1 CPU总体设计•CPU采用单周期结构,即每个指令都在一个时钟周期内完成。
•CPU主要分为指令存储器、数据存储器、寄存器文件和控制逻辑四个部分。
3.2 指令存储器设计•指令存储器采用单端口RAM,每个指令的长度为固定的32位。
•指令存储器需要实现读取指令的功能,每次从内存中读取一个指令。
3.3 数据存储器设计•数据存储器也采用单端口RAM,每个数据的长度为固定的32位。
•数据存储器需要实现读取数据和写入数据的功能,执行指令时需要从存储器中读取数据,计算结果需要写回存储器。
3.4 寄存器文件设计•寄存器文件包含若干个通用寄存器,用于存储指令执行过程中的临时数据。
•寄存器文件需要实现读取寄存器和写入寄存器的功能,执行指令时需要读取和写入寄存器。
3.5 控制逻辑设计•控制逻辑负责根据当前指令的操作码和操作数生成控制信号,控制CPU的工作流程。
计算机组成原理课程设计
计算机组成原理课程设计
计算机组成原理课程设计是计算机科学与技术专业的一门核心课程,其目的是帮助学生更深入地理解计算机的组成原理和工作原理,培养学生分析和设计计算机硬件的能力。
在这个课程设计中,我选择了设计一个简单的单周期CPU。
首先,我会设计CPU的指令集,包括处理器指令的类型、指
令格式、寻址方式等。
然后,根据指令集的要求,设计并实现CPU的控制器,控制指令的执行流程。
接着,我会设计并实
现CPU的数据通路,包括寄存器、ALU、存储器等组件,实
现指令的操作。
在设计过程中,我会遵循计算机组成原理的基本原理和设计原则,如冯·诺伊曼体系结构、指令周期、数据通路和控制单元
的相互协调等。
我会使用硬件描述语言,如VHDL或Verilog,进行设计,通过仿真和验证来测试设计的正确性。
同时,我还会考虑CPU的性能和效率,尽量优化各个部分的设计,以提
高CPU的运行速度和处理能力。
在设计完成后,我还会进行性能测试和功能验证,测试CPU
在不同工作负载下的性能表现,并根据测试结果对设计进行优化。
最后,我会编写报告,详细介绍我的设计思路、实现过程和测试结果,以及可能存在的问题和改进的方向。
通过这个课程设计,我将深入理解计算机组成原理的相关知识,并掌握CPU设计的基本方法和技术。
这对于我今后的学习和
工作都具有重要意义,不仅可以加深我对计算机硬件的理解,
还可以提高我的问题分析和解决能力,为我未来的研究和工作奠定坚实的基础。
JUC2课程设计报告 江苏大学 大二上
JMP 0030H
微指令微程序设计
取源操作数的直接寻址方式的微命令与取目的操作数直接寻址的微命令相同不过地址改为从00C,013,014,015,016为止。
MOV #0101,0040H
源操作数立即寻址的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
ORG 0030H
MOV #0041H,R0
PUSH R0
PUSH 0040H
POP (R0)
POP R1
PUSH的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
078
03000084
0
0
C
0
0
0
0
0
0
084
SPdec
084
E0080085
7
0
0
0
2
0
0
0
0
085
SPoe,ARce
F3
F4
F5
F6
F7
F8
F9
微命令
051
60030052
3
0
0
0
0
3
0
0
0
052
Soe,DRce
052
00052200
0
0
0
0
1
1
0
0
1
000
ARoe’,DRoe’,WR
(3)
《计算机组成原理》课程设计报告-格式 2
计算机组成原理课程设计
报告
姓名:
班级:
学号:
指导老师:
二〇一一年月日
目录
第一章实训任务概述 (1)
1.1实训目的 (1)
1.2 实训任务 (1)
第二章设计内容 (2)
第三章图表格式 (3)
3.1 图表格式 (3)
第四章个人总结 (4)
4.1 主要结论 (4)
4.2 对实训的认识 (4)
参考文献 (5)
致谢 (6)
第一章实训任务概述
1.1实训目的
通过实训,掌握计算机系统软硬件维护的方法,并能利用所学知识,完成实训内容。
1.2 实训任务
第二章设计内容
第三章图表格式3.1 图表格式
图2-1 论文页面设置图
表2-1 高频感应加热的基本参数
第四章个人总结4.1 主要结论
本文主要……
4.2 对实训的认识
通过本次实训,我学到了……
参考文献
[1] 彭革新,谢胜利,张剑.战术Ad Hoc网络研究[J].现代军事通信,1999:751-755
致谢本文需要感谢……。
计算机组成原理课程设计报告
计算机组成原理课程设计报告一、引言计算机组成原理是计算机科学与技术专业的重要课程之一,通过学习该课程,我们可以深入了解计算机的硬件组成和工作原理。
本次课程设计旨在通过设计一个简单的计算机系统,加深对计算机组成原理的理解,并实践所学知识。
二、设计目标本次课程设计的目标是设计一个基于冯·诺依曼体系结构的简单计算机系统,包括中央处理器(CPU)、存储器、输入输出设备等。
通过该设计,我们可以掌握计算机系统的基本组成和工作原理,加深对计算机组成原理的理解。
三、设计方案1. CPU设计1.1 硬件设计CPU由控制单元和算术逻辑单元组成。
控制单元负责指令的解码和执行,算术逻辑单元负责算术和逻辑运算。
1.2 指令设计设计一套简单的指令集,包括算术运算指令、逻辑运算指令、数据传输指令等。
1.3 寄存器设计设计一组通用寄存器,用于存储数据和地址。
2. 存储器设计2.1 主存储器设计一块主存储器,用于存储指令和数据。
2.2 辅助存储器设计一个简单的辅助存储器,用于存储大容量的数据。
3. 输入输出设备设计3.1 键盘输入设备设计一个键盘输入设备,用于接收用户的输入。
3.2 显示器输出设备设计一个显示器输出设备,用于显示计算结果。
四、实施步骤1. CPU实现1.1 根据CPU的硬件设计,搭建电路原型。
1.2 编写控制单元的逻辑电路代码。
1.3 编写算术逻辑单元的逻辑电路代码。
1.4 进行仿真验证,确保电路的正确性。
2. 存储器实现2.1 设计主存储器的存储单元。
2.2 设计辅助存储器的存储单元。
2.3 编写存储器的读写操作代码。
2.4 进行存储器的功能测试,确保读写操作的正确性。
3. 输入输出设备实现3.1 设计键盘输入设备的接口电路。
3.2 设计显示器输出设备的接口电路。
3.3 编写输入输出设备的读写操作代码。
3.4 进行输入输出设备的功能测试,确保读写操作的正确性。
五、实验结果与分析通过对CPU、存储器和输入输出设备的实现,我们成功设计了一个基于冯·诺依曼体系结构的简单计算机系统。
计算机组成原理课程设计
目录1 设计内容及目标 (1)1.1设计题目 (1)1.2设计内容 (1)1.3 设计目标 (1)1.4 设计器材 (1)2 设计原理 (2)2.1 设计思路 (2)2.2 设计工作原理 (2)2.2.1 设计基本原理 (2)2.2.2 机器指令 ................................................................................................................... - 2 -2.2.3 数据通路 ................................................................................................................... - 2 -2.2.4 微指令格式 (3)2.2.5 微程序地址的转移 (4)2.2.6 机器指令的写、读和执行 (4)3 设计步骤 (6)3.1 连接实验线路 (6)3.2 设计机器指令代码及数据 (6)3.3 微程序流程图 (7)3.4 设计微指令二进制代码 (8)3.5 微指令代码装入与检查 (9)3.6 机器指令代码装入与检查 (9)4 实现方法及关键技术 (10)4.1 程序实现方法 (10)4.1.1 单步运行程序 (10)4.1.2 连续运行程序 (10)4.2 实现关键技术 (10)5 设计问题分析 (11)设计总结 (12)1 设计内容及目标本课程设计的教学目的是在掌握计算机系统组成及内部工作机制、理解计算机各功能部件工作原理的基础上,深入掌握信息流和控制信息流的流动过程,进一步加深计算机系统各模块间相互关系的认识和整机的概念,培养开发和调试计算机的技能。
再设计实践中提高应用所学专业知识分析问题和解决问题的能力。
1.1 设计题目基本模型机的设计与实现1.2 设计内容本次设计在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。
计算机组成原理课程设计
计算机组成原理课程设计一、设计背景计算机组成原理是计算机科学与技术专业的一门基础课程,旨在培养学生对计算机硬件组成和工作原理的深刻理解。
通过课程设计,学生可以巩固和应用所学的知识,提高解决实际问题的能力。
二、设计目标本次计算机组成原理课程设计的目标是让学生通过实践,加深对计算机硬件组成和工作原理的理解,培养学生的设计和实现能力。
具体目标包括:1. 设计并实现一个简单的计算机系统,包括中央处理器(CPU)、存储器、输入输出设备等。
2. 熟悉计算机指令系统的设计与实现,包括指令的编码、解码和执行过程。
3. 学会使用硬件描述语言(如VHDL)进行计算机硬件的设计和仿真。
4. 掌握计算机系统的性能评估方法,包括指令周期、时钟频率等。
三、设计内容本次计算机组成原理课程设计的内容为设计并实现一个简单的基于冯·诺依曼结构的计算机系统。
具体设计内容包括以下几个方面:1. 计算机系统的总体设计根据冯·诺依曼结构的原理,设计计算机系统的总体框架。
包括中央处理器(CPU)、存储器、输入输出设备等。
2. 指令系统的设计与实现设计并实现一个简单的指令系统,包括指令的编码、解码和执行过程。
指令集可以包括算术运算、逻辑运算、数据传输等常见指令。
3. 中央处理器(CPU)的设计与实现设计并实现一个简单的中央处理器,包括指令寄存器、程序计数器、算术逻辑单元等。
通过对指令的解码和执行,实现计算机的基本功能。
4. 存储器的设计与实现设计并实现一个简单的存储器模块,包括指令存储器和数据存储器。
通过存储器的读写操作,实现程序的加载和数据的存储。
5. 输入输出设备的设计与实现设计并实现一个简单的输入输出设备,如键盘和显示器。
通过输入输出设备,实现用户与计算机系统的交互。
6. 系统性能评估对设计的计算机系统进行性能评估,包括指令周期、时钟频率等指标的测量和分析。
通过性能评估,优化计算机系统的性能。
四、设计步骤本次计算机组成原理课程设计的步骤如下:1. 确定设计的整体框架和目标,明确设计的内容和要求。
计算机组成原理课程设计报告(江苏大学软件工程) 精品
江苏大学《计算机组成原理》课程设计报告专业名称:软件工程班级学号:软件1001第一天取操作数微程序的设计和调试一、设计目标设计并调试取操作数的微程序二、取操作数微流程进入取目标操作数三、测试程序、数据及运行结果1、测试内容:立即寻址,直接寻址运行数据:运行结果及分析:从微地址可以看出,先是取指令001->002->003->004,再是取源操作数,004->00B->00F->016->006,是立即数寻址方式,再是取目的操作数,006->-01B>01F->024->025->026->007,是直接寻址方式,最后是执行阶段,007->044->047->072->000,将结果mov到内存里。
2、测试内容:立即寻址,寄存器运行数据:运行结果及分析:从微地址可以看出,先是取指令001->002->003->004,再是取源操作数,004->00B->00F->016->006,是立即数寻址方式,再是取目的操作数,006->018->007,是寄存器寻址方式,最后是执行阶段,007->044->046->000,将结果mov到寄存器里。
由GRS 可以看出最终结果由0000变成了5678。
四、设计中遇到的问题及解决办法才开始的时候,对软件的应用不是很熟悉,遇到一些麻烦,在同学的帮助下,解决了软件应用问题。
第二天运算指令的微程序设计与调试一、设计目标设计并调试运算指令的微程序。
二、运算指令微程序入口地址三、运算类指令微程序四、测试程序、数据及运行结果1、测试内容:ADD运算运行数据:运行结果及分析:从微地址可以看出,第一阶段先是取第一条指令(MOV #5678H,R1)001->002->003->004,再是取源操作数,004->00B->00F->016->006,是立即数寻址方式,再是取目的操作数,006->018->007,是寄存器寻址方式,最后是执行阶段,007->044->046->000,将结果mov 到寄存器里。
计算机组成原理课程设计
计算机组成原理 课程设计一、课程目标知识目标:1. 让学生掌握计算机硬件的基本组成,包括CPU、内存、硬盘、输入输出设备等,并了解各部件的功能和工作原理。
2. 使学生了解并理解计算机的指令系统,包括指令的种类、格式和执行过程。
3. 帮助学生理解计算机的性能指标,如主频、缓存、运算速度等,并学会分析不同硬件配置对计算机性能的影响。
技能目标:1. 培养学生运用所学知识分析和解决实际问题的能力,例如根据需求选择合适的计算机硬件配置。
2. 提高学生的动手实践能力,通过组装和拆解计算机硬件,加深对计算机组成原理的理解。
3. 培养学生查阅资料、自主学习的能力,以便在课后拓展相关知识。
情感态度价值观目标:1. 培养学生对计算机科学的兴趣和热情,激发他们探索计算机技术发展的积极性。
2. 增强学生的团队合作意识,通过小组讨论和实践活动,学会与他人合作共同解决问题。
3. 引导学生关注计算机技术在生活中的应用,认识到科技对社会的推动作用,培养创新精神和责任感。
本课程针对高中年级学生,结合计算机组成原理的教学要求,将课程目标分解为具体的学习成果,以便进行后续的教学设计和评估。
课程性质为理论联系实践,注重培养学生的实际操作能力和创新思维。
在教学内容上,紧密联系课本知识,突出重点,使学生能够在实践中掌握计算机组成原理的相关知识。
二、教学内容1. 计算机硬件基本组成- 课本第二章:介绍CPU、内存、硬盘、输入输出设备等硬件的基本概念、功能及工作原理。
- 教学大纲:安排2课时,通过讲解、图示和实物展示,使学生了解各硬件部件的作用及相互关系。
2. 计算机指令系统- 课本第三章:讲解指令的种类、格式和执行过程,以及指令系统的发展。
- 教学大纲:安排2课时,通过实例分析、指令执行流程图解,帮助学生理解计算机指令系统的基本原理。
3. 计算机性能指标与硬件配置- 课本第四章:介绍计算机性能指标,分析不同硬件配置对计算机性能的影响。
- 教学大纲:安排2课时,结合实际案例,让学生学会分析硬件配置对计算机性能的影响,并能根据需求选择合适的硬件配置。
计算机组成原理课程设计
计算机组成原理课程设计尊敬的教师:敬启者,我是您的学生,正在进行计算机组成原理课程设计。
我非常荣幸能够参与这个项目,并且准备了如下的设计报告:第一部分:引言在本设计中,我们将要研究和设计一台基于RISC体系结构的32位微处理器。
通过学习和探索计算机的基本组成原理,我们将能够深入了解计算机硬件的工作原理和设计过程。
在本文档中,我们将详细描述我们的设计思路、实现方法和实验结果,并通过性能测试来评估我们的设计。
第二部分:设计目标本设计的主要目标是实现一个高效、稳定和可扩展的32位微处理器。
我们的设计将满足以下要求:1. 支持基本的CPU指令集.2. 支持流水线技术,以提高指令执行速度.3. 支持浮点运算和向量指令扩展.4. 支持高性能和低功耗的设计.5. 具备良好的可扩展性和可维护性.6. 设计尽可能地简洁和高效.第三部分:设计思路我们的设计思路是基于经典的RISC体系结构,并结合了一些现代的设计理念和技术来达到我们的设计目标。
我们使用VHDL语言进行设计和验证,并且使用ModelSim进行仿真和验证。
我们将重点关注以下几个方面的设计:1. 指令集架构: 我们将实现一个基本的指令集架构,并根据需求进行扩展.2. 流水线设计: 我们将使用五级流水线来提高指令执行速度.3. 浮点运算和向量指令扩展: 我们将实现浮点运算指令和向量指令的硬件支持.4. 性能优化和功耗控制: 我们将采用一些优化技术来提高性能并降低功耗.5. 可扩展性和可维护性: 我们将设计一个可灵活扩展和易于维护的架构.第四部分:实现方法在实现过程中,我们将遵循以下步骤:1. 设计和验证: 我们将使用VHDL语言进行设计,使用ModelSim进行仿真和验证.2. 代码实现: 我们将根据设计思路编写代码,并对各个模块进行单元测试.3. 性能测试: 我们将使用一系列的测试程序对设计进行性能测试,并进行性能分析.4. 优化和调试: 我们将根据测试结果对设计进行优化和调试.5. 文档撰写: 我们将撰写设计报告,详细记录设计过程和实现细节.第五部分:实验结果与讨论在设计完成后,我们将对设计进行一系列的性能测试,并对结果进行分析和讨论。
计算机组成原理课程设计
计算机组成原理课程设计计算机组成原理课程设计是一个重要的课程项目,旨在帮助学生深入理解计算机的基本组成和工作原理。
以下是一个可能的计算机组成原理课程设计的简要概述:1. 课程设计目标:- 理解计算机的基本组成和工作原理;- 掌握计算机的层次结构和指令执行过程;- 学习计算机的数据表示和存储方式;- 熟悉计算机的中央处理器和存储器的设计与实现;- 掌握计算机的输入输出系统和总线结构。
2. 课程设计内容:- 计算机层次结构和指令执行过程的介绍;- 数据表示和存储方式的学习;- 中央处理器和存储器的设计与实现;- 输入输出系统和总线结构的研究。
3. 课程设计步骤:- 第一阶段:理论学习和研究- 学习计算机组成原理的基本概念和理论知识;- 研究计算机的层次结构和指令执行过程;- 学习计算机的数据表示和存储方式;- 研究计算机的中央处理器和存储器的设计与实现;- 学习计算机的输入输出系统和总线结构。
- 第二阶段:实践设计和实现- 设计并实现一个简单的计算机系统,包括中央处理器、存储器、输入输出系统和总线结构;- 学习使用硬件描述语言(如Verilog或VHDL)进行计算机系统的设计和仿真;- 进行计算机系统的功能测试和性能评估;- 优化计算机系统的设计和实现。
- 第三阶段:课程设计报告和演示- 撰写课程设计报告,包括设计思路、实现过程和结果分析;- 准备课程设计演示,展示计算机系统的功能和性能;- 进行课程设计的答辩和评审。
4. 课程设计评估:- 课程设计报告的质量和完整性;- 计算机系统的功能和性能;- 课程设计演示的表现和效果;- 学生对计算机组成原理的理解和应用能力。
以上是一个可能的计算机组成原理课程设计的简要概述,具体的设计内容和步骤可以根据教学目标和学生能力进行调整和补充。
计算机组成原理课程设计
计算机组成原理课程设计报告一、课程设计目的1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系;2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念;3.培养综合实践及独立分析、解决问题的能力。
二、课程设计的任务针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。
三、课程设计使用的设备(环境)1.硬件●COP2000实验仪●PC机2.软件●COP2000仿真软件四、课程设计的具体内容(步骤)1.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现该模型机指令系统的特点:①总体概述COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。
其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。
微程序控制部分也可以用组合逻辑控制来代替。
模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。
指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。
而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。
在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。
计算机组成原理课程设计完整版
目录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)。
《计算机组成原理》课程设计报告
7.连接实验线路…………………………………………………………………..12
8.运行与调试……………………………………………………………………..13
五总结…………………………………………………………………………………………….13
六参考文献…………………………………………………………………………………………15
OUT addr
0011 0000 XXXX XXXX
[addr] -> LED
JMP addr
0100 0000 XXXX XXXX
[addr] -> PC
4
(1)微指令格式
微指令字长共24位,其控制位顺序如下表所示:
A字段
B字段
C字段
15
14
13
选择
12
11
10
选择
9
8
7
选择
0
0
0
0
0
0
0
0
0
0
110
110
000110
0B
0
0
0
0
0
0
0
1
1
110
110
110
011000
0C
0
0
0
0
0
0
0
1
1
110
110
110
001101
0D
0
0
0
0
0
0
0
0
1
101
000
110
000001
18
0
0
计算机组成原理课程设计3篇
计算机组成原理课程设计第一篇:CPU设计计算机中心处理器(Central Processing Unit, CPU)是计算机的心脏,它负责执行指令,完成计算和控制计算机的所有运算和数据传输。
在计算机组成原理课程设计中,设计一块CPU是非常重要的一步。
CPU的设计与制作需要有一定的基础和经验。
首先,需要了解CPU的工作原理和基本组成,包括寄存器、ALU、控制器和数据通路等。
其次,需要掌握数字逻辑、硬件描述语言和电子工艺制作等知识和技能,以实现CPU的具体功能。
设计一块CPU可分为以下几个步骤:1.确定CPU的整体架构和指令集。
根据需求和实际应用,确定CPU的整体架构和指令集。
可以参考现有的CPU设计,并根据实际情况进行优化和改进。
2.编写CPU的硬件描述语言代码。
使用硬件描述语言(如VHDL)编写CPU的硬件描述语言代码,包括寄存器、ALU、控制器和数据通路等。
3.使用仿真工具进行验证。
使用仿真工具模拟CPU的运行过程,验证硬件描述语言代码的正确性和功能实现。
4.设计和制作PCB电路板。
将CPU的硬件描述语言代码转换为PCB电路板设计,并制作出实际的电路板。
5.测试CPU的性能和功能。
对制作出的CPU进行测试,验证其性能和功能可靠性。
CPU的设计和制作是计算机组成原理课程设计中非常关键的一步,它直接影响到完成整个计算机系统的可靠性和性能。
因此,设计和制作一块优秀的CPU需要耐心和实践经验的积累。
第二篇:存储器设计存储器是计算机系统中重要的组成部分,用于存储数据和程序。
存储器需要具有读、写、删等常见操作,设计一块性能良好和容量适中的存储器是计算机组成原理课程设计的核心内容之一。
存储器的设计和制作需要掌握数字电路设计、电子工艺制作和人机交互等知识和技能。
下面是存储器设计的主要步骤:1.确定存储器的类型和容量。
根据实际需要和使用场景,确定存储器的类型和容量,包括SRAM、DRAM、FLASH等。
2.设计存储器的电路和控制线路。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6、分析微程序的执行结果,一般方法如下:
首先分析微程序执行流程是否正确,根据前面指令微流程的设计,理论上该指令微程序
的执行顺序应该是001→002→003→004→00B→00F→016→006→018→007→031→02D→
02E→000,通过调试软件的执行结果图2.3可以看出,该指令微程序的微指令次序是正确的。
江苏大学
计算机组成原理课程设计报告
专业名称:网络工程
班级学号:3130610031
学生姓名:张 杰
指导教师:胡广亮
设计时间:2013年6月24日—2013年7月2日
第一天:熟悉微程序的设计和调试方法
一、设计目标
1、掌握微程序的设计方法
2、熟悉利用调试软件运行、调试微程序的方法
二、操作提示
1、连接实验设备
MOV指令的微程序(目的数寄存器寻址)
4、输入调机程序
今天的将调机程序就是一条指令:“MOV #0001H, R1”。首先将指令翻译成机器码,根
据指令的编码规则,该指令的编码是:0761 0001。然后利用调试软件将指令码写入主存,
地址从主存的0030H开始。
5、调试微程序。
利用调试软件“Step”按钮控制微指令单步执行,执行结果如图2.3所示
第三天双操作数指令的微程序设计与调试
一、设计目标
设计并调试运算指令的微程序。
二、双操作数指令微程序入口地址
指令助记符
指令编码
入口地址(H)
F
E
D
C
B
A
9
8
7
6
5
4
3
2
1
0
MOVsrc, dst
0
0
0
0
0
1
源地址码
目的地址码
031
ADDsrc, dst
0
0
0
0
1
0
源地址码
目的地址码
032
ADDCsrc, dst
0
0
0
0
1
1
源地址码
目的地址码
033
SUBsrc, dst
0
0
0
1
0
0
源地址码
目的地址码
034
SUBBsrc, dst
0
0
0
1
0
1
源地址码
目的地址码
035
CMPsrc, dst
0
0
0
1
1
0
源地址码
目的地址码
036
ANDsrc, dst
0
0
0
1
1
1
源地址码
目的地址码
037
ORsrc, dst
0
0
1
0
0
0
000
CMP
05C
9970006F
TRoe, AND, PSWce,SV
0
06F
AND
060
9980006F
TRoe, OR, PSWce,SV
0
06F
OR
064
9A30006F
TRoe, XOR, PSWce, SV
0
06F
XOR
068
99400000
TRoe, AND, PSWce
0
000
TEST
06F
00000E70
NOP
0
070
回送
四、测试程序、数据及运行结果
1、测试内容:立即寻址,直接寻址,间接寻址,寄存器寻址,寄存器间接寻址
测试程序:MOV(0048H) R1
TEST 0048H R1
AND #0078H (R0)
ADD R1 R0
注意:请在断电状态下连接调试电缆。
2、下载FPGA配置数据
从课程网站下载CPU.sof等文件,使用Quartus II Programmer软件将CPU.sof下载到
FPGA。
3、输入微程序
利用调试软件将微程序写入控存,微程序如下。
取指令微程序
取源操作数为立即数的微程序
取目的操作数为寄存器寻址的微程序
0
源地址码
目的地址码
038
XORsrc, dst
0
0
1
0
0
1
源地址码
目的地址码
039
TESTsrc, dst
0
0
1
0
1
0
源地址码
目的地址码
03A
三、双操作数指令执行微程序
微地址(H)
微指令(H)
微命令
BM
NA
注释
007
00000800
4
044
指令执行入口
048
9870006F
TRoe, ADD, PSWce, SV
了实验的意义。
1、测试内容:立即数寻址、寄存器寻址
测试指令(或程序):MOV #0001H, R1
机器码:
内存地址(H)
机器码(H)
汇编指令
0030
0761 0001
MOV #0001H, R1
运行结果:
第二天取操作数微程序的设计和调试
一、设计目标
设计并调试取操作数的微程序。
二、取操作数微流程
取目的操作数流程:
三、测试程序、数据及运行结果
格式如下:
1、测试内容:间接寻址、寄存器寻址
测试指令(或程序):MOF (0048)R1
机器码:
内存地址(H)机器Biblioteka (H)汇编指令0030
0721 0048 0058 0001
MOF (0048)R1
运行结果:
四、设计中遇到的问题及解决办法
在设计过程中开始对调试程序的运行不熟悉,不是很了解了此程序的运行。在操作过程中,粗心导致了输入机器码的错误,或者是所在位置错误,重新输入解决了此问题。我详细地了解了它的整个过程和对于每一步的分析和验证,对微程序设计有了更深入的了解。
以看出,IB的数据由上一条微指令的结果0000→0031, AR的数据由上一条微指令的结果
0030→0031,说明本条微指令执行结果是正确。
从上面的分析可以看出,要想检查运行结果是否正确,关键是要清楚理论上正确的结果
是什么。这就要求实验者对指令的微程序流程非常清楚,从而达到了理解计算机内部信息流
动过程、掌握计算机工作原理的目的。所以实验者应重视实验数据的分析工作,否则就失去
0
06F
ADD
04C
98B0006F
TRoe, ADDC, PSWce, SV
0
06F
ADDC
050
98F0006F
TRoe, SUB, PSWce, SV
0
06F
SUB
054
9930006F
TRoe, SUBB,PSWce, SV
0
06F
SUBB
058
98C00000
TRoe, CMP, PSWce
如果执行的微指令次序不正确,那就要分析原因,检查BM和NC设置是否正确、检查uAR
的各个输入信号的值是否正确,如IR、NA等。
然后分析指令的运行结果。理论上本条测试指令执行完后,R1的值应该是0001。通过
调试软件的执行结果图2.3可以看出,指令执行结果是正确的。如果结果不对,就需要进一
步分析每一条微指令。分析的方法是针对微指令的每一条微命令,查看相应微操作前后相关
模块的数据变化是否与指令微流程一致。下面举个例子说明如何分析每条微指令的。
图2.3的微地址为000B(uAR=000B)的控存单元所对应的内容为2008000F,即微指
令为2008000F,所代表的微操作是:PCoe,ARce,即PC的内容送IB、IB的内容送AR,
理论上的正确结果应该是IB=0031,AR=0031;通过图2.3的000B单元微指令的执行结果可