Next: コマンドラインオプション
Up: プロセッサから発行される要求に対する処理
Previous: isim_processorへのパケットの送信
isim_processorからの要求に対して外部システムが行うべき処理に
ついて、パケットに記された情報別に説明する。
- 1byteデータの読み出し要求(rw==0、data_size==1)が
発行されたとき
- addr番地からデータを読み出す
- 読み出したデータをdata_byteに代入して
isim_processorに返す
- 2byteデータの読み出し要求(rw==0、data_size==2)が
発行されたとき
- addr番地からデータを読み出す
- 読み出したデータをdata_halfに代入して
isim_processorに返す
- 4byteデータの読み出し要求(rw==0、data_size==4)が
発行されたとき
- Fetch and Decを行う領域へのアクセス
(addr >= FAD_MEM_TOP && addr <=
FAD_MEM_BOTTOM)
- addr番地からデータを読み出す
- 読み出したデータから1引いた値をaddr番地に書き込む
- 読み出したデータをdataに代入して
isim_processorに返す
- Test and Setを行う領域へのアクセス
(addr >= TAS_MEM_TOP && addr <= TAS_MEM_BOTTOM)
- addr番地からデータを読み出す
- 読み出したデータが1ならばaddr番地に0を書き込み、
dataに0を代入してisim_processorに返す
- 読み出したデータが0ならばdataに1を代入して
isim_processorに返す
- 通常のメモリアクセスを行う領域へのアクセス
(上記条件以外のaddr)
- addr番地からデータを読み出す
- 読み出したデータをdataに代入して
isim_processorに返す
- 8byteデータの読み出し要求(rw==0、data_size==8)が
発行されたとき
- addr番地とaddr+4番地からデータを読み出す
- addr番地から読み出したデータをdataに、
addr+4番地から読み出したデータをdata2に代入して
isim_processorに返す
- 1byteデータの書き込み要求(rw==1、data_size==1)が
発行されたとき
- 2byteデータの書き込み要求(rw==1、data_size==2)が
発行されたとき
- 4byteデータの書き込み要求(rw==1、data_size==4)が
発行されたとき
- 8byteデータの書き込み要求(rw==1、data_size==8)が
発行されたとき
- addr番地にdataの値を、
addr+4番地にdata2の値を書き込む
以上の処理さえ正確に行えばよい。そのため、プロセッサ外部の
ネットワーク部やメモリシステムなどの記述は、
ISISのライブラリを使用しなくてもよい。
Toshiya Minai
平成17年2月1日