MAXUPLD入門 その10 1bit信号処理、大好き


1信号 ( 20bit data ) 出力が、よりきれいになりました

 1.1次ローパスフィルタの作り直し

  
    1次LPFを、作り直しました。

    今までは、空中敗戦でしたが、今回は、SMAを付け、チップ抵抗、チップコンデンサを使いました。

    既に経験済みですが、フィルタは、チップ部品を使うと、いい結果が出ます。-> 158.7次Chebychev filterを試す

    それから、以前、プログラムによって、100MHz動作を試しました。

    今回も、20bit dataにて、100MHz動作させてみましたが、

    返って、ノイズが増えて、望ましくありませんでした。 通常の50MHz動作のほうが、きれいです。わしは、何をしとったんやろ.....


 2.1bit信号の常数倍に挑戦

    これには、2通りの方法が、あります。

      1. 単純に、1bit毎に常数倍する。

      2. 移動平均をとって、割らないでおく

    全て、ΔΣ変調の部屋のお陰です、ありがとうございます。

    1.の方法

      4倍します。

      これは、ビットが1の時、4を出力し、ビットが0の時、-4を出力します。

      この時、多ビットになりますから、再び Pulse Density Modulation にて、1ビット信号に変換して出力します。



      PDM1が元の1bit信号、PDM_multi_xが、4倍した1bit信号、carry_outが最終出力

      最終出力(carry_out)が、元の1ビット信号(PDM1)と、ちょっと形が違うので、これは、失敗かも......

      と言うのも、Pulse Density Modulationは、パルス密度変調だから、

      パルス密度の変調であって、個々の信号による変調ではないのですから....今、気が付きました (-_-;;

             これは、きっと、失敗で、正しくないと思います。

      2.の移動平均による方法が、正しいと思います。




    2.の移動平均を使う方法



    romからdataを読み出し、1ビット信号に変換( PDMed_sig ) ->移動平均する( PDMed_thr_ave_sig ) -> 再び、1ビット信号に変換( carry_out )



        移動平均した信号 ( PDMed_thr_ave_sig ) は、信号の形が見えますね。

    今の場合、移動平均は、32tapsです。

    ですので、32で割ってないので、移動平均を32倍した事になります。
  
    再び1ビット信号に変換したもの( carry_out ) は、 遅延が見られますが、元の1ビット信号と、大体、同じと思われます。

    何か、1bit表現なんですが、正負が逆転したような雰囲気がするのですが.....1bit表現で、そんなもん、見えますやろか?




    LE(ロジックエレメント)の消費も少なくて、うれしいです。

     次回は、いよいよ、1bit信号同士の積に、挑戦します、あかんかも......


          
H.21.3.27