【基带开发】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
相关推荐
tiantianuser7 小时前
RDMA简介5之RoCE v2队列
fpga开发·verilog·fpga·rdma·高速传输·rocev2
碎碎思8 小时前
打破延迟极限的 FPGA 机械键盘
fpga开发·计算机外设
hahaha60161 天前
Flash烧录速度和加载配置速度(纯FPGA & ZYNQ)
fpga开发
hahaha60161 天前
ARINC818编解码设计FPGA实现
fpga开发
XMAIPC_Robot1 天前
基于RK3568的多网多串电力能源1U机箱解决方案,支持B码,4G等
linux·fpga开发·能源·边缘计算
广药门徒1 天前
在使用一些不用驱动大电流的设备就可以用stm32的自己的上下拉但是本身上下拉不就是给iicspi这些他通信给信号的吗中怎么还跟驱动能力扯上了有什么场景嘛
stm32·单片机·fpga开发
hahaha60161 天前
XDMA pcie环路测试
fpga开发
XMAIPC_Robot2 天前
基于FPGA + JESD204B协议+高速ADC数据采集系统设计
fpga开发
XMAIPC_Robot2 天前
基于RK3576+FPGA+AI工业控制器的工地防护检测装备解决方案
人工智能·fpga开发
XMAIPC_Robot3 天前
基于 ZYNQ UltraScale+ OV5640的高速图像传输系统设计,支持国产替代
linux·数码相机·fpga开发·架构·边缘计算