《 计算机组成原理B》课程设计性实验报告_第1页
《 计算机组成原理B》课程设计性实验报告_第2页
《 计算机组成原理B》课程设计性实验报告_第3页
《 计算机组成原理B》课程设计性实验报告_第4页
《 计算机组成原理B》课程设计性实验报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

华北科技学院计算机学院设计性实验报告PAGE 第2页实验报告课程名称计算机组成原理实验学期20至20学年第一学期学生所在院部计算机学院年级20专业班级计科B学生姓名学号任课教师实验成绩计算机学院制

实验报告须知学生上交实验报告时,必须为打印稿(A4纸)。页面空间不够,可以顺延。学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。教师应该填写的内容包括:实验成绩、教师评价等。教师根据本课程的《实验指导》中实验内容的要求,评定学生的设计性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。设计性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。未尽事宜,请参考该课程的实验大纲和教学大纲。

《计算机组成原理B》课程设计性实验报告开课实验室:计算机组成原理实验室2014年11月26日实验题目指令扩展实验一、实验目的深入了解教学计算机微程序控制器的组成和设计技术,包括Am2910器件的功能与具体用法,教学计算机的总体组成和部件之间的连接方法,总之应该深入理解控制器部件的组成、设计、控制与使用等诸项知识。二、设备与环境TEC-XP+教学机,微机(装有WindowsXP、ISPLEVER、ispVMSystem等软件)。三、实验内容在现有的基本指令系统上,扩展2条指令:NXOR、ADRM。实验步骤1、扩展的2条指令的格式及功能(1)NXORDR,SR 实现的功能:将DR与SR异或之后再取非。 寻址方式:寄存器寻址方式。 操作码编码:IR==[(0,0,1,0,0,0,1,0)]; 微程序步数:一步(NXORDR,SR); 微程序入口地址:80。(2)ADRWDR,[SR] 实现的功能:将DR与地址为SR中的字单元相加,所得到的结果送入到DR。 寻址方式:寄存器寻址方式、寄存器间接寻址方式。 操作码编码:IR==[(1,1,1,0,0,0,1,1)]; 微程序步数:三步(SR->IB->AR DR->Q Q+DR->DR); 微程序入口地址:83。2、指令对应的微程序序号指令入口地址下址CI3-0SCC3-0MVRI2-0I8-6I5-3B口A口SSTSSHSCIDC2DC11

NXORDR,SR8030304,13,78,81,00,02ADRMDR,[SR]8300E04,41,00,80,03,000E

4,30,08,00,00,030301,63,08,00,00,0 NXOR指令各字段值意义: 入口地址为80H:指令的存储地址为80H。 指令下址为30H:有指定跳转地址30H。 CI3-0,SCC3-0为30H:表示转移,执行下址的地址。 MVR,I2-0为4,1:无内存或串口读写操作,数据来源有寄存器A和寄存器B。 I8-I6,I5-I3为3,7:表示将结果输出,该条命令执行的是异或非运算。 B口,A口为8,8:A口的地址为1000B,表示该条微指令用到外部指定的A寄存器, B口的地址为1000B,表示该条微指令用到外部指定的B寄存器。 SST,SSHSCI为1,0:表示状态寄存器保持不变,无低位进位或移位。 DC2,DC1为0,0:表示不操作,没有输出到内总线。ADRM指令各字段值意义: 第一步(SR->IB->AR): 微址为83H:指令的存储地址为83H。 指令下址为00H:没有指定跳转地址,顺序执行下一条微程序。 I3-0,SCC3-0为E0H:表示顺序执行。 MVR,I2-0为4,4:无内存或串口读写操作,数据来源只有一个寄存器A。 I8-I6,I5-I3为1,0:表示将结果输出,该条命令执行的是加法运算。 B口,A口为0,8:A口的地址为1000B,表示该条微指令用到外部指定的A寄存器, 无B寄存器。 SST,SSHSCI为0,0:表示状态寄存器保持不变,无低位进位或移位。 DC2,DC1为3,0:表示地址寄存器接收,没有输出到内总线。 第二步(DR->Q): 微址为84H:指令的存储地址为84H。 指令下址为00H:没有指定跳转地址,顺序执行下一条微程序。 I3-0,SCC3-0为E0H:表示顺序执行。 MVR,I2-0为4,3:无内存或串口读写操作,数据来源只有一个寄存器B。 I8-I6,I5-I3为0,0:表示将结果输出,该条命令执行的是加法运算。 B口,A口为8,0:B口的地址为1000B,表示该条微指令用到外部指定的B寄存器, 无A寄存器。 SST,SSHSCI为0,0:表示状态寄存器保持不变,无低位进位或移位。 DC2,DC1为0,0:表示不操作,没有输出到内总线。 第三步(Q+DR->DR): 微址为85H:指令的存储地址为85H。 指令下址为30H:有指定跳转地址30H。 I3-0,SCC3-0为30H:表示转移,执行下址的地址。 MVR,I2-0为1,6:表示读内存,数据来源有寄存器D和寄存器Q。 I8-I6,I5-I3为3,0:表示将结果输出,该条命令执行的是加法运算。 B口,A口为8,0:B口的地址为1000B,表示该条微指令用到外部指定的B寄存器, 无A寄存器。 SST,SSHSCI为0,0:表示状态寄存器保持不变,无低位进位或移位。 DC2,DC1为0,0:表示不操作,没有输出到内总线。3、ABEL语言源程序编辑以及JED文件生成 (1)指令OP定义:22,A1,E3,E9 NXOR=(IR==[0,0,1,0,0,0,1,0]); ADRM=(IR==[1,1,1,0,0,0,1,1]);(2)微指令地址定义:80,83,84,85 MA80=(Y==[1,0,0,0,0,0,0,0]); MA83=(Y==[1,0,0,0,0,0,1,1]); MA84=(Y==[1,0,0,0,0,1,0,0]); MA85=(Y==[1,0,0,0,0,1,0,1]); (3)入口地址定义:80(10000000),83(10000011)D0 =!C_M&(!_MAP&(ADRM#SUB#OR#CMP#MVRR#DEC#SHR#JR#PSHF#PUSH#POP#POPF#STRR#LDRR#LDPC#MVRD#CALA#RET#IRET#DI#ASR#RCR#STC#LDRA#LDRX#STRA#STRX#SBB#JRS#JRNS)#NXTADDR0&!_PL)&!Bit8;D1 =!C_M&(!_MAP&(ADRM#AND#OR#TEST#MVRR#SHL#SHR#IN_#OUT#POP#POPF#LDRR#LDPC#JMPA#CALA#RET#IRET#NOT#ASR#CLC#STC#JMPR#LDRA#STRA)#NXTADDR1&!_PL)&!Bit8;...D(4)下址定义:MA80:30,MA83:00,MA84:00,MA85:30,7 =!C_M&(!_MAP&(NXOR#ADRM#SWRM)#NXTADDR7&!_PL)&!Bit8;NXTADDR5 :=!C_M&(MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0B#MA0C#MA0D#MA0E#MA0F#MA10#MA11#MA13#MA14#MA16#MA18#MA1A#MA1C#MA1E#MA22#MA24#MA30#MA3F#MA50#MA51#MA52#MA53#MA54#MA55#MA56#MA57#MA58#MA59#MA5A#MA63#MA66#MA68#MA69#MA6A#MA80#MA85)&!Bit8;NXTADDR4 :=!C_M&(MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0B#MA0C#MA0D#MA0E#MA0F#MA10#MA11#MA12#MA13#MA14#MA15#MA16#MA17#MA18#MA1A#MA1C#MA1D#MA22#MA24#MA30#MA3F#MA50#MA51#MA52#MA53#MA54#MA55#MA56#MA57#MA58#MA59#MA5A#MA5C#MA5E#MA60#MA63#MA66#MA69#MA6A#MA80#MA85)&!Bit8;(5)差别测试字段定义:MA80:30,MA81:E0,MA82:30,MA83:E0,MA84:E0,MA85:30,MA8A:E0,MA8B:E0,MA8C:E0,MA8D:30CI3 :=!C_M&(MA00#MA01#MA02#MA19#MA1B#MA89#MA1F#MA20#MA21#MA23#MA3A#MA3B#MA3C #MA3D#MA3E#MA5B#MA5D#MA5F#MA61#MA62#MA64#MA65#MA67#MA89#MA83#MA84)&NRST&!Bit8;CI2 :=!C_M&(MA00#MA01#MA02#MA19#MA1B#MA89#MA1F#MA20#MA21#MA23#MA3A #MA3B#MA3C#MA3D#MA3E#MA5B#MA5D#MA5F#MA61#MA62#MA64 #MA65#MA67#MA83#MA84)&NRST&!Bit8;...CI0:=!C_M&(MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0B#MA0C#MA0D#MA0E #MA0F#MA10#MA11#MA12#MA13#MA14#MA15#MA16#MA17#MA18#MA1A#MA1C#MA1D #MA1E#MA22#MA24#MA30#MA31#MA3F#MA50#MA51#MA52#MA53#MA54#MA55#MA56 #MA57#MA58#MA59#MA5A#MA5C#MA5E#MA60#MA63#MA66#MA68#MA69 #MA6A#MA80#MA85)&NRST&!Bit8;MVR定义:MA80:4,MA83:4,MA84:4,MA85:1...#MA1E#MA1F#MA21#MA23#MA30#MA31#MA3A#MA3B#MA3D#MA3F#MA50#MA51#MA52#MA53#MA54#MA55#MA56#MA57#MA58#MA59#MA5A#MA5B#MA5D#MA5F#MA61#MA64#MA66#MA67#MA69#MA6A#MA80#MA83#MA84);(7)I2-0定义:MA80:1,MA83:4,MA84:3,MA85:6I200:=(MA0B#MA11#MA12#MA14#MA1A#MA1B#MA89#MA1C#MA20#MA24#MA30#MA3C#MA3F# MA5A#MA5C#MA5E#MA60#MA62#MA65#MA66#MA6A#MA83#MA85);I100:=(MA01#MA0C#MA0D#MA0E#MA0F#MA12#MA13#MA14#MA15#MA17#MA19#MA1C#MA1D #MA1E#MA1F#MA20#MA21#MA22#MA23#MA24#MA30#MA31#MA3B#MA3D#MA3E #MA3F#MA52#MA53#MA54#MA55#MA5B#MA5C#MA5D#MA5F#MA60#MA61#MA63 #MA64#MA67#MA84#MA85);!I000:=!(MA00#MA01#MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0C#MA0D#MA0E#MA0F #MA11#MA12#MA13#MA14#MA15#MA17#MA19#MA1C#MA1D#MA1E#MA1F#MA20 #MA21#MA23#MA24#MA30#MA31#MA3B#MA3D#MA3F#MA50#MA51#MA52#MA53 #MA54#MA55#MA5B#MA5C#MA5D#MA5E#MA5F#MA60#MA61#MA62#MA63#MA64 #MA67#MA6A#MA80#MA84);B口A口定义:MA80:8,8MA83:0,8;MA84:8,0;MA85:8,0;B30=(MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0B#MA0C#MA0D#MA0E #MA0F#MA19#MA1C#MA50#MA51#MA52#MA53#MA54#MA55#MA63#MA80#MA84#M A85);A30=(MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0B#MA1A#MA1B#MA89#MA50#MA51 #MA5A#MA5E#MA62#MA66#MA80#MA83);SSTSSHSCI定义:MA80:1,0;MA83:0,0;MA84:0,0;MA85:0,0;...SST000:=(MA04#MA05#MA06#MA07#MA08#MA09#MA0A#MA0C#MA0D#MA0F#MA50#MA51 #MA52#MA53#MA55#MA56#MA80);...(10)DC2DC1定义:MA80:0,0;MA83:3,0;MA84:0,0;MA85:0,0;DC2_100:=(MA00#MA01#MA12#MA15#MA17#MA19#MA1B#MA89#MA1D#MA1E#MA1F#MA21#MA23 #MA31#MA3A#MA3B#MA3D#MA58#MA59#MA5B#MA5C#MA5D#MA5E#MA5F#MA60#MA61 #MA62#MA64#MA67#MA83);DC2_000:=(MA00#MA01#MA02#MA12#MA15#MA17#MA19#MA1B#MA89#MA1D#MA1E#MA1F#MA21 #MA23#MA31#MA3A#MA3B#MA3C#MA3D#MA59#MA5B#MA5C#MA5D#MA5E#MA5F#MA60#MA61#MA62#MA64#MA67#MA83); 4、生成JED文件的整个操作过程启动LatticeSemiconductor公司IspVMSystem软件,弹出主界面:(1)双击lc4256.syn,启动ispLEVER (2)双击.abl文件 (3)双击CompileLogic进行编译(4)双击JEDECFile,生成.jed文件(3)双击软件找到的设备LC4256v,通过Browse按钮选择已经编译好的JED文件,单击OK.重新回到主界面,点击GO命令进行编程,编程成功后关闭编程窗口。五、编程验证及结果分析1.NXOR指令运行结果:NXOR指令结果分析:将R0寄存器赋值为0100,R1寄存器赋值为0001。然后,将编码的指令NXOR用机器码表示即2201(表示执行NXORR0,R1指令)。输入RET语句表程序结束。通过G2000执行刚才所编写的程序,得到结果为R0=FEFE,结果正确。2.ADRM指令执行结果: ADRM指令结果分析:将R1赋值为1000,R2赋值为2250。然后,将编码的指令ADRM用机器码表示即E312(表示执行ADRMR1,[R2]指令)。在2005输入RET语句表程序结束。利用E命令修改2250单元值为0010再通过G2000开始执行程序,结果正确(R1=1000+0010)。

温馨提示

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

评论

0/150

提交评论