首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

急!nios ide 编译的程序容量突然大的惊人!

急!nios ide 编译的程序容量突然大的惊人!

原来在nios里跑通的一个灯闪的程序,原来只选onchip_ram为2k,而且不要ROM程序都能正常跑。

一样的程序现在重新在 nios ide里面建立一个新的工程。重新编译后就是显示RAM的容量不够,

现在在生成的核里生成一个4K的onchip_rom用来存放程序,同时还生成一个4K的onchip_ram。

但编译后还是出现了下面的错误提示Severity and Description Path Resource Location Creation Time Id
ld: address 0x29cc of lxqj.elf section .onchip_rom is not within region onchip_rom lxqj line 0 1237102244453 28

Severity and Description Path Resource Location Creation Time Id
ld: region onchip_rom is full (lxqj.elf section .text). Region needs to be 500 bytes larger. lxqj line 0 1237102244453 27
我的程序如下:

#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"

void delay_1s(void)//延时
{
volatile int i;
for(i=0;i<250000;i++) ;
for(i=0;i<250000;i++) ;
}

int main (void)
{
alt_u8 led ;

while (1)
{
led=1;
IOWR_ALTERA_AVALON_PIO_DATA(PIO_LED_BASE, led);//开灯
delay_1s();
led=0;
IOWR_ALTERA_AVALON_PIO_DATA(PIO_LED_BASE, led);//关灯
delay_1s();
}
return 0;
}

哪位大虾能帮我解答一下为什么啊,是不是哪里还要什么关键的设置?

没办法,刚才按ZLG的<<SOPC嵌入式系统实验教程>>里的步骤重新一步步做,一样的程序又跑起来了

这次跟问题出现那次不同的是选用了NIOS 2/S核而上次用的是NIOS 2/e核,这次的ROM为2k,RAM为1K。

可问题是两次生成核的时候都没问题的,编译都能通过的。现在还不知道上次为什么会出现4K的ROM装

不下一样的程序?!!莫非下次又遇到同样的情况,又得一切重新从0开始!!!!!

rom过小,加入sdram就行了!
你要把编译等级降下来,降到-O2!
加入sdram就行了
返回列表