关键词:
远程实验
计算机组成原理
FPGA
Docker
摘要:
研发远程实验平台的动因源于本文作者为解决本科实验教学工作中的困境,在设备台套数不足及排课资源有限的条件下需要完成课时倍增的实验教学任务。本文作者有多个远程实验系统的开发、部署及运维经验。本文分析两个远程实验案例的开发及其技术演进过程后,提出了如下主要设计思路:以FPGA在线编程为核心,以虚拟化云服务为场景,以虚实结合为导向,实现计算机组成原理实验的云服务化。根据这个设计思路,本文展开计算机组成原理远程实验平台的研究开发工作,主要内容包括:(1)针对远程在线实验及虚实结合的实验模式的要求,选择合适的FPGA芯片及电路设计方案,设计并实现以FPGA为核心的计算机组成原理实验装置,该装置能在远程控制的模式下进行在线编程和调试。(2)设计并实现基于高性能ARM SOC核心板的嵌入式远程控制装置,开发设计了基于嵌入式Linux的远程控制服务进程和FPGA在线编程代理进程。通过该装置,实现了对基于FPGA的计算机组成原理实验装置的远程在线编程和调试。(3)研究并搭建基于K8S(Kubernetes)的容器(Dockers)管理平台,定制EDA开发环境(Quartus、Multisim)的容器镜像,实现免安装的EDA开发云服务支持,使学生可以在不搭建任何开发环境情况下就可以进行FPGA的VHDL编程开发及测试。(4)设计并实现远程实验服务系统:后台服务开发采用Golang语言,前端程序开发采用Flutter,数据库采用Mongo DB。系统包括实验管理服务、远程访问服务、远程调试服务以及实验数据存储等4个核心功能模块,能为用户提供远程实验访问接口和实验交互。为了验证远程实验平台的实效性,本文部署了平台测试环境,并选用一个8位模型计算机的综合设计实验进行验证,验证工作取得圆满成功。本文设计开发的研发远程实验平台的实用价值及创新之处如下:(1)通过远程实验平台可以用较低的成本解决设备台套数不足及排课资源有限的困境。(2)进行了实验装置小型化设计,即平台可以作为便携设备单机来使用,也可以作为云端资源来使用,便于分布部署实施。(3)实验装置以FPGA为核心,除了可以完成计算机组成原理实验外,还可以应用于数字逻辑、接口等硬件类实验课程。