Processor supplementary capability とは

プロセッサ補助機能は、その設計を市場に最初に導入した後に既存の中央処理装置設計に追加された機能です。
補完的な機能は、プロセッサ設計の有用性を高め、競合他社との競争を促進し、消費者にアップグレードする理由を与え、元のデザインとの下位互換性を維持します。
これらのCPUの多くはマイクロコントローラとして主に使用されているので、CPU補足命令能力は8または16ビットCPUに適用されません。現代の32および64ビットCPUでは、プロセッサ補完機能は、基本的なコア機能であると考えられるため、浮動小数点ユニット(FPU)またはメモリ管理ユニット(MMU)に拡張されません。ただし、MMUとFPUのコア機能の拡張機能はCPU拡張機能と見なすことができます。

Index register とは

コンピュータのCPU内のインデックスレジスタは、通常はベクトル/アレイ演算を行うために、プログラムの実行中にオペランドアドレスを変更するために使用されるプロセッサレジスタである。
インデックスレジスタの内容は、実際のデータ(オペランド)の「実効」アドレスを形成するために即値アドレス(命令自体の一部であるもの)に加算される(場合によっては減算される)。通常、インデックスレジスタをテストするための特別な命令が用意されています。テストが失敗した場合は、インデックスレジスタを即時定数および分岐(通常はループの開始)に増分します。命令セットによっては、複数のインデックスレジスタを使用することができます。その場合、追加の命令フィールドは、どのインデックスレジスタを使用するかを指定する。通常、複数の索引レジスタを指定するように指示するプロセッサーは、内容を一緒に追加しますが、IBMは、内容が一緒になっている、または一緒になっていた一連のコンピューターを持っていました。
間接アドレシングのない初期のコンピュータでは、いくつかの追加のプログラムステップを必要とする命令アドレスを変更することによってアレイ操作を実行しなければならず、コンピュータのメモリを使い果たしてしまいました。 20年後の初期のマイクロコンピュータ)。

Media processor とは

画像/ビデオプロセッサとして主に使用されるメディアプロセッサは、リアルタイム(例えば、ディスプレイリフレッシュ)レートでデジタルストリーミングデータを処理するように設計されたマイクロプロセッサベースのシステムオンチップである。これらのデバイスは、デジタル信号プロセッサ(DSP)のクラスと考えることもできます。
コンピュータディスプレイに使用されるグラフィック処理装置(GPU)とは異なり、メディアプロセッサは、デジタルテレビおよびセットトップボックスを対象としている。
ストリーミングデジタルメディアクラスには次のものがあります。
 非圧縮ビデオ圧縮デジタルビデオ – 例えば。 MPEG-1、MPEG-2、MPEG-4デジタルオーディオ、例えば、 PCM、AAC
このようなSOCは、
 これらのメディアデータタイプを扱うように最適化されたマイクロプロセッサーメモリインターフェースストリーミングメディアは、様々なデジタルメディアコーデック
マイクロプロセッサには、次の最適化機能があります。
 ベクトル処理またはSIMD機能ユニットを使用して、これらのメディアデータタイプを効率的に処理することができます
従来のメディアプロセッサでは、これらのストリーミングメディアのデータ型は、フィールドで更新できない固定機能のハードワイヤードASICを使用して処理されていました。これは、メディア規格のいずれかが変更されたときの大きな欠点でした。メディアプロセッサはソフトウェアでプログラムされたデバイスなので、新しいソフトウェアリリースでそれらに対して行われた処理を更新できます。これにより、新しい世代のシステムをハードウェアの再設計なしで作成することができました。セットトップボックスの場合、ケーブルや衛星ネットワークを介して新しいソフトウェアをダウンロードすることで、現場でのアップグレードが可能になります。
メディアプロセッサのアイデアを先駆けて(そしてメディアプロセッサのマーケティング用語を作成した)企業には以下のものが含まれていました:
 MicroUnity MediaProcessor – 導入前の1996年に取り消されたIBM Mfast – 1995年にマイクロプロセッサー・フォーラムで発表され、1997年中に出荷される予定だったが、導入前にキャンセルされたEquator Semiconductor BSPライン – プロセッサーはHitachiテレビで使用され、Pixelworks Chromatic Research ATI TechnologiesのPhilips TriMedia社が買収した、1990年代半ばの一部のPCグラフィックスカードで使用されていました – 家電、Philips SemiconductorsがPhilipsから分離してNXP Semiconductorsになりました2006年に
家電メーカーは、独自のメディアプロセッサを設計し、ビデオ製品に統合することで、この市場を首尾よく支配してきました。フィリップス、サムスン、松下、富士通、三菱などの企業では、独自のメディアプロセッサデバイスを使用しています。
このようなデバイスの新しい世代では、高精細度テレビ信号を処理する際に大幅に増加する計算ニーズに対処するために、様々な形態のマルチプロセッシング(マルチCPUまたはDSP)を使用しています。

Reset vector とは

リセットベクトルは、リセット後に実行される最初の命令を見つけるために中央処理装置が行うデフォルトの位置である。リセットベクトルはポインタまたはアドレスであり、CPUは命令を実行できるようになるとすぐに開始する必要があります。アドレスは、CPUを含むシステムをブートするプロセスの第1ステップとして、CPUの動作を開始する命令を含むように初期化された不揮発性メモリのセクション内にある。
 8086プロセッサーのリセット・ベクトルは、物理アドレスFFFF0h(1 MB未満の16バイト)です。リセット時のCSレジスタの値はFFFFhであり、リセット時のIPレジスタの値は0000hであり、物理アドレスFFFF0hにマップされるセグメント化アドレスFFFFh:0000hを形成する。 80286プロセッサのリセットベクタは、物理アドレス00FFFF0h(1 MB未満の16バイト)です。リセット時のCSレジスタの値はF000hであり、リセット時のIPレジスタの値はFFFhhであり、リアルモードで物理アドレス00FFFF0hにマップされるセグメント化アドレスF000h:FFF0hを形成します。これは、CSレジスタを変更せずに保護モードに切り替えるために十分なスペースを確保できるように変更されました。 80386以降のx86プロセッサのリセットベクタは、物理アドレスFFFFFFF0h(4 GB未満の16バイト)です。リセット時のCSレジスタのセレクタ部の値はF000h、CSレジスタのベース部の値はFFFF0000h、リセット時のIPレジスタの値はFFF0hであり、セグメント化アドレスFFFF0000h:FFF0hを形成する実モードでは物理アドレスFFFFFFF0hに設定されます。 PowerPC / Power Architectureプロセッサのリセットベクタは、32ビットプロセッサでは0x00000100、64ビットプロセッサでは0x0000000000000100の実効アドレスになります。 m68kアーキテクチャプロセッサのリセットベクタは、初期割り込みスタックレジスタ(IISR;リセットベクタではなく、リセット後にスタックポインタを初期化するために使用されます)と0x4です。 SPARCバージョン8プロセッサのリセットベクタは0x00のアドレスにあります。 SPARCバージョン9プロセッサのリセットベクタは、パワーオンリセットの場合は0x20、ウォッチドッグリセットの場合は0x40、外部起動リセットの場合は0x60、ソフトウェア起動リセットの場合は0x80になります。 MIPS32プロセッサのリセットベクタは、仮想アドレス0xBFC00000にあり、KSEG1キャッシュ不可メモリ領域の最後の4Mバイトに配置されています。コアは、リセット時および例外が認識されたときの両方でカーネルモードに入り、仮想アドレスを物理アドレスにマップすることができます。 ARMファミリのプロセッサのリセットベクタは、アドレス0x0または0xFFFF0000です。通常の実行中に、元のROMベースのベクタテーブルと比較して、パフォーマンスを向上させるためにRAMがこの場所に再マップされます。

Program counter とは

Intel x86およびItaniumマイクロプロセッサで一般に命令ポインタ(IP)と呼ばれるプログラムカウンタ(PC)は、命令アドレスレジスタ(IAR)、命令カウンタ、または命令シーケンサの一部と呼ばれることもあります。コンピュータがプログラムシーケンスのどこにあるかを示します。
ほとんどのプロセッサでは、PCは命令をフェッチした後にインクリメントされ、実行される次の命令のメモリアドレスを保持する(「指す」)。 (インクリメントがフェッチに先行するプロセッサでは、PCは現在実行中の命令を指し示します)。
プロセッサは通常、メモリから順次命令をフェッチしますが、制御転送命令は、PCに新しい値を設定することによってシーケンスを変更します。これには、分岐(ジャンプとも呼ばれる)、サブルーチン呼び出し、およびリターンが含まれます。いくつかのアサーションの真実を条件とする転送によって、コンピュータは異なる条件下で異なるシーケンスに従うことができる。
分岐は、次の命令がメモリ内の他の場所からフェッチされることを提供する。サブルーチンコールは分岐するだけでなく、PCの前の内容をどこかに保存します。戻り値は、PCの保存された内容を取得してPCに戻し、サブルーチンコールに続く命令で順次実行を再開します。

Micro-operation とは

コンピュータ中央処理装置では、マイクロオペレーション(マイクロオペレーションまたはμopsとも呼ばれる)は、複雑な機械命令(この文脈ではマクロ命令と呼ばれることもある)を実装するためにいくつかの設計で使用される詳細な低レベル命令である。
通常、マイクロオペレーションは、レジスタ間または中央処理装置(CPU)のレジスタと外部バスとの間でデータを転送し、レジスタに対して算術演算または論理演算を実行することを含む、1つまたは複数のレジスタに格納されたデータの基本演算を実行する。典型的なフェッチ – デコード – 実行サイクルでは、マクロ命令の各ステップは実行中に分解されるので、CPUは一連のマイクロ動作を決定し、ステップする。マイクロオペレーションの実行は、CPUの制御ユニットの制御下で実行され、CPUの制御ユニットは、並べ替え、融合およびキャッシングなどの様々な最適化を実行しながらその実行を決定する。

Hardware performance counter とは

コンピュータでは、ハードウェアパフォーマンスカウンタまたはハードウェアカウンタは、ハードウェア関連アクティビティの数をコンピュータシステム内に格納するための最新のマイクロプロセッサに組み込まれた特殊用途レジスタのセットです。上級ユーザーは、これらのカウンタを使用して低レベルのパフォーマンス分析やチューニングを行うことがよくあります。