【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验

#沐朝露兮以自华,觅大道兮以求成

我又滚过来了,研究了20多天RISCV,结果最后因为硬件问题导致无法在比赛中使用RISCV CPU,虽然已经临近比赛后期了,非常的崩溃,但是也没有什么办法。唉,一切不过是从头再来罢了。(写写博客舒缓我心中苦闷)

————————————————进入正文的分割线————————————————

今天介绍一下如何利用 Robei EDA 生成文件,导入vivado中,综合下载到开发板里。拿我一个PWM控制舵机的代码为例。

Robei EDA设置

假设代码模块(model文件)经过仿真验证,已经封装好了。
如图
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第1张图片
把所有的模块封装好了,那么,就到了生成管脚约束文件(xdc文件)的时候了。
在菜单栏,选择Setting—FPGA,这个选项是针对FPGA的品牌,生成对应文件的设置。

【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第2张图片
目前只支持Xilinx 和 Altera 这两家公司,希望 Robe i能够尽快把适配国产FPGA开发环境提上日程。比如上海安路的TD,还有广东高云的
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第3张图片
选择好后,点击新建文件,在文件类型那里,选择constrain文件,这个就是管脚约束的设置。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第4张图片
生成文件后保存。初始情况就是这样
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第5张图片
像设置激励文件一样,把模块和管脚拖上去。这里要强调,由于我key的数据设置是4,所在管脚上,要同样给四个IO,连接的时候把他们连在一起就可以了。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第6张图片
连线,如图。线的顺序就代表了IO口对应数组的值。如果对顺序有所改动,直接在属性上改动就可以了。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第7张图片
然后,吧IO口的名称,依照着自己用的开发板,把相应外设的管脚位置名称,一一对应的写在上面。我的开发板就是这么对应的。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第8张图片
设置成功后,编译文件,如果看到编译成功。就说明约束文件已经生成了。在Codeview里可以看到它的约束文件。

在这里插入图片描述
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第9张图片
这个时候,回到保存这个文件的文件夹里,是能够看到Robei生成的.v文件和.xdc文件。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第10张图片
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第11张图片
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第12张图片
这个时候,Robei EDA就完成了它的使命,光荣的整好了我们的代码,下面可以交给Vivado了。

Vivado 部分

新建一个Project ,在添加设计文件的时候,将Robei 生成的.v文件放进去。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第13张图片
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第14张图片
在添加约束文件的时候,将xdc文件导入进去。
【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第15张图片
芯片选型根据自己的开发板来设置,我就不放过程了。不会的可以在CSDN上搜索,如何新建Vivado的Project文件。

新建好Project后,可以直接进行综合,也就是 Run implementation。成功之后就可以生成比特流(
Bitstream)文件了。【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验_第16张图片
生成后,可以直接Program Device,也就是下载程序。

因为是一个舵机控制,照片也看不出效果,这里就不放出来了。

——————————————结束分割线————————————————————————

没有成功烧写RISCV代码一度让我非常崩溃,我甚至因为这个事情怒及攻心,差点发烧被隔离。但是结果也不是很好,我得了急性咽喉炎,嗓子哑了,一个星期一句话都说不出来。我很崩溃,电赛失利都没有那么崩溃,但是也没有办法,总不能弃赛不做了吧。所以只能又把自己逼入绝境,
唉,苦涩才是正常的生活啊。

你可能感兴趣的:(Robei,FPGA)