
PolyTrig is a TinyTapeout-compatible digital waveform synthesis core designed for compact ASIC implementation.
The design generates multiple waveform types using lookup-table (LUT) based signal reconstruction techniques and phase manipulation methods.
Supported waveform modes include:
The architecture uses quarter-wave LUT optimization to reduce memory usage while reconstructing complete waveforms through symmetry operations and phase transformations.
Waveform selection and runtime configuration are controlled through the TinyTapeout input interface.
The project includes a cocotb-based verification environment located in the
test directory.
Run RTL simulation using:
cd test
make -B
Run gate-level simulation using:
make -B GATES=yes
Waveforms can be viewed using GTKWave:
gtkwave tb.fst tb.gtkw
No external hardware is required.
| # | Input | Output | Bidirectional |
|---|---|---|---|
| 0 | phase/control bit 0 | waveform output bit 0 | NCO waveform select bit 0 |
| 1 | phase/control bit 1 | waveform output bit 1 | NCO waveform select bit 1 |
| 2 | phase/control bit 2 | waveform output bit 2 | NCO amplitude select bit 0 |
| 3 | phase/control bit 3 | waveform output bit 3 | NCO amplitude select bit 1 |
| 4 | phase/control bit 4 | waveform output bit 4 | auxiliary/debug bit 4 |
| 5 | phase/control bit 5 | waveform output bit 5 | auxiliary/debug bit 5 |
| 6 | phase/control bit 6 | waveform output bit 6 | auxiliary/debug bit 6 |
| 7 | phase/control bit 7 | waveform output bit 7 | auxiliary/debug bit 7 |