JP2005242658A - バスブリッジ - Google Patents

バスブリッジ Download PDF

Info

Publication number
JP2005242658A
JP2005242658A JP2004051524A JP2004051524A JP2005242658A JP 2005242658 A JP2005242658 A JP 2005242658A JP 2004051524 A JP2004051524 A JP 2004051524A JP 2004051524 A JP2004051524 A JP 2004051524A JP 2005242658 A JP2005242658 A JP 2005242658A
Authority
JP
Japan
Prior art keywords
bus
data
dma
control circuit
buffer
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
JP2004051524A
Other languages
English (en)
Inventor
Masato Rinnai
政人 林内
Hiroshi Fujii
裕志 藤井
Takeshi Kondou
丈詞 近藤
Hitoshi Kuroyanagi
等 黒柳
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2004051524A priority Critical patent/JP2005242658A/ja
Publication of JP2005242658A publication Critical patent/JP2005242658A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

【課題】 バス幅の異なる各モジュール間でデータ転送する際のバスの使用効率を向上させる。
【解決手段】 バスブリッジ15が、メモリ13から上位バス17および下位バス18を通じて通信制御装置16に対して行われるDMAコントローラ14によるDMAデータ転送を中継する場合には、制御回路19aは、バスブリッジ15の外部から与えられる制御指令に基づいて上位側のセレクタ19bに上位バス17から与えられる64ビットのデータを64ビットのバッファ21に出力させることにより記憶させ、制御回路20aは、下位側のセレクタ20bに64ビットのバッファ21に記憶されたデータを下位バス18のデータバスに対して16ビット毎に選択切替出力させる。
【選択図】 図1

Description

本発明は、コントローラを使用したデータ転送中継用のバスブリッジに関する。
例えば、システムLSIの内部では、機能の異なる複数のモジュールに分割構成されている。これらのモジュールは、処理速度(動作クロック)の速い上位モジュールとこの上位モジュールに比較して処理速度の遅い下位モジュールに分割されており、一般に上位モジュールの第1バスのデータバスの幅は下位モジュールの第2バスのデータバスの幅よりも広い。例えば、このようなシステムLSIの内部でDMAコントローラ(Direct Memory Access Controller)(本発明のコントローラに相当)によりDMA転送処理が行われるときには下位モジュールの第2バス幅に合わせてデータ転送処理が行われる。この概略的な構成を図5に示している。尚、本発明の課題には直接関係しないがバスブリッジの関連文献として特許文献1に開示されている。
特開2003−108514公報
例えば、図5に示すシステムLSI1の回路構成の場合、上位モジュール2の第1バス3の幅(32ビット)よりも幅の狭い下位モジュール4に接続された第2バス5の幅(16ビット)に合わせてコントローラ9によりDMA転送処理が行われるが、その場合例えば上位モジュール2としてのメモリから下位モジュール4にDMA転送するときには、たとえDMA転送処理を中継するバスブリッジ6を設けていたとしても、バスブリッジ6を構成する制御回路7がバッファ8を通じてデータを中継制御する際に、図5に示すように、バスブリッジ6の下位16ビット8aのみを使用して中継制御するように構成されている場合には、DMA転送処理に使用されない上位ビット8b側に無効ビットが存在するようになる。
従来、第1および第2バス3および5のバス幅の差は16ビット程度であったが、近年、これらのバス幅の差が広く(例えば32ビット,48ビット)なりつつある。第1および第2バス3および5のデータバス幅の差が広ければ広いほど無効ビットが増加するため、システムLSI1のバスの使用効率をさらに低減させているという問題を生じている。
本発明は、上記事情に鑑みてなされたものであり、その目的は、バス幅の異なる各モジュール間のバスの使用効率を向上させることができるバスブリッジおよびこのバスブリッジを使用したデータ転送処理方法を提供することにある。
請求項1記載の発明によれば、バスブリッジは第1バスとこの第1バスよりもデータバス幅の狭い第2バス間に設けられており、コントローラにより2つのモジュール間において第1バスから第2バスを通じてデータ転送中継する場合には、バスブリッジの制御手段は外部から与えられる制御指令に基づいて選択手段に第1バスのデータバスから与えられるデータを記憶手段に出力させ、記憶手段に記憶されたデータを第2バスのデータバスに単位記憶領域毎に選択切替出力させるため、たとえ第1バスおよび第2バスのバス幅の差が広くなったとしても、第1および第2バスの使用効率を向上することができる。
また、請求項2記載の発明によれば、バスブリッジは第1バスとこの第1バスよりもデータバス幅の狭い第2バス間に設けられており、コントローラにより2つのモジュール間において第2バスから第1バスを通じてデータ転送中継する場合には、バスブリッジの制御手段は、外部から与えられる制御指令に基づいて、選択手段に第2バスのデータバスから与えられるデータを記憶手段の単位記憶領域毎に選択入力させることにより単位記憶領域毎に記憶させ、当該記憶されたデータを第1バスのデータバスに出力させるため、たとえ第1バスおよび第2バスのバス幅の差が広くなったとしても、第1および第2バスの使用効率を向上することができる。
以下、本発明の一実施形態について図1ないし図4を参照しながら説明する。尚、背景技術欄や発明が解決しようとする課題欄に説明した構成と同一構成については同一符号を付して説明を行う。
図1は、システムLSI1に代わるシステムLSI11の内部構成について概略的に示している。このシステムLSI11は、CPU12,上位モジュール(第1のモジュール)としてのメモリ13,DMAコントローラ14(第1のコントローラ),バスブリッジ6に代わるバスブリッジ15,下位モジュール(第2のモジュール:第2のコントローラ)としての通信制御装置16,第1バスとしての上位バス17,および第2バスとしての下位バス18を備えている。
これらのうちCPU12,メモリ13,DMAコントローラ14,バスブリッジ15は、上位バス17により互いに接続されている。この上位バス17は、図示しないが書込用データバスおよび読出用データバス,アドレスバス,制御信号線により構成されており書込および読出用データバスの幅はそれぞれ64ビットで形成されている。
また通信制御装置16およびバスブリッジ15は下位バス18により接続されている。この下位バス18も同様に書込用データバスおよび読出用データバス,アドレスバス,制御信号線により構成されており(何れも図示せず)、書込および読出用データバスの幅はそれぞれ16ビットで形成されている。
DMAコントローラ14は、メモリ13およびバスブリッジ15間のDMA転送処理を行うことができるようになっているが、このDMA転送処理している間に、CPU12は上位バス17に接続された各構成(図示せず)と各種処理を行うことができるようになっている。
バスブリッジ15は、上位バスインタフェース回路19と、下位バスインタフェース回路20と、記憶手段としてのバッファ21とから構成されている。上位バスインタフェース回路19には、上位側の制御回路19a(第1の制御手段)および上位側セレクタ19b(第1の選択手段)が設けられており、制御回路19aは、通信制御装置16または/およびDMAコントローラ14から与えられる制御指令に基づいて上位側セレクタ19bを制御するようになっているが、詳しくは後述する。
他方、下位バスインタフェース回路20には、下位側の制御回路20a(第2の制御手段)およびセレクタ20b(第2の選択手段),カウンタ20cが設けられており、制御回路20aは、通信制御装置16から与えられる制御指令に基づいて下位側セレクタ20bおよびカウンタ20cを制御するようになっている。バッファ21は、上位バス17のデータバス幅に相当する記憶領域(例えば64ビット)を有しており、各制御回路19aおよび20aの各セレクタ19bおよび20bに対する選択切替制御指令に基づいて例えば2バイト(1ワード:16ビット)単位の単位記憶領域21a〜21d毎に読出/書込可能に構成されている。またバッファ21は、制御回路19aの消去制御指令に基づいて例えば2バイト単位の単位記憶領域21a〜21d毎に消去可能に構成されている。
上位側セレクタ19bは、制御回路19aによる制御指令に基づいて、上位バス17の書込用データバスから与えられるデータをバッファ21に選択切替出力する、もしくはバッファ21に記憶されているデータを上位バス17の読出用データバスに選択切替出力するようになっている。
また下位側のセレクタ20は、制御回路20aによる制御指令に基づいて、下位バス18の書込用データバスから与えられるデータをバッファ21に選択切替出力する、もしくはバッファ21のデータを下位バス18の読出用データバスに選択切替出力するようになっている。
またカウンタ20cは、少なくともバッファ21の単位記憶領域の数を識別可能な最大カウント数を有するカウンタである。本実施形態の場合、上位バス17のバス幅64ビットに対して下位バス18のバス幅16ビットであるため、64/14=4の最大カウント数を有している。このカウンタ20cは、制御回路20aによる制御指令に基づいてカウントするようになっている。
これら上位バスおよび下位バスインタフェース回路19および20間には、互いに制御指令が与えられるように接続されており、各回路19および20に与えられる制御指令を互いに入出力可能に構成されている。
上記構成の作用について図2ないし図4を参照しながら説明する。図2は、本発明に関連するデータおよび制御信号の流れを概略的に示している。
<通信制御装置16からメモリ13へのDMA転送中継処理について>
図3は、通信制御装置16からメモリ13にDMA転送処理する際のタイミングチャートを示している。まず、通信制御装置16は、バスブリッジ15の制御回路20aにDMAリクエスト信号Dreqを出力する(図3の(1−1)参照)。制御回路20aは、このDMAリクエスト信号Dreqを受付けると、通信制御装置16にDMAアクノリッジ信号Dackを与える(図3の(2−1)参照)。また制御回路20aは、下位側セレクタ20bに制御指令として切替制御信号を与える。すると、通信制御装置16は、通信制御装置16−バッファ21間においてバスブリッジ15の下位側セレクタ20bを通じてデータ「AAAA」の転送処理を行う。これらの動作が繰り返されることにより、順次データ「AAAA」〜「DDDD」の転送処理が行われるが(図3の(1−1)〜(2−4)参照)、データ転送処理が段階的に行われるときには、バスブリッジ15の64ビットのバッファ21の単位記憶領域21a〜21dに対して下位バス18のバス幅16ビット単位で順次格納される。制御回路20aは、バッファ21にデータを格納すると共にカウンタ20cをインクリメントする(図3の(3−1)〜(3−4)参照)。すなわち、制御回路20aはカウンタ20cの値によりバッファ21のポインタ制御を行うことになる。これらの処理がバスブリッジ15のバッファ21にデータがフルに格納されるまで繰り返される。
バスブリッジ15のバッファ21にデータがフルに格納されると2ビットのカウンタ20cが1巡して値「00」になるため、制御回路20aまたは19aは、DMAコントローラ14に対してDMAリクエスト信号Dreqを出力する(図3の(4−1)参照)。DMAコントローラ14は、このDMAリクエスト信号Dreqを受け付けると、DMAアクノリッジ信号Dackを制御回路19aに出力する。そして、DMAコントローラ14は、バッファ21−メモリ13間のDMA転送処理を上位側セレクタ19bを通じて行う(図3の(6−1)参照)。このとき、DMA転送処理は、上位バス17のデータバス幅に合わせた64ビット幅で一度に行われる。
またこれらの処理と同時に、転送用データがある場合には、下位側では引き続き通信制御装置16とバッファ21との間で周期的にデータ転送処理が行われる(図3の(1−5)〜(3−5)参照)が、転送用のデータが全て下位側セレクタ20bを通じてバッファ21に転送されると、通信制御装置16は、終了通知するための終了通知信号DMAendをバスブリッジ15の制御回路19aに出力する(図3の(7−1)参照)。
バスブリッジ15の制御回路19aは、バッファ21にフルにデータが格納されていない(すなわちカウンタ20cが「00」以外)場合であっても、終了通知信号DMAendを検出すると、DMAコントローラ14に対してDMAリクエスト信号Dreqを出力する(図3の(4−2)参照)。DMAコントローラ14は、DMAリクエスト信号Dreqを受付けると、制御回路19aにDMAアクノリッジ信号Dackを出力する(図3の(5−2)参照)。すると、DMAコントローラ14は、バッファ21にフルにデータが格納されていない場合でも、バスブリッジ15のバッファ21−メモリ13間でDMA転送処理する(図3の(6−2)参照)。また、制御回路19aは、終了通知信号DMAendを受け付けると、制御回路20aを通じてバスブリッジ15のカウンタ20c(バッファ21のポインタ)を初期化する(図3の(3−6)参照)。
<メモリ13から通信制御装置16へのDMAデータ転送中継処理について>
以下、図4を参照しながらメモリ13から通信制御装置16へのDMAデータ転送中継処理について説明する。メモリ13から通信制御装置16に対してデータ転送する場合についても、通信制御装置16がバスブリッジ15の制御回路20aに対してDMAリクエスト信号Dreqを出力することによりデータ転送処理が開始される(図4の(1−1)参照)。
通信制御装置16が制御回路20aに対してDMAリクエスト信号Dreqを出力し制御回路20aがこの信号を受け付けると、制御回路20aは、DMAコントローラ14に対してDMAリクエスト信号Dreqを出力する(図4の(2−1)参照)。DMAコントローラ14は、このDMAリクエスト信号Dreqを受付けると、DMAアクノリッジ信号Dackをバスブリッジ15の制御回路19aに出力する(図4の(3−1)参照)。制御回路19aがDMAアクノリッジ信号Dackを受付けると、DMAコントローラ14は、バスブリッジ15のバッファ21−メモリ13間のDMA転送処理を行う。このとき転送データは、上位バス17を通じて64ビットのバッファ21に格納される(図4の(4−1)参照)。
バスブリッジ15の制御回路19aは、64ビットのバッファ21に転送データが格納されたことを検出すると、制御回路20aから通信制御装置16に対してDMAアクノリッジ信号Dackを出力させる(図4の(5−1)参照)。そして、通信制御装置16はDMAアクノリッジ信号Dackを受付けると、通信制御装置16の機能によりバッファ21に記憶された64ビットのデータを順次16ビット毎に通信制御装置16内に転送する(図4の(5−1)〜(6−4))。このとき、制御回路20aは、バッファ21からデータを転送されるたびにカウンタ20cをインクリメントする(図4の(7−1)〜(7−4)参照)。すなわち、制御回路20aは、カウンタ20cによりバッファ21のポインタ制御を行う。
そして64ビット分のデータ転送が終了し、バッファ21内に記憶されたデータがEMPTY(全て読出された状態)になると、カウンタ20cの値が1巡し「00」になる。バッファ21に転送データがなくなると、制御回路20aが通信制御装置16から出力されるDMAリクエスト信号Dreqを受付け、もし転送データが存在するならば再度上位バス17側からデータ転送が行われると共に、下位バス18側の通信制御装置16に対してデータ転送が行われる(図4の(1−5)〜(7−5)参照)。
この後、通信制御装置16は、データ転送処理が終了するとバスブリッジ15の制御回路19aに対して終了を通知するDMA終了通知信号DMAEndを出力する(図4の(8−1)参照)。制御回路19aは、このDMA終了通知信号DMAEndを受付けるとカウンタ20c(バッファ21のポインタ)を初期化すると共に、バッファ21の単位記憶領域21a〜21dを消去(クリア)する。
以上説明したように本実施形態によれば、バスブリッジ15が、メモリ13から上位バス17および下位バス18を通じて通信制御装置16に対して行われるDMAコントローラ14によるDMAデータ転送を中継する場合には、制御回路20aは、バスブリッジ15の外部から与えられる制御指令に基づいて上位側のセレクタ19に上位バス17から与えられる64ビットのデータを64ビットのバッファ21に出力させることにより記憶させ、制御回路20aは、下位側のセレクタ20bに64ビットのバッファ21に記憶されたデータを下位バス18のデータバスに対して16ビット毎に選択切替出力させるため、下位バス18の16ビットのバス幅に合わせてDMA転送処理を行う必要がなくなり、バス幅の異なる上位バス17および下位バス18の使用効率を向上できるようになる。
また逆に、バスブリッジ15が、通信制御装置16から下位バス18および上位バス17を通じてメモリ13に対して行われるDMAコントローラ14によるDMA転送処理を中継する場合には、バスブリッジ15の外部から与えられる制御指令に基づいて、制御回路20は、下位側のセレクタ20bに下位バス18のデータバスから与えられるデータをバッファ21の単位記憶領域毎に選択入力させることにより単位記憶領域21a〜21d毎に記憶させ、制御回路19aは、バッファ21に記憶された64ビットのデータを上位バス17のデータバスに出力させてDMAコントローラ14によるDMA転送機能によりデータ転送するため、下位バス18のバス幅に合わせてDMA転送処理を行う必要がなくなり、バス幅の異なる上位バス17および下位バス18の使用効率を向上できるようになる。
(他の実施形態)
本発明は、前述実施形態に限定されるものではなく、例えば、以下に示す変形もしくは拡張が可能である。
制御回路19aおよび20aは一体に構成しても良い。
上位バス17および下位バス18について、読出用データバスおよび書込用データバスを設けた実施形態を示したが、これらはそれぞれ読出/書込共用のデータバスであっても良い。
バッファ21の記憶領域は、少なくとも上位バス17のデータバス幅に相当するビット数以上の記憶領域を有していれば良い。すなわち、前述実施形態においては、64ビットの記憶領域を有する実施形態を示したが、例えば128ビット(8ワード:16バイト),もしくは256ビット(16ワード:32バイト)の記憶領域を有していても良い。
本発明の一実施形態を示す電気的構成図 信号の流れを概略的に示す電気的構成図 DMA転送処理を示すタイミングチャート(その1) DMA転送処理を示すタイミングチャート(その2) 従来例を示す図1相当図
符号の説明
図面中、11はシステムLSI、12はCPU、13はメモリ(第1のモジュール,上位モジュール)、14はDMAコントローラ(コントローラ)、15はバスブリッジ、16は通信制御装置(第2のモジュール,下位モジュール)、17は上位バス(第1バス)、18は下位バス(第2バス)、19は上位バスインタフェース回路、19aは制御回路(制御手段)、19bは上位側セレクタ(第1の選択手段)、20は下位バスインタフェース回路、20aは制御回路(制御手段)、20bは下位側セレクタ(第2の選択手段)、20cはカウンタ、21はバッファ(記憶手段)、21a〜21dは単位記憶領域を示す。

Claims (2)

  1. 第1バス,および当該第1バスよりもデータバス幅の狭い第2バス間に設けられ、当該第1および第2バスを通じて2つのモジュール間についてコントローラによるデータ転送処理を中継するバスブリッジにおいて、
    制御手段と、選択手段と、少なくとも第1バスのデータバス幅に相当する記憶領域を有し前記第2バスのデータバス幅に相当する所定の単位記憶領域毎に読出/書込可能に構成された記憶手段とを備え、
    前記制御手段は、前記第1バスから第2バスを通じてデータ転送中継する場合には、外部から与えられる制御指令に基づいて、前記選択手段に、前記第1バスのデータバスから与えられるデータを前記記憶手段に出力させ当該記憶手段に記憶されたデータを前記第2バスのデータバスに前記単位記憶領域毎に選択切替出力させるように構成されていることを特徴とするバスブリッジ。
  2. 第1バス,および当該第1バスよりもデータバス幅の狭い第2バス間に設けられ、当該第1および第2バスを通じて2つのモジュール間についてコントローラによるデータ転送処理を中継するバスブリッジにおいて、
    制御手段と、選択手段と、少なくとも第1バスのデータバス幅に相当する記憶領域を有し前記第2バスのデータバス幅に相当する所定の単位記憶領域毎に読出/書込可能に構成された記憶手段とを備え、
    前記制御手段は、前記第2バスから第1バスを通じてデータ転送中継する場合には、外部から与えられる制御指令に基づいて、前記選択手段に、前記第2バスのデータバスから与えられるデータを前記記憶手段の単位記憶領域毎に選択入力させることにより単位記憶領域毎に記憶させ当該記憶手段に記憶されたデータを前記第1バスのデータバスに出力させるように構成されていることを特徴とするバスブリッジ。

JP2004051524A 2004-02-26 2004-02-26 バスブリッジ Pending JP2005242658A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004051524A JP2005242658A (ja) 2004-02-26 2004-02-26 バスブリッジ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004051524A JP2005242658A (ja) 2004-02-26 2004-02-26 バスブリッジ

Publications (1)

Publication Number Publication Date
JP2005242658A true JP2005242658A (ja) 2005-09-08

Family

ID=35024338

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004051524A Pending JP2005242658A (ja) 2004-02-26 2004-02-26 バスブリッジ

Country Status (1)

Country Link
JP (1) JP2005242658A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5447511B2 (ja) * 2009-05-18 2014-03-19 日本電気株式会社 通信回路および通信方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5447511B2 (ja) * 2009-05-18 2014-03-19 日本電気株式会社 通信回路および通信方法
US8850256B2 (en) 2009-05-18 2014-09-30 Nec Corporation Communication circuit and communication method

Similar Documents

Publication Publication Date Title
JP2008009817A (ja) 半導体装置及びデータ転送方法
JP4322659B2 (ja) シリアル伝送制御装置、コンピュータシステム、および、シリアル伝送制御方法
JP4855864B2 (ja) ダイレクトメモリアクセスコントローラ
JP4015986B2 (ja) 半導体集積回路装置
JP5108690B2 (ja) Dma装置及びdma転送方法
JP2005242658A (ja) バスブリッジ
JP2003281074A (ja) ダイレクトメモリアクセス装置
US20080091865A1 (en) System control device
CN101667462A (zh) 适于内存的修复模块,使用其的修复装置及其修复方法
JP2006338533A (ja) Ecc回路を有するマルチレイヤバスシステム
US7395520B2 (en) LSI apparatus
JP6024752B2 (ja) 情報処理装置およびその制御方法
JP2007087086A (ja) Dma転送システム
JP2002149593A (ja) 階層バスシステム
JPH047730A (ja) 磁気ディスク制御システム
JP4682786B2 (ja) マイクロコンピュータ
JP2007323491A (ja) ダイレクトメモリアクセス制御装置および制御方法
JP2005063183A (ja) 半導体集積回路、半導体集積回路ブロック、データ転送システム
JP2002215413A (ja) ファームウェア転送方法およびモジュール間データ伝送システム
JP2007004424A (ja) バスシステム
JPH11149439A (ja) データ転送装置
JP2010033452A (ja) レジスタ制御回路およびレジスタ制御方法
JP2007334600A (ja) 半導体集積回路装置
JP2004362176A (ja) 集積回路
JPS62151028A (ja) デ−タ変換装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090707