sinara-hw / sinara

Sayma AMC/RTM issue tracker
Other
42 stars 7 forks source link

3U DAC (Zotino) tests & rev 1 errata #227

Closed gkasprow closed 6 years ago

gkasprow commented 7 years ago

Issues:

Tests that can be done without an Artiq driver:

Tests that need an Artiq driver:

Configuration for measurements is: DAC->3m SCSI cable->HD68 to IDC->IDC to BNC->scope/DVM/noise analyser. CMCs and a LPF on the IDC-BNC board as previously discussed. LPF chosen to avoid degrading the DAC noise or bandwidth too much.

3u dac photo top

jordens commented 7 years ago

Nice! If you managed to build a switched DC-DC DAC/ADC with noise as low as envisioned, that would be a massive achievement. I am especially looking forward to graphs/number on:

(same for #226)

hartytp commented 7 years ago

Great job Greg, that looks really good!

How many of these boards have arrived?

What tests are you thinking of doing (beyond confirming basic functionality)? A few things I thought about were:

Configuration for measurements is: DAC->3m SCSI cable->HD68 to IDC->IDC to BNC->scope. CMCs and a ~500kHz LPF on the IDC-BNC board as previously discussed.

gkasprow commented 7 years ago

I produced 5 sets of all boards. Please make a checklist with all measurement you want me to perform. Greg

On 30 June 2017 at 20:14, hartytp notifications@github.com wrote:

Great job Greg, that looks really good!

How many of these boards have arrived?

What tests are you thinking of doing (beyond confirming basic functionality)? A few things I thought about were:

  • Measure step response
  • Measure cross-talk (full-scale square wave at ~50kHz on one channel, another channel at 0V)
  • Measure noise PSD (0.1Hz to 10MHz)
  • Measure spurs due to SMPSs, digital-cross talk, pickup etc. Have one channel updating as fast as possible and measure noise on another channel
  • Confirm that temperature controller works. Measure temperature stability of DAC in lab conditions
  • Measure drift of channels with temperature controller running. Set one channel to Vmax/0V, and look at drift over ~24 hours to confirm gain and offset drifts.
  • Check for thermal issues (drifts) when outputs are slewing at max rate (e.g. testing for issues due to self-heating in the OpAmps). What’s the best way to test this?

Configuration for measurements is: DAC->3m SCSI cable->HD68 to IDC->IDC to BNC->scope. CMCs and a ~500kHz LPF on the IDC-BNC board as previously discussed.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/m-labs/sinara/issues/227#issuecomment-312337677, or mute the thread https://github.com/notifications/unsubscribe-auth/AEH-vhF_D_ORh82KPZcLx_v0h6w0U8DPks5sJTsPgaJpZM4OKhpj .

hartytp commented 7 years ago

I've edited the top post with an initial list of tests to perform. Anyone should feel free to edit this if there are more tests they think we should do, or if they can think of different/better tests we should do instead.

I produced 5 sets of all boards.

Ace. Presumably, you need 1 for testing. Could you send one to @jordens for software development, and post the other 3 to me, please? @jordens do you need a VHDCI carrier board?

gkasprow commented 7 years ago

Yes, I will post boards once I make them running.

hartytp commented 7 years ago

Thanks.

gkasprow commented 7 years ago

@hartytp @jordens One more thing about tests - I will do some tests that ADI evaluation software lets me perform. For rest of them I will need ARTIQ test software running on KC705 or Sayma. This approach will also validate boards operation in final environment.

gkasprow commented 6 years ago

DAC with shielding boxes 2017-07-07 10 31 26

hartytp commented 6 years ago

very nice!

gkasprow commented 6 years ago

Status update: Power supply works Thermal controller needs some tuning of PI regulator

one issue so far: DAC heats up and after a minute causes LDO overcurrent protection. Board consumes 240mA when cold and 0.4A after one minute when DAC gets hot. Needs further investigation. I will check if the issue is on other boards.

dhslichter commented 6 years ago

one issue so far: DAC heats up and after a minute causes LDO overcurrent protection. Board consumes 240mA when cold and 0.4A after one minute when DAC gets hot. Needs further investigation. I will check if the issue is on other boards.

yikes! keep us posted.

hartytp commented 6 years ago

@jordens @sbourdeauducq What's the status of ARTIQ support for Zotino? IIUC, @gkasprow's current plan is to test Novo using a DevKit (and some hacks to program the PGIAs), but to use Artiq to test Zotino. This will require the Artiq Zotino driver.

If possible, I'd like to have Zotino and Novo prototypes tested and shipped before Kasli/Urukul prototypes arrive to avoid building up a backlog.

jordens commented 6 years ago

We need the hardware to write ARTIQ support. Writing that blind is something we want to avoid. The driver for the AD53[67][0123] family is already there and tested.

Also we have the backlog from Sayma. We really need to focus on that first.

hartytp commented 6 years ago

We need the hardware to write ARTIQ support. Writing that blind is something we want to avoid.

Sorry, I thought that @gkasprow had already shipped you a Zotino and a Novo. @gkasprow Could you send M-Labs/Quartiq 1 of each of these boards, please?

Also we have the backlog from Sayma. We really need to focus on that first.

ACK, that should take priority. But, I don't want to put off testing the Zotino prototypes for too long. So, if Artiq Zotino support is more than a few weeks off, we should look into options for testing Zotino without Artiq (e.g. use a microprocessor eval board)...

jordens commented 6 years ago

We may already have them in HK. That plan is ok. Ping @sbourdeauducq @mntng @whitequark

gkasprow commented 6 years ago

@hartytp I've sent them already with Saymas.

hartytp commented 6 years ago

@gkasprow Thanks for confirming!

@sbourdeauducq et al, let me know what you think the timeline for Artiq support of Zotino is likely to be, and we'll come up with an appropriate plan for hardware testing.

hartytp commented 6 years ago

@gkasprow One other thing: are there any other things that can be done on Zotino/Novo without Artiq support. e.g. IIRC, the temperature controller still needs debugging. It might be worth sorting those kinds of issue out first, while M-Labs write drivers.

gkasprow commented 6 years ago

Yes, I'm just preparing HDL for little CMOD-A7 FPGA devkit to be able to take ober the SPI bus and configure registers in ADC in Zotino and Nobo boards. I will use little FORTH CPU to do the job. The temperature controller needs adjustment of regulator time constant - now it oscillates with sub-Hz rate.

hartytp commented 6 years ago

@gkasprow Thanks for the update! That sounds great. Let me know how it goes.

T

sbourdeauducq commented 6 years ago

We have a Zotino hooked up in HK to a KC705 using the FMC DIO and VHDCI carrier. @mntng is testing it. There is some bug/regression in the compiler/runtime: https://github.com/m-labs/artiq/issues/828 (nothing that sounds difficult to fix, though)

hartytp commented 6 years ago

@sbourdeauducq Thanks for confirming.

arpitagrawal23 commented 6 years ago

Hello Everybody I'm working with @jbqubit and have a Zotino board with me (connected via KC705 and VHDCI). I'm aiming to contribute to writing driver for Zotino. If any of you have some code in your git branch, would you let me know please? I can use it to avoid duplication of efforts and build something that is not yet done. Thank you.

sbourdeauducq commented 6 years ago

The driver itself is there, it just needs "glue". You should talk with @mntng, I'll write you both an email.

dhslichter commented 6 years ago

@gkasprow @hartytp we made a duplicate of the Zotino filters, running from an AD5360 DAC, for some work in our lab. Measured the output noise, which appears to be strongly influenced by environmental pickup after the filters, but with ferrites on the cable from DAC box to spectrum analyzer we measured the output noise to be ~2-3 nV/rtHz in the 1-10 MHz band, with some structure but nothing really exceeding 4 nV/rtHz. Don't have the data traces handy, but it'd be a good sanity check to compare once @gkasprow gets the DAC testing set up.

gkasprow commented 6 years ago

I'll start DAC evaluation soon, once I finish tests with ADC. Hopefully this will happen this week.

hartytp commented 6 years ago

@gkasprow How many of these boards do you have populated atm? If you have more than one, can you send me one now, please? That way we may be able to help you with some of the testing.

gkasprow commented 6 years ago

@hartytp We have 3 at WUT, one in MLabs and one in Joe's hands.

gkasprow commented 6 years ago

@hartytp I just assembled test suite with original ADI devkit. Unfortunately it allows only DC tests, so we will need ARTIQ diver very soon.

jordens commented 6 years ago

AFAIK @mntng @sbourdeauducq @arpitagrawal23 @jbqubit are all working on that driver.

hartytp commented 6 years ago

@hartytp We have 3 at WUT, one in MLabs and one in Joe's hands.


Unfortunately it allows only DC tests, so we will need ARTIQ diver very soon.

Most of the tests currently on the list can be done with a DC signal from the DAC. If you confirm the DC performance and the step response (90%-10% rise time), we can probably help with the AC measurements.

AFAIK @mntng @sbourdeauducq @arpitagrawal23 @jbqubit are all working on that driver.

That's quite a lot of collective programming might! Any idea when this will land?

gkasprow commented 6 years ago

@hartytp Once I cnfirm it cooperates with devkit, will post it ASAP. Hopefully will be able to post on Monday.

hartytp commented 6 years ago

@gkasprow Great, thanks! Can you post some of the adapter boards as well, please (BNC->IDC and HD68 to IDC)? That will help with testing.

gkasprow commented 6 years ago

@hartytp sure.

gkasprow commented 6 years ago

@hartytp Today I finally did tests with DAC boards. Digital part works well and I'm able to set voltage on specified output. So @jbqubit 's student should be able to make it running. I found some strange issue. With wrongly soldered decoupling capacitor on -12V rail, the voltage is around -2.5V and DAC gets damaged in such conditions. It happened on 2 of the boards. This would not happen in correctly working boards with correctly installed capacitors, but I'm curious what is the mechanism of the damage.

gkasprow commented 6 years ago

@jbqubit please make sure that your student won't connect supply of the board with wrongly soldered caps.

hartytp commented 6 years ago

@hartytp Today I finally did tests with DAC boards. Digital part works well and I'm able to set voltage on specified output.

Great! Can you ship us a board next week then, please? Let me know when you're ready to start analog testing.

gkasprow commented 6 years ago

@hartytp we will manage it. With devkit I can do only DC tests (crosstalk, stability)

arpitagrawal23 commented 6 years ago

@jbqubit please make sure that your student won't connect supply of the board with wrongly soldered caps.

I was not aware of this and had connected power supply several times over the last few weeks. Now, even after correcting the capacitor polarity, the board is not working. My code seems fine, I've verified SPI signals on the oscilloscope, but I'm not getting output at terminals of Zotino board. While there are chances that my code is buggy, but can we eliminate the possibility of Zotino being broken by doing some test on it?

gkasprow commented 6 years ago

Is your DAC chip getting hot?

sbourdeauducq commented 6 years ago

@gkasprow since we don't have Altium and this is not on the silkscreen: where exactly are those caps? I measured the voltage on the three tantalum caps on the top side and they are polarized correctly on the HK board.

gkasprow commented 6 years ago

The capacitors are mounted correctly according to PCB silkscreen. They are placed in wrong way on the schematics. Here are pics with wrongly mounted capacitors: obraz

obraz

You can also use free Altium viewer.

sbourdeauducq commented 6 years ago

Ok, the HK board had been fixed.

gkasprow commented 6 years ago

A few more measurements: DAC output 0x0000 -> 0xFFFF tek00067

tek00064

gkasprow commented 6 years ago

As a next step I switched heating on and noticed that regulator disabled heating MOSFET at 50 degrees but IC kept heating itself until it failed. On two other boards I had same situation. So for some reason, heating of DAC chip abve 50 degrees causes some internal latchup which starts consuming too much current from -12V source until LDO overheats and disables its output. So the DAC boards work providing that we don't heat the DAC chip. There must be a reason behind that. Any ideas?

jordens commented 6 years ago

You will want to load the offset DACs with 0x2000 for all tests.

gkasprow commented 6 years ago

I measured what happens during power on cycle. And it's quite interesting. 3V3 wakes up much earlier than rest of rails and is't obvious. Then goes -12 and 12V and then reference. And this reference causes spike on negative rail. Such non-monotonic supply may cause latchup and such effect is observed.

tek00068

gkasprow commented 6 years ago

there are visible oscillations and it is caused by the fact that LC1964 is missing ceramic cap at its output. There is such cap close to the DAC but it seems the equivalent ESR is too high. So I added 1uF 0805 cap and oscillations are gone. But the spike is still there...

tek00069

gkasprow commented 6 years ago

I lowered negative power supply to -4.8V. And there is no spike so far. DAC stays cold. tek00070

hartytp commented 6 years ago

@gkasprow What's happening on the other voltage rails? e.g. the +-13V rail and the OpAmp supply +-12V?