组成原理第5章.docx
- 文档编号:11578524
- 上传时间:2023-03-19
- 格式:DOCX
- 页数:25
- 大小:62.73KB
组成原理第5章.docx
《组成原理第5章.docx》由会员分享,可在线阅读,更多相关《组成原理第5章.docx(25页珍藏版)》请在冰豆网上搜索。
组成原理第5章
第5章计算机组成原理课程设计
在上一章中,我们详细地介绍了计算组成原理课程设计平台系统,知道了在模式开关的控制下有两种不同的工作平台。
《计算机组成原理》的所有课程设计都将在这两种工作模式下完满的得到实施。
一个完整的课程设计可以用多种形式来描述。
例如,一个简单的设计可能用硬件描述语言来描述就够了。
但一个复杂的设计可能要分成若干个功能模块来描述,而其中的每一个功能模块可能用硬件描述语言来描述,也可能用原理图来描述,这样的描述方式就是混合输入的设计方法。
结合《计算机组成原理》课程设计的特点和学生的实际情况,原理图输入方式最适合课程设计的实施。
以此为基点,《计算机组成原理》课程设计的步骤如图5-1所示。
课程设计共分三个阶段:
1、设计初始阶段
在该阶段中,学生根据所学内容,按照《计算机组成原理》课程设计的要求,在课程设计报告书中完成方案设计并画出逻辑线路图。
2、编程设计阶段
在该阶段中,学生将以PC机为平台,在WINDOWS环境下,利用编程软件系统在PC机上生成所画出的逻辑线路,这就是所谓的原理图输入方式。
在逻辑线路的生成过程中,可调用元件库提供的元件(例算术逻辑部件、多路开关、寄存器、译码器、逻辑门等),也可以自定义元件。
这与常规《计算机组成原理》课程设计相比较,充分地体现了设计的灵活性,满足了学生的灵活设计思路,是对设计能力的最好体现。
当原理图输入完毕后,编程软件系统可对原理图文件进行编译、优化、适配,将错误消灭在设计阶段。
最后生成对ispLSI的编程文件。
3、ispLSI编程和测试阶段
当一个设计完成且产生编程文件后,就可以对ispLSI进行编程。
对ispLSI的编程是由编程软件系统中的下载软件驱动的。
明确设计要求
课程设计
方案设计
初始阶段
逻辑图设计
用库元件或自定义元件
生成逻辑图
编程设计
阶段
编译与优化
生成编程文件
对ispLSI编程
对ispLSI
功能测试
编程与
测试阶段
结束
图5-1课程设计步骤
下载结束后,逻辑线路就固化在ispLSI1032E中,在模式开关的控制下选用不同的平台,利用提供的开关、指示灯、存储器等硬件资源对逻辑线路进行功能测试,若有错误,则通过审查、修改原理图文件、重新下载、重新测试直至成功为止。
若无错,则整个课程设计结束。
学生可将逻辑原理图、功能测试结果写在课程设计报告中。
为了将《计算机组成原理》课程设计顺利地、完满地结束,在整个设计过程中将采取由浅入深、由简单到复杂的方法,使学生能扎实地掌握所学知识和设计技巧,能清楚地了解计算机的基本组成、基本原理和设计的过程,最终能清晰地建立起整机概念,我们将《计算机组成原理》课程设计分为两个阶段;第一阶段为计算机的典型部件设计。
在这个阶段中,学生通过对部件的设计,以期达到对部件的构成、设计方法、工作原理及在计算机硬件中的功能作一系统的了解。
第二个阶段为计算机综合课程设计。
在这个阶段中,学生将用多部件构造一台较为复杂的计算机硬件系统。
以期达到对计算机的总体设计、基本构成、基本原理有一个清楚的认识并能建立一个清晰的整机概念,从而也扎实地掌握了一种数字系统的设计方法。
5.1典型部件课程设计
5.1.1多路开关设计
1、设计目的
(1)熟悉多路开关的逻辑设计。
(2)熟悉多路开关的应用。
(3)熟悉多路开关的功能测试。
2、设计简述
多路开关是计算机硬件系统中的常用部件,它在数据通路中起着非常重要的作用。
例如,运算器中的数据选择器、输出门中的移位器和微程序控制器中的微地址形成部件等。
(1)数据选择器
从图5-2中可看出,数据选择器E在控制电位的控制下,可选择并允许一路4位的信息通过选择器E。
要求:
A→E高电平时,LED7-4的状态=K15-12的状态
B→E高电平时,LED7-4的状态=K11-8的状态
C→E高电平时,LED7-4的状态=K7-4的状态
LED7-4
数据选择器E
A→E
B→EC→E
K7-4
K11-8
K15-12
图5-2数据选择器结构框图
其中数据选择器的输出定义在LED7-4以显示选择器的输出状态。
A操作数定义在K15-12
B操作数定义在K11-8
C操作数定义在K7-4
A→E定义在K0
B→E定义在K1
C→E定义在K2
控制电位高电平有效、状态互诉。
设计一选择器满足以上要求。
·将模式开关置于统调
当选择器逻辑线路设计完毕后下载到ispLSI1032E,下载成功后,下一步进行功能测试:
·将模式开关置分调(推向下方)
·利用开关和发光二极管测试选择器功能并记录测试结果
(2)逻辑运算部件
逻辑运算主要有逻辑乘、逻辑或、异或、求反、等四种运算。
该运算部件可用与或门等逻辑电路实现。
其结构框图如图5-3所示
图5-3逻辑运算部件
图中逻辑运算部件在控制电位的控制下可实现两个4位操作数的逻辑运算。
其中A操作数由开关K
设定;B操作数由开关K
设定,逻辑运算结果由发光二极管LED
显示
要求:
A·B→E为高电平时,A、B两操作数实现逻辑乘。
A+B→E为高电平时,A、B两操作数实现逻辑或。
A⊕B→E为高电平时,A、B两操作数实现半加。
→E为高电平时,A操作数取反。
A→E为高电平时,A操作数直接传送。
其中:
A→E定义在K
→E定义在K
A⊕B→E定义在K
A+B→E定义在K
A·B→E定义在K
逻辑运算部件设计完成后将模式开关置于统调,将逻辑图下载至ispLSI1032E中。
·将模式开关置于分调
·利用开关和发光二极管测试逻辑运算部件的功能并纪录测试结果
(3)移位器
如图5-4所示,移位器在控制电位的控制下可实现4位信息的移位操作。
移位操作通过斜送实现。
要求:
LM(左移)高电平时,K11~K8左移一位,高位移出,低位补零
RM(右移)高电平时,K11~K8右移一位,低位移出,高位补零
DM高电平时,LED11~8的状态=K11~8的状态的(直接传送)
其中移位器的输出定义在LED11~8以显示移位器的输出状态。
LEDLEDLEDLED
111098
11
11
移位器
LM(左移)
DM(直送)
RM(右移)
00
K11K10K9K8
图5-4移位器结构框图
4位操作数定义在K11~K8上。
LM(左移)定义在K0
DM(直送)定义在K1
RM(右移)定义在K2
设计一移位器满足以上要求。
下载时将模式开关置于统调。
当逻辑线路下载后进行功能测试:
·将模式开关置于分调
·利用开关与发光二极管测试移位器并记录测试结果。
5.1.2微程序控制的运算器设计
1、设计目的
(1)熟悉串行进位并行加法器的设计。
(2)熟悉简单运算器的结构。
(3)熟悉微命令的产生和时序。
(4)熟悉运算器功能测试。
2、设计简述
R2
八位加法器
C0
R1
R0
CPR0CPR1
μIR15-8
图5-5运算器结构
设计一个八位串行进位的加法器,具有加法和加1功能,两操作数由八位寄存器R0、R1提供,其结果放入R2中。
具体何种操作可由微命令任意设定。
(1)运算器结构
运算器结构如图5-5所示。
其中R0、R1、R2均为D触发器组成的八位寄存器,在打入脉冲CPRi的作用下,接收数据输入端提供的信息送入Ri中。
IR15-8为微指令寄存器的高八位,可定义为操作数。
图中打入脉冲CPR0、CPR1、CPR2、进位信号C0均由微指令寄存器的低8位产生。
(2)微程序控制器的结构
图中1032E之外的部件均由课程设计平台提供,而1032E之内的虚线部分则由学生自行设计。
其结构如图5-6所示。
当模式开关置于统调时(推向上方),控制存储器ROM2#、ROM1#、
IR15-8、
IR7-0、L15-8、L7-0、
、CP
IR、A0~A7均连入1032E系统中。
其中,自行设计的微程序计数
PC向控制存储器提供8位微地址,在控存读信号
的作用下,读出一条长16位的微指令代码,并在打入命令CP
IR的作用下,送入
IR15-8、
IR7-0。
L15-8、L7-0用于显示微指令寄存器
IR15-8、
IR7-0的内容。
每当按一次脉冲键便产生一个负脉冲,该脉冲的作用是:
·作为读控存的命令
。
·负脉冲当作CpμIR将读出的微指令代码打入μIR
·负脉冲的上升沿使
PC+1形成下一条微指令的地址。
·负脉冲反相后的上升沿作为寄存器打入脉冲。
731032ECPPC
686941–3452–45
RET2
μPC
24
8860-53
μRDCPμIRμIR15-8μIR7-0
L15-8L7-0
11888
μIR15-8μIR7-0
88
A7–A0
图5-6微程序控制器框图
微程序时序如图5-6。
P//
//
图5-7微程序时序
微指令格式:
CPR0CPR1CPR2
常数K字段C0CPR0CPR1CPR2
μIR15μIR8μIR7μIR6μIR5μIR4
字段分配:
IR15~
IR8:
定义为8位操作数
IR7:
为1,C0=1
为0,C0=0
IR6:
为1,产生CPR0
IR5:
为1,产生CPR1
IR4:
为1,产生CPR2
(3)调试步骤:
·将模式开关置于统调
·设计运算器和
PC逻辑线路并下载至1032E中
·再将模式开关置于分调
·编制微程序
例如55+AA→R2
执行过程如下:
↓
55→R0
↓
AA→R1
↓
R0+R1→R2
↓
结束
·需三条微指令(每一流程需一条微指令)
·写出微指令二进制代码和十六进制代码形式
·键入微指令十六进制代码至控存ROM2#、ROM1#中,微指令从零号单元开始存放。
·将模式开关置于统调
·按一次RET2键将
PC置零。
·每按一次脉冲键读出并执行一条微指令。
当微程序执行完时检查并记录结果
(4)写出设计调试报告
·画出所有逻辑线路图
·写出微程序清单
·记录功能检查情况。
5.1.3微程序控制的存储器读写系统设计
1、设计目的
(1)熟悉随机存储器读写系统结构设计。
(2)熟悉随机存储器的读写时序。
(3)熟悉随机存储器的读写操作的微程序实现。
(4)熟悉随机存储器的功能测试。
2、设计简述
当模式开关置于统调时,课程设计平台为设计环境提供了容量为256×8的随机存储器。
在此基础上,学生只要设计相应的外围电路和时序就可以对随机存储器进行读写操作。
其结构框图如图5-8所示。
(1)结构及信号索引
图中MAR为地址寄存器、R为数据寄存器。
1032E引脚信号如下:
A7~A0地址信号,方向指向RAM。
DO7~DO0数据信号方向指向RAM即提供写入内存的数据。
DI7~DI0数据信号方向指向1032E,即存储器的读出信息。
存储器读命令,低电平有效。
存储器写命令,低电平有效。
IR15-8微指令寄存器
IR高八位,可定义为地址信号写入MAR7-0
或定义为数据写入DO7-0
1032E
CPMAR
73CPR
41-3410-3717018-1133-26
R
MAR7-0
DI7-0
DO7-0A7-0
μIR15-8
256
8
RAM
图5-8随机存储器读写结构框图
(2)微指令格式及微程序编制
CPRCPMARWRRD
P
常数K字段….CPRCPMAR
μIR15μIR8μIR3μIR2μIR1μIR0
其中常数K定义为地址/数据
IR3为1产生CPR
IR2为1产生CPMAR
IR1为1产生
IR0为1产生
微程序的编制由存储器的操作确定:
例:
将数据55H送入RAM中的05H单元(写操作)
执行过程如下:
↓
05H→MAR
↓
55H→RAM
↓
将RAM05H单元中的内容读出送R
执行过程如下:
↓
05H→MAR
↓
RAM→R
(3)调试步骤
将模式开关置统调:
·设计存储器外围逻辑并下载至1032E中。
·将模式开关置分调
·设计微程序并将微程序以十六进制代码键入ROM2#、ROM1#中。
将模式开关置统调:
·按一次脉冲键读出并执行一条微指令,并检查微指令执行情况,直至结束。
(4)写出设计调试报告
·画出逻辑线路图
·写出微程序清单
·记录功能检测情况
(5)连续读写存储器系统设计
设计一存储器外围控制逻辑,具有连续按动脉冲键20次,将数据0~19依次存入存储器0~19号单元。
要求学生独立完成并完成以下工作(不用微程序控制):
·设计目的
·设计简述
·逻辑设计
·调试步骤
·设计与调试报告
5.2一个简单计算机设计示范
通过前面的典型部件设计与调试,我们对数据选择器、移位器、加法器、运算器、存储器和微程序控制器有较透彻的了解。
在此基础上我们可着手一个简单计算机的设计,由于计算机涉及的部件较多、结构原理较复杂,对于一个初设计者来讲感到无从下手。
为此先给出一个简单计算机的设计范例,学生可通过该范例熟悉计算机的设计步骤、设计思路和调试步骤,为独立完成计算机设计奠定一个扎实的基础。
结合计算机组成原理的教学内容和课程设计平台系统,计算机的设计与调试步骤如下:
拟定指令系统
确定总体结构
逻辑设计
确定控制方式
编制指令流程
编制微程序
分调
联调
图5-9计算机的设计步骤
5.2.1拟定指令系统
指令系统是设计计算机的依据,因此拟定指令系统是很重要的一件工作。
拟定指令系统将涉及到基本字长指令格式、指令种类、寻址方式等内容。
这些内容的确定又和总体结构密切相关,在范例中(以下称模型机),我们尽量简单处理这些问题,目的是给大家一种清晰的设计思路。
·基本字长
课程设计平台中配置的存储器容量为256×8,显然基本字长只能定为8位。
·指令格式
指令格式可有单字长指令和双字长指令两种,在双字长格式中,第二字节一般定义为操作数或操作数地址。
指令格式为:
743210
操作码OP源操作数目的操作数
·指令类型
模型机有单操数指令、双操作数指令和无操作数指令。
操作码OP共4位,最多可定义16条指令。
例MOV
ADD
┇
数据的传送单位为8位(一个字节)
数据的传送范围R→RR→RAMRAM→R
·寻址方式
由于指令较短、操作数字段仅两位,为了简化硬件设计,将源操作数字段和目的操作数字段的寻址定义为不同的含义。
源操作数字段寻址方式目的操作数寻址方式
00R000R1
01(R0)01(R1)
10I10I
11D11D
Ri表示操作数就在寄存器中
(Ri)表示操作数地址在寄存器中
I指令的第二个字节为操作数或称立即寻址
(D)指令的第二个字节为操作数的地址
源操作数使用R0寻址
目的操作数使用R1寻址
这样设计的目的是为了简化运算器选择门的设计和缩短指令长度。
5.2.2确定总体结构
总体结构如图5-10所示。
1、寄存器的设置
R0、R1为通用寄存器,8位。
IR为指令寄存器,8位。
PC程序计数器,8位。
MAR为地址寄存器,8位。
2、加法器的设置
为简化设计,采用为8位带串行进位并行加法器
3、选择器的设置
连入A选择器的数据来源是RAM的读出数据和R0寄存器的数据。
连入B选择器的数据来源是PC的数据和R1的数据。
4、数据通路
数据通路的设计在总体结构中是最重要的一个问题。
模型机的数据通路是以总线为基础以CPU为核心构成的。
信息的传送路径:
·取指令
MACPIR
RAM→选择器A→
→Bus→IR
·送指令地址
PBCPMAR
PC→选择器B→
→Bus→MAR
·指令计数器+1
PBc0cppc
PC→选择器B→
→Bus→PC
·R0→R1
RACPR1
R0→选择器A→
→Bus→R1
·R1→RAM
RB
R1→选择器B→
→Bus→RAM
5.2.3逻辑设计
总体结构确定之后,便开始总体结构中各部件的逻辑设计和部件之间的连接。
总体结构中,虚线框内的RAM是1032E之外预先配置好的。
1、加法器的逻辑设计
如附图2所示,模型机中的加法器是由八个一位全加器构成,全加器之间采用简单的串行进位。
全加器逻辑原理如附图3所示。
2、选择器的设计
选择器A和选择器B的结构形式一样,如附图4所示,在控制电位EN0和EN1的控制下,分别选择R0的或R1的数据通过选择器,进入加法器。
EN0和EN1是互斥的,高电平有效。
3、寄存器的设计
·不带复位的寄存器
结构中R0、R1通用寄存器,可存放操作数或结果、中间结果,每个寄存器均由8个D触发器构成。
在CPRi的作用下接收总线的数据送入寄存器,输出连入选择器。
结构如附图5所示。
指令寄存器IR其结构同通用寄存器。
·带复位的寄存器
结构中MAR地址寄存器是一个带复位的寄存器,带复位是指当有复位信号时,MAR清零。
逻辑图如附图6所示。
·程序计数器的设计
程序计数器结构如附图6所示。
PC加1是通过加法器实现的。
复位信号RET
的作用是有复位信号时,计数器PC清零。
·部件之间的连接
由系统结构图5-10可看出,部件之间的连接是采用以CPU为中心的总线连接方式。
加法器的输出通过总线BUS连接到所有寄存器和存储器的输入端,除指令寄存器IR和地址寄存器MAR的输出端外,其它部件的输出端分别送入选择器A和选择器B。
连线图如附图1所示。
2.2.4确定控制方式
控制命令是确定信息的流向,不同的数据通路需要不同的控制命令。
图5-10中,涉及到了许多控制命令例如CPR0、CPMAR、MA、RB、
等等,这些命令如何产生?
通常有两种方式,即组合逻辑方式和微程序方式,模型机采用微程序方式。
微程序的执行方式采用增量、垂直方式。
1、微程序控制器的结构
前面已提到过,如图4-4所示,主要由控制存储器ROM2#、ROM1#、微指令寄存器
IR15-8、
IR7-0构成。
L15-8、L7-0用于显示微指令寄存器
IR的内容,便于观察。
以上这些部件由课程设计平台提供,而微程序计数器和微地址形成部件后面介绍。
2、微程序控制器的时序
微程序控制器的时序非常简单如图5-11所示。
P//
//
图5-11微程序控制器时序
·P脉冲的低电平用做控制存储器读命令
·P脉冲的上升边沿将读出的微指令送
IR
·
脉冲的上升边沿将形成的后继地址送微程序计数器
PC,同时将运算结果(总线的数据)送指定的寄存器。
3、微指令格式
微指令字长16位即
IR15~
IR0。
(1)微指令字段定义
A选择器控制:
IR15·
IR14
00备用
01RA
10MA
11备用
B选择器控制:
IR13·
IR12
00备用
01PB
10RB
11备用
输出分配:
IR11·
IR10·
IR9
000备用
001CPR0
010CPR1
011CPPC
100CPIR
101CPMAR
110备用
111备用
低位进位控制:
IR8
0C0=0
1C0=1
存储器读写控制:
IR5·
IR4
10
01
后继微地址形成方式:
IR2·
IR1·
IR0
000备用
001
PC+1顺序执行
010JP无条件转移,地址由
IR15-8提供。
011QJP高四位按操码转移,低4位为0。
100YJP给定高4位低4位按源寻址方式转移。
101MJP给定高4位低4位按目寻址方式转移。
110备用
111备用
(2)微命令形成逻辑
微命令形成逻辑电路如图5-12所示。
图中二—四译码器逻辑原理如附图3所示。
三—八译码器逻辑原理如附图8所示。
(3)后继微地址产生逻辑
为简单起见只选三种后继微地址生成方式即增量方式、无条件转移方式、按操作码转移方式。
其结构框图如图5-13所示。
µPC
EN
微地址形成部件
JP
QJP
操作码IR8-5微指令µIR15-8
图5-13后继地址形成逻辑
当EN=1时,微程序计数
PC执行加1操作。
当EN=0时且JP=1时,无条件转移。
当EN=0时且QJP=1时,按操作码转移。
4、微程序编写
为了便于学习掌握、容易理解,我们仅对几条指令进行微程序设计,为了简化微地址形成部件的控制逻辑,将按源操作数寻址转移和目的操作数寻址转移并入按操作码转移方式。
(1)程序
MOV105#,R0
MOV201#,R1
ADDR0,R1
MOV3R1,(R0)
(2)操作码二进制代码
MOV1:
0001
MOV2:
0010
ADD:
0011
MOV3:
0100
(3)微程序入口(十六进制代码)
取指令入口:
00H
MOV1入口:
10H
MOV2入口:
20H
ADD入口:
30H
MOV3入口:
40H
(4)指令执行流程
指令流程
00↓
RAM→IR
↓
PC+1→PC
10↓20↓30↓40↓
PC→MARPC→MARR0+R1→R1R0→MAR
↓↓↓↓
PC+1→PCPC+1→PCPC→MARR1→RAM
↓↓↓↓
RAM→R0RAM→R1JPPC→MAR
↓↓↓
PC→MARPC→MARJP
↓↓
JPJP
图5-14指令执行流程
(5)编制微程序
根据指令流程和微指令格式就可以开始编制微程序工作了
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组成 原理