Board logo

标题: nios2问题,高手帮帮我吧! [打印本页]

作者: zhutou    时间: 2007-9-3 16:06     标题: nios2问题,高手帮帮我吧!

小弟在quartusII中建立了工程,然后在nios中写了一个很基本的程序,程序如下:

      #include <stdio.h>
    #include <altera_avalon_pio_regs.h>
   int main()
     {
     IOWR(0x00003800, 0, 1);
     IOWR(0x00003810, 0, 1);
    IOWR(0x00003820, 0, 1);
    IOWR(0x00003830, 0, 0);
    IOWR(0x00003840, 0, 0);
    IOWR(0x00003850, 0, 0);
    /*printf("Hello from Nios II!\n");*/

    return 0;
  }

可是在编译的时候总是出现"onchip memory is full"

不知道问题出在哪儿,大侠们不要笑话啊,指点下小弟,谢了!


作者: 晃晃悠悠    时间: 2007-9-3 16:22

顾名思义,nochip memory满了啊

最终的代码比你实际想象的还要大很多,估计你的程序至少几十K

如果你的系统有SDRAM的话,就将代码映射到SDRAM


作者: zhutou    时间: 2007-9-3 16:46

我用的板子只有一块cycloneII芯片EP2C20F484C8 ,板上其他的芯片另有用途,此芯片没有外连其他存储器了.这款芯片有52*4K的存储空间,我在定义onchip memory的大小时,即使选满了这么多的存储空间也会在编译的时候出现同样的错误.

那会是什么问题呢,空间应该够了啊,会不会是我的程序有问题呢?


作者: caopengly    时间: 2007-9-3 23:33

“这款芯片有52*4K的”中的是4Kbit,26KB

如果实在不行,你可以用hello world small来写,会小得多,或者在存在片外。


作者: meyou582    时间: 2007-9-4 00:04

都是高手啊。。。
作者: zhutou    时间: 2007-9-4 11:06

我用hello world small来写了,还是不行!!!片外又没有存储器,怎么办啊,还是出现同样的错误?!

片内总共有52块ram,其中每块ram的空间是4KByte,跑这么一个简单的程序应该够了啊,是怎么回事呢,欲哭无泪啊??!!!


作者: zhutou    时间: 2007-9-4 15:15

怎么没有人回答啊???


作者: kzw    时间: 2007-9-4 17:17

52快M4k的ram值得是4k bit,所以只有26kB的ram空间,你做做代码优化,编译优化,差不多够吧。
作者: zhutou    时间: 2007-9-5 09:36

"52快M4k的ram值得是4k bit,所以只有26kB的ram空间",这是为什么?
作者: zhutou    时间: 2007-9-5 09:37

每块ram的值是4Kbyte啊???!!!
作者: 晃晃悠悠    时间: 2007-9-5 10:23

是4Kbit

你的问题在于不了解NiosII软件架构,所以你还没能力优化代码

Ø        NiosII IDE为用户提供了很多的支持和服务,比如系统初始化、外设初始化等等操作都是由IDE自动完成的,用户可以把全部精力放在应用程序即main函数的开发上;上述自动化操作是由NiosII的软件架构决定的,它将自动加载crt0.Salt_main.calt_sys_init.c、相关外设驱动以及中断处理函数等代码到最终的可执行文件,从而使得最终的代码量大大超出了用户的想象;

更详细的介绍请再过几天参考:【置顶】NiosII之常见问题解答静态加密版本-2007.08.31更新

过几天我将把这个问题添加进去!


作者: zupub    时间: 2007-9-11 14:01


如果只是楼主那个简单IO口控制程序的话,在Hello LED模板基础上改,保证不会超出大小,直接用main函数就行,注意包含io.h

作者: jack4211    时间: 2007-9-11 19:15

你在编译的时候选一个选项:Small C library.那样编译出来的容量就很小了!
作者: resound    时间: 2007-9-15 20:38

恩,用hello world small 代码会很小.

[此贴子已经被作者于2007-9-15 21:08:19编辑过]






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0