[020914]

128Mbitsで32MB拡張メモリ、できたかな?

PC110の拡張メモリ32MBを狙って、精根傾けて愉しく取り組んでいます。先回が三段跳びのホップなら、今回はステップでしょうか。("もう直ぐ「黒い後継機? U3」が出るという時に、何を今更!"という処でしょうけど)

128Mbを2個載せれば、32MBになるはずですが、1バンク当たり16MBの制約があって、先回はそこでストップしてしまいました。今回は、ロジックを追加して、望み通りに動くかどうかやってみました。

結果は、成功!全容量28MBWin95を走らせる事ができました。
(よく知られているように、32MBフルだと16色表示になるので、28MBで我慢します。下記の「参考資料,謝辞」を参照
しかし、立ち上がり後の切り換えは手動/仮付け回路なので、まだ完成というわけには行きません。
−−−−−−−−−−−−−−−−−−−−−−−−−
無い知恵を絞った.
一般的に、DRAMはアドレス線の本数を低減するために、アドレス信号をRow(行)アドレスとColumn(桁)アドレスとを、2回に分けて受け取ります。それらを全部合わせて、内部のメモリ領域をアクセスするわけです。

128MbのDRAMだと、RowアドレスはA0からA11、ColumnアドレスはA0からA10までが必要になります。

しかし、PC110の拡張メモリ・コネクタには、1バンクについて、RowはA0〜A11、ColumnはA0〜A9までしか出ていないと思われます。"columnのA10が足りない!
・・・(と言うか、RowA10は出ていても、1バンク16MBに制限されているので、columnA10が出て来ない?)

だから、如何に頑張っても、このままでは、128Mbメモリの半分しか使えない事になります。
で、考えたのは、*RAS3が出た(Lowの)時に、columnアドレスのA10をHighにしてやれば、残り半分もアクセスできるのではないか?という事です。

ロジックでA10を生成.
タイミング図が正しく読めていて、理屈が合ってるなら、論理回路で何とかなるかも知れません。*RAS3A10EX-OR(排他的論理和)を取ると、上手く行きそうです。

しかし、*RAS3をそのまま使うと、Rowアドレスが出る時に悪影響が出るのではないか?という心配があります。そこで、気休めにゲートを1個余分に使って、少し遅延させてやる事にしました。

組んでみたのが、左図です。本当は、上側の回路は、1個のANDゲートの方がいいのですが、2個のEX-ORで代用させました。(これは、1パッケージに4個入っていて、ちょうど上手く充当できるからなんです。が、今度はこちら側の遅延が心配)

実装した場所は、右最上部の写真で分かるように、コネクタの手前に裏返しで付けました。7番ピンがGNDなので、基板のGNDの皮膜を剥いで、そこに半田付けして固定しました。あとVcc配線にやや太目の線を使えば、程々にシッカリ留まります。

尚、ゲートは74VHC86(SOP)で\100/個、通販で購入。(1個で間に合いますが、通販で1個だけ注文するわけには...)

操作方法.
上の回路図には、抵抗と容量とによる立ち上がり遅延回路を描きましたが、実験では、スイッチを付けた場合と遅延回路(抵抗R:2MΩ、容量C:0.2μF:実は、これらしか手元に無かった)を付けた場合の両方で動作する事を確かめました。
また、別途、*RAS2と*RAS3とを始めのゲートに入力し、次段のゲートの片方の入力にR・Cの遅延回路を入れる方式でやってみたら、それも上手く動作しました。

以下の手順は、先達の方々の後追いでしかありませんが、自分の覚え書きとして、書いておきます。
スイッチの場合
1.始めスイッチをLow側に倒しておく
2.電源ON (多分、メモリ・カウントは03712 KB表示のはず)
3.F8を押して止め、PC-DOSモードにする (当苑のマシンでは/も、DOSが動かせるので)
4.Fn+F4でサスペンド状態にする
5.スイッチをHigh側に切り換える
6.Fnで、サスペンドを終了し、レジューム(動作再開)する
7.DRAK2301 03 CD と入力・実行
8.Ctrl+Alt+Deleteでホット・スタート
9.以降、Win95が立ち上がるまで待つ
尚、始めからスイッチをHighにしておくと、電源ON後画面が一瞬明るくなった後、
左上にカーソルが出て点滅を継続(以後、進行せず)
遅延回路の場合
1.電源ON
2.F8を押して止め、PC-DOSモードにする
3.DRAK2301 03 CD と入力・実行
4.Ctrl+Alt+Deleteでホット・スタート
5.以降、Win95が立ち上がるまで待つ 結果.
PC-DOSでも、emm386コマンドやmemコマンドで、28MBになっているのが確認できました。また、Win95上では左図の如く。それで、ネットスケープでのサイト巡りもできました。

兎に角、これで128Mbを"だまくらかして、働かす"事はできそうです。しかし、タイミング的に怪しげな処が二三ありますので、別の組み合わせでやったらどうなるか分かりません。(まあ、この板さえ動けば、それでいいのですが)

ゲート(74VHC86)は何とか乗りましたが、抵抗と容量が意外に大きくて乗せ難いのと、レジスタ設定の手間が面倒なので、もっと簡便な手抜き法(?)が無いものか考えてみたいと思ってます。(へたな考え...)


参考資料及び謝辞.
以下の資料やソフトを参考に、また使用させて頂きました。感謝 [(_~_)]
*「トランジスタ技術 2002年7月号 P284〜」 著者:ぽんたさん
*「【超人PCの 32MB 化】」 著者:HeroHeroさん
*DARK2301実行ファイル 作者:Apple2さん


[表紙頁]へ  関連記事の目次へ  [一言板]へ