JPH04336359A - Dma制御回路 - Google Patents
Dma制御回路Info
- Publication number
- JPH04336359A JPH04336359A JP10629791A JP10629791A JPH04336359A JP H04336359 A JPH04336359 A JP H04336359A JP 10629791 A JP10629791 A JP 10629791A JP 10629791 A JP10629791 A JP 10629791A JP H04336359 A JPH04336359 A JP H04336359A
- Authority
- JP
- Japan
- Prior art keywords
- data
- control circuit
- input data
- transfer
- memory
- 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
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
Landscapes
- Bus Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、入力機器とメモリ間の
データ転送を制御するDMA制御回路に関し、特に入力
データのバス幅とメモリのバス幅が異なっていて、しか
も入力データ間隔が不定期な場合のDMA制御回路に関
する。
データ転送を制御するDMA制御回路に関し、特に入力
データのバス幅とメモリのバス幅が異なっていて、しか
も入力データ間隔が不定期な場合のDMA制御回路に関
する。
【0002】
【従来の技術】従来、この種のDAM制御回路は入力デ
ータのバス幅のままメモリのバス幅の一部のみを使用し
て入力データをメモリに転送していた。または、DMA
制御回路を使用せず入力データが入力されるたびにプロ
セッサに割り込みをかけプロセッサが入力データを引き
取る方式も採られていた。
ータのバス幅のままメモリのバス幅の一部のみを使用し
て入力データをメモリに転送していた。または、DMA
制御回路を使用せず入力データが入力されるたびにプロ
セッサに割り込みをかけプロセッサが入力データを引き
取る方式も採られていた。
【0003】
【発明が解決しようとする課題】上述した従来のDMA
制御回路による入力データのメモリへの転送は、入力デ
ータのバス幅のままでメモリへ転送されるため入力デー
タのバス幅よりメモリのバス幅が広い場合、メモリのバ
ス幅を最大限に利用できないためメモリバス占有率が増
加するという欠点がある。また、プロセッサへの割り込
みによりプロセッサが入力データを引き取る方式はプロ
セッサへの負荷が増大し他の処理が遅くなるという欠点
がある。
制御回路による入力データのメモリへの転送は、入力デ
ータのバス幅のままでメモリへ転送されるため入力デー
タのバス幅よりメモリのバス幅が広い場合、メモリのバ
ス幅を最大限に利用できないためメモリバス占有率が増
加するという欠点がある。また、プロセッサへの割り込
みによりプロセッサが入力データを引き取る方式はプロ
セッサへの負荷が増大し他の処理が遅くなるという欠点
がある。
【0004】
【課題を解決するための手段】本発明は、入力機器とメ
モリ間のデータ転送を制御するDMA制御回路において
、逐次に入力してラッチする1または複数の入力データ
を並列にメモリへ転送するデータ幅変換回路と、前記デ
ータ幅変換回路からのデータの転送先のメモリアドレス
を生成するアドレス生成回路と、このアドレス生成回路
にセットされている転送先のメモリアドレスに応じて転
送遅延許容時間内に入力した1または複数の入力データ
を前記データ幅変換回路に重複してラッチさせデータ幅
変換回路からメモリへ転送したデータの幅に応じて前記
アドレス生成回路の転送先アドレスをインクレメントす
る入力データ制御回路とを有している。
モリ間のデータ転送を制御するDMA制御回路において
、逐次に入力してラッチする1または複数の入力データ
を並列にメモリへ転送するデータ幅変換回路と、前記デ
ータ幅変換回路からのデータの転送先のメモリアドレス
を生成するアドレス生成回路と、このアドレス生成回路
にセットされている転送先のメモリアドレスに応じて転
送遅延許容時間内に入力した1または複数の入力データ
を前記データ幅変換回路に重複してラッチさせデータ幅
変換回路からメモリへ転送したデータの幅に応じて前記
アドレス生成回路の転送先アドレスをインクレメントす
る入力データ制御回路とを有している。
【0005】
【実施例】次に、本発明について図面を参照して説明す
る。
る。
【0006】図1は本発明の一実施例のブロック図であ
る。図1において1は入力データ制御回路、2はデータ
幅変換回路、3はアドレス生成回路、4はメモリバス制
御回路をそれぞれ表している。なお、本実施例では入力
データcのデータ幅は8ビット(バイト)、メモリへ転
送するための出力データjのデータ幅は32ビット(ロ
ングワード)であり、メモリへはバイト、ワード(16
ビット)、ロングワードのいずれかのデータ幅で転送す
ることができる。
る。図1において1は入力データ制御回路、2はデータ
幅変換回路、3はアドレス生成回路、4はメモリバス制
御回路をそれぞれ表している。なお、本実施例では入力
データcのデータ幅は8ビット(バイト)、メモリへ転
送するための出力データjのデータ幅は32ビット(ロ
ングワード)であり、メモリへはバイト、ワード(16
ビット)、ロングワードのいずれかのデータ幅で転送す
ることができる。
【0007】入力データ制御回路1で実行される制御フ
ローを図2〜図4に示しており、これらを図1の説明の
中で逐次参照していく。
ローを図2〜図4に示しており、これらを図1の説明の
中で逐次参照していく。
【0008】図1において、入力データcを出力データ
jを経てメモリにDMA転送するには、まずプリセット
アドレス信号aを用いて転送先の先頭アドレスをアドレ
ス生成回路3に設定する。次に、プリセット転送バイト
数信号b0をメモリバス制御回路4に設定する。さらに
、入力データcの転送遅延許可時間信号b1を入力デー
タ制御回路1に設定する。以上の設定が終了するとDM
A転送をすることが可能となり入力データcが入力され
次第DMA転送が開始される。 (1)まず、入力データcが入力され入力データタイミ
ング信号dが入力データ制御回路1に入力されると入力
データ制御回路1からラッチ信号l1が出されデータ幅
変換回路2のレジスタD0に入力データcがラッチされ
る。図2に示す通り転送先アドレスが奇数アドレスのと
きは入力データ制御回路1はメモリバス制御回路4へ転
送指令fおよび転送幅g(この場合、転送幅=バイト)
を通知する。メモリバス制御回路4は入力データ制御回
路1からの指令に従いそのままバイトデータとして出力
データj、メモリアドレスk、メモリ制御信号h,転送
幅iを用いてメモリへ入力データcを転送する。転送が
終了すると入力データ制御回路1はアドレス生成回路の
アドレスを+1インクリメントする。 (2)転送先アドレスが奇数アドレスでなくワード境界
の時はWシーケンスモードに移行し図3の動作を実行す
る。Wシーケンスモードではプリセットされた転送遅延
許容時間内にさらに入力データcが入力されると、入力
データ制御回路1からラッチ信号l2が出力されデータ
幅変換回路2のレジスタD1に入力データcがラッチさ
れる。入力データ制御回路1はメモリバス制御回路4へ
転送指令fおよび転送幅g(この場合、転送幅=ワード
)を通知する。メモリバス制御回路4は入力データ制御
回路1からの指令に従いそのままワードデータとして出
力データj、メモリアドレスk、メモリ制御信号h,転
送幅iを用いてメモリへデータを転送する。転送が終了
すると入力データ制御回路1はアドレス生成回路3のア
ドレスを+2インクリメントする。また、プリセットさ
れた転送遅延許容時間内にさらに入力データcが入力さ
れないときは、(1)項に述べたバイト転送の制御シー
ケンスを実行する。 (3)転送先アドレスがロングワード境界の時はLWシ
ーケンスモードに移行し図4の動作を実行する。LWシ
ーケンスモードではプリセットされた転送遅延許容時間
内にさらに入力データcが入力されると、入力データ制
御回路1からラッチ信号l2が出されデータ幅変換回路
2のレジスタD1に入力データcがラッチされる。さら
に入力データcが入力されると、入力データ制御回路1
からラッチ信号l3が出されデータ幅変換回路2のレジ
スタD2に入力データcがラッチされる。さらに入力デ
ータcが入力されると、入力データ制御回路1からラッ
チ信号l4が出されデータ幅変換回路2のレジスタD3
に入力データcがラッチされる。このようにしてロング
ワード分のデータがそろうと入力データ制御回路1はメ
モリバス制御回路4へ転送指令fおよび転送幅g(この
場合、転送幅=ロングワード)を通知する。メモリバス
制御回路4は入力データ制御回路1からの指令に従いそ
のままロングワードデータとして出力データj、メモリ
アドレスk、メモリ制御信号h、転送幅iを用いてメモ
リへデータを転送する。
jを経てメモリにDMA転送するには、まずプリセット
アドレス信号aを用いて転送先の先頭アドレスをアドレ
ス生成回路3に設定する。次に、プリセット転送バイト
数信号b0をメモリバス制御回路4に設定する。さらに
、入力データcの転送遅延許可時間信号b1を入力デー
タ制御回路1に設定する。以上の設定が終了するとDM
A転送をすることが可能となり入力データcが入力され
次第DMA転送が開始される。 (1)まず、入力データcが入力され入力データタイミ
ング信号dが入力データ制御回路1に入力されると入力
データ制御回路1からラッチ信号l1が出されデータ幅
変換回路2のレジスタD0に入力データcがラッチされ
る。図2に示す通り転送先アドレスが奇数アドレスのと
きは入力データ制御回路1はメモリバス制御回路4へ転
送指令fおよび転送幅g(この場合、転送幅=バイト)
を通知する。メモリバス制御回路4は入力データ制御回
路1からの指令に従いそのままバイトデータとして出力
データj、メモリアドレスk、メモリ制御信号h,転送
幅iを用いてメモリへ入力データcを転送する。転送が
終了すると入力データ制御回路1はアドレス生成回路の
アドレスを+1インクリメントする。 (2)転送先アドレスが奇数アドレスでなくワード境界
の時はWシーケンスモードに移行し図3の動作を実行す
る。Wシーケンスモードではプリセットされた転送遅延
許容時間内にさらに入力データcが入力されると、入力
データ制御回路1からラッチ信号l2が出力されデータ
幅変換回路2のレジスタD1に入力データcがラッチさ
れる。入力データ制御回路1はメモリバス制御回路4へ
転送指令fおよび転送幅g(この場合、転送幅=ワード
)を通知する。メモリバス制御回路4は入力データ制御
回路1からの指令に従いそのままワードデータとして出
力データj、メモリアドレスk、メモリ制御信号h,転
送幅iを用いてメモリへデータを転送する。転送が終了
すると入力データ制御回路1はアドレス生成回路3のア
ドレスを+2インクリメントする。また、プリセットさ
れた転送遅延許容時間内にさらに入力データcが入力さ
れないときは、(1)項に述べたバイト転送の制御シー
ケンスを実行する。 (3)転送先アドレスがロングワード境界の時はLWシ
ーケンスモードに移行し図4の動作を実行する。LWシ
ーケンスモードではプリセットされた転送遅延許容時間
内にさらに入力データcが入力されると、入力データ制
御回路1からラッチ信号l2が出されデータ幅変換回路
2のレジスタD1に入力データcがラッチされる。さら
に入力データcが入力されると、入力データ制御回路1
からラッチ信号l3が出されデータ幅変換回路2のレジ
スタD2に入力データcがラッチされる。さらに入力デ
ータcが入力されると、入力データ制御回路1からラッ
チ信号l4が出されデータ幅変換回路2のレジスタD3
に入力データcがラッチされる。このようにしてロング
ワード分のデータがそろうと入力データ制御回路1はメ
モリバス制御回路4へ転送指令fおよび転送幅g(この
場合、転送幅=ロングワード)を通知する。メモリバス
制御回路4は入力データ制御回路1からの指令に従いそ
のままロングワードデータとして出力データj、メモリ
アドレスk、メモリ制御信号h、転送幅iを用いてメモ
リへデータを転送する。
【0009】転送が終了すると入力データ制御回路1は
アドレス生成回路3のアドレスを+4インクリメントす
る。また、プリセットされた転送遅延許容時間内に入力
データcが3バイトしか入力されないときは、(2)項
に述べたワード転送の制御シーケンスを実行し、残され
た1バイト分のデータはレジスタD2からD0に移され
た後にWシーケンスモード移行する。また、プリセット
された転送遅延許容時間内に入力データcが2バイトし
か入力されないときは、(2)項に述べたワード転送の
制御シーケンスを実行する。また、プリセットされた転
送遅延許容時間内に入力データcが1バイトしか入力さ
れないときは、(1)項に述べたバイト転送の制御シー
ケンスを実行する。
アドレス生成回路3のアドレスを+4インクリメントす
る。また、プリセットされた転送遅延許容時間内に入力
データcが3バイトしか入力されないときは、(2)項
に述べたワード転送の制御シーケンスを実行し、残され
た1バイト分のデータはレジスタD2からD0に移され
た後にWシーケンスモード移行する。また、プリセット
された転送遅延許容時間内に入力データcが2バイトし
か入力されないときは、(2)項に述べたワード転送の
制御シーケンスを実行する。また、プリセットされた転
送遅延許容時間内に入力データcが1バイトしか入力さ
れないときは、(1)項に述べたバイト転送の制御シー
ケンスを実行する。
【0010】以上のような制御シーケンスはプリセット
された転送バイト数分のデータ転送が終了するまで継続
される。
された転送バイト数分のデータ転送が終了するまで継続
される。
【0011】
【発明の効果】以上説明したように本発明の適応型DM
A制御回路は、入力データ制御回路とデータ幅変換回路
とアドレス生成回路とメモリバス制御回路とを有し、そ
れらを組み合わせることにより入力データのバス幅とメ
モリのバス幅が異なる場合に、入力データ間隔が不定期
な場合にも最適にデータの幅を選択し遅延なくデータ転
送できる効果がある。
A制御回路は、入力データ制御回路とデータ幅変換回路
とアドレス生成回路とメモリバス制御回路とを有し、そ
れらを組み合わせることにより入力データのバス幅とメ
モリのバス幅が異なる場合に、入力データ間隔が不定期
な場合にも最適にデータの幅を選択し遅延なくデータ転
送できる効果がある。
【図1】本発明の一実施例のブロック図である。
【図2】図1に示す実施例の動作のフローチャートであ
る。
る。
【図3】図2中のWシーケンスのフローチャートである
。
。
【図4】図2中のLWシーケンスのフローチャートであ
る。
る。
1 入力データ制御回路
2 データ幅変換回路
3 アドレス生成回路
4 メモリバス制御回路
a プリセットアドレス信号
b0 プリセット転送バイト数信号b1
転送遅延許容時間信号 c 入力データ d 入力データタイミング信号 e アドレスインクリメント信号f 転送
指令 g 転送幅 h メモリ制御信号 i 転送幅 j 出力データ k メモリアドレス
転送遅延許容時間信号 c 入力データ d 入力データタイミング信号 e アドレスインクリメント信号f 転送
指令 g 転送幅 h メモリ制御信号 i 転送幅 j 出力データ k メモリアドレス
Claims (1)
- 【請求項1】 入力機器とメモリ間のデータ転送を制
御するDMA制御回路において、逐次に入力してラッチ
する1または複数の入力データを並列にメモリへ転送す
るデータ幅変換回路と、前記データ幅変換回路からのデ
ータの転送先のメモリアドレスを生成するアドレス生成
回路と、このアドレス生成回路にセットされている転送
先のメモリアドレスに応じて転送遅延許容時間内に入力
した1または複数の入力データを前記データ幅変換回路
に重複してラッチさせデータ幅変換回路からメモリへ転
送したデータの幅に応じて前記アドレス生成回路の転送
先アドレスをインクレメントする入力データ制御回路と
を含むことを特徴とするDMA制御回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10629791A JPH04336359A (ja) | 1991-05-13 | 1991-05-13 | Dma制御回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10629791A JPH04336359A (ja) | 1991-05-13 | 1991-05-13 | Dma制御回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04336359A true JPH04336359A (ja) | 1992-11-24 |
Family
ID=14430100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10629791A Pending JPH04336359A (ja) | 1991-05-13 | 1991-05-13 | Dma制御回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04336359A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09171471A (ja) * | 1995-12-21 | 1997-06-30 | Kofu Nippon Denki Kk | Lsi間非同期データ転送回路 |
-
1991
- 1991-05-13 JP JP10629791A patent/JPH04336359A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09171471A (ja) * | 1995-12-21 | 1997-06-30 | Kofu Nippon Denki Kk | Lsi間非同期データ転送回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5306962A (en) | Qualified non-overlapping clock generator to provide control lines with non-overlapping clock timing | |
US5428763A (en) | Digital data apparatus for transferring data between a byte-wide digital data bus and a four byte-wide digital data bus | |
US5983305A (en) | Network adapter with data aligner | |
JPS63228206A (ja) | クロツク分配方式 | |
JPH04336359A (ja) | Dma制御回路 | |
JP2563679B2 (ja) | 双方向入出力信号分離回路 | |
JP2002278924A (ja) | データの転送制御システム,転送制御方法およびそのプログラム | |
JPH0376659A (ja) | サーマルヘッドプリンタ | |
JPH035863A (ja) | デジタルシステム | |
JPS61150055A (ja) | Dmaデ−タ転送方式 | |
JPH0397340A (ja) | データバス幅変換回路 | |
JP2984808B2 (ja) | 大規模集積回路の内部初期化回路 | |
JP2820054B2 (ja) | バスインタフェース装置 | |
JP2000003285A (ja) | 割り込み処理方法および割り込み回路 | |
JPS61184655A (ja) | デ−タ転送方式 | |
JPS6059464A (ja) | バスリクエスト制御方式 | |
JPH047596A (ja) | 画像メモリ制御方式 | |
KR19980083459A (ko) | 데이터버스 사이즈 조정 장치 | |
JPS61292766A (ja) | デ−タ入力方式 | |
JPH0314123A (ja) | 印刷制御装置 | |
JPH06103370A (ja) | 画像処理プロセッサのためのラインバッファ | |
JPS60222951A (ja) | デ−タ転送方式 | |
JPS58125142A (ja) | デ−タ変換回路 | |
JPH02153451A (ja) | バス制御方式 | |
JPH0370238A (ja) | 転送ワード数決定方法及びその回路 |