本改造記事は、シャープのポケットコンピュータPC−E650のS3:を増設しよう というものです。 なお、増設に際して特別なソフトを必要としません。 ・実体配線図を追加しました。(09月14日) (ダウンロード用ファイルにも実体配線図が追加されています。) 注意…お決まりですが...。 本改造記事により、ポケコン本体が破壊されたとしても一切の責任を負わないも のとします。全て各人の責任においてやって下さいるようお願いいたします。 以下、転載記事です。 ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ -NUM- -R.DATE- -R.TIME- -SENDER- -CONTENTS- [W]WRITE [RET]READ [?]HELP 00031 95-02-24 19:03:10 2845 E650のプロテクトRAM(S3:)増設講座(第1回)/Great *************************************** * * * ★E650のRAM増設設計講座 * * by Great * * * *************************************** このボードにE500用に『増設 208KBライトプロテクトS3:』をUPしましたが、 E650ユーザーの方からE650を増設するにはどうしたらいいか、とのメールを頂き まして、;4111でE650の情報提供のご協力を得て設計の説明が出来ました。 他の人にも参考になると思いますのでココにその手紙の一部をUPします。 初めての人にもわかるように書いたつもりですが解らなかったら質問して下さ い。 なお、私はE650を見たこと無ければ資料も初版の『活研』しかありません。 もし間違ったことを書いていても笑って許して下さい(^^;指摘はして下さい)。 ☆ ☆ ☆ まず、E500では&0C000〜&3FFFFが空領域でしたが、E650では&30000〜&33A18に 構造化BASICなどのROMがあって、これを切り放してRAMに割当てると構造化 BASICの命令を使った時に暴走してしまうとのことでした。 その区間を除くE650の空領域は192KBありますが、それを全部使うためにはア ドレスやチップセレクト信号のデコードも大変なら、あと128KB・RAMの他に32KB ・RAMの2階建がもうひとつ、そして全ピンジャンパー…よほどのハンダ技術を 持っていてもそう簡単に動くものを作れるとはおよそ考えられませんので、今 回は設計も解りやすく、配線も比較的容易な&10000〜&2FFFFの128KBでやりま しょうね? まず、アドレスですが、&10000(2進数の010000000000000000)から&2FFFF( 2進数の101111111111111111)は連続した領域なのでそのままCPUのA0からA16 をRAMに接続すればいいので楽です。RAMはA17はありませんが、この領域内では A17が1になる時はA16が0なので100000000000000000から101111111111111111は RAMの00000000000000000から01111111111111111までのアドレス(&10000未満 のアドレス)に記憶されるのです。 あとはチップセレクトですが、CE3*をROM用とRAM用に振り分けます。 アドレスの切りがいいので単純です。 CE3は&20000(100000000000000000)〜&3FFFF(111111111111111111)でLOWにな りますが、このうち&30000(110000000000000000)以上をROM用にしましょう。 このCE3*=Lの領域の&30000を境に変わるのはA16が&30000以後1であることなの で、CE3*=LかつA16=0でRAM用、CE3*=LかつA16=1でROM用とすればいいでしょう。 念のため真理値表を作ります。
CE3* |
A16 |
RAM用CE3* |
ROM用CE3* |
|
|---|---|---|---|---|
L |
L |
L |
H |
これならおなじみのデコーダIC74HC139が使えますね。 74HC139の機能表を示します。
入 力 |
出 力 |
|||||
| G* | B | A | Y0 | Y1 | Y2 | Y3 |
|---|---|---|---|---|---|---|
| H L L L L | X L L H H | X L H L H | H L H H H | H H L H H | H H H L H | H H H H L |
入力G*はGNDに接続して、BにCE3*、AにA16をつなぐと、Y0をRAM用CE3*、Y1を ROM用CE3*とすることが考えられますね。 ってことでここまで理解できたらもう自分でやりたくなってきたのではないで しょうか? メモリ増設なんてこんなものなのです。 あと、このCE3*と&10000〜&1FFFFのCE6*をMIXしてゆくところを次回説明しま すね。 それではまた! #2845 Great -NUM- -R.DATE- -R.TIME- -SENDER- -CONTENTS- [W]WRITE [RET]READ [?]HELP 00099 96-09-04 19:52:28 2845 E650のプロテクトRAM(S3:)増設講座(第2回)/Great *************************************** * * * ★E650のRAM増設設計講座 * * by Great * * * *************************************** こんにちは さぁ今日も『楽しいS3:の設計』の時間がやってまいりました(^^;)。 今日は既に;4113にUPしてあるE500のS3:のドキュメントを参考に進めます。 テキストの「★ハードウェアの設計@希望する動作」を開けて下さい(^^;;)。 2つの真理値表がありますが、2ケ目はE650でも変更無いのでE650版の1ケ目 の真理値表作りから、論理式、論理回路図、実体配線図まで設計を進めます。 前回の講義でRAM用CE3*としたのはアクティブLowでしたが、RAMの制御にアク ティブHighの方が都合が良いので今回の希望動作の表では"H"と"L"を逆にしま したのでご注意下さい。 希望動作の真理値表
SEL* |
CE3* |
A16 |
CE6* |
CE1*・RAM |
CE2・RAM |
CE*・ROM |
EXT* |
||
|---|---|---|---|---|---|---|---|---|---|
S |
H |
L |
L |
H |
L |
H |
H |
H |
|
R |
L |
L |
L |
H |
H |
X |
H |
H |
ここで、×は"H"または"L"
- は起こらないので"H"でも"L"でも良い
(なぜなら、CE6*=Lとなるのはアドレス&10000:10000000000000000〜&1FFFF:
11111111111111111でA16がHの時だけである)
また、表左に、CE3*=LかつCE6*=Lの蘭が無いのもCPUからのチップセレクトは
同時に2つON(CE3*,CE6*の場合、負論理(=アクティブLow)なのでLowがON)
になることはありえないからである。
(信号の後に*が付いたもの(CE3*等)はアクティブLowの信号を意味します)
ここで、RAMのチップイネーブルですが、128KBのRAMは32KBの場合と違ってチップイネーブル
が2つあります。
アクティブLowのCE1*とアクティブHighのCE2です。そして、これらがCE1*=Lか
つCE2=Hの時だけRAMはデータの入出力が出来ます。
この表ではCE1*をSEL(ROMカードスロット−S3:の切換えスイッチ)で、CE2
をCPUのCE3*とA16とCE6*でコントロールしようとしています。
EXT*はROMカードスロットのもともとCE6*が接続されていた部分をカットして
CE6*を増設RAMに使ってますので、S3選択スイッチをOFFすればカードスロッ
トに供給されるCE6*の代り(CE6*そのもの)です。
もし、「絶対ROMカードなんて買わないし使えなくていい」ということであれ
ば、表の下半分及び、信号SEL・EXT*,S3選択スイッチ等は不要で、CE1*・
RAMはGNDに接続して常時LOWにしてしまえばいいのでさらに簡単になります。
以上の表を式に直して行きます。
(NAND,NORは入力をまとめるとインバータ(NOT)としても使えて便利なので、
AND,ORよりもこちらの方がゲートICの数を少なく設計しやすいことが多い)
CE1*・RAM=NOT(SEL)(ロムカード不要ならCE1*・RAM=GND)
CE2・RAM=NAND(OR(CE3*,A16),CE6*)
CE*・ROM=OR(CE3*,NOT(A16))
EXT*=OR(SEL,CE6*)(ロムカード不要ならEXT*は不要)
さてここまで出来たら設計は終ったも同然です。応用すればRAM増設なんて
自由自在です。
ハンダには絶対の自信!なんて人があれば、ここまでの方法をアレンジして
192KBのS3:を設計することも出来るはずです。
次回は一般の製作記事のような回路図作りに話を進めますのでお楽しみに!
#2845 Great
-NUM- -R.DATE- -R.TIME- -SENDER- -CONTENTS- [W]WRITE [RET]READ [?]HELP
00100 96-09-04 19:52:34 2845 E650のプロテクトRAM(S3:)増設講座(第3回)/Great
***************************************
* *
* ★E650のRAM増設設計講座 *
* by Great *
* *
***************************************
こんにちは
この講座もこれで一応最終回です。
今回は前回作った論理式から具体的に論理回路図、実体配線図まで設計を進め
ます。機械的作業でもあり、パズル的で面白い部分でもあります。
ここまでのことが理解出来なくても、今回書いてある通り作ればとりあえず作
るのには困らないはずです。それでは応用がきかなくて残念ですが…。
では早速論理回路作りです!
1つの2入力ゲートICには4ゲート(NOTは6ゲート)入ってるので、論理回
路図を次のように考えてみました。
SEL --+----NAND----------------CE1*・RAM
| |
+----+
|
| +--+
| | |
| +--NAND--OR------------CE*・ROM
| | |
CE3*--|--|--------+
| | |
A16 --|--+--------OR---NAND-----CE2・RAM
| |
| |
+----------------|----OR--EXT*
| |
CE6*-------------------+----+
これとE500のS3:の時と共通のプロテクト関係
WE*・RAM=OR(PRT,WR*)
PRT ---------------OR-----------WE*・RAM
|
WR* ---------------+
RD* ----------------------------OE*・RAM
※ | |
--+-- は接続 --|-- は非接続
| |
を加えて丁度NAND4ケとNOR4ケで出来ますね。
NANDゲートICは74HC00、ORゲートICは74HC32のフラットパッケージの
ものを使用します。
ゲートIC(74HC00と74HC32)のピン配置図を下に示します。
14 13 12 11 10 9 8
| | | | | | |
++-----+-----+-----+-----+-----+-----++
|V +--+ | | +--+ | ||
|C | +------+ | | +------+ ||
|C | | __ | | | __ ||
| | +--| \o---+ | +--| \o---+|
| +----| / +----| / |
|)  ̄ ̄ 74HC00  ̄ ̄ |
| __ __ |
|+----| \o---+ +----| \o---+ |
|| +--| / | | +--| / | G|
|| |  ̄ ̄ | | |  ̄ ̄ | N|
|| +---+ +--+ | +---+ +--+ D|
++-----+-----+-----+-----+-----+-----++
| | | | | | |
1 2 3 4 5 6 7
14 13 12 11 10 9 8
| | | | | | |
++-----+-----+-----+-----+-----+-----++
|V +--+ | | +--+ | ||
|C | +------+ | | +------+ ||
|C | | __ | | | __ ||
| | +--\ \---+ | +--\ \---+|
| +----/ / +----/ / |
|  ̄ ̄  ̄ ̄ |
|) __ 74HC32 __ |
|+-----\ \ +----\ \ |
|| +---/ /--+ | +--/ /--+ |
|| |  ̄ ̄ | | |  ̄ ̄ | G|
|| +---+ +- + | +---+ | N|
|| | | | | +-+ D|
++-----+-----+-----+-----+-----+-----++
| | | | | | |
1 2 3 4 5 6 7
これと、論理回路図から配線図が作れますね。
Vcc
|
+-----------|---------------------------------------+
| +-------------------------------+ |
| +-----+ | +-----+ | |
+--+1 14+--+ CE3*--+----------+1 14+-+ |
| | | | | | |
+--+2 13+-+-A16 +-----|----------+2 13+-PRT |
| | | | | | | |
CE1*・RAM-+3 12+-+-------|--+ |CE*・ROM--+3 12+-WR* |
| | | | | | | |
+--+4 11+---------+ | +----------+4 11+-WE*・RAM|
| | | | | | |
+--+5 10+---------+ +-------------+5 10+-SEL-----+
| | | | | |
| |6 9+---------|----------------+6 9+-CE6*--+
| | | | | | |
+--+7 8+-CE2・RAM| +--+7 8+-EXT* |
| +-----+ | | +-----+ |
| 74HC00 | | 74HC32 |
| +-------------|----------------+
GND----+--------------------------------+
上記74HC00の4,5番ピンのように使わない入力ピンはGNDかVCCに接続しておきます。
別にこの通りでなくてもいいですが…。あとは、CPUのCE6*,RD*,S3:のRAMの
A16・OE*,WE*(WR*と同一),スイッチ(SEL,PRT),ROMのCE3*,CE3*が入ってた端
子,ROMカードのCE6*,S3:用RAMのCE1*・CE2まで線を引っぱって、S1:とS3:のRAM
のA0〜A16・D0〜D7・Vcc・GND同士(22,24,29,30番ピン意外全部)を接続するだけ
です。これでE650用128KBのS3:が出来上がります。
あ、ソフトの設定とヘッダを忘れてました。ヘッダは&10000から
&10,&12,&40,&00,&00,&01,&00,&00,
&00,&00,&00,&00,&00,&00,&00,&00,
&00,&20,&18,&00,&00,&00,&00,&00,
&FF
です。モニタかPOKE文で書き込んで下さい。
また、パラメータの設定は&BFC09から
&00,&00,&01,&40,&00
です。こちらはS1:のRAM上なのでリセットする度に変わってしまうので、エンジニ
アソフトウェアとかに
10 POKE &BFC09,&,&,&1,&40,&
というワンラインプログラムをファイル名
SAVE "F:S3.6##"[CR]
等としておくとMENUから簡単に復帰できて便利です。AUTO.BASの中にこの1行
をつけておくのも手ですね。
あとはE500の『増設 208KBライトプロテクトS3:』と共通なので質問が無ければこれで
終了したいと思います。
釈迦に説法のようなことを長々と書きましたが、この講座、いかがだったでし
ょうか?是非ご感想をお聞かせ下さい!
それではまた!
#2845 Great
-NUM- -R.DATE- -R.TIME- -SENDER- -CONTENTS- [W]WRITE [RET]READ [?]HELP
00103 96-09-07 18:55:45 2845 E650用S3:増設RAM回路図(汎用文字仕様)/Great
※罫線が849F〜84BEの機種では1つ前にUPした回路図の方がうんと見易いです。
※印刷する場合行間・字間ゼロにてお願いします。
★E650用128KB増設RAM・ライトプロテクトS3:
S1: ●Vcc
RAM128KB×2 | S3:
+-----------+ | RAM128KB
| +-----------+32 | +-----------+
| | Vcc +-----+-----------------+Vcc |24
| | |3〜12,23,25〜28,31 | OE* +-------+
| | A0〜A15 +-----------------------+A0〜A15 |30 |
| | |13〜15,17〜21 | CE2 +-----+ |
| | D0〜D7 +-----------------------+D0〜D7 |29 | |
| | |29 WR* | WE* +---+ | |
| | WE* +-------------------+ + |22 | | |
| | |2 | | CE1* +-+ | | |
| | A16 +-----------+-------|---+A16 | | | | |
| | |16 | | | | | | | |
+-| GND +-----+-----------------+GND | | | | |
+-----------+ | | | +-----------+ | | | |
●Vcc GND | | | | | |
| SW(1) +----------------------+ | | | |
| ____ PRT | | | | | | |
+○-VVVV-○ ○-+-------+ | | | | | |
1MΩ | | | | | | | | |
< | | +------------------|----+ | |
<1MΩ | | | | 74HC32 ●Vcc | | | |
< | | | | +----+ | | | | |
●Vcc | | | | +-+1 14+--+ | | | |
| SW(2) GND | +-------+2 13+-------+ | | |
| ____ SEL | +-----+3 12+---+ | | |
+○-VVVV-○ ○-+-----|---------+4 11+---|---+ | | |
+-----|-----|---------+5 10+---+ | | | |
1MΩ | | | EXT*←-+6 9+-+ | | | | |
| +-----|---VVV-+-+7 8+-|-→CE*・ROM | |
| | | 1MΩ | +----+ | | | | | |
| | | GND | | | | | |
| | | +--------------+ | | | | |
| | | | | | | | |
| +-----|----------------+ | | | | |
| | | Vcc● | | | | | |
| | | +----+ | | | | | | |
| +---+-+1 14+--+ | | | | | |
| | +-+2 13+-+---+ | | | | |
| +---+3 12+-+ | | | | |
| +--+4 11+-------|---|--+ | |
| +--+5 10+-------|---+ | |
| | +6 9+-----+ | | |
| +--+7 8+-----|-|----------+ |
CPU | | +----+ | | |
SC62015 | | 74HC00 | | |
+--------+ 62 | GND | | |
| CE6*+----+----------------------------+ | |
| | 65 | |
| CE3*+-----------------------------------+ |
| | 72 |
| RD*+------------------------------------------------+
+--------+
ゲートIC(74HC00と74HC32)のピン配置図を下に示します。
14 13 12 11 10 9 8 14 13 12 11 10 9 8
| | | | | | | | | | | | | |
++-----+-----+-----+-----+-----+-----++ ++-----+-----+-----+-----+-----+-----++
|V +--+ | | +--+ | || |V +--+ | | +--+ | ||
|C | +------+ | | +------+ || |C | +------+ | | +------+ ||
|C | | __ | | | __ || |C | | __ | | | __ ||
| | +--| \o---+ | +--| \o---+| | | +--\ \---+ | +--\ \---+|
| +----| / +----| / | | +----/ / +----/ / |
|  ̄ ̄  ̄ ̄ | |  ̄ ̄  ̄ ̄ |
|) 74HC00 | |) __ 74HC32 __ |
| __ __ | |+-----\ \ +----\ \ |
|+----| \o---+ +----| \o---+ | || +---/ /--+ | +--/ /--+ |
|| +--| / | | +--| / | G| || |  ̄ ̄ | | |  ̄ ̄ | G|
|| |  ̄ ̄ | | |  ̄ ̄ | N| || +---+ +- + | +---+ | N|
|| +---+ +--+ | +---+ +--+ D| || | | | | +-+ D|
++-----+-----+-----+-----+-----+-----++ ++-----+-----+-----+-----+-----+-----++
| | | | | | | | | | | | | |
1 2 3 4 5 6 7 1 2 3 4 5 6 7
#2845 Great
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
以上、転載記事でした。
本記事中のオリジナルアーティクルのみをダウンロードする。
本記事の執筆者からのコメント:
「改造は自分の責任でして下さい。Great(VEG00302@niftyserve.or.jp)
はアドバイスは可能な限りしますが責任は取れません」
スパムメール防止のため、お手数をおかけ致しますが、記載のメールアドレスから「@」を一つ外してメールの送付をお願いいたします。