ARMベース・システムLSI開発の事例研究 ――CPUの選択,バス構成,グラフィックス処理やビデオ表示制御の取り扱い
図3で動作を説明します.マスタはスレーブ側(バス側)から返るHREADYOUT信号がHIGHのときに内部ステートを進ませ,アドレスHADDR(1)を出力します.次のHREADYOUT=HIGHで次アドレスHADDR②を出力します.このHADDR(2)を出力しているときが,(1)のデータ処理(リード/ライト)タイミングになります.ライト時はこのタイミングでデータHWDATA(1)をマスタが出力し,リード時はデータHRDATA(1)がスレーブ側(バス側)から返されます.このようなパイプライン動作になっているので,スレーブ側がデータを処理する時間の余裕が生まれ,クロック周波数を上げることができます.スレーブ側のデータ処理が間に合わない場合は,スレーブ(バス)側はHREADYOUTをネゲートします.図3では,(2)のデータ・フェーズがHREADYOUTにより延ばされています(ウェイト処理).
従来のAHBバスでは,マスタはバス・アービトレーション制御を考慮する必要がありましたが,ここではその必要はありません.基本的にバスから返るHREADYOUT信号を見て内部ステートを進ませればよいようになっており,設計の見通しが良くなっています.