customized IP revision B

Questions and discussions about the Xillybus IP core and drivers

customized IP revision B

Postby Guest »

Hi, Eli,

I tried revision B but the Address/data interface (16 address bits) of revision B does not work. You can write_mem and hexdump but no change can be seen after writing value to address.

// Memory array
reg [31:0] demoarray[0:31];

// Wires related to /dev/xillybus_mem_32
wire user_r_mem_32_rden;
wire user_r_mem_32_empty;
reg [31:0] user_r_mem_32_data;
wire user_r_mem_32_eof;
wire user_r_mem_32_open;
wire user_w_mem_32_wren;
wire user_w_mem_32_full;
wire [31:0] user_w_mem_32_data;
wire user_w_mem_32_open;
wire [15:0] user_mem_32_addr;
wire user_mem_32_addr_update;

// A simple inferred RAM
always @(posedge bus_clk)
begin
if (user_w_mem_32_wren)
demoarray[user_mem_32_addr] <= user_w_mem_32_data;

if (user_r_mem_32_rden)
user_r_mem_32_data <= demoarray[user_mem_32_addr];
end

assign user_r_mem_32_empty = 0;
assign user_r_mem_32_eof = 0;
assign user_w_mem_32_full = 0;


The original version is good. Do you have any clue is anything is wrong or there is a bug?

Best,
Chongxi
Guest
 

Re: customized IP revision B

Postby support »

Hello,

Seekable streams have been tested for revision B, so a bug in the core is not the likely explanation.

Could you please test your case by starting with a revision A core, verifying that it works, and then with a revision B core which is the upgraded replica of it, with no other changes?

Besides, I suppose that you've made a change to write_mem to adapt it to 32 bit interface -- otherwise it won't work on either revision.

Regards,
Eli
support
 
Posts: 802
Joined:

Re: customized IP revision B

Postby Guest »

Your strategy is always so clear. Thanks. I am trying now.

Yes I change it to 32bits interface, why this would not work? Do you mean in software layer mem_write only support 8bits?

Best,
Chongxi
Guest
 

Re: customized IP revision B

Postby support »

Hello,

Please refer to section 6.1 ("Seekable streams") in the "Xillybus host application programming guide" for your OS, available at the Documentation section of Xillybus' website.

The short answer is -- if you change from 8 bit data with to 32 bit data width, you need to modify the software so it seeks by a multiple of 4, that is ADDR*4 instead of just ADDR.

Regards,
Eli
support
 
Posts: 802
Joined:

Re: customized IP revision B

Postby Guest »

Hi Eli,

Thank you so much. Sure this is the reason, I understand now.

I really appreciate your quick help so much!

Best,
Chongxi
Guest
 

Re: customized IP revision B

Postby Guest »

Hi Eli,

Just to confirm your suggestion. Now I change the address to 32 bits in the software side. And it is working now. Cool!

Thank you very much!

Best,
Chongxi
Guest
 


Return to Xillybus