バンクインターリーブ

ADSP-BF533はSDRAMのバンク選択線(BAx)がアドレスの最上位ビットに接続されています。と言うことは、接続したSDRAMは4つの大きなバンクとしてプログラムから見えます。たとえば、64MBのSDRAMは、16MBの連続するバンクが4つ並んだものです。
バンク間のランダムアクセスは、バンク内ランダムアクセスと異なりプリチャージを隠すことが出来ます。これがバンクインターリーブです。バンクインターリーブを活用すれば、見かけの上のバスバンド幅をあげることができます。
たとえば、MDMAでSDRAMとL1キャッシュの間のデータを転送しつつ、PPI DMAを走らせているアプリケーションを考えましょう。MDMAのトラフィックは定期的にPPI DMAによって中断されます。このとき、二つのDMAのSターゲットSDRAMアドレスが同じバンク内にあると、バスマスター権の譲渡のたびにSDRAMはプリチャージされ、デッドタイムが生じます。
一方、別々のバンクに配置されていると、バンク切り替えはプリチャージ無しに出来ますので、SDRAMとの間のバースト転送を途切れさせずにバスマスター権を切り替えることが出来ます。
実行コード、データ、PPIバッファを別バンクに分けるだけで大きな効果を期待できます。