JP2001273245A - 電子機器 - Google Patents

電子機器

Info

Publication number
JP2001273245A
JP2001273245A JP2000083626A JP2000083626A JP2001273245A JP 2001273245 A JP2001273245 A JP 2001273245A JP 2000083626 A JP2000083626 A JP 2000083626A JP 2000083626 A JP2000083626 A JP 2000083626A JP 2001273245 A JP2001273245 A JP 2001273245A
Authority
JP
Japan
Prior art keywords
transfer
data
dma
cpu
storage means
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
Application number
JP2000083626A
Other languages
English (en)
Inventor
Naoyuki Yamada
直行 山田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2000083626A priority Critical patent/JP2001273245A/ja
Publication of JP2001273245A publication Critical patent/JP2001273245A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 CPU1の介在無く連続してメモリ等の第1
格納手段2から第2格納手段3にデータ転送ができるよ
うにして、当該CPU1の負荷を効率的に軽減させる。 【解決手段】 CPU1が、転送すべきデータを第1格
納手段2にテーブルデータとして格納すると共に、当該
テーブルデータの先頭アドレスを読出アドレスとしてア
ドレス格納部21に格納し、また転送するデータ数を転
送数として転送数格納部22に格納する。このような状
態でCPU1がDMAコントローラ5に転送要求を出力
することにより、DMAコントローラ5は第1格納手段
2における読出アドレスに該当するアドレスから順次転
送を開始し、転送数に達すると転送を終了する。このよ
うな転送を、転送要求が無くなるまで連続して行うこと
により、CPU1の負荷を効率的に軽減させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、メモリから他のメ
モリ等にデータの転送を行う際のCPUの転送処理の負
荷を効率的に軽減させるようにした電子機器に関する。
【0002】
【従来の技術】近年、電子機器等においては付加価値の
向上から種々の機能が搭載され、これらの機能は内蔵さ
れているCPUがメモリ等に記憶されたデータに基づき
演算処理を行い入出力装置を制御することにより行われ
る。
【0003】このような状況にあって、CPUとこれに
接続されている入出力装置との間で高速にデータ転送を
行う必要性が高まり、DMA(Direct Memo
ryAccess)コントローラが利用されるようにな
っている。
【0004】即ち、従前はCPUが制御プログラムに従
って入出力装置との間でデータ転送を行っていたが、例
えば磁気ディスクからメモリに大量のデータ転送を行う
際には、当該CPUが転送処理を行うために占有されて
しまい該CPUの処理効率又は稼働率が低下してしま
う。
【0005】そこで、DMAコントローラを用いること
によりCPUによる制御を入出力の開始と終了のみと
し、一度データの転送が開始されれば、その後はCPU
に関係なくメモリと入出力装置との間で直接データ転送
を行うようにして、当該CPUの処理負荷を軽減させる
ようにしている。
【0006】例えば、特開平9−305528号公報に
おいては、モデムからの受信データをメモリに書込む際
におけるCPUの処理負荷を軽減する構成が開示されて
いる。
【0007】即ち、図8に示すようにファクシミリ装置
は、CPU111、ROM112、RAM113及びD
MAコントローラ116を備えて、CPU111はDM
Aコントローラ116のエリア制御回路117にRAM
113内の空き領域の内から選択した複数の領域をそれ
ぞれエリアA及びエリアBとして設定する。
【0008】そして、DMAコントローラ116は、ま
ずエリアAを利用して処理を行い、その処理が終った時
点でCPU111に割込みをかけると共にエリアBを利
用して処理を継続する。
【0009】一方、CPU111は割込み処理によりエ
リアBのDMA処理が終ったとしてもさらに処理すべき
データが存在するか否かを判断して、これらのデータが
なくなるまでエリアA及びエリアBを交互に利用するこ
とによりDMA処理を連続的に行うようにしている。
【0010】従って、このような構成では、DMAコン
トローラ116から割込みが発生したときのみCPU1
11が当該処理のために占有され、それ以外の時は他の
処理を行うことができるようになるので、当該CPU1
11の負荷が軽減される。
【0011】
【発明が解決しようとする課題】しかしながら、上記構
成では、少なくともエリアAからエリアBでの処理を行
う際に、DMAコントローラ116からの割込みが発生
して、その処理のためにCPU111が占有されてしま
い十分な負荷軽減が図れない問題があった。
【0012】また、かかる割込みによる処理を許容する
としても、エリアA及びエリアBを交互に使用して受信
データをメモリに書込む構成であり、かかる複数のエリ
アが確保できないときや、当該メモリからデータを読出
す際の処理については従前と代らないので、使用状況に
よりCPU111の負荷軽減が図れない場合が生じる問
題があった。
【0013】そこで、本発明は、連続してメモリへのデ
ータの読み書きが行えるようにしてCPUの負荷を効率
的に軽減させることができるDMAコントローラ及びそ
れを用いた電子機器を提供することを目的とする。
【0014】
【課題を解決するための手段】上記課題を解決するた
め、請求項1にかかる発明は、種々のデータを格納する
少なくとも2つの格納手段と、これらの間でのデータ転
送を制御するCPUと、格納手段の間でデータ転送を行
う際に、CPUの転送処理を代行することにより当該C
PUの処理負担を軽減するDMAコントローラとを有し
た電子機器において、CPUが、転送すべきデータを転
送元の格納手段にテーブルデータとして格納すると共
に、当該テーブルデータの先頭アドレスを読出アドレ
ス、また転送するデータ数を転送数としてDMAコント
ローラに指示することにより当該DMAコントローラに
対して転送要求を行い、かつ、該転送要求を管理する転
送要求管理部をDMAコントローラに設けて、該転送要
求管理部の管理に基づき全ての転送要求が実行されるま
で連続して転送元の格納手段から転送先の格納手段にデ
ータ転送を行うようにして、連続して格納手段から他の
格納手段にデータの読み書きが行えるようにすることで
CPUの負荷を効率的に軽減させるようにしたことを特
徴とする。
【0015】請求項2にかかる発明は、CPUが、DM
Aコントローラにデータ転送を指示する際に、転送先の
格納手段の何処に転送するかを示す書込アドレスも指示
するようにして、転送元及び転送先がメモリのような場
合であっても連続して格納手段から他の格納手段にデー
タの読み書きが行えるようにすることでCPUの負荷を
効率的に軽減させるようにしたことを特徴とする。
【0016】請求項3にかかる発明は、DMAコントロ
ーラが、読出アドレス又は書込アドレスのうち少なくと
も1を格納すると共に、転送数を格納する転送情報格納
部を複数備えて、各転送情報格納部ごとに転送処理を実
行するようにして、連続して格納手段から他の格納手段
にデータの読み書きが行えるようにすることでCPUの
負荷を効率的に軽減させるようにしたことを特徴とす
る。
【0017】請求項4にかかる発明は、CPUが、転送
先の格納手段に転送データをテーブデータとして書込む
際に、当該書込み領域に既に書込まれているテーブルデ
ータが読出未完了の場合には、当該書込みを禁止するよ
うにして、転送の信頼性を向上させたことを特徴とす
る。
【0018】請求項5にかかる発明は、DMAコントロ
ーラが、複数の転送情報格納部ごとに転送を実行する際
の転送順序を管理する転送順序管理部を設けて、転送の
信頼性を向上させながら、連続して格納手段から他の格
納手段にデータの読み書きが行えるようにすることでC
PUの負荷を効率的に軽減させるようにしたことを特徴
とする。
【0019】請求項6にかかる発明は、種々のデータを
格納する2つの格納手段と、これらの間でのデータ転送
を制御するCPUと、2つの格納手段の間でデータ転送
を行う際に、CPUの転送処理を代行することにより当
該CPUの処理負担を軽減するDMAコントローラとを
有した電子機器において、CPUが、転送元の格納手段
に転送すべきデータをテーブルデータとして格納すると
共に、該テーブルデータの情報をDMAデータとして格
納し、かつ、当該DMAデータに基づき転送処理を実行
するテーブルデータの先頭アドレスを示す読出アドレ
ス、該テーブルデータのデータ数を示す転送数及び次の
転送処理に関する情報が格納されたDMAデータの先頭
アドレスを示す次DMAデータアドレスを格納し、DM
Aコントローラにこれらのデータを転送させる際には、
最初に転送するテーブルデータの転送情報が格納されて
いるDMAデータのアドレスを指示するようにして、連
続して格納手段から他の格納手段にデータの読み書きが
行えるようにすることでCPUの負荷を効率的に軽減さ
せるようにしたことを特徴とする。
【0020】請求項7にかかる発明は、DMAデータに
転送先の格納手段の何処に転送するかを示す書込アドレ
スも指示するようにして、転送元及び転送先がメモリの
ような場合であっても連続して格納手段から他の格納手
段にデータの読み書きが行えるようにすることでCPU
の負荷を効率的に軽減させるようにしたことを特徴とす
る。
【0021】請求項8にかかる発明は、DMAコントロ
ーラに転送中に次に転送するテーブルデータの情報を示
すDMAデータをプリロードして格納するDMAデータ
プリロード部を設けて、転送元及び転送先がメモリのよ
うな場合であっても連続して格納手段から他の格納手段
にデータの読み書きが行えるようにすることでCPUの
負荷を効率的に軽減させるようにしたことを特徴とす
る。
【0022】請求項9にかかる発明は、CPUが、DM
Aコントローラに対して転送要求を行たことを管理する
転送要求管理部を設けて、当該転送要求がなくなるまで
DMAコントローラが連続して転送を行うようにして、
連続して格納手段から他の格納手段にデータの読み書き
が行えるようにすることでCPUの負荷を効率的に軽減
させるようにしたことを特徴とする。
【0023】請求項10にかかる発明は、DMAコント
ローラが、転送先格納手段にデータ転送する際の転送要
求であるDMAリクエスト信号を自己生成して出力する
DMAリクエスト発生部を備えて、効率的にデータ転送
が行えるようにすると共に、割込み等を発生させること
なく連続して格納手段から他の格納手段にデータの読み
書きが行えるようにすることでCPUの負荷を効率的に
軽減させるようにしたことを特徴とする。
【0024】請求項11にかかる発明は、DMAリクエ
スト信号の発生間隔が、任意に設定可能なように設け、
状況に応じてDMAリクエスト信号を発生させて、割込
み等を発生させることなく連続して格納手段から他の格
納手段にデータの読み書きが行えるようにすることでC
PUの負荷を効率的に軽減させるようにしたことを特徴
とする。
【0025】
【発明の実施の形態】本発明の第1の実施の形態を図を
参照して説明する。図1は、本実施の形態にかかるDM
Aコントローラを備えた電子機器の概略構成を示すブロ
ック図である。
【0026】図1における電子機器は、種々の演算を行
うと共に電子機器全体の制御を行うCPU1、転送する
データを格納している第1格納手段2、当該転送されて
きたデータを格納する第2格納手段3、該第2格納手段
からデータを受取り動作するステッピングモータ等のデ
ータ実行手段4、第1格納手段2と第2格納手段3との
間でデータ転送を行う際のCPU1が行う処理の一部を
代行することにより当該CPU1の処理負担を軽減する
DMAコントローラ5等を有して、これらがバス6を介
して接続されている。
【0027】データ実行手段4として、入力したデータ
を一時蓄え、時間的タイミングを見計らって実行するよ
うなステッピングモータや磁気ディスクを想定した場合
には、第1格納手段2としては電子機器に設けられてい
るRAM等のメモリがあげられ、第2格納手段3として
はステッピングモータを駆動するための制御回路や磁気
ディスク装置に設けられているバッファ等があげられ
る。
【0028】なお、磁気ディスクを考えた場合には、デ
ータの転送は電子機器に設けられているメモリから磁気
ディスクに、逆に磁気ディスクからメモリに転送する場
合が生じるが基本的な処理は同じである。
【0029】さらに、データの転送をメモリ間で行うよ
うな場合もある。即ち、電子機器に設けられた1つのメ
モリが第1格納手段2及び第2格納手段3となる場合、
また当該電子機器に2つのメモリが設けられて一方から
他方のメモリにデータ転送を行う場合が考えられ、いず
れの場合においても本発明を適用することが可能であ
る。
【0030】そこで、以下の説明では、第1格納手段2
としては電子機器に設けられたRAM等のメインメモ
リ、データ実行手段4としてステッピングモータ、第2
格納手段3として当該ステッピングモータを駆動する制
御回路に設けられたバッファを想定して説明する。
【0031】第1格納手段2には、図2に例示するよう
なデータ実行手段4が実行するデータがテーブル化され
て設けられている。
【0032】このテーブルデータは、データ単位(例え
ば、4、8、16ビット等)により設定されるビット数
からなるデータを1ブロックとして、複数まとめること
により構成されている。
【0033】なお、図2ではテーブル1とテーブル2と
が設けられた場合を示し、それぞれのブロックの数を転
送数a、転送数bのように記載している。以下、このブ
ロック数を転送数と記載して説明する。また各テーブル
データにおける先頭ブロックのアドレスをアドレスA及
びアドレスBとしている。
【0034】DMAコントローラ5には、複数の転送情
報格納部23が設けられた転送情報管理手段20及び転
送処理管理手段10が設けられている。
【0035】転送情報格納部23は、第1格納手段2に
格納されているテーブルデータの先頭アドレスである読
出アドレスを格納するアドレス格納部21及び当該テー
ブルデータを構成するブロック数である転送数を格納す
る転送数格納部22により構成されている。
【0036】また、転送処理管理手段10は、第1格納
手段2に複数のテーブルが格納されている場合に、各テ
ーブルを転送する際の転送順序を格納して管理する転送
順序管理部11及び各テーブルに対して転送要求が発行
されたか否かを管理する転送要求管理部12により構成
されている。
【0037】そして、第2格納手段3から転送処理管理
手段10にDMAリクエスト信号7が出力され、これに
対して転送処理管理手段10から第2格納手段3にDM
Aアックノレッジ信号8が出力されるようになってい
る。
【0038】なお、後述するようにCPU1がDMAコ
ントローラ5に転送要求を出力する前に、テーブルデー
タを第1格納手段2に格納し、またアドレス格納部21
及び転送数格納部22に該当する情報を格納するように
なっている。
【0039】但し、第1格納手段2がROMのような不
揮発性メモリの場合には、テーブルデータは予め格納さ
れているので、CPU1は当該テーブルを必要に応じて
格納するようなことはせず、単にDMAコントローラ5
のアドレス格納部21等に該当する情報を格納するだけ
となる。
【0040】このような構成で、データの転送手順を図
3及び図4を参照して説明する。なお、図3は転送手順
を示すフローチャート、図4はタイミングチャートを示
している。
【0041】図4に示すLinesyncは、図示しな
いスキャナのライン同期信号であり、Blocksyn
cは、ライン同期信号と同期した複数ラインを1ブロッ
クとした信号である。
【0042】データ転送は、先ず、CPU1が第1格納
手段2に図2に示すようなデータ実行手段4に転送する
データをテーブルデータ化して格納する。その後、転送
アドレス及び転送数をDMAコントローラ5のアドレス
格納部21及び転送数格納部22に格納して、DMA転
送要求を当該DMAコントローラ5に出力する(ステッ
プSA1)。
【0043】なお、図1に示すように、アドレス格納部
21及び転送数格納部22は複数設けられているが、全
てのアドレス格納部21等に転送アドレス等が格納され
るわけではなく、テーブルをj個転送する場合にはj組
の転送情報をアドレス格納部21及び転送数格納部22
に格納する。
【0044】そして、転送アドレス等の転送情報が格納
されたj組の転送情報格納部23の数(この場合、j)
をDMA転送数Tとする。
【0045】DMAコントローラ5は、CPU1からD
MA転送要求を受信すると転送処理を開始し(ステップ
SA2)、第2格納手段3からのDMAリクエスト信号
7を待つ(ステップSA3)。
【0046】第2格納手段3からDMAリクエスト信号
7を受信すると、DMAコントローラ5はDMAアック
ノレッジ信号8を第2格納手段に出力してアドレス格納
部21に格納されているアドレスに基づきデータを読出
して転送を開始する。
【0047】このとき、転送数格納部22に格納されて
いる転送数分のブロックデータをデータ単位で読込ん
で、第2格納手段3に転送され、そしてDMA転送数T
が1減じられる(ステップSA4)。
【0048】図4では、1つのテーブルが4つのブロッ
クデータにより構成された場合を示し、CPU1がテー
ブル1を設定しDMA転送要求(二重矢印)を出力した
際、各ブロックデータが点線矢印に従って順次転送さ
れ、このデータに基づきステッピングモータが駆動され
る様子が示されている。
【0049】そして、DMA転送数TがT=0になるま
で、上記転送が連続して行われて1つのテーブルについ
ての転送処理が終了する(ステップSA5)。
【0050】当該転送処理が終了すると、それまでにC
PU1から新たな転送要求を受信したか否かの判断が行
われ(ステップSA6)、新たな転送要求が受信されな
かった場合には転送処理は完了する。なお、この新たな
転送要求の有無は、転送要求管理部12が管理してい
る。
【0051】一方、新たな転送要求を受信している場合
にはステップSA2に戻り、これまでの処理を繰返す。
【0052】新たな転送要求が受信される際には、別の
転送情報格納部23(既に実行された転送情報格納部で
も良い)に該当する転送情報が既に格納されているの
で、第2格納手段3からのDMAリクエスト信号7を受
信すると、当該転送情報に基づき次の転送処理が開始さ
れる。
【0053】図4において次の転送要求は、テーブル2
を設定し、DMA転送要求(二重矢印)を出力したこと
で出力されている。
【0054】このように、少なくともCPU1からの1
テーブルのデータ転送を行うように転送要求を出力し
て、その要求内容が全て実行されるまで、DMAコント
ローラ5が連続してデータ転送を行うので、CPU1の
処理負担を軽減することができるようになる。
【0055】また、DMAコントローラ5が転送処理中
であるか否かを問わずCPU1が転送要求を出力できる
ので、CPU1は転送要求の出力タイミング等を意識す
る必要がなくなり、同時にDMAコントローラ5もCP
U1からの転送要求の受信を転送処理と切離して行なえ
るので、制御上割込み処理が不要となり、又は割込みを
行うにしても例えばDMAコントローラ5等のタイミン
グで割込み処理が行えるので、割込み信号の出力(受
信)から割込み処理が実行されるまでの時間を考慮しな
い制御が可能になって制御プログラムの制作が非常に容
易になる利点がある。
【0056】なお、DMAコントローラ5が現在転送し
ているテーブルに対してCPU1が次のテーブルデータ
を上書き使用とした場合に、これを許してしまうと正確
なデータ転送ができなくなることは明らかで、係る場合
には上書きを禁止しなければならない。
【0057】そこで、本発明では、図4に示すように、
FLG1及びFLG2の制御信号を設けて、FLG1が
「H」レベルになっているときにはテーブル1が処理中
であることを示し、FLG2が「H」レベルになってい
るときにはテーブル2が処理中であることを示して、該
当するテーブルにCPU1が上書きしようとしてもこれ
を禁止するようにしている。
【0058】従って、データ転送の信頼性を向上させる
ことが可能になる。
【0059】ところで、第1格納手段2及び第2格納手
段3が共にメモリのようにアドレスを持つ場合(同一格
納手段内でデータ転送を行う場合も含む)における転送
手順も上述したと全く同様に行うことができるが、この
場合には転送元のデータが格納されているアドレスが新
たに必要になる、
【0060】このような場合には、アドレス格納部21
に転送元のアドレスと転送先のアドレスとを共に格納す
るようにすればよい。無論、別の格納領域を設け、そこ
に転送先アドレスを格納するようにしてもよいことはい
うまでもない。
【0061】そして、転送元のアドレスからデータを読
出し、転送先のアドレスに転送するようにする。
【0062】このような処理においても、CPU1が本
来行う処理をDMAコントローラ5が代行するので、上
述したと同様の効果、即ちCPU1の処理負担の軽減及
び割込み処理に対する制御プログラムの製作容易性と言
った効果を享受することが可能となる。
【0063】なお、上記説明では、DMAコントローラ
5が1つの転送情報格納部23に格納されている転送情
報に基づき転送処理をし、次にCPU1からの新たな転
送要求の有無を判断するようにしたが、本発明はこれに
限定されるものではなく、CPU1が予め複数の転送情
報格納部23に転送情報を格納するようにしてもよい。
【0064】そして、転送順序管理部11が、複数の転
送情報格納部23に格納されている転送情報をどの順序
で行うかを管理するようにするならば、複数の転送情報
格納部23に格納されている転送処理がCPU1の介在
なしに連続して行うことが可能なり、よりCPU1の処
理負担の軽減が図られる。
【0065】次に、本発明の第2の実施の形態の説明を
図を参照して行う。第1の実施の形態では、複数の転送
処理を継続して行うには、CPU1はその旨の転送情報
を転送情報格納部23に格納し、転送順序管理部11が
これら複数の転送情報格納部23に格納された転送処理
を管理する必要があった。
【0066】従って、一度に連続して実行できる転送処
理の回数は、転送情報管理手段20に設けられている転
送情報格納部23の数により限定されてしまう。
【0067】そこで、本実施の形態では、かかる制限を
緩和するようにしたものである。
【0068】図5は本実施の形態にかかるDMAコント
ローラ5を備えた電子機器の概略構成を示すブロック図
である。
【0069】図5における電子機器は、種々の演算を行
うと共に電子機器全体の制御を行うCPU1、転送する
データを格納している第1格納手段2、当該転送されて
きたデータを格納する第2格納手段3、該第2格納手段
3からデータを受取り動作するステッピングモータ等の
データ実行手段4、第1格納手段2と第2格納手段3と
の間でデータ転送を行う際のCPU1が行う処理の一部
を代行することにより当該CPU1の処理負担を軽減す
るDMAコントローラ5等を有して、これらがバス6を
介して接続されている。
【0070】データ実行手段4として、入力したデータ
を一時蓄え、時間的タイミングを見計らって実行するよ
うなステッピングモータや磁気ディスクを想定した場合
には、第1格納手段2としては電子機器に設けられてい
るRAM等のメモリがあげられ、第2格納手段3として
はステッピングモータを駆動するための制御回路や磁気
ディスク装置に設けられているバッファ等があげられ
る。
【0071】なお、磁気ディスクを考えた場合には、デ
ータの転送は電子機器に設けられているメモリから磁気
ディスクに、逆に磁気ディスクからメモリに転送する場
合が生じるが基本的な処理は同じである。
【0072】さらに、データ実行手段4として、メモリ
があげられる。この場合には、電子機器に設けられた1
つのメモリが第1格納手段2及び第2格納手段3となる
場合、当該電子機器に2つのメモリが設けられて一方か
ら他方のメモリにデータ転送が行われるときがあり、か
かる場合にも本発明は適用可能である。
【0073】そこで、以下の説明では、第1格納手段2
としては電子機器に設けられたRAM等のメインメモ
リ、データ実行手段4としてステッピングモータ、第2
格納手段3として当該ステッピングモータを駆動する制
御回路に設けられたバッファを想定して説明する。
【0074】第1格納手段2には、図2に例示するよう
なデータ実行手段4が実行するデータがテーブルデータ
化されて設けられ、さらに図6に示すような転送データ
の情報をテーブル化したデータ(以下、当該テーブルを
DMAデータと記載して、データ実行手段が実行するテ
ーブルデータと区別する)が格納されている。
【0075】テーブルデータは、データ単位(例えば、
4、8、16ビット等)により設定されるビット数から
なるデータを1ブロックとして、複数まとめることによ
り構成されている。
【0076】なお、図2ではテーブル1とテーブル2と
が設けられた場合を示し、それぞれのブロックの数を転
送数a、転送数bのように記載している。以下、このブ
ロック数を当該転送数と記載して説明する。また各テー
ブルの先頭ブロックのアドレスをアドレスA及びアドレ
スBとしている。
【0077】図6においては、DMAデータが3つ記載
されており、各DMAデータは次に転送するテーブルの
情報が格納されているDMAデータのアドレスを示す次
DMAデータアドレス、そのDMAデータにより転送さ
れるテーブルのアドレスを示す転送アドレス、及び該転
送で転送するブロック数を示す転送数がそれぞれ格納さ
れている。
【0078】そして、DMAコントローラ5が最初に起
動する際には、CPU1から最初のDMAデータが格納
されているアドレスが指定される。このときに指定され
たアドレスが、「k」であったとする。
【0079】これにより、DMAコントローラ5は、ア
ドレス「k」にアクセスして、図6(a)に示すDMA
データを読込み、転送処理を実行する。
【0080】このDMAデータには、次に読込むDMA
データのアドレス「m」が格納されているので、現在の
転送が終了すると又は終了直前にアドレス「m」アクセ
スして図6(b)に示すDMAデータを読込み、データ
の転送を行う。
【0081】このDMAデータには、次のDMAデータ
のアドレスが「n」で有ることが格納されているので、
現在の転送処理に引続き、図6(c)に示すアドレス
「n」のDMAデータを読込む。
【0082】ところが、このデータにはこれまでと違
い、次に読込むDMAデータのアドレスが格納されてお
らず、転送終了を示すデータが格納されている。
【0083】そこで、DMAコントローラ5は、このD
MAデータに基づく転送を終了すると転送処理が完了し
たとして終了する。
【0084】DMAコントローラ5には、プリロード管
理手段30及び転送処理管理手段10等が設けられてい
る。
【0085】プリロード管理手段30には、現在行って
いる転送処理の転送情報であるDMAデータのアドレス
を格納するDMAデータアドレス格納部31、次に実行
する転送処理を予め読込むためのDMAデータプリロー
ド部32、当該DMAデータプリロード部32でプリロ
ードを実行させるためのDMAリクエスト信号を発生さ
せるDMAリクエスト発生部33が設けられている。
【0086】また、転送処理管理手段10には、第1格
納手段2に複数のテーブルが格納されている場合に、各
テーブルを転送する際の転送順序を格納して管理する転
送順序管理部11及び各テーブルに対して転送要求が発
行されたか否かを管理する転送要求管理部12が設けら
れている。
【0087】このような構成で、データの転送手順を図
7に示すフローチャートを参照して説明する。
【0088】CPU1がDMAコントローラ5に転送要
求を出力する前に、当該PU1は第1格納手段2に図2
に示すようなデータ実行手段4に転送するデータをテー
ブルデータ化して格納すると共に、該DMAデータを格
納する。
【0089】但し、第1格納手段2がROMのような不
揮発性メモリの場合には、テーブルデータは予め格納さ
れているので、CPU1は当該テーブルデータを必要に
応じて格納するようなことはせず、単にDMAコントロ
ーラ5のアドレス格納部21等に該当する情報を格納す
るだけとなる。
【0090】このような状態が終了した後、CPU1は
DMAコントローラ5に転送要求を出力する。この転送
要求には、最初に読込むDMAデータのアドレスが含ま
れている(ステップSB1)。
【0091】DMAコントローラ5はDMA転送要求を
受信すると、最初に読込むDMAデータのアドレスをD
MAデータアドレス格納部31に格納して、当該アドレ
スに対応するDMAデータの読込を開始する(ステップ
SB2)。
【0092】DMAデータには、転送するデータをテー
ブルデータ化した際の当該テーブルの先頭アドレスと転
送数とが含まれるので、該当するアドレスにアクセスし
て指定された転送数のブロックデータを読込む(ステッ
プSB2、ステップSB3)。
【0093】当該データの読込みが完了すると、DMA
コントローラ5は転送を開始し、第2格納手段3からの
リクエスト待ちとなる(ステップSB5、ステップSB
6)。
【0094】そして、第2格納手段3からDMAリクエ
スト信号を受信すると、転送数で規定されたブロックデ
ータが転送され(ステップSB7)、実際に転送した数
が当該転送数に等しくなると全ての転送が終了する(ス
テップSB8)。
【0095】その後、次の転送要求があるか否かの判断
が行われ、当該判断はDMAデータに転送終了を示すデ
ータがあるか否かで判断される(ステップSB9)。
【0096】例えば、図6では3つのDMAデータが示
され、図6(a)及び図6(b)に示すDMAデータに
は次DMAデータアドレスが格納され、図6(c)に示
すDMAデータには転送終了を示す情報が格納されてい
るので、図6(a)の内容の転送が終了すると転送要求
が出力され、図6(b)の内容が実行されて、また転送
要求が出力され、図6(c)の内容が実行される。
【0097】ところが、図6(c)に示すDMAデータ
には転送終了の情報が格納されているので、当該DMA
データの転送が終了すると転送処理が完了するようにな
る。
【0098】なお、ステップSB6におけるDMAリク
エスト信号は、転送先の格納手段である第2格納手段3
から出力されるが、本発明はこれに限定されるものでは
なくDMAリクエスト発生部33で自己生成するように
しても良い。
【0099】この場合、そのDMAリクエスト信号の発
生間隔を任意の間隔に設定可能に設けるならば、装置の
搬送性が向上する利点がある。
【0100】これにより、CPU1は1度の転送要求の
みを発行すればよいので、大幅な処理負担の軽減が可能
となる。
【0101】
【発明の効果】以上説明したように請求項1にかかる発
明によれば、CPUが、転送すべきデータを転送元の格
納手段にテーブルデータとして格納すると共に、当該テ
ーブルデータの先頭アドレスを読出アドレス、また転送
するデータ数を転送数としてDMAコントローラに転送
要求を指示し、当該転送要求を転送要求管理部で管理す
ることにより、全ての転送要求に対する格納手段から他
の格納手段へのデータの読み書きが連続して行えるよう
になりCPUの負荷を効率的に軽減させることが可能に
なる。
【0102】請求項2にかかる発明によれば、CPU
が、DMAコントローラにデータ転送を指示する際に、
転送先の格納手段の何処に転送するかを示す書込アドレ
スも指示するようにして、転送元及び転送先がメモリの
ような場合であっても連続して格納手段から他の格納手
段にデータの読み書きが行えるようになりCPUの負荷
を効率的に軽減させることが可能になる。
【0103】請求項3にかかる発明によれば、DMAコ
ントローラが、読出アドレス又は書込アドレスのうち少
なくとも1を格納すると共に、転送数を格納する転送情
報格納部を複数備えて、各転送情報格納部ごとに転送処
理を実行するようにしたので、簡単な構成で連続して格
納手段から他の格納手段にデータの読み書きが行えるよ
うになりCPUの負荷を効率的に軽減させることが可能
になる。
【0104】請求項4にかかる発明によれば、CPU
が、転送先の格納手段に転送データをテーブデータとし
て書込む際に、当該書込み領域に既に書込まれているテ
ーブルデータが読出未完了の場合には、当該書込みを禁
止するようにしたので、転送の信頼性を向上させること
が可能になる。
【0105】請求項5にかかる発明によれば、DMAコ
ントローラが、複数の転送情報格納部ごとに転送を実行
する際の転送順序を管理する転送順序管理部を設けたの
で、転送の信頼性を向上が図られると共に、連続して格
納手段から他の格納手段にデータの読み書きが行えるよ
うになりCPUの負荷を効率的に軽減させることが可能
になる。
【0106】請求項6にかかる発明によれば、種々のデ
ータを格納する2つの格納手段と、これらの間でのデー
タ転送を制御するCPUと、2つの格納手段の間でデー
タ転送を行う際に、CPUの転送処理を代行することに
より当該CPUの処理負担を軽減するDMAコントロー
ラとを有した電子機器において、CPUが、転送元の格
納手段に転送すべきデータをテーブルデータとして格納
すると共に、該テーブルデータの情報をDMAデータと
して格納し、かつ、当該DMAデータに基づき転送処理
を実行するテーブルデータの先頭アドレスを示す読出ア
ドレス、該テーブルデータのデータ数を示す転送数及び
次の転送処理に関する情報が格納されたDMAデータの
先頭アドレスを示す次DMAデータアドレスを格納し、
DMAコントローラにこれらのデータを転送させる際に
は、最初に転送するテーブルデータの転送情報が格納さ
れているDMAデータのアドレスを指示するようにした
ので、割込み等を発生させることなく連続して格納手段
から他の格納手段にデータの読み書きが行えるようにな
りCPUの負荷を効率的に軽減させることが可能にな
る。
【0107】請求項7にかかる発明によれば、DMAデ
ータに転送先の格納手段の何処に転送するかを示す書込
アドレスも指示するようにしたので、転送元及び転送先
がメモリのような場合であっても連続して格納手段から
他の格納手段にデータの読み書きが行えるようになると
共に、CPUの負荷を効率的に軽減させることが可能に
なる。
【0108】請求項8にかかる発明によれば、DMAコ
ントローラに転送中に次に転送するテーブルデータの情
報を示すDMAデータをプリロードして格納するDMA
データプリロード部を設けたので、転送元及び転送先が
メモリのような場合であっても連続して格納手段から他
の格納手段にデータの読み書きが行えるようになりCP
Uの負荷を効率的に軽減させることが可能になる。
【0109】請求項9にかかる発明によれば、CPU
が、DMAコントローラに対して転送要求を行たことを
管理する転送要求管理部を設けたので、当該転送要求が
なくなるまでDMAコントローラが連続して転送を行え
るようになり、割込み等を発生させることなく連続して
格納手段から他の格納手段にデータの読み書きが行える
ようになると共にCPUの負荷を効率的に軽減させるこ
とが可能になる。
【0110】請求項10にかかる発明によれば、DMA
コントローラが、転送先格納手段にデータ転送する際の
転送要求であるDMAリクエスト信号を自己生成して出
力するDMAリクエスト発生部を備えたので、効率的に
データ転送が行えるようにすると共に、割込み等を発生
させることなく連続して格納手段から他の格納手段にデ
ータの読み書きが行えるようにすることでCPUの負荷
を効率的に軽減させることが可能になる。ることが可能
になる。
【0111】請求項11にかかる発明によれば、DMA
リクエスト信号の発生間隔が、任意に設定可能なように
設けたので、状況に応じてDMAリクエスト信号を発生
させ留ことができて汎用性が高まると共に、割込み等を
発生させることなく連続して格納手段から他の格納手段
にデータの読み書きが行えるようになりCPUの負荷を
効率的に軽減させることが可能になる。
【図面の簡単な説明】
【図1】本発明の第1実施の形態の説明に適用される電
子機器のブロック図である。
【図2】テーブルデータの構成例を示す図である。
【図3】転送処理を示すフローチャートである。
【図4】転送処理のタイミングチャートである。
【図5】本発明の第2実施の形態の説明に適用される電
子機器のブロック図である。
【図6】DMAデータの構成例を示す図である。
【図7】転送処理を示すフローチャートである。
【図8】従来の技術の説明に適用される電子機器のブロ
ック図である。
【符号の説明】
1 CPU 2 第一格納手段 3 第二格納手段 4 データ実行手段 5 DMAコントローラ 7 DMAリクエスト信号 10 転送処理管理手段 11 転送順序管理部 12 転送要求管理部 20 転送情報管理手段 21 アドレス格納部 22 転送数格納部 23 転送情報格納部 30 プリロード管理手段 31 DMAデータアドレス格納部 32 DMAデータプリロード部 33 DMAリクエスト発生部

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 種々のデータを格納する少なくとも2つ
    の格納手段と、これらの間でのデータ転送を制御するC
    PUと、前記格納手段の間でデータ転送を行う際に、前
    記CPUの転送処理を代行することにより当該CPUの
    処理負担を軽減するDMAコントローラとを有した電子
    機器において、 前記CPUが、転送すべきデータを転送元の前記格納手
    段にテーブルデータとして格納すると共に、当該テーブ
    ルデータの先頭アドレスを読出アドレス、また転送する
    データ数を転送数として前記DMAコントローラに指示
    することにより当該DMAコントローラに対して転送要
    求を行い、かつ、該転送要求を管理する転送要求管理部
    を前記DMAコントローラに設けて、該転送要求管理部
    の管理に基づき全ての転送要求が実行されるまで連続し
    て前記転送元の格納手段から前記転送先の格納手段にデ
    ータ転送を行うようにしたことを特徴とする電子機器。
  2. 【請求項2】 前記CPUが、前記DMAコントローラ
    にデータ転送を指示する際に、前記転送先の格納手段の
    何処に転送するかを示す書込アドレスも指示するように
    したことを特徴とする請求項1記載の電子機器。
  3. 【請求項3】 前記DMAコントローラが、前記読出ア
    ドレス又は書込アドレスのうち少なくとも1を格納する
    と共に、前記転送数を格納する転送情報格納部を複数備
    えて、各転送情報格納部ごとに転送処理を実行するよう
    にしたことを特徴とする請求項1又は2記載の電子機
    器。
  4. 【請求項4】 前記CPUが、前記転送先の格納手段に
    転送データをテーブデータとして書込む際に、当該書込
    み領域に既に書込まれているテーブルデータが読出未完
    了の場合には、当該書込みを禁止するようにしたことを
    特徴とする請求項1乃至3いずれか1項記載の電子機
    器。
  5. 【請求項5】 前記DMAコントローラが、複数の前記
    転送情報格納部ごとに転送を実行する際の転送順序を管
    理する転送順序管理部を有することを特徴とする請求項
    1乃至4いずれか1項記載の電子機器。
  6. 【請求項6】 種々のデータを格納する2つの格納手段
    と、これらの間でのデータ転送を制御するCPUと、2
    つの前記格納手段の間でデータ転送を行う際に、前記C
    PUの転送処理を代行することにより当該CPUの処理
    負担を軽減するDMAコントローラとを有した電子機器
    において、 前記CPUが、転送元の前記格納手段に転送すべきデー
    タをテーブルデータとして格納すると共に、該テーブル
    データの情報をDMAデータとして格納し、かつ、当該
    DMAデータに基づき転送処理を実行するテーブルデー
    タの先頭アドレスを示す読出アドレス、該テーブルデー
    タのデータ数を示す転送数及び次の転送処理に関する情
    報が格納された前記DMAデータの先頭アドレスを示す
    次DMAデータアドレスを格納し、前記DMAコントロ
    ーラにこれらのデータを転送させる際には、最初に転送
    するテーブルデータの転送情報が格納されている前記D
    MAデータのアドレスを指示することを特徴とする電子
    機器。
  7. 【請求項7】 前記DMAデータに前記転送先格納手段
    の何処に転送するかを示す書込アドレスも指示するよう
    にしたことを特徴とする請求項6記載の電子機器。
  8. 【請求項8】 前記DMAコントローラが、転送中に次
    に転送するテーブルデータの情報を示す前記DMAデー
    タをプリロードして格納するDMAデータプリロード部
    を有することを特徴とする請求項7記載の電子機器。
  9. 【請求項9】 前記CPUが、前記DMAコントローラ
    に対して転送要求を行ったか否かを管理する転送要求管
    理部を設けて、当該転送要求がなくなるまで前記DMA
    コントローラが連続して転送を行うようにしたことを特
    徴とする請求項6乃至8いずれか1項記載の電子機器。
  10. 【請求項10】 前記DMAコントローラが、前記転送
    先格納手段にデータ転送する際の転送要求であるDMA
    リクエスト信号を自己生成して出力するDMAリクエス
    ト発生部を備えたことを特徴とする請求項1乃至9いず
    れか1項記載の電子機器。
  11. 【請求項11】 前記DMAリクエスト信号の発生間隔
    が、任意設定できるように設けたことを特徴とする請求
    項10記載の電子機器。
JP2000083626A 2000-03-24 2000-03-24 電子機器 Pending JP2001273245A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000083626A JP2001273245A (ja) 2000-03-24 2000-03-24 電子機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000083626A JP2001273245A (ja) 2000-03-24 2000-03-24 電子機器

Publications (1)

Publication Number Publication Date
JP2001273245A true JP2001273245A (ja) 2001-10-05

Family

ID=18600226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000083626A Pending JP2001273245A (ja) 2000-03-24 2000-03-24 電子機器

Country Status (1)

Country Link
JP (1) JP2001273245A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100876537B1 (ko) 2007-05-04 2008-12-31 (주)씨앤에스 테크놀로지 멀티 파라메터 셋을 이용한 디엠에이 콘트롤러 장치 및제어 방법
KR100891508B1 (ko) * 2007-03-16 2009-04-06 삼성전자주식회사 가상 디엠에이를 포함하는 시스템
JP2017229115A (ja) * 2016-06-20 2017-12-28 株式会社デンソー モータ制御装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100891508B1 (ko) * 2007-03-16 2009-04-06 삼성전자주식회사 가상 디엠에이를 포함하는 시스템
KR100876537B1 (ko) 2007-05-04 2008-12-31 (주)씨앤에스 테크놀로지 멀티 파라메터 셋을 이용한 디엠에이 콘트롤러 장치 및제어 방법
JP2017229115A (ja) * 2016-06-20 2017-12-28 株式会社デンソー モータ制御装置

Similar Documents

Publication Publication Date Title
JP2545482B2 (ja) インタ―フェイス装置の転送パラメ―タ設定方法
KR910008460B1 (ko) 정보처리장치
JPH10149618A (ja) データ伝送方法、データ伝送装置及び媒体
JP4945125B2 (ja) メモリ制御装置
JP2001273245A (ja) 電子機器
JPH08197788A (ja) プリンタ制御装置の画像データ読出し回路
JP2570986B2 (ja) データ転送制御装置及び方法
JP3002406B2 (ja) グラフィックプロセッサ
JP2897693B2 (ja) 画像データの記憶方法、その記憶装置および画像形成装置
JPS6122330B2 (ja)
JPS62243075A (ja) 画像デ−タ転送装置
JP2806376B2 (ja) 画像処理装置および画像処理方法
JPH05143524A (ja) カウンタ制御方式
JPH0279149A (ja) 記録装置のデータ転送方式
JPH05334223A (ja) チャネル装置およびそのフレーム送受信方法
JP2000305878A (ja) 機能拡張システム及びそれに用いるデータ転送方法
JPH05210616A (ja) コンピュータ装置
JPH0512183A (ja) データ転送方式
JPH06195273A (ja) データ通信装置
JPS60163167A (ja) メモリ制御装置
JPS59122079A (ja) フアクシミリ装置におけるdmaコントロ−ラのアドレス変換方式
JPS6232505B2 (ja)
JPH02307149A (ja) 直接メモリアクセス制御方式
JPH0440177A (ja) 画像メモリ装置
JP2004145700A (ja) データ転送機構