2025/08/31(日)KBC-Z11でソフトウエアUARTを使用してBASICを動かした

2023/05/30(火)Z80-MBC2を組み立てて動作させてみた
2019/3に購入したZ80-MBC2の組み立て
購入したままで手付かずだったZ80-MBC2を組立てた。一部指定されている部品は有り合わせの物に勝手に変更し、特にショットキーダイオードとして電源用の1N5817が指定されているが、ダイオードロジック回路で使うだけなので通常のスイッチングダイオードで良しとする。EBC配列のPNPトランジスタはこれしか家に無かった。LEDは4色必要なのと16MHzのクリスタルとICソケットを何時ものaitendoさんへ発注。aitendoさんの場合、例えばLEDは5色セット入りが139円で良いのですが本数が100本。クリスタルも16,12,8,6MHzのセットが299円ですが、各5本入りという事で通販するたびに家に大量のパーツ類が溜まって行くなぁ。2007/01/10(水)Non-volatile(不揮発) RAM RAMTRON FM1608/FM1808を入手
2006/08/02(水)UART PC16550(PC16550DN)によるシリアルインターフェース
トランジスタ技術の2006年5月号から6502を使ったマイコンボードの連載が始まっていた。興味を引いたのはシリアルポートにナショセミの16550を使っている事だ。

80系でUARTのチップといえば8251が定番であるが、ボーレートジェネレータを内蔵していないのでチップ数を減らす場合には不利だろう。この記事に触発されて最初にした事はこのチップの入手であるが、DIP品種となるとなかなか見つからない。
しかし鼻が利くのかこれまたスンナリと入手。さてこのチップの情報はマイコンで調べるよりもPC互換機には大量に使われているので、その上で走るオープンソース系のOSを調べたほうが早い。
その上、デバイスドライバーのソースコードだけではなく、貴重な説明資料も豊富に見つかる(その上日本語で)。
もちろんこのチップを扱うのは初めてだけれど、データシートも英語だけれどそんなに難しくはないし、実際の
FreeBSD2.8のドライバーのソースなんかも大変参考になるだろう。Cが得意でなくてもinb()とoutb()周りだけ読めればそれでも大抵理解できる。また、現在の物よりも古いソースの方が単純で明快だ。
さて、問題は何に繋ぐかだ。やっぱりここは8048の出番だろうか。PICやAVRではUARTのポートなんて当たり前の事なんだが。
2006/07/30(日)DRAMテスターその後
[Z80]なんとか成功にたどり着く
Z80では計算上、確かにREFRESHサイクルが間に合わず、テスト出来ないのですが、その後実はタイミングの出し方が悪かった事が判明。書き込み時にRASを出した後にデータを一旦セットしてからWEとCASを出さなければ書き込みが失敗する事が判明。またREFRESHタイミングが足りない部分は、1アドレスについて読み書きする度にREFRESH信号を加えてセルフリフレッシュさせる事で、ALL1,ALL0,ランダムデータ書き込みテストがパスするようになりました。
REFRESHサイクル
連続して読み書きするのならば、連続する下位アドレスをRAS側に出してやる事でセルフREFRESHさせる部分を取り除いてもテストが通る事が確認されました。実際計算すると2ms/128をかなりオーバーしているんですが・・・・こんななんちゃってでも動作するんだなぁ。凄いなぁ民生品のレベルは。