Commit graph

11 commits

Author SHA1 Message Date
Steve Markgraf
040bdb24a4 Optimize async FIFO critical path and add CLI build system
Replace chained adder in rptr_empty/wptr_full with parallel
pre-computation (rbin+1, rbin+2) and mux selection. This reduces
the critical path from ~9 to ~5-6 logic levels, improving clk_pixel
Fmax from 120.8 to 166.7 MHz (+38%).

Add build.sh/build.tcl for headless CLI builds via gw_sh with
timing-driven PnR and increased placement/routing effort.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 23:37:22 +01:00
Steve Markgraf
97f0c4ffd1 Fix Verilog coding style and add proper SDC timing constraints
Fix blocking/non-blocking assignment mismatches: use = in combinational
blocks (hdmi.v hsync/vsync) and <= in sequential blocks (hsdaoh_core.v
fifo_read_en). Add explicit PLL clock definitions and asynchronous clock
group declarations to all SDC files to eliminate false cross-domain
timing violations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 22:20:39 +01:00
Steve Markgraf
c03f45e226 update for newer Gowin IDE 2025-11-29 01:12:07 +01:00
Steve Markgraf
a9bc725209 hdmi: switch to pipelined TMDS encoder
This drastically improves timing and performance, especially on
Tang Nano 9K and 4K.
2024-12-07 23:44:30 +01:00
Steve Markgraf
1b2d011581 hsdaoh_core: add CRC16 checksum support
Output is identical to the implementation in
hsdaoh-rp2350.
2024-12-06 22:57:41 +01:00
Steve Markgraf
8b9e1457ea hdmi: fix DVI mode
must have been some mixup during importing the code.
2024-12-05 22:04:58 +01:00
Steve Markgraf
5ce8b885a4 hsdaoh_core: correct indentation 2024-10-25 01:08:57 +02:00
Steve Markgraf
ff425280b1
Add LICENSE 2024-06-03 21:09:08 +02:00
Steve Markgraf
bd6201e4ac
Update README.md 2024-05-08 01:46:58 +02:00
Steve Markgraf
0e8cce21be
Create README.md 2024-05-08 01:41:27 +02:00
Steve Markgraf
12fd93fa44 initial commit 2024-05-05 01:03:12 +02:00