※ 引述《tinlans ( )》之銘言:
: ※ 引述《fish39 (醒醒吧!!宅宅)》之銘言:
: : 64-bit CPU是指,data bus寬度為64條線
: : 這個問題其實沒這麼複雜啊,也很簡單
: : 會數位IC design的人,這是個常識喔!!
我也會數位IC design, 我幫你補充一下. :)
你說的是沒有cache的CPU的常識.
有cache的CPU幾乎都 "data bus的寬度" > "GPR的寬度". Orz
如我之前文章所提 Pentium II (Pentium Pro的後代)的Data bus是64-bit.
這是查Pentium II的Datasheet來的.
(大家都知道Pentium II是32-bit CPU, 不是64-bit.)
80386SX也是一個32-bit CPU, 其data bus只有16-bit.
(這是Cost的問題, 不是Cache或是效能的問題.)
: 之所以會複雜化是因為現在 CPU 的設計常常很詭異,
: 正常又直覺的設計是 data bus 跟 register 寬度相同,
: 但是不少 CPU 又不是這樣子,
: 喜歡搞一堆有的沒的讓它們不同寬,
: 所以出現了一些爭議。
就 GPR architecture的CPU來說, CPU是幾bit都是用GPR的大小來分.
data bus的Size不等於GPR的Size的原因, 現代幾乎都是Cache的原因.
(以前有些CPU是考慮Pin count和周邊IC的問題.)
因為Pentium II的Cache line是32-byte, 所以Data bus有64-bit的寬度還蠻合理.
64-bit的Bus可以做8/16/32/64的存取, 傳個4次就可以傳一個cache line.
即使Cache沒有enable, 也是用64-bit data bus去存取.
因為Pentium II所需要的memory system已經被要求如何設計,
這個memory sysytem可以用byte addressing來存取.
(當然也支援其他的addressing mode.)
大部分商業公司是不會講CPU內部是如何design.
所以用CPU內部設計方式來區分的人大部分都是學術界的人.
業界? 能賺到錢就好了.
區分? 能刺激消費的話就可以搞區分. XD
我之前是做computer architecture.
在1999~2000之間,我曾經clone過ARM7TDMI,
除了功率不同以外, 其他都跟data sheet一樣.
(我辦不到像ARM一樣的low power, ARM太厲害了. Orz )
ARM7TDMI是32/16-bit RISC architecture,
所以我很確定GPR architecture的CPU是用GPR的size來分.
( 當然書本上也是這麼寫. XD )
PS: 不過在architecture的領域中,
我最擅長的是ARM7TDMI沒有的cache system. Orz
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.230.125
※ 編輯: gwliao 來自: 140.112.48.60 (01/30 18:15)