原创 1.Nios入门——如何建立一个Nios工程

2011-1-24 03:07 5051 5 5 分类: FPGA/CPLD

a35a4452-32b3-468a-a3c6-5d55255b9bf5.jpg334e9985-a9c1-484d-aec8-136b464249a3.jpg本人买了块艾米电子的实验板,感觉还行吧。到手了现在马上就开始学习Nios II。感觉现在这个挺流行的。所以就学习一下,希望以后能用得上。现在将我学习的点点滴滴都记录下来,方便一个快速查看。


 


废话少说,下面是如何建立一个Nios II的工程


1,首先建立一个Nios_test的文件夹,将实现怎么好的复位模块和锁相环模块加进,这样是为了方便开发。(在addfile哪一步点击addall就行额)其中PLL模块是比较有用的可以实现半频或者倍频。这个可以通过Quartus II配置。具体的配置过程,我这里就不详解了。


 


2,接着选择芯片,我使用的芯片是EP2C8Q208C8.最后就完成项目了。


 


3,点击SOPC标签。输入文件名nios0,选择语言。双击Processor的NiosII processor。然后在Memorise——>flash下双击EPCS项。——>SDRAM双击SDRAM controller。选中Custom项和16bits。


4,配置CPU,双击cpu_0就可以出现3个CPU的选项。默认的是fast项,他也消耗资源最多。我们选择默认。在然后是乘法器设置:Hardware Mutily 默认值。 Reset项:Memory:epcs——flash,offset(开始):默认。 Exception项:Memory:sdram_0,offset(开始):默认。Next,Next,Next,Next,Next直到finish。


5,添加调试设备:选中Interface,Serial,Jtag Uart。双击 finish就行了。最小系统最终完成了。点击System下的Auto Assign Base Address 。yeah配置完成,我们可以看到中断号也完成了。点击file save。


6,点击generate ,编译需要一点时间,看到generation sucess就完成了整个过程。点击关闭。


7,建立一个图形界面。命名与工程名一致。这个就是我们的顶层模块了。将项目的元件拖出来,连接好。添加input 和output,所有的clk连接起来(clock_50)。iRst接VCC。and2与门。编译一下生成


8,连接好就开始分配管脚。这里有个很巧妙的方法是直接导入。


建立text文件,设定


To,                 Location
// 板载50MHz时钟
CLOCK_50,           PIN_23


// 板载按键RST(亦可不做复位用)
Q_KEY,              PIN_129


// SDRAM
SDRAM_ADDR[0],      PIN_14
SDRAM_ADDR[1],      PIN_13
SDRAM_ADDR[2],      PIN_12
SDRAM_ADDR[3],      PIN_11
SDRAM_ADDR[4],      PIN_200
SDRAM_ADDR[5],      PIN_201
SDRAM_ADDR[6],      PIN_203
SDRAM_ADDR[7],      PIN_205
SDRAM_ADDR[8],      PIN_206
SDRAM_ADDR[9],      PIN_207
SDRAM_ADDR[10],     PIN_15
SDRAM_ADDR[11],     PIN_208
SDRAM_BA[0],        PIN_31
SDRAM_BA[1],        PIN_30
SDRAM_CAS_N,        PIN_35
SDRAM_CLK,          PIN_5
SDRAM_CKE,          PIN_4
SDRAM_CS_N,         PIN_33
SDRAM_DQ[0],        PIN_48
SDRAM_DQ[1],        PIN_47
SDRAM_DQ[2],        PIN_46
SDRAM_DQ[3],        PIN_45
SDRAM_DQ[4],        PIN_44
SDRAM_DQ[5],        PIN_43
SDRAM_DQ[6],        PIN_41
SDRAM_DQ[7],        PIN_40
SDRAM_DQ[8],        PIN_8
SDRAM_DQ[9],        PIN_10
SDRAM_DQ[10],       PIN_56
SDRAM_DQ[11],       PIN_57
SDRAM_DQ[12],       PIN_58
SDRAM_DQ[13],       PIN_59
SDRAM_DQ[14],       PIN_60
SDRAM_DQ[15],       PIN_61
SDRAM_DQM[0],       PIN_39
SDRAM_DQM[1],       PIN_6
SDRAM_RAS_N,        PIN_34
SDRAM_WE_N,         PIN_37


这样就可以快速分配管脚了。


点击Assignment->import assignments,导入管脚索引text就OK了。


记住这个txt一定要用英文名字,因为Quartus不支持。分配好就开始编译了。


9,将程序下载到板子上,那么就完成了硬件部分的调试。


 


软件部分设计


10,打开Nios,右击窗口,new->Nios II application and bsp。弹出窗口选中Blank project 。filename选择在nios_test中的nios0.sopcinfo


projectname取 nios_test,点击finish。eclipse运行起来有点慢。


 


11,在nios_test  ,new ,source file .起名为mian.c 选中C sourcefile


输入代码如下:


#include<stdio.h>


int main()
{
  ptrinf("hello Nios II");
  return 0;
}


在然后build project,漫长等待。


12,run as ->Nios II hardware


target connection - > refresh connection .新建一个configure


run就可以下载到板在上看到效果。


这样就搞掂了。


感觉学到不少东西呀。加油。


 


 


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
5
关闭 站长推荐上一条 /3 下一条