パスワードを忘れた? アカウント作成
15259087 journal
日記

kitune-sanの日記: 8259をSystemVerilogで書いてみる #2

日記 by kitune-san

おとといの続き

# バスの制御
外部からのバス入力(A0, D0-7, /WE, /RE, /CS)からチップ内部のレジスタ書き込むためのフラグを立てたり、レジスタ読み取りのフラグを立てたりするブロック。
これまで作ってきた8255などのブロックを流用した。オリジナルとは違い、クロック同期の動作とした。

書き換えするレジスタの選択はアドレス(A0)とデータの一部で決まるが、ICW2-4とOCW1のように条件が重なる場合がある。
これは、ICW1更新後にICW2-4の書き換え処理に移行し、この間はOCWの書き換えはされないからである。
これらの初期化中・OCW書き換え禁止フラグは、CONTROL LOGIC内に記述しようと考えている。

また、読み取り信号もOCWレジスタの設定によってポーリングモードであったり、割り込みレジスタの内容だったり変化するため、
ここでは読み取り要求のフラグを立てるのみとした。

---
また、おととい作成した優先順位解決ブロックは、ビット回転の箇所を関数(function)にして共通化をおこなった。LEの数が減るわけでもないけどね。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」

読み込み中...