├── .gitignore ├── LICENSE ├── README.md ├── asm ├── adafruit_pioasm.py ├── add.asm ├── blink.asm ├── compile ├── copybit.asm ├── i2s.asm ├── pwm.asm ├── spi.asm ├── square.asm ├── step2.asm ├── stepper.asm ├── uart_rx.asm ├── uart_tx.asm ├── ws2812.asm └── ws2812b.asm ├── blackicemx ├── Makefile ├── blackicemx.mk └── pio.pcf ├── pio_stepper.py ├── sim ├── Makefile ├── copybit.mem ├── copybit.v ├── exec.v ├── i2s.mem ├── i2s.v ├── pwm.mem ├── pwm.v ├── spi.mem ├── spi.v ├── square.mem ├── square.v ├── stepper.mem ├── stepper.v ├── tb.v ├── test.mem ├── uart_rx.mem ├── uart_rx.v ├── uart_tx.mem ├── uart_tx.v ├── ws2812.mem └── ws2812.v ├── src ├── decoder.v ├── divider.v ├── fifo.v ├── isr.v ├── machine.v ├── osr.v ├── pc.v ├── pio.v ├── scratch.v └── top │ ├── blink.mem │ ├── blink.v │ ├── blink_conf.mem │ ├── copy_conf.mem │ ├── copybit.mem │ ├── copybit.v │ ├── echo.v │ ├── exec.v │ ├── exec_conf.mem │ ├── guitar.wav │ ├── hello.v │ ├── hello_conf.mem │ ├── i2s.mem │ ├── i2s.v │ ├── i2s_conf.mem │ ├── music.mem │ ├── pwm.mem │ ├── pwm.v │ ├── pwm2.v │ ├── pwm_conf.mem │ ├── pwm_conf1.mem │ ├── pwm_conf2.mem │ ├── rx_conf.mem │ ├── sq_conf.mem │ ├── square.mem │ ├── square.v │ ├── st_conf.mem │ ├── stepper.mem │ ├── stepper.v │ ├── tomem.py │ ├── top.v │ ├── tx_conf.mem │ ├── tx_conf2.mem │ ├── uart_rx.mem │ ├── uart_rx.v │ ├── uart_tx.mem │ ├── uart_tx.v │ ├── ws2812.mem │ ├── ws2812.v │ └── ws_conf.mem └── ulx3s ├── Makefile ├── ulx3s.mk └── ulx3s_v20.lpf /.gitignore: -------------------------------------------------------------------------------- 1 | bin/ 2 | __pycache__/ 3 | tb 4 | *.vcd 5 | 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/README.md -------------------------------------------------------------------------------- /asm/adafruit_pioasm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/adafruit_pioasm.py -------------------------------------------------------------------------------- /asm/add.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/add.asm -------------------------------------------------------------------------------- /asm/blink.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/blink.asm -------------------------------------------------------------------------------- /asm/compile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/compile -------------------------------------------------------------------------------- /asm/copybit.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/copybit.asm -------------------------------------------------------------------------------- /asm/i2s.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/i2s.asm -------------------------------------------------------------------------------- /asm/pwm.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/pwm.asm -------------------------------------------------------------------------------- /asm/spi.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/spi.asm -------------------------------------------------------------------------------- /asm/square.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/square.asm -------------------------------------------------------------------------------- /asm/step2.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/step2.asm -------------------------------------------------------------------------------- /asm/stepper.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/stepper.asm -------------------------------------------------------------------------------- /asm/uart_rx.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/uart_rx.asm -------------------------------------------------------------------------------- /asm/uart_tx.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/uart_tx.asm -------------------------------------------------------------------------------- /asm/ws2812.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/ws2812.asm -------------------------------------------------------------------------------- /asm/ws2812b.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/asm/ws2812b.asm -------------------------------------------------------------------------------- /blackicemx/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/blackicemx/Makefile -------------------------------------------------------------------------------- /blackicemx/blackicemx.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/blackicemx/blackicemx.mk -------------------------------------------------------------------------------- /blackicemx/pio.pcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/blackicemx/pio.pcf -------------------------------------------------------------------------------- /pio_stepper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/pio_stepper.py -------------------------------------------------------------------------------- /sim/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/Makefile -------------------------------------------------------------------------------- /sim/copybit.mem: -------------------------------------------------------------------------------- 1 | 80a0 2 | 6001 3 | -------------------------------------------------------------------------------- /sim/copybit.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/copybit.v -------------------------------------------------------------------------------- /sim/exec.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/exec.v -------------------------------------------------------------------------------- /sim/i2s.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/i2s.mem -------------------------------------------------------------------------------- /sim/i2s.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/i2s.v -------------------------------------------------------------------------------- /sim/pwm.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/pwm.mem -------------------------------------------------------------------------------- /sim/pwm.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/pwm.v -------------------------------------------------------------------------------- /sim/spi.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/spi.mem -------------------------------------------------------------------------------- /sim/spi.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/spi.v -------------------------------------------------------------------------------- /sim/square.mem: -------------------------------------------------------------------------------- 1 | e001 2 | e000 3 | -------------------------------------------------------------------------------- /sim/square.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/square.v -------------------------------------------------------------------------------- /sim/stepper.mem: -------------------------------------------------------------------------------- 1 | a0e6 2 | e026 3 | 6104 4 | 0042 5 | 6004 6 | -------------------------------------------------------------------------------- /sim/stepper.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/stepper.v -------------------------------------------------------------------------------- /sim/tb.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/tb.v -------------------------------------------------------------------------------- /sim/test.mem: -------------------------------------------------------------------------------- 1 | e101 2 | e100 3 | -------------------------------------------------------------------------------- /sim/uart_rx.mem: -------------------------------------------------------------------------------- 1 | 2020 2 | ea27 3 | 4001 4 | 0642 5 | -------------------------------------------------------------------------------- /sim/uart_rx.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/uart_rx.v -------------------------------------------------------------------------------- /sim/uart_tx.mem: -------------------------------------------------------------------------------- 1 | 98a0 2 | f727 3 | 6001 4 | 0642 5 | -------------------------------------------------------------------------------- /sim/uart_tx.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/uart_tx.v -------------------------------------------------------------------------------- /sim/ws2812.mem: -------------------------------------------------------------------------------- 1 | 6121 2 | 1123 3 | 1100 4 | a142 5 | -------------------------------------------------------------------------------- /sim/ws2812.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/sim/ws2812.v -------------------------------------------------------------------------------- /src/decoder.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/decoder.v -------------------------------------------------------------------------------- /src/divider.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/divider.v -------------------------------------------------------------------------------- /src/fifo.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/fifo.v -------------------------------------------------------------------------------- /src/isr.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/isr.v -------------------------------------------------------------------------------- /src/machine.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/machine.v -------------------------------------------------------------------------------- /src/osr.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/osr.v -------------------------------------------------------------------------------- /src/pc.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/pc.v -------------------------------------------------------------------------------- /src/pio.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/pio.v -------------------------------------------------------------------------------- /src/scratch.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/scratch.v -------------------------------------------------------------------------------- /src/top/blink.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/blink.mem -------------------------------------------------------------------------------- /src/top/blink.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/blink.v -------------------------------------------------------------------------------- /src/top/blink_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/blink_conf.mem -------------------------------------------------------------------------------- /src/top/copy_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/copy_conf.mem -------------------------------------------------------------------------------- /src/top/copybit.mem: -------------------------------------------------------------------------------- 1 | 80a0 2 | 6001 3 | -------------------------------------------------------------------------------- /src/top/copybit.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/copybit.v -------------------------------------------------------------------------------- /src/top/echo.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/echo.v -------------------------------------------------------------------------------- /src/top/exec.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/exec.v -------------------------------------------------------------------------------- /src/top/exec_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/exec_conf.mem -------------------------------------------------------------------------------- /src/top/guitar.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/guitar.wav -------------------------------------------------------------------------------- /src/top/hello.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/hello.v -------------------------------------------------------------------------------- /src/top/hello_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/hello_conf.mem -------------------------------------------------------------------------------- /src/top/i2s.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/i2s.mem -------------------------------------------------------------------------------- /src/top/i2s.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/i2s.v -------------------------------------------------------------------------------- /src/top/i2s_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/i2s_conf.mem -------------------------------------------------------------------------------- /src/top/music.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/music.mem -------------------------------------------------------------------------------- /src/top/pwm.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/pwm.mem -------------------------------------------------------------------------------- /src/top/pwm.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/pwm.v -------------------------------------------------------------------------------- /src/top/pwm2.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/pwm2.v -------------------------------------------------------------------------------- /src/top/pwm_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/pwm_conf.mem -------------------------------------------------------------------------------- /src/top/pwm_conf1.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/pwm_conf1.mem -------------------------------------------------------------------------------- /src/top/pwm_conf2.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/pwm_conf2.mem -------------------------------------------------------------------------------- /src/top/rx_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/rx_conf.mem -------------------------------------------------------------------------------- /src/top/sq_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/sq_conf.mem -------------------------------------------------------------------------------- /src/top/square.mem: -------------------------------------------------------------------------------- 1 | e001 2 | e000 3 | -------------------------------------------------------------------------------- /src/top/square.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/square.v -------------------------------------------------------------------------------- /src/top/st_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/st_conf.mem -------------------------------------------------------------------------------- /src/top/stepper.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/stepper.mem -------------------------------------------------------------------------------- /src/top/stepper.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/stepper.v -------------------------------------------------------------------------------- /src/top/tomem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/tomem.py -------------------------------------------------------------------------------- /src/top/top.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/top.v -------------------------------------------------------------------------------- /src/top/tx_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/tx_conf.mem -------------------------------------------------------------------------------- /src/top/tx_conf2.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/tx_conf2.mem -------------------------------------------------------------------------------- /src/top/uart_rx.mem: -------------------------------------------------------------------------------- 1 | 2020 2 | ea27 3 | 4001 4 | 0642 5 | -------------------------------------------------------------------------------- /src/top/uart_rx.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/uart_rx.v -------------------------------------------------------------------------------- /src/top/uart_tx.mem: -------------------------------------------------------------------------------- 1 | 98a0 2 | f727 3 | 6001 4 | 0642 5 | -------------------------------------------------------------------------------- /src/top/uart_tx.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/uart_tx.v -------------------------------------------------------------------------------- /src/top/ws2812.mem: -------------------------------------------------------------------------------- 1 | 6121 2 | 1123 3 | 1100 4 | a142 5 | -------------------------------------------------------------------------------- /src/top/ws2812.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/ws2812.v -------------------------------------------------------------------------------- /src/top/ws_conf.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/src/top/ws_conf.mem -------------------------------------------------------------------------------- /ulx3s/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/ulx3s/Makefile -------------------------------------------------------------------------------- /ulx3s/ulx3s.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/ulx3s/ulx3s.mk -------------------------------------------------------------------------------- /ulx3s/ulx3s_v20.lpf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lawrie/fpga_pio/HEAD/ulx3s/ulx3s_v20.lpf --------------------------------------------------------------------------------