IC・トランジスタで出来たコンピューターを設計・製作するためのブログ

Jeans & Development 電子ブロック工房 三日坊主 フロントページ

MachiKania ver 1.00 の紹介 [MachiKania]

2016年2月6日

ケンケンさんと共同で開発したBASIC搭載カラーゲームシステム、マチカニア(MachiKania)が、公開になりました。こちらでも、紹介させて頂きます。

マチカニアは、ビデオ端子のあるテレビと、PS/2キーボードをつなぐことで、それ単体でBASICプログラムを作成したり、色々なテレビゲームを楽しんだりすることの出来る、小型コンピューターシステムです。
2016-02-06-MachiKania.jpg
私が製作した物は、6.5 cm x 9.5 cm x 4 cmほどの小さな筐体に収まっています。
使い方やソフトのダウンロードなどはケンケンさんが公開なさっているwebページに譲るとして、ここでは、私が担当したBASIC コンパイラー KM-1120 (KM-BASIC)の技術的なことに関して述べます。

KM-BASIC for MIPS ver 1.1 [電子ブロック工房]

2015年12月23日

ケンケンさんのSDカードブートローダーのRev.2に対応し、かつ、PS/2キーボードの使用に対応した、KM-BASIC for MIPSのver 1.1を公開しました。ダウンロードの為のリンクは、記事の最後にあります。

2015-12-23-canvas.png
(キャプチャー画面は、HTML5によるエミュレーターからのものです。)

KM-BASIC for MZ80K/MZ-700 ver 0.8を公開 [Z80]

2015年12月10日

Z80用KM-BASICのver 0.8を公開しました。
http://www.vector.co.jp/soft/other/other/se499422.html

主な変更点は、以下の4つの関数を追加したことです。
・VAL()
・DEC$()
・INKEY()
・INPUT$()

初期のバージョンは、ユーザーからの入力を受け付ける機能がなく、そういったプログラムはマシン語を挿入するなどしないと出来ませんでした。これはうっかりしていました。Star Trek(ゲーム)でも作ろうかなと思って色々見ていた時に気がついた次第です。
今回のバージョンでそれを導入したので、ある程度のプログラムならまともに書けるようになったかなと思っています。

トランジスターCPU、NAND6TRの全回路図 [一般的なこと]

2015年6月21日

半導体としてトランジスターのみを使ったCPUを作成中。NAND6TRと名付けている。写真は、クロック作成部まで完成したところ。
2015-06-21-IMG_0866_s.jpg

NMOSで作った、ジョンソンカウンター [デジタル回路]

2015年5月25日

MOSFET-Nを53個用いて、3つのFFを持つジョンソンカウンターを作成した。現在作成中のトランジスターCPUのクロックシグナルを制御する、大元になる部分の回路。



トランジスターを用いた回路設計がうまく行っているように思えるので、CPUの回路全体を近々公開しようかな。

NMOSで作ったD-FF [デジタル回路]

2015年5月2日

コンピューターの原理を考える上で、フリップフロップ(FF)の理解は欠かせない。FFの安定動作は、CPU全体の安定動作に必須の条件だ。トランジスターでどの様に回路を組めば、FFが安定して動作するかを考察・実験してみた。

ほぼ出来上がっているトランジスターCPUの回路に於いて、FFはすべて、DタイプFFとして実装している。そこで、D-FFをブレッドボード上に構築して、予想したとおり動作するかどうかを、実験した。

KM-BASIC for MIPSの紹介 [PIC]

2015年4月14日

KM-BASIC for MIPSは、PIC32MX上で動く整数型BASICコンパイラーです。ケンケンさん作成のPIC32テレビゲームシステム(以下、PIC32TVGS)上で動くアプリケーションとして作成しました。表示はテキストのみですが、カラーでの表示が可能です。BASICプログラムを機械語コードにコンパイルしてから実行するので、高速な動作が特徴です。SDカードに複数のBASICプログラムを入れておき、PIC32TVGSの選択画面で選択して実行することが可能です。SDカード上のファイルの配置方法については、ダウンロードファイルのreadme.txtを参照して下さい。記事の最後に、ダウンロードのためのリンクがあります。

NAND型 CPU [CPU]

2015年3月16日

演算がNANDと左シフトのみが可能な、6ビットCPUを考えてみた。

ここのところ、PICやLPCなどの組込みマイコンと、MZ-80Kの話題ばかり続いたが、このブログは本来、副題にもあるとおり「IC・トランジスタで出来たコンピューターを設計・製作する」ためのもので、久々にその初心の話。

NANDの組み合わせだけですべての論理演算が可能であるのはよく知られていることであり、初期のコンピューターの中には、このロジックで作成されていたものもあったらしい。

ということは、CPUで使える演算子としてNANDだけを用意しておけば良いはずで、あと、上位ビットと下位ビットとの間での情報のやりとりとして、シフト演算(左シフト)があれば、すべての演算が行える。加えて、条件分岐できれば、CPUとしての体裁が整うはずである。

この、必要最小限の機能を持ったCPUを如何にシンプルな構造で構築するかというのを、この1-2週間考えていた。

LPC810を使ったコンソール(技術編) [LPC]

2015年1月20日

先日公開した、Console 810の技術的なことに関するノート。特徴は、以下の通り。

・NXPのDIP-8の石、LPC810を使用
・モニター出力はNTSCビデオ信号
・キー入力はPS/2キーボード
・9600 bpsでのシリアル入出力

LPC810を使ったコンソール(紹介編) [LPC]

2015年1月13日

Console 810を紹介します。
2015-01-13-IMG_0766.jpg
Console 810は、NXPの8ピンdipパッケージの32ビットマイコンである、LPC810を用いた、シリアルコンソールです。次の特徴があります。

・ 英数字を横32文字、縦24文字表示する、キャラクターディスプレイ
・ NTSCビデオ信号を通じて、モニターに文字を表示
・ PS/2 キーボードを接続可
・ 9600 bpsでの、シリアル入出力を実装
・ DIP-8の石を用いた省スペース設計
・ 外付け部品は、電源・コネクター以外は、パスコンと5つの抵抗だけ
・ ライセンスはLGPL
<<前の記事   後の記事>>