EmbDev.net

Forum: FPGA, VHDL & Verilog verilog - print to file a 3d array


von Uzi C. (Company: uzico Inc.) (uzicohen10)


Rate this post
useful
not useful
Hi,
How do i export to file a 3d array in verilog?
usually i use writememh with  2d arrays

example:
   Declaration:
   reg [7:0] arr [31:0];

   write to file:
   $writememh("PrintedArr.txt",arr);

Tnx in advance.

von Marcus H. (mharnisch)


Rate this post
useful
not useful
Uzi Co wrote:
> How do i export to file a 3d array in verilog?
> usually i use writememh with  2d arrays
>
> example:
>    Declaration:
>    reg [7:0] arr [31:0];
>
>    write to file:
>    $writememh("PrintedArr.txt",arr);

Strictly speaking this is a 1d array of vectors (aka memory). And just 
to be a PITA, I would like to remind you that $writememh is not part of 
IEEE-1364 2005. So either you are using a vendor extension or IEEE-1800 
2005 (SystemVerilog).

The point of $writememh is to store data in a way that can be read back 
using $readmemh. Since the latter can fill only memories (1d arrays), 
what would you expect as output of $writememh? In any case you could 
just use write your own function and use $sformat or $psprintf (which is 
also non-standard, but widely supported).

Hope this helps
Marcus
http://www.doulos.com/knowhow/verilog_designers_guide/

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.