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.

What is a look-up table in relation to FPGA?

Status
Not open for further replies.

icon

Member level 2
Joined
Feb 2, 2005
Messages
53
Helped
2
Reputation
4
Reaction score
0
Trophy points
1,286
Location
india
Activity points
625
WHAT IS A LOOK UP TABLE?
WHAT IS THE NEED OF A LOOK TABLE.
HOW LOOK TABLE ARE MADE INSIDE IN CL
 

regarding FPGA

Hello icon,

LUTs are used to implement combinatorial logic. Most LUTs in FPGA have 4 inputs and one output. So you can design a logic with 16 (2^4) different result.

Look-Up-Tables (LUTs) are described very well in the datasheets of FPGA. Just download one of these from Altera, Xilinx, …

What do you mean with “CL”?


Bye,
cube007
 

Re: regarding FPGA

its not cl its configarable logic block(clb)

my doubt is 1.whether look up table cannot be used for sequential circuits

2.i didnt get what you mean by 4 inputs (2^4=16) that sentence itself

3.can anyone just simply tell me what is the purpose and why it is used
4.how will we make a look up table
..any simple example...
 

regarding FPGA

Hello icon,

It’s nice to see you here.

1. That’s right. For sequential circuits you need a register too. Registers are part of LE (Logic Elements, Altera) / CLB (configurable logic block, Xilinx).
2. A LUT with 4 inputs and one output has a depth of 16. For each value of the inputs you get a corresponding output. So the inputs are working like an address for RAM/ROM with a 1 bit width. The content of the LUT will be configured during start-up when using SRAM based FPGA or is burned in OTP (one time programmable) devices.
3. It is used because it is very simply and flexible. Sorry this might be a little less information.
4. You don’t have to care about how to build up a LUT when using FPGAs. All you need is to describe your design with a HDL (hardware descripton language) like VHDL/VERILOG and a synthesizing tool like ISE from Xilinx or Quartus from Altera.

Do you want to use a FPGA in your next project? What’s the task of this project?

Regards,
cube007
 

Re: regarding FPGA

3. Any Boolean function can be defined with a truth table, and the FPGA lookup table is simply a hardware implementation of a truth table. When you program or configure the FPGA, then for each LUT, you are changing one column of the truth table, the output (or function value).
 

Re: regarding FPGA

tkbits said:
3. Any Boolean function can be defined with a truth table, and the FPGA lookup table is simply a hardware implementation of a truth table. When you program or configure the FPGA, then for each LUT, you are changing one column of the truth table, the output (or function value).

Exactly, that is the missing information in my post. Thanks you tkbits.
 

Re: regarding FPGA

hi cube007

i am studying FPGA for my next project works.....


3. Any Boolean function can be defined with a truth table, and the FPGA lookup table is simply a hardware implementation of a truth table. When you program or configure the FPGA, then for each LUT, you are changing one column of the truth table, the output (or function value).




can u just explain how to create a lut of a halfadder for example

a b s c

0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

i wish to create alut for this how will i create by that statements...oh my head is breaking in this lut....

as u said i am not thinking much more and will write my verilog code and the FPGA will do the rest,,,,,isnt it....

can u just explain how a full adder or multiplexer is implemented in an FPGA.code i know but inside configurable logic block how will it work..
 
Last edited by a moderator:

Re: regarding FPGA

Hello icon,

IMHO:

In your example you would need two LUTs because you have two outputs - so one LUT for each Boolean term. Both LUTs are using the same two inputs (a, b) to decode the output.

Code:
LUT 1     LUT 2
a b  s    a b  c
0 0  0    0 0  0
0 1  1    0 1  0
1 0  1    1 0  0
1 1  0    1 1  1

It is very possible that there is a more resource optimized solution too.


Bye,
cube007
 

    icon

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top