JP2004213666A - Dmaモジュールとその操作方法 - Google Patents

Dmaモジュールとその操作方法 Download PDF

Info

Publication number
JP2004213666A
JP2004213666A JP2004000058A JP2004000058A JP2004213666A JP 2004213666 A JP2004213666 A JP 2004213666A JP 2004000058 A JP2004000058 A JP 2004000058A JP 2004000058 A JP2004000058 A JP 2004000058A JP 2004213666 A JP2004213666 A JP 2004213666A
Authority
JP
Japan
Prior art keywords
dma
address
storage space
memory
module
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
JP2004000058A
Other languages
English (en)
Inventor
Burkhard Giebel
ギーベル ブルクハルト
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.)
TDK Micronas GmbH
Original Assignee
TDK Micronas GmbH
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 TDK Micronas GmbH filed Critical TDK Micronas GmbH
Publication of JP2004213666A publication Critical patent/JP2004213666A/ja
Pending legal-status Critical Current

Links

Images

Classifications

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

【課題】面積をわずかしか必要としない多重処理可能なDMAモジュールを得る。
【解決手段】本発明はDMAモジュールに関する。このモジュールは、DMAプロセスにおいて記憶スペースを読み出しまたは書き込むために、アドレス可能なメモリ(5)において第1のアドレス(46)が表す記憶スペースに読み出しアクセスし、そこで少なくとも1つの第2のアドレス(52)を読み出す。またこのモジュールは、第2のアドレス(52)を隣接する記憶スペースに合わせて前方向調整し、第2のアドレス(52)が表す記憶スペースで書き込みまたは読み出しアクセスを実行する。このモジュールは最後に、第1のアドレス(46)が表す記憶スペースにこの第2のアドレスを記憶させる。
【選択図】図3

Description

本発明は、DMAモジュールとその操作方法に関する。DMAモジュールは、定期的に反復されるデータ転送タスクをCPUから負担解除するため、マイクロコンピュータシステムやマイクロコントローラシステムで使用される。DMAモジュールとは、次のように特化されたプロセッサの一種と理解される。すなわち、アクセスしたい記憶領域の指定、たとえばスタートおよびストップアドレス、あるいはスタートアドレスおよびそれにつながるいくつかの記憶スペースの指定を受け取り、指定された領域のアドレスを順次迅速にアドレスバスにアウトプットして、記憶領域の迅速な読み出しと書き込みを可能にするプロセッサである。DMAモジュールは、2つの記憶領域の間、または1つの記憶領域と周辺装置との間のそのようなデータ転送を可能とし、そのためのCPUの処理タスクを必要としない。従ってDMAモジュールは、CPUに単純なデータ転送タスクの負担を解除し、平均的に達成可能なCPUパフォーマンスをこれにより向上する。
CPUとDMAモジュールがメモリにアクセスするための共通なバスを共有するならば、DMAモジュールがメモリにアクセスして書き込みまたは読み出しするバスサイクルごとに、CPUが同時にアクセスを試みるのを防止するため、CPUを停止しなければならない。この「サイクル スティーリング(cycle stealing)」と呼ばれる方法の場合、CPUはたしかにDMAの操作によってわずかにブレーキをかけられる。しかしこのようにして失われるCPUサイクルの個数は、CPU自体がデータ伝送を制御しなければならない場合よりも明らかに少ない。従ってDMAモジュールの使用によってCPUパフォーマンスの向上が得られる。
DMA伝送は、常にスタートアドレスからストップアドレスに行われる。従来の方法によれば、両方のアドレスともDMAモジュールの内部レジスタに記憶される。これにより、ただ1つのバスサイクルの中で1つのアドレスをアウトプットし、そのアドレスが表す記憶場所を読み出しあるいは書き込んで、それに続く読み出し動作または書き込み動作のためアドレスカウンタを前方向調整することができる。
このようなレジスタを2つ持つDMAモジュールは、その都度1つだけDMAプロセスを同時に実行できる。優先度の高い1つのDMAプロセスを実行できるようにするため、動作中のDMAプロセスを中断しなければならないとき、動作中の優先度の低いプロセスはその時点の数値とともに、DMAモジュールから送出されて中間記憶されなければならない。優先度の高いプロセスの対応するパラメーターをロードして、そのプロセスを実行するためである。アドレスのこのようなロードアウトとロードインは、DMAモジュールとマイクロコントローラにブレーキをかけるので、望ましくないことである。
考えられるのは、このようなDMAモジュールに多数のレジスタペアを装備し、これらのペアがさまざまなDMAプロセスのパラメーターをそれぞれに含むことができるものとし、また動作中のDMAプロセスを優先度の高いプロセスのために中断するには、これらのペアを切り替えるだけでよいようにすることであろう。
しかしこの場合に生じる問題は、この種のレジスタは半導体基板上の必要面積が大きく、同じ大きさのメモリエレメントがRAM中で必要とする面積の5倍に達することである。必要面積がこのように大きいため、多重処理可能なDMAモジュールの製造は高価なものとなる。
本発明の課題は、面積をわずかしか必要としないDMAモジュールを得ること、ないしはこのような面積の小さいDMAモジュールを使用できるDMAモジュール操作方法を得ることである。
この課題はまず、次のようなDMAモジュールの場合、すなわち従来の方法によって、アドレス可能なメモリの記憶スペースへの書き込みアクセスまたは読み出しアクセスを実行するDMA制御ロジックと、記憶されたアドレスを隣接する記憶スペースに合わせて前方向調整するアドレスカウンタとを備えるDMAモジュールの場合、次のようにして解決される。すなわち、このアドレスカウンタは、DMAモジュールの内部レジスタには働かず、メモリからのアドレス値の読み出しとメモリへのアドレス値の書き込みとの間に、このアドレス値を正確に1回前方向調整するものとして設けられることにより、解決される。言い換えれば、アドレスカウンタが、メモリからのアドレス値の読み出しとメモリへのアドレス値の書き込みとの間に、このアドレスカウンタを正確に1回、前に進めるように設けられることにより、解決される。アドレス値が読み出され、ないし書き込まれるメモリの記憶スペースは、従来の方法ではDMAモジュールに内蔵されていたレジスタの機能をこうして引き受ける。このようにしてDMAモジュールの必要スペースが減少し、重要な追加的利点として次のことが得られる。すなわち、多数のDMAプロセスの制御にこのDMAモジュールを使用することができ、これらのプロセスをたがいに中断することができる。そのためにはメモリの多数の記憶スペースを、DMAブロックを指定するためのメモリとして用意すればそれでよい。
このようなDMAモジュールの操作は、次の諸段階からなる。
a)アドレス可能なメモリにおいて第1のアドレスが表す記憶スペースに対する読み出しアクセスの実行。これはそこで少なくとも1つの第2のアドレスを読み出すためであって、そのアドレスとは、動作中のDMAプロセスでアクセスしなければならない次の記憶スペースを示すものである。
b)第2のアドレスを隣接する記憶スペースに合わせて前方向調整する(または、第2のアドレスを隣接する記憶スペースに合わせて前進させる)。この第2のアドレスを、第1のアドレスが表す記憶スペースに記憶させる。
c)第2のアドレスが表す記憶スペースに、書き込みアクセスまたは読み出しアクセスを実行する(この場合、最初に第2のアドレスを前方向調整して、次にその表す記憶スペースにアクセスするのか、あるいはその逆を行うのかはどうでもよいことである)。
これまでDMAプロセスから次のプロセスに交代するには、まずレジスタ値を送出して交換する必要があったが、DMAプロセスに必要なパラメーターはアドレス可能なメモリにつねに存在するので、その必要はなくなる。従って、さまざまなDMAプロセス間の迅速な切り替えが可能である。
1つのDMAプロセスがいつ完了したかを、DMAモジュールが検出できるためには、段階c)を実行する前にかならず、実行されるべきメモリアクセスの回数を表すカウント値を読み出すこと、そしてそのカウント値を減分し、段階c)を実行した後そのカウント値をふたたび記憶させることが合目的である。DMAモジュールはそのカウント値により、DMAプロセスがいつ完了したかを検出し、プロセス動作を正しい時点で終了することができる。
メモリアクセスの回数を最小限にするためには、このカウント値を段階a)の読み出しアクセスごとにともに読み出し、段階b)の書き込みアクセスごとにともに書き込むのが合目的である。これが問題なく可能なのは、第2のアドレスとカウント値の總ビット数が、個々の読み出しアクセスで読み出されたデータワードの幅、すなわちデータバスの幅を超えない場合である。従って1つのDMAプロセスに必要なパラメーターを読み出し、ないし書き込むには、それぞれ1つのバスサイクルで十分である。
本発明のもう1つの視点は、周辺モジュールがDMA転送を「注文する」のに用いるDMAリクエスト信号を伝送するため、周辺モジュールにしばしばいずれにせよ設けられている割り込みリクエスト回線を利用することである。したがって有利な方法として、DMAモジュールを割り込みコントローラへのリクエスト回線に接続し、いわば割り込みコントローラに前置する。
このようにして、高価な割り込みを導入する以前に、(CPUパフォーマンスと比較して)「より安価な」いくつかのDMA転送を導入する構造が生まれる。このような構造は、いちじるしいCPU負荷なしで、長いインターバルにわたってデータを収集し、最後にCPU関与の下に集中して処理を行うのに適している。
本発明によれば、最初はDMA制御の下にゆっくりと、周辺モジュールとRAMとの間でデータ表を伝送するが、最後にCPU割り込みルーチンを導入する。このCPU割り込みルーチンにおいて、CPUが時間的に集中してたとえば既存のデータ表を処理し、次にDMAモジュールを次のデータ表伝送のためにコンフィギュレーションし、このDMAシーケンスをスタートすることができる。
本発明のそのほかの諸特徴と利点を、添付の図面の引用による下記の実施例をもとに説明する。
図1に図式的に示したマイクロコントローラシステムは、CPU1、バスコントローラ2、割り込み管理ユニット(割り込みコントローラICU)3、DMAコントローラ4、スタティック・ランダムアクセスメモリ(SRAM)5、読み出し専用メモリ(ROM)6、入/出力モジュール7を備える。これらのコンポーネント1〜7は、アドレス−、データ−、制御−回線を持つ内部のバス8によって相互に結合されている。I/Oモジュール7はさらに外部の1つまたは複数のデータ端末と結合され、データ端末からデータを受け取って内部のバス8に供給するか、あるいはデータ端末に内部のバス8からデータを出力する。I/Oモジュール7、DMAコントローラ4、ICU3は、バス8から分離された多数の制御回線9〜12によって相互に直接結合されているが、図2も併せて用いこれらの構造と機能をさらに詳しく説明する。
図2はDMAコントローラ4の構造の詳細を示す。DMAコントローラ4の機能は2つに分かれるがその1つが、DMAアクセスを作動できるさまざまなプロセスの管理、ここではモジュール7を介してマイクロコントローラシステムと結合しているさまざまなデータ送信装置または受信装置の管理、すなわちあたえられた時点で複数のプロセスのうちいずれのためにDMAを実行するのか決定することである。DMAコントローラ4のもう1つの部分は、具体的なメモリアクセスの制御を担当する。これら2つの領域の管理回路を、ここではDMAチャンネルロジック41ないしDMA制御ロジック42と呼ぶ。DMAチャンネルロジック41は、いずれのDMAチャンネルに対しても、すなわちそのためにDMAを作動できるいずれのプロセスに対しても1回存在する。リクエストプロセスxを識別する信号DREQx(x=1、2、3等)を制御回線9から加えられるインプットマルチプレクサ43は、DMAプロセスがペンディングであることを表明するフラッグを、RSフリップフロップでセットする。対応するDMAサイクルが動作終了しているとき、このフラッグはDMAチャンネルロジック41により自動的にリセットされる。リリースフラッグENは、プライオリティエンコーダー45に対してこのペンディングフラッグをマスクする。プライオリティエンコーダー45はすべてのDMAチャンネルロジック41のアウトプットと結合されており、みずからのアウトプットに順序数を供給する。この順序数とは、ペンディングであるDMAプロセスのチャンネルロジック41のうち優先度レベルが最も高いものに対応するものである。個々のプロセスの優先度レベルは、プライオリティエンコーダー45に記録される。DMAチャンネルロジック41は、さらに制御回線10を経由して作動プロセスに、肯定応答信号DACKxをフィードバックする。この信号はDMAアクセスの実行を表示する。また―アクセス方向に応じて―メモリ5から読み出されたデータ値が内部のバス8にあって受け入れ可能であること、あるいはプロセスから供給されたデータ値が受け入れ済みであって、新たなデータ値を供給しなければならないことを、プロセスに通知する。
スイッチ47がリクエスト信号回線DREQx(x=1、2、3)に配置されている。このスイッチによって、回線DREQxに到着する信号を直接ICU3にループして、割り込みを作動できるようにするか、あるいはDMAチャンネルロジック41から生じた制御信号をICU3に供給するかのどちらかを、選択して行うことができる。回線12は、リクエスト信号DREQxがスイッチ47で回線11にループされるという条件のとき、ICU3とインタフェース7との間でデータを直接伝送するのに用いられる。
DMA制御ロジック42は、1つのDMAサイクルの範囲内で、いずれの個々のアクセスの実行をも制御する。時間的にオーバーラップして実行できるさまざまなDMAプロセスを管理するため、DMA制御ロジック42は、SRAM5にファイルされているDMAベクトル表51にアクセスする。このDMAベクトル表51のスタートアドレスは、DMA制御ロジック42のDMAベクトルベース(表開始レジスタ)46に記録されている。DMAベクトル表の記入は32ビットワードであって、これらのワードはDMAプロセスの指定を形成し、図3に示すように、それぞれ24ビット幅のアドレス52と8ビット幅のカウント値とにより構成される。このアドレスは、SRAM5においてDMAアクセスを行いたいとされるブロックのスタートアドレスであり、カウント値はこのブロックの長さをバイトで表示する。
このアドレスとカウント値は、DMAプロセスの開始前にその都度、たとえばCPU1によってDMAベクトル表51に書き込まれる。このカウント値をここでたとえば8ビットと想定すると、DMAブロックは最大28=256バイトの長さを持つ。当然のことながら、このDMAベクトルのスタートアドレスとカウント値への区分を任意にこれと異なるものとし、異なるブロック長さとすることも考えられる。
DMA制御ロジック42がプライオリティエンコーダー45から、そのためアクセスを実行したいDMAプロセスの番号を受け取ると、制御ロジック42は、プライオリティエンコーダー45から供給された番号の4倍をベクトルベース46のアドレスに加算することにより、アクセスアドレスを計算する。プライオリティエンコーダー45から供給された番号が、数値1、2または3を取ることができるとき、制御ロジック42は、図3のベクトル表51で「DMA‐ベクトル1」、「DMA‐ベクトル2」、「DMA‐ベクトル3」などと記載されたフィールドにアクセスすることができる。
容易に理解できることであるがDMAコントローラ4は、その回路構造にこれといった変更を加えずに異なる個数のDMAプロセスを管理するために、容易に適合可能である。プロセスの個数に対する制限的要因は、プライオリティエンコーダー45のアウトプット幅、すなわちプライオリティエンコーダーがDMA作動側プロセスの番号を制御ロジック42に伝達する回線のビット数と、DMAベクトル表51の大きさとの2つだけである。
図4は、1つのDMAプロセスの過程におけるマイクロコントローラシステム内部のさまざまな信号の推移を示す。この場合fsysは、CPUとDMAコントローラ4とが動作するときに用いるシステムクロックパルスを表す。fsysの1つの周期は、1つのCPUクロックパルスに相当する。信号DREQx(x=1、2、3等)のパルスは、プロセスxによるDMAリクエストを表示する。このリクエストに対応が行われるまで、複数のクロックサイクルが経過することがある。対応が行われると、DMAコントローラ4からメモリ制御に供給される信号DACCが、低いレベルから高いレベルに切り替わる。これは、DMAコントローラ4がバスを支配していることと、CPU1が書き込みまたは読み出しアクセスをしてはならないこととを表示するためである。レベルの高いDACCをともなうクロックサイクルの最初のサイクルで、DMAコントローラ4は、ベクトル「DMA‐ベクトル1」、「DMA‐ベクトル2」または「DMA‐ベクトル3」のうち1つのアドレスを、バス8のアドレス回線Aに供給する。これらのベクトルのアドレスは、リクエスト側プロセスの識別と、ベクトルベース46に記録されたアドレスとにより計算される。これらベクトルの表51が存在するSRAM5はそれに対して、対応するアドレスに記録されたDMAブロックの指定(スタートアドレスと伝送されるべきバイト数からなる)を、バス8のデータ回線に合わせて設定する。これらの数値は、DMAコントローラ4からアドレスレジスタないしカウンタに受け入れられる。
続くクロックサイクルでは、DMAベクトルのアドレスがあらためてバス8のアドレス回線に合わせて設定される。同時に1だけ増分されたスタートアドレスと1だけ減分されたカウント値とが、バス8のデータ回線に供給される。これはそれまでのDMAベクトルにこれらの数値を上書きするためである。
次のクロックサイクルでは、増分されたアドレスがアドレス回線にアウトプットされる。これは―DMAプロセスのアクセス方向に応じて―対応する記憶場所に書き込みまたは読み出しアクセスを実行するためである。
ただ1つのDMAプロセスの複数の書き込みまたは読み出しアクセスが直接に、すなわち優先度がより高いDMAプロセスによって中断されることなく順次続く場合、第2のおよびいずれのその後のメモリアクセスに対しても、DMAベクトルの読み出しの段階を省略できる。そこに記憶された指定は、DMAモジュールのレジスタにすでに記憶されているからである。従って、DMAベクトルが表す記憶場所は、次のようなレジスタの機能を持つ。それは、SRAM5にあるメモリアドレス、かつ次の書き込み/読み出しアクセスを行いたいアドレスのすぐ前のメモリアドレスを示すレジスタである。すなわち、あるDMAプロセスを初期設定するとき、DMAベクトルに書き込まれるアドレス自体には何らアクセスが行われず、それに続くアドレスに初めてアクセスが行われる。カウント値が0(ゼロ)に達すると、DMAプロセスは終了される。
上記と異なる方法として、割り当てられたDMAベクトルが示す記憶場所でDMAプロセスを初期設定するとき、処理されるべきメモリブロックの大きさと、そこで書き込みまたは読み出し動作を実行したい最初のアドレスとが記憶されることも、もちろん意図できるであろう。その場合、上記図4に関連して説明した手順はわずかに変更されるだけであろう。DMAベクトルが表す記憶場所の読み出しには、そこに挙げられたアドレスへの書き込み/読み出しアクセスを直接続けることができよう。そして増分されたアドレスと減分されたカウント値は、それに続くクロックサイクルで、DMAベクトルが表す場所に記憶されることとなろう。
一連の場合においてDMAプロセスは、ある1つの記憶スペースを読み出しまたはそれに書き込むために3クロックサイクルを、そして続く記憶スペースいずれのためにも、CPUが停止しているクロックサイクルを少なくとも2サイクル必要とする。これは、次のようなDMAの場合よりも、すなわち、処理されるべきメモリブロックのアドレスがDMAコントローラのレジスタに直接記録されており、送出が行われたメモリから得る必要がないDMAの場合よりもたしかに遅い。しかしこれは依然として、CPU1自体がこのタスクを実行しなければならない場合よりも明らかに速い。DMAコントローラ内に必要なレジスタの個数は、DMAコントローラ4が同時に処理できるDMAプロセスの回数に依存しないので、任意の回数のDMAプロセスを同時に処理できるDMAコントローラを構成するのは、本発明によって非常に簡単になる。
本発明のDMAモジュールは、マイクロコンピュータシステムやマイクロコントローラシステムで使用される。
本発明を応用できる典型的なマイクロコントローラシステムのブロック図。 本発明によるDMAコントローラのブロック図。 DMAベクトル表の構造を示す図。 図2のDMAコントローラに生じるさまざまな信号のタイムチャート。

Claims (9)

  1. DMAモジュールにおいて、すなわち
    a)アドレス可能なメモリ(5)の記憶スペースへの書き込みおよび/または読み出しアクセスを実行するDMA制御ロジック(42)と、
    b)記憶されたアドレスを隣接する記憶スペースに合わせて前方向調整するアドレスカウンタとを備える上記のDMAモジュールにおいて、
    このアドレスカウンタが、メモリ(5)からのアドレス値の読み出しと、そのアドレス値のメモリへの書き込みとの間で、このアドレス値を正確に1回前方向調整するものとして設けられていることを特徴とする、上記のDMAモジュール。
  2. DMAモジュールを操作する方法であって、下記の諸段階を含むもの:
    a)アドレス可能なメモリ(5)において第1のアドレスが表す記憶スペースに読み出しアクセスを実行して、そこで少なくとも1つの第2のアドレス(52)を読み出すこと、
    b)第2のアドレス(52)を隣接する記憶スペースに合わせて前方向調整することと、第2のアドレス(52)を第1のアドレスが表す記憶スペースに記憶させることとを、任意の順序で行うこと、
    c)第2のアドレス(52)が表す記憶スペースで書き込みまたは読み出しアクセスを実行すること。
  3. 段階c)を実行する前にかならずカウント値(53)を読み出すことと、そのカウント値(53)を減分または増分して段階c)の後でふたたび記憶することと、そのカウント値が事前指定された最終値に達するとその手順を終了することとを特徴とする、請求項2に記載の方法。
  4. カウント値(53)が、段階a)の読み出しアクセスのときはそれとともに読み出され、段階b)の書き込みアクセスのときはそれとともに書き込まれることを特徴とする、請求項3に記載の方法。
  5. いずれの書き込みないし読み出しアクセスも、DMAモジュール(4)をメモリ(5)と結合するバス(8)の1サイクルの範囲内で行われることを特徴とする、請求項2〜4のいずれかに記載の方法。
  6. DMAモジュール(4)は、それがメモリ(5)へのアクセスを行う1つのバスサイクルで、同様にメモリ(5)と結合されているマイクロコントローラ(1)を停止させることを特徴とする、請求項2〜5のいずれかに記載の方法。
  7. 周辺モジュールがDMAアクセスをリクエストし、周辺モジュールの識別により第1のアドレスを選択するという段階を含む、請求項2〜6のいずれかに記載の方法。
  8. 周辺モジュールがその割り込みリクエスト回線を経由してDMAアクセスをリクエストすることを特徴とする、請求項7に記載の方法。
  9. 割り込みリクエスト回線を経由してDMAアクセスを作動するとき、割り込みリクエストは抑制されることを特徴とする、請求項7または8に記載の方法。
JP2004000058A 2003-01-03 2004-01-05 Dmaモジュールとその操作方法 Pending JP2004213666A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10300030A DE10300030A1 (de) 2003-01-03 2003-01-03 DMA-Modul und Betriebsverfahren hierfür

Publications (1)

Publication Number Publication Date
JP2004213666A true JP2004213666A (ja) 2004-07-29

Family

ID=32478145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004000058A Pending JP2004213666A (ja) 2003-01-03 2004-01-05 Dmaモジュールとその操作方法

Country Status (4)

Country Link
US (2) US7293120B2 (ja)
EP (1) EP1435578B1 (ja)
JP (1) JP2004213666A (ja)
DE (2) DE10300030A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005045785A1 (de) * 2005-09-23 2007-04-05 Siemens Ag Microcontroller und Verfahren zum Betrieb
US7822903B2 (en) * 2006-02-24 2010-10-26 Qualcomm Incorporated Single bus command having transfer information for transferring data in a processing system
US8521921B1 (en) 2009-05-22 2013-08-27 Marvell International Ltd. Automatic direct memory access (DMA)
KR102147993B1 (ko) * 2013-11-14 2020-08-25 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 동작 방법
US11726713B2 (en) 2021-06-25 2023-08-15 Western Digital Technologies, Inc. Systems and methods for priority command data fetching management

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01177661A (ja) * 1988-01-08 1989-07-13 Hitachi Ltd データ転送装置
JPH08202648A (ja) * 1995-01-24 1996-08-09 Casio Comput Co Ltd ダイレクトメモリアクセス転送方式及び方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69119149T2 (de) 1990-07-06 1997-01-16 Nippon Electric Co Struktur zur direkten Speicher-zu-Speicher-Übertragung
US5367639A (en) * 1991-12-30 1994-11-22 Sun Microsystems, Inc. Method and apparatus for dynamic chaining of DMA operations without incurring race conditions
US5828903A (en) * 1994-09-30 1998-10-27 Intel Corporation System for performing DMA transfer with a pipeline control switching such that the first storage area contains location of a buffer for subsequent transfer
US6128728A (en) * 1997-08-01 2000-10-03 Micron Technology, Inc. Virtual shadow registers and virtual register windows
US6032204A (en) * 1998-03-09 2000-02-29 Advanced Micro Devices, Inc. Microcontroller with a synchronous serial interface and a two-channel DMA unit configured together for providing DMA requests to the first and second DMA channel
US6324599B1 (en) * 1999-01-11 2001-11-27 Oak Technology Computer system and method for tracking DMA transferred data within a read-ahead local buffer without interrupting the host processor
JP3446653B2 (ja) * 1999-03-26 2003-09-16 日本電気株式会社 データ転送装置
US6674751B1 (en) * 1999-06-03 2004-01-06 Fujitsu Network Communications, Inc. Serialized bus communication and control architecture
US6691178B1 (en) * 2000-02-22 2004-02-10 Stmicroelectronics, Inc. Fencepost descriptor caching mechanism and method therefor
US7159048B2 (en) * 2001-12-10 2007-01-02 Emulex Design & Manufacturing Corporation Direct memory access (DMA) transfer buffer processor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01177661A (ja) * 1988-01-08 1989-07-13 Hitachi Ltd データ転送装置
JPH08202648A (ja) * 1995-01-24 1996-08-09 Casio Comput Co Ltd ダイレクトメモリアクセス転送方式及び方法

Also Published As

Publication number Publication date
US20040186932A1 (en) 2004-09-23
EP1435578A1 (de) 2004-07-07
DE10300030A1 (de) 2004-07-22
EP1435578B1 (de) 2006-08-09
DE50304565D1 (de) 2006-09-21
US20070299991A1 (en) 2007-12-27
US7293120B2 (en) 2007-11-06

Similar Documents

Publication Publication Date Title
JP4024875B2 (ja) 異なるデータ・レートで動作するネットワーク・ポートに関して、共用メモリへのアクセスを調停する方法および装置
JP3609444B2 (ja) データ処理システム
JPH04363746A (ja) Dma機能を有するマイクロコンピュータシステム
US7350015B2 (en) Data transmission device
US7293120B2 (en) DMA module having plurality of first addressable locations and determining if first addressable locations are associated with originating DMA process
JPH10187599A (ja) デジタル信号処理装置
US7136956B2 (en) Semiconductor device
JPH0343804A (ja) シーケンス制御装置
US20060047866A1 (en) Computer system having direct memory access controller
JP2972557B2 (ja) データ転送制御装置および制御方法
JP2619385B2 (ja) Dmaコントローラ
JP4174272B2 (ja) デバイス制御装置
JPS6014435B2 (ja) 記憶装置
JP6535516B2 (ja) マルチ・プログラマブルデバイス・システムとその制御方法
JPH09330269A (ja) アクセス方式
JPH0628301A (ja) ダイレクトメモリアクセス回路
JP3211694B2 (ja) マルチプロセッサ接続方式
JPH10320351A (ja) バッファ方式
JPH10341257A (ja) パケット処理装置
JPH05204830A (ja) 入出力制御装置
JPH05128279A (ja) ワンチツプマイクロコンピユータ
JPH03262063A (ja) Dma転送のバス制御回路
JP2000148443A (ja) 記憶装置
JPH09231162A (ja) Dma転送制御装置
JPH03137754A (ja) 共有メモリのアクセス制御方式

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091110

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100203

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100907