説明

半導体集積回路

【課題】半導体集積回路のリセットを行う機構に関して新たな機構を提供する。
【解決手段】内部回路と、前記内部回路とホストコントローラとの間の通信インタフェースとして機能するインタフェース回路と、前記ホストコントローラからリセットコマンドを受信した場合に、前記内部回路および前記インタフェース回路をリセットするためのリセット信号を出力するリセット回路とを備えることを特徴とする半導体集積回路。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体集積回路に関する。
【背景技術】
【0002】
実装基板上では、IC同士がシリアルバスやパラレルバスで接続される。シリアルバスの具体例としては、IIC(Inter-Integrated Circuit)バスやSPI(Serial Peripheral Interface)バスが挙げられる。IICバスは、2線式のシリアルバスとして広く知られており、SPIバスは、3線式又は4線式のシリアルバスとして広く知られている。2線式のIICバスでは一般に、IC同士がクロック線、及びデータ線で接続される。3線式のSPIバスでは一般に、IC同士がクロック線、データ入力線、及びデータ出力線で接続される。4線式のSPIバスでは一般に、IC同士がクロック線、データ入力線、データ出力線、及びストローブ線(制御線)で接続される。
【0003】
ところで、実装基板上のICには、何らかの異常が生じる場合がある。この場合、当該ICのハードリセット又はソフトリセットを行う必要がある。この場合のリセット方法としては、ハードリセットの方がソフトリセットよりも適していると考えられる。理由は、ソフトリセットは、何らかの通信異常が生じた場合に実施できなくなる可能性があるからである。しかし、ハードリセットにも欠点はある。実装基板上には一般にハードリセットが1つしかない、という欠点である。そのため、ハードリセット信号をアサートすると、リセットする必要のないICまでリセットされてしまう。よって、従来とは異なる新たなハードリセットの機構が待望される。
【0004】
なお、特許文献1には、親機が特殊な同期信号を出力し、子機が該同期信号をリセット信号として検出するようなシリアル通信装置が開示されている。また、特許文献2には、子局内のリセット回路から該子局内のメイン回路にリセット信号が出力されるような情報処理装置が開示されている。
【特許文献1】特開平6−21999号公報
【特許文献2】特開平6−338919号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
本発明は、半導体集積回路のリセットを行う機構に関して新たな機構を提供することを課題とする。
【課題を解決するための手段】
【0006】
本発明の実施形態は例えば、内部回路と、前記内部回路とホストコントローラとの間の通信インタフェースとして機能するインタフェース回路と、前記ホストコントローラからリセットコマンドを受信した場合に、前記内部回路および前記インタフェース回路をリセットするためのリセット信号を出力するリセット回路とを備えることを特徴とする半導体集積回路である。
【発明の効果】
【0007】
本発明は、半導体集積回路のリセットを行う機構に関して新たな機構を提供するものである。
【発明を実施するための最良の形態】
【0008】
図1は、本実施例の半導体集積回路101の回路構成図である。図1には、半導体集積回路101と、更なる半導体集積回路(ホストコントローラ)201とが示されている。半導体集積回路101とホストコントローラ201は、図1のように、実装基板301上に実装されており、実装基板301上のバス401によって互いに接続されている。バス401は、シリアルバスでもパラレルバスでも構わない。バス401はここでは、4線式のシリアルバスであり、クロック線401Aと、データ入力線401Bと、データ出力線401Cと、ストローブ線(制御線)401Dとを含んでいる。
【0009】
半導体集積回路101は、内部回路111と、インタフェース回路112と、リセット回路113と、ゲート回路114とを備える。内部回路111は、半導体集積回路101の内部回路である。内部回路111は、記憶回路でも論理回路でもよい。インタフェース回路112は、内部回路111とホストコントローラ201との間の通信インタフェースとして機能する回路である。インタフェース回路112はここでは、バス401A,B,C,Dに接続されており、4線式のシリアルバスの通信インタフェースとして機能する。リセット回路113は、ホストコントローラ201からリセットコマンドを受信した場合に、リセット信号RS1を出力する回路である。リセット信号RS1は、内部回路111及びインタフェース回路112をリセットするためのリセット信号である。リセット回路113はここでは、バス401A,B,Dに接続されている。ゲート回路114は、リセット信号RS1と基板リセット信号RS2とのANDをとり、リセット信号RS1と基板リセット信号RS2とが統合された統合リセット信号RSを出力するAND回路である。基板リセット信号RS2は、実装基板301におけるリセット信号である。図1の半導体集積回路101では、当該統合リセット信号RSが、内部回路111及びインタフェース112に供給される。
【0010】
ここでは、リセット信号RS1及び基板リセット信号RS2は、負論理の信号となっている。そのため、ゲート回路114はAND回路となっている。リセット信号RS1及び基板リセット信号RS2は、正論理の信号でもよい。その場合、ゲート回路114はOR回路となる。ここでは、統合リセット信号RSもまた、負論理の信号となっている。統合リセット信号RSは、正論理の信号でもよい。その場合、ゲート回路114は、リセット信号RS1及び基板リセット信号RS2が負論理の信号であれば、NAND回路となり、リセット信号RS1及び基板リセット信号RS2が正論理の信号であれば、NOR回路となる。なお、図1では、ゲート回路114をリセット回路113の外部の回路としているが、ゲート回路114はリセット回路113の内部の回路としても構わない。
【0011】
インタフェース回路112は、図1のように、シフトレジスタ121と、受信バッファ122とを具備する。シフトレジスタ121は、ホストコントローラ201から受信したデータを格納するためのシフトレジスタである。受信バッファ122は、シフトレジスタ121の値を格納するためのバッファである。
【0012】
リセット回路113は、図1のように、本発明のシフトレジスタの具体例であるシフトレジスタ131と、本発明のバッファの具体例であるコマンドバッファ132と、本発明のデコーダの具体例であるコマンドデコーダ133と、本発明のフィルタの具体例であるフィルタ134とを具備する。シフトレジスタ131は、ホストコントローラ201から受信したデータを格納するためのシフトレジスタである。コマンドバッファ132は、シフトレジスタ131の値を格納するためのバッファである。コマンドデコーダ133は、コマンドバッファ132内の値をデコードして得られた値がリセットコマンドである場合に、リセット信号RS1を出力するデコーダである。フィルタ134は、コマンドデコーダ133から出力されたリセット信号RS1をフィルタリングするフィルタである。リセット回路113は、フィルタ134によってフィルタリングされたリセット信号RS1を出力する。リセット回路113は、コマンドデコーダ133から出力されたリセット信号RS1そのものを出力しても構わない。
【0013】
図2は、フィルタ134の回路構成図である。図2のフィルタ134は、コマンドデコーダ133から出力されたリセット信号RS1をフィルタリングして、当該リセット信号RS1のノイズを低減するフィルタとなっている。図2のフィルタ134は、複数のフリップフロップ141と、論理ゲート142とを備えている。図2のフィルタ134はここでは、3つのフリップフロップ141A,B,Cと、1つの論理ゲート142とを備えている。
【0014】
フリップフロップ141A,B,Cは、互いに直列接続されている。フリップフロップ141Aが、1番目のフリップフロップに相当し、フリップフロップ141Bが、2番目のフリップフロップに相当し、フリップフロップ141Cが、3番目のフリップフロップに相当する。先頭のフリップフロップ141Aには、コマンドデコーダ133から出力されたリセット信号RS1が入力される。後続の他のフリップフロップ141B,Cには、前段のフリップフロップから出力された出力信号が入力される。フリップフロップ141Bには、フリップフロップ141Aから出力された出力信号SAが入力される。フリップフロップ141Cには、フリップフロップ141Bから出力された出力信号SBが入力される。フリップフロップ141Cからは、出力信号SCが出力される。
【0015】
論理ゲート142には、複数のフリップフロップ141A,B,Cそれぞれから出力された複数の出力信号SA,SB,SCが入力される。すなわち、論理ゲート142には、フリップフロップ141Aの出力信号SAと、フリップフロップ141Bの出力信号SBと、フリップフロップ141Cの出力信号SCとが入力される。論理ゲート142はここでは、OR回路である。そのため、論理ゲート142はここでは、出力信号SA,SB,SCのORをとり、出力信号SA,SB,SCのORに相当する出力信号Sを出力する。論理ゲート142は、ゲート回路114と同様の理由で、AND回路、NOR回路、又はNAND回路でも構わない。その場合、論理ゲート142は、出力信号SA,SB,SCのAND、NOR、又はNANDをとり、出力信号SA,SB,SCのAND、NOR、又はNANDに相当する出力信号Sを出力する。
【0016】
フィルタ134は、論理ゲート142から出力された出力信号Sを、フィルタ134によりフィルタリングされたリセット信号RS1として出力する。こうして、ノイズが低減されたリセット信号RS1が出力される。
【0017】
なお、フィルタ134では、第1乃至第Nのフリップフロップ141が互いに直列接続されていてもよい。Nは2以上の整数である。この場合、先頭のフリップフロップ141には、コマンドデコーダ133から出力されたリセット信号RS1が入力される。後続の他のフリップフロップ141には、前段のフリップフロップ141から出力された出力信号が入力される。論理ゲート142には、N個のフリップフロップ141それぞれから出力されたN個の出力信号が入力される。論理ゲート142は、これらの出力信号のOR、AND、NOR、又はNANDをとり、これらの出力信号のOR、AND、NOR、又はNANDに相当する出力信号Sを出力する。
【0018】
図3は、半導体集積回路101の動作例を表すタイミングチャートである。
【0019】
まず、半導体集積回路101をリセットするためのリセットコマンドが、ホストコントローラ201から半導体集積回路101に送信されたと想定する。当該リセットコマンドはここでは、0x0e000000であるとする。当該リセットコマンドは、バス401を介してホストコントローラ201から半導体集積回路101に転送される。バス401はここでは、32ビットのシリアルバスであるとする。
【0020】
リセット回路113は、データ入力線401Bから受信したデータを、シフトレジスタ131に格納する。シフトレジスタ131では、当該データが、クロック線401Aから受信したクロック信号の立ち下がり毎にシフトして行く。当該データの先頭位置は、ストローブ線401Dから受信したストローブ信号で示される。図3Aにはクロック信号の例が、図3Bにはストローブ信号の例が示されている。
【0021】
リセット回路113には、カウンタ135が設けられている。カウンタ135は、クロック信号の立ち下がり毎にカウントアップして行く。図3Cには、カウンタ135のカウントアップの様子が示されている。カウンタ135のカウント数が32になりストローブ信号がデアサートされると、シフトレジスタ131の値がコマンドバッファ132に格納される。
【0022】
コマンドデコーダ133は、コマンドバッファ132内の値をデコードする。コマンドデコーダ133はそして、デコード値が0x0e000000であるか否かを判断する。コマンドデコーダ133は、デコード値が0x0e000000である場合には、リセット信号RS1を出力する。本実施例では、ストローブ信号のデアサート時にデータをコマンドバッファ132に格納することで、送信トランザクションが終了してからリセットがかかるようになっている。この様子は、図3D,E,Fに示されている。図3Fには、リセット信号RS1の例が示されている。
【0023】
コマンドデコーダ133から出力されたリセット信号RS1は、フィルタ134によりフィルタリングされる。リセット回路113は、フィルタ134によってフィルタリングされたリセット信号RS1を出力する。ゲート回路114は、このリセット信号RS1と基板リセット信号RS2とを統合して、統合リセット信号RSを出力する。この統合リセット信号RSが、内部回路111及びインタフェース回路112に配られる。このような構成により、半導体集積回路101は、ホストコントローラ201により半導体集積回路101の異常が認識された場合に、自らにリセットをかける事ができる。半導体集積回路101は、統合リセット信号RSがON(ロー)になった場合、すなわち、リセット信号RS1又は基板リセット信号RS2がON(ロー)になった場合に、リセットされる。
【0024】
なお、バス401は例えば、クロック線とデータ入力線とデータ出力線とを含む3線式のシリアルバスでも構わない。その場合、カウンタ135の動作は、ストローブ信号以外の信号で制御される事になる。
【0025】
以上のように、半導体集積回路101は、ホストコントローラ201からリセットコマンドを受信した場合に、半導体集積回路101をリセットするリセット回路113を具備している。よって、半導体集積回路101は、ホストコントローラ201によって半導体集積回路101の異常が認識された場合に、自らをハードリセットによりリセットする事ができる。また、リセット回路113は、内部回路111及びインタフェース回路112をリセットするためのリセット信号RS1を出力する事で、半導体集積回路101をリセットする事ができる。よって、上記のハードリセットによれば、内部回路111がリセットされると共に、バス401を利用するのに必要なインタフェース回路112がリセットされる。本実施例によれば、このような好適なハードリセットが実現される。
【0026】
このように、本実施例によれば、半導体集積回路101に何らかの異常が生じた場合、半導体集積回路101をソフトリセットによらずハードリセットによりリセットする事ができる。よって、本実施例の半導体集積回路101は、通信エラー等のエラーに強い回路となる。また、本実施例では、リセット回路113がインタフェース回路112とは独立している。よって、本実施例では、インタフェース回路112がハングアップしても確実に、半導体集積回路101をリセットする事ができる。
【図面の簡単な説明】
【0027】
【図1】本実施例の半導体集積回路の回路構成図である。
【図2】図1のフィルタの回路構成図である。
【図3】図1の半導体集積回路の動作例を表すタイミングチャートである。
【符号の説明】
【0028】
101 半導体集積回路
111 内部回路
112 インタフェース回路
113 リセット回路
114 ゲート回路
121 シフトレジスタ
122 受信バッファ
123 カウンタ
131 シフトレジスタ
132 コマンドバッファ
133 コマンドデコーダ
134 フィルタ
135 カウンタ
141 フリップフロップ
142 論理ゲート
201 ホストコントローラ
301 実装基板
401 バス

【特許請求の範囲】
【請求項1】
内部回路と、
前記内部回路とホストコントローラとの間の通信インタフェースとして機能するインタフェース回路と、
前記ホストコントローラからリセットコマンドを受信した場合に、前記内部回路および前記インタフェース回路をリセットするためのリセット信号を出力するリセット回路とを備えることを特徴とする半導体集積回路。
【請求項2】
更に、前記リセット信号と基板リセット信号とのAND、NAND、OR、又はNORをとり、前記リセット信号と前記基板リセット信号とが統合された統合リセット信号を出力するゲート回路を備えることを特徴とする請求項1に記載の半導体集積回路。
【請求項3】
前記統合リセット信号が、前記内部回路および前記インタフェース回路に供給されることを特徴とする請求項2に記載の半導体集積回路。
【請求項4】
前記リセット回路は、
前記ホストコントローラから受信したデータを格納するためのシフトレジスタと、
前記シフトレジスタの値を格納するためのバッファと、
前記バッファ内の値をデコードして得られた値が前記リセットコマンドである場合に、前記リセット信号を出力するデコーダと、
前記デコーダから出力された前記リセット信号をフィルタリングするフィルタとを備えることを特徴とする請求項1乃至3のいずれか1項に記載の半導体集積回路。
【請求項5】
前記フィルタは、
互いに直列接続されており、先頭のフリップフロップには前記デコーダから出力された前記リセット信号が入力され、後続の他のフリップフロップには前段のフリップフロップから出力された出力信号が入力される、複数のフリップフロップと、
前記複数のフリップフロップそれぞれから出力された複数の出力信号のOR、NOR、AND、又はNANDをとる論理ゲートとを備え、
前記論理ゲートから出力された出力信号を、前記フィルタによりフィルタリングされた前記リセット信号として出力することを特徴とする請求項4に記載の半導体集積回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2009−25975(P2009−25975A)
【公開日】平成21年2月5日(2009.2.5)
【国際特許分類】
【出願番号】特願2007−187131(P2007−187131)
【出願日】平成19年7月18日(2007.7.18)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】