マイクロオペレーションとは?

コンピュータはプログラミング言語でプログラムされています。これらの言語は一般に人間が読める形式であり、プログラマーはコンピューターの動作を構成できます。次に、このコードをコンピューターの命令にコンパイルする必要があります。これの正確な詳細は、目的のコンピューターが使用する命令セット アーキテクチャまたは ISA によって異なります。これが、Intel および AMD の x86 CPU と、最新の Apple デバイスで使用されている ARM CPU のダウンロード リンクが異なる理由です。x86 と ARM の ISA は異なります。ソフトウェアは個別にコンパイルする必要があります。Apple が示したように、凝った翻訳層を構築することは可能です。そうするのは一般的ではありません。

CPU は提示された命令を認識し、それらを順番に実行すると考えるかもしれません。最新の CPU には、パフォーマンスを最適化するためにオンザフライで順序を変更できるアウトオブオーダー実行など、多くのトリックがあります。ただし、かなりうまく隠されている巧妙な部分は、マイクロ操作です。

マイクロオペレーションへのパイプライン

マシンコードの個々の命令は、命令または操作と呼ばれます。用語は交換可能です。複雑な命令セット コンピューティングまたは x86 のような CISC アーキテクチャの問題の 1 つは、命令の長さが異なる可能性があることです。これは具体的には、表現するのに必要なデータの量を指します。x86 では、命令は 1 バイトから 15 バイトまで短くすることができます。これを、最新の ARM CPU で使用される固定長 4 バイト命令の標準 RISC-V アーキテクチャと比較してください。

ヒント: RISC は、Reduced Instruction Set Computing の略です。

この構造の違いが意味することの 1 つは、RISC アーキテクチャは効率的にパイプライン処理するのがはるかに簡単になる傾向があるということです。各命令には、異なるハードウェアを使用する複数の操作段階があります。パイプラインは、これらのステージを介して複数の命令を同時に実行し、各ステージで正確に 1 つの命令を実行します。パイプライン処理を効率的に使用すると、パフォーマンスが大幅に向上します。パイプラインを効率的に利用するための重要な要素の 1 つは、各ステージが同時に使用されるようにすることです。これにより、パイプラインを介してすべてがスムーズに実行されます。

すべての命令が同じ長さであるため、RISC 命令は互いに同じ処理時間を必要とする傾向があります。ただし、CISC では、x86 のように、一部の命令が完了するまでに他の命令よりもはるかに時間がかかる場合があります。これにより、CPU をパイプライン化する際に大きな効率の問題が発生します。より長い命令が来るたびに、パイプラインでより長くスタックします。これにより泡が発生し、その背後にあるすべてのものを保持します。これを解決するのがマイクロオペレーションです。

効率的なマイクロオペレーション

各命令を実行可能な唯一の操作レベルとして扱う代わりに、マイクロ操作は新しい下位レイヤーを導入します。各操作は、多くのマイクロ操作に分割できます。マイクロ操作を慎重に設計することで、パイプラインを最適化できます。

興味深いことに、これは新しい利点を提供します。全体的な ISA (x86 など) は、多くの異なる CPU 世代間で同じままですが、マイクロ操作はハードウェアの世代ごとにカスタム設計できます。これは、各マイクロ操作の各パイプライン ステージからどれだけのパフォーマンスを引き出すことができるかを深く理解することで実行できます。

マイクロ オペレーションの初期の頃は、マイクロ オペレーションに応じて特定の機能を有効または無効にするハードワイヤード接続でした。最新の CPU 設計では、リオーダー バッファにマイクロ操作が追加されています。CPU が効率指向の並べ替えを実行できるのは、このバッファーです。並べ替えられるのは、実際の命令ではなく、マイクロ操作です。

場合によっては、特により高度な CPU では、さらに多くのことを実行できます。マイクロオペレーションの融合は、複数のマイクロオペレーションが 1 つに結合される場所です。たとえば、単純なマイクロ操作のシーケンスは、単一のより複雑な命令で実行できるアクションを実行する場合があります。実行されるマイクロ操作の数を減らすことで、プロセスをより速く完了できます。これにより、状態変化の回数も減り、消費電力が削減されます。完全な命令を分析して、より効率的なマイクロ操作構造に結合することもできます。

一部の CPU は、マイクロオペレーション キャッシュを利用します。これは、再度呼び出された場合に再利用できる、完全にデコードされたマイクロ操作シーケンスを格納します。通常、このようなキャッシュのサイズは、バイト容量ではなく、格納できるマイクロ操作の数によって参照されます。

結論

マイクロ操作は、命令セットの CPU 固有の実装です。命令は一連のマイクロ操作にデコードされます。これらのマイクロ操作は、より効率的にパイプライン化することが非常に簡単になり、CPU リソースをより有効に活用できます。マイクロ操作は命令セットにハードコードされていないため、各世代の CPU の特定のハードウェアに合わせてカスタマイズできます。マイクロオペレーションは、多くの場合、マイクロオペレーションまたはマイクロオプスにまで短縮されます。これは、マイクロプレフィックスの SI 記号であるギリシャ文字 μ (ミューと発音) を使用します。



Leave a Comment

修正:ChromebookがBluetoothデバイスに接続しない

修正:ChromebookがBluetoothデバイスに接続しない

BluetoothデバイスをChromebookとペアリングできない場合は、Bluetoothオプションを無効にして、ラップトップを再起動します。

ダブルVPNとは何ですか?シングルVPNよりどれだけ優れていますか?

ダブルVPNとは何ですか?シングルVPNよりどれだけ優れていますか?

ダブルVPNは、ネットワークの使用状況を監視している人からユーザーを保護するための優れた解決策です。

Chromebookノートパソコンでスクリーンショットを撮る方法

Chromebookノートパソコンでスクリーンショットを撮る方法

Chromebookノートパソコンでフルスクリーンのスクリーンショットを撮るには、CtrlキーとWindowsキーを同時に押します。

Windows 2016のリモートデスクトップホスト構成はどこにありますか?

Windows 2016のリモートデスクトップホスト構成はどこにありますか?

Microsoft Windows 2016でRDPホスト構成ツールをお探しですか?必要なRDP設定にアクセスするためのソリューションがあります。

MacでZoomでAirPodsが機能しない問題を修正

MacでZoomでAirPodsが機能しない問題を修正

多くのMac所有者は、ZoomでAirPodsを使用しないことに不満を持っていました。このガイドでは、この問題を解決する方法をよく示しています。

Li-Fiとは何ですか?

Li-Fiとは何ですか?

Li-Fiは、Wi-Fiの代替として設計された無線通信技術であり、可視光や近可視光を使用してデータを伝送します。最新のLi-Fi技術について詳しく調べてください。

ASUS ROGRAMDiskでRAMディスクを作成する方法

ASUS ROGRAMDiskでRAMディスクを作成する方法

ASUS ROG RAMDiskを使って、高速なRAMディスクを作成する方法を解説します。

FitbitCharge4を再起動してオンにする方法

FitbitCharge4を再起動してオンにする方法

Fitbit Charge 4を再起動してオンにする方法について詳しく解説します。このフィットネストラッカーの使い方や問題解決方法を学んで、健康管理に役立ててください。

Chromebookにバッテリーセーバーモードはありますか?

Chromebookにバッテリーセーバーモードはありますか?

Chromebookは現在、低電力モード設定を備えていませんが、効果的なバッテリー寿命の延ばし方について紹介します。

AnkerPowerConfスピーカー接続のトラブルシューティング

AnkerPowerConfスピーカー接続のトラブルシューティング

Anker PowerConferenceスピーカーの接続問題を解決するための完全ガイドを紹介します。