図1は、本願の実施形態に係る出力回路1のブロック図である。出力回路1は、(n+1)ビットのビット信号であるデータ信号DQ(0)〜DQ(n)を出力する際に、信号の電圧レベルの遷移の方向と遷移する信号の個数とに応じて、データ信号DQ(0)〜DQ(n)の信号線DQL(0)〜DQL(n)それぞれに誘導電流を発生させることにより信号の電圧レベルを遷移する際の出力電流をアシストして、SSOノイズを抑制する装置である。
出力回路1は、出力制御回路2、コイル電流制御回路3、出力バッファ4、および電流アシスト回路5を備える。出力制御回路2は、(n+1)ビットの信号であるデータ信号D2(0)〜D2(n)を出力バッファ4に伝搬する。データ格納フリップフロップ(以降、データFF)20、21と、出力段フリップフロップ(以降、出力段FF)22とを備える。データFF20は、データ信号D2(0)〜D2(n)が伝搬する信号線D2L(0)〜D2L(n)を介して図示しない制御回路に接続され、クロック線CLKLを伝搬するクロック信号CLKの立ち上がり時にデータ信号D2(0)〜D2(n)を内部に取り込む。データFF21は、(n+1)ビット信号であるデータ信号D1(0)〜D1(n)が伝搬する信号線D1L(0)〜D1L(n)を介してデータFF20に接続され、データ信号D1(0)〜D1(n)をクロック信号CLKの立ち上がり時に内部に取り込む。出力段FF22は、複数ビット信号であるデータ信号D0(0)〜D0(n)が伝搬する信号線D0L(0)〜D0L(n)を介してデータFF21に接続され、データ信号D0(0)〜D0(n)をクロック信号CLKの立ち上がり時に内部に取り込む。出力段FF22は、複数ビット信号であるデータ信号D(0)〜D(n)が伝搬する信号線DL(0)〜DL(n)を介して出力バッファ4に接続される。これにより、出力制御回路2は、データ信号D2(0)〜D2(n)を、クロック信号CLKの3サイクルを経て、データ信号D(0)〜D(n)として出力バッファ4に出力する。不図示の制御回路から伝搬するデータ信号D2(0)〜D2(n)は、クロック信号CLKにより、順次、データFF20、21、そして出力段FF22へと伝搬し、出力段FF22からデータ信号D(0)〜D(n)として出力バッファ4を介して出力される。
コイル電流制御回路3は、差分検出器30、31と、コイル電流算出器32と、デジタルアナログ変換器(以降、DAC)33とを備える。差分検出器30は、(n+1)個のアンド回路300ないし30nと、加算器303とを備える。信号線D0L(0)〜D0L(n)と信号線D1L(0)〜D1L(n)とが、ビットごとにアンド回路300ないし30nの各々に接続される。アンド回路300ないし30nへは、信号線D0L(0)〜D0L(n)のデータ信号D0(0)〜D0(n)は正論理で入力され、信号線D1L(0)〜D1L(n)のデータ信号D1(0)〜D1(n)は負論理で入力される。データ信号D0(0)〜D0(n)のうちハイレベルのビット信号と、データ信号D1(0)〜D1(n)のうち対応するビット信号がローレベルである場合に、アンド回路300ないし30nからハイレベルが出力される。加算器303は、アンド回路300ないし30nの出力信号がハイレベルであるビットの個数を示す差分信号Shlを出力する。差分信号Shlは信号線ShlLを介してコイル電流算出器32に出力される。差分検出器30では、データ信号D0(0)〜D0(n)と、クロック信号CLKの次のサイクルで伝搬するデータ信号D1(0)〜D1(n)とを比較し、各ビットの信号がハイレベルからローレベルに遷移する数を検出する。
差分検出器31は、(n+1)個のアンド回路310ないし31nと、加算器313とを備える。信号線D0L(0)〜D0L(n)と信号線D1L(0)〜D1L(n)とが、ビットごとにアンド回路310ないし31nの各々に接続される。アンド回路310ないし31nへは、信号線D0L(0)〜D0L(n)のデータ信号D0(0)〜D0(n)は負論理で入力され、信号線D1L(0)〜D1L(n)のデータ信号D1(0)〜D1(n)は正論理で入力される。データ信号D0(0)〜D0(n)のうちローレベルのビット信号と、データ信号D1(0)〜D1(n)のうち対応するビット信号がハイレベルである場合に、アンド回路310ないし31nからハイレベルが出力される。加算器313は、アンド回路310ないし31nの出力信号がハイレベルであるビットの個数を示す差分信号Slhを出力する。差分信号Slhは信号線SlhLを介してコイル電流算出器32に出力される。差分検出器31では、データ信号D0(0)〜D0(n)と、クロック信号CLKの次のサイクルで伝搬するデータ信号D1(0)〜D1(n)とを比較し、各ビットの信号がローレベルからハイレベルに遷移する数を検出する。
コイル電流算出器32は、信号線ShlL、SlhL、クロック線CLKL、ゲイン信号線GLと、しきい値信号線TL、信号線DaciLとが接続される。データ信号D0(0)〜D0(n)からデータ信号D1(0)〜D1(n)へのデータ信号の伝搬において、電圧レベルの遷移の方向と遷移する信号の個数とに応じて、制御信号Daciを算出する。具体的には、データ信号DQ(0)〜DQ(n)における、ハイレベルからローレベルに遷移する信号の数を示す差分信号Shlと、ローレベルからハイレベルに遷移する信号の数を示す差分信号Slhとの差分に応じて、制御信号Daciを算出する。制御信号Daciは、信号線DaciLを介してDAC33に入力される。制御信号Daciは、後述する制御用コイル51に流す電流の向きおよび大きさを制御する制御信号である。制御信号Daciに応じて制御用コイル51に流れる電流の向きおよび大きさが制御され、信号線DQL(0)〜DQL(n)に流す誘導電流によるアシストが制御される。
また、制御信号Daciは、ゲイン信号線GLおよびしきい値信号線TLを介してコイル電流算出器32に入力されるゲイン信号Gおよびしきい値信号Tに応じて制御される。すなわち、差分信号Shlと差分信号Slhとの差分に対してしきい値信号Tにより制御信号Daciの出力・非出力が制御される。これにより、制御用コイル51に電流を流すか否かが制御される。また、ゲイン信号Gは、制御信号Daciの大きさを調整する。差分信号Shlと差分信号Slhとの差分がしきい値Tを越える場合に制御用コイル51に電流を流すが、このときの電流の大きさを調整する。
コイル電流算出器32は、クロック信号CLKに同期して制御される。クロック信号CLKに応じて出力制御回路2に順次データ信号が伝搬されることに応じて制御信号Daciが算出される。
DAC33は、信号線DaciLを介して入力される制御信号Daciをコイル電流Dacoに変換し、電流線DacoLを介して電流アシスト回路5に出力する。
出力バッファ4は、(n+1)個の出力バッファ回路40ないし4nを備える。出力バッファ回路40ないし4nは、電圧線VdeL、接地線VgL、信号線DL(0)〜DL(n)、および信号線DQL(0)〜DQL(n)が接続される。出力バッファ回路40ないし4nは、信号線DL(0)〜DL(n)を介して入力されるビット信号D(0)〜D(n)と同位相の信号を信号線DQL(0)〜DQL(n)を介してデータ信号DQ(0)〜DQ(n)として出力する。
電流アシスト回路5は、信号線DQL(0)〜DQL(n)と、電圧線VdeLあるいは接地線VgLとで囲まれる領域を貫く磁心50と、磁心50に巻回される制御用コイル51とを備える。信号線DQL(0)〜DQL(n)と電圧線VdeL、あるいは信号線DQL(0)〜DQL(n)と接地線VgLとは、磁心50を囲むコイルを成す。制御用コイル51は、磁心50を介して、信号線DQL(0)〜DQL(n)と電圧線VdeL、あるいは信号線DQL(0)〜DQL(n)と接地線VgLとによるコイルと磁気的に結合される。データ信号DQ(0)〜DQ(n)の何れかがハイレベルに遷移する時、電源線VdeLは、出力バッファ回路40ないし4nの何れかを介して信号線DQL(0)〜DQL(n)に接続されるため、電源線VdeLから信号線DQL(0)〜DQL(n)に向けて過渡的に電流が流れる。同様に、ローレベルに遷移する時、接地線VgLは、出力バッファ回路40ないし4nの何れかを介して信号線DQL(0)〜DQL(n)に接続されるため、信号線DQL(0)〜DQL(n)から接地線VgLに向けて過渡的に電流が流れる。この時、電源線VdeLあるいは接地線VgLは寄生のインダクタンス成分を有するので、電圧レベルの遷移による過渡的な電流変化を妨げるように逆起電力が生ずる。この逆起電力によるSSOノイズに抗して電圧レベルの遷移による電流変化をアシストする電流を誘起するために、制御用コイル51に電流を流す。
図2は、実施形態に係るコイル電流算出器32のブロック図である。コイル電流算出器32は、差分検出器用フリップフロップ(以降、差分検出器用FF)320、321、減算器322、演算器323、演算器用フリップフロップ(以降、演算器用FF)324、遅延回路325、およびチョッパー回路326を備える。入力線として、信号線ShlL、信号線SlhL、クロック線CLKL、ゲイン信号線GL、およびしきい値信号線TLが接続される。出力線として、信号線DaciLが接続される。差分検出器用FF320は、信号線ShlLとクロック線CLKLとが接続され、クロック信号CLKの立ち上がりエッジで、加算器303で加算された数値が2進数表現されたビット列の信号である差分信号Shlを取り込んで出力する。差分検出器用FF321は、信号線SlhLとクロック線CLKLとが接続され、クロック信号CLKの立ち上がりエッジで、加算器313で加算された数値が2進数表現されたビット列の信号である差分信号Slhを取り込んで出力する。差分検出器用FF320、321に差分信号Shl、Slhが取り込まれると、減算器322は、差分信号Shlと差分信号Slhとの差分を差分信号Udとして信号線UdLに出力する。差分信号Udは、クロック信号CLKのクロックサイクルに応じて、データ信号D0(0)〜D0(n)がデータ信号DQ(0)〜DQ(n)として出力され、次のクロックサイクルでデータ信号D1(0)〜D1(n)がデータ信号DQ(0)〜DQ(n)として出力される際の、信号の電圧レベルの遷移の方向と遷移する信号の個数を示す信号である。
演算器323は、入力線として、信号線UdL、ゲイン信号線GL、しきい値信号線TLが接続され、出力線として、演算信号線NcLが接続される。入力される差分信号Udに対してしきい値信号Tの示す値を上回る場合に、ゲイン信号Gにより値が調整された演算信号Ncが演算され、演算信号線NcLを介して演算器用FF324に出力される。尚、差分信号Udの示す値がしきい値信号Tの示す値を下回る場合には演算は行われず、演算信号Ncは出力されない。演算器用FF324は、入力線として、演算信号線NcLとクロック線CLKLとが接続され、クロック信号CLKの立ち上がりエッジで演算信号Ncを取り込んで出力する。遅延回路325は、演算器用FF324から出力される信号に対して遅延を加え(後述する図4の遅延時間Td)、演算信号Ncdとして出力する。チョッパー回路326は、2進数表現される演算信号Ncの最大値を表現可能なビット数分のチョッパー回路を備える。各チョッパー回路は、アンド回路And0、And1、・・・、およびインバータ回路Inv0、Inv1、・・・を1組ずつ備える。演算信号Ncdの各ビット値を伝搬する演算信号線NcdLの各々に接続される。演算信号Ncdの各ビット値は、アンド回路And0、And1、・・・の各々の一方の入力端子、およびインバータ回路Inv0、Inv1、・・・の各々に入力される。アンド回路And0、And1、・・・の各々の他方の入力端子は、インバータ回路Inv0、Inv1、・・・の各々が入力される。演算信号Ncdの各ビット値が、ローレベルからハイレベルに遷移する場合、アンド回路And0、And1、・・・の各々の一方の入力端子はローレベルからハイレベルに遷移し、他方の入力端子はインバータ回路Inv0、Inv1、・・・の各々により遅延のうえ反転されて、ハイレベルからローレベルに遷移する。よって、インバータ回路Inv0、Inv1、・・・の各々遅延時間の間、アンド回路And0、And1、・・・の各々の両入力端子はハイレベルとなり、出力もハイレベルとなる。これにより、演算信号Ncdのうち、ローレベルからハイレベルへと遷移する信号は、遷移のタイミングからインバータ回路Inv0、Inv1、・・・の各々の遅延時間のパルス幅を有するハイレベルのパルスを制御信号Daciとして出力する。このパルス幅の時間が図4において後述するパルス時間Taである。
コイル電流算出器32では、クロック信号CLKのクロックサイクルで、差分信号Shl、Slhが取り込まれ、減算器322で差分信号Shl、Slh間の差分が差分信号Udとして演算され、更に演算器323で演算信号Ncが演算される。これに引き続く第2のクロックサイクルで、遅延回路325により演算信号Ncに遅延時間Tdが付加された上で、チョッパー回路326からパルス信号の制御信号Daciが出力され、後述のDAC33にてデコードの上、コイル電流Dacoが出力される。
ここで、第1のクロックサイクルは、データFF21にデータ信号D1(0)〜D1(n)が取り込まれデータ信号D0(0)〜D0(n)として出力されるクロックサイクルに対応し、第2のクロックサイクルは、出力段FF22にデータ信号D0(0)〜D0(n)が取り込まれデータ信号D(0)〜D(n)として出力されるクロックサイクルである。第2のクロックサイクルで出力段FF22からデータ信号D(0)〜D(n)が出力されると、データ信号D(0)〜D(n)は、バッファ回路40ないし4nを介してデータ信号DQ(0)〜DQ(n)として出力される。
したがって、データ信号DQ(0)〜DQ(n)が出力され電圧レベルが遷移するタイミングに電流アシスト動作を合わせるためには、第2のクロックサイクルにおいて、データ信号DQ(0)〜DQ(n)が出力されるまでのバッファ回路40ないし4nの信号伝搬遅延時間が、コイル電流算出器32の演算器用FF324から出力される信号がコイル電流Dacoとして出力されるまでの時間に対応していることが必要である。このために、遅延回路325により遅延時間Tdが付与される。遅延時間Tdは、バッファ回路40ないし4nによる信号伝搬遅延時間からDAC33による遅延時間を減じた時間として設定される。
図3は、実施形態に係るDAC33のブロック図である。DAC33は、定電流源I0ないしI3、スイッチSW0ないしSW3、およびデコーダ330を備える。定電流源I0ないしI3は、電源電圧VdeとスイッチSW0ないしSW3との間に介在する。DAC33は、入力線として、信号線DaciLが接続され、出力線として、電流線DacoLが接続される。電流線DacoLは、スイッチSW0ないしSW3を介して定電流源I0ないしI3と接続される電流線Daco0Lと、接地電圧に接続される電流線Daco1Lとを有する。デコーダ330は、信号線DaciLを伝搬する制御信号Daciをデコードし、スイッチSW0ないしSW3の各々に対してコイル電流設定信号dac0ないしdac3を出力する。これにより、スイッチSW0ないしSW3の何れか一つあるいは何れかの組合せを選択して導通する。
定電流源I0ないしI3は、電源電圧VdeからスイッチSW0ないしSW3、電流線Daco0Lを介し、制御用コイル51に対してコイル電流Dacoを供給する。電流能力は、定電流源I0から2のべき乗の重み付けで大きくなるように設定される。スイッチSW0ないしSW3は、コイル電流設定信号dac0ないしdac3により導通・非導通が制御され、コイル電流設定信号dac0ないしdac3が上位に向かうにしたがい、DAC33から出力される電流量が大きくなるように定電流源I0ないしI3が選択される。制御信号Daciに応じた電流値のコイル電流Dacoを制御用コイル51に供給できる。
次に、実施形態に係る出力回路1のデータ信号DQ(0)〜DQ(n)の読み出し動作と読み出されるデータ信号DQ(0)〜DQ(n)の電圧レベルの遷移時に発生するSSOノイズを抑制するために、信号線DQL(0)〜DQL(n)に追加的に電流を流す電流アシスト動作とのタイミングについて説明する。図4は、出力回路1に4ビットのデータ信号D2(0)〜D2(3)が伝搬する場合を例示する。クロック信号CLKの立ち上がりエッジに同期して、データFF20は、データ信号D2(0)〜D2(3)を取り込み、データ信号D1(0)〜D1(3)として出力する。同時に、データFF21は、切り替る前のデータ信号D1(0)〜D1(3)を取り込み、データ信号D0(0)〜D0(3)として出力する。
クロックサイクル(1)におけるクロック信号CLKの立ち上がりに同期して、データ信号D1(0)〜D1(3)のデータパターンとして全ビットがハイレベルである(1111)が出力され、データ信号D0(0)〜D0(3)のデータパターンとして全ビットがローレベルである(0000)が出力されるとする。データ信号D1(0)〜D1(3)、データ信号D0(0)〜D0(3)は、コイル電流制御回路3の差分検出器30、31に入力され、差分信号Shl、Slhが算出される。このとき、データ信号D1(0)〜D1(3)が(1111)、データ信号D0(0)〜D0(3)が(0000)であるので、算出される差分信号Shlは0を示し、差分信号Slhは4を示す。
次に、クロックサイクル(2)におけるクロック信号CLKの立ち上がりに同期して、差分信号Shl、Slhは、コイル電流算出器32に取り込まれ、制御信号Daciが算出される。ここでは例えば、差分信号Shlと差分信号Slhとの差分に対して制御信号Daciを出力するか否かの境界の差分値を決定するしきい値信号Tの値を3とする。また、出力される制御信号Daciの値の調整用としてゲイン信号Gの値が1に設定される。このとき、差分信号Shlと差分信号Slhとの差分は4であるから、しきい値信号Tの値3を上回っており、電流アシスト動作は行われる。また、ゲイン信号Gの値が1であることから、演算信号Ncとして基本の値である1が出力される。
次に、クロックサイクル(3)におけるクロック信号CLKの立ち上がりに同期して、コイル電流算出器32の演算器用FF324から演算信号Nc(値は1)が出力され、制御信号Daciとして値1の正のパルス信号が出力される。制御信号Daciは、データ信号DQ(0)〜DQ(n)の電圧レベルの遷移によるSSOノイズを抑制するタイミングで電流アシスト動作が行われるように、遅延回路325で遅延時間Tdが加えられる。遅延期間Tdは、バッファ回路40ないし4nの信号伝搬遅延時間からDAC33による遅延時間を減じた時間である。更に、コイル電流算出器32のチョッパー回路326により設定されるパルス時間Taが電流アシスト動作の継続時間である。この間、電源電圧Vdeの電圧ドロップによるSSOノイズが抑制される。
また、クロックサイクル(3)におけるクロック信号CLKの立ち上がりに同期して、データ信号D1(0)〜D1(3)のデータパターンとして(0011)が出力され、データ信号D0(0)〜D0(3)のデータパターンとして(0000)が出力されるとする。このとき、算出される差分信号Shlは0を示し、差分信号Slhは2を示す。
この場合も、クロックサイクル(4)におけるクロック信号CLKの立ち上がりに同時して、差分信号Shl、Slhは、コイル電流算出器32に取り込まれ、制御信号Daciが算出される。ここでは、差分信号Shlと差分信号Slhとの差分は2であるから、しきい値信号Tの値3に満たず、コイル電流算出器32から出力される演算信号Ncは0となり、電流アシスト動作は行われない。
図5に示すDAC33aは、DAC33の別例を示す回路図である。DAC33aは、DAC33と同様にデコーダ330aを備え、入力線として信号線DaciLが接続され、電流線DacoLは、スイッチSW0aないしSW3aを介して定電流源I0aないしI3aと接続される電流線Daco0Lと、スイッチSW0bないしSW3bを介して定電流源I0bないしI3bと接続される電流線Daco1Lとを備える。また、電流線Daco0L、電流線Daco1Lは、各々、スイッチSWb、SWaを介して接地電圧に接続される。デコーダ330aは、信号線DaciLを伝搬する制御信号Daciをデコードし、スイッチSW0aないしSW3aまたはスイッチSW0bないしSW3bの一方に対して、コイル電流設定信号dac0aないしdac3aまたはコイル電流設定信号dac0bないしdac3bを出力する。これにより、スイッチSW0aないしSW3aの何れか一つあるいは何れかの組合せ、またはスイッチSW0bないしSW3bの何れか一つあるいは何れかの組合せを選択して導通する。また、スイッチSW0aないしSW3aの何れかが選択される場合には、コイル電流設定信号dacaによりスイッチSWaが選択され、スイッチSW0bないしSW3bの何れかが選択される場合には、コイル電流設定信号dacbによりスイッチSWbが選択される。
定電流源I0aないしI3aは、電源電圧VdeからスイッチSW0aないしSW3a、電流線Daco0Lを介してコイル電流Dacoを供給する。定電流源I0aないしI3aの電流能力は、定電流源I0aから2のべき乗単位の重み付けで大きくなるように設定される。スイッチSW0aないしSW3aは、コイル電流設定信号dac0aないしdac3aにより導通・非導通が制御され、コイル電流設定信号dac0aないしdac3aが上位に向かうにしたがい、DAC33aから出力される電流量が大きくなるように定電流源I0aないしI3aが選択される。定電流源I0aないしI3aの何れかが選択されるとき、コイル電流設定信号dacaによって、電流線Daco1Lに接続されるスイッチSWaが導通状態となり、電流線Daco1Lは、接地電圧に接続される。定電流源I0aないしI3aの何れかから供給されるコイル電流Dacoは、電流線Daco0Lから制御用コイル51に流れ電流線Daco1Lに戻って接地電圧に流れる。
定電流源I0bないしI3bは、定電流源I0aないしI3aと同様に、電源電圧VdeからスイッチSW0bないしSW3b、電流線Daco1Lを介してコイル電流Dacoを供給する。定電流源I0bないしI3bの電流能力は、定電流源I0bから2のべき乗単位の重み付けで大きくなるように設定される。スイッチSW0bないしSW3bは、コイル電流設定信号dac0bないしdac3bにより導通・非導通が制御され、コイル電流設定信号dac0bないしdac3bが上位に向かうにしたがい、DAC33aから出力される電流量が大きくなるように定電流源I0bないしI3bが選択される。定電流源I0bないしI3bの何れかが選択されるとき、コイル電流設定信号dacbによって、電流線Daco0Lに接続されるスイッチSWbが導通状態となり、電流線Daco0Lは、接地電圧に接続される。定電流源I0bないしI3bの何れかから供給されるコイル電流Dacoは、電流線Daco1Lから制御用コイル51に流れ電流線Daco0Lに戻って接地電圧に流れる。
これにより、制御信号Daciのデコードにより、スイッチSW0aないしSW3aが選択されるかスイッチSW0bないしSW3bが選択されるかに応じて、制御用コイル51に流れるコイル電流Dacoの方向を制御することができる。制御信号Daciに応じた電流値の大きさに加えて電流の方向が制御されたコイル電流Dacoを制御用コイル51に供給することができる。制御用コイル51は信号線DQL(0)〜DQL(n)に誘起させるアシスト電流の大きさと向きを制御することができる。
図6に示すコイル電流算出器32aは、コイル電流算出器32の別例を示す回路図である。コイル電流算出器32aは、コイル電流算出器32と同様に、減算器322、演算器323、および演算器用FF324を備える。コイル電流算出器32aは、コイル電流算出器32とは異なり、差分検出器用FF320、321は備えておらず、減算器322は、信号線ShlLと信号線SlhLとに直接に接続される。また、遅延回路325、チョッパー回路326を備えていない。
減算器322には、加算器303、313で加算された数値が2進数表現されたビット列の信号である差分信号Shl、Slhが取り込まれ、これらの差分を差分信号Udとして信号線UdLに出力する。演算器323は、入力線として、信号線UdL、ゲイン信号線GL、しきい値信号線TLが接続され、出力線として、演算信号線NcLが接続される。演算器用FF324は、入力線として、演算信号線NcLとクロック線CLKLとが接続され、クロック信号CLKの立ち上がりエッジで演算信号Ncを取り込み、演算器用FF324の出力信号を信号線DaciLを介して制御信号Daciとして出力する。
コイル電流算出器32aでは、差分検出器用FF320、321を備えていないので、図4に示したクロックサイクル(1)において、データ信号D0(0)〜D0(n)、およびデータ信号D1(0)〜D1(n)の切り替わりから演算信号Ncの出力までの処理行われる。コイル電流算出器32では、クロックサイクル(1)およびクロックサイクル(2)で行なわれる処理である。これにより、コイル電流算出器32aでは、クロックサイクル(2)におけるクロック信号CLKの立ち上がりに同期して、演算信号Ncが演算器用FF324に取り込まれ、図7において後述するデコーダ330に向けて出力される。すなわち、クロックサイクル(2)においてデコード処理までが行われる。この点、コイル電流算出器32およびDAC33では、データ信号DQ(0)〜DQ(n)が出力されるクロックサイクル(3)で行われるのに対して、1クロックサイクル先行してデコード処理が行われる。
図7に示すDAC33bは、DAC33の第2の別例を示す回路図である。DAC33bは、DAC33と同様に、定電流源I0ないしI3、スイッチSW0ないしSW3、およびデコーダ330を備え、信号線DaciL、電流線DacoLが接続される。DAC33bは、DAC33と異なり、デコーダ330とスイッチSW0ないしSW3との間に、DAC用フリップフロップ(以降、DAC用FF)331、遅延回路332、およびチョッパー回路333を備える。DAC用FF331にはクロック線CLKLが接続される。
デコーダ330から出力される信号は、DAC用FF331において、クロック信号CLKの立ち上がり時に取り込まれ遅延回路332に出力される。遅延回路332は、DAC用FF331から出力される信号に対して遅延時間Tddを加えてチョッパー回路333に出力する。チョッパー回路333はパルス発生素子Pu0ないしPu3を備え、遅延された信号の各ビットごとに、ハイレベル遷移に応じてハイレベルのパルス信号であるコイル電流設定信号dac0ないしdac3を出力する。
DAC33bの備える定電流源I0ないしI3は、DAC33と同様であるので、ここでの説明は省略する。
DAC33b内部において遅延回路332により付与される遅延期間Tddは遅延回路325により付与される遅延期間Tdとは異なる遅延時間である。データ信号DQ(0)〜DQ(n)が出力されるクロックサイクル(3)に先立つクロックサイクル(2)でデコーダ330によりデコードが行われるため、クロックサイクル(3)におけるクロック信号CLKの立ち上がりに同期して、デコードされた信号がDAC用FF331に取り込まれて出力される。従って、遅延回路Tddは、出力バッファ回路40ないし4nによる信号伝搬遅延時間からDAC33bのスイッチSW0ないしSW3の導通・非導通が切り替わる時間を減じた時間である。遅延時間Tdとは異なり、遅延時間Tddにはデコーダ330によるデコード時間は含まれない。これにより、遅延回路332によりデコーダ330のデコード時間を調整する必要がなくなり、アシスト電流を流すタイミング調整のための時間である遅延時間Tddを調整しやすくなる。
図8は、出力されるデータ信号DQ(0)〜DQ(n)の電圧レベルの別に対するアシスト電流の方向による効果を示す図である。
データ信号DQ(0)〜DQ(n)の電圧レベルがローレベルからハイレベルに遷移する際にアシストするアシスト電流を、図8中、(L⇒H)と表記し、ハイレベルからローレベルに遷移する際にアシストするアシスト電流を、図8中、(H⇒L)と表記する。
先ず、(L⇒H)アシスト電流による影響を示す。データ信号DQ(0)〜DQ(n)のうち、電圧レベルの遷移はせずハイレベルに維持されるデータ信号線では、保持されるハイレベルの電圧レベルは、(L⇒H)アシスト電流により悪影響を受けることはない。ハイレベルからローレベルに遷移するデータ信号線では、電圧レベルの遷移方向は、(L⇒H)アシスト電流により遷移を妨げる方向に影響を受けるため遅延が増加する。ローレベルからハイレベルに遷移するデータ信号線では、電圧レベルの遷移方向は、(L⇒H)アシスト電流によりアシストされるため遅延は減少する。電圧レベルは遷移せずローレベルに維持されるデータ信号線では、保持されるローレベルの電圧レベルは、(L⇒H)アシスト電流により電圧レベルが引き上げられる影響を受けるため、ローレベルに戻るための期間を要し遅延が増加する。したがって、データ信号DQ(0)〜DQ(n)の電圧レベルの遷移の方向が、ローレベルからハイレベルに遷移するビット信号の数が優勢である場合、(L⇒H)アシスト電流が有効となる。
次に、(H⇒L)アシスト電流による影響を示す。データ信号DQ(0)〜DQ(n)のうち、ハイレベルが維持されるデータ信号線では、保持されるハイレベルの電圧レベルは、(H⇒L)アシスト電流により電圧レベルが引き下げられる影響を受けるため、ハイレベルに戻るための期間を要し遅延が増加する。ハイレベルからローレベルに遷移するデータ信号線では、電圧レベルの遷移方向は、(H⇒L)アシスト電流によりアシストされるため遅延は減少する。電圧レベルは遷移せずローレベルに維持されるデータ信号線では、保持されるローレベルの電圧レベルは、(H⇒L)のアシスト電流により悪影響を受けることはない。したがって、データ信号DQ(0)〜DQ(n)の電圧レベルの遷移の方向が、ハイレベルからローレベルに遷移するビット信号の数が優勢である場合、(H⇒L)アシスト電流が有効となる。
図9に示すコイル電流制御回路3aは、コイル電流算出器32の第2の別例を示すコイル電流算出器32bを備える回路図である。コイル電流制御回路3aは、コイル電流制御回路3と同様に、差分検出器30、31と、DAC33とを備える。加えて、差分検出器34、35を備える。また、コイル電流算出器32に代えてコイル電流算出器32bを備える。
差分検出器34は、(n+1)個のノア回路340ないし34nと、加算器343とを備える。信号線D0L(0)〜D0L(n)と信号線D1L(0)〜D1L(n)とが、ビットごとにノア回路340ないし34nの各々に接続される。データ信号D0(0)〜D0(n)のうちローレベルのビット信号と、データ信号D1(0)〜D1(n)のうち対応するビット信号がローレベルである場合に、ノア回路340ないし34nからハイレベルが出力される。加算器343は、ノア回路340ないし34nの出力信号がハイレベルであるビットの個数を示す差分信号Sllを出力する。差分信号Sllは電圧レベルの遷移はせずローレベルに維持される信号の数を示す。差分信号Sllは信号線SllLを介してコイル電流算出器32bに出力される。差分検出器35は、(n+1)個のアンド回路350ないし35nと、加算器353とを備える。信号線D0L(0)〜D0L(n)と信号線D1L(0)〜D1L(n)とが、ビットごとにアンド回路350ないし35nの各々に接続される。データ信号D0(0)〜D0(n)のうちハイレベルのビット信号と、データ信号D1(0)〜D1(n)のうち対応するビット信号がハイレベルである場合に、アンド回路350ないし35nからハイレベルが出力される。加算器353は、アンド回路350ないし35nの出力信号がハイレベルであるビットの個数を示す差分信号Shhを出力する。差分信号Shhは電圧レベルの遷移はせずハイレベルに維持される信号の数を示す。差分信号Shhは信号線ShhLを介してコイル電流算出器32bに出力される。
コイル電流算出器32bは、コイル電流算出器32と同様に、差分検出器用FF320、321、演算器用FF324、遅延回路325、およびチョッパー回路326を備える。加えて、差分検出器用FF327、328、加算器329a、329b、減算器322a、322b、および演算器323aを備える。入力線として、信号線ShlL、SlhL、SllL、ShhL、クロック線CLKL、ゲイン信号線GL、およびしきい値信号線TLが接続される。出力線として、信号線DaciLが接続される。
差分検出器用FF327は、信号線SllLとクロック線CLKLとが接続され、クロック信号CLKの立ち上がりエッジで、加算器343で加算された数値が2進数表現されたビット列の信号である差分信号Sllを取り込んで出力する。差分検出器用FF328は、信号線ShhLとクロック線CLKLとが接続され、クロック信号CLKの立ち上がりエッジで、加算器353で加算された数値が2進数表現されたビット列の信号である差分信号Shhを取り込んで出力する。加算器329aは、差分検出器用FF320、327に差分信号Shl、Sllが取り込まれると、差分信号Shlと差分信号Sllとを加算し、加算結果に応じた信号を出力する。加算器329bは、差分検出器用FF321、328に差分信号Slh、Shhが取り込まれると、差分信号Slhと差分信号Shhとを加算し、加算結果に応じた信号を出力する。
減算器322aは、差分検出器用FF320に取り込まれた差分信号Shlから、加算器329bによる差分信号Slhと差分信号Shhとの加算結果を減じた差分を差分信号Udaとして信号線UdaLに出力する。差分信号Udaは、データ信号DQ(0)〜DQ(n)の遷移における、ハイレベルからローレベルに遷移する信号の数から、ローレベルからハイレベルに遷移される信号の数と電圧レベルの遷移はせずハイレベルに維持される信号の数との合計を差引いた数を示す。減算器322bは、差分検出器用FF321に取り込まれた差分信号Slhから、加算器329aによる差分信号Shlと差分信号Sllとの加算結果を減じた差分を差分信号Udbとして信号線UdbLに出力する。差分信号Udbは、ローレベルからハイレベルに遷移するビット信号の数から、ハイレベルからローレベルに遷移されるビット信号の数と電圧レベルの遷移はせずローレベルに維持されるビット信号の数との合計を差引いた数を示す。
演算器323aは、入力線として、信号線UdaL、UdbL、ゲイン信号線GL、しきい値信号線TLが接続され、出力線として、演算信号線NcLが接続される。入力される差分信号Udaの示す値と差分信号Udbの示す値とが比較され、どちらの値が大きいか判断される。値が大きい信号がしきい値信号Tの示す値を上回る場合に、ゲイン信号Gにより値が調整された演算信号Ncが演算され、演算信号線NcLを介して演算器用FF324に出力される。演算信号Ncは、差分信号Udaと差分信号Udbとの比較により求められるアシスト電流の向きを示すフラグ信号も含む。尚、差分信号Uda、Udbの示す値の両方が等しい場合や、両方が負の値を示す場合、または差分信号Uda、差分信号Udbのうち値が大きい信号の示す値がしきい値信号Tの示す値を下回る場合などには、演算は行われず、演算信号Ncは出力されないとすることができる。つまり、データ信号DQ(0)〜DQ(n)の電圧レベルの遷移の方向が、ハイレベルからローレベル、若しくはローレベルからハイレベルのどちらにも優勢でない場合には、アシスト電流は出力されないとする設定である。または、電圧レベルの遷移の方向がどちらかに優勢であっても、しきい値に満たない場合にも、アシスト電流は出力されないとする設定である。または、差分信号Uda、Udbの示す値の両方が等しい場合には、予め定められた電流の向きにアシスト電流を流すようにすることもできる。
コイル電流算出器32bの演算器用FF324、遅延回路325、およびチョッパー回路326は、コイル電流算出器32と同様であるため、ここでの説明は省略する。
データ信号DQ(0)〜DQ(n)の出力の際、電圧レベルの遷移に必要な電流が、寄生のインダクタンス成分を有する電圧線VdeLまたは接地線VgL、および出力バッファ4を介して流れる。電圧線VdeLの寄生のインダクタンスをインダクタンスLvとし、接地線VgLの寄生のインダクタンスをインダクタンスLgとする。また、電圧レベルの遷移時に出力バッファ4に印加される電源電圧をVioとする。
データ信号DQ(0)〜DQ(n)の遷移において、ローレベルからハイレベルに遷移する信号の数を個数Nlhとする。電圧レベルがローレベルからハイレベルに遷移する際に信号線DQL(0)〜DQL(n)の1本に流れる電流をIhとする。電流Ihの時間当たりの電流変化量はdIh/dtである。インダクタンスLvに生じる逆起電力は、ローレベルからハイレベルに遷移する信号の数と信号線1本に生じる電流変化量とインダクタンスLvを乗じた値となる。また、データ信号DQ(0)〜DQ(n)の遷移において、ハイレベルからローレベルに遷移する信号の数を個数Nhlとする。電圧レベルがハイレベルからローレベルに遷移する際に信号線DQL(0)〜DQL(n)1本に流れる電流をIlとする。Ilの時間当たりの電流変化量はdIl/dtである。インダクタンスLgに生じる逆起電力は、ハイレベルからローレベルに遷移する信号の数と信号線1本に生じる電流変化量とインダクタンスLgを乗じた値となる。
この場合、電圧Vioは、電源電圧Vdeと接地電圧との差から、インダクタンスLvに生じる逆起電力(Nlh・Lv・dIh/dt)と、インダクタンスLgに生じる逆起電力(Nhl・Lg・dIl/dt)とを減じた値となる。電圧Vioは、以下の式に表すことができる。
Vio=Vde−Nlh・Lv・dIh/dt−Nhl・Lg・dIl/dt
よって、データ信号DQ(0)〜DQ(n)の電圧レベルに遷移時には、出力バッファ4に印加される電源電圧は、電圧Vdeから電圧Vioに減少する。
電流アシスト回路5は、制御用コイル51に電流を流すことにより、電圧レベルの遷移時に信号線DQL(0)〜DQL(n)にアシスト電流を誘起させ、出力バッファ4の電源電圧の過渡的な減少を緩和するように動作する。信号線DQL(0)〜DQL(n)の信号線それぞれ1本に誘起される電流をアシスト電流Iaとする。データ信号DQ(0)〜DQ(n)のうち、電圧レベルの遷移はせずハイレベルに維持されるデータ信号の個数を個数Nhhとし、ローレベルに維持されるデータ信号の個数を個数Nllとする。
アシスト電流Iaが図8における(L⇒H)アシスト電流である場合、ローレベルからハイレベルに遷移する信号線を介してインダクタンスLvに流れる電流Ihは、アシスト電流Ia分小さくなる。このとき、インダクタンスLvに流れる電流はIh−Iaである。(L⇒H)アシスト電流によるインダクタンスLvに流れる電流の減少分ΔIhは、個数Nlhとアシスト電流Iaとを乗じた値となる(ΔIh=Nlh・Ia)。
逆に、(L⇒H)アシスト電流であるアシスト電流Iaは、ハイレベルからローレベルに遷移する信号線およびローレベルに維持される信号線を介してインダクタンスLgに流れる電流Ilに流れる電流Ilに加算される。インダクタンスLgに流れる電流Ilは、アシスト電流Ia分増加する。このとき、インダクタンスLgに流れる電流はIl+Iaである。(L⇒H)アシスト電流によるインダクタンスLgに流れる電流の増加分ΔIlは、個数Nhlと個数Nllとの合計と、アシスト電流Iaとを乗じた値となる(ΔIl=(Nhl+Nll)・Ia)。
信号線DQL(0)〜DQL(n)の信号線に(L⇒H)アシスト電流としてアシスト電流Iaが誘起されるときの出力バッファ4の電源電圧を、電圧Vioaとする。(L⇒H)アシスト電流によりインダクタンスLvに生じる逆起電力の低減効果は、インダクタンスLvに流れる電流の減少分ΔIh(=Nlh・Ia)による。電流の減少分ΔIhに係るインダクタンスLvに生じる逆起電力の相殺分(Nlh・Lv・dIa/dt)である。
逆に、(L⇒H)アシスト電流によりインダクタンスLgに生じる逆起電力の増大効果は、インダクタンスLgに流れる電流の増加分ΔIl(=(Nhl+Nll)・Ia)による。インダクタンスLgに生じる逆起電力の増大分((Nhl+Nll)・Lg・dIa/dt)である。
よって、電圧Vioaは、以下の式に表すことができる
Vioa=Vio+Nlh・Lv・dIa/dt−(Nhl+Nll)・Lg・dIa/dt
個数NlhにインダクタンスLvを乗じた値が、個数Nhlと個数Nllとの合計にインダクタンスLgを乗じた値以上であるとき、アシスト電流Iaによる、インダクタンスLvに生じる逆起電力の相殺分がインダクタンスLgに生じる逆起電力の増大分を上回る。つまり、アシスト効果が有効に働き、データ信号DQ(0)〜DQ(n)の電圧レベルの遷移時の出力バッファ4の電源電圧の減少は改善される。ここで、インダクタンスLvとインダクタンスLgとは、略同等の値であるとすることができるので、ローレベルからハイレベルに遷移する信号数(個数Nlh)がハイレベルからローレベルに遷移する信号数(個数Nhl)およびローレベルに維持される信号の数(個数Nll)の合計より大きい場合が、(L⇒H)アシスト電流が有効である場合となる。
一方、アシスト電流Iaが図8における(H⇒L)アシスト電流である場合、ハイレベルからローレベルに遷移する信号線を介してインダクタンスLgに流れる電流Ilは、アシスト電流Ia分小さくなる。このとき、インダクタンスLgに流れる電流はIl−Iaである。(H⇒L)アシスト電流によるインダクタンスLgに流れる電流の減少分ΔIlは、個数Nhlとアシスト電流Iaとを乗じた値となる(ΔIl=−Nhl・Ia)。
逆に、(H⇒L)アシスト電流であるアシスト電流Iaは、ローレベルからハイレベルに遷移する信号線およびハイレベルに維持される信号線を介してインダクタンスLvに流れる電流Ihに加算される。インダクタンスLvに流れる電流Ihは、アシスト電流Ia分増加する。このとき、インダクタンスLvに流れる電流はIh+Iaである。(H⇒L)アシスト電流によるインダクタンスLvに流れる電流の増加分ΔIhは、個数Nlhと個数Nhhとの合計と、アシスト電流Iaとを乗じた値となる(ΔIh=(Nlh+Nhh)・Ia)。
信号線DQL(0)〜DQL(n)の信号線に(H⇒L)アシスト電流としてアシスト電流Iaが誘起されるときの出力バッファ4の電源電圧を、電圧Vioaとする。(H⇒L)アシスト電流によりインダクタンスLgに生じる逆起電力の低減効果は、インダクタンスLgに流れる電流の減少分ΔIl(=−Nhl・Ia)による。電流の減少分ΔIlに係るインダクタンスLgに生じる逆起電力の相殺分(Nhl・Lg・dIa/dt)である。
逆に、(H⇒L)アシスト電流によりインダクタンスLvに生じる逆起電力の増大効果は、インダクタンスLvに流れる電流の増加分ΔIh(=(Nlh+Nhh)・Ia)による。インダクタンスLvに生じる逆起電力の増大分((Nlh+Nhh)・Lv・dIa/dt)である。
よって、電圧Vioaは、以下の式に表すことができる
Vioa=Vio+Nhl・Lg・dIa/dt−(Nlh+Nhh)・Lv・dIa/dt
個数NhlにインダクタンスLgを乗じた値が、個数Nlhと個数Nhhとの合計にインダクタンスLvを乗じた値以上であるとき、アシスト電流Iaによる、インダクタンスLgに生じる逆起電力の相殺分がインダクタンスLvに生じる逆起電力の増大分を上回る。つまり、アシスト効果が有効に働き、データ信号DQ(0)〜DQ(n)の電圧レベルの遷移時の出力バッファ4の電源電圧の減少は改善される。ここで、インダクタンスLvとインダクタンスLgとは、略同等の値であるとすることができるので、ハイレベルからローレベルに遷移する信号数(個数Nhl)がローレベルからハイレベルに遷移する信号数(個数Nlh)およびハイレベルに維持される信号の数(個数Nhh)の合計より大きい場合が、(H⇒L)アシスト電流が有効である場合となる。
図10は、実施形態に係る出力回路1を備える半導体装置(実装基板)10の平面図である。半導体装置(実装基板)10は、ベアチップ11、およびチップ基板12を備え、ベアチップ11を、チップ基板12に実装したものである。また、図11は、実施形態に係る半導体装置(実装基板)10の断面図である。半導体装置(実装基板)10における制御コイル51の部分の断面図である。
半導体装置(実装基板)10において、データ信号DQ(0)〜DQ(n)を出力する出力回路1は、ベアチップ11、およびチップ基板12に跨って配置される。出力制御回路2、コイル電流制御回路3、出力バッファ4は、ベアチップ11に配置され、電流アシスト回路5は、ベアチップ11、チップ基板12に跨って配置される。チップ基板12は、例えばガラスエポキシ樹脂のような汎用樹脂からなる層間絶縁層121を挟んで上層配線層120と下層配線層122との2層の配線層を備える多層配線基板である。上層配線層120、下層配線層122には、導電経路を設けるため配線パターンが、エッチング処理等により形成される。ベアチップ11は、上層配線層120、層間絶縁層121の一部が除去された凹部に収納される。磁心50は、上層配線層120と下層配線層122との間に配置される。磁心50の材質は、一般的には、鉄、フェライト等の磁心材料である。この他にも、上層配線層120、下層配線層122などの配線パターンに用いられる材料と同じ材料を使用することもできる。磁心50は、層間絶縁層121の形成時に埋め込まれて形成される。または、磁心50を樹脂等でモールドした部品をベアチップ11の実装と実装することも考えられる。また、磁心50の形状は、棒状の他、リング状であってもよい。リング状とすれば、磁束の漏れを抑えることが可能である。
ベアチップ11は、上面に、電極パッドを有し、下面に、ベアチップ11を貫くシリコン貫通電極(以降、TSV)を有する。DAC33の2つの出力端子の一方に接続される電流線Daco0Lは、図11に図示しないTSVに接続され、ベアチップ11の下面に取り出される。更に、バンプを介して、下層配線層122にある下層配線W0に接続される。下層配線W0は磁心50の下方を横切り、チップ基板の上面に形成されるランドLa1の直下に導かれる。下層配線W0とランドLa1とは、層間絶縁層121を垂直に貫通するスルーホール(不図示)を介して接続される。以上の説明のように、電流線Daco0Lと上層配線層120にあるランドLa1とは、下層配線W0が磁心50の下方を磁心50を横切るように配線されて接続される。更に、ランドLa1は、電流線Daco0Lとスルーホール(不図示)との接合部に隣接するパッドP1との間で、ボンディングワイヤBw1で接続される。ボンディングワイヤBw1は、磁心50の上方を横切るように配線される。
パッドP1は、TSVTs1、バンプB1を介して、下層配線W0に隣接する下層配線W1に接続される。下層配線W1は、層間絶縁層121を垂直に貫通するスルーホールTh2を介してランドLa2に接続される。ランドLa2は、パッドP1に隣接するパッドとの間で、ボンディングワイヤで接続される。ボンディングワイヤは、磁心50の上方を横切るように配線される。
以下同様に、ランドLancを介してパッドPncに至るまで、磁心50の下方と上方とを順次横切るように配線がコイル状に接続され、制御用コイル51が形成される。パッドPncは、DAC33の2つの出力端子の他方に接続される電流線Daco1Lを介してDAC33に接続される。
また、出力バッファ回路40に接続される信号線DQL(0)はパッドPDQ0に接続される。ボンディングワイヤBDQ0は、磁心50の上方を横切るようにパッドPDQ0と、ランドLaDQ0とを接続する。出力バッファ回路40に接続される電圧線VdeLは、TSV、バンプを介して、磁心50の下方を横切る下層配線Wv0に接続される。下層配線Wv0は、磁心50の下方を横切って、層間絶縁層121を垂直に貫通するスルーホールを介して電圧線VdeLとランドLav0とを接続する。同様に、出力バッファ回路40に接続される接地線VgLは、TSV、バンプを介して、磁心50の下方を横切る下層配線Wg0に接続される。下層配線Wg0は、磁心50の下方を横切って、層間絶縁層121を垂直に貫通するスルーホールを介して接地線VgLとランドLag0とを接続する。これにより、ボンディングワイヤBDQ0と、下層配線Wv0あるいは下層配線Wg0とは、磁心50を囲むコイルを成す。制御用コイル51は、磁心50を介して、ボンディングワイヤBDQ0と、下層配線Wv0あるいは下層配線Wg0とによるコイルと磁気的に結合される。電源電圧Vdeおよび接地電圧は、ランドLav0ないしLavn、ランドLag0ないしLagnに分岐される。また、電源電圧Vdeおよび接地電圧は、下層配線Wv0、Wg0を介して、ベアチップ11に入力されてから、ベアチップ11内部で分岐されてもよい。
ここで、チップ基板12は上層配線層120と下層配線層122との2層に限られない。配線層が一層である場合において、磁心50は、部品としてチップ基板12上に実装される。配線層が一層であるため、層間絶縁層を垂直に貫通するスルーホールは存在しない。この場合、磁心50を横切る配線のうちスルーホールにより担われていた部分は、ボンディングワイヤにより担われることとなる。磁心50の下方を横切る配線と、磁心50を上方を横切るボンディングワイヤとにより、磁心50に巻回される制御用コイル51が形成される。
また、電流アシスト回路5を半導体チップ11に配置してもよい。この場合、半導体チップ11の多層配線を用い、磁心50と制御用コイル51を形成する。磁心50は、多層配線のうち中間層にある中間配線層により形成される。また、半導体チップ11内に磁性材料を埋め込む等の製造プロセスがあれば利用することができる。制御用コイル51は、中間配線層により形成された磁心50を囲む、上下層の配線層、ビアコンタクトにより形成される。
また、制御用コイル51は、チップ基板12に埋め込まれる磁心50を囲む上層配線、下層配線、スルーホールにより形成されてもよい。
図12に示す半導体装置(実装基板)10aは、半導体装置(実装基板)の別例を示す平面図である。半導体装置(実装基板)10aは、コイル部品53、半導体パッケージ11a、およびプリント基板12aを備える。また、図13は、半導体装置(実装基板)10aを後述するアウターリードLev0側から見た図である。
半導体装置(実装基板)10aにおいて、データ信号DQ(0)〜DQ(n)を出力する出力回路1aは、半導体パッケージ11a、プリント基板12aに跨って配置される。出力制御回路2、コイル電流制御回路3、および出力バッファ4は、半導体パッケージ11aに配置され、電流アシスト回路5aは、プリント基板12aに配置される。プリント基板12aは、例えばガラスエポキシ樹脂のような汎用樹脂からなる基板表面に配線層120aを備える。配線層120aには、導電経路を設けるため配線パターンが、エッチング処理等により形成される。
半導体パッケージ11aは、ベアチップを、モールドしたものであり、ベアチップと外部とを電気的に接続するため側面には外部接続端子であるアウターリードLev0ないしLevn、LeDQ0ないしLeDQn、Leg0ないしLegn、Le0、およびLe1が接続される。半導体パッケージ11aは、プリント基板12aの表面に実装される。
コイル部品53は、磁心50aの一端に銅線を巻回して形成した制御コイル51aと心材となる磁心50aとを組み合わせて樹脂等でモールドした部品である。磁心50aは、磁性材料であれば特に制限されず、鉄、フェライト等、これら複合材料などが適用可能である。半導体パッケージ11aに配置されるDAC33は、電流線Daco0L、アウターリードLe0を介してコイル部品53の端子の一方に接続され、電流線Daco1L、アウターリードLe1を介してコイル部品53の端子の他方に接続される。
出力バッファ回路40に接続される電圧線VdeL、信号線DQL(0)、接地線VgLは、それぞれ半導体パッケージ11aのアウターリードLev0、LeDQ0、Leg0に接続される。アウターリードLev0とアウターリードLeDQ0とは、リードの曲げ位置が異なる(図13を参照)。アウターリードLev0は、磁心50aの手前でプリント基板12aの表面方向に曲がり、磁心50aの下方を横切る配線パターンである配線Wv0aに接続される。アウターリードLeDQ0は、磁心50aの上方を横切った先でプリント基板12aの表面方向に曲がり、プリント基板12aの配線パターンである配線WDQ0aに接続される。アウターリードLeg0は、アウターリードLev0と同様である。磁心50aの手前でプリント基板12aの表面方向に曲がり、磁心50aの下方を横切る配線パターンである配線Wg0aに接続される。これにより、アウターリードLeDQ0と、配線Wv0aあるいは配線Wg0aとは、磁心50aを囲むコイルを成す。制御用コイル51aは、磁心50aを介して、アウターリードLeDQ0と、配線Wv0aあるいは配線Wg0aとによるコイルと磁気的に結合される。電源電圧Vdeおよび接地電圧は、配線Wv0aないしWvna、および配線Wg0aないしWgnaに分岐される。また、電源電圧Vdeおよび接地電圧は、配線Wv0a、アウターリードLev0、および配線Wg0a、アウターリードLeg0を介して、半導体パッケージ11aに入力されてから、半導体パッケージ11aの内部で分岐されてもよい。この場合、出力バッファ回路40ないし4nごとに、電源電圧Vdeおよび接地電圧用のアウターリードを用意する必要がなくなり、半導体パッケージ11aのアウターリードを削減することができる。
尚、本発明は前記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
例えば、しきい値信号T、およびゲイン信号Gは、複数の値を与えられてもよい。この場合、しきい値信号Tは多段階に設定される。それぞれのしきい値Tの示す値に対応するゲインとなるように、ゲイン信号Gが設定される。例えば、しきい値Tに4つの値が設けられるとき、しきい値Tの高い順にしきい値T0、T1、T2、T3とし、これらに対応するゲイン信号Gをゲイン信号G0、G1、G2、G3とする。差分信号Udの示す値が、しきい値T0を上回る場合にはしきい値T0に対応するゲイン信号G0により値が調整された演算信号Ncが演算される。しきい値T1を上回りしきい値T0を下回る場合には、しきい値T1に対応するゲイン信号G1により値を調整された演算信号Ncが演算される。しきい値T2を上回りしきい値T1を下回る場合には、ゲイン信号G2が適用され、しきい値T3を上回りしきい値T2を下回る場合には、ゲイン信号G3が適用される。ゲイン信号G1と同様に、ゲイン信号G2またはG3により値を調整された演算信号Ncが演算される。しきい値T3を下回る場合には演算は行われず、演算信号Ncは出力されない。
また、定電流源I0ないしI3は、接地電圧とスイッチSW0ないしSW3との間に介在してもよい。この場合、接地電圧、定電流源I0ないしI3、スイッチSW1ないしSW3、および電流線Daco0Lを介して、制御用コイル51からコイル電流Dacoは、接地電圧に排出される。この場合、電流線Daco1Lは電源電圧Vdeに接続される。
ここで、コイル電流制御回路3は制御部の一例、出力回路1は電子回路の一例、データFF21はフリップフロップ回路の一例、アンド回路300ないし30nはHL検出部の一例、アンド回路310ないし31nはLH検出部の一例、ノア回路340ないし34nはLL検出部の一例、アンド回路350ないし35nはHH検出部の一例、加算器303はHL加算器の一例、加算器313のLH加算器の一例である。