Skip to content

Ndh/spd proxy fixes#495

Merged
nathanaelhuffman merged 8 commits into
mainfrom
ndh/spd-proxy-fixes
May 15, 2026
Merged

Ndh/spd proxy fixes#495
nathanaelhuffman merged 8 commits into
mainfrom
ndh/spd-proxy-fixes

Conversation

@nathanaelhuffman
Copy link
Copy Markdown
Collaborator

@nathanaelhuffman nathanaelhuffman commented May 6, 2026

A number of bugs discovered by analysis, and one found through testing after the other 4 were fixed.

I've got 200 A2 -> A0 sequences on my cosmo with 1.5TB of RAM installed with no missing DIMMs reported, so I think this is good to go.

Fixes #496
Fixes #497
Fixes #498
Fixes #499

And fixes the bug shown in an image below, which is difficult to reproduce in simulation at the current simulation bit rates, but was a result of transitioning out of ENSURE_PLAYBACK_HOLD if the SP5 SCL was still high.

Comment thread hdl/projects/cosmo_seq/dimms_subsystem/sims/dimm_arb_mux_tb.vhd
@nathanaelhuffman
Copy link
Copy Markdown
Collaborator Author

With changes at this point, there's at least one bug here still, this looks like it might be around playback sclk fedges?:
image

@nathanaelhuffman nathanaelhuffman force-pushed the ndh/spd-proxy-fixes branch 3 times, most recently from 997eea5 to 17a8150 Compare May 13, 2026 15:27
@nathanaelhuffman nathanaelhuffman marked this pull request as ready for review May 13, 2026 15:28
Comment thread hdl/projects/cosmo_seq/dimms_subsystem/sims/dimm_arb_mux_tb.vhd Outdated
Comment thread hdl/projects/cosmo_seq/dimms_subsystem/sims/dimm_arb_mux_tb.vhd Outdated
Comment thread hdl/projects/cosmo_seq/dimms_subsystem/sims/dimm_arb_mux_tb.vhd Outdated
Comment thread hdl/projects/cosmo_seq/dimms_subsystem/sims/dimm_arb_mux_tb.vhd Outdated
Comment thread hdl/projects/cosmo_seq/dimms_subsystem/sims/dimm_arb_mux_tb.vhd
The REDGE-exit branch (cpu_scl_in='1' catch-up) set dimm_sda_oe one
registered cycle after the rising edge, while the playback SCL was
still high -- producing a spurious start or stop condition on the DIMM
bus.  The FEDGE path already handles catch-up exit correctly, so just
remove the REDGE branch and let playback_bits increment cleanly.
@nathanaelhuffman nathanaelhuffman enabled auto-merge (squash) May 15, 2026 18:58
@nathanaelhuffman nathanaelhuffman merged commit 8b01ff2 into main May 15, 2026
9 checks passed
@nathanaelhuffman nathanaelhuffman deleted the ndh/spd-proxy-fixes branch May 15, 2026 19:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants