Просмотр исходного кода

Тестовые изменения.

ChStepan 1 год назад
Родитель
Сommit
42949bac58
4 измененных файлов с 4042 добавлено и 4034 удалено
  1. 26 18
      src/src/Sim/DecimFilterWrapperTb.v
  2. 17 17
      src/src/Sim/FFTTest.m
  3. 1999 1999
      src/src/Sim/FilteredData.txt
  4. 2000 2000
      src/src/Sim/InputSignal.txt

+ 26 - 18
src/src/Sim/DecimFilterWrapperTb.v

@@ -33,10 +33,11 @@ wire	respVal;
 
 // wire	signed	[27:0]	adcDataMixed	=	oscWind?(ncoSin1*ncoSin2):28'd0;
 wire	signed	[27:0]	adcDataMixed	=	(ncoSin1*ncoSin2);
-wire	signed	[13:0]	adcDataMixedCut	=	adcDataMixed[27-:14];
+wire	signed	[13:0]	adcDataMixedCut	=	adcDataMixed[26-:14];
 
-wire	signed	[13:0]	sinAdd	=	(ncoSin1>>>2)+(ncoSin2>>>2)+(ncoSin3>>>2);
+// wire	signed	[13:0]	sinAdd	=	(ncoSin1>>>2)+(ncoSin2>>>2)+(ncoSin3>>>2);
 // wire	signed	[13:0]	sinAdd	=	(ncoSin1>>>1)+(ncoSin2>>>1);
+wire	signed	[13:0]	sinAdd	=	(ncoSin1);
 
 reg		signed	[13:0]	currTestData;
 
@@ -49,12 +50,19 @@ wire	signed	[13:0]	singlePulse	=	(tbCnt==4500)?	14'h1fff:14'h0;
 always	#10 Clk50	=	~Clk50;
 
 //==========================================================================================
-
 parameter	N	=	1;
 parameter	M	=	1;
 
 parameter	MaxWidth	=	16;
 
+parameter	LsbForR1	=	10'd16;
+parameter	LsbForR2	=	10'd16;
+parameter	LsbForR4	=	10'd16;
+	
+parameter	[31:0]	Nco1PhaseInc	=	32'h0f5c28f5;	
+parameter	[31:0]	Nco2PhaseInc	=	32'h428f5c28;	
+parameter	[31:0]	Nco3PhaseInc	=	32'h428f5c28;	
+
 initial begin
 	Clk50		=	1'b1;
 	Rst			=	1'b1;
@@ -73,7 +81,7 @@ always	@(posedge	Clk50)	begin
 	end
 end
 
-reg	[10:0]	oscWindDelay;
+reg	[20:0]	oscWindDelay;
 
 always	@(posedge	Clk50)	begin
 	if	(!Rst)	begin
@@ -118,7 +126,7 @@ ncoInst1
 	.Clk_i		(Clk50),
 	.Rst_i		(Rst),
 	.Val_i		(1'b1),
-	.PhaseInc_i	(32'h0f5c28f5),
+	.PhaseInc_i	(Nco1PhaseInc),
 	.WindVal_i	(1'b1),
 	.WinType_i	(),
 	.Wind_o		(),
@@ -139,7 +147,7 @@ ncoInst2
 	.Clk_i		(Clk50),
 	.Rst_i		(Rst),
 	.Val_i		(1'b1),
-	.PhaseInc_i	(32'h33333333),
+	.PhaseInc_i	(Nco2PhaseInc),
 	.WindVal_i	(1'b1),
 	.WinType_i	(),
 	.Wind_o		(),
@@ -160,7 +168,7 @@ ncoInst3
 	.Clk_i		(Clk50),
 	.Rst_i		(Rst),
 	.Val_i		(1'b1),
-	.PhaseInc_i	(32'h4ccccccc),
+	.PhaseInc_i	(Nco3PhaseInc),
 	.WindVal_i	(1'b1),
 	.WinType_i	(),
 	.Wind_o		(),
@@ -178,9 +186,9 @@ DecimFilterWrapper
 	.FilteredDataWidth	(MaxWidth),
 	.FirOutDataWidth	(48),
 	.FirOutCutBit		(42),
-	.LsbForR1		(10'd16),
-	.LsbForR2		(10'd16),
-	.LsbForR4		(10'd16)
+	.LsbForR1			(LsbForR1),
+	.LsbForR2			(LsbForR2),
+	.LsbForR4			(LsbForR4)
 )
 DecimFilter
 (
@@ -192,9 +200,9 @@ DecimFilter
 	.IfFtwL_i		(24'h51eb85),
 	.IfFtwH_i		(24'h23),
 	
-	// .AdcData_i		(sinAdd),
-	.AdcData_i		(adcDataMixedCut),
-	// .AdcData_i		(adcData),
+	.AdcData_i		(sinAdd),
+	// .AdcData_i		(adcDataMixedCut),
+	// .AdcData_i		(ncoSin1),
 	
 	.FilteredAdcDataI_o	(filteredDataOut),
 	.FilteredAdcDataQ_o	(),
@@ -209,9 +217,9 @@ DecimFilterWrapper
 	.FilteredDataWidth	(MaxWidth),
 	.FirOutDataWidth	(48),
 	.FirOutCutBit		(42),
-	.LsbForR1		(10'd16),
-	.LsbForR2		(10'd16),
-	.LsbForR4		(10'd16)
+	.LsbForR1			(LsbForR1),
+	.LsbForR2			(LsbForR2),
+	.LsbForR4			(LsbForR4)
 )
 ImpulseResponseFilter
 (
@@ -294,8 +302,8 @@ always	@(posedge	Clk50)	begin
 	end	else	begin
 		if	(oscWind)	begin
 			// $display("AdcData is %d", sinAdd);
-			// $fwrite(inSignal,"%d\n",   sinAdd);
-			$fwrite(inSignal,"%d\n",   adcDataMixed);
+			$fwrite(inSignal,"%d\n",   sinAdd);
+			// $fwrite(inSignal,"%d\n",   adcDataMixedCut);
 		end	
 	end	
 end

+ 17 - 17
src/src/Sim/FFTTest.m

@@ -1,6 +1,6 @@
 FormatSpec = '%d';
 
-N = 1;
+N = 2;
 R = 2;
 B = 16;
 M = 1;
@@ -53,22 +53,22 @@ ImpuseRespFftDb = ImpuseRespFftDb-max(ImpuseRespFftDb);
 
 
 #########################################################################################################################
-figure('name','In Data Time/Freq', 'Numbertitle', 'off')
-subplot(2,1,1)
-plot(x, InDataSignal)
-grid on;
-grid minor;
-title("In Signal")
-xlabel("Time")
-ylabel("Amp")
-
-subplot(2,1,2)
-plot(FreqBandOrig,InDataFftDb)
-grid on;
-grid minor;
-title("Single-Sided Amplitude Spectrum of InData")
-xlabel("f (Hz)")
-ylabel("Amp")
+##figure('name','In Data Time/Freq', 'Numbertitle', 'off')
+##subplot(2,1,1)
+##plot(x, InDataSignal)
+##grid on;
+##grid minor;
+##title("In Signal")
+##xlabel("Time")
+##ylabel("Amp")
+##
+##subplot(2,1,2)
+##plot(FreqBandOrig,InDataFftDb)
+##grid on;
+##grid minor;
+##title("Single-Sided Amplitude Spectrum of InData")
+##xlabel("f (Hz)")
+##ylabel("Amp")
 
 figure('name','Frequency compare', 'Numbertitle', 'off')
 subplot(3,1,1)

Разница между файлами не показана из-за своего большого размера
+ 1999 - 1999
src/src/Sim/FilteredData.txt


Разница между файлами не показана из-за своего большого размера
+ 2000 - 2000
src/src/Sim/InputSignal.txt