CPU実験室

誰も見向きもしない古いCPUをいじって動かしてみようというプロジェクトです

286

ソケット除去

ひと通り動作が確認できたところで、気になっていたCPLDの飛出し事案を片付けてしまおうと思います まずピンヘッダを慎重に外します。必要なところしかスルーホールにしない貧乏モードのため、スルーホール以外は半田が部品面に回っていないので抜き取りは比…

メモリテスト

ボード上のモニタが動き出すと、ハードデバッグのあの苦労が何だったのかと思うくらい段違いの楽さです。プログラムもCでさっと書いてモニタの機能でボードにダウンロード、即実行でいけます SRAMのリードライトテストをLSIC-86で書くとこんな具合。シリアル…

モニタ実装

順番から言うと本来はここでRAMの読み書きチェックプログラムを走らせてハードに異常が無いか確認、となるところですが、アセンブラで組むのも面倒くさいのでここでは一気にモニタの組込みをやってみました。 モニタはx86用としてLSIC86で書いたもので今まで…

RAMマッピング

I/Oの動作もOKそうなので、次にSRAMをなんとかします。 現状ではアクセス可能空間にはROMしかないので、このROMエリアを思い切って半分にしてそこにRAMエリアが覗くようにします。 具体的には以下のようにメモリに引き込んだアドレスA19ラインでメモリのチッ…

シリアルI/Oテスト

シリアルI/O用の8251の動作チェックをやってみます。 まず8251に与えるクロックですがデバイス動作用のクロックはシステムロック8MHzを2分周した4MHz、転送用クロックはボーレートを38400bpsとして内部倍率×16とすると614.4kHzになりますがこれは8MHzを13分…

I/Oテスト(2)

アセンブルされたコードを偶数アドレス、奇数アドレスに分解してそれぞれROMに0番地から焼き込みます。 偶数アドレス:0xB8,0x00,0x00,0xEF,0x00,0xE2,0x40,0xF7 奇数アドレス:0x00,0xBA,0x00,0xB9,0x00,0xFE,0xEB,0x00 0xFFFF0から始まるリセットベクタは…

I/Oテスト

周辺I/Oのテストをやってみます まず、CPLDにI/Oへのチップセレクト出力を追記、 と思ったら、CPLDにI/Oへの読み書き制御: /IORDC、/IOWTCを引き込むのを忘れていました。空きピンはもう無いので使わないアドレス線をぶった切って代わりに引き込むしかあり…

アドレス波形

自作ロジアナをつないでループプログラムを実行中のバス信号波形を見てみます。 ボード上の表面実装部品やPLCCの端子はしょぼいグラバではつまめないので 結局、基板裏面からリード線を引き出しました。 リセット直後のアドレスバス信号の一部の波形です。 …

メモリマップ見直し

バス配線はOKそうなのでいよいよプログラムの動作テストに行きます 先ずはいつものように最も簡単なループテストということになりますが、 メモリ上のプログラム配置をどうしようかと改めてメモリマップを眺めていたらえらいことが発覚しました このボード上…

配線確認中

バスラインの一本一本について導通確認をしていますが、ピンの浮き上がりとかビアの接触不良が何点か見つかりました。追加ハンダでOKになっていますが、まだまだ先が長そうです。 基板の表裏のパタンをつなぐビアは貫通した孔に銅線を打ち込んで作っています…

バス配線チェック

バス制御信号はOKのようなので次にアドレスバスやデータバスがメモリに正しく接続されているか確認していますが、どうも接続が怪しいところがあります。 たとえばこれはアドレスラッチ74HC573付近ですがCPU側はバスが駆動されているのに メモリ側にはそれが…

バス制御タイミング

CPU周りの実装が完了しましたが、CPLDのロジックがまだ仮でチップセレクトを出せないのでメモリをアクセスすることはできません。 この状態で起動するとCPUはバスからコードをフェッチしようとしますが結局有効なデータが無いので取得したデタラメなコード(…

NDPも実装

CPUを挿入してしまうと、今度はNDPとやり取りする信号線がオープンになってしまうので、結局80287NDPまで実装してしまいました。 以前、ジャンク品ということで手に入れたものですが、表面のペイントがこのチップの来歴を表していてちょっとカッコ悪いすね。…

CPU実装

リセットとクロック信号が用意できたので次はCPUを挿して・・といくのですが CPU周りはバスバッファの制御なども絡んでいて個別にチェック、というわけには行きません ここはバスコントローラ82288もセットして一気にまとめてデバッグとなります。 ZIFソケッ…

周辺ハードデバッグ開始

ざっと各ICに電源が接続されていることが導通チェックできたので、通電して各部の確認を始めました。 既に基板に実装されているRAMやペリフェラルがバスに対して変にアクティブにならないように全チップセレクトをディセーブル、リセットと分周されたク…

周辺チップ

なかなか進んでいませんが、そろそろCPUまわりの回路を組み立てていきます まずは80286の周辺チップである82284クロックジェネレータと82288バスコントローラ。CERDIPで重厚感があります 今では80286CPU本体より入手困難かも。改めて製造年を見るとなんと3…

クロック回路部品追加

クロック、リセット、READY信号発生用の82284周辺の未実装だった部品を少し追加。 水晶は8MHzにしています。そしてその右が問題のCPLDソケット。 横から見ると高さが飛びぬけててかなりみっともない有様です 動作が確認できたらピンソケットを取っ払っ…

変換アダプタ完成

ピンの立った基板に今度はPLCCソケットを付けます。 2.54mm四方のピンの中央にソケットの足が出てきますが、そこに半田付けするのは 結構難儀しました。うっかりピンにコテが触れるとせっかく垂直に立てたピンが溶けて 倒れてしまうので細い小手先を…

ピン取り付け

アダプタ基板にピンを植えていきます。 今回、基板の孔径指定について ピン径は0.5mm、推奨下孔径は0.6mmとなっているのでスルーホールのハンダで食われる分を考慮し 0.7mmとしましたが、ちょっと太かったようでピンの固定が緩めです。 もっとも製造業者が持…

アダプタ基板到着

fusionPCBに出していた基板が出来上がってきました。 9/28に注文ですから今回は約1ヶ月かかりました。10月頭に中国の休日が入ったから かとも思いましたが、製造自体は10/5には完了してたようです 1枚あれば充分なのにオマケ含めて12枚できちゃいました。余…

ピン端子

PGA変換下駄に使う予定のピンを仕入れました。 マックエイトのBK-2-2というハイブリッドIC用のピン端子です サイズはφ0.5×8mm。ちょっと細かったかもしれません よく見てみると頭が釘のように平たくなっているのと、そのすぐ下の部分がくびれていますが これ…

基板外注

ということで変換基板は外注に出すことにしました 1枚あれば充分なのにもったいないのですが、穴あけしている時給ぐらいで出来ちゃいそうです。 それにしてもPGA44ピン→52ピンなんて変換基板、全く他に流用が利きません ガーバーを送った翌日には passed f…

変換基板エッチング

ひと夏放置していたプロジェクト再開です PGA52ピン→44ピンの変換基板をエッチングしてみました エッチング自体はきれいに出来て、パターンも問題ないのですが これに穴あけ加工、ピン取り付け・・と考えるとむちゃくちゃ難しそうです 当初の目論見では親基…

変換基板版下

ピン数変換基板の版下を出力してみたのですが、千鳥配置の間隔が予想以上に厳しそうです。 エッチングはともかく半田付けが果たしてできるかどうか。。 連続したパタンをじっと見てると、人間の視覚がどうも4つ位の塊りで無意識にグルーピングするようで パ…

実装方法の検討

52ピンPGAのフットプリントにどうやって44ピンPLCCソケットをどうやって載せるかです。 横にふたつ並べて1本1本UEWでつないでいくのが確実ですがどうもスマートではないし。 現状のピン配置を見てて気付いたのですがピン配置マトリクスの中央付近で1列、1…

部品実装再開

CPLDのソケットサイズを間違えて以降相当へこんでましたが、すでに実装してしまった部品を捨てるわけにも いかず、ようやく気を取り直してつづきをはじめました。 失敗したCPLDの跡にはピンソケットを立てておきます。 こうすればサブ基板を上に載せるとか何…

メモリマップ

想定しているメモリとI/Oの配置はこんな具合になります。 あらためてアドレスデコードを考えると、イメージが出ることを厭わなければ メモリに関しては最上位のD23でROM/RAM切り替えすればたった1本のアドレス線だけで 良かったことになります(UPPER/LOWER…

CPLDピンアサイン

間違えて52ピンのパタンにしてしまったフットプリントに来ている信号です。 主な機能はメモリや周辺デバイスのチップセレクト信号を生成するアドレスデコーダなのですが なにを勘違いしたか80286の全アドレスバス24本を全て引きこんでしまっています これに…

最悪の事態

データバスバッファ74HC245も半田付けし、表面実装部品はほぼ終了です。 続いてスルーホール部品の取り掛かり、まずはROM用のPLCC28ピンソケットが付いたところです。 とここまでは全く順調でした・・・ では次と、CPLD用のPLCC44ピンソケットを挿入しようと…

アドレスラッチ

80286のアドレスバスをラッチする74HC573を実装したところです このあたりは定石の回路なので危うく定番のトランスペアレントラッチ74HC373を付けそうになりました。 実際のパタン設計は引き回しがやり易いように入出力のピンが整理された573を使用していま…