(本発明の実施の形態1)
以下、図面を参照して本発明の実施の形態1について説明する。図1は、本実施形態に係る半導体装置を含むセンサシステムの構成を示している。
図1に示すように、このセンサシステムは、センサ2と、センサに接続された半導体装置1とを備えている。
センサ2には、検出結果に応じた電流を出力する電流出力型センサや、検出結果に応じた電圧を出力する電圧出力型センサ、検出結果に応じて微弱な差動信号出力するセンサなど様々なセンサを利用することが可能である。なお、センサの応用例については後述する。
半導体装置1は、MCU部200とAFE部100とを有している。例えば、半導体装置1は、MCU部200の半導体チップと、AFE部100の半導体チップとを1つの半導体装置に搭載したSoC(System-on-a-chip)である。なお、MCU部200とAFE部100とを1チップの半導体装置としてもよい。
MCU部(制御部)200は、AFE部100を介して入力されるセンサ2の測定信号(検出信号)をA/D変換し、検出結果に応じた制御処理を行うマイクロコントローラである。また、MCU部200は、AFE部100の構成及び特性を設定変更するための制御信号をAFE部100へ出力する。
AFE部(アナログ入力部)100は、センサ2が出力する測定信号に対し、増幅やフィルタリング等のアナログフロントエンド処理を行い、MCU部200で処理可能な信号とするアナログ回路である。また、AFE部100は、図1に示すように、トポロジ(回路構成)が変更可能であり、さらに、パラメータ(回路特性)も変更可能である。
図の例のように、オペアンプ回路の構成から、I/Vアンプ、減算(差動)アンプ、加算アンプ、反転アンプ、非反転アンプ、計装アンプの構成に変更できる。また、非反転アンプのパラメータ例のように、動作点の変更、利得(ゲイン)の変更、オフセット調整を行うことができる。
図2は、半導体装置1の回路ブロックを示している。図2に示すように、MCU部200は、CPUコア210、メモリ220、オシレータ230、タイマ240、入出力ポート250、A/Dコンバータ260、SPI(Serial Peripheral Interface)インタフェース270を備えている。なお、MCU部200は、マイクロコントローラの機能を実現するためのその他の回路、例えば、DMAや各種演算回路等を備えている。
CPUコア210は、メモリ220に格納されたプログラムを実行しプログラムに従った制御処理を行う。メモリ220は、CPUコア210で実行するプログラムや各種データを格納する。オシレータ230は、MCU部200の動作クロックを生成し、また、必要に応じてAFE部100へクロックを供給する。タイマ240は、MCU部200の制御動作に利用される。
入出力ポート250は、半導体装置1の外部の装置とデータ等の入出力を行うためのインタフェースであり、例えば、後述のように外部のコンピュータ装置等と接続可能である。
A/Dコンバータ260は、AFE部100を介して入力されるセンサ2の測定信号をA/D変換する。また、A/Dコンバータ260の電源は、AFE部100から供給されている。
SPI(Serial Peripheral Interface)インタフェース270は、AFE部100とデータ等の入出力を行うためのインタフェースである。なお、SPIインタフェース270は、汎用的なシリアルインタフェースであり、SPIに対応していれば、他のマイクロコントローラ/マイクロコンピュータであっても、AFE部100と接続することができる。
本実施形態の半導体装置1は、汎用的な用途に対応可能な構成となっている。具体的には、様々な種類や特性のセンサを接続できるように、センサ用AFE回路一式を搭載している。すなわち、AFE部100は、コンフィギュラブル・アンプ110、同期検波対応増幅アンプ(増幅アンプともいう)120、SC型ローパス・フィルタ(ローパス・フィルタともいう)130、SC型ハイパス・フィルタ(ハイパス・フィルタともいう)140、可変レギュレータ150、温度センサ160、汎用アンプ170、SPIインタフェース180、を備えている。
コンフィギュラブル・アンプ110は、センサ2等の外部から入力される信号を増幅する増幅回路であり、MCU部200からの制御にしたがって回路構成及び特性、動作が設定可能である。コンフィギュラブル・アンプ110は、3chのアンプ、すなわち、3つのアンプを有している。この3つのアンプにより多くの回路構成を実現することができる。
増幅アンプ120は、コンフィギュラブル・アンプ110の出力や、センサ2等の外部から入力される信号を増幅する同期検波対応の増幅回路であり、MCU部200からの制御にしたがって特性、動作が設定可能である。
ローパス・フィルタ130は、コンフィギュラブル・アンプ110や増幅アンプ120の出力、センサ2等の外部から入力される信号に対し、高周波成分を除去し低周波成分を通過させるSC型のフィルタであり、MCU部200からの制御にしたがって特性、動作が設定可能である。ハイパス・フィルタ140は、コンフィギュラブル・アンプ110や増幅アンプ120の出力、センサ2等の外部から入力される信号に対し、低周波成分を除去し高周波成分を通過させるSC型のフィルタであり、MCU部200からの制御にしたがって特性、動作が設定可能である。
可変レギュレータ150は、MCU部200のA/Dコンバータ260へ電圧を供給する可変電圧源であり、MCU部200からの制御にしたがって特性、動作が設定可能である。温度センサ160は、半導体装置1の温度を測定するセンサであり、MCU部200からの制御にしたがって動作が設定可能である。
汎用アンプ170は、センサ2等の外部から入力される信号を増幅するアンプであり、MCU部200からの制御にしたがって動作が設定可能である。SPIインタフェース180は、MCU部200とデータ等の入出力を行うためのインタフェースであり、MCU部200のSPOインタフェース270とSPIバスを介して接続されている。
次に、本実施形態に係る半導体装置1のAFE部100の構成について詳細に説明する。図3は、AFE部100の各回路の接続関係を示している。SPIインタフェース180は、SPIバスに接続された外部端子(CS、SCLK、SDO、SDI)に接続されて、レジスタ(制御レジスタ)181を有している。MCU部200から、SPIインタフェースを介して、回路の構成・特性を変更するための構成情報(設定情報)が入力され、レジスタ181に格納される。レジスタ181は、AFE部100内の各回路に接続されており、レジスタ181の構成情報に応じてAFE部100内の各回路の構成・特性が設定される。
コンフィギュラブル・アンプ110は、個別アンプAMP1、AMP2、AMP3を有しており、アンプの入出力を切り替えるスイッチSW10〜SW15が接続されている。
個別アンプAMP1は、一方の入力端子がスイッチSW10を介してMPXIN10またはMPXIN11に接続され、他方の入力端子がスイッチSW11を介してMPXIN20またはMPXIN21に接続され、出力端子がAMP1_OUTに接続されている。同様に、個別アンプAMP2は、一方の入力端子がスイッチSW12を介してMPXIN30またはMPXIN31に接続され、他方の入力端子がスイッチSW13を介してMPXIN40またはMPXIN41に接続され、出力端子がAMP2_OUTに接続されている。
また、個別アンプAMP3は、一方の入力端子がスイッチSW14を介してMPXIN50、MPXIN51またはAMP1の出力端子に接続され、他方の入力端子がスイッチSW15を介してMPXIN60、MPXIN61またはAMP2の出力端子に接続され、出力端子がAMP3_OUTに接続されている。AMP1〜AMP3の出力端子は、増幅アンプ120、ローパス・フィルタ130、ハイパス・フィルタ140にも接続されている。
コンフィギュラブル・アンプ110は、レジスタ181の設定値に応じて、スイッチSW10〜SW15が切り替えられて、AMP1〜AMP3の接続構成が変更され、内部の回路構成・特性も後述のように変更される。
図4、図5は、スイッチSW10〜SW15によるAMP1〜AMP3の接続切り替え例である。図4では、レジスタ181の設定により、スイッチSW10,11を切り替えて、AMP1の入力端子をMPXIN10,MPXIN20に接続し、スイッチSW12,13を切り替えて、AMP2の入力端子をMPXIN30,MPXIN40に接続し、スイッチSW14,15を切り替えて、AMP3の入力端子をMPXIN50,MPXIN60に接続する。このように接続することで、AMP1、AMP2、AMP3をそれぞれ独立のアンプとして動作させることができる。
図5では、レジスタ181の設定により、スイッチSW10を切り替えて、AMP1の一方の入力端子をMPXIN10に接続し、スイッチSW12を切り替えて、AMP2の一方の入力端子をMPXIN30に接続し、スイッチSW11、SW12を切り替えて、AMP1の他方の入力端子とAMP2の他方の入力端子とを接続し、スイッチSW14,15を切り替えて、AMP3の一方の入力端子をAMP1の出力端子に接続し、AMP3の他方の入力端子をAMP3の出力端子に接続する。このように接続することで、AMP1〜AMP3を接続した計装アンプを構成することができる
また、図3に示すように、増幅アンプ120には、入力を切り替えるスイッチSW16、SW17が接続されている。増幅アンプ120は、入力端子がスイッチSW16、SW17を介してAMP1〜AMP3の出力端子、または、スイッチSW17を介してGAINAMP_INに接続され、出力端子がGAINAMP_OUTに接続されている。増幅アンプ120の出力端子は、ローパス・フィルタ130、ハイパス・フィルタ140にも接続されている。なお、SW16により、AMP1〜AMP3の出力端子と、外部端子及び増幅アンプとの接続を切り替えてもよい。
ローパス・フィルタ130には、入力を切り替えるスイッチSW18、SW19が接続され、ハイパス・フィルタ140にも、入力を切り替えるスイッチSW18、SW20が接続されている。ローパス・フィルタ130は、入力端子がスイッチSW18,SW19を介してAPM1〜AMP3の出力端子、増幅アンプ120の出力端子、SC_IN、またはスイッチSW19を介してハイパス・フィルタ140の出力端子に接続され、出力端子がLPF_OUTに接続されている。ハイパス・フィルタ140は、入力端子がスイッチSW18,SW19を介してAPM1〜AMP3の出力端子、増幅アンプ120の出力端子、SC_IN、またはスイッチSW19を介してローパス・フィルタ130の出力端子に接続され、出力端子がHPF_OUTに接続されている。なお、ローパス・フィルタ130、ハイパス・フィルタ140の出力端子と外部端子との間にスイッチを設けて、ローパス・フィルタ130、ハイパス・フィルタ140の出力端子と、外部端子及びSW19、SW20との接続を切り替えてもよい。
増幅アンプ120、ローパス・フィルタ130、ハイパス・フィルタ140は、レジスタ181の設定値に応じて、スイッチSW16〜SW20が切り替えられて、増幅アンプ120、ローパス・フィルタ130、ハイパス・フィルタ140の接続構成が変更され、内部の特性も後述のように変更される。
図6、図7は、スイッチSW17〜SW20による増幅アンプ120、ローパス・フィルタ130、ハイパス・フィルタ140の接続切り替え例である。図6では、レジスタ181の設定により、スイッチSW17を切り替えて、増幅アンプ120の入力端子をAMP1〜AMP3のいずれかの出力端子に接続し、スイッチSW18,SW19を切り替えて、ローパス・フィルタ130の入力端子を増幅アンプ120の出力端子に接続し、スイッチSW20を切り替えて、ハイパス・フィルタ140の入力端子をローパス・フィルタ130の出力端子に接続する。このように切り替えることで、AMP1〜AMP3のいずれか、増幅アンプ120、ローパス・フィルタ130、ハイパス・フィルタ140の順に接続した回路を構成することができる。
図7では、レジスタ181の設定により、スイッチSW17を切り替えて、増幅アンプ120の入力端子をGAINAMP_INに接続し、スイッチSW18、SW20を切り替えて、ハイパス・フィルタ140の入力端子をSC_INに接続し、スイッチSW19を切り替えて、ローパス・フィルタ130の入力端子をハイパス・フィルタ140の出力端子に接続する。このように切り替えることで、増幅アンプ120を1つの独立したアンプとして動作させ、また、ハイパス・フィルタ140、ローパス・フィルタ130の順に接続した回路を構成することができる。
また、図3に示すように、可変レギュレータ150は、出力端子がBGR_OUTとLDO_OUTに接続されている。可変レギュレータは、レジスタ181の設定値に応じて後述のように特性が変更される。
温度センサ160は、出力端子がTEMP_OUTに接続されている。温度センサ160は、レジスタ181の設定値に応じて後述のように特性が変更される。
汎用アンプ170は、一方の入力端子がAMP4_IN_NEに接続され、他方の入力端子がAMP4_IN_POに接続され、出力端子がAMP4_OUTに接続されている。汎用アンプは、1つのオペアンプにより構成されており、レジスタ181の設定値に応じて、ゲインが変更され、また、電源ON/OFFも設定される。
次に、図8〜図14を用いて、コンフィギュラブル・アンプ110の具体的な回路構成について説明する。
コンフィギュラブル・アンプ110は、センサ出力信号を増幅するためのアンプであり、制御レジスタの設定に応じて、トポロジ(回路構成)を変更できるとともに、パラメータ(回路特性)を変更できる。特性の変更としてゲインを可変に設定することができる。例えば、個別アンプを独立して使用する場合、ゲインを6dB〜46dBまで2dB単位で設定でき、計装アンプとして使用する場合、ゲインを20dB〜60dBまで2dB単位で設定できる。また、スルーレートを可変に設定することもでき、パワーオフ・モードにより電源のオン/オフを切り替えることができる。
図8は、コンフィギュラブル・アンプ110の個別アンプAMP1の回路構成を示している。なお、AMP2、AMP3も同様の構成である。
図8に示すように、個別アンプAMP1は、オペアンプ111を有し、オペアンプ111の各端子に接続される可変抵抗112a〜112d、スイッチ113a〜113c、DAC114を有しており、図3のようにマルチプレクサ(スイッチ)SW10、SW11が接続されている。
レジスタ181の設定値に応じて、マルチプレクサSW10、SW11によりオペアンプ111の入力を切り替え、スイッチ113a、113bにより可変抵抗(入力抵抗)112a、112bの有無を切り替え、スイッチ113cによりDAC114の接続を切り替えることができる。なお、オペアンプ111の出力は、図3のようにSW16、SW17、SW18により、増幅アンプ120、ローパス・フィルタ130、ハイパス・フィルタ140との接続が切り替えられる。また、レジスタ181の設定値に応じて、可変抵抗112a、112b、112c、112dの抵抗値、DAC114の設定を変えることで、AMP1のゲイン、動作点、オフセット等を変更することができる。さらに、レジスタ181の設定値に応じて、オペアンプを制御して、スルーレートの制御、電源オン/オフを制御できる。
各スイッチ、マルチプレクサの切り替えにより、I/Vアンプ、反転アンプ、減算(差動)アンプ、非反転アンプ、加算アンプを構成することができる。
図9は、I/Vアンプを構成する例である。レジスタ181の設定に応じて、マルチプレクサSW10を切り替えて外部入力端子(MPXIN10)を反転入力端子に接続し、スイッチ113aをオンして可変抵抗112aを短絡する。この接続によりI/Vアンプが構成される。また、レジスタ181の設定により、可変抵抗112a、112dの抵抗値を変えることでアンプのゲインを設定する。このI/Vアンプは、外部入力端子から電流型センサの信号が入力されると、入力電流を電圧に変換して出力する。
図10は、減算(差動)アンプを構成する例である。レジスタ181の設定に応じて、マルチプレクサSW10、SW11を切り替えて外部入力端子(MPXIN10)を反転入力端子に接続し、外部入力端子(MPXIN20)を非反転入力端子に接続する。この接続により減算アンプが構成される。また、レジスタ181の設定により、可変抵抗112a、112b、112dの抵抗値を変えることでアンプのゲインを設定する。この減算アンプは、外部入力端子から2つの信号(V1,V2)が入力されると、一方の入力電圧から他方の入力電圧を差し引いた電圧(V2−V1)を出力する。
図11は、加算アンプを構成する例である。なお、ここでは、可変抵抗112bと反転入力端子の間にスイッチ113dを有しているものとする。レジスタ181の設定に応じて、マルチプレクサSW10、SW11、スイッチ113dを切り替えて外部入力端子(MPXIN10)と外部入力端子(MPXIN20)を反転入力端子に接続する。この接続により加算アンプが構成される。また、レジスタ181の設定により、可変抵抗112a、112b、112dの抵抗値を変えることでアンプのゲインを設定する。この加算アンプは、外部入力端子から2つの信号(V1,V2)が入力されると、一方の入力電圧と他方の入力電圧を加算した電圧(V1+V1)を出力する。
図12は、反転アンプを構成する例である。レジスタの設定に応じて、マルチプレクサSW10を切り替えて外部入力端子(MPXIN10)を反転入力端子に接続し、スイッチ113cをオンにしてDAC114の出力を非反転入力端子に接続する。この接続により反転アンプが構成される。また、レジスタ181の設定により、可変抵抗112a、112c、112dの抵抗値を変えることでアンプのゲインを設定し、DACの出力電圧を変えることで、アンプの動作点やオフセットを調整する。この反転アンプは、外部入力端子から電圧型センサの信号が入力されると、入力電圧を反転増幅した電圧を出力する。
図13、非反転アンプを構成する例である。レジスタの設定に応じて、マルチプレクサSW10を切り替えてDAC114の出力を反転入力端子に接続し、マルチプレクサSW11を切り替えて外部入力端子(MPXIN20)を非反転入力端子に接続する。この接続により非反転アンプが構成される。また、レジスタ181の設定により、可変抵抗112a、112b、112dの抵抗値を変えることでアンプのゲインを設定し、DACの出力電圧を変えることで、アンプの動作点やオフセットを調整する。この非反転アンプは、外部入力端子から電圧型センサの信号が入力されると、入力電圧を非反転増幅した(入力と同相の)電圧を出力する。
図14は、AMP1〜AMP3により計装アンプを構成する例である。図5で説明したように、レジスタ181の設定に応じて、マルチプレクサ(スイッチ)SW10〜SW15によりAMP1〜AMP3を接続することで、図14の計装アンプを構成できる。なお、各スイッチの図示を省略しているが、AMP1では、スイッチ113bをオンして可変抵抗112bを短絡し、AMP2では、スイッチ113bをオンして可変抵抗112bを短絡し、AMP3では、スイッチ113cをオンし、DAC114を非反転入力端子に接続している。
また、レジスタ181の設定により、AMP3の可変抵抗112a〜112dの抵抗値を変えることで計装アンプのゲインを設定し、DAC114の出力電圧を変えることで、計装アンプの動作点やオフセットを調整する。この計装アンプは、外部入力端子から微弱な差動信号が入力されると、この差動信号を、AMP1、AMP2によりそれぞれ非反転増幅し、さらに、AMP3により差動増幅した電圧を出力する。
次に、図15〜図21を用いて、AFE部100内のその他の回路の具体的な回路構成及びSPIインタフェースについて説明する。
図15は、増幅アンプ120の回路構成を示している。増幅アンプ120は、同期検波機能に対応しており、入力信号の増幅や同期検波を行う。特性の変更として、増幅アンプ120は、ゲインを可変に設定することができる。例えば、ゲインを6dB〜46dBまで2dB単位で設定できる。また、パワーオフ・モードにより電源のオン/オフを切り替えることができる。
図15に示すように、増幅アンプ120は、オペアンプAMP21、AMP22を有し、オペアンプAMP21、AMP22の各端子に接続される可変抵抗121a、121c、固定抵抗121b、122a、122b、122c及びDAC123を有している。また、図3のようにマルチプレクサ(スイッチ)SW17が接続されている。さらに、同期検波を行うための同期検波制御部として、同期検波スイッチ124、固定抵抗125を有している。
レジスタ181の設定値に応じて、マルチプレクサSW17が制御されて増幅アンプ120の入力を切り替える。また、レジスタ181の設定値に応じて、可変抵抗121a、121cの抵抗値、DAC123の設定を変えることでAMP21のゲイン、AMP21、AMP22の動作点、オフセット等を変更することができる。さらに、レジスタ181の設定値に応じて、オペアンプAMP21,AMP22の電源オン/オフを制御できる。
増幅アンプ120では、AMP1〜AMP3、または外部入力端子から信号が入力されると、AMP21により反転増幅され、さらにAMP22により反転増幅された信号が、GAINAMP_OUTへ出力される。
また、MCU部200から同期クロックCLK_SYNCHが入力され、同期クロックCLK_SYNCHのタイミングで、同期検波スイッチ124の接続が切り替わり、AMP21とAMP22のいずれかの出力信号がSYNCH_OUTへ出力される。
図16は、増幅アンプ120の出力動作を示すタイミングチャートである。図16(a)のように、AMP21は、入力信号の反転信号を出力し、図16(b)のように、AMP22は、さらに反転した信号を出力する。このAMP22の出力信号が、増幅アンプ120の出力としてGAINAMP_OUTへ出力される。
MCU部200は、GAINAMP_OUTに接続されており、GAINAMP_OUTの信号に応じたクロックを生成する。ここでは、図17(c)のように、GAINAMP_OUTが基準値よりもハイレベルの場合に、ハイレベルとなるCLK_SYNCHを生成する。そして、この同期クロックCLK_SYNCHを増幅アンプ120へ供給する。
同期検波スイッチ124は、このCLK_SYNCKに応じて、AMP21、AMP22とSYNCH_OUTとの接続を切り替える。クロックCLK_SYNCHがローレベルの場合、AMP21と接続してAPM21の出力をSYNCH_OUTへ出力し、クロックCLK_SYNCHがハイレベルの場合、AMP22と接続してAMP22の出力をSYNCH_OUTへ出力する。そうすると、図16(d)のように、同期検波し、全波整流された信号が、SYNCH_OUTから出力される。
図17は、ローパス・フィルタ130の回路構成を示している。ローパス・フィルタ130は、カットオフ周波数可変のSC(スイッチトキャパシタ)型ローパス・フィルタであり、入力信号のフィルタリングに用いられる。
ローパス・フィルタ130の特性は、Q値が固定値であり、例えば0.702である。特性の変更として、カットオフ周波数fcを可変に設定することができる。例えば、9Hz〜900Hzまで設定できる。また、パワーオフ・モードにより電源のオン/オフを切り替えることができる。
図17に示すように、ローパス・フィルタ130は、スイッチング信号を生成するスイッチング信号生成部131と、スイッチング信号に応じて入力信号をフィルタリングするフィルタ部132とを有している。
スイッチング信号生成部131は、フリップフロップ133と複数のインバータ134を有している。フィルタ部132は、複数のオペアンプ135を有し、複数のオペアンプ135に接続される複数のスイッチ136、コンデンサ137、DAC138に制御される可変電源139を有している。また、図3のようにマルチプレクサ(スイッチ)SW19が接続されている。
レジスタ181の設定値に応じて、マルチプレクサSW19が制御されてローパス・フィルタ130の入力を切り替える。また、レジスタ181の設定値に応じて、DAC138の設定を変えることで可変電源139を制御し、アンプの動作点、オフセット等を変更することができる。さらに、レジスタ181の設定値に応じて、ローパス・フィルタ130の電源をオン/オフを制御できる。
ローパス・フィルタ130では、スイッチング信号生成部131において、外部からクロックCLK_LPFが入力され、フリップフロップ133とインバータ134によりスイッチング信号Φ1、Φ2が生成される。フィルタ部132において、外部入力端子や増幅アンプ120等から信号が入力されると、3つのオペアンプ135を介して信号が出力され、その際、スイッチング信号Φ1、Φ2によりスイッチ136がオン/オフしてコンデンサ137の接続が切り替わる。そうすると、入力信号のカットオフ周波数よりも高周波成分を除去した信号が出力されることになる。
このカットオフ周波数は、MCU部200により外部から入力されるクロックCLK_LPFにより変更することができる。具体的には、カットオフ周波数fc=0.009×fs(スイッチング周波数 1/2f CLK_LPF)である。
図18は、ハイパス・フィルタ140の回路構成を示している。ハイパス・フィルタ140は、カットオフ周波数可変のSC型ハイパス・フィルタであり、入力信号のフィルタリングに用いられる。
ハイパス・フィルタ140の特性は、Q値が固定値であり、例えば0.702である。特性の変更として、カットオフ周波数fcを可変に設定することができる。例えば、8Hz〜800Hzまで設定できる。また、パワーオフ・モードにより電源のオン/オフを切り替えることができる。
図18に示すように、ハイパス・フィルタ140は、スイッチング信号を生成するスイッチング信号生成部141と、スイッチング信号に応じて入力信号をフィルタリングするフィルタ部142とを有している。
スイッチング信号生成部141は、フリップフロップ143と複数のインバータ144を有している。フィルタ部142は、複数のオペアンプ145を有し、複数のオペアンプ145に接続される複数のスイッチ146、コンデンサ147、DAC148に制御される可変電源149を有している。また、図3のようにマルチプレクサ(スイッチ)SW20が接続されている。
レジスタ181の設定値に応じて、マルチプレクサSW20が制御されてハイパス・フィルタ140の入力を切り替える。また、レジスタ181の設定値に応じて、DAC148の設定を変えることで可変電源149を制御し、アンプの動作点、オフセット等を変更することができる。さらに、レジスタ181の設定値に応じて、ハイパス・フィルタ140の電源をオン/オフを制御できる。
ハイパス・フィルタ140では、スイッチング信号生成部141において、外部からクロックCLK_HPFが入力され、フリップフロップ143とインバータ144によりスイッチング信号Φ1、Φ2が生成される。フィルタ部142において、外部入力端子や増幅アンプ120等から信号が入力されると、3つのオペアンプ145を介して信号が出力され、その際、スイッチング信号Φ1、Φ2によりスイッチ146がオン/オフしてコンデンサ147の接続が切り替わる。そうすると、入力信号のカットオフ周波数よりも低周波成分を除去した信号が出力されることになる。
このカットオフ周波数は、MCU部200により外部から入力されるクロックCLK_HPFにより変更することができる。具体的には、カットオフ周波数fc=0.008×fs(スイッチング周波数 1/2f CLK_LPF)である。
図19は、可変レギュレータ150の回路構成を示している。可変レギュレータ150は、出力電圧を可変にするレギュレータであり、MCU部200のA/Dコンバータ260の基準電源生成回路である。特性の変更として、可変レギュレータ150は、出力電圧を2.0V〜3.3Vまで、±5%の精度で、0.1V単位で設定することができる。例えば、可変レギュレータ150の特性として、出力電流は、15mAである。また、可変レギュレータ150は、出力電源のオン/オフを制御することができる。
図19に示すように、可変レギュレータ150は、オペアンプ151を有し、オペアンプ151の入力側に接続されるバンドギャップリファレンスBGR、オペアンプ151の出力側に接続されるトランジスタ152、153、固定抵抗154、可変抵抗155を有している。
レジスタ181の設定値に応じて、BGRの電圧が設定され、可変抵抗155の抵抗値を変えることで出力電圧が変更できる。さらに、レジスタ181の設定値に応じて、オペアンプ151の電源オン/オフ、トランジスタ153のオン/オフが切り替えられ、出力電圧の出力開始/停止が制御される。
可変レギュレータ150では、BGRの電圧がBGR_OUTから出力される。BGRの電圧と可変抵抗155の電圧に応じてオペアンプ151が動作してトランジスタ152が制御され、固定抵抗154と可変抵抗155の比に応じた電圧が出力される。
図20は、温度センサ160の回路構成を示している。温度センサ160は、半導体装置1の温度を測定するセンサであり、MCU部200がこの測定結果に基づいて温度特性の補正等するために用いることができる。例えば、温度センサ160の特性として、出力温度係数は、−5mV/℃である。また、パワーオフ・モードにより電源のオン/オフを切り替えることができる。
図20に示すように、温度センサ160は、オペアンプ161を有し、オペアンプ161の入力側に接続される電流源162、ダイオード163、オペアンプ161の出力側に接続される固定抵抗164、165を有している。レジスタ181の設定値に応じて、オペアンプ161の電源をオン/オフすることができる。
温度センサ160は、温度に応じてダイオード163の電圧が−2mV/℃で変化し、この電圧をオペアンプ161が非反転増幅して、−5mV/℃として出力する。
図21は、SPIインタフェース180の通信タイミングを示している。SPIインタフェース180は、MCU部とAFE部間のインタフェースであり、AFE部の設定、すなわちレジスタ181の書き込み/読み出し読出しを行う。ここでは、SPIクロック周波数は10MHzであり、通信データ量は16ビット、通信方向はMSBである。
図21に示すように、チップセレクトCS(反転信号)、シリアルクロックSCLK(反転信号)、シリアルデータ入力SDIが、MCU部200からAFE部100へ入力され、シリアルデータ出力SDOが、AFE部100からMCU部200へ出力される。
チップセレクトCSがローレベルとなり、シリアルクロックSCLKに同期して各ビットが入出力される。MCU部200は、R/Wにレジスタ181のリード/ライトを示すビットを設定し、A1〜A6に、リード/ライトするレジスタ181のアドレスを設定する。
R/Wがライトの場合、MCU部200は、D0〜D7にレジスタへ書き込むデータを設定する。R/Wがリードの場合、AFE部200は、D0〜D7にレジスタ181から読み出したデータを設定する。
AFE部100は、SDIでR/W、A1〜A6が入力されると、クロックSCLKの立ち上りエッジのタイミング(t1)でデータをサンプリングし、A0のタイミング(t2)で、R/Wとアドレスをラッチする。A0の後、D7〜D0クロックSCLKの立下りエッジのタイミング(t3)で送信データを1ビットシフトして設定する。さらに、チップセレクトCSのタイミング(t4)でデータをラッチする。
このように、本実施形態の半導体装置1は、半導体装置内部のAFE部100の回路構成や特性を可変に設定することができる。このため、一つの半導体装置で様々なセンサ等を接続することができ、多くの応用システム(アプリケーション)で使用することができる。
例えば、コンフィギュラブル・アンプ110の回路構成を、非反転アンプとした場合、電圧出力型のセンサを接続可能であるため、赤外線センサ、温度センサ、磁気センサ等を用いた応用システムに使用できる。一例として、赤外線センサを備えたデジタルカメラ、温度センサを備えたプリンタ、磁気センサを備えたタブレット端末、赤外線センサを備えたエアコン等に使用することができる。
また、コンフィギュラブル・アンプ110の回路構成を、計装アンプとした場合、微弱な差動出力のセンサを接続可能となるため、圧力センサ、ジャイロセンサ、ショックセンサ等を用いた応用システムに使用できる。一例として、圧力センサを備えた血圧計、圧力センサを備えた体重計、ジャイロセンサを備えた携帯電話、ショックセンサを備えた液晶テレビ等に使用することができる。
さらに、コンフィギュラブル・アンプ110の回路構成を、I/Vアンプとした場合、電流出力のセンサを接続可能なため、フォトダイオード、人感センサ、赤外線センサ等を用いた応用システムに使用できる。一例として、フォトダイオードを備えたデジタルカメラ、人感センサを備えた監視カメラ、人感センサを備えた便座、赤外線センサを備えたバーコードリーダ等に使用することができる。
図22〜図24を用いて、半導体装置1にセンサを接続したシステム例について説明する。図22は、半導体装置1に3種類のセンサを接続した例である。この例では、コンフィギュラブル・アンプ110を、3chの独立した個別アンプAMP1〜AMP3に設定し、それぞれ別のセンサを接続する。
AMP1には、焦電センサ(赤外線センサ)21を接続する。このため、AMP1を焦電センサ21に適した構成・特性に設定する。AMP1は、回路構成を非反転アンプに設定し、入力を焦電センサ21が接続された外部入力端子に接続し、出力をMCU部200が接続された外部出力端子に接続する。また、ゲイン、オフセット等を焦電センサ21に合わせて設定する。これにより、焦電センサ21の出力信号が、AMP1で非反転増幅されてMCU部200へ出力され、MCU部200のA/Dコンバータ260でA/D変換されて、焦電センサ21の検出に応じた処理が実行される。
AMP2には、サーミスタ(温度センサ)22を接続する。このため、AMP2をサーミスタ22に適した構成・特性に設定する。AMP2は、回路構成を非反転アンプに設定し、入力をサーミスタ22が接続された外部入力端子に接続し、出力をMCU部200が接続された外部出力端子に接続されている。また、ゲイン、オフセット等をサーミスタ22に合わせて設定する。これにより、サーミスタ22の出力信号が、AMP2で非反転増幅されてMCU部200へ出力され、MCU部200のA/Dコンバータ260でA/D変換されて、サーミスタ22の検出に応じた処理が実行される。
AMP3には、フォトダイオード23を接続する。このため、AMP3をフォトダイオード23に適した構成・特性に設定する。AMP3は、回路構成を非反転アンプに設定し、入力をフォトダイオード23が接続された外部入力端子に接続する。AMP3の出力は、増幅アンプ120の入力に接続し、増幅アンプ120の出力をフィルタ(ローパス・フィルタ130、ハイパス・フィルタ140含む)の入力に接続し、フィルタの出力をMCU部200が接続された外部出力端子に接続する。また、AMP3のゲイン及びオフセット、増幅アンプ120のゲイン、フィルタ(130,140)のカットオフ周波数をフォトダイオード23に合わせて設定する。これにより、フォトダイオード23の出力信号が、AMP2で非反転増幅され、さらに増幅アンプ120で増幅された後、フィルタ(130,140)によりノイズが除去されて、MCU部200へ出力される。MCU部200では、A/Dコンバータ260によりA/D変換されて、フォトダイオード23の検出に応じた処理が実行される。
なお、温度センサ160の出力が、MCU部200のA/Dコンバータ260に接続され、可変レギュレータ150の出力電圧(3.3V)がA/Dコンバータ260に供給されている。
図23は、半導体装置1に焦電センサやサーミスタ等の電圧型センサ24を接続する例である。例えば、電圧型センサ24を備えたデジタルカメラやプリンタ、タブレット端末、エアコンなどの応用システムに適用可能な例である。
コンフィギュラブル・アンプ110を、3chの独立した個別アンプとしてAMP1を使用する。電圧型センサ24の出力信号に対応するため、AMP1の回路構成を非反転アンプとする。この例では、電圧型センサ24の出力信号を、AMP1で増幅し、ローパス・フィルタ130を通した後、MCU部200でA/D変換する。
したがって、AMP1の入力を、電圧型センサ24が接続された外部入力端子に接続し、AMP1の出力をローパス・フィルタ130の入力に接続する。この例では、外部端子を介してAMP1の出力とローパス・フィルタ130の入力とを接続する。ローパス・フィルタ130の出力をMCU部200のADポート262(A/Dコンバータの入力ポート)に接続する。ローパス・フィルタ130のクロックは、MCU部200のタイマ240により供給される。
電圧型センサ24の特性に合わせて、ローパス・フィルタ130のカットオフ周波数を設定し、AMP1のゲイン及びオフセット等を設定することで、電圧型センサ24に最適な回路を構成することができる。
なお、温度センサ160の出力は、MCU部200のADポート262に接続される。VCC電源が、MCU部200とAFE部100に供給され、可変レギュレータ150の出力がMCU部200のA/Dコンバータ260の電源入力に接続されている。
図24は、半導体装置1にフォトダイオード等の電流型センサ25を接続する例である。電流型センサを備えた火災報知器や監視カメラ、便座、バーコードリーダなどの応用システムに適用可能な例である。
コンフィギュラブル・アンプ110を、3chの独立した個別アンプとしてAMP2、AMP3を使用する。電流型センサ25の出力信号に対応するため、AMP1の回路構成をI/Vアンプとし、AMP3の回路構成を非反転アンプとする。このように、AMP1〜AMP3の2つのアンプを任意に接続して構成することも可能である。
この例では、電流型センサ25の出力信号を、AMP2、AMP3で増幅し、さらに、ハイパス・フィルタ140、ローパス・フィルタ130を通した後、MCU部200でA/D変換する。
したがって、AMP2の入力を電流型センサ25が接続された外部入力端子に接続し、AMP2の出力をAMP3の入力に接続し、AMP3の出力をハイパス・フィルタ140の入力に接続する。そして、ハイパス・フィルタ140の出力をローパス・フィルタ130の入力に接続し、ローパス・フィルタ130の出力をMCU部200のADポート262に接続する。ハイパス・フィルタ140及びローパス・フィルタ130のクロックは、MCU部200のタイマ240により供給される。
電流型センサ25の特性に合わせて、AMP1、AMP2のゲイン及びオフセット等を設定し、ハイパス・フィルタ、ローパス・フィルタのカットオフ周波数を設定することで、電流型センサ25に最適な回路を構成することができる。
なお、温度センサ160と可変レギュレータ150は、図23と同様にMCU部200と接続されている。
図24の例では、発光ダイオード26がMCU部200に接続されており、MCU部200の制御により発光ダイオード26が発光する。そうすると、発光ダイオード26から出力される光を電流型センサ25が検出し、検出に応じた信号がAFE部100,MCU部200により処理される。
次に、本実施形態に係る半導体装置1のMCU部200の構成について説明する。本実施形態では、上記のように、MCU部200からの制御によって、AFE部100の構成・特性を設定し変更する。MCU部200では、メモリ220に記憶されたプログラムをCPUコア210が実行することで、AFE部100の構成変更(構成設定)制御を実現する。
図25は、AF部100の構成変更を行うためのMCU部200の機能構成例を示している。図25に示すように、MCU部200は、変更タイミング検出部201、レジスタ読み書き部(構成設定部)202、A/D変換部203を有している。例えば、変更タイミング検出部201及びレジスタ読み書き部202は、プログラムがCPUコア210で実行されることにより実現され、A/D変換部203はA/Dコンバータ260により実現されている。
変更(設定)タイミング検出部201は、AFE部100の構成及び特性を設定変更するタイミングを検出しレジスタ読み書き部202へ通知する。変更タイミングとしては、半導体装置外部のコンピュータ装置からの指示や、MCU部200のタイマ240、AFE部100からの信号等が利用できる。また、すでにメモリ220にレジスタ181の設定情報が書き込まれている場合、半導体装置1の起動時の初期化のタイミングが設定タイミングとなる。
レジスタ読み書き部(設定部)202は、変更タイミング検出部201の検出にしたがって、AFE部100のレジスタ181へ構成情報の書き込みを行いAFE部100の構成及び特性を変更する。書き込みを行う構成情報(設定情報)の内容は、外部のコンピュータ装置からの入力された情報でもよいし、MCU部200があらかじめメモリ220に記憶した情報や、CPUコア210がプログラムの実行により生成した情報であってもよい。
また、レジスタ読み書き部202は、外部のコンピュータ装置からの指示にしたがって、AFE部100のレジスタ181の読み出しも行う。なお、レジスタ読み書き部202は、上記のようにAFE部100に対してレジスタ181のアドレスを指定して書き込み/読み出しを行う。
A/D変換部203は、AFE部100から出力されるアナログ信号をデジタル信号に変換する。また、A/D変換部203は、レジスタ読み書き部202の動作に応じて、A/D変換動作のオン/オフを切り替える。
このような構成により、半導体装置1の動作中にMCU部200からAFE部100の構成及び特性を切り替えることができる。
例えば、火災報知器や自動水栓装置などにおいて、6月や1年経過ごとにアンプのゲインを大きくすることが可能である。これにより、センサの感度がほこりや経年劣化によって低下した場合でも、定期的にゲインを大きくすることでセンサの感度を一定に保つことができ、長期的に装置を正常動作させることができる。
また、動作時間に応じてAFE部100のパワーオフ・モードを制御することができる。例えば、所定の間隔でAFE部100の各回路の電源オン/オフを切り替え間欠動作させることができ、間欠動作する回路も自由に選択することが可能である。したがって、半導体装置1の低消費電力化を図ることができる。
また、半導体装置1に接続するセンサ2の特性を検出し、センサ2の特性に合わせて自動的にAFE部100の構成・特性を変更することもできる。例えば、センサ2の特性ばらつきに応じてばらつきを吸収するトリミングを行うことが可能である。
MCU部200からの制御により、AFE部100の動作中に回路の構成・特性を変更するため、AFE部100の出力信号にノイズが発生する恐れがある。図26は、この構成変更時のAFE部100の出力信号の例を示している。
図26(a)のように、SPIインタフェースによって、MCU部200からAFE部100のレジスタ181を書き替えて、AMP1のゲインを6dBから12dBに切り替える。そうすると、図26(b)のように、ゲインを切り替える際に、図8で示した可変抵抗の抵抗値を変更するため、AMP1のオペアンプから出力される出力信号にノイズが発生する可能性がある。
このため、本実施形態では、図26(c)のように、A/D変換部203のオン/オフを切り替える。まず、6dBで動作中はA/D変換部203をオンである。変更タイミング検出部201が構成変更のタイミングを検出し、レジスタ読み書き部202が、AFE部100のレジスタ181へ書き込みを開始したとき、A/D変換部203をオフにしてA/D変換を停止する。そして、レジスタ181の書き込みが完了したとき、A/D変換部203をオンにしてA/D変換を開始する。このように制御することで、構成変更時のノイズがA/D変換されないため、ノイズによる誤動作を防ぐことができる。
なお、A/D変換のオン/オフに限らず、アンプのノイズを除去してもよい。例えば、構成変更時には、アンプとフィルタを接続する構成としてノイズをフィルタリングしてもよい。また、アンプの出力先を選択するスイッチを切り替えて、MCU部200との接続を一時的に切断してもよい。
以上のような本実施形態に係る半導体装置1では、接続するセンサに応じてAFE部100の構成及び特性を決定する必要があるため、センサに適した半導体装置1(センサシステム)の設計開発において、半導体装置1を用いてレジスタ設定値の評価が行われる。以下、半導体装置1の開発工程で行われる設定評価について説明する。
図27は、本実施形態に係る半導体装置1の設定評価システム(開発支援システム)の構成を示している。図27に示すように、この設定評価システムは、設定評価装置3、半導体装置1を搭載する評価ボード10、センサ2を搭載するセンサボードを有している。
評価ボード10は、USBインタフェース11、センサインタフェース12を備えている。設定評価装置3はUSBケーブルによりUSBインタフェース11に接続され、USBインタフェース11を介して、設定評価装置3と半導体装置の間で入出力可能に接続される。センサボード20はセンサインタフェース12により接続され、センサインタフェース12を介して、センサ2と半導体装置1とが入出力可能に接続される。
設定評価装置(開発支援装置)3は、後述のGUIを用いることで、半導体装置1に対してAFE部100のレジスタ181を設定する。半導体装置1は、設定評価装置3の指示に従ってレジスタ181を書き替え、センサ2の出力信号の増幅、A/D変換等を行う。設定評価装置3は、半導体装置1のA/D変換結果を取得して半導体装置1の動作を確認し、レジスタ181の設定値を評価する。
図28は、設定評価装置3を実現するためのハードウェア構成の例を示している。図28に示すように、設定評価装置3は、パーソナルコンピュータやワークステーションなどのコンピュータ装置であり、中央処理装置(CPU)31とメモリ34とを含んでいる。CPU31とメモリ34は、バスを介して補助記憶装置としてのハードディスク装置(HDD)35に接続される。設定評価装置3は、ユーザ・インターフェース・ハードウェアとして、例えば、ユーザが入力するためのポインティング・デバイス(マウス、ジョイスティック等)やキーボード等の入力装置32や、GUI等の視覚データをユーザに提示するためのCRTや液晶ディスプレイなどの表示装置33を有している。HDD35等の記憶媒体にはオペレーティングシステムと協働してCPU31等に命令を与え、設定評価装置3の機能を実施するためのプログラムを記憶することができる。このプログラムは、メモリ34にロードされることによって実行される。また、設定評価装置3は、評価ボード10等に接続するUSB等の入出力インタフェース(I/O)36を有している。なお、設定評価装置3は、単一のコンピュータでなくとも、複数のコンピュータによって構成することも可能である。
図29は、設定評価装置3の機能ブロックを示している。図29に示すように、設定評価装置3は、制御部300と記憶部310を有している。
制御部300は、CPU31がプログラムを実行することで各部の機能を実現している。制御部300は、GUI処理部301、レジスタ設定部302、レジスタ取得部303、A/D変換制御部304、A/D変換結果取得部305、SPIモニタ部306を有している。
記憶部310は、HDD35やメモリ34により実現されている。記憶部310には、GUI情報311、レジスタ設定情報312、レジスタ取得情報313、A/D変換制御情報314、A/D変換結果情報315、SPIモニタ情報が格納される。
GUI情報311は、後述のように半導体装置1を設定評価するためのウィンドウ等からなるGUIを表示するための情報である。GUI処理部(GUI表示部)301は、このGUI情報311に基づいて表示装置33にGUIを表示し、さらに、ユーザによるGUIへの入力操作を受け付ける。
レジスタ設定情報312は、半導体装置1のレジスタ181に設定する設定情報(構成情報)である。レジスタ設定部(設定情報生成部及び設定部)302は、GUIの入力操作に応じて、このレジスタ設定情報312を生成するとともに、生成したレジスタ設定情報312を半導体装置1へ出力して構成変更(設定)を指示する。
レジスタ取得情報313は、半導体装置1から取得したレジスタ181の情報であり、現在のレジスタ181に書き込まれている情報である。レジスタ取得部303は、半導体装置1へ指示して、このレジスタ取得情報313を取得し、GUIを介してユーザへ出力する。
A/D変換制御情報314は、半導体装置1のMCU部200におけるA/D変換のためのパラメータ等の情報である。A/D変換制御部304は、GUIの入力操作に応じて、このA/D変換制御情報314を生成し、半導体装置1へA/D変換制御情報314を出力してMCU部200のA/D変換動作を制御する。
A/D変換結果情報315は、半導体装置1のMCU部200におけるA/D変換結果を示す情報である。A/D変換結果取得部305は、半導体装置1へ指示して、このA/D変換結果情報315を取得し、GUIを介してユーザへ出力する。
SPIモニタ情報316は、半導体装置1におけるMCU部200とAFE部100間のSPIインタフェースの通信情報である。SPIモニタ部306は、半導体装置1へ指示して、このSPIモニタ情報316を取得し、GUIを介してユーザへ出力する。
次に、図30を用いて、図27で示した設定評価システムにおける半導体装置1の設定評価方法(開発方法)について説明する。
まず、半導体装置1に接続するセンサ2の構成を確認する(S101)。すなわち、センサ2の回路構成や特性、出力信号を確認する。例えば、センサ2がホール素子の場合、ブリッジ抵抗のセンサ構成となり、出力信号は差動電圧として出力される。
次いで、センサ2を半導体装置1に取り付ける(S102)。すなわち、センサボード20にセンサ2を取り付け、半導体装置1を搭載した評価ボード10のセンサインタフェース12にセンサボード20を接続する。
次いで、設定評価装置3により半導体装置1の構成及び特性を設定する(S103)。すなわち、評価ボード10に設定評価装置3を接続し、ユーザが設定評価装置3のGUIを操作して、半導体装置1におけるAFE部100の回路構成、入力端子、ゲイン、バイアス等の設定を行う。
次いで、設定評価装置3により半導体装置1の構成及び特性を調整する(S104)。すなわち、センサ2の出力信号を半導体装置1によりA/D変換し、このA/D変換の結果に応じて、ユーザが設定評価装置3のGUIを操作して、半導体装置1の構成及び特性を再設定する。例えば、ユーザがGUIによりA/D変換結果を参照しながら、AFE部100のDACバイアスを調整し、アンプの中間電位の設定等を行う。
次に、図31を用いて、設定評価装置3において実行される設定評価処理について説明する。なお、この設定評価は、図30のS103,S104にて行われる。設定評価装置3には、図31の設定評価処理を行うための設定評価プログラムが格納されており、ユーザが設定評価プログラムを実行すると、以下の処理が開始される。
まず、GUI処理部301は、ADC_Controlウィンドウを表示する(S201)。すなわち、GUI処理部301は、設定評価プログラムが実行されると、最初のウィンドウとしてADC_Controlウィンドウを表示する。ADC_Controlウィンドウは、半導体装置1のA/D変換を制御するためのウィンドウであり、また、他のウィンドウの表示を開始するためのウィンドウでもある。
次いで、A/D変換制御部304は、半導体装置1に対しA/D変換動作を設定し、A/D変換を開始させる(S202)。すなわち、A/D変換制御部304は、ADC_Controlウィンドウに対しユーザが入力した操作に従って、A/D変換のパラメータであるA/D変換制御情報314を生成し、半導体装置1のMCU部200にA/D変換のパラメータを設定する。そして、ADC_Controlウィンドウの操作に従って、A/D変換の開始をMCU部200へ指示し、MCU部200は、AFE部100からの信号に対してA/D変換を開始する。
次いで、GUI処理部301は、ADC_ControlウィンドウをCloseするかどうか判定し(S203)、ユーザがCloseの操作をするまで、S201,S202を繰り返す。
また、GUI処理部301は、SimpleViewConfigウィンドウを表示する(S204)。すなわち、GUI処理部301は、S201のADC_Controlウィンドウにおいてユーザが、SimpleViewConfigウィンドウの表示をするための操作をすると、このウィンドウを表示する。SimpleViewConfigウィンドウは、半導体装置1のAFE部100の構成及び特性を設定するためのウィンドウである。
次いで、レジスタ設定部302は、半導体装置1のレジスタ181を設定する(S205)。すなわち、レジスタ設定部302は、SimpleViewConfigウィンドウに対しユーザが入力した操作に従って、AFE部100の構成情報であるレジスタ設定情報312を生成し、レジスタ設定情報312をMCU部200へ出力して、MCU部200からAFE部100のレジスタ181へ書き込みを行う。
次いで、GUI処理部301は、SimpleViewConfigウィンドウをCloseするかどうか判定し(S206)、ユーザがCloseの操作をするまで、S204,S205を繰り返す。
また、レジスタ取得部303は、半導体装置1のレジスタ181から現在の構成情報を取得する(S207)。すなわち、レジスタ取得部303は、S201のADC_Controlウィンドウにおいてユーザが、レジスタ181の設定情報を表示するための操作をすると、MCU部200へ指示して、MCU部200からAFE部100のレジスタ181を読み出し、読み出したレジスタ取得情報313を取得する。
次いで、GUI処理部301は、RegisterListウィンドウを表示する(S208)。すなわち、GUI処理部301は、半導体装置1からレジスタ取得情報313を取得すると、RegisterListウィンドウを表示し、このウィンドウ内に取得したレジスタ取得情報313を表示する。RegisterListウィンドウにより、AFE部100に設定されているレジスタ181の内容を確認することができる。
次いで、GUI処理部301は、RegisterListウィンドウをCloseするかどうか判定し(S209)、ユーザがCloseの操作をするまで、S207,S208を繰り返す。
また、A/D変換結果取得部305は、半導体装置1のMCU部200からA/D変換結果を取得する(S210)。すなわち、A/D変換結果取得部305は、S201のADC_Controlウィンドウにおいてユーザが、A/D変換結果を表示するための操作をすると、MCU部200へ指示して、A/D変換結果情報315を取得する。
次いで、GUI処理部301は、PortDataウィンドウまたはGraphウィンドウを表示する(S211)。すなわち、GUI処理部301は、半導体装置1からA/D変換結果情報315を取得すると、ユーザの操作に従ってPortDataウィンドウまたはGraphウィンドウを表示し、このウィンドウ内に取得したA/D変換結果情報315を表示する。PortDataウィンドウは、A/D変換結果情報315を数値で表示し、Graphウィンドウは、A/D変換結果情報315をグラフで表示する。
次いで、GUI処理部301は、PortDataウィンドウまたはGraphウィンドウをCloseするかどうか判定し(S212)、ユーザがCloseの操作をするまで、S210,S211を繰り返す。
また、SPIモニタ部306は、半導体装置1のMCU部200からSPIモニタ情報を取得する(S213)。すなわち、SPIモニタ部306は、S201のADC_Controlウィンドウにおいてユーザが、SPIモニタ情報を表示するための操作をすると、MCU部200へ指示して、SPIモニタ情報316を取得する。
次いで、GUI処理部301は、SPMonitorウィンドウを表示する(S214)。すなわち、GUI処理部301は、半導体装置1からSPIモニタ情報316を取得すると、SPMonitorウィンドウを表示し、このウィンドウ内に取得したSPIモニタ情報316を表示する。
次いで、GUI処理部301は、SPMonitorウィンドウをCloseするかどうか判定し(S215)、ユーザがCloseの操作をするまで、S213,S214を繰り返す。
次に、図32〜図42を用いて、図31の各処理で設定評価装置3に表示されるGUIの表示例について説明する。
図32は、図31のS201で表示されるADC_Controlウィンドウの表示例である。図32に示すように、ADC_Controlウィンドウ400は、A/D変換のパラメータを設定するA/D変換制御エリア401、他のウィンドウの表示を開始するためのウィンドウ開始エリア402を有している。A/D変換制御エリア401では、各パラメータが入力されると、入力されるごとに、MCU部200へパラメータが出力される。
A/D変換制御エリア401において、「A/D変換許可」チェックボックス403は、チェックを入れることでA/D変換の許可を設定する。半導体装置1のMCU部200が、AFE部100の各出力信号についてA/D変換するか否かを設定する。「全て選択」ボタン404により、全てのチェックボックスを一括でチェックすることができ、「全てクリア」ボタン405により、全てのチェックボックスを一括でクリアすることができる。
「グラフ表示」チェックボックス406は、チェックを入れることでグラフ表示をする出力端子を選択する。グラフ表示するGraphウィンドウに、AFE部100のどの出力信号のA/D変換結果を出力するか設定する。
「サイクル」入力ボックス407は、MCU部200におけるA/D変換のサンプリング周期をms単位で設定する。入力ボックスのスピンボタンにより数値を変えることができ、また入力ボックス下方のスクロールバーにより数値を変えることも可能である。
「カウント」入力ボックス408は、MCU部200においてA/D変換を行う回数を設定する。なお、「0」を入力した場合は、測定回数無制限となり、プログラムを終了するまで(ウィンドウを閉じるまで)、A/D変換が繰り返される。「サイクル」と同様、スピンボタン、スクロールバーによって設定することができる。
「ADCstart」ボタン409は、MCU部200に対し、A/D変換の実行開始を設定する。「ADCstart」ボタン409をクリックすると、MCU部200において、A/D変換許可された出力端子の信号に対しA/D変換が開始される。
「スリープモード」チェックボックス410は、半導体装置1のスリープモードのON/OFFを設定する。チェックを入れた場合、スリープモードがONに設定される。例えば、半導体装置1において、MCU部200は、AFE部100の各回路の電源をオフしスリープモードとなる。
「クロック選択」プルダウンメニュー411は、MCU部200で発生させるクロックの周波数を選択し設定する。MCU部200は、選択されたクロックをオシレータ230により生成し、これを動作クロックとして動作する。
ウィンドウ開始エリア402では、各ボタンがそれぞれ表示するウィンドウに対応している。「ChipConfig」ボタン412は、SimpleViewConfigウィンドウを表示するためのボタンである。このボタンをクリックすると、SimpleViewConfigウィンドウが表示され、GUIによって半導体装置1のAFE部100の構成及び特性をレジスタ181に設定することができる。
「RegisterList」ボタン413は、RegisterListウィンドウを表示するためのボタンである。このボタンをクリックすると、RegisterListウィンドウが表示され、AFE部100のレジスタ181の設定値を表示することができる。
「Data」ボタン414は、PortDataウィンドウを表示するためのボタンである。このボタンをクリックすると、PortDataウィンドウが表示され、MCU部200におけるA/D変換結果のデータを数値表示することができる。
「Graph」ボタン415は、Graphウィンドウを表示するためのボタンである。このボタンをクリックすると、Graphウィンドウが表示され、MCU部200におけるA/D変換結果をグラフ表示することができる。
「SerialPortMonitor」ボタン416は、SPMonitorウィンドウを表示するためのボタンである。このボタンをクリックすると、SPMonitorウィンドウが表示され、半導体装置1のMCU部200−AFE部100間のSPIインタフェースの通信状況を表示することができる。
「Close」ボタン417は、このADC_Controlウィンドウ400を閉じて、プログラムを終了するためのボタンである。このボタンは図31のS203に対応している。
図33は、図31のS204で表示されるSimpleViewConfigウィンドウの表示例である。図33に示すように、SimpleViewConfigウィンドウ420は、コンフィギュラブル・アンプ110の設定を行うコンフィギュラブル・アンプ設定エリア421、増幅アンプ120の設定を行う増幅アンプ設定エリア422、ローパス・フィルタ130及びハイパス・フィルタ140の設定を行うフィルタ回路設定エリア423、各オペアンプに接続されるDACの基準電圧の設定を行うDAC基準電圧設定エリア424、可変レギュレータ150の設定を行う可変レギュレータ設定エリア425、温度センサ160の設定を行う温度センサ設定エリア426、汎用アンプ170の設定を行う汎用アンプ設定エリア427を有している。
コンフィギュラブル・アンプ設定エリア421には、コンフィギュラブル・アンプ全体の設定を行う全体設定エリア428とCh1、Ch2、Ch3のAMP1、AMP2、AMP3を個別に設定する個別設定エリア429を有している。個別設定エリア429は、AMP1、AMP2、AMP3をそれぞれ設定できるように各アンプのエリアが表示される。
全体設定エリア428において、「構成」プルダウンメニュー(全体構成設定部)430は、コンフィギュラブル・アンプ110の全体の回路構成を選択し設定する。ここで「InstAMP」を選択した場合、CH1〜3のアンプを接続した計装アンプが構成される。そして、「InstAMP」に設定したときのみ、「ゲイン」プルダウンメニュー(全体特性設定部)431で、計装アンプのゲインを選択し設定できる。
図34は、「構成」プルダウンメニュー430で「InstAMP」を選択した場合の表示例である。図34に示すように、この場合、Ch1〜Ch3のアンプが自動的に接続された構成となり、Ch1〜Ch3の各アンプは設定できない状態となる。すなわち、計装アンプ全体のゲインと、AMP3のDACのみ設定できる。
図33の「構成」プルダウンメニュー430において「Separate」を選択した場合、コンフィギュラブル・アンプのCH1〜3を個別に設定可能な状態となる。図35は、「Separate」を選択した場合の表示例である。図35に示すように、この場合、Ch1〜Ch3の各アンプは未接続で独立した構成となり、個別に構成及び特性を設定できる。すなわち、各アンプの構成、ゲイン、DAC等が設定でき、全体のゲインは設定できない。
図35に示すように個別設定エリア429では、その上部に、設定対象のアンプの名称が表示され、それぞれ「Amplifier Ch1」、「Amplifier Ch2」、「Amplifier Ch3」と表示されている。
「ON/OFF」スライドスイッチ432は、個別アンプのパワーON/OFFを設定する。スライドスイッチのつまみをドラック/ドロップし、ON/OFFを設定する。
「構成」プルダウンメニュー(個別構成設定部)433は、個別アンプの回路構成を選択し設定する。ここで、「Invertor」を選択した場合、個別アンプの構成を反転アンプに設定され、「Forward」を選択した場合、個別アンプの構成を非反転アンプに設定され、「Diff」を選択した場合、個別アンプの構成を差動アンプに設定され、「I/V」を選択した場合、個別アンプの構成をI/Vアンプに設定され、各回路構成が自動的に設定される。
また、「構成」プルダウンメニュー433で「Custom」を選択した場合、個別アンプの内部を詳細に設定できる。なお、Ch1〜Ch3の各アンプのアイコンをクリックした場合もて詳細な設定が可能である。
具体的には、図36のように、AMP_Customウィンドウを表示し設定する。このAMP_Customウィンドウ450では、個別アンプの実際の回路構成と同じ回路イメージが表示される。
スライドスイッチ451によりアンプの電源ON/OFFが設定され、プルダウンメニュー452〜454によりアンプの入力端子、出力端子の接続先が設定され、プルダウンメニュー455によりアンプのゲインが設定され、プルダウンメニュー456〜458により入力抵抗、DACの接続が設定され、プルダウンメニュー459によりDACの出力電圧が設定される。なお、ゲインの設定は、アンプの構成によって異なるため、設定値表示エリア460に表示される設定値が設定される。
また、図35に示すように「ゲイン」プルダウンメニュー(個別特性設定部)434は、個別アンプのゲインを選択し設定する。回路構成を「I/V」に設定したときは、プルダウンメニューの表示は帰還抵抗値となる。例えば、回路構成に応じて選択できる範囲が変更されるように表示してもよい。
「DAC」入力ボックス(個別特性設定部)435は、8bitDACの出力電圧を設定する。なお、複数のDACの設定値を連動させてもよい。この入力ボックスには、0〜255までの数字が入力でき、入力ボックスのスピンボタンにより、設定値を「1」単位で上昇または下降させることができる。そして、入力ボックスに数字を入力すると、実際のDAC出力電圧値がDACのアイコンの右下に表示される。
図33のその他のエリアについて説明する。図33に示すように、増幅アンプ設定エリア422では、その上部に、設定対象の回路名として、「GainAMP」が表示されている。
増幅アンプ設定エリア422では、コンフィギュラブル・アンプと同様に、スライドスイッチ436によりパワーON/OFFを設定し、プルダウンメニュー437によりゲインを設定し、入力ボックス438によりDACの出力を設定する。このDACの設定は、フィルタと共通になっている。
フィルタ回路設定エリア423では、その上部に、設定対象の回路名として、「Filters」が表示されている。
「順序」プルダウンメニュー439は、フィルタ回路の通過順序を選択し設定する。ここで「LPF」を選択した場合、ローパス・フィルタ130のみ通過する構成に自動的に設定され、「HPF」を選択した場合、ハイパス・フィルタ140のみ通過する構成に自動的に設定され、「LPF→HPF」を選択した場合、ローパス・フィルタ130、ハイパス・フィルタ140の順に通過する構成に自動的に設定され、「HPF→LPF」を選択した場合、 ハイパス・フィルタ140、ローパス・フィルタ130の順に通過する構成に自動的に設定される。
「LPFカットオフ周波数」プルダウンメニュー440は、ローパス・フィルタ130のカットオフ周波数を選択し設定し、「HPFカットオフ周波数」プルダウンメニュー441は、ハイパス・フィルタ140のカットオフ周波数を選択し設定する。なお、ローパス・フィルタ130、ハイパス・フィルタ140の電源ON/OFFを設定できるようにしてもよい。
DAC基準電圧設定エリア424では、その上部に、設定対象の回路名として「DAC Reference voltage」と表示されている。
「+電位」プルダウンメニュー442は、各8bitDAC(DAC1〜4)の設定電圧上限値を設定する。ここで、「AVDD」を選択した場合、各8bitDAC(DAC1〜4)の設定電圧上限値が、AVDDに設定される。「4/5AVDD」を選択した場合、各8bitDAC(DAC1〜4)の設定電圧上限値が、(4/5)×AVDDに設定される。「3/5AVDD」を選択した場合、各8bitDAC(DAC1〜4)の設定電圧上限値が、(3/5)×AVDDに設定される。
「−電位」プルダウンメニュー443は、各8bitDAC(DAC1〜4)の設定電圧下限値を設定する。「AGND」を選択した場合、各8bitDAC(DAC1〜4)の設定電圧下限値が、AGNDに設定される。「1/5AVDD」を選択した場合、各8bitDAC(DAC1〜4)の設定電圧下限値が、(1/5)×AVDDに設定される。「2/5AVDD」を選択した場合、各8bitDAC(DAC1〜4)の設定電圧下限値が、(2/5)×AVDDに設定される。
可変レギュレータ設定エリア425には、その上部に、設定対象の回路名として、「Voltage Regulator」が表示されている。ここでは、コンフィギュラブル・アンプと同様に、スライドスイッチ444によりパワーON/OFFを設定する。
「出力電圧」プルダウンメニュー425は、可変レギュレータ150の出力電圧を選択し設定する。
温度センサ設定エリア426は、その上部に、設定対象の回路名として、「Temperature Sensor」が表示されている。ここでは、コンフィギュラブル・アンプと同様に、スライドスイッチ446によりパワーON/OFFを設定する。
汎用アンプ設定エリアの427は、その上部に、設定対象の回路名として、「General Operational Amplifier」が表示されている。ここでは、コンフィギュラブル・アンプと同様に、スライドスイッチ447によりパワーON/OFFを設定する。
また、SimpleViewConfigウィンドウでは、各接続端子の接続を設定できる。図37は、端子の接続の表示例である。符号461のように、AFE部100の外部端子は四角の図形で表示されており、四角印の横に外部端子名が表示されている。
AFE部100内部の各回路の内部端子は丸の図形で表示されている。白丸の内部端子は未接続状態の端子であり、黒丸の内部端子は接続状態の端子である。例えば、符号462の白丸をクリックすると黒丸に表示が切り替わり、接続された状態となる。
各配線は、細線が未接続状態の配線であり、符号463のように太線が接続状態の配線を示している。細い配線をクリックしたときに、太線に切り替えて接続状態としてもよい。
なお、上記では、詳細な回路設定として図36について説明したが、コンフィギュラブル・アンプ以外の各回路についても図36のように実際の回路構成を表示して、詳細に設定することができる。
また、1つのウィンドウで、各回路を詳細に設定できるようにしてもよい。例えば、図38ように、全ての回路イメージを表示し設定できるようにしてもよい。図38は、図3の回路構成に対応して回路イメージを表示して詳細に設定可能なManualViewConfigウィンドウの表示例である。図38では、AFE部100の各回路が表示され、各回路を設定するためのプルダウンメニューが表示されている。なお、設定方法、設定内容については、上記と同様であるため、説明を省略する。
図39は、図31のS208で表示されるRegisterListウィンドウの表示例である。図39に示すように、RegisterListウィンドウ500では、レジスタ表示エリア501にレジスタ設定値の一覧が表示される。
レジスタ表示エリア501には、レジスタのアドレスごとに、アドレス、レジスタ名、レジスタの属性、レジスタのデータのビット表示とHEX表示の項目について一覧表示される。レジスタ名を表示することで、何を設定するレジスタであるのか一目で理解することができる。また、データの各ビットの意味を表示することで、各データが何を設定するビットであるのか理解することができる。
「Font」プルダウンメニュー502は、レジスタ表示エリア501のフォントサイズを選択し指定できる。「RegisterReload」ボタン503は、ボタンをクリックすることで、レジスタの設定値を半導体装置1から再度取得する。
図40は、図31のS211で表示されるPortDataウィンドウの表示例である。図40に示すように、PortDataウィンドウ510では、データ表示エリア511にA/D変換結果が表示される。データ表示エリア511では、行列(縦横)に配列されたセルにデータが表示される。Count欄に、A/D変換のカウント番号が表示され、各Ch欄にA/D変換結果の数値が表示される。ここでは、ADC_ControlウィンドウでA/D変換許可を与えた出力信号のみが表示される。なお、AFE部の出力端子を表示してもよい。
また、図41に示すように、PortDataウィンドウ510には、「File」メニュー512、「編集」メニュー513、「表示」メニュー514が表示される。例えば、「File」メニュー512では、「名前を付けて保存(A)」を選択することで、A/D変換結果をファイルに出力することができる。「編集」メニュー513では、「コピー(C)」を選択することで、データの一部または全部をコピーし、他のファイルに貼り付けることができる。
「表示」メニュー514では、データ表示の書式を選択できる。ここで、「10進数」を選択した場合、A/D変換結果を10進数で表示し、「16進数」を選択した場合、A/D変換結果を16進数で表示する。また「自動スクロール」を選択すると、A/D変換が繰り返し行われている場合、A/D変換結果が自動的にスクロールしながら順次表示される。
図42は、図31のS211で表示されるGraphウィンドウの表示例である。図42に示すように、Graphウィンドウ520では、グラフ表示エリア521にA/D変換結果が表示される。グラフ表示エリア521では、横軸を時間、縦軸をA/D変換結果として表示される。
凡例表示エリア522には、グラフの凡例が表示される。ここでは、ADC_Controlウィンドウでグラフ表示にチェックを入れた出力が表示される。
最大値入力ボックス523では、グラフの縦軸の最大値を設定できる。例えばデフォルトは1024となっている。また、最小値入力ボックス524では、グラフの縦軸の最小値を設定できる。例えばデフォルトは0となっている。
「Sample」プルダウンメニュー525は、グラフの横軸に表示するSample数を選択する。例えば横軸の目盛は、50[Sample/div]で固定となっている。
図43は、図31のS214で表示されるSPMonitorウィンドウの表示例である。図43に示すように、SPMonitorウィンドウ530では、モニタ表示エリア531にSPIモニタ情報が表示される。
モニタ表示エリア531には、SPIの通信データとして、送信(TX)データ、受信(RX)データが表示される。送信データとして、例えば、書き込み(WRITE)、レジスタアドレス、レジスタデータが表示される。受信データとして、書き込み成功/失敗が表示される。また、読み出したレジスタデータ等も表示される。モニタ表示エリア531には、SPIインタフェースで通信が行われる度に順次、モニタデータが表示される。
以上説明したような本実施形態によって次のような効果が得られる。まず、小型化と低消費電力化を図ることができる。本実施形態では、半導体装置の内部にMCUとAFE回路を含めた構成としたため、実装基板上に複数のアナログ回路ICを実装する場合と比べて、小型化が可能である。また、低消費電力モードに対応して、AFE部の電源をオフし、MCU部のスリープモードとすることができるため、消費電力を低減することが可能である。
また、アナログICの開発工程を短縮することができる。センサに適したアナログ回路を開発するためには、通常、回路設計、マスク設計、マスク製作、サンプル製作の工程が必要となるため、3〜8月程度かかる場合がある。本実施形態では、半導体装置の設定を変更するだけで、センサに対応したアナログ回路を構成することができるため、回路設計〜サンプル製作までの開発工程を行わずに半導体装置の開発が可能である。したがって、センサシステムを短期に開発し、早期にタイムリーに市場投入することができる。
また、半導体装置を容易に開発することができる。本実施形態では、GUIによりセンサに応じたアナログ回路の構成及び特性を設定することから、容易に設定及び評価(システム検証)を行うことが可能である。GUIにより直感的に構成及び特性を設定することができ、設定と評価を同時に行えるため、さらに短期間で開発することが可能である。
また、同一の半導体装置で複数の応用システムに対応することができる。本実施形態では、回路構成を自由に変更することができるようにしたため、一つの半導体装置で電流型センサや電圧型センサ等の様々なセンサを接続することが可能である。センサごとに別々の半導体装置を開発する必要がないため、開発期間を短縮することができる。
(本発明の実施の形態2)
以下、図面を参照して本発明の実施の形態2について説明する。図44は、本実施形態に係る半導体装置1の回路ブロックを示している。
実施の形態1に係る半導体装置では、用途を汎用システム向けとして、多くのセンサで必要となるAFE回路を全て備える構成とした。これに対し、本実施形態に係る半導体装置では、用途を一般計測器向けとして、一般計測器のセンサでのみ必要となるAFE回路に限定した構成としている。
図44に示すように、本実施形態の半導体装置1は、MCU部200の構成については図2の実施の形態1と同様であり、AFE部100は、計装アンプ190、可変レギュレータ150、温度センサ160、SPIインタフェース180、を備えている。実施の形態1の半導体装置と比べると、コンフィギュラブル・アンプ、同期検波対応増幅アンプ、SC型ローパス・フィルタ、SC型ハイパス・フィルタ、汎用アンプを有しておらず、代わりに計装アンプのみ有する構成となっている。可変レギュレータ150、温度センサ160、SPIインタフェース180については、実施の形態1と同様である。
計装アンプ190は、一般計測器のセンサに対応して、微弱な差動信号を増幅可能な増幅回路である。計装アンプ190は、実施の形態1のコンフィギュラブル・アンプ110が構成可能としていた計装アンプと同様の回路である。計装アンプ190は、回路構成は固定であり、特性のみ変更可能である。
図45は、本実施形態に係るAFE部100の各回路の接続関係を示している。可変レギュレータ150、温度センサ160、SPIインタフェース180については、実施の形態1の図3と同様である。
計装アンプ190は、回路構成が固定であるため、構成を切り替えるためのスイッチ(マルチプレクサ)を有していない。計装アンプ190は、一方の入力端子がAMP_IN1に接続され、他方の入力端子がAMP_IN2に接続され、出力端子がAMP_OUTに接続されている。なお、複数の外部端子との接続を選択するためのスイッチを備えていてもよい。
本実施形態のAFE部100における各回路の具体的な回路構成は実施の形態1と同様であるため説明を省略する。すなわち、計装アンプ190の回路構成は、図14で示した構成であり、計装アンプ190は、図14のように、抵抗値を変えることでゲインを設定でき、DACの設定を変えることで、動作点やオフセット等を変更できる。
このように、本実施形態の半導体装置1は、AFE部100の回路構成は固定であり特性のみを可変に設定することができる。このため、一つの半導体装置で特性が異なる特定のセンサに対応することができ、特定の応用システムで使用することができる。
例えば、実施の形態1で計装アンプを構成した場合と同様に、微弱な差動出力のセンサである圧力センサ、ジャイロセンサ、ショックセンサ等を用いた応用システムに使用可能である。
図46は、半導体装置1に磁気センサ、ジャイロセンサ、圧力センサ等のブリッジセンサ27を接続する例である。例えば、ブリッジセンサ27を備えた血圧計、体重計、スマートフォン、液晶テレビなどの応用システムに適用可能な例である。
計装アンプ190の一方の入力端子に、ブリッジセンサ27の一方の出力端子を接続し、計装アンプ190の他方の入力端子に、ブリッジセンサ27の他方の出力端子を接続し、計装アンプ190の出力端子をMCU部200のADポート262に接続する。そして、ブリッジセンサ27の特性に合わせて、計装アンプ190のゲイン及びオフセット等を設定することで、ブリッジセンサ27に最適な回路特性とすることができる。
なお、温度センサ160の出力は、MCU部200のADポート262に接続され、可変レギュレータ150の出力がMCU部200のA/Dコンバータ260の電源入力に接続される。
また、本実施形態に係る半導体装置1の設定評価システムの構成及び動作は、基本的に実施の形態1と同様であるが、半導体装置1の構成が異なるため、半導体装置1のAFE部100を設定するためのGUIのみ異なる。
図47は、本実施形態に係るGUIであるSimpleViewConfigウィンドウの表示例である。SimpleViewConfigウィンドウ420は、半導体装置1のAFE部100の設定を行うためのウィンドウであり、実施の形態1の図33と同様に、AFE部100の構成に対応している。
すなわち、SimpleViewConfigウィンドウ420は、AFE部100の構成に合わせて、計装アンプ190の設定を行う計装アンプ設定エリア470、各オペアンプに接続されるDACの基準電圧の設定を行うDAC基準電圧設定エリア424、可変レギュレータ150の設定を行う可変レギュレータ設定エリア425、温度センサ160の設定を行う温度センサ設定エリア426を有している。DAC基準電圧設定エリア424、可変レギュレータ設定エリア425、温度センサ設定エリア426は、図33と同様である。
計装アンプ設定エリア470では、実施の形態1のコンフィギュラブル・アンプで計装アンプを選択した場合と同様の設定が可能である。すなわち、「ON/OFF」スライドスイッチ471により、計装アンプのパワーON/OFFを設定し、「ゲイン」プルダウンメニュー472により、計装アンプのゲインを設定し、「DAC」入力ボックス473により、8bitDACの出力電圧を設定する。
なお、本実施形態においても、図36や図38のように実際の回路構成を表示して、詳細に設定することが可能である。
以上のように本実施形態では、まず、実施の形態1と同様に、半導体装置の開発が容易にできるとともに、開発工程の短縮が可能である。さらに、本実施形態では、半導体装置を一般計測器向けとして、一般計測器に必要となる計装アンプ等のみを備えることとした。このため、半導体装置に不要な回路を有していないため、回路構成が簡素となり、さらに半導体装置の小型化を図ることができ、低消費電力化も可能である。
(本発明の実施の形態3)
以下、図面を参照して本発明の実施の形態3について説明する。図48は、本実施形態に係る半導体装置1の回路ブロックを示している。
実施の形態1に係る半導体装置では、用途を汎用システム向けとして、多くのセンサで必要となるAFE回路を全て備える構成とした。これに対し、本実施形態に係る半導体装置では、用途をモータ制御向けとして、モータ制御でのみ必要となるAFE回路に限定した構成としている。
図48に示すように、本実施形態の半導体装置1は、MCU部200の構成については図2の実施の形態1と同様であり、AFE部100は、コンパレータ内蔵高速計装アンプ191、温度センサ160、SPIインタフェース180を備えている。実施の形態1と比べると、コンフィギュラブル・アンプ、同期検波対応増幅アンプ、SC型ローパス・フィルタ、SC型ハイパス・フィルタ、汎用アンプ、可変レギュレータを有しておらず、代わりにコンパレータ内蔵高速計装アンプ191のみ有する構成となっている。温度センサ160、SPIインタフェース180については、実施の形態1と同様である。
コンパレータ内蔵高速計装アンプ(高速計装アンプともいう)191は、モータ制御に対応して、微弱な差動信号を高速に増幅可能な増幅回路であり、さらに、出力電圧を比較するコンパレータを内蔵している。AFE部100は、多相モータの制御を可能にするため、高速計装アンプ191を複数(多ch)有しており、ここでは4つ(4ch)の計装アンプを有している。高速計装アンプ191は、回路構成が固定であり、特性のみ変更可能である。
図49は、本実施形態に係るAFE部100の各回路の接続関係を示している。温度センサ160、SPIインタフェース180については、実施の形態1と図3と同様である。
高速計装アンプ191は、回路構成が固定であるため、構成を切り替えるスイッチ(マルチプレクサ)を有していない。4つの高速計装アンプ191−1〜191−4は、それぞれ独立した構成となっている。
すなわち、高速計装アンプ191−1〜191−4は、一方の入力端子がそれぞれAMPIN10,20,30,40に接続され、他方の入力端子がそれぞれAMPIN11,21,31,41に接続され、アンプの出力端子がそれぞれAMP_OUT1〜4に接続され、コンパレータの出力端子がそれぞれCOMP_OUT1〜4に接続されている。なお、複数の外部端子との接続を選択するためのスイッチを備えていてもよい。
図50は、高速計装アンプ191の具体的な回路構成を示している。高速計装アンプ191は、モータ制御向けコンパレータ内蔵高速計装アンプであり、モータ制御に使用されるセンサの出力信号の増幅と電圧比較を行う。特性の変更として、高速計装アンプ191は、ゲインを可変に設定することができる。例えば、ゲインを10dB〜34dBまで2dB単位で設定できる。また、スルーレートを可変に設定することもでき、パワーオフ・モードにより電源のオン/オフを切り替えることができる。
また、高速計装アンプ191は、高速計装アンプ出力比較用コンパレータを内蔵しており、このコンパレータはヒステリシス電圧及び基準電圧が可変である。
図50に示すように、高速計装アンプ191は、計装アンプとして動作するオペアンプ192a及び192b、ヒステリシスコンパレータとして動作するオペアンプ192cを有し、オペアンプ192a〜192cに接続される可変抵抗193a〜193c、固定抵抗194a〜194b及びDAC195a、195b
レジスタ181の設定値に応じて、可変抵抗193a〜193cの抵抗値、DAC195aの設定を変えることで高速計装アンプ191のゲイン、アンプの動作点、オフセット等を変更することができる。また、DAC195bの設定により、コンパレータのヒステリシス電圧(基準電圧)を変更することができる。さらに、レジスタ181の設定値に応じて、オペアンプ192a〜192cの電源オン/オフを制御できる。
高速計装アンプ191では、外部入力端子AMPINMn、AMPINPn(AMPIN10,11〜AMPIN40,41に対応)から差動信号が入力されると、オペアンプ192a、192bから構成される2段の計装アンプにより高速に非反転増幅された信号が、AMPOUTn(AMPOUT1〜AMPOUT4に対応)へ出力される。 さらに、オペアンプ192cから構成されるヒステリシスコンパレータにより、AMPOUTnの出力信号と基準電圧とを比較した比較信号が出力される。なお、MCU部200はAMPOUTn及びCOMPOUTnの信号に応じてモータ制御を行う。
このように、本実施形態の半導体装置1は、AFE部100の回路構成は固定であり特性のみを可変に設定することができる。このため、一つの半導体装置で特性が異なる特定のセンサの特定に対応することができ、特定の応用システムで使用することができる。特に、多相モータの駆動回路などに接続できる。
図51は、半導体装置1にブラシレスモータ28を接続する例である。例えば、ブラシレスモータ28を備えたエアコン、洗濯機、冷蔵庫、ロボットなどの応用システムに適用可能な例である。
各高速計装アンプ191のそれぞれの入力端子を、ブラシレスモータ28の駆動回路29に接続し、各高速計装アンプ191のそれぞれのアンプの出力端子をMCU部200のADポート262に接続し、各高速計装アンプ191のそれぞれのコンパレータの出力端子をMCU部200の制御ポート261に接続する。そして、ブラシレスモータ28及び駆動回路29の特性に合わせて、高速計装アンプ191のゲイン、オフセット及びコンパレータの基準電圧を設定することで、ブラシレスモータ28に最適な回路特性とすることができる。
この例では、駆動回路29にMCU部200のタイマ240に接続されており、タイマ240のクロックパルスに応じてブラシレスモータ28が駆動する。そして、多相のブラシレスモータ28を駆動する駆動回路29の各信号が、高速計装アンプ191で増幅及び比較されて、MCU部200により、ブラシレスモータ28の駆動制御が行われる。
また、本実施形態に係る半導体装置1の設定評価システムの構成及び動作は、基本的に実施の形態1と同様であるが、半導体装置1の構成が異なるため、半導体装置1のAFE部100を設定するためのGUIのみ異なる。
図52は、本実施形態に係るGUIであるSimpleViewConfigウィンドウの表示例である。SimpleViewConfigウィンドウ420は、半導体装置1のAFE部100の設定を行うためのウィンドウであり、実施の形態1の図33と同様に、AFE部100の構成に対応している。
すなわち、SimpleViewConfigウィンドウ420は、AFE部100の構成に合わせて、高速計装アンプ191の設定を行う高速計装アンプ設定エリア480、各オペアンプに接続されるDACの基準電圧の設定を行うDAC基準電圧設定エリア424、温度センサ160の設定を行う温度センサ設定エリア426を有している。DAC基準電圧設定エリア424、温度センサ設定エリア426は、図33と同様である。
高速計装アンプ設定エリア480には、高速計装アンプ191に合わせて4chの高速計装アンプが設定できる。各Chの高速計測アンプの設定では、実施の形態1のコンフィギュラブル・アンプや増幅アンプ等と同様に、「ON/OFF」スライドスイッチ481により、高速計装アンプのパワーON/OFFを設定し、「ゲイン」プルダウンメニュー482により、高速計装アンプのゲインを設定し、「DAC」入力ボックス483、484により、8bitDACの出力電圧を設定する。「DAC」入力ボックス483では、高速計装アンプのオフセット等が設定でき、「DAC」入力ボックス484では、コンパレータの基準電圧が設定できる。
なお、本実施形態においても、図36や図38のように実際の回路構成を表示して、詳細に設定することが可能である。
以上のように本実施形態では、まず、実施の形態1と同様に、半導体装置の開発が容易にできるとともに、開発工程の短縮が可能である。さらに、本実施形態では、半導体装置をモータ制御向けとして、モータ制御に必要となる高速計装アンプ等のみを備えることとした。このため、半導体装置に不要な回路を有していないため、回路構成が簡素となり、さらに半導体装置の小型化を図ることができ、低消費電力化も可能である。
(本発明の実施の形態4)
以下、図面を参照して本発明の実施の形態4について説明する。上記実施の形態では、設計評価装置3により、主に半導体装置1のAFE部100に対しての設定及び評価を行った。本実施形態では、AFE部100の設定及び評価に加えて、MCU部200のソフトウェア(プログラム)の開発及びデバッグを行う。
図53は、本実施形態に係る半導体装置の開発システム(開発支援システム)の構成を示している。この開発システムは、図27と同様に、本発明の半導体装置1を搭載する評価ボード10、センサ2を搭載するセンサボードを有し、さらに、開発装置40及びエミュレータ43を備えている。
開発装置(開発支援装置)40は、半導体装置1のAFE部100及びMCU部200の両方の開発を行うための統合開発装置であり、MCUソフト開発処理部41及び設定評価処理部42を備えている。開発装置40は、図28と同様のハードウェアからなるコンピュータ装置であり、MCUソフト開発処理及び設定評価処理を行うプログラムをCPUが実行することで、MCUソフト開発処理部41及び設定評価処理部42の機能が実現されている。
設定評価処理部42は、実施の形態1の設定評価装置と同じ機能であり、半導体装置1のAFE部100の設定及び評価を行う。すなわち、設定評価処理部42は、図29及び図31等と同様の構成及び動作を行い、GUIによるAFE部100の設定及び評価を可能にする。
MCUソフト開発処理部41は、半導体装置1のMCU部200のCPUコアで実行されるソフトウェアの開発のための処理を行う。すなわち、MCUソフト開発処理部41は、MCU部200等のマイクロコンピュータ用ソフトウェア開発支援ツールであり、MCU部200に対応したコーディング及びビルドを行う環境とデバイスドライバを有している。特に、本実施形態では、設定評価処理部42と連携し、設定評価処理部42が生成するAFE部100のレジスタ181の情報を含むプログラムを生成する。
エミュレータ43は、半導体装置1のMCU部200に接続されて、MCU部200をエミュレートする。MCUソフト開発処理部41は、エミュレータ43に接続することで、プログラムのデバッグや書き込みが可能である。
図54は、本実施形態に係る半導体装置1の開発方法を示している。まず、開発装置40は、半導体装置1のMCU部200のソフトウェアの開発を行うとともに(S301)、半導体装置1のAFE部100の設定評価を行う(S302)。
すなわち、MCUソフト開発処理部41は、ユーザからの入力によりMCU部200で実行するプログラムを生成し、同時に、設定評価処理部42がGUIを介したユーザの操作によりAFE部100のレジスタ181の情報を生成する。そうすると、MCUソフト開発処理部41は、ユーザがコーディングしたソースコードと、設定評価処理部42が生成したAFE部100のレジスタ181に設定する情報を含むソースコードを生成する。例えば、MCU部200がレジスタ181を動的に書き替える処理を行うプログラムにおいて、直接レジスタ181に書き込む情報がソースコードに含まれる。
次に、開発装置40は、生成したプログラムのデバッグを行う(S303)。すなわち、MCUソフト開発処理部41は、エミュレータ43を使用することで、レジスタ181の情報を含むソースコードのデバッグを行う。例えば、MCU部200のレジスタ181への書き込み処理等を含めてデバッグを行う。
次に、開発装置40は、デバッグしたプログラムを半導体装置1へ書き込む(S304)。すなわち、MCUソフト開発処理部41は、エミュレータ43を使用することで、生成しデバッグが完了したプログラムを半導体装置1のMCU部のメモリに書き込む。これにより、MCU部200及びAFE部100を含む半導体装置1の開発(製造)が完了する。
その後、半導体装置1が起動されると、MCU部200のCPUコアが、メモリに書き込まれたプログラムを実行するとともに、メモリに書き込まれたレジスタ181の情報を、レジスタ181に書き込む。そうすると、レジスタ181によってAFE部100の構成及び特性が設定されて、AFE部100が動作を開始する。
このように、本実施形態では、半導体装置のAFE部の設定評価ツールに加えて、MCU部のソフトウェア開発環境と連携して半導体装置の開発を行うこととした。これにより、MCU部のコーディング及びデバッグと、AFE部の設定及び評価を一つの環境で行うことができるため、開発効率が向上し、さらに開発期間を短縮することが可能である。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。実施の形態2では、一般計測器向けの半導体装置とし、実施の形態3では、モータ制御向けの半導体装置としたが、その他の用途の半導体装置として、必要な回路のみで半導体装置を構成してもよい。例えば、高精度測定器向けの半導体装置として、低オフセットの非反転アンプと温度センサのみを含む構成としてもよい。
また、GUIを用いて設定する際に、半導体装置のAFE部に含まれる回路構成を自動的に認識し、認識した回路構成に応じてGUIを表示して設定できるようにしてもよい。