Greetings.
I am working on a project to interface ADS8556 in parallel interface with a FPGA using VHDL. I am using a custom FPGA board for this project.
During coding and testing, I got many doubts that i would like to get clarified.
1, The internal clock frequency of ADS 8556 is 36 Mhz. So i programmed FPGA to run in 36 as well as 72 MHz . In both cases, i got a momentary busy signal only. So I tried 18 MHz and 12 MHz and i got the busy signal(1.2microseconds). So exactly which clock frequency should I use? Does synchronisation matter in parallel interface?
2. Using half or one by third of internal frequency, I programmed FPGA as follows.
a. Reset state for the convst,RD,WR, etc.
b. as shown in updating the CR, I configured the CS and WR signals and placed data 31-16 and 15-00 in data bus.
c. after the read stage is initiated. using CONVST and BUSY. When CONVST is made high and when busy became zero after this state, i made the CS and RD signals low and tried to read data.
The waveforms are attached below.
In this waveform, the channel 1 represent the busy signal and channel 2 represent the CONVST signal.
I am trying to read only one channel CH A0 through this code.
So from the busy signal I assumed that ADC is working fine .
But No data is obtained from the ADC. Instead of actual data, i am getting small 400mV pulses in random channels of ADC DB.