在本文中,我只挑要点讲一下,关于软件的详细使用指南,请您参考官方提供的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的用户由于开发板上不带该器件,可以跳过此步。
用户39557 2009-12-5 15:53
用户411972 2009-12-4 11:21