Talk:Lookup Table
Improve further
Hi @GHXX and hi all, I made a change to the article to make it simpler and clearer. However, I suspect it needs some improvements. How it can be improved in terms of phrasing and/or additional information ? DjSapsan (talk) 17:36, 7 September 2025 (UTC)
@DjSapsan,
Imo we should add that the AND-inputs may also be negated.
And that a lut can only output a single bit, in the general case, and not a batch of outputs (instead of 'The output may be a single bit or a pattern of bits.')
The "we can avoid delays by not using buffers" paragraph should imo be replaced with one that states that the not-inputs are generally fed through a fastbuffer first, so that no backpropagation happens.
Lmk what you think, please GHXX (talk) 20:31, 7 September 2025 (UTC)
- @GHXX, yes to all, except one thing. Why LUTs should output only a single bit? I thought using it to produce a pattern of bits is a common application. DjSapsan (talk) 20:45, 7 September 2025 (UTC)
- @DjSapsan, No, usually it only produces one output bit (), because all those chains get OR ed together, and unless the other output ()) can be computed by , there is no way of computing that other output, as far as i am aware.
- I suppose you could maybe re-use the intermediate NOT outputs, but that is far from the general case from my experience. GHXX (talk) 20:55, 7 September 2025 (UTC)
- @GHXX I'm so sorry, I keep merging this "optimized" LUT with a "full" LUT in mind.
- By "full" LUT, I mean essentially a decoder.
- We need to sort this out.
- The article talks about building a LUT only for true outputs. Thanks for reminding me, that the logic for non-true outputs is absent.
- But the "full" LUT has a logic for every single input combination (even if the corresponding output is off).
- So... should we make two versions? DjSapsan (talk) 22:02, 7 September 2025 (UTC)
- @DjSapsan i think making a separate decoder page, if that name is appropriate ,would make sense; but, wouldnt that in a way be a multiplexer with fixed inputs (possibly using switches) that you are choosing from using address lines?
- From my experience a lookup table is always simply used to compute one bit from a set of input bits, encoding an arbitrary logical formula by just listing all inputs that lead to a true output.
- I think the architecture of a "full" LUT as you are describing it would be fundamentally different as changing outputs in a normal LUT tends to be really annoying, as you would need to physically add/remove chains and couldnt simply flip a switch. GHXX (talk) 22:09, 7 September 2025 (UTC)
- @GHXX Maybe we misunderstand each other a little bit.
- The "full" LUT is 100% equivalent to the "1-bit" LUT. It only adds a possibility to output a pattern of bits (as well as the same 1 bit).
- In my experience, LUTs are used in programming, for example in Lua:
t = {}
t[1] = "logic"
t[2] = "world"- And in LW, I store characters for multi-segmented displays in LUTs.
- Changing it should be simpler, because it doesn't require adding/removing parts, only changing the output bits. DjSapsan (talk) 22:19, 7 September 2025 (UTC)