nios II标准(Standard)系统的创建
2012-06-02
标签:

在此之前,我曾经过介绍过如何建立最小(small)的nios系统(见文章nios无痛入门)。在这儿,我将要介绍如何建立一个常用的标准(Standard)Nios系统。如果本文能对您有一点点帮助,我都会感到非常高兴。

在本文中,我只挑要点讲一下,关于软件的详细使用指南,请您参考官方提供的help文档。我使用本站设计的ezNiosDK C6B开发板来示范这个实验;如果您采用自己的开发板,请您适当得修改,以适应您的开发板。

第一节:创建并初步配置项目。

1。创建项目。

创建一个空项目,我将他命名为ezC6Be_StdF50(请参考文章“nios无痛入门”,在此不再赘述),器件(Device)设置为EP1C6T144C8。

如果采用的是ezNiosDKC3系列,请选择EP1C3T144C8,如下图:

2。执行如下script,主要目的是一次性映射PIN脚。

# Setup.tcl

# Setup pin setting

set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED"

set_global_assignment -name ENABLE_INIT_DONE_OUTPUT ON

set_global_assignment -name CYCLONE_CONFIGURATION_DEVICE EPCS1

set_location_assignment PIN_16 -to OSC0

set_location_assignment PIN_125 -to RESET_

set_location_assignment PIN_28 -to LED\[0\]

set_location_assignment PIN_85 -to LED\[1\]

set_location_assignment PIN_96 -to LED\[2\]

set_location_assignment PIN_97 -to LED\[3\]

set_location_assignment PIN_27 -to KEY\[1\]

set_location_assignment PIN_17 -to KEY\[2\]

set_location_assignment PIN_92 -to KEY\[3\]

set_location_assignment PIN_93 -to KEY\[4\]

set_location_assignment PIN_51 -to SDRAM_CS_

set_location_assignment PIN_52 -to SDRAM_RAS_

set_location_assignment PIN_53 -to SDRAM_CAS_

set_location_assignment PIN_56 -to SDRAM_WE_

set_location_assignment PIN_39 -to SDRAM_CKE

set_location_assignment PIN_26 -to SDRAM_CLK

set_location_assignment PIN_50 -to SDRAM_BA\[0\]

set_location_assignment PIN_49 -to SDRAM_BA\[1\]

set_location_assignment PIN_47 -to SDRAM_A\[0\]

set_location_assignment PIN_42 -to SDRAM_A\[1\]

set_location_assignment PIN_41 -to SDRAM_A\[2\]

set_location_assignment PIN_40 -to SDRAM_A\[3\]

set_location_assignment PIN_34 -to SDRAM_A\[4\]

set_location_assignment PIN_33 -to SDRAM_A\[5\]

set_location_assignment PIN_32 -to SDRAM_A\[6\]

set_location_assignment PIN_31 -to SDRAM_A\[7\]

set_location_assignment PIN_35 -to SDRAM_A\[8\]

set_location_assignment PIN_36 -to SDRAM_A\[9\]

set_location_assignment PIN_48 -to SDRAM_A\[10\]

set_location_assignment PIN_37 -to SDRAM_A\[11\]

set_location_assignment PIN_38 -to SDRAM_A\[12\]

set_location_assignment PIN_69 -to SDRAM_DQ\[0\]

set_location_assignment PIN_68 -to SDRAM_DQ\[1\]

set_location_assignment PIN_67 -to SDRAM_DQ\[2\]

set_location_assignment PIN_62 -to SDRAM_DQ\[3\]

set_location_assignment PIN_61 -to SDRAM_DQ\[4\]

set_location_assignment PIN_60 -to SDRAM_DQ\[5\]

set_location_assignment PIN_59 -to SDRAM_DQ\[6\]

set_location_assignment PIN_58 -to SDRAM_DQ\[7\]

set_location_assignment PIN_71 -to SDRAM_DQ\[8\]

set_location_assignment PIN_72 -to SDRAM_DQ\[9\]

set_location_assignment PIN_73 -to SDRAM_DQ\[10\]

set_location_assignment PIN_74 -to SDRAM_DQ\[11\]

set_location_assignment PIN_78 -to SDRAM_DQ\[12\]

set_location_assignment PIN_77 -to SDRAM_DQ\[13\]

set_location_assignment PIN_76 -to SDRAM_DQ\[14\]

set_location_assignment PIN_75 -to SDRAM_DQ\[15\]

set_location_assignment PIN_57 -to SDRAM_DQM\[0\]

set_location_assignment PIN_70 -to SDRAM_DQM\[1\]

set_location_assignment PIN_99 -to FLASH_CE_

set_location_assignment PIN_100 -to FLASH_OE_

set_location_assignment PIN_128 -to FLASH_WE_

set_location_assignment PIN_98 -to EA\[1\]

set_location_assignment PIN_110 -to EA\[2\]

set_location_assignment PIN_111 -to EA\[3\]

set_location_assignment PIN_112 -to EA\[4\]

set_location_assignment PIN_113 -to EA\[5\]

set_location_assignment PIN_114 -to EA\[6\]

set_location_assignment PIN_119 -to EA\[7\]

set_location_assignment PIN_120 -to EA\[8\]

set_location_assignment PIN_131 -to EA\[9\]

set_location_assignment PIN_132 -to EA\[10\]

set_location_assignment PIN_133 -to EA\[11\]

set_location_assignment PIN_134 -to EA\[12\]

set_location_assignment PIN_139 -to EA\[13\]

set_location_assignment PIN_140 -to EA\[14\]

set_location_assignment PIN_141 -to EA\[15\]

set_location_assignment PIN_142 -to EA\[16\]

set_location_assignment PIN_11 -to EA\[17\]

set_location_assignment PIN_121 -to EA\[18\]

set_location_assignment PIN_122 -to EA\[19\]

set_location_assignment PIN_123 -to RYBY_

set_location_assignment PIN_130 -to EA\[20\]

set_location_assignment PIN_103 -to EDQ\[0\]

set_location_assignment PIN_105 -to EDQ\[1\]

set_location_assignment PIN_107 -to EDQ\[2\]

set_location_assignment PIN_109 -to EDQ\[3\]

set_location_assignment PIN_144 -to EDQ\[4\]

set_location_assignment PIN_3 -to EDQ\[5\]

set_location_assignment PIN_5 -to EDQ\[6\]

set_location_assignment PIN_7 -to EDQ\[7\]

set_location_assignment PIN_104 -to EDQ\[8\]

set_location_assignment PIN_106 -to EDQ\[9\]

set_location_assignment PIN_108 -to EDQ\[10\]

set_location_assignment PIN_143 -to EDQ\[11\]

set_location_assignment PIN_2 -to EDQ\[12\]

set_location_assignment PIN_4 -to EDQ\[13\]

set_location_assignment PIN_6 -to EDQ\[14\]

set_location_assignment PIN_10 -to EDQ\[15\]

set_location_assignment PIN_79 -to RXD1

set_location_assignment PIN_82 -to TXD1

set_location_assignment PIN_83 -to USBDN

set_location_assignment PIN_84 -to USBDP

第二节:创建NiosII系统。

1.选择Tools -> SOPC Builder,我将这个系统命名为sopc_ezC6Be_StdF50,就是在项目名前加上sopc_,您可以依据需要,为他命名。

2。配置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常见错误:有许多朋友往往在设置路径的时候,犯与下图类似的错误。错误在于第一个路径前面是不需要 + 号的!要去掉第一个路径前面的 + 号

3。Board Target 选择:ezC6_Programmer,clk选择 50.0

ezNiosC3的用户如下操作:Board Target 选择:ezC3_Programmer,clk选择 64.0

4。为系统添加Nios II处理器。

在Nios II core选项卡中,选择Nios II /e 。

JTAG Debug Module选项卡中,选择Debug Level 1

Custom Instructions选项卡中空着即可。

最后选择Finish确认!我把这个处理器改名(rename)为cpu_ezC6Be_StdF50,您可以依据需要,为其命名。

5.为系统添加onchip_ram。

双击左边的Memory -> On-Chip Memory,为系统添加2K byte onchip RAM,按照如下配置。我把它改名为onchip_ram_0,您可以依据需要,为其命名。

6。为系统添加DRAM控制器。

双击左边的Memory -> SDRAM Crontroller,为系统添加8M byte DRAM,请按照如下图片配置。

7。 为系统添加Tri-State Bridge。

双击左边的Bridge -> Avalon Tri-State Bridge,为系统添加Tri-State Bridge,请按照如下图片配置。

8。为系统添加Flash接口。

双击左边的Memory -> Flash Memory(Common Flash Interface),为系统添加Flash,请按照如下图片配置。我把它改名(rename)为ext_flash,您可以依据需要,为其命名,但最好还是取名为ext_flash。ezNiosC3A,ezNiosC3B,ezNiosC6A的用户由于开发板上不带Flash,可以跳过此步。

9。为系统添加EPCS Serial Flash Controller。

双击左边的Memory -> EPCS Serial Flash Controller,为系统添加EPCS Serial Flash Controller,请按照如下图片配置。ezNiosC3A,ezNiosC6A的用户由于开发板上不带该器件,可以跳过此步。

共 3 页   123下一页
可能会用到的工具/仪表
相关文章
推荐文章
热门文章
章节目录
本站简介 | 意见建议 | 免责声明 | 版权声明 | 联系我们
CopyRight@2024-2039 嵌入式资源网
蜀ICP备2021025729号