|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
ARM8核是从1993年到1996开发的,并开发了具有片上Cache及存储器管理单元的高性能ARM CPU芯片,以满足比ARM7飞3级流水线更高性能的ARM核的需求。它后来被ARM9系列取代。
+ l" b8 @! b. h8 }" U* Q% w. v* {3 dARM9TDMI将流水线的级数从ARM7TDMI的3级增加到5级,并使用分开的指令与数据存储器的Harvard体系结构。在相同工艺下,ARM9TDMI的性能近似为ARM9TDMI的2倍.ARM9TDMI的开发使得ARM核的性能极大的提高,使用范围增大,并以此为基础开发了ARM9E、ARM920T和ARM940T的CPU核。' y# ?/ [$ N$ b2 f
1.
7 |! N, c; `- G. X; CARM9TDMI的技术特点* D% d+ f- k) I, z: p% r
ARM9TDMI的技术特点如下:, o& t- B6 s# q; T0 K
支持Thumb指令集;7 E' S3 {) G7 J6 [9 S
含有EmbeddedICE模块,支持片上调试;
; e( p' y( l$ D- y! p! u& _+ z通过采用5级流水线以增加最高时钟频率;# }; [1 L: l! I: Z) E
分开的指令与数据存储器端口,以改善CPI,增强处理器性能。( F0 C( f( Y1 F0 c# k- g' J6 I
2.# Y3 X7 R" u- N5 c6 y
ARM9TDMI的组织
4 T0 _) L( z8 T$ r& EARM9核采用了与StrongARM相同的5级流水线。ARM9TDMI与StrongARM核的主要区别在于,StrongARM有一个与寄存器读出级并行操作的专用转移加法器进行转移地址计算,而ARM9TDMI使用数据路径中的ALU来计算转移目标地址。这使得StrongARM为实现转移多损失了一些周期时间,但得到的核较小、较简单,而且避免了在StrongARM中存在的一条非常关键的时序路径。StrongARM是面向特定的工艺技术设计的,其时序路径可仔细地规划、管理,而ARM9TDMI为一种核,可根据实际设计需要方便地转移到不同的实现工艺上,这类关键路径的存在很容易使最高时钟频率损失。9 R. L; j0 K# p f4 ^4 T
3.0 K- p. a1 c5 f
ARM9TDMI的流水线操作
% E* Z% d5 ]# A; r+ o" lARM9TDMI的5级流水线的操作如图所示与ARM7TDMI的3级流水线进行了比较。该图显示出处理器的主要功能及如何在流水线增加时重新分配执行,以便使时钟频率在相同工艺技术的条件下能够加倍。重新分配执行功能并不是达到高时钟频率所需的全部。处理器还必须能在ARM7TDMI所用的一半时间访问指令存储器,并重新构造指令译码逻辑,使寄存器读与实际的译码同时进行。
/ M+ ]! m" ]0 S/ F+ C" _1 T2 F+ L, W: [8 ^
4. v) d4 u( v& ^# \$ {8 Y. v: R
Thumb解码和存储器读/写6 G+ j' t/ e& s, F" Z3 D2 b- Z/ \
ARM7TDMI实现Thumb指令集的方法使用ARM7流水线中的译码级,比较有足够的时间将Thumb指令“解压缩”为ARM指令。ARM9TDMI的流水线非常紧密,没有足够的时间能先将Thumb指令翻译成ARM指令再译码,因此必须设计成专用硬件译码单元直接对ARM指令和Thumb指令分别进行译码。
3 r" t5 S6 t( \1 ~" ?# B6 P3 D6 J6 y在ARM9TDMI的流水线中多出的“存储器”级再ARM7TDMI中没有直接的对应级。ARM7TDMI由中断流水线附加的“执行”周期来执行。由于ARM7TDMI使用单一的存储器端口进行指令的数据的读/写,这种中断是不可避免的。在读/写数据存储器时不能同时进行取指令操作。ARM9TDMI通过设置分开的指令与数据存储器来避免这种流水线中断。
* p) T9 [- Y5 k! S G7 s9 W5.& d* x [/ ^1 u2 Y0 g6 M
协处理器支持
9 G6 ^3 S( C! g9 U/ T# zARM9TDMI有一个协处理器接口,可支持片上浮点处理器、数字信号或其他专用的硬件加速要求。
" A* ]+ C. c2 e3 e2 s6.
& j. \6 x6 f% Y9 L: D片上调试- G( ]% _ I& U5 a
ARM9TDMI核中的EmbeddedICE功能也能满足系统级的调试特性,同时还有下列附加的特性:6 M4 ]5 Z+ K o
支持硬件单步调试。
J ?5 o- o4 H) E( j9 I/ g1 N除了ARM7TDMI支持的地址/数据/控制条件之外,还可在异常点设置断点。
% V$ s7 k: B8 N' M2 B3 `7.
, R8 ]* k! ~* N; m8 S% H8 F低电压操作
) P+ @! {% O/ Z5 |( s1 L3 |ARM9TDMI核可采用0.35μm/3.3V技术实现,也可使用低至1.2V电源的0.25μm和0.18μm的实现工艺.1 q) l* W+ R" }3 x: E$ Y( F n. `) R% j
8.
0 h3 H2 m4 o# b* S# |ARM9TDMI应用
, z$ i) R6 z; K$ ]2 rARM9TDMI核使用指令与数据分开的端口/5级流水线,使得它支持的时钟频率也高于ARM7TDMI3级流水线,因此在高性能的系统中得到广泛应用.在构建高速的嵌入式系统时,高性能的存储器时必然的.最常用的方式是,基于ARM9TDMI核且使用分开的指令与这些CPU核中的Cache能满足ARM9TDMI的大部分存储器宽带要求,并减少外部宽带要求,使用经单一AMBA总线连接的传统的统一存储器就能满足其带宽要求. |
|