(57)【要約】【課題】故障検出用に回路を設ける場合に比較して、回路規模、消費電力および故障率をほぼ変えることなくカメラ入力インタフェースの故障検出を行うことができる半導体装置を提供する。【解決手段】実施形態によれば、半導体装置は、各チャネルで入力された画像データの処理を行うカメラ入力インタフェースを備える。カメラ入力インタフェースは、第１チャネル処理回路と、第２チャネル処理回路と、セレクタと、比較器と、を備える。第１チャネル処理回路は、第１チャネルを構成し、画像データの画像処理を行う。第２チャネル処理回路は、第２チャネルを構成し、画像データの画像処理を行う。セレクタは、第２チャネル処理回路の入力側に設けられ、第１チャネルからの入力および第２チャネルからの入力のいずれかを切り替える。比較器は、第１チャネル処理回路から出力される第１出力結果と、第２チャネル処理回路から出力される第２出力結果と、を比較する。【選択図】図１
2019145571.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力チャネルを有し、各チャネルで入力された画像データの処理を行うカメラ入力インタフェースを備える半導体装置であって、
前記カメラ入力インタフェースは、
第１チャネルを構成し、前記画像データの画像処理を行う第１チャネル処理回路と、
前記第１チャネル以外の第２チャネルを構成し、前記画像データの画像処理を行う第２チャネル処理回路と、
前記第２チャネル処理回路の入力側に設けられ、前記第１チャネルからの入力および前記第２チャネルからの入力のいずれかを切り替えるセレクタと、
前記第１チャネル処理回路から出力される第１出力結果と、前記第２チャネル処理回路から出力される第２出力結果と、を比較する比較器と、
を備える半導体装置。
【請求項２】
前記セレクタは、
通常の画像処理を行う第１フレーム周期では、前記第２チャネルからの入力側に設定され、
故障検出処理を行う第２フレーム周期では、前記第１チャネルからの入力側に設定される請求項１に記載の半導体装置。
【請求項３】
前記第１フレーム周期では、前記第１チャネル処理回路は、前記第１チャネルに入力される第１画像データの画像処理を行い、前記第２チャネル処理回路は、前記第２チャネルに入力される第２画像データの画像処理を行い、
前記第２フレーム周期では、前記第１チャネル処理回路および前記第２チャネル処理回路は、前記第１画像データの画像処理を行う請求項２に記載の半導体装置。
【請求項４】
前記第１フレーム周期では、前記第１チャネル処理回路および前記第２チャネル処理回路に設定される画像処理パラメータは任意であり、
前記第２フレーム周期では、前記第１チャネル処理回路に設定される画像処理パラメータおよび前記第２チャネル処理回路に設定される画像処理パラメータは同一である請求項３に記載の半導体装置。
【請求項５】
前記第１チャネル処理回路および前記第２チャネル処理回路には、前記第１フレーム周期および前記第２フレーム周期となるタイミング、および前記第１フレーム周期で使用する画像処理パラメータと前記第２フレーム周期で使用する画像処理パラメータが予め設定され、
前記セレクタおよび前記比較器には、前記第２フレーム周期となるタイミングが予め設定され、
前記第１チャネル処理回路、前記第２チャネル処理回路、前記セレクタおよび前記比較器は、設定にしたがって前記第１フレーム周期と前記第２フレーム周期とを切り替える請求項２に記載の半導体装置。
【請求項６】
前記第１チャネル処理回路、前記第２チャネル処理回路、前記セレクタおよび前記比較器の動作を制御するＣＰＵをさらに備え、
前記第１チャネル処理回路、前記第２チャネル処理回路、前記セレクタおよび前記比較器は、前記ＣＰＵからの指示に基づいて、前記第１フレーム周期と前記第２フレーム周期とを切り替える請求項２に記載の半導体装置。
【請求項７】
複数の入力チャネルを有し、各チャネルで入力された画像データの処理を行うカメラ入力インタフェースと、前記画像データを前記チャネルごとにバッファリングするメモリと、を備える半導体装置であって、
前記メモリは、
第１チャネルに対応して設けられる第１メモリと、
前記第１チャネル以外の第２チャネルに対応して設けられる第２メモリと、
を有し、
前記カメラ入力インタフェースは、
前記第１チャネルを構成し、前記画像データの画像処理を行う第１チャネル処理回路と、
前記第２チャネルを構成し、前記画像データの画像処理を行う第２チャネル処理回路と、
前記第２チャネル処理回路の入力側に設けられ、前記第１メモリからの読み出しおよび前記第２メモリからの読み出しのいずれかを切り替えるセレクタと、
前記第１チャネル処理回路から出力される第１出力結果と、前記第２チャネル処理回路から出力される第２出力結果と、を比較する比較器と、
を備える半導体装置。
【請求項８】
複数の入力チャネルを有し、各チャネルで入力された画像データの処理を行うカメラ入力インタフェースと、前記チャネルごとに設けられるメモリと、を備える半導体装置であって、
前記メモリは、
第１チャネルに対応して設けられる第１メモリと、
前記第１チャネル以外の第２チャネルに対応して設けられる第２メモリと、
を有し、
前記カメラ入力インタフェースは、
第１チャネルを構成し、前記画像データの画像処理を行い、第１出力結果を前記第１メモリに出力する第１チャネル処理回路と、
前記第２チャネルを構成し、前記画像データの画像処理を行い、第２出力結果を前記第２メモリに出力する第２チャネル処理回路と、
前記第１チャネル処理回路の入力側に設けられ、前記第１チャネルからの入力および前記第１メモリからの読み出しのいずれかを切り替える第１セレクタと、
前記第２チャネル処理回路の入力側に設けられ、前記第２チャネルからの入力および前記第１メモリからの読み出しのいずれかを切り替える第２セレクタと、
前記第１出力結果と、前記第２出力結果と、を比較する比較器と、
を備える半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体装置に関する。
【背景技術】
【０００２】
従来、撮像素子で撮像された画像データを処理する処理回路と、処理回路の故障検出を行う故障検出回路と、を備える撮像装置が知られている。
【０００３】
多入力、多出力の構成を有する撮像装置では、処理回路に対応して故障検出回路が設けられることになる。その結果、回路規模が大きくなり、またこれに伴って消費電力も大きくなってしまう。さらに、故障検出のために回路を二重化すると、カメラ入力インタフェースの故障率が２倍になってしまう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１１５４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の一つの実施形態は、故障検出用に回路を設ける場合に比較して、回路規模、消費電力および故障率をほぼ変えることなくカメラ入力インタフェースの故障検出を行うことができる半導体装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一つの実施形態によれば、複数の入力チャネルを有し、各チャネルで入力された画像データの処理を行うカメラ入力インタフェースを備える半導体装置が提供される。前記カメラ入力インタフェースは、第１チャネル処理回路と、第２チャネル処理回路と、セレクタと、比較器と、を備える。前記第１チャネル処理回路は、第１チャネルを構成し、前記画像データの画像処理を行う。前記第２チャネル処理回路は、前記第１チャネル以外の第２チャネルを構成し、前記画像データの画像処理を行う。前記セレクタは、前記第２チャネル処理回路の入力側に設けられ、前記第１チャネルからの入力および前記第２チャネルからの入力のいずれかを切り替える。前記比較器は、前記第１チャネル処理回路から出力される第１出力結果と、前記第２チャネル処理回路から出力される第２出力結果と、を比較する。
【図面の簡単な説明】
【０００７】
【図１】図１は、第１の実施形態によるカメラ入力インタフェースを備える半導体装置の構成の一例を模式的に示すブロック図である。
【図２】図２は、第１の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。
【図３】図３は、比較例によるカメラ入力インタフェースを備える半導体装置の構成の一例を示すブロック図である。
【図４】図４は、第２の実施形態によるカメラ入力インタフェースを備える半導体装置の構成の一例を示すブロック図である。
【図５】図５は、第２の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。
【図６】図６は、第２の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。
【図７】図７は、第３の実施形態によるカメラ入力インタフェースを備える半導体装置の構成の一例を示すブロック図である。
【図８】図８は、第３の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。
【発明を実施するための形態】
【０００８】
以下に添付図面を参照して、実施形態にかかる半導体装置を詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【０００９】
（第１の実施形態）
図１は、第１の実施形態によるカメラ入力インタフェースを備える半導体装置の構成の一例を模式的に示すブロック図である。半導体装置１は、複数のカメラモジュール１０−０，１０−１と、カメラ入力インタフェース２０と、メモリ３１−０，３１−１と、ＣＰＵ（Central  Processing  Unit）４０と、を備える。
【００１０】
カメラモジュール１０−０，１０−１は、所定のフレーム周期で撮像範囲を撮像し、撮像した画像データをカメラ入力インタフェース２０に出力する。なお、各カメラモジュール１０−０，１０−１からカメラ入力インタフェース２０への画像データの入力は、同期している。たとえば、カメラ入力インタフェース２０側からカメラモジュール１０−１，１０−２側に入力される所定の信号に同期させて、カメラモジュール１０−１，１０−２が画像データをカメラ入力インタフェース２０側に出力する。カメラモジュール１０−１，１０−２は、たとえばＣＭＯＳ（Complementary  Metal-Oxide-Semiconductor）センサなどの撮像素子である。
【００１１】
メモリ３１−０，３１−１は、カメラ入力インタフェース２０のそれぞれのチャネルから出力される画像データを記憶する。すなわち、メモリ３１−０は、後述するチャネル処理回路２１−０から出力される画像データを記憶し、メモリ３１−１は、後述するチャネル処理回路２１−１から出力される画像データを記憶する。このように、メモリ３１−０，３１−１は、チャネルに対応して設けられる。メモリ３１−０，３１−１は、揮発性メモリでもよいし、不揮発性メモリでもよい。メモリ３１−０，３１−１は、たとえばＤＲＡＭ（Dynamic  Random  Access  Memory）またはＳＲＡＭ（Static  RAM）で構成される。なお、図では、複数のメモリ３１−０，３１−１が設けられるように示されているが、半導体装置１に設けられるメモリ中の領域がチャネルごとに割り当てられるようにしてもよい。
【００１２】
カメラ入力インタフェース２０は、カメラモジュール１０−０，１０−１と接続され、カメラモジュール１０−０，１０−１からの画像データを処理する回路である。カメラ入力インタフェース２０は、複数のカメラモジュール１０−０，１０−１からの入力を受け付けることができる複数のチャネルを有する。図１では、カメラ入力インタフェース２０が２つのチャネルを有する場合を例示している。カメラ入力インタフェース２０は、複数のチャネル処理回路２１−０，２１−１と、セレクタ２２−１と、比較器２３と、を備える。なお、ここでは、チャネル処理回路２１−０を含む経路をチャネル０とし、チャネル処理回路２１−１を含む経路をチャネル１としている。
【００１３】
チャネル処理回路２１−０，２１−１は、カメラモジュール１０−０，１０−１から入力される画像データに対して画像処理を行い、それぞれのチャネルに対応して設けられるメモリ３１−０，３１−１および比較器２３に出力する。画像処理として、たとえば、デモザイク、ガンマ補正、色空間変換、スケーリング、ホワイトバランス調整、ＨＤＲ(High  Dynamic  Range)圧縮・伸長、ブライトネス・コントラスト調整、およびエッジ強調などを例示することができる。
【００１４】
・デモザイク：カメラから入力されたＲＡＷフォーマットのデータをＲＧＢへ変換する。ＲＡＷフォーマットのデータは、カメラ等で撮影された未加工の画像データである。また、画像データは、複数の画素（ピクセル）データから構成されている。さらに、画素データは、３色の値、すなわち赤、緑、青の値からなる。この赤、緑、青の値をＲＧＢという。
【００１５】
・ガンマ補正：画像の諧調を調整する。
【００１６】
・色空間変換：画像の色空間を変換する。例えばＲＧＢ⇒ＹＵＶや、ＹＵＶ⇒ＲＧＢなどの変換を行う。ＹＵＶは色空間を示し、Ｙは輝度信号、Ｕは色差信号(Ｃｂ)、Ｖは色差信号(Ｃｒ)を表す。
【００１７】
・スケーリング：画像を拡大・縮小する。
【００１８】
・ホワイトバランス調整：画像のホワイトバランスを調整する。
【００１９】
・ＨＤＲ圧縮・伸長：画像データをＨＤＲ圧縮やＨＤＲ伸長する。
【００２０】
・ブライトネス・コントラスト調整：画像の輝度とコントラストを調整する。
【００２１】
・エッジ強調：画像のエッジを強調する。
【００２２】
チャネル処理回路２１−０，２１−１は、上に列記した画像処理を実行する画像処理回路のうち１つ以上の画像処理回路を有する。
【００２３】
各チャネル処理回路２１−０，２１−１は、故障検出の実行時に、それぞれのチャネルで同じ画像処理がなされるように、少なくとも１以上の同じ画像処理回路を有している。このような場合として、たとえば、それぞれのチャネル処理回路２１−０，２１−１が全く同じ画像処理回路を有している場合を例示できる。また、チャネル処理回路２１−０が画像処理回路Ａ，画像処理回路Ｂおよび画像処理回路Ｃを備え、チャネル処理回路２１−１が画像処理回路Ａおよび画像処理回路Ｂを備える場合もある。この場合には、故障検出の実行時にチャネル処理回路２１−０の画像処理回路Ｃを無効にすることができれば、各チャネル処理回路２１−０，２１−１で異なる画像処理回路を有していてもよい。
【００２４】
セレクタ２２−１は、たとえばいずれかのチャネル以外のチャネル処理回路の入力側に設けられる。図１の例では、セレクタ２２−１は、チャネル処理回路２１−１の入力側に設けられる。セレクタ２２−１は、カメラモジュール１０−０側からの入力２２ｃと、カメラモジュール１０−１側からの入力２２ｄとを有する。セレクタ２２−１は、入力２２ｃ，２２ｄから入力された画像データのうちいずれか一方の画像データをチャネル処理回路２１−１に出力するように、切り替えを行う。
【００２５】
比較器２３は、チャネル処理回路２１−０およびチャネル処理回路２１−１の出力側に設けられる。チャネル処理回路２１−０の出力結果が入力２３ａから入力され、チャネル処理回路２１−１の出力結果が入力２３ｂから入力される。比較器２３は、故障検出の実行時に、チャネル処理回路２１−０の出力結果と、チャネル処理回路２１−１の出力結果と、を比較し、両者が一致するかを判定する。すなわち、各チャネル処理回路２１−０，２１−１で同じ画像データに対して同じ条件で画像処理がなされた画像処理データを比較し、その判定結果を、たとえばＣＰＵに出力する。ＣＰＵ４０では、比較器２３の比較結果が一致である場合には、チャネル処理回路２１−０，２１−１に故障はないと判定し、比較器２３の判定結果が不一致である場合には、チャネル処理回路２１−０，２１−１のいずれかに故障があると判定する。
【００２６】
第１の実施形態によるカメラ入力インタフェース２０では、カメラのフレーム周期のうち、所定のフレーム周期で故障検出用の画像処理を行い、それ以外のフレーム周期では通常の画像処理を行う。
【００２７】
通常のフレーム周期では、それぞれのチャネル処理回路２１−０，２１−１は、それぞれカメラモジュール１０−０，１０−１から画像データが入力されると、所定の画像処理を行った後に画像処理データを出力結果としてメモリ３１−０，３１−１に出力する。このとき、カメラモジュール１０−１側の画像データが選択されるようにセレクタ２２−１の入力が切り替えられ、比較器２３は、動作しない。この場合には、チャネル処理回路２１−０，２１−１は、同じ画像処理パラメータで動作してもよいし、異なる画像処理パラメータで動作してもよい。
【００２８】
一方、故障検出を行うフレーム周期では、カメラモジュール１０−０側の画像データが選択されるようにセレクタ２２−１の入力が切り替えられ、チャネル処理回路２１−０およびチャネル処理回路２１−１には、同じ画像処理パラメータが設定されて、画像処理が実行される。なお、２つのチャネル処理回路２１−０，２１−１で所持する画像処理回路の構成が異なる場合には、共通する画像処理回路のみが実行されるように設定される。また、比較器２３は、チャネル処理回路２１−０からの画像処理データとチャネル処理回路２１−１からの画像処理データとを比較して、両者が一致するかまたは一致しないかを判定する。
【００２９】
図２は、第１の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。この図で、横軸は時間を示している。ここでは、カメラ０入力、メモリ０出力、カメラ１入力、メモリ１出力、セレクタおよび比較結果での処理の状況を示している。カメラ０入力は、カメラモジュール１０−０での撮像タイミングを示す。メモリ０出力は、チャネル処理回路２１−０からメモリ１への画像処理データの出力タイミングを示す。カメラ１入力は、カメラモジュール１０−１での撮像タイミングを示す。メモリ１出力は、チャネル処理回路２１−１からメモリ３１−１への画像処理データの出力タイミングを示す。セレクタは、セレクタ２２−１で選択される入力を示す。比較結果は、１フレーム周期おきに故障検出を行う場合を示す。
【００３０】
カメラ入力インタフェース２０に接続されるカメラモジュール１０−０，１０−１で画像データ（フレーム）Ｎ，Ｍの撮像が時刻ｔ０で同期して開始される。その後の時刻ｔ１で、チャネル処理回路２１−０では画像データＮが処理され、メモリ３１−０に画像処理データが出力される。また、セレクタ２２−１では、カメラモジュール１０−１からの入力２２ｄが選択されており、チャネル処理回路２１−１では画像データＭが処理され、メモリ３１−１に画像処理データが出力される。
【００３１】
時刻ｔ０から所定時間Δｔ１経過後の時刻ｔ２では、カメラモジュール１０−０，１０−１で画像データＮ＋１，Ｍ＋１の撮像が同期して開始される。このとき、セレクタ２２−１では、カメラモジュール１０−０からの入力２２ｃが選択されるとともに、それぞれのチャネル処理回路２１−０，２１−１では同じ画像処理が行われるように、同じ画像処理パラメータが設定される。これによって、時刻ｔ３で、チャネル処理回路２１−０では画像データＮ＋１の画像処理が開始され、画像処理データがメモリ３１−０および比較器２３に出力される。また、チャネル処理回路２１−１ではカメラモジュール１０−０からの画像データＮ＋１の画像処理が開始され、画像処理データがメモリ３１−１および比較器２３に出力される。比較器２３では、２つの画像処理データが比較される。ここでは、両者が一致したと判定されたものとする。比較器２３は、両者が一致したことを示す比較結果をＣＰＵ４０に出力し、ＣＰＵ４０では、カメラ入力インタフェース２０の各チャネルのチャネル処理回路２１−０，２１−１に故障はないと判定する。このように、このフレーム周期では、故障検出用の画像処理が行われる。
【００３２】
時刻ｔ２から所定時間Δｔ１経過後の時刻ｔ４では、カメラモジュール１０−０，１０−１で画像データＮ＋２，Ｍ＋２の撮像が同期して開始される。その後の時刻ｔ５で、チャネル処理回路２１−０では画像データＮ＋２が処理され、メモリ３１−０に画像処理データが出力される。また、セレクタ２２−１では、カメラモジュール１０−１からの入力２２ｄが選択されており、チャネル処理回路２１−１では画像データＭ＋２が処理され、メモリ３１−１に画像処理データが出力される。
【００３３】
時刻ｔ４から所定時間Δｔ１経過後の時刻ｔ６では、カメラモジュール１０−０，１０−１で画像データＮ＋３，Ｍ＋３の撮像が同期して開始される。このとき、セレクタ２２−１では、カメラモジュール１０−０からの入力２２ｃが選択されるとともに、それぞれのチャネル処理回路２１−０，２１−１では同じ画像処理が行われるように、同じ画像処理パラメータが設定される。これによって、時刻ｔ７で、チャネル処理回路２１−０では画像データＮ＋３の画像処理が開始され、画像処理データがメモリ３１−０および比較器２３に出力される。また、チャネル処理回路２１−１ではカメラモジュール１０−０からの画像データＮ＋３の画像処理が開始され、画像処理データがメモリ３１−１および比較器２３に出力される。比較器２３では、２つの画像処理データが比較される。ここでは、両者が不一致であると判定されたものとする。比較器２３は、両者が不一致であることを示す比較結果をＣＰＵ４０に出力し、ＣＰＵ４０では、カメラ入力インタフェース２０のチャネル処理回路２１−０，２１−１に故障があると判定する。この故障検出の判定結果を受けると、使用者は、半導体装置１の再起動を行うなどして復帰を試み、それでも復帰しない場合は、カメラ入力インタフェース２０を含む半導体装置１の交換などを行うことになる。このように、このフレーム周期では、故障検出用の画像処理が行われる。
【００３４】
なお、上記した説明では、２チャネルの場合を示したが、３チャネル以上の多チャネルの場合も同様である。この場合には、たとえばある１つの第１チャネル処理回路以外の第２チャネル処理回路のそれぞれの入力側にセレクタが設けられる。このセレクタは、セレクタが設けられる第２チャネル処理回路に対応するカメラモジュール側からの入力と、第１チャネル処理回路に対応するカメラモジュール側からの入力と、を切り替えるものであればよい。
【００３５】
また、故障検出を行うフレーム周期を作り出すには、フレーム周期を上げればよい。たとえば、４０ｆｐｓ（フレーム周期＝２５ｍｓ）のカメラモジュールが使用され、１００ｍｓの時間で４フレームを処理する場合で故障検出を行う場合には、カメラモジュールのフレーム周期を上げればよい。たとえば、５０ｆｐｓ（フレーム周期＝２０ｍｓ）のカメラモジュールを使用すると、１００ｍｓの時間で、４０ｆｐｓのカメラモジュールの場合に比して１フレームの余り時間が生じ、また、６０ｆｐｓ（フレーム周期＝１６．６ｍｓ）のカメラモジュールを使用すると、１００ｍｓの時間で、４０ｆｐｓのカメラモジュールの場合に比して２フレーム＋αの余り時間が生じる。このようにして生じた余りのフレーム周期を故障検出処理に使用すればよい。
【００３６】
また、故障検出処理は、チャネル処理回路２１−０，２１−１、セレクタ２２−１および比較器２３を含むハードウェアに予め設定された周期および画像処理パラメータに基づいて、ハードウェアが自動で行うようにしてもよい。この場合、たとえば垂直同期信号などをトリガにして、セレクタ２２−１の切り替え、チャネル処理回路２１−０，２１−１の画像処理パラメータの設定の切り替えなどが行われる。あるいは、故障検出処理は、ＣＰＵ４０によって実行されるソフトウェアからの指示に基づいて行うようにしてもよい。
【００３７】
図３は、比較例によるカメラ入力インタフェースを備える半導体装置の構成の一例を示すブロック図である。比較例による半導体装置１０１は、カメラモジュール１１０からの画像データを処理するカメラ入力インタフェース１２０と、カメラ入力インタフェース１２０で処理された画像処理データを記憶するメモリ１３０と、カメラモジュール１１０およびカメラ入力インタフェース１２０を制御するＣＰＵ１４０と、を備える。カメラ入力インタフェース１２０は、カメラモジュール１１０で撮像された画像データの画像処理を行う画像処理回路１２１と、画像処理回路１２１の故障検出の際に使用されるテスト用画像処理回路１２２と、故障検出を行う場合に、画像処理回路１２１からの画像データとテスト用画像処理回路１２２からの画像データとを比較する比較器１２３と、を有する。
【００３８】
故障検出を行うフレーム周期以外のフレーム周期では、カメラモジュール１１０で撮像された画像データは、画像処理回路１２１へと入力され、画像処理回路１２１で処理された画像処理データがメモリ１３０へと出力されるようにＣＰＵ１４０による制御が行われる。
【００３９】
故障検出を行うフレーム周期では、カメラモジュール１１０で撮像された画像データは、画像処理回路１２１およびテスト用画像処理回路１２２へと入力され、画像処理回路１２１およびテスト用画像処理回路１２２でそれぞれ処理された画像処理データが比較器１２３へと出力され、比較器１２３で２つの画像処理データを比較するようにＣＰＵ１４０による制御が行われる。
【００４０】
このような構成では、１つのチャネルに対して、テスト用画像処理回路１２２を設ける必要があり、回路規模が大きくなるとともに、消費電力が大きくなる。また、１つのチャネルに画像処理回路１２１とテスト用画像処理回路１２２とが含まれるので、カメラ入力インタフェース１２０の故障率が２倍になってしまう。
【００４１】
これに対して、第１の実施形態では、カメラ入力インタフェース２０は、複数のカメラモジュール１０−０，１０−１と接続されるチャネル処理回路２１−０，２１−１と、チャネル処理回路２１−１の入力側に設けられ、画像データの取得先を切り替えるセレクタ２２−１と、各チャネル処理回路２１−０，２１−１の出力側に設けられる比較器２３と、を備える。たとえば、故障検出時には、カメラモジュール１０−０からの画像データがチャネル処理回路２１−０，２１−１に入力されるようにセレクタ２２−１の入力２２ｃが切り替える。また、チャネル処理回路２１−０，２１−１に同じ画像処理パラメータが設定され、比較器２３でチャネル処理回路２１−０，２１−１から出力された画像処理データを比較する。すなわち、第１の実施形態では、通常の画像処理では、複数のチャネル処理回路２１−０，２１−１で画像処理が行われるが、故障検出用の画像処理では、複数のチャネル処理回路２１−０，２１−１を多重化された画像処理回路とみなして、それぞれのチャネル処理回路２１−０，２１−１で同じ条件で同じ画像データの画像処理が行われる。これによって、単純に故障検出用に画像処理回路を二重化する比較例の方法に比して、回路規模、消費電力および故障率を略変えることなく、画像処理回路の故障検出を行うことができる。
【００４２】
（第２の実施形態）
図４は、第２の実施形態によるカメラ入力インタフェースを備える半導体装置の構成の一例を示すブロック図である。半導体装置１ａは、カメラモジュール１０−０，１０−１で撮像された画像データをバッファリングするメモリ３２−０，３２−１が各チャネルに設けられる。メモリ３２−０，３２−１は、図では、構成を分かりやすくするために、カメラモジュール１０−０，１０−１とチャネル処理回路２１−０，２１−１との間に設けられているが、実際には、メモリ内に割り当てられた領域である。
【００４３】
チャネル処理回路２１−０，２１−１は、メモリ３２−０，３２−１から画像データを読み込み、所定の画像処理を行う。第２の実施形態では、チャネル処理回路２１−０，２１−１のクロック数（動作周期）が第１の実施形態の場合よりも上げられている。より具体的には、１フレーム周期で、画像処理と故障検出用の画像処理とを行うことができるように、チャネル処理回路２１−０，２１−１のクロック数が設定されている。
【００４４】
セレクタ２２−１は、１フレーム周期内で、画像処理と故障検出用の画像処理とがチャネル処理回路２１−１で行われるように、切り替えを行う。なお、第１の実施形態と同一の構成要素には、同一の符号を付してその説明を省略する。
【００４５】
図５は、第２の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。この図で、横軸は時間を示している。ここでは、カメラ０入力、メモリ２出力、カメラ１入力、メモリ３出力、メモリ０出力、メモリ１出力、セレクタおよび比較結果での処理の状況を示している。メモリ２出力は、カメラモジュール１０−０からメモリ３２−０への画像データの出力タイミングを示す。メモリ３出力は、カメラモジュール１０−１からメモリ３２−１への画像データの出力タイミングを示す。
【００４６】
カメラ入力インタフェース２０に接続されるカメラモジュール１０−０，１０−１で画像データＮ，Ｍの撮像が時刻ｔ１０で同期して開始される。その後の時刻ｔ１１で、カメラモジュール１０−０で撮像された画像データＮのメモリ３２−０への記憶が開始され、カメラモジュール１０−１で撮像された画像データＭのメモリ３２−１への記憶が開始される。
【００４７】
時刻ｔ１０から所定時間Δｔ２経過後の時刻ｔ１３では、カメラモジュール１０−０，１０−１で画像データＮ＋１，Ｍ＋１の撮像が同期して開始される。その後の時刻ｔ１４で、カメラモジュール１０−０で撮像された画像データＮ＋１のメモリ３２−０への記憶が開始され、カメラモジュール１０−１で撮像された画像データＭ＋１のメモリ３２−１への記憶が開始される。このように、カメラモジュール１０−０，１０−１で撮像されたデータをメモリ３２−０，３２−１に記憶する処理が所定時間Δｔ２毎に実行される。
【００４８】
一方、メモリ３２−０，３２−１への画像データＮ，Ｍの記憶が完了した時刻ｔ１２で、セレクタ２２−１では、メモリ３２−１からの入力が選択されるとともに、チャネル処理回路２１−０，２１−１ではそれぞれ通常の画像処理を行う画像処理パラメータが設定される。そして、チャネル処理回路２１−０は、メモリ３２−０から画像データＮを読み出し、画像データＮの画像処理を行い、メモリ３１−０に画像処理データＮを出力する。チャネル処理回路２１−１は、メモリ３２−１から画像データＭを読み出し、画像データＭの画像処理を行い、メモリ３１−１に画像処理データＭを出力する。
【００４９】
その後、時刻ｔ１５で、セレクタ２２−１では、メモリ３２−０からの入力が選択されるとともに、それぞれのチャネル処理回路２１−０，２１−１には、故障検出用の同じ画像処理パラメータが設定される。そして、チャネル処理回路２１−０は、メモリ３２−０から画像データＮを読み出して、画像Ｎの画像データ処理を行い、メモリ３１−０および比較器２３に画像処理データＮを出力する。チャネル処理回路２１−１は、メモリ３２−０から画像データＮを読み出して、画像データＮの画像処理を行い、メモリ３１−１および比較器２３に画像処理データＮを出力する。比較器２３は、チャネル処理回路２１−０，２１−１からの出力結果を比較し、両者が一致するかを判定する。ここでは、両者は一致したものとする。
【００５０】
このようなチャネル処理回路２１−０，２１−１での通常の画像処理および故障検出用の画像処理が、所定時間Δｔ２の間隔で実行される。図５の例では、画像データＮ＋３以外の画像データについて故障検出を行った場合に、チャネル処理回路２１−０で処理された画像処理データとチャネル処理回路２１−１で処理された画像処理データとが一致し、画像データＮ＋３について故障検出を行った時に、両者が不一致であった場合が示されている。そのため、画像データＮ＋３の故障検出処理を行った後、カメラ入力インタフェース２０のチャネル処理回路２１−０およびチャネル処理回路２１−１のいずれかが故障していることを示す情報が出力される。
【００５１】
第１の実施形態の場合には、チャネル処理回路２１−０，２１−１での画像処理に要する時間は、カメラモジュール１０−０，１０−１からの入力レートに依存してしまう。つまり、カメラモジュール１０−０，１０−１から画像データが入力される時間とほぼ同じ時間を使って、チャネル処理回路２１−０，２１−１は画像処理を行っている。しかし、第２の実施形態では、カメラモジュール１０−０，１０−１からの画像データをメモリ３２−０，３２−１にバッファリングすることで、チャネル処理回路２１−０，２１−１はメモリ３２−０，３２−１から画像データを読み込むことで、カメラモジュール１０−０，１０−１からの入力レートに依存しないで画像処理を実行することができる。また、画像処理の速度を上げることで、１フレーム周期内で余った時間を、故障検出処理に回すことができる。このように、第２の実施形態によるカメラ入力インタフェース２０では、各フレーム周期で、画像処理および故障検出処理を実行することができる。
【００５２】
ところで、図５に示される方法では、メモリ３２−０，３２−１にカメラモジュール１０−０，１０−１で撮像された画像データがそれぞれメモリ３２−０，３２−１に記憶されるまで処理を行うことができない。つまり、画像処理と故障検出処理とは、１フレーム周期遅れて実行されることになる。しかし、一部の画像データ（フレームデータ）を用いて故障検出を行うことができる場合には、故障検出を先に行い、その後に通常の画像処理を行うこともできる。一部の画像データとして、たとえば画像データの先頭から所定の範囲の比較用画像データを用いることができる。所定の範囲としては、たとえば画像データの先頭から特定のライン数または画像データの先頭から特定の領域を例示することができる。
【００５３】
図６は、第２の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。この図で、横軸は時間を示している。ここでは、カメラ０入力、メモリ２出力、カメラ１入力、メモリ３出力、メモリ０出力、メモリ１出力、セレクタおよび比較結果での処理の状況を示している。
【００５４】
時刻ｔ２０でカメラモジュール１０−０，１０−１で画像データＮ，Ｍの撮像が同期して開始され、時刻ｔ２１でカメラモジュール１０−０で撮像された画像データＮのメモリ３２−０への記憶が開始され、カメラモジュール１０−１で撮像された画像データＭのメモリ３２−１への記憶が開始される。
【００５５】
その後、時刻ｔ２２で、特定のライン数の画像データである比較用画像データの記憶が完了すると、セレクタ２２−１では、メモリ３２−０からの入力が選択されるとともに、チャネル処理回路２１−０，２１−１には、故障検出用の同じ画像処理パラメータが設定される。そして、チャネル処理回路２１−０は、メモリ３２−０から比較用画像データＮを読み出して、比較用画像データＮの画像処理を行い、メモリ３１−０および比較器２３に比較用画像処理データＮを出力する。チャネル処理回路２１−１は、メモリ３２−０から比較用画像データＮを読み込んで、比較用画像データＮの画像処理を行い、メモリ３１−１および比較器２３に比較用画像処理データＮを出力する。比較器２３は、チャネル処理回路２１−０，２１−１からの出力結果を比較し、両者が一致するかを判定する。ここでは、両者は一致したものとする。なお、時刻ｔ２２以降もカメラモジュール１０−０，１０−１からの画像データＮ，Ｍはメモリ３２−０，３２−１に記憶され続ける。
【００５６】
その後、時刻ｔ２３で、セレクタ２２−１では、メモリ３２−１からの入力が選択されるとともに、チャネル処理回路２１−０，２１−１ではそれぞれ通常の画像処理を行う画像処理パラメータが設定される。そして、チャネル処理回路２１−０は、メモリ３２−０から画像データＮを読み出し、画像データＮの画像処理を行い、メモリ３１−０に画像処理データＮを出力する。チャネル処理回路２１−１は、メモリ３２−１から画像データＭを読み出し、画像データＭの画像処理を行い、メモリ３１−１に画像処理データＭを出力する。
【００５７】
このようなチャネル処理回路２１−０，２１−１での通常の画像処理および故障検出処理が、所定時間Δｔ３の間隔で実行される。図６の例では、画像データＮ＋３以外の画像データについて故障検出を行った場合に、チャネル処理回路２１−０から出力された比較用画像処理データとチャネル処理回路２１−１から出力された比較用画像データとが一致し、画像データＮ＋３について故障検出を行った時に、両者が不一致であった場合が示されている。そのため、画像データＮ＋３の故障検出を行った後、カメラ入力インタフェース２０が故障していることを示す情報が出力される。
【００５８】
このように、図６のように、画像データの所定の範囲を比較用画像データとして用いて故障検出処理を実行する場合には、比較用画像データがメモリ３２−０に記憶され終わったタイミングで、チャネル処理回路２１−０，２１−１が故障検出処理を行い、その後に通常の画像処理を行うことができる。このようにすることで、図５では、カメラモジュール１０−０，１０−１での撮影タイミングに比して１フレーム周期分、画像処理および故障検出処理が遅れて実行されていたが、図６の場合では、カメラモジュール１０−０，１０−１での撮影タイミングと略同じタイミングで画像処理および故障検出処理が実行される。そのため、図５の場合に比して、通常の画像処理のメモリ３１−０，３１−１への出力遅延を削減することができる。
【００５９】
なお、上記した説明では、２チャネルの場合を示したが、３チャネル以上の多チャネルの場合も同様である。この場合には、たとえばある１つの第１チャネル処理回路以外の第２チャネル処理回路のそれぞれの入力側にセレクタが設けられる。このセレクタは、セレクタが設けられる第２チャネル処理回路に対応するカメラモジュール側からの入力と、第１チャネル処理回路に対応するカメラモジュール側からの入力と、を切り替えるものであればよい。
【００６０】
第２の実施形態でも、第１の実施形態と同様の効果を得ることができる。
【００６１】
（第３の実施形態）
図７は、第３の実施形態によるカメラ入力インタフェースを備える半導体装置の構成の一例を示すブロック図である。第１の実施形態の半導体装置１では、チャネル処理回路２１−１の入力側にセレクタ２２−１が設けられていたが、第３の実施形態の半導体装置１ｂでは、各チャネル処理回路２１−０，２１−１の入力側にそれぞれセレクタ２２−０，２２−１が設けられる。また、それぞれのセレクタ２２−０，２２−１は、設けられるチャネルのカメラモジュール１０−０，１０−１からの入力と、メモリ１からの入力と、を切り替える機能を有する。
【００６２】
チャネル処理回路２１−０，２１−１は通常の画像処理を行った後の垂直ブランキング期間を用いて、故障検出処理を行う。第３の実施形態では、垂直ブランキング期間の開始をトリガとして、メモリ３１−０に記憶された画像データのうち、先頭から所定の範囲の比較用画像データを用いて故障検出処理を行う。そのため、通常の画像処理を行う場合には、セレクタ２２−０はカメラモジュール１０−０側からの画像データの入力２２ｆを選択し、セレクタ２２−１はカメラモジュール１０−１側からの画像データの入力２２ｄを選択する。また、故障検出処理を行う場合には、セレクタ２２−０，２２−１はメモリ３１−０からの入力２２ｃ，２２ｅを選択する。なお、第１の実施形態と同一の構成要素には同一の符号を付して、その説明を省略している。
【００６３】
図８は、第３の実施形態によるカメラ入力インタフェースでカメラ入力をキャプチャしたときのタイミングチャートの一例を示す図である。この図で、横軸は時間を示している。ここでは、カメラ０入力、メモリ０出力、セレクタ０、カメラ１入力、メモリ１出力  、セレクタ１および比較結果での処理の状況を示している。セレクタ０は、セレクタ２２−０で選択される入力を示し、セレクタ１は、セレクタ２２−１で選択される入力を示す。
【００６４】
カメラモジュール１０−０，１０−１で画像データＮ，Ｍの撮像が時刻ｔ３０で同期して開始される。その後の時刻ｔ３１で、セレクタ２２−０では、カメラモジュール１０−０からの入力２２ｆが選択され、セレクタ２２−１では、カメラモジュール１０−１からの入力２２ｄが選択される。そして、撮像された画像データＮ，Ｍがそれぞれチャネル処理回路２１−０，２１−１で処理され、メモリ３１−０，３１−１に画像処理データＮ，Ｍが出力される。この処理が、所定の周期Δｔ４で繰り返し行われる。
【００６５】
カメラモジュール１０−０，１０−１で、時刻ｔ３２で画像データを撮像し終わってからつぎの画像データを撮像し始めるまでに、垂直ブランキング期間Δｔｖが設けられる。第３の実施形態では、この垂直ブランキング期間Δｔｖ内に、チャネル処理回路２１−０，２１−１が故障検出処理を行う。この場合、画像処理データＮ，Ｍが出力された後の時刻ｔ３３で、セレクタ２２−０，２２−１では、メモリ３１−０からの入力２２ｅ，２２ｃが選択される。その後、チャネル処理回路２１−０，２１−１は、メモリ３１−０から画像データＮのうちの比較用画像データを読み出して、同じ画像処理パラメータで画像処理を実行する。チャネル処理回路２１−０，２１−１は、比較用画像処理データをそれぞれメモリ３１−０，３１−１に出力する。そして、比較器２３では、これらの比較用画像処理データが一致するかを判定する。そして、たとえばＣＰＵ４０は、比較器２３での判定結果を用いて故障検出を行う。
【００６６】
たとえば、チャネル処理回路２１−０で画像データＮの画像処理が行われた後、セレクタ２２−０は、メモリ３１−０からの入力２２ｅに切り替え、チャネル処理回路２１−０には故障検出用の画像処理パラメータが設定される。チャネル処理回路２１−０は、メモリ３１−０から画像データＮの比較用画像データを読み出し、比較用画像データの画像処理を行い、比較用画像処理データを比較器２３とメモリ３１−０に出力する。同様に、チャネル処理回路２１−１で画像データＭの画像処理が行われた後、セレクタ２２−１は、メモリ３１−０からの入力２２ｃに切り替え、チャネル処理回路２１−１には故障検出用の画像処理パラメータが設定される。チャネル処理回路２１−１は、メモリ３１−０から画像データＮの比較用画像データを読み出し、比較用画像データの画像処理を行い、比較用画像処理データを比較器２３とメモリ３１−１に出力する。比較器２３は、チャネル処理回路２１−０で処理された比較用画像処理データと、チャネル処理回路２１−１で処理された比較用画像処理データと、を比較し、両者が一致するかを判定する。
【００６７】
図８の例では、画像データＮ＋３以外の画像データについて故障検出を行った場合に、チャネル処理回路２１−０で処理された比較用画像処理データとチャネル処理回路２１−１で処理された比較用画像処理データとが一致し、画像データＮ＋３について故障検出を行った時に、両者が不一致であった場合が示されている。そのため、画像データＮ＋３の故障検出を行った後、カメラ入力インタフェース２０が故障していることを示す情報が出力される。
【００６８】
なお、上記した説明では、２チャネルの場合を示したが、３チャネル以上の多チャネルの場合も同様である。この場合には、すべてのチャネル処理回路の入力側にセレクタが設けられる。このセレクタは、セレクタが設けられるチャネル処理回路に対応するカメラモジュール側からの入力と、たとえばある１つのチャネル処理回路に対応するメモリからの入力と、を切り替えるものであればよい。
【００６９】
第３の実施形態によっても、第１の実施形態と同様の効果を得ることができる。
【００７０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７１】
１  半導体装置、１０−０，１０−１  カメラモジュール、２０  カメラ入力インタフェース、２１−０，２１−１  チャネル処理回路、２２−１，２２−１  セレクタ、２３  比較器、３１−０，３１−１，３２−０，３２−１  メモリ、４０  ＣＰＵ。
【図１】
2019145571.tif 000003
【図２】
2019145571.tif 000004
【図３】
2019145571.tif 000005
【図４】
2019145571.tif 000006
【図５】
2019145571.tif 000007
【図６】
2019145571.tif 000008
【図７】
2019145571.tif 000009
【図８】
2019145571.tif 000010