组成原理Am2910器件的功能与具体用法.docx
- 文档编号:23114036
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:13
- 大小:573.63KB
组成原理Am2910器件的功能与具体用法.docx
《组成原理Am2910器件的功能与具体用法.docx》由会员分享,可在线阅读,更多相关《组成原理Am2910器件的功能与具体用法.docx(13页珍藏版)》请在冰豆网上搜索。
组成原理Am2910器件的功能与具体用法
实验报告
课程名称计算机组成原理B
实验学期2017至2018学年第一学期
学生所在院部
年级专业班级
学生姓名学号
任课教师
实验成绩
计算机学院制
《计算机组成原理B》课程设计性实验报告
开课实验室:
计算机组成原理实验室2017年11月22日
实验题目
指令扩展实验
一、实验目的
深入了解教学计算机微程序控制器的组成和设计技术,包括Am2910器件的功能与具体用法,教学计算机的总体组成和部件之间的连接方法,总之应该深入理解控制器部件的组成、设计、控制与使用等诸项知识。
二、设备与环境
TEC-XP+教学机,微机(装有WindowsXP、ISPLEVER、ispVMSystem等软件)。
三、实验内容
在现有的基本指令系统上,扩展2条指令:
1.ADTWDR
2.ADRMDR,[SR]。
4、实验步骤
1、扩展的2条指令的格式及功能
序号
格式
功能
寻址方式
编码
微程序步数
微程序
入口地址
1
ADTWDR
DR的值自增2
寄存器直接寻址
A1H
2
81
2
ADRMDR,[SR]
DR+[SR]
->DR
DR为寄存器直接寻址,[SR]为寄存器
接寻址
E3H
3
83
2、指令所对应的微程序
每条指令对应的微程序、以及每步(微指令)的功能及各字段值的意义
(1)AM2901运算器的结构图以及控制码表
表2-1Am2901的9位控制码
表2-2状态寄存器、最低进位输入、移位输入控制信号
(2)微程序控制器的组成框图以及说明
①PC:
存放下一条机器指令的地址(向指令存储器提供指令地址)。
②指令存储器:
(存放所有机器指令),经地址译码,选中相应存储单元,取出相应机器指令,送入指令寄存器IR。
③指令寄存器IR:
存放正在执行的机器指令。
机器指令包含两个字段:
操作码(OP)、地址码。
④由操作码(OP)映射得到微地址(译码过程),即机器指令所对应的微程序入口地址,存入微地址寄存器。
⑤控制存储器存放所有的微程序,经地址译码读出一条微指令。
6由控制存储器读出的一条微指令存入微指令寄存器。
SCC编码及功能
控制信号
(1)对运算器的控制
23位控制信号,同23位微型开关内容:
A3~A0,B3~B0,I8~I6,I5~I3,I2~I0SST2~0,SSHSCI2~0
寄存器分配:
R4:
SPR5:
PC
约定用法:
R0:
I/O指令约定使用,也是通用累加器
对内存和I/O接口的读写
/MIO(0:
有内存或串口读写,1:
无)
REQ(0:
读写内存,1:
读写串行口)
/WE(0:
写操作,1:
读操作)
MRW编码功能
(2)对内部总线和特定寄存器的控制
内部总线数据来源选择控制
专用寄存器接收控制
(3)控制器提供的控制信号(微指令格式 )
(3)教学机硬件系统结构框图
图2-5教学机计算机控制器的总体组成
(1)程序计数器PC可以在运算器内部完成加1运算功能,产生下一条相邻指令的地址;或者完成加一个相对转移的偏移量,产生相对转移指令的转移地址;或者直接接收一个16位的指令地址,用在程序调用或者跳转指令中。
(2)指令寄存器IR接收从内存储器读出并传送到内部总线IB的指令内容,其全部16位输
出送MACH芯片的输入引脚,其低8位内容还可以经一个有三态功能的开关门送到内部总线IB。
(3)微程序定序器Am2910芯片用在微程序控制器中,用于以多种方式向控制存储器提供下一条微指令的地址,控制微指令的执行次序,解决的是指令执行步骤的衔接问题。
(4)两种控制器的主要功能线路都集中到一片高集成度CPLD器件(MACH芯片)中实现,在完成扩展指令的教学实验中,可以不对MACH芯片之外的电路作任何变动,全部操作都集中到修改描述MACH芯片功能的ABEL或VHDL语言的源程序代码、执行编译和下载操作以及运行调试这样几步工作。
这是本教学计算机系统的一大显著特色,对降低学生的学习难度、简化修改和扩展控制器功能的操作、改善教学实验效果具有重要的作用。
从图2-5可以看到,MACH器件内部包含有微程序控制器中的控制存储器、微指令寄存器、映射指令操作码为微指令地址的MAPROM、产生微指令是否转移信号CC的SCCgal、实现微指令字中的下条微指令地址和MAPROM输出的下条微指令地址二者选其一的线路;包含有组合逻辑控制器的节拍发生器Timing和控制信号产生部件两部分线路;此外还实现了把两种控制器各自提供的32位控制信号进行二者选其一的功能。
3、ABEL语言源程序编辑以及JED文件生成
(1)添加指令操作码
ADTW=(IR==[1,0,1,0,0,0,0,1]);
ADRM=(IR==[1,1,1,0,0,0,1,1]);
(2)添加入口地址
添加ADTW指令的入口地址:
MA81=(Y==[1,0,0,0,0,0,0,1]);
MA82=(Y==[1,0,0,0,0,0,1,0]);
添加ADRM指令的入口地址:
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)入口地址定义
对ADTW指令做如下修改:
D0=!
C_M&(!
_MAP&(ADTW#......)#NXTADDR0&!
_PL)&!
Bit8;
D7=!
C_M&(!
_MAP&(ADTW#......)#NXTADDR7&!
_PL)&!
Bit8;
对ADRM指令做如下修改:
D0=!
C_M&(!
_MAP&(ADRM#......)#NXTADDR0&!
_PL)&!
Bit8;
D1=!
C_M&(!
_MAP&(ADRM#······)#NXTADDR1&!
_PL)&!
Bit8;
D7=!
C_M&(!
_MAP&(ADRM#......)#NXTADDR7&!
_PL)&!
Bit8;
(3)下址定义
对ADTW指令做如下修改:
NXTADDR5:
=!
C_M&(MA81#......)&!
Bit8;
NXTADDR4:
=!
C_M&(MA81#......)&!
Bit8;
对ADRM指令做如下修改:
NXTADDR5:
=!
C_M&(MA85#......)&!
Bit8;
NXTADDR4:
=!
C_M&(MA85#......)&!
Bit8;
(5)条件转移字段定义
对ADTW指令做如下修改:
CI3:
=!
C_M&(MA83#MA84#......)&NRST&!
Bit8;
CI2:
=!
C_M&(MA83#MA84#......)&NRST&!
Bit8;
CI0:
=!
C_M&(MA81#......)&NRST&!
Bit8;
对ADRM指令做如下修改:
CI3:
=!
C_M&(MA8A#MA8B#MA8C#......)&NRST&!
Bit8;
CI2:
=!
C_M&(MA8A#MA8B#MA8C#......)&NRST&!
Bit8;
CI0:
=!
C_M&(MA85#......)&NRST&!
Bit8;
(6)MRW定义
对ADTW指令做如下修改:
!
_MIO00:
=!
(MA81#MA82#......);
对ADRM指令做如下修改:
!
_MIO00:
=!
(MA83#MA84#......);
_WE00:
=(MA85#......);
(7)I2-I0,I8-I6,I5-I3定义
对ADTW指令做如下修改:
I100:
=(MA81#MA82#......);
!
I000:
=!
(MA81#MA82#......);
I700:
=(MA81#MA82......);
!
I600:
=!
(MA81#MA82#......);
对ADRM指令做如下修改:
I200:
=(MA83#MA85#......);
I100:
=(MA84#MA85#......);
!
I000:
=!
(MA83#......);
I700:
=(MA85#......);
!
I600:
=!
(MA83#MA85#......);
(8)B口、A口定义
对ADTW指令做如下修改:
B30=(MA81#MA82#......);
对ADRM指令做如下修改:
B30=(MA84#MA85#......);
A30=(MA83#......);
(9)SST/SSHSCI定义
对ADTW指令做如下修改:
SST000:
=(MA81#MA82......);
SCI100:
=(MA81#MA82......);
(10)DC2DC1定义
对ADRM指令做如下修改:
DC2_100:
=(MA83#......);
DC2_000:
=(MA83#......);
m256c.abl源程序修改过程(10步)以及生成JED文件的整个操作过程
(1)将下面的源文件目录复制到E盘。
C:
\XP+DATA\XP_MACH\2A70504组基微全
(2)双击lc4256.syn,启动ispLEVER
(3)双击.abl文件
(4)双击CompileLogic进行编译
(5)双击JEDECFile,生成.jed文件
4、MACH编程
将JED文件下载到MACH器件的过程
(1)接好教学机上的在线MACH编程电缆,将教学机电源打开;
(2)启动ispVMSystem软件,通过主界面的SCAN按钮找到在线编程器件;
(3)双击找到的编程器件,双击Browse按钮选择已经编译好的jed文件,选择OK按钮;
(4)重新回到主界面,点击GO命令进行编程。
5、编程验证及结果分析
1.验证ADTWDR
本条指令的验证时将0036送入R0,然后写入指令操作码A100,最后G2000运行程序,验证R0是否自增2,结果R0变为0038,指令验证成功。
2..验证ADRMDR,[SR]。
本条指令的验证时0001送入R1,0009送入R0,然后写入指令操作码E312,最后G2000运行程序,验证指令,指令执行正确。
6.实验体会
通过这个实验,结合对以前课程学习中指令的理解,更彻底的了解了指令的执行原理。
在这次指令扩展实验中,最重要的就是对代码的修改部分,这就要建立在对每一条微指令的属性的了解,对应相应的扩展指令具体情况进行修改,才能编译正确。
而且真切地知道了实验真得很需要耐心和细心。
实验出现的问题也比较多,在及时向老师请教之后,整个实验还是进行得比较顺利的。
教师评价
评定项目
A
B
C
D
评定项目
A
B
C
D
基本部件原理清楚
操作熟练
微指令设计合理
解析完整
微程序功能正确
文字流畅
验证程序运行正确
报告规范
其他:
评价教师签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组成 原理 Am2910 器件 功能 具体 用法