1.简述
最近购买了一块适合做原型验证FPGA板卡,板卡接口和外设比较丰富,十分适合跑一些小型的SOC工程,比如蜂鸟E203;板卡自带FPGA烧写器和软核CPU的JATG调试器,还有USB接口的UART,这样不用单独购买FPGA下载器、软核CPU调试器,USB串口模块;额外板卡有充足的按键、LED、数码管、拨动开关,以及几十个灵活的可配的管脚,带有2KB的SRAM(或者2GB DDR3),这可谓是接近完美的原型FPGA板卡;当然板卡还有USB、千兆以太网、HDMI常用的高速接口,想单纯的学习FPGA也是够用的;
这里只做移植一些说明,供购买该板卡的粉丝查看,因此详细介绍移植的过程了,详细请看:开源RISC-V处理器(蜂鸟E203)学习(四)移植Hbirdv2,实现Centos下程序编译烧写,并进行C语言仿真
2.所需环境
需要使用我分享的EDA虚拟机:IC_EDA_ALL虚拟机(丰富版)详细说明;
工程下载:微信公众号后台回复 E203V2 可以获得移植的完整工程;
3.工程放置
解压后严格放置在该目录下,这里不说其他方法,避免大家误操作;
4.仿真
直接进入到vsim目录下,这里体现V2版本的优势,不用修改仿真脚本,使用命令参数化选择仿真工具,使用以下命令进行vcs仿真;
make cleanmake installmake compile SIM=vcsmake run_test SIM=vcs
使用以下命令,启动Verdi查看波形;
make wave SIM=vcs
5.FPGA综合
下图为FPGA移植的管脚分配表
注意 :有Sram和DDR两种板卡,这两个板子除了内存不一样板卡资源和FPGA型号一致;上面管脚分配是SRAM的,获取的移植工程也是SRAM的,如果你是DDR板子请修改FPGA时钟约束,管脚号如下,其他不用修改;
进入到fpga目录下,使用以下命令启动vivado,需要手动点击综合生成BIT文件
make install FPGA_NAME=my_a100tmake setup FPGA_NAME=my_a100t
综合后资源情况,A100T资源挺丰富的,E203资源占用不高,还有充足的资源可以做扩展开发;
需要将FPGA下载器设备连接到虚拟机,如图显示则已连接到虚拟机;插入usb时应该会有窗口提示选择吗,没有按如图去手动连接一下;具体的BIT和MCS文件的烧写操作可以看实验室手册,也可以网上搜索,操作不复杂;
烧写FPGA时,这个跳冒需要接外面两个引脚,因为FPGA JATG与CPU的JATG是分时复用的,后面烧写CPU程序时需要切换一下;
效果如图:
6.C程序编译与烧写
进入到hbird-sdk目录下运行以下命令构建环境(每次新入进行编译时都需要使用以下命令构建环境);
source setup.shecho $PATHwhich riscv-nuclei-elf-gcc openocd make rmmake help
进入到 helloword目录,使用ilm模式编译;最后编译成功;
cd application/baremetal/helloworld/make dasm SOC=hbirdv2 BOARD=ddr200t CORE=e203 DOWNLOAD=ilm
烧写前需要将这个跳冒接里面两个引脚;
make upload SOC=hbirdv2 BOARD=ddr200t CORE=e203 DOWNLOAD=ilm
插入串口的USB,和前面一样确保连入虚拟机,新开一个terminal,输入以下命令启动串口界面;
sudo screen /dev/ttyUSB1 115200
按下复位让程序重新跑一下,串口打印 Hello World信息,成功!
7.C仿真
不要清除上步的编译,进入到vsim目录下,打开Makefile,如图修改case,改为我们刚才编译的‘hello world’,保存退出后重新跑仿真;
g Makefile
仿真打印hello world
make cleanmake installmake compile SIM=vcsmake run_test SIM=vcs
由于没有finish,所以需要Ctrl+c强制终止仿真;
8.总结
后续芯王国的开源项目基于该板卡进行,刚好需要购买FPGA学习的可以考虑一下,价格十分美丽,微信或者QQ私聊我发送购买链接;欢迎大家交流,不限于虚拟机,FPGA、IC领域均可!!! 还有马上要推出“CK_RISCV”开源项目,大家莫着急!!!
全部0条评论
快来发表一下你的评论吧 !