系统结构 第三、四次实验

系统结构 第三、四次实验

ID:37783025

大小:4.42 MB

页数:12页

时间:2019-05-31

系统结构 第三、四次实验_第1页
系统结构 第三、四次实验_第2页
系统结构 第三、四次实验_第3页
系统结构 第三、四次实验_第4页
系统结构 第三、四次实验_第5页
资源描述:

《系统结构 第三、四次实验》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验三环境熟悉与基本CPU设计一、实验目的(1)熟悉实验台运行环境与调试方法,掌握基本CPU的设计,为自行设计多级流水CPU打好基础。(2)熟练掌握HDL硬件描述语言,对CPU的各个功能模块进行代码编写,并学会将各个功能部分组织连接成一个完整CPU体系结构,学会利用硬件设计工具软件QuartusⅡ对程序进行仿真和调试。并熟练掌握FPGA-CPU在“TEC-CA开放式CPU实验教学系统”上的调试方法。(3)学习设计一个包括指令系统、运算器、控制器和寄存器组等的完整的CPU。设计的CPU具有复位功能

2、,以便使用TEC-CA实验台上的“CPU复位”按钮对CPU复位,使CPU处于调试前的初始状态。CPU复位脉冲按负脉冲设计。(4)掌握调试软件Debugcontroller的使用方法,学习编写指令系统的规则文件。二、实验内容学习附录ATEC-CA开放式CPU实验教学系统介绍,了解实验台的组成与结构,熟悉运行环境。学习基本CPU的设计,为了配合CPU的调试,需要学习软件Debugcontroller的使用,编写指令系统的规则文件以及调试方法,调试软件Debugcontroller详细介绍见附录B。基

3、本CPU的设计完成从指令系统到CPU的设计。这里提供3个测试程序,通过运行测试程序进行正确性评定。三、实验步骤与现象1.Testl(EXl.TXT):8位×8位乘法运算第1个测试程序,初始值R0=25,R1=6。相乘结果(150)存放在R2中。源代码见EXl.txt。(1)在QuartusⅡ下将cpuO.sof下载到FPGA中。(2)打开Debugcontroller,执行File→RuleOpen命令,打开规则文件cpu.txt。(3)在Debugcontroller中,执行File→Code

4、Open命令,打开汇编文件EXl.txt。(4)在Debugcontr01ler中,执行Build→CompileCode命令,将EXl.txt编译得到目标二进制文件,显示在机器代码窗口中。(5)在Debugcontroller中,执行Build→UploadBIN命令,将目标二进制代码写入实验台上存储器中。为了检查是否正确写入,执行Build→DownloadRAM命令,将存储器中代码读回(从0开始,本例中写入18个words,所以从0~17),以做比较。(6)在Debugcontroller

5、中,利用Debug菜单中的命令调试程序。注意,CPU下载一次后不必再下载,除非重启实验台!但是每次执行新程序前要按实验台上的CPU复位按钮,使FPGA-CPU复位,然后执行Debug→Reset命令,使Debugcontroller处于开始调试状态。实验截图:执行前:执行后:2.Test2(EX2.TXT):内存读写测试第2个测试程序:将32~0存到0x11F~0x100,将16~1取出,存到0x020F~0x0200,源代码见EX2.txt。按照第1个测试程序的实验步骤,对程序进行调试,不过要

6、注意:①不需要对cpuO.sol重新下载。②不需要重新打开规则文件cpu.txt。③在将测试文件EX2.txt编译并下载到实验台上的存储器中后,要首先按实验台上的CPU复位按钮,使FPGA-CPU复位,然后执行Debugcontroller中的Debug→Reset命令,使Debugcontroller处于开始调试状态。实验截图:执行前:执行后:3.Test3(EX3.TXT):冒泡排序执行前:第3个测试程序:0x00FF~0x0104存储532164,升序排序后存储在Ox01FF~0x0204

7、。参照第2个测试程序的实验步骤,对程序进行调试。观察内存地址的内容。OxOOFF~0x0104是532164,0x01FF~0x0204存储是123456。执行后:四.测试程序在CPU上运行的测试程序有3个,设计的CPU能够运行这些程序(或者性能相当的程序)是基本要求,指令格式自定。T1.txt测试基本的ALU指令,跳转指令;T2.txt测试内存读写,做数据缓存的CPU可能需要在程序后面添加若干指令,以保证缓存内的内容被写回到内存中;T3.txt两者兼有。T1.txt;8bitX8bit;;测试

8、指令:置立即数,AND,条件跳转,左移,右移;MAIN:SETr0,25;被乘数SETrl,6;乘数SETr2,0;结果SETr3,8;循环次数L00P:SETr4,1ANDr4.r1BZr4,T1;r4—0时往前跳转T1标号处ADDr2,r0;否则加到部分积T1:SHLr0;逻辑左移一位SHRr1;逻辑右移一位DECr3;r3减1BNZr3,L00PT2:BMAIN;结束,返回重新开始T2.txt;memorycopy;内存读写测试MAIN:SETr0,0xff;源地址SETrl,0xlff;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。