f4pga / f4pga/ideas

Render LUT diagram

Open
#42 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
86
Forks
9
PR merge metrics
No merged PRs in 30d

Description

[![](https://developers.google.com/open-source/gsoc/resources/downloads/GSoC-logo-horizontal-800.png)](https://symbiflow.github.io/summer-of-code)

# Brief explanation

Render FPGA LUTs as a digital circuit diagram.

# Detailed Explanation

[FPGA](https://en.wikipedia.org/wiki/Field-programmable_gate_array) devices use look-up table ([LUT](https://en.wikipedia.org/wiki/Lookup_table#Hardware_LUTs)) to implement arbitrary [combinatorial logic](https://en.wikipedia.org/wiki/Combinational_logic).

for `N` bit LUT configuration can be represented as an `2^N` long number.

Most typical LUTs are LUT4 with `N = 4` with `2^N = 16` bit config word shown on the figure below.

![](https://gist.githubusercontent.com/drom/1cbf4be08b29b9bdd634ab581765032c/raw/fac5d6b704a1b59466aac85cda2abe0162df644e/lut4.svg?sanitize=true)

Mux representation of LUT is not the most human-readable one.

Any configuration of the LUT can be rendered as a digital circuit diagram.

![](https://image.slidesharecdn.com/lec23-130220031438-phpapp01/95/fpga-27-638.jpg)

https://github.com/drom/icedrom -- is an JavaScript libratry that can render LUT config as digital circuit diagram.

**Read more HERE** https://observablehq.com/@drom/lut4-decoder

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.