华北科技学院—《计算机组成原理》设计性实验报告.doc_第1页
华北科技学院—《计算机组成原理》设计性实验报告.doc_第2页
华北科技学院—《计算机组成原理》设计性实验报告.doc_第3页
华北科技学院—《计算机组成原理》设计性实验报告.doc_第4页
华北科技学院—《计算机组成原理》设计性实验报告.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

华北科技学院计算机系设计性实验报告华北科技学院计算机系设计性实验实 验 报 告 课程名称 计算机组成原理b 实验学期 2011 至 2012 学年 第 一 学期学生所在系部 计算机学院 年级 2011 专业班级 学生姓名 学号 任课教师 实验成绩 计算机系制实验报告须知1、 学生上交实验报告时,必须为打印稿(a4纸)。页面空间不够,可以顺延。2、 学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。3、 教师应该填写的内容包括:实验成绩、教师评价等。4、 教师根据本课程的实验指导中实验内容的要求,评定学生的设计性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。设计性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。5、 未尽事宜,请参考该课程的实验大纲和教学大纲。 计算机组成原理b课程设计性实验报告开课实验室:计算机组成原理实验室 2011 年11 月 9 日实验题目指令扩展实验一、实验目的深入了解教学计算机微程序控制器的组成和设计技术,包括am2910器件的功能与具体用法,教学计算机的总体组成和部件之间的连接方法,总之应该深入理解控制器部件的组成、设计、控制与使用等诸项知识。二、设备与环境tec-xp+教学机,微机一台,装有windows xp、isplever、ispvm system等软件。三、实验内容在现有的基本指令系统上,扩展2条指令。四、实验步骤1、 扩展的2条指令的格式及功能写明2条指令的格式、功能、寻址方式、操作码编码、微程序步数、微程序入口地址。 格式 功能 寻址方式 操作码编码adtw dr dr增2 寄存器寻址 10100001(a1)swrm dr,sr dr与 sr 互换 寄存器间接寻址 11101001(e9) 微程序步数 微程序入口地址adtw 2步 81swrm 4步 86tec-xp+教学计算机系统同时实现了微程序方案和组合逻辑方案的两种控制器,其总体组成如图2-5所示。从两种控制器的组成来看,都包括有程序计数器pc、指令寄存器ir、程序定序器am2910以及mach芯片四部分。pc是选用在运算器的通用寄存器组中的r5实现的,图中用虚线表示。ir是选用两片8位的寄存器电路实现的,还用到一片传送ir低位字节内容到内部总线ib的开关门电路。am2910芯片用来确定微指令的执行次序。mach芯片是一片有130多个输入输出管脚、由一万个门电路组成的cpld器件,其内部的线路组成和实现的功能都比较复杂。2、 指令所对应的微程序指令入口地址下址ci3-0scc3-0mvri2-0i8-6i5-3b口a口sstsshscidc2dc1adtw dr8100e0433080110030304330801100swrm dr,sra100e0430080000000e0441008003000e01730800000303002100000013、abel语言源程序编辑以及jed文件生成m256c.abl源程序修改过程(10步)以及生成jed文件的整个操作过程(1)定义指令操作码。(2)定义微址。(3)入口地址定义。(4)下址的定义。(5)定义条件判断。(6)定义mvr3位。(7)修改i08。(8)修改a,b口。(9)修改sst,ssh,sci。(10)修改dc1,dc2。各个步骤所对应的操作如下所示,根据各个为上的数据,只需在对应的代码段进行增加的工作即可。程序部分代码:dc1=dc1_2,dc1_1,dc1_0;dc2=dc2_2,dc2_1,dc2_0;d=d7,d6,d5,d4,d3,d2,d1,d0;y=y7,y6,y5,y4,y3,y2,y1,y0;nxtaddr=nxtaddr7,nxtaddr6,nxtaddr5,nxtaddr4,nxtaddr3,nxtaddr2,nxtaddr1,nxtaddr0;galscc=ci3,ci2,ci1,ci0,scc3,scc2,scc1,scc0;all=outer,sci,ssh,i,sst,a,b,dc1,dc2; add=(ir=0,0,0,0,0,0,0,0); sub=(ir=0,0,0,0,0,0,0,1); and=(ir=0,0,0,0,0,0,1,0); or=(ir=0,0,0,0,0,1,1,0);xor_=(ir=0,0,0,0,0,1,0,0);cmp=(ir=0,0,0,0,0,0,1,1); test=(ir=0,0,0,0,0,1,0,1); mvrr=(ir=0,0,0,0,0,1,1,1); inc=(ir=0,0,0,0,1,0,0,1);dec=(ir=0,0,0,0,1,0,0,0);shl=(ir=0,0,0,0,1,0,1,0); shr=(ir=0,0,0,0,1,0,1,1); jr=(ir=0,1,0,0,0,0,0,1); jrc=(ir=0,1,0,0,0,1,0,0); jrnc=(ir=0,1,0,0,0,1,0,1); jrz= (ir=0,1,0,0,0,1,1,0); jrnz=(ir=0,1,0,0,0,1,1,1); jmpa=(ir=1,0,0,0,0,0,0,0); ldrr=(ir=1,0,0,0,0,0,0,1);ldpc=(ir=1,0,0,0,1,0,0,1);strr=(ir=1,0,0,0,0,0,1,1); in_=(ir=1,0,0,0,0,0,1,0); out=(ir=1,0,0,0,0,1,1,0); push=(ir=1,0,0,0,0,1,0,1); pop=(ir=1,0,0,0,0,1,1,1); pshf=(ir=1,0,0,0,0,1,0,0); popf=(ir=1,0,0,0,1,1,0,0); mvrd=(ir=1,0,0,0,1,0,0,0); cala=(ir=1,1,0,0,1,1,1,0); ret=(ir=1,0,0,0,1,1,1,1);ma00 = (y=0,0,0,0,0,0,0,0); ma01 = (y=0,0,0,0,0,0,0,1);ma02 = (y=0,0,0,0,0,0,1,0);ma03 = (y=0,0,0,0,0,0,1,1);ma04 = (y=0,0,0,0,0,1,0,0);ma05 = (y=0,0,0,0,0,1,0,1);ma06 = (y=0,0,0,0,0,1,1,0);ma07 = (y=0,0,0,0,0,1,1,1);ma08 = (y=0,0,0,0,1,0,0,0);ma09 = (y=0,0,0,0,1,0,0,1);ma0a = (y=0,0,0,0,1,0,1,0);ma0b = (y=0,0,0,0,1,0,1,1);ma0c = (y=0,0,0,0,1,1,0,0);ma0d = (y=0,0,0,0,1,1,0,1);ma0e = (y=0,0,0,0,1,1,1,0);ma0f = (y=0,0,0,0,1,1,1,1);ma10 = (y=0,0,0,1,0,0,0,0);ma11 = (y=0,0,0,1,0,0,0,1);ma12 = (y=0,0,0,1,0,0,1,0);ma13 = (y=0,0,0,1,0,0,1,1);ma14 = (y=0,0,0,1,0,1,0,0);ma15 = (y=0,0,0,1,0,1,0,1);ma16 = (y=0,0,0,1,0,1,1,0);ma17 = (y=0,0,0,1,0,1,1,1);ma18 = (y=0,0,0,1,1,0,0,0);ma19 = (y=0,0,0,1,1,0,0,1);ma1a = (y=0,0,0,1,1,0,1,0);ma1b = (y=0,0,0,1,1,0,1,1);ma1c = (y=0,0,0,1,1,1,0,0);ma1d = (y=0,0,0,1,1,1,0,1);ma1e = (y=0,0,0,1,1,1,1,0);ma1f = (y=0,0,0,1,1,1,1,1);ma20 = (y=0,0,1,0,0,0,0,0);ma21 = (y=0,0,1,0,0,0,0,1);ma22 = (y=0,0,1,0,0,0,1,0);ma23 = (y=0,0,1,0,0,0,1,1);ma24 = (y=0,0,1,0,0,1,0,0);ma30 = (y=0,0,1,1,0,0,0,0);ma31 = (y=0,0,1,1,0,0,0,1);ma89 = (y=1,0,0,0,1,0,0,1);/* ma3a = (y=0,0,1,1,1,0,1,0);ma3b = (y=0,0,1,1,1,0,1,1);ma3c = (y=0,0,1,1,1,1,0,0);ma3d = (y=0,0,1,1,1,1,0,1);ma3e = (y=0,0,1,1,1,1,1,0);ma3f = (y=0,0,1,1,1,1,1,1);ma50 = (y=0,1,0,1,0,0,0,0);ma51 = (y=0,1,0,1,0,0,0,1);ma52 = (y=0,1,0,1,0,0,1,0);ma53 = (y=0,1,0,1,0,0,1,1);ma54 = (y=0,1,0,1,0,1,0,0);ma55 = (y=0,1,0,1,0,1,0,1);ma56 = (y=0,1,0,1,0,1,1,0);ma57 = (y=0,1,0,1,0,1,1,1);ma58 = (y=0,1,0,1,1,0,0,0);ma59 = (y=0,1,0,1,1,0,0,1);ma5a = (y=0,1,0,1,1,0,1,0);ma5b = (y=0,1,0,1,1,0,1,1);ma5c = (y=0,1,0,1,1,1,0,0);ma5d = (y=0,1,0,1,1,1,0,1);ma5e = (y=0,1,0,1,1,1,1,0);ma5f = (y=0,1,0,1,1,1,1,1);ma60 = (y=0,1,1,0,0,0,0,0);ma61 = (y=0,1,1,0,0,0,0,1);ma62 = (y=0,1,1,0,0,0,1,0);ma63 = (y=0,1,1,0,0,0,1,1);ma64 = (y=0,1,1,0,0,1,0,0);ma65 = (y=0,1,1,0,0,1,0,1);ma66 = (y=0,1,1,0,0,1,1,0);ma67 = (y=0,1,1,0,0,1,1,1);ma68 = (y=0,1,1,0,1,0,0,0);ma69 = (y=0,1,1,0,1,0,0,1);ma6a = (y=0,1,1,0,1,0,1,0);equationsck=ck1;sigext = ir7&!ir15#!ir7& ir15;/*maprom 58c65*d0= !c_m&(!_map&(sub#or#cmp#mvrr#dec#shr#jr#pshf#push#pop#popf#strr#ldrr#ldpc#mvrd#cala#ret)#nxtaddr0&!_pl)&!bit8;d1= !c_m&(!_map&(and#or#test#mvrr#shl#shr#in_#out#pop#popf#ldrr#ldpc#jmpa#cala#ret) #nxtaddr1&!_pl)&!bit8;d2= !c_m&(!_map&(add#sub#and#or#inc#dec#shl#shr#pshf#push#pop#popf#mvrd#jmpa#cala)#nxtaddr2&!_pl)&!bit8;d3= !c_m&(!_map&(xor_#cmp#test#mvrr#inc#dec#shr#shl#strr#ldrr#ldpc#mvrd#jmpa#cala)#nxtaddr3&!_pl)&!bit8;d4= !c_m&(!_map&(jrc#jrnc#jrz#jrnz#jr#in_#out#pshf#push#pop#popf#strr#ldrr#ldpc#mvrd#jmpa#cala)#nxtaddr4&!_pl)&!bit8;d5= !c_m&(!_map&(ret)#nxtaddr5&!_pl)&!bit8;d6= !c_m&(!_map&(0)#nxtaddr6&!_pl)&!bit8;d7= !c_m&(!_map&(0)#nxtaddr7&!_pl)&!bit8;/*cmh and next address*nxtaddr7:= 0;nxtaddr6:= 0;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)&!bit8;nxtaddr4:= !c_m&(ma04#ma05#ma06#ma07#ma08#ma09#ma0a#ma0b#ma0c#ma0d#ma0e#ma0f#ma10#ma11#ma12#ma13#ma14#ma15#ma16#ma17#ma1#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)&!bit8;nxtaddr3:= !c_m&(ma15#ma17#ma1d#ma30#ma5c#ma5e#ma60)&!bit8;nxtaddr2:= !c_m&(ma12#ma17#ma1d#ma1e#ma5c#ma5e)&!bit8;nxtaddr1:= !c_m&(ma15#ma30#ma31#ma60#ma68)&!bit8;nxtaddr0:= !c_m&(ma3f#ma68)&!bit8;nxtaddr.clk= ck;ci3:= !c_m&(ma00#ma01#ma02#ma19#ma1b#ma89#ma1f#ma20#ma21#ma23#ma89)&nrst&!bit8;ci2:= !c_m&(ma00#ma01#ma02#ma19#ma1b#ma89#ma1f#ma20#ma21#ma23)&nrst&!bit8;ci1:= !c_m&1&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)&nrst&!bit8;scc3:= !c_m&0&nrst&!bit8;scc2:= !c_m&(ma10#ma12#ma15#ma17#ma69)&nrst&!bit8;scc1:= !c_m&(ma12#ma15#ma17#ma30)&nrst&!bit8;scc0:= !c_m&(ma15#ma17)&nrst&!bit8; galscc.clk= ck;/* 16 bit !c_m*!_mio00:=!(ma00#ma01#ma03#ma04#ma05#ma06#ma07#ma08#ma09#ma0a#ma0b#ma0c#ma0d#ma0e#ma0f#ma10#ma11#ma12#ma15#ma17#ma19#ma1b#ma89#ma1d#ma1e #ma21#ma23#ma30#ma31); req00 := (ma13#ma14);_we00 :=(ma02#ma14#ma18#ma1c#ma20#ma24);i200 :=(ma0b#ma11#ma12#ma14#ma1a#ma1b#ma89#ma1c#ma20#ma24#ma30);i100 := (ma01#ma0c#ma0d#ma0e#ma0f#ma12#ma13#ma14#ma15#ma17#ma19#ma1c#ma1d #ma1e#ma1f#ma20#ma21#ma22#ma23#ma24#ma30#ma31);!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);i800 := (ma0e#ma0f);i700 :=(ma00#ma01#ma04#ma05#ma06#ma07#ma08#ma0b#ma0c#ma0d#ma0e#ma11#ma14#ma15#ma17#ma1c#ma1d#ma1e#ma1f#ma21#ma22#ma23#ma24#ma31);!i600 :=!(ma00#ma02#ma03#ma04#ma05#ma06#ma07#ma08#ma09#ma0a#ma0b#ma0c#ma0d#ma0e#ma0f#ma10#ma11#ma12#ma13#ma14#ma15#ma16#ma18#ma19#ma1a#ma1b#ma89#ma1c#ma21#ma24); i500 :=(ma06#ma08#ma0a);i400 :=(ma07#ma08);i300 :=(ma00#ma05#ma07#ma09#ma0d#ma15#ma21);b30 = (ma04#ma05#ma06#ma07#ma08#ma09#ma0a#ma0b#ma0c#ma0d#ma0e#ma0f#ma19#ma1c);b300 :=b30&ir7;b20 = (ma00#ma01#ma11#ma15#ma17#ma1d#ma1e#ma1f#ma21#ma22#ma23#ma24#ma31);b200 :=(!b30&b20 # b30&ir6);b10 = 0; b100 :=(!b30&b10 # b30&ir5); b00 = (ma00#ma01#ma11#ma1d#ma1e#ma1f#ma22#ma24#ma31);b000 :=(!b30&b00 # b30&ir4);a30 = (ma04#ma05#ma06#ma07#ma08#ma09#ma0a#ma0b#ma1a#ma1b#ma89);a300 :=(a30&ir3);a20 = (ma00#ma01#ma11#ma17#ma1d#ma1e#ma1f#ma22#ma23#ma31);a200 :=(!a30&a20 # a30&ir2);a10 = 0;a100 :=(!a30&a10 # a30&ir1); a00 = (ma00#ma01#ma11#ma1d#ma1e#ma1f#ma22#ma31);a000 :=(!a30&a00 # a30&ir0);sst200:=(ma0e#ma0f);sst100:=(ma0e#ma18);sst000:=(ma04#ma05#ma06#ma07#ma08#ma09#ma0a#ma0c#ma0d#ma0f);ssh00 :=(0); sci100:=(0); sci000:=(ma00#ma01#ma05#ma09#ma0c#ma17#ma1d#ma1e#ma1f#ma23#ma31);dc2_200:=(ma00);dc2_100:=(ma00#ma01#ma12#ma15#ma17#ma19#ma1b#ma89#ma1d#ma1e#ma1f#ma21#ma23#ma31);dc2_000:=(ma00#ma01#ma02#ma12#ma15#ma17#ma19#ma1b#ma89#ma1d#ma1e#ma1f#ma21#ma23#ma31);dc1_200:= (ma01#ma31);dc1_100:= (ma01#ma11#ma12#ma16#ma30#ma31); dc1_000:= (ma13#ma16#ma1a#ma22#ma30); end4、mach编程启动lattice semiconductor公司ispvm system软件,弹出主界面:(1) 连接好教学计算机上在线mach编程电缆,

温馨提示

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

评论

0/150

提交评论