(57)【要約】【課題】  回路規模の増加、ＣＰＵ制御の増加なしに活線挿抜に対応した集積回路を提供すること。【解決手段】  活線挿抜可能なインターフェースを有する集積回路において、インターフェースが集積回路の外部との送受信データを格納するメモリと、インターフェースを制御するインターフェース制御手段と、インターフェースからの送受信データを前記メモリに転送するインターフェースデータ転送手段を有し、前記集積回路のモード遷移時に、使用するインターフェースが有するインターフェースデータ転送手段のアドレス初期値から最大アクセスサイズ分を、前記メモリのアドレス空間において専用領域とするように制御することを特徴とする。【選択図】図１
2020135574.tif 000002
【特許請求の範囲】
【請求項１】
活線挿抜可能なインターフェースを有する集積回路において、
インターフェースが集積回路の外部との送受信データを格納するメモリと、
インターフェースを制御するインターフェース制御手段と、
インターフェースからの送受信データを前記メモリに転送するインターフェースデータ転送手段を有し、
前記集積回路のモード遷移時に、使用するインターフェースが有するインターフェースデータ転送手段のアドレス初期値から最大アクセスサイズ分を、前記メモリのアドレス空間において専用領域とするように制御することを特徴とする集積回路。
【請求項２】
前記インターフェースデータ転送手段のアドレス初期値は、インターフェース転送手段がリセットされた時の値であることを特徴とする請求項１に記載の集積回路。
【請求項３】
前記インターフェース転送手段が前記専用領域に書き込むデータは、前記インターフェース毎に固有な値であることを特徴とする請求項１又は請求項２に記載の集積回路。
【請求項４】
前記モードは、静止画記録、動画記録、ライブビュー、再生のカメラモードであることを特徴とする請求項１乃至請求項３の何れか一項に記載の集積回路。
【請求項５】
前記集積回路が有する前記活線挿抜可能なインターフェースは、ＵＳＢ、ＰＣＩｅ、ＵＨＳ１、ＵＨＳ２、ＭＩＰＩ、ＨＤＭＩであることを特徴とする請求項１乃至請求項４の何れか一項に記載の集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、活線挿抜可能なインターフェースを用いてデータ送受信をするインターフェース制御回路を持つ集積回路に関する。
【背景技術】
【０００２】
電子機器同士を接続する方法として、Universal Serial Bus（以下、ＵＳＢ）やPCIExpress（以下、ＰＣＩ）が知られている。これらは、活線挿抜が可能なインターフェース規格であり、機器の動作中における抜き取りや接続が可能となっている。
【０００３】
電子機器内部では、集積回路がインターフェース規格に対応するためのインターフェース制御回路を持っており、インターフェース制御回路は、集積回路が有するＳＲＡＭやＤＲＡＭを用いてデータ送受信を行う。データ送受信を行う方法として、Direct Memory Acccess（以下、ＤＭＡ）転送が知られている。ＤＭＡ転送を用いることで、インターフェース制御回路は、転送先アドレス、転送元アドレス、データサイズなど転送に必要な情報をＣＰＵから設定されたのちは、ＣＰＵの介在なくデータの送受信が可能となる。
【０００４】
活線挿抜はいかなる状況でも発生するため、インターフェース制御回路のデータ転送中に抜き取りが発生するとインターフェース制御回路にリセットをかけて、インターフェースを含んでリセットを実施する。そのため、システムとしてデータ転送中などにリセットをかけてしまうと、異なるアドレスにデータを書き込んでしまうことがあった。
【０００５】
このような問題を解決するため、データをバッファリングし、バッファリングしたデータを解析することでリセットが正しく行えたかどうかを判定してから処理を行う方法が開示されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−２７４８０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１の技術では、解析するための回路規模の増加、ＣＰＵ制御の増加といった課題があった。
【０００８】
本発明は、上記問題点に鑑み、回路規模の増加、ＣＰＵ制御の増加なしに活線挿抜に対応した集積回路を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために、本発明に係る集積回路は、
活線挿抜可能なインターフェースを有する集積回路において、インターフェースが集積回路の外部との送受信データを格納するメモリと、インターフェースを制御するインターフェース制御手段と、インターフェースからの送受信データを前記メモリに転送するインターフェースデータ転送手段を有し、前記集積回路のモード遷移時に、使用するインターフェースが有するインターフェースデータ転送手段のアドレス初期値から最大アクセスサイズ分を、前記メモリのアドレス空間において専用領域とするように制御することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、回路規模の増加、ＣＰＵ制御の増加なしに活線挿抜に対応した集積回路の提供を実現できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係るフローチャートである。
【図２】本発明の一実施形態に係る回路構成を示すブロック図である。
【図３】本発明の一実施形態に係るタイミングチャートである。
【図４】本発明の一実施形態に係る回路構成を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について、図面を参照しながら説明する。
【００１３】
＜実施例１＞
本発明の実施例図１を説明するにあたり、図２を用いて本発明が実施もしくは適応されて好適な集積回路の構成を明確にする。
【００１４】
図２は、本発明が実施若しくは適応されて好適な集積回路の回路構成を示すブロック図である。
【００１５】
図２において、集積回路２００は、制御部２０１、信号処理部２０２、符号化部２０３、復号化部２０４、表示部２０５、UniversalSerialBus（以下、ＵＳＢ）制御部２０８、PCIExpress（以下、ＰＣＩｅ）制御部２１１、UltraHighSpeed（以下、ＵＨＳ）制御部２１４、メモリバス２１７、メモリ制御部２１８から構成される。また、表示部２０５、ＵＳＢ制御部２０８、ＰＣＩｅ制御部２１１、ＵＨＳ制御部２１４は、インターフェースデータ転送手段２０６、２０９、２１２、２１５とインターフェース制御手段２０７、２１０、２１３、２１６で構成される。
【００１６】
制御部２０１は、概して、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭ、ＣＰＵバス等を有している。ここでＣＰＵはマイクロコンピュータの形を可とし、各種コマンドの解析、各種設定、集積回路２００の外部との通信等、集積回路２００全体を統括制御する。
【００１７】
ＤＲＡＭ２１９は、集積回路２００が処理を行うためのデータや各処理部が生成するデータの一時的な置き場として使用する。入力信号は、図示せぬレンズに入光した被写体象を図示せぬ撮像素子にて光電変換した信号である。
【００１８】
信号処理部２０２は、入力信号に対して、ホワイトバランス調整、色補正、ガンマ補正、キズ補正、ＡＦ（AutoFocus）、ＡＥ（AutoExposure）、顔検出等の処理を行い、後述するメモリバス２１７、メモリ制御部２１８を介してＤＲＡＭ２１９へデータを書き込む。
【００１９】
符号化部２０３は、信号処理部２０２によりＤＲＡＭ２１９に格納されたデータを後述するメモリバス２１７、メモリ制御部２１８を介して読み出し、ＭＰＥＧやＨ．２６４などの符号化処理を行い、符号化データを後述するメモリバス２１７、メモリ制御部２１８を介してＤＲＡＭ２１９へデータを書き込む。
【００２０】
復号化部２０４は、符号化部２０３によりＤＲＡＭ２１９に格納されたデータ、或いは、後述するＵＨＳ制御部２１４によりＤＲＡＭ２１９に格納されたデータを後述するメモリバス２１７、メモリ制御部２１８を介して読み出し、復号化処理を施し、後述するメモリバス２１７、メモリ制御部２１８を介してＤＲＡＭ２１９へ書き込む。
【００２１】
表示部２０５は、インターフェースデータ転送手段２０６とインターフェース制御手段２０７を有する。
【００２２】
インターフェースデータ転送手段２０６は、制御部２０１から表示部２０５に設定された設定にそって、後述するメモリバス２１７に対して、決められたプロトコルで読み出し要求を行い、信号処理部２０２によりＤＲＡＭ２１９に格納されたデータ、或いは、復号化部２０４によりＤＲＡＭ２１９に格納されたデータを取得する。表示部２０５は、インターフェースデータ転送手段２０６が取得したデータに対して、所定のフォーマット変換を施し、インターフェース制御手段２０７に出力する。
【００２３】
インターフェース制御手段２０７は、入力されたデータをHigh-Definition Multimedia Interface（以下、ＨＤＭＩ（登録商標））規格、或いは、Mobile Industry Processor Interface（以下、ＭＩＰＩ）規格に準拠したフォーマット形式に変換し、集積回路２００の外にある図示せぬ表示装置に出力する。また、インターフェースデータ転送手段２０６は、ＨＤＭＩ規格やＭＩＰＩ規格で必要となるヘッダ情報をＤＲＡＭに格納する必要があるため、後述するメモリバス２１７に対して、決められたプロトコルで書き込み要求を行い、ＤＲＡＭ２１９へ書き込む。
【００２４】
ＵＳＢ制御部２０８は、インターフェースデータ転送手段２０９とインターフェース制御手段２１０を有する。
【００２５】
インターフェースデータ転送手段２０９は、制御部２０１からＵＳＢ制御部２０８に設定された設定にそって、後述するメモリバス２１７に対して、決められたプロトコルで読み出し要求を行い、ＤＲＡＭ２１９からデータを取得し、インターフェース制御手段２１０に出力する。
【００２６】
インターフェース制御手段２０７は、入力されたデータをＵＳＢ規格に準拠したフォーマット形式に変換し、集積回路２００の外にある図示せぬデバイスに出力する。
【００２７】
また、ＵＳＢ制御部２０８は、集積回路２００の外にある図示せぬデバイスからのデータをＤＲＡＭ２１９に格納する。その場合、インターフェース制御手段２１０は、ＵＳＢ規格に準拠した入力データから必要なデータを抽出し、インターフェースデータ転送手段２０９に出力する。
【００２８】
インターフェースデータ転送手段２０９は、後述するメモリバス２１７に対して、決められたプロトコルで書き込み要求を行い、入力されたデータをＤＲＡＭ２１９へ書き込む。
【００２９】
ＰＣＩｅ制御部２１１は、インターフェースデータ転送手段２１２とインターフェース制御手段２１３を有する。
【００３０】
インターフェースデータ転送手段２１２は、制御部２０１からＰＣＩｅ制御部２１１に設定された設定にそって、後述するメモリバス２１７に対して、決められたプロトコルで読み出し要求を行い、ＤＲＡＭ２１９からデータを取得し、インターフェース制御手段２１３に出力する。
【００３１】
インターフェース制御手段２１３は、入力されたデータをＰＣＩｅ規格に準拠したフォーマット形式に変換し、集積回路２００の外にある図示せぬデバイスに出力する。
【００３２】
また、ＰＣＩｅ制御部２１１は、集積回路２００の外にある図示せぬデバイスからのデータをＤＲＡＭ２１９に格納する。その場合、インターフェース制御手段２１３は、ＰＣＩｅ規格に準拠した入力データから必要なデータを抽出し、インターフェースデータ転送手段２１２に出力する。
【００３３】
インターフェースデータ転送手段２１２は、後述するメモリバス２１７に対して、決められたプロトコルで書き込み要求を行い、入力されたデータをＤＲＡＭ２１９へ書き込む。
【００３４】
ＵＨＳ制御部２１４は、インターフェースデータ転送手段２１５とインターフェース制御手段２１６を有する。
【００３５】
インターフェースデータ転送手段２１５は、制御部２０１からＵＨＳ制御部２１４に設定された設定にそって、後述するメモリバス２１７に対して、決められたプロトコルで読み出し要求を行い、ＤＲＡＭ２１９からデータを取得し、インターフェース制御手段２１６に出力する。
【００３６】
インターフェース制御手段２１６は、ＵＨＳ規格に準拠したフォーマット形式に変換したデータを集積回路２００の外にある図示せぬカードに出力する。また、インターフェース制御手段２１６は、制御部２０１からＵＨＳ制御部２１４に設定された設定にそって、図示せぬカードに格納されているデータを読み出し、ＵＨＳ規格に準拠したフォーマット形式から必要なデータを抽出し、インターフェースデータ転送手段２１５に出力する。
【００３７】
インターフェースデータ転送手段２１５は、後述するメモリバス２１７に対して、決められたプロトコルで書き込み要求を行い、入力されたデータをＤＲＡＭ２１９へ書き込む。
【００３８】
メモリバス２１７は、メモリ制御部２１８とのデータ送受信を行うためのバスである。
【００３９】
メモリ制御部２１８は、制御部２０１、信号処理部２０２、符号化部２０３、復号化部２０４、表示部２０５、ＵＳＢ制御部２０８、ＰＣＩｅ制御部２１１、ＵＨＳ制御部２１４からのＤＲＡＭ２１９へのデータ書き込み、読み出し要求に対して、制御部２０１から設定された優先順位に応じた調停を行い、ＤＲＡＭ２１９へのデータ入出力を行う。
【００４０】
次に、図１、図３を用いて本実施例に於ける集積回路について説明する。
【００４１】
図１は本発明の一実施形態に係る図で、集積回路の動作を示すフローチャートである。図３は本発明の一実施形態に係る図で、メモリバスのプロトコルを示すタイミングチャートである。
【００４２】
始めにステップＳ１００において、制御部２０１は、集積回路２００のモード変更（電源オンも含む）があったかどうかを判定し、モード変更があれば、ステップＳ１０１に進み、変更がなければこのフローを終了する。
【００４３】
ステップＳ１０１において、制御部２０１は、そのモードで使用する活線挿抜に対応する必要があるインターフェースの初期アドレスと最大バーストサイズを確認し、ステップＳ１０２に進む。本実施例では、ＵＳＢ制御部２０８とＵＨＳ制御部２１４に対して活線挿抜に対応する必要があるモードに変更されたとし、インターフェースデータ転送手段２０９のアドレス初期値が０ｘ００００００００、最大バースト長が２５６バイト、インターフェースデータ転送手段２１５のアドレス初期値が０ｘ０００００１００、最大バーストサイズが１２８バイトとする。
【００４４】
ステップＳ１０２において、制御部２０１は、ＤＲＡＭ２１９のアドレス０ｘ００００００００から３８４バイトを、ＵＳＢ制御部２０８とＵＨＳ制御部２１４が活線挿抜時にのみに使用する専用領域として設定し、ステップＳ１０３に進む。
【００４５】
ステップＳ１０３において、制御部２０１は、集積回路２００が外部と接続されているＵＳＢ、ＵＨＳに活線挿抜があったかどうか判定し、活線挿抜があればステップＳ１０４に進み、なければこのフローを終了する。
【００４６】
ステップＳ１０４において、制御部２０１は、活線挿抜があったインターフェース制御部に対して、その制御部に対してリセットを実施し、回路を初期化し、ステップＳ１０５に進む。本実施例では、ＵＳＢに活線挿抜があったとし、制御部２０１は、ＵＳＢ制御部２０８にリセットを実施する。
【００４７】
ステップＳ１０５において、ＵＳＢ制御部２０８は、リセットされたのでインターフェースデータ転送手段２０９と、インターフェース制御手段２１０を含んで初期化し、このフローを終了する。インターフェースデータ転送手段２０９は、初期化されたため、自身が有するメモリバス２１７との接続部も初期化される。
【００４８】
図３は、本ステップＳ１０５で示したインターフェースデータ制御手段２０９がリセットされた時の動作を示したタイミングチャートである。
【００４９】
図３において、各信号はメモリバス２１７で定義されている信号であり、定められたプロトコルでメモリ制御部２１８とデータのやり取りを行うものである。Ｒｅｑは、各マスタがＤＲＡＭ２１９にアクセスを行う際に発行するアクセス要求信号である。Ａｄｄｒｅｓｓは、各マスタがアクセスしたいＤＲＡＭ２１９のアドレスを示す信号であり、後述するＤａｔａＥｎａｂｌｅのアサートタイミング３０３でメモリ制御部２１８に取り込まれる。ＲＷは、各マスタがアクセスする際のアクセスタイプを示す信号で、‘０’が書き込み、‘１’が読み出しを示す。
【００５０】
Ａｃｋは、メモリ制御部２１８が各マスタからのアクセスに対して、許可を示す信号である。ＤａｔａＥｎａｂｌｅは、メモリ制御部２１８が、各マスタに対して、データの有効、無効を示す信号で、Ａｃｋから所定サイクル後にマスタ毎に決められた期間‘１’の有効をアサートする。ＷＤａｔａは、各マスタが書き込み時に使用する信号で、ＤａｔａＥｎａｂｌｅがアサートされてから所定サイクル後に、各マスタが決められたバースト長、データサイズでデータを出力する。ＲＤａｔａは、各マスタが読み出しに使用する信号で、ＤａｔａＥｎａｂｌｅがアサートされてから所定サイクル後に、メモリ制御部２１８が決められたバースト長、データサイズでデータを出力する。
【００５１】
３００はアクセス要求、３０１はアクセス許可、３０３はＤａｔａＥｎａｂｌｅアサート、３０４はＤａｔａＥｎａｂｌｅがアサートされた後の所定サイクル、３０５はＷＤａｔａ完了のタイミングを示す。３０２は、集積回路２００に接続されたＵＳＢ、或いは、ＵＨＳのインターフェースがデータ転送中に抜かれたタイミングを示す。
【００５２】
本実施例では、ＵＳＢが活線挿抜されたものとして説明する。集積回路２００に接続されているＵＳＢが切断されると、集積回路２００が有する端子が電気的に接続されていないことを検知し、制御部２０１に通知する。切断を受けて、制御部２０１は、ＵＳＢ制御部２０８に対してリセットを実施し、ＵＳＢ制御部２０８の初期化を実施する。
【００５３】
ＵＳＢ制御部２０８は、メモリバス２１７に対して書き込みアクセスの途中（ＤａｔａＥｎａｂｌｅ待ち）にリセットされたため、インターフェースデータ転送手段２０９のメモリバス２１７に出力する部分が初期化されＡｄｄｒｅｓｓが初期値に変わる。メモリ制御部２１８はＵＳＢ制御部２０８にリセットがかかったことを知らないため、そのままＤａｔａＥｎａｂｌｅをアサートし、ＵＳＢ制御部２０８のＷＤａｔａを取り込みＤＲＡＭ２１９のＡｄｄｒｅｓｓ初期値に対して書き込みを行う。
【００５４】
以上説明したように、本発明の集積回路によれば、活線挿抜によってＤＲＡＭなどへのアクセス中にインターフェース回路が初期化されてしまい、Ａｄｄｒｅｓｓなど必要な信号が初期化されたとしても、対応するＤＲＡＭ領域を活線挿抜用の専用領域とすることで、保護するための制御回路やアクセスがすべて完了するまで待つような制御を必要とせずに活線挿抜可能となる。
【００５５】
＜実施例２＞
第１の実施例では、集積回路がＵＳＢ制御部とＵＨＳ制御部を使用するモードについて説明したが、本実施例では、ＰＣＩｅ制御部を使用するモードに関して説明する。なお、先の実施例１で説明したものは同じ付箋を付して説明は省略する。
【００５６】
図４は、本発明が実施若しくは適応されて好適な集積回路の回路構成を示すブロック図である。
【００５７】
図４において、制御部４０１は、各種コマンドの解析、各種設定、集積回路４００の外部との通信等、集積回路４００全体を統括制御する。
【００５８】
ＰＣＩｅ制御部４０２は、インターフェースデータ転送手段４０３とインターフェース制御手段４０４を有する。
【００５９】
インターフェースデータ転送手段４０３は、制御部４０１からＰＣＩｅ制御部４０２に設定された設定にそって、メモリバス２１７に対して、決められたプロトコルで読み出し要求を行い、ＤＲＡＭ２１９からデータを取得し、インターフェース制御手段４０４に出力する。
【００６０】
インターフェース制御手段４０４は、入力されたデータをＰＣＩｅ規格に準拠したフォーマット形式に変換し、集積回路４００の外にある図示せぬデバイスに出力する。また、ＰＣＩｅ制御部４０２は、集積回路４００の外にある図示せぬデバイスからのデータをＤＲＡＭ２１９に格納する。その場合、インターフェース制御手段４０４は、ＰＣＩｅ規格に準拠した入力データから必要なデータを抽出し、インターフェースデータ転送手段４０３に出力する。インターフェースデータ転送手段４０３は、メモリバス２１７に対して、決められたプロトコルで書き込み要求を行い、入力されたデータをＤＲＡＭ２１９へ書き込む。また、インターフェースデータ転送手段４０３は、転送効率を高めるため、メモリバス２１７に対して先行アクセス要求を最大４個まで発行することができる。
【００６１】
制御部４０１は、ＰＣＩｅをモードで使用する場合、専用領域に対して先行アクセス要求分を加味することが必要となる。インターフェースデータ転送手段４０３のアドレス初期値を０ｘ１０００００００、最大バースト長を１０２４バイトとすると、先行要求が最大４個発行できるので、ＤＲＡＭ２１９のアドレス０ｘ１０００００００から４０９６バイトを専用領域として設定することになる。
【００６２】
以上説明したように、本発明の集積回路によれば、ＤＲＡＭなどのアクセスするメモリに対して、既に発行済みの先行アクセス要求を加味した領域を専用領域とすることで、保護するための制御回路やアクセスがすべて完了するまで待つような制御を必要とせずに活線挿抜可能となる。
【００６３】
なお、本発明は、本発明の技術思想の範囲内において、上記実施形態に限定されるものではなく、対象となる回路形態により適時変更されて適応するべきものである。
【符号の説明】
【００６４】
２００  集積回路、２０１  制御部、２０２  信号処理部、２０３  符号化部、
２０４  復号化部、２０５  表示部、
２０６，２０９，２１２，２１５  インターフェースデータ転送手段、
２０７，２１０，２１３，２１６  インターフェース制御手段、
２０８  ＵＳＢ制御部、２１１  ＰＣＩｅ制御部、２１４  ＵＨＳ制御部、
２１７  メモリバス、２１８  メモリ制御部２１８、２１９  ＤＲＡＭ
【図１】
2020135574.tif 000003
【図２】
2020135574.tif 000004
【図３】
2020135574.tif 000005
【図４】
2020135574.tif 000006