>>562
何で初代Atom(Bonnell)性能低いかってのは
https://en.wikichip.org/w/images/b/ba/bonnell_block_diagram.svg
https://en.wikichip.org/w/images/1/16/bonnell_pipeline.svg
これ見りゃ一目瞭然かな
L1I:32KB, L1D:24KB, L2:512KBと(見た目だけは)決して悪くなくフェッチも16B/cと十分で何なら無駄なぐらい
ここからがアレな構成になってくる
デコードは2-Wayシンプルデコーダーしか有さず複雑な命令は極端に遅いマイクロコードで処理する羽目になる
デコードされたμOPは命令キューに蓄えられてバックエンドに送られるんだけどROB無いことから分かるようにインオーダー実行
実行部はIntegerが2Port+SIMD/FPも2Portのケチりぶり(完全分離されているのはCore系より洗練されてる)
この少ないPortも対称ではなくて
・Integer Port0:ALU0, Shift/Rotate unit, Load/Store.
・Integer Port1:ALU1, Bit processing unit, jump unite and LEA(Load Effective Adress).
・SIMD/FP Port0:SIMD ALU, Shuffle unit, SIMD/FP multiply unit, Divide unit, (support IMUL, IDIV).
・SIMD/FP Port0:SIMD ALU, FP Adder.
おまけにSIMD/FPには他にちょろちょろ制限ががが
これだとIPCが低くなるのは当然だけどアーキテクトも当然そんなこと分かっていて
・単純な構造にしてトランジスタを少なくすることでクロックをあげる余地を増やす
・ハイパースレッディング(SMT)を用いることでインオーダーのストールを隠蔽する
方法を採用しておりIBM POWER6とPentium4(Net Burst)を彷彿させる

トランジスタ数をともかく減らしたかったのでクロック偏重に走ったけど
IPCが予想より更に悪かったのとプロセスの物理限界でクロック上げられずションボリになった時代の徒花
大好き(はぁと