-
Notifications
You must be signed in to change notification settings - Fork 2
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
Channel SMPS/switching/SPI/update spur differences #50
Comments
Many thanks for posting that data @jordens To check I understand the units, is the worst-case spur you've observed something like For a first hw revision, I find that pretty encouraging. Out of curiosity, what's the noise BW from these measurements/what in-band noise floor do you measure? Still, worth looking again at the layout with this data and seeing what we can do to improve for the next revision... |
Crudely, by eye, the filter response looks about right, which is good! |
See #51 for that. |
Is this with the swapped output filter resistors manually reworked, or with an unmodified board (i.e. with the extra output offset)? |
@jordens did you try that on another Fastino board? |
I don't see why these channels are noisy. Did you generate 3.125 sinewave on all outputs? |
@gkasprow can you remind me which channel is which on that diagram? Also, can you remind me where the refs for each channel are routed? |
27 is right by the connect edge of the board, while 31/26 are close to the SMPS/FPGA so it somewhat makes sense they would be nosier. 24 is right next to 27 and derive from the same ref buffer so that difference isn't obvious. |
other channels like 23, 29 is as close as 31 and 26 to the SMPS. Channel 8 is the closes to the FPGA |
It needs careful investigation. I'd disable the SMPS first or at least correlate its frequency with the spur. |
Easier said than done. In most of our lab space I’d struggle to reproduce @jordens data since the ambient emi is a nightmare. |
The same in my lab. I have a few FM and DVBT transmitters nearby. It's impossible to measure 100mV 100MHz signal with a scope... |
Supposedly our shiny new building will have low EMI. I've budgeted some time to test Fastino once the software is ready. If I can reproduce this then I'll have a look at it (I suspect the easiest thing is to measure the frequencies of the various noise sources and see how they compare to the measured spur frequencies). |
This is exactly what I do. Make a small air coil and sniff with scope in search of EMI sources. |
This is the only v1.0 I have with all output networks patched. The patch works. Voltages are ok. I didn't generate a 3.125 sine wave (MHz? V?). This is a 25 year old office building, with a massive mains/network/phone cable duct running 2 m away from the setup, a bunch of office and lab/RF equipment in the same room, a tram line outside in 50 m distance, the corresponding tram substation in 20 m distance, kitchen with microwave at 20 m, a forest of cell towers at 100 m (20m up), and other labs and companies doing high power audio and wireless development in the adjacent floors and buildings. Certainly not clean. It's a really nice exercise to figure out what matters and what doesn't matter. The really weird difference is between 24 and 27. |
Indeed. From a quick skim over the schematic, the most likely offender for the 450kHz stuff looks to be the 3V3 SMPS. It's also not filtered (beyond the main switching LC) and goes all over the board due to e.g. LEDS, signals like REF shutdown, etc. I haven't looked at the layout in enough detail to offer an explanation for the difference in noise between ch 24/27 though. @jordens if you have time at some point, it would be really interesting to grab a trace of the P3V3 rail and compare the spectral content on that to the noisy DAC outputs. |
@gkasprow ah you mean the lowest FFT bin at 3.125 kHz? That's just window leakage from the DC 0 Hz bin. |
Glad you got that up and running. Let's have a look tomorrow, but I suspect that with a scope probe that's largely pickup from the lab. |
How did you connect the GND clip? |
SO, you are essentially measuring the ground loop noise. Try to substract the two :) |
@jordens How did you configure the DACs to continuously update? From our discussion on Mattermost it sounded like you didn't use DMA. However, I only see the SCLK toggling when |
You need to change the gateware to make it update all the time. |
What's "good" level of spurs? |
@jordens any objections to closing this? This is quite different on the new layout and AFAICT most of the spurs you pointed to are gone. |
As long as you keep track of the underlying issue, sure. |
For the avoidance of confusion, which issue exactly do you mean? |
Given that there are several issues potentially playing into this, we should document a specification for the spurs and ensure that we track and look at several/all channels and all spurs, each time there is an attempt to fix class of spurs. I don't have the overview of assigning the spurs displayed here to the different underlying issues (SMPS on 12V from Kasli, cross-talk from CS/CLK/MOSI through the chip, cross-talk from the terminations through vias or cuts or radiatively, cross-talk from the SMPS on Fastino, through the references or onto the analog path). But I'm happy if someone says that those issues are being addressed and are reasonably likely to have caused the spurs in v1.0. |
ACK. I think all that information does exist in the issues, but not in a form that's easy to follow. I believe that we understand the vast majority of the spurs now and v1.2 should be very clean (v1.1 already looks good on all but a few channels). It will be interesting to see the data though... |
The DAC channels are pretty different in terms of their spur performance. 27 is really nice and clean, 31/26/24 are pretty dirty. They have spurs at 450-600 kHz and in the MHz range.
Probably layout tightness, layer crossings, and general routing.
channel 27:
channel 24:
channel 26:
channel 31:
The text was updated successfully, but these errors were encountered: