-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
isolation jumpers #7
Comments
Yes. We need a low-jitter, non-isolated, cheap, high-density, low-EEM-count DIO solution. IIRC the jitter was pretty much the isolator value which was ~500ps RMS and thus very much comparable to the 1ns resolution. It would be great if we could resolve the jitter issue of the isolators at the same time. The non-isolated driver does not have to have that issue but merely jumpering ground would transplant it. We already have a good non-isolated IO solution: Banker. Already for the usual number of DIOs (>= 24) Banker does not significantly differ in price and saves lots of EEM connectors and -- if desired -- front panel space. |
What jitter do you expect from the FPGA -> ribbon cable -> LVDS buffer -> LVDS-LVCMOS driver? I don't have a well-calibrated expectation for that (particularly the FPGA), but no point optimizing the isolator below the other jitter sources. There are also lower jitter isolators (by at least a factor of a few) if we really want, but good to be clear on our goals before altering designs.
To be clear, you mean that jumpering across the isolator to tie the grounds together does not decrease the jitter? We already have a good non-isolated IO solution: Banker. Already for the usual number of DIOs (>= 24) Banker does not significantly differ in price and saves lots of EEM connectors and -- if desired -- front panel space. Is your point here that we should just not bother with the {BNC, SMA}_DIO boards here and everyone should use banker? |
I stand corrected on the isolator datasheet value. But you measured 750ps pk-pk in practice and given the design of the isolator I would expect the distribution to be mostly uniform and thus the RMS value to be not much less than 500ps.
|
The FPGA is in the 90ps range "bad" case output jitter IIRC (from the Urukul SYNC issue). |
Thanks for digging that out. So, we measured 1.5ns pk-pk jitter between a pair of TTLs. Assuming each TTL contributed half the pk-pk jitter, that's 750ps per TTL, which is still a factor of 2 greater than the specified max jitter. So, it's still not obvious to me that we can blame this on the isolator. |
Okay. I haven't really thought too much about Banker (or trade-offs in terms of update rates/latency for that design), so it may be that some of our use-cases would be better served by it. Did you measure jitter with Banker? It seems like adding a jumper is a good idea anyway. Having some way of detecting the isolation state (FP LED/something on an I2C extender) would be nice if we do it. |
Assume that's a typo and you mean "not much less than 350ps" |
I didn't measure jitter with Banker. |
So, the 350ps pk of jitter specified by the isolator is ~100ps RMS. So, not too far off what one might expect from the FPGA and other jitter sources. i.e. on the basis of current evidence it looks like: (a) we're not currently limited by the isolator's jitter (b) the isolator's jitter is probably not that much worse than the FPGA etc (and IIRC there are a few other isolators with a factor ~2 less jitter). tl;dr without further data, I don't think jitter is a strong reason to remove the isolator. |
IIRC the fpga jitter was also peak, I don't know about the speculation w.r.t not being limited by the isolator. But sure. Somebody should measure it. |
The isolators are supplied by DC/DC converters. I added LC filter but some ripples are still there and may impact the jitter. |
Banker is very limited because does not support DRTIO. Such a solution would enable 1ns timing resolution occupying only 4HP. This is essential when used in the CPCIS crate. |
Sounds like a good idea |
That is not much of a limitation in practice. Banker doesn't need to support drtio. It can still give you full timing resolution by routing the eem signals to the desired ios dynamically. |
True, but it's unnecessary complexity and adds a jitter and delays that it's hard to control. |
Let's close it. I designed a 16channel IO MCX board without isolators. It should reduce jitter significantly. |
The desire to have the IO isolated came from older systems where all control hardware shares a common ground. Now Kasli + DRTIO works well, this seems to be less important; it's generally easy to have sub-sections of the experiment that require different grounds running from different Kaslis, with DRTIO fibres providing isolation. Cases where 1-2 IOs need a completely separate ground do still exist, but seem much less common.
Isolating grounds like this has some gotchas, and is probably not a good default option. I can see two paths forward:
My preference would be 2 because
Pros:
Cons:
Thoughts?
The text was updated successfully, but these errors were encountered: