FPGA で PSK31 (DE0 Nano 編 送信 その1) [Digital Mode]
FPGA で PSK31 の信号発生を考えています。
基本方針としては回路は簡単にしてその代わり高集積な FPGA に助けてもらう。
サイン波の発生などは小癪な技を使わずに1サイクルをまるまるテーブルにしてしまいます。
31.25Hz × 4 = 125Hz を基本の信号にします。
つまり、32mSec(=31.25Hz)に4サイクルのサイン波が入ります。
1サイクルを 1024 ステップのサイン波テーブルで発生させる事にします。
125Hz × 1024step = 128kHz でテーブル参照のクロックを動かします。
テーブル参照は、0° と 180° を同時に行います。
これで、125Hz で位相が 0°、180° の信号を作り、入ってくるビット・ストリームに合わせて
32mSec のタイム・スロット毎に、0 なら前のスロットの反転を選び、1 ならそのままにします。
これで PSK31 の基本の信号が出来る筈です。
まず、125Hz で 0°、180° の信号を作ってみました。
これをビット・ストリームのデータに合わせて 32mSec 毎に選択する回路を作り、帯域制限フィルタを通せば PSK31 の信号になるはずです。
次は選択回路を作ってみます。
基本方針としては回路は簡単にしてその代わり高集積な FPGA に助けてもらう。
サイン波の発生などは小癪な技を使わずに1サイクルをまるまるテーブルにしてしまいます。
31.25Hz × 4 = 125Hz を基本の信号にします。
つまり、32mSec(=31.25Hz)に4サイクルのサイン波が入ります。
1サイクルを 1024 ステップのサイン波テーブルで発生させる事にします。
125Hz × 1024step = 128kHz でテーブル参照のクロックを動かします。
テーブル参照は、0° と 180° を同時に行います。
これで、125Hz で位相が 0°、180° の信号を作り、入ってくるビット・ストリームに合わせて
32mSec のタイム・スロット毎に、0 なら前のスロットの反転を選び、1 ならそのままにします。
これで PSK31 の基本の信号が出来る筈です。
まず、125Hz で 0°、180° の信号を作ってみました。
これをビット・ストリームのデータに合わせて 32mSec 毎に選択する回路を作り、帯域制限フィルタを通せば PSK31 の信号になるはずです。
次は選択回路を作ってみます。
コメント 0