JP2003281077A - 半導体集積回路装置 - Google Patents

半導体集積回路装置

Info

Publication number
JP2003281077A
JP2003281077A JP2002082552A JP2002082552A JP2003281077A JP 2003281077 A JP2003281077 A JP 2003281077A JP 2002082552 A JP2002082552 A JP 2002082552A JP 2002082552 A JP2002082552 A JP 2002082552A JP 2003281077 A JP2003281077 A JP 2003281077A
Authority
JP
Japan
Prior art keywords
transfer
dma
data
bridge
scheduling
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
JP2002082552A
Other languages
English (en)
Other versions
JP2003281077A5 (ja
Inventor
Naotoshi Nishioka
直俊 西岡
Yutaka Yoshida
吉田  裕
Takashi Okada
崇 岡田
Miki Hayakawa
幹 早川
Takaaki Suzuki
高明 鈴木
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
Hitachi Solutions Technology Ltd
Original Assignee
Hitachi Ltd
Hitachi ULSI Systems 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 Hitachi Ltd, Hitachi ULSI Systems Co Ltd filed Critical Hitachi Ltd
Priority to JP2002082552A priority Critical patent/JP2003281077A/ja
Publication of JP2003281077A publication Critical patent/JP2003281077A/ja
Publication of JP2003281077A5 publication Critical patent/JP2003281077A5/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 【課題】 ランダムなデータ量でも高速に効率よくDM
Aデータ転送を行うことを可能とした半導体集積回路装
置とDMAデータ転送方法を提供する。 【解決手段】 中央処理ユニットと、インタフェイス回
路と、上記インタフェイス回路を介したデータ転送を行
うDMACとを備えた半導体集積回路装置において、1
回の転送開始から転送終了割り込みまでにおいて動的に
転送サイズを変更するDMA転送スケジューリングを行
うことを可能としたDMAブリッジを上記DMACに設
け、中央処理ユニットと、インタフェイス回路と、上記
インタフェイス回路を介してデータ転送を行うDMAC
とを搭載した半導体集積回路装置におけるDMAデータ
転送方法として、1回の転送開始から転送終了割り込み
までに動的に転送サイズの変更可能としたDMA転送ス
ケジューリングを行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、半導体集積回路
装置に関し、ダイレクト・メモリ・アクセス・コントロ
ーラ(以下、単にDMACという)を含む1チップマイ
クロコンピュータ等の半導体集積回路装置に利用して有
効な技術に関するものである。
【0002】
【従来の技術】マイクロコンピュータにおいて、中央処
理ユニット(Central Processing Unit:CPUと略す)
が負担すべきデータ処理量が多くなると、マイクロコン
ピュータのデータ処理能力を向上させるのは難しくな
る。そこで、CPUに代わってデータ転送制御を行うた
めの周辺モジュールを組み込むことによって、CPUの
データ処理負担を分散させることが可能になる。そのよ
うな周辺モジュールとして例えばDMAC(Direct Mem
ory Access Controller :ダイレクト・メモリ・アクセ
ス・コントローラ)がある。
【0003】DMACを内蔵した従来のマイクロコンピ
ュータは、DMA転送を行う際、CPUがDMACにデ
ータ転送に必要な制御情報(転送アドレス、転送回数、
転送モード、転送方向等)を初期設定している。DMA
Cについて記載された文献の例としては、1996年4
月19日付日経BP社発行の「コンピュータの構成と設
計[下]」第520頁及び第521頁がある。
【0004】
【発明が解決しようとする課題】CPUと周辺モジュー
ルとしてオーディオデジタル、携帯電話、液晶、フラツ
シュメモリ、USB等のインタフェイスを搭載した1チ
ップマイクロコンピュータがある。上記のマイクロコン
ピュータにおいて、外部のデバイスヘのデータ転送に
は、上記CPUの負荷を低減させる為にDMACが用い
られる。従来のDMACを使用したDMA転送は転送元
アドレスから転送先アドスに決められた転送サイズのデ
ータを決められた回数転送するとDMA転送終了割り込
みを発生するものである。
【0005】上記USBモジュールの仕様検討にあた
り、USB内蔵メモリ⇔外付けSDRAM間のデータ転
送効率を向上させるためDMA転送機能を追加すること
が必要となった。一般にオペレーティングシステム(以
下OSという)を実装してDMA転送割り込み制御を行
った場合、1回の割り込み発生で数μ秒のオーバヘッド
が生じてしまうことが知られている。ユーザがランダム
なデータ量をDMA転送する場合には、図10のフロー
チャート図に示したようにソフトウェアが転送サイズと
転送回数をスケジューリングして転送を行うことにな
る。例えば、ユーザが39バイトのデータをDMA転送
しようとした場合、ソフトウェアは32バイト転送1回
+ロングワード転送1回+バイト転送3回のDMA転送
スケジュールを行う。本ケースでは、ループ1を3回通
るので3回の割り込みが発生することになり、1回あた
り数μ秒のオーバヘッドが生じるために転送効率の向上
を妨げてしまうものである。
【0006】この発明の目的は、ランダムなデータ量で
も高速に効率よくDMAデータ転送を行うことを可能と
した半導体集積回路装置とDMAデータ転送方法を提供
することにある。この発明の他の目的は、使い勝手のよ
いDMACを含む半導体集積回路装置とDMAデータ転
送方法を提供することにある。この発明の前記ならびに
そのほかの目的と新規な特徴は、本明細書の記述および
添付図面から明らかになるであろう。
【0007】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば、下
記の通りである。中央処理ユニットと、インタフェイス
回路と、上記インタフェイス回路を介したデータ転送を
行うDMACとを備えた半導体集積回路装置において、
1回の転送開始から転送終了割り込みまでにおいて動的
に転送サイズを変更するDMA転送スケジューリングを
行うことを可能としたDMAブリッジを上記DMACに
設ける。
【0008】中央処理ユニットと、インタフェイス回路
と、上記インタフェイス回路を介してデータ転送を行う
DMACとを搭載した半導体集積回路装置におけるDM
Aデータ転送方法として、1回の転送開始から転送終了
割り込みまでに動的に転送サイズの変更可能としたDM
A転送スケジューリングを行う。
【0009】
【発明の実施の形態】図1には、この発明に係る半導体
集積回路装置(システムLSI)の一実施例の概略ブロ
ック図が示されている。この実施例のシステムLSI1
は、USBモジュール5、バスステートコントローラ
(以下、単にBSCという)7、DMAコントローラ
(以下、単にDMACという)14、中央処理ユニット
(以下、単にCPUという)8とこれらを接続する周辺
モジュールバス6、外部バス10及びブリッジバス13
から構成される。外部バス10は、外付けSDRAM
(シンクロナス・ダイナミック・ランダム・アクセス・
メモリ)11に接続され、周辺モジュールはこのSDR
AM間でDMA転送を行う。
【0010】特に制限されないが、上記SDRAM11
は32バイトブロック転送をサポートし、連続サイクル
で32バイトデータのリード/ライトが可能である。 U
SBモジュール5は、USBホストコア3+共有メモリ
2で構成され、USBホストコア3は共有メモリ2に対
してのみデータアクセスを行う。このため、USBモジ
ュール5自体は、DMA転送を要求することができな
い。従ってDMA転送を行う場合にはCPU8がDMA
C14に対しDMA転送指定を行う。
【0011】この実施例では、DMAブリッジ12をD
MAC14に内蔵することによりCPU8が行う転送指
定は転送元/転送先アドレス並びに転送方向と、転送し
たいデータ量(ランダムなデータ量可)のみと簡略化す
る。つまり、従来必要であった転送データサイズ指定と
転送回数指定は必要ない。これらはDMAブリッジ12
が転送回数を最小にするよう計算して転送データサイズ
と転送回数をスケジューリングする。
【0012】DMAブリッジ12は、DMAトラザクシ
ョン(転送開始から転送終了割り込みまで)制御+バッ
ファ制御部と、リード用バッファ、ライト用バッファと
を備える。リード用バッファとライト用バッファは、そ
れぞれ32バイト×2面を持つようにされる。上記スケ
ジューリングされたDMAリクエストは、上記DMAブ
リッジ12によって管理され、同図に示すDMA転送パ
ス9間でDMA転送が行われる。リード用及びライト用
バッファで一旦データを蓄積するのはSDRAMの32
バイトブロック転送を最大限有効活用するためである。
【0013】図2は、上記DMAブリッジ12を用いた
データ転送動作の一例を説明するためのフローチャート
図である。前記のような従来方式のDMA転送フローで
はソフトウェアでDMA転送のスケジューリングを行う
ために、前記図10に示したようにループ1を通過した
時に必ず転送完了割り込みによるオーバヘッドが生じて
しまう。従って、ループ1を通過する回数に比例してオ
ーバヘッドも増加してしまうものである。
【0014】これに対して、本発明ではハードウェア
(DMAブリッジ12)でDMA転送のスケジューリン
グを行うためループを通過しても転送完了割り込みが発
生しない。つまり、ユーザによるDMA転送リクエスト
があると、ハードウェアによるDMA転送のスケジュー
リングがなされ、スケジューリングに従って、まず転送
が全て完了したかが判定され、完了してないときにはD
MACのレジスタ設定、DMA転送開始、レジスタ指定
された転送サイズをレジスタ指定された転送回数だけ転
送実行し、ループ1により基に戻り、上記転送が全て完
了したとの判定により転送完了割り込みを実行するもの
である。このように、本発明ではループを通過する回数
に関係なくスケジューリングに基づく全ての転送が終了
した後、1回だけ転送完了割り込みが発生する。このた
めオーバヘッドを最小限に抑えることが可能である。
【0015】図3には、この発明に係るDAMCの一実
施例のブロック図が示されている。同図において、この
実施例のDAMC14は、DMAOR、DAR、DA
R、DMATCR、CHCRの各レジスタと回数制御、
レジスタ制御、起動制御及び要求優先制御部といった一
般的なDMAC部15に、DMAブリッジ12が組み込
まれて構成される。
【0016】上記DMAC部15の各レジスタは、以下
の通りである。DMAORは、DMAオペレーションレ
ジスタであり、DMACの転送モードを指定するレジス
タである。SARは、DMAソースアドレスレジスタで
あり、転送元アドレスを指定する。上記DMAブリッジ
は、データ転送要求フォーマット信号を使用して本レジ
スタを書き換えることが可能である。DARは、DMA
ディスティネーションアドレスレジスタであり、転送先
アドレスを指定する。上記DMAブリッジは、データ転
送要求フォーマット信号を使用して本レジスタを書き換
えることが可能である。DMATCRは、DMAトラン
スファカウントレジスタであり、DMACの転送回数を
指定する。DMAブリッジは、データ転送要求フォーマ
ット信号を使用して本レジスタを書き換えることが可能
である。CHCRは、DMAチャネルコントロールレジ
スタであり、DMACの動作モード、転送方法を指定す
る。DMAブリッジは、データ転送要求フォーマット信
号を使用して本レジスタを書き換えることが可能であ
る。
【0017】DMAブリッジ12の主要部は、ブリッジ
バスマスタ部18、バス調停部22、エンディアン変換
部21、2面構成SDRAMリード用バッファ19、2
面構成SDRAMライト用バッファ20、DMAトラン
ザクション制御/バッファ制御部17とレジスタDMA
UCR、DMAUAR、DMAUDAR、DMABRG
CR、DMAURWSZを備える。ここで、DMAUC
Rは、DMA USBコントロールレジスタであり、転
送開始とリセットを指定する。DMAUSARは、DM
A USBソースアドレスレジスタであり、転送元アド
レスを指定する。DMAUDARは、DMA USBデ
ィスティネーションアドレスレジスタであり、転送先ア
ドレスを指定する。DMABRGCRは、DMA BR
Gコントロールレジスタであり、割り込みイネーブルと
割り込みステータスフラグを持つ。DMAURWSZ
は、DMA USB R/Wサイズレジスタであり、転
送データ量と転送方向を指定する。ブリッジバス13
は、USBとDMACを接続するバスであり、DMAC
内蔵バッファとのデータ転送に使用される。
【0018】上記ブリッジバスマスタ部18は、DMA
転送時におけるブリッジバスのバスマスタであり、バス
調停部22は、DMACとCPUの間でブリッジバスの
調停を行う。エンディアン変換部21は、ワード単位と
バイト単位のエンディアン変換を行う。2面構成SDR
AMリード用バッファ(32バイト×2)19は、転送
効率を向上させるため2面で構成されるSDRAMリー
ド用バッファであり、2面構成SDRAMライト用バッ
ファ(32バイト×2)21は、転送効率を向上させる
ため2面で構成されるSDRAMライト用バッファであ
る。
【0019】DMA転送完了信号16は、DMAブリッ
ジ12の要求した転送の実行が完了したことを通知する
信号であり、DMAC部15からDMAブリッジ12に
伝えられる。DMAトランザクション制御/バッファ制
御部17は、DMAトランザクションのスケジューリン
グを管理するとともにバッファの制御を行う。周辺モジ
ュールバスインタフェイス部23は、周辺モジュールバ
スインタフェイスである。周辺モジュールバス6は、周
辺モジュールを接続するバスである。外部バス10は、
前記のようなSDRAMが接続されるバスである。割り
込み信号24は、DMAブリッジ12がスケジューリン
グに基づく全ての転送を完了したことを示す割り込み信
号でありCPUに伝えられる。
【0020】転送要求信号(SDRAM→USB方向)
25は、SDRAM→USB(周辺モジュール)方向の
データ転送をSDRAMに対し要求する信号であり、転
送要求信号(USB→SDRAM方向)26は、USB
(周辺モジュール)→SDRAM方向のデータ転送をS
DRAMに対し要求する信号であり、転送元/転送先ア
ドレス信号27は、SDRAMに対し指定する転送元/
転送先アドレス信号である。DMAブリッジ12は、デ
ータ転送要求フォーマット信号28を使用してDMAC
内の制御レジスタに転送リクエストをライトする。この
転送リクエストは、“転送元/先アドレス" 、“転送デ
ータサイズ" 、“転送回数" 、“転送方向" 等のDMA
転送に必要な情報が全て含まれる。
【0021】図4には、この発明に係るDAMCのデー
タ転送動作の一例を説明するためのフローチャート図が
示されている。この実施例のデータ転送動作は、SDR
AMライト時のDMA転送動作に向けられている。この
実施例では、79バイトのデータをDMA転送する手順
がソフトウェアとハードウェアとの処理に分けて示され
ている。
【0022】図4に従って、DMAブリッジのレジスタ
設定がソフトウェアにより行われる。まず、割り込みを
イネーブルにセットし、DMAUDARにSDRAMの
ライト先頭アドレスを設定して転送先アドレスを指定
し、DMAUSARに共有メモリのリード先頭アドレス
を設定して転送元アドレスを指定し、DMAURWSZ
にライト指定、79バイト転送指定をして転送方向(リ
ード/ライト)、転送データ量をセットした後に、DM
AUCRUのスタートビットに1をセットする。転送を
開始するまでのソフトウェアの設定はこれで終了であ
る。
【0023】この後DMAブリッジは、79バイトのデ
ータをDMA転送する上で最も効率のよい転送サイズと
転送回数の組み合わせを算出し、DMA転送スケジュー
ルを組む。本ケースでは32バイトブロツク転送×2回
+ロングワード転送×2回+バイト転送×3回というス
ケジュールを組むことになる。(SDRAMの32バイト
境界問題に関しては後述する)。
【0024】32バイトブロツク転送では、まずUSB
の共有メモリ(SRAM)よりのようにロングワード
転送×8回で32バイト(byte)のデータをリード
しバッファに蓄積する。この後DMAブリッジがの
ようにデータ転送フォーマット(SDRAMライト要
求)を出力し、従来のDMAC制御レジスタ群が書き換
えられることでDMA転送が開始される。この時、の
ような32バイトブロック転送の完了は、DMAブリッ
ジが管理しているためユーザは監視する必要はない。従
って割り込み発生は必要ない。以下同様にして、
及びのようにして回目の32バイトブロック転送が行
われる。
【0025】のロングワード転送では、まずUSBの
共有メモリよりロングワード転送×3回で12バイトの
データをリードしバッファに蓄積する。この後DMA
ブリッジがのようにデータ転送フォーマット(SDR
AMライト要求)を出力し、DMAC制御レジスタ群が
書き換えられることでのようなDMA転送(ロングワ
ード転送×3回)が行われる。この時も、のロングワ
ード転送の完了はDMAブリッジが管理しているためユ
ーザは監視する必要はない。従って割り込み発生は必要
ない。
【0026】のようなバイト転送では、まずUSBの
共有メモリよりのようにロングワード転送×3回で1
2バイトのデータ(有効データは3バイト)をリードし
バッファに蓄積する。この後DMAブリッジがのよう
なデータ転送フォーマット(SDRAMライト要求)を
出力し、DMAC制御レジスタ群が書き換えられること
でのようなDMA転送(バイト転送×3回)が行われ
る。この時も、のバイト転送の完了はDMAブリッジ
が管理しているためユーザは監視する必要はない。従っ
て割り込み発生は必要ない。
【0027】以上でスケジューリングされた全てのDM
A転送が完了したことになる。 DMAブリッジは、全て
のDMAスケジュールを完了すると割り込みステータス
フラグをセットしCPUに対し転送完了割り込みを発生
する。ここで初めてユーザは割り込みによってDMA転
送が全て完了したことを認識し、割り込み処理を行う。
必要な割り込み処理を行った後DMAブリッジの割り込
みステータスフラグをクリアして転送完了割り込み処理
を完了する。
【0028】図5には、この発明に係るDAMCのデー
タ転送動作の一例を説明するためのフローチャト図が示
されている。この実施例のデータ転送動作は、SDRA
Mリード時のDMA転送動作に向けられている。この実
施例でも、79バイトのデータをDMA転送する手順が
ソフトウェアとハードウェアの処理にわけて示されてい
る。
【0029】図5に従って、ソフトウェアによりDMA
ブリッジのレジスタ設定が行われる。まず前記同様に割
り込みをイネーブルにセットし転送先アドレス、転送元
アドレス、転送方向(リード/ライト)、転送データ量
をセットした後にDMA転送スタートビッをセットす
る。転送を開始するまでのソフトウェアの設定はこれで
終了である。
【0030】前記ライト時と異なり、リード時はのよ
うに常に32ブロック転送でバッファに32バイトのデ
ータが蓄積される。これはDMAブリッジがバッファ内
の有効データのみを共有メモリ(SRAM)へ転送する
ことができるためである。これにより、外部バスの占有
率を低減させている。SDRAMの32バイト境界問題
に関しては後述する。本ケースでは、のような32バ
イトブロック転送×3回というスケジュールを組むこと
になる。合計で96バイトになるが有効データをDMA
ブリッジが管理するため実際に共有メモリ(SRAM)
へ転送されるデータは79バイトである。
【0031】1回目の32バイトブロック転送では、
のようにまずDMAブリッジがのようなデータ転送フ
ォーマット(SDRAMリード要求)を出力し、DAM
C制御レジスタ群が書き換えられDMA転送が開始され
る。この時のような32バイトブロック転送の完了は
DMAブリッジが管理しているためユーザは監視する必
要はない。従って割り込み発生は必要ない。バッファ
に32バイトのデータが蓄積されるとDMAブリッジは
のようにロングワード転送×8回で共有メモリ(SR
AM)にデータ転送を行う。
【0032】1回目と同様に2回目も32バイトブロッ
ク転送とのようにロングワード転送×8回で共有メ
モリにデータ転送が行われる。3回目の32バイトブロ
ック転送ではまずDMAブリッジがのようなデータ転
送フォーマット(SRAMリード要求)を出力し、DM
AC制御レジスタ群が書き換えられDMA転送が開始さ
れる。この時のような32バイトブロック転送の完了
はDMAブリッジが管理しているためユーザは監視する
必要はない。従って割り込み発生は必要ない。バッファ
に32バイトのデータが蓄積されるとDMAブリッジは
有効データのみを抜き出してのようなロングワード転
送×3回と、のようなバイト転送×3回とで共有メモ
リ(SRAM)にデータ転送を行う。
【0033】DMAブリッジは全てのDMAスケジュー
ルを完了すると割り込みステータスフラグをセットしC
PUに対し転送完了割り込みを発生する。ここで初めて
ソフトウェアは割り込みによってDMA転送が全て完了
したことを認識し、割り込み処理を行う。必要な割り込
み処理を行った後DMAブリッジの割り込みステータス
フラグをクリアして転送完了割り込み処理を完了する。
【0034】図6と図7にDMAライトトランザクショ
ン時のDMAスケジューリング並びにバッファ制御フロ
ーチャート図が示されている。制御はバッファを中心に
バッファライト側とバッファリード側に分割される。図
6バッファライト側の制御フローである。図7バッファ
リード側の制御フローである。
【0035】図8と図9にDMAリードトランザクショ
ン時のDMAスケジューリング並びにバッファ制御フロ
ーチャート図が示されている。制御はバッファを中心に
バッファライト側とバッファリード側に分割される。図
8はバッファライト側の制御フローである。図9はバッ
ファリード側の制御フローである。
【0036】SDRAMの32バイト境界問題における
DMA転送スケジューリングの方法について説明する。
本転送サイズをDMAブリッジのスケジューリングに組
み込めるかが本発明の有効性を左右する大きなポイント
である。 32バイトブロック転送は、連続サイクルで3
2バイトのリード/ライトが可能なためSDRAMに対
して最も効率のよいアクセス方法である。しかし、SD
RAMの構造上、リード/ライト開始アドレスの下位8
ビットがh00以外では32バイトの連続した領域をア
クセスすることが出来ないという欠点がある。これが3
2バイト境界問題である。
【0037】DMAブリッジは以下のスケジューリング
制御によって32バイト境界問題を克服している。スケ
ジューリング制御はSDRAMライト時とSDRAMリ
ード時で異なる。SDRAMライト時ユーザがDMAU
DARに設定した転送先アドレスの下位8ビットがh0
0以外である場合はDMAブリッジが管理する転送先ア
ドレスがh00になるまでロングワード転送もしくはバ
イト転送を使用してDMA転送を行う。DMAブリッジ
が管理する転送先アドレスの下位8ビットがh00且
つ、残りの転送データ量が32バイト以上の時に32バ
イトブロック転送を使用してDMA転送を行う。
【0038】DMAブリッジが管理する転送先アドレス
の下位8ビットがh00且つ、残りの転送データ量が3
2バイト未満の時はロングワード転送もしくはバイト転
送を使用してDMA転送を行う。ユーザがDMAUSA
Rに設定した転送元アドレスの下位8ビットがh00以
外である場合は、さかのぼってh00から32バイトブ
ロック転送でバッファに蓄積する。この時、バッファ内
には有効データと無効データが混在するが、DMAブリ
ッジは有効データのみ共有メモリ(SRAM)に転送す
る。
【0039】DMAブリッジが管理する転送先アドレス
の下位8ビットがh00且つ、残りの転送データ量が3
2バイト以上ある場合は、h00から32バイトブロッ
ク転送でバッファに蓄積する。この時、バッファ内のデ
ータは全て有効データであるので、DMAブリッジは3
2バイトのデータを共有メモリ(SRAM)に転送す
る。
【0040】DMAブリッジが管理する転送先アドレス
の下位8ビットがh00且つ、残りの転送データが32
バイト未満の場合は、h00から32バイトブロック転
送でバッファに蓄積する。この時、バッファ内には有効
データと無効データが混在するが、DMAブリッジは有
効データのみ共有メモリ(SRAM)に転送する。
【0041】この実施例では、上記の問題を解決するた
めのDMAトランザクション(転送開始から転送終了割
り込みまで)において動的に転送サイズを変更ことを特
徴としたDMA転送スケジューリングを行うモジュール
“DMAブリッジ”をDMACに内蔵するものである。
上記のスケジューリングの対象は転送サイズ(32バイ
トブロック転送、ロングワード転送、バイト転送)の組
み合わせと転送回数である。
【0042】DMAブリッジは自動的に数が最小になる
ように転送サイズの組み合わせと転送回数を算出し、D
MA転送のスケジューリングを行うことが可能であり、
ユーザはDMACに対し転送元アドレスから転送先アド
レスヘ転送したいデータ量(ランダム量可)を指定する
だけでよい。
【0043】DMAブリッジは、DMAC内の制御レジ
スタを直接書き換えることによってスケジューリングに
基づくDMA転送を行う。DMAブリッジは自ら作成し
たDMA転送スケジューリングに基づいて転送状況を管
理するため、ユーザは全ての転送スケジュールを終了し
た後の割り込みのみを監視すればよい。
【0044】SDRAMとのDMA転送を想定し、DM
AC内にSDRAMリード/ライト用にそれぞれ32バ
イト×2面のバッファを内蔵した。これによりSDRA
Mアクセスで最も効率のよい32バイトブロック転送
(転送サイズ)に対応することを可能とした。SDRA
MリードDMA転送は常に32バイトブロック転送を用
い、一旦DMAブリッジ内バッファに蓄積して必要なデ
ータだけを転送先アドレスに転送する方式を採用した。
これによりSDRAMが接続されるデータバスの占有率
を低減することができる。
【0045】上記の実施例によれば、DMA転送のスケ
ジュールをハードウェアが自動的に行うため、ソフトウ
ェアでDMA転送スケジュールを行う必要がなくなる。
ユーザはオーバヘッドに関わるDMA割り込み要求の回
数を気にすることなく、ランダムなデータ量をDMA転
送指定することが可能となる。DMA転送割り込み要求
の回数が軽減されるため、オーバヘッドを最小限に抑え
ることが出来、チップ全体のデータ転送効率が向上す
る。ランダムなデータ量を常に要求するモジュールでも
容易に、スケジューリングに基づくDMA転送機能を追
加することが可能になる。
【0046】以上本発明者よりなされた発明を実施例に
基づき具体的に説明したが、本願発明は前記実施例に限
定されるものではなく、その要旨を逸脱しない範囲で種
々変更可能であることはいうまでもない。例えば、DM
Aブリッジに設けられるSDRAM等のメモリ機能に対
応してバッファの構成は種々の実施形態を採ることがで
きる。各レジスタは、前記のようなDMAデータ転送を
行うようにするものであれば何であってもよい。また、
組み合わせる転送単位もDMACがサポートする仕様に
より種々の実施形態を採ることが出来る。この発明は、
中央処理ユニットと、インタフェイス回路と、上記イン
タフェイス回路を介したデータ転送を行うDMACとを
備えたシステムLSI等の各種半導体集積回路装置に広
く利用できる。
【0047】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば、下
記の通りである。中央処理ユニットと、インタフェイス
回路と、上記インタフェイス回路を介したデータ転送を
行うDMACとを備えた半導体集積回路装置において、
1回の転送開始から転送終了割り込みまでにおいて動的
に転送サイズを変更するDMA転送スケジューリングを
行うことを可能としたDMAブリッジを上記DMACに
設けることにより、DMA転送のスケジュールをハード
ウェアが自動的に行うためオーバヘッドに関わるDMA
割り込み要求の回数を気にすることなく、ランダムなデ
ータ量をDMA転送を効率よく行うことができる。
【0048】中央処理ユニットと、インタフェイス回路
と、上記インタフェイス回路を介してデータ転送を行う
DMACとを搭載した半導体集積回路装置におけるDM
Aデータ転送方法として、1回の転送開始から転送終了
割り込みまでに動的に転送サイズの変更可能としたDM
A転送スケジューリングを行うようにすることにより、
DMA転送のスケジュールをハードウェアが自動的に行
うためオーバヘッドに関わるDMA割り込み要求の回数
を気にすることなく、効率よくランダムなデータ量をD
MA転送を行うことができる。
【図面の簡単な説明】
【図1】この発明に係る半導体集積回路装置(システム
LSI)の一実施例を示す概略ブロック図である。
【図2】図1のDMAブリッジ12を用いたデータ転送
動作の一例を説明するためのフローチャート図である。
【図3】この発明に係るDAMCの一実施例を示すブロ
ック図である。
【図4】この発明に係るDAMCのデータ転送動作の一
例を説明するためのフローチャート図である。
【図5】この発明に係るDAMCのデータ転送動作の一
例を説明するためのフローチャート図である。
【図6】この発明に係るDMAライトトランザクション
時のDMAスケジューリング並びにバッファ制御(バッ
ファライト側)フローチャート図である。
【図7】この発明に係るDMAライトトランザクション
時のDMAスケジューリング並びにバッファ制御(バッ
ファリード側)フローチャート図である。
【図8】この発明に係るDMAリードトランザクション
時のDMAスケジューリング並びにバッファ制御(バッ
ファライト側)フローチャート図である。
【図9】この発明に係るDMAリードトランザクション
時のDMAスケジューリング並びにバッファ制御(バッ
ファリード側)フローチャート図である。
【図10】従来のDMA転送動作を説明するためのフロ
ーチャート図である。
【符号の説明】
1…システムLSI、2…共有メモリ、3…USBホス
トコア、4…モジュール内部データバス、5…USBモ
ジュール、6…周辺モジュールバス、7…BSC、8…
CPU、9…DMA転送パス、10…外部バス、11…
外付けSDRAM、12…DMAブリッジ、13…ブリ
ッジバス、14…DMAC、15…DMA部、16…D
MA転送完了信号、17…DMAトランザクション制御
/バッファ制御、18…ブリッジバスマスタ部、19…
SDRAMリード用バッファ、20…SDRAMライト
用バッファ、21…エンディアン変換部、22…バス調
停部、23…周辺モジュールバスインタフェイス部、2
4…割り込み信号、25…対SDRAM転送要求信号
(SDRAM→USB方向)、26…対SDRAM転送
要求信号(USB→SDRAM方向)、27…転送元/
先アドレス信号。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 西岡 直俊 東京都小平市上水本町5丁目22番1号 株 式会社日立超エル・エス・アイ・システム ズ内 (72)発明者 吉田 裕 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 (72)発明者 岡田 崇 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 早川 幹 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 鈴木 高明 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 Fターム(参考) 5B061 DD09 DD11 5B062 CC01 DD08 JJ03

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 中央処理ユニットと、 インタフェイス回路と、 上記インタフェイス回路を介したデータ転送を行うDM
    ACとを備え、 上記DMACは、1回の転送開始から転送終了割り込み
    までにおいて動的に転送サイズを変更するDMA転送ス
    ケジューリングを行うことを可能としたDMAブリッジ
    を含むものであることを特徴とする半導体集積回路装
    置。
  2. 【請求項2】 請求項1において、 上記DMAブリッジは、複数バイトブロック単位転送、
    ロングワード単位転送、ワード単位転送及びバイト単位
    転送からなる転送サイズの組み合わせと転送回数により
    上記DMA転送スケジューリングを行うことを特徴とす
    る半導体集積回路装置。
  3. 【請求項3】 請求項2において、 上記転送スケジューリングは、転送回数が最小になるよ
    うな転送サイズの組み合わせと転送回数を計算すること
    により決定されるものであることを特徴とする半導体集
    積回路装置。
  4. 【請求項4】 中央処理ユニットと、 インタフェイス回路と、 上記インタフェイス回路を介してデータ転送を行うDM
    ACとを搭載した半導体集積回路装置におけるDMAデ
    ータ転送方法であって、 1回の転送開始から転送終了割り込みまでに動的に転送
    サイズの変更可能としたDMA転送スケジューリングを
    行うことを特徴とするDMAデータ転送方法。
  5. 【請求項5】 請求項4において、 上記転送スケジューリングは、転送回数が最小になるよ
    うな複数バイトブロック単位転送、ロングワード単位転
    送、ワード単位転送及びバイト単位転送からはなる転送
    サイズの組み合わせと転送回数を計算することにより決
    定されるものであることを特徴とするDMAデータ転送
    方法。
JP2002082552A 2002-03-25 2002-03-25 半導体集積回路装置 Pending JP2003281077A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002082552A JP2003281077A (ja) 2002-03-25 2002-03-25 半導体集積回路装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002082552A JP2003281077A (ja) 2002-03-25 2002-03-25 半導体集積回路装置

Publications (2)

Publication Number Publication Date
JP2003281077A true JP2003281077A (ja) 2003-10-03
JP2003281077A5 JP2003281077A5 (ja) 2005-08-18

Family

ID=29230692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002082552A Pending JP2003281077A (ja) 2002-03-25 2002-03-25 半導体集積回路装置

Country Status (1)

Country Link
JP (1) JP2003281077A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008192150A (ja) * 2007-02-01 2008-08-21 Internatl Business Mach Corp <Ibm> 直接メモリ・アクセスを使用してプログラマブル論理装置を初期化するための方法、集積回路、システム及びコンピュータ・プログラム
WO2009037798A1 (ja) * 2007-09-21 2009-03-26 Mitsubishi Electric Corporation データ転送装置及びデータ転送方法
CN114741345A (zh) * 2022-04-24 2022-07-12 苏州雄立科技有限公司 一种usb dma数据传输装置和方法
WO2023119893A1 (ja) * 2021-12-23 2023-06-29 ソニーセミコンダクタソリューションズ株式会社 データ処理装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008192150A (ja) * 2007-02-01 2008-08-21 Internatl Business Mach Corp <Ibm> 直接メモリ・アクセスを使用してプログラマブル論理装置を初期化するための方法、集積回路、システム及びコンピュータ・プログラム
US8495545B2 (en) 2007-02-01 2013-07-23 International Business Machines Corporation Using direct memory access to initialize a programmable logic device
US8589834B2 (en) 2007-02-01 2013-11-19 International Business Machines Corporation Using direct memory access to initialize a programmable logic device
WO2009037798A1 (ja) * 2007-09-21 2009-03-26 Mitsubishi Electric Corporation データ転送装置及びデータ転送方法
US8073992B2 (en) 2007-09-21 2011-12-06 Mitsubishi Electric Corporation Data transfer device and data transfer method
WO2023119893A1 (ja) * 2021-12-23 2023-06-29 ソニーセミコンダクタソリューションズ株式会社 データ処理装置
CN114741345A (zh) * 2022-04-24 2022-07-12 苏州雄立科技有限公司 一种usb dma数据传输装置和方法
CN114741345B (zh) * 2022-04-24 2024-02-13 苏州雄立科技有限公司 一种usb dma数据传输装置和方法

Similar Documents

Publication Publication Date Title
US6151651A (en) Communication link with isochronous and asynchronous priority modes coupling bridge circuits in a computer system
JP5137171B2 (ja) データ処理装置
JP3181515B2 (ja) データ転送方法及びその方法を用いたデータ転送装置
US6944686B2 (en) Data transfer control circuit with terminal sharing
JP2004171209A (ja) 共有メモリデータ転送装置
WO1996000940A1 (en) Pci to isa interrupt protocol converter and selection mechanism
EP1233329A1 (en) Shared component clock protrction for multicore DSP device
JPH10105373A (ja) データ・バッファリング・システム
TW452696B (en) Method for arbitrating multiple memory access requests in a unified memory architecture via a non unified memory controller
EP1222551B1 (en) Asynchronous centralized multi-channel dma controller
US20090119428A1 (en) Method and Apparatus for Indirect Interface with Enhanced Programmable Direct Port
US20150177816A1 (en) Semiconductor integrated circuit apparatus
EP1207457A1 (en) External bus arbitration technique for multicore DSP device
JP2003281077A (ja) 半導体集積回路装置
US7310717B2 (en) Data transfer control unit with selectable transfer unit size
JP2004349836A (ja) データ転送制御装置、電子機器及びデータ転送制御方法
US6938118B1 (en) Controlling access to a primary memory
JP2003150395A (ja) プロセッサとそのプログラム転送方法
JP2005165592A (ja) データ転送装置
JP2002123420A (ja) メモリアクセス装置
JP2007108858A (ja) ピン共有装置およびピン共有方法
JP2000215154A (ja) Dmaコントロ―ラ
JP2001014259A (ja) データ処理装置
EP0940757A2 (en) Traffic controller using priority and burst control for reducing access latency
JP3727452B2 (ja) データ処理装置及びデータ処理システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070725

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071115