-
1. Re: how to read asynchronous data to FX3
ramav_01 Jun 7, 2012 1:12 AM (in response to run.chen)If you look at the GPIF designer tool, you have different options to configure it.
You can do one thing. Configure the GPIF as shown in the attached project. Configure GPIF as master so that it provides clock to the external device (ADC in your case). Select the communication type as Synchronous.
Go through the attached GPIF desinger project and the source code. This code is developed for AD9269 and it is not fully tested. But you can use it as reference to design GPIF descriptors for your application.
Thanks,
sai krishna.
-
2. Re: how to read asynchronous data to FX3
ramav_01 Jun 7, 2012 1:13 AM (in response to run.chen)Attaching the FX3 soruce code
-
3. Re: how to read asynchronous data to FX3
ramav_01 Jun 7, 2012 1:14 AM (in response to run.chen)Attaching the FX3 source code
-
-
5. Re: how to read asynchronous data to FX3
ramav_01 Jun 7, 2012 1:25 AM (in response to run.chen)I am seeing some issue with attaching the projects. Please give me your mail ID. I will mail these projects to you.
Thanks,
sai krishna.
-
6. Re: how to read asynchronous data to FX3
dhanrajr_36 Jun 7, 2012 1:30 AM (in response to run.chen) -
7. Re: how to read asynchronous data to FX3
dhanrajr_36 Jun 7, 2012 1:31 AM (in response to run.chen)-
AD9269_R2.rar 4.0 MB
-
-
8. Re: how to read asynchronous data to FX3
run.chen Jun 7, 2012 4:12 AM (in response to run.chen)Thank you so much. It is very helpful.
I have one more question, at what frequency did you test your ADC + CYUSB3014? cause AD9629 has several sampling frequency options from 20 to 80MS/s. Actually my question relies in how clean is the clock generated directly by CYUSB3014. From my understanding, there is an onchip PLL to synthesize the system clock. In order to maintain the ADC performance, there is requirement on clock jitter, so do you have any measurement for the clock generated by the CYUSB chip, like, what is the phsae noise/ jitter look like @ highest frequency settings (say, 100MHz)?
Actually this is what I want to measure using the evaluation board, and based on the measurement I want to decide whether I should use CYUSB generated clock to sample the ADC or I have to make another indepedent clean clock for the ADC. For the latter option, I do face the synchronization problem.
Thanks.
Run
-
9. Re: how to read asynchronous data to FX3
dhanrajr_36 Jun 7, 2012 11:05 AM (in response to run.chen)It was tested using ADC Eval board. Clock was taken out of board(ADC); input to FX3. As you can see in the firmware clock is configurable over SPI, We have tested 60Mhz max clock.
-dhanraj
-
10. Re: how to read asynchronous data to FX3
joanne.dreitzler Jun 7, 2012 4:07 PM (in response to run.chen)You could bypass the FX3 SPI completely. Program the clock GPIO pin to generate an interrupt on the appropriate edge. Then, bit bang the data on the data pin using GPIOSetValue This could be processor intensive, but I'm assumming you are not reading/writing to the ADC frequently.
-
11. Re: how to read asynchronous data to FX3
run.chen Jun 7, 2012 5:10 PM (in response to run.chen)Thanks dhanraj and dreitz, from my understanding, the clock of ADC and FX3 reference clock are independent, and data communication is in asynchronous mode. Is the above statement correct?
If so, I have another question. The FX3 reading speed from ADC depends on the ADC clock. There must be an internal clock of FX3 to transfer the data to the endpoint (or some buffer) ready for USB interface. So are there any requirement on the clock speed between ADC clock and FX internal clock such that the data can be read from ADC and transmitted to USB interface continuously, without data flow or any break point? Which document has related information upon this issue?
Thank again :)
-
12. Re: how to read asynchronous data to FX3
dhanrajr_36 Jun 7, 2012 10:51 PM (in response to run.chen)No, it is synchronous. You can confirm from the example code(The example I have attached in previous post) and GPIF descriptor that FX3's PCLK is connected to ADC CLK pin. clock is input to FX3 from ADC. Clock output of ADC is programmable using SPI. since GPIF is configured to 32 bit, SPI is bit banged in the code.
-
13. Re: how to read asynchronous data to FX3
run.chen Jun 8, 2012 3:06 AM (in response to run.chen)I see. I agree with that the ADC output data is synchronized to the ADC clock which is set througn SPI from FX3. So are the following statement correct:
(1) FX3 reading ADC data is triggered by the ADC clock. The reading speed is determined by ADC clock.
(2) ADC clock can be independent from the FX system clock as long as it is less than 100MHz, and it can be generated from a seperate oscillator other than the FX3 reference.
Since I am design my own DAQ board, so i really need a confirm about this issue. Thanks a lot.
-
14. Re: how to read asynchronous data to FX3
dhanrajr_36 Jun 8, 2012 3:16 AM (in response to run.chen)(1) FX3 reading ADC data is triggered by the ADC clock. The reading speed is determined by ADC clock.
[dbir]YES
(2) ADC clock can be independent from the FX system clock as long as it is less than 100MHz, and it can be generated from a seperate oscillator other than the FX3 reference.
[dbir]YES