跳转至

Lab2

2023.3.4 更新 Lab2 附件

2023.3.4 更新“下板验证”小节

本实验内容为使用提供的 IP core 搭建测试框架。

参考附件中的 CSSTE.pdf 连线即可。

报告中需要给出你写出的完整代码。

以下为建议(参考上届助教的建议内容):

  • 作为一个习惯,wire 型变量在驱动它的模块前进行声明,注意宽度,默认 1bit;不进行声明的变量会被认为是 1-bit wire变量。请关注 critical warnings
  • 你可能需要修改附件 VGADisplay.v 中的文件路径,需要和你放置 mem 文件的路径匹配。
    • 如果你使用的是 Windows 系统且下板后 VGA 是“亮起来的黑”,那么最坏情况下你要尝试:/, //, \, \\ 四种路径分隔符。
  • 使用自己生成的 ROM 核、RAM 核,而非提供的固核,以便后续实验使用,生成 ROM RAM 的方式可以参考 Lab0 的课件。
  • 实验课件给出的 Top 原理图中去抖动模块 SAnti_jitter 实例 U9 的输出端口 Key_x[4:0] 行扫描输出信号并没有接出,会造成按键阵列无法正常使用,你需要根据数逻所学对此进行修改。
    • 具体来说,你需要给 Top 模块增加一个 key_x[4:0] 的输出,并在约束文件中给出对应约束。
  • 你可以尝试使用 CS61C 提供的汇编器

处理 VGA

本节内容是 slides 中没有,但是要求在 Lab2 完成的。

报告中需要有你对 VGA 模块做的修改。

在之后的实验中我们将通过屏幕查看寄存器的值等 debug 信号,在本节你需要修改 VGA 接口,接入并显示各类 debug 信号;Lab2 SCPU 使用的是给定的 IP Core,我们不能将需要的信号从 SCPU 中接出到 VGA 模块中,因此本实验仅仅给 debug 信号留出位置,等待我们自己完成 SCPU 时直接接入。

具体来说,你可以阅读附件 IP/Supplementary/VGA/VGA.srcs 中的源代码,理解各部分作用,修改 VGA.vmodule VGA 的端口描述(增加若干 debug 信号输入),将增加的输入接到 VGA 模块的 vga_debugger 实例即可。

下板验证

报告中需要给出下板图片与说明。

在完成以上步骤后,我们需要进行下板验证。程序源码可以在附件 I_mem.pdf 中查看,本次实验不要求自己编写验收代码。