Post Go back to editing

About the Channel CPACK Utility Core IP output data in the ADRV9009 ZC706 reference design

Category: Software
Product Number: 0
Software Version: 21.2

hello, I have a question about the Channel CPACK Utility Core IP output data in the ADRV9009 ZC706 reference design.I made a testbench about this ip in a new projech,which only contains this ip core.And from the scoped image below(if it's clear enough).I think the output packed_fifo_wr_data seems wrong,unlinke it's wiki introduction,it's seems to be 0000 0000 00000 0000 4444 3333 2222 1111.It is my error?Or it is the right output.My testbench only simply input the data and give a enable signal.

and I also test when 3 channels are enabled.I am not sure it is right or wrong.and it's data is 01030201 02010302 03020103 which every single number means four same numble.

Thanks,

Cai

Parents
  • Hi,

    We will be looking into this matter next week.

    Best regards,
    Iulia

  • `timescale 1ns / 1ps
    //////////////////////////////////////////////////////////////////////////////////
    // Company: 
    // Engineer: 
    // 
    // Create Date: 2024/04/09 11:49:41
    // Design Name: 
    // Module Name: cpack_sim
    // Project Name: 
    // Target Devices: 
    // Tool Versions: 
    // Description: 
    // 
    // Dependencies: 
    // 
    // Revision:
    // Revision 0.01 - File Created
    // Additional Comments:
    // 
    //////////////////////////////////////////////////////////////////////////////////
    
    
    module cpack_sim();
    //input
    reg clk;
    reg reset;
    reg enable_0;
    reg enable_1;
    reg enable_2;
    reg enable_3;
    reg [3:0] fifo_wr_en;
    reg [31:0] fifo_wr_data_0;
    reg [31:0] fifo_wr_data_1;
    reg [31:0] fifo_wr_data_2;
    reg [31:0] fifo_wr_data_3;
    reg packed_fifo_wr_overflow;
    //output
    wire fifo_wr_overflow;
    wire packed_fifo_wr_en;
    wire packed_fifo_wr_sync;
    wire [127:0] packed_fifo_wr_data;
    
    design_1_wrapper u_util_cpack2
    (
    .enable_0 (enable_0),
    .enable_1(enable_1),
    .enable_2(enable_2),
    .enable_3(enable_3),
    .fifo_wr_data_0 (fifo_wr_data_0),
    .fifo_wr_data_1 (fifo_wr_data_1),
    .fifo_wr_data_2 (fifo_wr_data_2),
    .fifo_wr_data_3 (fifo_wr_data_3),
    .clk (clk),
    .reset (reset),
    .packed_fifo_wr_overflow (packed_fifo_wr_overflow),
    .packed_fifo_wr_sync(packed_fifo_wr_sync),
    .packed_fifo_wr_data (packed_fifo_wr_data),
    .fifo_wr_overflow (fifo_wr_overflow),
    .packed_fifo_wr_en (packed_fifo_wr_en),
    .fifo_wr_en (fifo_wr_en)
    );
    
    initial
    begin
      clk=1'b0;
      reset=1'b1;
      #200
      reset=1'b0;
      enable_0=1'b1;
      enable_1=1'b1;
      enable_2=1'b1;
      enable_3=1'b0;
      fifo_wr_data_0=16'h1111;//对应A
      fifo_wr_data_1=16'h2222;
      fifo_wr_data_2=16'h3333;
      fifo_wr_data_3=16'h4444;
      fifo_wr_en=4'b1111;
      packed_fifo_wr_overflow=1'b0;
     end
     
     always #10 clk=~clk;
     
     
     
    endmodule
    

    Thanks and here is my tb code.

Reply
  • `timescale 1ns / 1ps
    //////////////////////////////////////////////////////////////////////////////////
    // Company: 
    // Engineer: 
    // 
    // Create Date: 2024/04/09 11:49:41
    // Design Name: 
    // Module Name: cpack_sim
    // Project Name: 
    // Target Devices: 
    // Tool Versions: 
    // Description: 
    // 
    // Dependencies: 
    // 
    // Revision:
    // Revision 0.01 - File Created
    // Additional Comments:
    // 
    //////////////////////////////////////////////////////////////////////////////////
    
    
    module cpack_sim();
    //input
    reg clk;
    reg reset;
    reg enable_0;
    reg enable_1;
    reg enable_2;
    reg enable_3;
    reg [3:0] fifo_wr_en;
    reg [31:0] fifo_wr_data_0;
    reg [31:0] fifo_wr_data_1;
    reg [31:0] fifo_wr_data_2;
    reg [31:0] fifo_wr_data_3;
    reg packed_fifo_wr_overflow;
    //output
    wire fifo_wr_overflow;
    wire packed_fifo_wr_en;
    wire packed_fifo_wr_sync;
    wire [127:0] packed_fifo_wr_data;
    
    design_1_wrapper u_util_cpack2
    (
    .enable_0 (enable_0),
    .enable_1(enable_1),
    .enable_2(enable_2),
    .enable_3(enable_3),
    .fifo_wr_data_0 (fifo_wr_data_0),
    .fifo_wr_data_1 (fifo_wr_data_1),
    .fifo_wr_data_2 (fifo_wr_data_2),
    .fifo_wr_data_3 (fifo_wr_data_3),
    .clk (clk),
    .reset (reset),
    .packed_fifo_wr_overflow (packed_fifo_wr_overflow),
    .packed_fifo_wr_sync(packed_fifo_wr_sync),
    .packed_fifo_wr_data (packed_fifo_wr_data),
    .fifo_wr_overflow (fifo_wr_overflow),
    .packed_fifo_wr_en (packed_fifo_wr_en),
    .fifo_wr_en (fifo_wr_en)
    );
    
    initial
    begin
      clk=1'b0;
      reset=1'b1;
      #200
      reset=1'b0;
      enable_0=1'b1;
      enable_1=1'b1;
      enable_2=1'b1;
      enable_3=1'b0;
      fifo_wr_data_0=16'h1111;//对应A
      fifo_wr_data_1=16'h2222;
      fifo_wr_data_2=16'h3333;
      fifo_wr_data_3=16'h4444;
      fifo_wr_en=4'b1111;
      packed_fifo_wr_overflow=1'b0;
     end
     
     always #10 clk=~clk;
     
     
     
    endmodule
    

    Thanks and here is my tb code.

Children
No Data