Home

Awesome

Contains the verilog code to demonstrate the capabilities of the Silicon Frog fpga-384 when connected to an ESP32 with the following projects:

Blink

The simplest example with flashing LEDs.

PWM

Fading the LED brightness using PWM.

Gates

The ESP32 cycles the FPGA through a set of logic gates (AND, OR, XOR, NOT) and the LEDs will show the result of the inputs.

The gate type is chosen dependent upon a bit pattern selection, and the output is the logical gate application of the input.

Adder

The ESP32 shows the FPGA as a simple one bit full adder taking in a single bit and a carry bit and producing the result bit and a new carry bit.

Resulting bit and carry bit are shown on the leds.

Parity

The ESP32 cycles the FPGA through a sequence where four bits are used as an input to find the even parity, which is shown on an led.

Rand

The FPGA will provide a running Pseudo Random Number Generator using a Linear Feedback Shift Register.

A single bit is shown on an led which should flash with an unpredictable pattern.

Pattern

Shows the application of an internal state machine. A binary pattern is fed into an input which changes the internal state. The green LED lights when the full pattern is correctly received.

BCD

This shows Binary Coded Decimal logic.

Decoder

Shows how to generate specific binary output, given a binary input. Can be used to create a 3-8 decoder, for example.

SPI

Shows reception and transmission of SPI data at 4MHz speeds.

I2C

Shows how to create a device with a programmable I2C address.

Serial

Implements a serial encoder / decoder, which has been tested at 115200 baud.