□ H24年04月期 A-15  Code:[HC0501] : 無線機器に用いられるDSPの動作原理と特徴
インデックス
検索サイトから来た方は…
無線工学の基礎 トップ

以下をクリックすると、元のページが行き先に飛び、このウインドウは閉じます

 ■ 無線工学を学ぶ
 (1) 無線工学の基礎 
 年度別出題一覧
  H11年 4月期,8月期,12月期
  H12年 4月期,8月期,12月期
  H13年 4月期,8月期,12月期
  H14年 4月期,8月期,12月期
  H15年 4月期,8月期,12月期
  H16年 4月期,8月期,12月期
  H17年 4月期,8月期,12月期
  H18年 4月期,8月期,12月期
  H19年 4月期,8月期,12月期
  H20年 4月期,8月期,12月期
  H21年 4月期,8月期,12月期
  H22年 4月期,8月期,12月期
  H23年 4月期,8月期,12月期
  H24年 4月期,8月期,12月期
  H25年 4月期,8月期,12月期
  H26年 4月期,8月期,12月期
  H27年 4月期,8月期,12月期
  H28年 4月期,8月期,12月期
  H29年 4月期,8月期,12月期
 分野別出題一覧
  A 電気物理, B 電気回路
  C 能動素子, D 電子回路
  E 送信機, F 受信機
  G 電源, H アンテナ&給電線
  I 電波伝搬, J 計測

 ■ サイトポリシー
 ■ サイトマップ[1ama]
 ■ リンクと資料
 ■ Radio-GXK Profile

 ■ メールは下記まで



更新履歴
2017年
08/20 08月期問題頁掲載
05/19 04月期問題頁掲載
2016年
12/13 12月期問題頁掲載
H2404A15 Counter
無線工学 > 1アマ > H24年04月期 > A-15
A-15 次の記述は、無線通信機器に使用されている基本的なDSP(デジタルシグナルプロセッサ(Digital Signal Processor))を用いたデジタル信号処理について述べたものである。[ ]内に入れるべき字句の正しい組合せを下の番号から選べ。
(1) デジタル信号処理では、例えば音声のアナログ信号を [A]でデジタル信号に変換してDSPと呼ばれるデジタル信号処理専用のプロセッサに取り込む。
(2) DSPは、信号を[B]するので、複雑な信号処理が可能である。また、処理部の[C]の入れ替えでいくつもの機能を実現できるものもある。

A-D変換器 位相変換 モデム
A-D変換器 演算処理 ソフトウエア
A-D変換器 位相変換 ソフトウエア
D-A変換器 位相変換 ソフトウエア
D-A変換器 演算処理 モデム

 最近の無線機には、売り文句として「DSP搭載」を謳った物が多くなってきています。そもそもこのDSP(デジタル・シグナル・プロセッサ)とは、何なのでしょうか? そして、どんな働きをするものなのでしょうか? このあたりから入って行くことにします。

[1]DSPとは何を目的としたデバイスか?

 まず始めに確認しておきますが、DSPというのはCPUやオペアンプといったICの一種です。そして、入力も出力もデジタル信号です。DSPを直訳すれば、デジタル信号処理プロセッサで、入出力がデジタル信号なので、中で行なわれていることは、デジタルの信号に対して何か処理(=演算)を施してデジタル出力を得る、という働きです。
 これでは抽象的過ぎて、何だかよく分かりませんので、「信号を処理する」ということがどういうことなのか、アナログ信号の例で考えてみます。
 無線で用いられる信号を周波数で分けると、音声等のAF信号、中間周波信号(IF)、高周波信号(RF)の3種類です。
 昔のオールアナログの無線機の中では、これらの信号に、必要な周波数成分のみを取り出す=フィルタ、高域或いは低域を強調する=微積分、周波数を変換する=周波数混合、信号波を搬送波に乗せる=変調、といった目的のため、それぞれアナログ回路が搭載されています。(Fig.HC0501_a上)
 こういったフィルタリングやミキシング、変調といった信号処理を、デジタル的に行なうために開発されたのが、DSPです。
Fig.HC0501_a DSPの使われ方
Fig.HC0501_a
DSPの使われ方
 我々の音声や高周波信号はアナログ信号ですから、DSPで処理を行うためには、入口でA/D変換を、出口でD/A変換を行う必要があります。(但し、デジカメやデータ通信に用いられているデータ圧縮用のDSP等では、入力も出力もデジタル値ですので、この限りでないものも存在します。)
 では、何故、A/DやD/A変換というコストや技術難易度がアップする手段を使ってまで、DSPを使う必要があるのでしょうか?

[2]DSPを使うメリットは何か

 ここでは、DSPを使うことの利点を、デバイスの特徴に即して一つずつ見て行きます。

(1) デジタル信号を扱うデバイスである

 DSPの内部処理は全てデジタル値で行われますから、周囲温度が変化しても、部品の特性がバラついたり経時で劣化しても、電源電圧が変動しても、(エラーが起きない範囲では)全く同じ結果が得られます。従来のL、C、Rと個別半導体(ダイオード、トランジスタ等)で構成したアナログ回路では、こうは行きません。温度による特性の変化(特にコンデンサ)、部品バラツキに対処するには、調整が必要になることもあり、調整機構を組み込まなければなりません。アナログ信号処理は、設計者の腕の見せどころではありましたが、デジタルで安価に実現できる今となっては、「そこまでやるか」という商品は、コストで勝てません。
 それに、量産時に部品バラツキを考慮する必要がない、動作時に環境変動や部品の長期安定性に対する考慮も必要ない、というのは、大きなメリットです。

(2) ソフトウェアで処理の特性を変更できる

 DSPはソフトウェア(プログラム)で動作するので、これがなければ動作しません。その昔、パソコンが一般的になり始めた頃に「パソコンは、ソフト無ければただの箱」という言葉がありましたが、DSPも同じく「DSP、ソフト無ければただの石」です。DSPをフィルタにしたければフィルタのソフトを、変調器にしたいなら変調器のソフトを開発して、それが走るようにしてやらなければなりません。
 逆に言えば、この汎用性により、LPFとして使っていたものを、配線を変更せずにHPFに変えたりすることも容易です。また、例えばLPFであれば、カットオフ周波数、スロープ特性(dB/oct値)、帯域内リプルといった、アナログ回路だと部品を交換しなければ変えられない特性を、DSPならソフトウェアで変更する、ということが可能です。
 その昔、私のHFの無線機(TS-830でした)では、中間周波数段に入れるCWの狭帯域フィルタが、500 [Hz]のものと270 [Hz]のものを1本ずつ入れられるようになっていて、バンドコンディションに応じてスイッチで切り替えて使っていました。しかし、DSPがあれば、使用するソフトを変えるだけで、ハードを2系統用意する必要はありません。

(3) アナログ回路では達成し得ない特性が実現可能

 あまりアマチュアには縁がありませんが、上記のソフトで特性を制御可能であることに関連して、フィルタ等では、ソフトウェア(と言うより内部の数値テーブルの値)を最適化することにより、アナログ回路では実現できないシャープエッジ、かつ帯域内リプルが小さい特性を実現することが可能です。
 また、能力の高い(動作周波数の高い&一度に処理できるデータが多い)DSPであれば、入力2信号にそれぞれフィルタを掛けた上で乗算する、といった複数の処理を並列に実行できます。これも、アナログ回路で一つの回路要素では不可能ですので、DSPならでは、のメリットです。

 デジタルデバイスであるが故に、無線機用途ではA/D・D/Aが必要(コストup)であるとか、ソフトウェアを開発する必要がある(これもコストup)といったデメリットもありますが、上記のメリットがデメリットを上回ると判断される用途には、どんどん使われています。

[3]DSPの内部構造とCPUとの違い

 上で、「ソフト無ければただの石」と書きましたが、「ソフトで動くのは(パソコンにも使われている)CPUも同じハズ。CPUと何が違うのかCPUで信号処理のプログラムを走らせてはダメなのか?」という疑問もわきます。手っ取り早く書くと、ほとんどの用途でダメ、あるいは、現実的ではありません。では、何がどうダメなのでしょうか?
Fig.HC0501_b DSPの内部構造とCPUとの違い
Fig.HC0501_b
DSPの内部構造とCPUとの違い
 まず、デジタル信号処理でよく用いられる演算を、Fig.HC0501_bの左に示します。これは、aとbというデジタルの2変量があって、それらを乗算した結果cをどんどん加えて行く、というものです。実際の信号処理はもっと複雑ですが、細かく分けて行くと、こんな要素からなり立っています。この「乗算の結果をある別の結果に加えて行く」という演算を「積和演算と呼びます。
 aやbは実際には時系列でどんどん流れてくる、アナログ信号をA/D変換したサンプル値{ai}やメモリに入っている定数{bi}です。DSPに供給されるクロックに合わせて、この積和演算を、猛烈な速さでこなして行きます。
 DSPの能力にもよりますが、多くのDSPでは、一回の積和演算が1命令(1命令とは、「乗算」と「加算」といった、複数の命令を組合せなくても良い、という意味)になっており、1クロック、又は数クロックで終えることができます。ところが、CPUでは、積和演算は通常は「乗算」と「加算」という2命令に分けて実行しなければならず、しかも、乗算は数10から数100クロックも要します
 入力の周波数が低いうち(音声周波数程度)は何とかなりますが、IF周波数のように数100 [kHz]から数 [MHz]になってくると、処理が間に合いません。それに、CPUは「計算」に特化したデバイスではないので、処理には電力も食いますが、DSPは積和演算を最小限の回路動作で実現するアーキテクチャ(構造)になっているので、同じ分量の演算をさせたとすると、CPUより圧倒的に低消費電力です。
 なぜ、DSPで高速演算が可能か、という理由を内部構造から説明するため、Fig.HC0501_bの右側にCPUのアーキテクチャとの比較を書いてみました。この図の中で、CPUにもDSPにもあるALUというのは、計算を実行する回路、メモリは、CPUやDSPの内部にあるメモリで、プログラム命令を溜めておくプログラムメモリと、データを溜めておくデータメモリがあります。コントローラというのは、プログラムに書かれた命令に従って、全体の動きを制御する回路です。
 CPU(同図右上)はメモリとコントローラ、ALUが全て同じバス(信号の通路)上に繋がっています。このような構造になっていると、コントローラがプログラム命令を読むためにメモリにアクセスしている間は、ALUがバスを使えないので、待たされます。逆にALUがバスを占有している間は、コントローラがプログラムを読み込みできないということになります。
 DSP(同図右下)では、コントローラとプログラムメモリ間、MAC,ALUとデータメモリ間にそれぞれ独立のバスを持っているので、コントローラとMAC,ALUが同時に目的とするデータにアクセスすることが可能で、これが高速化に寄与します。鉄道の単線区間を複線区間にすると、単位時間当たりに通せる列車の数が、2倍よりはるかに増えるのと同じ理屈です。
 このようなアーキテクチャを、ハーバードアーキテクチャといい、DSPではこれを採用していないものはありません。CPUよりDSPが信号処理に向いているのは、このハーバードアーキテクチャと、信号処理向けに特化した積和演算ユニットのおかげ、ということができます。

[4]DSPのトリビア

 DSPは10年以上前からありますが、1アマへの出題はこれまでなかったため、いきなり以下のような細かいことは問われないと思いますが、「明日使える予備知識」として書いておきます。
  • 浮動小数点型と整数型…DSPには浮動小数点型と整数型があります。両者の違いは演算精度です。浮動小数点型の方が演算精度が高く、その分回路も複雑、高価になります。デジタルテレビ放送(テレビ受像機側)に必須なFFT(高速フーリエ変換)等、精度の必要な用途には浮動小数点型が用いられます。
  • 汎用品と専用品プログラムを入れ替えることで、(チップの能力の範囲内で)ほとんどどんな処理でも可能なのが汎用品です。反対に、用途を限られている代わりに、その用途に特化したアーキテクチャにすることで、極限までチップサイズ(=コスト)や消費電力を低減したものが専用品です。専用品は、通常は大量に販売されるコンシューマ製品向けの特別仕様で、市販はされていません。国家試験に出題されるのは、断りがない限り汎用品です。
  • CPUの代わりにパソコンに積めば?…CPUはDSPの代わりにできない、と書きましたが、逆にDSPをパソコンのCPUの代わりに積んだらスーパーコンピュータができやしないか?これも多分無理です。DSPは積和演算は高速ですが、自分の外とのメモリアクセス命令や周辺ICの制御命令といった、CPUの得意とする多彩な命令を持っていません。DSPとCPUは互いに補完する役割、と考えた方がよいでしょう。

それでは、解答に移ります。
 …アナログ信号をデジタル信号に変換するのはA-D変換器です
 …DSPで行なわれるのは、信号の演算処理です
 …信号処理の内容はソフトウエアを変更することで変えられます
となりますから、正解はと分かります。