IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ローム株式会社の特許一覧

<>
  • 特開-半導体集積回路 図1
  • 特開-半導体集積回路 図2
  • 特開-半導体集積回路 図3
  • 特開-半導体集積回路 図4
  • 特開-半導体集積回路 図5
  • 特開-半導体集積回路 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024172798
(43)【公開日】2024-12-12
(54)【発明の名称】半導体集積回路
(51)【国際特許分類】
   G01R 31/28 20060101AFI20241205BHJP
   G06F 11/22 20060101ALI20241205BHJP
   H01L 21/822 20060101ALI20241205BHJP
【FI】
G01R31/28 V
G06F11/22 673F
H01L27/04 T
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023090769
(22)【出願日】2023-06-01
(71)【出願人】
【識別番号】000116024
【氏名又は名称】ローム株式会社
(74)【代理人】
【識別番号】110001933
【氏名又は名称】弁理士法人 佐野特許事務所
(72)【発明者】
【氏名】黒土 勇二
【テーマコード(参考)】
2G132
5B048
5F038
【Fターム(参考)】
2G132AA01
2G132AB02
2G132AC03
2G132AD06
2G132AK13
2G132AL11
5B048AA05
5B048CC02
5F038DT08
5F038EZ20
(57)【要約】
【課題】故障検出率を高くしつつ、回路規模の増大を抑制することが可能となる半導体集積回路を提供する。
【解決手段】半導体集積回路(101)は、バスコントローラ(1A)を有するCPU(1)と、前記バスコントローラから出力されるデータ出力を保持するように構成されるデータ保持回路(4)と、前記データ保持回路に保持された期待値データと、前記バスコントローラまたは周辺回路(2)から出力される比較対象データと、を比較するように構成される比較回路(5A)と、前記周辺回路から入力される入力データと、前記比較部から出力される比較結果と、のうち1つを選択して前記バスコントローラに入力させるように構成される選択回路(6)と、を備え、前記CPUは、ソフトウェアを実行することで故障検出を行うように構成される。
【選択図】図2
【特許請求の範囲】
【請求項1】
バスコントローラを有するCPUと、
前記バスコントローラから出力されるデータ出力を保持するように構成されるデータ保持回路と、
前記データ保持回路に保持された期待値データと、前記バスコントローラまたは周辺回路から出力される比較対象データと、を比較するように構成される比較回路と、
前記周辺回路から入力される入力データと、前記比較部から出力される比較結果と、のうち1つを選択して前記バスコントローラに入力させるように構成される選択回路と、
を備え、
前記CPUは、ソフトウェアを実行することで故障検出を行うように構成される、半導体集積回路。
【請求項2】
前記比較回路は、アドレスを示す前記期待値データと、前記バスコントローラから出力されるアドレス出力としての前記比較対象データと、を比較する、請求項1に記載の半導体集積回路。
【請求項3】
前記データ保持回路の個数をNとして、前記データ出力のビット数×N≧前記アドレス出力のビット数であり、Nは2以上の整数である、請求項2に記載の半導体集積回路。
【請求項4】
前記バスコントローラは、読み出し/書き込みを指定する制御出力を出力するように構成され、
前記比較回路は、アドレスおよび前記制御出力を示す前記期待値データと、前記バスコントローラから出力されるアドレス出力および前記制御出力としての前記比較対象データと、を比較する、請求項1に記載の半導体集積回路。
【請求項5】
前記データ保持回路の個数をNとして、前記データ出力のビット数×N≧前記アドレス出力のビット数+前記制御出力のビット数である、請求項4に記載の半導体集積回路。
【請求項6】
前記比較回路は、書き込み対象データとしての前記期待値データと、前記周辺回路から読み出したデータとしての前記比較対象データと、を比較する、請求項1に記載の半導体集積回路。
【請求項7】
前記選択回路は、前記入力データおよび前記比較結果に加え、前記データ保持回路により保持された制御データのうち1つを選択して前記バスコントローラに入力させる、請求項1に記載の半導体集積回路。
【請求項8】
車載用ICである、請求項1から請求項7のいずれか1項に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、半導体集積回路に関する。
【背景技術】
【0002】
従来、半導体集積回路には、故障検出機能を有するものがある(例えば特許文献1)。例えば、車載用の機能安全規格であるISO26262では、半導体集積回路において故障が発生した場合に、一定の時間以内かつ一定の確率以上で故障を検出することが必要とされる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2021-50924号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記のような半導体集積回路においては、故障検出率を高くしつつ、回路規模の増大を抑制することが要望されている。
【0005】
上記状況に鑑み、本開示は、故障検出率を高くしつつ、回路規模の増大を抑制することが可能となる半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【0006】
例えば、本開示の一態様に係る半導体集積回路は、
バスコントローラを有するCPUと、
前記バスコントローラから出力されるデータ出力を保持するように構成されるデータ保持回路と、
前記データ保持回路に保持された期待値データと、前記バスコントローラまたは周辺回路から出力される比較対象データと、を比較するように構成される比較回路と、
前記周辺回路から入力される入力データと、前記比較部から出力される比較結果と、のうち1つを選択して前記バスコントローラに入力させるように構成される選択回路と、
を備え、
前記CPUは、ソフトウェアを実行することで故障検出を行うように構成される。
【発明の効果】
【0007】
本開示の例示的な半導体集積回路によれば、故障検出率を高くしつつ、回路規模の増大を抑制することが可能となる。
【図面の簡単な説明】
【0008】
図1図1は、比較例に係る半導体集積回路の構成を示す図である。
図2図2は、第1実施形態に係る半導体集積回路の構成を示す図である。
図3図3は、第2実施形態に係る半導体集積回路の構成を示す図である。
図4図4は、第3実施形態に係る半導体集積回路の構成を示す図である。
図5図5は、第4実施形態に係る半導体集積回路の構成を示す図である。
図6図6は、本開示に係る半導体集積回路を適用するアプリケーションの一構成例を示す図である。
【発明を実施するための形態】
【0009】
以下、本開示の例示的な実施形態について、図面を参照して説明する。
【0010】
<1.比較例>
ここでは、本開示の実施形態について説明する前に、対比するための比較例について説明する。比較例について説明することで、解決すべき課題がより明らかになる。
【0011】
図1は、比較例に係る半導体集積回路10の構成を示す図である。半導体集積回路10は、CPU(Central Processing Unit)1と、周辺回路2と、バス3と、を備える。半導体集積回路10は、例えばマイコンとして構成される。
【0012】
CPU1は、図示しないプログラムメモリに格納されるプログラムを実行することで、各種演算を実行する。すなわち、CPU1は、ソフトウェア処理を行うことができる。CPU1は、バスコントローラ1Aを有する。CPU1は、バスコントローラ1Aを介して周辺回路2に対してデータの書き込み(ライト)あるいは読み出し(リード)を行う。
【0013】
バスコントローラ1Aと周辺回路2の間は、バス3により接続される。周辺回路2は、メモリ、入出力回路(I/O)などである。入出力回路は、半導体集積回路10外部の外部装置に接続される。
【0014】
バス3は、アドレスバス31と、コントロールバス32と、データバス33と、を含む。
【0015】
アドレスバス31は、周辺回路2におけるアドレスを指定するための信号線である。周辺回路2に対する書き込みあるいは読み出しを行うためにアドレスを指定する必要がある。
【0016】
コントロールバス32は、アドレスバスで指定されたアドレスに対して、読み出しを行うのか、書き込みを行うのかを指定するための信号線である。
【0017】
データバス33は、CPU1と周辺回路2との間でデータをやり取りするための信号線である。やり取りされるデータは、演算のための数値、演算結果、あるいは外部装置からの入力信号、外部装置への出力信号などである。
【0018】
バスコントローラ1Aからアドレスバス31を介してアドレス出力があり、バスコントローラ1Aからコントロールバス32を介して書き込みを示す制御出力があった場合、バスコントローラ1Aからデータバス33を介して出力されたデータ出力は、周辺回路2において指定されたアドレスに書き込まれる。
【0019】
バスコントローラ1Aからアドレスバス31を介してアドレス出力があり、バスコントローラ1Aからコントロールバス32を介して読み出しを示す制御出力があった場合、周辺回路2における指定されたアドレスから読み出されたデータは、データ入力としてデータバス33を介してバスコントローラ1Aに入力される。
【0020】
このようなCPU1を有する半導体集積回路10における故障検出方法としては、CPU1がソフトウェアを実行することで故障検出を行う方法がある。しかしながら、ソフトウェアによる故障検出を行うときの課題として、CPU1内部のバスコントローラ1Aの検出率を高くすることが困難であることが挙げられる。
【0021】
バスコントローラ1Aの故障検出を行うときに、アドレスバス31におけるアドレス出力によってアドレスを指定し、データバス33におけるデータ出力により周辺回路2にデータを書き込み、書き込んだデータを読み出して確認することで、バスコントローラ1Aのアドレス出力およびデータ出力に関する故障を検出することが可能である。しかしながら、周辺回路2がメモリである場合、メモリ容量が少なく、メモリにおけるアドレス範囲が指定可能なアドレス範囲の一部である場合がある。この場合、メモリにおけるアドレス範囲以外のアドレスについては読み書きすることができず、アドレス出力およびデータ出力の可観測性が低下する。
【0022】
また、周辺回路2が入出力回路などの場合に、周辺回路2に書き込みはできるが、読み出しができない場合がある。このような場合、データが正常に書き込めたかを確認できないため、アドレス出力およびデータ出力の可観測性が低下する。
【0023】
また、読み出しはできるが書き込みができない周辺回路2の場合、データ入力の可制御性が低下する。
【0024】
このように、アドレス出力およびデータ出力は可制御性は高いが、可観測性が低い。一方、データ入力は可観測性は高いが、可制御性が低い。これにより、ソフトウェアによるバスコントローラ1Aの故障検出率の向上が困難となっている。
【0025】
ここで、バスコントローラ1Aの故障検出率を改善するため、故障検出をハードウェアによって行う方法がある。しかしながら、このような方法では、回路規模の増大につながる。回路規模の増大はコストへ影響するため、回路規模の増大は抑制することが望ましい。
【0026】
<2.第1実施形態>
以下、上記課題を解決すべく実施される本開示に係る実施形態について説明する。本実施形態は、CPUを含む半導体集積回路において、バスコントローラの故障検出をCPUによるソフトウェア実行により行うときに、追加するハードウェアの回路規模をなるべく抑えつつ、故障検出率を高めることを目的とする。
【0027】
図2は、第1実施形態に係る半導体集積回路101の構成を示す図である。半導体集積回路101の比較例(図1)との相違点は、ハードウェアとしてデータ保持回路4、制御回路5、および選択回路6を追加していることである。
【0028】
データ保持回路4は、データバス33におけるデータ出力を保持する回路である。具体的には、データ保持回路4は、期待値のアドレスを示すデータ出力を保持する。制御回路5は、比較回路5Aを有する。比較回路5Aは、データ保持回路4により保持されたデータと、アドレスバス31におけるアドレス出力とを比較する。データ保持回路4がデータ出力を保持するタイミングは、制御回路5により制御される。なお、本実施形態では、データ出力のビット数とアドレス出力のビット数は等しい(例えば16ビットの同一ビット数)。
【0029】
選択回路6には、比較回路5Aの比較結果、データ保持回路4により保持されたデータ、および周辺回路2からのデータが入力可能である。選択回路6は、入力されたデータから1つを選択してデータ入力としてバスコントローラ1Aに入力させる。選択回路6の選択は、制御回路5によって制御される。なお、上記比較結果は、比較回路5Aに入力されるデータが一致するか否かを示すデータである。
【0030】
CPU1のソフトウェア実行によりバスコントローラ1Aの故障検出を行う場合、バスコントローラ1Aからのデータ出力をデータ保持回路4により保持し、保持された期待値としてのアドレスを示すデータと、バスコントローラ1Aからのアドレス出力とを比較回路5Aにより比較する。比較回路5Aによる比較結果が選択回路6により選択され、当該比較結果がデータ入力としてバスコントローラ1Aへ入力される。CPU1は、入力された比較結果に基づいてバスコントローラ1Aに故障が発生しているかを判定できる。これにより、指定可能なアドレス範囲で期待値のアドレスを変更しつつ比較回路5Aにより比較を行うことができ、アドレス出力およびデータ出力の可観測性を向上させることができる。
【0031】
また、CPU1のソフトウェア実行によりバスコントローラ1Aの故障検出を行う場合、バスコントローラ1Aからのデータ出力をデータ保持回路4により保持し、保持されたデータ(制御データ)を選択回路6により選択してデータ入力としてバスコントローラ1Aへ入力させる。CPU1は、データ出力したデータと、データ入力により入力されたデータとを比較することで、バスコントローラ1Aに故障が発生しているかを判定できる。これにより、制御データを変更しつつ故障判定を行うことができ、データ入力の可制御性を向上させることができる。
【0032】
なお、通常動作時には、周辺回路2からのデータが選択回路6により選択されてデータ入力としてバスコントローラ1Aへ入力させる。
【0033】
<3.第2実施形態>
図3は、第2実施形態に係る半導体集積回路102の構成を示す図である。半導体集積回路102の第1実施形態(図2)との相違点は、データ保持回路4を複数設けていることである。
【0034】
データ保持回路4の個数をNとして、データ出力のビット数×N≧アドレス出力のビット数としている。例えば、データ出力のビット数=16ビット、アドレス出力のビット数=64ビットの場合、N=4である。
【0035】
本実施形態であれば、データ出力のビット数とアドレス出力のビット数が異なる場合でも、データ保持回路4のそれぞれがデータ出力を順次保持することで、すべてのデータ保持回路4により保持されたデータを期待値のアドレスとして、アドレス出力と比較回路5Aにより比較することが可能となる。
【0036】
<4.第3実施形態>
図4は、第3実施形態に係る半導体集積回路103の構成を示す図である。半導体集積回路103の第2実施形態(図3)との相違点は、コントロールバス32における制御出力を比較回路5Aに入力させることである。
【0037】
本実施形態では、データ保持回路4は、期待値のアドレスに加えて期待値の制御出力を示すデータ出力を保持する。保持されたデータは、アドレスバス31におけるアドレス出力およびコントロールバス32における制御出力と比較回路5Aにより比較される。
【0038】
データ保持回路4の個数をNとして、データ出力のビット数×N≧アドレス出力のビット数+制御出力のビット数としている。例えば、データ出力のビット数=16ビット、アドレス出力のビット数=48ビット、制御出力のビット数=16ビットの場合、N=4である。なお、ビット数によっては、N=1となる場合もある。
【0039】
このような本実施形態によれば、制御出力の可観測性を向上させることができる。
【0040】
<5.第4実施形態>
図5は、第4実施形態に係る半導体集積回路104の構成を示す図である。半導体集積回路104の第1実施形態(図2)との相違点は、比較回路5Aに周辺回路2からのデータ入力が入力されることである。また、選択回路6には、周辺回路2からのデータ入力および比較回路5Aの比較結果が入力される。
【0041】
本実施形態では、CPU1がソフトウェア実行により故障検出を行う場合に、バスコントローラ1Aは、アドレス出力によりアドレスを指定するとともに制御出力により書き込みを指定し、書き込むデータをデータ出力として周辺回路2に出力する。このとき、データ保持回路4は、データ出力を保持する。そして、バスコントローラ1Aは、アドレス出力によりアドレスを指定するとともに制御出力により読み出しを指定する。これにより、先に書き込まれたデータが周辺回路2から読み出される。読み出されたデータは、比較回路5Aに入力される。比較回路5Aは、データ保持回路4により保持されたデータと、上記で読み出されたデータとを比較する。選択回路6は、比較回路5Aの比較結果を選択してデータ入力としてバスコントローラ1Aに入力させる。
【0042】
このような構成により、ハードウェアの追加を抑制しつつ、周辺回路2の故障検出率を向上させることができる。
【0043】
<6.車載用IC(集積回路)>
図6は、本開示に係る半導体集積回路を適用するアプリケーションの一構成例を示す図である。図6に示す半導体集積回路10Xは、車両に搭載される車載用ICである。
【0044】
半導体集積回路10Xは、CPU1と、入出力回路21,22と、を有する。入出力回路21,22は、周辺回路2の一例である。入出力回路21には、LED(発光ダイオード)ドライバ71、モータドライバ81、およびスイッチモニタ91が接続される。LEDドライバ71は、半導体集積回路10Xからの指令を受けて、LED72の発光駆動を制御する。モータドライバ81は、半導体集積回路10Xからの指令を受けてモータ82の回転駆動を制御する。スイッチモニタ91は、スイッチ92の開閉状態を監視して半導体集積回路10Xに検出結果を通知する。
【0045】
入出力回路22は、任意の車載ネットワーク(LIN[local interconnect network]、CXPI[clock extension peripheral interface]、CAN[controller area network]など)に接続される。
【0046】
先述した各種実施形態の半導体集積回路を車載用ICに適用することで、例えば、車載用の電子部品の安全性要求レベルであるASIL(Automotive Safety Integrity Level)などの基準を満たすようにしつつ、ハードウェアの増加を抑制することができる。
【0047】
<7.その他>
なお、本明細書中に開示されている種々の技術的特徴は、上記実施形態のほか、その技術的創作の主旨を逸脱しない範囲で種々の変更を加えることが可能である。すなわち、上記実施形態は、全ての点で例示であって制限的なものではないと考えられるべきであり、本発明の技術的範囲は、上記実施形態に限定されるものではなく、特許請求の範囲と均等の意味および範囲内に属する全ての変更が含まれると理解されるべきである。
【0048】
<8.付記>
以上のように、本開示の一態様に係る半導体集積回路(101)は、
バスコントローラ(1A)を有するCPU(1)と、
前記バスコントローラから出力されるデータ出力を保持するように構成されるデータ保持回路(4)と、
前記データ保持回路に保持された期待値データと、前記バスコントローラまたは周辺回路(2)から出力される比較対象データと、を比較するように構成される比較回路(5A)と、
前記周辺回路から入力される入力データと、前記比較部から出力される比較結果と、のうち1つを選択して前記バスコントローラに入力させるように構成される選択回路(6)と、
を備え、
前記CPUは、ソフトウェアを実行することで故障検出を行うように構成される(第1の構成)。
【0049】
また、上記第1の構成において、前記比較回路(5A)は、アドレスを示す前記期待値データと、前記バスコントローラから出力されるアドレス出力としての前記比較対象データと、を比較する構成としてもよい(第2の構成)。
【0050】
また、上記第2の構成において、前記データ保持回路(4)の個数をNとして、前記データ出力のビット数×N≧前記アドレス出力のビット数であり、Nは2以上の整数である構成としてもよい(第3の構成)。
【0051】
また、上記第1の構成において、前記バスコントローラ(1A)は、読み出し/書き込みを指定する制御出力を出力するように構成され、
前記比較回路(5A)は、アドレスおよび前記制御出力を示す前記期待値データと、前記バスコントローラから出力されるアドレス出力および前記制御出力としての前記比較対象データと、を比較する構成としてもよい(第4の構成)。
【0052】
また、上記第4の構成において、前記データ保持回路(4)の個数をNとして、前記データ出力のビット数×N≧前記アドレス出力のビット数+前記制御出力のビット数である構成としてもよい(第5の構成)。
【0053】
また、上記第1の構成において、前記比較回路(5A)は、書き込み対象データとしての前記期待値データと、前記周辺回路(2)から読み出したデータとしての前記比較対象データと、を比較する構成としてもよい(第6の構成)。
【0054】
また、上記第1から第6のいずれかの構成において、前記選択回路(6)は、前記入力データおよび前記比較結果に加え、前記データ保持回路(4)により保持された制御データのうち1つを選択して前記バスコントローラ(1A)に入力させる構成としてもよい(第7の構成)。
【0055】
また、上記第1から第7のいずれかの半導体集積回路は、車載用ICであることとしてもよい(第8の構成)。
【産業上の利用可能性】
【0056】
本開示は、例えば、車載用ICなどに利用できる。
【符号の説明】
【0057】
1 CPU
1A バスコントローラ
2 周辺回路
3 バス
4 データ保持回路
5 制御回路
5A 比較回路
6 選択回路
10 半導体集積回路
10X 半導体集積回路
21,22 入出力回路
31 アドレスバス
32 コントロールバス
33 データバス
71 LEDドライバ
72 LED
81 モータドライバ
82 モータ
91 スイッチモニタ
92 スイッチ
101~104 半導体集積回路
図1
図2
図3
図4
図5
図6