Armは本日、次世代の携帯電話、タブレット、ラップトップ向けにラインナップされたCortex-A78 CPUコアを発表するとともに、ロードマップから外れたCortex-X1を発表する。いずれも5nmプロセスノードを使用している。
また、同社は、デバイス上の機械学習ワークロードを加速するためのEthos-N78プロセッシングユニットと、ハイエンドハンドヘルド向けのMali-G78 GPUも発表する予定です。
今日発表予定の各発表を詳しく見ていきましょう。
Cortex-X1: ArmはCortex CPUのロードマップを策定しており、小型電子機器向けのマイクロコントローラグレードコアであるCortex-Mシリーズから、今日の多くのスマートフォンに搭載されているCortex-Aシリーズまで、幅広い製品群を網羅しています。Armは創業当初から組み込み機器とモバイルに注力し、RISC設計から最大限のパフォーマンスを引き出しつつバッテリー消費を抑えることに注力しており、そのロードマップもそれを反映しています。
Armが低消費電力、低コスト、高性能の中から2つを選ばなければならないとしたら、通常は最初の2つを選ぶでしょう。ここで言うコストとは、設計のダイ面積から顧客に請求する技術使用料まで、あらゆるものを指します。
自社のチップ用に Arm の設計図のライセンスを取得するメーカーは、2 つの方法のいずれかを選択できます。Apple のようにアーキテクチャ ライセンスを取得し、命令セット アーキテクチャに準拠した自社製の Arm 互換 CPU をゼロから設計する方法と、個々のコアのライセンスを取得してシステム オン チップに組み込み、出荷されるチップごとにロイヤルティを支払う方法です。
Armの顧客の大多数は後者のルートを選びます。なぜなら、Armがコア設計の大部分を担っているからです。しかし、それはArmの設計メニューに固執することを意味します。一部の顧客はシステムオンチップのカスタマイズされた設計図を希望していたため、Armは一部の顧客にCPUコアのライセンス供与を許可し、自社製品に合わせて設計の調整を依頼し、その結果生まれた技術を「Arm Cortexテクノロジー搭載」として販売しました。例えば、QualcommのSnapdragonラインに搭載されているKryo 200シリーズのCPUコアは、セミカスタマイズされたCortex-Aコアでしたが、私たちの経験では、それが「Arm Cortexテクノロジー搭載」であるという事実は、マーケティングの宣伝文句の中に隠されていました。
計算されたRISCについて話す:CPUの設計でArmよりも優れた仕事をできると思うなら、今がチャンスです
続きを読む
The Regが知る限り、Cortex-X1ファミリーは「Arm Cortexテクノロジーを基盤とする」プログラムにかなり近いと言えるでしょう。ただし、Arm幹部の一人が語ったように、「テクノロジーの出所は非常に明確」です。ArmはCortexブランドを前面に押し出したいと考えており、結果としてX1 CPUコアにはCortexブランドが冠されることになります。
要するに、少数の顧客が標準的なCortex-Aロードマップから外れた何かを希望した場合、その顧客のエンジニアはArmのエンジニアとチャットすることで、ニーズを満たすロードマップ外のCortex設計、例えばバッテリー寿命よりもシングルコア性能を優先する設計などを手に入れることができるということです。これは、今後発売されるスマートフォンやノートパソコンに搭載されるシステムオンチップ(SoC)が、性能と消費電力のバランスをとる標準的なCortex-A CPUコアと、必要に応じて短時間バースト的に高負荷のタスクに使用し、デスクトップレベルの性能を目指すCortex-X1コアを混在させることを意味します。これにより、Arm SoCは次世代ノートパソコンやハイエンドスマートフォンなどへの搭載準備が整います。
言い換えれば、Armとその顧客は「合意できるパフォーマンスポイント」を見つけることができる、とある幹部は語り、さらにこう付け加えた。「高いシングルコア性能を得るために、消費電力とダイ面積を後回しにしなければならない場合はどうするのか?」 これは、一部の顧客(クアルコムなど)がArmに詰め寄り、来年登場するとされるArm対応Apple Macのチップに対抗するため、自社のラップトッププロセッサに超ハイエンドCortex CPUコアを1つまたは2つ搭載するよう要求している状況と似ている。Appleの自社開発CPUコアは高性能で知られており、モバイルArmの世界における他の製品の基準となっている。Apple以外の製品に搭載されるラップトップグレードのシステムオンチップは、もしAppleのArm Mac製品に搭載されるマイクロプロセッサが市場に登場すれば、それらに対抗するために、1つ以上のCortex-X1 CPUコアと小型のCortex-Aコアを組み合わせた、超big.LITTLEアプローチを採用する必要があるかもしれない。
Cortex-X1の提供は、少なくとも私たちにとっては、これまでの顧客指定コア「Arm Cortexテクノロジー搭載」がArmの好みに合わなかったことを示唆しています。ブループリント作成者の期待通りに最適化されていなかったのです。Cortex-X1は、Armがロードマップから顧客が希望し、ライセンスを取得できるパフォーマンスと電力の領域を見つけ出し、1年以内にシステムオンチップに組み込むための巧妙な手段です。ここで厄介なのは、顧客が自社のCortex-X1を競合他社のCortex-X1とどのように差別化するかということです。それは個々の顧客次第のようです。少なくとも、このコアは公式にはCortex-X1として認識されるでしょう。
では、Cortex-X1には何が期待できるのでしょうか?以下はArmによるX1とA78の比較表です。後ほど詳しく説明します。
よくわからない方のために説明すると、Cortex-A78は命令キャッシュから一度に4つの命令を、MOPSキャッシュから6つのマクロ演算(MOPS)をフェッチします。X1はそれぞれ5つと8つです。どちらも64ビットArmv8.2-A CPUコアです。X1はA78の2倍の数、合計4つのNEON SIMD 128ビットエンジンを搭載し、カスタム高性能パーツに期待される通り、L1~L3キャッシュもA78よりも多くなっています。L1キャッシュはX1が64KBであるのに対し、A78は32KBまたは64KB、L2キャッシュは最大1MBであるのに対し、A78は最大512KB、L3キャッシュは最大8MBであるのに対し、A78は最大4MBです。念のため言っておきますが、X1はスマートフォンやノートパソコンなどの「クライアント」デバイスを対象としており、ローエンドサーバーなどには対応していません。
Arm命令はCPUのデコードパイプラインステージでマクロ演算に分解され、将来使用するためにキャッシュされます。以下は、ArmによるX1のパイプラインステージの内訳です。
Armによると、Cortex-X1のL0分岐ターゲットバッファには、ゼロサイクルのバブル分岐レイテンシを持つ96エントリがあり、MOPSキャッシュには3,000エントリが存在します。このアウトオブオーダー実行CPUコアは、224の命令ウィンドウと2,000のL2 TLBエントリを備えています。
Cortex-A78:さて、その話はここまでにして、X1から若干ダウングレードした、ごく標準的な市販のCortex-A78について見ていきましょう。分岐予測機能は1サイクルあたり2つの分岐をサポートし、このアウトオブオーダー実行CPUは、以前のCortex-A系プロセッサと比べてウィンドウサイズが小さくなっています。一方で、メモリロード帯域幅がA77比で50%向上し、メモリストア帯域幅が2倍(1サイクルあたり32バイトのシフトが可能)になるなど、様々な機能強化が施されています。A78はL2インターフェース帯域幅もA77の2倍です。
A78 は、昨年導入された A77 からさらに進化しています。7nm から 5nm への移行による利点を除けば、目立った違いはなく、帯域幅が大幅に改善され、効率性を向上させるための変更が加えられただけです。
一方、Ethos-N78はEthos-N77の2倍のピーク性能を備え、メモリから取得したニューラルネットワークの重みとアクティベーション値を解凍することで、RAM帯域幅の消費量を削減できるとされています。また、Mali-G78はG77よりも25%「優れた性能」を備えているとのことです。グラフィックスと機械学習の計算をより効率的に処理するために、FMA(Fused Multiply-Add)エンジンを再設計し、最上位レベルの回路をシェーダーコアの2倍のクロック周波数で動作させることができます。これにより消費電力が削減されるだけでなく、GPUの高位層部分が高速化することで、シェーダーエンジンに処理データを供給し続けることができるようになります。
これを読んでいただく頃には、Arm の Web サイトに新しいコアに関する技術的な詳細が掲載されているはずです。®