(57)【要約】【課題】開発効率の向上を図る。【解決手段】通信インタフェース回路１ａは、レジスタ１１−１〜１１−ｎと、レジスタ設定部１２−１〜１２−ｎとを含む。レジスタ１１−１〜１１−ｎは、回路内部素子の特性を調整するためのデータ値を保持する。レジスタ設定部１２−１〜１２−ｎは、制御信号にもとづいて結線状態を変化させ、第１の結線状態では回路内部素子の特性に応じたデータ値を検出するために、レジスタ１１−１〜１１−ｎへのデータ値の可変入力を行い、第２の結線状態では第１の結線状態で検出されたデータ値を、固定値を用いてレジスタ１１−１〜１１−ｎに設定する。制御回路１ｂは、上記の制御信号を出力する。【選択図】図１
2015106691.tif 000002
【特許請求の範囲】
【請求項１】
回路内部素子の特性を調整するためのデータ値を保持するレジスタと、制御信号にもとづいて結線状態を変化させ、第１の結線状態では前記回路内部素子の特性に応じた前記データ値を検出するために、前記レジスタへの前記データ値の可変入力を行い、第２の結線状態では前記第１の結線状態で検出された前記データ値を、固定値を用いて前記レジスタに設定するレジスタ設定部と、を含む通信インタフェース回路と、
前記制御信号を出力する制御回路と、
を有することを特徴とする半導体装置。
【請求項２】
前記制御回路は、出力信号として、前記レジスタ設定部内のヒューズを切断して前記結線状態を変化させるための前記制御信号と、前記データ値を変化させるためのユーザ設定信号を供給することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記レジスタ設定部は、２入力１出力の第１のセレクタと、２入力１出力の第２のセレクタと、第１のヒューズを含む第１のヒューズ部と、第２のヒューズを含む第２のヒューズ部とを備え、
前記第１のセレクタの第１の入力端子には第１の電位レベルの信号が入力され、前記第１のセレクタの第２の入力端子には前記第１の電位レベルよりも低い第２の電位レベルの信号が入力され、前記第１のセレクタの出力端子は、前記第２のセレクタの第２の入力端子に接続され、
前記第２のセレクタの第１の入力端子には、前記ユーザ設定信号が入力され、前記第２のセレクタの出力信号は前記レジスタに入力され、
前記第１のヒューズ部は、前記第１のヒューズが接続維持の状態にある場合は、前記第１のセレクタのセレクト制御端子に接続された第１の出力ノードを第３の電位レベルに設定し、前記第１のヒューズが切断の状態にある場合は、前記第１の出力ノードを前記第３の電位レベルより高い第４の電位レベルに設定し、
前記第２のヒューズ部は、前記第２のヒューズが接続維持の状態にある場合は、前記第２のセレクタのセレクト制御端子に接続する第２の出力ノードを第５の電位レベルに設定し、前記第２のヒューズが切断の状態にある場合は、前記第２の出力ノードを前記第５の電位レベルより低い第６の電位レベルに設定する、
ことを特徴とする請求項２記載の半導体装置。
【請求項４】
前記第１の結線状態では、
前記制御回路は、前記第１および前記第２のヒューズ部への前記制御信号の供給を停止し、
前記レジスタ設定部において、前記第２のヒューズが接続維持の状態とされ、前記第２の出力ノードが前記第５の電位レベルに設定されることで、前記第２のセレクタが、自己の前記第１の入力端子に入力される前記ユーザ設定信号を選択して、前記ユーザ設定信号を前記レジスタに入力する、
ことを特徴とする請求項３記載の半導体装置。
【請求項５】
前記第２の結線状態で前記レジスタに１を設定する場合、
前記制御回路は、前記第１および前記第２のヒューズを切断するための前記制御信号を前記レジスタ設定部に供給し、
前記レジスタ設定部において、前記第１の出力ノードが前記第４の電位レベルに設定されることで、前記第１のセレクタが、自己の前記第１の入力端子に入力される前記第１の電位レベルの信号を選択して出力し、前記第２の出力ノードが前記第６の電位レベルに設定されることで、前記第２のセレクタが、自己の前記第２の入力端子に入力される前記第１の電位レベルの信号を選択して前記レジスタに入力する、
ことを特徴とする請求項３記載の半導体装置。
【請求項６】
前記第２の結線状態で前記レジスタに０を設定する場合、
前記制御回路は、前記第１のヒューズの接続を維持し、前記第２のヒューズを切断するための前記制御信号を前記レジスタ設定部に供給し、
前記レジスタ設定部において、前記第１の出力ノードが前記第３の電位レベルに設定されることで、前記第１のセレクタが、自己の前記第２の入力端子に入力される前記第２の電位レベルの信号を選択して出力し、前記第２の出力ノードが前記第６の電位レベルに設定されることで、前記第２のセレクタが、自己の前記第２の入力端子に入力される前記第２の電位レベルの信号を選択して前記レジスタに入力する、
ことを特徴とする請求項３記載の半導体装置。
【請求項７】
前記レジスタは、データ入力端子、セット端子およびリセット端子を有し、
前記レジスタ設定部は、インバータと、ヒューズを含むヒューズ部とを備え、
前記データ入力端子には、前記ユーザ設定信号が入力され、
前記セット端子には、前記インバータの出力端が接続され、
前記ヒューズ部は、前記ヒューズが接続維持の状態にある場合は、前記リセット端子と、前記インバータの入力端とに接続する出力ノードを第１の電位レベルに設定し、前記ヒューズが切断の状態にある場合は、前記出力ノードを前記第１の電位レベルよりも高い第２の電位レベルに設定する、
ことを特徴とする請求項２記載の半導体装置。
【請求項８】
前記第１の結線状態および前記第２の結線状態では、前記レジスタ設定部は、前記ユーザ設定信号の電位レベルに応じて前記レジスタの前記データ入力端子に前記データ値を可変入力する、
ことを特徴とする請求項７記載の半導体装置。
【請求項９】
前記第２の結線状態で前記レジスタに１を設定する場合は、
前記制御回路は、前記ヒューズの接続を維持するための前記制御信号を前記レジスタ設定部に供給し、
前記レジスタ設定部は、前記出力ノードが前記第１の電位レベルに設定されることで、前記リセット端子に前記第１の電位レベルの信号を入力し、前記セット端子に前記第１の電位レベルよりも高い第３の電位レベルを入力する、
ことを特徴とする請求項８記載の半導体装置。
【請求項１０】
前記第２の結線状態で前記レジスタに０を設定する場合は、
前記制御回路は、前記ヒューズを切断するための前記制御信号を前記レジスタ設定部に供給し、
前記レジスタ設定部は、前記出力ノードが前記第２の電位レベルに設定されることで、前記リセット端子に前記第２の電位レベルの信号を入力し、前記セット端子に前記第２の電位レベルより低い第４の電位レベルの信号を入力する、
ことを特徴とする請求項８記載の半導体装置。
【請求項１１】
回路内部素子の特性を調整するためのデータ値を保持するレジスタと、
制御信号にもとづいて結線状態を変化させ、第１の結線状態では前記回路内部素子の特性に応じた前記データ値を検出するために、前記レジスタへの前記データ値の可変入力を行い、第２の結線状態では前記第１の結線状態で検出された前記データ値を、固定値を用いて前記レジスタに設定するレジスタ設定部と、
を有することを特徴とする通信インタフェース回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、半導体装置および通信インタフェース回路に関する。
【背景技術】
【０００２】
光通信ネットワーク向けのサーバなどに使用される高速ＩＯ（Input／Output）回路は、サーバを構成するプロセッサ間やサーバ間でデータ伝送を行うための通信インタフェース回路である。
【０００３】
このような用途のＩＯ回路では、正常な高速伝送を実現するため、回路素子のバラつきや、システム環境などに合わせて、ＩＯ回路内部の各素子の電気的特性の調整が行われる。
【０００４】
従来技術として、レジスタ出力がプログラマブルマルチプレクサに接続し、該マルチプレクサからの出力信号が、ヒューズの状態により決定されるプログラマブルセルアレイが提案されている。
【０００５】
また、制御ユニットが制御信号を電気ヒューズ・アレイに与えて、データをＰＬＬ回路に与え、ＰＬＬ回路が特定の特性の組により動作するように制御する技術が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平５−２１８１９９号公報
【特許文献２】特開２００７−１１０７１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＩＯ回路は、内部に制御用の記憶素子であるレジスタ（Register）を有しており、レジスタに所定のデータ値が設定されることで、回路内部素子の電気的特性が調整される。レジスタへのデータ値の設定はソフトウェアで行われることも考えられるが、レジスタ数の増加に伴い設定時間が長くなってしまうため、ハードウェアで設定することが考えられる。
【０００８】
しかし、当初設定した初期データ値が最適でなかった場合は、マスクの改版や再作成などハードウェアを変更してデータ値の設定をやり直すことになり、開発効率の低下を引き起こす。
【課題を解決するための手段】
【０００９】
発明の一観点によれば、回路内部素子の特性を調整するためのデータ値を保持するレジスタと、制御信号にもとづいて結線状態を変化させ、第１の結線状態では前記回路内部素子の特性に応じた前記データ値を検出するために、前記レジスタへの前記データ値の可変入力を行い、第２の結線状態では前記第１の結線状態で検出された前記データ値を、固定値を用いて前記レジスタに設定するレジスタ設定部と、を含む通信インタフェース回路と、前記制御信号を出力する制御回路と、を備えた半導体装置が提供される。
【発明の効果】
【００１０】
開示の半導体装置及び通信インタフェース回路によれば、開発効率の向上を図ることが可能になる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態の半導体装置の一例を示す図である。
【図２】ハードウェア変更の一例を示す図である。
【図３】第２の実施の形態の半導体装置の一例を示す図である。
【図４】測定モードにおける結線状態を示す図である。
【図５】設定モードにおける結線状態を示す図である。
【図６】第３の実施の形態の半導体装置の一例を示す図である。
【図７】設定モードにおける結線状態を示す図である。
【図８】半導体装置全体の構成例を示す図である。
【図９】ＳＯＣ開発の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面を参照して説明する。
（第１の実施の形態）
図１は第１の実施の形態の半導体装置の一例を示す図である。半導体装置１は、通信インタフェース回路１ａと制御回路１ｂを備える。通信インタフェース回路１ａは、レジスタ１１−１〜１１−ｎと、レジスタ設定部１２−１〜１２−ｎとを含む。
【００１３】
レジスタ１１−１〜１１−ｎは、設定されるデータ値によって、通信インタフェース回路１ａ内に配置される電子回路素子（図示せず）の特性を調整するための記憶素子である。レジスタ設定部１２−１〜１２−ｎは、制御回路１ｂにより与えられる制御信号にもとづいて自己の結線状態を変化させる。
【００１４】
前述したように、ＩＯ回路では、正常な高速伝送を実現するため、回路素子のバラつきや、システム環境などに合わせて、ＩＯ回路内部の各素子の特性の調整が行われる。
レジスタ設定部１２−１〜１２−ｎは、特性の調整の際、まず第１の結線状態となっている。レジスタ設定部１２−１〜１２−ｎは、第１の結線状態になると、変更する電子回路素子の特性に応じたデータ値を検出するために、レジスタ１１−１〜１１−ｎへのデータ値の可変入力を行う。
【００１５】
また、レジスタ設定部１２−１〜１２−ｎは、制御信号にもとづいて第２の結線状態になると、第１の結線状態で検出されたデータ値（最適値）を、固定値（例えば、電源電位あるいはＧＮＤ（接地）電位）を用いてレジスタ１１−１〜１１−ｎに設定する。制御回路１ｂは、制御信号を出力する。
【００１６】
以下の説明では、レジスタ設定部１２−１〜１２−ｎを第１の結線状態にして、最適値を検出する状態を測定モードと呼び、固定値を用いて最適値をレジスタ１１−１〜１１−ｎに設定する状態を設定モードと呼ぶ。
【００１７】
ここで例えば、半導体装置１において、測定モードでは、レジスタ設定部１２−１は、第１の結線状態になり、レジスタ１１−１に対するデータ値を０または１に可変して入力する。
【００１８】
そして、例えば、制御回路１ｂにより、電子回路の特性に応じたレジスタ１１−１に設定すべきデータ値の最適値が０と認識された場合には、制御信号によりレジスタ設定部１２−１は、第２の結線状態になる。これにより、測定モードから設定モードに遷移して、レジスタ１１−１に、例えば、ＧＮＤ電位を用いて、データ値０を設定する。
【００１９】
このように、半導体装置１では、レジスタに設定すべきデータ値を検出するための測定モードと、測定値を設定する設定モードとを、結線状態を変えて制御する。
従来では、設定したデータ値が最適値でなかった場合、電子回路の特性最適化のために、マスク改版などにより、データ値の設定をやり直すことになる。これに対して、本技術では、測定モードで最適値をあらかじめ検出する状態と、検出した最適値を初期値として設定する状態を、制御信号により結線状態を変えて制御する。これにより、電子回路の特性最適化のために、マスク改版などが不要になり、開発効率を向上させることが可能になる。
【００２０】
以下、第２の実施の形態の半導体装置を説明する前に、解決したい課題の例について具体的に説明しておく。ＩＯ回路のレジスタに入力値を設定する場合、ソフトウェアで設定する方法と、ハードウェアで設定する方法とがある。しかし、いずれの場合も、上述したように、データ値を可変させてどのような値がデータ値として最適であるかという測定をあらかじめ行える機能を有していない。
【００２１】
このため、ソフトウェア設定を用いてレジスタにデータ値を設定する際、例えば、システムの環境変化や使用状況によって最適値が変わるなどの理由により、設定したデータ値が最適値でなかった場合、ソフトウェアで再度設定し直すことになる。
【００２２】
しかし、昨今の高速ＩＯ回路は、レジスタ数が膨大なため、レジスタへデータ値を設定する際に要する時間が、システム設計上無視できないほど長くなる場合がある。さらに、デバイスの出荷試験時にも同様な設定を行うので、出荷試験時間が長くなり、デバイス製造のコストを押し上げる要因にもなる。
【００２３】
一方、ハードウェア設定でレジスタにデータ値を設定する際、設定したデータ値が最適値でない場合は、デバイスのハードウェア自体を変更することになる。
図２はハードウェア変更の一例を示す図である。
【００２４】
ＩＯ回路１００−１は、レジスタ＃１〜＃ｎを有している。図２の例では、ＩＯ回路１００−１のレジスタのデータ値設定として、例えば、レジスタ＃１の入力が電源に設定され、レジスタ＃２の入力がＧＮＤに設定され、レジスタ＃ｎの入力が電源に設定されている。これによりレジスタ＃１、＃２、＃ｎそれぞれに、データ値１、０、１が設定されている。
【００２５】
その後、データ値の変更が生じて、ＩＯ回路１００−２のように、レジスタ＃１の入力をＧＮＤ、レジスタ＃２の入力を電源、レジスタ＃ｎの入力をＧＮＤにして、データ値０、１、０を設定するとする。この場合、ＩＯ回路１００−１に対してMetalの再入を行って（配線パターンを引き直して）、ＩＯ回路１００−２を生成することになる。
【００２６】
このように、ハードウェアでレジスタのデータ値を固定して設定する場合、ＥＳ（Engineering Sample）評価後にレジスタのデータ値を顧客の使用状況にあった最適値に変更するためには、マスク改版とデバイスの再作成をすることになり、開発時間とコストが増大してしまう。
【００２７】
本技術はこのような点に鑑みてなされたものであり、レジスタのデータ値の最適値を柔軟に検出してレジスタ設定を行うことで、マスク改版などを不要とし、開発効率の向上を図った半導体装置および通信インタフェース回路を提供するものである。
【００２８】
次に第２の実施の形態の半導体装置を説明する。
（第２の実施の形態）
図３は第２の実施の形態の半導体装置の一例を示す図である。第２の実施の形態の半導体装置２−１は、ＩＯ回路２０ａと、ユーザ設定制御部２０ｂと、ヒューズ接続制御部２０ｃとを備える。
【００２９】
ＩＯ回路２０ａは、図１の通信インタフェース回路１ａの機能を有している。また、ユーザ設定制御部２０ｂとヒューズ接続制御部２０ｃは、図１の制御回路１ｂの機能を有している。
【００３０】
なお、ユーザ設定制御部２０ｂまたはヒューズ接続制御部２０ｃは、半導体装置２−１の外部に設けてもよい。また、ユーザ設定制御部２０ｂまたはヒューズ接続制御部２０ｃが外部端末に接続して、外部端末からの指示を通じて設定制御できるようにしてもよい。
【００３１】
ＩＯ回路２０ａは、ｎ個のレジスタ＃１〜＃ｎと、レジスタ＃１〜＃ｎそれぞれに対応して配置されるレジスタ設定部２０−１〜２０−ｎを含む。レジスタ設定部２０−１は、レジスタ＃１へのデータ値設定を行い、同様にして、レジスタ設定部２０−ｎは、レジスタ＃ｎへのデータ値設定を行う。なお、以降では、レジスタ＃１、＃ｎへのデータ値設定に関する構成および動作について説明する。
【００３２】
レジスタ設定部２０−１は、セレクタＳＬ１、ＳＬ２と、ヒューズ部２１、２２とを含む。ヒューズ部２１は、負荷ｚ１とヒューズｆ１を含む。ヒューズｆ１の一端は、負荷ｚ１を介して電源と、セレクタＳＬ１のセレクト制御端子と接続する。ヒューズｆ１の他端は、ＧＮＤに接続する。
【００３３】
ヒューズ部２２は、負荷ｚ２とヒューズｆ２を含む。ヒューズｆ２の一端は、電源と接続する。ヒューズｆ２の他端は、負荷ｚ２を介してＧＮＤと、セレクタＳＬ２のセレクト制御端子と接続する。
【００３４】
また、セレクタＳＬ１の端子（１）は、電源に接続し、端子（０）は、ＧＮＤに接続する。セレクタＳＬ２の端子（１）は、ユーザ設定制御部２０ｂと接続し、端子（０）は、セレクタＳＬ１の出力端と接続する。セレクタＳＬ２の出力端は、レジスタ＃１の入力端と接続する。
【００３５】
なお、ヒューズｆ１が接続維持の場合は、セレクタＳＬ１のセレクト制御端子に接続する出力ノードｐ１の電位レベルはＬ（Low）レベルとなり、ヒューズｆ１が切断すると出力ノードｐ１の電位レベルはＨ（High）レベルとなる。
【００３６】
また、ヒューズｆ２が接続維持の場合は、セレクタＳＬ２のセレクト制御端子に接続する出力ノードｐ２の電位レベルはＨレベルとなり、ヒューズｆ２が切断すると出力ノードｐ２の電位レベルはＬレベルとなる。
【００３７】
同様に、レジスタ設定部２０−ｎは、セレクタＳＬ３、ＳＬ４と、ヒューズ部２３、２４とを含む。ヒューズ部２３は、負荷ｚ３とヒューズｆ３を含む。ヒューズｆ３の一端は、負荷ｚ３を介して電源と、セレクタＳＬ３のセレクト制御端子と接続する。ヒューズｆ３の他端は、ＧＮＤに接続する。
【００３８】
ヒューズ部２４は、負荷ｚ４とヒューズｆ４を含む。ヒューズｆ４の一端は、電源と接続する。ヒューズｆ４の他端は、負荷ｚ４を介してＧＮＤと、セレクタＳＬ４のセレクト制御端子と接続する。
【００３９】
また、セレクタＳＬ３の端子（１）は、電源に接続し、端子（０）は、ＧＮＤに接続する。セレクタＳＬ４の端子（１）は、ユーザ設定制御部２０ｂと接続し、端子（０）は、セレクタＳＬ３の出力端と接続する。セレクタＳＬ４の出力端は、レジスタ＃ｎの入力端と接続する。
【００４０】
なお、ヒューズｆ３が接続維持の場合は、セレクタＳＬ３のセレクト制御端子に接続する出力ノードｐ３の電位レベルはＬレベルとなり、ヒューズｆ３が切断すると出力ノードｐ３の電位レベルは、Ｈレベルとなる。
【００４１】
また、ヒューズｆ４が接続維持の場合は、セレクタＳＬ４のセレクト制御端子に接続する出力ノードｐ４の電位レベルはＨレベルとなり、ヒューズｆ４が切断すると出力ノードｐ４の電位レベルはＬレベルとなる。
【００４２】
レジスタ設定部２０−１〜２０−ｎを上記のような構成にすることにより、結線状態を変えて、測定モードと設定モードとを柔軟に切り分けることが可能になる。なお、ヒューズｆ１〜ｆ４は、不揮発性メモリを使用することができる。
【００４３】
ユーザ設定制御部２０ｂは、測定モード時に、ユーザ設定信号ｄ１、ｄ２を出力する。ユーザ設定信号ｄ１、ｄ２は、ＨまたはＬいずれかのレベル信号であり、ユーザから任意のレベルを設定可能である。
【００４４】
ヒューズ接続制御部２０ｃは、ヒューズｆ１〜ｆ４の接続／切断状態を制御する。ヒューズｆ１〜ｆ４を切断状態にするときにはヒューズｆ１〜ｆ４に対応する切断信号ｃ１〜ｃ４をそれぞれ出力し、切断せずに接続状態に維持しておく場合は、該当の切断信号ｃ１〜ｃ４の出力をそれぞれ停止する。切断信号ｃ１〜ｃ４は、例えば、レーザ信号または電流信号である。
【００４５】
このように、半導体装置２−１では、レジスタ設定部内のヒューズを切断して結線状態を変化させるための制御信号（接続／切断信号）と、データ値として最適なレベルを設定するためのレベル可変なユーザ設定信号との出力機能を有する。これにより、レジスタ設定部の結線状態の変更およびデータ値のレベル変更を柔軟に行うことができる。
【００４６】
ここで、半導体装置２−１において、レジスタ＃１のデータ値を設定する場合、まず、測定モードにより、レジスタ＃１のデータ値の最適値検出を行う。
図４は測定モードにおける結線状態を示す図である。レジスタ＃１のデータ値をＬまたはＨのどちらが最適かを決定する測定モードでは、ヒューズ接続制御部２０ｃは、切断信号ｃ２の出力を停止する（設定モード時の結線制御に備えて、切断信号ｃ１も出力を停止する）。
【００４７】
すると、ヒューズｆ２は、接続状態が維持されるので、セレクタＳＬ２のセレクト制御端子に入力するセレクト信号ｓ２は、Ｈレベルとなって、セレクタＳＬ２の端子（１）に入力されるユーザ設定信号ｄ１が出力として選択される。
【００４８】
したがって、ユーザ設定制御部２０ｂから出力されるユーザ設定信号ｄ１のレベルが、レジスタ＃１に設定されるデータ値となる。ユーザ設定信号ｄ１のレベルは、ユーザ設定により、ＨレベルまたはＬレベルを任意に可変設定できるから、このような測定モードにおいて、レジスタ＃１に関する最適値を決定することが可能になる。
【００４９】
同様に、レジスタ＃ｎのデータ値を設定する場合、まず、測定モードにより、レジスタ＃ｎのデータ値の最適値検出を行う。レジスタ＃ｎのデータ値をＬまたはＨのどちらが最適かを決定する測定モードでは、ヒューズ接続制御部２０ｃは、切断信号ｃ４の出力を停止する（設定モード時の結線制御に備えて、切断信号ｃ３も出力を停止する）。
【００５０】
すると、ヒューズｆ４は、接続状態が維持されるので、セレクタＳＬ４のセレクト制御端子に入力するセレクト信号ｓ４は、Ｈレベルとなって、セレクタＳＬ４の端子（１）に入力されるユーザ設定信号ｄ２が出力として選択される。
【００５１】
したがって、ユーザ設定制御部２０ｂから出力されるユーザ設定信号ｄ２のレベルが、レジスタ＃ｎに設定されるデータ値となる。ユーザ設定信号ｄ２のレベルは、ユーザ設定により、ＨレベルまたはＬレベルを任意に可変設定できるから、このような測定モードにおいて、レジスタ＃ｎに関する最適値を決定することが可能になる。
【００５２】
測定モードで最適値が検出されると、次の設定モードにおいて、最適値をレジスタデータ値として実際に設定することになる。
図５は設定モードにおける結線状態を示す図である。レジスタ＃１において、データ値の最適値が１（Ｈレベル）であったとする。
【００５３】
この場合のレジスタ＃１の設定モードでは、ヒューズ接続制御部２０ｃは、切断信号ｃ１、ｃ２を共に出力する。切断信号ｃ１が出力されると、ヒューズｆ１が切断するので、セレクタＳＬ１のセレクト制御端子に入力するセレクト信号ｓ１は、Ｈレベルとなる。よって、セレクタＳＬ１の端子（１）に入力される電源のＨレベルが、セレクタＳＬ１の出力として選択される。
【００５４】
また、切断信号ｃ２が出力されると、ヒューズｆ２は切断されるので、セレクタＳＬ２のセレクト制御端子に入力するセレクト信号ｓ２は、Ｌレベルとなる。よって、セレクタＳＬ２の端子（０）に入力されるセレクタＳＬ１の出力、すなわち電源のＨレベルが出力として選択される。したがって、レジスタ＃１のデータ値に１（電源のＨレベル）が固定的に設定されることになる。
【００５５】
一方、レジスタ＃ｎにおいて、データ値の最適値が０（Ｌレベル）であったとする。この場合のレジスタ＃ｎの設定モードでは、ヒューズ接続制御部２０ｃは、切断信号ｃ３の出力を停止し、切断信号ｃ４を出力する。
【００５６】
切断信号ｃ３の出力が停止すると、ヒューズｆ３の接続状態が維持されるので、セレクタＳＬ３のセレクト制御端子に入力するセレクト信号ｓ３は、Ｌレベルとなる。よって、セレクタＳＬ３の端子（０）に入力されるＧＮＤによるＬレベルが、セレクタＳＬ３の出力として選択される。
【００５７】
また、切断信号ｃ４が出力されると、ヒューズｆ４は切断されるので、セレクタＳＬ４のセレクト制御端子に入力するセレクト信号ｓ４は、Ｌレベルとなる。よって、セレクタＳＬ４の端子（０）に入力されるセレクタＳＬ３の出力、すなわちＧＮＤのＬレベルが出力として選択される。したがって、レジスタ＃ｎのデータ値に０（ＧＮＤのＬレベル）が固定的に設定されることになる。
【００５８】
上記のように、第２の実施の形態では、セレクタおよびヒューズを有するレジスタ設定部を、レジスタを含むＩＯ回路に搭載して、レジスタへのアクセスをユーザ設定、電源固定またはＧＮＤ固定に切り替えられる構成にする。
【００５９】
そして、セレクタのセレクト信号の制御には、ヒューズを使用し、ヒューズを切断する前は、測定モードにおいて、ユーザ設定でレジスタデータ値を可変設定できるようにする。また、測定モードでデータ値の最適値を見つけ、データ値を固定することになったら、設定モードにおいて、適切なヒューズを切断して、電源レベルまたはＧＮＤレベルを最適値として固定的に設定する。
【００６０】
これにより、レジスタへの入力値を可変させて、どのような値がデータ値として最適であるかという測定を行った後に設定することが可能になる。このため、レジスタデータ値を設定した後で、マスク改版などで最適値を再設定するなどの作業は不要となるので、開発効率が向上し、開発時間を短縮化することが可能になる。
【００６１】
次に第３の実施の形態の半導体装置について説明する。
（第３の実施の形態）
図６は第３の実施の形態の半導体装置の一例を示す図である。第３の実施の形態の半導体装置２−２は、ＩＯ回路３０ａと、ユーザ設定制御部３０ｂと、ヒューズ接続制御部３０ｃとを備える。
【００６２】
ＩＯ回路３０ａは、図１の通信インタフェース回路１ａの機能を有する。また、ユーザ設定制御部３０ｂとヒューズ接続制御部３０ｃそれぞれの機能は、図１の制御回路１ｂの機能に含まれる。
【００６３】
なお、ユーザ設定制御部３０ｂまたはヒューズ接続制御部３０ｃは、半導体装置２−２の外部に位置する構成にすることも可能である。また、ユーザ設定制御部３０ｂまたはヒューズ接続制御部３０ｃが外部端末に接続して、外部端末からの指示を通じて設定制御できる構成にすることも可能である。
【００６４】
ＩＯ回路３０ａは、ｎ個のレジスタｒ１〜ｒｎと、レジスタｒ１〜ｒｎそれぞれに対応して配置されるレジスタ設定部３０−１〜３０−ｎを含む。レジスタ設定部３０−１は、レジスタｒ１へのデータ値設定を行い、同様に、レジスタ設定部３０−ｎは、レジスタｒｎへのデータ値設定を行う。
【００６５】
レジスタｒ１〜ｒｎそれぞれは、入力端子に、データ入力端子（Ｄ）、セット端子（Ｓｅｔ）およびリセット端子（Ｒｅｓｅｔ）を有している。
論理値として、データ入力端子のレベル、セット端子のレベル、リセット端子のレベルの組み合わせを（Ｄ、Ｓ、Ｒ）と記載すれば、（Ｄ、Ｓ、Ｒ）＝（ハイインピーダンス、Ｌ、Ｈ）のときは、レジスタに設定されるデータ値は０である。
【００６６】
また、（Ｄ、Ｓ、Ｒ）＝（ハイインピーダンス、Ｈ、Ｌ）のときは、レジスタに設定されるデータ値は１である。
さらに、（Ｄ、Ｓ、Ｒ）＝（Ｈ、Don't care、Don't care）のときは、レジスタに設定されるデータ値は１であり、（Ｄ、Ｓ、Ｒ）＝（Ｌ、Don't care、Don't care）のときは、レジスタに設定されるデータ値は０である（Don't careは、ＨでもＬでもどちらでもよい不定状態を表す）。なお、以降では、レジスタｒ１、ｒｎへのデータ値設定に関する構成および動作について説明する。
【００６７】
レジスタ設定部３０−１は、インバータ３１、ヒューズ部３２を含む。ヒューズ部３２は、負荷ｚ５とヒューズｆ５を含む。ヒューズｆ５の一端は、負荷ｚ５を介して電源と、インバータ３１の入力端と、レジスタｒ１のリセット端子と接続する。ヒューズｆ５の他端は、ＧＮＤに接続する。また、インバータ３１の出力端は、レジスタｒ１のセット端子に接続し、レジスタｒ１のデータ入力端子は、レジスタ設定部３０−１を介して、ユーザ設定制御部３０ｂと接続して、ユーザ設定信号ｄ１が入力する。
【００６８】
なお、ヒューズｆ５が接続維持の場合は、リセット端子とインバータ３１の入力端とに接続する出力ノードｐ５がＬレベルとなり、ヒューズｆ５が切断すると出力ノードｐ５は、Ｈレベルとなる。
【００６９】
同様に、レジスタ設定部３０−ｎは、インバータ３３、ヒューズ部３４を含む。ヒューズ部３４は、負荷ｚ６とヒューズｆ６を含む。ヒューズｆ６の一端は、負荷ｚ６を介して電源と、インバータ３３の入力端と、レジスタｒｎのリセット端子と接続する。ヒューズｆ６の他端は、ＧＮＤに接続する。また、インバータ３３の出力端は、レジスタｒｎのセット端子に接続し、レジスタｒｎのデータ入力端子は、レジスタ設定部３０−ｎを介して、ユーザ設定制御部３０ｂと接続して、ユーザ設定信号ｄ２が入力する。
【００７０】
なお、ヒューズｆ６が接続維持の場合は、リセット端子とインバータ３３の入力端とに接続する出力ノードｐ６がＬレベルとなり、ヒューズｆ６が切断すると出力ノードｐ６は、Ｈレベルとなる。
【００７１】
レジスタ設定部３０−１〜３０−ｎを上記のような構成にすることにより、結線状態を変えて、測定モードと設定モードとを柔軟に切り分けることが可能になる。なお、ヒューズｆ５、ｆ６は、不揮発性メモリを使用することができる。
【００７２】
ユーザ設定制御部３０ｂは、ユーザ設定信号ｄ１、ｄ２を出力する。ユーザ設定信号ｄ１、ｄ２は、ＨまたはＬいずれかのレベル信号であり、ユーザから任意のレベルを設定可能である。
【００７３】
ヒューズ接続制御部３０ｃは、ヒューズｆ５、ｆ６の接続／切断状態を制御する。ヒューズｆ５、ｆ６を切断状態にするときにはヒューズｆ５、ｆ６に対応する切断信号ｃ１、ｃ２をそれぞれ出力し、切断せずに接続状態に維持しておく場合は、該当の切断信号ｃ１、ｃ２の出力をそれぞれ停止する。切断信号ｃ１、ｃ２は、例えば、レーザ信号または電流信号である。
【００７４】
このように、半導体装置２−２では、レジスタ設定部内のヒューズを切断して結線状態を変化させるための制御信号（接続／切断信号）と、データ値として最適なレベルを設定するためのレベル可変なユーザ設定信号との出力機能を有する。これにより、レジスタ設定部の結線状態の変更およびデータ値のレベル変更を柔軟に行うことができる。
【００７５】
ここで、半導体装置２−２において、レジスタｒ１にデータ値を設定する場合、まず、測定モードにより、データ値の最適値の検出を行う。レジスタｒ１のデータ値を１または０のどちらが最適かを決定する測定モードでは、ユーザ設定制御部３０ｂが１または０のユーザ設定信号を出力する。
【００７６】
レジスタ設定部３０−１は、レジスタｒ１のデータ値に１を設定する場合は、Ｈレベルのユーザ設定信号ｄ１を受信して、スルーでレジスタｒ１のデータ入力端子へ出力する。また、レジスタ設定部３０−１は、レジスタｒ１のデータ値に０を設定する場合は、Ｌレベルのユーザ設定信号ｄ１を受信して、スルーでレジスタｒ１のデータ入力端子へ出力する。このとき、ヒューズ接続制御部３０ｃは、切断信号ｃ１の出力を停止しておく。レジスタｒｎについても同様である。
【００７７】
測定モードで最適値が検出されると、次の設定モードにおいて、最適値をレジスタデータ値として実際に設定することになる。
図７は設定モードにおける結線状態を示す図である。レジスタｒ１にデータ値１を設定する際は、上記の論理値により、セット端子をＨ、リセット端子をＬに設定することになる。このとき、ヒューズ接続制御部３０ｃは、切断信号ｃ１の出力を停止する。
【００７８】
すると、ヒューズｆ５は、接続状態が維持されるので、レジスタｒ１のリセット端子と、インバータ３１の入力はＬレベルになる。よって、インバータ３１の出力端とつながるセット端子はＨレベルとなる。これにより、レジスタｒ１にはデータ値１が設定される。
【００７９】
また、レジスタｒｎにデータ値０を設定する際は、上記の論理値により、セット端子をＬ、リセット端子をＨに設定する。このとき、ヒューズ接続制御部３０ｃは、切断信号ｃ２を出力する。
【００８０】
すると、ヒューズｆ６は、切断するので、レジスタｒｎのリセット端子と、インバータ３３の入力はＨレベルになる。よって、インバータ３３の出力端とつながるセット端子はＬレベルとなる。これにより、レジスタｒｎにデータ値０が設定される。
【００８１】
上記のようにして、レジスタｒ１、ｒｎに最適なデータ値を設定することが可能になる。なお、第３の実施の形態の場合は、最適値の設定後、レジスタ設定の変更が生じた場合でも、データ値の変更が可能である。
【００８２】
例えば、レジスタｒ１に設定されているデータ値１を０に変更する場合は、ユーザ設定制御部３０ｂは、Ｌレベルのユーザ設定信号ｄ１を出力すれば、レジスタ設定部３０−１がスルーで、レジスタｒ１のデータ入力端子へ出力する。これにより、上記の論理値にしたがい、ヒューズｆ５は接続したままで、レジスタｒ１にはデータ値０が設定される。
【００８３】
また、同様に、レジスタｒｎに設定されているデータ値０を１に変更する場合は、ユーザ設定制御部３０ｂは、Ｈレベルのユーザ設定信号ｄ２を出力すれば、レジスタ設定部３０−ｎがスルーで、レジスタｒｎのデータ入力端子へ出力する。これにより、上記の論理値にしたがい、ヒューズｆ６は切断したままで、レジスタｒｎにはデータ値１が設定される。
【００８４】
上記のように、第３の実施の形態では、Ｓｅｔ／Ｒｅｓｅｔ付きのレジスタを用い、セット端子とリセット端子のレベルを変化するヒューズの設定によりデータ値を変えることができる。また、一度データ値を設定した後も、マスク改版などを行わずに、ユーザ設定でレジスタ設定値を柔軟に変更することが可能である。
【００８５】
次に半導体装置全体の構成例について説明する。
（半導体装置全体の構成例）
図８は半導体装置全体の構成例を示す図である。半導体装置４は、ＩＯ回路群４−１〜４−４と、ユーザ論理制御回路（User Logic Circuit）４０とを備える。
【００８６】
ＩＯ回路群４−１〜４−４は、主に、インタフェース処理速度が標準的な標準ＩＯ回路で構成されるが、図８の例に示すように、ＩＯ回路群４−１〜４−４はそれぞれ、インタフェース処理速度が標準ＩＯ回路よりも高速な高速ＩＯ回路４１〜４４を含んでいる。
【００８７】
高速ＩＯ回路４１〜４４は、上述した第３の実施の形態の構成を持つものとする。この場合、高速ＩＯ回路４１は、レジスタｒ１、ｒ２、レジスタ設定部３０−１、３０−２を含み、さらに、図８では、バッファ４ａ（出力バッファ）、バッファ４ｂ（入力バッファ）を含む構成としている。高速ＩＯ回路４２〜４４も同様な構成である。
【００８８】
ユーザ論理制御回路４０は、ユーザ設定信号を出力する。なお、半導体装置４では、ヒューズの接続制御を行うヒューズ接続制御部は、外部に配置される形態としており、図示していない。
【００８９】
高速ＩＯ回路４１において、レジスタ設定部３０−１は、レジスタｒ１へのデータ値設定を行う。レジスタｒ１に設定されたデータ値は、バッファ４ａへ出力されて、バッファ４ａの電気的特性が調整される。また、入力値設定部３０−２は、レジスタｒ２へのデータ値設定を行う。レジスタｒ２に設定されたデータ値は、バッファ４ｂへ出力されて、バッファ４ｂの電気的特性が調整される。
【００９０】
バッファ４ａの電気的特性としては、例えば、バッファ４ａから出力される信号の立ち上がり／立ち下がり時間や、シンク電流値などがあり、レジスタｒ１に設定されたデータ値によって、これらの特性が調整されることになる。また、バッファ４ｂの電気的特性としては、例えば、フィルタ係数などがあり、レジスタｒ２に設定されたデータ値によってフィルタ係数が調整されることになる。
【００９１】
次に本技術を用いたＳＯＣ（System On Chip）開発の流れについて説明する。
（ＳＯＣ開発の流れの一例）
図９はＳＯＣ開発の流れの一例を示すフローチャートである。
【００９２】
開発工程Ｓ１では、ＳＯＣの仕様検討および回路設計を行う。開発工程Ｓ２では、Ｗａｆｅｒ（半導体材料を薄く円盤状に加工してできた薄板）上への回路製造のためのフォトマスクを作成する。開発工程Ｓ３では、Ｗａｆｅｒ上への回路製造を実施する。
【００９３】
開発工程Ｓ４では、レジスタ設定部の結線を制御して、レジスタにデータ値を設定する。この場合、上述したように、測定モードおよび設定モードに切り分けて、測定モードで最適値を検出し、設定モードで最適値をデータ値として設定する。
【００９４】
開発工程Ｓ５では、パッケージ組み立てを行う前の製造不良検査を行う。例えば、Ｗａｆｅｒ上に多数個のチップ形成が完成した段階で、Ｗａｆｅｒを個々のチップに切り離す前に全チップの機能を試験するＷａｆｅｒ試験を行う。
【００９５】
開発工程Ｓ６では、パッケージ組み立てを行う。開発工程Ｓ７では、パッケージ組み立て不良を判別するための出荷試験を行う。そして、開発工程Ｓ８では、ＳＯＣの最終評価を行い、評価基準を上回る場合は量産体制に入って終了し、下回る場合は開発工程Ｓ１へ戻る。
【００９６】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。
【符号の説明】
【００９７】
１  半導体装置
１ａ  通信インタフェース回路
１ｂ  制御回路
１１−１〜１１−ｎ  レジスタ
１２−１〜１２−ｎ  レジスタ設定部
【図１】
2015106691.tif 000003
【図２】
2015106691.tif 000004
【図３】
2015106691.tif 000005
【図４】
2015106691.tif 000006
【図５】
2015106691.tif 000007
【図６】
2015106691.tif 000008
【図７】
2015106691.tif 000009
【図８】
2015106691.tif 000010
【図９】
2015106691.tif 000011