X R3v Z a+~/}{ B
[正文]6k | o&}9h J%i R
1.流水線結構 pipeline%Z A&[1j |0O
- MIPS 是最簡單的體系結構之一,所以使大學喜歡選擇 MIPS 體系結構來介紹計算體系結構課程。 ar t-R U O4H)D
- ARM has barrel shifter n&\/Y | [5k9m
shifter是兩面性的,一方面它可以提高數學邏輯運算速度,另一方面它也增加了硬體的複雜性。所以和可以完成同樣功能的adder/shift register相比,效率更高,但是也佔用更多的晶片面積。
- MIPS have "branch delay slot" and "load delay slot"
MIPS使用編譯器來解決上面的兩個問題。因為MIPS最初的設計思想就是使用簡單的RISC硬體,然後靠編譯器及其他軟體技術,來達成RISC的完整概念。 ]'K P N @ g M _ l
w m @,|%A5B;l0Z
2.指令結構 instruction
- MIPS have 32bit and 64bit architecture,but ARM only have 32bit architectureX B | E q
ARM11 局部64位元
- MIPS是開放式的架構,用戶可以在開發的內核中加入自己的指令, h a d h ]
- ARM has 4-bit condition code in every instruction
ARM 在這一點很像x86。MIPS在MIPS IV也加入"conditional move"指令,來提高pipeline的效率。
- ARM has pre- and post-increment addressing modes
auto-increment/decrement on load/store instructions
- 在節省代碼空間方面,MIPS16 很類似ARM Thumb \(W K S s a i g,{
3.寄存器 register V8t2g j#j9W
-由於MIPS內核中有32個註冊器(Register),而ARM只有16個,這種結構設計上的先天優勢,決定了在同等性能表現下,MIPS的晶片面積和功耗會更小。2b T n:X6c1}9v'j _z K
- ARM 有一組特殊用途寄存器cp0-cp15,可以使用MCR,MRC等指令控制;相對應的,MIPS也有cp0 0-30,使用mfc0,mtc0 指令控制。
L d!F8N | d K,V p
- Register banking in ARM. r8-r12 FIQ mode;r13:SP r14:LR Y p&O*s2Z"p0P,K
感覺不出banked register有什麼好處。
- MIPS has a hard-wired-to-zero register ,but ARM not ` S H(s5h }+A
MIPS use register $0 for Zero
4.位址空間 address space,];J*W6D*zJ0R1B
- MIPS 起始位址是0xbfc00000,會有4Mbyte的大小限制,但一般MIPS晶片都會採取一些方法解決這個問題。 H x/Z$d N S-_;[
ARM沒有這種問題。)T r(Z4Y0L#P D u m }-J
MIPS24K 起始位址改到了0xbf000000,現在有16Mbyte的空間了。
- MIPS don't have to turn paging on to enable the cache.6]#v-I ?0f T&n
MIPS have the address space for both cache and un-cache+u O:c v-N @
but ARM need enable/disable cache+M w O Z L K8c3Q I-D Y6L
r,a(M:Z7b m
5.功能 function ` D"~ a N V)t y P
- Float point: MIPS64 has./Q.h u!v)m6_%^*` y j
ARM's support for FP is limited, and usually not included, and it is a 32 bit architecture
- ARM use JTAG,MIPS use EJTAG。Debug工具一般兩種都支援。使用起來感覺差不多。
n \ Wr/{ c n:P d K
6.性能 performance \+z8i"Z T K b w
- 具體性能比較,因為差異性太大,所以很難分出誰好誰壞。從個人經驗來講 MIPS4k和ARM9基本上是同一個級別的,但ARM9性能似乎要比MIPS4K好。 p2v/j N*K+{"N'f
同樣是32bit的MIPS24K性能上比MIPS4K有很大提升,也應該比ARM9要好些。 V O ^ [7K c#p&f g.M
因為沒有用過ARM11和MIPS34K的晶片,沒法比較,但感覺這兩個似乎是一個級別的。,s F z t8v Z4_.D$Q
2s b F g B$M#t
7.應用
- 在1000MHz以上的應用,很難找到採用ARM架構的產品。!e {.\'K k
MIPS架構用在200MHz或者是266MHz以下的應用比較少,而這恰恰是ARM的主攻市場。
- ARM 在手機等可擕式領域,MIPS 在住宅閘道、線纜數據機、線纜機上盒等
- ARM 採用硬核授權;MIPS 採用軟核授權,使用者可以自己配置,做自己的產品。;g U6G d'~ P x5g$p O a `
8.未來發展
- ARM的下一代走向多內核結構,而MIPS公司的下一代核心則轉向硬體多執行緒功能(multithreading)
MIPS 的multithreading 很類似Intel 的 HyperThreading技術。從現在的發展來看,多內核占上風。
9.總結(U C i$D8o2h b
自己感覺ARM和MIPS在一開始的RISC的設計上有很多不同,但隨著技術的發展,各自揚長避短,好的技術大家都會使用。比如ARM11和MIPS R1000就使用了很多一樣的技術。感覺RISC做到了極至就都一樣了。
The past is experience, the present is experiment and the future is exam.
Use your experience in your experiments, and you will pass the exams. (3 Idiots, 2009)
Linkedin : tw.linkedin.com/in/iamsunny
Cortex-A9多核心處理器
最高效能可達到8000 DMIPS之外,還同時兼具了低功耗特性,可使新一代的行動運算裝置功能更為強大。
Cortex-A9改良了先前的超純量管線設計,它利用一個動態調整長度的八階超純量,以及具有亂序執行預測能力的同步多工管線,使其每個週期能執行四個指令。其元件時脈可超過1GHz,不僅能降低成本,更能解決現今主流八階處理器的效率問題。
而在MPCore技術的增強方面,姜新雨表示,多核心處理時如何維持各核心中快取記憶體的一致性(coherence)是一重要工作。對此,我們透過加速器一致性埠(Accelerator Coherence Port,ACP)的設計,可以利用這個連接埠與其它master裝置共享快取記憶體的內容。此一介面可作為AMBA 3 AXI匯流排的slave,並支援所有標準的讀/寫動作,無需外加另外的一致性功能電路,能夠在不增加功耗的情況下,進一步提升多核心效能。
採用台積電的65 nm原生製程,Cortex-A9可提供超過2.0 DMIPS/MHz的效能,同時核心邏輯成本佔用不到1.5mm2面積的矽元件。目前包括NEC、NVIDIA、Samsung、STMicroelectronics及TI等公司都已宣佈採用此新一代的處理器方案。
Cortex-A9改良了先前的超純量管線設計,它利用一個動態調整長度的八階超純量,以及具有亂序執行預測能力的同步多工管線,使其每個週期能執行四個指令。其元件時脈可超過1GHz,不僅能降低成本,更能解決現今主流八階處理器的效率問題。
而在MPCore技術的增強方面,姜新雨表示,多核心處理時如何維持各核心中快取記憶體的一致性(coherence)是一重要工作。對此,我們透過加速器一致性埠(Accelerator Coherence Port,ACP)的設計,可以利用這個連接埠與其它master裝置共享快取記憶體的內容。此一介面可作為AMBA 3 AXI匯流排的slave,並支援所有標準的讀/寫動作,無需外加另外的一致性功能電路,能夠在不增加功耗的情況下,進一步提升多核心效能。
採用台積電的65 nm原生製程,Cortex-A9可提供超過2.0 DMIPS/MHz的效能,同時核心邏輯成本佔用不到1.5mm2面積的矽元件。目前包括NEC、NVIDIA、Samsung、STMicroelectronics及TI等公司都已宣佈採用此新一代的處理器方案。
訂閱:
文章 (Atom)