掌叔
2008-06-07 17:25:24
摘自:[url]http://blog.donews.com/Alleria[/url]
NDS处理器:
NDS有2个CPU,主处理器ARM946E-S主频67Mhz是一种有5级流水线,集成有Thumb扩展功能、调试功能和哈佛总线的32位RISC处理器内核,具有8k指令缓存,4K数据缓存;附属处理器ARM7TDMI (33MHz) 配备了芯片外64K专用内存。是一种小型的高性能低功耗可集成32位RISC处理器内核,ARM946E-S与ARM7TDMI都是采用0.18um工艺生产,共享一个32KByte (16Kbyte x2)的芯片外专用内存。
NDS内存:
ITCM(紧密耦合存储器):0x01ff8000 - 0x01ffffff
这个缓存我想应该介于内存与处理器之间的高速缓存,相当于2级缓存,这里看应该是32K大小,有些资料说的它包括32K指令缓存和16K数据缓存,或者8k指令缓存和4K数据缓存可能都是不对的。
相对于GBA,任天堂显然增加了多种处理器缓存,容量也不小,这当然是为了提高处理器的运算速度,如果单纯提高处理器的频率,会增加耗电量和成本,对于掌机来说都是不可取的。
Main memory: 0x02000000 - 0x02400000内存
内存4M,相当大了,想想当年GBA的256K内存,PS的不到3M的内存,N64的4.5M内存,4M内存能给程序开发带来很多好处。当然,跟PSP的32M比起来……
BG Palette: 0x05000000 - 0x05000200
OBJ Pal: 0x05000200 - 0x05000400
DB BG Pal: 0x05000400 - 0x05000600
DB OBJ Pal: 0x05000600 - 0x05000800
调色板2K, 比GBA的1K大了一倍,但是因为NDS是双屏幕,每个屏幕又分背景调色板和精灵调色板,所以和GBA一样,背景调色板和精灵调色板都是512字节,可以使用1个256色调色板或者16个16色调色板,在text模式下最多显示256色,至于宣传上说NDS最多显示262144色,那估计只能是在位图模式下。
BG VRAM: 0x06000000 - 0x06080000
DB BG VRAM: 0x06200000 - 0x06220000
OBJ VRAM: 0x06400000 - 0x06440000
DB OBJ VRAM: 0x06600000 - 0x06620000
LCDC VRAM: 0x06800000 - 0x068A0000
看了这段我真的无话可说了,网上能找到的资料都说NDS 是656K显存,实际看来是1M + 640K,640K是桢缓存,至于为什么要桢缓存,开发过GBA的都知道,为了减少画面的闪烁,特别是MODE4,5下,但GBA只有少的可怜的96K显存,要做双倍缓冲,就要两倍的显存,以至于MODE5下的画面都不能全屏显示,这里老任给我们准备了640K的专用缓存,我真是感动的热泪盈眶!!!背景显存512K,精灵显存256K,都是GBA的8倍,另外还给触摸屏256K的显存,精灵背景各一般,不过以上地址都不是连续的,看来不能像GBA那样动态分配了,估计老任觉得应经够大了,用不着。
OAM: 0x07000000 - 0x07000400 1K
DB OAM: 0x07000400 - 0x07000800 1K
OAM没什么变化,都是1K,只不过加了第二个屏幕的 OAM,每个精灵分8字节,一共可以控制128个精灵,我觉得128个已经不少了,掌机就是那么大的屏幕,多于100个精灵在那乱动,肯定吐了。
主要的就是这么多,我手上就是几行数据,根据这些判断出NDS 的性能,肯定有一些不准确的,网上找到的一些数据也都不是很准确,只有弄到官方的开发文档才能说的清楚。总的来看,NDS机能是很强的(如果没有PSP的话),结构上继承了GBA的体系结构,开发起来肯定很简单,唯一麻烦的是触摸屏,好像模拟器的开发也卡在这个地方,不过这也是NDS最大的优势,用触摸屏开发给人许多想象的空间。从国外销售量来看,也是NDS好于PSP。硬件销售取决于软件,这一点,老任谁都比不了。
小猫
2011-09-18 12:52:19
万岁!