10分钟学会NiosII
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NiosII软处理器快速入门-10分钟学会NiosII
下面我们就设计一个最简单的NiosII系统,使用NiosII去控制一个LED灯,通过这个例子我们可以了解整个介绍NiosII的设计流程
第一节:EDA软件的安装。
安装QuartusII
安装NiosII IDE 用于软件开发
安装ModelSim6.0。用于系统仿真
第二节:建立niosII系统。
1:建立项目。
建立一个目录,比如H:\DB2005\project\niosDK\Example\NiosSmall
启动QuartusII4.2软件。
在H:\DB2005\project\niosDK\Example\NiosSmall下建立一个name为Setup.tcl的file,其内容如下:
#Setup.tcl
# Setup pin setting
set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS OUTPUT DRIVING GROUND"
set_global_assignment -name ENABLE_INIT_DONE_OUTPUT OFF
set_location_assignment PIN_16 -to clk
set_location_assignment PIN_37 -to led\[0\]
set_location_assignment PIN_39 -to led\[1\]
set_location_assignment PIN_1 -to led\[2\]
set_location_assignment PIN_41 -to led\[3\]
set_location_assignment PIN_42 -to led\[4\]
set_location_assignment PIN_49 -to led\[5\]
set_location_assignment PIN_50 -to led\[6\]
set_location_assignment PIN_51 -to led\[7\]
然后打开Tools -> Tcl Scripts,选中刚才编辑的Script文件:Setup,并点击Run
2:生成一个可调试的nios 最小系统
选择 Tools -> SopcBuilder,启动Altera SOPC Builder
启动Altera SOPC Builder后,SOPC Builder会立刻弹出对话框
启动Altera SOPC Builder后,SOPC Builder会立刻弹出对话框
填入System Name,比如niosII_e;HDL Language ,比如选择verilog,如下图:
选择Board Target ,比如,我选择Unspecified Board;选择Target Device Family,比如,我选择Cyclone;
填入Clock,比如,我填入22.1184
如下图:
添加Nios II到项目中:
双击 Nios II Processor -Altera Corporation,会弹出Altera niosII 对话框,
在NiosII core配置选项中,点击Nios II/e区域,选择Nios II/e,如下图。然后Next,进入下一步。
在JTAG Debug Module配置选项中,选择Level 1,如下图。然后Next,进入下一步。
在Custom Instructions配置选项中,我由于无需增加任何定制指令,所以为空,如下图:
最后选择Finish,你的项目中会增加一个niosII 处理器,名字为cpu_0,为了简便起见,我没有将它改名。你可以依照你自己的喜好,为该处理器取个名字。如下图:
然后双击On-Chip Memory(RAM or ROM),(在Avalon Modules -> Memory -> 下),为系统添加RAM.
Memory Type选择RAM;Data Width选择32bits,Total Memory Size 可以选择2K bytes,然后选择Finish确认。
如下图,系统中会添加name 为onchip_memory_0的ram,为了简便起见,我没有将它改名。你可以依照你自己的喜好,为其取个名字。
之后,双击PIO(在Parallel I/O)(在Avalon Modules -> Other 下),为系统添加输出接口。
Width 选择8 bits,然后点击 Finish如下图
如下图,系统中会添加name 为pio_0的PIO,为了简便起见,我没有将它改名。你可以依照你自己的喜好,为其取个名字。
然后,选择System ->Auto-Assign Base Addresses,让系统自动分配基地址。
如下图:
然后,选择Sysetm->Auto-Assign IRQs,让系统自动分配中断。如下图:
点击Nios II More "cpu_0" settings选项卡,进行处理器设定。
在该例中,无需做任何更改;Reset Address、Exceptiong Address、Break Location默认值如下图所示
点击System Generation选项卡,进行最后的设定并生成系统。
选中HDL.Generate system module logic in Verilog,如果需要仿真,也请选
中Simulation.Create ModelSim(tm) project files然后点击Generate,进行系统生成的任务。如下图:
然后,就是漫长的等待,你可以悠闲得喝一杯咖啡(因为等待的时间还是蛮长的,比如我,要等近10分钟)。一般没有问题的话,可以看到系统提示:SUCCESS: SYSTEM GENERATION COMPLETED.如果看到此信息,恭喜恭喜,系统被正确生成了。如果失败,请返回并检查、修改!
如下图: