ΔΣ-ADC実験編 その22 やっぱり1bit信号処理が魅力です


7000KHz と 7100KHzの1bit信号同士の簡易的な積

1.実験を続けてきましたが、ふと、気が付きました

    やっぱり、1bit信号処理が魅力です。

    最初の図は、1bit信号同士の、正しい積では、ないのですが、

    こんなに簡単に、1bit信号同士の積が、出力されます。

module myADC (clk,D,neg_q,q);
 input clk;
 input D;
 output neg_q;
 output  q;
//////////////////////////////////////////
 wire clkop;
 wire lock;
 reg Q_inner = 0;
 reg [2:0]count = 0;
//////////////////////////////////////////

 myPLL     myPLL(.CLK(clk), .CLKOP(clkop), .LOCK(lock));

// This is not  correct to multiply 1bit signals,but works well.  

      assign q = Q_inner~^D; //multiply 1bit singnals  [Q EXNOR D]  : Q=7.1MHz 1bti sgnal ,D=7MHz 1bit signal
 
 assign neg_q = q;
 
 always @(posedge clkop) begin
  if(lock) begin
  
   count =count + 1;
   if(count ==4) begin
    Q_inner= ~Q_inner; //7.1MHz 1bit signal
    count = 0;
   end
  end
    

 end
endmodule

    Lattice DiamondのReportsを見てみると

Design Summary
   Number of registers:    9
      PFU registers:    9
      PIO registers:    0
   Number of SLICEs:            13 out of  2376 (1%)
      SLICEs(logic/ROM):        13 out of  1971 (1%)
      SLICEs(logic/ROM/RAM):     0 out of   405 (0%)
          As RAM:            0 out of   405 (0%)
          As Logic/ROM:      0 out of   405 (0%)
   Number of logic LUT4s:      22
   Number of distributed RAM:   0 (0 LUT4s)
   Number of ripple logic:      0 (0 LUT4s)
   Number of shift registers:   0
   Total number of LUT4s:      22
   Number of PIO sites used: 4 out of 100 (4%)
   Number of PIO FIXEDDELAY:    0
   Number of DQSDLLs:  0 out of 2 (0%)
   Number of PLLs:  1 out of 2 (50%)
   Number of block RAMs:  0 out of 9 (0%)
   Number of CLKDIVs:  0 out of 2 (0%)
   Number of GSRs:  0 out of 1 (0%)
   JTAG used :      No
   Readback used :  No
   Oscillator used :  No
   Startup used :   No
   Notes:-
      1. Total number of LUT4s = (Number of logic LUT4s) + 2*(Number of
     distributed RAMs) + 2*(Number of ripple logic)
      2. Number of logic LUT4s does not include count of distributed RAM and
     ripple logic.

    たったの 1%のLUTの消費!

    元々、1bit出力だから、PDM( Pulse Desity Modulation )も不要です、wao!  ピン子もびっくり!

    そんなんで、

    1bitでCIC filter , fir filterを通す方法も調べてみます。

    気が付いて、よかったのか、泥沼に嵌るのか........

        どうなるか解りませんが、やってみない事には、何も解らん。

2.多bitでの結果も書いときます。


    CIC filter( 1/256 decimation )と、fir LPFを通して、40KHz出力を見たもの


    同、 100Hz 付近の出力 2次高調波は -48dBC( 1/200 )位なので、使えるかも....


    CIC filter(1/256 decimation)を通した後のfir filterで、更に 1/4にdecimateした

    うーむ、

    ♪ やっっぱりー、俺はー、きくまさむねー ♪ 

    ところで、 Latticeからのnews letter によると、


    Lattice Diamondの他に、何かありそうですよ.......


H22.10.29