

Asicle is a Wordle clone implemented directly in hardware. A first version of it was taped out on the Google-Skywater MPW6 shuttle. This second version is a rewrite for Tiny Tapeout.
The 25-fold decrease in area mostly comes from moving the word list and font bitmaps to external flash on the QSPI Pmod, with some architectural changes to compensate for slower memory access. The design was also adapted to the Tiny Tapeout ecosystem by using the Gamepad Pmod for input and the Tiny VGA Pmod for output.
If you haven't played Wordle before, the aim is to guess a five-letter English word in six attempts. Each time you get feedback: a green square indicates that the letter is correct, a yellow square indicates that it appears in the hidden word but at a different position, and a grey square means that the letter doesn't appear in the solution at all.
Gamepad controls:
(* only in debug mode)
Direct input using ui_in:
| # | Input | Output | Bidirectional |
|---|---|---|---|
| 0 | up | tinyvga: r1 | qspi: cs0 (flash) |
| 1 | down | tinyvga: g1 | qspi: sd0/mosi |
| 2 | left | tinyvga: b1 | qspi: sd1/miso |
| 3 | right | tinyvga: vsync | qspi: sck |
| 4 | guess / gamepad: latch | tinyvga: r0 | qspi: sd2 |
| 5 | new game / gamepad: clock | tinyvga: g0 | qspi: sd3 |
| 6 | peek (debug) / gamepad: data | tinyvga: b0 | qspi: cs1 (unused) |
| 7 | roll (debug) | tinyvga: hsync | qspi: cs2 (unused) |