Explorer(IE)のバージョンをサポートしておりません。最適なウェブサイトパフォーマンスを実現するため、最新バージョンのブラウザへアップデートしていただくことをお勧めします。簡単な4つの検索方法1.検索したい用語を入力した後、そのままエンターキーを押すか、サーチアイコンをクリックしてください。入力された用語でそのまま検索されます。2.検索したい用語を入力すると、ドロップダウンで検索の提案が表示されます。提案された項目をクリックすると、関連のページが直接表示されます。3.検索の提案の右端にマウスを持っていくと「検索」のリンクが表示されます。これをクリックすると、提案された用語に基づく検索結果が表示されます。4.検索結果のページには、結果を絞り込むフィルタが表示されます。こちらもご活用ください。MODE」という機能を持つ製品があります。これはいろいろな用途で使える機能と思いますが、このときの出力レベルは図3のような形になります。MODEに対応している製品は以下のものがあります(一例)。[Hz])で出力レベルがゼロとなるsinc関数になります。MODEでは、なんと!そこで最大になります...。この技術ノートでは、このカーブがどんな成り立ちで出来上がっているか、数式的にどのように表されるのかを考えてみます。MODEによる出力レベルのようす(AD9739)通常のDAC出力レベルはsinc関数上に乗っていると言われるがホントにそうなるの?まずは図1のような一般的なDAC出力での、出力レベル対周波数特性がどうなるかを考えてみました。いう私も、最初は各種文献での説明や、社内の技術資料などでも見つけることができず、「ホントにそうなるの?」という答えが出ず、だいぶ自問自答していたものです。実は図4から図5へのアイディアに考えが行きつくまでに、かなり時間がかかりました...。何年もと言ってもいいかもしれません。[Hz]に近くなるにしたがい、出力レベルが小さくなります。この出力レベルはsinc関数上に乗ると言われています。正弦波で考える出力信号s(t)は、となりsinc関数で出力レベルが低減していきます。ここでAは本来DACとして出したい出力レベル、fは周波数、tは時間です。図3を見ても0.25・fsで-1dB程度、0.5・fsでは-4dB程度になることがわかります。まあ実際のところは0.5・fs前後では折り返しのスペクトルも出てきますので、それをフィルタリングする必要性があるなど、使いづらいこともあろうかと思いますが...。DAC出力レベルはsinc関数(4fsまで表示)。0.5fsで出力すると-4dB程度までレベルが減衰するDAC出力レベルはなぜsinc関数に乗るのかDAC出力を周波数軸でみると、その出力レベルの変動が式(1)のようにsinc関数に乗ることは、どの文献でも書かれています。sinc関数としてのスペクトルは「孤立矩形パルスのフーリエ変換(周波数軸表現)」です...。DACのように連続して出力する矩形波形(図1や図2)は「ホントに孤立波でのsinc関数の考え方を当てはめてしまっていいの?当てはめることができるの?」とずっと思っていました。理論的な本に「パワー・スペクトルは、その連続信号の自己相関をとった波形をフーリエ変換したもの」という表現があり、矩形の連続波の自己相関は孤立三角波になります。この理論的説明との関係がイメージできませんでした(実は計算すれば、これもつじつまがあっていた)。[s]の時間ずつとして分離しているものが(孤立矩形波のパルスとして)連続的に到来している、と考えればよいことに気が付きました。それが1Ωの抵抗に加わっているのであれば、その抵抗を熱するスペクトルとして考えてみれば、(DACで得られるもともとの考えである)連続矩形波であっても、(ここで考える連続矩形波を孤立矩形波として個別に分割したという考えである)孤立矩形パルスの集合であっても、それぞれ同じなわけです。すれば周波数スペクトル(スペアナなどで見てみると言うこと)は単純に波形ごとの足し算だとして見えるわけですから、結局は図6のsinc関数が順々に足し合された形になります。周波数スペクトル上では、sinc関数の形状は「維持される」ということです。この気づきに何年かかったことやら...。MODEの波形がどう説明できるか「一石二鳥」が得られることになりました。余談...「パワー・スペクトル」ってやっぱり電力の事ではないの?ところで余談ですが、この「パワー・スペクトル」というのを「これは電力のことではなく、信号を二乗したという意味である」という記述を書籍などで見ることがあります。英語のPowerは、電気では(ご存じのように)「電力」という意味でありますが、数学的には「冪(べき)としてn乗する」という意味があります。1Ωとすれば(これは回路理論での検討でもよくやること)、結局は電力のことを言っているのではないか?と常々私は思っています。英語がネイティブの学者さん(専門家)に聞いたわけではないので、真偽のほどは不明ですが...。ICを動作させるためには、DACに与えるデータ(DACコード)に何か条件を被せる必要はありません。MODEのモードに切り替えるだけです。入力は同じでかまいませんが、それが図2のように、+1/-1に1/fsの「半分の時間」で切り替わる(変調される)ようになります。することで、ナイキスト周波数より上のところ(もしくはfsに近いところ)の成分を、BPFを通して取り出して、それを増幅して信号として活用することができます。fsに近いところでも高いレベルが維持できますから、後段の動作効率を高くできます。アプリケーションはデジタル変調用途が主だと思いますが、いろいろ活用できそうです。Specifications)用に最適化されており、これらのベースバンド系の処理系も内蔵されています(ディスエーブルにしてバイパスも可能)。AD9789はもっと汎用で、なんでも応用できるといえるでしょう。掲載されていない用語ですが、ケーブル・モデム終端装置に関する仕様です。周波数スペクトルを実際に考えるDAC出力は孤立矩形波で表現できることに気がついたわけですが、それがsinc関数と実際にどのように関係しているかを示してみます。事業部の担当者を探して「なんでこうなるの?」と質問して聞いてもいいのでしょうが、やはり(気合で!)自力でやってみることにしました。図7の左上はDACに入力される(と仮定する)インパルス信号Aδ(t)です。tは時間[s]、Aは信号の大きさです(DA変換の値と言える)。1/fs)が「畳み込み(Convolution)」されます。このようにDAC出力というのは、デジタル信号処理で得られたインパルス信号に対して、「1サンプル相当の矩形テンプレートを畳み込み」するものです。DAC出力の時間信号波形とスペクトラムのようす時間軸の畳み込みは周波数軸の掛け算このようすを周波数上で表すと、図7左下のように入力インパルス信号は大きさ1の一定の周波数レスポンスです。これに同図右下のDACの矩形テンプレートの周波数レスポンス(フーリエ変換した結果)が周波数軸上で「掛け算」されることになります。時間軸での畳み込みは周波数軸での掛け算に相当します。なっていますから、「1×」で掛けても掛けなくても一緒です。DAC出力の周波数特性としては、結局sinc関数となっていることになります。sinc関数自体は電圧量や電流量に相当し、本来は電力で考える必要がありますから、20logでdBとします。MODEとして示したもの)は目出度(めでた)く同じになります。MODEのテンプレートがどうなるか?どういう周波数スペクトルか?」を考えればいいだけで、あとは簡単(?)です。sinc関数のようすを図3に合わせてシミュレーションしてみる。図3とぴったり同じ!アナログ・エンジニアからの貴重なコメントここで非常に優秀なエンジニアの方からコメントをいただきました。その方のコメントを引用します。『この話は、重ね合わせの定理が成り立つという事ですね。私の場合はDAC出力の話題ではないのですが、A/D変換において、以下のような離散信号の式を見ることがあります。nはサンプル番号に相当する整数で、Tはサンプリング周期です。これが良くわかりませんでした。暗記してしまえば簡単なのですが、式の意味するところを理解するため、考察を重ねました。この式は「畳み込み」であるわけですが、たくさんの孤立パルスが集合したものとデルタ関数(δ(t))を畳み込んだものが、サンプリングにより得られた信号だということです。この式の表現はおかしくないか?と思ったわけです。n)はサンプリングされたサンプル値で、x(t)はサンプリングされる連続時間信号です。n)がX(n)でないことに注目してください。正しい数学上の表現では、サンプリングという行為は連続信号の関数です。離散信号は連続信号の一種にすぎないのです。デルタ関数が連続信号の関数だからです。この式から、時間連続で考えると、サンプル点の間には、ゼロが連続して存在しているようすを見ることができます。これを「サンプル値」として考えなおせばX(t)がX(n)であるわけですが。意外とこの事(連続時間で考えるべきこと)が本に書かれていません。離散信号も連続信号のひとつであるからこそ、フーリエ変換等の連続時間関数の算術が離散信号でも取り扱えるものだと思います』このコメントはおっしゃるとおり!この方が最初におっしゃる「重ね合わせの定理が成り立つ」...その定理なのだと、私もそこに辿りつきました。この方がご指摘の式、については、「この式自体」は離散信号のデルタ関数との畳み込みです。この方がおっしゃるように「たしかに変では?」と思わせるものです。このことをステップを追って考えてみましょう。サンプリングは「畳み込み」と本には書いてあるけれど?畳み込みは2つの関数を逆方向から交らわせるように計算(掛け算)し、累積します。∞、それ以外はゼロというものです。いっても離散信号同士だとデルタ関数との畳み込みはあまり意味がありません。ここからがトリックなのですが、とある本では連続時間系として考えたサンプリングは、という感じで、上記の式(2)を連続時間としての畳み込みで表現しています。[s]における連続信号、Tsはサンプリング周期[s]です。これが間違いのようです。「もっと簡潔に言ってくれれば」と思う壱技術者(実は私は)難しそうな本に書いてある「デルタ関数との畳み込みで連続信号を離散信号としてサンプリングする」といったような回りくどい説明は好きではありません(また以降に示すように実際は、それ自体の考え方自体に問題があります)。アカデミックな分野の方々には「コイツわかってねーな」と言われそうですが、実際にはあまり意味の無い表現ではないか、またそれ以降は結局z領域でデジタル信号処理を延々表現していくだけだし、と思ったりしています。2に以下の記載があります。domain,”(convolutionは畳み込みの意)アナログ・デバイセズの他の技術資料でも同じ説明を見た記憶がありますが、どこにあったかは見つけることができませんでした。「A/Dサンプリングは時間軸の掛け算」である事実を背理法的に説明してみる「A/Dサンプリングは、時間軸では連続信号f(t)とデルタ関数δ(t)との掛け算」であることを背理法的に説明してみたいと思います。「時間軸では畳み込み」だとして考えてみると「周波数軸では一定繰り返しデルタ関数との掛け算」になります。N/Ts)となります。(b)のようにサンプリングされる実時間連続信号がs(f)という周波数スペクトルを持っていたとすると、これを周波数軸上で一定繰り返しのデルタ関数と掛け算したスペクトル[同図(c)]は意味がないこと(つまり「時間軸ではデルタ関数との畳み込み」では無いこと)は簡単にご理解いただけると思います。これで背理法的な説明がつきました。サンプリングによるスペクトルを背理法的に説明してみる。これだと正しい信号スペクトルが得られない正しい形で得られるスペクトルとして説明してみる一方であらためて「時間軸では連続信号f(t)とデルタ関数δ(t)との掛け算」ということを「周波数軸では繰り返しデルタ関数との畳み込み」として作図してみると、図10のようになります。N/Ts)のそれぞれのNにおいて、その輝線を中心として実時間連続信号s(t)の周波数スペクトルs(f)が「よく教科書で見る形で」現れていることがわかります。さきに背理法的に説明しましたが、ここでもそれが理解できるのではないでしょうか。正しいかたちで得られるものとして説明してみる。MODEでの周波数スペクトルはどうなるさて話題を本題に戻してみましょう。「D/A変換は時間軸では連続時間信号f(t)とテンプレート波形との畳み込み」そして「周波数軸では周波数スペクトルs(f)とテンプレート波形との掛け算」だということを示してきました。これによりDAC出力を「矩形パルスのテンプレート」として考えてきました(図11に再掲)。MODEは図11の矩形パルスの幅が、図12のように1/2になった信号(矩形テンプレート)がふたつ、それも1/4だけ時間オフセットし、そして極性が±となる、というものの合成だといえます。幅0.5、極性が±の矩形パルスにフーリエ変換の時間推移則をそれぞれあてはめて、足し算すればいいのですね!答えが合うといいです...。ホントにドキドキしてきました!(笑)。正しい形で得られるスペクトルとして説明してみる最初に数式で計算してみました。この数式ベースでの思考結果は、この技術ノート後半に添付してある資料の第1節にまとめてみました。こちらをご覧ください。この資料の式(7)で得られた結果を以下に示します。これは電圧値に相当しますので、これを20logを取って電力量としてdBに変換します。この式(5)を用いたシミュレーション結果をいよいよ図13に示します。MODEの周波数スペクトルのようすを図3に合わせてシミュレーションしてみる。MODEで動かしたときに、どのくらいの出力が得られるかが厳密に判ります。MODEが使える製品をご活用いただき、よりよい製品を市場に送り出していただけることを願っております。別のアナログ・エンジニアからの貴重なコメント(ラプラス変換でも計算できる)なんとこれで本稿が終わりのような、エンド・ロールのようなカキクチでしたが、まだ続きます(汗)。他の方からもこんなコメントをいただきました。Hold(ゼロ次ホールド)[1]に関するラプラス変換で計算可能ですよ』ラプラス変換の推移則でテンプレート波形を考える『最初にラプラス変換での推移則を示しておきます(これはフーリエ変換での推移側とほぼ同じものです)。s)を掛けたのになるということです。≧0で1)で、推移側で時間をt1だけずらしたときにt1以前の時間はゼロになる必要がある、ということを示しています。≧0で1)だとすると、それをラプラス変換したものは1/sになります。Holdとして考えます。ここでそれぞれの信号はユニット・ステップ関数U(t)です。1と2でTs/2の前半の波を表し、3と4でTs/2の後半の波を表します。ゼロ次ホールド)ができることになります。実際には、1~4を足し合せて計算していきます。すると、となります(これ以降の導出をこの技術ノート後半に添付してある資料の第2-1節にまとめてみました)。この結果(添付資料の式(11)でも得られたもの)を以下に示します。1に規格化しています。式(5)と同じことも分かります。これは電圧の絶対値に相当しますので、これを20logを取ってdBに変換します。MODEのD/A変換プロセスとして計算するには、図14を少し変えた図15の1~4を足し合せて計算していきます。ゼロ次ホールド)そうすると式(11)の3項目と4項目の符号が逆になり、となります(これもこの技術ノート後半に添付してある資料の第2-2節にまとめてみました)。この結果(添付資料の式(14)で得られたもの)を以下に示します。これは電圧の絶対値に相当しますので、これを20logを取ってdBに変換します。Hold(ゼロ次ホールド)のレスポンス」との畳み込みとみなすことができます。Holdの周波数特性」との積になります。Holdの周波数特性)は孤立波から得られるsinc関数ですから、この結果として図13のスペクトルが得られます』ゼロ次ホールド!?初めて知った!なるほど...。この人も非常に優秀な方でいらっしゃいます。Hold」(ゼロ次ホールド)という用語を初めて知ったのでした。式を見ていくと、ユニット・ステップ関数を、ラプラス変換の推移則で足し算(重ね合わせ)していくものと理解できます。MODEを使わずとも、ナイキスト周波数より上の周波数の信号を出力する目的の「スーパー・ナイキスト動作」というものがアナログ・デバイセズのDACやDDSで用意されています。以下はそのアプリケーション・ノートの一例です。MODEで動作するものではありませんが、このようにナイキスト周波数を超えて、DDSの信号を活用することもできるわけです。MODEではfsの周波数で+1/-1が繰り返し(チョッピング)ます。fsが2倍にアップすると考えることができるわけです。4.8GHz相当で動作することになりますので、ナイキスト周波数も2.4GHzにアップすると考えられるわけです。「いや...、ちょっとまてよ...」またここで疑問がもたげてくるわけです。「+1/-1が発生(チョッピング)」という点からすれば、それは信号の乗算動作です。2.4GHzの周辺に±として出るのではないか?」。こんな疑問が出てきます。これは正しい?間違い?はて?シミュレーションしてみれば分かることだが実際の波形とスペクトルを確認するならば、MATLABやSciLab(フリー)やOctave(GNUフリー)、もしくはEXCEL(FFTもできます)などでFFTしてシミュレーションで様子を確認してみることも一つかと思いますが、やっている時間もなく...。MODE時の出力波形がありました(図16)。これを見る限り、第1ナイキストの部分も発生しているようです。これと同じ(つまり式(16)は間違い)なんでしょう...。MODE時の出力波形またもやいぶし銀のアナログ・エンジニアからの貴重なコメントそこでまた、先の方からコメントをいただきました。MODE時の周波数特性については、このように考えれば良いのではないでしょうか。『だからね、周波数軸で見てみれば、f0の正弦波のスペクトルとsinc関数Roll-offとの積になるだけなんですね。両MODEのスペクトルの相違はこのRoll-off特性の違いによって発生するだけの話ですよ』これで「開眼」です...。MODEと同じ周波数配置にしかならない」ということなんですね!でも、よく考えてみれば「あたりまえ」の話だったでも...、よく考えればこれは、ここまでの説明を良く思い返して考え直してみれば、その...、ここまでの説明で「説明がつく」話なわけでした。fbasebandに折り返しが出ていることと同義、つまり「あたりまえ」な話なんですね(汗)。MODEは離散信号処理の妙技だなあ...」とあらためて超感心(いえ、超感動です!)しました!連続時間ではこうは(当然ですが)ならないわけですしね。以降こんなご質問をいただきました。『単純に考えると、ちょうどナイキスト周波数なので、各ナイキスト帯域の信号が折り重なった形になってしまい、出力が出ないのではと思っています。MODEでなくても、基本的な考え方でも、fsぴったり半分のレートでの信号発生は可能です。MODEでは、乗算した実波形は+1/-1で切り替わるようになりますから、それから概略のスペクトルのレベルもイメージできます。そこから少し周波数がずれるだけで、fs/2の左右にスペクトルが出るようになりますから、回路としての実装には注意が必要です。ADCでのデジタル信号処理はどう考える?DACでのデジタル信号処理の場合は、時間軸では畳み込み、周波数軸では掛け算でしたが、「A/Dコンバータ(ADC)の場合はどうなのだ?」と実はこれまで相当長く考えていました。この話はこの技術ノートの中でもご紹介しましたが、ADCの場合は時間軸では掛け算です...。これは別途あらためて別の技術ノートで...。聡1963年千葉県生まれ。メーカ入社、長く電子回路設計業務に従事。1994年技術士(電気・電子部門)合格。