2

以下に jal 機能を追加しようとしていますが、それがどのように機能するのかがわかりません。古いPC+4値を$raレジスタに格納し、制御を関数に転送して、制御を返す$raことはわかっていますが、ハードウェアに実装するにはどうすればよいですか? ここに画像の説明を入力

4

2 に答える 2

2

あなたがしなければならないことが2つあります。

  1. レジスタの入力にマルチプレクサを追加して、書き込むデータとして PC+4 値を選択できるようにします。適切な制御信号を使用すると、「jal $ra」命令の追加効果として PC+4 を書き込むことができます。
  2. return "jr $ra" 命令を実装します。次の PC を選択するロジック チェーンにマルチプレクサを追加して、命令が「jr xxx」の場合にレジスタ ファイルからの「read data 1」を次の PC として選択できるようにする必要があります。
于 2011-09-20T00:22:57.430 に答える
0

ここに画像の説明を入力 PC+4 を受け取り、それをレジスタ ファイルの「書き込みデータ」入力に送信する新しい行を追加します。マルチプレクサを追加する必要があります。また、"Write Register" フィールドが $RA のアドレスに設定されていることを確認する必要があります。レジスタ $RA は、ほとんどの場合、レジスタ番号 31 です。

于 2014-10-16T03:10:35.873 に答える