返回首页
当前位置: FPGA主页 > 工具应用 >

使用ModelSim-Altera对NiosII进行仿真

时间:2010-02-05 23:48来源:网络 作者: 点击:
初学者可能会遇到这样的问题,在Run As Nios II Hardware下方,看到Run As Nios II ModelSim就觉得很奇怪,Nios II明明是嵌入式系統,怎么能用ModelSim仿真呢?

初学者可能会遇到这样的问题,在Run As Nios II Hardware下方,看到Run As Nios II ModelSim就觉得很奇怪,Nios II明明是嵌入式系統,怎么能用ModelSim仿真呢?

使用環境:Quartus II 7.2 SP3 + Nios II EDS 7.2 SP3 + ModelSim-Altera 6.1g + DE2(Cyclone II EP2C35F627C6)

ModelSim对数字系统作仿真,这个大家可能都很熟悉。Nios II虽然是个嵌入式系统,但毕竟基于FPGA技术,所以比ARM这类hardcore多了使用ModelSim仿真的方式。这也是Altera四大天王(Quartus IINios II EDSModelSim-AlteraDSP Builder)中的三大天王首次同台演出。

Altera在文件中,有谈到如何用ModelSim-AlteraNios II作仿真,不过一如以往,Altera的文件要在DE2能动,还是得做不少修改。

Quartus II与SOPC Builder部分
Step 1:

文件中的那个系统并不适合DE2,用了一定不能动,所以就自己建立一个最简单的Nios II系统。为了要简单,就先使用onchip memoryledgbutton就好,其他IP都先别用,以减少失败的变因。

nios_ii_modelsim_01

Step 2:
JTAG UART设定

使用ModelSim-Altera仿真后,对于C的printf()要怎么显示呢?这要对JTAG UART做设定。

nios_ii_modelsim_02

Step 3:


Button本来是在runtimeuser去决定,若你想在testbench就模拟user的按键,可在此设定,此步骤并非必须,只是demo可藉由此方式设定PIO的初始值。

nios_ii_modelsim_03

Step 4:
在SOPC Builder设定ModelSim-Altera路径

Tools -> Options -> Category:HDL Simulator

nios_ii_modelsim_04

Step 5:

记得要将『Simulation. Create project simulator files』打勾。

nios_ii_modelsim_05

Step 6:
DE2_NIOS_ModelSim2.v / Verilog

 

1 /* 
2 (C) OOMusou 2008 http://oomusou.cnblogs.com
3 
4 Filename    : DE2_NIOS_ModelSim2.v
5 Compiler    : Quartus II 7.2 SP3
6 Description : Demo how to simulate Nios II by ModelSim-Altera
7 Release     : 08/02/2008 1.0
8 */
9 
10 module DE2_NIOS_ModelSim2 (
11   input CLOCK_50,
12   input [3:0] KEY,
13   output [8:0] LEDG
14 );
15 
16 wire    CPU_CLK;
17 wire    CPU_RESET;
18 
19 Reset_Delay    delay1 (
20   .iRST(KEY[0]),
21   .iCLK(CLOCK_50),
22   .oRESET(CPU_RESET)
23 );
24 
25 SDRAM_PLL PLL1 (
26   .inclk0(CLOCK_50),
27   .c1(CPU_CLK)
28 );
29 
30 nios_ii u0 (
31   .clk(CPU_CLK),
32   .reset_n(CPU_RESET),
33   .in_port_to_the_button_pio(KEY),
34   .out_port_from_the_ledg_pio(LEDG)
35 );
36 
37 endmodule


25行
 

SDRAM_PLL PLL1 (
  .inclk0(CLOCK_50),
  .c1(CPU_CLK)
);

别被SDRAM_PLL吓到了,只是借用这个PLL产生100 MhzclockNios II用,你也可以自己重新产生一个100 Mhzclock而不用SDRAM_PLL

Quartus IISOPC Builder部分已经完成,编译后可烧进DE2

(责任编辑:admin)

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名:密码: 验证码:点击我更换图片
推荐内容