FPGA Player

好记性不如烂笔头

导航

易灵思Ti60F100 Flash处理方案

转载自:Ti60F100 Flash处理方案 (qq.com)

Ti60F100内部合封一片flash。在使用过程中有很多人遇到过这样或者那样的问题,比如RISCV 不能读写flash,程序无法加载。在这里简单总结下。

 

(1)使用SPI Flash block。

在interface中选择SPIFlash。右键添加spiflash block.在SPI Flash Resource中选择SPI_FLASH0.

图片这里需要注意的是Ti60F100通过RISCV 直接操作flash会需要在flash的接口上打一拍。否则会读写失败。请注意下图对哪些信号打拍。

图片

 

(2)不使用SPI flash Block而直接添加flash的GPIO,如下图。

图片

1、因为内部flash与外部GPIO相连。所以也可以不使能SPI flash Block,而直接在interface中添加IO,并使能寄存器。直接把内部flash当成外部flash使用。

2、并把路径

X:\Efinity\2022.1\pt\db\die\block_models\spi_flash_not_used.xml

下面WP_N和HOLD_N的state参数修改成上拉。input with weak pullup

图片

经过以上操作就可以正常使用。

(3)硬件设计注意上拉。

另外外部CCK如果在加载过程受影响,可能会出现加载失败、JTAG受SPI影响不能进入UserMode,所以要把flash的SSN,CCK,CDI0和CDI1都进行上拉。

注意CDI2/3没有做为IO引到管脚上,如果没有例化interface里的flash block ,程序加载完成后这2个脚默认是下拉的。

 

图片

==========================

图片

 

posted on 2023-02-01 19:11  中国的孩子  阅读(122)  评论(0编辑  收藏  举报