メモリ制御コントローラ、考

液晶カテゴリ作ってみる。

使う予定のATmega64はピン数山盛りなんだけどそれでもメモリ三枚制御はきついような。
三枚? 外部メモリバス使わないの? せっかくmega64なのに。
そうなんだけれど、予定している機能を100%実現しようとしたらどうしても速度が足りないような。計算してないけどね。
ちなみに三枚なのはRGB各一枚ということで。あと一画素につきあの液晶は各色6ビットなわけだけど、贅沢にも一画素各色1ワード=8ビット使おうかなとも。先頭2ビットは後述する命令領域に。
で、圧縮無しでいくとメモリ一枚1Mbitなわけだから3面分確保できそうな。
でもスプライト画像領域とか作るから、そんな単純にやらないけれど。
ちなみに今メモリ内に突っ込む領域は、

  • 背景画像(圧縮無し)
  • 背景にオーバーレイする画像(背景透過部分は圧縮)
  • スプライト部品(ランレングス圧縮)

こんな感じ。
で、オーバーレイやランレングス伸長デコーダにATTiny2313あたりを使いたい。メインのmega64とは非同期で、液晶出力のたびに同期をとる。
ただ問題が。tiny2313のピン数が……。8ビットをリニアに取れるのは2本。確か一本はuartとか他の機能と被る気が。
うーん。アドレスジェネレータだけATmega64に任せるのもありなような。デコード中は暇だろ……。
ここで問題なのがランレングス使ってることだけど今携帯で書いているからもう終わ