AKI-H8/3069F LANボードのDRAM増設
秋月で売られているこのLANボード、デフォルト(秋月が言うにおまけ)で2MバイトのDRAMが乗っているのに
いかんせんuClinuxを起動するだけでその大半を使うと言うことでuClinux使いにはDRAM増設が定石となってるようです。
実はまだuClinuxは動かしたことがないけどマイコン弄り手始めにDRAMを増設したときのメモ。
3069の仕様
3069は外部メモリ空間が8つのエリアによって分けられています。
このエリアのサイズはMD0~MD2ピンによって選ばれるモードによって左右されるんですが今回はモード5で動かします。
モード5はメモリ空間が16Mバイトで、それを8分割して一つのエリアは2Mバイトですが、
そのエリアのうちDRAMが使えるのはエリア2~5となっています
しかしこのLANボードにはエリア2に2MバイトのDRAMが既に接続されているのでこれ以上にDRAMが増設できるのは最大で6Mバイトとなります。
まぁ8Mもあれば何でも何とかなるでしょう・・・
そして、このエリア0〜7はCS0~7にそれぞれ対応していて望むエリアのCSにDRAMのをRASをつなげばいいです
あと私がはまった穴ですが、今回のように16bitアクセスのDRAMを使う場合
アドレスバスはA0からつなぐのではなく、A1からつなぐんだそうです。
ハード
デフォルトで5117800もしくは5117805のDRAMが乗ってるそうで、
これを買ってきてそのまま上に積むというのもいいんですが
私は家にあるPC98から抜いた72pinSIMMで増設を試みます。
そのSIMMがこれ
BUFFALOのEMV-P16Mというやつ。乗っているDRAMはOKI製M5118160A-60J(1Mバイトx16bit)が4つで合計8Mバイト。
これはOKIのページからデータシートがDLできるのでもらってきます
真ん中に付いているBUFFALOの石(MGA-24)が気になるけどデータシートが出てこないので無視することにします。
そしてこのDRAMとSIMMのピンとの接続をSIMMのピン表とDRAMのデータシート片手にひたすら調べてみた。
結果こんな感じ。
DRAMを上の画像のようにA~Bとすると
SIMM |
|
DRAM |
CAS0 |
→ |
C-UCAS,D-LCAS |
CAS1 |
→ |
C-LCAS,D-UCAS |
CAS2 |
→ |
A-LCAS,B-UCAS |
CAS3 |
→ |
A-UCAS,B-LCAS |
RAS0 |
→ |
C-RAS |
RAS1 |
→ |
D-RAS |
RAS2 |
→ |
A-RAS |
RAS3 |
→ |
B-RAS |
WE |
→ |
A,B,C,D-WE |
DQ1-8 |
→ |
C-DQ9~16,D-DQ1~8 |
DQ9-16 |
→ |
C-DQ1~8,D-DQ9~16 |
DQ17-24 |
→ |
A-DQ1~8,B-DQ9~16 |
DQ25-32 |
→ |
A-DQ9~16,B-DQ1~8 |
DRAMのOEはGNDにつないで常にH固定のよう
A0-9はABCD全て一緒に引き出されてます
この調べた結果から
SIMM |
|
H8/3069 |
CAS0,CAS2 |
→ |
LCAS |
CAS1,CAS3 |
→ |
UCAS |
WE |
→ |
WE |
RAS0 |
→ |
CS3 |
RAS1 |
→ |
CS4 |
RAS2 |
→ |
CS5 |
A0-A9 |
→ |
A1-A10 |
DQ1~16,DQ17~32 |
→ |
DQ1~16 |
と接続。
そして
回路図
他のSIMMでこの接続が使えるかは不明。
後はひたすら配線作業するのみ。
こんな感じ
うはー終わったーとか思ったらプルアップ抵抗入れるの忘れてて何となく
空間的に配線。
CS6までつないじゃってますがエリア6はDRAMが使えないというのに後で気づいたからで実際意味がないです。
メインがUEW線で気休め程度に電源だけはジュンフロン線でやりました。
まだうまくできた方。ハンダ付けを楽しめるようになってきた。
DRAMのチェック
DRAMがちゃんと接続されているか調べるためにチェックをかけます。
チェックにはH8/3069LANボードについてきたCDにも入っているH8/OSを使わせてもらうことにします
LinuxによるマイコンプログラミングのページのH8/OS ver3.51からコマンドインタプリタつきの3069F,20MHzのもの(plus3068.mot)をもらってきます
これをh8に書き込んで、適当なターミナルソフトで接続する。
設定は57600bps,データ8bit,パリティなし,ストップビット1で。
Welcome to the H8 Monitor!!
H8/OS >setbyte fee020 c7
FF -> C7 updated.
H8/OS >setbyte fee026 b8
3C -> B8 updated.
H8/OS >memcheck 600000 600000
memory checked.
memory checked.がでれば正常にチェック終了。私の場合これが出るまでかなり苦労しましてw
迫りくるはんだづけのミスにノイローゼぎみ。
あとここにDRAMの初期化をタラタラとかいてたんですが
よく考えたらuClinux使う分にはそう意識しなくてもいい気がしてきて
消すのも何かムダな時間を過ごした気がして嫌なので
こっちの方に移しておきました
よかったら参考程度に使ってみてください。
参考サイト様
- 熊谷研究室さんAKI-H8でDRAM-SIMMを利用
- ルネサステクノロジ3069Rハードウェアマニュアル
- OKI電子5117800/5118160データシート
書籍
- メモリICの実践活用法—UV‐EPROM/EEPROM/SRAM/DRAMの構造と使い方 桑野 雅彦
- はじめる組込みLinux H8マイコン×uClinuxで学べるマイコン開発の面白さ 米田 聡 佐藤 嘉則
2008-6-15 回路図でRAS3の処理を忘れていたのでVccにつなぐように修正、他細かい所も修正
- これ普通のPCから引き抜いたDRAMでもできますか? -- 身長は直樹です。 (2012-07-25 23:53:17)
最終更新:2012年07月25日 23:53