出力バッファ回路から負荷に供給される電流の方向を検出する電流方向検出手段と、前記負荷から前記出力バッファ回路に電流が流入していることを前記電流方向検出手段が検出した場合に、前記出力バッファ回路の出力信号の立ち上がり過程において、前記出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うとともに、前記出力バッファ回路の出力信号の立ち下がり過程において、前記出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行い、前記出力バッファ回路から前記負荷に電流が流出していることを前記電流方向検出手段が検出した場合に、前記出力バッファ回路の出力信号の立ち上がり過程において、前記出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行うとともに、前記出力バッファ回路の出力信号の立ち下がり過程において、前記出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うスルーレート制御手段とを具備することを特徴とする出力バッファ回路。前記出力バッファ回路は、前記負荷を駆動する出力部と、入力信号に応じて前記出力部を駆動するプリドライバとを有し、前記スルーレート制御手段は、前記電流方向検出手段により検出される電流の方向に基づいて、前記プリドライバの出力信号のスルーレートを制御することにより前記出力信号のスルーレートの制御を行うことを特徴とする請求項1に記載の出力バッファ回路。前記スルーレート制御手段は、前記負荷から前記出力バッファ回路に電流が流入していることを前記電流方向検出手段が検出した場合に、前記出力バッファ回路の出力信号の立ち上がり過程において、前記プリドライバの出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うとともに、前記出力バッファ回路の出力信号の立ち下がり過程において、前記プリドライバの出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行い、前記出力バッファ回路から前記負荷に電流が流出していることを前記電流方向検出手段が検出した場合に、前記出力バッファ回路の出力信号の立ち上がり過程において、前記プリドライバの出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行うとともに、前記出力バッファ回路の出力信号の立ち下がり過程において、前記プリドライバの出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うことを特徴とする請求項2に記載の出力バッファ回路。前記出力部は、高圧側電源および低圧側電源間に直列に介挿された出力用Pチャネル電界効果トランジスタおよび出力用Nチャネル電界効果トランジスタを有し、前記出力用Pチャネル電界効果トランジスタおよび出力用Nチャネル電界効果トランジスタの共通接続点から負荷を駆動する出力信号を発生するものであり、前記プリドライバは、前記出力用Pチャネル電界効果トランジスタを駆動するPチャネルプリドライバと、前記出力用Nチャネル電界効果トランジスタを駆動するNチャネルプリドライバとを有し、前記スルーレート制御手段は、前記負荷から前記出力バッファ回路に電流が流入していることを前記電流方向検出手段が検出した場合に、前記Pチャネルプリドライバおよび前記Nチャネルプリドライバの各出力信号を変化させて前記出力バッファ回路の出力信号を立ち上げる過程において、前記Nチャネルプリドライバの出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うとともに、前記Pチャネルプリドライバおよび前記Nチャネルプリドライバの各出力信号を変化させて前記出力バッファ回路の出力信号を立ち下げる過程において、前記Nチャネルプリドライバの出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行い、前記出力バッファ回路から前記負荷に電流が流出していることを前記電流方向検出手段が検出した場合に、前記Pチャネルプリドライバおよび前記Nチャネルプリドライバの各出力信号を変化させて前記出力バッファ回路の出力信号を立ち上げる過程において、前記Pチャネルプリドライバの出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行うとともに、前記Pチャネルプリドライバおよび前記Nチャネルプリドライバの各出力信号を変化させて前記出力バッファ回路の出力信号を立ち下げる過程において、前記Pチャネルプリドライバの出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うことを特徴とする請求項2に記載の出力バッファ回路。前記スルーレート制御手段は、前記プリドライバの出力信号のスルーレートを予め決められた態様で変化させることにより前記出力バッファ回路の出力信号のスルーレートの制御を行うことを特徴とする請求項2に記載の出力バッファ回路。前記スルーレート制御手段は、前記出力バッファ回路の出力信号のレベルに応じて前記プリドライバの出力信号のスルーレートを変化させることにより前記出力バッファ回路の出力信号のスルーレートの制御を行うことを特徴とする請求項2に記載の出力バッファ回路。D級増幅器等の出力バッファ回路により誘導性負荷を駆動する場合、図15aに示すように、誘導性負荷2から出力バッファ回路1に電流が流入している状態において出力バッファ回路1のスイッチングが行われる場合と、図15bに示すように、出力バッファ回路1から誘導性負荷2に電流が流出している状態において出力バッファ回路1のスイッチングが行われる場合の2通りの場合が発生し得る。前者の場合、誘導性負荷2から出力バッファ回路1に流入する電流値に対して、出力バッファ回路1の出力信号VOUTの電圧値を乗算した電力が、出力バッファ回路1の電力損失となる。従って、仮に誘導性負荷2から流入する電流値が一定値であるとすると、出力バッファ回路1の電力損失は図15cに示す斜線領域の面積となる。一方、後者の場合、出力バッファ回路1から誘導性負荷2に流出する電流値に対して、出力バッファ回路1の電源電圧VDDと出力信号VOUTの電圧値との差分を乗算した電力が、出力バッファ回路1の電力損失となる。従って、仮に誘導性負荷2へと流出する電流値が一定値であるとすると、出力バッファ回路1の電力損失は図15dに示す斜線領域の面積となる。誘導性負荷を駆動する出力バッファ回路の電力損失を減らすためには、図15cおよびdに示す斜線領域の面積を減らす必要がある。本発明は以上のような考えに従ってなされたものであり、誘導性負荷を駆動する出力バッファ回路の電力損失を低減する技術的手段を提供することを目的としている。この発明は、出力バッファ回路から負荷に供給される電流の方向を検出する電流方向検出手段と、前記負荷から前記出力バッファ回路に電流が流入していることを前記電流方向検出手段が検出した場合に、前記出力バッファ回路の出力信号の立ち上がり過程において、前記出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うとともに、前記出力バッファ回路の出力信号の立ち下がり過程において、前記出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行い、前記出力バッファ回路から前記負荷に電流が流出していることを前記電流方向検出手段が検出した場合に、前記出力バッファ回路の出力信号の立ち上がり過程において、前記出力信号をスルーレートの大きい状態からスルーレートの小さい状態に変化させる制御を行うとともに、前記出力バッファ回路の出力信号の立ち下がり過程において、前記出力信号をスルーレートの小さい状態からスルーレートの大きい状態に変化させる制御を行うスルーレート制御手段とを具備することを特徴とする出力バッファ回路を提供する。かかる出力バッファ回路によれば、図15cおよびdを参照して説明した出力バッファ回路の電力損失を低減することができる。なお、出力バッファ回路の出力信号のスルーレート制御に関しては多数の先行技術文献がある例えば特許文献1参照。しかしながら、これらの文献は、ノイズやオーバシュートの低減を行うために出力バッファ回路の出力信号のスルーレートを抑制する技術を開示するものが殆どであり、本発明のように出力バッファ回路の電力損失が低減されるように出力信号のスルーレート制御を行う技術を開示するものではない。以下、図面を参照し、この発明の実施形態について説明する。<基本形態>図1はこの発明による出力バッファ回路の基本形態である出力バッファ回路100の構成を示すブロック図である。この図に示すように、出力バッファ回路100は、スピーカおよびローパスフィルタ等からなる誘導性負荷2を駆動する出力部110と、入力信号VINに基づいて出力部110を駆動するプリドライバ120と、出力部110から誘導性負荷2に供給される負荷電流の方向を検出する電流方向検出部130と、電流方向検出部130により検出された電流の方向に基づいて、出力部110の出力信号VOUTのスルーレートを制御するスルーレート制御部140とを有する。なお、図示の例において、スルーレート制御部140は、プリドライバ120を制御することにより出力部110の出力信号VOUTのスルーレートを制御するものである。図2aおよびbは、本実施形態による出力バッファ回路100の出力信号VOUTのスルーレート制御の第1の態様を例示する図であり、図2aは誘導性負荷2から出力バッファ回路100に電流が流入している場合における出力信号VOUTのスルーレート制御の態様を、図2bは出力バッファ回路100から誘導性負荷2に電流が流出している場合における出力信号VOUTのスルーレート制御の態様を各々示している。第1の態様において、誘導性負荷2から出力バッファ回路100に電流が流入していることを電流方向検出部130が検出した場合には、スルーレート制御部140は、図2aに示すように、出力バッファ回路100の出力信号VOUTの立ち上がり過程において、出力信号VOUTをスルーレートの小さい状態からスルーレートの大きい状態に連続的無段階的に変化させる制御を行うとともに、出力バッファ回路100の出力信号VOUTの立ち下がり過程において、出力信号VOUTをスルーレートの大きい状態からスルーレートの小さい状態に連続的に変化させる制御を行う。また、出力バッファ回路100から誘導性負荷2に電流が流出していることを電流方向検出部130が検出した場合に、スルーレート制御部140は、図2bに示すように、出力バッファ回路100の出力信号VOUTの立ち上がり過程において、出力信号VOUTをスルーレートの大きい状態からスルーレートの小さい状態に連続的に変化させる制御を行うとともに、出力バッファ回路100の出力信号VOUTの立ち下がり過程において、出力信号VOUTをスルーレートの小さい状態からスルーレートの大きい状態に連続的に変化させる制御を行う。スルーレート制御部140が出力信号VOUTのスルーレートを上記のように制御するためのプリドライバ120の制御方法には各種の態様が考えられるが、例えばスルーレート制御部140は、プリドライバ120の利得を高くすることにより出力信号VOUTのスルーレートを大きくし、プリドライバ120の利得を低くすることにより出力信号VOUTのスルーレートを小さくし、出力信号VOUTを図2aおよびbに示すように変化させる。このようなスルーレート制御が行われる結果、前掲図15aおよびbの例と対比すれば分かるように、出力バッファ回路100のスイッチング時における電力損失が低減される。図3aおよびbは、出力バッファ回路100の出力信号VOUTのスルーレート制御の第2の態様を例示する図であり、図3aは誘導性負荷2から出力バッファ回路100に電流が流入している場合における出力信号VOUTのスルーレート制御の態様を、図3bは出力バッファ回路100から誘導性負荷2に電流が流出している場合における出力信号VOUTのスルーレート制御の態様を各々示している。図2aおよびbに示す第1の態様では、出力信号VOUTのスルーレートを連続的に変化させたが、図3aおよびbに示す第2の態様では、出力信号VOUTのスルーレートを段階的に変化させている。この第2の態様においても、第1の態様と同様、出力バッファ回路100のスイッチング時における電力損失を低減することができる。なお、図3aおよびbに示す例では、出力信号VOUTのスルーレートを2段階に変化させているが、3段階以上に変化させてもよい。<第1実施形態>図4はこの発明の第1実施形態である出力バッファ回路100Aの構成を示す回路図である。本実施形態において、出力部110は、PチャネルMOSFETMetalOxideSemiconductorFieldEffectTransistor;金属-酸化膜-半導体構造の電界効果トランジスタ。以下、単にトランジスタという。111とNチャネルトランジスタ112とにより構成されている。ここで、Pチャネルトランジスタ111のソースは電源VDDに接続され、Nチャネルトランジスタ112のソースは接地されている。そして、Pチャネルトランジスタ111およびNチャネルトランジスタ112は、各々のドレイン同士が接続されており、このドレイン同士の接続点が出力信号VOUTを発生する出力バッファ回路100の出力端子101となっている。上述した基本形態におけるプリドライバ120は、入力信号VINから生成される信号VI_Pに基づいてPチャネルトランジスタ111に対するゲート電圧VGPを生成するPチャネルプリドライバ121Aと、入力信号VINから生成される信号VI_Nに基づいてNチャネルトランジスタ112に対するゲート電圧VGNを生成するNチャネルプリドライバ122Aとにより構成されている。ここで、Pチャネルプリドライバ121Aは、図示の4種類の波形WP1~WP4のゲート電圧VGPを切り換えて出力することが可能な構成となっており、Nチャネルプリドライバ122Aは、図示の4種類の波形WN1~WN4のゲート電圧VGNを切り換えて出力することが可能な構成となっている。電流方向検出部130は、出力端子101と誘導性負荷2との間に介挿された抵抗131とこの抵抗131の電圧降下の極性を判定することにより誘導性負荷2に供給される電流の方向を判定するコンパレータ132とにより構成されている。この例では、誘導性負荷2から出力バッファ回路100に電流が流入している場合にはコンパレータ132がLレベルの信号を出力し、出力バッファ回路100から誘導性負荷2に電流が流出している場合にはコンパレータ132がHレベルの信号を出力するようになっている。スルーレート制御部140Aは、電流方向検出部130における電流方向の検出結果に基づいてPチャネルプリドライバ121Aに出力させるゲート電圧VGPの波形およびNチャネルプリドライバ122Aに出力させるゲート電圧VGNの波形を切り換えるための制御を行う回路である。図5は、4種類の波形WN1~WN4のゲート電圧VGNを切り換えて出力可能なNチャネルプリドライバ122Aの構成例を示す回路図である。図5において、ゲート電圧VGNを伝達する信号線200Nと電源VDDとの間には、スイッチ211および定電流源221からなる直列回路と、スイッチ212および定電流源222からなる直列回路と、スイッチ213および定電流源223からなる直列回路が並列に介挿されている。また、ゲート電圧VGNを伝達する信号線200Nと接地線との間には、スイッチ231および定電流源241からなる直列回路と、スイッチ232および定電流源242からなる直列回路と、スイッチ233および定電流源243からなる直列回路が並列に介挿されている。図4におけるスルーレート制御部140Aは、電流方向検出部130における電流方向の検出結果に基づいて、このNチャネルプリドライバ122Aに出力させるゲート電圧VGNの波形を図4に示す波形WN4およびWN2の組にするか、波形WN3およびWN1の組にするかを決定する。そして、スルーレート制御部140Aは、信号VI_Nのレベル反転が発生したとき、予め定められたシーケンスに従って、Nチャネルプリドライバ122Aのスイッチ211~213、231~233のON/OFFを制御する制御信号SN1~SN6を切り換えることにより、波形WN4およびWN2を有するゲート電圧VGNまたは波形WN3およびWN1を有するゲート電圧VGNを信号線200Nに出力させる。図6a~cは図5に示すNチャネルプリドライバ122Aの動作例を示すタイムチャートである。ここで、図6aは入力信号VINから生成される信号VI_Nの波形を示している。また、図6bはスルーレート制御部140Aが波形WN4およびWN2の組を選択した場合に、図6aに示す信号VI_Nのレベル反転に応じて出力する制御信号SN1~SN6の波形と、その結果得られるゲート電圧VGNの波形を示している。また、図6cは波形WN4およびWN2の組を選択した場合に、図6aに示す信号VI_Nのレベル反転に応じてスルーレート制御部140Aが出力する制御信号SN1~SN6の波形と、その結果得られるゲート電圧VGNの波形を示している。波形WN4およびWN2の組を選択した場合のスルーレート制御部140AおよびNチャネルプリドライバ122Aの動作は次のようになる。まず、信号VI_NがLレベルである場合、制御信号SN1~SN3はHレベル、制御信号SN4~SN6はLレベルとなっており、スイッチ211~213はON、スイッチ231~233はOFFとなっている。信号VI_NがLレベルからHレベルになると、スルーレート制御部140Aは、まず、制御信号SN1~SN3をLレベルとし、スイッチ211~213をOFFにする。このとき、信号線200Nに介在するキャパシタは、電源VDDのレベルに充電されているため、ゲート電圧VGNは電源VDDのレベルとなっている。次にスルーレート制御部140Aは、制御信号SN4をHレベルとしてスイッチ231をONにし、定電流源241を信号線200Nに接続する。この結果、定電流源241による信号線200Nの充電電荷の放電が開始され、ゲート電圧VGNは定電流源241の電流値に比例したスルーレートで低下し始める。次に、所定時間経過後、スルーレート制御部140Aは、制御信号SN5をHレベルとしてスイッチ232をONにし、定電流源241に加えて定電流源242を信号線200Nに接続する。この結果、定電流源241および242による信号線200Nの充電電荷の放電が開始され、ゲート電圧VGNは定電流源241および242の電流値の合計値に比例したスルーレートで低下し始める。次に、さらに所定時間経過後、スルーレート制御部140Aは、制御信号SN6をHレベルとしてスイッチ233をONにし、定電流源241、242に加えて定電流源243を信号線200Nに接続する。この結果、定電流源241、242および243による信号線200Nの充電電荷の放電が開始され、ゲート電圧VGNは定電流源241、242および243の電流値の合計値に比例したスルーレートで低下し始める。このように時間経過に伴って信号線200Nの充電電荷の放電に寄与する定電流源の数が増加するため、図6bに示すように、ゲート電圧VGNの立ち下がり波形は、時間経過に伴ってスルーレートが大きくなる波形WN4となる。その後、信号VI_NがHレベルからLレベルになると、スルーレート制御部140Aは、まず、制御信号SN4~SN6をLレベルとし、スイッチ231~233をOFFにする。このとき、信号線200Nに介在するキャパシタは、接地レベルまで放電されているため、ゲート電圧VGNは接地レベルとなっている。次にスルーレート制御部140Aは、制御信号SN1~SN3をHレベルとしてスイッチ211、212および213をONにし、定電流源221、222および223を信号線200Nに接続する。この結果、定電流源221、222および223による信号線200Nの充電が開始され、ゲート電圧VGNは定電流源221、222および223の電流値の合計値に比例したスルーレートで上昇し始める。次に、所定時間経過後、スルーレート制御部140Aは、制御信号SN3をLレベルとしてスイッチ213をOFFにし、定電流源223を信号線200Nから切り離す。この結果、定電流源221および222による信号線200Nの充電が開始され、ゲート電圧VGNは定電流源241および242の電流値の合計値に比例したスルーレートで上昇し始める。次に、さらに所定時間経過後、スルーレート制御部140Aは、制御信号SN2をLレベルとしてスイッチ212をOFFにし、定電流源222を信号線200Nから切り離す。この結果、定電流源221のみによる信号線200Nの充電が開始され、ゲート電圧VGNは定電流源221の電流値に比例したスルーレートで上昇し始める。このように時間経過に伴って信号線200Nの充電に寄与する定電流源の数が減少するため、図6bに示すように、ゲート電圧VGNの立ち上がり波形は、時間経過に伴ってスルーレートが小さくなる波形WN2となる。波形WN3およびWN1の組を選択した場合のスルーレート制御部140AおよびNチャネルプリドライバ122Aの動作は次のようになる。信号VI_NがLレベルからHレベルになると、スルーレート制御部140Aは、まず、制御信号SN1~SN3をLレベルとし、スイッチ211~213をOFFにする。次にスルーレート制御部140Aは、制御信号SN4~SN6をHレベルとし、スイッチ231~233をONにする。この結果、定電流源241~243が信号線200Nに接続され、定電流源241~243の電流値の合計値に比例したスルーレートでゲート電圧VGNが低下する。従って、ゲート電圧VGNの立ち下がり波形は、急峻な立ち下がり波形WN3となる。その後、信号VI_NがHレベルからLレベルになると、スルーレート制御部140Aは、まず、制御信号SN4~SN6をLレベルとし、スイッチ231~233をOFFにする。次にスルーレート制御部140Aは、制御信号SN1~SN3をHレベルとし、スイッチ211~213をONにする。この結果、定電流源221~223が信号線200Nに接続され、定電流源221~223の電流値の合計値に比例したスルーレートでゲート電圧VGNが上昇する。従って、ゲート電圧VGNの立ち上がり波形は、急峻な立ち上がり波形WN1となる。図4に示すPチャネルプリドライバ121Aも、Nチャネルプリドライバ122Aと基本的に同様な構成となっており、ゲート電圧VGPを伝達する信号線200Pに接続する定電流源の個数を時間経過に伴って増減させることにより、ゲート電圧VGPの波形を、時間経過に伴ってスルーレートが小さくなる立ち下がり波形WP4および時間経過に伴ってスルーレートが大きくなる立ち上がり波形WP2の組にするか、急峻な立ち下がり波形WP3および急峻な立ち上がり波形WP1の組にするかを切り換えることが可能である。図7および図8は、本実施形態において、電流方向検出部130における電流方向の検出結果に基づいて行われるゲート電圧VGPおよびVGNの波形の切り換え動作を示すものである。なお、図7および図8において、破線は本実施形態によるスルーレート制御を行った場合における出力信号VOUT、ゲート電圧VGPおよびVGNの各波形を示すものであり、実線は本実施形態によるスルーレート制御を行わなかった場合における出力信号VOUT、ゲート電圧VGPおよびVGNの各波形を比較のために示すものである。まず、誘導性負荷2から出力バッファ回路100Aに電流が流入している場合、図7上段に破線で例示するように、出力バッファ回路100Aの出力信号VOUTの立ち上がり波形を時間経過に伴ってスルーレートが大きくなる波形とし、立ち下がり波形を時間経過に伴ってスルーレートが小さくなる波形とする必要がある。この場合、スルーレート制御部140Aは、出力バッファ回路100Aの出力信号VOUTを立ち上げる際に、その立ち上がり波形を時間経過に伴ってスルーレートの大きくなる波形とするために、図7下段に示すように、Nチャネルプリドライバ122Aから出力させるゲート電圧VGNを、時間経過に伴ってスルーレートが大きくなる立ち下がり波形WN4に従って変化させる。そして、ゲート電圧VGNの立ち下げにより、出力バッファ回路100AのNチャネルトランジスタ112AがOFFになると、Pチャネルプリドライバ121Aから出力させるゲート電圧VGPを急峻な立ち下がり波形WP3に従って変化させ、出力バッファ回路100AのPチャネルトランジスタ111をOFFからONに移行させる。また、出力バッファ回路100Aの出力信号VOUTを立ち下げる場合、スルーレート制御部140Aは、図7下段に示すように、まず、Pチャネルプリドライバ121Aから出力させるゲート電圧VGPを急峻な立ち上がり波形WP1に従って変化させ、出力バッファ回路100AのPチャネルトランジスタ111をONからOFFに移行させる。Pチャネルトランジスタ111がOFFになると、誘導性負荷2はそれまでに出力バッファ回路100Aに流入させていた電流を維持しようとするが、この電流はPチャネルトランジスタ111のドレインとその背景である半導体基板との間に介在する寄生ダイオードを経由して電源VDDへと流入する。このため、出力信号VOUTは電源VDDの近傍のレベルとなる。そして、Pチャネルトランジスタ111がOFFになると、出力バッファ回路100Aの出力信号VOUTの立ち下がり波形を時間経過に伴ってスルーレートの小さくなる波形とするために、Nチャネルプリドライバ122Aから出力させるゲート電圧VGNを、時間経過に伴ってスルーレートが小さくなる立ち下がり波形WN2に従って変化させる。次に、出力バッファ回路100Aから誘導性負荷2に電流が流出している場合、図8上段に破線で例示するように、出力バッファ回路100Aの出力信号VOUTの立ち上がり波形を時間経過に伴ってスルーレートが小さくなる波形とし、立ち下がり波形を時間経過に伴ってスルーレートが大きくなる波形とする必要がある。そこで、出力バッファ回路100Aの出力信号VOUTを立ち上げる場合に、スルーレート制御部140Aは、図8下段に示すように、まず、Nチャネルプリドライバ122Aから出力させるゲート電圧VGNを急峻な立ち下がり波形WN3に従って変化させ、出力バッファ回路100AのNチャネルトランジスタ112をONからOFFに移行させる。Nチャネルトランジスタ112がOFFになると、誘導性負荷2はそれまでに出力バッファ回路100から流出されていた電流を維持しようとする。この働きにより、Nチャネルトランジスタ112のドレインとその背景である半導体基板接地レベルとの間に介在する寄生ダイオードを経由して誘導性負荷2に電流が流れ込む。このため、出力信号VOUTは接地レベルの近傍のレベルとなる。Nチャネルトランジスタ112がOFFになると、スルーレート制御部140Aは、出力バッファ回路100Aの出力信号VOUTの立ち上がり波形を時間経過に伴ってスルーレートの小さくなる波形とするために、Pチャネルプリドライバ121Aから出力させるゲート電圧VGPを、時間経過に伴ってスルーレートが小さくなる立ち下がり波形WP4に従って変化させる。また、出力バッファ回路100Aの出力信号VOUTを立ち下げる場合、スルーレート制御部140Aは、その立ち下がり波形を時間経過に伴ってスルーレートが大きくなる波形とするため、Pチャネルプリドライバ121Aから出力させるゲート電圧VGPを、時間経過に伴ってスルーレートが大きくなる立ち上がり波形WP2に従って変化させる。このゲート電圧VGPの立ち上げにより出力バッファ回路100AのPチャネルトランジスタ111がOFFになると、Nチャネルプリドライバ122Aから出力させるゲート電圧VGNを急峻な立ち上がり波形WN1に従って変化させ、出力バッファ回路100AのNチャネルトランジスタ112をOFFからONに移行させる。以上が本実施形態において電流方向検出部130の電流方向の検出結果に基づいて行われるゲート電圧VGPおよびVGNの波形の切り換え動作である。本実施形態による出力バッファ回路100Aは、さらにPチャネルゲート電圧判定部150と、Nチャネルゲート電圧判定部160と、インバータ170と、ローアクティブANDゲート171と、NANDゲート172とを有する。これらは、入力信号VINの立ち上がりに応じて出力信号VOUTを立ち上げる場合には、Nチャネルトランジスタ112をONからOFFに移行させてからPチャネルトランジスタ111をOFFからONに移行させ、入力信号VINの立ち下がりに応じて出力信号VOUTを立ち下げる場合には、Pチャネルトランジスタ111をONからOFFに移行させてからNチャネルトランジスタ112をOFFからONに移行させるように、Pチャネルプリドライバ121AによるPチャネルトランジスタ111の駆動とNチャネルプリドライバ122AによるNチャネルトランジスタ112の駆動の順序を制御する駆動順序制御手段を構成している。さらに詳述すると、Pチャネルゲート電圧判定部150は、信号線200Pに出力されるゲート電圧VGPがPチャネルトランジスタ111をOFFさせる範囲内にあるときPチャネルオフ検出信号POFFをアクティブレベルであるHレベルとし、ゲート電圧VGPがPチャネルトランジスタ111をONさせる範囲内にあるときPチャネルオフ検出信号POFFを非アクティブレベルであるLレベルとする回路である。また、Nチャネルゲート電圧判定部160は、信号線200Nに出力されるゲート電圧VGNがNチャネルトランジスタ112をOFFさせる範囲内にあるときNチャネルオフ検出信号NOFFをアクティブレベルであるLレベルとし、ゲート電圧VGNがNチャネルトランジスタ112をONさせる範囲内にあるときNチャネルオフ検出信号NOFFを非アクティブレベルであるHレベルとする回路である。図9aおよびbは、Pチャネルゲート電圧判定部150およびNチャネルゲート電圧判定部160の構成例を各々示す回路図である。図9aに示すPチャネルゲート電圧判定部150において、Nチャネルトランジスタ151および152は、カレントミラーを構成している。ここで、Nチャネルトランジスタ152のドレインと電源VDDとの間には定電流源154が介挿されている。従って、Nチャネルトランジスタ151には、この定電流源154の電流に比例した電流が流れる。このNチャネルトランジスタ151のドレインと電源VDDとの間にはPチャネルトランジスタ153が介挿されており、このPチャネルトランジスタ153のゲートは、Pチャネルトランジスタ111に対するゲート電圧VGPを伝達する信号線200Pに接続されている。そして、インバータ155は、Pチャネルトランジスタ153のドレインの信号のレベルを反転し、上述したPチャネルオフ検出信号POFFとして出力するのである。この構成において、電源電圧VDDおよびゲート電圧VGP間の電圧がPチャネルトランジスタ111の閾値電圧より小さく、Pチャネルトランジスタ111をOFFとみなしてよい程度にPチャネルトランジスタ111のドレイン電流が極めて小さい場合には、Pチャネルトランジスタ153に流すことができるドレイン電流飽和電流も極めて小さくなる。このため、Pチャネルトランジスタ153のドレイン電圧が低下し、インバータ155の出力するPチャネルオフ検出信号POFFがHレベルとなる。これに対し、電源電圧VDDおよびゲート電圧VGP間の電圧がPチャネルトランジスタ111の閾値電圧より大きく、Pチャネルトランジスタ111をONとみなしてよい程度にPチャネルトランジスタ111のドレイン電流が十分に大きい場合には、Pチャネルトランジスタ153に流すことができるドレイン電流飽和電流も大きくなる。このため、Pチャネルトランジスタ153のドレイン電圧が上昇し、インバータ155の出力するPチャネルオフ検出信号POFFがLレベルとなる。次に、図9bに示すNチャネルゲート電圧判定部160において、Pチャネルトランジスタ161および162は、カレントミラーを構成している。ここで、Pチャネルトランジスタ162のドレインと接地線との間には定電流源164が介挿されている。従って、Pチャネルトランジスタ161には、定電流源164の電流に比例したドレイン電流が流れる。このPチャネルトランジスタ161のドレインと接地線との間にはNチャネルトランジスタ163が介挿されており、このNチャネルトランジスタ163のゲートは、Nチャネルトランジスタ112に対するゲート電圧VGNを伝達する信号線200Nに接続されている。そして、インバータ165は、Nチャネルトランジスタ163のドレインの出力信号のレベルを反転し、上述したNチャネルオフ検出信号NOFFとして出力するのである。この構成において、ゲート電圧VGNがNチャネルトランジスタ112の閾値電圧より小さく、Nチャネルトランジスタ112をOFFとみなしてよい程度にNチャネルトランジスタ112のドレイン電流が極めて小さい場合には、Nチャネルトランジスタ163に流すことができるドレイン電流飽和電流も極めて小さくなる。このため、Nチャネルトランジスタ163のドレイン電圧が上昇し、インバータ165の出力するNチャネルオフ検出信号NOFFがLレベルとなる。これに対し、ゲート電圧VGNがNチャネルトランジスタ112の閾値電圧より大きく、Nチャネルトランジスタ112をONとみなしてよい程度にNチャネルトランジスタ112のドレイン電流が十分に大きい場合には、Nチャネルトランジスタ163に流すことができるドレイン電流飽和電流も大きくなる。このため、Nチャネルトランジスタ163のドレイン電圧が低下し、インバータ165の出力するNチャネルオフ検出信号NOFFがHレベルとなる。以上がPチャネルゲート電圧判定部150およびNチャネルゲート電圧判定部160の構成である。図4において、インバータ170は、入力信号VINをレベル反転させて出力する。ローアクティブANDゲート171は、Nチャネルオフ検出信号NOFFがアクティブレベルであるLレベルであるとき、インバータ170の出力信号をレベル反転させ、信号VI_Pとして出力し、そうでない場合はLレベルの信号VI_Pを出力する。NANDゲートは、Pチャネルオフ検出信号POFFがアクティブレベルであるHレベルであるとき、インバータ170の出力信号をレベル反転させ、信号VI_Nとして出力し、そうでない場合はHレベルの信号VI_Nを出力する。以上が駆動順序制御手段の構成である。図10は、誘導性負荷2から出力バッファ回路100Aに電流が流入している場合における出力バッファ回路100Aの全体としての動作を示すタイムチャートである。本実施形態において、入力信号VINがLレベル、出力信号VOUTがLレベルである場合は、Pチャネルオフ検出信号POFFがHレベル、Nチャネルオフ検出信号NOFFがHレベルとなる。この状態において、入力信号VINがLレベルからHレベルに立ち上がると、Pチャネルオフ検出信号POFFがHレベルであることから、NANDゲート172の出力信号VI_NがLレベルからHレベルに立ち上がる矢印Y1。このように信号VI_Nが立ち上がると、スルーレート制御部140Aは、誘導性負荷2から出力バッファ回路100Aに電流が流入している旨の検出結果が電流方向検出部130から出力されているため、Nチャネルプリドライバ122Aが出力するゲート電圧VGNを時間経過に伴ってスルーレートが大きくなる立ち下がり波形WN4に従って立ち下げる制御を行う矢印Y2。そして、ゲート電圧VGNが立ち下がって、Nチャネルトランジスタ112の閾値電圧以下になると、Nチャネルオフ検出信号NOFFがLレベルになるため矢印Y3、ローアクティブANDゲート171の出力信号VI_PがLレベルからHレベルに立ち上がる矢印Y4。このように信号VI_Pが立ち上がると、スルーレート制御部140Aは、誘導性負荷2から出力バッファ回路100Aに電流が流入している旨の検出結果が電流方向検出部130から出力されているため、Pチャネルプリドライバ121Aが出力するゲート電圧VGPを急峻な立ち上がり波形WP3に従って立ち下げる制御を行う矢印Y5。この過程において、電源電圧VDDおよびゲート電圧VGP間の電圧がPチャネルトランジスタ111の閾値電圧よりも大きくなると、Pチャネルオフ検出信号POFFがLレベルとなる矢印Y6。このようにして入力信号VINがHレベル、出力信号VOUTがHレベル、Pチャネルオフ検出信号POFFがLレベル、Nチャネルオフ検出信号がLレベルの状態となる。その後、入力信号VINがHレベルからLレベルに立ち下がると、Nチャネルオフ検出信号NOFFがLレベルであることから、ローアクティブANDゲート171の出力信号VI_PがHレベルからLレベルに立ち下がる矢印Y11。このように信号VI_Pが立ち下がると、スルーレート制御部140Aは、誘導性負荷2から出力バッファ回路100Aに電流が流入している旨の検出結果が電流方向検出部130から出力されているため、Pチャネルプリドライバ121Aが出力するゲート電圧VGPを急峻な立ち上がり波形WP1に従って立ち上げる制御を行う矢印Y12。そして、ゲート電圧VGPが立ち上がって、Pチャネルトランジスタ111のゲートおよびソース間電圧がPチャネルトランジスタ111の閾値電圧より小さくなると、Pチャネルオフ検出信号POFFがHレベルになるため矢印Y13、NANDゲート172の出力信号VI_NがHレベルからLレベルに立ち下がる矢印Y14。このように信号VI_Nが立ち下がると、スルーレート制御部140Aは、誘導性負荷2から出力バッファ回路100に電流が流入している旨の検出結果が電流方向検出部130から出力されているため、Nチャネルプリドライバ122Aが出力するゲート電圧VGNを時間経過に伴ってスルーレートが小さくなる立ち上がり波形WN2に従って立ち上げる制御を行う矢印Y15。この過程において、ゲート電圧VGNがNチャネルトランジスタ112の閾値電圧よりも大きくなると、Nチャネルオフ検出信号NOFFがHレベルとなる矢印Y16。このようにして入力信号VINがLレベル、出力信号VOUTがLレベル、Pチャネルオフ検出信号POFFがHレベル、Nチャネルオフ検出信号がHレベルの状態に戻る。以上のようなゲート電圧VGPおよびVGNの制御が行われる結果、出力バッファ回路100Aの出力信号VOUTの立ち上がり波形は時間経過に伴ってスルーレートが大きくなり、出力信号VOUTの立ち下がり波形は時間経過に伴ってスルーレートが小さくなる。従って、誘導性負荷2から出力バッファ回路100Aに電流が流入している状況における出力バッファ回路100Aの電力損失を低減することができる。図11は、出力バッファ回路100Aから誘導性負荷2に電流が流出している場合における出力バッファ回路100Aの全体としての動作を示すタイムチャートである。既に説明したように、誘導性負荷2から出力バッファ回路100Aに電流が流入している場合図10、スルーレート制御部140Aは、入力信号VINの立ち上がり時には、ゲート電圧VGNを時間経過に伴ってスルーレートが大きくなる立ち下がり波形WN4に従って立ち下げた後、ゲート電圧VGPを急峻な立ち下がり波形WP3に従って立ち下げた。また、スルーレート制御部140Aは、入力信号VINの立ち下がり時には、ゲート電圧VGPを急峻な立ち上がり波形WP1に従って立ち上げた後、ゲート電圧VGNを時間経過に伴ってスルーレートが小さくなる立ち上がり波形WN2に従って立ち上げた。これに対し、出力バッファ回路100Aから誘導性負荷2に電流が流出している場合図11、スルーレート制御部140Aは、入力信号VINの立ち上がり時には、ゲート電圧VGNを急峻な立ち下がり波形WN3に従って立ち下げた後、ゲート電圧VGPを時間経過に伴ってスルーレートが小さくなる立ち下がり波形WP4に従って立ち下げる。また、スルーレート制御部140Aは、入力信号VINの立ち下がり時には、ゲート電圧VGPを時間経過に伴ってスルーレートが大きくなる立ち上がり波形WP2に従って立ち上げた後、ゲート電圧VGNを急峻な立ち上がり波形WN1に従って立ち上げる。このようなゲート電圧VGPおよびVGNの制御が行われる結果、出力バッファ回路100Aの出力信号VOUTの立ち上がり波形は時間経過に伴ってスルーレートが小さくなり、出力信号VOUTの立ち下がり波形は時間経過に伴ってスルーレートが大きくなる。従って、出力バッファ回路100Aから誘導性負荷2に電流が流出している状況における出力バッファ回路100Aの電力損失を低減することができる。以上説明したように、本実施形態によれば、誘導性負荷2に供給される電流の方向に合せて、出力信号VOUTのスルーレートの変化の態様を適切に切り換え、出力バッファ回路100Aの電力損失を低減することができる。<第2実施形態>図12はこの発明の第2実施形態である出力バッファ回路100Bの構成を示す回路図である。この出力バッファ回路100Bでは、上記第1実施形態図4におけるPチャネルプリドライバ121A、Nチャネルプリドライバ122Aおよびスルーレート制御部140Aが、Pチャネルプリドライバ121B、Nチャネルプリドライバ122Bおよびスルーレート制御部140Bに置き換えられている。他の構成要素は、上記第1実施形態のものと同様であるので、上記第1実施形態において各々に使用された符号と共通の符号を使用して、それらについての説明を省略する。Pチャネルプリドライバ121Bにおいて、ゲート電圧VGPを伝達する信号線200Pと電源VDDとの間にはPチャネルトランジスタ251が介挿され、同信号線200Pと接地線との間にはNチャネルトランジスタ252が介挿されている。これらのPチャネルトランジスタ251およびNチャネルトランジスタ252は、各々のゲートにローアクティブANDゲート171の出力信号VI_Pが与えられており、同信号VI_Pをレベル反転して出力するインバータを構成している。また、信号線200Pと電源VDDとの間にはPチャネルトランジスタ253および255が直列に介挿され、同信号線200Pと接地線との間にはNチャネルトランジスタ254および256が直列に介挿されている。ここで、Pチャネルトランジスタ253およびNチャネルトランジスタ254の各ゲートには信号VI_Pが与えられる。また、Pチャネルトランジスタ255およびNチャネルトランジスタ256のON/OFFはスルーレート制御部140Bによって切り換えられる。Pチャネルトランジスタ255およびNチャネルトランジスタ256がOFFである場合、Pチャネルトランジスタ251およびNチャネルトランジスタ252からなるインバータのみが信号VI_Pに基づいて信号線200Pを駆動する。従って、この状態におけるPチャネルプリドライバ121Bの利得は低い。Pチャネルトランジスタ255およびNチャネルトランジスタ256がONである場合、Pチャネルトランジスタ251およびNチャネルトランジスタ252からなるインバータと、Pチャネルトランジスタ253およびNチャネルトランジスタ254からなるインバータとが並列接続された状態になり、この並列接続されたインバータが信号VI_Pに基づいて信号線200Pを駆動する。従って、この状態におけるPチャネルプリドライバ121Bの利得は高くなる。Nチャネルプリドライバ122Bも、基本的にPチャネルプリドライバ121Bと同様な機能の回路であり、Pチャネルトランジスタ261、263および265と、Nチャネルトランジスタ262、264および266とにより構成されている。スルーレート制御部140Bにおいて、インバータ141は、電流方向検出部130のコンパレータ132の出力信号をレベル反転して出力する。インバータ142は、出力バッファ回路100Bの出力信号VOUTをレベル反転して出力する。ローアクティブANDゲート143は、インバータ141および142の出力信号の両方がLレベルである場合に利得制御信号GCPをHレベルとし、それ以外の場合はLレベルとする。Pチャネルプリドライバ121BのPチャネルトランジスタ255のゲートにはこの利得制御信号GCPが供給され、Nチャネルトランジスタ256のゲートには利得制御信号GCPをインバータ145によってレベル反転した信号が供給される。ANDゲート144は、インバータ141および142の出力信号の両方がHレベルである場合に利得制御信号GCNをHレベルとし、それ以外の場合はLレベルとする。Nチャネルプリドライバ122BのPチャネルトランジスタ265のゲートにはこの利得制御信号GCNが供給され、Nチャネルトランジスタ266のゲートには利得制御信号GCNをインバータ146によってレベル反転した信号が供給される。このような構成において、誘導性負荷2から出力バッファ回路100Bに電流が流入しており、コンパレータ132の出力信号がLレベルである場合、ローアクティブANDゲート143が出力する利得制御信号GCPはLレベルになる。従って、Pチャネルプリドライバ121Bの利得は高くなる。一方、ANDゲート144が出力する利得制御信号GCNは出力バッファ回路100Bの出力信号VOUTのレベルに依存する。出力信号VOUTがインバータ142の論理スレッショルドよりも低い場合、利得制御信号GCNはHレベルとなり、Nチャネルプリドライバ122Bの利得は低くなる。また、出力信号VOUTがインバータ142の論理スレッショルドよりも高い場合、利得制御信号GCNはLレベルとなり、Nチャネルプリドライバ122Bの利得は高くなる。これに対し、出力バッファ回路100Bから誘導性負荷2に電流が流出しており、コンパレータ132の出力信号がHレベルである場合、ANDゲート144が出力する利得制御信号GCNはLレベルになる。従って、Nチャネルプリドライバ122Bの利得は高くなる。一方、ローアクティブANDゲート143が出力する利得制御信号GCPは出力バッファ回路100Bの出力信号VOUTのレベルに依存する。出力信号VOUTがインバータ142の論理スレッショルドよりも低い場合、利得制御信号GCPはLレベルとなり、Pチャネルプリドライバ121Bの利得は高くなる。また、出力信号VOUTがインバータ142の論理スレッショルドよりも高い場合、利得制御信号GCPはHレベルとなり、Pチャネルプリドライバ121Bの利得は低くなる。このようにスルーレート制御部140Bは、誘導性負荷2から出力バッファ回路100Bに電流が流入している場合は、出力信号VOUTのレベルに応じて、Nチャネルプリドライバ122Bの利得を切り換えることにより、出力信号VOUTのスルーレートの制御を行い、出力バッファ回路100Bから誘導性負荷2に電流が流出している場合には、出力信号VOUTのレベルに応じて、Pチャネルプリドライバ121Bの利得を切り換えることにより、出力信号VOUTのスルーレートの制御を行うものである。図13は、誘導性負荷2から出力バッファ回路100Bに電流が流入している場合における出力バッファ回路100の全体としての動作を示すタイムチャートである。また、図14は、出力バッファ回路100Bから誘導性負荷2に電流が流出している場合における出力バッファ回路100の全体としての動作を示すタイムチャートである。本実施形態において、信号POFF、NOFF、VI_P、VI_Nの挙動は上記第1実施形態図10、図11と同様である。本実施形態と上記第1実施形態との相異は、上記第1実施形態では予め決められたシーケンスに従ってゲート電圧VGP、VGNを変化させて出力信号VOUTのスルーレートを変化させたのに対し、本実施形態では出力信号VOUTのレベル変化に応じてPチャネルプリドライバ121BまたはNチャネルプリドライバ122Bの利得を変化させることにより出力信号VOUTのスルーレートを変化させる点にある。図13に示す動作では、誘導性負荷2から出力バッファ回路100Bに電流が流入しているので、利得制御信号GCPはLレベルとなっている。そして、信号VI_Nが立ち上がるとき、出力信号VOUTのレベルはインバータ142の論理スレッショルドVthよりも低い。このため、利得制御信号GCNはHレベルとなっており、Nチャネルプリドライバ122Bの利得は低くなっている。従って、信号VI_Nの立ち上がりに応じて、ゲート電圧VGNは小さなスルーレートで立ち下がり始める。この結果、Nチャネルトランジスタ112は次第にOFFへと向かい、出力信号VOUTは小さなスルーレートで立ち上がる。そして、出力信号VOUTがインバータ142の論理スレッショルドVthを上回ると、利得制御信号GCNがLレベルとなり、Nチャネルプリドライバ122Bの利得が高い利得に切り換えられる。この結果、ゲート電圧VGNのスルーレートおよび出力信号VOUTのスルーレートは大きなスルーレートに変化する。その後、信号VI_Pが立ち上がる。この場合、利得制御信号GCPがLレベルであるので、Pチャネルプリドライバ121Bは、大きなスルーレートでゲート電圧VGPを立ち下げる。次に入力信号VINが立ち下がって信号VI_Pが立ち下がると、Pチャネルプリドライバ121Bは、大きなスルーレートでゲート電圧VGPを立ち上げる。その後、信号VI_Nが立ち下がるとき、出力信号VOUTのレベルはインバータ142の論理スレッショルドVthよりも高いので、利得制御信号GCNはLレベルとなっている。従って、信号VI_Nの立ち下がりに応じて、ゲート電圧VGNは大きなスルーレートで立ち上がり始める。この結果、出力信号VOUTは大きなスルーレートで立ち下がる。そして、出力信号VOUTがインバータ142の論理スレッショルドVthを下回ると、利得制御信号GCNがHレベルとなり、Nチャネルプリドライバ122Bの利得が低い利得に切り換えられる。この結果、ゲート電圧VGNのスルーレートおよび出力信号VOUTのスルーレートは小さなスルーレートに変化する。このように誘導性負荷2から出力バッファ回路100Bに電流が流入している状況では、出力信号VOUTは、立ち上がりの過程において小さなスルーレートから大きなスルーレートに切り換えられ、立ち下がりの過程において大きなスルーレートから小さなスルーレートに切り換えられる。図14に示す動作では、出力バッファ回路100Bから誘導性負荷2に電流が流出しているので、利得制御信号GCNはLレベルとなっている。従って、信号VI_Nの立ち上がりに応じて、ゲート電圧VGNは大きなスルーレートで立ち下がる。そして、信号VI_Pが立ち上がるとき、出力信号VOUTのレベルはインバータ142の論理スレッショルドVthよりも低い。このため、利得制御信号GCPはLレベルとなっており、Pチャネルプリドライバ121Bの利得は高くなっている。従って、信号VI_Pの立ち上がりに応じて、ゲート電圧VGPは大きなスルーレートで立ち下がり始める。この結果、出力信号VOUTは大きなスルーレートで立ち上がり始める。そして、出力信号VOUTがインバータ142の論理スレッショルドVthを上回ると、利得制御信号GCPがHレベルとなり、Pチャネルプリドライバ121Bの利得が低い利得に切り換えられる。この結果、ゲート電圧VGPのスルーレートおよび出力信号VOUTのスルーレートは小さなスルーレートに変化する。次に入力信号VINが立ち下がって信号VI_Pが立ち下がるとき、出力信号VOUTのレベルはインバータ142の論理スレッショルドVthよりも高いので、利得制御信号GCPはHレベルとなっている。従って、信号VI_Pの立ち下がりに応じて、ゲート電圧VGPは小さなスルーレートで立ち上がり始める。この結果、出力信号VOUTは小さなスルーレートで立ち下がる。そして、出力信号VOUTがインバータ142の論理スレッショルドVthを下回ると、利得制御信号GCPがLレベルとなり、Pチャネルプリドライバ121Bの利得が高い利得に切り換えられる。この結果、ゲート電圧VGPのスルーレートおよび出力信号VOUTのスルーレートは大きなスルーレートに変化する。このように出力バッファ回路100Bから誘導性負荷2に電流が流出している状況では、出力信号VOUTは、立ち上がりの過程において大きなスルーレートから小さなスルーレートに切り換えられ、立ち下がりの過程において小さなスルーレートから大きなスルーレートに切り換えられる。従って、本実施形態によれば、上記第1実施形態と同様、出力バッファ回路100Bの電力損失を低減することができる。以上、この発明の一実施形態について説明したが、これ以外にも、この発明には他の実施形態が考えられる。例えば次の通りである。1上記第1実施形態では、ゲート電圧VGPおよびVGNを変化させるのに寄与する定電流源の個数を3段階に切り換えるようにしたが、定電流源の個数は2段階に切り換えるようにしてもよく、逆に4段階以上に切り換えるようにしてもよい。2上記第1実施形態において、時定数回路を用いることにより、波形WP1~WP4を有するゲート電圧VGP、波形WN1~WN4を有するゲート電圧VGNを発生するようにしてもよい。3上記第2実施形態では、Pチャネルプリドライバ121BおよびNチャネルプリドライバ122Bの利得を2段階に切り換えたが、出力信号VOUTのレベルを判定するための閾値を2種類以上設け、Pチャネルプリドライバ121BおよびNチャネルプリドライバ122Bの利得を3段階以上に切り換えるようにしてもよい。4上記各実施形態では、誘導性負荷2に直列接続された抵抗131の電圧降下の極性に基づき、誘導性負荷2に供給される電流の方向を検出したが、Pチャネルトランジスタ111およびNチャネルトランジスタ112の各々のドレインおよびソース間電圧に基づいて、誘導性負荷2に供給される電流の方向を検出する構成としてもよい。5上記各実施形態では、駆動順序制御手段を設け、Pチャネルトランジスタ111およびNチャネルトランジスタ112を別個のプリドライバにより駆動した。しかし、Pチャネルトランジスタ111およびNチャネルトランジスタ112間を流れる貫通電流を許容できる場合には、Pチャネルトランジスタ111およびNチャネルトランジスタ112を共通のプリドライバにより駆動する構成としてもよい。この場合、誘導性負荷から出力バッファ回路に電流が流入している場合には、出力バッファ回路の出力信号VOUTを立ち上げるときのプリドライバの出力信号の立ち下がり波形を時間経過に伴ってスルーレートが大きくなる波形WN4とし、出力バッファ回路の出力信号VOUTを立ち下げるときのプリドライバの出力信号の立ち上がり波形を時間経過に伴ってスルーレートが小さくなる波形WN2とすればよい。また、出力バッファ回路から誘導性負荷に電流が流出している場合には、出力バッファ回路の出力信号VOUTを立ち上げるときのプリドライバの出力信号の立ち下がり波形を時間経過に伴ってスルーレートが小さくなる波形WP4とし、出力バッファ回路の出力信号VOUTを立ち下げるときのプリドライバの出力信号の立ち上がり波形を時間経過に伴ってスルーレートが大きくなる波形WP2とすればよい。6上記各実施形態では、出力バッファ回路を電界効果トランジスタにより構成したが、出力バッファ回路をバイポーラトランジスタにより構成してもよい。