diff --git a/wip/dsp.md b/wip/dsp.md index 213cb59..76e9c4a 100644 --- a/wip/dsp.md +++ b/wip/dsp.md @@ -6,13 +6,176 @@ Borderline 'song' less 'poetic'. The actual material (text that is read) is in Japanese. ## Outline -### Signals and Systems -- Linear time-invariant systems (and nonlinearity) -- Signal transformations -- Impulse signal -- ... -### Digital Signal Systems -- The impossibility of real continuous signals in digital systems -- Discrete time -- ... \ No newline at end of file +### 1. Signals and systems +- What is a signal + - A function of one or more variables carrying information; here, amplitude over time +- What is a system + - A system maps an input signal to an output signal + - Characterized entirely by its behavior on inputs — the internals are not required +- Most systems are nonlinear — linearity is a special property, not the default + - Linearity: superposition holds — scaling and additivity + - Most physical systems violate this under sufficient conditions (e.g. overdrive: linear below clip threshold, nonlinear at and above it) +- Time-invariance + - A time-invariant system responds identically regardless of when the input arrives + - Violation: any system with time-varying parameters (e.g. modulated effects) +- LTI as the restricted, studied case + - Satisfies both simultaneously — analytically tractable + - A deliberate simplification; not a description of typical reality +- The impulse signal; impulse response + - The impulse: unit energy concentrated at a single point in time + - The impulse response: what an LTI system outputs when fed an impulse + - Completely characterizes the system + - The impulse response is a function — it exists in the same space as signals; systems are absorbed into signal space + +### 2. LTI and convolution +- An LTI system is fully characterized by its impulse response + - Any input decomposes into scaled, shifted impulses + - By linearity and time-invariance, the output is the corresponding sum of scaled, shifted impulse responses +- Convolution as the operation + - That sum is convolution: y = x * h + - Symmetric in its arguments: x * h = h * x + - Signal and system are interchangeable operands — both are functions; convolution makes no distinction between them +- Commutativity: for LTI systems, order of composition is irrelevant + - Two LTI systems in series have a combined impulse response equal to the convolution of each + - h₁ * h₂ = h₂ * h₁ — order does not affect the result + +### 3. Signal transformation +- A signal in time can be equivalently represented in the frequency domain +- The Fourier transform: s(t) ↔ S(ω); decomposes a signal into its constituent frequencies +- Analog signals carry frequency components from DC to arbitrarily high frequencies + +### 4. Discrete time +- Discretization on two axes: amplitude and time + - Amplitude: bit depth; finite resolution; hard clip at boundary (unlike analog soft limits) +- A signal's frequency spectrum, not its time-domain values alone, determines what is lost in sampling + - Analog signals have components from DC to infinite frequency — not representable in discrete time + - Discrete time is viable if components up to a sufficient frequency are preserved +- Nyquist: given sampling rate Fs, faithful reconstruction is guaranteed up to Fs/2 + - What Fs/2 should be is an applied engineering question — Nyquist does not answer it + - Components above Fs/2 are lost: aliasing +- LTI and convolution hold in discrete time — commutativity survives + +### 5. Nonlinearity and consequences +- Real systems violate LTI: time-varying parameters, feedback, saturation + - Each breaks a different condition: time-variance breaks TI, feedback and saturation break linearity +- Commutativity breaks — order of composition is no longer irrelevant + - h₁ followed by h₂ ≠ h₂ followed by h₁ in general + - No universal rule; behavior must be examined per case + +## Text (lyrics if you insist) + +信号とシステム、そしてデジタル信号処理について説明する。 + +### 1. 信号とシステム + +まず信号とは何か、次にシステムとは何かを定義し、 +その上でシステムの性質を議論する。 + +信号とは、一つ以上の変数の関数として定義される。 +情報を担う。 +ここでは時間を変数とし、振幅の時間変化として扱う。 + +システムとは、入力信号を出力信号へ写す操作である。 +内部の構造は定義に含まれない。 +システムはその入出力の関係によってのみ特徴づけられる。 + +システムの性質として、まず線形性を取り上げる。 +線形システムとは、重ね合わせの原理が成立するシステムである。 +入力をスケーリングすれば出力も同率でスケーリングされ、 +入力の和に対する出力は、各入力の出力の和に等しい。 + +ここで注意が必要である。 +多くの物理システムはこの条件を満たさない。 +線形性は特殊な性質であり、デフォルトではない。 + +次に時不変性について述べる。 +時不変システムとは、入力を時間軸上でシフトしたとき、 +出力も同じだけシフトされるシステムである。 +パラメータが時間とともに変化するシステムは、時不変ではない。 + +線形かつ時不変なシステムを、線形時不変システムと呼ぶ。 +以降の議論はこの線形時不変システムを対象とする。 +これは解析的に扱いやすい、制限された特殊ケースである。 +現実の典型ではない、という点は記憶にとどめておいてほしい。 + +線形時不変システムの性質をさらに掘り下げる前に、 +インパルス信号を導入する。 +インパルス信号とは、単一の時刻に単位エネルギーが集中した信号である。 +線形時不変システムにインパルスを入力したときの出力を、インパルス応答と呼ぶ。 +このインパルス応答が、線形時不変システムを完全に特徴づける。 + +ここで重要な点を強調する。 +インパルス応答は、信号と同種の関数である。 +これにより、システムは信号と同じ操作の空間に置かれる。 +システムと信号の区別は、操作の上では消える。 + +### 2. 線形時不変システムと畳み込み + +なぜそう言えるのか。 +任意の入力信号は、スケーリングされた時間シフトインパルスの和として分解できる。 +線形性と時不変性により、 +それぞれのインパルスに対する出力の和が、入力全体に対する出力となる。 +この操作を畳み込みと呼ぶ。 + +y = x * h (y イコール x 畳み込み h) + +畳み込みはその引数に対して対称である。 +x * h = h * x (x 畳み込み h イコール h 畳み込み x) +これは代数的な性質にとどまらない。x と h が同種の対象であることの表れである。 + +この対称性から、重要な結論が導かれる。 +二つの線形時不変システムを直列に接続する場合を考える。 +合成されたシステムのインパルス応答は、各インパルス応答の畳み込みに等しい。 +h₁ * h₂ = h₂ * h₁ (h1 畳み込み h2 イコール h2 畳み込み h1) +接続の順序は、結果に影響しない。 + +### 3. 信号変換 + +ここで話題を変える。 +これまでの議論は連続時間を前提としていた。 +しかしデジタルシステムにおいては、連続信号をそのまま扱うことができない。 + +離散化は二つの軸で生じる。振幅軸と時間軸である。 +振幅軸の離散化はビット深度によって規定される。 +表現可能な範囲の境界でハードクリップが発生する。 +アナログシステムの物理的な限界とは異なり、これは硬い境界である。 + +時間軸の離散化を理解するには、まず別の観点から信号を見る必要がある。 +信号 s(t)(エス ティー)は、時間領域での表現とは別に、周波数領域でも表現できる。 +これをフーリエ変換と呼ぶ。s(t)(エス ティー)と S(ω)(エス オメガ)は同じ信号の二つの見方である。 +この変換により、信号を周波数成分の重ね合わせとして捉えることができる。 + +アナログ信号は、原理的にはゼロから無限大まで、すべての周波数成分を持ちうる。 +離散システムはこれを完全には表現できない。 +しかし、もし十分な高周波成分が不要であれば、離散時間は有効な選択肢となる。 +これが離散化の根拠である。 + +### 4. 離散時間 + +サンプリング周波数を Fs とする。 +ナイキストの定理が保証するのは、Fs/2(サンプリング周波数の半分)までの帯域を忠実に再構成できる、ということである。 +それが全てである。定理はそれ以上のことを言わない。 +Fs/2(サンプリング周波数の半分)をどこに設定すべきかは、定理が答える問いではない。それは用途が決める。 +Fs/2(サンプリング周波数の半分)を超える成分は再構成できない。これをエイリアシングと呼ぶ。 + +重要なのは、この離散化によって線形時不変システムの性質が失われるわけではない、という点である。 +離散時間の線形時不変システムは、連続時間の線形時不変システムと類似した性質を持つ。 +畳み込みは有限または無限の和となる。 +可換性を含む全ての性質は引き継がれる。 + +### 5. 非線形性とその影響 + +では、現実のシステムに戻る。 +先ほど線形時不変システムは特殊ケースであると述べた。 +現実のシステムは線形時不変システムの条件を様々な形で破る。 +時変パラメータは時不変性を破る。 +フィードバックと飽和は線形性を破る。 + +このとき、畳み込みの可換性は成立しない。 +非線形システムでは、一般に +h₁(システム1)の後にh₂(システム2)を適用した結果と、 +h₂(システム2)の後にh₁(システム1)を適用した結果は、等しくない。 + +普遍的な規則は存在しない。 +各ケースを個別に検討する必要がある。 \ No newline at end of file