(57)【要約】【課題】ノイズの影響を受けた異常な変換データが保持部に保持されるのを抑制することができる半導体装置、及びノイズ除去方法を提供する。【解決手段】半導体装置１０では、差分演算回路３２がＡＤコンバータ２０から出力された変換データと基準レジスタ３０に設定された基準値との差分を演算する。そして、比較演算回路３４が、差分演算回路３２が演算した演算値（差分）と差分レジスタ３６に設定された差分値とを比較し、比較結果に基づいて変換データが正常な場合は、当該変換データを出力してデータ受信回路２４の変換データ保持レジスタ４０に保持させる。一方、変換データが異常な場合は、当該変換データを破棄して、当該変換データに対応するアナログデータを再びデジタルデータに変換するようＡＤコンバータ２０に指示する。【選択図】図２
2017050732.tif 000002
【特許請求の範囲】
【請求項１】
順次入力されるアナログデータをデジタルデータに変換した変換データを順次出力するＡＤコンバータと、
変換データと基準値設定部に設定された基準値との差分を演算する差分演算部と、
変換データを保持する複数の保持部と、
前記複数の保持部に順次変換データを保持させる際に、前記差分演算部で演算した演算値の絶対値と予め定められた値とを比較し、比較結果に基づいて、変換データが正常な場合は前記保持部に当該変換データを保持させ、変換データが異常な場合は当該変換データを破棄して破棄した当該変換データに対応するアナログデータを再びデジタルデータに変換するよう前記ＡＤコンバータに指示する比較演算部と、
を備えた半導体装置。
【請求項２】
前記比較演算部は、前記演算値の絶対値が、前記予め定められた値以下の場合は変換データを正常とし、前記演算値の絶対値が、前記予め定められた値を超える場合は変換データを異常とする、
請求項１に記載の半導体装置。
【請求項３】
前記複数の保持部の各々に保持された変換データの平均値を算出して出力する算出部を備えた、
請求項１または請求項２に記載の半導体装置。
【請求項４】
前記比較演算部は、変換データが正常な場合は、当該変換データを基準値として前記基準値設定部に設定する、
請求項１から請求項３のいずれか１項に記載の半導体装置。
【請求項５】
ＡＤコンバータにより、順次入力されるアナログデータをデジタルデータに変換した変換データを順次出力し、
差分演算部により、変換データと基準値設定部に設定された基準値との差分を演算し、
比較演算部により、複数の保持部に順次変換データを保持させる際に、前記差分演算部で演算した演算値の絶対値と予め定められた差分値とを比較し、
比較結果に基づいて、変換データが正常な場合は前記保持部に当該変換データを保持させ、変換データが異常な場合は当該変換データを破棄して破棄した変換データに対応するアナログデータを再びデジタルデータに変換するよう前記ＡＤコンバータに指示する、
処理を含むノイズ除去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置及びノイズ除去方法に関するものである。
【背景技術】
【０００２】
従来から、アナログデータをデジタルデータに変換するＡＤ（Analog-to-digital converter）変換に関する技術として、ＡＤ変換されたデジタルデータ（変換データ）のノイズを検出する技術が知られている。例えば、特許文献１には、アナログデータをＡＤ変換した変換バッファの値と、前回アナログデータをＡＤ変換した前回値バッファの値との差分に基づいてノイズを検出する技術が記載されている。特許文献１に記載の技術では、ノイズを検出した場合は、変換バッファの値の代わりに補正値バッファに格納されている補正値を用いることが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２２７２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、半導体装置において、ＡＤ変換された複数の変換データを保持するために複数の保持部を備える技術がある。
【０００５】
しかしながら、複数の変換データに、ノイズの影響等による異常な変換データが含まれる場合、複数の変換データを用いて処理を行う際に、当該処理や、処理結果に影響を与えてしまう問題が生じる。例えば、複数の変換データの平均値を用いた処理を行う場合、異常な変換データが含まれると、当該平均値が正常な変換データと大きく乖離することになる。
【０００６】
そのため、複数の保持部に、ノイズの影響等による異常な変換データを保持させないための技術が望まれている。
【０００７】
しかしながら、特許文献１に記載の技術は、複数の変換データを保持する技術ではなく、特許文献１に記載の技術を単純に上記問題に対して適用することはできない。
【０００８】
本発明は、ノイズの影響を受けた異常な変換データが保持部に保持されるのを抑制することができる半導体装置、及びノイズ除去方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の半導体装置は、順次入力されるアナログデータをデジタルデータに変換した変換データを順次出力するＡＤコンバータと、変換データと基準値設定部に設定された基準値との差分を演算する差分演算部と、変換データを保持する複数の保持部と、前記複数の保持部に順次変換データを保持させる際に、前記差分演算部で演算した演算値の絶対値と予め定められた差分値とを比較し、比較結果に基づいて、変換データが正常な場合は前記保持部に当該変換データを保持させ、変換データが異常な場合は当該変換データを破棄して破棄した変換データに対応するアナログデータを再びデジタルデータに変換するよう前記ＡＤコンバータに指示する比較演算部と、を備える。
【００１０】
また、本発明のノイズ除去方法は、ＡＤコンバータにより、順次入力されるアナログデータをデジタルデータに変換した変換データを順次出力し、差分演算部により、変換データと基準値設定部に設定された基準値との差分を演算し、比較演算部により、複数の保持部に順次変換データを保持させる際に、前記差分演算部で演算した演算値の絶対値と予め定められた差分値とを比較し、比較結果に基づいて、変換データが正常な場合は前記保持部に当該変換データを保持させ、変換データが異常な場合は当該変換データを破棄して破棄した変換データに対応するアナログデータを再びデジタルデータに変換するよう前記ＡＤコンバータに指示する、処理を含む。
【発明の効果】
【００１１】
本発明によれば、ノイズの影響を受けた異常な変換データが保持部に保持されるのを抑制することができる半導体装置、及びノイズ除去方法を提供することができる、という効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態の半導体装置の一例の概略を示す構成図である。
【図２】第１実施形態のデータ演算回路及びデータ受信回路の回路図である。
【図３】第１実施形態の半導体装置により実行される保持動作の一例を表すフローチャートである。
【図４】第２実施形態のデータ演算回路及びデータ受信回路の回路図である。
【図５】第２実施形態の半導体装置により実行される保持動作の一例を表すフローチャートである。
【発明を実施するための形態】
【００１３】
以下では、図面を参照して、各実施形態を詳細に説明する。
【００１４】
［第１実施形態］
まず、本実施形態の半導体装置全体の構成について説明する。図１には、本実施形態の半導体装置１０の一例の概略を表す構成図を示す。
【００１５】
図１に示すように本実施形態の半導体装置１０は、ＡＤコンバータ２０、データ演算回路２２、データ受信回路２４、ＣＰＵ（Central Processing Unit）２６、及び処理部２８を備える。本実施形態の半導体装置１０は、具体例としてＭＣＵ（Micro Control Unit）として構成されている。
【００１６】
本実施形態の半導体装置１０には、センサ１２から検出結果を表すアナログデータが入力される。センサ１２の具体例としては、温度を検出する温度センサ等が挙げられる。
【００１７】
本実施形態のセンサ１２の検出対象は、値が大きく変化することが無いものである。例えば、上述したように具体例としてセンサ１２が温度センサの場合、所定の温度に設定されている場所等、温度変化が大きくない場所の温度を検出対象としている。
【００１８】
ＡＤコンバータ２０は、センサ１２から出力されるアナログデータを連続ＡＤ変換する。具体的には、ＡＤコンバータ２０は、センサ１２から検出結果を表すアナログデータを取得して、デジタルデータに変換した変換データをデータ演算回路２２に出力する。
【００１９】
データ演算回路２２は、ＡＤコンバータ２０から入力された変換データが正常（詳細後述）である場合は、データ受信回路２４の変換データ保持レジスタ４０（図２参照、詳細後述）に当該変換データを保持させる。また、データ演算回路２２は、変換データが異常である場合は、当該変換データを破棄してＡＤコンバータ２０にアナログデータの変換をやりなおすよう指示する。
【００２０】
すなわち、データ演算回路２２は、変換データが正常か異常かを判断し、異常な場合はＡＤ変換をやりなおさせ、正常な場合のみデータ受信回路２４の変換データ保持レジスタ４０に保持させる。
【００２１】
なお、本実施形態の半導体装置１０では、ＡＤコンバータ２０でアナログデータをＡＤ変換する際にノイズ等の影響を受けた状態の変換データを「異常」としている。このような異常な変換データの値は、正常な変換データの値と大きく異なる。本実施形態の半導体装置１０では、具体的には、ＡＤ変換を行って得られた変換データの値が基準値と大きく異なっている場合、ＡＤ変換により得られた変換データは異常であると判断している。
【００２２】
データ受信回路２４は、複数の変換データを保持するため、複数の変換データ保持レジスタ４０（図２参照、詳細後述）を備えている。変換データ保持レジスタ４０は、本発明の保持部の一例である。
【００２３】
ＣＰＵ２６は、本発明の算出部の一例であり、データ受信回路２４が備える複数の変換データ保持レジスタ４０（図２参照、詳細後述）の各々に保持されている変換データを読み出して、平均値を算出する。ＣＰＵ２６により算出された変換データの平均値は、処理部２８に出力される。
【００２４】
処理部２８は、変換データの平均値に基づいて予め定められた処理を行う。処理部２８で行われる予め定められた処理は、特に限定されるものではなく、センサ１２の検出結果を用いた処理であればよい。
【００２５】
次に、本実施形態のデータ演算回路２２及びデータ受信回路２４について詳細に説明する。図２には、本実施形態のデータ演算回路２２及びデータ受信回路２４の回路図を示す。
【００２６】
図２に示すようにデータ演算回路２２は、基準レジスタ３０、差分演算回路３２、比較演算回路３４、及び差分レジスタ３６を備える。
【００２７】
基準レジスタ３０は、本発明の基準値設定部の一例であり、基準値が予め設定されている。基準レジスタ３０に設定されている基準値は、センサ１２の検出対象に応じて予め定められる。
【００２８】
差分レジスタ３６には、差分値が予め定められている。差分レジスタ３６に設定されている差分値は、センサ１２の検出対象やＡＤコンバータ２０でＡＤ変換を行う際に生じるノイズの大きさ等に応じて予め定められる。
【００２９】
上述したようにセンサ１２が温度センサであり、温度が２５度に設定され、±３度の範囲内で温度が変化する場所の温度を半導体装置１０が測定する場合、例えば、基準レジスタ３０には、「２５」が設定され、差分レジスタ３６には「３」が設定される。
【００３０】
差分演算回路３２は、ＡＤコンバータ２０から入力された変換データと基準レジスタ３０に設定されている基準値との差分を演算する。
【００３１】
比較演算回路３４は、差分演算回路３２で演算した演算値（差分）と差分レジスタ３６に設定されている差分値とを比較する。また、比較演算回路３４は、比較結果に基づいて、変換データが正常である場合はデータ受信回路２４に出力し変換データ保持レジスタ４０に保持させる。一方、変換データが異常である場合はＡＤコンバータ２０に当該変換データに対応するアナログデータを再度ＡＤ変換するよう指示する。
【００３２】
一方、データ受信回路２４は、複数の変換データ保持レジスタ４０を備える。本実施形態のデータ受信回路２４は、具体例として４回分のＡＤ変換結果（変換データ）を保持するために４つの変換データ保持レジスタ４０１〜４０４を備える。なお、本実施形態では、変換データ保持レジスタ４０１〜４０４について個々を区別せずに総称する場合は、個々を表す１〜４の符号を省略して記載する。
【００３３】
比較演算回路３４から出力された変換データは、１回目〜４回目まで、順次、変換データ保持レジスタ４０１〜４０４に保持される。本実施形態の半導体装置１０では、比較演算回路３４からデータ受信回路２４に変換データが４回出力され、変換データ保持レジスタ４０に保持されると、ＣＰＵ２６により変換データの平均値の算出が行われて、平均値が処理部２８に出力される。
【００３４】
本実施の形態の半導体装置１０による変換データを変換データ保持レジスタ４０に保持する保持動作について説明する。
【００３５】
図３には、半導体装置１０により実行される保持動作の一例を表すフローチャートを示す。なお、図３に示した保持動作を行う前に、予め基準レジスタ３０には基準値が設定され、かつ差分レジスタ３６には差分値が設定される。
【００３６】
ステップＳ１００でＡＤコンバータ２０が、センサ１２からアナログデータを取得する。そして、次のステップＳ１０２でＡＤコンバータ２０が、取得したアナログデータをデジタルデータにＡＤ変換し、変換データを出力する。
【００３７】
次のステップＳ１０４で差分演算回路３２が、変換データと基準レジスタ３０に設定されている基準値との差分を演算する。
【００３８】
次のステップＳ１０６で比較演算回路３４が、差分演算回路３２が演算した演算値（差分）と差分レジスタ３６に設定されている差分値とを比較する。比較演算回路３４は、具体的には演算値の絶対値が差分値以上であるか否かを判断する。
【００３９】
そして次のステップＳ１０８で比較演算回路３４が、演算値の絶対値が差分値以下であるか否かを判断する。演算値の絶対値が差分値以下ではない場合（演算値の絶対値が差分値を超える場合）は、否定判定となりステップＳ１１０へ移行する。
【００４０】
演算値の絶対値が差分値を超える場合は、変換データが異常な場合である。そのため、ステップＳ１１０で比較演算回路３４は、変換データを破棄し、再び上記ステップＳ１００で取得したアナログデータをＡＤ変換させるために、ステップＳ１０２に戻る。従って、変換データが異常な場合は、当該変換データに応じたアナログデータについて再びＡＤコンバータ２０でＡＤ変換を実行する。
【００４１】
一方、演算値の絶対値が差分値以下の場合は、ステップＳ１０８で肯定判定となり、ステップＳ１１２へ移行する。
【００４２】
演算値の絶対値が差分値以下の場合とは、変換データが正常な場合である。そのため、ステップＳ１１２で比較演算回路３４は、当該変換データを出力してデータ受信回路２４の変換データ保持レジスタ４０に保持させる。なお、変換データを変換データ保持レジスタ４０に保持させる際は、変換データ保持レジスタ４０１から順次、変換データ保持レジスタ４０４まで、変換データを保持させる。
【００４３】
次のステップＳ１１４でＣＰＵ２６は、比較演算回路３４から変換データの出力（変換データ保持レジスタ４０への保持）が４回目か否か判断する。４回目ではない（１〜３回目）の場合は、否定判定となり、ステップＳ１００に戻る。そして、ＡＤコンバータ２０がセンサ１２からアナログデータを取得し、ステップＳ１０２〜Ｓ１１２の動作を繰り返す。
【００４４】
一方、４回目の場合は、肯定判定となり保持動作を終了する。なお、保持動作が終了すると、ＣＰＵ２６は、変換データ保持レジスタ４０１〜４０４に保持されている４つの変換データの平均値を算出し、処理部２８に出力する。そして、再び、図３に示した保持動作が繰り返される。なお、保持動作を繰り返す際は、１回目から順に、変換データを変換データ保持レジスタ４０１〜４０４に上書きしてもよいし、一旦、全ての変換データ保持レジスタ４０をリセットして、再び変換データを保持させるようにしてもよい。
【００４５】
［第２実施形態］
第１実施形態の半導体装置１０では、基準レジスタ３０に予め定められた基準値を設定していた。これに対して第２実施形態の半導体装置１０では、基準レジスタ３０に前回ＡＤ変換した正常な変換データを基準値として設定する。
【００４６】
本実施形態の半導体装置１０全体の構成は、第１実施形態の半導体装置１０（図１参照）と同様であるため説明を省略する。
【００４７】
図４には、本実施形態のデータ演算回路及びデータ受信回路の回路図を示す。図４に示すように、本実施形態の半導体装置１０のデータ演算回路２２では、比較演算回路３４から出力された変換データが基準レジスタ３０に入力され、基準値として設定される点で、第１実施形態の半導体装置１０と異なっている。
【００４８】
センサ１２から入力されるアナログデータが徐々に上昇または下降する場合、基準レジスタ３０に設定される基準値を固定値としてしまうと、変換データと基準値とが徐々に乖離してしまうことになる。具体例として、センサ１２が、電池の残量（電池電圧）を検出するセンサである場合、電池の残量は徐々に減少するため、基準値を固定値としてしまうと、変換データと基準値とが徐々に乖離してしまう。そのため、変換データが異常であるか正常であるかの判断が適切に行われなくなる。
【００４９】
そのため、本実施形態のデータ演算回路２２では、基準レジスタ３０に設定される基準値を固定値とせず、正常な前回の変換データを基準値として設定している。
【００５０】
図５には、本実施形態の半導体装置１０により実行される保持動作の一例を表すフローチャートを示す。図５に示した保持動作は、ステップＳ１１２とステップＳ１１４との間にステップＳ１１３が加わっている点で、第１実施形態の半導体装置１０で行われる保持動作（図３参照）と異なっている。
【００５１】
ステップＳ１０８で比較演算回路３４が、演算値の絶対値が差分値以下であると判断した場合（肯定判定）は、変換データが正常である。そのため、ステップＳ１１２で比較演算回路３４が、変換データをデータ受信回路２４に出力して変換データ保持レジスタ４０に保持させる。
【００５２】
本実施形態の半導体装置１０では、ステップＳ１１２で比較演算回路３４から出力された変換データが、次のステップＳ１１３で基準レジスタ３０に基準値として設定される。なお、このように本実施形態の保持動作では、便宜上、変換データを変換データ保持レジスタ４０に保持させるステップＳ１１２の後に、変換データを基準レジスタ３０に基準値として設定するステップＳ１１３を設けた。しかしながら、変換データを変換データ保持レジスタ４０に保持させる動作と、基準レジスタ３０に基準値として設定する動作の順番は限定されるものではない。
【００５３】
これにより、２回目以降の変換データについては、正常な前回の変換データを基準値として、差分演算回路３２が差分の演算を行う。
【００５４】
なお、本実施形態の半導体装置１０では、図５に示した保持動作を繰り返し行う場合は、前回の保持動作により基準レジスタ３０に設定された基準値をそのまま使用してもよい。具体的には、前回の保持動作のうち、４回目のステップＳ１１３の動作で基準レジスタ３０に設定された変換データ（４回目の変換データ）を、今回の保持動作の１回目のステップＳ１０４で演算に用いられる基準値としてもよい。また、新たな基準値（例えば予め定められた基準値）を基準レジスタ３０に設定して使用してもよい。前回の基準値をそのまま使用するか、新たな基準値を使用するかはユーザの任意としてもよい。
【００５５】
以上説明したように、上記各実施形態の半導体装置１０では、差分演算回路３２がＡＤコンバータ２０から出力された変換データと基準レジスタ３０に設定された基準値との差分を演算する。そして、比較演算回路３４が、差分演算回路３２が演算した演算値（差分）と差分レジスタ３６に設定された差分値とを比較し、比較結果に基づいて変換データが正常な場合は、当該変換データを出力してデータ受信回路２４の変換データ保持レジスタ４０に保持させる。一方、変換データが異常な場合は、当該変換データを破棄して、当該変換データに対応するアナログデータを再びデジタルデータに変換するようＡＤコンバータ２０に指示する。
【００５６】
データ演算回路２２を備えていない従来の半導体装置の場合、ＡＤコンバータ２０から出力された変換データがそのままデータ受信回路２４の変換データ保持レジスタ４０に保持される。そのため、従来の半導体装置では、異常な変換データが保持されてしまう。また、従来の半導体装置では、変換データ保持レジスタ４０に保持されている変換データが正常であるか異常であるかを判断する場合、ソフトウエアを用いて行っていた。
【００５７】
これに対して、上記各実施形態の半導体装置１０によれば、データ演算回路２２を備えているため、正常な変換データのみをデータ受信回路２４の変換データ保持レジスタ４０に保持させる。
【００５８】
従って、上記各実施形態の半導体装置１０によれば、ノイズの影響を受けた異常な変換データがデータ受信回路２４の変換データ保持レジスタ４０に保持されるのを抑制することができる。
【００５９】
また、比較演算回路３４により変換データが正常であるか異常であるかを判断しているため、従来の半導体装置に比べて、余分なソフトウエアを削減し、当該ソフトウエアを格納するＲＯＭ（Read Only Memory）のサイズを縮小することができ、コストも削減することができる。
【００６０】
また、上記第２実施形態の半導体装置１０では、正常な前回の変換データを基準値として、当該基準値と今回の変換データとの差分を差分演算回路３２が演算する。これにより、上記第２実施形態の半導体装置１０によれば、アナログデータが、徐々に変化（上昇または下降）する場合でも、基準値と正常な変換データとの乖離が大きくなることを防止することができる。
【００６１】
なお、上記各実施形態では、半導体装置１０に入力されるアナログデータが、センサ１２の検出結果を表すものである場合について説明したが、アナログデータは、値が大きく変化することがなく、変化する場合でも徐々に変化するものであればよく、限定されるものではない。
【００６２】
なお、上記各実施形態では、半導体装置１０のデータ受信回路２４が４つの変換データ保持レジスタ４０を備える場合について説明したが、データ受信回路２４が備える変換データ保持レジスタ４０の数は複数であればよく、限定されるものではない。
【００６３】
なお、上記各実施形態では、差分演算回路３２の演算値が差分レジスタ３６に設定された差分値以下の場合に変換データを正常とし、差分値を超える場合に変換データ異常としていたが、これに限らず、演算値が差分値未満の場合に変換データを正常とし、差分値以上の場合に変換データ異常としてもよい。
【００６４】
なお、上記各実施形態の半導体装置１０では、基準レジスタ３０、差分レジスタ３６、及び変換データ保持レジスタ４０を備える場合について説明したがこれに限らず、それぞれ、基準値、差分値、及び変換データを設定・保持できればよい。例えば、半導体装置１０は、レジスタに替えて汎用ＲＡＭ（Random Access Memory）を備えてもよい。
【００６５】
なお、上記各実施形態では、データ演算回路２２の差分演算回路３２及び比較演算回路３４をハードウエア（回路）で構成する場合について説明したがこれに限らず、ソフトウエアの実行により同様の機能を有する機能部として構成してもよい。なお、上述したように、上記各実施形態のようにハードウエア（回路）として構成することにより、ソフトウエアを削減しＲＯＭサイズを縮小することができるため、好ましい。
【００６６】
なお、その他の上記各実施の形態で説明した半導体装置１０の構成、及び動作は一例であり、本発明の主旨を逸脱しない範囲内において状況に応じて変更可能であることはいうまでもない。
【符号の説明】
【００６７】
１０  半導体装置
２０  ＡＤコンバータ
２２  データ演算回路
２４  データ受信回路
２６  ＣＰＵ
３０  基準レジスタ
３２  差分演算回路
３４  比較演算回路
３６  差分レジスタ
４０（４０１〜４０４）  変換データ保持レジスタ
【図１】
2017050732.tif 000003
【図２】
2017050732.tif 000004
【図３】
2017050732.tif 000005
【図４】
2017050732.tif 000006
【図５】
2017050732.tif 000007