搜索
bottom↓
回复: 2

关于FPGA中flash的问题!

[复制链接]

出0入0汤圆

发表于 2012-1-7 22:13:36 | 显示全部楼层 |阅读模式
这个问题困扰了我好久,直到现在也不确定是不是这样子的,以下是我在《Nios设计从入门到精通》中找到的答案,如果不对还希望大侠们指正。
  以前我一直将fpga的硬件配置文件和Nios软件文件都烧到并行Nor flash中,希望fpga上电后,像烧到EPCS中一样,从FLASH自动运行,但是从来没有成功过,在论坛上也找不到相应的答案,有的说是软件版本问题,我都换了n个了,都没有成功,下图是我在其中摘出的图片:

(原文件名:配置方案.JPG)
也就是说,如果想实现上面的自启动,就必须要一块且协处理器,否则正确的处理应该是硬件配置文件放在EPCS中,软件工程放在FLASH中。见下图

(原文件名:2.JPG)
这样的话在没有协处理器的状况下,想使用flash就必须在构建core时,同时添加flash和epcs,否则不可能自启动。如果core中只有SDRAM和flash,就算下载进去,硬件配置文件烧到了sdram中,软件烧到了FLASH中,一断电,当然不可能自启动,这也就解释了为什么论坛中的网友为什么掉电后,不能自动重启。
以上是我根据这篇文档找到的答案,至于为什么,还在继续研究当中,如果有错误,希望与人交流。文档附上
点击此处下载 ourdev_711155XCAE6M.pdf(文件大小:2.94M) (原文件名:NIOS设计从入门到精通.pdf)

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2012-1-7 22:37:02 | 显示全部楼层
引用的文章基本上是正确的,但是你的理解确实有几个地方都不对。

首先,我认为第一种方式的缺点并不是EPCS器件容量小,价格高昂。64Mbits的串行存储器件也是有的,价格也不贵。使用这种方式时,一般都是把程序存储在片内RAM中,所以之所以限定了容量,主要是由于低成本的FPGA片内RAM大小不够导致。但是我还是喜欢用这种方式,我认为一般的nios工程,16k代码足以。
如果你要用操作系统,我不建议使用nios。

其次,使用Nor flash,确实需要一个控制器,这只是拿最便宜的CPLD做的一个控制器,并不是啥高深的协处理器,因为FPGA的并口是从,FLASH也是从,需要CPLD做双主转换一下而已。当然,也有更先进的做法,就是在EPCS中放置一个引导代码,FPGA启动后,自己实现对flash的读写接口,再把代码导入sram中执行,这样,就不再需要CPLD了。

多重配置,串行EPCS器件也可以实现,要在CYCLONE3 及以后版本中才行,你这本书基本上是对的,但是有些过时了。

出0入0汤圆

 楼主| 发表于 2012-1-7 22:51:28 | 显示全部楼层
回复【1楼】smsalarm
-----------------------------------------------------------------------

   受教了,至于在EPCS中放一段代码来引导FPGA对flash的读写,这样应该可以行的通,不知您有没有相应的例子程序什么的,让我和其他网友来研究一下呢。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 11:25

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表