JP2792141B2 - ミスアラインメント制御装置 - Google Patents

ミスアラインメント制御装置

Info

Publication number
JP2792141B2
JP2792141B2 JP25624389A JP25624389A JP2792141B2 JP 2792141 B2 JP2792141 B2 JP 2792141B2 JP 25624389 A JP25624389 A JP 25624389A JP 25624389 A JP25624389 A JP 25624389A JP 2792141 B2 JP2792141 B2 JP 2792141B2
Authority
JP
Japan
Prior art keywords
transfer
bits
dma transfer
bytes
misalignment
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
Application number
JP25624389A
Other languages
English (en)
Other versions
JPH03118651A (ja
Inventor
誠一 冨田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP25624389A priority Critical patent/JP2792141B2/ja
Publication of JPH03118651A publication Critical patent/JPH03118651A/ja
Application granted granted Critical
Publication of JP2792141B2 publication Critical patent/JP2792141B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 <産業上の利用分野> 本発明は、32ビット・データ・バスを備えたコンピュ
ータ・システムにおいて、32ビットより小さいデータ・
ビット幅を取り扱う入出力装置とメモリ間でDMA転送
(ダイレクト・メモリ・アクセス転送)する場合に発生
する、ミスアラインメントをサポートするミスアライン
メント制御装置に関するものである。
<従来の技術> 中央処理装置CPU、主メモリ、例えばディスク制御
部,通信制御部等の各種入出力装置が32ビット・データ
・バスに接続されるコンピュータ・システムにおいて、
8ビット・データを取り扱うディスク制御部と主メモリ
間でDMA転送する場合を想定する。
この場合、データ・バスのビット幅は32ビットであ
り、ディスク制御部のビット幅(8ビット)とは異なる
ため、第4図(a)に示すような制御を行う。
即ち、第4図(a)はDMA転送先メモリ・アドレスの
下位2ビットA1,A0と、DMA転送するデータ・バイト数T
(1〜4)であり、例えば、転送先メモリ・アドレスA
1,A0(0,0)で転送バイト数T=1の時はデータ・バスD
31〜D24(1バイト)が有効、転送バイト数T=2の時
はデータ・バスD31〜D61(2バイト)が有効、そして、
転送先メモリ・アドレスA1,A0(0,1)で転送バイト数T
=1の時はデータ・バスD23〜D15が有効、以下、転送先
メモリ・アドレスA1,A0に応じてデータ・バスの有効部
分の先頭が指定され、転送バイト数Tに応じて転送する
バイト数が指定される。
以上のような制御をデータ・バスと制御線を用いて行
っている。
<発明が解決しようとする課題> しかしながら、上記のような従来のDMA転送制御にお
いては、転送バイト数が多いと、転送開始バイトが必ず
しもD31〜D24から始まることは少なく、また、転送終了
バイトが必ずしもD7〜D0で終わることは少なく、第4図
(b)のような転送形式(転送先メモリ・アドレス1005
番地でA1,A0(1,0)で転送バイト数T=14)、即ち転送
開始時及び転送終了時にミスアラインメント(非整列転
送)が発生することが多い。
このような場合には、データ・バス及び制御線のタイ
ミング制御により、計14バイトの転送を行うように制御
しているが、メモリ側は32ビット単位で処理速度が速
く、入出力装置側は例えば8ビット単位で処理速度が遅
く、この速度調整の問題があり、複雑な制御をすること
が必要であった。
本発明は、以上のような複雑な制御なしにミスアライ
ンメントの制御を円滑にできるようにすることを課題と
し、DMA転送にあってDMA転送開始メモリ・アドレス、DM
A転送バイト数にかかわらず、ミスアラインメント制御
を行える装置を実現することを目的とする。
<課題を解決するための手段> 上記課題を解決した本発明は、今回バス・サイクルの
DMA転送開始アドレスの値、DMA転送バイト数の値、残り
の転送バイト数等のビット情報を用いて、次回バス・サ
イクルで使用する各値を決定するようにしたものであ
り、その構成は次の通りである。
即ち、取り扱うデータ・ビット数が異なるものどうし
でDMA転送する際に発生するミスアラインメントをサポ
ートするミスアラインメント制御装置において、今回バ
ス・サイクルにおける、DMA転送先アドレスの下位2ビ
ット、DMA転送バイト数を表わすビット情報の下位2バ
ット、前記DMA転送バイト数を表わすビット情報の下位
2ビット以外のビット情報より今回バス・サイクルでDM
A転送終了か否かを示す1ビット情報の計5ビット情報
を用いて、次回バス・サイクルにおける、DMA転送先ア
ドレスの下位2ビット、DMA転送バイト数を表わすビッ
ト情報の下位2ビット、DMA転送バイト数,データ・バ
スの有効部を決定する論理演算部を備えることを特徴と
するミスアラインメント制御装置である。
<作用> 本発明のミスアラインメント制御装置は、今回バス・
サイクルのDMA転送開始アドレスの下位2ビット、DMA転
送バイト数の下位2ビット、DMA転送終了か否かを表わ
す1ビットの計5ビットについて論理演算を施し、次回
バス・サイクルのDMA転送バイト数、DMA転送開始アドレ
スの下位2ビット、DMA転送バイト数の下位2ビット・
データ・バスの有効部を決定し、転送動作を実行する。
<実施例> 第1図は本発明を実施したミスアラインメント制御装
置の構成ブロック図である。
この図で、アドレス・カウンタ1は、キャリ信号ACCA
が与えられてDMA転送開始アドレスの内A31〜A2について
カウント・アップするカウンタであり、トランスファ・
カウンタ2は、キャリ信号TCCAが与えられてDMA転送バ
イト数Tを表わすビット情報の内Tn〜T2についてカウン
タ・ダウンするカウンタである。
オア回路3は、トランスファ・カウンタ2のカウンタ
値であるTn〜T2についてオア演算し、ビット情報Tn〜T2
全てが“0"の場合にTC=“1"を出力する。即ち、このオ
ア回路3は、DMA転送バイト数Tの下位2ビットT1,T0以
外のビット情報Tn〜T2をみて、今回バス・サイクルがDM
A転送終了か否かを示すビット情報TCを出力するもので
ある。
論理回路4は、今回バス・サイクルにおける、オア回
路3のオア出力TCと、DMA転送開始アドレスの下位2ビ
ットA1,A0と、DMA転送バイト数Tを表わすビット情報の
下位2ビットT1,T0の5ビット情報より、次回バス・サ
イクルの転送バイト数T、転送開始アドレスの下位2ビ
ットNA1,NA0、転送バイト数の下位2ビットNT1,NT0、デ
ータ・バスの有効部B0〜B3を演算する。そして、その論
理演算の進行により、アドレス・カウンタ1にキャリ信
号ACCA及びトランスファ・カウンタ2にキャリ信号TCCA
を与える。
フリップ・フロップ回路5は、論理回路4の出力であ
る次回バス・サイクルのDMA転送開始アドレスの下位2
ビットNA1,NA0、転送バイト数NT1,NT0を保持し、更新す
る。
尚、アドレス・カウンタ1、トランスファ・カウンタ
2、フリップ・フロップ回路5にはカウント・クロック
CLを与える。
第2図(a),(b)は、論理回路4に設定される論
理演算を表わす表であり、この表中、(b)で示される
部分(NT2,NT1,NT0)は、第2図(b)の論理演算の結
果により決定する。
また、“X"は“Don′t care"であり、“0".“1"いず
れの値でも構わない。
即ち、論理回路4における、次回バス・サイクルの各
値NA1,NA0,NT1,NT0,B0〜B3及びキャリ信号ACCA(表中の
+1),TCCA(表中の−1)は、今回バス・サイクルの
各値A1,A0,T1,T0,TCを用いて、以下のような演算式で表
わすことができる。
NA1=▲▼・▲▼・▲▼・T1・▲▼+
▲▼・▲▼・▲▼・T1・T0 +▲▼・A0・▲▼・▲▼・T0・A1・▲
▼・▲▼・▲▼・T0 NA0=▲▼・▲▼・▲▼・▲▼・T0+
▲▼・▲▼・▲▼・T1・T0 +▲▼・A0・▲▼・T1・▲▼+A1・▲
▼・▲▼・▲▼・T0 NT1=▲▼・▲▼・TC・T1+▲▼・A0・TC
・▲▼・T0 +▲▼・A0・TC・T1・▲▼+A1・▲▼
・TC・▲▼・▲▼ +A1・▲▼・TC・▲▼・T0+A1・A0・▲
▼・T1・T0 +A1・A0・TC・▲▼・▲▼+A1・A0・TC・T
1・T0 NT0=▲▼・▲▼・TC・T0+▲▼・A0・TC
・▲▼・▲▼ +▲▼・A0・TC・T1・▲▼A1・▲▼・
▲▼・T1・T0 +A1・▲▼・TC・▲▼・T0+A1・▲▼
・TC・T1・T0 +A1・A0・▲▼・T1・▲▼+A1・A0・TC・
▲▼・▲▼ A1・A0・TC・T1・▲▼ B0=▲▼・▲▼・TC+▲▼・▲▼・T1
+▲▼・▲▼・T0 B1=▲▼・▲▼・▲▼・T1+▲▼・▲
▼・TC・▲▼・A0・TC +▲▼・A0・T1+▲▼・A0・T0 B2=▲▼・▲▼・▲▼・T1・T0+▲▼
・▲▼・T1 +▲▼・A0・TC+A1・▲▼・TC+A1・▲
▼・T1 +A1・▲▼・T0 B3=▲▼・▲▼・TC+▲▼・A0・▲▼
・T1・T0 +▲▼・A0・TC+A1・▲▼・T1+A1・▲
▼・TC +A1・A0・TC+A1・A0・T1+A1・A0・T0 ACCA=▲▼・▲▼・TC・▲▼・A0・▲
▼・T1・T0 +▲▼・A0・TC・▲▼・▲▼+▲
▼・A0・TC・▲▼・T0 +▲▼・A0・TC・T1・▲▼+▲▼・A0
・TC・T1・T0 +A1・▲▼・▲▼・T1・▲▼+A1・▲
▼・▲▼・T1・T0 A1・▲▼・TC+A1・A0・▲▼・▲▼・
T0 A1・A0・▲▼・T1・▲▼+A1・A0・▲
▼・T1・T0 +A1・A0・TC TCCA=▲▼・▲▼・TC+▲▼・A0・TC・▲
▼・▲▼ ▲▼・A0・TC・▲▼・T0+▲▼・A0・
TC・T1・▲▼ A1・▲▼・TC・▲▼・▲▼+A1・▲
▼・TC・▲▼・T0 A1・A0・TC・▲▼・▲▼ 尚、転送バイト数Tについて、転送アドレス下位2ビ
ットA1,A0、転送バイト数下位2ビットT1,T0により、一
意的に対応するように予め定めておく。
次に、このような本発明装置を用いてDMA転送する場
合を第3図(a),(b)を用いて説明する。
第3図(a)は、メモリ・アドレス1005番地から14バ
イトのデータをDMA転送する例であり、DMA転送開始時、
DMA転送終了時のバス・サイクルにおいて、ミスアライ
ンメント操作が必要である。
この場合について、第3図(b)に示す、論理回路4
の入出力結果を表わす表を参照して説明する。
はじめに、DMA転送開始アドレス1005番地が与えられ
ると、転送開始アドレス下位2ビットA1,A0は0,1、転送
バイト数T=14(00001110)ではじめのサイクルではT
=3、T1,T0は1,0、データのアクティブ・バイトB0,B1,
B2,B3は0,1,1,1となり、これによりはじめのサイクルの
ミスアラインメント操作が実現し、3バイトの転送が実
行される。
尚、この時、オア回路3の出力TC=1でなる。
また、論理回路4はこれらのビット情報A1,A0、T1,T
0、TCの5ビット情報を入力して上記の論理演算を実行
し、第2図(a)(及び第2図(b)の表)に従い、次
回バス・サイクルの各値NA1,NA0、NT1,NT0、TC、B0,B1,
B2,B3を出力する。この時、論理回路3は、キャリ信号A
CCA及びキャリ信号TCCAを出力する。
これに従って、次のバス・サイクルにおいては、A1,A
0は0,0、T1,T0は1,1,Tは4となり、データのアクティブ
・バイトB0,B1,B2,B3は1,1,1,1となり、1008番地から4
バイト転送が実行できる。
次のバス・サイクルにあっても同様に、1012番地から
4バイト転送を実行する。
そして、このようにして、順次、次回のバス・サイク
ルにおける各値を論理演算してDMA転送を繰り返してい
き、最後に、1016番地から3バイト転送が実行されてミ
スアラインメント操作が行われ、この時の次回バス・サ
イクルの転送バイト数NT1,NT0“0,0"により、この14バ
イトのDMA転送は終了する。
このようにして、複雑な制御線を必要とせずに、論理
回路を用いて高速に、DMA転送におけるミスアラインメ
ント操作を実現できる。
<発明の効果> 以上述べたように、本発明のミスアラインメント制御
装置によれば、4バイト単位以外のデータ転送が可能と
なり、データの境界を意識せずに、DMA転送開始アドレ
ス、DMA転送バイト数を自由に設定することができる。
【図面の簡単な説明】 第1図は本発明を実施したミスアラインメント制御装置
の構成ブロック図、第2図(a),(b)は本発明装置
における論理回路4に設定される論理演算入出力結果を
表わす表、第3図(a),(b)は本発明装置を用いた
際のミスアラインメント操作を説明するための図、第4
図(a),(b)はDMA転送時に発生するミスアライン
メントを表わす図である。 1……アドレス・カウンタ、 2……トランスファ・カウンタ、 3……オア回路、4……論理回路、 5……フリップ・フロップ回路。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】取り扱うデータ・ビット数が異なるものど
    うしでDMA転送する際に発生するミスアラインメントを
    サポートするミスアラインメント制御装置において、今
    回バス・サイクルにおける、DMA転送先アドレスの下位
    2ビット、DMA転送バイト数を表わすビット情報の下位
    2ビット、前記DMA転送バイト数を表わすビット情報の
    下位2ビット以外のビット情報より今回バス・サイクル
    でDMA転送終了か否かを示す1ビット情報の計5ビット
    情報を用いて、次回バス・サイクルにおける、DMA転送
    先アドレスの下位2ビット、DMA転送バイト数を表わす
    ビット情報の下位2ビット、DMA転送バイト数,データ
    ・バスの有効部を決定する論理演算部を備えることを特
    徴とするミスアラインメント制御装置。
JP25624389A 1989-09-29 1989-09-29 ミスアラインメント制御装置 Expired - Lifetime JP2792141B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25624389A JP2792141B2 (ja) 1989-09-29 1989-09-29 ミスアラインメント制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25624389A JP2792141B2 (ja) 1989-09-29 1989-09-29 ミスアラインメント制御装置

Publications (2)

Publication Number Publication Date
JPH03118651A JPH03118651A (ja) 1991-05-21
JP2792141B2 true JP2792141B2 (ja) 1998-08-27

Family

ID=17289927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25624389A Expired - Lifetime JP2792141B2 (ja) 1989-09-29 1989-09-29 ミスアラインメント制御装置

Country Status (1)

Country Link
JP (1) JP2792141B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4831049B2 (ja) * 2007-10-23 2011-12-07 株式会社島津製作所 逆止弁とそれを用いた送液装置、及び該逆止弁の製造方法

Also Published As

Publication number Publication date
JPH03118651A (ja) 1991-05-21

Similar Documents

Publication Publication Date Title
JP2586833B2 (ja) データプロセッサ
US5828865A (en) Dual mode bus bridge for interfacing a host bus and a personal computer interface bus
US5438665A (en) Direct memory access controller for handling cyclic execution of data transfer in accordance with stored transfer control information
EP0169565A2 (en) Microprocessor compatible with any software represented by different types of instruction formats
JPH03239046A (ja) データ転送方法
JP2845433B2 (ja) 集積回路装置
EP0338564B1 (en) Microprogram branching method and microsequencer employing the method
JP2792141B2 (ja) ミスアラインメント制御装置
US6574683B1 (en) External direct memory access processor implementation that includes a plurality of priority levels stored in request queue
JP2566139B2 (ja) バスインタフエ−ス回路
JPH1063617A (ja) シリアル通信装置
JP2000003304A (ja) データ処理装置とデータアライン装置
JP2604051B2 (ja) データ転送方法
JP3611049B2 (ja) 内部レジスタ回路
JP2905989B2 (ja) 入出力制御装置
JPS6235148B2 (ja)
JP3449156B2 (ja) モジュール装置
JPH05342090A (ja) データ処理装置
Fawcett The Z8000 peripheral family
JPS5977536A (ja) Dmaコントロ−ラのアドレス生成転送方式
JPS61105662A (ja) ダイレクトメモリアクセス装置およびデ−タ転送装置
JPS63300346A (ja) Dma制御方式
JPS6285327A (ja) マイクロコンピユ−タ
JPS61253570A (ja) バス制御方式
JPH01276241A (ja) 多重割り込み装置