版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机组成原理课程设计报告组员:1.汪学航(21209010402)2.高申琪(21209010405)3.刘陈臣(21209010403)任务分配:汪学航:分配微地址,控制台操作编码,实验电路连接高申琪:IN指令,ADD指令,OR指令,JMP指令,刘陈臣:新指令(NOP),总体调试运行,解决关键技术,相关文档收集,书写,整理。微程序控制器的设计一、设计思路按照要求设计指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。从而可以想到如下指令:(1)24位控制位分别介绍如下:XRD:外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。EMWR:程序存储器EM写信号。EMRD:程序存储器EM读信号。PCOE:将程序计数器PC的值送到地址总线ABUS上。EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。ELP:PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。MAREN:将数据总线DBUS上数据打入地址寄存器MAR。微指令由ROM读出后直接给出下一条微指令的地址,这个地址就放在微地址寄存器中。当微程序出现分支时通过地址转移逻辑去修改微地址寄存器内容,并按修改好的微地址读出下条微指令。地址转移逻辑是一个组合逻辑电路,其输入是当前微指令的判别测试字段Pi、执行部件反馈的“状态条件”及时间因素T4。●控制时序信号上图中标明了一个基本机器周期中的控制时序信号。例如用上一周期的T4时间按微地址寄存器内容从ROM中读一条微指令,经过一段时间后被读出,用当前周期的T1时间打入到微指令寄存器。T2、T3时间用来控制执行部件进行操作。T4时间修改微地址寄存器内容并读出下一条微指令。二、设计步骤:(一)、拟订指令系统指令系统是设计计算机的依据,拟订指令系统将涉及基本字长、指令格式、指令种类、寻址方式等内容。基本字长:程序设计平台中配置的存储器容量为256*8,可知道基本字长定为8位。指令格式:指令格式可有单字长和双字长指令两种,在双字长格式中,第二字节一般定义为操作数或操作数地址。指令格式为:操作码OP源操作数目的操作数指令类型:模型机有单操作数指令、双操作数指令和无操作数指令。操作码OP共四位,最多可定义16条指令。数据的传送单位为8位数据的传送范围R—>RR—>RAMRAM—>R寻址方式:由于指令较短,操作数字段仅两位,为了简化硬件设计,将操作数字段和目的操作数字段的寻址定义为不同的含义。源操作数字段寻址方式目的操作数寻址方式00R000R101(R0)01(R1)10I10I11D11DRi表示操作数就在寄存器中(Ri)表示操作数地址在寄存器中I指令的第二个字节为操作数或称立即寻址(D)指令的第二个字节为操作数的地址源操作数使用R0寻址目的操作数R1寻址(二)、确定总体结构根据要求设计数据通路框图:图2-1数据通路结构框图2.1流程图PC->ARPC->AR,PC+1RAM->BUS,BUS->LRP(1)RW->R0(DR1)+(DR2)->R0R0->DR1RAM->BUS,BUS->DRERAM->BUS,BUS->ARPC->AR,PC+1RAM->BUS,BUS->LRRAM->BUS,BUS->ARPC->AR,PC+1DR1->LEDRAM->BUS,BUS->ARRAM->BUS,BUS->DR1PC->AR,PC+1RAM->BUS,BUS->PCPC->AR,PC+1INADDSTAOUTJMP图2-2微程序流程图当拟定“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有微指令都使用的公用微指令,因此P(1)的测试结果会出现多路分支。我们使用指令寄存器的前4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。控制台命令的微程序流程,01为取指令微指令的地址:图2-3控制台流程图控制台操作作为P(4)测试,它以控制开关SWB,SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其他地方就可以一条微指令占用控存一个微地址单元随意填写。2.2微代码表当全部微程序设计完毕后,将每条微指令代码化,把流程图按微指令格式转化成“二进制微代码表”,如下:微地址S3S2S1S0MCNWEA9A8ABCUA5…UA00000000001100000010001000001000000011110110110000010020000000011000000010010000300000000100000000100010004000000001011000000000101050000000110101010000001100610010101100110100000000107000000001110000000001101100000000000010000000000011100000001111011011000001112000000011110110110000111130000000111101101100011101400000001111011011001011015000000101000001000000001160000000011100000000011111700000000101000000001010120000000011110110110010010210000000111101101100101002200000000101000000001011123000000011000000000000002400000000001000000001100025000001110000101000000001260000000011010001100000012700000111000010100001000030000001101000101000010001表2-5二进制微代码表2.3确定连线图根据各部件的功能,确定好电路各个芯片的连接,如下:图2-4接线图各部件功能:指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当执行一行指令时。先把它从内存取到缓冲寄存器中,然后在传至指令寄存器。指令划分为操作码和地址码字段,由二进制数构成,执行任何给定的指令,必须对操作码进行测试[P(1)],通过节拍脉冲T4的控制以便识别所要求的操作。指令译码器(ID):根据指令中的操作码译码强制微控器单元的微地址,使下一条微指令指向相应的微程序首地址。输入设备(INPUTDEVTICE):是一种二进制代码开关,实现数据输入。输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。输出设备(OUTPUTDEVICE):是一种数码块,完成数据输出。输出时,匠输出数据送到数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数据块显示。(三)设置情况1、寄存器的设置:R0,R1为通用寄存器,8位。IR为指令寄存器,8位。PC程序寄存器,8位。MAR为地址寄存器,8位。2、加法器的设置:采用8位带串行进位并行加法器。3、选择器的设置:连入A选择器的数据来源是RAM的读出数据和R0寄存器的数据。连入B选择器的数据来源是PC的数据和R1的数据。4、数据通路:数据通路的设计,在总体结构中是最重要的一个问题,模型机的数据通路是以总线为基础,以CPU为核心的。信息的传送路径:取指令MACPIRRAM—>选择器A—>Σ—>BUS—>IR送指令地址PBCPMARPC—>选择器B—>Σ—>BUS—>MAR指令计数器+1PBC0CPPCPC—>选择器B—>Σ—>BUS—>PCR0—>R1RACRR1R0—>选择器A—>Σ—>BUS—>R1R1—>RAMRBWRR1—>选择器B—>Σ—>BUS—>RAM(四)逻辑设计:总体结构设计之后,便开始总体结构中各部件的逻辑设计和部件之间的连接。1、加法器的逻辑设计:如附图2所示,模型机中的加法器是由八个一位全加器构成,全加器之间采用简单的串行进位。全加器逻辑原理如附图3所示:附图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清零。部件之间的连接:由系统结构可看出,部位之间的连接是采用以CPU为中心的总线连接方式。加法器的输出通过总线BUS连接到所有寄存器和存储器的输入端,除指令寄存器IR和地址寄存器MAR的输出端外,其他部件的输出端分别送入选择器A和选择器B。连线图如附图1所示。(五)、确定控制方式控制命令是确定信息的流向,不同的数据通路需要不同的控制指令。即组合逻辑方式和微程序方式,模型机采用微程序方式。微程序的执行方式采用增量、垂直方式。1、微程序控制器的结构:微程序控制器的部件由设计平台提供。2、微程序控制器的时序:微程序控制器的时序如图所示:PP’P脉冲的低电平用做控制存储器读命令µRDP脉冲的上升边沿将读出的微指令µIR负脉冲P的上升边沿将形成的后继地址送微程序计数器µPC,同时将运算结果(总线的数据)送指定的寄存器。3、微指令格式:微指令格式由三部分组成,既微指令字段定义,微命令形成逻辑和后继微地址产生逻辑。后继微地址产生逻辑:为简单起见只选三种后继微地址生成方式即增量方式、无条件转移方式、按操作码转移方式。当EN=1时,微程序计数执行加1操作当EN=0且JP=1时,无条件转移当EN=0且QJP=1时,按操作码转移4、微程序编写:(1)程序MOV105#,R0MOV201#,R1ADDR0,R1MOV3R1,(R0)(2)操作码二进制代码MOV1:0001MOV2:0010ADD:0011MOV3:0100(3)微程序入口(16进制代码)取指令入口:00HMOV1入口:10HMOV2入口:20HADD入口:30HMOV3入口:40H(4)指令执行流程图:指令流程:00RAM IRPC+1 PC10203040PCMARPCMARR0+R1R1R0MARPC+1PCPC+1PCPCMARR1RAMRAMR0RAMR1JPPCMARPCMARPCMARJPJPJP(5)编制微程序根据指令流程跟微指令格式开始编制微程序。二-四译码器逻辑原理如附图3所示。三-八译码器逻辑原理如附图8所示。全部微程序如表1所示。(六)分调将模式开关至于分调1、伟福系统平台上的所有开关和发光二极管均随意编制用做数据输入和状态显示典型部件如下:选择器A带复位的寄存器MAR不带复位的寄存器R0程序计数器PC在部件设计无错、连线无错、1032E的管脚定义无错时可生成下载文件下载到1032E中。2、单片机系统微程序经过检查无误后,将模式开关至分调后通过键盘写入响应的单元中。(七)统调将模式开关置于统调,此时平台上的开关及发光二极管的设置情况如下:开关K15--K0无效,不可编程使用L15--L0用于显示IR15--IR0的状态,不能作他用LED15--LED8用于显示从存储器读出的内容和数据总线BUS的内容不能再作他用LED7--LED0可编程到任意观测点,以显示系统运行的状态(1) 按复位健RET使MAR清洗、指令计数器清洗,保证从存储器0号单元取指令。使微程序计数器PC清洗,保证从而2#ROM,1#ROM的0#单元取指令微程序的第一条微指令。(2) 执行微程序按复位健后,PC、MAR为00号单元的内容是一条指令,指令代码读出后,在MA的作用下,进入加法器至总线。此时,总线上的内容点亮LED15-8,查看是否正确。注意的是:在没有按下次脉冲键前,数据通路的内容一直不变。按一次脉冲键又产生一负脉冲。该负脉冲反相后的上升沿产生CPIR,将上条微指令读出的指令代码送IR,同时上升沿还将PC+1。该负脉冲的低电平用以读出PC指示的第二条微指令。这样一一取出微指令并执行微指令就会读出并执行存放在MAR中的程序。三、测试流程与结果3.1连接线路按照图用排线连接好电路3.2写程序方法一:手动写入先将机器指令对应的微代码正确的写入2816中。使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。A.使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。B.拨动总清开关CLR(0→1),微地址寄存器清零,程序计数器清零。然后使控制台SWB、SWA开关置为“01”,按动一次启动开关START,微地址显示指示灯显示“010001”,再按动一次START,微地址灯显示“010100”C.写完程序后须进行校验。拨动总清开关CLR(0→1)后,微地址清零。PC程序计数器清零,然后使控制台开关SWB、SWA为“00”,按动启动START,微地址灯将显示“010000”,再按START,微地址灯显示为“010010”,第三次按START,微地址灯显示为“010111”,再按START后,此时输出单元的数码管显示为该首地址中的内容。不断方法二:联机读/写程序按照规定格式,将机器指令及微指令二进制表编辑成十六进制的如下格式文件。微指令中的微代码为24位微代码按从左到右分成3个8位,将此3个8位二进制代码化为相应的十六进制数即可。并将该格式文件用联机软件的传输文件功能传入实验系统。机器指令格式说明:$PXXYYXX十六进制地址YY机器指令代码程序:$P4000$P4110$P420A$P4320$P440B$P4530$P460B$P4740$P4800$P4A01微指令格式说明:$MXXYYYYYYXX十六进制地址YYYYYY微指令代码微程序:$M00018110$M0101ED82$M0200C048$M0300E004$M0400B005$M0501A206$M06959A01$M0700E00D$M08001001$M0901ED83$M0A01ED87$M0B01ED8E$M0C01Ed96$M0D028201$M0E00E00F$M0F00A$M1001ED92$M1101Ed94$M1200A017$M13018001$M14002018$M15070A01$M1600D181$M17070A10$M18068A113.3运行程序单步运行程序:A.使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。B.拨动总清开关CLR(0->1),微地址清零,程序计数器清零。程序首址为00H。C.单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微指令流程图,观察微地址显示灯是否和流程一致。D.单步运行结束后,检查存数单元(0BH)中的结果是否和理论值一致。连续运行程序:使“STATEUNIT”中的STEP开关置为“ECEX”状态。STOP开关置为“RUN”状态拨动CLR开关,清微地址及程序计数器,然后拨动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。停机后,检查存数单元(0BH)结果是否正确。3.4测试验证此次测试验证的内容为FEH验证程序的内存映象(装入起始地址00H)如下:地址(二进制)内容(二进制)助记符说明0000000000000000IN将输入数据送R0寄存器0000000100010000ADD[OAH]0000001000001010RO+[0AH]—>R00000001100100000STA[0BH]0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年齐齐哈尔克东县第二良种繁殖场公开招聘工作人员1人笔试备考试题及答案解析
- 【上半年联考】2026年三亚市人力资源和社会保障局招聘2人考试重点题库及答案解析
- 2026吉林大学化学学院李豹教授团队博士后招聘1人笔试备考题库及答案解析
- 2026年中国科学技术大学人工智能与数据科学学院劳务派遣岗位招聘笔试备考题库及答案解析
- 2026浙江温州市苍南县公安局面向社会公开招聘辅警58人笔试备考题库及答案解析
- 2026年甘肃省兰州新区民政司法和社会保障局(退役军人事务局)兰州新区城乡发展局招聘城镇公益性岗位笔试备考题库及答案解析
- 2026湖南衡阳市石鼓区城市建设投资有限公司招聘6人笔试备考题库及答案解析
- 2026浙江宁波通商控股集团有限公司校园招聘7人笔试备考试题及答案解析
- 2026江苏南通市第六人民医院招聘高层次及紧缺岗位人才10人(长期)笔试备考题库及答案解析
- 2026年甘肃天水武山县招聘城镇公益性岗位工作人员30人笔试备考题库及答案解析
- 2026湖南衡阳日报社招聘事业单位人员16人备考题库带答案详解
- 糖尿病足诊疗指南
- 20以内的加减法练习题库
- 小儿发热护理讲课
- 皮肤瘙痒症状病因诊断筛查
- 2025年山西省教师职称考试(理论知识)复习题及答案(新课标)-山西教师
- 2025年江西省中考数学试卷真题(含标准答案及解析)
- 2025年高考英语复习知识清单(全国)专题45 应用文写作11组34个满分句式68个真题例句 (讲案)解析版
- 高中音乐鉴赏第六单元《中国影视音乐》 人音版
- 2025年云南昆明桥隧管理有限公司招聘笔试参考题库含答案解析
- 《华住酒店集团》课件
评论
0/150
提交评论