DFB

1/12 オクターブバンド・フィルタ (9)

2016 年 3 月 30 日の記事 (→こちら) で検証したように、PSoC5LP の DFB (Digital Filter Block) のデータ RAM 容量 (128 ワード) の制限のため、一般的な IIR バイクアッド・フィルタを使用する場合には 1/12 オクターブバンド・フィルタ 8 バンド分 (IIR 2…

PSoC5LP Prototyping Kit (28) --- SPDIF_Tx と DMA (16)

PSoC5LP Prototyping Kit (CY8CKIT-059) 用の "spdif_dma" のパッケージを公開しました。(→こちら) 上記リンクをクリックすると Yahoo! ボックスが開きます。

PSoC5LP Prototyping Kit (27) --- SPDIF_Tx と DMA (15)

spdif_4x / spdif_dma プロジェクトは「4 倍オーバーサンプリングのテスト」とは言いながら、192 kHz サンプリングの S/PDIF 信号を受信できる機器を所有していないので、48 kHz サンプリングでの実験にとどまっていました。 今回 spdif_dma プロジェクトに …

PSoC5LP Prototyping Kit (26) --- SPDIF_Tx と DMA (14)

Filter コンポーネントで生成される DFB (Digital Filter Block) プログラムでは 2 チャネル分のフィルタがサポートされています。 これをステレオ 2 チャネルのストリームとして利用し、データ転送の全てを DMA で行なう場合には、DFB データ入出力の合計が…

PSoC5LP Prototyping Kit (25) --- SPDIF_Tx と DMA (13)

DFB (Digital Filter Block) コンポーネントへの入出力を全て DMA で行なうプログラム「spdif_dma」ができました。 近日中に公開したいと思います。 トップレベルの回路図を下に示します。

PSoC5LP Prototyping Kit (24) --- SPDIF_Tx と DMA (12)

PSoC5LP Prototyping Kit (CY8CKIT-059) 用の "spdif_x4" のパッケージを公開しました。(→こちら) 上記リンクをクリックすると Yahoo! ボックスが開きます。

PSoC5LP Prototyping Kit (23) --- SPDIF_Tx と DMA (11)

今回は PC 上のオーディオ録音/再生デバイスを利用したリアルタイム・スペクトラム・アナライザ・ソフトである「WaveSpectra」によるフィルタ特性の測定方法について説明します。 「WaveSpectra」の操作方法自体は、ソフト付属のヘルプにも記載されています…

PSoC5LP Prototyping Kit (22) --- SPDIF_Tx と DMA (10)

「spdif_4x」プロジェクトで使う外部回路を下に示します。 使う部品は、「TOSLINK」光送信モジュール、12.288 MHz 水晶振動子、コンデンサ 3 個です。 S/PDIF 信号を発生させるクロックには周波数精度が必要なため、内部クロックでは不十分で、水晶振動子あ…

PSoC5LP Prototyping Kit (21) --- SPDIF_Tx と DMA (9)

DFB (Digital Filter Block) のハードウェア DMA / 割り込み要求は「出力データ・レディ」の条件により発生するので、データの流れとは逆向きに後段から前段へとデータ転送要求を出す流れとは一致しません。 「入力データ・エンプティ」のようなハードウェア…

PSoC5LP Prototyping Kit (20) --- SPDIF_Tx と DMA (8)

久しぶりに SPDIF_Tx コンポーネントと DMA (と Filter コンポーネント) の話題に戻ります。 PSoC Creator の PSOC5LP 用の、Filter コンポーネントを使ったサンプル・プロジェクトのひとつとして、「Filter_ADC_VDAC01」があります。 そのトップの回路図の…

PSoC5LP Prototyping Kit (19) --- DFB と Filter (11)

Filter コンポーネントで作成される IIR バイクアッド・フィルタの計算プログラムでは、2 次セクションの伝達関数 の分子多項式の計算をまず行い、ついで分母多項式の計算を行なう「直接型 I」と呼ばれる方式で行なっています。 図示したものを下に示します。

PSoC5LP Prototyping Kit (18) --- DFB と Filter (10)

今回は Filter コンポーネントで生成される実際の FIR フィルタ・プログラムについて説明します。 1 行が長くて折り返して表示されるので見にくいですが、フィルタ・チャネル A の計算前準備 / たたみ込み演算 / 後処理部のリストを下に示します。 各ステー…

PSoC5LP Prototyping Kit (17) --- DFB と Filter (9)

DFB (Digital Filter Block) の「ミニ DSP」エンジンの命令語では ACU (Address Calculation Unit) に対しては、32 ビットのうち、 ACU A へのコマンド — 4 bit ACU B へのコマンド — 4 bit ACURAM のアドレス指定 — 4 bit の、計 12 ビットが割り当てられて…

PSoC5LP Prototyping Kit (16) --- DFB と Filter (8)

N タップ FIR (Finite Impulse Response) フィルタの構成を下の図に示します。 フィルタの「次数」で言うなら (N-1) 次のフィルタです。 ここで、角括弧 [] を伴った量は、時間方向に離散化 (discretization) されたサンプル値であるとします。 h[・] は「イ…

PSoC5LP Prototyping Kit (15) --- DFB と Filter (7)

DFB (Digital Filter Block) の「ミニ DSP」の命令語は 32 ビット幅で構成されています。 他のマイコンのような「演算命令」と「分岐命令」とには分かれておらず、プログラムの実行順序は「ステート・マシン」によって制御されています。 そのステート・マシ…

PSoC5LP Prototyping Kit (14) --- DFB と Filter (6)

DFB ハードウェアにはグローバル入力信号が 2 本、グローバル出力信号が 2 本、DMA リクエスト出力 2 本、インタラプト出力 1 本の、合計 7 本の入出力信号がありますが、Filter コンポーネントでは、DMA 出力 2 本、インタラプト出力 1 本の、計 3 本の設定…

PSoC5LP Prototyping Kit (13) --- DFB と Filter (5)

Filter コンポーネントのチャネル B を IIR バイクアッド構成とした場合のカスタマイザ (設定ダイアログ) の画面を下に示します。 (画像をクリックすると拡大します) これは、4 倍オーバーサンプリング用の補間フィルタとは直接の関係はありません。 単に IIR…

PSoC5LP Prototyping Kit (12) --- DFB と Filter (4)

Filter コンポーネントを回路図上に配置して、コンポーネントをダブル・クリックして開くカスタマイザ (設定ダイアログ) の画面を下に示します。 (画像をクリックすると拡大します)

PSoC5LP Prototyping Kit (11) --- DFB と Filter (3)

DFB (Digital Filter Block) で扱うデータは 24 ビット幅ですが、DFB は 8 ビット MCU の 8051 を搭載した PSoC3 にも内蔵されています。 当然、8 ビット MPU の 8051 では 24 ビット・データを一度に扱うことはできません。 8 ビットの読み書きを 3 回行な…

PSoC5LP Prototyping Kit (10) --- DFB と Filter (2)

DFB (Digital Filter Block) では、BUS_CLK がクロック入力となるように決められていて、他の選択はできません。 BUS_CLK は CPU_CLK としても使われるので、CPU の動作スピードと同じスピードで DFB も動作することになります。 PSoC5LP Prototyping Kit 本…

PSoC5LP Prototyping Kit (9) --- DFB と Filter (1)

今回からは PSoC5LP の DFB (Digital Filter Block) コンポーネントと Filter コンポーネントについての話題です。 DFB は UDB (Universal Digital Block) 上に実現されたファンクションではなく、「固定ファンクション」として実現されています。 PSoC5LP …