SDVD/doc/bugs.md
Waylon Cude 71eecd18e8
All checks were successful
ci/woodpecker/push/test-workflow Pipeline was successful
Added modules to read sdcard data and cmd response
These were realy headaches but the testbenches are passing. We need to
take a look at the audio_buffer testbench for sure, it is way wrong and
needs reworked to use the interface. Should do a pass through every
module probably.
2025-06-07 21:57:17 -07:00

1.3 KiB

Bugs I Found

Audio Buffer

  • Forgot to assign to a delay counter

Debouncer

  • Logic was fundamentally wrong
  • Found multiple logic bugs with testbench and then assertions

Display Converter

  • Found a typo in a single digit

Low Freq Clock Gen

  • Was initially trying to do modulo at max clock speed, failing timing

sd_rom

  • ROM was getting totally optimized out and was doing nothing in simulation, and didn't show up in synthesized design
  • Timing issues, ROM was one cycle slower than expected, latching takes an extra cycle too, had to rework state machines, there are a bonus 2 delay states when starting and ending writes

PWM

  • major design problems
  • clocked too slow
  • initial goal of 16-bit audio isn't feasible because 100MHz isn't fast enough to pwm based on a 16-bit counter, would give a sample rate of 1.5khz

command_sender

  • output ready signal was delay a cycle because it was set by sequential logic, detected in testing, changed it to a combinational output for 1 cycle speedup

read_command

  • response_type was not getting correctly stored/set, breaking the module entirely. Detected in testbench
  • off-by-one error detected in the counter

read_data

  • audio buffer address to write to was never changing, caught in simulation
  • some off-by-one errors in the byte shifting were found and corrected