云实验平台使用方法
ThinPAD-Cloud 实验平台支持远程实验功能。实验平台已经和学校的实名认证系统连接在一起。学生使用自己的学号(用户名)和密码就可以通过浏览器登录到远程实验平台,连接到远程实验板,并在板上完成实验。
平台访问地址为:https://lab.cs.tsinghua.edu.cn/thinpad
设计文件上传
打开远程实验平台网站并登录后,网页上会列出可用的实验板及描述信息,学生根据需要选择实验板并上传设计文件。
这里的设计文件必须是 Vivado 工具生成的 .bit 格式的比特流文件。平台提供以下上传设计文件的方法:
一是使用 CI 编译结果:点击"选择 CI 结果"一栏的"显示列表"按钮,在弹出的列表中选择已经由 CI 构建好的任务,即可直接使用 CI 生成的比特流。
二是从本地上传:点击"上传位流"一栏的"Browse..."按钮,选择本地由 Vivado 生成的 .bit 文件。如果选择的文件格式正确,页面会显示文件信息,同时出现可点击的"上传并开始"按钮。文件信息中包含 Vivado 顶层模块名称和编译时间等,用户可据此判断是否选择了正确版本的文件。
三是使用在线 Vivado 产物:在"Vivado 产物"一栏点击"从 Vivado 选择",选择本人在线工程中已保存的 .bit 文件,核对后开始实验。

上图为远程实验板选择和上传设计文件界面。若从本地上传,确定设计文件后点击"上传并开始"按钮,系统将分配实验板,并将设计文件写入实验板上的 FPGA 中;若选择 CI 编译结果,则无需点击"上传并开始"。随后浏览器自动跳转到"工作区域"。
实验平台的基本操作

进入"工作区域"后,可以看到一个接近真实实验板外观的操作界面。界面上的按钮和开关均可以点击,效果等同于直接操作真实的实验板。界面上的数码管和 LED 会显示为点亮和熄灭效果,其状态与真实板上的显示一致。
操作界面左上方对应实验板 HDMI 连接器的位置,有一个按钮,点击后会弹出虚拟显示器窗口。在完成图像显示相关实验时,实验者可以使用该功能远程查看实验板输出的图像。
与本地实验类似,远程实验也需要通过串口和实验平台进行交互、实验调试过程中经常需要更新设计文件、也需要完成对存储器系统的读写操作。这些功能在远程平台都可以方便地实现。
1. 串口访问
操作界面的右侧是串口控制区域。顶部文本框显示平台从串口接收到的数据(即 FPGA 发送的数据)。其下有几个输入控件,功能依次为:
- 换行选择:设置使用输入框发送数据时,是否自动在数据后添加换行符
- 发送数据:待发送数据的输入框,用户输入文本数据,按回车键发送
- 串口选择:选择 CPLD 串口或直连串口
- 波特率:设置通信用的串口波特率
- 校验位:设置校验位为奇校验、偶校验或无校验位
- 数据位:设置数据位长度为 6、7、8 位,通常设为 8
- 停止位:设置停止位长度为 1 或者 2 位,通常设为 1

上述串口参数需要根据实验者的设计或者实验要求来设置,且仅在串口关闭状态下可以更改。
输入控件下方是控制按钮。点击"打开串口"和"关闭串口"按钮可以打开、关闭串口。点"发送"按钮可以将发送数据输入框的内容从串口发送出去,其效果与输入框中按回车一样。点击"终端模式"按钮后,程序将全屏显示串口输入输出内容,并按照 UNIX 终端规范来解释特殊转义字符。进入终端模式后,鼠标点击左上角按钮即可退出。

在"工作区域"的更新设计文件面板上,用户可以替换当前运行的设计文件。文件格式要求和操作方法与首次上传设计文件时相同。
2. 存储器读写
与本地实验板类似,远程实验平台也支持读写板上的 SRAM 和 Flash 存储器。其界面如下所示。需要指出的是,读写 Flash 和 RAM 时,为了避免信号电平冲突,系统会清除实验 FPGA 中的用户设计,并在读写完成后自动重新载入。

上图为远程实验的存储器读写界面。
与本地实验不同的是,远程实验平台增加了一个功能,能够记录程序运行过程中,对 SRAM 访问时的地址序列。这给实验者提供了一个十分实用的调试手段。该功能可以记录 FPGA 对 BaseSRAM 的读写操作,记录内容包括地址、数据及控制信号的波形。通过检查访存序列,学生可以更直观地了解 SRAM 的操作方法,更容易地调试访存相关的错误。

上图为记录 SRAM 访问地址序列的设置和操作界面。访存序列记录功能使用方法非常简单。在上图中设置需要设定记录访存的次数,然后点击开始按钮,系统就开始在后台记录访存了。此时实验者的 FPGA 设计如果按照时序要求读写了 BaseSRAM 芯片,读写的地址、数据等信息就会被记录下来。当记录数量达到设定值时,系统停止记录,并将结果显示在页面上。
实验者可在列表中浏览系统记录下的访存序列,点击每条记录右边的按钮,可以查看该访存的波形。在解决时序问题时,实验者可以参考该波形上的时间标注。由于采样率的限制,时间标注的误差为 4ns。