基于紫光同创 FPGA 的远程实验室 - 系统设计报告
约 1337 个字 预计阅读时间 4 分钟
快速预览简介 ¶
我们基于双 FPGA 架构、Web 前后端构建了高集成、可扩展的远程 FPGA 实验平台,支持用户通过 Web 界面远程或线下配置硬件、程序调试、实时监控、数据传输,实现“数字孪生”式实验教学。
双 FPGA 架构:Ctrl_FPGA——管理员控制核心,单芯片集成以太网通信、JTAG 模拟、视频流 DDR3 缓存、电源管理、模拟信号抓取(DSO
AXI4-Full 总线设计:Ctrl_FPGA 硬件设计使用 AXI 总线,支持跨时钟域、乱序执行、重排序、优先级仲裁,主频 Fmax 跨时钟域 120MHz。标准化接口实现模块化设计,支持虚拟外设静态重分配。
以太网 -UDP 协议栈:实现 AXI4 总线与以太网的直接映射,支持千兆高速数据传输。支持 ARP 协议确定主机 MAC,支持永久设定板卡 IP 和 MAC。支持多端口并发,支持时间戳。
MJPEG 视频流编码:Ctrl_FPGA 内置 JPEG 编码器,支持最高 2048x2048 YUV444 编码为 MJPEG 视频流,支持动态调整压缩率,实现 1:20 倍传输视频流时的带宽节省。
全功能 JTAG 模拟:IEEE 1149.1 标准,最高时钟 50MHz,动态降频适配不同场景。后端集成 BSDL 解析,实现边界扫描、IDCODE、UID、状态寄存器获取、Bitstream 下载等功能。
丰富的外设配置:系统配备了 32 位数码管、3 组 EC11 旋转编码器、4x4 矩阵机械键盘、5 路拨码开关、一路用户可使用的 AD、DA 模块、1 块 128 位 WS2812 灯排、1 路 HDMI-IN、1 路 HDMI-OUT、1 块最高 1366x768@60Hz 规格的便携显示屏。所有外设线下 / 线上均可操作 / 监看。对于输入类外设,线上用户可以屏蔽线下操作,使用 Web 界面代替实物;对于输出类外设,线上用户可以实时在 Web 界面观察外设输出结果。
工程化设计:系统在设计时充分考虑实际生产应用。系统工作时仅需一根电源线和网线,支持电源管理,支持 IP 地址、MAC 地址自动分配,支持 EEPROM 断电保存 IP、MAC 等板卡信息,支持 ARP 响应,支持 port 多端口并发,支持比特流校验等安全操作。后端支持多板卡管理,多线程管理,多任务管理。
Web 前后端系统:后端(C# + SQLite)——用户管理、实验管理、提交管理、Bitstream 校验、FPGA 状态监控、安全烧录、实验板网络配置、逻辑分析仪、网络摄像头、HDMI 采集、示波器、Debugger、等配置。前端(Vue3 + TypeScript)——图形化实验界面,支持画布自定义、文档查阅、实时信号可视化。
完善的实验代码和文档:目前已经完成 6 个基础实验和 5 个进阶实验以及 1 个基于 SD 卡的 ISP 处理平台的设计,每个实验配备完善的实验文档和 rtl 代码,为了方便用户使用,配备工程文件和仿真处理文件,方便用户使用和仿真。
实验系统的功能清单和实现方式如下表所示:
| 基础和拓展功能 | 实现 | 说明 |
|---|---|---|
| 基础实验项目 | ✔ | 基础 -01- 流水灯 基础 -02- 按键 基础 -03- 数码管 基础 -04- 矩阵键盘 基础 -05- 呼吸灯 基础 -06-HDMI 显示 |
| 高阶实验项目 | ✔ | 高阶 -11- 密码锁 高阶 -12-sfp 通信 高阶 -13- 频率计 |
| 远程下载 | ✔ | 以太网 -FPGA-Jtag 方案 |
| 远程固化 | ✔ | 以太网 -FPGA-spi 方案 |
| 远程调试 | ✔ | 自制 Debugger 核例化、抓取和调试已实现 Web 前后端正在适配 Debugger 功能 |
| 远程示波器 | ✔ | 线下可通过 HDMI 查看波形 线上 Web 端可实时采集波形 |
| 远程信号发生器 | ✔ | 支持四路波形暂存 支持频率相位调节 Web 可视化调节界面 支持输入函数表达式 支持 dat 文件上传 |
| 数字视频摄像头 | ✔ | 后端处理为 Http 视频流,实现网络摄像头功能 支持自动对焦 |
| 远程逻辑分析仪 | ✔ | 支持 8 路采集、自定义深度、各类触发条件 |
| 数字孪生 | ✔ | Jtag 边界扫描捕获低频信号,部分硬件经过特殊设计,可通过以太网远程输出激励 |
| 远程登录及管理 | ✔ | SQLite 数据库管理 |
| 其他功能 | 说明 | |
| - | - | |
| 多板卡资源分配 | 后端数据库可注册多套板卡,并为每套系统分配唯一 ID | |
| 断电记忆 | 通过 EEPROM 为每套系统分配 IP、MAC,断电保存 | |
| Bootloader | 板卡上电后自动读取固化信息并装载,随后进入工作模式 | |
| 管理员模式 | 板卡处于管理员模式下时允许更多底层操作 | |
| HDMI 采集 | ||
| HDMI 推流 | ||
| 实验管理、提交 |