banner
cos

cos

愿热情永存,愿热爱不灭,愿生活无憾
github
tg_channel
bilibili

コンピュータの構成原理復習まとめ(五)中央処理装置

第五章 中央処理装置#

5.1 CPU の機能と構成#

5.1.1 CPU の機能#

中央処理装置はコンピュータが自動的に命令を取得し、命令を実行するタスクを完了するための部品です;コンピュータの核心部品であり、通常は CPU と略されます。その機能は以下の通りです:

  • 命令制御:プログラムは命令の順序集合であり、マシンが規定の順序でプログラムを実行することを保証します。
  • 操作制御:CPU はメモリから取得した各命令の操作信号を管理し生成し、さまざまな操作信号を対応する部品に送信することで、これらの部品が命令の要求に従って動作するように制御します。
  • 時間制御:さまざまな操作に対して時間的な制御を実施し、コンピュータ内のさまざまな命令の操作信号はすべて時間によって厳格に制御されます。
  • データ加工:データに対して算術演算と論理演算処理を行います。データの加工処理を完了することが、CPU の根本的なタスクです。
    ここに画像の説明を挿入

5.1.2 CPU の基本構成 (重点)#

(1)中央処理装置 CPU = 演算器 + キャッシュ + コントローラ
(2)演算器

  • 算術論理ユニット (ALU)
  • 汎用レジスタ:R0~R3
  • データバッファレジスタ:DR
  • ステータスワードレジスタ:PSW
  • コントローラの命令を受けて操作を行います。
    • 算術演算、論理演算

(3)コントローラ

  • コントローラの構成
    • プログラムカウンタ(PC)
    • 命令レジスタ(IR)
    • アドレスレジスタ(AR)
    • 命令デコーダ(ID)
    • タイミングジェネレータ
    • 操作コントローラ
  • 決定機構:コンピュータシステム全体の操作を調整し指揮することを完了します。
  • 主な機能:
    • 命令キャッシュから 1 つの命令を取得し、次の命令が命令キャッシュ内のどの位置にあるかを示します。
    • 命令をデコードまたはテストし、所定の動作を開始するために対応する操作制御信号を生成します。
    • CPU、データキャッシュ、入出力デバイス間のデータフローの方向を指揮し制御します。
      • メモリとコントローラ間で流れる情報 ——命令フロー
      • メモリと演算器間で流れる情報 ——データフロー

5.1.3 CPU 内の主要なレジスタ (重点)#

データバッファレジスタ (DR)#

  • ALU の演算結果を一時的に保存するため、またはデータメモリから読み出されたデータワード、または外部インターフェースからのデータワードを保存します。
  • 役割
    • ALU の演算結果と汎用レジスタ間の情報伝送における時間的な「バッファ」として機能します。
    • CPU とメモリ、周辺機器間の「速度の差」を補償します。

命令レジスタ (IR)#

  • 現在実行中の命令を保存するために使用されます。
  • 命令デコーダ ID (Instruction Decoder)
    • 命令レジスタに一時的に保存された命令は、そのオペコード部分がデコードされるまで、どのような命令であるかを識別できません。
    • デコーダは命令を分析し解釈することで、対応する制御信号を生成します。

プログラムカウンタ (PC)#

  • プログラムカウンタ PC (Programming Counter) は、実行中の命令のアドレスまたは次に実行される命令のアドレスを保存するために使用されます。
  • プログラムが順次実行される場合、各命令を実行するたびに PC の値は 1 加算されます。すなわち、PC ← PC+1
  • プログラムにジャンプがある場合:PC ← PC + オフセットアドレス
  • レジスタとカウントの 2 つの機能を持ちます。

データアドレスレジスタ (AR)#

  • 現在 CPU がアクセスしているメモリユニットのアドレスを保存するために使用されます。メモリと CPU 間には操作速度の差があるため、アドレス情報を保存するためにアドレスレジスタを使用する必要があります。これは、1 回の読み取り / 書き込み操作が完了するまで続きます。

汎用レジスタ (R0~R3)#

  • データの転送と一時保存に使用されます。
  • 算術論理演算にも参加し、演算結果を保存することができます。
  • 累積レジスタ (AC)
    • 汎用レジスタ
    • ALU に作業領域を提供します。
    • ALU の演算結果情報を一時的に保存します。

ステータスワードレジスタ (PSW)#

  • 算術命令と論理命令の演算またはテスト結果によって生成されたさまざまな「条件コード」を保存するために使用されます。
  • 例:キャリー フラグ (C)、ゼロ フラグ (Z)、割り込みとシステム作業状態などの情報を保存します。
  • さまざまな状態条件フラグから構成されるレジスタです。

5.1.4 操作コントローラとタイミングジェネレータ#

  • (1)データパス:レジスタ間で情報を伝送するパスです。
  • (2)操作コントローラ:データパスの構築にさまざまな操作信号を提供し、データパスを正しく選択し、関連データをレジスタに打ち込むことで、命令の取得と実行の制御を完了します。
  • 設計方法の違いにより、タイミングロジック型とストレージロジック型に分けられます:
    • ハードワイヤードコントローラタイミングロジック技術を使用して実現されます。
    • マイクロプログラムコントローラストレージロジックを使用して実現されます。
  • (3)タイミングジェネレータ:さまざまな操作信号に対して時間的な制御を実施するためのタイミングとタイミング信号を提供します。CPU には割り込みシステム、バスインターフェースなどの他の機能部品も含まれます。

5.2 命令サイクル#

5.2.1 命令サイクルの基本概念(重点)#

プログラムの実行プロセス#

フォン・ノイマン構造のコンピュータがプログラムを実行する順序:

  1. プログラムの先頭アドレスから開始します。
  2. 各命令をステップ実行し、次に実行する命令のアドレスを形成します。
  3. 自動的に連続して命令を実行し、プログラムの最後の命令まで続けます。

命令の実行プロセス#

  • 命令を読み取ります。
    • 命令アドレスを主記憶のアドレスレジスタに送ります。
    • 主記憶を読み取り、内容を指定されたレジスタに送ります。
  • 命令を分析します。
  • 命令に規定された内容に従って命令を実行します。
    • 異なる命令の操作ステップ数と具体的な操作内容には大きな差があります。
  • 割り込み要求があるかどうかを確認し、なければ次の命令の実行プロセスに移ります。

命令サイクル#

CPU が命令を取得して実行するたびに、一連の操作を完了する必要があります。この一連の操作に必要な時間を通常「命令サイクル」と呼びます。

マシンサイクル#

マシンサイクルはCPU サイクルとも呼ばれます。通常、メモリ内で1 つの命令ワードを読み取るのに最も短い時間をもって CPU サイクルを規定します。命令サイクルはしばしば複数の CPU サイクル数で表されます。

クロックサイクル#

1 つの CPU サイクルの時間は、いくつかのクロックサイクル(通常はビートパルスまたは T サイクルと呼ばれます)を含みます。これは処理操作の最も基本的な単位です。これらのクロックサイクルの合計が 1 つの CPU サイクルの時間幅を規定します。

  • 単一サイクル、多サイクル:単一サイクルは 1 つの CPU サイクル内で命令の取得と実行を完了することを意味します。ほとんどの命令は複数の CPU サイクル内で命令サイクルのすべての操作を完了する必要があります。
    ここに画像の説明を挿入
    ここに画像の説明を挿入

5.2.2 MOV 命令の命令サイクル#

  • コンピュータ設計を行う際、命令の命令サイクルを表すためにボックス言語を使用することができます。
  • 方法:
    • ボックス——CPU サイクル
    • ボックスの内容—— データパスの操作または特定の制御操作
    • ひし形記号—— 判別またはテスト(時間的にはそれに続く前のボックスの CPU サイクルに依存し、単独で 1 つの CPU サイクルを占有しません)
    • ~ —— 公操作は命令が完了した後、CPU が行ういくつかの操作であり、これらの操作は主に CPU が周辺機器の要求を処理することに関連しています。割り込み処理がない場合、CPU は次の命令を取得します。命令の取得はすべての命令に共通しているため、命令の取得も公操作です。
      ここに画像の説明を挿入

まとめ

  • 1 つの命令は 1 つの命令取得サイクルと 1 つ以上の実行サイクルで構成されます。
  • 各 CPU サイクル内でデータパスは明確です。
  • データパスの構築と操作は操作コントローラの制御を受けますが、もちろんそれはどの命令であるかによって決まります。

5.3 タイミングジェネレータと制御方式#

5.3.1 タイミングジェネレータの役割と体制#

役割#

  • CPU 内のコントローラが機械の作業を指揮します。
  • CPU はタイミング信号 / サイクル情報を使用してメモリから取得したものが命令(命令取得)かデータ(実行)かを識別できます。
  • 1 つの CPU サイクル内のクロックパルスは CPU の動作に厳格な制約を持っています。
  • 操作コントローラから発信されるさまざまな信号は、時間(タイミング信号)と空間(部品操作信号)の関数です。

体制#

  • コンピュータハードウェアを構成するデバイスの特性により、タイミング信号の最も基本的な体制は電位 - パルス制です。(D フリップフロップを例に)

  • D は電位入力端、CP(クロックパルス)はパルス入力端です。

  • S はセット端、R はリセット端です。

  • 特性方程式は以下の通りです。

    • D=0 のとき、CP の立ち上がりが来ると D フリップフロップの状態は 0 に設定されます。
    • D=1 のとき、CP の立ち上がりが来ると D フリップフロップの状態は 1 に設定されます。
      ここに画像の説明を挿入
  • レジスタ間でデータを転送する際、データはフリップフロップの電位入力端に加えられ、データを入力するための制御信号はフリップフロップのクロック入力端に加えられます。電位の高低はデータが 1 か 0 かを示し、データを入力するための制御信号が来る前に、電位信号は安定している必要があります。

  • 設計方法の違いにより、操作コントローラはタイミングロジック型とストレージロジック型に分けられます:

    • ハードワイヤードコントローラ:タイミングロジック技術を使用して実現されます。
    • マイクロプログラムコントローラ:ストレージロジックを使用して実現されます。
  • ハードワイヤードコントローラ

    • タイミング信号は主状態サイクル ---- ビート電位 ---- ビートパルスの三層体制を採用します。
    • 1 つのビート電位は 1 つの CPU サイクルの時間を示し、大きな時間単位を示します;
    • 1 つのビート電位内にはいくつかのビートパルスが含まれ、小さな時間単位を示します。
    • 主状態サイクルにはいくつかのビート電位が含まれ、最大の時間単位です。
  • マイクロプログラム制御器:

    • タイミング信号はビート電位 ---- ビートパルスの二層体制を採用します。

5.3.2 タイミング信号生成器#

  • 機能:
    • タイミング信号の各型の計算機生成タイミング回路は異なります。
    • 大型、中型計算機のタイミング回路は複雑であり、マイクロ計算機のタイミング回路は単純です。
  • 構成:
    • クロックソース
    • リングパルス発生器
    • ビートパルスと読み書きタイミングデコードロジック
    • スタート / ストップ制御ロジック
      ここに画像の説明を挿入

5.3.3 制御方式#

  • マシン命令に含まれる CPU サイクル数は命令の複雑さを反映し、異なる CPU サイクルの操作信号の数と出現の順序も異なります。
  • 制御方式:異なる操作シーケンスのタイミング信号を形成する方法。三つの基本的な制御方式:
    • 同期制御方式
    • 非同期制御方式
    • 統合制御方式

同期制御方式(命令のマシンサイクル数とクロックサイクル数は不変)#

  • 完全に統一されたマシンサイクルがさまざまな異なる命令を実行します。
  • 不定長のマシンサイクルを採用します。
  • 中央制御と局所制御の結合。

非同期制御方式#

  • 各命令が必要な時間だけ占有します。
  • 前のマイクロ操作が完了したときに生成される「終了」信号が、次のマイクロ操作の「開始」信号として機能します。

統合制御方式(マイクロプログラムコントローラが採用)#

  • 大部分の命令は固定のサイクル内で完了し、少数の難しい操作は非同期方式を採用します。
  • マシンサイクルのビートパルスは固定されていますが、各命令のマシンサイクル数は固定されていません。

5.4 マイクロプログラムコントローラ#

  • 発展
    • マイクロプログラムの概念と原理は、1951 年にイギリスのケンブリッジ大学の M・V・ウィルクス教授によってマンチェスター大学のコンピュータ会議で初めて提案されました。当時、マイクロプログラムを保存するための適切な制御ストレージ素子は存在しませんでした。
    • 1964 年、IBM 社は IBM 360 シリーズ機でマイクロプログラム設計技術を成功裏に採用しました。
    • 1970 年代以降、VLSI 技術の発展により、マイクロプログラム設計技術の発展と応用が促進されました。
    • 現在、大型機から小型機、マイクロ機まで広くマイクロプログラム設計技術が採用されています。
  • 基本思想:
    • 問題解決の方法を模倣し、操作制御信号をマイクロ命令として編成し、制御ストレージに保存します。実行時に制御ストレージからマイクロ命令を取り出し、命令実行に必要な操作制御信号を生成し、対応する部品に所定の操作を実行させます。
    • 上記から、マイクロプログラム設計技術はソフトウェアの方法を利用してハードウェアを設計する技術であることがわかります。

5.4.1 マイクロプログラム制御原理#

1、マイクロコマンドとマイクロ操作#

  • マイクロコマンド:制御部品が実行部品に向けて発信するさまざまな制御命令。
    • マイクロコマンドは制御信号の最小かつ最も基本的な単位です。
  • マイクロ操作:実行部品がマイクロコマンドを受け取った後に行う操作。
  • マイクロコマンドとマイクロ操作は一対一の対応関係にあります。マイクロコマンドはマイクロ操作の制御信号であり、マイクロ操作はマイクロコマンドの操作プロセスです。マイクロ操作は実行部品内の最も基本的な操作です。
  • データパスの構造関係により、マイクロ操作は相容性と排他性の 2 種類に分けられます。
    • 排他性マイクロ操作:同時に実行できない、または同じビート内で並行して実行できないマイクロ操作を指します。
    • 相容性マイクロ操作:同時にまたは同じビート内で並行して実行できるマイクロ操作を指します。

2、マイクロ命令とマイクロプログラム#

  • マイクロ命令:同一 CPU サイクル内で並行して実行されるマイクロコマンドを制御ストレージに保存したものを1 つのマイクロ命令と呼びます。
  • マイクロプログラム:複数のマイクロ命令で構成され、命令機能を実現するためのプログラムです。
  • 各マシン命令は 1 つのマイクロプログラムに対応し、このマイクロプログラムを解釈実行することで、命令が規定する操作を完了します。

3、マシン命令とマイクロプログラムの関係(重点)#

  • 1 つのマシン命令は 1 つのマイクロプログラムに対応し、このマイクロプログラムは複数のマイクロ命令のシーケンスで構成されています。
  • マシン命令はメモリに関連し、マイクロ命令は制御ストレージに関連します。
    ここに画像の説明を挿入

5.4.2 マイクロプログラム設計技術#

1、マイクロコマンドのエンコーディング#

マイクロコマンドのエンコーディングは、マイクロ命令内の操作制御フィールドに採用される表現方法です。
エンコーディングには 3 つの方法があります:直接表現法 / エンコーディング表現法 / 混合表現法

直接表現法#
  • マイクロ命令内の操作制御フィールドの各ビットが 1 つのマイクロコマンドを表します。各ビットは直接コンピュータを制御でき、デコードは必要ありません。
  • 例えば、操作制御フィールドの各独立した 2 進数ビットは 1 つのマイクロコマンドを表し、そのビットが「1」の場合はこのマイクロコマンドが有効であり、「0」の場合はこのマイクロコマンドが無効であることを示します。
    マイクロ命令フォーマットの例(TEC-8 実験プラットフォームフォーマット)
  • 特徴:
    • この方法は構造がシンプルで、並行性が高く、操作速度が速いですが、マイクロ命令ワードが長すぎます。マイクロコマンドの総数が N 個である場合、マイクロ命令ワードの操作制御フィールドは N ビットが必要です。
    • さらに、N 個のマイクロコマンドの中には多くの排他性があり、並行操作を許可しないため、それらを 1 つのマイクロ命令に配置することは無意味であり、情報の利用率が低下するだけです。
エンコーディング表現法#
  • 一組の排他性マイクロコマンド信号を 1 つのフィールドにまとめ、フィールドデコーダを通じて各マイクロコマンド信号をデコードし、デコード出力を操作制御信号として使用します。
    ここに画像の説明を挿入
  • エンコーディング表現法の特徴:
    • 排他性を回避でき、命令ワードを大幅に短縮できます。
    • しかし、デコード回路が増加し、マイクロプログラムの実行速度が遅くなります。
混合表現法#
  • 前の 2 つを組み合わせて、両者の特徴を考慮します。
  • 1 つのフィールドの一部のエンコーディングは、特定のマイクロコマンドを独立して定義できず、他のフィールドのエンコーディングと組み合わせて定義する必要があります。
    ここに画像の説明を挿入
  • エンコーディングに関する注意点:フィールドエンコーディング法において操作制御フィールドは任意ではなく、以下の原則に従う必要があります:
  • 排他性マイクロコマンドを同じセグメントに、相容性マイクロコマンドを異なるセグメントに分ける。これにより、情報の利用率が向上し、マイクロ命令ワードの長さが短縮され、ハードウェアの並行性を十分に活用し、実行速度を向上させることができます。
  • データパス構造に適合させる必要があります。
  • 各小セグメントに含まれる情報ビットは多すぎてはいけません。そうでないと、デコード回路の複雑性とデコード時間が増加します。
  • ④ ** 一般的に各小セグメントには、何のマイクロコマンドも発信しないことを示す状態を残す必要があります。** したがって、** あるフィールドの長さが 3 ビットの場合、最大で 7 つの排他性マイクロコマンドを表すことができ、通常は 000 を使用して操作なしを示します。** 以下に例を示します。
    ここに画像の説明を挿入

2、マイクロアドレスの形成方法#

  • マイクロ命令の実行順序制御の問題は、実際には次のマイクロ命令のアドレスをどのように決定するかという問題です。
  • エントリアドレス:各マシン命令は 1 つのマイクロプログラムに対応し、共通の命令取得マイクロプログラムが主記憶からマシン命令を取得した後、マシン命令のオペコードフィールドに基づいて、マシン命令に対応するマイクロプログラムのエントリアドレスを見つけます。
  • 後続マイクロアドレスの生成方法には主に 2 つの方法があります:
    • カウンタ方式
    • マルチパス方式
カウンタ方式#
  • 方法:
    • 順次実行されるマイクロ命令の後続マイクロアドレスは、現在のマイクロアドレスに増分を加えることで生成されます
    • 非順次実行されるマイクロ命令の場合、転送方式を通じて、現在のマイクロ命令が実行された後、指定された後続マイクロアドレスの次のマイクロ命令を実行します。この方法では、マイクロアドレスレジスタは通常カウンタに変更されます。
  • 利点:マイクロ命令の順序制御フィールドは短く、マイクロアドレス生成機構はシンプルです。
  • 欠点:マルチパラレル転送機能が弱く、速度が遅く、柔軟性が低いです。
マルチパス方式#
  • マルチパス:
    • 1 つのマイクロ命令が複数の転送分岐の能力を持ちます。
    • マイクロプログラムが分岐しない場合、後続マイクロアドレスはマイクロ命令の順序制御フィールドから直接提供されます。
    • マイクロプログラムが分岐する場合、複数の「後選」マイクロアドレスが選択可能です。
    • 順序制御フィールドの「判別テスト」フラグと「状態条件」情報に基づいて、1 つのマイクロアドレスを選択します。

3、マイクロ命令フォーマット(重点)#

2 つのタイプに分かれます:水平型マイクロ命令と垂直型マイクロ命令
(1)水平型マイクロ命令

  • 水平型マイクロ命令は、一度に複数のマイクロコマンドを定義し、並行して実行できるマイクロ命令を指します。フォーマットは以下の通りです。
制御フィールド判別テストフィールド次アドレスフィールド

(2)垂直型マイクロ命令

  • マイクロ命令内にマイクロ操作コードフィールドを設定し、マイクロ操作コードコンパイル法を採用し、マイクロ操作コードがマイクロ命令の機能を規定します。これはマシン命令の構造に似ています。
    ここに画像の説明を挿入

水平型マイクロ命令と垂直型マイクロ命令の比較

  • 水平型マイクロ命令は並行操作能力が高く、効率が良く、柔軟性が高いですが、垂直型マイクロ命令はそれに比べて劣ります。
  • 水平型マイクロ命令は 1 つの命令を実行する時間が短いですが、垂直型マイクロ命令は実行時間が長いです。
  • 水平型マイクロ命令は命令のマイクロプログラムを解釈し、マイクロ命令ワードが長く、マイクロプログラムが短いという特徴があります。垂直型マイクロ命令はその逆です。
  • 水平型マイクロ命令はユーザーが把握しにくいですが、垂直型マイクロ命令は命令に比較的似ており、相対的に把握しやすいです。

5.5 ハードワイヤードコントローラ(略)#

5.6 パイプライン CPU#

5.6.1 並列処理技術#

并行性(Parrelism)の概念#

  • 問題に同時に計算または操作を行う特性があること。
  • 例:同じ遅延条件下で、n ビット演算器を使用して n ビット並列演算を行う速度は、ほぼ 1 ビット演算器を使用して n ビット直列演算を行う速度の n 倍です(狭義)(広義)意味では、同時に(同時性)または同じ時間間隔内に(並行性)2 つ以上の性質が同じまたは異なる作業を完了する限り、時間的に重なり合っていることが並行性を示しています。
  • 同時に(同時性)または同じ時間間隔内(並行性)に 2 つ以上の性質が同じまたは異なる作業を完了する限り、それらは時間的に重なり合っており、並行性を示しています。
  • 三つの形式
    • 時間並行(重複):複数の処理プロセスを時間的にずらして、同じハードウェアデバイスの各部品を交互に使用することで、ハードウェアの回転を加速し、速度を向上させる方法です。実現方法はパイプライン処理部品を採用することです。
    • 空間並行(リソースの重複):数量で勝負します。
      • それは本当に同時性を示すことができます。
      • LSI(大規模集積回路)と VLSI(超大規模集積回路)がその技術的保証を提供します。
    • 時間 + 空間並行:Pentium ではスーパースカラパイプライン技術が採用されています。

5.6.2 パイプライン CPU の構造#

  • パイプラインコンピュータのシステム構成
    • メモリシステム:主記憶は多体交差メモリを採用;キャッシュ
    • パイプライン方式 CPU:命令部品、命令キュー、実行部品
      • 命令パイプライン
      • 命令キュー:FIFO
      • 実行部品:複数のパイプライン方式で構成された算術論理部品を持つことができ、定点演算部品と浮動小数点演算部品を分けることができます。
  • パイプラインを実現するために、まず入力タスク(またはプロセス)を一連のサブタスクに分割し、各サブタスクがパイプラインの各段階で並行して実行できるようにします。
  • タスクがパイプラインに連続して入力されると、パイプラインの出力端からは連続的に実行結果が吐き出され、タスクレベルの並行性が実現されます。

5.6.3 パイプライン内の主要な問題 (重点)#

ボトルネック問題#

  • パイプライン内に速度の遅い段があります。
  • 解決方法:
    • さらにいくつかの段に分ける。
    • リソースの重複方法を使用します。

断流問題(3 つの関連)#

  • 関連の衝突が発生したためです。
  • リソース関連、データ関連、制御関連
  • リソース関連:複数の命令がパイプラインに入った後、同じクロックサイクル内で同じ機能部品を争奪します
    • 解決策:後続の命令を 1 拍遅らせてから進める;機能部品を追加する。
  • データ関連:プログラム内で、前の命令が完了するまで次の命令を実行できない場合、これらの 2 つの命令はデータ関連です。
    • RAW(Read After Write)
      • 後続の命令が前の命令が書き込んだデータを使用します。
        ここに画像の説明を挿入
    • WAW(Write After Write)
      • 2 つの命令が同じユニットに書き込みます。
    • WAR(Write After Read)
      • 後続の命令が前の命令が読んだユニットを上書きします。
    • 解決策:
      • 関連ユニットの読み取り操作を後ろにずらすことができます。
      • 関連する直接経路を設定します(フォワーディング)。
  • 制御関連
    • 原因:転送命令を実行する際、転送条件の結果に基づいて、順序で次の命令を取得する可能性があるか、新しいターゲットアドレスに転送して命令を取得する可能性があるため、パイプラインが断流します。
    • 解決策
      • 遅延転送法ジャンプ命令を最後のパイプライン入口に接続します。
      • 転送予測法:ハードウェアが将来の動作を予測し、転送命令をパイプラインに事前に進めます。

ここに画像の説明を挿入

本章小結#

  • CPU はコンピュータの中央処理部品であり、命令制御、操作制御、時間制御、データ加工などの基本機能を持っています。初期の CPU は演算器とコントローラの 2 つの部分で構成されていました。高密度集積回路技術の発展に伴い、現在の CPU チップは演算器、キャッシュ、コントローラの 3 つの部分に変わり、浮動小数点演算器、ストレージ管理部品なども含まれています。CPU には少なくとも以下の 6 種類のレジスタが必要です:命令レジスタ、プログラムカウンタ、アドレスレジスタ、データバッファレジスタ、汎用レジスタ、ステータス条件レジスタ。 CPU がメモリから命令を取得し、その命令を実行する時間を命令サイクルと呼びます。CISC では、さまざまな命令の操作機能が異なるため、さまざまな命令の命令サイクルは異なります。命令サイクルの区分は、操作コントローラの設計において重要な基準です。
  • タイミング信号生成器は CPU サイクル(マシンサイクルとも呼ばれる)に必要なタイミング信号を提供します。 操作コントローラはこれらのタイミング信号を利用して、秩序正しく 1 つの命令を取得し、その命令を実行します。マイクロプログラム設計技術は、ソフトウェアの方法を利用して操作コントローラを設計する技術であり、整然性、柔軟性、保守性など一連の利点を持ち、コンピュータ設計に広く応用されています。しかし、ULSI 技術の発展とマシン速度の要求に伴い、ハードワイヤードロジック設計思想が再び重視されています。ハードワイヤードコントローラの基本思想は、特定のマイクロ操作制御信号は命令オペコードのデコード出力、タイミング信号、状態条件信号の論理関数であるということです。すなわち、ブール代数を用いて論理式を記述し、ゲート回路、フリップフロップなどのデバイスを用いて実現します。
  • 並列処理技術は情報加工の各ステップと段階に貫通します。概括すると、主に 3 つの形式があります:①時間並行;②空間並行;③時間並行 + 空間並行。 パイプライン CPU は時間並行性を原理として構築されたプロセッサであり、非常に経済的かつ実用的な並列技術です。現在の高性能マイクロプロセッサはほぼ例外なくパイプライン技術を使用しています。パイプライン技術の主要な問題はリソース関連、データ関連、制御関連であり、これに対処するためには適切な技術的対策を講じる必要があります。そうしないと、パイプラインはスムーズに流れず、断流します。
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。