JPS6336021B2 - - Google Patents

Info

Publication number
JPS6336021B2
JPS6336021B2 JP10437081A JP10437081A JPS6336021B2 JP S6336021 B2 JPS6336021 B2 JP S6336021B2 JP 10437081 A JP10437081 A JP 10437081A JP 10437081 A JP10437081 A JP 10437081A JP S6336021 B2 JPS6336021 B2 JP S6336021B2
Authority
JP
Japan
Prior art keywords
data
address
main memory
file
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.)
Expired
Application number
JP10437081A
Other languages
English (en)
Other versions
JPS588336A (ja
Inventor
Kenkichi Yamashita
Toshuki Ide
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10437081A priority Critical patent/JPS588336A/ja
Publication of JPS588336A publication Critical patent/JPS588336A/ja
Publication of JPS6336021B2 publication Critical patent/JPS6336021B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/287Multiplexed DMA

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

【発明の詳細な説明】 本発明は、計算機システムにおける、主メモリ
と、入出力チヤネルを介して接続されるフアイル
メモリとの間のデータ転送方式に係り、特に補数
台のフアイルメモリを備えた時に好適な主メモリ
との間のデータ転送方法に関する。
計算機システムのフアイルメモリとしては、磁
気デイスクなど多種類のものが実用化されてお
り、近年さらに磁気バブルメモリが実用化されつ
つある。
フアイルメモリに要求される主性能の1つは、
主メモリとの間で高速にブロツクデータを転送で
きることであり、そのデータ転送方式としてはダ
イレクトメモリアクセス(DMA)方式が広く用
いられている。
第1図は、従来のDMAデータ転送方式を説明
するブロツク図である。主メモリ1とCPU6、
およびフアイルメモリ2がDMAチヤネル3を介
してシステムバス4に結合されている。バスコン
トローラ5は、システムバス4の時分割占有割付
を制御し、主メモリ1とフアイルメモリ2の間で
ブロツクデータを転送する場合、まずDMAチヤ
ネル3にプログラムによつて初期値が設定される
と、DMAチヤネル3は、バスコントローラ5に
システムバス4の占有を打診しながらデータ転送
を遂行する。
第2図はDMAチヤネル3の詳細を示すブロツ
ク図であり、DMAチヤネル内には、主メモリ1
のアドレスを指定する主メモリアドレスレジスタ
7、残りデータ転送語数を記憶するデータカウン
トレジスタ8、フアイルメモリ2内のアドレスを
指定するデータアドレスレジスタ9および制御回
路10から成り、プログラムによつてレジスタ7
〜9に初期値がセツトされると、フアイルメモリ
2からのデータ転送要求を受けてシステムバス4
を占有し、主メモリアドレスレジスタ7の内容を
アドレスバス41に出力し、データアドレス9に
よつて指定したフアイルメモリデバイス11内ア
ドレスと、主メモリアドレスレジスタ7で指定し
た主メモリ内アドレスの間で、1語のデータ転送
をデータレジスタ12、データバス42を経由し
て行う。1語のデータ転送毎に主メモリアドレス
レジスタ7、およびデータアドレスレジスタ9の
内容を+1し、データカウントレジスタ8の内容
を−1する。この動作とデータカウントレジスタ
の内容が0になるまで遂行することで、DMAチ
ヤネルは所定のブロツクデータの転送をプログラ
ムの介入なしに遂行し得る。
さて、DMA転送方式における主メモリ1とフ
アイルメモリ2との間のデータ転送スピードは、
主メモリ1およびDMAチヤネル3の動作スピー
ドがフアイルメモリ2の動作スピードに比べ充分
に早いため、ほとんどフアイルメモリの動作スピ
ードによつて決まる。このフアイルメモリ2の動
作スピードはアクセスタイムと、データ転送レー
トにデータ転送語数をかけたデータ転送時間の和
で表わすことが出来る。
ところで、近年実用化されつつある磁気バブル
メモリはアクセスタイムが小さく、データ転送レ
ートが小さい特性を有しており、磁気バブルメモ
リを複数個並列にアクセスし得れば、データ転送
スピードを大巾に改善できる可能性がある。
並列アクセスの1つの手段としては、従来、第
3図に示す如く複数台のフアイルメモリデバイス
101〜104を単純並列化し同時アクセスする
方法があつた。
しかしながら、磁気バブルメモリでは、その製
造時の歩留りを向上させる目的から、記憶ループ
内に欠陥を許容することが一般化しており、この
ため欠陥をスキツプしながらアクセスする必要が
あり、複数個のデバイス間で同期をとることがで
きず、第3図に示したような単純並列方式が使用
できないという問題がある。
本発明の目的は、磁気バブルメモリのように、
デバイス相互間で同期化が困難なフアイルメモリ
に対して、並列アクセスを行い得るようにした主
メモリとフアイルメモリの間のデータ転送方法を
提供するものである。
本発明は、任意の1ブロツクデータを複数台の
フアイルメモリに分割して格納し、この各フアイ
ルメモリ対応に設けられたDMAチヤネルによつ
て各フアイルを並列アクセスし、その結果各
DMAチヤネルが時分割で非同期的にバスを介し
て主メモリとデータ転送を行うことを特徴とす
る。
以下、本発明を実施列により詳細に説明する。
第4図は本発明の一実施例を示すブロツク図
で、2台のフアイルメモリ21,22が各々
DMAチヤネル30,32を介してバス4に結合
され、主メモリ1、CPU6と接続されている。
フアイルメモリ20,21の種類は特に磁気バブ
ルメモリに限定するものではなく、一般のフアイ
ルメモリと考えてもよい。DMAチヤネル31,
32は第2図に示した従来のものと類似した構成
であるが、主メモリアドレスレジスタ71,72
の更新方法が異つている。すなわち、第2図に示
した従来のDMAチヤネル3では、主メモリアド
レスレジスタ7の内容は、1語転送毎に+1して
更新されたが、第4図の主メモリアドレスレジス
タ71,72では、1語転送毎に+2するように
構成されている。
第5図は、主メモリアドレスレジスタ71を、
1語転送毎に+2するための構成例を示したもの
で、DMAチヤネル31のうち、主メモリアドレ
ス発生に関連する部分のみをとり出して示してい
る。主メモリアドレスレジスタ72も同様であ
る。
すなわち第5図において、DMAチヤネル31
内には、主メモリアドレスを発生するために、主
メモリアドレスレジスタ71とは別に、プログラ
ムによつて初期設定されるもう1個のレジスタ、
すなわち主メモリのアドレス更新単位を格納する
アドレス更新レジスタ15と、加算器16、デー
タセレクタ13、およびこれらを制御するための
制御回路17を設けている。
このような構成において、まずプログラムによ
る初期データの設定時には、制御回路17の指示
によつて、データセレクタ13はデータバス42
を介して送られてきたプログラム指定の主メモリ
アドレスの先頭番地情報を主メモリアドレスレジ
スタ71に、セツトし、また同時にアドレス更新
データがアドレス更新レジスタ15へセツトされ
る。ここで、アドレス更新データは、プログラム
によつて任意値を設定し得るが、本実施例では、
値2がプログラムされているとする。
かくして、初期値設定完了の後、データ転送中
においては、データセレクタ13は、加算器16
からのデータを出力するように制御回路17によ
り切替えられ、1語データの転送が終ると、主メ
モリアドレスレジスタ71には、それ自身の内容
にアドレス更新レジスタ15にセツトされた定数
すなわち2を加えたデータが再格納される。かく
して、主メモリアドレスタ71は、1語転送毎に
+2され、その値が主メモリアドレスとしてゲー
ト14を介してアドレスバス41へ出力される。
このようにして、第4図の主メモリアドレスレ
ジスタ71,72は上記実施例の如く、1語転送
毎に+2され、またデータカウントレジスタ8
1,82、データアドレスレジスタ91,92は
それぞれ−1、および+1され、データカウント
レジスタ81,82の内容が0になるまで各
DMAチヤネル31,32はデータ転送を遂行す
る。
以上説明した本実施例の構成および各部の動作
にもとづいて、本発明のデータ転送方法について
以下説明する。
第6図は5個のブロツクデータをアクセスする
時を例として、CPU6のプログラムにより、各
DMAチヤネル31,32の各レジスタに設定す
る初期値の例を示すもので、フアイルメモリ21
からは0〜2番地の3語を、フアイルメモリ22
からは0〜1番地の2語を読み出すことを指示し
ている。これらの5語は第7図に示すように主メ
モリ1内の0〜4番地のブロツクデータd0〜d4
対応づけられて以下のように転送される。
まずDMAチヤネル31では、第6図の初期値
に従つてフアイルメモリ21のデータアドレスレ
ジスタ91(第4図)にセツトされた0番地か
ら、データカウントレジスタ81にセツトされた
3語を、すなわち0〜2番地の3語を続けて読み
出し、これらの主メモリアドレスレジスタ71の
指定する主メモリアドレスに転送する。主メモリ
アドレスレジスタ71は第5図で説明したように
1語転送ごとに+2されるので、上記の3語は主
メモリ1の0、2、4番地に格納されることにな
る。一方DMAチヤネル32の動作も同様で、デ
ータアドレスレジスタ92にセツトされた0番地
からデータカウントレジスタ82にセツトされた
2語、すなわちちフアイルメモリ22の0、1番
地の2語を、主メモリアドレスレジスタ72の指
示する主メモリ1の1、3番地に転送する。
この時の転送のタイムチヤート例を第8図に示
す。まずCPU6から前述のように初期値のセツ
トが各DMAチヤネル31,32に対して行わ
れ、各チヤネルへの起動ST1,ST2がかけられ
る。この起動はシリアルであるが、フアイルメモ
リ動作速度から見ればほぼ同時起動とみなしう
る。起動ST1,ST2がかかると、DMAチヤネ
ル31,32はそれぞれアクセスタイムAT1,
AT2を経てまずデータd0,d1をアクセスし、こ
れらはバス4の転送占有時間はts(1語につき)
でもつて主メモリへ転送される。このデータd0
d1の転送は、先にアクセスされた方がバスコント
ローラ5にバス占有権を要求することによつて転
送される。続いて各フアイルメモリのデータ転送
レートt0,t1後にそれぞれ次のデータd2,d3が各
フアイルで並列にアクセスされ、アクセス完了時
点で上記と同様に各々主メモリへ転送される。こ
こで第8図の例ではフアイルメモリ22のアクセ
スは終了するが、フアイルメモリ21の方はもう
1個のd4がアクセスされて転送されてこのフアイ
ルアクセスも終了する。
この転送動作で、データ転送レートt0,t1,…
等は、磁気バルブメモリの場合、スキツプの影響
で必ずしも同一の値とはならず、上記の各データ
の転送は不規則な時間的間隔で行われ、また順序
が入れ代ることもあり、従来のインターリーブ方
式のように完全な同期動作はできないが、各デー
タは主メモリアドレスレジスタ71,72の指示
する主メモリ1のアドレスへ、バス4を、時分割
的に利用して確実に転送され、1ブロツク(この
場合5語)の全転送時間tTは1個のフアイルメモ
リ使用時よりも大幅に短縮される。
このブロツクデータの転送において、CPU6
のプログラム上での各フアイルメモリのデータア
ドレスとの対応は、このデータアドレスをプログ
ラム上でフアイルアドレスと呼ぶことにすると、
フアイルメモリ21に対しては(フアイルアドレ
ス)=(データアドレス)×2、フアイルメモリ2
2に対しては(フアイルアドレス)=(データアド
レス)×2+1で与えられるので(実際にはフア
イルアドレス、データアドレスとも適当な定数、
すなわちオフセツトを加えてもよい)、プログラ
ム上で各フアイルメモリのデータアドレス指定
(例えば初期値の設定)は容易に行える。
なお、以上の実施例では、フアイルメモリ2台
を例としているが、一般にn台のフアイルメモリ
に分散されたブロツクデータをアクセスするよう
にすることも容易であつて、各DMAチヤネル内
の主メモリアドレスレジスタを1語転送毎に+n
するようにすればよいことは明らかである。
以上の説明から明らかなように、本発明によれ
ば、複数台の互いに同期化不可能もしくはアクセ
ス形態の異なるフアイルメモリを使用した時でも
ブロツクデータ転送を並列化でき、ブロツクデー
タの転送スピードを大幅に向上できるという効果
がある。
【図面の簡単な説明】
第1図および第2図はフアイルメモリ1個の時
の従来のDMAデータ転送を説明するブロツク
図、第3図は複数台のフアイルメモリ使用時の従
来の並列化動作方式を説明するブロツク図、第4
図は本発明の一実施例の全体構成を示すブロツク
図、第5図は本発明に用いる主メモリアドレスレ
ジスタの構成例を示す図、第6図および第7図は
本発明の動作を説明するための初期値設定例およ
び各フアイルメモリと主メモリのアドレス対応関
係の説明図、第8図は本発明の動作例を示すタイ
ムチヤートである。 1……主メモリ、4……バス、5……バス制御
回路、6……中央処理装置(CPU)、21,22
……フアイルメモリ、31,32……DMAチヤ
ネル、71,72……主メモリアドレスレジス
タ、81,82……データカウントレジスタ、9
1,92……データアドレスレジスタ、13……
セレクタ、15……アドレス更新レジスタ、16
……加算器。

Claims (1)

  1. 【特許請求の範囲】 1 中央処理装置と、主メモリと、n個のフアイ
    ルメモリと、各フアイルメモリ番号順に設けら
    れ、且つ対応フアイルメモリと上記メモリとの間
    に設けられ、中央処理装置の指令により時間的に
    並行して起動されて両者の間でDMA転送を行う
    n個のDMAチヤンネルと、より成るシステムに
    おいて、 上記各DMAチヤンネルは、 DMAチヤンネル番号順の初期値アドレスが設
    定され、n個毎の主メモリ用アドレス更新を行う
    主メモリアドレスレジスタと、各チヤンネル毎の
    データ数を初期値として設定され、1個のデータ
    のDMA転送毎に−1の更新を行うデータカウン
    トレジスタと、対応フアイルメモリの開始アドレ
    スが初期値として設定され、1個のデータの
    DMA転送毎に+1の更新を行うデータアドレス
    レジスタと、 より成り、DMA転送に際しては、自己のデータ
    カウントレジスタの値が零になるまで、各DMA
    チヤンネルは、そのチヤンネル番号順に、主メモ
    リアドレスレジスタの主メモリアドレスとデータ
    アドレスレジスタのフアイルメモリアドレスとの
    間でデータ転送を時分割的に行わせてなるデータ
    転送方法。
JP10437081A 1981-07-06 1981-07-06 デ−タ転送方法 Granted JPS588336A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10437081A JPS588336A (ja) 1981-07-06 1981-07-06 デ−タ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10437081A JPS588336A (ja) 1981-07-06 1981-07-06 デ−タ転送方法

Publications (2)

Publication Number Publication Date
JPS588336A JPS588336A (ja) 1983-01-18
JPS6336021B2 true JPS6336021B2 (ja) 1988-07-18

Family

ID=14378908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10437081A Granted JPS588336A (ja) 1981-07-06 1981-07-06 デ−タ転送方法

Country Status (1)

Country Link
JP (1) JPS588336A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61291107A (ja) * 1985-06-19 1986-12-20 Japan Styrene Paper Co Ltd 熱可塑性樹脂予備発泡粒子の製造方法
JP2005167870A (ja) * 2003-12-05 2005-06-23 Sony Corp データ処理方法およびデータ処理装置

Also Published As

Publication number Publication date
JPS588336A (ja) 1983-01-18

Similar Documents

Publication Publication Date Title
EP0243085B1 (en) Coprocessor architecture
JPH0363096B2 (ja)
JPH08221353A (ja) データ処理システムにおいてデータを多次元転送する方法
JPH0719426B2 (ja) デイスク制御装置
JP3619532B2 (ja) 半導体集積回路装置
JPH04363746A (ja) Dma機能を有するマイクロコンピュータシステム
JPH03189843A (ja) データ処理システムおよび方法
JPS6336021B2 (ja)
JPS60205760A (ja) メモリ制御装置
JP3007923B2 (ja) データ転送方法およびシステム
JPH01125644A (ja) データ転送装置
JP2689523B2 (ja) Dma転送装置
KR20010050234A (ko) 메모리(mem)와 결합한 데이터 처리용 디바이스
JPH01114952A (ja) 情報処理装置におけるメモリ間転送方式
JP3270149B2 (ja) データ転送装置
JPH10222460A (ja) データ転送制御装置
JPH0736806A (ja) Dma方式
JP2540844B2 (ja) デ−タ転送制御方法
JPH0426744B2 (ja)
JP2550964B2 (ja) 記憶アクセス制御方式
JPS6074074A (ja) 優先順位制御方式
JPH04239954A (ja) 入出力制御装置
JPH04346150A (ja) データ転送処理システム
JPH0773094A (ja) メモリ初期化制御装置
JPH10134013A (ja) マルチcpuシステム