(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0022】
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【0023】
〔1〕(N個の実測値と1個の理論値からN次の近似関数の係数を算出する回路と、算出した係数を用いて演算する補正演算部とを備える半導体装置)
本発明の代表的な実施の形態に係る半導体装置(1、2、3)は、温度センサ部(100)と、前記温度センサ部で測定された温度データ(t)と温度(T、τ)との対応関係を表す特性関数(式8)における所定の温度での温度データの理論値とN(Nは1以上の整数)点の温度において前記温度センサ部によって測定されたN個の温度データの実測値とを含むN+1個の温度データに基づいて、前記特性関数をN次近似した補正関数(式11)のN次までの係数を算出する係数算出部(104、204)とを有する。また、前記半導体装置は、前記温度センサ部から出力された温度データに基づいて、前記算出された係数を適用した前記補正関数を用いて演算を実行し、温度の情報を含むデータを生成する補正演算部(105、205、305)を有する。
【0024】
前記補正関数におけるN次の係数を算出するためには、N+1点のテスト温度における実測値が必要となるが、項1の半導体装置は、N個の実測値と1個の理論値によって前記補正関数のN次までの係数を算出する。これによれば、N次の係数を算出するために、テスト工程においてN+1点よりも少ないN点の温度で測定を行えばよいから、測定点数を増加させることなく、温度測定の高精度化を図ることができる。
【0025】
〔2〕(絶対零度での理論値)
項1の半導体装置において、前記温度センサ部は、絶対零度での極限値がゼロとなる第1電圧(V1)と、絶対零度での極限値がゼロ以外の定数となる第2電圧(V2)とに基づいて前記温度データを生成する。また、前記所定の温度は絶対零度であり、前記温度データは前記第2電圧に対する前記第1電圧の比率に応じた値を示すデータ(V1/V2)である。
【0026】
前記第1電圧は絶対零度における極値として“0”(ゼロ)となるから、前記第2電圧に対する前記第1電圧の比率も“0”となる。すなわち、絶対零度では前記第2電圧に対する前記第1電圧の比率の極限値はゼロになるから絶対零度においては理論値と実測値の誤差は少なく、理論値を実測値とみなして前記補正関数のN次係数を算出しても誤差は少ない。したがって、項2の半導体装置によれば、温度測定をより高精度にすることが可能となる。
【0027】
〔3〕(V1とV2の具体例)
項2の半導体装置において、前記第1電圧は、電流密度の異なる2つのバイポーラトランジスタのベース・エミッタ間電圧の差電圧に応じた電圧であり、前記第2電圧は、PN接合の順方向電圧に応じた電圧である。
【0028】
これによれば、前記第1電圧と前記第2電圧を容易に生成することができる。
【0029】
〔4〕(専用ロジック回路で構成される補正演算部)
項1乃至3のいずれかの半導体装置において、前記補正演算部は専用ロジック回路で構成される。
【0030】
前記補正演算部による演算機能をマイクロコンピュータによるプログラム処理で実現すると、半導体装置の温度が高温になったときに、演算を実行するマイクロコンピュータが暴走状態に陥る可能性がある。前記補正演算部が暴走状態となると正しい演算結果が得られなくなり、温度センサの温度検知精度が悪化するおそれがある。そこで、項4の半導体装置によれば、前記補正演算部を専用ロジック回路で構成するから、熱暴走による温度検知精度の悪化の虞がなく、高温においても安定した動作が期待できる。
【0031】
〔5〕(専用ロジック回路で構成される係数算出部)
項1乃至4のいずれかの半導体装置において、前記係数算出部は専用ロジック回路で構成される。
【0032】
これによれば、項4と同様に、前記係数算出部の熱暴走の虞がなく、高温においても安定した動作が期待できる。
【0033】
〔6〕(温度範囲に応じた係数を切り替えて補正演算を行う補正演算部)
項1乃至5のいずれかの半導体装置(3)において、前記補正演算部(205)は、温度範囲に応じて前記係数の情報を切り替えて前記演算を行う。
【0034】
例えば、要求される測定温度の全範囲で1つの補正関数を用いる場合、前記補正関数を算出するためのN点のテスト温度から離れるほど補正の精度が低下し、温度検知精度が悪化する虞がある。そこで、項5の半導体装置によれば、温度範囲に応じて補正関数を切り替えて演算を行うから、要求される測定温度範囲での温度検知精度の悪化を防止することができる。
【0035】
〔7〕(N次係数を切り替えて補正演算を行う補正演算部)
項5又は6の半導体装置において、前記補正演算部は、前記係数の情報のうちN次の係数の情報を切り替える。
【0036】
これによれば、前記補正関数の全ての係数を切り替えるのではなく、温度検知精度に対する影響度が大きい高次の係数を切り替えるから、テスト工程において補正関数の全ての係数で複数の値を準備する必要がなく、テスト工程の増加を最小限に抑えることができ、容易に温度検知精度の悪化を防止することができる。
【0037】
〔8〕(高温側と低温側で係数を切り替えて補正演算を行う補正演算部)
項5乃至7のいずれかの半導体装置において、前記補正演算部は、要求される測定温度の温度範囲における所定の温度を基準として高い方の温度範囲と低い方の温度範囲とで前記係数の情報を切り替える。
【0038】
〔9〕(温度センサ部の構成)
項1乃至8のいずれかの半導体装置において、前記温度センサ部は、前記第1電圧及び前記第2電圧を出力する温度電圧変換回路(101)と、前記第1電圧に応じた電圧と前記第2電圧に応じた電圧とを入力し、入力電圧を夫々のサンプリング容量を介してサンプリングして前記温度データを生成するアナログ・デジタル変換部(102)とを有する。
【0039】
〔10〕(A/D変換部の入力段のGND電位は前記センサ部のGND電位と共通)
項9の半導体装置において、前記サンプリング容量の一端は前記温度電圧変換回路の基準電位(GND_TVC)と同電位とされ、前記サンプリング容量の他端は、サンプリング時には前記第1電圧又は前記第2電圧が供給され、前記サンプリング容量のリフレッシュ時には前記温度電圧変換回路の基準電位と同電位とされる。
【0040】
前記温度電圧変換回路の基準電圧(例えばグランド電圧)と前記アナログ・デジタル変換部の基準電圧(例えばグランド電圧)との間に、ノイズ等の影響により電位差が生じた場合、前記アナログ・デジタル変換部の基準電圧からみた前記第1電圧の値が絶対零度においてゼロとならない可能性があり、測定誤差の要因となる。そこで、項10の半導体装置では、前記サンプリング容量の一端を前記温度電圧変換回路の基準電位と同電位とし、サンプリング容量のリフレッシュ時には、前記サンプリング容量の他端を前記温度電圧変換回路の基準電位と同電位とすることで、ノイズ等による影響を抑え、測定精度の悪化を防止することができる。
【0041】
〔11〕(センサ部の出力の配線の周辺にセンサのGND電位によるシールドを行う)
項8又は9の半導体装置において、前記温度センサ部は、前記第1電圧が供給される信号線をシールドするための第1シールド線(1011)と、前記第2電圧が供給される信号線をシールドするための第2シールド線(1012)とを更に有する。前記第1シールド線及び前記第2シールド線の電位は、前記温度電圧変換回路の基準電位(GND_TVC)とされる。
【0042】
これによれば、前記第1電圧が供給される信号線及び前記第2電圧が供給される信号線にノイズが重畳された場合であっても、前記第1電圧、前記第2電圧、及び前記基準電圧は同相且つ同振幅で変化するため、ノイズの影響を低減することができる。
【0043】
〔12〕(センサの電圧と外部電圧を選択して出力するセレクタ)
項8乃至11のいずれかの半導体装置(2、3)において、前記温度センサ部(200,201)は、選択信号に応じて前記第1電圧及び前記第2電圧と外部入力電圧とを切り替えて前記アナログ・デジタル変換部に出力する第1選択部(112、113)を更に有する。
【0044】
これによれば、テスト工程において、前記アナログ・デジタル変換部の動作確認を容易に行うことができる。
【0045】
〔13〕(AD変換結果を直接出力するためのセレクタ)
項8乃至12のいずれかの半導体装置において、前記温度センサ部(200,201)は、前記アナログ・デジタル変換部で生成された前記温度データの出力先を切り替える第2選択部(114)を更に有する。前記第2選択部は、入力される選択信号(12)に応じて、前記補正演算部の入力信号線又は出力信号線のいずれか一方に前記温度データを出力する。
【0046】
これによれば、前記演算を実行せずに前記温度データを出力することができるから、例えば高精度の温度測定が要求されない場合には、前記補正演算部が演算を実行しないので、前記半導体装置の低消費電力化に資する。
【0047】
〔14〕(係数算出方法)
本発明の代表的な実施の形態に係るデータ生成方法は、温度センサによって測定された温度データと温度との対応関係を表す特性関数をN(Nは1以上の整数)次近似した補正関数を用いて、前記温度センサで測定された温度データから温度の情報を含むデータを生成する半導体装置(1,2,3)の前記補正関数の係数を示すデータ(a
n〜a
0)を、プログラム処理装置を用いて生成する方法である。前記プログラム処理装置による処理は、前記特性関数における所定の温度での温度データの理論値と、N点の温度において前記温度センサ部によって測定されたN個の温度データの実測値とを含むN+1個の温度データに基づいて、N次の係数を示すデータを生成する処理を含む。
【0048】
これによれば、項1と同様に、N次の係数を算出するためにテスト工程においてN+1点よりも少ないN点の温度で測定を行えばよいから、測定点数を増加させることなく、温度測定の高精度化を図ることができる。
【0049】
〔15〕(絶対零度での理論値)
項14のデータ生成方法において、前記温度データは、絶対零度での極限値がゼロ以外の定数となる第1電圧(V2)に対する、絶対零度での極限値がゼロとなる第2電圧(V1)の比率に応じた値を示すデータであり、前記所定の温度は絶対零度である。
【0050】
これによれば、項2と同様に、絶対零度においては理論値を実測値とみなして前記補正関数のN次係数を算出しても誤差は少ないから、より精度良く前記補正関数を決定することができる。
【0051】
〔16〕(V1とV2の具体例)
項15のデータ生成方法において、前記第1電圧はPN接合の順方向電圧に応じた電圧であり、前記第2電圧は電流密度の異なる2つのバイポーラトランジスタのベース・エミッタ間電圧の差電圧に応じた電圧である。
【0052】
これによれば、前記第1電圧と前記第2電圧を生成することが容易となる。
【0053】
2.実施の形態の詳細
実施の形態について更に詳述する。
【0054】
≪実施の形態1≫
図1は、本発明に係る半導体装置の一実施の形態として、温度センサを内蔵した自動車用のデータ処理等を行うマイクロコンピュータの一例を示すブロック図である。
図1におけるマイクロコンピュータ1は、特に制限されないが、公知のCMOS集積回路の製造技術によって1個の単結晶シリコンのような半導体基板に形成されている。
【0055】
マイクロコンピュータ1は、中央処理装置(CPU)30、温度センサ10、転送制御部(DMAC(Direct Memory Access Controller))40、メモリ部50、及びバス20を有し、更に図示されないその他の周辺回路を有する。CPU30は、自動車のエンジン制御等や当該制御等に利用するデータの処理を行う。またCPU30は、温度センサ10に温度検知の指示をバス20を介して与えることにより、温度測定を実行させる。
【0056】
メモリ部50は、不揮発性メモリ(NVM:Non Volatile Memory)502と揮発性メモリ(RAM:Random Access Memory)501を有する。NVM502は、例えばフラッシュメモリ等であり、CPU30にデータ処理等を指示するプログラム等が格納される。また、NVM502には、製品出荷前のテスト工程においてテスト温度で測定されたA/D変換部102の出力結果(V1/V2)や、後述する温度検知における補正演算に必要なパラメータである補正演算係数等も書き込まれる。RAM501は、例えばSDRAM等であり、CPU30のデータ処理等においてデータの一時記憶に利用される。転送制御部40は、CPU30によって転送条件等が設定され、CPU30、温度センサ10、又は図示されないその他の周辺回路からの転送要求にしたがって、メモリ部50に対してデータの転送を行う。
【0057】
温度センサ10は、センサ部100、論理部70(係数算出部104及び補正演算部105)、及びバスインターフェイス部106を有し、CPU30等からの温度検知の要求に応じて温度測定を実行し、測定結果をバスインターフェイス部106又は出力端子60を介して出力する。
【0058】
図2は、温度センサ10の動作概略を例示した説明図である。
【0059】
同図に示されるように、温度電圧変換回路(TVC)101がチップ温度Tjを検知し、チップ温度Tjに応じた2種類のアナログ電圧(基準電圧V1及び基準電圧V2)を生成する。基準電圧V1、V2は次段のA/D変換部(A/D)102に入力され、A/D変換部102は前記基準電圧V1、V2の比(V1/V2)をデジタル値に変換してAD変換結果103を出力する。補正演算部105はAD変換結果103に基づいて補正演算を実行し、演算結果110を出力する。前記補正演算は、AD変換結果103と温度との対応関係を表す特性関数の近似関数(以下、「補正演算関数」とも称する。)を用いて行われ、補正演算関数の係数の値は係数算出部104によって算出される。例えば、出荷前の量産時のテスト工程において、係数算出部104がテスト温度で測定したAD変換結果103に基づいて係数を算出し、算出された係数を不揮発性メモリ502に格納しておく。出荷後の実使用時には、不揮発性メモリ502から係数の情報が補正演算部105に転送され、補正演算部105は、転送された係数を適用した補正演算関数を用いて前記補正演算を実行し、演算結果110を温度センサ検知温度として出力する。
【0060】
以下温度センサ10の各機能ブロックについて詳細に説明する。
【0061】
センサ部100は、温度電圧変換回路(TVC)101とA/D変換部(A/D)102を有する。
【0062】
温度電圧変換回路101は、温度依存性を持った2つの基準電圧V1、V2を出力する。
【0063】
図3は、温度電圧変換回路101の一例を示す回路図である。同図に示される温度電圧変換回路101は、エミッタ面積の異なる2つのバイポーラトランジスタを用いて構成され、温度に対し正の温度依存性を持った基準電圧V1と、温度依存性が低い基準電圧V2とを出力する。前記バイポーラトランジスタは、主にCMOSプロセスにおける寄生のバイポーラトランジスタが利用される。同図では、一例として、縦型NPNタイプの寄生バイポーラトランジスタ用いた場合が示されている。エミッタ面積を変化させるための一手段として、同種のバイポーラトランジスタを並列に複数個接続して使用する場合がある。
【0064】
温度電圧変換回路101の動作原理について説明する。
図3において、1個の寄生バイポーラトランジスタTB_NPN_1のベース(B1)とm個(mは1以上の整数)の寄生バイポーラトランジスタTB_NPN_mのベースにOPアンプの出力電圧V2を与えることで、寄生バイポーラトランジスタTB_NPN_1のエミッタと寄生バイポーラトランジスタTB_NPN_mのエミッタに流れる電流の電流密度に差が生じる。この電流密度の差によって、寄生バイポーラトランジスタTB_NPN_1のベース・エミッタ間電圧と寄生バイポーラトランジスタTB_NPN_mのベース・エミッタ間電圧との差電圧ΔVBEが抵抗R3の両端に発生する。前記差電圧ΔVBEは正の温度特性を持つ。この差電圧ΔVBEを利用して、基準電圧V2と、正の温度特性を持つ基準電圧V1とが生成され、これらの基準電圧は、式(1)及び式(2)で表される。ただし、kはボルツマン定数、qは電子の電荷量、Tは温度である。なお、(式2)に示される基準電圧V2の値は常温で約1.2Vとなる。
【0067】
なお、基準電圧V1、V2を温度Tの関数として表現すると、(式3)及び(式4)のように表される。ただし、A、C、D、Eは定数である。
【0070】
A/D変換部102は、温度電圧変換回路101が出力するアナログ信号の基準電圧V1及びV2を入力し、所定の温度における基準電圧V1とV2の比をjビット(jは1以上の整数)のデジタル信号に変換してAD変換結果103を出力する。A/D変換部102の詳細については、後述する。
【0071】
補正演算部105は、AD変換結果103に基づいて補正演算を実行し、演算結果110を出力する。前述したように、前記補正演算は補正演算関数を用いて行われ、補正演算関数の係数の値は係数算出部104によって算出される。
【0073】
図4は、基準電圧V1、V2の温度特性を表す説明図である。同図に示されるように、温度τ1、τ2、τ3、τ4を等間隔で取り、夫々の温度に対する基準電圧V1とV2の値をV11〜V14及びV21〜V24とする。A/D変換部102は、例えば温度τ1において電圧比V11/V21をデジタル値に変換してAD変換結果103として出力し、また、例えば温度τ2において電圧比V12/V22をデジタル値に変換してAD変換結果103として出力する。ここで、基準電圧V1は温度に比例する線形な電圧なので、V11,V12,V13,V14の4つ電圧差は等しくなる。これに対し基準電圧V2は温度に対して非線形な依存性を持つ電圧であるので、V12,V22,V23,V24の4つの電圧の電圧差は等しくない。
【0074】
図5は、A/D変換部102の入力である電圧比V1/V2と、出力であるAD変換結果tとの関係を表す説明図である。
図4の説明で述べたように夫々の温度における基準電圧V2の差電圧V21,V22,V23,V24は温度τに対して非線形な依存性を持つため、チップ温度τ1,τ2,τ3,τ4の各々の温度差が等しくても、電圧比(V11/V21)、(V12/V22)、(V13/V23)、(V14/V24)の各々の差は等しくない。したがって、たとえA/D変換部の直線性が図のように理想的であったとしても、AD変換結果t1、t2、t3、t4は温度τに対して非線形な依存性をもつ。また、A/D変換部自体のINL(積分非直線性)も、AD変換結果が温度に対して非線形な依存性となる要因となる。
【0075】
ここで、A/D変換部102の入力V1/V2が、絶対零度(T→0)においてどのような値に収束するか考える。上記の(式1)及び(式3)に示されるように、基準電圧V1は温度に比例する電圧であるから、下記の(式5)に示されるように、絶対零度では“0”(ゼロ)に収束する。また上記の(式2)に示されるように、基準電圧V2はベース・エミッタ間電圧VBE(第1項目)と温度に比例する電圧(第2項目)の加算した電圧である。したがって、絶対零度(T→0)では第1項目はバンドギャップ電圧に収束し、基準電圧V2の第2項目は“0“に収束するから、基準電圧V2は、下記の(式6)に示されるように、絶対零度(T→0)ではバンドギャップ電圧(定数C)に収束する。したがって、電圧比V1/V2は、下記の(式7)に示されるように、絶対零度で”0“に収束する。このことから、
図5に示されるように、AD変換回路の入出力特性のグラフは原点(0,0)を通過することになる。ただし、温度電圧変換回路101とA/D変換部102は絶対零度で動作する必要はなく、また、出荷前のテスト工程にて絶対零度でテストを実施する必要があるわけでもない。あくまで、理論的に原点(0,0)を通過することが基準電圧V1の物理的特性から導かれる。
【0079】
図6は、温度T(τ)とAD変換結果tとの対応関係を表す特性関数を示す説明図である。同図に示されるように、横軸はAD変換結果tであり、縦軸が温度T〔K〕である。また同図では、AD変換結果t1、t2、t3、t4に対応する温度がT1、T2、T3、T4とされる。なお、温度T1、T2、T3、T4は前述した
図4の温度τ1、τ2、τ3、τ4に対応している。
【0080】
同図に示される前記特性関数は(式8)で表現される。
【0082】
ここで、a
n〜a
0は補正演算係数であり、t’はテスト温度でのAD変換結果である。前述したように、絶対零度(T→0)では、AD変換結果tの極限値は“0”となるため、AD変換結果tと補正演算後温度センサ検知温度Tとの関係を表す特性関数は必ず原点(0,0)を通過する。
【0083】
なお、特性関数は、分数関数(式9)又は指数関数(式10)のように表現することも可能であるが、本実施の形態では、一例として(式8)で表現するものとして説明する。
【0086】
図6に示されるように、上記(式8)の特性関数を用いれば、AD変換結果tから温度Tの値を算出することができる。そこで、マイクロコンピュータ1では、補正演算部105が高次の特性関数を近似した補正演算関数を用いて、AD変換結果tから温度Tの値を算出する。なお以降の説明では、前記補正演算関数は前記特性関数を2次近似した関数として説明するが、これに限られず、温度検知をより高精度にする場合には2次より高次の関数(例えば3次関数)で近似してもよい。
【0087】
図7は、理想的にプロセスのばらつきが無い場合の補正演算関数を示す説明図である。同図において、丸印で示される点はプロセスのばらつきが無い理想状態におけるAD変換結果tとチップ温度τとの対応点であり、一点鎖線で示される曲線300は補正演算関数である。補正演算関数300は、前記特性関数を2次近似した関数であり、(式11)で表現される。
【0089】
ここで、a
2は2次の補正演算係数であり、a
1は1次の補正演算係数であり、a
0は0次の補正演算係数である。また、テスト温度でのAD変換結果t’を、一例としてテスト温度τ1でのAD変換結果t1としている。
【0090】
プロセスばらつきがない場合、温度センサ検知温度Tとチップの実温度τは回路シミュレーション等で予測できる値と等しいため、チップ温度τと補正演算結果Tとの誤差は小さい。しかしながら、前述したようにプロセスばらつき等によって素子特性にばらつきが生じることから、チップ間で温度センサ10の特性にばらつきが生じ、チップ毎に前記特性関数が異なる虞がある。すなわち、補正演算係数a
n〜a
0がチップ毎に異なる虞がある。そこで、マイクロコンピュータ1では、テスト工程におけるテスト温度での測定結果に基づいて、チップ毎に、係数演算部104が補正演算係数a
n〜a
0を算出する。
【0091】
図8は、補正演算係数a
n〜a
0の算出方法の一例を示す説明図である。同図では、一例として、2次の補正演算関数の場合を示している。同図において、出荷前のテスト工程におけるテスト温度τ1でのAD変換結果tをt1とし、テスト温度τ2でのAD変換結果tをt2とする。
【0092】
一般にN次関数のN次係数を求めるためには、N+1点の測定点が必要となる。例えば、上記2点の測定結果(τ1,t1)、(τ2,t2)から補正演算係数を算出しようとすると、1次の補正演算係数a
1と0次の補正演算係数a
0は求まるが、2次の補正演算係数a
2は求まらず、2次の補正演算係数a
2を算出するためには、もう1点の測定結果(τ3、t3)が必要となる。そこで、実施の形態1では、理論上、絶対零度(T→0)でAD変換結果tの極限値が“0”となることに着目し、N点のテスト温度でのN個の実測値と、絶対零度での理論値とを含めたN+1点のAD変換結果tに基づいて、N次の補正演算係数を算出する。例えば
図8の場合、補正演算係数a
2〜a
0は、上記(式11)に測定結果(τ1,t1)、(τ2,t2)及び理論値(0,0)を代入して得られる連立方程式を解くことで得られ、具体的には、(式12)〜(式14)で表される。
【0096】
これにより、2点のテスト温度で測定を行うことで、3つの全ての補正演算係数を決定することができる。
【0097】
図9は、マイクロコンピュータ1の特性がばらついたときの補正演算関数を示す説明図である。同図において、丸印はプロセスのばらつきが無い理想状態におけるAD変換結果tとチップの実温度τの対応点を示し、参照符号301の曲線はプロセスのばらつきが無い理想状態における補正演算関数である。また、三角印はAD変換結果tの実測値とチップの実温度τの対応点を示し、参照符号302の曲線は実測値に基づく補正演算関数である。
【0098】
例えば、マイクロコンピュータ1のテスト工程において、テスト温度τ1でのAD変換結果tの値が(t1−δt1)であり、テスト温度τ3でのAD変換結果tの値が(t3−δt3)であった場合、係数演算部104は、実測値(τ1,t1−δt1)及び(τ3,t3−δt3)と理論値(0,0)を用いて、上述した方法で補正演算係数a
2_
2、a
1_
2、a
0_
2を算出する。そして、補正演算部105は、算出された補正演算係数a
2_
2、a
1_
2、a
0_
2を適用した補正演算関数302(a
2_
2(t−t1)
2+a
1_
2(t−t1)+a
0_
2)を用いて演算を行い、温度検知結果Tを出力する。
【0099】
このように、実測値を用いることで、プロセスばらつきによってチップ温度τに対するAD変換結果tが理想値とずれたときでも、そのチップの特性に応じた補正演算関数を決定することができるから、チップ温度τと温度検知結果Tとの誤差を小さくすることができる。
【0100】
なお、上記(式11)〜(式14)において、テスト温度でのAD変換結果t’をテスト温度τ1でのAD変換結果t1としているが、これに限られない。(式11)はあくまで近似関数であるから、テスト温度から離れるほど誤差が大きくなる可能性があるので、温度検知をより高精度化したい温度範囲に応じてテスト温度t’を決定するとよい。例えば、温度t
2付近の温度検知精度をより向上させたい場合には、(式11)のAD変換結果t’をテスト温度τ2でのAD変換結果t2とするとよい。
【0101】
図10に、比較例として、理論値を用いずに補正演算関数を決定した場合の一例を示す。同図において、丸印はプロセスのばらつきが無い理想状態におけるAD変換結果tとチップの実温度τの対応点を示し、参照符号301の曲線はプロセスのばらつきが無い理想状態における補正演算関数である。また、三角印はAD変換結果tの実測値とチップの実温度τの対応点を示し、参照符号303の曲線は実測値に基づく補正演算関数である。
【0102】
例えば、テスト温度τ1でのAD変換結果tの値が(t1−δt1)であり、テスト温度τ3でのAD変換結果tの値が(t3−δt3)であった場合、理論値(0,0)を用いずに実測値(τ1,t1−δt1)及び(τ3,t3−δt3)から算出できる補正演算係数は、1次の補正演算係数a
1_
3と0次の補正演算係数a
0_
3である。2次の補正演算係数a
2_
3は、測定点が足りないため算出できないので、シミュレーション等で予め予測した値を用いる。補正演算部105はこれらの補正演算係数a
2_
2、a
1_
2、a
0_
2を適用した補正演算関数303(a
2_
3(t−t1)
2+a
1_
3(t−t1)+a
0_
3)を用いて演算を行い、温度検知結果Tを算出する。これによれば、
図10に示されるように、テスト温度τ1とτ3では補正演算結果T1,T3との誤差を小さくすることはできるが、テスト温度から離れるにしたがってチップ温度τと補正演算結果(温度検知結果)Tとの誤差が大きくなり、温度センサの高精度化が不十分となる。これに対して本実施の形態のマイクロコンピュータ1では、テスト温度での実測値に加え、絶対零度での理論値を利用することで、N点の実測値からN次の補正演算係数を算出する。これにより、出荷前のテスト工程においてN点の温度でテストを実施するだけでN+1点の温度でテストを実施した場合と同等の効果が得られ、温度センサ10のばらつきをより高精度に補正することが可能となる。
【0103】
次にマイクロコンピュータ1による補正演算の処理手順を説明する。
【0104】
図11は、補正演算係数の算出処理の流れの一例を示すフロー図である。同図には、製品出荷前テストにおいて補正演算係数を算出する場合の処理フローが示される。
【0105】
例えばテスタ内に測定対象のマイクロコンピュータ1を設置した後、テスト温度をτ1に設定する(S101)。温度が安定したら、CPU30等からの温度検知の要求に応じて、温度センサ10が温度の測定を実行し、測定結果(τ1、T1)が不揮発性メモリ502に格納される(S102)。次に、テスタによってテスト温度をτ2に設定する(S103)。上記と同様に、CPU30等から温度検知の要求に応じて温度センサ10が温度の測定を実行し、測定結果(τ2、T2)が不揮発性メモリに格納される(S104)。そして、不揮発性メモリ502に格納された測定結果(τ1、T1)及び(τ2、T2)が係数算出部104に転送される(S105)。係数算出部104は、転送された測定結果(τ1、T1)及び(τ2、T2)と理論値(0、0)とを用いて、上述した方法により補正演算係数a
2、a
1、a
0を算出する(S106)。算出された補正演算係数a
2、a
1、a
0は不揮発性メモリ502に格納される(S107)。
【0106】
図12は、補正演算処理の流れの一例を示すフロー図である。同図には、製品出荷後の実動作時において補正演算を行う場合の処理フローが示される。
【0107】
例えばCPU30等からの温度検知の要求に応じて、温度センサ10が温度測定を開始する(S201)。温度センサ10は、先ず、不揮発性メモリ502から補正演算係数a
2、a
1、a
0を読み出す(S202)。読み出された補正演算係数a
2、a
1、a
0は、例えば補正演算部105内のレジスタ等に保持される。次に、センサ部100は温度測定を実行し、AD変換結果tを出力する(S203)。補正演算部105は、AD変換結果tを入力し、レジスタ等に保持された補正演算係数a
2、a
1、a
0を用いて補正演算を実行する(S204)。そして、補正演算部105が補正演算結果Tを温度検知結果として出力することで温度測定の処理が終了する(S205)。なお、上記処理手順において、ステップ202とステップ203は、順序を入れ替えてもよいし、同じタイミングで行ってもよい。
【0108】
図13に、上記の補正演算係数の算出を実現するための係数算出部104の具体的な構成例を示す。係数算出部104は、減算器1040〜1042、乗算器1043〜1048、加算器1049、及び除算器1050、1051等の専用ロジック回路で構成される。また係数算出部104は、図示はしないが、例えば不揮発性メモリ502から転送された実測結果(τ1、t1)及び(τ2、t2)等を保持するためのレジスタ等も備える。
【0109】
同図には、上述した(式12)〜(式14)の演算を実現するためのロジック回路の構成例が示されている。係数算出部104による演算機能をマイクロコンピュータによるプログラム処理で実現すると、マイクロコンピュータ1のチップ温度が高温になったときに、演算を実行するマイクロコンピュータが暴走状態に陥り正しい演算結果が得られなくなる虞があるが、演算機能を専用ロジック回路で実現することで、高温においても安定した動作が期待できる。
【0110】
図14に、上記の補正演算を実現するための補正演算部105の具体的な構成例を示す。補正演算部105は、乗算器1052、1055、及び加算器1053、1054等の専用ロジック回路で構成される。
【0111】
同図には、上述した(式11)の2次の補正演算関数を用いた演算を実現するためのロジック回路の構成例が示されている。補正演算部105による演算機能をマイクロコンピュータによるプログラム処理で実現すると、マイクロコンピュータ1のチップ温度が高温になったときに、演算を実行するマイクロコンピュータが暴走状態に陥り正しい演算結果が得られなくなる虞があるが、演算機能を専用ロジック回路で実現することで、高温においても安定した動作が期待できる。
【0112】
図15に、上記の温度測定を実現するためのA/D変換部102の具体的な構成例を示す。A/D変換部102は、入力電圧を保持するためのサンプリング容量C1、C2及びスイッチから構成される入力段1020と、A/D変換を行うA/D変換回路(ADC)1021と、から構成される。A/D変換部102は、基準電圧V1、V2をサンプリング容量C1、C2に保持し、A/D変換回路1021によって容量C1、C2に保持された電圧をサンプリングすることでA/D変換を実行し、AD変換結果tを出力する。
【0113】
ノイズの影響によって、例えば、温度電圧変換回路101の基準電位(グランド電圧GND_TVC)とA/D変換部102の基準電位(グランド電圧GND_ADC)との間で電位差が生じると、前述した絶対零度(T→0)で基準電圧V1の極限値“0”とした前提が、A/D変換回路1021のグランド電圧GND_ADCから見ると成立しなくなり、温度検知結果Tの誤差要因となる虞がある。そこで、ノイズによる影響を抑えるために、サンプリング容量C1、C2のリフレッシュ動作時にA/D変換回路1021のグランド電圧GND_ADCではなく、温度電圧変換回路101のグランド電圧GND_TVCによってサンプリング容量をリフレッシュする。すなわち、センサ部100は、サンプリング容量の一端がグランド電圧GND_TVCのノードに接続され、サンプリング容量の他端がリフレッシュ時にグランド電圧GND_TVCのノードに接続されるようにレイアウトされる。
【0114】
図16及び
図17に、基準電圧V1、V2の静電遮蔽(シールド)の方法の一例を表す。
【0115】
図16では、基準電圧V1が供給される信号線に並列するようにシールド線1011を設置し、基準電圧V2が供給される信号線に並列するようにシールド線1012を設置する。シールド線1011、1012には、温度電圧変換回路101のグランド電圧GND_TVCが供給される。これにより、ノイズが重畳された場合でも、基準電圧V1,V2とシールド線1011、1012の電圧は同相且つ同振幅で振れるため、基準電圧V1,V2の信号線とシールド線1011、1012との間で電荷の移動はなく、ノイズの影響を低減することができる。したがって、温度検知をより高精度にすることができる。
【0116】
図17では、シールド線1011、1012に加え、基準電圧V1が供給される信号線と基準電圧V2が供給される信号線との間にシールド線1013を設置する。シールド線1011、1012、1013には、温度電圧変換回路101のグランド電圧GND_TVCが供給される。これにより、よりノイズの影響を低減することができる。さらに、V1,V2の配線とシールド線1011〜1013の下層および上層にシールド層を設けてもよい。これにより、よりノイズの影響を低減することができる。
【0117】
以上、実施の形態1に係るマイクロコンピュータ1によれば、テスト温度での実測値に加え、絶対零度での理論値を利用することで、N点の温度でテストを実施するだけでN+1点の温度でテストを実施した場合と同等の効果が得られる。したがって、テストの工程を増加させることなく、温度センサ10による温度測定の高精度化を図ることができる。
【0118】
なお、上記の説明では、補正演算係数a
n〜a
0の算出を出荷前のテスト段階で行う方法を示したが、これに限られず、出荷後の実動作時において算出する方法でもよい。例えば、出荷前のテスト段階で、テスト温度でのAD変換結果tを不揮発性メモリ502に格納しておく。そして、出荷後の実動作時において、CPU30等から温度測定の要求がなされたら、係数算出部104が不揮発性メモリ502に格納された測定結果を読み出す。係数算出部104は読み出した測定結果と理論値に基づいて補正演算係数を算出し、算出結果を補正演算部105に転送する。これによれば、上記と同様に温度測定の高精度化を図ることができ、且つ、テスト工程における係数算出の処理を省略することでテスト時間を短縮することができる。なお、係数算出部104による補正演算係数の算出は、CPU30等からの温度測定の要求の度に行うのではなく、例えばマイクロコンピュータ1が起動してリセットが解除された後に、係数算出部104が補正演算係数の算出を実行し、補正演算部105のレジスタ等に補正演算係数を保持しておいてもよい。
【0119】
また、係数算出部104を用いずに、出荷前のテスト段階でテスタ等のプログラム処理装置(例えばPC等)によって補正演算係数a
n〜a
0を算出し、算出した補正演算係数a
n〜a
0を不揮発性メモリ502に格納してもよい。係数の算出方法は、係数算出部104と同様の方法である。これによれば、上記と同様にテスト温度を増加させることなく、温度センサ10の温度測定の高精度化を図ることができ、且つ、係数算出部104が不要となることでマイクロコンピュータ1のチップ面積の低減に資する。
【0120】
≪実施の形態2≫
図18は、実施の形態2に係る、温度センサを内蔵した自動車用のデータ処理等を行うマイクロコンピュータの一例を表すブロック図である。
図18におけるマイクロコンピュータ2は、特に制限されないが、公知のCMOS集積回路の製造技術によって1個の単結晶シリコンのような半導体基板に形成されている。
【0121】
前述したように、温度センサ12を高精度化するには、補正演算係数a
n〜a
0を算出して補正演算を行う必要があるが、その前段階で各機能ブロックの動作をテストし、動作異常の有無を確認する必要がある。そこで、各機能ブロックの動作テストの容易化のため、実施の形態2に係るマイクロコンピュータ2は、実施の形態1に係るマイクロコンピュータ1の機能に加え、更に動作テストのための機能ブロックを備える。具体的には、マイクロコンピュータ2は、入力用セレクタ112、113、出力用セレクタ114、及び入出力端子61〜64を更に有する。なお
図18において、マイクロコンピュータ1と同様の構成要素には同一の符号を付して、その詳細な説明を省略する。
【0122】
入力用セレクタ112は、外部から端子64を介して入力された入力選択信号116に応じて、温度電圧変換回路101が出力する基準電圧V1、又は外部から端子63を介して入力された外部入力電圧V1’のいずれか一方を選択して出力する。その出力電圧117はA/D変換部102に入力される。入力用セレクタ113は、外部から端子62を介して入力された入力選択信号115に応じて、温度電圧変換回路101が出力する基準電圧V2、又は外部から端子61を介して入力された外部入力電圧V2’のいずれか一方を選択して出力する。その出力電圧118はA/D変換部102に入力される。
【0123】
出力用セレクタ114は、外部から端子65を介して入力された出力選択信号122に応じて、AD変換結果119の出力先を切り替える。具体的には、AD変換結果119の出力先として、係数算出部104及び補正演算部105の入力端子、又は補正演算部105の出力信号線のいずれか一方を選択する。
【0124】
入力用セレクタ112、113、及び出力用セレクタ114を利用したテスト方法について説明する。
【0125】
A/D変換部102のテスト方法は以下である。例えば、入力用セレクタ112、113が外部入力電圧V1’、V2’を選択し、出力用セレクタ114がAD変換結果Tを論理部70をスルーして出力するように、入力選択信号115、116及び出力選択信号122を設定する。このとき、出力されたAD変換結果t(119)と、外部入力電圧V1’,V2’から予測されるV1’/V2’の値とを比較することで、A/D変換部102が正常に動作しているか否かを判断することができる。
【0126】
論理部70(係数算出部104及び補正演算部105)のテスト方法は以下である。例えば、出力用セレクタ114がAD変換結果119を論理部70に入力するように出力選択信号122を設定する。前述のA/D変換部102のテストにおいてA/D変換部102が正常に動作していることが確認できていれば、補正演算結果Tと予測される演算結果の値とを比較することで、係数算出部104及び補正演算部105が正常に動作しているか否かを判断することができる。
【0127】
温度電圧変換回路101のテスト方法は以下である。例えば、入力用セレクタ112、113が基準電圧V1、V2を選択するように、入力選択信号115、116を設定する。前述のA/D変換部102及び論理部70のテストにおいてA/D変換部102及び論理部70が正常に動作していることが確認できていれば、入力電圧を基準電圧V1にした場合のAD変換結果119と入力電圧を外部入力電圧V1’にした場合のAD変換結果119との差異を比較すること等により、基準電圧V1が正常に出力されているか否かを判断することができる。基準電圧V2についても同様である。また、その他のテスト方法として、基準電圧V1を端子63に出力できるように入力用セレクタ112を設計しておき、基準電圧V1をチップ外部でモニタして判断する方法も可能である。入力用セレクタ113についても同様である。
【0128】
出力用セレクタ114をテスト以外の用途で利用することも可能である。例えば、温度センサ12に高い温度検知精度が必要とされない場合、出力用セレクタ114がAD変換結果Tを論理部70をスルーして出力するように、出力選択信号122を設定する。この場合、出力選択信号122を外部から入力する代わりに、例えばCPU30等から切り替え信号を入力する。このとき、論理部70はディスエーブルされ、その出力はハイインピーダンスとされる。これにより、温度検知は高精度化されないが、論理部70が動作しないのでマイクロコンピュータ1の消費電力を低減することができる。
【0129】
以上、実施の形態2に係るマイクロコンピュータ2によれば、実施の形態1と同様にテストの工程を増加させることなく温度測定の高精度化を図ることができ、且つ各機能ブロックの動作テストが容易となる。
【0130】
≪実施の形態3≫
図19は、実施の形態3に係る、温度センサを内蔵した自動車用のデータ処理等を行うマイクロコンピュータの一例を示すブロック図である。
図19におけるマイクロコンピュータ3は、特に制限されないが、公知のCMOS集積回路の製造技術によって1個の単結晶シリコンのような半導体基板に形成されている。
【0131】
マイクロコンピュータ3は、実施の形態2に係るマイクロコンピュータ2の機能に加え、温度範囲によって補正演算関数を切り替える機能を備える。具体的には、マイクロコンピュータ3は、温度範囲を判別する比較器123を更に有する。なお
図19において、マイクロコンピュータ1及び2と同様の構成要素には同一の符号を付して、その詳細な説明を省略する。
【0132】
前述したように、温度センサ12を高精度化するには、補正演算係数a
n〜a
0を算出して補正演算を行う必要があるが、テストコストの更なる低減のために、温度τ1の1点のみでテストを行い、2次の補正演算関数を用いる場合を考える。この場合、測定結果(t1,τ1)と理論値(0,0)の2点を用いることで、2次関数の3つの補正演算係数a
2、a
1、a
0のうち1次の補正演算係数a
1と0次の補正演算係数a
0を算出することができるが、2次の補正演算係数a
2は算出できない。そのため、2次の補正演算係数a
2は回路シミュレーション等で予測した値を用いる。これにより、
図10で述べたように、テスト温度τ1から離れた温度では温度精度が悪化してしまう可能性がある。特に、温度センサに要求される動作温度範囲のスペックが広範囲になると、この影響はさらに顕著となる。そこで、マイクロコンピュータ3では、温度範囲に応じて2次の補正演算係数a
2を切り替えて補正演算を行う。
【0133】
図20に、温度範囲に応じて補正演算係数を切り替えた補正演算関数の一例を示す説明図である。同図において、丸印はプロセスのばらつきが無い理想状態におけるAD変換結果tとチップの実温度τの対応点を示し、三角印は実測値のAD変換結果tとチップの実温度τの対応点を示す。また、参照符号401の曲線は、AD変換結果tpに対応する温度よりも高い温度範囲での補正演算関数であり、参照符号402の曲線は、AD変換結果tpに対応する温度よりも低い温度範囲での補正演算関数である。
【0134】
同図に示されるように、補正演算関数401の補正演算結果Tは、低温になるほど実測値とのずれが大きくなり、補正演算関数402の補正演算結果Tは、高温になるほど実測値とのずれが大きくなる。そこで、AD変換結果tpに対応する温度を境にして、高温側では2次の補正演算係数a
2_
Hの補正演算関数401を用い、低温側では2次の補正演算係数a
2_
Lの補正演算関数402を用いる。2次の補正演算係数a
2_
H、a
2_
Lは、回路シミュレーション等によって予測した値を用いる。これによれば、テスト工程で測定点を減らした場合であっても、前述の
図10の方法に比べて、温度検知の精度を向上させることができる。
【0135】
なお、温度範囲を低温から常温の範囲と常温から高温の範囲の2つの温度範囲に分ける場合には、AD変換結果tpに対応する温度は常温(例えば25℃)とするとよい。
【0136】
図21に、
図20の補正演算係数の算出を実現するための係数算出部204の具体的な構成例を示す。係数算出部204は、乗算器2041、加算器2042、及び除算器2043等の専用ロジック回路で構成される。また係数算出部204は、図示はしないが、例えば不揮発性メモリ502から転送された実測結果(τ1、t1)等を保持するためのレジスタ等も備える。同図には、2次の補正演算係数a
2を固定値とし、1次の補正演算係数a
1と0次の補正演算係数a
0を算出するためのロジック回路の構成例が示されている。1次の補正演算係数a
1と0次の補正演算係数a
0を算出式は、実測結果(τ1、t1)と理論値(0、0)を上記(式11)に代入して方程式を解くことで得られ、(式15)及び(式16)で表わされる。
【0139】
図22に、
図20の補正演算を実現するための補正演算部205の具体的な構成例を示す。補正演算部205は、乗算器2050、2051、加算器2052、2053、及び係数選択セレクタ2054等の専用ロジック回路で構成される。同図では、上述した(式11)の2次の補正演算関数を用いた演算を実現するためのロジック回路が乗算器2050、2051、加算器2052、2053によって構成される。また、係数選択セレクタ2054によって乗算器2050に入力される2次の補正演算係数が切り替えられる。具体的には、比較器123が、基準電圧V1と基準電圧V2を監視し、電圧比V1/V2がAD変換結果tpに対応する値となったら、例えば切り替え信号124の論理を反転する。係数選択セレクタ2054は、切り替え信号124に応じて、補正演算係数a
2_
Hと補正演算係数a
2_
Lのいずれか一方を乗算器2050に出力する。
【0140】
以上実施の形態3によれば、補正演算を行う際には温度範囲によって2次の補正演算係数a
2を切り替えるから、テスト温度の点数を減らした場合であっても温度検知の精度の低下を抑えることができ、テストコストの更なる低減を図ることができる。なお、基準電圧V1、V2のプロセスばらつきや比較器123の特性の影響により、3つの補正演算係数を算出する方法に比べて精度が劣る可能性はある。
【0141】
上記の説明では、一例としてテストコストの低減のために2次の補正演算係数a
2を切り替える方法を示したが、これに限られず、係数の切り替え機能を別の用途に用いることも可能である。例えばテストモードとして、補正演算を実行せずにAD変換結果tを介して出力することも可能である。
【0142】
図23に、補正演算を実行せずにAD変換結果tを出力するための補正演算部305の具体的な構成例を示す。補正演算部305は、補正演算部205の機能部に加え、係数選択セレクタ2055、2056を更に備える。2次の補正演算係数a
2の係数選択セレクタ2054は、“0”又は“a
2_
x”のいずれか一方を選択して出力する。1次の補正演算係数a
1の係数選択セレクタ2055は、“1”又は“a
1_
x”のいずれか一方を選択して出力する。0次の補正演算係数a
0の係数選択セレクタ2056は、“t
1”又は“a
0_
x”のいずれか一方を選択して出力する。選択信号125は、例えばCPU30等から入力してもよいし、外部端子から出力用セレクタ114を介して入力してもよい。例えば、選択信号125が通常動作モードを指示する場合には、係数選択セレクタ2054は“a
2_
x”を出力し、係数選択セレクタ2056は“a
1_
x”を出力し、係数選択セレクタ2056は“a
0_
x”を出力する。これにより、補正演算部305は、演算結果“T=a
2_
x(t−t
1)
2+a
1_
x(t−t
1)+a
0_
x“を出力する。また、選択信号125がテストモードを指示する場合には、係数選択セレクタ2054は”0“を出力し、係数選択セレクタ2056は”1“を出力し、係数選択セレクタ2056は”t
1“を出力する。これにより、補正演算部305は演算結果“T=t“を出力する。以上のように補正演算部305によれば、補正演算を実行してもAD変換結果tを取り出すことができ、A/D変換部102の動作テスト等を行うことができる。
【0143】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【0144】
例えば、実施の形態1乃至3において、2次の補正演算関数を用いる方法を例示したが、これに限られず、3次以上の補正演算関数を用いることも可能である。これによれば、テストコストは増加するが、温度検知の精度をより向上させることができる。また、係数算出部104、204及び補正演算部105、205、305を専用ロジック回路で構成する場合を例示したが、例えば、要求される温度検知範囲が狭い等の理由で熱暴走等の虞がない場合には、CPU等によるプログラム処理で実現してもよい。
【0145】
実施の形態3において、補正演算係数を切り替える機能を実施の形態2のマイクロコンピュータ2に適用する場合を例示したが、これに限られず、実施の形態1に係るマイクロコンピュータ1に適用することも可能である。