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

请教:NIOSII只用低31bit地址访问外设吗?

请教:NIOSII只用低31bit地址访问外设吗?

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

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

在交流中前进,共同实现nios的应用。

是的,如下

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编辑过]

这个版主不太冷 =========================== 我的中电网博客:http://blog.chinaecnet.com/u/20/index.htm

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

是的!

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

这个版主不太冷 =========================== 我的中电网博客:http://blog.chinaecnet.com/u/20/index.htm
在 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;
}

返回列表