JP2563807B2 - ダイレクトメモリアクセス制御回路 - Google Patents
ダイレクトメモリアクセス制御回路Info
- Publication number
- JP2563807B2 JP2563807B2 JP62204076A JP20407687A JP2563807B2 JP 2563807 B2 JP2563807 B2 JP 2563807B2 JP 62204076 A JP62204076 A JP 62204076A JP 20407687 A JP20407687 A JP 20407687A JP 2563807 B2 JP2563807 B2 JP 2563807B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer
- signal
- direct memory
- memory access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Description
【発明の詳細な説明】 (産業上の利用分野) 本発明はダイレクトメモリアクセス(以下DMAと略
す。)制御回路に関し、特に16ビット長の中央処理装置
(以下CPUと略す。)とメモリ、8ビット長の入出力
(以下I/Oと略す。)デバイスを備えた電子機器におけ
るDMAの転送制御に関するものである。
す。)制御回路に関し、特に16ビット長の中央処理装置
(以下CPUと略す。)とメモリ、8ビット長の入出力
(以下I/Oと略す。)デバイスを備えた電子機器におけ
るDMAの転送制御に関するものである。
(従来の技術) 従来よりCPUを介さずにメモリとI/Oデバイスとの間で
直接データを転送するダイレクトメモリアクセスは、CP
Uが介在するデータ転送の場合と異なり、命令のリー
ド,解読という時間が必要なく、転送するデータを一時
レジスタへ読み込み次にそのデータを転送先へ書き込む
といった動作を必要とせず、データの読み出しと書き込
みを同時に行なう高速なデータ転送が出来る為、電気機
器では広く使用されている。
直接データを転送するダイレクトメモリアクセスは、CP
Uが介在するデータ転送の場合と異なり、命令のリー
ド,解読という時間が必要なく、転送するデータを一時
レジスタへ読み込み次にそのデータを転送先へ書き込む
といった動作を必要とせず、データの読み出しと書き込
みを同時に行なう高速なデータ転送が出来る為、電気機
器では広く使用されている。
しかしDMAはCPUとメモリ及びI/Oデバイスを接続する
データバス,アドレスバスを用いて行なわれる為、DMA
実行中、CPUはメモリ又はI/Oデバイスへのアクセスを中
断しホールド状態となる。従って、DMAによるPCPUのホ
ールド時間が少ない程電子機器の処理速度が向上する。
又最近は、電子機器の処理速度向上を目的として16ビッ
トCPUが一般化し、メモリ及びデータバスが16ビット構
造を持つ様になっている。しかし、I/Oデバイスは従来
通り8ビット構造のままが殆どである為、DMAは16ビッ
ト長のワードデータを上位、下位それぞれ8ビット長の
バイトデータに分割して行なわれている。従って1ワー
ドのデータ転送は、バイト単位のDMA2回で及なうことに
なる。さらにI/Oデバイスは16ビットデータバスの上位
又は下位8ビットのいずれか一方に接続されている為、
上位データバスと下位データバスを交互に接続する回路
も必要となり、複雑化してしまう。
データバス,アドレスバスを用いて行なわれる為、DMA
実行中、CPUはメモリ又はI/Oデバイスへのアクセスを中
断しホールド状態となる。従って、DMAによるPCPUのホ
ールド時間が少ない程電子機器の処理速度が向上する。
又最近は、電子機器の処理速度向上を目的として16ビッ
トCPUが一般化し、メモリ及びデータバスが16ビット構
造を持つ様になっている。しかし、I/Oデバイスは従来
通り8ビット構造のままが殆どである為、DMAは16ビッ
ト長のワードデータを上位、下位それぞれ8ビット長の
バイトデータに分割して行なわれている。従って1ワー
ドのデータ転送は、バイト単位のDMA2回で及なうことに
なる。さらにI/Oデバイスは16ビットデータバスの上位
又は下位8ビットのいずれか一方に接続されている為、
上位データバスと下位データバスを交互に接続する回路
も必要となり、複雑化してしまう。
この問題に対処する為、16ビットCPUを備えた電子機
器において、16ビットン構造を持つメモリと8ビットI/
Oデバイスの間で、16ビット長のワードデータを1回のD
MAでデータ転送を行なうようにしたDMA制御回路が特開
昭60−211557号公報に提案されている。第4図は、前記
文献に開示されたDMA制御回路の構成を示すブロック図
である。また第5図は第4図の回路のデータ転送動作の
説明図である。第4図において41は電子機器を制御する
16ビットCPU,42は上位8ビットデータバス(以下、上位
データバスと略す。)43は下位8ビットデータバス(以
下、下位データバスと略す。)、44はアドレスバス、45
はリード/ライト制御信号である。46はDMA転送時、CPU
41に代わり、データ転送を制御するDMAコントローラ
(以下DMACと略す。)、47は16ビット構造を持つメモ
リ、48は8ビット長のI/Oデバイスである。49は上位デ
ータバス42へ接続された8ビット長双方向リッチ回路
で、ラッチデータバス50を介して切換回路51とデータの
授受を行なう。切換回路51は双方向でメモリ47からI/O
デバイス48へデータ転送する時、下位データバス43又は
ラッチデータバス50のデータをI/Oデバイス48へ送出
し、I/Oデバイス48からメモリ47へデータ転送する時、I
/Oデバイス48から出力されたデータを下位データバス43
又はラッチデータバス50へ送出する。切換回路51とI/O
デバイス48はI/Oデバイスデータバス52により接続され
る。I/Oデバイス48とラッチ回路49及び切換回路51は、
制御回路53が出力する制御信号54によって制御される。
I/Oデバイス48がデータ転送リクエスト信号55を制御回
路53へONとし、制御回路53が必要に応じDMAC46へDMAリ
クエスト信号56をONとするDMA転送が開始される。
器において、16ビットン構造を持つメモリと8ビットI/
Oデバイスの間で、16ビット長のワードデータを1回のD
MAでデータ転送を行なうようにしたDMA制御回路が特開
昭60−211557号公報に提案されている。第4図は、前記
文献に開示されたDMA制御回路の構成を示すブロック図
である。また第5図は第4図の回路のデータ転送動作の
説明図である。第4図において41は電子機器を制御する
16ビットCPU,42は上位8ビットデータバス(以下、上位
データバスと略す。)43は下位8ビットデータバス(以
下、下位データバスと略す。)、44はアドレスバス、45
はリード/ライト制御信号である。46はDMA転送時、CPU
41に代わり、データ転送を制御するDMAコントローラ
(以下DMACと略す。)、47は16ビット構造を持つメモ
リ、48は8ビット長のI/Oデバイスである。49は上位デ
ータバス42へ接続された8ビット長双方向リッチ回路
で、ラッチデータバス50を介して切換回路51とデータの
授受を行なう。切換回路51は双方向でメモリ47からI/O
デバイス48へデータ転送する時、下位データバス43又は
ラッチデータバス50のデータをI/Oデバイス48へ送出
し、I/Oデバイス48からメモリ47へデータ転送する時、I
/Oデバイス48から出力されたデータを下位データバス43
又はラッチデータバス50へ送出する。切換回路51とI/O
デバイス48はI/Oデバイスデータバス52により接続され
る。I/Oデバイス48とラッチ回路49及び切換回路51は、
制御回路53が出力する制御信号54によって制御される。
I/Oデバイス48がデータ転送リクエスト信号55を制御回
路53へONとし、制御回路53が必要に応じDMAC46へDMAリ
クエスト信号56をONとするDMA転送が開始される。
次に動作について説明する。最初にメモリ47の0番地
から9番地に記憶されているデータ“A,B,C,…,H,I,J"
をI/Oデバイス48へDMA転送する場合を例に上記回路のセ
ーブ動作を説明する。
から9番地に記憶されているデータ“A,B,C,…,H,I,J"
をI/Oデバイス48へDMA転送する場合を例に上記回路のセ
ーブ動作を説明する。
まず、I/Oデバイス48から制御回路53へデータ転送リ
クエスト信号55が送出され、制御回路53からDMAC46へDM
Aリクエスト信号56が送出される。DMAC46はCPU41に対し
必要な手続を終えた後、アドレスバス44ヘメモリアドレ
ス0番地を送出し、メモリ47に対しリード信号を、制御
回路53に対しライト信号をONとする。これに対し、メモ
リ47は下位データバス43へ0番地のデータ“A"を、上位
データバス42へ1番地のデータ“B"を送出する。制御回
路53は、ラッチ回路に対し上位データバス42に送出され
たデータ49“B"をラッチする様制御し、切換回路51に対
し下位データバス43をI/Oデバイスデータバス52へ接続
する様制御し、I/Oデバイス48に対しライト信号をONと
する。これに対し、I/Oデバイス48はI/Oデバイスデータ
バス52へ送出されたデータ“A"を取込み、1回目のDMA
転送が終了する。
クエスト信号55が送出され、制御回路53からDMAC46へDM
Aリクエスト信号56が送出される。DMAC46はCPU41に対し
必要な手続を終えた後、アドレスバス44ヘメモリアドレ
ス0番地を送出し、メモリ47に対しリード信号を、制御
回路53に対しライト信号をONとする。これに対し、メモ
リ47は下位データバス43へ0番地のデータ“A"を、上位
データバス42へ1番地のデータ“B"を送出する。制御回
路53は、ラッチ回路に対し上位データバス42に送出され
たデータ49“B"をラッチする様制御し、切換回路51に対
し下位データバス43をI/Oデバイスデータバス52へ接続
する様制御し、I/Oデバイス48に対しライト信号をONと
する。これに対し、I/Oデバイス48はI/Oデバイスデータ
バス52へ送出されたデータ“A"を取込み、1回目のDMA
転送が終了する。
再び、I/Oデバイス48から制御回路53へデータ転送リ
クエスト信号55が送出されると、制御回路53はDMAC46へ
DMAリクエスト信号56を送出せず、リッチ回路49に対し
ラッチしたデータ“B"をラッチデータバス50へ送出する
様制御し、切換回路51に対し、ラッチデータバス50をI/
Oデバイスデータバス52へ接続する様制御し、I/Oデバイ
ス48に対し、ライト信号をONとする。これに対し、I/O
デバイス48は、I/Oデバイスデータバス52へ送出された
データ“B"を取り込む。同様の動作を5回繰り返すこと
によりメモリブロック0番地から9番地のデータ“A,B,
C,…,H,I,J"がI/Oデバイス48は、“A,B,C,…,H,I,J"と
いった順序でDMA転送される。
クエスト信号55が送出されると、制御回路53はDMAC46へ
DMAリクエスト信号56を送出せず、リッチ回路49に対し
ラッチしたデータ“B"をラッチデータバス50へ送出する
様制御し、切換回路51に対し、ラッチデータバス50をI/
Oデバイスデータバス52へ接続する様制御し、I/Oデバイ
ス48に対し、ライト信号をONとする。これに対し、I/O
デバイス48は、I/Oデバイスデータバス52へ送出された
データ“B"を取り込む。同様の動作を5回繰り返すこと
によりメモリブロック0番地から9番地のデータ“A,B,
C,…,H,I,J"がI/Oデバイス48は、“A,B,C,…,H,I,J"と
いった順序でDMA転送される。
次に、I/Oデバイス48へセーブしたデータ“A,B,C,…,
H,I,J"をメモリ47の0番地から9番地へDMA転送する場
合を例に上記回路のロード動作を説明する。
H,I,J"をメモリ47の0番地から9番地へDMA転送する場
合を例に上記回路のロード動作を説明する。
まずI/Oデバイス48から生後回路53へデータ転送リク
エスト信号55が送出されると、制御回路53はDMAC46へDM
Aリクエスト信号56を送出せずに、I/Oデバイス48に対し
リード信号をONとし、切換回路51に対しI/Oデバイスデ
ータバス52をラッチデータバス50へ接続する様制御し、
ラッチ回路49に対しラッチデータバス50へ送出されたデ
ータをラッチする様制御する。従って、I/Oデバイス48
から送出されたデータ“A"はラッチ回路49へラッチされ
る。
エスト信号55が送出されると、制御回路53はDMAC46へDM
Aリクエスト信号56を送出せずに、I/Oデバイス48に対し
リード信号をONとし、切換回路51に対しI/Oデバイスデ
ータバス52をラッチデータバス50へ接続する様制御し、
ラッチ回路49に対しラッチデータバス50へ送出されたデ
ータをラッチする様制御する。従って、I/Oデバイス48
から送出されたデータ“A"はラッチ回路49へラッチされ
る。
再びI/Oデバイス48から制御回路53へデータ転送リク
エスト信号55が送出されると、制御回路53はDMAC46へDM
Aリクエスト信号56を送出する。DMAC46は、CPU41に対し
必要な手続を終えた後、アドレスバス44へメモリアドレ
ス0番地を送出し、メモリ47に対しライト信号を、制御
回路53に対してリード信号をONとする。これに対し、制
御回路53は、ラッチ回路49に対しラッチしたデータ“A"
を上位データバス42へ送出する様制御し、切換回路51に
対しI/Oデバイスデータバス52を下位データバス43へ接
続する様制御し、I/Oデバイス48に対しデータ“B"を送
出する様リード信号をONとする。メモリ47は、下位デー
タバス43へ送出されたデータ“B"を0番地へ、上位デー
タバス42へ送出されたデータ“A"を1番地へ取り込み、
1回のDMA転送が終了する。同様の動作を5回繰り返す
ことによりI/Oデバイス48へセーブされていたデータ
“A,B,C,D,…,G,H,I,J"が、メモリブロック0番地から
9番地へ“B,A,D,C,…,H,G,J,I"と云った順序でDMA転送
される。
エスト信号55が送出されると、制御回路53はDMAC46へDM
Aリクエスト信号56を送出する。DMAC46は、CPU41に対し
必要な手続を終えた後、アドレスバス44へメモリアドレ
ス0番地を送出し、メモリ47に対しライト信号を、制御
回路53に対してリード信号をONとする。これに対し、制
御回路53は、ラッチ回路49に対しラッチしたデータ“A"
を上位データバス42へ送出する様制御し、切換回路51に
対しI/Oデバイスデータバス52を下位データバス43へ接
続する様制御し、I/Oデバイス48に対しデータ“B"を送
出する様リード信号をONとする。メモリ47は、下位デー
タバス43へ送出されたデータ“B"を0番地へ、上位デー
タバス42へ送出されたデータ“A"を1番地へ取り込み、
1回のDMA転送が終了する。同様の動作を5回繰り返す
ことによりI/Oデバイス48へセーブされていたデータ
“A,B,C,D,…,G,H,I,J"が、メモリブロック0番地から
9番地へ“B,A,D,C,…,H,G,J,I"と云った順序でDMA転送
される。
以上説明した様に、前記文献のDMA制御回路によれば1
0バイトのデータを5回のDMAで転送することが出来、従
来のバイト単位のDMA転送に比べ、CPU41のホールド時間
が半分に減少され、上位データバスと下位データバスを
交互に接続する回路も必要なくなる。
0バイトのデータを5回のDMAで転送することが出来、従
来のバイト単位のDMA転送に比べ、CPU41のホールド時間
が半分に減少され、上位データバスと下位データバスを
交互に接続する回路も必要なくなる。
(発明が解決しようとする問題点) しかし、以上述べたDMA制御回路では、第5図で示す
通り、セーブ前のメモリブロックのデータとロード後の
メモリブロックのデータとが、上位、下位入れ換わって
しまうという問題がある。これを解決する為には、セー
ブ時のDMA転送とロード時のDMA転送とで、DMAC46が送出
するメモリアドレスの推移方向を逆にし、かつ、I/Oデ
バイス48へセーブしたデータと逆の順序でロードする様
I/Oデバイス48を制御する必要がある。しかしDMA転送時
のメモリアドレス推移方向を変えることは、制御が複雑
化していまい、又、I/Oデバイス48がフロッピーディス
クやハードデイスクの場合などセーブしたデータと逆の
順序で出力することは不可能である。
通り、セーブ前のメモリブロックのデータとロード後の
メモリブロックのデータとが、上位、下位入れ換わって
しまうという問題がある。これを解決する為には、セー
ブ時のDMA転送とロード時のDMA転送とで、DMAC46が送出
するメモリアドレスの推移方向を逆にし、かつ、I/Oデ
バイス48へセーブしたデータと逆の順序でロードする様
I/Oデバイス48を制御する必要がある。しかしDMA転送時
のメモリアドレス推移方向を変えることは、制御が複雑
化していまい、又、I/Oデバイス48がフロッピーディス
クやハードデイスクの場合などセーブしたデータと逆の
順序で出力することは不可能である。
この発明は、以上述べた16ビット構造を持つメモリと
8ビットI/Oデバイス間のDMA転送を制御する回路におい
て、従来技術が有していた、 ・セーブ時のDMA転送とロード時のDMA転送とで、メモリ
アドレス推移方向を反転させなければならない点と、 ・I/Oデバイスへセーブしたデータの入力順序と逆の順
序でメモリへロードしなければならない点の問題を除去
し、 ・セーブ又はロードにおけるDMA転送時のメモリアドレ
ス推移方向を同一とし、 ・I/Oデバイスへセーブしたデータの入力順序と同順序
でメモリへロード可能な、DMA制御回路を提供すること
を目的とする。
8ビットI/Oデバイス間のDMA転送を制御する回路におい
て、従来技術が有していた、 ・セーブ時のDMA転送とロード時のDMA転送とで、メモリ
アドレス推移方向を反転させなければならない点と、 ・I/Oデバイスへセーブしたデータの入力順序と逆の順
序でメモリへロードしなければならない点の問題を除去
し、 ・セーブ又はロードにおけるDMA転送時のメモリアドレ
ス推移方向を同一とし、 ・I/Oデバイスへセーブしたデータの入力順序と同順序
でメモリへロード可能な、DMA制御回路を提供すること
を目的とする。
(問題を解決するための手段) 所定ビット長の中央処理装置と、該中央処理装置のビ
ット長と同じビット長のメモリと、中央処理装置のビッ
ト長の半分のビット長の入出力デバイスを備えた電子機
器におけるDMA制御回路を対象とし、前記従来技術の問
題点を解決するため、ダイレクトメモリアクセス転送時
に中央処理装置に代わってデータ転送を制御するダイレ
クトメモリアクセスコントローラと、中央処理装置、メ
モリ及びダイレクトメモリアクセスコントローラを相互
接続する所定のビット長のデータバスの上位、下位それ
ぞれに接続された所定のビット長の半分のビット長のデ
ータをラッチ又は伝送可能な双方向ラッチ/トランスフ
ァ回路と、ダイレクトメモリアクセス転送時のデータの
転送方向を予め記憶する第1のレジスタと、ダイレクト
メモリアクセス時のメモリアドレス推移方向を予め記憶
する第2のレジスタとを含み、第1のレジスタにより双
方向ラッチ/トランスファ回路の入出力方向を選択し、
第2のレジスタにより前記双方向ラッチ/トランスファ
回路の上位又は下位のいずれかりデータをラッチさせる
かを指示し、第2のレジスタにより双方向ラッチ/トラ
ンスファ回路の上位又は下位のいずれかのデータを出力
させるかを選択するラッチ/トランスファ制御部と、メ
モリから入出力デバイスへのダイレクトメモリアクセス
転送時、入出力デバイスからの第1回目のデータ転送要
求に対し、ダイレクトメモリアクセスコントローラへ、
ダイレクトメモリアクセス要求信号を出力するととも
に、入出力デバイスからの第2回目のデータ転送要求に
対し、ダイレクトメモリアクセスコントローラへ、ダイ
レクトメモリアクセス要求信号を出力せずに、または、
入出力デバイスからメモリへのダイレクトメモリアクセ
ス転送時、入出力デバイスからの第1回目のデータ転送
要求に対し、ダイレクトメモリアクセスコントローラ
へ、ダイレクトメモリアクセス要求信号を出力せずに、
入出力デバイスからの第2回目のデータ転送要求に対
し、ダイレクトメモリアクセスコントローラへ、ダイレ
クトメモリアクセス要求信号を出力する入出力デバイス
制御部とを設けたものである。
ット長と同じビット長のメモリと、中央処理装置のビッ
ト長の半分のビット長の入出力デバイスを備えた電子機
器におけるDMA制御回路を対象とし、前記従来技術の問
題点を解決するため、ダイレクトメモリアクセス転送時
に中央処理装置に代わってデータ転送を制御するダイレ
クトメモリアクセスコントローラと、中央処理装置、メ
モリ及びダイレクトメモリアクセスコントローラを相互
接続する所定のビット長のデータバスの上位、下位それ
ぞれに接続された所定のビット長の半分のビット長のデ
ータをラッチ又は伝送可能な双方向ラッチ/トランスフ
ァ回路と、ダイレクトメモリアクセス転送時のデータの
転送方向を予め記憶する第1のレジスタと、ダイレクト
メモリアクセス時のメモリアドレス推移方向を予め記憶
する第2のレジスタとを含み、第1のレジスタにより双
方向ラッチ/トランスファ回路の入出力方向を選択し、
第2のレジスタにより前記双方向ラッチ/トランスファ
回路の上位又は下位のいずれかりデータをラッチさせる
かを指示し、第2のレジスタにより双方向ラッチ/トラ
ンスファ回路の上位又は下位のいずれかのデータを出力
させるかを選択するラッチ/トランスファ制御部と、メ
モリから入出力デバイスへのダイレクトメモリアクセス
転送時、入出力デバイスからの第1回目のデータ転送要
求に対し、ダイレクトメモリアクセスコントローラへ、
ダイレクトメモリアクセス要求信号を出力するととも
に、入出力デバイスからの第2回目のデータ転送要求に
対し、ダイレクトメモリアクセスコントローラへ、ダイ
レクトメモリアクセス要求信号を出力せずに、または、
入出力デバイスからメモリへのダイレクトメモリアクセ
ス転送時、入出力デバイスからの第1回目のデータ転送
要求に対し、ダイレクトメモリアクセスコントローラ
へ、ダイレクトメモリアクセス要求信号を出力せずに、
入出力デバイスからの第2回目のデータ転送要求に対
し、ダイレクトメモリアクセスコントローラへ、ダイレ
クトメモリアクセス要求信号を出力する入出力デバイス
制御部とを設けたものである。
(作用) 本発明の各技術手段は次のように作用する。
先ず、メモリからI/OデバイスDMA転送するセーブ時に
は、I/Oデバイス制御部はDMACに対し、DMA要求を行い、
DMACはCPUにホールドリクエストを要求し、CPUはホール
ド状態となる。そしてDMACはメモリ読み出しアドレスを
送出するとともに、メモリリード信号及びI/Oライト信
号を送出する。これによりメモリはデータバスの下位に
第1のデータを、上位へ第2のデータを出力する。ラッ
チ/トランスファ制御部はラッチ/トランスファ回路に
第2のデータをラッチさせ、第1のデータをトランスフ
ァさせる。I/Oデバイス制御部からのライト信号によ
り、I/Oデバイスは第1のデータを取り込む。次にDMA要
求があるとI/Oデバイス制御部はDMACにはDMA要求せず
に、ラッチ/トランスファ制御部がラッチ/トランスフ
ァ回路にラッチされている第2のデータを出力させ、I/
OデバイスはI/Oデバイス制御部からのライト信号により
第2のデータを取り込む。同様の動作を何回か繰り返す
ことによりセーブ動作が終了する。
は、I/Oデバイス制御部はDMACに対し、DMA要求を行い、
DMACはCPUにホールドリクエストを要求し、CPUはホール
ド状態となる。そしてDMACはメモリ読み出しアドレスを
送出するとともに、メモリリード信号及びI/Oライト信
号を送出する。これによりメモリはデータバスの下位に
第1のデータを、上位へ第2のデータを出力する。ラッ
チ/トランスファ制御部はラッチ/トランスファ回路に
第2のデータをラッチさせ、第1のデータをトランスフ
ァさせる。I/Oデバイス制御部からのライト信号によ
り、I/Oデバイスは第1のデータを取り込む。次にDMA要
求があるとI/Oデバイス制御部はDMACにはDMA要求せず
に、ラッチ/トランスファ制御部がラッチ/トランスフ
ァ回路にラッチされている第2のデータを出力させ、I/
OデバイスはI/Oデバイス制御部からのライト信号により
第2のデータを取り込む。同様の動作を何回か繰り返す
ことによりセーブ動作が終了する。
一方、I/OデバイスへセーブされたデータをメモリへD
MA転送するロード時には、I/Oデバイス制御部はDMACに
対してDMA要求はせずに、I/Oデバイスに対しリード信号
を送出し、I/Oデバイスは第1のデータを送出し、ラッ
チ/トランスファ制御部の制御によりラッチ/トランス
ファ回路がそれをラッチする。次にDMA要求があると、I
/Oデバイス制御部はDMACにDMA要求を送り、DMACはCPUに
ホールドリクエストを要求し、CPUはホールド状態にな
る。これによりDMACはメモリ書き込みアドレスを送出す
るとともに、メモリライト信号及びI/Oリード信号を送
出する。I/Oデバイス制御部はリード信号をI/Oデバイス
に出力し、I/Oデバイスは第2のデータを出力する。こ
こでラッチ/トランスファ制御部の指示により、ラッチ
/トランスファ回路はラッチしている第1のデータ、及
び第2のデータをデータバスの下位、上位を介してメモ
リに送出する。メモリは第1のデータ、第2のデータを
所定番地に取り込む。同様な動作を何回か繰り返すこと
によりロード動作が終了する。
MA転送するロード時には、I/Oデバイス制御部はDMACに
対してDMA要求はせずに、I/Oデバイスに対しリード信号
を送出し、I/Oデバイスは第1のデータを送出し、ラッ
チ/トランスファ制御部の制御によりラッチ/トランス
ファ回路がそれをラッチする。次にDMA要求があると、I
/Oデバイス制御部はDMACにDMA要求を送り、DMACはCPUに
ホールドリクエストを要求し、CPUはホールド状態にな
る。これによりDMACはメモリ書き込みアドレスを送出す
るとともに、メモリライト信号及びI/Oリード信号を送
出する。I/Oデバイス制御部はリード信号をI/Oデバイス
に出力し、I/Oデバイスは第2のデータを出力する。こ
こでラッチ/トランスファ制御部の指示により、ラッチ
/トランスファ回路はラッチしている第1のデータ、及
び第2のデータをデータバスの下位、上位を介してメモ
リに送出する。メモリは第1のデータ、第2のデータを
所定番地に取り込む。同様な動作を何回か繰り返すこと
によりロード動作が終了する。
また、DMA転送時、アドレス推移方向が減少する場合
には、ラッチ/トランスファ制御部により信号反転等に
よりその順序でDMA転送がなされる。
には、ラッチ/トランスファ制御部により信号反転等に
よりその順序でDMA転送がなされる。
従って、セーブ及びロードにおけるDMA転送時のメモ
リアドレス推移方向が同一となり、I/Oデバイスへセー
ブしたデータの入力順序と同順序でメモリのロードが可
能となり、前記従来技術の問題点が解決される。
リアドレス推移方向が同一となり、I/Oデバイスへセー
ブしたデータの入力順序と同順序でメモリのロードが可
能となり、前記従来技術の問題点が解決される。
(実施例) 以下本発明の実施例を詳細に説明する。
第1図は本発明の一実施例の構成を示すブロック図で
あって、1は電子機器の動作を制御する16ビットCPU、
2は上位データバス、3は下位データバス、4はアドレ
スバス、5はDMA転送時にCPU1に代わりデータ転送を制
御するDMAC、6はプログラムやデータを記憶する16ビッ
ト構造を持ったメモリ、7は8ビットI/Oデバイスであ
る。CPU1はメモリ6に対し、MRD(メモリリード)信号
8及びMWR(メモリライト)信号9を以ってデータの授
受を行ない、DMAC5及びI/Oデバイス7に対しIORD(IOリ
ード)信号10及びIOWR(IOライト)信号11を以ってコマ
ンド及びステータスの授受を行なう。DMAC5は、CPU1に
対してHLDREQ(ホールドリクエスト)信号12をONとし、
これに対しHLDACK(ホールド応答)信号13がONとなる
と、CPU1に代わりバスを制御しDMAを実行する。DMA転送
時、DMAC5は、アドレスバス4にメモリアドレスを送出
し、メモリ6に対しMRD信号8又はMWR信号9をONとし、
I/Oデバイス7に対し、IORD信号10又は10RW信号11をON
とする。14はI/Oデバイス制御部で、CPU1又は、DMAC5に
より送出されるIORD信号10とIOWR信号11及びI/Oデバイ
ス7より送出されるDTREQデータ転送リクエスト(デー
タ転送要求)信号15に従ってI/Oデバイス7に対しDRD
(データリード)信号16又はDWR(データライト)信号1
7をONとし、又、DMAC5に対し、DMAREQ(DMAリクエスト
(DMA要求))信号18をONとする。19は上位データバス
2に接続された上位データラッチ/トランスファ回路、
20は下位データバス3に接続された下位データラッチ/
トランスファ回路であり、両者とも8ビット長のI/Oデ
バイスデータバス21によりI/Oデバイス7と接続され
る。19および20のラッチ/トランスファ回路は双方向性
で、8ビット長のデータをラッチ又は伝達可能でありDI
R信号28がOFFの時のI/Oデバイスデータバス21側が入
力、システムデータバス側が出力となり、ONの時システ
ムデータバス側が入力、I/Oデバイスデータバス21側が
出力となる。又、CLK(クロック)信号27の立ち下がり
エッヂで入力側のデータをラッチする。出力側へ出力す
るデータはHSEL(上位選択)信号25及びLSEL(下位選
択)信号26によって選択可能で、これら信号がOFFの時
入力側データバスのデータをそのまま出力側データバス
へ伝送し、ONの時ラッチされているデータを出力側デー
タバスへ送出する。更に、HEN(上位イネーブル)信号2
9又はLEN(下位イネーブル)信号30がOFFの時出力側は
ハイインピーダンス状態(以下、z状態と略す。)とな
り、ONの時以上説明した通り出力側データバスデータを
送出する。31はラッチ/トランスファ制御部で、DMAC5
より送出されるDMAACK(DMA応答)信号22、IORD信号1
0、IOWR信号11及びDTREQ信号15を受け取り、HSEL信号25
及びLSEL信号26を以って上位データラッチ/トランスフ
ァ回路19及び下位データラッチ/トランスファ回路20が
送出するデータを選択し、CLK信号27の立ち下がりエッ
ヂでデータをラッチさせ、DIR信号28を以って上位、下
位それぞれのラッチ/トランスファ回路19,20の入出力
を選択し、HEN信号29及びLEN信号30を以って出力側をz
状態とさせる。このラッチ/トランスファ制御部31はDM
A転送時のデータ転送方向を記憶するデータ転送方向レ
ジスタ23及びアドレス推移方向を記憶するアドレス推移
方向レジスタ24を備えている。データ転送方向レジスタ
23にはI/Oデバイス7からメモリ6へデータ転送される
時“0"が、メモリ6からI/Oデバイス7へデータ転送さ
れる時、“1"がDMA転送前にセットされ、アドレス推移
方向レジスタ24にはDMA転送時アドレスが増加する方向
へ推移する時“0"が減少する方向へ推移する時“1"がDM
A転送前にセットされ、ラッチ/トランスファ制御部31
がDTREQ信号15またはDMAACK信号22を受け取った時に出
力する信号を決定させる。
あって、1は電子機器の動作を制御する16ビットCPU、
2は上位データバス、3は下位データバス、4はアドレ
スバス、5はDMA転送時にCPU1に代わりデータ転送を制
御するDMAC、6はプログラムやデータを記憶する16ビッ
ト構造を持ったメモリ、7は8ビットI/Oデバイスであ
る。CPU1はメモリ6に対し、MRD(メモリリード)信号
8及びMWR(メモリライト)信号9を以ってデータの授
受を行ない、DMAC5及びI/Oデバイス7に対しIORD(IOリ
ード)信号10及びIOWR(IOライト)信号11を以ってコマ
ンド及びステータスの授受を行なう。DMAC5は、CPU1に
対してHLDREQ(ホールドリクエスト)信号12をONとし、
これに対しHLDACK(ホールド応答)信号13がONとなる
と、CPU1に代わりバスを制御しDMAを実行する。DMA転送
時、DMAC5は、アドレスバス4にメモリアドレスを送出
し、メモリ6に対しMRD信号8又はMWR信号9をONとし、
I/Oデバイス7に対し、IORD信号10又は10RW信号11をON
とする。14はI/Oデバイス制御部で、CPU1又は、DMAC5に
より送出されるIORD信号10とIOWR信号11及びI/Oデバイ
ス7より送出されるDTREQデータ転送リクエスト(デー
タ転送要求)信号15に従ってI/Oデバイス7に対しDRD
(データリード)信号16又はDWR(データライト)信号1
7をONとし、又、DMAC5に対し、DMAREQ(DMAリクエスト
(DMA要求))信号18をONとする。19は上位データバス
2に接続された上位データラッチ/トランスファ回路、
20は下位データバス3に接続された下位データラッチ/
トランスファ回路であり、両者とも8ビット長のI/Oデ
バイスデータバス21によりI/Oデバイス7と接続され
る。19および20のラッチ/トランスファ回路は双方向性
で、8ビット長のデータをラッチ又は伝達可能でありDI
R信号28がOFFの時のI/Oデバイスデータバス21側が入
力、システムデータバス側が出力となり、ONの時システ
ムデータバス側が入力、I/Oデバイスデータバス21側が
出力となる。又、CLK(クロック)信号27の立ち下がり
エッヂで入力側のデータをラッチする。出力側へ出力す
るデータはHSEL(上位選択)信号25及びLSEL(下位選
択)信号26によって選択可能で、これら信号がOFFの時
入力側データバスのデータをそのまま出力側データバス
へ伝送し、ONの時ラッチされているデータを出力側デー
タバスへ送出する。更に、HEN(上位イネーブル)信号2
9又はLEN(下位イネーブル)信号30がOFFの時出力側は
ハイインピーダンス状態(以下、z状態と略す。)とな
り、ONの時以上説明した通り出力側データバスデータを
送出する。31はラッチ/トランスファ制御部で、DMAC5
より送出されるDMAACK(DMA応答)信号22、IORD信号1
0、IOWR信号11及びDTREQ信号15を受け取り、HSEL信号25
及びLSEL信号26を以って上位データラッチ/トランスフ
ァ回路19及び下位データラッチ/トランスファ回路20が
送出するデータを選択し、CLK信号27の立ち下がりエッ
ヂでデータをラッチさせ、DIR信号28を以って上位、下
位それぞれのラッチ/トランスファ回路19,20の入出力
を選択し、HEN信号29及びLEN信号30を以って出力側をz
状態とさせる。このラッチ/トランスファ制御部31はDM
A転送時のデータ転送方向を記憶するデータ転送方向レ
ジスタ23及びアドレス推移方向を記憶するアドレス推移
方向レジスタ24を備えている。データ転送方向レジスタ
23にはI/Oデバイス7からメモリ6へデータ転送される
時“0"が、メモリ6からI/Oデバイス7へデータ転送さ
れる時、“1"がDMA転送前にセットされ、アドレス推移
方向レジスタ24にはDMA転送時アドレスが増加する方向
へ推移する時“0"が減少する方向へ推移する時“1"がDM
A転送前にセットされ、ラッチ/トランスファ制御部31
がDTREQ信号15またはDMAACK信号22を受け取った時に出
力する信号を決定させる。
次に動作について説明する。
最初に、メモリ6の0番地から9番地に記憶されてい
るデータ“A,B,C,…,H,I,J"がI/Oデバイス7へDMA転送
する場合を例に、第2図を参照して、本実施例のセーブ
動作を説明する。第2図は本実施例のセーブ動作を説明
するタイムチャートである。
るデータ“A,B,C,…,H,I,J"がI/Oデバイス7へDMA転送
する場合を例に、第2図を参照して、本実施例のセーブ
動作を説明する。第2図は本実施例のセーブ動作を説明
するタイムチャートである。
まずI/Oデバイス7のDTREQ信号15がONになると(第2
図t1)、I/Oデバイス制御部14はDMAREQ信号18をONとす
る(第2図t2)。これに対し、DMAC5はCPU1に対しHLDRE
Q信号12をONとし、HLDFCK信号13が返されるとラッチ/
トランスファ信号部31に対しDMAACK信号22をONとし、同
時にメモリ6に対するアドレス0番地をアドレスバス4
へ送出し、MRD信号8及びIOWR信号11をONとし(第2図t
3)DMA転送が開始される。メモリ6はアドレスバス4に
送出されたアドレス0番地及びMRD信号8に従って、下
位データバス3へデータ“A"を、上位データバス2へデ
ータ“B"を出力する(第2図t5)。ラッチ/トランスフ
ァ制御部31は、LSEL信号26をOFFに、DIR信号28をONに、
HEN信号29をOFFに、LEN信号30をONに保ち、CLK信号27を
出力する。ラッチ/トランスファ制御部31が出力した信
号に従い、上位データラッチ・トランスファ回路19は上
位データバス2に送出されたデータ“B"をラッチし(第
2図t9)、下位データラッチ/トランスファ回路20は下
位データバス3に送出されたデータ“A"をI/Oデバイス
データバス21へ伝達する(第2図t6)。I/Oデバイス制
御部14はDWR信号17を出力し(第2図t4)I/Oデバイス7
はI/Oデバイスデータバス21に送出されたデータ“A"を
取り込み(第2図t10)、DTREQ信号15をOFFとする(第
2図t7)。DTREQ信号15がOFFとなると、DMAREQ信号18、
HLDREQ信号12,HLDACK信号13,DMAACK信号22もOFFとな
り、1回のDMA転送が終了する。
図t1)、I/Oデバイス制御部14はDMAREQ信号18をONとす
る(第2図t2)。これに対し、DMAC5はCPU1に対しHLDRE
Q信号12をONとし、HLDFCK信号13が返されるとラッチ/
トランスファ信号部31に対しDMAACK信号22をONとし、同
時にメモリ6に対するアドレス0番地をアドレスバス4
へ送出し、MRD信号8及びIOWR信号11をONとし(第2図t
3)DMA転送が開始される。メモリ6はアドレスバス4に
送出されたアドレス0番地及びMRD信号8に従って、下
位データバス3へデータ“A"を、上位データバス2へデ
ータ“B"を出力する(第2図t5)。ラッチ/トランスフ
ァ制御部31は、LSEL信号26をOFFに、DIR信号28をONに、
HEN信号29をOFFに、LEN信号30をONに保ち、CLK信号27を
出力する。ラッチ/トランスファ制御部31が出力した信
号に従い、上位データラッチ・トランスファ回路19は上
位データバス2に送出されたデータ“B"をラッチし(第
2図t9)、下位データラッチ/トランスファ回路20は下
位データバス3に送出されたデータ“A"をI/Oデバイス
データバス21へ伝達する(第2図t6)。I/Oデバイス制
御部14はDWR信号17を出力し(第2図t4)I/Oデバイス7
はI/Oデバイスデータバス21に送出されたデータ“A"を
取り込み(第2図t10)、DTREQ信号15をOFFとする(第
2図t7)。DTREQ信号15がOFFとなると、DMAREQ信号18、
HLDREQ信号12,HLDACK信号13,DMAACK信号22もOFFとな
り、1回のDMA転送が終了する。
再びI/Oデバイス7のDTRREQ信号15がONとなると(第
2図t11)、I/Oデバイス制御部14はDMAREQ信号18をONと
ぜず、DWR信号17をONとする(第2図t13)。これと同時
にラッチ/トランスファ制御部31はHSEL信号25をONに、
DIR信号28をONにHEN信号29をONにLEN信号30をOFFに保
つ。ラッチ/トランスファ制御部が出力した信号に従
い、上位データラッチ/トランスファ回路19は前回ラッ
チしたデータ“B"をI/Oデバイスデータバス21に出力す
る為(第2図t12)、I/Oデバイス7はデータ“B"を取り
込み、(第2図t15)、DTREQ信号15をOFFとする(第2
図t14)。このように、2バイトのデータ転送するのに
1回のDMA転送で行っている。同様の動作を5回繰り返
すことにより、メモリブロック0番地から9番地のデー
タ“A,B,C,…,H,I,J"がI/Oデバイス7へ“A,B,C,…,H,
I,J"の順でDMA転送される。
2図t11)、I/Oデバイス制御部14はDMAREQ信号18をONと
ぜず、DWR信号17をONとする(第2図t13)。これと同時
にラッチ/トランスファ制御部31はHSEL信号25をONに、
DIR信号28をONにHEN信号29をONにLEN信号30をOFFに保
つ。ラッチ/トランスファ制御部が出力した信号に従
い、上位データラッチ/トランスファ回路19は前回ラッ
チしたデータ“B"をI/Oデバイスデータバス21に出力す
る為(第2図t12)、I/Oデバイス7はデータ“B"を取り
込み、(第2図t15)、DTREQ信号15をOFFとする(第2
図t14)。このように、2バイトのデータ転送するのに
1回のDMA転送で行っている。同様の動作を5回繰り返
すことにより、メモリブロック0番地から9番地のデー
タ“A,B,C,…,H,I,J"がI/Oデバイス7へ“A,B,C,…,H,
I,J"の順でDMA転送される。
又、DMA転送時、アドレス推移方向が減少する場合の
動作は、ラッチ/トランスファ制御部31が、HSEL信号2
5,LSEL信号26,HEN信号29及びLEN信号30を反転して出力
する違いがあるだけで、メモリブロック9番地から0番
地のデータ“J,I,H,…,C,B,A"がI/Oデバイス7へ“J,I,
H,…,C,B,A"の順でDMA転送される。
動作は、ラッチ/トランスファ制御部31が、HSEL信号2
5,LSEL信号26,HEN信号29及びLEN信号30を反転して出力
する違いがあるだけで、メモリブロック9番地から0番
地のデータ“J,I,H,…,C,B,A"がI/Oデバイス7へ“J,I,
H,…,C,B,A"の順でDMA転送される。
次にI/Oデバイス7へセーブされたデータ“A,B,C,…,
H,I,J"をメモリ6の0番地から9番地へDMA転送する場
合を例に、第3図を参照して本実施例のロード動作を説
明する。第3図は本実施例のロード動作を説明するタイ
ムチャートである。
H,I,J"をメモリ6の0番地から9番地へDMA転送する場
合を例に、第3図を参照して本実施例のロード動作を説
明する。第3図は本実施例のロード動作を説明するタイ
ムチャートである。
まず、I/Oデバイス7がDTREQ信号15をONにすると(第
3図t1)、I/Oデバイス制御部14はDMAREQ信号18をOFFの
まま、DRD信号16をONにする(第3図t2)。これに対しI
/Oデハイス7はデータ“A"をI/Oデバイスデータバス21
へ送出する(第5図t4)。一方、ラッチ/トランスファ
制御部31はDIR信号28をOFFにHEN信号29及びLEN信号30を
OFFに保ち、CLK信号27を出力し(第3図t3)、I/Oデバ
イス7より出力されたデータ“A"を下位データラッチ/
トランスファ回路20にラッチさせる(第3図t5)。
3図t1)、I/Oデバイス制御部14はDMAREQ信号18をOFFの
まま、DRD信号16をONにする(第3図t2)。これに対しI
/Oデハイス7はデータ“A"をI/Oデバイスデータバス21
へ送出する(第5図t4)。一方、ラッチ/トランスファ
制御部31はDIR信号28をOFFにHEN信号29及びLEN信号30を
OFFに保ち、CLK信号27を出力し(第3図t3)、I/Oデバ
イス7より出力されたデータ“A"を下位データラッチ/
トランスファ回路20にラッチさせる(第3図t5)。
再びI/Oデバイス7からDTREQ信号15がONとなると(第
3図t6)、I/Oデバイス制御部14はDMAREQ信号18をONと
する(第3図t7)。これに対しDMAC5はCPU1に対しHLDRE
Q信号12をONとし、HLDACK信号13が返されるとラッチ/
トランスファ制御部31に対し、DMAACK信号22をONとし、
同時にメモリ6に対するアドレス0番地をアドレスバス
4へ送出し、MWR信号9及びIORED信号10をONとし(第3
図t8)、DMA転送が開始される。I/Oデバイス制御部14は
DRD信号16を出力し(第3図t9)、I/Oデバイス7はデー
タ“B"をI/Oデバイスデータバス21へ出力する(第3図t
10)。ラッチ/トランスファ制御部31は、HSEL信号25を
OFFに、LSEL信号26をONに、DIR信号28をOFFに、HEN信号
29及びLEN信号30をONに保つ。従って、下位データラッ
チ/トランスファ回路20は、前回ラッチしたデータ“A"
を下位データバス3へ送出し、上位データラッチ/トラ
ンスファ回路19はI/Oデバイスデータバス21へ送出され
たデータ“B"を上位データバスへ伝達する(第3図t1
1)。メモリ6はアドレスバス4に送出されたアドレス
0番地及びMWR信号9に従って、0番地にデータ“A"
を、1番地へデータ“B"を取り込む。以上の動作が終了
すると、I/Oデバイス7はDTREQ信号15をOFFとする(第
3図t12)。DTREQ信号15がOFFとなると、DMAREQ信号18,
HLDREQ信号12,HLDACK信号13,DMAACK信号22もOFFとな
り、1回のDMAの転送が終了する。このときも、2バイ
トのデータ転送するのに1回のDMA転送で行っている。
同様の動作を5回繰り返すことにより、I/Oデバイス7
のデータ“A,B,C,…,H,I,J"がメモリブロック0番地か
ら9番地へ“A,B,C,…,H,I,J"とDMA転送される。
3図t6)、I/Oデバイス制御部14はDMAREQ信号18をONと
する(第3図t7)。これに対しDMAC5はCPU1に対しHLDRE
Q信号12をONとし、HLDACK信号13が返されるとラッチ/
トランスファ制御部31に対し、DMAACK信号22をONとし、
同時にメモリ6に対するアドレス0番地をアドレスバス
4へ送出し、MWR信号9及びIORED信号10をONとし(第3
図t8)、DMA転送が開始される。I/Oデバイス制御部14は
DRD信号16を出力し(第3図t9)、I/Oデバイス7はデー
タ“B"をI/Oデバイスデータバス21へ出力する(第3図t
10)。ラッチ/トランスファ制御部31は、HSEL信号25を
OFFに、LSEL信号26をONに、DIR信号28をOFFに、HEN信号
29及びLEN信号30をONに保つ。従って、下位データラッ
チ/トランスファ回路20は、前回ラッチしたデータ“A"
を下位データバス3へ送出し、上位データラッチ/トラ
ンスファ回路19はI/Oデバイスデータバス21へ送出され
たデータ“B"を上位データバスへ伝達する(第3図t1
1)。メモリ6はアドレスバス4に送出されたアドレス
0番地及びMWR信号9に従って、0番地にデータ“A"
を、1番地へデータ“B"を取り込む。以上の動作が終了
すると、I/Oデバイス7はDTREQ信号15をOFFとする(第
3図t12)。DTREQ信号15がOFFとなると、DMAREQ信号18,
HLDREQ信号12,HLDACK信号13,DMAACK信号22もOFFとな
り、1回のDMAの転送が終了する。このときも、2バイ
トのデータ転送するのに1回のDMA転送で行っている。
同様の動作を5回繰り返すことにより、I/Oデバイス7
のデータ“A,B,C,…,H,I,J"がメモリブロック0番地か
ら9番地へ“A,B,C,…,H,I,J"とDMA転送される。
又、DMA転送時、アドレス推移方向が減少する場合の
動作はラッチ/トランスファ制御部31が、HSEL信号25及
びLSEL信号26を判定して出力する違いがあるだけで、I/
Oデバイス7のデータ“J,I,H,…,C,B,A"がメモリブロッ
ク9番地から0番地へ“J,I,H,…,C,B,A"とDMA転送され
る。
動作はラッチ/トランスファ制御部31が、HSEL信号25及
びLSEL信号26を判定して出力する違いがあるだけで、I/
Oデバイス7のデータ“J,I,H,…,C,B,A"がメモリブロッ
ク9番地から0番地へ“J,I,H,…,C,B,A"とDMA転送され
る。
(発明の効果) 以上詳細に説明したように、この発明によれば、ラッ
チ/トランスファ回路、ラッチ/トランスファ制御部及
びI/Oデバイス制御部を設けたので、CPUのホールド時間
を減少させるとともに、セーブ及びロードにおけるDMA
転送時のメモリアドレス推移方向を同一とし、I/Oデバ
イスへセーブしたデータの入力順序と同順序でメモリロ
ードすることが可能となり、また、CPUが処理する所定
ビット長の半分のビット長の入出力デバイスの2回のデ
ータ転送要求を1回のDMA転送で行うことができる。
チ/トランスファ回路、ラッチ/トランスファ制御部及
びI/Oデバイス制御部を設けたので、CPUのホールド時間
を減少させるとともに、セーブ及びロードにおけるDMA
転送時のメモリアドレス推移方向を同一とし、I/Oデバ
イスへセーブしたデータの入力順序と同順序でメモリロ
ードすることが可能となり、また、CPUが処理する所定
ビット長の半分のビット長の入出力デバイスの2回のデ
ータ転送要求を1回のDMA転送で行うことができる。
第1図は本発明の実施例のDMA制御回路の構成を示すブ
ロック図、第2図は第1図の回路のセーブ動作タイムチ
ャート、第3図は第1図の回路のロード動作タイムチャ
ート、第4図は従来のDMA制御回路の構成を示すブロッ
ク図、第5図は第4図の回路におけるデータ転送動作説
明図である。 1……中央処理装置(CPU) 2……上位8ビットデータバス 3……下位8ビットデータバス 4……アドレスバス 5……ダイレクトメモリアクセスコントローラ(DMAC) 6……メモリ 7……入出力(I/O)デバイス 14……I/Oデバイス制御部 19……上位データラッチ/トランスファ回路 20……下位データラッチ/トランスファ回路 23……データ転送方向レジスタ 24……アドレス推移方向レジスタ
ロック図、第2図は第1図の回路のセーブ動作タイムチ
ャート、第3図は第1図の回路のロード動作タイムチャ
ート、第4図は従来のDMA制御回路の構成を示すブロッ
ク図、第5図は第4図の回路におけるデータ転送動作説
明図である。 1……中央処理装置(CPU) 2……上位8ビットデータバス 3……下位8ビットデータバス 4……アドレスバス 5……ダイレクトメモリアクセスコントローラ(DMAC) 6……メモリ 7……入出力(I/O)デバイス 14……I/Oデバイス制御部 19……上位データラッチ/トランスファ回路 20……下位データラッチ/トランスファ回路 23……データ転送方向レジスタ 24……アドレス推移方向レジスタ
Claims (1)
- 【請求項1】所定のビット長の中央処理装置と、該中央
処理装置のビット長と同じビット長のメモリと、前記中
央処理装置のビット長の半分のビット長の入出力デバイ
スを備えた電子機器におけるダイレクトメモリアクセス
制御回路において、 ダイレクトメモリアクセス転送時に中央処理装置に代わ
ってデータ転送を制御するダイレクトメモリアクセスコ
ントローラと、 中央処理装置、メモリ及びダイレクトメモリアクセスコ
ントローラを相互接続する前記所定のビット長のデータ
バスの上位、下位それぞれに接続された前記所定のビッ
ト長の半分のビット長のデータをラッチ又は伝送可能な
双方向ラッチ/トランスファ回路と、 ダイレクトメモリアクセス転送時のデータの転送方向を
予め記憶する第1のレジスタと、ダイレクトメモリアク
セス時のメモリアドレス推移方向を予め記憶する第2の
レジスタとを含み、前記第1のレジスタにより前記双方
向ラッチ/トランスファ回路の入出力方向を選択し、前
記第2のレジスタにより前記双方向ラッチ/トランスフ
ァ回路の上位又は下位のいずれかにデータをラッチさせ
るかを指示し、前記第2のレジスタにより前記双方向ラ
ッチ/トランスファ回路の上位又は下位のいずれかのデ
ータを出力させるかを選択するラッチ/トランスファ制
御部と、 前記メモリから前記入出力デバイスへのダイレクトメモ
リアクセス転送時、前記入出力デバイスからの第1回目
のデータ転送要求に対し、前記ダイレクトメモリアクセ
スコントローラへ、ダイレクトメモリアクセス要求信号
を出力するとともに、前記入出力デバイスからの第2回
目のデータ転送要求に対し、前記ダイレクトメモリアク
セスコントローラへ、ダイレクトメモリアクセス要求信
号を出力せずに、または、前記入出力デバイスから前記
メモリへのダイレクトメモリアクセス転送時、前記入出
力デバイスからの第1回目のデータ転送要求に対し、前
記ダイレクトメモリアクセスコントローラへ、ダイレク
トメモリアクセス要求信号を出力せずに、前記入出力デ
バイスからの第2回目のデータ転送要求に対し、前記ダ
イレクトメモリアクセスコントローラへ、ダイレクトメ
モリアクセス要求信号を出力する入出力デバイス制御部
と、 を設けたことを特徴とするダイレクトメモリアクセス制
御回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62204076A JP2563807B2 (ja) | 1987-08-19 | 1987-08-19 | ダイレクトメモリアクセス制御回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62204076A JP2563807B2 (ja) | 1987-08-19 | 1987-08-19 | ダイレクトメモリアクセス制御回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6448158A JPS6448158A (en) | 1989-02-22 |
JP2563807B2 true JP2563807B2 (ja) | 1996-12-18 |
Family
ID=16484376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62204076A Expired - Lifetime JP2563807B2 (ja) | 1987-08-19 | 1987-08-19 | ダイレクトメモリアクセス制御回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2563807B2 (ja) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56118133A (en) * | 1980-02-25 | 1981-09-17 | Nippon Telegr & Teleph Corp <Ntt> | Direct memory access circuit |
JPS60211557A (ja) * | 1984-04-06 | 1985-10-23 | Seiko Epson Corp | ダイレクトメモリアクセス制御回路 |
JPS61150055A (ja) * | 1984-12-25 | 1986-07-08 | Panafacom Ltd | Dmaデ−タ転送方式 |
JPS61175750A (ja) * | 1985-01-30 | 1986-08-07 | Nec Corp | Dma機能付きマイクロプロセツサシステム |
-
1987
- 1987-08-19 JP JP62204076A patent/JP2563807B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
HD68450DMACアプリケーションノート第3版(昭59−8)、日立製作所P.13−15 |
Also Published As
Publication number | Publication date |
---|---|
JPS6448158A (en) | 1989-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4467447A (en) | Information transferring apparatus | |
US4458313A (en) | Memory access control system | |
JPS5925254B2 (ja) | デイジタル・デ−タ処理装置 | |
EP0331487B1 (en) | Data transfer control system | |
JP3108080B2 (ja) | アクセス制御回路装置 | |
JP2563807B2 (ja) | ダイレクトメモリアクセス制御回路 | |
JP3210939B2 (ja) | Pioシミュレーションメモリ付プロセス制御装置 | |
JP2976443B2 (ja) | システムバスを介してデータをやりとりする情報処理装置 | |
JPH0635841A (ja) | バス制御装置 | |
JP3266610B2 (ja) | Dma転送方式 | |
JPS6269348A (ja) | デ−タ転送装置 | |
JPS599306Y2 (ja) | デ−タ処理装置 | |
JP3242474B2 (ja) | データ処理装置 | |
JP2671743B2 (ja) | マイクロコンピュータ | |
JPH1031647A (ja) | データバス幅変換制御回路を有するcpuボード | |
JPH01171191A (ja) | 演算機能付記憶素子 | |
JPH0594404A (ja) | ダイレクト・メモリ・アクセス・コントローラ | |
JPH04333954A (ja) | 情報処理装置 | |
JPH05108558A (ja) | データバス回路 | |
JPH05120210A (ja) | マイクロコンピユータ | |
JPH0535693A (ja) | データ転送装置 | |
JPH05334234A (ja) | 高速dma転送装置 | |
JPH0330899B2 (ja) | ||
JPH05265923A (ja) | データ転送装置 | |
JPS61292739A (ja) | メモリ装置 |