命令デコーダとシーケンサの記述


演習5:制御信号の生成

ロード命令の説明実行フェーズバス動作を参照しながら,ロード命令(インデックス修飾)の状態遷移を記述しましょう.

それではロード命令(インデックス修飾)の実行フェーズの状態をより詳細に図解します.


  1. 演習5で記述する部分

    演習5:ではLD_IX1からLD_IX5までの状態で必要となる各種制御信号を記述します.

    	when LD_IX1 =>	LD_IX1で必要な制御信号を記述します;
    when LD_IX2 => LD_IX2で必要な制御信号を記述します;
    when LD_IX3 => LD_IX3で必要な制御信号を記述します;
    when LD_IX4 => LD_IX4で必要な制御信号を記述します;
    when LD_IX5 => LD_IX5で必要な制御信号を記述します;

  2. ロード命令(インデックス修飾)に必要な制御信号の確認と記述

    それではロード命令(インデックス修飾)の状態遷移と各ステートでの実行動作を確認しましょう.必要となる制御信号を確認し適切な値を記述しましょう.

    1. LD_IX1

      インデックスアドレスを計算するためにインデックスレジスタ (IXR)の値をバッファ1 (BUF1) に転送します.

      このステートで必要となる制御信号はインデックスレジスタの読み出し制御信号 (IX_R) とバッファ1の書き込み制御信号 (BUF1_W) です.

      	when LD_IX1 =>	IX_R   <= IX_Rに必要な制御信号の値;
      BUF1_W <= BUF1_Wに必要な制御信号の値;


    2. LD_IX2

      データバスに命令レジスタ (IR) の下位8ビットを出力し,バッファ1 (BUF1) の値との加算演算を 行いバッファ2 (BUF2) に書き込みます.ただし、命令レジスタの下位8ビットは符号拡張を行ってデータ・バスに出力する必要があります.

      このステートで必要となる制御信号は命令レジスタの読み出し制御信号 (IR_R) とバッファ2の書き込み制御信号(BUF2_W)です.算術論理演算回路の演算制御信号 (S_ALU) はデフォルトでは常に加算を行う状態になっているのでこのステートでは特に指定する必要はありません.

      	when	LD_IX2 =>	BUF2_W <= BUF2_Wに必要な制御信号の記述;
      if (命令レジスタの8ビット目の状態) then IR_R <= IR_Rに必要な制御信号の記述;
      else IR_R <= IR_Rに必要な制御信号の記述;
      end if;


    3. LD_IX3

      計算されたインデックスアドレスをバッファ2 (BUF2) からアドレスレジスタ (MAR) に転送します.

      このステートで必要となる制御信号はバッファ2の読み出し制御信号 (BUF2_R) とアドレスレジスタの書き込み制御信号 (MAR_W) です.

      	when LD_IX3 =>	BUF2_R <= BUF2_Rに必要な制御信号の記述;
      MAR_W <= MAR_Wに必要な制御信号の記述;


    4. LD_IX4

      ロード命令(直接)の場合と同様にアドレスレジスタの値の番地に対してメモリ読み出しサイクルを開始します.

      このステートで必要となる制御信号はメモリ・リクエスト信号 (MREQ) です.

      	when LD_IX4 =>	MREQ   <= MREQに必要な制御信号の記述;


    5. LD_IX5

      データ・バスの読み込み制御信号 S_DBI を用いてデータ・バスに導き メモリから読み出した値を アキュムレータ (ACC) に書き込みます.

      また,このステートでロード命令(インデックス修飾)が完了しますので,命令完了信号 (ICS) をアクティブにします.

      このステートで必要となる制御信号はステートLD_IX4に引き続きメモリ・リクエスト信号 (MREQ)とアキュムレータ書き込み制御信号 (ACC_W),データ・バスの読み込み制御信号 (S_DBI),ならびに命令完了信号 (ICS) です.

      	when LD_IX5 =>	MREQ   <= MREQに必要な制御信号の記述;
      ACC_W <= ACC_Wに必要な制御信号の記述;
      S_DBI <= S_DBIに必要な制御信号の記述;
      ICS <= ICSに必要な制御信号の記述;

    6. 制御信号の説明


    制御信号の生成が終りましたら次の演習に入りましょう.


    命令デコーダとシーケンサのシミュレーション



    ホーム 命令デコーダとシーケンサの設計 シミュレーション 辞書
    This is my e-mail address:
    arch_www < www@cs.kumamoto-u.ac.jp >
    Copyright(C)KITE Microprocessor Project,1996