在本书中,我们将“龙芯CPU设计与体系结构教学实验系统”或“龙芯普及型系统能力培养远程实验平台”作为设计的FPGA验证平台,前者针对本地验证,后者针对远程验证。
“龙芯CPU设计与体系结构教学实验系统”(以下简称“实验箱”)采用本地使用的方式,即用户可以将综合好的设计文件通过JTAG(联合测试工作组)线缆直接下载到实验箱的FPGA中并现场操作实验箱内FPGA开发板上的外设。
打开实验箱,可以看到其内部有一块FPGA开发板(见图2.1中的A)与一系列配件和线缆,包括1个电源适配器(见图2.1中的B)、1根连接FPGA下载适配器的USB线缆(见图2.1中的C)、1根串口线(见图2.1中的D)、1个USB转串口接头(见图2.1中的E)1根USB延长线、(见图2.1中的F)和1根网线(见图2.1中的G)。完成本书第二部分的实践任务 仅需要 使用电源适配器(见图2.1中的B)和FPGA下载适配器的USB线缆(见图2.1中的C)。 建议大家将其余线缆保持在最初的收纳状态,以防损坏、丢失 。
图2.1 实验箱总体视图
当需要将综合好的二进制码流文件下载到实验箱进行调试时,请先将电源适配器的直流接口插入FPGA开发板上的电源插口(见图2.2中的A),并将FPGA下载适配器的USB线缆的方口插入FPGA开发板左侧下方的下载适配器接口中(参考图2.1中C线的连接),将该线缆的USB口连接到调试主机上,随后拨动FPGA开发板上的电源开关(见图2.2中的B),正常情况下可见FPGA开发板上电源指示灯(见图2.2中的C)亮起,表明FPGA开发板已经上电,可以进行后续操作。
FPGA开发板上的核心器件是中央偏左的FPGA芯片(见图2.2中的D)。实验箱选用的是Xilinx公司的一款Airtx-7系列的FPGA芯片,具体型号为XC7A200T-FBG676,其内部逻辑单元数目多,芯片引脚数目多,属于Airtx-7系列中的高端产品。
相比大多数用于嵌入式系统开发的Xilinx FPGA开发板,实验箱中所集成的FPGA开发板针对数字电路、组成原理、体系结构、操作系统等课程的实验教学需求,集成了丰富的外设,这些外设占据了开发板的大部分面积。这里仅介绍与本书实践任务相关的外设接口,包括:双色LED灯(见图2.2中的E)、单色LED灯(见图2.2中的F)、数码管(见图2.2中的G)、FPGA复位按键(见图2.2中的H)、拨码开关(见图2.2中的I)、脉冲开关(见图2.2中的J)和4×4键盘(见图2.2中的K)。读者若对其他接口感兴趣,可以参考附录A的介绍。
图2.2 实验箱FPGA开发板顶视图
根据以往的使用情况,我们总结了一些实验箱的使用建议。
1)每次用完实验箱之后,应将配件、线缆收纳整齐,然后缓慢合上实验箱盖。若感觉合上箱盖的阻力较大,请打开箱盖理顺配件、线缆,再尝试合上箱盖,强行合上箱盖可能会损坏实验设备。
2)实验箱仅在功能仿真验证通过且顺利生成二进制码流文件之后,进行上板调试的时候才需要。在此之前,不需要给实验箱通电并连接到计算机上。
3)使用实验箱时,请将其置于一个平整、稳定且有足够接触面积的地方。切勿将实验箱放在大腿上、书包上、桌子角等地方。
4)下载二进制码流文件前,请连接好电源线和下载线,并确保FPGA开发板已上电。
5)绝对不能用导体(导线、潮湿的手、茶或咖啡等)连接FPGA开发板上任何裸露的引脚、插针。
“龙芯普及型系统能力培养远程实验平台”(以下简称“远程实验平台”)采用远程使用的方式。在该实验平台中,多块FPGA开发板构成的开发板阵列(如图2.3所示)以服务器的形式置于云端,使用者在本地通过网络登录到FPGA服务器上,间接完成对FPGA的操作。
图2.3 远程FPGA实验平台服务器硬件环境
使用者可以在交互模式的网页上看到一个虚拟的FPGA板卡操作界面(如图2.4所示)。这个界面中的图标对应FPGA板卡上的一些简单外设,包括界面上部自左向右的2个数码管、16个单色LED灯,界面下部自左向右的32个拨码开关、1个复位开关、1个单步时钟开关和4个脉冲开关。当使用者在网页上点击操作界面的开关时,该操作将通过网络发送至云端的FPGA服务器,并由服务器转换成对硬件FPGA板卡的实际操作。同时,FPGA板卡上输出的各类信息被服务器接收后,也将通过网络反馈到使用者所看到的网页交互界面上。有关“龙芯普及型系统能力培养远程实验平台”的更多信息,可以查阅该实验平台提供的在线帮助文档。
因为本地和远程两类实验平台在具体操作内容上并无显著差异,所以本书后面有关实践任务的内容将主要针对本地实验平台进行讲解。本书配套的实践任务资料将针对两类实验平台提供不同的发布版本,读者可以根据实际情况自行选择。
图2.4 远程FPGA实验平台网页交互界面