マイコンにおけるコントローラの基本的な機能は、「機械のさまざまなコンポーネントが協調して動作するように制御する」ことです。コントローラは、命令の機能要件に従ってコンピュータのさまざまなコンポーネントが連携して動作するように指示するコンポーネントであり、コンピュータの中枢および指令センターであり、コンピュータ システム全体の動作を調整し、指示することができます。
このチュートリアルの動作環境: Windows 7 システム、Dell G3 コンピューター。
マイコンにおけるコントローラの基本的な機能は、「機械のさまざまなコンポーネントが協調して動作するように制御する」ことです。
コントローラー(コントローラー)とは、主回路や制御回路の配線を変更し、回路内の抵抗値を所定のシーケンスで変化させ、起動、速度調整、制動などを制御するマスターコマンドのことを指します。モーターの逆回転装置。プログラムカウンタ、命令レジスタ、命令デコーダ、タイミングジェネレータ、オペレーションコントローラで構成され、命令を発行する、つまりコンピュータシステム全体の動作の調整と命令を完了する「意思決定機構」です。
コントローラーは、命令の機能要件に従ってコンピューターのさまざまなコンポーネントが連携して動作するように指示するコンポーネントです。コンピューターの中枢であり、指令の中枢です。命令によって制御されます。レジスタ IR (命令レジスタ)、プログラムカウンタ PC (プログラムカウンタ)、および動作制御 OC (動作コントローラ) の 3 つのコンポーネントで構成されます。OC (動作コントローラ) は、コンピュータ全体の秩序ある動作を調整するために非常に重要です。
命令レジスタ: 現在実行されている命令、または今後実行される命令を保存するために使用されるレジスタ。命令には、演算のタイプを決定するオペコードと、オペランドのソースまたは宛先を示すアドレスが含まれています。命令の長さはコンピュータごとに異なり、命令レジスタの長さも異なります。すべてのコンピュータ操作は、命令レジスタに格納されている命令を分析することによって実行されます。命令レジスタの入力端はメモリから命令を受け取り、命令レジスタの出力端は 2 つの部分に分割されます。オペコード部分は、この命令がどのような種類の操作を実行するかを示す分析のためにデコード回路に送信され、アドレス部分は、有効なアドレスを生成するためにアドレス加算器に送信され、その後、数値をフェッチまたは保存するためのアドレスとしてメモリに送信されます。 。
メモリとは、現在実行中の命令を保存するために使用されるメイン メモリ、キャッシュ、レジスタ スタックなどを指します。命令が実行されると、命令はまずメモリからデータ レジスタ (DR) にフェッチされ、次に IR に転送されます。命令はオペコード フィールドとアドレス コード フィールドに分かれており、これらは 2 進数で構成されます。特定の命令を実行するには、オペコードをテストして必要な操作を識別する必要があります。これは命令デコーダが行うことです。命令レジスタのオペコード フィールドの出力は、命令デコーダへの入力になります。オペレーション コードがデコードされると、特定の操作に対する特定の信号をオペレーション コントローラーに送信できます。
プログラム カウンタ: プログラム内で次に実行される命令のアドレスを示すカウンタ。命令カウンタとも呼ばれます。命令アドレスレジスタとカウンタの両方として機能します。命令が実行されると、プログラム カウンタは命令アドレス レジスタとして機能し、プログラムの実行を継続するには、その内容が次の命令のアドレスに変更されている必要があります。
これには次の 2 つの方法が考えられます。
1 つ目の方法は、命令内に次の命令のアドレスを含める方法です。命令の実行中に、このアドレスを命令アドレス レジスタに送信することで、プログラムを継続的に実行するという目的を達成できます。この方法は、ドラムや遅延線などのシリアル デバイスをメイン メモリとして使用する初期のコンピュータに適していました。この命令の実行時間に基づいて次の命令のアドレスを適切に決定することで、次の命令の読み出し待ち時間が短縮され、プログラムの実行速度が向上します。
2 番目の方法は、命令を順番に実行することです。プログラムはいくつかのプログラムセグメントで構成されており、各プログラムセグメントの命令はメモリに順番に格納されるように設計できるため、命令アドレスレジスタにカウント機能があれば、命令の実行中にカウントされます。インクリメントが自動的に追加され、次の命令のアドレスが形成され、それによって命令の順次実行の目的が達成されます。この方法は、メイン メモリとしてランダム アクセス メモリを搭載したコンピュータに適しています。プログラムがあるプログラム セグメントから別のプログラム セグメントに移動する必要がある場合、転送命令を使用してこれを実現できます。転送命令には、転送先のプログラムセグメントのエントリ命令のアドレスが含まれる。転送命令を実行すると、このアドレスが次の命令のアドレスとしてプログラムカウンタ(このときは命令アドレスレジスタとしてのみ使用され、カウントされません)に送られ、プログラムセグメントの転送の目的が達成されます。同様のメソッドがサブルーチン呼び出し、割り込みおよびトラップ処理などに使用されます。ランダム アクセス メモリの普及後、2 番目の方法の全体的な動作効果は 1 番目の方法よりもはるかに優れているため、命令の逐次実行が主流のコンピュータで一般的に使用される方法になり、プログラム カウンタはコンピュータの不可欠な部分になりました。中央処理装置、制御部品。
CPU 内の各機能コンポーネントは、特定の機能を実行します。コンポーネントとデータ フロー制御コンポーネント間の情報送信の実装。多くのデジタル コンポーネント間で情報を送信するパスは、通常「データ パス」と呼ばれます。情報がどこから始まり、どのレジスタまたはマルチプレクサを通過し、最終的にどのレジスタに送信されるかを制御する必要があります。レジスタ間のデータ パスを確立するタスクは、「オペレーション コントローラー」と呼ばれるコンポーネントによって完了します。
演算コントローラの機能は、データパスを正しく確立するために命令のオペコードとタイミング信号に基づいてさまざまな演算制御信号を生成し、命令のフェッチと実行の制御を完了することです。
設計手法の違いにより、構造が異なる 2 つのコントローラーがあります。マイクロ操作とは分解できない操作のことであり、マイクロ操作を実行するには必ず対応する制御信号(マイクロ操作制御信号またはマイクロ操作コマンドといいます)が必要です。デジタルコンピュータは基本的に制御コンポーネントと実行コンポーネントの 2 つの部分に分けることができます。コントローラは制御部品であり、演算器、メモリ、周辺機器はコントローラに対する実行部品です。制御コンポーネントと実行コンポーネント間の接続の 1 つは、制御線を介するものです。制御コンポーネントは、制御線を介して実行コンポーネントに対して各種制御コマンドを発行するが、通常、この制御コマンドをマイクロコマンドと呼び、マイクロコマンドを受け取った実行コンポーネントによる動作をマイクロオペレーションと呼ぶ。制御コンポーネントと実行コンポーネントの間のもう 1 つの接続は、フィードバック情報です。実行コンポーネントが動作状況をフィードバックラインを通じて制御コンポーネントに反映し、制御コンポーネントが実行コンポーネントの状態に基づいて新たなマイクロコマンドを発行することを「ステータステスト」とも呼びます。マイクロ操作は、実行コンポーネントの基本操作のグループです。データ パスの構造的関係により、マイクロ操作は互換性と相互排除の 2 つのタイプに分類できます。マシンの 1 CPU サイクルで、特定の操作機能を実装するマイクロコマンドの組み合わせがマイクロ命令を構成します。一般的なマイクロ命令のフォーマットは、動作制御とシーケンス制御の 2 つの部分から構成されます。動作制御部は、機械全体の動作を管理・指示するための制御信号を送信するために使用されます。そのシーケンス制御部分は、次のマイクロ命令を生成するためのアドレスを決定するために使用されます。実際、機械語命令の機能は、多数のマイクロ命令のシーケンスによって実装されます。この一連のマイクロ命令は、マイクロプログラムと呼ばれることがよくあります。マイクロプログラムはマイクロ命令で構成されているため、現在のマイクロ命令が実行されるとき。現在のマイクロ命令の実行が完了した後に次のマイクロ命令をフェッチして実行できるように、後続のマイクロ命令のアドレスを指定する必要があります。
関連知識の詳細については、
FAQ以上がマイコンのコントローラーの基本的な機能は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。