欢迎来到天天文库
浏览记录
ID:6165741
大小:409.00 KB
页数:8页
时间:2018-01-05
《将quartus程序和nios程序同时烧写到fpga的flash中》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、笔者使用的FPGA硬件平台:康芯公司KX3C10F+核心板FPGAEP3C10E144FLASHEPCS16SI16NSDRAMHY57V641620FQuartusII9.1sp2SOPCBuilder9.1sp2NiosIIIDE9.1sp2操作系统Win7旗舰版不同的平台,只是某些步骤的顺序或者软件的界面不一样罢了,笔者也是看着网络中的各种各样资料走过来的,究其本质所有的设置参数都是通用的,好了不多说,开始介绍怎样把Quartus的程序和Nios的程序同时都下载到FLASH中达到掉电不失,
2、上电自动运行。1.首先是创建一个工程,选好器件型号,不多说。(注:工程的路径不要包含中文和空格,同时工程不要创建在桌面后面的flashprogrammer不识别桌面工程)2.新建一个block文件,并立即saveas,文件名不需要改。3.Tools->SOPCBuilder,选好型号并设置CPU的工作时钟(输入时钟)。4.Processor->NiosIIProcessor,创建自己的一个NiosII核。NiosII/e经济型最慢最省空间NiosII/s标准型标准标准NiosII/f快速性最快最
3、费空间(如果选择此类,需将cache关闭)选好类型之后,即可直接finish5.程序运行都需要memory,而笔者使用的为核心板上的外部ram,且一般情况下on_chip_memory的大小太小不足以跑中大型Nios系统。MemoriesandMemoryControllers->SDRAM->SDRAMController,将数据线改为16,其余不变。6.因为我们下载程序的过程是,先在FPGA上烧写一个Nios核,然后通过Nios核将quartus和nios工程一次性烧写到flash中去。所以
4、我们构造的Nios核必然要包含一个CFI控制器。MemoriesandMemoryControllers->Flash->EPCSSerialFlashController,直接finish。7.为了让程序便于调试,我们再添加一个JTAG串口。InterfaceProtocols->Serial->JTAGUART,直接finish。8.当程序断电之后,我们让一排LED灯以二进制形式闪烁,便于我们观察程序上电运行。Peripherals->MicrocontrollerPeripherals->
5、PIO(ParallelI/O),8位输出,finish。9.为系统创建一个ID,用于下载识别。(必要)Peripherals->DebugandPerformance->SystemIDPeripheral,直接finish。10.用户可通过右击->rename对器件进行重命名,其中sysid_0只能命名为sysid。笔者在此只更改了sysid_0->sysid。CreatedbyZinus2013/8/241.设置中断向量。双击cpu将reset向量设置为epcs控制器的地址,而except
6、ion向量设置为sdram控制器的地址。2.让软件自动配置地址和中断号。System->Auto-AssignBaseAddressesSystem->Auto-AssignIRQs3.点击generate,生成Nios核。(等待生成完成、、要去洗手间的,打电话的,吃饭的,喝水的,赶紧去、、、、、)4.双击block文件,调出刚刚生成的Nios核,由于笔者的型号属于CycloneIII,所以会多出下面框框中的引脚。(坑爹的CycloneIII,尼玛其他型号就不会这样,害老子还有自己去配控制器的引
7、脚、、、)CreatedbyZinus2013/8/241.拖出一个PLL,c0做系统时钟,c1做SDRAM的时钟,c1与c0相差75(deg)相位。Inclk0为晶振输入。2.连接c0和clk_0,全选PLL和Nios核,右击->GeneratePinsforSymbolPorts可以双击修改所有引脚的名称,笔者采用默认名称。3.Assignments->Pins,按以下说明配置引脚。Inclk0外部晶振的输入引脚C1SDRAMCLK引脚Reset_n接一个按键即可,注意此引脚为低电平有效da
8、ta0_to_the_epcs_flash_controller_0EPCS的DATA0引脚dclk_from_the_epcs_flash_controller_0EPCS的DCLK引脚ds_MISO_from_the_epcs_flash_controller_0空NCsce_from_the_epcs_flash_controller_0EPCS的nCSO引脚CreatedbyZinus2013/8/24sdo_from_the_epcs_flash_controller_0EPCS的AS
此文档下载收益归作者所有