メモリ・アクセスの具体例 次に,図1-5の回路を使ったメモリ・アクセスの具体例を示します. 例1:RAMの先頭番地から6番目の番地(4005H)へ1
4005H番地をアクセスするときのアドレス・バスは,表1-1の状態になっています
A14とMREQがアサートされ,74HC139のY1出力が“L”となり,RAMのチップ・セレクトCSがイネーブルになります. A2とA0が‘1’ですから,4000Hから始まるRAMの6番目のセルがアクセスされます. この状態で書き込みストローブ信号WRをアサートすることにより,メモリへの書き込みが実行されます. 図1-6にメモリ・ライト・サイクルのタイミング図を示します.メモリを選定するときの書き込み条件では,少なくともtWCとtCWの確認が必要です.
このメモリ・ライト・サイクルを行うニーモニックの記述例を次に示します. LD (4005H),A ;Aレジスタの値を ;4005番地へコピー 機械語では,32H,05H,40Hとなります.これがROM領域の100H番地に配置されたときの実行動作を図1-7に示します.
この1バイト書き込みが実行されたときのバス・タイミングを,図1-8に示します.
例2:I/Oの8001H番地から1バイトの読み出しを行 例1と同様にアドレス・バスが表1-2の状態で,74HC139のY2出力が“L”となり,I/Oのチップ・セレクトCSがイネーブルになります.
I/Oに接続されているアドレス・バス A1,A0のA0が‘1’ですから,I/O内の2番目のチャネル8001Hがアクセスされます. この状態で読み出しストローブ信号をアサートすることにより,I/O読み出しが実行されます. 図1-9にリード・サイクルのタイミング図を示します.
このリード・サイクルのニーモニック記述例は, LD A,(8001H) ;8001Hの内容を ;Aレジスタへコピー です.機械語では,3AH,01H,80Hとなります. このI/Oからのリード・サイクルも,ROMからのプログラム・リード・サイクルとバス・タイミングは同じです.ただし,I/Oリード・アドレスはオペランドで指定しますが,プログラム・リード・アドレスはプログラム・カウンタが出力します. Copyright 2000 武下 博彦 |
|
Copyright 1997-2001 CQ Publishing Co.,Ltd.