3 ms·
These are intended to implement things like specialized communication protocols, or other IO behaviour. Basically, it lets you push a variety of things you'd no
by fake-name 1y ago
These are intended to implement things like specialized communication protocols, or other IO behaviour. Basically, it lets you push a variety of things you'd normally do via CPU polling to the hardware.
You could easily do SPI (or something similar, like BiSS-C) in 32 LUTs.
The Raspberry Pi Pico modules have something similar (their PIO modules, which support up to 32 instructions - https://dev.to/blues/a-practical-look-at-pio-on-the-raspberry-pi-pico-50j8 https://dev.to/blues/a-practical-look-at-pio-on-the-raspberr...).
TI also have a CLB module that's actually even smaller (though they document theirs) - https://www.ti.com/lit/ug/spruir8b/spruir8b.pdf https://www.ti.com/lit/ug/spruir8b/spruir8b.pdf
Basically, this is a pretty broadly available IO abstraction.