JPH0573476A - Dma装置 - Google Patents
Dma装置Info
- Publication number
- JPH0573476A JPH0573476A JP23495191A JP23495191A JPH0573476A JP H0573476 A JPH0573476 A JP H0573476A JP 23495191 A JP23495191 A JP 23495191A JP 23495191 A JP23495191 A JP 23495191A JP H0573476 A JPH0573476 A JP H0573476A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- data
- storage device
- dma
- compression
- 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
Landscapes
- Bus Control (AREA)
Abstract
(57)【要約】
【目的】 補助記憶装置とホストの主記憶装置との間の
転送時間を短縮し、補助記憶装置の記憶容量を節約する
ことが可能なDMA装置を実現する。 【構成】 主記憶装置2と補助記憶装置8との間でDM
A転送を行わせるためのDMA装置3であって、主記憶
装置2とデータの授受を行う第一のバッファ4と、補助
記憶装置8とデータの授受を行う第二のバッファ7と、
第一のバッファ4からのデータを圧縮して第二のバッフ
ァ4に送ると共に、第二のバッファ7からのデータを復
元して第一のバッファ4に送る圧縮復元手段5と、圧縮
されたデータのサイズを格納するカウンタ6とを備えた
ものである。
転送時間を短縮し、補助記憶装置の記憶容量を節約する
ことが可能なDMA装置を実現する。 【構成】 主記憶装置2と補助記憶装置8との間でDM
A転送を行わせるためのDMA装置3であって、主記憶
装置2とデータの授受を行う第一のバッファ4と、補助
記憶装置8とデータの授受を行う第二のバッファ7と、
第一のバッファ4からのデータを圧縮して第二のバッフ
ァ4に送ると共に、第二のバッファ7からのデータを復
元して第一のバッファ4に送る圧縮復元手段5と、圧縮
されたデータのサイズを格納するカウンタ6とを備えた
ものである。
Description
【0001】
【産業上の利用分野】本発明は主記憶装置と補助記憶装
置との間でDMA転送を行わせるためのDMA装置に関
する。
置との間でDMA転送を行わせるためのDMA装置に関
する。
【0002】
【従来の技術】近年、マイクロプロセッサなどの技術の
進歩によりI/O装置(補助記憶装置)との間の処理速
度のギャップが問題となっている。これは、マイクロプ
ロセッサの処理速度(演算速度,データ転送速度)の上
昇に比べ、ハードディスク装置などの補助記憶装置の処
理速度(シーク時間,データ転送速度)の上昇は極めて
遅い。このために、ハードディスク装置の読み書きに際
して、マイクロプロセッサ側に待ち時間が発生するよう
になる。
進歩によりI/O装置(補助記憶装置)との間の処理速
度のギャップが問題となっている。これは、マイクロプ
ロセッサの処理速度(演算速度,データ転送速度)の上
昇に比べ、ハードディスク装置などの補助記憶装置の処
理速度(シーク時間,データ転送速度)の上昇は極めて
遅い。このために、ハードディスク装置の読み書きに際
して、マイクロプロセッサ側に待ち時間が発生するよう
になる。
【0003】
【発明が解決しようとする課題】従って、マイクロプロ
セッサ,DMA,ハードディスク装置の組み合わせで
は、処理速度の限界がみえている。
セッサ,DMA,ハードディスク装置の組み合わせで
は、処理速度の限界がみえている。
【0004】また、画像処理などの分野では、データ量
が非常に多く、データを記録する際に補助記憶装置の容
量の消費が激しい。さらに、データの圧縮はファイル単
位で行われているために、ハードディスク装置の使用効
率がよいとはいいきれない。
が非常に多く、データを記録する際に補助記憶装置の容
量の消費が激しい。さらに、データの圧縮はファイル単
位で行われているために、ハードディスク装置の使用効
率がよいとはいいきれない。
【0005】本発明は上記従来技術の問題点に鑑みてな
されたものであり、その目的は、補助記憶装置とホスト
システムの主記憶装置との間の転送時間を短縮し、さら
に補助記憶装置の記憶容量を節約することが可能なDM
A装置を実現することにある。
されたものであり、その目的は、補助記憶装置とホスト
システムの主記憶装置との間の転送時間を短縮し、さら
に補助記憶装置の記憶容量を節約することが可能なDM
A装置を実現することにある。
【0006】
【課題を解決するための手段】上記した課題を解決する
手段は、主記憶装置と補助記憶装置との間でDMA転送
を行わせるためのDMA装置であって、主記憶装置とデ
ータの授受を行う第一のバッファと、補助記憶装置とデ
ータの授受を行う第二のバッファと、第一のバッファか
らのデータを圧縮して第二のバッファに送ると共に、第
二のバッファからのデータを復元して第一のバッファに
送る圧縮復元手段と、圧縮されたデータの属性を格納す
るカウンタとを備えたことをことを特徴とするものであ
る。
手段は、主記憶装置と補助記憶装置との間でDMA転送
を行わせるためのDMA装置であって、主記憶装置とデ
ータの授受を行う第一のバッファと、補助記憶装置とデ
ータの授受を行う第二のバッファと、第一のバッファか
らのデータを圧縮して第二のバッファに送ると共に、第
二のバッファからのデータを復元して第一のバッファに
送る圧縮復元手段と、圧縮されたデータの属性を格納す
るカウンタとを備えたことをことを特徴とするものであ
る。
【0007】
【作用】本発明において、主記憶からのデータを補助記
憶装置に転送する際は、主記憶装置のデータが第一のバ
ッファに格納され、圧縮復元手段により圧縮されて第二
のバッファに格納される。そして、第二のバッファより
補助記憶装置にDMA転送される。この際に、圧縮され
たデータの属性がカウンタに格納される。また、補助記
憶装置からのデータを主記憶装置に転送する際は、補助
記憶装置のデータが第二バッファに格納され、圧縮復元
手段により復元されて圧縮が解除された状態で第一のバ
ッファに格納される。そして、第一のバッファより主記
憶装置にDMA転送される。
憶装置に転送する際は、主記憶装置のデータが第一のバ
ッファに格納され、圧縮復元手段により圧縮されて第二
のバッファに格納される。そして、第二のバッファより
補助記憶装置にDMA転送される。この際に、圧縮され
たデータの属性がカウンタに格納される。また、補助記
憶装置からのデータを主記憶装置に転送する際は、補助
記憶装置のデータが第二バッファに格納され、圧縮復元
手段により復元されて圧縮が解除された状態で第一のバ
ッファに格納される。そして、第一のバッファより主記
憶装置にDMA転送される。
【0008】
【実施例】以下図面を参照して、本発明の実施例を詳細
に説明する。図1は本発明の第一の実施例を示す構成図
である。この図において、CPU1は装置全体を統括制
御すると共に、主記憶装置を構成するメモリ2及び補助
記憶装置を構成するハードディスク装置8との間のDM
A転送の要求を出す。DMA装置3は主記憶からのデー
タ及び圧縮復元手段5で圧縮が復元されたデータを格納
するバッファ4と、圧縮復元手段5で圧縮されたデータ
及び補助記憶装置8からの圧縮データを格納するバッフ
ァ7とから構成されている。また、DMA装置3内には
圧縮データの属性を格納するためのカウンタ6が設けら
れている。
に説明する。図1は本発明の第一の実施例を示す構成図
である。この図において、CPU1は装置全体を統括制
御すると共に、主記憶装置を構成するメモリ2及び補助
記憶装置を構成するハードディスク装置8との間のDM
A転送の要求を出す。DMA装置3は主記憶からのデー
タ及び圧縮復元手段5で圧縮が復元されたデータを格納
するバッファ4と、圧縮復元手段5で圧縮されたデータ
及び補助記憶装置8からの圧縮データを格納するバッフ
ァ7とから構成されている。また、DMA装置3内には
圧縮データの属性を格納するためのカウンタ6が設けら
れている。
【0009】このように構成された本実施例装置の動作
は以下の通りである。まず、メモリ2からハードディス
ク装置8へのDMA転送について説明する。CPU1が
DMA転送を行うための転送要求をDMA装置3に送出
する。この転送要求を受けたDMA装置3は、メモリ2
に読み出し要求を出す。メモリ2から読み出されたデー
タはバッファ4に格納される。そして、圧縮復元手段5
がバッファ4に格納されているデータを圧縮してバッフ
ァ7に格納する。圧縮の手法としては種々のものが適用
できるが、転送のスピードを低下させないために単純な
ものを使用する。DMA転送は数バイト単位で行い、圧
縮もバイト単位で行う。そして、圧縮の一例として以下
のものがある。 abcaaaaaabbbbcdddddfxy(圧縮前22バイト) abcxa6xb4cxd5fxy (圧縮後16バイト) この場合、 xを圧縮の始まりのコード,次が圧縮した文
字,そして圧縮した文字数を表している。そして、DM
A装置3はバッファ7に格納された圧縮データをハード
ディスク装置8に書き込む。
は以下の通りである。まず、メモリ2からハードディス
ク装置8へのDMA転送について説明する。CPU1が
DMA転送を行うための転送要求をDMA装置3に送出
する。この転送要求を受けたDMA装置3は、メモリ2
に読み出し要求を出す。メモリ2から読み出されたデー
タはバッファ4に格納される。そして、圧縮復元手段5
がバッファ4に格納されているデータを圧縮してバッフ
ァ7に格納する。圧縮の手法としては種々のものが適用
できるが、転送のスピードを低下させないために単純な
ものを使用する。DMA転送は数バイト単位で行い、圧
縮もバイト単位で行う。そして、圧縮の一例として以下
のものがある。 abcaaaaaabbbbcdddddfxy(圧縮前22バイト) abcxa6xb4cxd5fxy (圧縮後16バイト) この場合、 xを圧縮の始まりのコード,次が圧縮した文
字,そして圧縮した文字数を表している。そして、DM
A装置3はバッファ7に格納された圧縮データをハード
ディスク装置8に書き込む。
【0010】なお、ファイルシステムで使用するために
は、CPU1がDMA装置3に転送要求を出し、DMA
装置3がCPU1に転送結果を返す必要がある。これ
は、メモリ2内にあったデータをハードディスク装置8
に移した場合、そのデータの量が減少するためである。
従って、圧縮復元手段5は圧縮したデータのサイズをカ
ウンタ6に記録しておく。そして、CPU1がカウンタ
6にアクセスすることで圧縮後のデータサイズを管理す
ることができる。これにより、CPU1はメモリ2内で
のデータのサイズとハードディスク装置8内でのデータ
のサイズの両方を管理することができ、高速のファイル
システムを構築することができる。
は、CPU1がDMA装置3に転送要求を出し、DMA
装置3がCPU1に転送結果を返す必要がある。これ
は、メモリ2内にあったデータをハードディスク装置8
に移した場合、そのデータの量が減少するためである。
従って、圧縮復元手段5は圧縮したデータのサイズをカ
ウンタ6に記録しておく。そして、CPU1がカウンタ
6にアクセスすることで圧縮後のデータサイズを管理す
ることができる。これにより、CPU1はメモリ2内で
のデータのサイズとハードディスク装置8内でのデータ
のサイズの両方を管理することができ、高速のファイル
システムを構築することができる。
【0011】次に、ハードディスク装置8からメモリ2
へのDMA転送について説明する。CPU1がDMA転
送を行うための転送要求をDMA装置3に送出する。こ
の転送要求を受けたDMA装置3は、ハードディスク装
置8に読み出し要求を出す。HDD8から読み出された
圧縮済みのデータはバッファ7に格納される。そして、
圧縮復元手段5がバッファ7に格納されているデータを
復元してバッファ4に格納する。この復元処理は圧縮と
同様のアルゴリズムにより行う。DMA転送は数バイト
単位で行い、復元もバイト単位で行う。上記の圧縮アル
ゴリズムによれば、以下の復元処理を行う。 abcxa6xb4cxd5fxy (圧縮状態16バイト) abcaaaaaabbbbcdddddfxy(復元処理後22バイト) そして、DMA装置3はバッファ4に格納された圧縮デ
ータをメモリ2に書き込む。
へのDMA転送について説明する。CPU1がDMA転
送を行うための転送要求をDMA装置3に送出する。こ
の転送要求を受けたDMA装置3は、ハードディスク装
置8に読み出し要求を出す。HDD8から読み出された
圧縮済みのデータはバッファ7に格納される。そして、
圧縮復元手段5がバッファ7に格納されているデータを
復元してバッファ4に格納する。この復元処理は圧縮と
同様のアルゴリズムにより行う。DMA転送は数バイト
単位で行い、復元もバイト単位で行う。上記の圧縮アル
ゴリズムによれば、以下の復元処理を行う。 abcxa6xb4cxd5fxy (圧縮状態16バイト) abcaaaaaabbbbcdddddfxy(復元処理後22バイト) そして、DMA装置3はバッファ4に格納された圧縮デ
ータをメモリ2に書き込む。
【0012】ここで、具体的なライト動作の一例につい
て図2のフローチャートを参照して説明する。尚、ファ
イルシステムとして動作するためには、ファイルシステ
ム内のブロックが可変長で割り当てられることが必要と
なる。このように構成された場合に実際にファイルをラ
イトする際の動作を以下に説明する。
て図2のフローチャートを参照して説明する。尚、ファ
イルシステムとして動作するためには、ファイルシステ
ム内のブロックが可変長で割り当てられることが必要と
なる。このように構成された場合に実際にファイルをラ
イトする際の動作を以下に説明する。
【0013】まず、実際のファイルの大きさでファイル
システム内のブロックをアロケートする(ステップ
1)。そして、圧縮復元手段5により圧縮されたデータ
をHDD8に書き込む(ステップ3)。そして、カウン
タ6に格納された圧縮後のデータサイズをCPU1が獲
得する(ステップ3)。更に、圧縮後のデータサイズで
ファイルシステム内のブロックをアロケートし直す(ス
テップ4)。
システム内のブロックをアロケートする(ステップ
1)。そして、圧縮復元手段5により圧縮されたデータ
をHDD8に書き込む(ステップ3)。そして、カウン
タ6に格納された圧縮後のデータサイズをCPU1が獲
得する(ステップ3)。更に、圧縮後のデータサイズで
ファイルシステム内のブロックをアロケートし直す(ス
テップ4)。
【0014】次に、具体的なリード動作について図3の
フローチャートを参照して説明する。まず、実際(圧縮
前)のファイルの大きさでメモリ2をアロケートする
(ステップ1)。そして、DMA装置3内の圧縮復元手
段5が圧縮されたデータを復元しながら、HDD8内の
圧縮データをリードする(ステップ2)。
フローチャートを参照して説明する。まず、実際(圧縮
前)のファイルの大きさでメモリ2をアロケートする
(ステップ1)。そして、DMA装置3内の圧縮復元手
段5が圧縮されたデータを復元しながら、HDD8内の
圧縮データをリードする(ステップ2)。
【0015】ところで、現在使用されているUNIX(AT&T
社が開発し、ライセンスしているオペレーティングシス
テム)の fast file system などに組み込む場合には、
以下のような変更点が必要である。まず、iノード構造
体内のファイルサイズを表すメンバに圧縮後のデータの
ファイルサイズを追加する。そして、ファイルが実際に
ディスクなどへ書き込まれた後で、ファイルブロックを
アロケート仕直す部分を追加する。delaied write のよ
うな場合でも、ファイルブロックをアロケートし直せる
ようにする。また、この機能を追加すると、ディスク内
で小さなブロックが増えてしまい、使用しているうちに
アクセススピードに影響を及ぼす可能性があるので、デ
ィスク内を定期的に再配置する機能を追加する必要があ
る。
社が開発し、ライセンスしているオペレーティングシス
テム)の fast file system などに組み込む場合には、
以下のような変更点が必要である。まず、iノード構造
体内のファイルサイズを表すメンバに圧縮後のデータの
ファイルサイズを追加する。そして、ファイルが実際に
ディスクなどへ書き込まれた後で、ファイルブロックを
アロケート仕直す部分を追加する。delaied write のよ
うな場合でも、ファイルブロックをアロケートし直せる
ようにする。また、この機能を追加すると、ディスク内
で小さなブロックが増えてしまい、使用しているうちに
アクセススピードに影響を及ぼす可能性があるので、デ
ィスク内を定期的に再配置する機能を追加する必要があ
る。
【0016】以上詳細に説明したように、本実施例によ
れば、主記憶装置から補助記憶装置への転送の高速化
(I/Oの高速化)及びファイルシステムの高速化を図
ることができる。また、補助記憶装置の容量の節約を図
ることもできる。
れば、主記憶装置から補助記憶装置への転送の高速化
(I/Oの高速化)及びファイルシステムの高速化を図
ることができる。また、補助記憶装置の容量の節約を図
ることもできる。
【0017】
【発明の効果】以上実施例とともに詳細に説明したよう
に、補助記憶装置とホストシステムの主記憶装置との間
の転送時間を短縮し、さらに補助記憶装置の記憶容量を
節約することが可能なDMA装置を実現することができ
る。
に、補助記憶装置とホストシステムの主記憶装置との間
の転送時間を短縮し、さらに補助記憶装置の記憶容量を
節約することが可能なDMA装置を実現することができ
る。
【図1】本発明の一実施例の全体の構成を示す構成図で
ある。
ある。
【図2】本発明の一実施例における動作の一例を示す説
明図である。
明図である。
【図3】本発明の一実施例における動作の一例を示す説
明図である。
明図である。
1 CPU 2 メモリ(主記憶装置) 3 DMA装置 4 バッファ 5 圧縮復元手段 6 カウンタ 7 バッファ 8 ハードディスク装置(補助記憶装置)
Claims (1)
- 【請求項1】 主記憶装置(2)と補助記憶装置(8)
との間でDMA転送を行わせるためのDMA装置(3)
であって、 主記憶装置(2)とデータの授受を行う第一のバッファ
(4)と、 補助記憶装置(8)とデータの授受を行う第二のバッフ
ァ(7)と、 第一のバッファ(4)からのデータを圧縮して第二のバ
ッファ(7)に送ると共に、第二のバッファ(7)から
のデータを復元して第一のバッファ(4)に送る圧縮復
元手段(5)と、 圧縮されたデータの属性を格納するカウンタ(6)とを
備えたことをことを特徴とするDMA装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23495191A JPH0573476A (ja) | 1991-09-13 | 1991-09-13 | Dma装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23495191A JPH0573476A (ja) | 1991-09-13 | 1991-09-13 | Dma装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0573476A true JPH0573476A (ja) | 1993-03-26 |
Family
ID=16978818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23495191A Pending JPH0573476A (ja) | 1991-09-13 | 1991-09-13 | Dma装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0573476A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6336153B1 (en) | 1998-02-26 | 2002-01-01 | Kabushiki Kaisha Toshiba | High-speed hybernation |
DE112015007042B4 (de) | 2015-11-26 | 2022-09-15 | Mitsubishi Electric Corporation | Datenübertragungsvorrichtung, Datenübertragungsverfahren und Datenübertragungsprogramm |
-
1991
- 1991-09-13 JP JP23495191A patent/JPH0573476A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6336153B1 (en) | 1998-02-26 | 2002-01-01 | Kabushiki Kaisha Toshiba | High-speed hybernation |
DE112015007042B4 (de) | 2015-11-26 | 2022-09-15 | Mitsubishi Electric Corporation | Datenübertragungsvorrichtung, Datenübertragungsverfahren und Datenübertragungsprogramm |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5237675A (en) | Apparatus and method for efficient organization of compressed data on a hard disk utilizing an estimated compression factor | |
US6883079B1 (en) | Method and apparatus for using data compression as a means of increasing buffer bandwidth | |
US6449689B1 (en) | System and method for efficiently storing compressed data on a hard disk drive | |
US5276840A (en) | Disk caching method for writing data from computer memory including a step of writing a plurality of physically adjacent blocks in a single I/O operation | |
JP3697395B2 (ja) | 異なるデータ構造を格納するための方法及び装置 | |
US6442659B1 (en) | Raid-type storage system and technique | |
JP2004005066A (ja) | 複数の記録装置に記録されたデータのバックアップ技術 | |
US20030037019A1 (en) | Data storage and retrieval apparatus and method of the same | |
WO2021258749A1 (zh) | 一种写请求数据压缩方法、***、终端及存储介质 | |
US6532513B1 (en) | Information recording and reproduction apparatus | |
JP2002132546A (ja) | 記憶装置 | |
JPH05189157A (ja) | ディスク型記憶装置 | |
JPH0573476A (ja) | Dma装置 | |
JP2001228977A (ja) | 記憶装置及びそのアクセス制御方法 | |
US20050223180A1 (en) | Accelerating the execution of I/O operations in a storage system | |
JPH01303547A (ja) | 情報記憶制御システム | |
JP2587417B2 (ja) | ファイルの退避復元方式 | |
JPH08202595A (ja) | ファイルシステム | |
JPH0452923A (ja) | データ入出力システム | |
JPS63138442A (ja) | 削除フアイル復元処理方式 | |
JP6911443B2 (ja) | 情報処理装置 | |
JP2001014219A (ja) | キャッシュ制御方法及びその装置 | |
JPS59172186A (ja) | キヤツシユ・メモリ制御方式 | |
JPH03179539A (ja) | ファイル記憶装置ならびにファイル記憶方法 | |
CN117827079A (zh) | 压缩数据读取方法、写入方法及装置 |