




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机组成与结构(面向信息科学与工程学院各本科专业)主编: 郝尚富河北北方学院信息科学与工程学院2010.11实验一基础汇编语言程序设计实验二脱机运算器实验实验三存储器部件教学实验实验四微程序控制器实验实验五I/O 口扩展实验实验六中断实验附录一:教学机系统结构图附录二TEC-XP 16系统各功能部件之间的连接关系和信息传送路径.附录三TEC-XP 16系统教学实验简明操作卡附录四指令汇总表附录五基本指令执行流程框图附录六扩展指令执行流程框图附录七微程序表实验一基础汇编语言程序设计1.1实验目的:1 .学习和了解TEC-XP教学实验系统监控命令的用法;2 .学习和了解TEC-XP教学实验系统的
2、指令系统;3 .学习简单的TEC-XP教学实验系统汇编程序设计;1.2 实验内容:1 .学习联机使用TEC-XP教学实验系统和仿真终端软件PCEC.2 .使用监控程序的R命令显示/修改寄存器内容、D命令显示存储器内容、E命令修改存储 器内容;3 .使用A命令写一小段汇编程序,U命令反汇编刚输入的程序, 用G命令连续运行该程序, 用T、P命令单步运行并观察程序单步执行情况;1.3 实验步骤1.3.1 完成TEC-XP教学计算机与 PC机的硬件连接:1 .将TEC-XP放在实验台上,打开实验箱的盖子,确定电源处于断开状态;2 .将黑色的电源线一端接 220V交流电源,另一端插在 TEC-XP实验箱
3、的电源插座里;3 .取出通讯线,将通讯线的 9芯插头接在TEC-XP实验箱上的串口 1上,另一端接到 PC 机的“ COM 1或“ COM2 (建议用COM2串口上;4 .将TEC-XP实验系统左下方的五个黑色的控制机器运行状态的开关置于正确的位置,在 找个实验中开关应置为 00110 (连续、内存读指令、组合逻辑(或微程序)、联机、 16位)。5 .拨动教学计算机右侧面的船形开关打开电源,船形开关和 5V电源指示灯亮。特别注意:连接电源线和通讯线前 TEC-XP实验系统的电源开关一定要处于断开状态,否则可能会对TEC-XP实验系统上的芯片和 PC机的串口造成损害。1.3.2 实现仿真终端软件
4、与教学计算机的联接。1 .打开PC机电源启动计算机;3. 系统默认选择2 .双击桌面上的PCEC1招标,出现如下图所示的界面:Expei*inent Conputer <IBMTC series CMS-DOS) AsynchrvnvusConnunicativnJan. L994DisvlavSend/Receive f600 hits/second耀TWFF10 >ALT/F10 ->By Computea ApcRS232 Serli 1加数喳然依旧"4 hitsChansre tli0set characters?(HI串口 1,用户可根据实际情况选择串口
5、1或是串口 2 (这里的串口指的是和 TEC-XP教学实验系统相连的 PC机的串口),按回 车后出现如图界面:5.此 时表明 TEC-XP 机器联 机通讯 正常。4.图中是系统设定的一些传输参数,建议用户不要改动,直接回车。按一下教学计算机 上的“ RESET按钮放开后再按一下“ START按钮,出现界面如图所示:Baud Rate*9608 blts/sflcond P*rity=Nona Stop Bit-1 bit Character Length4bitsChan90 thana aharActars?INrEC-2006 CHI nONlTOB Jerslon 2.02001.10C
6、omputer Archltectur Lal)_,T3inghua Uniuersitsf Coipy产ight Jason He1.3.3 实验注意事项:1 .连接电源线和通讯线前 TEC-XP实验系统的电源开关一定要处于断开状态,否则可能会对TEC-XP实验系统上的芯片和 PC机的串口造成损害;2 .五个黑色控制开关的功能示意图如下:单步手动置指令组合逻辑联机 8位OOOOO上面OOOOO卜囹连续从内存读指令微程序脱机16位3.几种常用的工作方式(开关拨到上方表示为1,拨到下方为0;)工作方式5个拨动开关连续运行程序、组合逻辑控制器、联机、 16位机00110连续运行程序、微程序控制器、
7、联机、 16位机00010单步、手动置指令、组合逻辑控制器、联机、 16位机11110单步、手动置指令、微程序控制器、联机、 16位机1101016位机、脱机运算器实验1XX001.3.4 监控命令的使用:1 .用R命令查看寄存器内容或修改寄存器的内容1)在命令行提示符状态下输入:R/;显示寄存器的内容注:寄存器的内容在运行程序或执行命令后会发生变化。2)在命令行提示符状态下输入:R R0/;修改寄存器R0的内容,被修改的寄存器与所赋值之间可以无空格,也可有一个或数个空格主机显示:寄存器原值:_在该提示符下车入新的值0036再用R命令显示寄存器内容,则R0的内容变为0036。2 .用D命令显示
8、存储器内容在命令行提示符状态下输入:D2000 /会显示从2000H地址开始的连续128个字的内容;连续使用不带参数的 D命令,起始地址会自动加128 (即80H)。3 .用E命令修改存储器内容在命令行提示符状态下输入:E2000 /屏幕显示:2000地址单元的原有内容:光标闪烁等待输入输入0000依次改变地址单元 20012005的内容为:1111 2222 3333 4444 5555注意:用E命令连续修改内存单元的值时,每修改完一个,按一下空格键,系统会自动给 出下一个内存单元的值,等待修改;按回车键则退出E命令。4 .用D命令显示这几个单元的内容D2000 /可以看到这六个地址单元的内
9、容变为0000 1111 2222 33334444 5555。5 .用A命令键入一段汇编源程序,主要是向累加器送入数据和进行运算,执行程序并观 察运行结果。1)在命令行提示符状态下输入:A 2000 /;表示该程序从 2000H (内存RAMK的起始地址)地址开始屏幕将显示:2000:输入如下形式的程序:2000: MVRD R0, AAAA ; MVR为R0之间有且只有一个空格,其他指令相同2002: MVRD R1, 55552004: ADD R0 , R12005: AND R0 , R12006: RET ;程序的最后一个语句,必须为RET指令2007:(直接敲回车键,结束 A命令
10、输入程序的操作过程)若输入有误,系统会给出提示并显示出错地址,用户只需在该地址重新输入正确的指令即 可。2)用U命令反汇编刚输入的程序在命令行提示符状态下输入:U 2000 /(在相应的地址处会得到输入的指令及其操作码)注:连续使用不带参数的 U命令时,将从上一次反汇编的最后一条语句之后接着继续反汇 编。3)用G命令运行前面键入的源程序G 2000/程序运行结束后,可以看到程序的运行结果,屏幕显示各寄存器的值,其中R0和R1的值均为5555H,说明程序运行正确。4)用P或T命令,单步执行这段程序,观察指令执行结果在命令行提示符状态下输入:T2000 /寄存器R0被赋值为AAAAHT/寄存器R1
11、被赋值为5555HT/做加法运算,和放在 R0, R0的值变为FFFFHT/做与运算,结果放在 R0, R0的值变为5555H用P命令执行过程同上。注:T总是执行单条指令,但执行 P命令时,则把每一个 CALL语句连同被调用的子程序 次执行完成。T、P命令每次执行后均显示所有通用寄存器及状态寄存器的内容,并反汇编出下 一条将要执行的指令。1.3.5 TEC-XP教学机指令系统TEC-XP教学机实现了 29条基本指令,用于编写教学机的监控程序和支持简单的汇编语言 程序设计。同时保留了 19条扩展指令,供学生在教学实验中完成对这些指令的设计与调试。按照指令的功能和它们的执行步骤,可以把该机的指令划
12、分为如下4组。A组:基本指令 ADD SUB AND OR XOR CMP TEST MVRR DEG INC、SHL SHR JR、 JRG JRNC JRZ、JRNZ;扩展指令 ADC SBB RCL RCR ASR NOT CLG STC EI、DI、JRS JRNS JMPRB组:基本指令 JMPA LDRR STRR PUSH POP PUSHF POPF MVRD IN、OUT RETC组:扩展指令 CALR LDRA STRA LDRX STRXD组:基本指令 CALA扩展指令IRET教学机的指令格式支持单字和双字指令,第一个指令字的高8位是指令操作码字段,低 8位和双字指令的第
13、二个指令字是操作数、地址字段,分别有 3种用法,如下图所示。操作码DRSRIO端口地址/ 相对偏移量(OFFSET立即数/直接内存地址/变址偏移量这8位指令操作码(记作“ IR15IR8”),含义如下:1. IR15、IR14用于区分指令组:0X表示A组,10表示B组,11表示C D组;C D组的 区分还要用IR11 , IR11=0为C组,IR11=1为D组。2. IR13用于区分基本指令和扩展指令:基本指令该位为0,扩展指令该位为1;3. IR12用于简化控制器实现,其值恒为0;4. IR11 IR8用于区分同一指令组中的不同指令。教学机的指令根据指令字长、操作数不同可划分为如下6种指令格
14、式:1 .单字、无操作数指令:格式:操作码0000 0000基本指令:PSHF ;状态标志(C、Z、V、S、P1、P0)入栈POPF;弹出栈顶数据送状态标志寄存器RET;子程序返回扩展指令:CLC;清进位标志位C=0STC;置进位标志位C=1EI;开中断,置中断允许位INTE=1DI;关中断,置中断允许位INTE=0IRET;中断返回2 .单字、单操作数指令:格式:操作码DR 00000000 SROFFSETI/O PORT基本指令:DECDR;DR- DR-1INC DR;DR- DR+1SHLDR;DR逻辑左移,最低位补0,最高位移入CSHRDR;DR逻辑右移,最高位补0,最低位移入CJ
15、R OFFSET JRCOFFSET JRNC OFFSETJRZ OFFSET JRNZ OFFSET无条件跳转至|J ADR ADR濠PC值+OFFSET;当C=1时,跳转至ij ADR;当C=0时,跳转至ij ADR;当Z=1时,跳转至ij ADR;当Z=0时,跳转至ij ADRADR原 PC值+OFFSETADR原 PC值+OFFSETADR原 PC值+OFFSETADR原 PC值+OFFSETINI/O PORT ; RA I/O PORT,从外设 I/O PORT 端 口读入数据至 U R0OUF/O PORTPUSH SR;I/O PORTRQ将R0中的数据写入外设I/O POR
16、TED;SR入栈POPDR;弹出栈顶数据送 DR扩展指令:RCLDRRCRDRASRDRNOTDRJMPR SRCALR SR;DR与C循环左移,C移入最低位,最高位移入 C;DR与C循环右移,C移入最高位,最低位移入 C;DR算术右移,最高位保持不变,最低位移入 C;DR求反,即 DR- /DR;无条件跳转到SR指向的地址;调用SR指向的子程序JRSOFFSET ;JRNS OFFSET ;当S=1时,跳转至ij ADR ADR濠PC值+OFFSET当S=0时,跳转至ij ADR ADR濠PC值+OFFSET3.单字、双操作数指令:操作码DRSR基本指令:ADDDR SR SUBDR SR
17、ANDDR SR CMFDR SRXORDR SR TEST DR SR OR DR SR MVRR DR SR LDRR DR SR STRR DR , SR;DR-DR+SR;DR- DR-SR;DR- DR and SR DR-SR;DR- DR xor SR DR and SR;DR- DR or SR;DR- SR;DR- SR;DRSR扩展指令:ADCDR SR;DR- DR+SR+CSBBDR SR ; DR- DR-SR-C4 .双字、单操作数指令:格式:操作码0000 0000ADR基本指令:JMPA ADR;无条件跳转到地址 ADRCALA ADR;调用首地址在ADR的子程
18、序5 .双字、双操作数指令:格式1:操作码DR 00000000 SRDATA基本指令:MVRD扩展指令:LDRASTRADR DATADR ADR ADR, SR;DR- DATA;DR- ADR;ADRSR格式2:操作码DRSRADR扩展指令:LDRX DR OFFSETSR ; DR- OFFSET+SRSTRX DR OFFSETSR ; OFFSET+SR-DR例1:设计一个小程序,用次数控制在终端屏幕上输出'0'到'9'十个数字符。<1>在命令行提示符状态下输入:A 2020 /屏幕将显示: 2020 :从地址2020H开始输入下列程序2
19、020:MVRD R2,00OA;送入输出字符个数2022:MVRD R0,0030; “0” 字符的 ASCII 码送寄存器 R02024:OUT 80;输出保存在R0低位字节的字符2025:DEC R2 ;输出字符个数减 12026:JRZ 202E;判10个字符输出完否,已完,则转到程序结束处2027:PUSH R0 ;未完,保存 R0的值到堆栈中2028:IN 81;查询接口状态,判字符串行输出完成否,2029:SHR R0202A:JRNC 2028 ;未完成,则循环等待202B:POP R0 ;已完成,准备输出下一字符并从堆栈恢复R0的值202C:INC R0;得到下一个要输出的字
20、符202D:JR 2024;转去输出字符202E:RET202F: /<2>用"G'命令运行程序在命令行提示符状态下输入:G 2020 /执行结果为:0123456789思考题:1 .若把IN 81, SHR R0, JRNC 2028 三个语句换成 4个MVRR R0 R0语句,该程序执行过程 会出现什么现象?试分析并实际执行一次。2 .若要求在终端屏幕上输出'A'到'Z'共26个英文字母,应如何修改程序?请验证之。例2:从键盘上连续打入多个属于0到9'的数字符并在屏幕上显示,遇到非数字字 符结束输入过程。<1>
21、;在命令行提示符状态下输入:A 2040 /屏幕将显示:2040:从地址2040H开始输入下列程序:(2040) MVRD R2,0030 ; 用于判数字符的下界值MVRD R3,0039 ;用于判数字符的上界值(2044) IN 81;判键盘上是否按了一个键 ,SHR R0 ;即串行口是否有了输入的字符SHR R0JRNC 2044 ;没有输入则循环测试IN 80 ; 输入字符到R0MVRD R1,00FFAND R0,R1 ; 清零R0的高位字节内容CMP R0,R2 ; 判输入字符A字符'0'否JRNC 2053 ;为否,则转到程序结束处CMP R3,R0 ; 判输入字符
22、w字符'9'否JRNC 2053 ;为否,则转到程序结束处OUT 80;输出刚输入的数字符JMPA 2044 ;转去程序前边2044处等待输入下一个字符(2053) RET< 2>在命令行提示符状态下输入:G 2040 /光标闪烁等待键盘输入,若输入0-9十个数字符,则在屏幕上回显;若输入非数字符,则屏幕不再显示该字符,出现命令提示符,等待新命令。思考题,本程序中为什么不必判别串行口输出完成否?设计打入A''Z'和'0''9'的程序,遇到其它字符结束输入过程。例3:计算1到10的累加和。< 1>在命
23、令行提示符状态下输入:A 2060 /屏幕将显示:2060:从地址2060H开始输入下列程序:(2060) MVRD R1,0000 ; 置累加和的初值为 0MVRD R2,00OA ; 最大的力口数MVRD R3,0000(2066) INC R3 ;得到下一个参加累加的数ADD R1,R3 ;累加计算CMP R3,R2 ; 判是否累加完JRNZ 2066 ; 未完,开始下一轮累加RET< 2>在命令行提示符状态下输入:G 2060 /运行过后,可以用R命令观察累加器的内容。R1的内容为累加和。结果为:R1=0037 R2=00OA R3=00OA例4:设计一个程序在显示器上循环
24、显示95个(包括空格字符)可打印字符。<1>在命令行提示符状态下输入:A 20A0/屏幕将显示:20A0:从地址20A0H开始输入下列程序:A 20A0;从内存的20A0单兀开始建立用户的A个程序20A0: MVRD R1,7E;向前器传送立即数20A2: MVRD R0,20;20A4: OUT 80;通过串行接口输出 R0低位字节内容到显示器屏幕20A5: PUSH R0;保存R0寄存器的内容到堆栈中20A6: IN 81;读串行接口的状态寄存器的内容20A7: SHR R0; R0寄存器的内容右移一位,最低位的值移入标志位C20A8: JRNC 20A6;条件转移指令,当标志
25、位C不是1时转到20A6地址20A9: POP R0;从堆栈中恢复 R0寄存器的原内容20AA: CMP R0,R1;比较两个寄存器的内容是否相同,相同则标志位Z=120AB: JRZ 20A0;条件转移指令,当标志位 Z为1时转到20A0地址20AC: INC R0;把R0寄存器的内容增加 120AE: JR 20A4;无条件转移指令,一定转移到20A4地址20AF: RET;子程序返回指令,程序结束<2>在命令行提不符状态卜输入:运行过后,可以观察到显示器上会显示出所有可打印的字符。实验二 脱机运算器实验2.1 实验目的深入了解AM2901运算器的功能与具体用法,4片AM290
26、1的级连方式,深化运算器部件的组成、设计、控制与使用等知识。2.2 实验说明脱机运算器实验,是指让运算器从教学计算机整机中脱离出来,只能通过开关、按键控制 教学机的运算器完成指定的运算功能,并通过指示灯观察运算结果。下面先把前边讲过的、与该实验直接有关的结论性内容汇总如下。1 . 12位微型开关的具体控制功能分配如下:A 口、B 口地址:送给 AM2901器件用于选择 源与目的操作数的寄存器编号;I8-I0 :选择操作数来源、运算操作功能、选择操作数处理结果和运算器输出内容的3组3位的控制码;SCi、SSH和SST用于确定运算器最低位的进位输入、移位信号的入/出和怎样处理 AM2901产生的状
27、态标志位的结果。2 .开关位置说明:做脱机运算器实验时,要用到提供24位控制信号的微动开关和提供 16位数据的拨动开关。 微动开关是红色的,一个微动开关可以提供12位的控制信号,标有 micro switch 1 和microswitch 2 ;数据开关是黑色的,左边的标有 SWH勺是高8位,右边的标有 SWL勺是低8位。微动开关与控制信号对应关系见表(由左到右广Micro switch 1Micro switch 2I5-I3I2-I0SSTSSHSCIB PORTA PORT脱机运算器实验的环境图:工而位运算器脱机丈验通过=4位建里开支 提贝控豺B号小打显我走3312-0量£1T
28、EC-XP16系统脱机运算器实验微型开关各字段的控制功能表:TS,JiHi运算器组成线路和信息连接关系图:.日“,1二RAMJ Q0 二仁*内部后我IB九心口 3 Q二:2.3 实验步骤1 .将教学机左下方的 5个拨动开关置为1XX00 (单步、16位、脱机);先按一下“ RESET 按键,再按一下“ START按键,进行初始化。2 .按下表所列的操作在机器上进行运算器脱机实验,将结果填入表中:其中D1取为0101H, D2取为1010H;通过两个12位的红色微型开关向运算器提供控制信号,通过 16位数据 开关向运算器提供数据,通过指示灯观察运算结果及状态标志。运算I8-I0SSTSSHSCi
29、压STAR硒压START 后ALU输出CZVSALU输出CZVS*D1+0->R001100011100100000000不用0101随机01010000*D2+0->R10110001110010000不用1010000010100000R0+R1->R00110000010010000000000011111000021210000RO-R1->R001100100100100010000000101010000F0F11000R1-R0->R101100100100100010F0F10000E0E1000R0V R1->R00110110010010
30、000000100000F0F10000F0F1000R0A R1->R00111000010010000000000010101100001011000R0< R1->R001111000100100000E0E100001011000(R0< R1)->R0011111001001000000000001FEFE10000E0E10012*R0->R011100001100100000000不用FEFE1001FDFC0001R0/2->R01010000110010000不用FDFC00017EFE0001注:用*标记的运算,表示 D1、D2的数
31、据是由拨动开关 SW合出的,开关给的是二进制的 信号,注意二进制和十六进制间的转换。按“START按键之前,ALU输出的是计算结果,参照 ALU的操作周期的时序可知 A B 口 数据锁存是在时钟的下降沿,通用寄存器的接U是在低电平,所以要想寄存器接收ALU的计算结果必须按一次“ START按键。实验三存储器部件教学实验3.1 实验目的1 .深入理解计算机内存储器的功能、组成知识;2 .深入地学懂静态存储器芯片的读写原理和用他们组成教学计算机存储器系统的方法(即字、位扩展技术),控制其运行的方式;3.2 实验说明教学计算机存储器系统由ROMF口 RAMW个存储区组成,分别由EPRO拈片(或EEP
32、RO航片)和RAMK片构成。TEC-XP教学计算机中还安排了另外几个存储器器件插座,可以插上相应存储 器芯片以完成存储器容量扩展的教学实验,为此必须比较清楚地了解:1. TEC-XP教学机的存储器系统的总体组成及其连接关系;2. TEC-XP教学机的有关存储器芯片、I/O接口芯片的片选信号控制和读写命令的给出和 具体使用办法;3. RAM EPROMEEPROIW储器芯片在读写控制、写入时间等方面的同异之处,并正确建 立连线关系和在程序中完成正确的读写过程;4. 如何在TEC-XP教学机中使用扩展的存储器空间并检查其运行的正确性。3.3 实验内容1 .要完成存储器容量扩展的教学实验,需为扩展存
33、储器选择一个地址,并注意读写和OE等控制信号的正确状态;2 .用监控程序的 D E命令对存储器进彳T读写,比较RAM(6116)、EEPROM28系列芯片)EPROM 27系列芯片)在读写上的异同;3 .用监控程序的A命令编写一段程序,对 RAM(6116)进行读写,用 D命令查看结果是否 正确;4 .用监控程序的A命令编写一段程序,对扩展存储器EEPROM!行读写,用D命令查看结果是否正确;如不正确,分析原因,改写程序,重新运行;内存储器和串行接口电路图:由亦HIM U设写曲号内有计库演口片增*lnu:l 注25¥10 RLQ WCCPU系统nil h :川6116'+1,
34、S245_+i a%内郛总线133.4 实验步骤1 .检查FPGAF方的插针要按下列要求短接:标有“ /MWR " RD'的插针左边两个短接, 标有“ /MRU "GND的插针右边两个短接,标有ROMLCSI RAMLCS勺插针短接。2 . RAM(6116)支持即时读写,可直接用 A、E命令向扩展的存储器输入程序或改变内存单 元的值。RAW的内容在断电后会消失,重新启动实验机后会发现内存单元的值发生了改变。1用E命令改变内存单元的值并用D命令观察结果。1在命令行提示符状态下输入:E 2020 /屏幕将显示:2020内存单元原值:按如下形式键入:2020 原值:22
35、22 (空格)原值:3333 (空格)原值:4444 (空格)原值:5555/ 2在命令行提示符状态下输入:D 2020 /屏幕将显示从2020内存单元开始的值,其中 2020H2023H的值为:2222 3333 4444 55553断电后重新启动教学实验机,用D命令观察内存单元 20202023的值。会发现原来置入到这几个内存单元的值已经改变,用户在使用RAM寸,必须每次断电重启后都要重新输入程序或修改内存单元的值。2用A命令输入一段程序,执行并观察结果。1在命令行提示符状态下输入:A 2000 /屏幕将显示:2000 :按如下形式键入:2000: MVRD RO, AAAA2002: M
36、VRD R1, 55552004: AND R0, R12005: RET2006: /2在命令行提示符状态下输入:T2000 /R0的值变为AAAAH其余寄存器的值不变。T/R1的值变为5555H,其余寄存器的值不变。T/R0的值变为0000H,其余寄存器的值不变。<3>在命令行提示符状态下输入:G 2000运行输入的程序<4>在命令行提示符状态下输入:R /屏幕显示:R0=0000 R1=5555 R2=RAMK片可直接用A命令键入程序,但断电会丢失,要再次调试该程序必须重新输入,对 较长的程序或经常用到的程序可通过交叉汇编,在上位机生成代码文件,每次加电启动后不用
37、 重新输入,只需通过 PCEC16各代码文件传送给下位机即可。3 . 将扩展的ROMS片(27或28系列或28的替代产品58C65芯片)插入标有“EXTROMH” 和“EXTROML ”的自锁紧插座,要注意芯片插入的方向,带有半圆形缺口的一方朝左插入。 如果芯片插入方向不对,导致芯片烧毁。然后锁紧插座。4 .将扩展芯片右边的插针按下列方式短接:将EXTROM芯片右上方的标有“WE和“A11”的插针下面两个短接,将它右边标有“TEC "/CS” “FPGA的三个插针左边两个短接,标有XTROMLCS插针短接,标有“ TEC' " OE' " GND
38、" FPGA的四个插针上边一排左边的两个 短接;5 .在第四步中用户可以将右侧标有“TEC' "/CS” “FPGA的三个插针左边两个短接这表示扩展的ROM勺内存地址是从 4000H开始,可用空间是 4000H-5FFFH,用户可在这个范围内 输入程序或改变内存单元的值。也可以将这个插针断开,将标有/CS的圆孔针与标有MEMCS的一排圆孔针中的任意一个用导线相连;注意连接的地址范围是多少,用户可用的地址空间就是 多少。下面以AT28C64B(或其替代产品 58C65芯片)为例,进行扩展 EEPRO续验。6 . AT28C64B的读操作和一般的 RAMH样,而其写操作
39、,需要一定的时间,大约为1毫秒。 因此,需要编写一延迟子程序,在又EEPROM!行写操作时,调用该子程序,以完成正确的读写。1)用E命令改变内存单元的值并用D命令观察结果。<1>在命令行提示符状态下输入:E 5000 /屏幕将显示:5000内存单元原值:按如下形式键入:5000原值:2424 (空格)原值:3636 (空格)原值:4848 (空格)原值:5050 /<2>在命令行提示符状态下输入:D 5000 /屏幕将显示5000+507FH内存单元的值,从5000开始的连续四个内存单元的值依次为24243636 4848 5050 。<3>断电后重新启动,
40、用 D命令察看内存单元 50005003的值,会发现这几个单元的值没有发生改变,说明 EEPROMJ内容断电后可保存。2) AT28C64昭储器不能直接用 A命令输入程序,单字节的指令可能会写进去,双字节指令的低位会出错(建议试一试),可将编写好的程序用编程器写入片内;也可将程序放到RAM(6116)中,调用延时子程序,访问AT28C64B中的内存地址。卜面给出的程序,在 5000+500FH单元中依次写入数据 0000H、0001H、.000FH 。(2000) MVRD R0 0000MVRD R2 0010MVRD R3 5000(2006) STRR R3 , R0CALA 2200I
41、NC R0INC R3DEC R2JRNZ 2006从2000H单元开始输入主程序:;R2记录循环次数;R3的内容为16位内存地址;将R0寄存器的内容放到 R3给出的内存单元中;调用程序地址为 2200的延时子程序;R0 加 1;R3 加 1;R2 减 1;R2不为0跳转到2006HRET从2200H单元开始输入延时子程序:(2200) PUSH R3MVRD R3 FFFF(2203) DEC R3JRNZ 2203POP R3 RET运行主程序,在命令提示符下输入:G 2000/。程序执行结束后,在命令提示符下输入:D 5000 /;可看到从5000H开始的内存单元的值变为5000: 00
42、00 0001 0002 0003 0004 0005 0006 00075008: 0008 0009 000A 000B 000C 000D 000E 000F。思考:1)为何能用E命令直接写AT28C64B的存储单元,而 A命令则有时不正确;2)修改延时子程序,将其延时改短,可将延时子程序中R3的内容赋成00FF或0FFF等,再看运行结果。注意:实验完成后,取下扩展芯片,断开地址和数据总线的短路子,将FPGAT方的标有“/MWR "RD'的插针改成右边两个短接实验四微程序控制器实验4.1 实验目的1 .深入理解计算机微程序控制器的功能、组成知识;2 .深入地学习计算机各
43、类典型指令的执行流程;3 .对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念;4 .学习微程序控制器的设计过程和相关技术。4.2 实验说明控制器设计是学习计算机总体组成和设计的最重要的部分。要在TEC-XP教学计算机完成这项实验,必须比较清楚地懂得:1 . TEC-XP教学机的微程序控制器主要由微程序定序器AM2910、产生当前微地址和下地址的微控存和MACH器件组成;2 . TEC-XP教学机上已实现的全部基本指令和留给用户实现的19条扩展指令的控制信号都是由微控存和 MACH给出的。3 .应了解监控程序的 A命令只支持基本指令,扩展指令应用E命令将指令代码写入到相应的存储单元中
44、;不能用 T、P命令单步调试扩展指令,只能用G命令执行扩展指令。4 .要明白TEC-XP教学机支持的指令格式及指令执行流程分组情况;理解TEC-XP教学机中已经设计好并正常运行的各类指令的功能、格式和执行流程,也包括控制器设计与实现中的 具体线路和控制信号的组成。4.3 实验内容1 .完成控制器部件的教学实验,主要内容是由学生自己设计几条指令的的功能、格式和执 行流程,并在教学计算机上实现、调试正确。2 .首先是看懂TEC-XP教学计算机的功能部件组成和线路逻辑关系,然后分析教学计算机中已经设计好并正常运行的几条典型指令(例如,ADD MVRR OUT MVRD JRC CALA RET等指令
45、)的功能、格式和执行流程,注意各操作功能所对应的控制信号的作用。3 .设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。例如ADCJRS JRNS LDRA STAR CAL吟指令,可以从给出的 19条扩展指令中任意选择,当然也可以 设计与实现其它的指令,包括原来已经实现的基本指令(要变换为另外一个指令操作码)或自 己确定的指令。4 .单条运行指令,查看指令的功能、格式和执行流程。5 .用监控程序的A、E (扩展指令必须用 E命令置入)命令编写一段小程序, 观察运行结果。教学机计算机控制器的总体组成电路图:X个再示上A iYL学町LCAtAP,LP微程序期招存砒器Tim in
46、年阻合提朝控制信号产生电路MAC 13 器ftSadr受位二a -电腕MaFROM_1SCU日Shir't立位控制楮号| 口口 | |阳|JL仇指示灯t;LKruis-B:R”TRiIRLiaCB内部总建IB4.4实验 步骤1 .接 通教学机 电源;2,将 教学机左 下方的5 个拨动开 天置为 11010 (单 步、手动 置指令、 微程序、 联机、16 位);3.按 一下“RESETH个指示灯按键;4 .通过16位的数据开关 SWH SWLM入指令操作码;5 .在单步方式下,通过指示灯观察 各类基本指令的微码。1选择基本指令的 A组指令中的ADD旨令,观察其节拍流程1置拨动开关 SW=
47、00000000 00000001;(表示指令 ADD RQ R1 )2按RESE型键; 指示灯Microp亮(只要选择微程序,该灯在指令执行过程中一直 亮),其它灯全灭;3按STAR裱键; 指示灯CI30、SCC30显示1110 0000 ,微址和下址的指示灯全 灭;(本拍完成公共操作0-PG DI#=0)4按STAR裱键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0000 0001 , 下址的指示灯全灭;(本拍完成公共操作PO AR PC+B PQ5按STARTS键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0000 0010, 下址的指示灯
48、全灭;(本拍完成公共操作MEM> IR)6以上三步为公共操作,其它指令同;7按STARTS键;指示灯CI30、SCC30显示0010 0000,微址指示灯显示 0000 0011, 下址的指示灯显示 0000 0100;(本拍完成/MAP操作功能)8按 START® 指示灯 CI30、SCC30 显示 0011 0000,微址指示灯显示 0000 0100, 下址的指示灯显示 0011 0000 (本拍执行 ADD旨令,DMDR+S歌作)。9按STARTS键;指示灯CI30、SCC30显示0011 0010,微址指示灯显示 0011 0000, 下址的指示灯显示 0011 10
49、10;(本拍完成 STFH。CC#=INT蚣共操作功能)10按STAR型键;指示灯CI30、SCC30显示0011 0000,微址指示灯显示 0011 0001, 下址的指示灯显示 0000 0010;(本拍完成 POAR、PC+B PG CC#=0的公共操作功能)2 选择基本指令的B组指令中的MVRD旨令,观察其节拍流程1置拨动开关 SW=10001000 00000000;(表示指令 MVRD)2按RESE型键; 指示灯Microp亮(只要选择微程序,该灯在指令执行过程中一直 亮),其它灯全灭;3按STAR微键; 指示灯CI30、SCC30显示1110 0000,微址和下址的指示灯全灭;4
50、按STAR微键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0000 0001 , 下址的指示灯全灭;5按STAR微键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0000 0010, 下址的指示灯全灭;6以上三步为公共操作,其它指令同。7按STAR微键;指示灯CI30、SCC30显示0010 0000,微址指示灯显示 0000 0011 , 下址的指示灯显示 0001 1101 ;8按STAR微键;指示灯CI30、SCC30显示0011 0000,微址指示灯显示 0001 1101, 下址的指示灯显示 0001 1100;(本拍完成 POAR PC
51、+B PG CC#=0操作)9按STAR微键;指示灯CI30、SCC30显示0011 0000,微址指示灯显示 0001 1100, 下址的指示灯显示 0011 0000;(本拍完成 MEM> DR CC#=0B作)10按STAR例;指示灯CI30、SCC30显示0011 0010,微址指示灯显示 0011 0000, 下址的指示灯显示 0011 1010;(本拍完成 STFH。CC#=INT#t作)11按STARTS键;指示灯CI30、SCC30显示0011 0000,微址指示灯显示 0011 0001, 下址的指示灯显示 0000 0010;(本拍完成 POAR PC+B PC CC
52、#=0的公共操作功能)3选择基本指令的D组指令中的CALA指令,观察其节拍流程1置拨动开关 SW=11001110 00000000;(表示指令 CALA )2按RESE型键;指示灯Microp亮(只要选择微程序,该灯在指令执行过程中一直亮),其它灯全灭;3按STAR微键; 指示灯CI30、SCC30显示1110 0000 ,微址和下址的指示灯全灭;4按START®键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0000 0001 , 下址的指示灯全灭;5按STAR微键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0000 0010, 下址
53、的指示灯全灭;6以上三步为公共操作,其它指令同。7按STAR微键;指示灯CI30、SCC30显示0010 0000,微址指示灯显示 0000 0011 , 下址的指示灯显示 0001 1111 ;8按STAR微键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0001 1111, 下址的指示灯显示 0000 0000;(本拍完成 POAR PC+B PC操作)9按STAR微键;指示灯CI30、SCC30显示1110 0000,微址指示灯显示 0010 0000, 下址的指示灯显示 0000 0000;(本拍完成MEM> Q操作)10按STAR微键;指示灯CI30、SC
54、C30显示1110 0000,微址指示灯显示 0010 0001, 下址的指示灯显示 0000 0000;(本拍 完成SP-1 - SP、f AR操作)11按STAR侬键; 指示灯CI30、SCC30显示0011 0000 , 微址指示灯显示 0010 0010,下址的指示灯显示 0011 0000 ;(本拍完成 PO MEIM CH PG CC#=0B作)12按STAR例;指示灯CI30、SCC30显示0011 0010,微址指示灯显示 0011 0000, 下址的指示灯显示 0011 1010;(本拍完成 STFH。CC#=INT#t作)13按STAR型键;指示灯CI30、SCC30显示0011 0000,微址指示灯显示 0011 0001, 下址的指示灯显示 0000 0010;(本拍完成 POAR PC+B
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 分析弱项补缺2025年现代汉语考试试题及答案
- WPS功能设计的创新案例试题及答案
- 分析2025年税法考试重点试题及答案
- 2025年计算机一级MSPowerPoint音视频应用试题及答案
- 创新学习法提升现代汉语能力试题及答案
- PowerPoint文档设计要领试题及答案
- 色彩与构图在Photoshop中的运用试题及答案
- 解析消费税的计算方式试题及答案
- 企业战略效果试题及答案分析
- 网络区分与识别试题及答案
- 2025年蚌埠市阳光电力维修 工程有限责任公司招聘笔试参考题库附带答案详解
- 幼儿园午睡安全培训
- 智慧工会管理系统需求方案
- 临床三基培训
- 2024年湖北省高考政治卷第18题说题+-2025届高考政治二轮复习
- 2024安徽省安全员C证考试(专职安全员)题库及答案
- 2022年首都师范大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)
- 福建省福州教育学院附属中学2025届高考数学四模试卷含解析
- 造价咨询预算评审服务投标方案(技术方案)
- 门诊合作协议合同范本(2篇)
- 洁净室空调净化系统验证方案(通过BSI和华光审核)
评论
0/150
提交评论