2015-11-01から1ヶ月間の記事一覧
PSoC5LP Prototyping Kit (CY8CKIT-059) 用の "spdif_x4" のパッケージを公開しました。(→こちら) 上記リンクをクリックすると Yahoo! ボックスが開きます。
今回は PC 上のオーディオ録音/再生デバイスを利用したリアルタイム・スペクトラム・アナライザ・ソフトである「WaveSpectra」によるフィルタ特性の測定方法について説明します。 「WaveSpectra」の操作方法自体は、ソフト付属のヘルプにも記載されています…
「spdif_4x」プロジェクトで使う外部回路を下に示します。 使う部品は、「TOSLINK」光送信モジュール、12.288 MHz 水晶振動子、コンデンサ 3 個です。 S/PDIF 信号を発生させるクロックには周波数精度が必要なため、内部クロックでは不十分で、水晶振動子あ…
DFB (Digital Filter Block) のハードウェア DMA / 割り込み要求は「出力データ・レディ」の条件により発生するので、データの流れとは逆向きに後段から前段へとデータ転送要求を出す流れとは一致しません。 「入力データ・エンプティ」のようなハードウェア…
久しぶりに SPDIF_Tx コンポーネントと DMA (と Filter コンポーネント) の話題に戻ります。 PSoC Creator の PSOC5LP 用の、Filter コンポーネントを使ったサンプル・プロジェクトのひとつとして、「Filter_ADC_VDAC01」があります。 そのトップの回路図の…
Filter コンポーネントで作成される IIR バイクアッド・フィルタの計算プログラムでは、2 次セクションの伝達関数 の分子多項式の計算をまず行い、ついで分母多項式の計算を行なう「直接型 I」と呼ばれる方式で行なっています。 図示したものを下に示します。
今回は Filter コンポーネントで生成される実際の FIR フィルタ・プログラムについて説明します。 1 行が長くて折り返して表示されるので見にくいですが、フィルタ・チャネル A の計算前準備 / たたみ込み演算 / 後処理部のリストを下に示します。 各ステー…
DFB (Digital Filter Block) の「ミニ DSP」エンジンの命令語では ACU (Address Calculation Unit) に対しては、32 ビットのうち、 ACU A へのコマンド — 4 bit ACU B へのコマンド — 4 bit ACURAM のアドレス指定 — 4 bit の、計 12 ビットが割り当てられて…
N タップ FIR (Finite Impulse Response) フィルタの構成を下の図に示します。 フィルタの「次数」で言うなら (N-1) 次のフィルタです。 ここで、角括弧 [] を伴った量は、時間方向に離散化 (discretization) されたサンプル値であるとします。 h[・] は「イ…
DFB (Digital Filter Block) の「ミニ DSP」の命令語は 32 ビット幅で構成されています。 他のマイコンのような「演算命令」と「分岐命令」とには分かれておらず、プログラムの実行順序は「ステート・マシン」によって制御されています。 そのステート・マシ…
DFB ハードウェアにはグローバル入力信号が 2 本、グローバル出力信号が 2 本、DMA リクエスト出力 2 本、インタラプト出力 1 本の、合計 7 本の入出力信号がありますが、Filter コンポーネントでは、DMA 出力 2 本、インタラプト出力 1 本の、計 3 本の設定…
Filter コンポーネントのチャネル B を IIR バイクアッド構成とした場合のカスタマイザ (設定ダイアログ) の画面を下に示します。 (画像をクリックすると拡大します) これは、4 倍オーバーサンプリング用の補間フィルタとは直接の関係はありません。 単に IIR…
Filter コンポーネントを回路図上に配置して、コンポーネントをダブル・クリックして開くカスタマイザ (設定ダイアログ) の画面を下に示します。 (画像をクリックすると拡大します)
DFB (Digital Filter Block) で扱うデータは 24 ビット幅ですが、DFB は 8 ビット MCU の 8051 を搭載した PSoC3 にも内蔵されています。 当然、8 ビット MPU の 8051 では 24 ビット・データを一度に扱うことはできません。 8 ビットの読み書きを 3 回行な…