2fsk解调的程序
本帖最后由 fpgaw 于 2010-7-16 13:29 编辑moudle pl_fsk2(clk,start,x,y);
input clk,start,x;
output y;
reg q, m,xx;
always@(posedge clk)
begin
xx<=x;
if(start='0') q<=0;
else if(q=11) q<=0;
else q<=q+1;
end
always@(posedge xx or q)
begin
if(q=11) m<=0;
else if(q=10) if(m<=3) y<='0';
else y<='1';
end
else m<=m+1;
endmoudle
帮忙看看我的程序错在那里
这个个2fsk解调的程序!!! 谢谢指点!!!!! 用的什么解调方法啊? moduel fsk(clk,
Start,
X,
Y
);
input clk;
input start;
input x;
output y;
reg y;
reg q;
reg xx;
reg xx_reg;
reg m;
always @(posedge clk or negedge start)
begin
if(!start)
q<=0;
else if(q==11)
q<=0;
else
q<=q+1;
end
always @(posedge clk or negedge start)
begin
if(!start)
m<=0;
else if(q==11)
m<=0;
else if(xx_reg==0 && xx==1)
m<=m+1;
else
m<=m;
end
always @(posedge clk or negedge start)
begin
if(!start)
begin
xx_reg<=0;
xx<=0;
end
else
begin
xx_reg<=xx;
xx<=x;
end
end
always @(posedge clk or negedge start)
begin
if(!start)
y<=0;
else if(q==10 && m<=3 && m>=0)
y<=0;
else
y<=1;
end
endmodule
页:
[1]