バスに関するメモ

バス:コンピュータシステムの内部でメモリや周辺回路が共用する信号
基本的に4本の信号の種類がある。

1.ADDR (address):メモリ、周辺回路に割り当てたれたアドレス
2.DATA (data):CPUと周辺回路間で情報をやりとりする信号。読み込み、書き出しの双方向信号
3.WR (write):書き込みを行なうトリガー信号。周辺回路がこれを検知するとCPUからのデータを取り込む。
4.RD (read):読み出しを行うトリガー信号。周辺回路がこれを検知するとデータを出力する

3と4をあわせてコントロールバスという。

ADDR信号はアドレスデコーダに転送され
アドレスデコーダはどの周辺回路をアクティベートするかを選択し
該当するデバイスにCS信号を出力する


0x00000000 ~ 0x0000FFFF プログラム/データ用メモリ0x00010000 ~ 0x7FFFFFFF 未使用
0x80000000 ~ 0x800000FF I/O モジュール(内蔵周辺回路)→UART, FIT, PIT, GPO, GPI, INTC
0x80000100 ~ 0xBFFFFFFF 未使用
0xC0000000 ~ 0xFFFFFFFF I/O バス(外付け周辺回路用)→ここにユーザ定義の周辺回路を接続する

<I/Oバスの信号>

  • IO_Address: 32ビット出力→アドレス
  • IO_Addr_Strobe: 1ビット出力→アドレス有効
  • IO_Byte_Enable: 4ビット出力→バイト単位のイネーブル信号
  • IO_Write_Data: 32ビット出力→書き込みデータ出力
  • IO_Write_Strobe: 1ビット出力→書き込み信号
  • IO_Read_Data: 32ビット入力→読み出しデータ入力
  • IO_Read_Strobe: 1ビット出力→読み出し信号
  • IO_Ready: 1ビット入力→周辺回路からの応答

ストローブ信号:アドレス、Read、Write