【基带开发】AD9361 复乘 com_cmpy_a12_b12

IP核


tb_com

c 复制代码
module tb_com(

    );
    
    reg ad9361_l_clk,rst;   

initial begin
    ad9361_l_clk=0;
    forever #4.545 ad9361_l_clk=~ad9361_l_clk;
end
initial begin
    rst=1;
    #9.09 rst=0;
end
wire [63 : 0] m_fll_phase_shift_dout; // fll 输出 dout
// FLL Phase Shift
com_cmpy_a12_b12 FLL_Phase_Shift (
  .aclk(ad9361_l_clk),                              // input wire aclk
  .aresetn(~rst),                        // input wire aresetn
  .s_axis_a_tvalid(1'b1),        // input wire s_axis_a_tvalid
  .s_axis_a_tdata({4'd0,12'h400,4'd0,12'h400}),          // input wire [31 : 0] s_axis_a_tdata from data rate convert   Q0.11  [27:16] [11:0]
  .s_axis_b_tvalid(1'b1),        // input wire s_axis_b_tvalid 
  .s_axis_b_tdata({4'd0,12'h400,4'd0,12'h400}),          // input wire [31 : 0]  s_axis_b_tdata               Q0.11  [27:16] [11:0]
  .m_axis_dout_tvalid( ),  // output wire m_axis_dout_tvalid
  .m_axis_dout_tdata(m_fll_phase_shift_dout)    // output wire [63 : 0] m_axis_dout_tdata           Q2.22  [56:32] [24:0]
);

reg [24:0] dout_i,dout_q;
always @ (posedge ad9361_l_clk or posedge rst)
begin
    if(rst)
    begin
    dout_i <= 25'd0;
    dout_q <= 25'd0;
    end
    
    else
    begin
    dout_i <= m_fll_phase_shift_dout[24:0];
    dout_q <= m_fll_phase_shift_dout[56:32];
    end
end

endmodule
相关推荐
Aaron158811 小时前
RFSOC+VU13P/VU9P+GPU通用一体化硬件平台
人工智能·算法·fpga开发·硬件架构·硬件工程·信息与通信·基带工程
XINVRY-FPGA15 小时前
XC7VX485T-2FFG1157I Xilinx Virtex-7 FPGA
arm开发·嵌入式硬件·fpga开发·硬件工程·fpga
鄙人菜鸡15 小时前
Xilinx IP Aurora 8B/10B 多级光纤串联复位时序
fpga开发
是大强17 小时前
数字 IC 设计
fpga开发
十年一梦实验室18 小时前
【Gemini+Claude】根据(工业级智能3D相机)系统描述创建软硬件架构图、爆炸图 +多线程主程序、主循环
数码相机·fpga开发
tiantianuser18 小时前
RDMA设计63:怎么进行网络嗅探功能测试
网络·fpga开发·rdma·高速传输·cmac·roce v2
Risehuxyc18 小时前
Verilog语言的标准发展历程及核心要点
fpga开发
maverick_1112 天前
【FPGA】关于两个数相加的“坑”
c语言·matlab·fpga开发
碎碎思2 天前
经典复活:3dfx Voodoo 显卡,正在被 FPGA“重做一遍”
fpga开发
listhi5202 天前
基于FPGA的电压表与串口通信系统设计
fpga开发