【課題】同一の機能を行う2個以上のスレーブチップ及びこれを制御するマスターチップで構成されたマルチ―チップシステムにおいて、レジスタ'書き込み'動作時に全てのスレーブチップに同時に'書き込み'が可能なマルチ―チップシステム及びそのレジスタ設定方法を提供する。
【解決手段】複数のスレーブチップと、前記複数のスレーブチップを制御するマスターチップと、を備えたマルチ―チップシステムにおいて、前記複数のスレーブチップには、共通チップアイディー及び固定チップアイディーが設定されており、前記マスターチップは、前記共通チップアイディーを用いて前記複数のスレーブチップに同時に'書き込み'命令を行い、前記固定チップアイディーを用いて前記複数のスレーブチップに対して個別的に'書き込み'命令を行うようにマルチ―チップシステムを構成する。
前記共通チップアイディーは、前記複数のスレーブチップに共通的に付与された論理的なチップアイディーであって、前記固定チップアイディーは、前記複数のスレーブチップのそれぞれに割り当てられた物理的なチップアイディーであることを特徴とする、請求項1に記載のマルチ―チップシステム。
前記複数のスレーブチップは、前記命令に用いられたチップアイディーが共通チップアイディー又は自分の固定チップアイディーと一致する場合に前記'書き込み'動作を行うことを特徴とする、請求項1に記載のマルチ―チップシステム。
前記SPIバスを介して接続する場合、前記複数のスレーブチップを同時に活性化した後、MOSI(Master Output Slave Input)端子に共通チップアイディー及び固定チップアイディーを出力することによって前記複数のスレーブチップに同時に'書き込み'動作を命令することを特徴とする、請求項3に記載のマルチ―チップシステム。
前記マスターチップのSS(Slave Select)端子は、前記複数のスレーブチップのCE(Chip Enable)端子に共通的に連結されたことを特徴とする、請求項5に記載のマルチ―チップシステム。
共通チップアイディー及び固定チップアイディーが設定された複数のスレーブチップと、前記複数のスレーブチップを制御するマスターチップと、を備えたマルチ―チップシステムの動作方法において、
前記マスターチップが、前記共通チップアイディー又は前記固定チップアイディーを用いて前記複数のスレーブチップに'書き込み'動作を命令する過程;及び
前記複数のスレーブチップが、前記命令に用いられたチップアイディーが共通チップアイディー又は自分の固定チップアイディーと一致する場合に前記'書き込み'動作を行う過程;を含むマルチ―チップシステムの動作方法。
【背景技術】
【0002】
この部分に記述された内容は、単純に本実施例に対する背景情報を提供するだけで、従来の技術を構成するものではない。
【0003】
図1は、一般的なマルチ―チップシステムの構成を例示した図である。
【0004】
図1に示したように、マルチ―チップシステムは、同一の機能を行う2個以上のスレーブチップと、これらを制御するマスターチップとで構成される。マスターチップは、I
2C(Inter Integrated Circuit)、SPI(Serial Peripheral Interface)などの汎用インターフェース方式を使用して各スレーブチップのレジスタを制御することによってシステムを駆動する。各スレーブチップは、固有に割り当てられた固定チップアイディーで区別される。各スレーブチップのレジスタに'書き込み'/'読み取り'動作をするとき、マスターチップでは、まず、チップアイディーを伝達し、スレーブチップのインターフェースデコーディング部では、伝達されたチップアイディーが自分の固定チップアイディーと一致する場合に'書き込み'/'読み取り'動作を行う。
【0005】
一方、マルチ―チップシステムの動作のための初期設定過程では、全てのスレーブチップの同一のアドレスに同一のデータを書き込む場合が存在する。例えば、ダイバーシティ受信システムの場合、チャンネルの周波数チューニングのために初期設定値を各スレーブチップごとに設定し、ダイバーシティシステムを動作させるが、特に、チャンネル周波数チューニング時間は重要な性能要素の一つになる。従来の方式によると、レジスタを設定するにおいて各スレーブチップの固定チップアイディーを変えながら全てのスレーブチップに個別的に接近して'書き込み'命令を与えるので、初期設定時間が性能低下の要因として作用するようになる。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本実施例は、同一の機能を行う2個以上のスレーブチップ及びこれを制御するマスターチップで構成されたマルチ―チップシステムにおいて、レジスタ'書き込み'動作時に全てのスレーブチップに同時に'書き込み'が可能なマルチ―チップシステム及びそのレジスタ設定方法を提供することを主な目的とする。
【課題を解決するための手段】
【0007】
本実施例の一側面によると、複数のスレーブチップと、前記複数のスレーブチップを制御するマスターチップとを備えたマルチ―チップシステムにおいて、前記複数のスレーブチップには、共通チップアイディー及び固定チップアイディーが設定されており、前記マスターチップは、前記共通チップアイディーを用いて前記複数のスレーブチップに同時に'書き込み'命令を行い、前記固定チップアイディーを用いて前記複数のスレーブチップに対して個別的に'書き込み'命令を行うように構成されたことを特徴とするマルチ―チップシステムを提供する。
【0008】
前記共通チップアイディーは、前記複数のスレーブチップに共通的に付与された論理的チップアイディーであって、前記固定チップアイディーは、前記複数のスレーブチップにそれぞれ割り当てられた物理的なチップアイディーであることを特徴とする。
【0009】
前記複数のスレーブチップは、前記命令に用いられたチップアイディーが共通チップアイディー又は自分の固定チップアイディーと一致する場合に前記'書き込み'動作を行うように構成することができる。
【0010】
前記マスターチップと前記複数のスレーブチップは、I
2C(Inter Integrated Circuit)又はSPI(Serial Peripheral Interface)バスを介して接続するように構成することができる。
【0011】
本実施例の他の側面によると、共通チップアイディー及び固定チップアイディーが設定された複数のスレーブチップと、前記複数のスレーブチップを制御するマスターチップとを備えたマルチ―チップシステムの動作方法において、前記マスターチップが、前記共通チップアイディー又は前記固定チップアイディーを用いて前記複数のスレーブチップに'書き込み'動作を命令する過程と、前記複数のスレーブチップが、前記命令に用いられたチップアイディーが共通チップアイディー又は自分の固定チップアイディーと一致する場合に前記'書き込み'動作を行う過程とを含むマルチ―チップシステムの動作方法を提供する。
【発明の効果】
【0012】
以上説明したように、本実施例によると、マルチ―チップシステムにおいてマスターチップから各スレーブチップに伝達される'書き込み'命令の回数を減少させることができ、その結果、各スレーブチップのレジスタ設定時間を短縮させることができる。
【発明を実施するための形態】
【0014】
以下、本発明の一部の実施例を例示的な図面を通して詳細に説明する。各図面の構成要素に参照符号を付加するにおいて、同一の構成要素に対しては、それらが異なる図面上に表示されるとしても、可能な限り同一の符号を付していることに留意しなければならない。また、本発明を説明するにおいて、関連する公知の構成又は機能に対する具体的な説明が本発明の要旨を不明瞭にし得ると判断される場合は、それについての詳細な説明は省略する。
【0015】
明細書全体において、ある部分がある構成要素を'含む'、'備える'とするとき、これは、特別に反対の記載がない限り、他の構成要素を除外するのではなく、他の構成要素をさらに含むことができることを意味する。また、明細書に記載した'...部'、'モジュール'などの用語は、少なくとも一つの機能や動作を処理する単位を意味し、これは、ハードウェアやソフトウェア又はハードウェアとソフトウェアとの結合で具現することができる。
【0016】
本発明の一実施例に係るマルチ―チップシステムは、同一の機能をする2個以上のスレーブチップと、これを制御するマスターチップとで構成されており、各スレーブチップに固定チップアイディー及び共通チップアイディーが割り当てられている。スレーブチップの固定チップアイディーは、一般にいくつかのピンで決定される物理的チップアイディーであり、共通チップアイディーは、各スレーブチップに共通的に割り当てられた論理的チップアイディーであり得る。マスターチップは、I
2C(Inter Integrated Circuit)、SPI(Serial Peripheral Interface)などの汎用インターフェース方式を使用して各スレーブチップのレジスタを制御することによってシステムを駆動する。特に、本発明の一実施例によると、マスターチップは、スレーブチップのレジスタ'書き込み'動作時、固定チップアイディーを用いて所望の各スレーブチップにレジスタを設定するだけでなく、共通チップアイディーを用いて全てのスレーブチップに同時にレジスタを設定することができる。
【0017】
以下では、
図2及び
図3を参照して、I
2Cインターフェースが適用されたマルチ―チップシステムにおける本発明の一実施例に係るレジスタ設定動作を説明する。
【0018】
図2は、本発明の一実施例に係る、I
2Cバスを介してマスターチップが複数のスレーブチップと連結された形態のマルチ―チップを示した図である。
【0019】
I
2Cインターフェースは、マイクロプロセッサーと低速周辺装置との間の通信の用途でPhilipsで開発した同期通信規格である。I
2Cバスは、両方向オープンドレイン(Open Drain)線であるSCL(Serial Clock)及びSDA(Serial Data)からなり、各ノードはマスター―スレーブ(Master―Slave)形態で動作する。
【0020】
SCLは、通信の同期のためのクロック用線であって、SDAはデータ用線である。マスターチップは、SCLに同期のためのクロックを出力し、スレーブチップは、SCLに出力されるクロックに合わせてSDAを介してデータを出力または入力する。一つのSDA線のみでデータを取り交わすので、I
2Cバスは半二重(Half―duplex)通信のみが可能である。SCL線とSDA線はいずれもオープンドレインであるので、二つの線にはそれぞれプルアップ抵抗(Pull―up Resistor)を連結しなければならない。
【0021】
全てのI
2CマスターチップとスレーブチップのSCLは互いに連結され、SDAも互いに連結される。すなわち、全ての装置がSCLとSDAをそれぞれ共有している形態である。
【0022】
SCLとSDAはいずれもオープンドレインであるので、全ての装置のSCLとSDAはそれぞれワイヤードAND(Wired―AND)で連結されている。ワイヤードAND連結では、いずれか一つのチップが'0'を出力すると、該当の信号の状態は論理'0'になる。SCLやSDAに連結されているいずれかのチップが論理'0'を出力した場合、他のチップがその信号の状態を論理'1'にし得る方法はない。したがって、I
2Cバスに連結されてはいるが、現在通信に参加していない各チップは、いずれも自分の出力をフローティング(Floating)状態に維持しなければならない。
【0023】
I
2Cバスで使用されるデータパケットの形式は、ACKを含む9ビットの形態であって、I
2Cインターフェースで通信の基本単位になる。マスターチップは、SCLとSDAがいずれも'1'の状態でSDAを'0'に変え、すなわち、開始条件を出力しながら通信の開始を知らせる。開始条件の後からはSCLの状態が'0'である区間のみでSDAの論理値が変わる。マスターチップがSCLに出力するクロックに同期を合わせて、SDAにはデータがMSBから一ビットずつ出力される。SCLは、常にマスターチップが出力する信号であるが、SDAは、現在の動作がマスターの'読み取り'であるか、それとも'書き込み'であるかによってマスターチップ又はスレーブチップの出力であり得る。
【0024】
I
2Cバスでマスターチップが各スレーブチップを区分する手段は、スレーブチップの固定チップアイディーである。全てのI
2Cスレーブチップは固定チップアイディーを有しており、マスターチップは、このような固定チップアイディーによって所望のスレーブチップを指定する。通常、固定チップアイディーの長さが7ビットであるので、この場合、マスターチップは最大128個のスレーブチップ装置と連結することができる。また、本発明の一実施例に係るマルチ―チップシステムでは、各スレーブチップにこのような固定チップアイディーが割り当てられる他に、全てのスレーブチップに共通的に共通チップアイディーが割り当てられている。
【0025】
以下では、
図3を参照して、I
2Cマスターチップがスレーブチップのチップアイディーを指定し、データを取り交わす方法について説明する。
【0026】
図3は、本発明の一実施例に係るマルチチップシステムにおいて、I
2Cインターフェースを用いて複数のスレーブチップのレジスタを書き込むときのプロトコルの例示である。
【0027】
マスターチップは、開始条件に続いてスレーブチップの7ビットチップアイディーを出力する。全てのスレーブチップに対して同一のデータをレジスタ上の同一のアドレスに書き込む場合、マスターチップは共通チップアイディーを出力する。また、スレーブチップごとにレジスタ上の他のアドレス及び/又は他のデータを書き込む場合、マスターチップは、各スレーブチップに割り当てられた固定チップアイディーを出力する。
【0028】
バスに連結されている全てのスレーブチップは、SDA線を継続して監視しながら、マスターチップが出力したチップアイディーが自分の固定チップアイディー又は共通チップアイディーと一致するかどうかを検査する。マスターチップが出力したチップアイディーがいずれかのスレーブチップの固定チップアイディーと一致すると、そのスレーブチップは、ACKビットに'0'を出力してマスターチップに応答する。マスターチップが出力したチップアイディーが全てのスレーブチップに共通に割り当てられた共通チップアイディーと一致すると、約束された1個のスレーブチップのみがACKビットに'0'を出力するように設計される。これは、全てのスレーブチップがACKビットに'0'を出力する場合に発生し得るACKビットの衝突を防止するためである。マスターチップが出力したチップアイディーを有するスレーブチップがない場合、いずれのものもACKビットに'0'を出力しないので、ACKビットの状態は'1'に維持され、マスターチップはNACK(No Acknowledgement)を受けるようになる。
【0029】
7ビットのチップアイディーの次に来る8番目のビット(R/W Indicator)は、次の動作がマスターチップの'読み取り'であるか、それとも'書き込み'であるかを示す。
【0030】
マスターチップがこのビットで0を出力した場合、これは、マスターチップの'書き込み'動作を意味するので、スレーブチップアイディーの次の1バイトデータはマスターチップの出力である。このデータは、マスターチップによってチップアイディーが指定されたスレーブチップのためのものであるので、そのスレーブチップ(共通チップアイディーの場合は全てのスレーブチップ)がこの値を読み込む。すなわち、
図3に示したように、'書き込み'動作時、マスターチップは、スレーブチップアイディー及びR/W Idicator(ビット値=0)を含む'CMD'を出力した後、アクセスするレジスタのアドレス(
図3の'ADDR')及び該当のアドレスに書き込まれるデータ(
図3の'DATA')を順次出力する。
【0031】
その一方、7ビットのチップアイディーの次に来る8番目のビットが1であると、これは、次の動作がマスターチップの'読み取り'であることを意味する。そのため、マスターチップによって固定チップアイディーが指定されたスレーブチップは、ACKに応答した後、続いて、マスターチップに送るデータを出力する。一方、マスターチップの'読み取り'動作は、各スレーブチップの'読み取り'結果のデータをマスターチップが認識する作業であるので、'書き込み'動作とは異なり、全てのスレーブチップに対して同時に行うことはできない。したがって、'読み取り'動作時に共通チップアイディーが伝達される場合は、事前に約束された一つのスレーブチップのみを読む動作を行うように共通チップアイディーを単一チップアイディーに変える過程が必要であり、スレーブチップの立場では、これが自分の固定チップアイディーと一致する場合に'読み取り'動作を行うようになる。
【0032】
以下では、
図4及び
図5を参照して、SPIインターフェースが適用されたマルチ―チップシステムにおける本発明の一実施例に係るレジスタ設定動作を説明する。
【0033】
図4は、本発明の一実施例に係る、SPIバスを介してマスターチップが複数のスレーブチップと連結された形態のマルチ―チップを示した図である。
【0034】
SPI(Serial Peripheral Interconnect)インターフェースは、Motorolaによって開発された全二重(Full Duplex)通信が可能な同期通信規格である。I
2Cと同様に、マスターチップ―スレーブチップ方式で動作し、マスターチップが同期のためのクロックを出力する。前記のI
2Cスレーブチップと同様に、各SPIスレーブチップも固定チップアイディーと共通チップアイディーを有している。
【0035】
図4に示したように、SPIバスで定義された信号は次の4個の信号である。SCLK(Serial Clock)は、マスターチップが出力する同期用クロック信号である。SCLKを基準にしてマスターチップとスレーブチップとの間のデータ交換が進められる。MOSI(Master Output Slave Input)は、マスターチップの出力であって、スレーブチップに情報を送るための信号である。その一方、MISO(Master Input Slave Output)は、スレーブチップの出力であって、マスターチップがスレーブチップの情報を受け取るための信号である。
図4に示したように、マスターチップとスレーブチップは、MOSIどうしが互いに連結され、MISOどうしが互いに連結される。また、SSは、マスターチップがスレーブチップを活性化するためのマスターチップの出力であり、各スレーブチップは、/CE(Chip Enable)入力が'0'である間のみに活性化される。
【0036】
マスターチップと複数のスレーブチップのSCLK、MOSI及びMISOは、それぞれ互いに連結されており、スレーブチップの/CEもマスターチップのSS端子に共通的に連結される。すなわち、
図2のI
2Cの場合と類似する方式で構成される。
【0037】
このような構成のマルチチップシステムにおいて、マスターチップは、スレーブチップとデータを取り交わす場合、まず、SS信号を'0'に設定し、全てのスレーブチップを活性化させる。次に、マスターチップは、SLCKに同期のためのクロックを出力するが、このクロックに合わせてMOSIにデータを一ビットずつ出す。通常、SPI通信は8ビット単位で進められるが、12ビットや16ビット又はそれ以上の長さが一つの単位になる場合もある。データの伝送は、MSB(Most Significant Byte)から開始することもでき、LSB(Least Significant Bit)から開始することもできる。
【0038】
図5は、本発明の一実施例に係るマルチチップシステムにおいて、SPIインターフェースを用いて複数のスレーブチップのレジスタを書き込むときのプロトコルの例示である。
【0039】
I
2Cと同様に、SPIでも、マスターチップは、まず、MOSI上にチップアイディー及びR/W Idicatorなどのその他情報を含むCMDを伝送した後、アクセスするレジスタのアドレス(
図5でADDR)及び該当のアドレスに書き込まれるデータ(
図5でDATA)を順次出力する。各スレーブチップは、伝達されたチップアイディーが自分の物理的なチップアイディー(固定チップアイディー)及び共通チップアイディーのうちいずれか一つと一致する場合、ADDRとDATAを追加的に受け取り、レジスタ上の該当のアドレスに該当のデータを書き込む動作を行う。
【0040】
以上の例示は、I
2C、SPCなどのインターフェースが適用されたマルチ―チップシステムで使用可能な多様なプロトコルのうちの一つであり、I
2C、SPCなどのインターフェースを有するマルチ―チップシステムの適用分野によって多様な方式に変形することができる。
【0041】
図6は、本発明の一実施例に係る、レジスタ'書き込み'動作時における各スレーブチップのインターフェースプロトコルデコーディングの動作順序を示したフローチャートである。
【0042】
マスターチップは、全てのスレーブチップに対して同一のデータをレジスタ上の同一のアドレスに書き込む場合に共通チップアイディーを伝達し、スレーブチップごとに異なるアドレスに異なるデータを書き込む場合に各スレーブチップに割り当てられた固定チップアイディーを伝達する。
【0043】
まず、スレーブチップは、バスを介して定められたインターフェースプロトコルによってマスターチップからチップアイディーを受信する(S610)。次に、スレーブチップは、マスターチップから伝達されたチップアイディーが既に割り当てられた共通チップアイディー又は自分の固定チップアイディーと一致するかどうかを判断する(S620)。伝達されたチップアイディーが既に割り当てられた共通チップアイディー又は自分の固定チップアイディーと一致する場合(S620で'はい')、レジスタ上のアドレス及びデータを受け取り(S630、S640)、該当のアドレスへの該当のデータの'書き込み'動作を行う(S650)。伝達されたチップアイディーが共通チップアイディー及び自分の固定チップアイディーのいずれにも一致しない場合(S620で'いいえ')は'書き込み'動作を行わない。
【0044】
図7は、本発明の一実施例に係る、レジスタ'読み取り'動作順序を示したフローチャートである。
【0045】
'読み取り'動作は、各スレーブチップの'読み取り'結果のデータをマスターチップが認識する動作であるので、'書き込み'動作とは異なり、全てのスレーブチップに対して同時に行うことができない。したがって、'読み取り'動作時にマスターチップからチップアイディーが伝達されると(S710)、まず、伝達されたチップアイディーが共通チップアイディーであるかどうかを判断する(S720)。判断の結果、共通チップアイディーが伝達された場合(S720の'はい')は、事前に約束された一つのスレーブチップのみを読み取る動作を行うように共通チップアイディーを単一チップアイディーに変える過程(S730)が必要であり、スレーブチップは、これが自分の固定チップアイディーと一致するかどうかを判断し(S740)、一致する場合(S740の'はい')、レジスタ上のアドレスを受け取り(S750)、'読み取り'動作を行う(S760)。
【0046】
図6及び
図7では、各過程を順次実行することを記載しているが、これは、本発明の一実施例の技術思想を例示的に説明したものに過ぎない。すなわち、本発明の一実施例の属する技術分野で通常の知識を有する者であれば、本発明の一実施例の本質的な特性から逸脱しない範囲で
図6及び
図7に記載した順序を変更して実行したり、各過程中の一つ以上の過程を並列的に実行することによって多様に修正及び変形して適用可能である。
【0047】
以上の説明は、本実施例の技術思想を例示的に説明したものに過ぎなく、本実施例の属する技術分野で通常の知識を有する者であれば、本実施例の本質的な特性から逸脱しない範囲で多様な修正及び変形が可能であろう。したがって、本実施例は、本実施例の技術思想を限定するためのものではなく、説明するためのものであって、このような実施例によって本実施例の技術思想の範囲が限定されることはない。本実施例の保護範囲は、下記の特許請求の範囲によって解釈すべきであり、それと同等な範囲内の全ての技術思想は、本実施例の権利範囲に含まれるものと解釈すべきであろう。