Lab3-王轩-Cache实验:独立测试与CPU集成
需积分: 0 81 浏览量
更新于2024-08-05
收藏 437KB PDF 举报
"王轩的Lab3-Cache实验指导,涵盖了Cache的实现与独立测试,以及与CPU的结合和性能测试。实验分为两阶段,第一阶段是Cache的独立测试,第二阶段是与CPU集成并测试benchmark性能,如快速排序和伪矩阵乘法。文档提供了建立Vivado工程的详细步骤,包括添加源代码文件,设置不同阶段的顶层文件,并介绍了如何生成和加载测试程序的指令及数据。"
实验第一阶段主要涉及Cache的实现和独立测试。这一阶段的目的是确保Cache的正确性,测试工作独立于CPU进行。在文档《Lab3-王轩-cache编写指导.docx》中,可以找到更多关于Cache实现的具体指导。
实验第二阶段是将Cache与CPU整合,同时测试benchmark性能。这一阶段的目标不仅是为了验证Cache的正确性,而且为撰写实验报告收集数据。工程中已包含了完整的CPU代码,并处理了Cache miss时的流水线暂停问题。为了测试,提供了快速排序和伪矩阵乘法两个基准程序,帮助学生评估Cache在不同应用场景下的性能。
在Vivado工程的建立过程中,需要遵循以下步骤:
1. 创建新的Vivado工程,并将`./3_CacheLab/CPUSrcCode`和`./3_CacheLab/CacheSrcCode`目录下的所有`.v`和`.sv`文件添加到工程中。
2. 在“DesignSource”部分,将`WBSegReg.v`设置为顶层文件,用于综合,因为关注的是Cache占用的硬件资源。
3. 在“Simulation Source”中,设定`cpu_tb.v`为顶层文件,以便在仿真时同时考虑CPU和Cache。
在进行CPU和Cache的联合测试之前,需要准备指令和数据。对于快速排序的测试,需要执行以下操作:
1. 进入`./3_CacheLab/ASM-Benchmark/generate_inst`目录,使用CMD运行`python asm2verilog.py QuickSort.S InstructionRAM.sv`命令,将汇编代码`QuickSort.S`转换为包含指令流的`InstructionRAM.sv`文件。
2. 将生成的`InstructionRAM.sv`文件内容替换Vivado工程中原有的`InstructionRAM.sv`,以提供快速排序所需的指令。
同样,还需要生成快速排序所需的数据,这通常涉及解析和转换汇编或C代码以生成数据存储器的内容,以便在实验中使用。
这个实验过程旨在让学习者深入理解Cache的工作原理及其对系统性能的影响,同时掌握Vivado工具的使用,包括设计、综合和仿真。通过实际操作,学生将能够更好地理解和优化计算机系统的存储层次结构。
2022-08-08 上传
五月Eliy
- 粉丝: 39
- 资源: 304
最新资源
- NeuMedia:一个简单易用的高级媒体播放器-开源
- 行业分类-设备装置-跨分布式控制系统服务器的实时事件查看.zip
- techsith-redux
- 飞翔的小鸟java源码-java:Java
- 30daysofdev:开发30天的官方网站
- 约会管理系统
- 华为简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- EDGER:创建用于测量恒星流出腔的半张角的算法
- 数据可视化驾驶舱-07.zip
- shop:商家和客户的Payngolinky前端
- 自己常用shader(自连).zip
- 21本搜索书
- snippits
- ndef-tools-for-android:从 code.google.compndef-tools-for-android 自动导出
- mw1utils:mw1utils:Waldorf微波工具-开源
- Andersnormal.us