現在地

TLCS-90ボード


テーマ:

カテゴリー:

EMILY Boardで動かした2番目のCPUは東芝 TLCS-90の一員TMP90P802APです。

TLCS-90ボード
TMP90P802APを動作させるために新たに作ったのはこの基板だけです。

基板 表面
基板上の部品はほんのわずかです。見えているものの他、CPUソケットの内側にパスコンと若干のプルアップ抵抗があります。

CPUのTMP90P802APの左にあるのはTTL-232R-5V用のシリアルコネクタ、内蔵UARTに接続されています。

右上には9.8304MHzのオシレータ、12.5MHzまではいけますが内蔵ボーレートジェネレータを使いたかったのでこれにしています。

右端のソケットはEEPROM用に準備したものです。これはEMILY Boardのためのもので動作には直接関係ありません。

TMP90P802APは直接RD, WR信号を出してくれるのでグルーロジックのようなものは一切必要ありませんでした。ペリフェラル類も無いのでアドレスデコーダも省略しています。

基板 裏面
裏面を見るとほとんどの線がCPUとコネクタ間を一対一で結んでいるのがわかりますね。

もちろんプロセッサによってはそれなりのグルーロジックを必要とするでしょうが、手っ取り早くいろいろなプロセッサを試せそうです。大量の積みプロセッサを一気に消化できることが期待できます。

さて、このボードですが懸念していたEAも予想通りで意外とあっさり動作しました。EA="L"にしておくと内蔵ROMが無効になりアドレス0000H~1FFFHも外部バスが有効になり外部メモリから起動できるようになります。内蔵のRAM・ペリフェラルは使えます。

ハマったのはデフォルトでWDTが有効になっていたこと、ループさせているはずがどこかに飛んでいってしまうのでちょっと悩みましたね。

ソフトウェアはいつものようにUniversal Monitorを移植してみました。前に書いたようにZ80とソースレベルで非常に良く似ています。それでZ80用のソースをコピーして修正しました。主な変更点は以下です。

  1. WDTの無効化を追加
  2. I/O関係
    コンソール関係は書き直しています。I/O空間が無くメモリマップトI/OになっているのはZ80との大きな違いです。
  3. Aレジスタ
    SUB, CPLなどAレジスタを暗黙で使っていた命令は、TLCS-90では明示的にAを書く必要があります。

Universal Monitorでは割り込みは一切使っていないのでこの程度の変更で動作するようになりました。コンソールはEMILY Board経由および内蔵シリアルともに動作確認できています。


コメントを追加

Plain text

  • HTMLタグは利用できません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 行と段落は自動的に折り返されます。
※ コメントは原則公開です。個別のご相談などは「ご意見・ご要望」からお願いします。