# ARM Cortex-A53 ARMv8A命令セットアーキテクチャ(32/64ビット両対応)を実装する、設定可能なIP(intellectual property)コア。タブレット・スマートフォン向けに高いエネルギー効率を狙って設計され、複数コアを1チップに構成できる。1クロックあたり2命令発行、最大1.3GHzで動作する。二段構成のTLBと二段構成のキャッシュ(L1命令/データキャッシュ8〜64KiB・2-way、L2ユニファイドキャッシュ128KiB〜2MiB・16-way)を持ち、L2ミスペナルティは124クロックに達する。D-キャッシュ32KiB・4KiBページの構成ではエイリアシングが発生しうるため、ミス時のハードウェア検出で回避する(Source: [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 2 Memory Hierarchy Design]] §2.6)。 SPECInt2006ベンチマークでの実測では、L1データキャッシュミス率が0.5%〜37.3%(中央値2.4%)、グローバルL2ミス率が0.05%〜9.0%(中央値0.3%)と、ワークロードによって最大180倍のばらつきを示す。MCFベンチマークは「キャッシュバスター」として上限を押し上げる代表例である。L1ミス率がL2の約7倍高い一方、L2のミスペナルティはL1の約9.5倍であるため、メモリ集約的なベンチマークではL2ミスがわずかに支配的になる(Source: [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 2 Memory Hierarchy Design]] §2.6)。 ## パイプラインとILP(第3章) デュアルイシューの静的スケジューリングスーパースカラーコアで、動的な発行検出は持つが命令はインオーダーで実行される。整数パイプラインは8段(F1・F2でフェッチ、D1・D2で基本デコード、D3で複雑命令のデコードと最初の実行ステージISSが重なる。Ex1・Ex2・WBで完結)。浮動小数点実行パイプラインはフェッチ・デコードと合わせて計10段。分岐は4種類の予測器(単一エントリのブランチターゲットキャッシュ、3072エントリのハイブリッド予測器、256エントリの間接分岐予測器、8段のリターンスタック)を使い分け、分岐判定はALUパイプ0で行われ誤予測ペナルティは8クロックサイクル(Source: [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 3 Instruction-Level Parallelism and Its Exploitation]] §3.12)。 ideal CPIはデュアルイシュー構造により0.5。SPECint2006ベンチマークでの実測CPI(パイプラインストール+メモリ階層ストールの合算)は0.97〜8.56まで幅があり、性能の悪いベンチマークではキャッシュミスがパイプラインストールを大きく上回る要因になる。浅いパイプラインとインオーダー実行により高クロック・低消費電力を両立し、4コア構成でIntel Core i7に対し約1/200の消費電力に収まるとされる(Source: [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 3 Instruction-Level Parallelism and Its Exploitation]] §3.12)。 ## 出典 - [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 2 Memory Hierarchy Design]] §2.6 - [[@2019__MorganKaufmann__Computer Architecture - A Quantitative Approach - Chapter 3 Instruction-Level Parallelism and Its Exploitation]] §3.12