(57)【要約】【課題】複数の機能の中から何れかの機能を選択した場合に、選択されなかった機能の電子回路も有効に活用できる「ＬＳＩ装置」を提供する。【解決手段】複数の機能の電子回路１１〜１３に接続された複数のプロセッサ・コア３１，３２が、セレクタにより選択されず外部Ｉ／Ｏ端子に接続されていない電子回路１１，１２についてのループバック機能を有効にし、当該電子回路１１，１２がそれぞれ２つずつ備えるポート１１ａ，１１ｂ，１２ａ，１２ｂと、複数のプロセッサ・コア３１，３２に対応した複数のメモリ空間４１，４２とを介してコア間のデータ通信を行うようにすることにより、外部Ｉ／Ｏ端子に接続されていない電子回路１１，１２についても、複数のプロセッサ・コア３１，３２のコア間通信に活用できるようにする。【選択図】図２
2013134593.tif 000002
【特許請求の範囲】
【請求項１】
複数の機能の電子回路を内蔵し、当該複数の機能の電子回路に対して外部Ｉ／Ｏ端子が兼用されており、当該複数の機能の電子回路のうち何れか１つをセレクタにより選択して上記外部Ｉ／Ｏ端子に接続するように構成されたＬＳＩ装置であって、
上記複数の機能の電子回路に接続された複数のプロセッサ・コアと、
上記複数の機能の電子回路に接続されたメモリであって、上記複数のプロセッサ・コアに対応した複数のメモリ空間を有するメモリとを備え、
上記複数の機能の電子回路はそれぞれ、自身が備える２つのポートを用いて自分自身に対してデータを送信するループバック機能を備え、
上記複数のプロセッサ・コアは、上記セレクタにより選択されず上記外部Ｉ／Ｏ端子に接続されていない電子回路について上記ループバック機能を有効にし、当該ループバック機能を有効にした電子回路の２つのポートおよび上記複数のメモリ空間を介してコア間のデータ通信を行うことを特徴とするＬＳＩ装置。
【請求項２】
ＤＭＡコントローラを更に備え、
上記複数のプロセッサ・コアは、上記セレクタにより選択されず上記外部Ｉ／Ｏ端子に接続されていない電子回路について上記ループバック機能を有効にし、当該ループバック機能を有効にした電子回路の２つのポートおよび上記複数のメモリ空間を介して、上記ＤＭＡコントローラを利用してコア間のデータ通信を行うことを特徴とする請求項１に記載のＬＳＩ装置。
【請求項３】
上記メモリは、上記複数のプロセッサ・コアで共用される共有メモリ空間を更に有し、
上記複数のプロセッサ・コアは、上記ループバック機能を有効にした電子回路の２つのポートおよび上記複数のメモリ空間を用いたコア間のデータ通信に加えて、上記共有メモリ空間を用いたコア間のデータ通信を行うことを特徴とする請求項１または２に記載のＬＳＩ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ装置に関し、特に、複数のマイクロコントローラを含んで成るＬＳＩ装置に用いて好適なものである。
【背景技術】
【０００２】
従来、ナビゲーション装置などの組込みシステムでは、その主要な機能を司る複数の電子回路を１チップに集積したシステムＬＳＩが用いられている。また、近年では、システムＬＳＩの設計手法として、ＳｏＣ（System-on-a-chip）を採用する例が多くなっている。また、組込みシステムの複雑化と多機能化により、１チップ内に複数のマイクロコントローラ（プロセッサ・コア）を内蔵したマルチコアのＳｏＣを採用する例も増加している。
【０００３】
多くの組込みシステム向けＳｏＣは、様々な機能の電子回路を内蔵し、システムの用途に合わせて機能を取捨選択して使うように構成されている（例えば、特許文献１参照）。図５のように、ＳｏＣ１００が複数の機能の電子回路１０１，１０２，１０３を内蔵する場合、当該ＳｏＣ１００は、各機能の電子回路１０１〜１０３から接続される複数組の内部Ｉ／Ｏ端子１０４，１０５と、その組数と同数の外部Ｉ／Ｏ端子１０６，１０７と、セレクタ１０８，１０９とを備える。
【０００４】
図５の例では、ＳｏＣ１００は、３つの機能の電子回路１０１〜１０３から接続される２組の内部Ｉ／Ｏ端子１０４，１０５と、２つの外部Ｉ／Ｏ端子１０６，１０７と、２つのセレクタ１０８，１０９とを備えている。３つの機能の電子回路１０１〜１０３は、１組の外部Ｉ／Ｏ端子１０６，１０７を兼用しており、３つのうち何れか１つがセレクタ１０８，１０９により選択されるように構成されている。
【０００５】
すなわち、３つの内部Ｉ／Ｏ端子１０４−１〜１０４−３のうち何れか１つがセレクタ１０８により選択され、外部Ｉ／Ｏ端子１０６と接続される。同様に、３つの内部Ｉ／Ｏ端子１０５−１〜１０５−３のうち何れか１つがセレクタ１０９により選択され、外部Ｉ／Ｏ端子１０７と接続される。図５の例では、第３の機能（ＳＤ通信機能）の電子回路１０３に対応する内部Ｉ／Ｏ端子１０４−３，１０５−３が選択されている。この場合、第１の機能（シリアル通信機能）の電子回路１０１および第２の機能（Ｉ２Ｃ通信機能）の電子回路１０２は、外部Ｉ／Ｏ端子１０６，１０７を使用できない状態となる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１０９６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述のように、複数の機能を内蔵した従来のＳｏＣでは、システムの用途に合わせて何れかの機能を選択すると、選択しなかった機能の電子回路が全く使用できない状態となり、せっかくＳｏＣが備えている資源を有効に活用できないという問題があった。
【０００８】
本発明は、このような問題を解決するために成されたものであり、複数の機能を内蔵したＬＳＩ装置において、何れかの機能を選択した場合に、選択されなかった機能の電子回路も有効に活用できるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
上記した課題を解決するために、本発明では、ＬＳＩ装置に内蔵される複数の機能の電子回路に対して、自身が備える２つのポートを用いて自分自身にデータを送信するループバック機能を持たせる。そして、複数の機能の電子回路に接続された複数のプロセッサ・コアが、セレクタにより選択されず外部Ｉ／Ｏ端子に接続されていない電子回路についてのループバック機能を有効にし、当該ループバック機能を有効にした電子回路の２つのポートと、複数のプロセッサ・コアに対して設けられた複数のメモリ空間とを介してコア間通信を行うようにする。
【発明の効果】
【００１０】
上記のように構成した本発明によれば、セレクタにより選択されず外部Ｉ／Ｏ端子に接続されていない電子回路についても、ループバック機能を有効にすることにより、複数のプロセッサ・コアのコア間通信に活用できるようになる。これにより、ＬＳＩ装置に内蔵されている複数の機能の電子回路を取捨選択して外部Ｉ／Ｏ端子に接続した場合に、選択されなかった機能の電子回路も、外部Ｉ／Ｏ端子を使用しない別の方法で有効に活用することができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態によるＬＳＩ装置の構成例を示す図である。
【図２】ループバック機能を有効にした２つの電子回路および２つのメモリ空間を介してコア間通信する状態を示した図である。
【図３】ループバック機能を有効にした２つの電子回路および２つのメモリ空間を介して、ＤＭＡコントローラを利用してコア間通信する状態を示した図である。
【図４】電子回路のループバック機能を利用したコア間通信と、共有メモリを利用したコア間通信とを行う状態を示した図である。
【図５】従来のＳｏＣの構成例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態によるＬＳＩ装置の構成例を示す図である。本実施形態のＬＳＩ装置は、複数の機能の電子回路を内蔵したＳｏＣによるシステムＬＳＩであり、システムの用途に合わせて機能を取捨選択して使うように構成されている。
【００１３】
図１に示すように、本実施形態のＬＳＩ装置は、複数の機能の電子回路１１，１２，１３を内蔵している。第１の電子回路１１はシリアル通信の機能に関するものであり、２つのポート１１ａ，１１ｂを備えている。第２の電子回路１２もシリアル通信の機能に関するものであり、２つのポート１２ａ，１２ｂを備えている。第３の電子回路１３はＩ２Ｃ通信の機能に関するものであり、２つのポート１３ａ，１３ｂを備えている。なお、ここに示した３つの機能は単なる例示であり、本発明はこれに限定されない。また、ＬＳＩ装置は４つ以上の機能を内蔵したものであってもよく、図１はそのうちの３つを代表して示している。
【００１４】
各電子回路１１，１２，１３の２つのポート間は、それぞれスイッチ１４，１５，１６を介して接続されている。すなわち、第１の電子回路１１の２つのポート１１ａ，１１ｂ間は、第１のスイッチ１４を介して接続されている。また、第２の電子回路１２の２つのポート１２ａ，１２ｂ間は、第２のスイッチ１５を介して接続されている。同様に、第３の電子回路１３の２つのポート１３ａ，１３ｂ間は、第３のスイッチ１５を介して接続されている。
【００１５】
これらの電子回路１１〜１３はそれぞれ、自身が備える２つのポート１１ａ〜１３ａ，１１ｂ〜１３ｂを用いて自分自身に対してデータを送信するループバック機能を備えている。各電子回路１１〜１３の２つのポート１１ａ〜１３ａ，１１ｂ〜１３ｂ間に接続されたスイッチ１４〜１６をオンとすることにより、ループバック機能を有効にし、スイッチ１４〜１６をオフとすることにより、ループバック機能を無効にすることができる。
【００１６】
各電子回路１１〜１３がそれぞれ備える２つのポート１１ａ〜１３ａ，１１ｂ〜１３ｂは、２組の内部Ｉ／Ｏ端子１７，１８に接続されている。具体的には、第１の電子回路１１が備える２つのポート１１ａ，１１ｂは、内部Ｉ／Ｏ端子１７−１，１８−１に接続されている。また、第２の電子回路１２が備える２つのポート１２ａ，１２ｂは、内部Ｉ／Ｏ端子１７−２，１８−２に接続されている。また、第３の電子回路１３が備える２つのポート１３ａ，１３ｂは、内部Ｉ／Ｏ端子１７−３，１８−３に接続されている。
【００１７】
これら２組の内部Ｉ／Ｏ端子１７，１８は、それぞれセレクタ１９，２０を介して２つの外部Ｉ／Ｏ端子２１，２２に接続されている。３つの機能の電子回路１１〜１３は、１組の外部Ｉ／Ｏ端子２１，２２を兼用しており、当該３つの電子回路１１〜１３のうち何れか１つをセレクタ１９，２０により選択して外部Ｉ／Ｏ端子２１，２２に接続するように構成されている。
【００１８】
すなわち、３つの内部Ｉ／Ｏ端子１７−１〜１７−３のうち何れか１つが第１のセレクタ１９により選択され、第１の外部Ｉ／Ｏ端子２１と接続される。同様に、３つの内部Ｉ／Ｏ端子１８−１〜１８−３のうち何れか１つが第２のセレクタ２０により選択され、第２の外部Ｉ／Ｏ端子２２と接続される。
【００１９】
図１の例では、第３の電子回路１３（Ｉ２Ｃ通信機能）に対応する内部Ｉ／Ｏ端子１７−３，１８−３が選択されている。この場合、第１の電子回路１１（シリアル通信機能）および第２の電子回路１２（シリアル通信機能）は外部Ｉ／Ｏ端子２１，２２を使用できない状態となる。
【００２０】
第３の電子回路１３に対応する内部Ｉ／Ｏ端子１７−３，１８−３がセレクタ１９，２０により選択された場合、第３のスイッチ１６はオフとされ、第３の電子回路１３のループバック機能が無効とされる。これに対し、外部Ｉ／Ｏ端子２１，２２を使用できない状態となった第１の電子回路１１および第２の電子回路１２に対応する第１のスイッチ１４および第２のスイッチ１５はオンとされ、第１の電子回路１１および第２の電子回路１２のループバック機能が有効とされる。
【００２１】
本実施形態のＬＳＩ装置はさらに、３つの電子回路１１〜１３に接続された２つのプロセッサ・コア３１，３２と、３つの電子回路１１〜１３に接続されたメモリ４０とを備えている。プロセッサ・コア３１，３２は、３つの電子回路１１〜１３の動作を制御する。また、プロセッサ・コア３１，３２は、３つのスイッチ１４〜１６のオン／オフ動作を制御するとともに、２つのセレクタ１９，２０の選択動作を制御する。
【００２２】
メモリ４０は、２つのプロセッサ・コア３１，３２に対応した２つのメモリ空間４１，４２を有している。第１のメモリ空間４１は、各電子回路１１〜１３が備える２つのポート１１ａ〜１３ａ，１１ｂ〜１３ｂに接続されている。同様に、第２のメモリ空間４２は、各電子回路１１〜１３が備える２つのポート１１ａ〜１３ａ，１１ｂ〜１３ｂに接続されている。
【００２３】
第１のメモリ空間４１は第１のプロセッサ・コア３１が専用にアクセスするものであり、第２のメモリ空間４２は第２のプロセッサ・コア３２が専用にアクセスするものである。なお、第１のプロセッサ・コア３１と第１のメモリ空間４１との間、および第２のプロセッサ・コア３２と第２のメモリ空間４２との間も接続されているが、図示は省略している。
【００２４】
本実施形態において、２つのプロセッサ・コア３１，３２は、電子回路１１〜１３およびメモリ４０を用いて、コア間のデータ通信を行う。すなわち、２つのプロセッサ・コア３１，３２は、セレクタ１９，２０により選択されず外部Ｉ／Ｏ端子２１，２２に接続されていない電子回路（図１の例では第１の電子回路１１および第２の電子回路１２）について、スイッチ１４，１５をオンにしてループバック機能を有効にする。そして、当該ループバック機能を有効にした電子回路がそれぞれ２つずつ備えるポート（図１の例では、第１の電子回路１１のポート１１ａ，１１ｂおよび第２の電子回路１２のポート１２ａ，１２ｂ）と、２つのメモリ空間４１，４２とを介してコア間のデータ通信を行う。
【００２５】
図２は、外部Ｉ／Ｏ端子２１，２２に接続されていない２つの電子回路１１，１２のループバック機能を有効にして、当該２つの電子回路１１，１２および２つのメモリ空間４１，４２を介してコア間通信する状態を示した図である。図２に示すように、第１の電子回路１１が備える第１ポート１１ａをループバック機能の送信用、第２ポート１１ｂを受信用に使用する。第２の電子回路１２についてはこれとは逆に、第１ポート１２ａをループバック機能の受信用、第２ポート１２ｂを送信用に使用する。
【００２６】
例えば、第１のプロセッサ・コア３１から第２のプロセッサ・コア３２に対してデータを送信する場合、まず、第１のプロセッサ・コア３１は、第１のメモリ空間４１からデータを取り出して第１の電子回路１１の第１ポート１１ａに供給する。次に、第１の電子回路１１は、ループバック機能により、第１ポート１１ａに入力されたデータを第２ポート１１ｂに転送し、当該第２ポート１１ｂから第２のメモリ空間４２に供給する。その後、第２のプロセッサ・コア３２が第２のメモリ空間４２にアクセスし、第１のプロセッサ・コア３１から送信されたデータを取得することにより、第１のプロセッサ・コア３１から第２のプロセッサ・コア３２へのデータ送信が完了する。
【００２７】
一方、第２のプロセッサ・コア３２から第１のプロセッサ・コア３１に対してデータを送信する場合、まず、第２のプロセッサ・コア３２は、第２のメモリ空間４２からデータを取り出して第２の電子回路１２の第２ポート１２ｂに供給する。次に、第２の電子回路１２は、ループバック機能により、第２ポート１２ｂに入力されたデータを第１ポート１２ａに転送し、当該第１ポート１２ａから第１のメモリ空間４１に供給する。その後、第１のプロセッサ・コア３１が第１のメモリ空間４１にアクセスし、第２のプロセッサ・コア３２から送信されたデータを取得することにより、第２のプロセッサ・コア３２から第１のプロセッサ・コア３１へのデータ送信が完了する。
【００２８】
以上詳しく説明したように、本実施形態では、ＬＳＩ装置に内蔵される複数の機能の電子回路１１〜１３に対してループバック機能を持たせる。そして、複数のプロセッサ・コア３１，３２が、セレクタ１９，２０により選択されず外部Ｉ／Ｏ端子２１，２２に接続されていない電子回路１１，１２についてのループバック機能を有効にし、当該ループバック機能を有効にした電子回路１１，１２の２つのポートと、複数のプロセッサ・コア３１，３２に対応して設けられた複数のメモリ空間４１，４２とを介してコア間のデータ通信を行うようにしている。
【００２９】
このように構成した本実施形態によれば、外部Ｉ／Ｏ端子２１，２２に接続されていない電子回路１１，１２についても、ループバック機能を有効にすることにより、複数のプロセッサ・コア３１，３２のコア間通信に活用できるようになる。これにより、ＬＳＩ装置に内蔵されている複数の機能の電子回路１１〜１３を取捨選択して外部Ｉ／Ｏ端子２１，２２に接続した場合に、選択されなかった機能の電子回路１１，１２も、外部Ｉ／Ｏ端子２１，２２を使用しない別の方法で有効に活用することができる。
【００３０】
また、上記実施形態によれば、コア間通信のために共有メモリを使用しなくても良いというメリットも有する。例えば、共有メモリを用いて第１のプロセッサ・コア３１から第２のプロセッサ・コア３２に対してデータを送信する場合、まず、第１のプロセッサ・コア３１が第１のメモリ空間４１から取り出したデータを共有メモリに格納する。その後、第２のプロセッサ・コア３２が共有メモリからデータを取得することにより、データ送信が完了する。第２のプロセッサ・コア３２から第１のプロセッサ・コア３１に対してデータを送信する場合は、上記の動作と逆の動作となる。
【００３１】
このように、共有メモリは、第１のプロセッサ・コア３１からも第２のプロセッサ・コア３２からも自由にアクセス可能な状態とする必要があるため、メモリ保護機能を働かせることができない。メモリ保護機能とは、メモリ上の指定領域に対して、リードオンリー状態とするなどの属性を与えることにより、データを破壊することがないように保護する機能である。
【００３２】
共有メモリについてはこのメモリ保護機能を働かせることができないため、例えばプロセッサ・コア３１，３２の動作を司るプログラムの不具合（暴走など）により、データが予期せず書き換えられてしまうことがあるという問題がある。これに対して、上記実施形態によれば、コア間通信のために共有メモリを使用する必要がないので、このようなデータ破壊のリスクを回避することができる。
【００３３】
なお、上記図１に示したＬＳＩ装置の構成は、本発明を説明する上での一例に過ぎない。例えば、外部Ｉ／Ｏ端子２１，２２に接続されていない電子回路を用いたデータの送受信にＤＭＡコントローラを用いるようにしてもよい。この場合、複数のプロセッサ・コア３１，３２は、外部Ｉ／Ｏ端子２１，２２に接続されていない電子回路１１，１２についてループバック機能を有効にし、当該ループバック機能を有効にした電子回路１１，１２がそれぞれ２つずつ備えるポート１１ａ，１１ｂ，１２ａ，１２ｂと、２つのメモリ空間４１，４２とを介して、ＤＭＡコントローラを利用してコア間のデータ通信を行う。
【００３４】
図３は、ループバック機能を有効にした２つの電子回路１１，１２および２つのメモリ空間４１，４２を介して、ＤＭＡコントローラを利用してコア間通信する状態を示した図である。なお、この図３において、図２に示した構成要素と同一の機能を有する構成要素には同一の符号を付している。
【００３５】
図３に示す例では、ＬＳＩ装置は、ＤＭＡコントローラ５１〜５４を更に備える。第１のＤＭＡコントローラ５１は、第１のメモリ空間４１から第１の電子回路１１に対するデータ送信を制御する。第２のＤＭＡコントローラ５２は、第１の電子回路１１から第２のメモリ空間４２に対するデータ送信を制御する。第３のＤＭＡコントローラ５３は、第２のメモリ空間４２から第２の電子回路１２に対するデータ送信を制御する。第４のＤＭＡコントローラ５４は、第２の電子回路１２から第１のメモリ空間４１に対するデータ送信を制御する。
【００３６】
例えば、第１のプロセッサ・コア３１から第２のプロセッサ・コア３２に対してデータを送信する場合、まず、第１のプロセッサ・コア３１から指令を受けた第１のＤＭＡコントローラ５１は、第１のメモリ空間４１からデータを取り出して第１の電子回路１１の第１ポート１１ａに供給する。第１の電子回路１１は、ループバック機能により、第１ポート１１ａに入力されたデータを第２ポート１１ｂに転送し、当該第２ポート１１ｂから第２のＤＭＡコントローラ５２に供給する。
【００３７】
次に、第２のプロセッサ・コア３２から指令を受けた第２のＤＭＡコントローラ５２は、第１の電子回路１１から供給されたデータを第２のメモリ空間４２に送信する。その後、第２のプロセッサ・コア３２が第２のメモリ空間４２にアクセスし、第１のプロセッサ・コア３１から送信されたデータを取得することにより、第１のプロセッサ・コア３１から第２のプロセッサ・コア３２へのデータ送信が完了する。
【００３８】
一方、第２のプロセッサ・コア３２から第１のプロセッサ・コア３１に対してデータを送信する場合、まず、第２のプロセッサ・コア３２から指令を受けた第３のＤＭＡコントローラ５３は、第２のメモリ空間４２からデータを取り出して第２の電子回路１２の第２ポート１２ｂに供給する。次に、第２の電子回路１２は、ループバック機能により、第２ポート１２ｂに入力されたデータを第１ポート１２ａに転送し、当該第１ポート１２ａから第４のＤＭＡコントローラ５４に供給する。
【００３９】
次に、第１のプロセッサ・コア３１から指令を受けた第４のＤＭＡコントローラ５４は、第２の電子回路１２から供給されたデータを第１のメモリ空間４１に送信する。その後、第１のプロセッサ・コア３１が第１のメモリ空間４１にアクセスし、第２のプロセッサ・コア３２から送信されたデータを取得することにより、第２のプロセッサ・コア３２から第１のプロセッサ・コア３１へのデータ送信が完了する。
【００４０】
図３に示すように、ＤＭＡコントローラ５１〜５４を用いた場合には、プロセッサ・コア３１，３２が備えるＣＰＵの介在なしに、プロセッサ・コア３１，３２間で大量のデータを送受信することができる。これにより、ＣＰＵのデータ送受信に関する負荷を低減することができる。
【００４１】
また、本発明によるＬＳＩ装置の別の実施形態として、コア間通信に共有メモリを更に使用するようにしてもよい。図４は、外部Ｉ／Ｏ端子２１，２２に接続されていない電子回路１１，１２のループバック機能を利用したコア間通信と、共有メモリを利用したコア間通信とを行う状態を示した図である。なお、この図４において、図３に示した構成要素と同一の機能を有する構成要素には同一の符号を付している。
【００４２】
図４に示す例では、メモリ４０は、第１のプロセッサ・コア３１に専用の第１のメモリ空間４１および第２のプロセッサ・コア３２に専用の第２のメモリ空間４２の他に、これら２つのプロセッサ・コア３１，３２で共用される共有メモリ空間６１を更に有する。また、図４に示すＬＳＩ装置は、通信Ｉ／Ｏレジスタ６２を更に備える。
【００４３】
図４において、プロセッサ・コア３１，３２は、ループバック機能を有効にした電子回路１１，１２がそれぞれ２つずつ備えるポート１１ａ，１１ｂ，１２ａ，１２ｂおよび２つの専用のメモリ空間４１，４２を用いたコア間通信に加えて、共有メモリ空間６１を用いたコア間通信を行う。
【００４４】
ループバック機能を有効にした２つの電子回路１１，１２および２つのメモリ空間４１，４２を介して、ＤＭＡコントローラ５１〜５４を利用して行うコア間通信の動作は、図３で説明した通りである。一方、共有メモリ空間６１を利用して行うコア間通信の動作は、次の通りとなる。
【００４５】
例えば、第１のプロセッサ・コア３１から第２のプロセッサ・コア３２に対してデータを送信する場合、まず、第１のプロセッサ・コア３１が第１のメモリ空間４１から取り出したデータを共有メモリ空間６１に格納する。そして、第１のプロセッサ・コア３１が通信Ｉ／Ｏレジスタ６２に書き込みを行うことにより、第２のプロセッサ・コア３２に割り込みを発生させる。
【００４６】
この割り込みの発生を検出した第２のプロセッサ・コア３２は、通信Ｉ／Ｏレジスタ６２の読み込みを行い、第１のメモリ空間４１から転送されたデータを共有メモリ空間６１から取得する。これにより、第１のプロセッサ・コア３１から第２のプロセッサ・コア３２へのデータ送信が完了する。
【００４７】
なお、上記図２に示した実施形態では、共有メモリを用いないことによるメリットがある点を説明したが、電子回路１１〜１３のループバック機能を利用したコア間通信と、共有メモリ空間６１を利用したコア間通信とを併用することにより、何れかの方式を用途に応じて使い分けることができるという別のメリットを享受することができる。
【００４８】
例えば、リアルタイム応答性の高いデータの通信を行うときは、共有メモリ空間６１を利用したコア間通信を行う。共有メモリ空間６１を利用した方が、データ転送の速度が速いからである。一方、大量のデータ転送や周期的なデータ転送を行うときには、電子回路１１〜１３のループバック機能を利用したコア間通信を行うことが可能である。
【００４９】
なお、上記実施形態では、ＬＳＩ装置が２つのプロセッサ・コア３１，３２を備える例について説明したが、３つ以上を備えるＬＳＩ装置にも本発明を適用することが可能である。また、上記実施形態では、ＬＳＩ装置の一例としてＳｏＣを挙げたが、ＬＳＩ装置の形態はＳｏＣに限られるものではない。
【００５０】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５１】
１１〜１３  電子回路
１４〜１６  スイッチ
１７，１８  内部Ｉ／Ｏ端子
１９，２０  セレクタ
２１，２２  外部Ｉ／Ｏ端子
３１，３２  プロセッサ・コア
４１，４２  各プロセッサ・コア用のメモリ空間
５１〜５４  ＤＭＡコントローラ
６１  共有メモリ空間
【図１】
2013134593.tif 000003
【図２】
2013134593.tif 000004
【図３】
2013134593.tif 000005
【図４】
2013134593.tif 000006
【図５】
2013134593.tif 000007