前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >蜂鸟e203,芯来n201处理器在FPGA上移植总结

蜂鸟e203,芯来n201处理器在FPGA上移植总结

作者头像
数字IC小站
发布2020-06-30 16:23:47
1.2K0
发布2020-06-30 16:23:47
举报
文章被收录于专栏:数字IC小站数字IC小站

本处理器本来是基于芯来科技自定制的FPGA上实现的,本次通过把其移植到ARTY和GENESYS2板子上,过程中走了一些弯路,因此总结一下:

1.处理器中有部分代码是只有通过FPGA才能实现的,因此其在代码中添加了ifdef。

2.首先把src中的system.org进行修改,使其满足板子的配置,例如芯来自定制的FPGA板子含有两个晶振时钟源,而一般的板子上都只有一个时钟源,因此需要修改。

2.1在ARTY板子上含有一个100MHz的时钟源,因此使用普通的clocking wizard IP,使其输入为100MHz,输出为一个8.388MHz,一个为16MHz。然后再利用时钟分频模块,把其分频为32.768KHz。约束文件中需要创建时钟,写上时钟频率,以及占空等。在ARTY板上不存在特定的RESET按钮,但是芯来自定制的板子是含有的,因此我们需要使用普通的按钮替代,请注意:普通的按钮一般是按下为高电平,不操作时为低电平,因此需要在system.org文件中对该引脚信号使用assign语句进行取反操作,否则该soc一直处于置位状态。

2.2在GENESYS2板子上含有一个300MHz的差分输入时钟源,因此使用的clocking wizard IP如下,此时在约束文件中并不需要写有关时钟配置的有关信息,只需要把引脚接上即可。本板子上含有一个cpu_reset按钮,可以使用,另外一个信号只能使用普通按钮,因此该按钮信号也得进行取反操作。

3.修改约束文件

3.1对于ARTY文件,我们只需要按照原理图把对应的引脚引到本板子上即可,因为基本是一样的,没什么特别点,只是有个信号qspi_sck在通用的xdc文件中并没有标明,因此我们需要去ARTY的原理图中找到该引脚,把信号固定到该port。如下所示,并且给与其一个50MHz的时钟频率。对于qspi的六个信号一定要配置好,因为它关乎是否能调用FLASHXIP模式,如果配置错误,会导致jtag调试时找不到FLASH,因此是工作不起来的,其中对于qspi_dq信号需要添加IO BUF和上拉操作,如下所示:

3.2对于GENESYS2板子的约束文件,其他GPIO信号我们还是和芯来自定制的板子差不多,我主要放在了PMOD上,但是对于qspi_sck一定要注意,只有ARTY的板子是存在引脚的,因此前面可以从原理图中找出引脚直接配置。但是,对于其他板子,都是不存在引脚的,这是特别要注意的!

因此在本板子上需要使用ATARTUPE2原语进行配置,因此qspi_sck不需要接出,把output wire qspi_sck给注释掉,大概原理图如下:

添加如下模块:

为了使其产生50MHz的时钟频率,需要在引脚文件中设置如下命令(第三条就是针对时钟频率的):

其他配置如下(不要乱写,qspi_sck引脚,所以我注释掉了):

4.脚本修改

为了能在vivado中跑起来,这两块板子都不是Xilinx自己家的,因此需要下载板级文件放到vivado的安装目录下。

特别是对于GENESYS2这块板子,放进去以后大概率跑起来还会存在licence问题,别着急,把以前的licence再次激活一下即可。

对于在外层,即FPGA目录下的Makefile,我们需要修改如下为我们需要跑的文件夹目录:

这个对于ARTY和GENESYS2的区别不大,然后把hbird中的script全部复制到genesys中的script中,因为大部分是一样的,不需要修改,只在board.tcl中修改如下:

在IP.tcl中修改如下:

因为本次是针对差分时钟输入,如果是ARTY则不需要修改,其他同理

对于sfgmem.tcl文件,因为GENEYS2的flash大小为256Mb,即32MB,因此修改如下:

5.mcs配置修改

ARTY和芯来自定制的板级中flash是同一型号,因此不需要修改,即n25q128-3.3vx1x2x4。

GENESYS2的flash是一个新的型号,其名称为S25FL256S后面***,其他一样。

6.调试器配置

大多数情况和指导手册一致,但是所在组不一样,如下:

因此,使用 sudo chgrp -R plugdev /dev/ttyUSB* 命令修改如下:

然后更改权限为664,如下:

其他和手册一致,最终结果如下:

End

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-02-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数字IC小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档