JPH10124447A - データ転送制御方法及び装置 - Google Patents
データ転送制御方法及び装置Info
- Publication number
- JPH10124447A JPH10124447A JP8275166A JP27516696A JPH10124447A JP H10124447 A JPH10124447 A JP H10124447A JP 8275166 A JP8275166 A JP 8275166A JP 27516696 A JP27516696 A JP 27516696A JP H10124447 A JPH10124447 A JP H10124447A
- Authority
- JP
- Japan
- Prior art keywords
- address
- burst
- transfer
- burst transfer
- bits
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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)
Abstract
(57)【要約】
【課題】バースト転送によるデータ転送を制御するデー
タ転送制御装置に関し、アドレス計算用の加算器とし
て、従来のバースト転送制御装置が備えている加算器よ
りも高速の加算器を設けることなく、任意アドレスを先
頭アドレスとする任意バイト数のデータの転送を、バー
スト転送を連続して行うことにより達成できるようにす
る。 【解決手段】アドレス計算部22において、第2回目以
降のバースト転送の開始アドレスのうち、バースト転送
の単位となるメモリセル領域のアドレスである上位27
ビットの部分を計算し、バースト転送数制御部23にお
いて、第2回目以降のバースト転送の開始アドレスのう
ち、バースト転送の単位となるメモリセル領域内のアド
レスである下位5ビットの部分を計算する。
タ転送制御装置に関し、アドレス計算用の加算器とし
て、従来のバースト転送制御装置が備えている加算器よ
りも高速の加算器を設けることなく、任意アドレスを先
頭アドレスとする任意バイト数のデータの転送を、バー
スト転送を連続して行うことにより達成できるようにす
る。 【解決手段】アドレス計算部22において、第2回目以
降のバースト転送の開始アドレスのうち、バースト転送
の単位となるメモリセル領域のアドレスである上位27
ビットの部分を計算し、バースト転送数制御部23にお
いて、第2回目以降のバースト転送の開始アドレスのう
ち、バースト転送の単位となるメモリセル領域内のアド
レスである下位5ビットの部分を計算する。
Description
【0001】
【発明の属する技術分野】本発明は、データ処理システ
ム等において行われるバースト転送によるデータ転送を
制御するデータ転送制御方法及び装置に関する。
ム等において行われるバースト転送によるデータ転送を
制御するデータ転送制御方法及び装置に関する。
【0002】
【従来の技術】図7はバースト転送が行われる従来のデ
ータ処理システムの一例の一部分を示す回路図であり、
図7中、1はデータの処理を行う演算プロセッサ、2は
メモリ容量を4ギガ・バイトとするバースト転送モード
付きのDRAM(ダイナミック・ランダム・アクセス・
メモリ)からなる外部メモリ、3は32ビット構成の外
部アドレスバス、4は64ビット構成の外部データバス
である。
ータ処理システムの一例の一部分を示す回路図であり、
図7中、1はデータの処理を行う演算プロセッサ、2は
メモリ容量を4ギガ・バイトとするバースト転送モード
付きのDRAM(ダイナミック・ランダム・アクセス・
メモリ)からなる外部メモリ、3は32ビット構成の外
部アドレスバス、4は64ビット構成の外部データバス
である。
【0003】図8は演算プロセッサ1と外部メモリ2と
の間で行われるバースト転送動作の一例を示すタイミン
グチャートであり、図8(A)は外部クロックCLK、
図8(B)は演算プロセッサ1から出力されるバス使用
要求信号、図8(C)は演算プロセッサ1に与えられる
バス使用許可信号、図8(D)は外部アドレスバス3の
状態、図8(E)は外部データバス4の状態を示してい
る。
の間で行われるバースト転送動作の一例を示すタイミン
グチャートであり、図8(A)は外部クロックCLK、
図8(B)は演算プロセッサ1から出力されるバス使用
要求信号、図8(C)は演算プロセッサ1に与えられる
バス使用許可信号、図8(D)は外部アドレスバス3の
状態、図8(E)は外部データバス4の状態を示してい
る。
【0004】この例では、演算プロセッサ1からのバス
使用要求に対してバス使用許可が下りた後、第1回目の
バースト転送の開始アドレスとしてアドレスA1が外部
アドレスバス3に出力され、データD1〜D4がD1→
D2→D3→D4の順に外部データバス4に出力され、
データD1〜D4についてバースト転送(外部メモリ2
に対するストア転送又は演算プロセッサ1の内部メモリ
に対するロード転送)が行われている。
使用要求に対してバス使用許可が下りた後、第1回目の
バースト転送の開始アドレスとしてアドレスA1が外部
アドレスバス3に出力され、データD1〜D4がD1→
D2→D3→D4の順に外部データバス4に出力され、
データD1〜D4についてバースト転送(外部メモリ2
に対するストア転送又は演算プロセッサ1の内部メモリ
に対するロード転送)が行われている。
【0005】続いて、第2回目のバースト転送の開始ア
ドレスとしてアドレスA2が外部アドレスバス3に出力
され、データD5〜D8がD5→D6→D7→D8の順
に外部データバス4に出力され、データD5〜D8につ
いてバースト転送が行われている。
ドレスとしてアドレスA2が外部アドレスバス3に出力
され、データD5〜D8がD5→D6→D7→D8の順
に外部データバス4に出力され、データD5〜D8につ
いてバースト転送が行われている。
【0006】続いて、第3回目のバースト転送の開始ア
ドレスとしてアドレスA3が外部アドレスバス3に出力
され、データD9〜D12がD9→D10→D11→D
12の順に外部データバスに出力され、データD9〜D
12についてバースト転送が行われている。
ドレスとしてアドレスA3が外部アドレスバス3に出力
され、データD9〜D12がD9→D10→D11→D
12の順に外部データバスに出力され、データD9〜D
12についてバースト転送が行われている。
【0007】このように、1回のバースト転送で行われ
るデータ転送の連続数、いわゆる、バースト長を、例え
ば、4とするバースト転送を行う場合には、データD1
〜D12のそれぞれに対応して1クロックごとにアドレ
スを出力する場合に比較して、アドレスを計算する周期
が4分の1で済み、その分、高速データ処理システムの
回路設計が容易となる。
るデータ転送の連続数、いわゆる、バースト長を、例え
ば、4とするバースト転送を行う場合には、データD1
〜D12のそれぞれに対応して1クロックごとにアドレ
スを出力する場合に比較して、アドレスを計算する周期
が4分の1で済み、その分、高速データ処理システムの
回路設計が容易となる。
【0008】
【発明が解決しようとする課題】従来のバースト転送
は、ワード長を数バイト、例えば、4バイト又は8バイ
トとしてワード単位でデータ転送を行うことを基準とし
ていることから、ワード内の任意のバイトを先頭アドレ
スとする任意バイト数のデータ転送を行うことは基準外
とされている。
は、ワード長を数バイト、例えば、4バイト又は8バイ
トとしてワード単位でデータ転送を行うことを基準とし
ていることから、ワード内の任意のバイトを先頭アドレ
スとする任意バイト数のデータ転送を行うことは基準外
とされている。
【0009】ここに、ワード内の任意のバイトを先頭ア
ドレスとする任意バイト数のデータ転送をバースト転送
を連続して行うことにより達成しようとする場合におい
て、第2回目以降のバースト転送の開始アドレスの計算
を、例えば、データ転送回数、即ち、転送ワード数をカ
ウントすることにより行う場合には、1クロックごとに
アドレスを計算することが必要となり、アドレス計算用
の高速加算器が必要となってしまうという問題点があ
る。
ドレスとする任意バイト数のデータ転送をバースト転送
を連続して行うことにより達成しようとする場合におい
て、第2回目以降のバースト転送の開始アドレスの計算
を、例えば、データ転送回数、即ち、転送ワード数をカ
ウントすることにより行う場合には、1クロックごとに
アドレスを計算することが必要となり、アドレス計算用
の高速加算器が必要となってしまうという問題点があ
る。
【0010】本発明は、かかる点に鑑み、アドレス計算
用の加算器として、従来のバースト転送制御装置が備え
ている加算器よりも高速の加算器を設けることなく、任
意アドレスを先頭アドレスとする任意データ幅のデータ
の転送を、バースト転送を連続して行うことにより達成
することができるようにしたデータ転送制御方法及び装
置を提供することを目的とする。
用の加算器として、従来のバースト転送制御装置が備え
ている加算器よりも高速の加算器を設けることなく、任
意アドレスを先頭アドレスとする任意データ幅のデータ
の転送を、バースト転送を連続して行うことにより達成
することができるようにしたデータ転送制御方法及び装
置を提供することを目的とする。
【0011】
【課題を解決するための手段】本発明中、第1の発明
(請求項1記載のデータ転送制御方法)は、バースト転
送によるデータ転送を行うことができるメモリとの間
の、バースト転送の単位となるメモリセル領域のアドレ
スが連続する複数回のバースト転送によるデータ転送を
制御するデータ転送制御方法であって、第2回目以降の
バースト転送の開始アドレスの計算を、バースト転送の
単位となるメモリセル領域のアドレスの計算と、バース
ト転送の単位となるメモリセル領域内のアドレスの計算
とに分けて行うというものである。
(請求項1記載のデータ転送制御方法)は、バースト転
送によるデータ転送を行うことができるメモリとの間
の、バースト転送の単位となるメモリセル領域のアドレ
スが連続する複数回のバースト転送によるデータ転送を
制御するデータ転送制御方法であって、第2回目以降の
バースト転送の開始アドレスの計算を、バースト転送の
単位となるメモリセル領域のアドレスの計算と、バース
ト転送の単位となるメモリセル領域内のアドレスの計算
とに分けて行うというものである。
【0012】この第1の発明によれば、第2回目以降の
バースト転送の開始アドレスの計算を、バースト転送の
単位となるメモリセル領域のアドレスの計算と、バース
ト転送の単位となるメモリセル領域内のアドレスの計算
とに分けて行うとしているので、任意アドレスを先頭ア
ドレスとする任意データ幅のデータの転送をバースト転
送を連続して行う場合においても、1クロックごとにア
ドレスを計算する必要がない。
バースト転送の開始アドレスの計算を、バースト転送の
単位となるメモリセル領域のアドレスの計算と、バース
ト転送の単位となるメモリセル領域内のアドレスの計算
とに分けて行うとしているので、任意アドレスを先頭ア
ドレスとする任意データ幅のデータの転送をバースト転
送を連続して行う場合においても、1クロックごとにア
ドレスを計算する必要がない。
【0013】したがって、アドレス計算用の加算器とし
て、従来のバースト転送制御装置が備えている加算器よ
りも高速の加算器を設けることなく、任意アドレスを先
頭アドレスとする任意データ幅のデータの転送をバース
ト転送を連続して行うことにより達成することができ
る。
て、従来のバースト転送制御装置が備えている加算器よ
りも高速の加算器を設けることなく、任意アドレスを先
頭アドレスとする任意データ幅のデータの転送をバース
ト転送を連続して行うことにより達成することができ
る。
【0014】本発明中、第2の発明(請求項2記載のデ
ータ転送制御方法)は、第1の発明において、メモリ
は、メモリ容量をmビットとするメモリセルを単位とし
てnビットからなるアドレスを付してなり、バースト転
送の単位となるメモリセル領域のアドレスを上位n−x
ビットとし、ワード長を2x-y×mビット、バースト長
を2yとするバースト転送を行うことができるものであ
り(但し、mは正の整数、n、x、yはn>x>y≧1
を満足する整数である。)、バースト転送の単位となる
メモリセル領域のアドレスの計算は、バースト転送要求
があるごとに、第1回目のバースト転送の開始アドレス
の上位n−xビットの値を順に1ずつインクリメントす
ることにより行われ、バースト転送単位メモリセル領域
内のアドレスの計算は、データ転送対象アドレス数の下
位xビットの値と、第1回目のバースト転送開始アドレ
スの下位xビットの値との加算により行われるというも
のである。
ータ転送制御方法)は、第1の発明において、メモリ
は、メモリ容量をmビットとするメモリセルを単位とし
てnビットからなるアドレスを付してなり、バースト転
送の単位となるメモリセル領域のアドレスを上位n−x
ビットとし、ワード長を2x-y×mビット、バースト長
を2yとするバースト転送を行うことができるものであ
り(但し、mは正の整数、n、x、yはn>x>y≧1
を満足する整数である。)、バースト転送の単位となる
メモリセル領域のアドレスの計算は、バースト転送要求
があるごとに、第1回目のバースト転送の開始アドレス
の上位n−xビットの値を順に1ずつインクリメントす
ることにより行われ、バースト転送単位メモリセル領域
内のアドレスの計算は、データ転送対象アドレス数の下
位xビットの値と、第1回目のバースト転送開始アドレ
スの下位xビットの値との加算により行われるというも
のである。
【0015】本発明中、第3の発明(請求項3記載のデ
ータ転送制御方法)は、第2の発明において、データ転
送対象アドレス数と、第1回目のバースト転送の開始ア
ドレスとに基づいて第2回目以降のバースト転送数を算
出して第2回目以降のバースト転送数を制御するバース
ト転送数制御工程が実行されるというものである。
ータ転送制御方法)は、第2の発明において、データ転
送対象アドレス数と、第1回目のバースト転送の開始ア
ドレスとに基づいて第2回目以降のバースト転送数を算
出して第2回目以降のバースト転送数を制御するバース
ト転送数制御工程が実行されるというものである。
【0016】本発明中、第4の発明(請求項4記載のデ
ータ転送制御方法)は、第3の発明において、バースト
転送数制御工程は、データ転送対象アドレス数の下位x
ビットの値と第1回目のバースト転送の開始アドレスの
下位xビットの値とに基づいて、第2回目以降のバース
ト転送数を算出する工程と、バースト転送要求があるご
とに、算出された第2回目以降のバースト転送数を1ず
つディクリメントして、算出された第2回目以降のバー
スト転送数が0になった場合、バースト転送の終了を指
示する工程とを含むというものである。
ータ転送制御方法)は、第3の発明において、バースト
転送数制御工程は、データ転送対象アドレス数の下位x
ビットの値と第1回目のバースト転送の開始アドレスの
下位xビットの値とに基づいて、第2回目以降のバース
ト転送数を算出する工程と、バースト転送要求があるご
とに、算出された第2回目以降のバースト転送数を1ず
つディクリメントして、算出された第2回目以降のバー
スト転送数が0になった場合、バースト転送の終了を指
示する工程とを含むというものである。
【0017】本発明中、第5の発明(請求項5記載のデ
ータ転送制御方法)は、第4の発明において、第2回目
以降のバースト転送数の算出は、データ転送対象アドレ
ス数から1を減じた値の下位xビットと、第1回目のバ
ースト転送開始アドレスの下位xビットの値との加算値
の上位x+1ビットの値と、データ転送対象アドレス数
から1を減じた値の上位n−xビットの値とを加算する
ことにより行われるというものである。
ータ転送制御方法)は、第4の発明において、第2回目
以降のバースト転送数の算出は、データ転送対象アドレ
ス数から1を減じた値の下位xビットと、第1回目のバ
ースト転送開始アドレスの下位xビットの値との加算値
の上位x+1ビットの値と、データ転送対象アドレス数
から1を減じた値の上位n−xビットの値とを加算する
ことにより行われるというものである。
【0018】本発明中、第6の発明(請求項6記載のデ
ータ転送制御装置)は、バースト転送によるデータ転送
を行うことができるメモリとの間の、バースト転送の単
位となるメモリセル領域のアドレスが連続する複数回の
バースト転送によるデータ転送を制御するデータ転送制
御装置であって、第2回目以降のバースト転送の開始ア
ドレスのうち、バースト転送の単位となるメモリセル領
域のアドレスを計算する第1のアドレス計算部と、第2
回目以降のバースト転送の開始アドレスのうち、バース
ト転送の単位となるメモリセル領域内のアドレスを計算
する第2のアドレス計算部とを備えているというもので
ある。
ータ転送制御装置)は、バースト転送によるデータ転送
を行うことができるメモリとの間の、バースト転送の単
位となるメモリセル領域のアドレスが連続する複数回の
バースト転送によるデータ転送を制御するデータ転送制
御装置であって、第2回目以降のバースト転送の開始ア
ドレスのうち、バースト転送の単位となるメモリセル領
域のアドレスを計算する第1のアドレス計算部と、第2
回目以降のバースト転送の開始アドレスのうち、バース
ト転送の単位となるメモリセル領域内のアドレスを計算
する第2のアドレス計算部とを備えているというもので
ある。
【0019】この第6の発明によれば、第2回目以降の
バースト転送の開始アドレスのうち、バースト転送の単
位となるメモリセル領域のアドレスを計算する第1のア
ドレス計算部と、第2回目以降のバースト転送の開始ア
ドレスのうち、バースト転送の単位となるメモリセル領
域内のアドレスを計算する第2のアドレス計算部とを備
えているので、任意アドレスを先頭アドレスとする任意
データ幅のデータの転送をバースト転送を連続して行う
場合においても、1クロックごとにアドレスを計算する
必要がない。
バースト転送の開始アドレスのうち、バースト転送の単
位となるメモリセル領域のアドレスを計算する第1のア
ドレス計算部と、第2回目以降のバースト転送の開始ア
ドレスのうち、バースト転送の単位となるメモリセル領
域内のアドレスを計算する第2のアドレス計算部とを備
えているので、任意アドレスを先頭アドレスとする任意
データ幅のデータの転送をバースト転送を連続して行う
場合においても、1クロックごとにアドレスを計算する
必要がない。
【0020】したがって、アドレス計算用の加算器とし
て、従来のバースト転送制御装置が備えている加算器よ
りも高速の加算器を設けることなく、任意アドレスを先
頭アドレスとする任意データ幅のデータの転送をバース
ト転送を連続して行うことにより達成することができ
る。
て、従来のバースト転送制御装置が備えている加算器よ
りも高速の加算器を設けることなく、任意アドレスを先
頭アドレスとする任意データ幅のデータの転送をバース
ト転送を連続して行うことにより達成することができ
る。
【0021】本発明中、第7の発明(請求項7記載のデ
ータ転送制御装置)は、第6の発明において、メモリ
は、メモリ容量をmビットとするメモリセルを単位とし
てnビットからなるアドレスを付してなり、バースト転
送の単位となるメモリセル領域のアドレスを上位n−x
ビットとし、ワード長を2x-y×mビット、バースト長
を2yとするバースト転送を行うことができるものであ
り(但し、mは正の整数、n、x、yはn>x>y≧1
を満足する整数である。)、第1のアドレス計算部は、
第1回目のバースト転送の開始アドレスの上位n−xビ
ットの値を初期値として設定され、バースト転送要求が
あるごとに、初期値を順に1ずつインクリメントする加
算器を備えて構成され、第2のアドレス計算部は、第1
回目のバースト転送の開始アドレスの下位xビットの値
とデータ転送対象アドレス数の下位xビットの値とを加
算するように構成されているというものである。
ータ転送制御装置)は、第6の発明において、メモリ
は、メモリ容量をmビットとするメモリセルを単位とし
てnビットからなるアドレスを付してなり、バースト転
送の単位となるメモリセル領域のアドレスを上位n−x
ビットとし、ワード長を2x-y×mビット、バースト長
を2yとするバースト転送を行うことができるものであ
り(但し、mは正の整数、n、x、yはn>x>y≧1
を満足する整数である。)、第1のアドレス計算部は、
第1回目のバースト転送の開始アドレスの上位n−xビ
ットの値を初期値として設定され、バースト転送要求が
あるごとに、初期値を順に1ずつインクリメントする加
算器を備えて構成され、第2のアドレス計算部は、第1
回目のバースト転送の開始アドレスの下位xビットの値
とデータ転送対象アドレス数の下位xビットの値とを加
算するように構成されているというものである。
【0022】本発明中、第8の発明(請求項8記載のデ
ータ転送制御装置)は、第7の発明において、データ転
送対象アドレス数と、第1回目のバースト転送の開始ア
ドレスとに基づいて第2回目以降のバースト転送数を算
出して第2回目以降のバースト転送数を制御するバース
ト転送数制御部を備えているというものである。
ータ転送制御装置)は、第7の発明において、データ転
送対象アドレス数と、第1回目のバースト転送の開始ア
ドレスとに基づいて第2回目以降のバースト転送数を算
出して第2回目以降のバースト転送数を制御するバース
ト転送数制御部を備えているというものである。
【0023】本発明中、第9の発明(請求項9記載のデ
ータ転送制御装置)は、第8の発明において、バースト
転送数制御部は、データ転送対象アドレス数から1を減
じた値の下位xビットの値と、第1回目のバースト転送
の開始アドレスの下位xビットの値とを加算する第1の
加算器と、この第1の加算器のキャリー値と、データ転
送対象アドレス数から1を減じた値の上位n−xビット
の値とを加算する第2の加算器と、この第2の加算器の
出力値を初期値として設定され、バースト転送要求があ
るごとに、初期値を順に1ずつディクリメントする減算
器と、この減算器の出力値が0になったか否かを判定し
て、減算器の出力値が0となった場合には、バースト転
送終了指示信号を出力する判定回路とを備えて構成され
ているというものである。
ータ転送制御装置)は、第8の発明において、バースト
転送数制御部は、データ転送対象アドレス数から1を減
じた値の下位xビットの値と、第1回目のバースト転送
の開始アドレスの下位xビットの値とを加算する第1の
加算器と、この第1の加算器のキャリー値と、データ転
送対象アドレス数から1を減じた値の上位n−xビット
の値とを加算する第2の加算器と、この第2の加算器の
出力値を初期値として設定され、バースト転送要求があ
るごとに、初期値を順に1ずつディクリメントする減算
器と、この減算器の出力値が0になったか否かを判定し
て、減算器の出力値が0となった場合には、バースト転
送終了指示信号を出力する判定回路とを備えて構成され
ているというものである。
【0024】本発明中、第10の発明(請求項10記載
のデータ転送制御装置)は、第9の発明において、第2
のアドレス計算部は、第1の加算器の出力値に+1を加
算する第3の加算器を備えて構成されているというもの
である。
のデータ転送制御装置)は、第9の発明において、第2
のアドレス計算部は、第1の加算器の出力値に+1を加
算する第3の加算器を備えて構成されているというもの
である。
【0025】
【発明の実施の形態】図1は本発明のデータ転送制御装
置の実施の一形態であるDMAコントローラを内蔵する
演算プロセッサを備えてなるデータ処理システムの一例
の一部分を示す回路図である。
置の実施の一形態であるDMAコントローラを内蔵する
演算プロセッサを備えてなるデータ処理システムの一例
の一部分を示す回路図である。
【0026】図1中、6はデータの処理を行う演算プロ
セッサ、7はメモリ容量を4ギガ・バイトとするバース
ト転送モード付きのDRAMからなる外部メモリ、8は
32ビット構成の外部アドレスバス、9は64ビット構
成の外部データバスである。
セッサ、7はメモリ容量を4ギガ・バイトとするバース
ト転送モード付きのDRAMからなる外部メモリ、8は
32ビット構成の外部アドレスバス、9は64ビット構
成の外部データバスである。
【0027】ここに、外部メモリ7は、バイトを単位と
して32ビットからなるアドレスを付し、かつ、ワード
長を8バイト、バースト長を4とするバースト転送を行
うことができるように構成されている。
して32ビットからなるアドレスを付し、かつ、ワード
長を8バイト、バースト長を4とするバースト転送を行
うことができるように構成されている。
【0028】図2は外部メモリ7のメモリマップの一部
分を示す図であり、アドレスは16進数で表示してい
る。
分を示す図であり、アドレスは16進数で表示してい
る。
【0029】図2中、11はバースト転送の単位をなす
2進数表示で上位27ビットのアドレスを0・・・02
番地(添字の2は、2進数表示であることを示してい
る。以下、同様である。)とするメモリ領域、即ち、0
10〜3110番地(添字の10は、10進数表示であるこ
とを示している。以下、同様である。)=0(=ビット
31)・・・02〜0(=ビット31)・・01111
12番地=0000000016〜0000001F16番
地(添字の16は、16進数表示であることを示してい
る。以下、同様である。)が配列されてなるメモリ領域
である。
2進数表示で上位27ビットのアドレスを0・・・02
番地(添字の2は、2進数表示であることを示してい
る。以下、同様である。)とするメモリ領域、即ち、0
10〜3110番地(添字の10は、10進数表示であるこ
とを示している。以下、同様である。)=0(=ビット
31)・・・02〜0(=ビット31)・・01111
12番地=0000000016〜0000001F16番
地(添字の16は、16進数表示であることを示してい
る。以下、同様である。)が配列されてなるメモリ領域
である。
【0030】また、12はバースト転送の単位をなす2
進数表示で上位27ビットのアドレスを0・・・012
番地とするメモリ領域、即ち、3210〜6310番地=0
(=ビット31)・・・01000002〜0(=ビッ
ト31)・・・01111112番地=0000002
016〜0000003F16番地が配列されてなるメモリ
領域である。
進数表示で上位27ビットのアドレスを0・・・012
番地とするメモリ領域、即ち、3210〜6310番地=0
(=ビット31)・・・01000002〜0(=ビッ
ト31)・・・01111112番地=0000002
016〜0000003F16番地が配列されてなるメモリ
領域である。
【0031】また、13はバースト転送の単位をなす2
進数表示で上位27ビットのアドレスを0・・・010
2番地とするメモリ領域、即ち、6410〜9510番地=
0(=ビット31)・・・010000002〜0(=
ビット31)・・・010111112番地=0000
004016〜0000005F16番地が配列されてなる
メモリ領域である。
進数表示で上位27ビットのアドレスを0・・・010
2番地とするメモリ領域、即ち、6410〜9510番地=
0(=ビット31)・・・010000002〜0(=
ビット31)・・・010111112番地=0000
004016〜0000005F16番地が配列されてなる
メモリ領域である。
【0032】また、14はバースト転送の単位をなす2
進数表示で上位27ビットのアドレスを0・・・010
2番地とするメモリ領域、即ち、9610〜12710番地
=0(=ビット31)・・・011000002〜0
(=ビット31)・・・011111112番地=00
00006016〜0000007F16番地が配列されて
なるメモリ領域である。
進数表示で上位27ビットのアドレスを0・・・010
2番地とするメモリ領域、即ち、9610〜12710番地
=0(=ビット31)・・・011000002〜0
(=ビット31)・・・011111112番地=00
00006016〜0000007F16番地が配列されて
なるメモリ領域である。
【0033】また、D1は010〜710番地=0(=ビッ
ト31)・・・02〜0(=ビット31)・・・011
12番地=0000000016〜0000000716番
地からなるワードのデータである。
ト31)・・・02〜0(=ビット31)・・・011
12番地=0000000016〜0000000716番
地からなるワードのデータである。
【0034】また、D2は810〜1510番地=0(=ビ
ット31)・・・010002〜0(=ビット31)・
・・011112番地=0000000816〜0000
000F16番地からなるワードのデータである。
ット31)・・・010002〜0(=ビット31)・
・・011112番地=0000000816〜0000
000F16番地からなるワードのデータである。
【0035】また、D3は1610〜2310番地=0(=
ビット31)・・・0100002〜0(=ビット3
1)・・・0101112番地=0000001016〜
0000001716番地からなるワードのデータであ
る。
ビット31)・・・0100002〜0(=ビット3
1)・・・0101112番地=0000001016〜
0000001716番地からなるワードのデータであ
る。
【0036】また、D4は2410〜3110番地=0(=
ビット31)・・・0110002〜0(=ビット3
1)・・・0111112番地=0000001816〜
0000001F16番地からなるワードのデータであ
る。
ビット31)・・・0110002〜0(=ビット3
1)・・・0111112番地=0000001816〜
0000001F16番地からなるワードのデータであ
る。
【0037】また、D5は3210〜3910番地=0(=
ビット31)・・・0100000 2〜0(=ビット3
1)・・・01001112番地=0000002016
〜0000002716番地からなるワードのデータであ
る。
ビット31)・・・0100000 2〜0(=ビット3
1)・・・01001112番地=0000002016
〜0000002716番地からなるワードのデータであ
る。
【0038】また、D6は4010〜4710番地=0(=
ビット31)・・・0101000 2〜0(=ビット3
1)・・・01011112番地=0000002816
〜0000002F16番地からなるワードのデータであ
る。
ビット31)・・・0101000 2〜0(=ビット3
1)・・・01011112番地=0000002816
〜0000002F16番地からなるワードのデータであ
る。
【0039】また、D7は4810〜5510番地=0(=
ビット31)・・・0110000 2〜0(=ビット3
1)・・・01101112番地=0000003016
〜0000003716番地からなるワードのデータであ
る。
ビット31)・・・0110000 2〜0(=ビット3
1)・・・01101112番地=0000003016
〜0000003716番地からなるワードのデータであ
る。
【0040】また、D8は5610〜6310番地=0(=
ビット31)・・・0111000 2〜0(=ビット3
1)・・・01111112番地=00000038〜
0000003F16番地からなるワードのデータであ
る。
ビット31)・・・0111000 2〜0(=ビット3
1)・・・01111112番地=00000038〜
0000003F16番地からなるワードのデータであ
る。
【0041】また、D9は6410〜7110番地=0(=
ビット31)・・・010000002〜0(=ビット
31)・・・010001112番地=0000004
016〜0000004716番地からなるワードのデータ
である。
ビット31)・・・010000002〜0(=ビット
31)・・・010001112番地=0000004
016〜0000004716番地からなるワードのデータ
である。
【0042】また、D10は7210〜7910番地=0
(=ビット31)・・・010010002〜0(=ビ
ット31)・・・010011112番地=00000
04816〜0000004F16番地からなるワードのデ
ータである。
(=ビット31)・・・010010002〜0(=ビ
ット31)・・・010011112番地=00000
04816〜0000004F16番地からなるワードのデ
ータである。
【0043】また、D11は8010〜8710番地=0
(=ビット31)・・・010100002〜0(=ビ
ット31)・・・010101112番地=00000
05016〜0000005716番地からなるワードのデ
ータである。
(=ビット31)・・・010100002〜0(=ビ
ット31)・・・010101112番地=00000
05016〜0000005716番地からなるワードのデ
ータである。
【0044】また、D12は8810〜9510番地=0
(=ビット31)・・・010110002〜0(=ビ
ット31)・・・010111112番地=00000
058〜0000005F16番地からなるワードのデー
タである。
(=ビット31)・・・010110002〜0(=ビ
ット31)・・・010111112番地=00000
058〜0000005F16番地からなるワードのデー
タである。
【0045】また、D13は9610〜10310番地=0
(=ビット31)・・・011000002〜0(=ビ
ット31)・・・011001112番地=00000
060 16〜0000006716番地からなるワードのデ
ータである。
(=ビット31)・・・011000002〜0(=ビ
ット31)・・・011001112番地=00000
060 16〜0000006716番地からなるワードのデ
ータである。
【0046】また、D14は10410〜11110番地=
0(=ビット31)・・・011010002〜0(=
ビット31)・・・011011112番地=0000
006816〜0000006F16番地からなるワードの
データである。
0(=ビット31)・・・011010002〜0(=
ビット31)・・・011011112番地=0000
006816〜0000006F16番地からなるワードの
データである。
【0047】また、D15は11210〜11910番地=
0(=ビット31)・・・011100002〜0(=
ビット31)・・・011101112番地=0000
007016〜0000007716番地からなるワードの
データである。
0(=ビット31)・・・011100002〜0(=
ビット31)・・・011101112番地=0000
007016〜0000007716番地からなるワードの
データである。
【0048】また、D16は12010〜12710番地=
0(=ビット31)・・・011110002〜0(=
ビット31)・・・011111112番地=0000
0078〜0000007F16番地からなるワードのデ
ータを示している。
0(=ビット31)・・・011110002〜0(=
ビット31)・・・011111112番地=0000
0078〜0000007F16番地からなるワードのデ
ータを示している。
【0049】また、演算プロセッサ6において、18は
演算回路及び演算制御回路からなる演算コア部、19は
内部メモリ、20は本発明のデータ転送制御装置の実施
の一形態であるDMAコントローラである。
演算回路及び演算制御回路からなる演算コア部、19は
内部メモリ、20は本発明のデータ転送制御装置の実施
の一形態であるDMAコントローラである。
【0050】DMAコントローラ20は、本発明のデー
タ転送制御方法の実施の一形態を実施するものであり、
外部メモリ7から内部メモリ19へのデータ転送(ロー
ド転送)及び内部メモリ19から外部メモリ7へのデー
タ転送(ストア転送)を制御するものである。
タ転送制御方法の実施の一形態を実施するものであり、
外部メモリ7から内部メモリ19へのデータ転送(ロー
ド転送)及び内部メモリ19から外部メモリ7へのデー
タ転送(ストア転送)を制御するものである。
【0051】この例の場合、DMAコントローラ20
は、データ・アライン部21と、アドレス計算部22
と、バースト転送数制御部23と、レジスタ部24と、
バス制御部25とを設けて構成されている。
は、データ・アライン部21と、アドレス計算部22
と、バースト転送数制御部23と、レジスタ部24と、
バス制御部25とを設けて構成されている。
【0052】ここに、データアライン部21は、外部デ
ータバス9と内部データバス26との間でのデータ転送
に対して、データのバイト位置によるアライン制御(バ
イト単位のデータの並べ替え)を行うものである。
ータバス9と内部データバス26との間でのデータ転送
に対して、データのバイト位置によるアライン制御(バ
イト単位のデータの並べ替え)を行うものである。
【0053】また、アドレス計算部22は、第1のアド
レス計算部をなすものであり、バースト転送の開始アド
レスの上位27ビットを外部アドレスバス8の上位27
ビットの部分に出力するものである。
レス計算部をなすものであり、バースト転送の開始アド
レスの上位27ビットを外部アドレスバス8の上位27
ビットの部分に出力するものである。
【0054】また、バースト転送数制御部23は、連続
して行うべきバースト転送数を算出して連続して行うべ
きバースト転送数の制御を行うと共に、バースト転送の
開始アドレスの下位5ビットを外部アドレスバス8の下
位5ビットの部分に出力するものである。
して行うべきバースト転送数を算出して連続して行うべ
きバースト転送数の制御を行うと共に、バースト転送の
開始アドレスの下位5ビットを外部アドレスバス8の下
位5ビットの部分に出力するものである。
【0055】また、レジスタ部24は、転送モード(ロ
ード転送/ストア転送)の指定、起動の指定、バースト
転送の開始アドレスの指定、転送バイト数などの指定を
行うものである。
ード転送/ストア転送)の指定、起動の指定、バースト
転送の開始アドレスの指定、転送バイト数などの指定を
行うものである。
【0056】また、バス制御部25は、レジスタ部24
に設定される内容に従い、バスのタイミング信号の制
御、各モジュールの制御などを行うものである。
に設定される内容に従い、バスのタイミング信号の制
御、各モジュールの制御などを行うものである。
【0057】図3はアドレス計算部22の構成を示す回
路図である。図3中、28は第1回目のバースト転送の
開始アドレスの上位27ビット又は+1を選択して出力
するセレクタ、SL1はセレクタ28の選択動作を制御
する選択制御信号である。
路図である。図3中、28は第1回目のバースト転送の
開始アドレスの上位27ビット又は+1を選択して出力
するセレクタ、SL1はセレクタ28の選択動作を制御
する選択制御信号である。
【0058】ここに、セレクタ28は、選択制御信号S
L1=「1」の場合には、バースト転送の開始アドレス
の上位27ビットを選択し、選択制御信号SL1=
「0」の場合には、+1を選択するように構成されてい
る。
L1=「1」の場合には、バースト転送の開始アドレス
の上位27ビットを選択し、選択制御信号SL1=
「0」の場合には、+1を選択するように構成されてい
る。
【0059】また、29は第1回目のバースト転送の開
始アドレスの上位27ビットを初期値として設定し、バ
ースト転送要求信号BTに応じて、初期値を4クロック
ごとに1ずつインクリメントするための加算器、30は
出力イネーブル信号EN1によりオン、オフが制御され
るスリーステートバッファ群である。
始アドレスの上位27ビットを初期値として設定し、バ
ースト転送要求信号BTに応じて、初期値を4クロック
ごとに1ずつインクリメントするための加算器、30は
出力イネーブル信号EN1によりオン、オフが制御され
るスリーステートバッファ群である。
【0060】また、図4はバースト転送数制御部23の
構成を示す回路図である。図4中、32は転送バイト数
から1を減じた値の下位5ビットと第1回目のバースト
転送の開始アドレスの下位5ビットとを加算する加算器
である。
構成を示す回路図である。図4中、32は転送バイト数
から1を減じた値の下位5ビットと第1回目のバースト
転送の開始アドレスの下位5ビットとを加算する加算器
である。
【0061】また、33は転送バイト数から1を減じた
値の上位27ビットと加算器32のキャリーCとを加算
する加算器、34は加算器33の出力と−1とを選択し
て出力するセレクタ、SL2はセレクタ34の選択動作
を制御する選択制御信号である。
値の上位27ビットと加算器32のキャリーCとを加算
する加算器、34は加算器33の出力と−1とを選択し
て出力するセレクタ、SL2はセレクタ34の選択動作
を制御する選択制御信号である。
【0062】ここに、セレクタ34は、選択制御信号S
L2=「1」の場合には加算器33の出力を選択し、選
択制御信号SL2=「0」の場合には−1を選択するよ
うに構成されている。
L2=「1」の場合には加算器33の出力を選択し、選
択制御信号SL2=「0」の場合には−1を選択するよ
うに構成されている。
【0063】また、35は加算器33の出力値を初期値
として設定し、バースト転送要求信号BTに応じて、バ
ースト転送が行われるごとに初期値を1ずつディクリメ
ントする減算器である。
として設定し、バースト転送要求信号BTに応じて、バ
ースト転送が行われるごとに初期値を1ずつディクリメ
ントする減算器である。
【0064】また、36は減算器35の出力値が0とな
ったか否かを判定して、減算器35の出力値が0となっ
た場合には、バースト転送終了指示信号をバス制御部2
5に出力する0判定回路である。
ったか否かを判定して、減算器35の出力値が0となっ
た場合には、バースト転送終了指示信号をバス制御部2
5に出力する0判定回路である。
【0065】また、37は加算器32とともに第2のア
ドレス計算部を構成するものであり、加算器32の出力
値に+1を加算する加算器である。
ドレス計算部を構成するものであり、加算器32の出力
値に+1を加算する加算器である。
【0066】また、38はバースト転送の開始アドレス
の下位5ビットと加算器37の出力とを選択して出力す
るセレクタ、SL3はセレクタ38の選択動作を制御す
る選択制御信号である。
の下位5ビットと加算器37の出力とを選択して出力す
るセレクタ、SL3はセレクタ38の選択動作を制御す
る選択制御信号である。
【0067】ここに、セレクタ38は、選択制御信号S
L3=「1」の場合には、第1回目のバースト転送の開
始アドレスの下位5ビットを選択し、選択制御信号SL
3=「0」の場合には、加算器37の出力を選択するよ
うに構成されている。
L3=「1」の場合には、第1回目のバースト転送の開
始アドレスの下位5ビットを選択し、選択制御信号SL
3=「0」の場合には、加算器37の出力を選択するよ
うに構成されている。
【0068】また、39は出力イネーブル信号EN2に
よりオン、オフが制御されるスリーステートバッファ群
である。
よりオン、オフが制御されるスリーステートバッファ群
である。
【0069】図5は本発明のデータ転送制御装置の実施
の一形態であるDMAコントローラ20の動作の一例を
説明するための図であり、第1回目のバースト転送の開
始アドレスを010番地=0(=ビット31)・・・02
番地=0000000016番地、転送バイト数を9610
=0(=ビット31)・・・011000002とする
バースト転送が行われる場合に、外部アドレスバス8に
出力される開始アドレス、外部データバス9に出力され
るデータの種類、行われるバースト転送を示している。
の一形態であるDMAコントローラ20の動作の一例を
説明するための図であり、第1回目のバースト転送の開
始アドレスを010番地=0(=ビット31)・・・02
番地=0000000016番地、転送バイト数を9610
=0(=ビット31)・・・011000002とする
バースト転送が行われる場合に、外部アドレスバス8に
出力される開始アドレス、外部データバス9に出力され
るデータの種類、行われるバースト転送を示している。
【0070】この例の場合には、アドレス計算部22に
は、レジスタ部24から第1回目のバースト転送の開始
アドレスの上位27ビットである0・・・02(=00
000016)が供給される。
は、レジスタ部24から第1回目のバースト転送の開始
アドレスの上位27ビットである0・・・02(=00
000016)が供給される。
【0071】そして、この場合には、セレクタ28は、
選択制御信号SL1=「1」とされ、第1回目のバース
ト転送の開始アドレスの上位27ビットである0・・・
02を選択し、加算器29には初期値として、この27
ビットの0・・・02が設定されると共に、この27ビ
ットの0・・・02がスリーステートバッファ群30を
介して外部アドレスバス8の上位27ビットの部分に出
力される。
選択制御信号SL1=「1」とされ、第1回目のバース
ト転送の開始アドレスの上位27ビットである0・・・
02を選択し、加算器29には初期値として、この27
ビットの0・・・02が設定されると共に、この27ビ
ットの0・・・02がスリーステートバッファ群30を
介して外部アドレスバス8の上位27ビットの部分に出
力される。
【0072】また、バースト転送数制御部23には、第
1回目のバースト転送の開始アドレスの下位5ビットで
ある000002と、転送バイト数0・・・01100
0002(=9610)から110を減じた0・・・010
111112(=9510)が供給される。
1回目のバースト転送の開始アドレスの下位5ビットで
ある000002と、転送バイト数0・・・01100
0002(=9610)から110を減じた0・・・010
111112(=9510)が供給される。
【0073】この場合には、セレクタ38は、選択制御
信号SL3=「1」とされ、第1回目のバースト転送の
開始アドレスの下位5ビットである000002を選択
し、これがスリーステートバッファ群39を介して外部
アドレスバス8の上位5ビットの部分に出力される。
信号SL3=「1」とされ、第1回目のバースト転送の
開始アドレスの下位5ビットである000002を選択
し、これがスリーステートバッファ群39を介して外部
アドレスバス8の上位5ビットの部分に出力される。
【0074】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)・・・0=0000000016が出力されると、ア
ドレス0000000016〜アドレス0000001F
16を対象として、図5に示すように、データD1〜D4
について、D1→D2→D3→D4なる順にデータ転送
が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)・・・0=0000000016が出力されると、ア
ドレス0000000016〜アドレス0000001F
16を対象として、図5に示すように、データD1〜D4
について、D1→D2→D3→D4なる順にデータ転送
が行われる。
【0075】他方、バースト転送数制御部23の加算器
32においては、111112(転送バイト数から1を
減じた値の下位5ビット)+000002(バースト転
送の開始アドレスの下位5ビット)=111112なる
演算が行われ、この結果、加算器37では、11111
2+000012=1000002なる演算が行われ、1
000002の下位5ビットの000002がセレクタ3
8に供給される。
32においては、111112(転送バイト数から1を
減じた値の下位5ビット)+000002(バースト転
送の開始アドレスの下位5ビット)=111112なる
演算が行われ、この結果、加算器37では、11111
2+000012=1000002なる演算が行われ、1
000002の下位5ビットの000002がセレクタ3
8に供給される。
【0076】また、加算器33においては、0(=ビッ
ト26)・・・0102(転送バイト数から1を減じた値
の上位27ビット部分)+00・・・0002(加算器
32のキャリーCの値)=00・・・0102なる演算
が行われ、これがセレクタ34を介して減算器35に供
給され、初期値として設定される。
ト26)・・・0102(転送バイト数から1を減じた値
の上位27ビット部分)+00・・・0002(加算器
32のキャリーCの値)=00・・・0102なる演算
が行われ、これがセレクタ34を介して減算器35に供
給され、初期値として設定される。
【0077】この結果、この時点では、減算器35の出
力値は210となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第2回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
力値は210となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第2回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
【0078】この結果、また、アドレス計算部22の加
算器29においては、0(=ビット26)・・・0
2(初期値)+0・・・012(セレクタ28を介して供
給される+110)=0・・・012なる演算が行われ、
この27ビットの0・・・012が外部アドレスバス8
の上位27ビットの部分に出力される。
算器29においては、0(=ビット26)・・・0
2(初期値)+0・・・012(セレクタ28を介して供
給される+110)=0・・・012なる演算が行われ、
この27ビットの0・・・012が外部アドレスバス8
の上位27ビットの部分に出力される。
【0079】また、バースト転送数制御部23の加算器
37においては、111112(加算器32の出力値)
+000012=1000002なる演算が行われ、10
00002の下位5ビットの000002がセレクタ38
及びスリーステートバッファ群39を介して外部アドレ
スバス8の下位5ビット部分に出力される。
37においては、111112(加算器32の出力値)
+000012=1000002なる演算が行われ、10
00002の下位5ビットの000002がセレクタ38
及びスリーステートバッファ群39を介して外部アドレ
スバス8の下位5ビット部分に出力される。
【0080】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)0・・・011000002=0000002016
が出力されると、アドレス0000002016〜アドレ
ス0000003F16を対象として、図5に示すよう
に、データD5〜D8について、データD5→D6→D
7→D8なる順にデータ転送が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)0・・・011000002=0000002016
が出力されると、アドレス0000002016〜アドレ
ス0000003F16を対象として、図5に示すよう
に、データD5〜D8について、データD5→D6→D
7→D8なる順にデータ転送が行われる。
【0081】他方、バースト転送数制御部23の減算器
35では、0・・・0102(減算器35の前回の出力
値)−0・・・012=0・・・012なる演算が行われ
る。
35では、0・・・0102(減算器35の前回の出力
値)−0・・・012=0・・・012なる演算が行われ
る。
【0082】この結果、この時点では、減算器35の出
力値は110となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第3回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
力値は110となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第3回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
【0083】この結果、また、アドレス計算部22の加
算器29においては、0(=ビット26)・・・012
(加算器29の前回の出力値)+0・・・012(セレ
クタ28を介して供給される+110)=0・・・010
2なる演算が行われ、この27ビットの0・・・0102
が外部アドレスバス8の上位27ビット部分に出力され
る。
算器29においては、0(=ビット26)・・・012
(加算器29の前回の出力値)+0・・・012(セレ
クタ28を介して供給される+110)=0・・・010
2なる演算が行われ、この27ビットの0・・・0102
が外部アドレスバス8の上位27ビット部分に出力され
る。
【0084】また、バースト転送数制御部23の加算器
37の出力値である1000002の下位5ビットの0
00002がセレクタ38及びスリーステートバッファ
群39を介して外部アドレスバス8の下位5ビット部分
に出力される。
37の出力値である1000002の下位5ビットの0
00002がセレクタ38及びスリーステートバッファ
群39を介して外部アドレスバス8の下位5ビット部分
に出力される。
【0085】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)・・・101000002=0000002016が
出力されると、アドレス0000004016〜アドレス
0000005F16を対象として、データD9〜D12
について、図5に示すように、データD9→D10→D
11→D12なる順にデータ転送が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)・・・101000002=0000002016が
出力されると、アドレス0000004016〜アドレス
0000005F16を対象として、データD9〜D12
について、図5に示すように、データD9→D10→D
11→D12なる順にデータ転送が行われる。
【0086】他方、バースト転送数制御部23の減算器
35では、0・・・012(減算器35の前回の出力
値)−0・・・012=0・・・002なる演算が行われ
る。
35では、0・・・012(減算器35の前回の出力
値)−0・・・012=0・・・002なる演算が行われ
る。
【0087】この結果、この時点で、減算器35の出力
値は010となり、0判定回路36はバースト転送終了指
示信号を出力することになり、バス制御部25は、バー
スト転送の終了動作を開始し、第4回目のバースト転送
が行われないように動作することになる。
値は010となり、0判定回路36はバースト転送終了指
示信号を出力することになり、バス制御部25は、バー
スト転送の終了動作を開始し、第4回目のバースト転送
が行われないように動作することになる。
【0088】図6は本発明のデータ転送制御装置の実施
の一形態であるDMAコントローラ20の動作の他の例
を説明するための図であり、第1回目のバースト転送の
開始アドレスを310番地=0(=ビット31)・・11
2番地=0000000316番地、転送バイト数を96
10=0(=ビット31)・・・011000002とす
るバースト転送が行われる場合に、外部アドレスバス8
に出力される開始アドレス、外部データバス9に出力さ
れるデータの種類、行われるバースト転送を示してい
る。
の一形態であるDMAコントローラ20の動作の他の例
を説明するための図であり、第1回目のバースト転送の
開始アドレスを310番地=0(=ビット31)・・11
2番地=0000000316番地、転送バイト数を96
10=0(=ビット31)・・・011000002とす
るバースト転送が行われる場合に、外部アドレスバス8
に出力される開始アドレス、外部データバス9に出力さ
れるデータの種類、行われるバースト転送を示してい
る。
【0089】この例の場合には、アドレス計算部22に
は、レジスタ部24から第1回目のバースト転送の開始
アドレスの上位27ビットである0・・・02(=00
000016)が供給される。
は、レジスタ部24から第1回目のバースト転送の開始
アドレスの上位27ビットである0・・・02(=00
000016)が供給される。
【0090】そして、この場合には、セレクタ28は、
選択制御信号SL1=「1」とされ、第1回目のバース
ト転送の開始アドレスの上位27ビットの0・・・02
を選択し、加算器29には初期値として0(=ビット2
6)・・・02が設定されると共に、この27ビットの
0・・・02がスリーステートバッファ群30を介して
外部アドレスバス8の上位27ビット部分に出力され
る。
選択制御信号SL1=「1」とされ、第1回目のバース
ト転送の開始アドレスの上位27ビットの0・・・02
を選択し、加算器29には初期値として0(=ビット2
6)・・・02が設定されると共に、この27ビットの
0・・・02がスリーステートバッファ群30を介して
外部アドレスバス8の上位27ビット部分に出力され
る。
【0091】また、バースト転送数制御部23には、第
1回目のバースト転送の開始アドレスの下位5ビットの
000112(=0316)と、転送バイト数0・・・0
11000002(=9610)から110を減じた0・・
・010111112(=95 10)が供給される。
1回目のバースト転送の開始アドレスの下位5ビットの
000112(=0316)と、転送バイト数0・・・0
11000002(=9610)から110を減じた0・・
・010111112(=95 10)が供給される。
【0092】この場合、セレクタ38は、選択制御信号
SL3=「1」とされ、第1回目のバースト転送の開始
アドレスの下位5ビットの000112が選択され、こ
れがスリーステートバッファ群39を介して外部アドレ
スバス8の上位5ビット部分に出力される。
SL3=「1」とされ、第1回目のバースト転送の開始
アドレスの下位5ビットの000112が選択され、こ
れがスリーステートバッファ群39を介して外部アドレ
スバス8の上位5ビット部分に出力される。
【0093】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)・・・0112=0000000316が出力される
と、アドレス0000000016〜アドレス00000
01F16を対象として、図6に示すように、データD1
〜D4について、データD1→D2→D3→D4なる順
にデータ転送が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)・・・0112=0000000316が出力される
と、アドレス0000000016〜アドレス00000
01F16を対象として、図6に示すように、データD1
〜D4について、データD1→D2→D3→D4なる順
にデータ転送が行われる。
【0094】他方、バースト転送数制御部23の加算器
32では、111112(転送バイト数から1を減じた
値の下位5ビット)+000112(バースト転送の開
始アドレスの下位5ビット)=1000102なる演算
が行われ、1000102の上位6ビットの12がキャリ
ーCとして出力され、下位5ビットの000102が加
算器37に供給される。
32では、111112(転送バイト数から1を減じた
値の下位5ビット)+000112(バースト転送の開
始アドレスの下位5ビット)=1000102なる演算
が行われ、1000102の上位6ビットの12がキャリ
ーCとして出力され、下位5ビットの000102が加
算器37に供給される。
【0095】この結果、加算器37においては、000
102+000012=000112なる演算が行われ、
この000112がセレクタ38に供給される。
102+000012=000112なる演算が行われ、
この000112がセレクタ38に供給される。
【0096】また、加算器33では、0(=ビット2
6)・・・102(転送バイト数から1を減じた値の上
位27ビット部分)+0・・・012(加算器32のキ
ャリーCの値)=0・・・0112なる演算が行われ、
これがセレクタ34を介して減算器35に供給され、初
期値として設定される。
6)・・・102(転送バイト数から1を減じた値の上
位27ビット部分)+0・・・012(加算器32のキ
ャリーCの値)=0・・・0112なる演算が行われ、
これがセレクタ34を介して減算器35に供給され、初
期値として設定される。
【0097】この結果、この時点では、減算器35の出
力値は310となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第2回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
力値は310となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第2回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
【0098】この結果、また、アドレス計算部22の加
算器29においては、0(=ビット26)・・・002
(加算器29の初期値)+0・・・012(セレクタ2
8を介して供給される+110)=0・・・012なる演
算が行われ、この27ビットの0・・・0102が外部
アドレスバス8の上位27ビットの部分に出力される。
算器29においては、0(=ビット26)・・・002
(加算器29の初期値)+0・・・012(セレクタ2
8を介して供給される+110)=0・・・012なる演
算が行われ、この27ビットの0・・・0102が外部
アドレスバス8の上位27ビットの部分に出力される。
【0099】また、バースト転送数制御部23では、加
算器37の出力値000112がセレクタ38及びスリ
ーステートバッファ群39を介して外部アドレスバス8
の下位5ビット部分に出力される。
算器37の出力値000112がセレクタ38及びスリ
ーステートバッファ群39を介して外部アドレスバス8
の下位5ビット部分に出力される。
【0100】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)・・・01000112=0000002316が出
力されると、アドレス0000002016〜アドレス0
000003F16を対象として、図6に示すように、デ
ータD5〜D8について、データD5→D6→D7→D
8なる順にデータ転送が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)・・・01000112=0000002316が出
力されると、アドレス0000002016〜アドレス0
000003F16を対象として、図6に示すように、デ
ータD5〜D8について、データD5→D6→D7→D
8なる順にデータ転送が行われる。
【0101】他方、バースト転送数制御部23の減算器
35においては、0・・・0112(減算器35の前回
の出力値)−0・・・0012=0・・・0102なる演
算が行われる。
35においては、0・・・0112(減算器35の前回
の出力値)−0・・・0012=0・・・0102なる演
算が行われる。
【0102】この結果、この時点では、減算器35の出
力値は210となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第3回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
力値は210となり、0判定回路36はバースト転送終了
指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第3回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
【0103】この結果、また、アドレス計算部22の加
算器29では、0(=ビット26)・・・012(加算
器29の前回の出力値)+0・・・012(セレクタ2
8を介して供給される+110)=0・・・0102なる
演算が行われ、この27ビットの0・・・0102が外
部アドレスバス8の上位27ビット部分に出力される。
算器29では、0(=ビット26)・・・012(加算
器29の前回の出力値)+0・・・012(セレクタ2
8を介して供給される+110)=0・・・0102なる
演算が行われ、この27ビットの0・・・0102が外
部アドレスバス8の上位27ビット部分に出力される。
【0104】また、バースト転送数制御部23の加算器
37の出力値である000112がセレクタ38及びス
リーステートバッファ群39を介して外部アドレスバス
8の下位5ビット部分に出力される。
37の出力値である000112がセレクタ38及びス
リーステートバッファ群39を介して外部アドレスバス
8の下位5ビット部分に出力される。
【0105】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)・・・010000112=0000004316が
出力されると、アドレス0000004016〜アドレス
0000005F16を対象として、図6に示すように、
データD9〜D12について、データD9→D10→D
11→D12なる順にデータ転送が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)・・・010000112=0000004316が
出力されると、アドレス0000004016〜アドレス
0000005F16を対象として、図6に示すように、
データD9〜D12について、データD9→D10→D
11→D12なる順にデータ転送が行われる。
【0106】他方、バースト転送数制御部23の減算器
35では、0・・・0102(減算器35の前回の出力
値)−0・・・0012=00・・・0012なる演算が
行われる。
35では、0・・・0102(減算器35の前回の出力
値)−0・・・0012=00・・・0012なる演算が
行われる。
【0107】この結果、この時点では、減算器35の出
力値は110となり、0判定回路36は、バースト転送終
了指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第4回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
力値は110となり、0判定回路36は、バースト転送終
了指示信号を出力することはないので、バス制御部25
は、バースト転送を終了させることなく、第4回目のバ
ースト転送要求をアドレス計算部22及びバースト転送
数制御部23に対して行うことになる。
【0108】この結果、また、アドレス計算部22の加
算器29では、0(=ビット26)・・・0102(加
算器29の前回の出力値)+0・・・0012(セレク
タ28を介して供給される+110)=00・・・011
2なる演算が行われ、この27ビットの0・・・0112
が外部アドレスバス8の上位27ビット部分に出力され
る。
算器29では、0(=ビット26)・・・0102(加
算器29の前回の出力値)+0・・・0012(セレク
タ28を介して供給される+110)=00・・・011
2なる演算が行われ、この27ビットの0・・・0112
が外部アドレスバス8の上位27ビット部分に出力され
る。
【0109】また、バースト転送数制御部23の加算器
37の出力値である000112がセレクタ38及びス
リーステートバッファ群39を介して外部アドレスバス
8の下位5ビット部分に出力される。
37の出力値である000112がセレクタ38及びス
リーステートバッファ群39を介して外部アドレスバス
8の下位5ビット部分に出力される。
【0110】このようにして、外部アドレスバス8に対
してバースト転送の開始アドレスとして0(=ビット3
1)・・・011000112=0000006316が
出力されると、アドレス0000006016〜アドレス
0000007F16を対象として、図6に示すように、
データD13〜D16について、データD13→D14
→D15→D16なる順にデータ転送が行われる。
してバースト転送の開始アドレスとして0(=ビット3
1)・・・011000112=0000006316が
出力されると、アドレス0000006016〜アドレス
0000007F16を対象として、図6に示すように、
データD13〜D16について、データD13→D14
→D15→D16なる順にデータ転送が行われる。
【0111】他方、バースト転送数制御部23の減算器
35では、0・・・012(減算器35の前回の出力
値)−0・・・012=0・・・002なる演算が行われ
る。
35では、0・・・012(減算器35の前回の出力
値)−0・・・012=0・・・002なる演算が行われ
る。
【0112】この結果、この時点で、減算器35の出力
値は010となり、0判定回路36はバースト転送終了指
示信号を出力することになり、バス制御部25は、バー
スト転送の終了動作を開始し、第4回目のバースト転送
が行われないように動作することになる。
値は010となり、0判定回路36はバースト転送終了指
示信号を出力することになり、バス制御部25は、バー
スト転送の終了動作を開始し、第4回目のバースト転送
が行われないように動作することになる。
【0113】このように、本発明のデータ転送制御装置
の実施の一形態のDMAコントローラ20によれば、ア
ドレス計算部22において、第2回目以降のバースト転
送の開始アドレスのうち、バースト転送の単位となるメ
モリセル領域のアドレスである上位27ビットの部分を
計算するようにすると共に、バースト転送数制御部23
において、第2回目以降のバースト転送の開始アドレス
のうち、バースト転送の単位となるメモリセル領域内の
アドレスである下位5ビットの部分を計算するようにし
ている。
の実施の一形態のDMAコントローラ20によれば、ア
ドレス計算部22において、第2回目以降のバースト転
送の開始アドレスのうち、バースト転送の単位となるメ
モリセル領域のアドレスである上位27ビットの部分を
計算するようにすると共に、バースト転送数制御部23
において、第2回目以降のバースト転送の開始アドレス
のうち、バースト転送の単位となるメモリセル領域内の
アドレスである下位5ビットの部分を計算するようにし
ている。
【0114】したがって、任意アドレスを先頭アドレス
とする任意バイト数のデータの転送をバースト転送を連
続して行う場合においても、1クロックごとにアドレス
を計算する必要がないので、アドレス計算用の加算器と
して、従来のバースト転送制御装置が備えている加算器
よりも高速の加算器を設けることなく、任意アドレスを
先頭アドレスとする任意バイト数のデータの転送を、バ
ースト転送を連続して行うことにより達成することがで
きる。
とする任意バイト数のデータの転送をバースト転送を連
続して行う場合においても、1クロックごとにアドレス
を計算する必要がないので、アドレス計算用の加算器と
して、従来のバースト転送制御装置が備えている加算器
よりも高速の加算器を設けることなく、任意アドレスを
先頭アドレスとする任意バイト数のデータの転送を、バ
ースト転送を連続して行うことにより達成することがで
きる。
【0115】
【発明の効果】本発明中、第1、第2、第3、第4又は
5の発明(請求項1、2、3、4又は5記載のデータ転
送制御方法)によれば、第2回目以降のバースト転送の
開始アドレスの計算を、バースト転送の単位となるメモ
リセル領域のアドレスの計算と、バースト転送の単位と
なるメモリセル領域内のアドレスの計算とに分けて行う
としたことにより、任意アドレスを先頭アドレスとする
任意データ幅のデータの転送をバースト転送を連続して
行う場合においても、1クロックごとにアドレスを計算
する必要がないので、アドレス計算用の加算器として、
従来のバースト転送制御装置が備えている加算器よりも
高速の加算器を設けなくとも、任意アドレスを先頭アド
レスとする任意データ幅のデータの転送を、バースト転
送を連続して行うことにより達成することができる。
5の発明(請求項1、2、3、4又は5記載のデータ転
送制御方法)によれば、第2回目以降のバースト転送の
開始アドレスの計算を、バースト転送の単位となるメモ
リセル領域のアドレスの計算と、バースト転送の単位と
なるメモリセル領域内のアドレスの計算とに分けて行う
としたことにより、任意アドレスを先頭アドレスとする
任意データ幅のデータの転送をバースト転送を連続して
行う場合においても、1クロックごとにアドレスを計算
する必要がないので、アドレス計算用の加算器として、
従来のバースト転送制御装置が備えている加算器よりも
高速の加算器を設けなくとも、任意アドレスを先頭アド
レスとする任意データ幅のデータの転送を、バースト転
送を連続して行うことにより達成することができる。
【0116】本発明中、第6、第7、第8、第9又は第
10の発明(請求項6、7、8、9又は10記載のデー
タ転送制御装置)によれば、第2回目以降のバースト転
送の開始アドレスのうち、バースト転送の単位となるメ
モリセル領域のアドレスを計算する第1のアドレス計算
部と、第2回目以降のバースト転送の開始アドレスのう
ち、バースト転送の単位となるメモリセル領域内のアド
レスを計算する第2のアドレス計算部とを備えるとした
ことにより、任意アドレスを先頭アドレスとする任意デ
ータ幅のデータの転送をバースト転送を連続して行う場
合においても、1クロックごとにアドレスを計算する必
要がないので、アドレス計算用の加算器として、従来の
バースト転送制御装置が備えている加算器よりも高速の
加算器を設けることなく、任意アドレスを先頭アドレス
とする任意データ幅のデータの転送を、バースト転送を
連続して行うことにより達成することができる。
10の発明(請求項6、7、8、9又は10記載のデー
タ転送制御装置)によれば、第2回目以降のバースト転
送の開始アドレスのうち、バースト転送の単位となるメ
モリセル領域のアドレスを計算する第1のアドレス計算
部と、第2回目以降のバースト転送の開始アドレスのう
ち、バースト転送の単位となるメモリセル領域内のアド
レスを計算する第2のアドレス計算部とを備えるとした
ことにより、任意アドレスを先頭アドレスとする任意デ
ータ幅のデータの転送をバースト転送を連続して行う場
合においても、1クロックごとにアドレスを計算する必
要がないので、アドレス計算用の加算器として、従来の
バースト転送制御装置が備えている加算器よりも高速の
加算器を設けることなく、任意アドレスを先頭アドレス
とする任意データ幅のデータの転送を、バースト転送を
連続して行うことにより達成することができる。
【図1】本発明のデータ転送制御装置の実施の一形態で
あるDMAコントローラを内蔵する演算プロセッサを備
えてなるデータ処理システムの一例の一部分を示す回路
図である。
あるDMAコントローラを内蔵する演算プロセッサを備
えてなるデータ処理システムの一例の一部分を示す回路
図である。
【図2】図1に示すデータ処理システムが備える外部メ
モリのメモリマップの一部分を示す図である。
モリのメモリマップの一部分を示す図である。
【図3】本発明のデータ転送制御装置の実施の一形態で
あるDMAコントローラが備えるアドレス計算部の構成
を示す回路図である。
あるDMAコントローラが備えるアドレス計算部の構成
を示す回路図である。
【図4】本発明のデータ転送制御装置の実施の一形態で
あるDMAコントローラが備えるバースト転送数制御部
の構成を示す回路図である。
あるDMAコントローラが備えるバースト転送数制御部
の構成を示す回路図である。
【図5】本発明のデータ転送制御装置の実施の一形態で
あるDMAコントローラの動作の一例を説明するための
図である。
あるDMAコントローラの動作の一例を説明するための
図である。
【図6】本発明のデータ転送制御装置の実施の一形態で
あるDMAコントローラの動作の他の例を説明するため
の図である。
あるDMAコントローラの動作の他の例を説明するため
の図である。
【図7】バースト転送が行われる従来のデータ処理シス
テムの一例の一部分を示す回路図である。
テムの一例の一部分を示す回路図である。
【図8】図7に示すデータ処理システムの演算プロセッ
サと外部メモリとの間で行われるバースト転送動作の一
例を示すタイミングチャートである。
サと外部メモリとの間で行われるバースト転送動作の一
例を示すタイミングチャートである。
26 内部データバス
Claims (10)
- 【請求項1】バースト転送によるデータ転送を行うこと
ができるメモリとの間の、バースト転送の単位となるメ
モリセル領域のアドレスが連続する複数回のバースト転
送によるデータ転送を制御するデータ転送制御方法であ
って、 第2回目以降のバースト転送の開始アドレスの計算を、
バースト転送の単位となるメモリセル領域のアドレスの
計算と、バースト転送の単位となるメモリセル領域内の
アドレスの計算とに分けて行うことを特徴とするデータ
転送制御方法。 - 【請求項2】前記メモリは、メモリ容量をmビットとす
るメモリセルを単位としてnビットからなるアドレスを
付してなり、バースト転送の単位となるメモリセル領域
のアドレスを上位n−xビットとし、ワード長を2x-y
×mビット、バースト長を2yとするバースト転送を行
うことができるものであり(但し、mは正の整数、n、
x、yはn>x>y≧1を満足する整数である。)、 前記バースト転送の単位となるメモリセル領域のアドレ
スの計算は、バースト転送要求があるごとに、第1回目
のバースト転送の開始アドレスの上位n−xビットの値
を順に1ずつインクリメントすることにより行われ、 前記バースト転送単位メモリセル領域内のアドレスの計
算は、データ転送対象アドレス数の下位xビットの値
と、前記第1回目のバースト転送開始アドレスの下位x
ビットの値との加算により行われることを特徴とする請
求項1記載のデータ転送制御方法。 - 【請求項3】データ転送対象アドレス数と、第1回目の
バースト転送の開始アドレスとに基づいて第2回目以降
のバースト転送数を算出して第2回目以降のバースト転
送数を制御するバースト転送数制御工程が実行されるこ
とを特徴とする請求項2記載のデータ転送制御方法。 - 【請求項4】前記バースト転送数制御工程は、データ転
送対象アドレス数の下位xビットの値と前記第1回目の
バースト転送の開始アドレスの下位xビットの値とに基
づいて、第2回目以降のバースト転送数を算出する工程
と、バースト転送要求があるごとに、前記算出された第
2回目以降のバースト転送数を1ずつディクリメントし
て前記算出された第2回目以降のバースト転送数が0に
なった場合、バースト転送の終了を指示する工程とを含
むことを特徴とする請求項3記載のデータ転送制御方
法。 - 【請求項5】前記第2回目以降のバースト転送数の算出
は、前記データ転送対象アドレス数から1を減じた値の
下位xビットと、前記第1回目のバースト転送開始アド
レスの下位xビットの値との加算値の上位x+1ビット
の値と、前記データ転送対象アドレス数から1を減じた
値の上位n−xビットの値とを加算することにより行わ
れることを特徴とする請求項4記載のデータ転送制御方
法。 - 【請求項6】バースト転送によるデータ転送を行うこと
ができるメモリとの間の、バースト転送の単位となるメ
モリセル領域のアドレスが連続する複数回のバースト転
送によるデータ転送を制御するデータ転送制御装置であ
って、 第2回目以降のバースト転送の開始アドレスのうち、バ
ースト転送の単位となるメモリセル領域のアドレスを計
算する第1のアドレス計算部と、前記第2回目以降のバ
ースト転送の開始アドレスのうち、バースト転送の単位
となるメモリセル領域内のアドレスを計算する第2のア
ドレス計算部とを備えていることを特徴とするデータ転
送制御装置。 - 【請求項7】前記メモリは、メモリ容量をmビットとす
るメモリセルを単位としてnビットからなるアドレスを
付してなり、バースト転送の単位となるメモリセル領域
のアドレスを上位n−xビットとし、ワード長を2x-y
×mビット、バースト長を2yとするバースト転送を行
うことができるものであり(但し、mは正の整数、n、
x、yはn>x>y≧1を満足する整数である。)、 前記第1のアドレス計算部は、第1回目のバースト転送
の開始アドレスの上位n−xビットの値を初期値として
設定され、バースト転送要求があるごとに、前記初期値
を順に1ずつインクリメントする加算器を備えて構成さ
れ、 前記第2のアドレス計算部は、前記第1回目のバースト
転送の開始アドレスの下位xビットの値とデータ転送対
象アドレス数の下位xビットの値とを加算するように構
成されていることを特徴とする請求項6記載のデータ転
送制御装置。 - 【請求項8】データ転送対象アドレス数と、第1回目の
バースト転送の開始アドレスとに基づいて第2回目以降
のバースト転送数を算出して第2回目以降のバースト転
送数を制御するバースト転送数制御部を備えていること
を特徴とする請求項7記載のデータ転送制御装置。 - 【請求項9】前記バースト転送数制御部は、前記データ
転送対象アドレス数から1を減じた値の下位xビットの
値と、前記第1回目のバースト転送の開始アドレスの下
位xビットの値とを加算する第1の加算器と、この第1
の加算器のキャリー値と、前記データ転送対象アドレス
数から1を減じた値の上位n−xビットの値とを加算す
る第2の加算器と、この第2の加算器の出力値を初期値
として設定され、バースト転送要求があるごとに、前記
初期値を順に1ずつディクリメントする減算器と、この
減算器の出力値が0になったか否かを判定して、前記減
算器の出力値が0となった場合には、バースト転送終了
指示信号を出力する判定回路とを備えて構成されている
ことを特徴とする請求項8記載のデータ転送制御装置。 - 【請求項10】前記第2のアドレス計算部は、前記第1
の加算器の出力値に+1を加算する第3の加算器を備え
て構成されていることを特徴とする請求項9記載のデー
タ転送制御装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8275166A JPH10124447A (ja) | 1996-10-18 | 1996-10-18 | データ転送制御方法及び装置 |
| US08/824,761 US6009493A (en) | 1996-10-18 | 1997-03-26 | Data transfer control method and apparatus for performing consecutive burst transfer operations with a simple structure |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8275166A JPH10124447A (ja) | 1996-10-18 | 1996-10-18 | データ転送制御方法及び装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10124447A true JPH10124447A (ja) | 1998-05-15 |
Family
ID=17551601
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8275166A Pending JPH10124447A (ja) | 1996-10-18 | 1996-10-18 | データ転送制御方法及び装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US6009493A (ja) |
| JP (1) | JPH10124447A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6930951B2 (en) | 2003-06-30 | 2005-08-16 | Hynix Semiconductor Inc. | Semiconductor memory device capable of accessing data in continuous burst mode regardless of location of accessed data |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE69727465T2 (de) | 1997-01-09 | 2004-12-23 | Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto | Rechnersystem mit Speichersteuerung für Stossbetrieb-Übertragung |
| JPH11232214A (ja) * | 1998-02-17 | 1999-08-27 | Hitachi Ltd | 情報処理装置用プロセッサおよびその制御方法 |
| US6178467B1 (en) * | 1998-07-07 | 2001-01-23 | International Business Machines Corporation | Microprocessor system requests burstable access to noncacheable memory areas and transfers noncacheable address on a bus at burst mode |
| US6442671B1 (en) * | 1999-03-03 | 2002-08-27 | Philips Semiconductors | System for priming a latch between two memories and transferring data via the latch in successive clock cycle thereafter |
| GB2365545B (en) * | 1999-12-23 | 2004-06-02 | Ibm | Data processing system with master and slave processors |
| US7383424B1 (en) | 2000-06-15 | 2008-06-03 | Hewlett-Packard Development Company, L.P. | Computer architecture containing processor and decoupled coprocessor |
| US7016987B2 (en) * | 2001-06-21 | 2006-03-21 | Integrated Device Technology, Inc. | Transaction aligner microarchitecture |
| JP2003067321A (ja) * | 2001-08-28 | 2003-03-07 | Hitachi Ltd | データ転送装置及び該データ転送装置内に具備されるアライナ |
| JP4820566B2 (ja) * | 2005-03-25 | 2011-11-24 | パナソニック株式会社 | メモリアクセス制御回路 |
| CN110865959B (zh) * | 2018-08-27 | 2021-10-15 | 武汉杰开科技有限公司 | 一种用于唤醒i2c设备的方法及电路 |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4344156A (en) * | 1980-10-10 | 1982-08-10 | Inmos Corporation | High speed data transfer for a semiconductor memory |
| JPS57113162A (en) * | 1980-12-29 | 1982-07-14 | Fujitsu Ltd | High-speed external storage device |
| JPS6275860A (ja) * | 1985-09-30 | 1987-04-07 | Toshiba Corp | デ−タ転送制御装置 |
| US5054565A (en) * | 1990-05-25 | 1991-10-08 | Underground Technologies, Inc. | Steering mechanism for a subsoil boring apparatus |
| DE4114744C1 (ja) * | 1991-05-06 | 1992-05-27 | Siemens Ag, 8000 Muenchen, De | |
| JPH05134973A (ja) * | 1991-11-14 | 1993-06-01 | Toshiba Corp | データ転送装置 |
| GB9210846D0 (en) * | 1992-05-21 | 1992-07-08 | Baroid Technology Inc | Drill bit steering |
| US5469544A (en) * | 1992-11-09 | 1995-11-21 | Intel Corporation | Central processing unit address pipelining |
| JPH07105128A (ja) * | 1993-10-07 | 1995-04-21 | Mitsubishi Electric Corp | データ転送装置 |
| JP2704113B2 (ja) * | 1994-04-26 | 1998-01-26 | 日本電気アイシーマイコンシステム株式会社 | データ処理装置 |
| US5485889A (en) * | 1994-07-25 | 1996-01-23 | Sidekick Tools Inc. | Steering drill bit while drilling a bore hole |
| US5748630A (en) * | 1996-05-09 | 1998-05-05 | Maker Communications, Inc. | Asynchronous transfer mode cell processing system with load multiple instruction and memory write-back |
| US5734849A (en) * | 1996-07-01 | 1998-03-31 | Sun Microsystems, Inc. | Dual bus memory transactions using address bus for data transfer |
-
1996
- 1996-10-18 JP JP8275166A patent/JPH10124447A/ja active Pending
-
1997
- 1997-03-26 US US08/824,761 patent/US6009493A/en not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6930951B2 (en) | 2003-06-30 | 2005-08-16 | Hynix Semiconductor Inc. | Semiconductor memory device capable of accessing data in continuous burst mode regardless of location of accessed data |
Also Published As
| Publication number | Publication date |
|---|---|
| US6009493A (en) | 1999-12-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20040243740A1 (en) | DMA controller | |
| EP0373291B1 (en) | Digital signal processor | |
| JP3027970B2 (ja) | デイジタル信号プロセツサメモリ管理ユニツトおよびその方法 | |
| US20090313402A1 (en) | FIFO device and method of storing data in FIFO buffer | |
| US7093105B2 (en) | Method and apparatus for determining availability of a queue to which a program step is issued out of program order | |
| JPH10124447A (ja) | データ転送制御方法及び装置 | |
| JP3619532B2 (ja) | 半導体集積回路装置 | |
| US5594878A (en) | Bus interface structure and system for controlling the bus interface structure | |
| US6684267B2 (en) | Direct memory access controller, and direct memory access control method | |
| US20080077733A1 (en) | Data transfer apparatus | |
| JP4855864B2 (ja) | ダイレクトメモリアクセスコントローラ | |
| JP2003271542A (ja) | ダイレクトアクセスコントローラ | |
| EP1324202A2 (en) | Device and method for information processing | |
| EP0359192B1 (en) | Vector processors and vector register control | |
| JPH0833869B2 (ja) | データ処理装置 | |
| JPH0476648A (ja) | キャッシュ記憶装置 | |
| JP2867148B2 (ja) | メモリ・アクセス終了条件判定方式 | |
| JPS59136831A (ja) | デ−タ転送制御装置 | |
| JPH0736806A (ja) | Dma方式 | |
| CN100587679C (zh) | 数据处理方法及系统 | |
| JP2002024157A (ja) | Dma処理方法およびdma処理装置 | |
| JPS58189719A (ja) | デ−タ転送制御方式 | |
| JP3355057B2 (ja) | Dmaコントローラ | |
| JP2005338929A (ja) | 半導体装置 | |
| JPH06161939A (ja) | 集積回路 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051116 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051122 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060711 |