版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验一实验环境的使用
姓名梁及一成绩实验时间__________
指导教师(签章)张欢欢
注:本次实验重在熟悉实验平台,微程序控制器尚未讲解,不必刻意要求自
己全部理解,DM1000(类intel8086)汇编要明白这些指令的作用和大致格
式,如加法等
一.实验目的
•掌握DreamLogic软件的基本使用方法。
•了解DM1000模型机汇编程序的编写方法,并学习将汇编源程序编译为机器指令
的方法。
•了解DM1000模型机的微指令,并学习将微指令程序编译为微程序的方法。
•掌握DM1000模型机加载指令程序和微指令程序的方法。
•熟练掌握原理图中使用网络、端口、总线等在器件、模块间建立连接的方法,
掌握模块化电路的设计方法。
•熟练掌握DM1000模型机进行单周期仿真的方法,并了解各个工具窗口以及它们
的作用
二.实验内容
1.环境部署与安装
从CodeCode.net平台领取任务CodeCode.net平台是用于教师在线布置实验任务,并
统一管理学生提交的作业的平台。如果没有使用到CodeCode.net平台,可以跳过此部分。
1.读者通过浏览器访问https:〃www.codccodc.net,可以打开CodeCode.net平台的登
录页面。
2.在登录页面中,读者输入帐号和密码,点击“登录”按钮,可以登录CodeCode.「et平
台。
3.登录成功后,在“课程”列表页面中,可以找到数字电路相关的实验课程。点击此
课程的链接,可以进入该课程的详细信息页面。
4.在课程的详细信息页面中,可以查看“课程描述”,该信息对于完成实验十分重要,
建议读者认真阅读。点击左侧导航中的“任务”链接,可以打开任务列表页面。
5.在任务列表中找到本次实验对应的任务,点击右侧的“领取任务”按钮,可以进入
“领取任务”页面。
6.在“领取任务”页面中,“新建项目名称”、“新建项目路径”、“项目所在的群
组”一般使用默认值即可。点击“领取任务”按钮后,可以创建一个个人项目用于完成
本次实验,并自动跳转到该项目的详情页面。
7.个人项目的详情页面主要包括左侧的导航栏、项目信息、文件列表、readme.md文件
内容等,如图1T所示。
8.在图1T中,点击红色方框中的按钮,可以复制当前项目的URL,在本实验后面的练
习中会使用这个URL将此项目克隆到读者计算机的本地磁盘中,从而供读者进行修改。
下载
gitclone,然后本地添加
-zip打包
-在gui界面打开远程,本质和git一样
注意环境路径不能是中文
可供参考内容
-视频
-手册pdf
2.仿真环境图形用户界面简介
1)图形用户界面总体介绍
这里还需要对DM1OOC的原理图DM1000.dlsche进行一些说明:
1.此原理图是DU1OCO的顶层原理图,其通过总线将各个模块连接起来,这样大大简化
了顶层原理图的复杂度,可以使读者很清晰的掌握各个模块间的连接关系,快速掌握
DM1000的整体结构。
2.在此原理图中遵守左囿输入,右面输出的约定。模块左侧的总线表示输入;模块右
侧的总线表示输出;模块顶部或底部的总线,表示模块既能从总线接收数据,又能向总
线发送数据。
3.在此原理图中提供了时钟和复位两个控制信号。其中,复位信号可以使用键盘上的R
键控制,每次复位都能使21000模型机从第一条指令开始执行程序。时钟提供了单步时
钟和自动时钟,可以使用键盘上的S键进行切换。单步时钟可以使用键盘上的C键控制,
默认是高电平,也就是说每次按下C键,都会让单步时钟变为低电平,并产生一个下降
沿,抬起C键会让单步时钟恢复为高电平,并产生一个上升沿。
4.除了使用总线连接各个模块的接口外,各个模块的接I」还通过使用相同的名称表示
它们具有连接关系。为了确保原理图简洁清晰,PC/ALU/REG等模块的输入信号都是通过
这种方式与CU模块输出的控制信号进行连接的。
5.总图中的模块是通过子模块文件的名称与之对应的,例如读者使用鼠标左键点击选
中REG模块后,在右侧的“属性”窗口中就会显示此模块的所有属性,其中“模块原理图文
件”的属性值为"REG.dlsche”,说明此模块是与原理图文件REG.dlsche对应的。
提示:用鼠标左键双击总图中的模块,就会自动跳转到对应的子模块原理图文件,在子模块原理图文件
中的空白处双击鼠标左键,就会返回到总图中,这样操作起来十分方便。
2)模型机简介
文件夹或文件名称说明
子模块文件夹
ALU.dlsche算术逻辑运算模块原理图文件
PC.dlsche程序计数器模块原理图文件
REG.dlsche寄存器模块原理图文件
CU.dlsche控制模块原理图文件
MEM.dlsche主存储器模块原理图文件
uPC_XEXT.dlsche微程序计数器模块原理图文件
汇编源程序文件夹
此文件中默认包含了•个简单的汇编语言源程序,作为示例
ram.asm程序提供给读者,读者可以修改此文件中的源代码,根据需
要编写自己的汇编程序。
这是•个Windows批处理文件,运行此文件可以执行其中的
命令让dmasm.exe编译器将ram.asm中的汇编代码编译为机
ram.bat
皤码,并写入存储器映射文件ram」工m中,同时还会生成列
及文件ram.1st和调试信息文件ram.dbg.
微指令源程序文件夹
此文件中包含了DM1000的全部微指令源程序。读者可以根
rom.masm
据需要修改此文件,添加新的微指令。
这是一个Windows批处理文件,运行此文件可以执行其中的
命令让microasm.exe编译器将rom.masm中的微指令源程序
rom.bat
编译为机器码,并写入存储器映射文件rom.rxni中,同时还
会生成列表文件rom.1st和调试信息文件rom.dbg.
存储器映射文件文件夹
主存储器映射文件,其中包含/汇编程序生成的机器码。当
ram.rxmDM1000开始运行时,此文件中的内容会被加我到MEMf模
块的RAM中,从而允许DM1000执行月中的机器码.
微指令存储器映射文件,其中包含了微指令源程序生成的机
借码。当DM1000开始运行时,此文件中的内容会被加我到
rom.rxm
CU子模块的ROM中,从而允许DM1000将指令的机器码翻译
为微指令的机器码并执行。
DM1000八位模型机的总图,由各个广•模块、时钟和凌位控
DM1000.dlsche
制通过总线或网络连接,组成可运行程序的计算机系统。
3)DM1000(类lntel8086)指令集自学笔记
程序分为代码段和数据段。代码段的开始位置用关键字.texl标出,而数据段的开始
位置用关键字.data标出。
.text;代码段
movr0,16;将立即数16赋值给通用寄存器r0
mova,num;将标号num指定的主存储器单元内容复制到累加器a中
adda,r0;将累加器a的值与通用寄存器r0的值相加,结果写回累加器a中
・data;数据段
num:-1
DM1000在执行一条指令时,会将其分为多个步骤即多条微指令,一个时钟周期执行一条
微指令。以指令“adda,rO”为例,可以分为以下步骤:
1.取指。取指是所有指令执行的第一步,该步骤将程序计数器PC在存储器中指向的一
个字节取出,并将其写入指令寄存器IR中。与此同时,CU模块将指令机器码中的高6位
扩展为16位,作为微程序计数器uPC的值,使uPC转去执行该指令对应的微程序。
2.将寄存器rO的值送到工作寄存器\丫中。
3.ALU将累加器a与工作寄存器W的值相加,并将结果写回累加器a中。
4.指令执行完毕,程序计数器PC加1,指向下一条指令。
三.实验结果
简述实验步骤(领取任务,启动dreamlogic,模型机克隆,新建项目,
运行简单汇编修改,推送作业步骤等)
领取任务
从CodeC平台领取任务CodeC平台是用于
教师在线布置实验任务,并统一管理学生提交的作业的平台。如果没有使用
至iJCodeC平台,可以跳过此部分。
1.读者通过浏览器访问https:〃,可
以打开CodeC平台的登录页面。
2.在登录页面中,读者输入帐号和密码,点击''登录〃
按钮,可以登录CodeC平台。
3.登录成功后,在''课程〃列表页面中,可以找到数字电
路相关的实验课程。点击此课程的链接,可以进入该课程的详细信息页
面。
4.在课程的详细信息页面中,可以查看''课程描述〃,该
信息对于完成实验十分重要,建议读者认真阅读。点击左侧导航中的''任
务〃链接,可以打开任务列表页面。
5.在任务列表中找到本次实验对应的任务,点击右侧的
''领取任务”按钮,可以进入''领取任务〃页面。
6.在''领取任务〃页面中,''新建项目名称〃、''新建项目路
径〃、''项目所在的群组〃一般使用默认值即可。点击''领取任务〃按钮后,
可以创建一个个人项目用于完成本次实验,并自动跳转到该项目的详情
页面。
7.个人项目的详情页面主要包括左侧的导航栏、项目信
息、文件列表、readme.md文件内容等,如图1-1所示。
8.在图1-1中,点击红色方框中的按钮,可以复制当前
项目的URL,在本实验后面的练习中会使用这个URL将此项目克隆到读
者计算机的本地磁盘中,从而供读者进行修改。
启动dreamlogic
下载
-gitclone,然后本地添加
-zip打包
-在gui界面打开远程,本质和git一样
注意环境路径不能是中文
然后双击点击图标,新建项目,选择gitclone的路径下的可执行文件
运行简单汇编修改
K傕公”锻■箫H做凡:at»onproductpoweredbyAl.
ing.aMSdegre«inBiophysicsin
A」上平UjJTuX
Favivai▼Jx
DMIOOO9<sttizttuwnotooooh8010730710AC05rr
卓
jjAlUAcfw
LSKJhche
2RCGW.
pMEMdxht
&CU4»Kh«
g匕厚
Q
rommwa*.
&OMIMCAKM
0陋6<一
模拟
DLEngintimeDreamLogic2019-梁天一©tianyilt
:文件(D编瑁回视图M仿真⑻绘制⑼仪器(D窗口地)帮助(LD
:▼一一」Q3▼।[$:
源代码14X
RAM(MEM.RAM)<-PCc5封
0001TWp!於
0002
00038C1O.text
*00040078O7movrO,16
0005021Omova,num
000604adda,rO
0007
00085O5Endless_Loop:
0009AcjinpEndless_Loop
0010
0011.data
00127
0013FFnum:-1
十六踹,c
名称值i
ASR
CSP
IR?
V
<>
源代码2▼4X
ROM(CU.ROM)<-uPC▼Q回
0001;(C)2008-2018:A
0002
0003;Eu0DOjiPAMtl0»j
RIN
0004;
4000500EF3FF9FFpath[pc],ir
0006
0007;ira^o0X0.A1uPC0x0000
000804FFFFFFFFdup31,null
0009
nninoAA°v,v
PC
U1
低电平,PnC加载新的地址,指令转移
这样可以通过右侧都是低电位看出pc值是0x00
按键RC可以控制这两个按下c指令可以执行
一些小计算
JPC
•FCO
•FCl
.*K二B
»FCIO
--------^CI4
PCI<
这里面地址线AO-All12根数据线32根,所以下面数据都有4个字节
在发送时钟上升沿执行指令对应微程序的入口微指令之前,请读者再次
从工具窗口和原理图窗口中确认以下内容:入PC寄存器的值0已经传送到
地址总线ABUS上;
RAM
ABUW
XRAM存储器0地址处的值0x8C已经通过了总线收发器MEM_gate(可
以在“总线收发器〃窗口中查看总线收发器的值和使能状态,双击可迅速在原
理图中定位总线收发器的位置)传送到数据总线DBUS匕
X数据总线上的数据己经到达了IR寄存器输入端,且IR寄存器使能端
EN为低电平,写使能,当下个时钟上升沿到来时,IR寄存器输入端的指令
将被写入IR寄存器中。
X指令字节0x8C的高6位扩展为0x460(该指令对应微程序的入口地
址,指向入口第一条微指令)并传送到uPC寄存器的输入端,uPC寄存器使
能(EN低电平表示使能)。当下一个时钟上升沿到来时,0x460将写入微程
序寄存器uPC中,这样微程序就转移到0x460处执行。
10001100
010001100000
uPC
uPCO
uPC]
ugC2
uPC3
1JPC4
uPC5
uPC6
uPC7
dPC9
uPCIO
uPCll
uPC12
3>PC13
-dPC14
"^JPC15
5.现在,读者可以使用单步时钟发送一个上升沿来触发DM1000执行下一条微指
令了!方法是:在原理图窗口中按卜单步时钟对应的键盘上的C键再抬起,该步
操作产生的时钟上升沿使得微程序寄存器UPC将输入端的地址写入,微指令存储
器ROM于是输出新的微指令,控制处理器电路执行相应的操作。
5.观察DM1000在第•个时钟上升沿触发后进入的状态:IR寄存器的值已经变为
0x8C(在寄存器窗口中由于IR寄存器刚刚发生写操作,所以会用红色高亮显示);
寄存器▼TX总线收发器
十六进制▼十六进制▼。
w
名称值说明名称输出值
ASR_gate
CSP栈顶地址计数器CSP_gate
:一三一•—
FLAGDqate
IR0x8c指令寄嚣
uPC寄存器的值变为0x0460,
▼口X
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国塔式服务器行业应用动态与发展趋势预测报告
- 2025-2030中国唇部护理行业需求规模预测与竞争战略规划报告
- 大班小学生的早晨
- 七年级数学教学工作总结7篇
- 周口师范学院就业指导服务
- 2026年贵州高考历史解析含答案
- 2025年广西壮族自治区百色市八年级地生会考考试题库(附含答案)
- 2025年湖南省怀化市八年级地理生物会考真题试卷(含答案)
- 2025年广东省中山市初二学业水平地理生物会考试卷题库及答案
- 2025年广东省深圳市初二学业水平地生会考试题题库(答案+解析)
- 2026河北省国控商贸集团有限公司招聘备考题库及一套答案详解
- (2026版)医疗保障基金使用监督管理条例实施细则的学习与解读课件
- 挖机租赁合同计时
- 浙江省2024浙江省药品监督管理局所属3家事业单位招聘15人笔试历年参考题库典型考点附带答案详解
- 社会团体内部规章制度
- 2025年国家药品监督管理局药品审评中心考试真题(附答案)
- 国家艾滋病随访指南
- 证人证言(模板)
- 【高二物理(人教版)】静电的防止与利用-课件
- DB32∕T 2975-2016 水运工程建设管理用表
- 危险废弃物处置合同范本
评论
0/150
提交评论