ARMベース・システムLSI開発の事例研究 ――CPUの選択,バス構成,グラフィックス処理やビデオ表示制御の取り扱い

山崎尊永

tag: 組み込み

技術解説 2006年7月27日

● バス内のマスタの優先順位は固定

 ところで表4を見ると,レディ信号として,HREADYとHREADYOUTの2本があることがわかります.スレーブ側でそのデータ処理が間に合わないとき,バスのデータ・フェーズを延ばすために出力するのがHREADYOUTです.一方,HREADYはスレーブへの入力信号になっています.これはスレーブが前サイクルで選択されていたほかのスレーブへのアクセスが終了するタイミングを知り,次の自分の転送データの準備を行うために使います.各スレーブからのHREADYOUTはマルチプレクサでまとめられ,グローバルHREADYとして全マスタに伝えられるとともに,全スレーブへのHREADY入力になります.多くのケースでは,スレーブがデータ・フェーズを延ばすためのHREADYOUTだけを用いるようです.本LSIでもHREADYOUTしか使っていません.

 本LSIのマルチレイヤAHBには,図1に示したように,CPUの命令ポートとデータ・ポートを含めてマスタが6個接続されています.各マスタは勝手にアクセスを発生させるので,同じスレーブに対するアクセスが競合する場合は,このバス内で優先順位の調停が必要です.マルチレイヤAHB上のマスタの優先順位は,「ラウンドロビン方式」と「固定方式」を設計時に選択します.本LSIでは,VDCによるグラフィックス表示のためのフレーム・メモリのアクセスが最優先なので,以下のように固定にしました.

   VDC > HDMAC > GDP > AAD(DMA機能) > ARM926データ > ARM926命令

 さて,本LSIの設計において,このバスで苦労した点があります.本LSIはグラフィックス処理チップなので,フレーム・メモリが置かれるSDRAMをアクセスするバス帯域がシステム性能を左右します.このため,CPUの動作周波数とマルチレイヤAHBの動作周波数を同一かつ最大にしたいと考えました.テレビ表示を考えているので,選択できる周波数はビデオ・クロック27MHzの整数倍(81MHz,108MHz,135MHz,...)に限定されます.本LSIが採用する0.18μmプロセスでは,ARM926コアは余裕で108MHz動作しますが,一般のARMのシステムLSIでは,AHBバスの動作周波数はCPUの半分にするケースが多いようで,バスはタイミング的に108MHzで動かせる特性を持っていませんでした.かなり苦労しましたが,各モジュールの論理段数の削減やレイアウトのくふうにより,バスも108MHzで動作させるようにしました.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日