JPH05216808A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH05216808A
JPH05216808A JP4196692A JP4196692A JPH05216808A JP H05216808 A JPH05216808 A JP H05216808A JP 4196692 A JP4196692 A JP 4196692A JP 4196692 A JP4196692 A JP 4196692A JP H05216808 A JPH05216808 A JP H05216808A
Authority
JP
Japan
Prior art keywords
transfer
processing device
dma
data
program
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
JP4196692A
Other languages
English (en)
Inventor
Fumiki Sato
文樹 佐藤
Koichi Fujita
紘一 藤田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP4196692A priority Critical patent/JPH05216808A/ja
Publication of JPH05216808A publication Critical patent/JPH05216808A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 ソフトウェアにより処理の一部を変更するこ
とができるようにする。 【構成】 DMA処理装置40の各機能を命令語に対応
付ける。DMA処理装置40のプログラム格納領域22
には命令語より成る転送処理手続を外部より入力するよ
うにし、そのDMA処理装置40は、入力された上記命
令語に対応する機能に従って転送処理を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は外部データ通信手段か
らのデータをメモリ手段に転送するDMA処理装置を備
えたデータ処理装置に関するものである。
【0002】
【従来の技術】図13は従来のダイレクト・メモリ・ア
クセス処理装置(以下、DMA処理装置という)を備え
たデータ処理装置の構成を示すブロック図であり、図1
において、1はCPUを示している。2,3はCPU1
の構成要素であって、2はCPU1に対する命令語のフ
ェッチやデータの入出力を行うためのバスインターフェ
ース手段(BIU)、3は行うべき命令語を保持する命
令レジスタ(IR)を示している。4はDMA処理装
置、5,6,7,8,9,10はDMA処理装置4の構
成要素であって、5はDMA処理装置の動作を決定する
制御レジスタ(CR)、6はDMA処理装置4によって
転送されるデータの転送元のアドレスを示す転送元アド
レスレジスタ(SA)、7はDMA処理装置4によって
転送されるデータの転送先のアドレスを示す転送先アド
レスレジスタ(DA)、8はDMA処理装置4によって
行われる転送の回数を示す転送回数レジスタ(TC)、
9はDMA処理装置4の制御手段、10は転送元から読
み出したデータを一時的に格納するデータレジスタ(D
R)を示している。11,12,13は、それぞれアド
レスバス,データバス,制御信号バスを示している。1
4は外部データ通信手段、15はメモリ手段で、これら
はアドレスバス11,データバス12,制御信号バス1
3を通じて、CPU1あるいはDMA処理装置4と接続
されている。
【0003】図15は、DMA処理装置4の制御レジス
タ5の内容を示した図である。図15において、16は
DMA転送における転送単位を示すビットで、「0」の
時は転送単位がバイトであることを示し、「1」の時は
転送単位がワードであることを示す。17はDMA転送
のモードを示すビットで、「0」の時はサイクルスチル
モードを示し、「1」の時はバーストモードを示してい
る。ここでサイクルスチルモードとは、DMA転送要求
があると1転送単位のDMA転送を行ってCPU1に復
帰する動作モードをいい、バーストモードとは、DMA
転送要求があると全ての転送を連続して行い途中でCP
U1には復帰しない動作モードのことをいう。18a,
18bは1転送単位のDMA転送を行ったあとの転送元
のアドレスの修正方法を示し、「00」の時はDMA転
送を行ったあとの転送元のアドレスはそのままの固定と
し、「01」の時は転送元のアドレスのインクリメント
を行い、「10」の時は転送元のアドレスのデクリメン
トを行い、また、「11」は未使用である。19a,1
9bは転送先のアドレスの修正方法を示し、「00」の
時はDMA転送を行ったあとの転送先のアドレスはその
ままの固定とし、「01」の時は転送先のアドレスのイ
ンクリメントを行い、「10」の時は転送先のアドレス
のデクリメントを行い、また、「11」は未使用であ
る。20はDMA転送有効フラグであり、「0」の時は
DMA処理装置4を使用しないことを示し、「1」の時
は使用することを示す。
【0004】上記のシステムは外部データ通信手段14
によって外部から送られてきたデータを受信して、この
データをメモリ手段15に格納する処理手続を行うもの
とする。この場合、データの通信速度がCPU1の処理
速度に比べて遅ければ、この処理手続は割り込み処理に
よって実現できる。即ち、外部からのデータを受信する
と、外部データ通信手段14はCPU1に対し割り込み
処理を要求する。CPU1はこの要求を受けて現在実行
中の処理を中断し、プログラム・ステータス・ワードや
プログラム・カウンタをスタックに退避して、上記処理
手続のためのプログラムに分岐する。このプログラムに
はCPU1の汎用レジスタの退避、外部データ通信手段
14からの受信データ読み出し、読み出したデータのメ
モリ手段15に対する書き込み等の命令が書かれてい
る。このプログラムをCPU1に実行させることで上記
処理手続を行うことができる。
【0005】しかし、通信速度が速い場合には、外部デ
ータ通信手段14から受信データを読み出す前に次のデ
ータが送られてくる場合もあり、割り込みによる処理手
続では不都合が生じる場合もある。この様なときには、
DMA処理装置4を使用する処理手続を行う必要があ
る。
【0006】このため、外部データ通信手段14の割り
込み要求信号は、DMA処理装置4に対するDMA転送
要求信号となるように配線されているものとする。ま
た、DMA処理装置4は、使用する前に各レジスタの初
期設定が必要なので、上記手続を行う前に、制御レジス
タ5には制御コード「10010000」を、転送元ア
ドレスレジスタ6には外部データ通信手段13の受信デ
ータの読み出しアドレスを、転送先アドレスレジスタ7
にはメモリ手段15の適当なアドレスを、転送回数レジ
スタ8には送られてくるデータのバイト数をCPUによ
って書き込んでおく。
【0007】外部データ通信手段14はデータを受信す
ると、割り込み要求信号を発生する。この信号は、DM
A転送要求信号としてDMA処理装置4に入力される。
これを受けてDMA処理装置4は、CPU1に対しホー
ルド要求信号を送る。CPU1はこれを受けると、実行
中の処理を中断し、アドレスバス11,データバス1
2,制御信号バス13を解放し、DMA処理装置4に対
しホールド・アクノリッジ信号を送る。DMA処理装置
4はこれを受けてDMAアクノリッジ信号を外部データ
通信手段14に送り、転送元アドレスレジスタ6に格納
されたアドレスによって外部データ通信手段14から受
信データを読み出し、データレジスタ10に一時的に格
納する。次に、このデータを転送先アドレスレジスタ8
に格納されたアドレスによってメモリ手段15に書き込
む。また同時に、転送先アドレスレジスタ7の内容のイ
ンクリメントを行い、転送回数レジスタ8の内容のデク
リメントを行う。この1転送単位のDMA転送が終了す
ると、DMA処理装置4はホールド要求信号を取り下
げ、これを受けてCPUは中断した処理を再開する。
【0008】
【発明が解決しようとする課題】従来のDMA処理装置
を備えたデータ処理装置のシステムは、以上のように構
成されているので、CPUの割り込みによる処理手続で
は間に合わない場合でもデータ転送を行うことができ
る。しかし、DMA処理装置の処理内容は制御レジスタ
によって決められる限定されたもので、目的に合わせて
処理の一部を変更したい場合等に対応できないとう問題
点があった。
【0009】この発明は、上記のような問題点を解消す
るためになされたもので、転送目的に合わせて処理の一
部を変更することができるDMA処理装置を備えたデー
タ処理装置を得ることを目的としている。
【0010】
【課題を解決するための手段】この第1の発明に係わる
データ処理装置は、複数の機能から成る転送処理手続に
従って、外部データ通信手段14の所定のアドレスに受
付けられたデータを、メモリ手段15の所定のアドレス
に書き込むDMA処理装置40を備えたデータ処理装置
において、上記DMA処理装置の各機能を命令語に対応
付けてテーブルとして記憶しておき、DMA処理装置に
は命令語より成る転送処理手続を外部より入力するよう
にし、上記DMA処理装置は、入力された上記命令語に
対応する機能を上記テーブルより抽出してこの機能に従
って転送処理を行う。
【0011】この第2の発明に係わるデータ処理装置
は、複数の機能から成る転送処理手続に従って、外部デ
ータ通信手段14の所定のアドレスに受付けられたデー
タを、メモリ手段の所定のアドレスに書き込むDMA処
理装置41と、このDMA処理装置を制御する中央処理
装置(CPU1)とを備えたデータ処理装置において、
上記DMA処理装置の各機能を命令語に対応付けてテー
ブルとして記憶しておき、上記DMA処理装置には命令
語より成る転送処理手続を外部より入力するようにし、
上記中央処理装置は、入力された上記命令語に対応する
機能を上記テーブルより抽出してこの機能に従って上記
DMA処理装置に転送処理を行わせる。
【0012】
【作用】この第1の発明によるデータ処理装置では、D
MA処理装置40は、入力された上記命令語に対応する
機能をテーブルより抽出してこの機能に従って転送処理
を行う。
【0013】この第2の発明によるデータ処理装置で
は、中央処理装置(CPU1)は、入力された上記命令
語に対応する機能をテーブルより抽出してこの機能に従
って上記DMA処理装置41に転送処理を行わせる。
【0014】
【実施例】以下、この発明の一実施例を図を用いて説明
する。図1は、この第1の発明の一実施例(第1の実施
例)のDMA処理装置を備えたデータ処理装置のシステ
ム構成を示すブロック図である。図1において1はCP
Uを示している。2,3はCPU1の構成要素であっ
て、2はCPU1に対する命令語のフェッチやデータの
入出力を行うためのバスインターフェース手段(BI
U)、3は行うべき命令語を保持する命令レジスタ(I
R)を示している。40はDMA処理装置を示してお
り、6,7,8,10,21,22,50,51,52
はDMA処理装置40の構成要素であって、6はDMA
処理装置40によって転送されるデータの転送元のアド
レスを示す転送元アドレスレジスタ(SA)、7はDM
A処理装置40によって転送されるデータの転送先のア
ドレスを示す転送先アドレスレジスタ(DA)、8はD
MA処理装置40によって行われる転送の回数を示す転
送回数レジスタ(TC)、10は転送元から読み出した
データを一時的に格納するデータレジスタ(DR)、2
1はDMA処理装置40の制御手段、22はDMA処理
装置40が行う処理手続のプログラムを格納する記憶手
段としてのプログラム格納領域を示している。50は転
送元の先頭アドレスを示す転送元先頭アドレスレジス
タ、51は転送先の先頭アドレスを示す転送先アドレス
レジスタ、52は転送回数の初期設定を行う転送回数初
期レジスタである。11,12,13は、それぞれアド
レスバス,データバス,制御信号バスを示している。ま
た、14は外部データ通信手段、15はメモリ手段で、
これらはアドレスバス11,データバス12,制御信号
バス13を通じて、CPU1あるいはDMA処理装置4
0と接続されている。26はCPU1が処理手続のプロ
グラムをプログラム格納領域22に書き込むために使用
する命令語転送バスである。
【0015】図2及び図3は、この第1の実施例のDM
A処理装置40を使用するために設けられた命令語の一
覧表(テーブル)である。図2,3中、25は後に続く
n個の命令をプログラム格納領域22に書き込むための
命令を示している。CPUによって外部より取込まれた
命令語にしたがって図2,図3のいずれかの機能が選択
的に抽出され、この抽出された機能に従って転送動作が
実行される。
【0016】この第一の発明の一実施例によるDMA処
理装置を備えたデータ処理装置のシステムで、従来の技
術と同様の処理を行う場合は、DMA転送を行う前に、
CPU1によって外部から取込まれる図4に示したプロ
グラムを実行させる。CPU1は、命令語「STDMA
4」25を見つけると、命令語が4命令であることを
判別し、この命令に続く4命令語を命令語転送バス26
を通じてプログラム格納領域22に書き込む。これによ
って、このプログラムの最初の命令語「STDMA
4」25を除いた部分がDMA処理装置40のプログラ
ム格納領域22に格納される。次に、CPUによって転
送元アドレスレジスタ6には外部データ通信手段14の
受信データの読み出しアドレス、転送先アドレスレジス
タ7にはメモリ手段15の適当なアドレスを書き込む。
この後、DMA処理装置40は転送回数レジスタ8に
「0」以外の数字が書き込まれることによってプログラ
ム格納領域22に格納されたプログラムの実行を開始す
る。プログラムの実行は制御手段21によって行われ
る。
【0017】DMA処理装置40は、DMA転送要求信
号を受けてDMA転送を開始できる状態になるまで命令
語「WAIT」を繰り返し実行している。外部データ通
信手段14はデータを受信すると、割り込み要求信号を
発生する。この信号は、DMA転送要求信号としてDM
A処理装置40に入力される。これを受けるとDMA処
理装置40は、CPU1に対しホールド要求信号を送
る。CPU1はこれを受けて、実行中の処理を中断し
て、アドレスバス11,データバス12,制御信号バス
13を解放し、DMA処理装置40に対しホールド・ア
クノリッジ信号を送る。DMA処理装置40はこれを受
けてDMAアクノリッジ信号を外部データ通信手段14
に送るとともに、次の命令語「LDB AU」を実行す
る。具体的には、図2のテーブル中の、この命令語に対
応する機能を実行する。これによって外部データ通信手
段14の転送元アドレスレジスタ6で指定されたアドレ
スから受信データが読み出される。次に命令語「STB
AI」に対応する図2中の機能が実行され、これによ
って命令語「LDB AU」の機能で読み出されたデー
タがメモリ手段15の転送先アドレスレジスタ7で指定
されたアドレスに書き込まれ、同時に、転送先アドレス
レジスタ7の内容のインクリメントが行われる。最後の
命令語「LOOP L1,L1」に対応する機能によっ
て転送回数レジスタ8の内容のデクリメントが行われ、
更にラベル「L1」即ちプログラム格納領域22に格納
された最初の命令語「WAIT」への分岐が行われる。
この様にして1転送単位のDMA転送が終了すると、D
MA処理装置40はホールド要求信号を取り下げ、これ
を受けてCPUは中断した処理を再開する。
【0018】上記のDMA転送では命令語「LDB A
U」で読み出したデータの長さと命令語「STB A
I」で書き込んだデータの長さはどちらも1バイトだ
が、命令語「STB AI」の代わりに命令語「STW
AI」を使用すればデータ長の変換が自動的に行われ
る。従って、データ長を変えたい場合でもソフトウェア
によるデータ処理を行う必要がない。
【0019】以上のことをさらに具体的に述べる。CP
U1からは外部メモリ(ROM,RAM)から送られて
きたDMA処理装置4に対するプログラム(図5にその
番地毎の内容を示す)がプログラム格納領域22に格納
される。DMA処理装置40はCPU1からのこのよう
なプログラム転送が終了すると、このプログラムに含ま
れる初期値設定プログラムF及び転送手続プログラムG
に書かれている命令語に対する機能を、図2,図3の一
覧表(テーブル)から抽出して、この機能に従って転送
処理を行う。なお、図2,図3の一覧表(テーブル)は
プログラム格納領域22にあらかじめ格納さている。従
って、CPU1からは命令語をDMA処理装置4に併合
して格納するだけであらかじめ各命令語毎に格納されて
いる機能にもとづき転送処理が実行される。ここで、D
MA処理装置40に対するプログラム及びフローチャー
トの一例を図6,図7と、図8,図9及び図10,図1
1にそれぞれ示す。このように、この第1の実施例によ
れば、外部からのプログラムを変更するだけで目的に合
致した種々の態様の転送手続が実行できる。
【0020】上記第1の実施例では、プログラム格納領
域22に格納されたプログラムの実行はDMA処理装置
40の制御手段21によって行われた。しかし、このプ
ログラムの実行をCPU1が行うように構成することも
可能である。以下に、第2の発明の実施例(第2の実施
例)を図について説明する。図13において、23は命
令レジスタ3に保持された命令語を解釈して命令の実行
を制御する命令解釈手段である。CPU1は、その命令
レジスタ23と、バスインターフェース手段2と、命令
レジスタ3とから構成されている。24はプログラム格
納領域に格納された命令語CPU1に送出するための命
令語送出手段、27はCPU1が処理手続のプログラム
の実行時に使用する内部バスである。41はDMA処理
装置であって、このDMA処理装置は、転送元先頭アド
レスレジスタ50と、転送元アドレスレジスタ6と、転
送先先頭アドレスレジスタ51と、転送先アドレスレジ
スタ7と、転送回数初期レジスタ52と、転送回数レジ
スタ8と、データレジスタ10と、制御手段21と、命
令語送出手段24と、プログラム格納領域22とから構
成されている。なお、この第2の実施例では、23,2
4,27を除く部分については、第1の実施例と同じ機
能の部分であるため、同符号を付しており、以下の説明
を省略する。
【0021】CPU1は内部バス27を通じてDMA処
理装置41の転送元アドレスレジスタ6、転送先アドレ
スレジスタ7、転送回数レジスタ8、データレジスタ1
0を使用することにより、図2及び図3の命令語の機能
を実行することが可能であり、またデータレジスタ10
をCPU内部の汎用レジスタと同様に扱うことが可能で
ある。まず、第1の実施例と同様に、CPU1によって
図4に示したプログラムを実行させる。これによって、
このプログラムの最初の命令語「STDMAn」を除い
た部分DMA処理装置41のプログラム格納領域22に
格納される。次に、CPU1によって転送元アドレスレ
ジスタ6には外部データ通信手段14の受信データの読
み出しアドレス、転送先アドレスレジスタ7にはメモリ
手段15の適当なアドレスを書き込む。この後、転送回
数レジスタ8に「0」以外の数字が書き込まれることに
よって制御手段21は動作可能になる。
【0022】外部データ通信手段14はデータを受信す
ると、割り込み要求信号を発生する。この信号は、DM
A転送要求信号としてDMA処理装置41に入力され
る。これを受けてDMA処理装置41は、CPU1に対
しホールド要求信号を送る。CPU1はこれを受けて、
実行中の処理を中断して、アドレスバス11,データバ
ス12,制御信号バス13を解放し、DMA処理装置4
1に対しホールド・アクノリッジ信号を送る。DMA処
理装置41はこれを受けてDMAアクノリッジ信号を外
部データ通信手段14に送るとともに、命令語「LDB
AU」を命令語送出実行手段24によってCPU1に
送出する。この命令語は命令レジスタ3に格納され、命
令語解釈手段23によって図2,図3のテーブルにもと
づいて解釈される。これによって外部データ通信手段1
4から受信データが読み出される。次に命令語「STB
AI」が送出され、これによって命令語「LDB A
U」で読み出されたデータがメモリ手段15に書き込ま
れ、同時に転送先アドレスレジスタ7の内容のインクリ
メントが行われる。最後の命令語「LOOP L1,L
1」によって転送回数レジスタ8の内容のデクリメント
が行われ、更にラベル「L1」即ち最初の命令語「WA
IT」への分岐が行われる。CPU1は命令語「WAI
T」を見つけるとDMA転送処理を中断する。この様に
して1転送単位のDMA転送が終了する。
【0023】更に、この実施例では命令語「LDB A
U」と命令語「STB AI」の間にデータ処理の手続
を挿入することも可能である。例えば、そこに命令語
「NOT DR」を置けばDMA転送の間にデータの反
転をすることが可能である。また、CPU1は、外部デ
ータ通信手段14から読み出したデータを演算してから
メモリ手段15に書き込んでもよい。これによれば、後
で演算する手間が省ける。
【0024】
【発明の効果】以上説明したように、第1,第2の発明
によれば、外部より入力された命令語に対応する機能を
あらかじめ設定されたテーブルより抽出してこの機能に
従って転送処理を行うようにしたため、MA転送の手続
をプログラムで記述できるので、このプログラムを変更
するだけで目的に合わせて処理の一部を変更することが
できる。
【図面の簡単な説明】
【図1】この第一の発明の一実施例によるDMA処理装
置を備えたデータ処理装置のシステム構成を示すブロッ
ク図である。
【図2】図1のDMA処理装置を使用するために設けら
れた命令語の一覧表を示す図である。
【図3】図1のDMA処理装置を使用するために設けら
れた命令語の一覧表を示す図である
【図4】図3に続く命令語の一覧表を示す図である。
【図5】図1のDMA処理装置を使用するためのプログ
ラムを示す図である。
【図6】外部より取込まれる命令語の配列パターンの一
例を示す図である。
【図7】外部から取込まれるプログラムの一例を示す図
である。
【図8】外部から取込まれる図6で示すプログラムのフ
ローチャートである。
【図9】外部から取込まれるプログラムの一例を示す図
である。
【図10】外部から取込まれる図8で示すプログラムの
フローチャートである。
【図11】外部から取込まれるプログラムの一例を示す
図である。
【図12】外部から取込まれる図10で示すプログラム
のフローチャートである。
【図13】この第2の発明の一実施例によるDMA処理
装置を備えたデータ処理装置のシステム構成を示すブロ
ック図である。
【図14】従来のDMA処理装置を備えたデータ処理装
置のシステム構成を示すブロック図である。
【図15】従来のDMA処理装置の制御レジスタの内容
を示した図である。
【符号の説明】
4,40,41 DMA処理装置 6 転送元アドレスレジスタ 7 転送先アドレスレジスタ 8 転送回数レジスタ 21 制御手段 22 プログラム格納領域 24 命令語送出手段 25 n個の命令をプログラム格納領域に書き込むため
の命令 26 命令語転送バス 27 内部バス
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成4年9月7日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正内容】
【書類名】 明細書
【発明の名称】 データ処理装置
【特許請求の範囲】
【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は外部データ通信手段か
らのデータをメモリ手段に転送するDMA処理装置を備
えたデータ処理装置に関するものである。
【0002】
【従来の技術】図14は従来のダイレクト・メモリ・ア
クセス処理装置(以下、DMA処理装置という)を備え
たデータ処理装置の構成を示すブロック図であり、図に
おいて、1はCPUを示している。2,3はCPU1の
構成要素であって、2はCPU1に対する命令語のフェ
ッチやデータの入出力を行うためのバスインターフェー
ス手段(BIU)、3は行うべき命令語を保持する命令
レジスタ(IR)を示している。4はDMA処理装置、
5,6,7,8,9,10はDMA処理装置4の構成要
素であって、5はDMA処理装置の動作を決定する制御
レジスタ(CR)、6はDMA処理装置4によって転送
されるデータの転送元のアドレスを示す転送元アドレス
レジスタ(SA)、7はDMA処理装置4によって転送
されるデータの転送先のアドレスを示す転送先アドレス
レジスタ(DA)、8はDMA処理装置4によって行わ
れる転送の回数を示す転送回数レジスタ(TC)、9は
DMA処理装置4の制御手段、10は転送元から読み出
したデータを一時的に格納するデータレジスタ(DR)
を示している。11,12,13は、それぞれアドレス
バス,データバス,制御信号バスを示している。14は
外部データ通信手段、15はメモリ手段で、これらはア
ドレスバス11,データバス12,制御信号バス13を
通じて、CPU1あるいはDMA処理装置4と接続され
ている。
【0003】図15は、DMA処理装置4の制御レジス
タ5の内容を示した図である。図15において、16は
DMA転送における転送単位を示すビットで、「0」の
時は転送単位がバイトであることを示し、「1」の時は
転送単位がワードであることを示す。17はDMA転送
のモードを示すビットで、「0」の時はサイクルスチル
モードを示し、「1」の時はバーストモードを示してい
る。ここでサイクルスチルモードとは、DMA転送要求
があると1転送単位のDMA転送を行ってCPU1に復
帰する動作モードをいい、バーストモードとは、DMA
転送要求があると全ての転送を連続して行い途中でCP
U1には復帰しない動作モードのことをいう。18a,
18bは1転送単位のDMA転送を行ったあとの転送元
のアドレスの修正方法を示し、「00」の時はDMA転
送を行ったあとの転送元のアドレスはそのままの固定と
し、「01」の時は転送元のアドレスのインクリメント
を行い、「10」の時は転送元のアドレスのデクリメン
トを行い、また、「11」は未使用である。19a,1
9bは転送先のアドレスの修正方法を示し、「00」の
時はDMA転送を行ったあとの転送先のアドレスはその
ままの固定とし、「01」の時は転送先のアドレスのイ
ンクリメントを行い、「10」の時は転送先のアドレス
のデクリメントを行い、また、「11」は未使用であ
る。20はDMA転送有効フラグであり、「0」の時は
DMA処理装置4を使用しないことを示し、「1」の時
は使用することを示す。
【0004】上記のシステムは外部データ通信手段14
によって外部から送られてきたデータを受信して、この
データをメモリ手段15に格納する処理手続を行うもの
とする。この場合、データの通信速度がCPU1の処理
速度に比べて遅ければ、この処理手続は割り込み処理に
よって実現できる。即ち、外部からのデータを受信する
と、外部データ通信手段14はCPU1に対し割り込み
処理を要求する。CPU1はこの要求を受けて現在実行
中の処理を中断し、プログラム・ステータス・ワードや
プログラム・カウンタをスタックに退避して、上記処理
手続のためのプログラムに分岐する。このプログラムに
はCPU1の汎用レジスタの退避、外部データ通信手段
14からの受信データ読み出し、読み出したデータのメ
モリ手段15に対する書き込み等の命令が書かれてい
る。このプログラムをCPU1に実行させることで上記
処理手続を行うことができる。
【0005】しかし、通信速度が速い場合には、外部デ
ータ通信手段14から受信データを読み出す前に次のデ
ータが送られてくる場合もあり、割り込みによる処理手
続では不都合が生じる場合もある。この様なときには、
DMA処理装置4を使用する処理手続を行う必要があ
る。
【0006】このため、外部データ通信手段14の割り
込み要求信号は、DMA処理装置4に対するDMA転送
要求信号となるように配線されているものとする。ま
た、DMA処理装置4は、使用する前に各レジスタの初
期設定が必要なので、上記手続を行う前に、制御レジス
タ5には制御コード「10010000」を、転送元ア
ドレスレジスタ6には外部データ通信手段13の受信デ
ータの読み出しアドレスを、転送先アドレスレジスタ7
にはメモリ手段15の適当なアドレスを、転送回数レジ
スタ8には送られてくるデータのバイト数をCPUによ
って書き込んでおく。
【0007】外部データ通信手段14はデータを受信す
ると、割り込み要求信号を発生する。この信号は、DM
A転送要求信号としてDMA処理装置4に入力される。
これを受けてDMA処理装置4は、CPU1に対しホー
ルド要求信号を送る。CPU1はこれを受けると、実行
中の処理を中断し、アドレスバス11,データバス1
2,制御信号バス13を解放し、DMA処理装置4に対
しホールド・アクノリッジ信号を送る。DMA処理装置
4はこれを受けてDMAアクノリッジ信号を外部データ
通信手段14に送り、転送元アドレスレジスタ6に格納
されたアドレスによって外部データ通信手段14から受
信データを読み出し、データレジスタ10に一時的に格
納する。次に、このデータを転送先アドレスレジスタ8
に格納されたアドレスによってメモリ手段15に書き込
む。また同時に、転送先アドレスレジスタ7の内容のイ
ンクリメントを行い、転送回数レジスタ8の内容のデク
リメントを行う。この1転送単位のDMA転送が終了す
ると、DMA処理装置4はホールド要求信号を取り下
げ、これを受けてCPUは中断した処理を再開する。
【0008】
【発明が解決しようとする課題】従来のDMA処理装置
を備えたデータ処理装置のシステムは、以上のように構
成されているので、CPUの割り込みによる処理手続で
は間に合わない場合でもデータ転送を行うことができ
る。しかし、DMA処理装置の処理内容は制御レジスタ
によって決められる限定されたもので、目的に合わせて
処理の一部を変更したい場合等に対応できないとう問題
点があった。
【0009】この発明は、上記のような問題点を解消す
るためになされたもので、転送目的に合わせて処理の一
部を変更することができるDMA処理装置を備えたデー
タ処理装置を得ることを目的としている。
【0010】
【課題を解決するための手段】この第1の発明に係わる
データ処理装置は、複数の機能から成る転送処理手続に
従って、データを転送するDMA処理装置40を備えた
データ処理装置において、上記DMA処理装置は、各機
能に対応した命令語より成る転送処理手続を格納するプ
ログラム格納手段と、この格納手段に格納された命令語
を実行する手段を備え、このプログラム格納領域には命
令語より成る転送処理手続を外部より入力する。
【0011】この第2の発明に係わるデータ処理装置
は、複数の機能から成る転送処理手続に従って、DMA
処理装置41と、このDMA処理装置と結合した中央処
理装置(CPU1)とを備えたデータ処理装置におい
て、上記DMA処理装置は各機能に対応した命令語より
成る転送処理手続を格納するプログラム格納手段と、こ
の格納手段に格納された命令語を上記中央処理装置に送
出する手段を備え、上記中央処理装置は上記送出する手
段によって送出された上記命令語を実行する手段を備
え、このプログラム格納領域には命令語より成る転送処
理手続を外部より入力する。
【0012】
【作用】この第1の発明によるデータ処理装置では、D
MA処理装置40は、入力された上記命令語をプログラ
ム格納領域より読み出して、上記命令語を実行すること
によって転送処理を行う。
【0013】この第2の発明によるデータ処理装置で
は、DMA処理装置は、入力された上記命令語をプログ
ラム格納領域より読み出し、中央処理装置に送出して、
中央処理装置(CPU1)が上記命令語を実行すること
によって転送処理を行う。
【0014】
【実施例】以下、この発明の一実施例を図を用いて説明
する。図1は、この第1の発明の一実施例(第1の実施
例)のDMA処理装置を備えたデータ処理装置のシステ
ム構成を示すブロック図である。図1において1はCP
Uを示している。2,3はCPU1の構成要素であっ
て、2はCPU1に対する命令語のフェッチやデータの
入出力を行うためのバスインターフェース手段(BI
U)、3は行うべき命令語を保持する命令レジスタ(I
R)を示している。40はDMA処理装置を示してお
り、6,7,8,10,21,22,50,51,52
はDMA処理装置40の構成要素であって、6はDMA
処理装置40によって転送されるデータの転送元のアド
レスを示す転送元アドレスレジスタ(SA)、7はDM
A処理装置40によって転送されるデータの転送先のア
ドレスを示す転送先アドレスレジスタ(DA)、8はD
MA処理装置40によって行われる転送の回数を示す転
送回数レジスタ(TC)、10は転送元から読み出した
データを一時的に格納するデータレジスタ(DR)、2
1はDMA処理装置40の実行手段としての制御手段、
22はDMA処理装置40が行う処理手続のプログラム
を格納するプログラム格納手段としてのプログラム格納
領域を示している。50は転送元の先頭アドレスを示す
転送元先頭アドレスレジスタ、51は転送先の先頭アド
レスを示す転送先アドレスレジスタ、52は転送回数の
初期設定を行う転送回数初期レジスタである。11,1
2,13は、それぞれアドレスバス,データバス,制御
信号バスを示している。また、14は外部データ通信手
段、15はメモリ手段で、これらはアドレスバス11,
データバス12,制御信号バス13を通じて、CPU1
あるいはDMA処理装置40と接続されている。26は
CPU1が処理手続のプログラムをプログラム格納領域
22に書き込むために使用する命令語転送バスである。
【0015】図2,図3及び図4は、この第1の実施例
のDMA処理装置40を使用するために設けられた命令
語の一覧表(テーブル)である。図2中、25は後に続
くn個の命令をプログラム格納領域22に書き込むため
の命令を示している。CPUによって外部より取込まれ
た命令語にしたがって図2,図3,図4のいずれかの機
能が選択され、この選択された機能に従って転送動作が
実行される。
【0016】この第一の発明の一実施例によるDMA処
理装置を備えたデータ処理装置のシステムで、従来の技
術と同様の処理を行う場合は、DMA転送を行う前に、
CPU1によって外部から取込まれる図5に示したプロ
グラムを実行させる。CPU1は、命令語「STDMA
7」25を見つけると、命令語が7命令であることを
判別し、この命令に続く7命令語を命令語転送バス26
を通じてプログラム格納領域22に書き込む。これによ
って、このプログラムの最初の命令語「STDMA
7」25を除いた部分がDMA処理装置40のプログラ
ム格納領域22に格納される。また、プログラムの実行
は制御手段21の制御によって行われる。
【0017】DMA処理装置40は、「MOV SA
φ,x」,「MOV DAφ,y」及び「MOV TC
φ,z」を実行したあと、DMA転送要求信号を受けて
DMA転送を開始できる状態になるまで命令語「WAI
T」を実行した後、停止している。外部データ通信手段
14はデータを受信すると、割り込み要求信号を発生す
る。この信号は、DMA転送要求信号としてDMA処理
装置40に入力される。これを受けるとDMA処理装置
40は、CPU1に対しホールド要求信号を送る。CP
U1はこれを受けて、実行中の処理を中断して、アドレ
スバス11,データバス12,制御信号バス13を解放
し、DMA処理装置40に対しホールド・アクノリッジ
信号を送る。DMA処理装置40はこれを受けてDMA
アクノリッジ信号を外部データ通信手段14に送るとと
もに、次の命令語「LDB AU」を実行する。具体的
には、図2のテーブル中の、この命令語に対応する機能
を実行する。これによって外部データ通信手段14の転
送元アドレスレジスタ6で指定されたアドレスから受信
データが読み出される。次に命令語「STB AI」に
対応する図2中の機能が実行され、これによって命令語
「LDB AU」の機能で読み出されたデータがメモリ
手段15の転送先アドレスレジスタ7で指定されたアド
レスに書き込まれ、同時に、転送先アドレスレジスタ7
の内容のインクリメントが行われる。最後の命令語「L
OOP L1,L1」に対応する機能によって転送回数
レジスタ8の内容のデクリメントが行われ、更にラベル
「L1」即ちプログラム格納領域22に格納された最初
の命令語「WAIT」への分岐が行われる。この様にし
て1転送単位のDMA転送が終了すると、DMA処理装
置40はホールド要求信号を取り下げ、これを受けてC
PUは中断した処理を再開する。
【0018】上記のDMA転送では命令語「LDB A
U」で読み出したデータの長さと命令語「STB A
I」で書き込んだデータの長さはどちらも1バイトだ
が、命令語「STB AI」の代わりに命令語「STW
AI」を使用すればデータ長の変換が自動的に行われ
る。従って、データ長を変えたい場合でもソフトウェア
によるデータ処理を行う必要がない。
【0019】以上のことをさらに具体的に述べる。CP
U1からは外部メモリ(ROM,RAM)から送られて
きたDMA処理装置4に対するプログラム(図6にその
番地毎の内容を示す)がプログラム格納領域22に格納
される。DMA処理装置40はCPU1からのこのよう
なプログラム転送が終了すると、このプログラムに含ま
れる初期値設定プログラムF及び転送手続プログラムG
に書かれている命令語に対する機能を、図2,図3,図
4の一覧表(テーブル)に基づき、制御手段21の制御
に従って転送処理を行う。従って、CPU1からは命令
語をDMA処理装置4に格納するだけであらかじめ各命
令語毎に格納されている機能にもとづき転送処理が実行
される。ここで、DMA処理装置40に対するプログラ
ム及びフローチャートの一例を図7,図8と、図9,図
10及び図11,図12にそれぞれ示す。このように、
この第1の実施例によれば、外部からのプログラムを変
更するだけで目的に合致した種々の態様の転送手続が実
行できる。
【0020】上記第1の実施例では、プログラム格納領
域22に格納されたプログラムの実行はDMA処理装置
40の制御手段21の制御によって行われた。しかし、
このプログラムの実行をCPU1が行うように構成する
ことも可能である。以下に、第2の発明の実施例(第2
の実施例)を図について説明する。図13において、2
3は命令レジスタ3に保持された命令語を解釈して命令
の実行を制御する命令解釈手段である。CPU1は、そ
の命令レジスタ23と、バスインターフェース手段2
と、命令レジスタ3とから構成されている。24はプロ
グラム格納領域に格納された命令語をCPU1に送出す
るための送出手段としての命令語送出手段、27はCP
U1が処理手続のプログラムの実行時に使用する内部バ
スである。41はDMA処理装置であって、このDMA
処理装置は、転送元先頭アドレスレジスタ50と、転送
元アドレスレジスタ6と、転送先先頭アドレスレジスタ
51と、転送先アドレスレジスタ7と、転送回数初期レ
ジスタ52と、転送回数レジスタ8と、データレジスタ
10と、制御手段21と、命令語送出手段24と、プロ
グラム格納領域22とから構成されている。なお、この
第2の実施例では、23,24,27を除く部分につい
ては、第1の実施例と同じ機能の部分であるため、同符
号を付しており、以下の説明を省略する。
【0021】CPU1は内部バス27を通じてDMA処
理装置41の転送元アドレスレジスタ6、転送先アドレ
スレジスタ7、転送回数レジスタ8、データレジスタ1
0等を使用することにより、図2,図3及び図4の命令
語の機能を実行することが可能であり、またデータレジ
スタ10をCPU内部の汎用レジスタと同様に扱うこと
が可能である。まず、第1の実施例と同様に、CPU1
によって図4に示したプログラムを実行させる。これに
よって、命令語「MOV SAφ,x」,「MOV D
Aφ,y」,「MOV TCφ,z」が実行されて初期
設定がなされ、次に命令語「STDMA n」より後ろ
のDMA処理のプログラムがプログラム格納領域22に
格納される。
【0022】外部データ通信手段14はデータを受信す
ると、割り込み要求信号を発生する。この信号は、DM
A転送要求信号としてDMA処理装置41に入力され
る。これを受けてDMA処理装置41は、CPU1に対
しホールド要求信号を送る。CPU1はこれを受けて、
実行中の処理を中断して、アドレスバス11,データバ
ス12,制御信号バス13を解放し、DMA処理装置4
1に対しホールド・アクノリッジ信号を送る。DMA処
理装置41はこれを受けてDMAアクノリッジ信号を外
部データ通信手段14に送るとともに、命令語「LDB
AU」を命令語送出実行手段24によってCPU1に
送出する。この命令語は命令レジスタ3に格納され、命
令語解釈手段23によって図2,図3及び図4のテーブ
ルにもとづいて解釈される。これによって外部データ通
信手段14から受信データが読み出される。次に命令語
「STB AI」が送出され、これによって命令語「L
DBAU」で読み出されたデータがメモリ手段15に書
き込まれ、同時に転送先アドレスレジスタ7の内容のイ
ンクリメントが行われる。最後の命令語「LOOPL
1,L1」によって転送回数レジスタ8の内容のデクリ
メントが行われ、更にラベル「L1」即ち最初の命令語
「WAIT」への分岐が行われる。CPU1は命令語
「WAIT」を見つけるとDMA転送処理を中断する。
この様にして1転送単位のDMA転送が終了する。
【0023】更に、この実施例では命令語「LDB A
U」と命令語「STB AI」の間にデータ処理の手続
を挿入することも可能である。例えば、そこに命令語
「NOT DR」を置けばDMA転送の間にデータの反
転をすることが可能である。また、CPU1は、外部デ
ータ通信手段14から読み出したデータを演算してから
メモリ手段15に書き込んでもよい。これによれば、後
で演算する手間が省ける。
【0024】
【発明の効果】以上説明したように、第1,第2の発明
によれば、外部より入力された命令語に対応する機能を
あらかじめ設定されたテーブルより抽出してこの機能に
従って転送処理を行うようにしたため、MA転送の手続
をプログラムで記述できるので、このプログラムを変更
するだけで目的に合わせて処理の一部を変更することが
できる。
【図面の簡単な説明】
【図1】この第一の発明の一実施例によるDMA処理装
置を備えたデータ処理装置のシステム構成を示すブロッ
ク図である。
【図2】図1のDMA処理装置を使用するために設けら
れた命令語の一覧表を示す図である。
【図3】図1のDMA処理装置を使用するために設けら
れた命令語の一覧表を示す図である
【図4】図3に続く命令語の一覧表を示す図である。
【図5】図1のDMA処理装置を使用するためのプログ
ラムを示す図である。
【図6】外部より取込まれる命令語の配列パターンの一
例を示す図である。
【図7】外部から取込まれるプログラムの一例を示す図
である。
【図8】外部から取込まれる図6で示すプログラムのフ
ローチャートである。
【図9】外部から取込まれるプログラムの一例を示す図
である。
【図10】外部から取込まれる図8で示すプログラムの
フローチャートである。
【図11】外部から取込まれるプログラムの一例を示す
図である。
【図12】外部から取込まれる図10で示すプログラム
のフローチャートである。
【図13】この第2の発明の一実施例によるDMA処理
装置を備えたデータ処理装置のシステム構成を示すブロ
ック図である。
【図14】従来のDMA処理装置を備えたデータ処理装
置のシステム構成を示すブロック図である。
【図15】従来のDMA処理装置の制御レジスタの内容
を示した図である。
【符号の説明】 4,40,41 DMA処理装置 6 転送元アドレスレジスタ 7 転送先アドレスレジスタ 8 転送回数レジスタ 21 制御手段 22 プログラム格納領域 24 命令語送出手段 25 n個の命令をプログラム格納領域に書き込むため
の命令 26 命令語転送バス 27 内部バス
【手続補正3】
【補正対象書類名】図面
【補正対象項目名】図3
【補正方法】変更
【補正内容】
【図3】
【手続補正4】
【補正対象書類名】図面
【補正対象項目名】図5
【補正方法】変更
【補正内容】
【図5】
【手続補正5】
【補正対象書類名】図面
【補正対象項目名】図13
【補正方法】変更
【補正内容】
【図13】

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 複数の機能から成る転送処理手続に従っ
    て、外部データ通信手段の所定のアドレスに受付けられ
    たデータを、メモリ手段の所定のアドレスに書き込むD
    MA処理装置を備えたデータ処理装置において、上記D
    MA処理装置の各機能を命令語に対応付けてテーブルと
    して記憶しておき、DMA処理装置には命令語より成る
    転送処理手続を外部より入力するようにし、上記DMA
    処理装置は、入力された上記命令語に対応する機能を上
    記テーブルより抽出して上記機能に従って転送処理を行
    うことを特徴とするデータ処理装置。
  2. 【請求項2】 複数の機能から成る転送処理手続に従っ
    て、外部データ通信手段の所定のアドレスに受付けられ
    たデータを、メモリ手段の所定のアドレスに書き込むD
    MA処理装置と、このDMA処理装置を制御する中央処
    理装置とを備えたデータ処理装置において、上記DMA
    処理装置の各機能を命令語に対応付けてテーブルとして
    記憶しておき、DMA処理装置には命令語より成る転送
    処理手続を外部より入力するようにし、上記中央処理装
    置は、入力された上記命令語に対応する機能を上記テー
    ブルより抽出してこの機能に従って上記DMA処理装置
    に転送処理を行わせることを特徴とするデータ処理装
    置。
JP4196692A 1992-01-31 1992-01-31 データ処理装置 Pending JPH05216808A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4196692A JPH05216808A (ja) 1992-01-31 1992-01-31 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4196692A JPH05216808A (ja) 1992-01-31 1992-01-31 データ処理装置

Publications (1)

Publication Number Publication Date
JPH05216808A true JPH05216808A (ja) 1993-08-27

Family

ID=12622933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4196692A Pending JPH05216808A (ja) 1992-01-31 1992-01-31 データ処理装置

Country Status (1)

Country Link
JP (1) JPH05216808A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7299302B2 (en) 2004-03-23 2007-11-20 Fujitsu Limited Direct memory access control apparatus and method
US7640375B2 (en) 2005-01-27 2009-12-29 Fujitsu Limited DMA controller, method, information processing system, and program for transferring information blocks comprising data and descriptors

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03158952A (ja) * 1989-11-17 1991-07-08 Hitachi Ltd Dmaコントローラおよび情報処理システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03158952A (ja) * 1989-11-17 1991-07-08 Hitachi Ltd Dmaコントローラおよび情報処理システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7299302B2 (en) 2004-03-23 2007-11-20 Fujitsu Limited Direct memory access control apparatus and method
US7640375B2 (en) 2005-01-27 2009-12-29 Fujitsu Limited DMA controller, method, information processing system, and program for transferring information blocks comprising data and descriptors

Similar Documents

Publication Publication Date Title
EP0464615B1 (en) Microcomputer equipped with DMA controller
JPH10187642A (ja) マイクロプロセッサ及びマルチプロセッサシステム
JP2531760B2 (ja) ベクトル処理装置
JPH08320795A (ja) プログラム制御システム
JPH05216808A (ja) データ処理装置
JPH05108548A (ja) Dmaコントローラ
US5640598A (en) Data transfer processing system
US6134642A (en) Direct memory access (DMA) data transfer requiring no processor DMA support
JPH0414376B2 (ja)
JPH06103223A (ja) データ処理装置
JPS59218569A (ja) マイクロ・コンピユ−タ
JPH05242009A (ja) 直接メモリアクセス装置
JP2871171B2 (ja) マイクロコンピュータ
JPH0312768A (ja) I/oコントローラ
JPH10105413A (ja) 割込処理システム
JP2806690B2 (ja) マイクロプロセッサ
JP2872042B2 (ja) 共有メモリアクセス方式
JPH0619817A (ja) 通信プロセッサ
JPH05120203A (ja) Dma制御方式
JPH0713920A (ja) Dma転送方法
JPS6252900B2 (ja)
JPH02197961A (ja) 情報処理装置
JPH0414378B2 (ja)
JPS63208945A (ja) 情報処理装置
JPS6223342B2 (ja)