Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to initialise look-up tables?

Status
Not open for further replies.

ravi_meghadri

Junior Member level 1
Junior Member level 1
Joined
Aug 3, 2007
Messages
15
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,362
My design is having a memory unit and it has to act as look-up table. How to initialise it at the start up. It is of size 256 x 20 bits.
 

Well, there are several ways to initialize it:

1) If the LUT holds data that never changes, your ASIC technology might include ROM structures, in which case you could use a ROM as the look up table, and the manufacturer's ASIC process will have a method to define the contents during design.

2) you could write your RTL to include an initialization sequence that, after reset is deasserted, your functional block writes the LUT data into the memory. This is especially useful if the LUT holds a repeating or deterministic pattern. But, you can still define any pattern you like.

3) If the LUT is meant to be reconfigurable, then you could load it via a processor interface during your chip's init sequence.

Just a few suggestions.

r.b.
 
can you do this?

reg [19:0] lut [255:0];

generate
for ...
always@(posedge iCLK or posedge iRST)
begin
if (iRST == 1)
lut = 'h0;
else
.....
end
endgenerate


ravi_meghadri said:
My design is having a memory unit and it has to act as look-up table. How to initialise it at the start up. It is of size 256 x 20 bits.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top