連載
» 2012年03月09日 16時27分 UPDATE

Design Hands-on:デジタル制御電源を学ぶ(3) バックコンバータでデジタル制御を実践する (1/3)

本連載ではこれまで、“導入編”として、「デジタル電源は何がどう“デジタル”なのか」という基本中の基本を押さえるとともに、ソフトウェアによるデジタル制御を実現する制御ICの特徴について解説した。今回からはいよいよ“実践編”に入る。デジタル電源設計の実際の流れをつかんでほしい。

[増田浩一,新日本無線]

電源の要求仕様分析から始めよう

 電源のデジタル制御を実装する上で重要なのは、実現すべき電源の要求仕様を分析して、制御の方式を設計するという作業である。表1のバックコンバータ(降圧型DC-DCコンバータ)を例に、具体的に説明しよう。

 「制御の方式を設計する」とは、電源の要求仕様を基に、電源の制御に必要な一連の処理(電圧制御や過電流保護、過電圧保護といった処理)それぞれについて、次の3つの項目を策定することだ。

  1. デジタル制御ICのハードウェアで実行するか、ソフトウェアで実行するかを選択する。
  2. 周期的に実行するもの(周期処理)と事象が発生した時に処理するもの(即時処理)、定常的に処理するもの(通常処理)に分類する。
  3. ソフトウェアで実行するものについて実行順序を決めるための優先順位を設定する。
表1 表1 電源の要求仕様分析 (クリックで拡大)

 それでは、これら3つの項目を策定する際に考慮すべきポイントを順番に見ていこう。(1)ハードウェア/ソフトウェアの選択では、100ns以下の短時間で完了させることが求められ、ソフトウェアでは実現できないような処理や、ハードウェアが元々その仕組みを持っているような処理については、積極的にハードウェアで実行すべきだ。ソフトウェア処理を減らせば、単にCPUの処理時間を削減可能というだけでなく、電源性能の向上につながる演算方法を適用することもできるからだ。

 (2)周期処理/即時処理/通常処理の分類では、次のように分類するのが一般的である。つまり、固定周期で処理しなければならない電圧制御(デジタルフィルタの演算)は周期処理、事象(外部イベント)が発生した時に処理しなければならない過電圧保護やUART通信は即時処理、前記処理が実行されていない期間に処理する受信コマンド実行は通常処理とする。そして、ソフトウェアによる周期処理と即時処理については、ハードウェアと連動したCPU割り込みで実行させる。

 (3)実行優先順位の設定は、常に1つの処理しか実行できないCPUに対して、「現在実行中の処理を保留してでも優先すべき処理は何か」に関する判断基準を与えるものだ。短い処理時間しか許容されない(高いリアルタイム応答性が求められる)処理ほど、優先順位を高く設定しなければならない。具体的には、電源の安全性に関わる過電圧保護の優先順位が最も高く、出力の安定性に関わる電圧制御がそれに続く。

ハードの動作を設定しソフトと連動させる

 デジタル制御ICを構成する各ハードウェアブロック(A-D変換器、PWM波形生成器、イベント検出器、UART通信器)の処理内容が決定したら、それらに所望の動作をさせるための設定方法を確認しよう。

 図1は、バックコンバータのデジタル制御に関わるハードウェアのブロック図だ。各ハードウェアには、その動作を決定するための情報を格納する、I/Oレジスタと呼ばれる領域がある。これらのレジスタには、識別用のアドレスが割り振られており、CPUからバスを介して読み書きすることで所望の動作を設定できる。CPUから見れば、メモリへのアクセスと同じ仕組みだ。

図1 図1 デジタル制御に関わるハードウェアのブロック図 (クリックで拡大)

 それでは、一連の処理それぞれについて、I/Oレジスタの設定でどのように各ハードウェアを動作させるか見ていこう。

 まずは電圧制御だ。PWM波形生成器は、スイッチング周期でPWM0から矩形波を出力するとともに、A-D変換器に対して変換開始の要求を出す。A-D変換器はこれを受けて処理を始め、入力電圧(VI)と出力電圧(VO)の大きさをA-D変換してデジタルデータ化し、それが完了するとCPUに割り込み要求を発行する。この動作はスイッチング周期で繰り返すので、CPUへの割り込み要求は固定周期で生じることになる。

 次は、過電圧保護とUART通信だ。過電圧保護では、外部イベント入力(EV1)を監視しているイベント検出器が外部イベントの発生を捉えたときに、そしてUART通信ではUART通信器の送受信が完了したときに、それぞれCPU割り込み要求を出す。これらの動作は事象が発生した場合しか実行されないので、CPU割り込み要求は不定期に生じる。

 ここで注目してほしいのは、電圧制御の周期処理、過電圧保護とUART通信の即時処理は、いずれもCPUに割り込み要求している点だ。あらかじそれぞれのCPU割り込み要求にソフトウェア処理を関連付けておけば、CPU割り込み要求が発生するたびに関連付けたソフトウェア処理が実行される。これが、ハードウェアとソフトウェアが連動する仕組みである。

 最後は過電流保護だ。イベント検出器は、入力信号の1つ(図1中のEV0)を監視しており、それで外部イベントを検出すると、PWM出力をオフ状態へ強制的に遷移させる要求を出す。PWM波形生成器はこれを受けてPWM信号の出力(PWM0)をその周期内のみオフ状態に遷移させる。この動作は、CPUが介在せずにハードウェアブロック同士が連動するので、処理時間に100ns以内という制約がある処理に適用できる。

 ここまでに説明したような、各ハードウェアが連動する仕組みやハードウェアとソフトウェアが連動する仕組みを積極的に活用すれば、ソフトウェア処理を軽減できる。実際に、電圧制御のソフトウェア処理で必要不可欠なI/Oレジスタの読み書きは、A-D変換器の変換結果の取得、PWM波形生成器のオン時間の更新、そしてCPU割り込み要求の解除のみである。

       1|2|3 次のページへ

Copyright© 2014 ITmedia, Inc. All Rights Reserved.

エンジニア電子ブックレット

EDN 海外ネットワーク

All material on this site Copyright © 2005 - 2013 ITmedia Inc. All rights reserved.
This site contains articles under license from UBM Electronics, a division of United Business Media LLC.