米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 株式会社日立製作所

発明の名称 データ転送制御回路およびデータ処理装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2003−114865(P2003−114865A)
公開日 平成15年4月18日(2003.4.18)
出願番号 特願2001−308994(P2001−308994)
出願日 平成13年10月4日(2001.10.4)
代理人 【識別番号】100085811
【弁理士】
【氏名又は名称】大日方 富雄
【テーマコード(参考)】
5B061
【Fターム(参考)】
5B061 BA03 DD08 DD11 
発明者 上原 素記 / ▲高▼須賀 知哉 / 鈴木 高明 / 越戸 孝司
要約 課題
DMA転送要求を保持するリクエストキューを備えたDMAコントローラにおいて、不要なDMA転送を実行しなくてもリクエストキューのみをクリアすることができるDMAコントローラを実現する。

解決手段
DMAコントローラ(130)の複数のチャネルのそれぞれに対応して設けられているデータ転送制御のためのレジスタ(315)に対応するチャネルのデータ転送要求の無効を指定するビット(QCL)を設けるとともに、DMAコントローラに供給される所定のコマンドコードをデコードして指定されたチャネルに対応したキューに保持されているデータ転送要求を無効にする信号を生成する回路(デコーダ332)を設けるようにした。
特許請求の範囲
【請求項1】 中央処理ユニットを介さずにメモリと周辺回路もしくは周辺装置との間のデータ転送を制御するデータ転送制御回路であって、複数のチャネルに関してデータの転送制御が可能に構成され、前記複数のチャネルの少なくとも一部のチャネルに対応して複数のデータ転送要求を保持可能なキューを備えるとともに、上記キューに保持されているデータ転送要求を無効にする無効化手段が設けられていることを特徴とするデータ転送制御回路。
【請求項2】 少なくとも中央処理ユニットと、該中央処理ユニットを介さずにメモリと周辺回路もしくは周辺装置との間のデータ転送を制御するデータ転送制御回路とを備えたデータ処理装置であって、上記データ転送制御回路は、複数のチャネルに関してデータの転送制御が可能に構成され、前記複数のチャネルの少なくとも一部のチャネルに対応して複数のデータ転送要求を保持可能なキューを備えるとともに、上記キューに保持されているデータ転送要求を無効にする無効化手段が設けられていることを特徴とするデータ処理装置。
【請求項3】 上記複数のチャネルのそれぞれに対応してデータ転送制御のためのレジスタを備え、これらのレジスタには対応するチャネルのデータ転送要求の無効を指定するビットが設けられ、該ビットが上記中央処理ユニットによって操作されることにより対応するチャネルのデータ転送要求の無効にされるように構成されていることを特徴とする請求項2に記載のデータ処理装置。
【請求項4】 上記無効化手段は、上記データ転送制御回路に供給される所定のコマンドコードをデコードして指定されたチャネルに対応したキューに保持されているデータ転送要求を無効にする信号を生成するデコーダにより構成されていることを特徴とする請求項2に記載のデータ処理装置。
【請求項5】 上記キューを無効にすべきチャネルを指定するコードは、上記コマンドのデータ転送要求時にデータ転送回数を指定するコードが格納されるフィールドを利用して与えられるように構成されてなることを特徴とする請求項5に記載のデータ処理装置。
【請求項6】 少なくとも中央処理ユニットと、該中央処理ユニットを介さずにメモリと周辺回路もしくは周辺装置との間のデータ転送を制御するデータ転送制御回路とを備えたデータ処理装置であって、上記データ転送制御回路は、複数のチャネルに関してデータの転送制御が可能に構成され、前記複数のチャネルの少なくとも一部のチャネルに対応して複数のデータ転送要求を保持可能なキューを備えるとともに、上記キューに保持されているデータ転送要求を無効にするための信号を入力する端子が設けられていることを特徴とするデータ処理装置。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明は、マイクロコンピュータシステムにおけるDMA(ダイレクトメモリアクセス)データ転送技術さらにはDMA転送要求を一時的に保管するキューの制御方式に適用して有効な技術に関し、例えばマイクロプロセッサもしくはマイクロコンピュータに内蔵されるDMAコントローラに利用して有効な技術に関する。
【0002】
【従来の技術】中央処理ユニット(以下、CPUと称する)と、タイマ回路やシリアルコミュニケーションインタフェース回路等の周辺モジュールを含むワンチップのマイクロコンピュータを用いたシステムにおいて、メモリや周辺装置の間でCPUを介さずに直接データの転送を行なえるようにするため、DMAコントローラが用いられる。DMAコントローラは、マイクロコンピュータとは別個のLSIとして構成されることもあるが、最近ではマイクロコンピュータやマイクロプロセッサに内蔵されることが多くなっている。かかるDMAコントローラには、DMA転送を実行中に次のDMA転送要求を受け付けることができるようにするため、リクエストキューと呼ばれるFIFO(ファーストインファーストアウト)メモリが設けられることがある。
【0003】
【発明が解決しようとする課題】従来のDMAコントローラにおいては、リクエストキューをクリアする機能が設けられていないため、リクエストキューに転送要求が残ったままDMA転送が終了することがある。この場合、リクエストキューに残っているDMA転送要求を消化するには本来必要でないDMA転送を実行しなければならないため、システムのスループットが低下してしまう。
【0004】また、DMA転送要求を行なう周辺装置にDMA転送要求の出力回数を確認できるカウンタなどの回路を設ければ、リクエストキューに転送要求が残ったままDMA転送が終了するのを回避することができるが、そのようにするとユーザの設計負担が大きくなると共にシステムも複雑かつコスト高になるという不具合が生じる。
【0005】一方、従来のDMAコントローラには、複数の転送チャネルに対応して設けられている全てのリクエストキューをクリアできる機能を有するものもあるが、このクリアを行なうと、DMAコントローラの制御レジスタ等もリセットされるように構成されていた。そのため、連続してDMA転送を実行したい場合にもリクエストキューをクリアすると制御レジスタの設定を再度やり直さなくてはならないので、DMA転送処理が遅くなってしまうという課題があった。
【0006】本発明の目的は、リクエストキューのみをクリアすることができるようにして制御レジスタの設定をやり直さなくてもDMA転送処理を実行できる転送制御回路(DMAコントローラ)もしくはそれを内蔵したマイクロプロセッサのようなデータ処理装置を提供することにある。
【0007】本発明の他の目的は、不要なDMA転送を実行しなくてもリクエストキューをクリアすることができるようにしてシステムのスループットを向上できる転送制御回路もしくはそれを内蔵したデータ処理装置を提供することにある。
【0008】本発明のさらに他の目的は、DMA転送要求を行なう周辺装置にDMA転送要求の出力回数を確認できるようにするためのカウンタなどの回路を設けることなく、リクエストキューに転送要求が残ったままDMA転送が終了するのを回避することができるようにして、ユーザの設計負担が大きくなったりシステムが複雑になるのを防止できる転送制御回路もしくはそれを内蔵したデータ処理装置を提供することにある。
【0009】この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添附図面から明らかになるであろう。
【0010】
【課題を解決するための手段】本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。すなわち、CPU(中央処理ユニット)を介さずに、複数のチャネルに関してDMA転送制御が可能に構成され前記複数のチャネルの少なくとも一部のチャネルに対応して複数のデータ転送要求を保持可能なリクエストキューを有するDMAコントローラもしくはDMAコントローラを備えたマイクロプロセッサのようなデータ処理装置において、DMAコントローラに、リクエストキューに保持されているデータ転送要求をクリアすることができるような機能を設けるようにしたものである。
【0011】上記した手段によれば、制御レジスタの設定をやり直さなくてもDMA転送処理を実行できるとともに、不要なDMA転送を実行しなくてもリクエストキューをクリアできるため、システムのスループットが向上するようになる。また、キューをクリアできるため、DMA転送要求を行なう周辺装置にDMA転送要求の出力回数を確認できるようにするためのカウンタなどの回路を設けることなく、リクエストキューに転送要求が残ったままDMA転送が終了するのを回避することができるようになり、これによってユーザの設計負担が大きくなったりシステムが複雑になるのを防止することができる。
【0012】上記リクエストキューをクリアする機能を実現する方式としては、複数のチャネルのそれぞれに対応してデータ転送制御のためのレジスタに、対応するチャネルのデータ転送要求の無効を指定するビットを設けたり、DMAコントローラに供給される所定のコマンドコードをデコードして指定されたチャネルに対応したリクエストキューに保持されているデータ転送要求を無効にする信号を生成するデコーダを設けたりする方式が良い。これにより、ソフトウェアまたはハードウェアのいずれでもリクエストキューをクリアできるようになる。
【0013】
【発明の実施の形態】以下、本発明の好適な実施例を図面に基づいて説明する。図1には、本発明を、DMAコントローラを備えたマイクロプロセッサに適用した場合の一実施例の概略構成が示されている。特に制限されないが、図1に示されている各回路ブロックは、公知の半導体集積回路の製造技術により、単結晶シリコンのような1個の半導体チップ上に形成されている。
【0014】図1に示されているように、この実施例のマイクロプロセッサは、プログラムの命令を解読してデータの演算処理を行なったりチップ全体の制御を行なうプログラム制御方式の中央処理ユニット(CPU)111と、タイマ回路やシリアルコミュニケーションインタフェース回路等の内部周辺モジュール200と、CPU111を介さずに外部のハードディスク装置のような外部周辺装置と外部メモリ等との間でDMA方式のデータ転送制御を行なうDMAコントローラ(DMAC)130とを備えており、これらの回路は、内部アドレスバスIABおよび内部データバスIDBを介して互いに接続されている。
【0015】また、内部バスIAB,IDBと外部バスとの間にあって、バスサイクル数や信号のタイミングなどのバス状態を制御してCPU111や内部周辺モジュール200、DMAコントローラ130と外部周辺装置との間の信号送受信の橋渡しをするバスステートコントローラ140が設けられている。このバスステートコントローラBSCには、DMA転送などの際に入出力されるデータを一時的に保持する例えば32バイトのような記憶容量を有するデータバッファDBFが設けられている。
【0016】DMAコントローラ(DMAC)130は、DMACモジュール310とDDTモジュール330とから構成されている。DMACモジュール310は2チャネルすなわちDMA転送をしたい外部周辺装置を2つまで接続可能なシステムに対応するモジュール、DDTモジュール330は3チャネル以上の外部周辺装置からのデータ転送要求を可能にするためのモジュールである。このうち、DMACモジュール310は単独で搭載可能なモジュールであるのに対し、DDTモジュール330はDMACモジュール310と組み合わせることにより有効に機能するモジュールである。
【0017】上記DMACモジュール310には、DDTモードを有効にするか無効にするかを指定するビットDDTやDDTモードで外部周辺装置からのデータ転送要求受付け可能なチャネル数を4チャネルまたは8チャネルに切り替えるためのビットDBLなどを有する図2(A)のようなオペレーションレジスタ(DMAOR)311が設けられており、CPU111がソフトウェア処理でこのオペレーションレジスタ(DMAOR)311のDDTビットに“1”を立てることによって、DDTモードが有効にされる。オペレーションレジスタ(DMAOR)311のDDTビットが“0”にされている場合には、2チャネルのみ外部周辺装置からのデータ転送要求によるデータ転送可能な動作状態(以下、ノーマルモードと称する)となる。
【0018】なお、図2(A)のオペレーションレジスタのビット構成図において、PR1,PR0ビットは同時に複数のチャネルに転送要求があった場合に実行するチャネルの優先順位を指定するビット、AEビットはDMA転送中にアドレスエラーが発生したことを示すフラグ、NMIビットはマスク不能な割込みが入力されたことを示すフラグで、DMA転送中にこのビットが“1”にセットされると全チャネルの転送が中断されるように構成されている。さらに、DMEビットは、DMAコントローラ全体の起動許可ビットで、このビットおよび各チャネルのコントロールレジスタCHCR内のDEビットを“1”にセットするとそのチャネルの転送が許可されるようになっている。
【0019】また、DMACモジュール310には、各チャネルに対応して、データの転送元アドレスが入るソースアドレスレジスタ(SAR0〜7)312や転送先アドレスが入るディスティネーションアドレスレジスタ(DAR0〜7)313、転送回数を保持する回数レジスタ(DMATCR0〜7)314、リードまたはライトのいずれであるかや転送方法、転送サイズ、動作モードなどを指定するコントロールレジスタ(CHCR0〜7)315が設けられている。
【0020】さらに、DMACモジュール310には、これらのレジスタの制御を行なうレジスタ制御回路316や、上記コントロールレジスタ315内の転送サイズを参照して回数レジスタ314の値を更新する回数制御回路317、レジスタ制御回路316に起動をかける起動制御回路318、いずれのチャネルのデータ転送を優先させるか制御する優先制御回路319、上記各レジスタとバスステートコントローラBSCとを接続するバスインタフェース回路320などが設けられている。
【0021】一方、DDTモジュール330には、外部バスより入力される所定のフォーマットのコマンドコードを保持するコマンドバッファ331とそのコマンドコードをデコードして所定の制御信号を生成するコマンドデコーダ332と、8チャネルのうち7チャネルCH1〜CH7に対応したリクエストキューRQ1〜RQ7を有するDMA転送要求制御回路333とが設けられている。
【0022】特に制限されるものでないが、この実施例においては、チャネルCH0にはデータ転送要求を受け付けたか否かを示すフラグ(DMA転送要求受け付けフラグ)がDDTモジュール330内に設けられ、リクエストキューは設けられていない。外部バスは、特に制限されるものではないが、64ビットのデータバスと26ビットのアドレスバスにより構成される。この実施例のマイクロプロセッサは、外部データバスは64ビット幅のほか、32ビット幅としても使用できるようにされている。
【0023】ノーマルモードにおいては、チャネル0およびチャネル1に対するDMA転送要求はそれぞれ専用の外部端子DREQ0#(#はロウレベルが有効レベルであることを意味する)およびDREQ1#からの信号の入力により行なわれる。一方、DDTモードにおけるDMA転送要求は外部バスを介した所定のフォーマットのコマンドコードにより行なわれる。
【0024】コマンドコードには、図3に示すように、転送要求を行なう外部デバイスすなわちチャネル番号が入るフィールドIDと、バイト単位、ワード単位、ロングワード単位、クワッドワード単位、32バイトのようなブロック単位など転送データのサイズを指定するフィールドSZと、転送モード(シングルアドレス転送、バースト転送、サイクルスチール転送など)を指定するフィールドMDと、転送回数を示すフィールドCOUNTと、転送元アドレスや転送先アドレスなどが入るフィールドADDRESSなどが設けられている。なお、図3(A)はデータバス幅が64ビットであるシステムに使用されるコマンド、図3(B)はバス幅が32ビットであるシステムに使用されるコマンドである。なお、図3(A)ではビット47〜32、また図3(B)ではビット28および15〜0はビット情報として無効なリザーブ領域である。
【0025】DDTモードに設定されたシステムでは、外部から外部端子DREQ0#をアサートすると、DDTモジュール330がそれを認知してバスステートコントローラ140に通知する。すると、バスステートコントローラ140はDMAコントローラ130のためにバスの使用権を確保してバスアベイラブル信号BAVL#をアサートする。その状態で、上記DMA転送要求コマンドが入力されるとDDTモジュール330のDTRコマンドバッファ331に取り込まれて、DMA転送要求制御回路333によっていずれのチャネルの対する転送要求か判定されて、対応するリクエストキューRQ1〜RQ7に要求が保持される。
【0026】また、この実施例においては、コマンドコード内の情報に基づいてDMACモジュール310内のチャネル0のレジスタに転送アドレスや転送回数、転送方法などが設定される。他のチャネル1〜7はリクエストを受け付けると、制御レジスタに設定された動作を実行する。そして、転送要求を受けた時に現在実行中のDMA転送がなければバスステートコントローラ140に対してバスの使用要求がなされ、バスが確保されると起動制御回路によってDMA転送が開始されるとともに、この転送処理中に次のDMA転送要求が入ってくると、その要求がいずれのチャネルか判定されて、対応するリクエストキューRQ1〜RQ7に保持される。
【0027】チャネル0に対応するリクエストキューはないため、チャネル0に対する転送要求は前述したように、1回しか行なえない。リクエストキューがない代わりに、DDTモジュール330内にチャネル0に対する転送要求があったことを示すフラグ(図示省略)が設けられている。
【0028】DMA転送要求コマンドによるリクエストキューのクリアは、DMA転送要求コマンド内の未使用のビットを使用して行なうようにしても良いが、この実施例においては、DMA転送要求コマンドの所定のビット組合せで行なうようにされている。表1にはリクエストキューのクリアを指示するコマンドのビット構成例を示す。なお、表1において、最初の“DBL”は、オペレーションレジスタに設けられている4チャネルと8チャネルの切り替えビットで、DBLが“0”のときは4チャネルが、またDBLが“1”のときは8チャネルが指定される。
【0029】DBLを除くID、MD、SZ、COUNTがDMA転送要求コマンドに含まれるコードで、IDはチャネル番号、MDは転送モード、SZは転送データサイズ、COUNTは転送回数である。表1のように、IDが“00”に設定されているということは本来チャネル0を指定するという意味であり、このIDが有効とされチャネル0に対する転送要求コードが入力されることもある。ただし、チャネル0に対する転送要求の際にはMDが“10”または“11”でSZが“110”とする組合せは禁止されている。この実施例のDAMコントローラ130においては、この禁止された組合せを利用してリクエストキューのクリア要求を入力することができるようにされている。
【0030】ところで、前述したように、DBLビットが“0”のときは4チャネルが、またDBLが“1”のときは8チャネルが指定される。DBLが“0”にされている4チャネル有効システムでは、表1のA欄のように、IDが“00”、MDが“10”、SZが“110”されたDMA転送要求コマンドが入力されると、全チャネル1〜7のリクエストキューRQ1〜RQ7がクリアされる。また、チャネル0に関しては前記DMA転送要求受け付けフラグがクリアされる。DDTモジュール330内のデコーダ332には、このようなコマンドをデコードしてフラグクリア信号FCLRを生成する機能が設けられている。なお、このとき、COUNTフィールドにはどのようなコードがあっても構わない。
【0031】
【表1】

【0032】DBLが“1”にされている8チャネル有効システムでは、表1のB欄のように、IDが“00”、MDが“10”、SZが“110”されたDMA転送要求コマンドが入力されると、4チャネル指定の場合と同様に、全チャネル1〜7のリクエストキューRQ1〜RQ7がクリアされる。また、C欄のように、IDが“00”、MDが“11”、SZが“110”されたDMA転送要求コマンドが入力されると、そのときCOUNTフィールドに格納されているコードに対応したいずれかのチャネル1〜7のリクエストキューRQ1〜RQ7がクリアされる。DDTモジュール330内のデコーダ332には、このようなコマンドをデコードして対応するリクエストキューのクリア信号CLR1〜CLR7を生成する機能が設けられている。
【0033】さらに、本実施例のDAMコントローラ130においては、CPU111がプログラムを実行することによっても各チャネル1〜7のリクエストキューRQ1〜RQ7およびDDTモジュール330内のDMA転送要求受け付けフラグをクリアする仕組みが設けられている。
【0034】具体的には、各チャネル毎に設けられているチャネルコントロールレジスタ(CHCR)315内に、図2(B)に示すように、キューをクリアさせるためのビット“QCL”が設けられ、このビットに“1”が書き込まれると、ワンショットパルスからなるキュークリア信号queclr1〜7が生成されてDDTモジュール330へ供給され、対応するチャネル1〜7のリクエストキューRQ1〜RQ7がクリアされるように構成されている。
【0035】また、このとき同時にチャネル0に関してはフラグクリア信号fclrが生成されて、DMA転送要求受け付けフラグがクリアされる。なお、ビット“QCL”は、書き込まれた“1”は直ちに“0”にされ、このビットを読み出すと必ず“0“であるように構成されている。
【0036】なお、図2(B)において、符号“TE”で示されているビットは、DMA転送要求コマンドで指定された転送回数分のDMA転送が終了した時点で設定されるビットである。従って、このビット“TE”が“1”されたときに自動的に対応するチャネル1〜7のリクエストキューRQ1〜RQ7をクリアするような仕組みを設けることによっても転送要求が残ったままになる状態を回避することはできるが、ユーザの中にはそのような転送要求はキューに残したままにしておけるようなシステムを構成したいユーザもいると考えられる。従って、本実施例のような構成を有するLSIの方が使い勝手がよいという利点がある。
【0037】次に、DDTモードにおけるチャネル1〜7に対するDMA転送要求コマンドの入力と、それに応じたDMA転送の動作手順を、図4のタイミングチャートを用いて説明する。DDTモードに設定されたシステムで外部装置が本実施例のマイクロプロセッサにDMA転送要求をする場合、バスステートコントローラBSCから出力されるバス状態を示すバスアベイラブル信号BAVL#がハイレベルであることを確認してから、DMA転送要求信号DREQ#をロウレベルにアサートする(タイミングt1)。すると、バスステートコントローラBSCは、DMAコントローラ130のためにバスの使用権を確保してバスアベイラブル信号BAVL#をロウレベルに変化させる(タイミングt2)。外部装置はこれを確認すると、DMA転送要求コマンドの転送を示す信号TR#をロウレベルにアサートするとともにDMA転送要求コマンドDTRを外部バスを使用して入力する(タイミングt3)。
【0038】すると、DMAコントローラ130内部で上記入力されたDMA転送要求コマンドが解析されて、いずれのチャネルに対するDMA転送であるか、また転送モードや転送サイズ、転送回数等が判別されて対応するレジスタへの設定等、DMA転送のための準備が行なわれる。それから、所定サイクル経過後に、ロウアドレスストローブ信号RASやカラムアドレスストローブ信号CAS、ライトイネーブル信号WEでロウアドレスストローブバンクアクティブ(BA)とリード(RD)を指定して、ロウアドレスRAとカラムアドレスCAを順に出力する(タイミングt4,t5)。そして、所定サイクル後に、アクノリッジ信号TDACKがロウレベルにアサートされ、転送元の装置から外部データバス上にDMA転送によるデータD0,D1,D2……が出力される(タイミングt6)。
【0039】なお、この実施例のマイクロプロセッサにおいては、チャネル1〜7に関するDMA転送の場合には、識別情報信号ID0,ID1とバスアベイラブル信号BAVL#を使って、DMA転送中のチャネルの番号を外部へ知らせるように構成されている。つまり、バスアベイラブル信号BAVL#は、DMA転送中はチャネル番号を示すコードの一部ID2#とされる。
【0040】以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば上記実施例では、DMA転送要求を保持するリクエストキューRQ1〜RQ7をハードウェアとソフトウェアのいずれでもクリアできるように構成されているが、ハードウェアによるクリアまたはソフトウェアによるクリアのいずれか一方のみ行なえるように構成しても良い。
【0041】また、上記実施例では、DDTモードで使用可能なチャネル1〜7に対してのみDMA転送要求を保持するリクエストキューRQ1〜RQ7を設けているが、DMACモジュール310内にもノーマルモードで使用可能なチャネル0と1に対応したリクエストキューを設け、かつこのリクエストキューをハードウェアとソフトウェアあるいはハードウェアまたはソフトウェアでクリアできるように構成しても良い。
【0042】さらに、上記実施例では、データ転送要求コマンド内の転送回数フィールドCOUNTを用いてキューをクリアするチャネルを指定するコードを格納するようにしているが、コマンドコード内の未使用のビットフィールドを用いてチャネル指定コードを入れるようにしても良い。また、チャネル数が増加した場合には、データ転送要求コマンド内の転送回数フィールドCOUNTと未使用のビットを組み合わせてチャネル指定コードを与えるように構成するようにしても良い。
【0043】また、リクエストキューをクリアする信号をチップ外部から直接入力するための外部端子を設けるようにしても良い。この場合、入力端子は各チャネルと1対1で設けても良いし、チップ内部にデコーダを設けておいて外部でエンコードした信号を入力するように構成しても良い。
【0044】さらに、データ転送要求コマンドを用いてリクエストキューをクリアする場合、データ転送要求とキューのクリアとを1つのコマンドで同時に行なうように構成することも可能である。この場合、このコマンドが入力されたなら、DMAコントローラ内では、先ず指定されたチャネルのリクエストキューをクリアした後、転送要求の受付処理を行なうようにすれば良い。これにより、データ転送要求コマンドの挿入回数と、DMA転送回数とが必ず一致するようになるので、データ転送要求コマンドの挿入回数を計数できる外部装置であれば、DMA転送回数分だけデータ転送要求コマンドを挿入すれば良くなることから、システムおよびアプリケーションプログラムの構築が容易になる。
【0045】以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるDMAコントローラを備えたマイクロプロセッサに適用した場合について説明した、本発明はそれに限定されるものでなく、マイクロプロセッサとは別のLSIとして構成されたDMAコントローラにも適用することができる。
【0046】
【発明の効果】本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。すなわち、本発明に従うと、制御レジスタの設定をやり直さなくてもDMA転送処理を実行できるとともに、不要なDMA転送を実行しなくてもリクエストキューをクリアできるため、システムのスループットが向上するようになる。また、DMA転送要求を行なう周辺装置にDMA転送要求の出力回数を確認できるようにするためのカウンタなどの回路を設けることなく、リクエストキューに転送要求が残ったままDMA転送が終了するのを回避することができるようになり、これによってユーザの設計負担が大きくなったりシステムが複雑になるのを防止することができる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013