在嵌入式系统中,Flash是最常用组件。在Nios IDE开发环境中,使用符合CFI标准的Flash也是非常方便的。在这里,我粗略得介绍一下nios 中flash的使用;更加详细的帮助信息请您参考Altera公司提供的文档。如果本文能对您有一点点帮助,我都会感到非常高兴。
1。准备工作:
在使用Flash之前,有几个准备工作要做:
1。开发板上至少要有一片符合CFI标准的Flash。
2。设计好对应目标板的Flash编程期(Flash Programmer)。
下面我以本站设计的开发板ezNiosDKC6B为目标板,来介绍如何使用Flash,你可以举一反三,在自己的系统中使用Flash.
2。为SOPC系统中添加Flash接口:
1。 双击在Memory中的Flash Memory(Common Flash Interface),即可为系统添加Flash接口。
2。 对于ezNiosDK的用户,Address Width可以选择 20 Bits,Data Width 可以选择 16 Bits,这样总的容量是2M Bytes
3。Timing选项卡中,可以如下添写:
完成后,选择Finish,即可为系统添加Flash接口。4。增加三态总线桥。Flash 接口必须通过三态总线桥接到实际的芯片上。双击Bridges下的Avalon Tri-State Bridge,请按照下图设置,为系统增加三态总线桥。
5。为Flash接口分配引脚。请参考我之前的文章:Step By Step创建标准(Standard) niosII系统 注意,如果Data Width是16Bits,那么tri_state_bridge_0_address[0]不必接到Flash上,tri_state_bridge_0_address[1]对应Flash的A[0],tri_state_bridge_0_address[2]对应Flash的A[1],以此类推。3。在Nios IDE中使用Flash编程器:3-1。配置Component/Kit Library Search Path。目的是在系统中增加本站设计的Flash编程器目录,请把光盘CD1上的/Example/ezNiosC6 拷贝到您的电脑的硬盘上。比如,我把他放在h:/DB2005/project/niosDK/CD/CD1/Example/中,然后在Altera SOPC Builder中,选择File -> SOPC Builder Setup,增加如下搜索路径:+h:/DB2005/project/niosDK/CD/CD1/Example/ezNiosC6
ezNiosC3的用户如下操作:请把光盘CD1上的/Example/ezNiosC3 拷贝到您的电脑的硬盘上。比如,我把他放在h:/DB2005/project/niosDK/CD/CD1/Example/中,然后在Altera SOPC Builder中,选择File -> SOPC Builder Setup,增加如下搜索路径:+h:/DB2005/project/niosDK/CD/CD1/Example/ezNiosC3
并顺便检察Modelsim Directory是否正确:比如,我的是 g:/w2k/eda/fpga/altera/modeltech_6.0/win32
然后,你需要关闭Altera SOPC Builder,然后再重新通过QuartusII的Tools ->SOPC Builder来开启SOPC Builder,这样上述修改才能生效。
常见错误:有许多朋友往往在设置路径的时候,犯与下图类似的错误。错误在于第一个路径前面是不需要 + 号的!要去掉第一个路径前面的 + 号
3-2:使用Flash编程器。我使用项目:ezC6Be_StdF50_zip_filesystem_0(在CD1\Example\ezNiosC6B\ezC6Be_StdF50\software\ezC6Be_StdF50_zip_filesystem_0下,请使用Nios IDE中的File-Import来导入这个项目),来说明如何使用Flash编程器。 首先为系统上电,并连接好下载电缆。 选择Tools -> Flash Programmer,启动 Flash 编程器 选择New,可以看到增加了一个名为 ezC6Be_StdF50_zip_filesystem_0 programmer的flash 编程器
系统默认在Program software project into flash memory前,然后选择Apply,在选择Program Flash,就启动了Flash 编程器!
(未完待续)
用户82558 2008-4-3 10:12