收藏 分享(赏)

NiosII软处理器快速入门- 10分钟学会NiosIInew.docx

上传人:dzzj200808 文档编号:2637015 上传时间:2018-09-24 格式:DOCX 页数:42 大小:748.68KB
下载 相关 举报
NiosII软处理器快速入门- 10分钟学会NiosIInew.docx_第1页
第1页 / 共42页
NiosII软处理器快速入门- 10分钟学会NiosIInew.docx_第2页
第2页 / 共42页
NiosII软处理器快速入门- 10分钟学会NiosIInew.docx_第3页
第3页 / 共42页
NiosII软处理器快速入门- 10分钟学会NiosIInew.docx_第4页
第4页 / 共42页
NiosII软处理器快速入门- 10分钟学会NiosIInew.docx_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、NiosII 软处理器快速入门 10 分钟学会 NiosIINios 简单介绍: Nios II 是一个用户可配置的通用 RISC 嵌入式处理器。在这儿,我引用了 Altera 公司关于 NiosII 的官方介绍: Altera 推出的 Nios? II 系列嵌入式处理器扩展了目前世界上最流行的软核嵌入式处理器的性能,把 Nios II 嵌入到 Altera 的所有 FPGA 中,例如 StratixII、Stratix、CycloneII,Cyclone、APEX,ACEX和 HardCopy 系列器件中,用户可以获得超过 200 DMIPS 的性能,用户可以从三种处理器以及超过 60 个的

2、IP 核中选择所需要的,Nios II 系统为用户提供了最基本的多功能性,设计师可以以此来创建一个最适合他们需求的嵌入式系统。 Nios II 处理器的优点和特性 使用 Nios II 处理器的用户可以根据他们的需要来调整嵌入式系统的特性、性能以及成本,快速使得产品推向市场,扩展产品的生命周期,并且避免处理器的更新换代。 提高系统性能 * 一系列的处理器核可供选择,其中包括了超过 200 DMIPS 性能的核 * 实现任何数量的处理器或将不同的处理器核组和在一起 * 增加了已有的处理器,在 FPGA 中添加一个或更多的 Nios II 软核处理器 更低的系统成本 * 通过将处理器、外设、存储器

3、和 I/O 接口集成到一个单一的 FPGA 中,从而降低了系统成本、复杂性和功耗 * 通过将 Nios II 处理器嵌入到低成本的 FPGA 中只需花费 35 美分或者更低(编者:对大多数用户而言,NiosII 所占逻辑资源的成本大约是 1020 元人民币,具体取决于所选 FPGA 的类型和 NiosII 的配置)应对产品的生命周期 * 提供易用的设计工具从而快速将产品推向市场。 * 提供永久的,免费的许可从而使基于 Nios II 处理器的产品避免了处理器的更新换代而带来的损失。 功能强大、易用的开发工具 * 通过使用 Nios II 集成开发环境(IDE),从而加速了软件的开发 * 利用

4、Altera 的强大的 SOPC Builder 系统开发工具和 Quartus II 设计软件可以在几分钟内设计一个系统 使用完全功能的开发包 * 使用易用的 Nios II 开发包开始一个设计 * 使用易用的 Nios II 开发包开始设计 * 可以选择具有低成本特性的 Cyclone FPGA 开发套件,或高性能的 Stratix FPGA 开发套件 稍微了解一下 NiosII 后,我们就来开始设计、应用它吧! 下面我们就设计一个最简单的 NiosII 系统,使用 NiosII 去控制一个 LED 灯,通过这个例子我们可以了解整个介绍 NiosII 的设计流程第一节:EDA 软件的安装。

5、 许多朋友在配置 EDA 环境的时候,就遇到了更多问题,我现在总结一下: 1。安装 QuartusII4.2 2。安装 NiosII IDE 用于软件开发3。安装 ModelSim6.0。 用于系统仿真如下是 ModelSim 下的安装说明: 1.Install, Select Full product instllation. When asked for security key, select no. When you see License Wizard dialog, select close because license wizard dont know our licenses

6、 format. 2.Use our keygen to generate license.dat, copy it to c:flexlm directory. 3.set enviroment string: LM_LICENSE_FILE = c:flexlmlicense.dat 4.Start Modelsim and have fun. 仍有许多人表示搞不定,通常是因为第三步有问题,可以如下设置: 在 W2K 下,在开始 -系统 -设置 - 系统 - 高级 - 环境变量 -系统变量中设置 变量名为 LM_LICENSE_FILE ,值为 你的存放 license.dat 的路径 +

7、 文件名,比如 c:flexlmlicense.dat, (在 unix/linux 下,在.bashrc 中 export LM_LICENSE_FILE=/thePathOfLicenseFile/yourLicenseFileName 就可以了!) 第二节:建立 niosII 系统。 1:建立项目。 建立一个目录,比如 H:DB2005projectniosDKExampleNiosSmall 启动 QuartusII4.2 软件。 选择 File - New Project Wizard 在 Diectory,Name,Top-Level Entity 中如下填写,在你自己的项目中,你

8、可以类比着填写: 在 Add Files 中如下填写,在你自己的项目中,你可以类比着填写: 在 EDA Tools Setting 中如下填写,在你自己的项目中,你可以类比着填写: 最后,选择 Finish,就 OK 了! 在 H:DB2005projectniosDKExampleNiosSmall 下建立一个 name 为 Setup.tcl 的 file,其内容如下:#Setup.tcl # Setup pin setting set_global_assignment -name RESERVE_ALL_UNUSED_PINS “AS OUTPUT DRIVING GROUND“ se

9、t_global_assignment -name ENABLE_INIT_DONE_OUTPUT OFF set_location_assignment PIN_16 -to clk set_location_assignment PIN_37 -to led0 set_location_assignment PIN_39 -to led1 set_location_assignment PIN_1 -to led2 set_location_assignment PIN_41 -to led3 set_location_assignment PIN_42 -to led4 set_loca

10、tion_assignment PIN_49 -to led5 set_location_assignment PIN_50 -to led6 set_location_assignment PIN_51 -to led7 很浅显的 Script,你可以根据需要修改。 然后打开 Tools - Tcl Scripts,选中刚才编辑的 Script 文件:Setup,并点击 Run 2:生成一个可调试的 nios 最小系统 选择 Tools - SopcBuilder,启动 Altera SOPC Builder 启动 Altera SOPC Builder 后,SOPC Builder 会立刻

11、弹出对话框 填入 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 区域,选择 Ni

12、os 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. Memo

13、ry 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,为了简便起见,我没有将它改名。

14、你可以依照你自己的喜好,为其取个名字。 然后,选择 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

15、module logic in Verilog, 如果需要仿真,也请选中 Simulation.Create ModelSim(tm) project files 然后点击 Generate,进行系统生成的任务。如下图: 然后,就是漫长的等待,你可以悠闲得喝一杯咖啡(因为等待的时间还是蛮长的,比如我,要等近 10 分钟)。一般没有问题的话,可以看到系统提示:SUCCESS: SYSTEM GENERATION COMPLETED.如果看到此信息,恭喜恭喜,系统被正确生成了。如果失败,请返回并检查、修改! 如下图: Nios 简单介绍: Nios II 是一个用户可配置的通用 RISC 嵌入式处

16、理器。在这儿,我引用了 Altera 公司关于 NiosII 的官方介绍: Altera 推出的 Nios? II 系列嵌入式处理器扩展了目前世界上最流行的软核嵌入式处理器的性能,把 Nios II 嵌入到 Altera 的所有 FPGA 中,例如StratixII、Stratix、CycloneII,Cyclone、APEX,ACEX 和 HardCopy 系列器件中,用户可以获得超过 200 DMIPS 的性能,用户可以从三种处理器以及超过 60 个的 IP 核中选择所需要的,Nios II 系统为用户提供了最基本的多功能性,设计师可以以此来创建一个最适合他们需求的嵌入式系统。 Nios

17、II 处理器的优点和特性 使用 Nios II 处理器的用户可以根据他们的需要来调整嵌入式系统的特性、性能以及成本,快速使得产品推向市场,扩展产品的生命周期,并且避免处理器的更新换代。 提高系统性能 * 一系列的处理器核可供选择,其中包括了超过 200 DMIPS 性能的核 * 实现任何数量的处理器或将不同的处理器核组和在一起 * 增加了已有的处理器,在 FPGA 中添加一个或更多的 Nios II 软核处理器 更低的系统成本 * 通过将处理器、外设、存储器和 I/O 接口集成到一个单一的 FPGA 中,从而降低了系统成本、复杂性和功耗 * 通过将 Nios II 处理器嵌入到低成本的 FPG

18、A 中只需花费 35 美分或者更低(编者:对大多数用户而言,NiosII 所占逻辑资源的成本大约是 1020 元人民币,具体取决于所选FPGA 的类型和 NiosII 的配置)应对产品的生命周期 * 提供易用的设计工具从而快速将产品推向市场。 * 提供永久的,免费的许可从而使基于 Nios II 处理器的产品避免了处理器的更新换代而带来的损失。 功能强大、易用的开发工具 * 通过使用 Nios II 集成开发环境( IDE),从而加速了软件的开发 * 利用 Altera 的强大的 SOPC Builder 系统开发工具和 Quartus II 设计软件可以在几分钟内设计一个系统 使用完全功能的

19、开发包 * 使用易用的 Nios II 开发包开始一个设计 * 使用易用的 Nios II 开发包开始设计 * 可以选择具有低成本特性的 Cyclone FPGA 开发套件,或高性能的 Stratix FPGA开发套件 稍微了解一下 NiosII 后, 我们就来开始设计、应用它吧! 下面我们就设计一个最简单的 NiosII 系统,使用 NiosII 去控制一个 LED 灯,通过这个例子我们可以了解整个介绍 NiosII 的设计流程第一节:EDA 软件的安装。 许多朋友在配置 EDA 环境的时候,就遇到了更多问题,我现在总结一下: 1。安装 QuartusII4.2 2。安装 NiosII ID

20、E 用于软件开发3。安装 ModelSim6.0。 用于系统仿真如下是 ModelSim 下的安装说明: 1.Install, Select Full product instllation. When asked for security key, select no. When you see License Wizard dialog, select close because license wizard dont know our licenses format. 2.Use our keygen to generate license.dat, copy it to c:flexl

21、m directory. 3.set enviroment string: LM_LICENSE_FILE = c:flexlmlicense.dat 4.Start Modelsim and have fun. 仍有许多人表示搞不定,通常是因为第三步有问题,可以如下设置: 在 W2K 下,在开始 -系统 -设置 - 系统 - 高级 - 环境变量 -系统变量中设置 变量名为 LM_LICENSE_FILE ,值为 你的存放 license.dat 的路径 + 文件名,比如 c:flexlmlicense.dat, (在 unix/linux 下,在.bashrc 中 export LM_LIC

22、ENSE_FILE=/thePathOfLicenseFile/yourLicenseFileName 就可以了!) 第二节:建立 niosII 系统。 1:建立项目。 建立一个目录,比如 H:DB2005projectniosDKExampleNiosSmall 启动 QuartusII4.2 软件。 选择 File - New Project Wizard 在 Diectory,Name,Top-Level Entity 中如下填写,在你自己的项目中,你可以类比着填写: 在 Add Files 中如下填写,在你自己的项目中,你可以类比着填写: 在 EDA Tools Setting 中如下

23、填写,在你自己的项目中,你可以类比着填写: 最后,选择 Finish,就 OK 了! 在 H:DB2005projectniosDKExampleNiosSmall 下建立一个 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_as

24、signment PIN_16 -to clk set_location_assignment PIN_37 -to led0 set_location_assignment PIN_39 -to led1 set_location_assignment PIN_1 -to led2 set_location_assignment PIN_41 -to led3 set_location_assignment PIN_42 -to led4 set_location_assignment PIN_49 -to led5 set_location_assignment PIN_50 -to le

25、d6 set_location_assignment PIN_51 -to led7 很浅显的 Script,你可以根据需要修改。 然后打开 Tools - Tcl Scripts,选中刚才编辑的 Script 文件:Setup, 并点击 Run 2:生成一个可调试的 nios 最小系统 选择 Tools - SopcBuilder,启动 Altera SOPC Builder 启动 Altera SOPC Builder 后, SOPC Builder 会立刻弹出对话框 填入 System Name,比如 niosII_e;HDL Language ,比如选择 verilog,如下图: 选择

26、 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,如下图

27、。然后 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,为了简便起见,我没有将它改名。你可以依照你自己的喜好,为其取个名字。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报