JuliaComputing / xtrx_julia

XTRX LiteX/LitePCIe based design for Julia Computing
BSD 2-Clause "Simplified" License
1 stars 0 forks source link

Setting VCTCXO pad to a CSR creates bad gateware #85

Open staticfloat opened 2 years ago

staticfloat commented 2 years ago

While trying to debug VCTCXO issues, we attempted to follow the original gateware, which sets the VCTCXO enable pin via a CSR. However, what we found was that the gateware suddenly started behaving strangely, and when we attempted to use litescope to debug it, we got all unreadable X values in our gwave output.

We kept the offending change immortalized in a comment, so that we could come back later to debug why this was happening:

https://github.com/JuliaComputing/xtrx_julia/blob/ab3678c57b34ef8dde7c82784422765586acccdd/gateware/vctcxo.py#L34-L42

enjoy-digital commented 2 years ago

That's a strange behavior since the VCTCXO clock is only used by the gateware to increment a counter (and used indirectly through the LMS7002M digital interface). The system clock is based on the PCIe clock, so the system should not be affected by this unless pad.en is also connected to other peripherals.