计算机组成原理-简单模型机设计课设_第1页
计算机组成原理-简单模型机设计课设_第2页
计算机组成原理-简单模型机设计课设_第3页
计算机组成原理-简单模型机设计课设_第4页
计算机组成原理-简单模型机设计课设_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、目目 录录 摘摘 要要.2 前前 言言.3 正正 文文.4 一、设计目的和设计原理.4 1.1 设计目的.4 1.2 设计原理.4 二、总体设计.7 三、详细设计.8 3.1 运算器的物理结构.8 3.2 存储器系统的组成与说明.11 3.3 指令系统的设计与指令分析.12 3.4 微程序控制器的逻辑结构及功能.14 3.5 微程序的设计与实现.18 四、系统调试.27 总总 结结.29 参考文献参考文献.30 致致 谢谢.31 摘 要 根据设计任务书要求,本设计要实现完成一个简单计算机的设计,主要设计 部分有运算器,存储器,控制器以及微指令的设计。 其中运算器由运算芯片和寄存器来完成,存储器

2、由总线和寄存器构成,使用硬 布线的方式实现控制器,从而完成设计要求。 : 关键词:关键词:基本模型机的设计;运算器;存储器;控制器; 前 言 计算机组成原理是计算机科学技术学科的一门核心专业基础课程。从课程的 地位来说,它在先导课程和后续课程之间起着承上启下的作用。 计算机组成原理讲授单处理机系统的组成和工作原理,课程教学具有知识面 广,内容多,难度大,更新快等特点。此次课程设计目的就是为了加深对计算机 的时间和空间概念的理解, 增强对计算机硬件和计算机指令系统的更进一步了解。 计算机组成原理课程设计目的是为加深对计算机工作原理的理解以及计算机 软硬件之间的交互关系。不仅能加深对计算机的时间和

3、空间的关系的理解,更能 增加如何实现计算机软件对硬件操作,让计算机有条不紊的工作。 正 文 一、设计目的和设计原理一、设计目的和设计原理 1.1 设计目的设计目的 融会贯通计算机组成原理课程中各章的内容,通过知识的综合运用,加深对 计算机系统各模块的工作原理及相互联系的认识,特别是对硬连线控制器的认识, 建立清晰的整机概念。对计算机的基本组成、部件的设计、部件间的连接、微程 序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理 论课程的理解。 在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模 型计算机。 1.2 设计原理设计原理 (1)运算器 设计中所用的运

4、算器数据通路,其中运算器由两片74LS181以并/串形成8位 字长的ALU构成。运算器的输出经过一个三态门74LS245(U33)到ALUO1插座,实验 时用8芯排线和内部数据总线BUSD0D7插座BUS16中的任一个相连,内部数据 总线通过LZD0LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器 74LS273(U29、U30)锁存,两个锁存器的输入并联后连至插座ALUBUS,测试时 通过8芯排线连至外部数据总线EXD0D7插座EXJ1EXJ3中的任一个;参与运算 的数据来自于8位数据开并KD0KD7,并经过一三态门74LS245(U51)直接连至 外部数据总线EXD0EXD7,通

5、过数据开关输入的数据由LD0LD7显示。 算术逻辑运算功能发生器 74LS181(U31、U32)的功能控制信号 S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,测试时通过6芯排线连至6位功 能开关插座UJ2,以手动方式用二进制开关S3、S2、S1、S0、CN、M来模拟 74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信 号LDDR1、LDDR2、ALUB、SWB以手动方式用二进制开关 LDDR1、LDDR2、ALUB、SWB来模拟,这几个信号有自动和手动两种方式产生,通 过跳线器切换,其中ALUB、SWB为低电平有效,LDDR1、LDDR

6、2为高电平有效。 另有信号 T4 为脉冲信号,在手动方式下进行实验时,只需将跳线器 J23 上 T4 与手动脉冲发生开关的输出端 SD 相连,按动手动脉冲开关,即可获得实验所 需的单脉冲。 带进位控制运算器增加进位控制部分,其中高位 74LS181(U31)的进位 CN4 通过门 UN4E、UN2C、UN3B 进入 UN5B 的输入端 D,其写入脉冲由 T4 和 AR 信号控 制,T4 是脉冲信号,在手动方式下进行实验时,只需将跳线器 J23 上 T4 与手动 脉冲发生开关的输出端 SD 相连,按动手动脉冲开关,即可获得测试所需的单脉 冲。AR 是电平控制信号(低电平有效) ,可用于实现带进位

7、控制实验。从图中可 以看出,AR 必须为“0”电平,D 型触发器 74LS74(UN5B)的时钟端 CLK 才有脉 冲信号输入。才可以将本次运算的进位结果 CY 锁存到进位锁存器 74LS74(UN5B)中。 (2)存储器 主存储器单元电路主要用于存放实验机的机器指令,它的数据总线挂在外部 数据总线EXD0EXD7上;它的地址总线由地址寄存器单元电路中的地址寄存器 74LS273(U37)给出,地址值由8个LED灯LAD0LAD7显示,高电平亮,低电平灭; 在手动方式下,输入数据由键盘提供,并经一三态门74LS245(U51)连至外部数 据总线EXD0EXD7,实验时将外部数据总线EXD0EX

8、D7用8芯排线连到内部数据 总线BUSD0BUSD7,分时给出地址和数据。它的读信号直接接地;它的写信号和 片选信号由写入方式确定。该存储器中机器指令的读写分手动和自动两种方式。 手动方式下 ,写信号由W/R 提供,片选信号由CE提供;自动方式下,写信号 由控制CPU的P1.2提供,片选信号由控制CPU的P1.1提供。 由于地址寄存器为 8 位,故接入 6264 的地址为 A0A7,而高 4 位 A8A12 接地,所以其实际使用容量为 256 字节。6264 有四个控制线:CS1 第一片选线、 CS2 第二片选线、OE 读线、WE 写线。其功能如表 34 所示。CS1 片选线由 CE控 制(对

9、应开关 CE)、OE 读线直接接地、WE 写线由 W/R控制(对应开关 WE)、 CS2 直接接+5V。 (3)部件测试过程中,各部件单元的控制信号是人为模拟产生的,而总体 测试将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。 这里,测试计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出 一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成, 即一条机器指令对应一个微程序。 为了向主存储器RAM中装入程序或数据,并且检查写入是否正确以及能运行 主存储器中的程序,必须设计三个控制操作微程序。 存储器读操作:拨动总清开关后,置控制开关SWB、SWA为“

10、0 0”时,按 要求连线后,连续按“启动运行”开关,可对主存储器RAM连续手动读操作。 存储器写操作:拨动总清开关后,置控制开关SWB、SWA为“0 1”时,按 要求连线后,再按“启动运行”开关,可对主存储器RAM进行连续手动写入。 运行程序:拨动总清开关后,置控制开关SWB、SWA为“1 1”时,按要求 连线后,再按“启动运行”开关,即可转入到第01号“取址”微指令,启动程序 运行。 上述三条控制指令用两个开关 SWC、SWA 的状态来设置,其定义如下: SWBSWA 控制台命令 0 0 1 0 1 1 读内存 写内存 启动程序 (4) 指令寄存器 指令寄存器用来保存当前正在执行的一条指令。

11、当执行一条指令时,先把它 从内存取到缓冲寄存器中,然后再传送到指令寄存器。指令划分为操作码和地址 码字段,由二进制构成,为了执行任何一条给定的指令,必须对操作码进行测试 P(1),通过节拍脉冲T4的控制以便识别所要求的操作。“指令译码器”根据指令 中的操作码进行译码,强置微控器单元的微地址,使下一条微指令指向相应的微 程序首地址。 二、总体设计二、总体设计 基本整机模型数据框图如图 2-1 所示,计算机数据通路的控制将由微程序控 制器来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全 部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 ALU S3 S2 S1 ME

12、M OUT IN PC LDPC AR LDAR LOAD ALU-G LED-G SW-G DR1 T4 DR2 T4 PC-G 时 序 微控制器 IR LDIR 地址总线 数据总线 T1 T2 WE WE WE S0 LDDR1LDDR2 C CE E R0 R0-G LDR0 图 2-1:模型机的数据通路图 数据的通路从程序计数器 PC 的地址送到主存的地址寄存器,根据地址寄存 器的内容找到相应的存储单元。 存储器中的数据是指令时,那么数据是从 RAM 送到总线,再从总线送到 IR 中。 存储器中的数据是需要加工的数据时,那么数据是从 RAM 送到总线,再动总 线送到通用寄存器中等待加工

13、。 数据加工过程中,两个数据是从总线上将数据分别分时压入两个暂存器中, 等待运算部件的加工,在数据加工完成以后。运算结果是通过三太门送到总线上。 三态门的控制时由微控制器来控制。 三、详细设计三、详细设计 3.1 运算器的物理结构运算器的物理结构 运算器模块主要由两片 74LS181、暂存器两片 74LS273 等构成。其中 74LS181 可通过控制器相应的控制指令来进行某种运算,具体由 S0、S1、 S2、S3、S4、M 来决定。T4 是它的工作脉冲,正跳变有效。寄存器堆模块为实验 计算机提供了 2 个 8 位通用寄存器。它们用来保存操作数及其中间运算结果,它 对运算器的运算速度、指令系统

14、的设计等都有密切的关系。 下面是芯片 74LS181 的控制逻辑引脚的功能表以及逻辑引脚图如表 3-1 所示: 表 3-1:74LS181 的控制逻辑引脚的功能表 Cn+4 A0A3 F0F3 74LS181 B0B3 Cn M S0 S1 S2 S3 图 3-1:74LS181 的逻辑引脚图 其中各个引脚的功能如下所示: M:算术/逻辑运算选择输入 M=0 算术运算 M=1 逻辑运算 Cn:带或不带进位运算选择输入 Cn =0带进位 Cn =1不带进位 S3S0:函数选择输入,A3A0:4 位输入数据,B3B0:4 位输入数据 F3F0:4 位表示运算结果的输出,C n+4:进位输出 Q1

15、Q2 Q3 Q4 Q5 Q6 Q7 Q8 74LS273 D0 D1 D2 D3 D4 D5 D6 D7 CLK CLR 图 3-2:74LS273 的引脚图 其中,Q0-Q7 表示寄存器的 8 位数据输出,D0D7 表示向寄存器中输入 8 位 数据的引脚,CLK 是用来进行寄存器的选定操作,当其为高电位时和 T4 信号一起 选定哪个寄存器进行数据输入。 8 位运算器的结构框图如图 3-3 所示: 图 3-3:8 位运算器的结构框图 在该运算器中,有两片 74LS181 组成算术和逻辑运算。数据的来源由 74LS273 寄存器提供,74LS273 产生 8 位数据,分别送入到 74LS181

16、运算器中进 行相应的运算,而如何进行数据的传送是由 LDDR1 和 LDDR2 以及 T4 信号控制 的,当 LDDR1 和 T4 都为高电平时,选定相应的寄存器来进行数据输入,同理, LDDR2 和 T4。然后经过相应的运算之后将产生的结果通过总线送回到寄存器中。 整个数据的运送过程有相应的控制信号提供,S0、S1、 S2、S3、S4、M 都是通过 控制器的相关指令来控制。让其进行某种算数运算和逻辑运算。整个数据和指令 都是通过数据总线,控制总线和地址总线来进行传送。 3.2 存储器系统的组成与说明存储器系统的组成与说明 3.2.1 存储器的详细设计存储器的详细设计 图 3-4:存储器的结构

17、框图 说明:该主存储器采用一级 cache-存储器结构。主要用于存放试验机的机器 指令。它的数据总线挂在外部数据总线 EXD0EXD7 上;它的地址总线由地址寄 存器单元电路中的地址寄存器 74LS273(U37)给出,地址值由 8 个 LED 灯 LAD0LAD7 显示,高电平亮,低电平灭;在手动方式下,输入数据由 8 位数据开 关 KD0KD7 提供,并经一三态门 74LS245(U51)连至外部数据总线 EXD0EXD7,实验时将外部数据总线 EXD0EXD7 用 8 芯排线连到内部数据总线 BUSD0BUSD7,分时给出地址和数据。它的读信号直接接地;它的写信号和片选 信号由写入方式确

18、定。该存储器中机器指令的读写分手动和自动两种方式。手动 方式下 ,写信号由 W/R 提供,片选信号由 CE提供;自动方式下,写信号由控 制 CPU 的 P1.2 提供,片选信号由控制 CPU 的 P1.1 提供。 由于地址寄存器为 8 位,故接入 6264 的地址为 A0A7,而高 4 位 A8A12 接地,所以其实际使用容量为 256 字节。6264 有四个控制线:CS1 第一片选线、 CS2 第二片选线、OE 读线、WE 写线。CS1 片选线由 CE控制(对应开关 CE) 、OE 读线直接接地、WE 写线由 W/R控制(对应开关 WE) 、CS2 直接接+5V。 图中信号线 LDAR 由开

19、关 LDAR 提供,T3 由试验机上时序模块电路 TS3 提供。 3.3 指令系统的设计与指令分析指令系统的设计与指令分析 机器指令格式的设计机器指令格式的设计 3.3.1 数据格式数据格式 数据格式如表 3-2 所示: 表 3-2:数据格式 76 5 4 3 2 1 0 符 号尾 数 3.3.2 指令格式指令格式 模型机设计四大类指令共十条,其中包括算术指令逻辑指令,I/O 指令,存 算指令,取算指令,转移指令。 (1) 算术指令 设计 7 条算术指令并用单字节表示,寻址方式采用寄存器寻址,其格式如表 3-3 所示: 表 3-3:算数指令格式 7 6 5 43 21 0 OP-CODERSD

20、S 其中,OP-CODE 为操作码,RS 为源寄存器,DS 目的寄存器,其规定如下所示: RS 或 RD选定的寄存器 00 01 10 R0 R1 R2 (2) 访存指令及转移指令 设计 2 条访问指令:即存算 STA,取算 LDA;2 条转移指令:即无条件转移指 令 JMP,有进位跳转指令 BZC,指令格式如表 3-4 所示: 表 3-4:访问指令及转移指令格式 7 6 5 4 3 2 1 0 0 0 MOP-CODERD D 其中,OP-CODE 为操作码,RD 为源寄存器的地址(LAD,STA 指令用), D 为位移量,M 为寻址模式,其定义如下所示: 寻址模式 M有效地址说 明 00

21、01 10 11 E=D E=(D) E=(RI)+D E=(RD)+D 直接寻址 间接寻址 RI 变址寻址 相对选址 本模型机规定变址 RI 为寄存器 R2。 (3) I/O 指令 输入 IN 指令和输出指令 OUT 指令采用单字节指令,其格式如表 3-5 所示: 表 3-5:I/O 指令格式 7 6 5 43 2 1 0 OP-CODEaddrRD 其中,addr=01 时,选中输入数据开关 KD0KD7 作为输入设备,addr=10 选中 2 位数码管作为输出设备。 3.3.3 指令系统指令系统 本模型机共有 13 条基本指令,其中算术指令 7 条,访存指令和程序控制指令 4 条,输入输

22、出指令 2 条。表 3-6 列出了各条指令的格式,汇编符合,指令功能。 表 3-6 指令格式 汇编符号指令格式功能 CLR rd MOV rs rd ADD rs rd SUB rs rd 0111 00 rd 0110 rs rd 1000 rs rd 1001 rs rd 0rd rsrd rs+rdrd rd-rsrd XOR rs rd AND rs rd OR rs rd 1010rs rd 1o11 rs rd 1100 rs rd rs 异或 rdrd rsrdrd rsrdrd LDA M D rd STA M D rd JMP M D JMP M D 00 M 00 rd 0

23、0 M 01 rd 00 M 10 rd 00 M 11 rd (E)rd rd(E) EPC 当 cy=1 时 EPC IN addr rd OUT addr rd 0100 01 rd 0101 10 rd addrrd rdaddr 3.4 微程序控制器的逻辑结构及功能微程序控制器的逻辑结构及功能 微程序控制器的结构与微指令的格式密切相关。 微程序控制器的结构框图如图 3-5 所示。它由控制存储器、微地址寄存器、 微命令寄存器和地址转移逻辑几部分组成。微地址寄存器和微命令寄存器两者的 总长度即为一条微指令的长度,二者合在一起称为微指令寄存器。 图 3-5:微程序控制器的结构框图 1控制存

24、储器 ROM 中存放微程序,也就是全部的微指令。ROM 的容量取决于微指令的总数。 假如控制器需要 128 条微指令,则微地址寄存器长度为 7 位。ROM 的字长取决于 微指令长度。如果微指令为 32 位,则 ROM 的字长就是 32 位。实际应用中 ROM 可 采用 EPROM 或 E2PROM、EAROM,用户写入和修改微程序比较方便。 2微命令寄存器 微命令寄存器暂存由控制存储器中读出的当前微指令中控制字段与测试判别 字段信息,可由 8D 寄存器组成。 3微地址寄存器 微地址寄存器暂存由控制存储器读出的当前微指令的下址字段信息。它可由 带 RD、SD强置端的 D 触发器组成。其中时钟端和

25、 D 端配合用做 ROM 的读出打入, 用 SD进行下址修改。 4地址转移逻辑 微指令由 ROM 读出后直接给出下一条微指令的地址,这个地址就放在微地址 寄存器中。当微程序出现分支时通过地址转移逻辑去修改微地址寄存器内容,并 按修改好的微地址读出下条微指令。地址转移逻辑是一个组合逻辑电路,其输入 是当前微指令的判别测试字段 Pi、执行部件反馈的“状态条件”及时间因素 T4。 5控制时序信号 上图中标明了一个基本机器周期中的控制时序信号。例如用上一周期的 T4时 间按微地址寄存器内容从 ROM 中读一条微指令,经过一段时间后被读出,用当前 周期的 T1时间打入到微指令寄存器。T2、T3时间用来控

26、制执行部件进行操作。T4 时间修改微地址寄存器内容并读出下一条微指令。 微控制器寄存器使用的是两片 74LS273 和一片 74LS175 构成它们从微命令存 储器中读出并保存,为后续模块提供信息。它是根据节拍信号进行读的。 地址转移部分是由一个 74LS245 作为 6 的带强制端的触发器构成寄存器 和构成在强制端没有输入时使用的是从微存储器读出下一条地址。如果强制端有 输入就是强制端给定的地址。强制端给地址主要是在分支的时候给出。 还有三个 74LS138 够成地址译码部分。分别对应 A,B,C 字段。 微控制器的物理设计 微控制器的设计中根据其要求,使用的微控制的微控存使用的是 3 片

27、2816 构成。其中每一片使用的是 256 个字节并没有全使用。这主要考虑到是整个 模型机都使用的都是 8 位的。三片 2816 实现的位扩张,构成 24 长度微指令。因 此根据起设计的要求物理设计的逻辑图如图 3-6 所示: 图 3-6 物理设计图 3.5 微程序的设计与实现微程序的设计与实现 3.5.1 指令格式 微指令长共 24 位,其控制位顺序如表 3-7 所示: 表 3-7:微指令的格式 微程序 242322212019181716151413 控制信号 3210MCNWEB1B0 A 微程序 121110987654321 控制信号 B CuA5uA4uA3uA2uA1uA0 A

28、字段 B 字段 C 字段 对表 3-7 解释: S3 S2 S1 S0 M 微运算器 74LS181 芯片的控制信号,详见表 3-7。 微 WR 信号对 RAM 和 OUT 进行写操作,高电平为写有效。 B1,B0: 为对外部设备(RAM, OUTPUT, INPUT)地址进行译码,B0B1=00 时, INPUT 选中; B0B1 =01 时,RAM(CE)选中;B0B1=10 的, OUTPUT 选中; B0B1=11 时,外部设备不选中。 A 字段: LDRi:寄存器输入选中,具体选择同指令寄存器(IR)的最低 2 位 (I1,I0)配合,当 I1,I0=00 时为输入到 R0 寄存器;

29、I1,I0=01 时为 R1;I1,I0=10 时为 R2。 LDDR1:暂存器 DR1 选中。 LDDR2:暂存器 DR2 选中。 LDIR:指令寄存器 IR 选中。 LOAD:总线数据直接装载到 PC 计数器。 LDAR:地址寄存器 AR 选。 B 字段 : RS-B:为源寄存器输出选中。具体选择同指令寄存器(IR)的 3,4 位 (I3,I2)配合,当 I3,I2=00 时为输入到 R0 寄存器;I3,I2=01 时为 R1;I3,I2=10 时为 R2。 RD-B:为目的寄存器输出选中。具体选择同指令寄存器(IR)的最低 2 位 (I1,I0)配合,当 I1,I0=00 时为输入到 R

30、0 寄存器;I1,I0=01 时为 R1;I1,I0=10 时为 R2。 RI-B:为变址寄存器选中。本机定固定为 R2 。 299-B:移位寄存器输出选中。 ALU-B:逻辑运算单元结果输出。 PC-B :PC 计数器输出。 C 字段 : P(1):分支判断 1,和指令寄存器(IR)的高四位(IR7-IR4)作为测试条 件。可分 16 个分支。 P(2):分支判断 2,和指令寄存器(IR)的三四位(IR3,IR2)作为测试 条件,有 4 个分支。 P(3):分支判断 3,和 CY 或 ZI 作为测试条件,有两个分支。 P(4):分支判断 4,和开关 SWB,SBA 作为测试条件,有 4 个分

31、支。用于控 制台控制区 (读程序,写程序,和运行程序)。 AR:进行算术运算时是否影响进位和判零标志的控制位。 选中时进行带进 位运算。 LDPC:为 PC 计数信号选中。 UA5UA0:为下一步微地址。 指令的后续地址的产生方法是:在没有跳转的指令中后六位就是下一条微指令 的入口地址。在有跳转的指令根据跳转的条件微控制器根据相应的条件和地址将 下地址直接送到为控制器的地址强制端得到下一条指令的地址。 微程序是按顺序在在为控存中存放在系统初始化的是时候指令是从 00H 地 址开始的 00H 地址中存放的是一条跳转指令直接可以跳转到 01H 的中存放的就 是真正在控制程序功能的指令。机器就根据指

32、令一条的执行。在微控制器的控制 下让机器根据指令的来进行有条不紊的工作。 为指令的入口地址的形成是根据机器指令的高四位进行判断后得出的。每一 条微指令都对应相应的一个地址。地址的编制和每一微指令是一一对应。不存在 冲突。 3.5.2 微程序流程图 根据以上的指令设计,得出的微程序流程图如图 3-7 所示: 01 01 01 1A 19 31 30 1C 2D 2B 2A 29 24 20 2322 21 220 STALOD JMP BZC 0B 0A 09 08 07 O6 05 04O3 18 MOVOUT 2 17 1615 2 14 2 13 2 12 2 11 11(相对) 10(变

33、址)01(间接) 00(直接) 10 10 02 OR 01 PCAR PC+1 RDLED RSRDALU0 RD PCAR PC+1 PCAR PC+1 PCAR PC+1 PCAR PC+1 RAMBUS BUSIR P(1) RDBUS BUSDR2 RAMBUS BUSDR1 SWEBUS BUSRD RAMBUS BUSDR1 RAMBUS BUSAR RAMBUS BUSAR RSBUS BUSDR1 RDBUS BUSDR2 RSBUS BUSDR1 R2DR1PCDR2 RAMBUS BUSAR DR1+DR2 BUSAR BUSDR1 RSBUS BUSDR1 DR1+DR

34、2 BUSRD RDBUS BUSDR2 RDBUS BUSDR2 DR1*DRA BUSRD DR1异或 DR2BUS DR BUSIR DR1DR1 DR1+1DR1 DR1+DR2 BUSRD RBUS BUSRAM DR1+DR2 BUSAR P(2) RAMBUS BUSDR1 RAMBUS BUSPC RAMBUS BUSR P(3) DR1BUS BUSAR RSBUS BUSDR1 RDBUS BUSDR2 DR1+DRA BUSRD CLRIN 2 ANDXORSUBADD 26 25 24 28 27 2C 010101 01 01 01 01 01 01 RSBUS BU

35、SDR1 图 3-7 微程序流程图 在微程序流程图中总共涉及到 13 条机器指令它们分别是: IN OUT STA LDA JMP BZC CLR MOVE ADD SUB XOR AND OR 其中的指令的格式在上面已经介绍。 这些机器指令指令都是遵循从 取址 译码 执行 访存 写回 5 个步骤。在取 址总它们都有相同的的操作如图中标号 01H 的作用是从地址指针寄存器中得到 指令地址根据指令地址得出取出指令。这个取址过程是所用的指令的需要执行的 公操作。 图中在执行完公操作后又给“P(1)”的功能就是译码。这里的译码工作是使 用微控制器的外围电路中分支的方式。得到下一条微指令的地址。 指令

36、中的 STA、 LDA JMP BZC 是四条双字长的指令。他们有四种寻 址方式分别是直接、间接、变址、相对。指令在操作地址的时候都是先得到地址 然才能操作。在这里设计的过程使用的也是同样的思想。在指令译码的过程中对 这四条指令使用的方式不是直接判断应该执行什么指令,而是先判断应该使用怎 样的寻址方式先找到应该操作的主存地址再进行操作。 间接寻址的方式的 STA 指令如下: 第一步:(01H)从地址指针(PC)中得到地址,送到地址寄存器(AR)中,PC 自 动加一。 第二步:(02H)主存(RAM)中读出东西送到总线上,送到指令寄存器 (IR)中。 第三步:(10H)将(IR)中的内容进行译码

37、。判断下一条指令的地址。 第四步:(12H)由于是 STA 指令是一条双子长指令。所以在此再次执行第 一步即可。 第五步:(06H)将主存中的数据写到 DR1 中。 第六步:(07H) 将 R2 中的内容送到 DR2 中。 第七步:(08H)将 DR1 与 DR2 中的数据相加后送到 AR 中,是 STA 指令 操作地址。并进行判断执行的是哪种地址。 第八步:(20H)将相应的寄存器中的内容送到 RAM 中。 第九步:回到原操作。 3.5.3 微指令 微指令的格式表 3-8 所示: 表 3-8: 微指令格式 19011001000 1A010001000 1B010001000 1C01000

38、1000 03110000101 04110000000 05110000010 06110000000 07011001000 24 23 22 21 20 19 18 17 16 15 14 1312 11 109 8 76 5 4 3 2 1 微地址S3 S2 S1 S0 M CN WE B1 B0 ABC uA5 Ua0 01110110110 02100000001 10110110110 11110110110 12110110110140010000001600100100018010001000 08

39、110101010 09010000000 0A011110000 0B110101010 20000010000 21001000000 22101000110 23000000011 24000000000 25101000110 26011010000 27001101101 28010010000 29101101000 2A010101000 2B001101000 2C011010000 2D001101000 2E011010000 2F001101000 30011010000 31001101000 设计复杂模型机的监控软件,详细如下: $P00 44 IN 01,R0 $P

40、01 46 IN 01,R2 $P02 88 ADD R2,R0 $P03 61 MOV RO,R1 $P04 A4 XOR R1,R0 $P05 3C BZC 00,00 $P06 00 微程序: $ M01 82ED05 $ M02 50C004 $ M10 83ED05 $ M11 84ED05 $ M12 86ED05 $ M13 89ED05 $ M14 $ M15 $ M16 $ M17 019A39 $ M18 23B205 $ M19 28A205 $ M1A 2CA205 $ M1B 2EA205 $ M1C 30E005 $ M03 A0E004 $ M04 05E004

41、$ M05 A0A004 $ M06 07B204 $ M07 08EA05 $ M08 A0A005 $ M09 0ABC04 $ M0A 0BEA05 $ M0B A08455 $ M20 $ M21 $ M22 81D108 $ M23 E48005 $ M24 $ M25 81E104 $ M26 27B405 $ M27 419B95 $ M28 29A405 $ M29 2AAA09 $ M2A 2BAA01 $ M2B 019A95 $ M2C 2EB405 $ M2D 019A69 $ M2E 2FB405 $ M2F 019AB9 $ M30 31B405 $ M31 019CE9 四、系统调试四、系统调试 PC=00 PC=01-AR=00-RAM(44) RAM(44)-IR=44-微控器 INPUT(01)-R0=01 PC=02-AR=01-RAM(46) RAM(45)-IR=46-微控器 INPUT(02)-R0=02 PC=03-AR=02-RAM(B4) RAM(88)-IR=88-微控器 R0=01-DR1 R1=02-DR2 AUL=03-

温馨提示

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

评论

0/150

提交评论