NLP-16A

記事作成日時:2023-03-19 17:41:53
最終更新日時:2023-09-01 19:28:37

NLP-16Aの概要

NLP-16AはNLP-16をベースとした次世代機.PCBを起こしてNLP-16で見つかったいくつかの欠点を修正を加える予定.
そのため基本的なスペックはNLP-16と同じ.

このデータは暫定です.

CPUバス幅 16bit
アドレス幅 16bit+バンク16bit
アーキテクチャ ノイマン型
動作クロック 未確認.目標100kHz
汎用レジスタ 16bit幅x4
命令 可変長(1word~3word)
74HC00使用数 不明.おそらくは800個程度
消費電力 -

現在の作業進捗

ALU製作 → 製作完了
ALU制御 → 製作完了
デバッグ環境構築 → 製作中

レジスタ製作 → 設計中
レジスタ制御 → 設計中
制御 → 設計中


NLP-16の詳説

まずはアーキテクチャのブロックチャートをどうぞ
NLP-16から微妙に変わっています
オレオレ仕様な図なんでちょいとわかりにくいかもしれないけど我慢して
クリックすると大きい画像が開きます.
NLP-16A アーキテクチャ
NLP-16A 制御系 制御系


デコードシーケンス図
命令デコーダのデコード順序も書いたので良ければ
このフローに従ってデコードしていく(このフローチャートだけ見ても情報が不足している)

デコードシーケンス図 順序付き 色分けをして各種命令のデコード順序を示す.


NLP-16で見つかっている欠点

双方向データバスの調停

ブロックチャートの右端,←Data→の部分はRAMなどの外部デバイスと接続する,双方向のバスになっている.
①双方向のバスではCPU側,外部デバイス側の両方が出力となる可能性がある.両方とも出力になるとデータバス上でショートに近いことが起きるため,そうならないように確実に片側のみ出力になるようにする.
②加えて出力モードを解除されるには若干のタイムラグがあるため両方とも出力がされていない期間(いわゆるデッドタイム)も必要になる.

NLP-16では①はきっちり実現したが,初期の設計が甘く②がクロックに同期した確実なデッドタイムを生成できないことが判明した.

内部データバスのファンアウト

ブロック図中のRegister fileとなっているところの内部ではレジスタそれぞれに対しデータバスY/Flagのデータが通っている.
同じデータをすべてのレジスタに分割しているため,Y/Flag Bus Ctrlの出力に対して16(15)ゲートのNANDが接続されている.
CMOSであるため定常的な電流値は問題ないが,単純に伝送路が1.5mというふざけた長さになっているためいい感じの長さでバッファを入れるべき.

これに関してはすぐになんとかできるため特に重大な不良ではない



関連するページ


コメント欄

投稿をすべて見る

最新の投稿を見る

投稿をすべて見る

投稿する場所
名前
メール
削除キー
添付画像(1投稿1枚10MBまで)
↓チェックを入れてからボタンを押してね!!認証エラーになるよ!!
なんかアドブロック使ってるとダメらしい...すみません
削除する場所
削除する投稿ID
削除キー
↓チェックを入れてからボタンを押してね!!認証エラーになるよ!!
なんかアドブロック使ってるとダメらしい...すみません
今日累計
キリ番踏み逃げ禁止!!

スポンサードリンク




RSSフィードはじめました.詳細RSS