[求助] 关于 on-chip memory的问题

- UID
- 149027
- 性别
- 男
|
[求助] 关于 on-chip memory的问题
我现在想在up3 板上设计一个小nios ii 系统,其中只有nios ii/e 核,jtag uart, timer和 on-chip memory. 这个板上的Cyclone芯片有92000个存储位大概应该是11kb左右大小。 但是我每次编译的时候最大只能用到4kb左右,超过这个数编译器就会出错显示 Can't place 76 RAM cells or portions of RAM cells in design. 而我用4kb的内存编译成功后显示实际内存用量只有46%。我的设计里面至少需要8kb的内存大小,剩下的那些存储位不知道为什么不能用。 请问有没有哪位高手知道如何能在设计里面使用尽可能多的存储位?
[此贴子已经被作者于2006-11-1 23:53:53编辑过] |
|
|
|
|
|

- UID
- 149027
- 性别
- 男
|
我就是用它来做nios II的存储器,在sopc builder里面我就是选择的默认设置,只更改了内存大小。只要大小超过4kb马上编译出错。而我在编译4kb内存完成以后系统可以运行“hello world”。只是内存太小无法运行稍大一点的程序。这说明应该不是系统的问题,只是不知道是哪有设置问题导致不能使用所有的内存位。 |
|
|
|
|
|

- UID
- 149027
- 性别
- 男
|
on-chip memory 有时候确实不重要,但是在我现在的研究中不能使用任何片外内存,所以片内内存大小就至关重要了。现在测试看来能用的内存确实只有4kb,这是无法改变的。不过我的程序用ANSI C 编写只有10kb左右大小,如果用汇编来编写的话应该还有进一步减小的空间。 我在Altera的资料中看到有纯汇编编译和Inline Assembly两种汇编方法,应该都可以在Nios IDE中的GCC实现。 可是我一直无法找到相应的教程,请问有没有人能提供这样的教程或者具体的编程实例啊?谢谢啦 |
|
|
|
|
|

- UID
- 149027
- 性别
- 男
|
是啊,理论上应该是可以用8kb左右的,但是事实上超过4kb就无法编译成功了,在用4kb编译后显示实际存储位利用率只有46%。不过这是在我的系统中有JTAG的情况下,如果不用JTAG而直接把IDE编译后的文件下载到片上运行后再编译就能成功。只是用这种编译方式调试程序起来太麻烦,所以看来还是得用汇编来缩小程序大小了。 |
|
|
|
|
|