Board logo

标题: 请教:NIOSII只用低31bit地址访问外设吗? [打印本页]

作者: cattail_yu    时间: 2007-1-24 19:39     标题: 请教:NIOSII只用低31bit地址访问外设吗?

在一篇文章里看到“Avalon总线有32bit地址,4GByte地址空间,但是NIOSII只用低31bit地址访问外设,所以NIOSII只有2Gbyte地址空间。”,是这样的吗?那NIOS是否也只用低31bit地址访问外设?[em06]
作者: kzw    时间: 2007-1-24 20:52

楼主还真是仔细阿,没有太注意这个问题,一般也不会用到2G的空间的。


作者: caopengly    时间: 2007-1-27 15:06

是的,如下

Overview
The Nios II/f core:
■ Has separate instruction and data caches
■ Can access up to 2 GBytes of external address space
■ Supports optional tightly coupled memory for instructions and data
■ Employs a 6-stage pipeline to achieve maximum DMIPS/MHz
■ Performs dynamic branch prediction
■ Provides hardware multiply, divide, and shift options to improve
arithmetic performance
■ Supports the addition of custom instructions
■ Supports the JTAG debug module
■ Supports optional JTAG debug module enhancements, including
hardware breakpoints and real-time trace

(Nios II/s Nios II/e的也是 Can access up to 2 GBytes of external address space

[此贴子已经被作者于2007-1-27 15:07:56编辑过]


作者: gxjao    时间: 2007-2-5 11:46

Can access up to 2 GBytes of external address space
上面这句的意思是什么?
external address space是对谁来说的,是对 Nios II处理器吗。
那么这句话的意思是说,Nios II处理器,可以访问对它来说是外部地址的2G的空间呢,还是说还可以再有2G的空间来供其它用,比如在另外2G空间上挂其它的设备。我对这句的理解是,Nios II处理器只能处理对它自己来说是外部的2G的空间


作者: caopengly    时间: 2007-2-6 17:15

是的!

“我对这句的理解是,Nios II处理器只能处理对它自己来说是外部的2G的空间”


作者: szyusong    时间: 2007-2-25 10:57

在 Nios II Processor Reference Handbook 中的第2-11页中有关于“Cache Bypass Method”的一段说明:
Some Nios II processor cores support a mechanism called bit-31 cache
bypass to bypass the cache depending on the value of the most-significant
bit of the address.
可见第31位是 cache bypass 的标志。

在 alt_uncached_malloc.c 中可以找到如下的代码来说明这一点:

volatile void* alt_uncached_malloc (size_t size)
{
  void* ptr;

  ptr = malloc (size);

  alt_dcache_flush (ptr, size);

  return ptr ? (volatile void*) (((alt_u32) ptr) | 0x80000000) : NULL;
}






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