AGC+FPGA基于FPGA的数字AGC自适应增益设计,应用在BPSK调制解调系统中
Posted fpga&matlab
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AGC+FPGA基于FPGA的数字AGC自适应增益设计,应用在BPSK调制解调系统中相关的知识,希望对你有一定的参考价值。
AGC测试,这里我们主要通过产生一个信号,输入到AGC中,来分析AGC的工作效果,其仿真结果如下 图所示:
这里,我们使用测试信号的时候,通过输入一个正弦信号,实现AGC的功能。
BPSK解调部分,这里只能测试部分,因为原始程序中,包括了AD部分,这个部分是外部的数据的模数转换之后获得数字信号,这个仿真没法模拟。
下面对BPSK解调部分进行仿真测试:
module BPSKTop(
input wire clk,
input wire rst,
input wire CE1x,
input wire CE2x,
input wire CE4x,
input wire CE128x,
input wire Reset,
input wire[15:0] DI,
input wire[15:0] DQ,
input wire[31:0] BTRThr,
output wire[15:0] TPBus1,
output wire[15:0] TPBus2,
output wire[15:0] TPBus3,
output wire PLLLockFlag,
output wire[15:0] BestSampleI,
output wire[15:0] BestSampleQ,
output wire BTRDecisionEn,
output wire BTRDecisionData);
wire [15:0] LPFOutI;
wire [15:0] LPFOutQ;
wire [15:0] SumLPFOutI;
wire [15:0] SumLPFOutQ;
wire [32:0] PLLComplexMultiplerOutI;
wire [32:0] PLLComplexMultiplerOutQ;
wire [15:0] NCOCosin;
wire [15:0] NCOSin;
wire [15:0] BPSKPLLSourceReal;
wire [15:0] BPSKPLLSourceImag;
wire [15:0] BestSampleITmp;
wire [15:0] BestSampleQTmp;
wire TmpBit;
wire [15:0] TmpSymbol;
BPSKTop_ComplexMult BPSKTop_ComplexMult_ins(
.clk(clk),
.rst(rst),
.DI(DI),
.DQ(DQ),
.NCOCosin(NCOCosin),
.NCOSin(NCOSin),
.PLLComplexMultiplerOutI(PLLComplexMultiplerOutI),
.PLLComplexMultiplerOutQ(PLLComplexMultiplerOutQ));
BPSKPLLTop U_BPSKPLLTop(
.clk(clk),
.CE128x(CE128x),
.Reset(rst),
.SinkReal(PLLComplexMultiplerOutI[31:16]),
.SinkImag(PLLComplexMultiplerOutQ[31:16]),
.BPSKPLLLockFlagOut(PLLLockFlag),
.NCOCosin(NCOCosin),
.NCOSin(NCOSin),
.SourceReal(BPSKPLLSourceReal),
.SourceImag(BPSKPLLSourceImag));
SumClearFilter U_SumClearFilter(
.clk(clk),
.CEx(CE128x),
.SinkReal(PLLComplexMultiplerOutI[31:16]),
.SinkImag(PLLComplexMultiplerOutQ[31:16]),
.SourceReal(LPFOutI),
.SourceImag(LPFOutQ));
BTRTop U_BTRTop(
.clk(clk),
.CE1x(CE1x),
.CE2x(CE2x),
.DI(PLLComplexMultiplerOutI[31:16]),
.DQ(PLLComplexMultiplerOutQ[31:16]),
.BTRThr(BTRThr),
.BestSampleI(BestSampleITmp),
.BestSampleQ(BestSampleQTmp),
.BTRDecisionEn(BTRDecisionEn),
.BTRDecisionData(BTRDecisionData));
assign BestSampleI = BestSampleITmp;
assign BestSampleQ = BestSampleQTmp;
assign TPBus1 = BPSKPLLSourceReal;
assign TPBus2 = BPSKPLLSourceImag;
assign TPBus3 = SumLPFOutI;
endmodule
完整源码获得方式
方式1:微信或者QQ联系博主
方式2:订阅MATLAB/FPGA教程,免费获得教程案例以及任意2份完整源码
A15-04
以上是关于AGC+FPGA基于FPGA的数字AGC自适应增益设计,应用在BPSK调制解调系统中的主要内容,如果未能解决你的问题,请参考以下文章
如何基于 ZEGO SDK 实现回声消除自动增益控制降噪功能