Guest
#6418382
I'm currently fighting with an LTC2228 ADC which exhibits a parallel data interface. I'd like to read in this data into a Xilinx FPGA with a sampling frequency of 60 MHz. In order to set up the input delay constraints I require an estimation for the additional delay which arises due to the PCB tracks (approx. 60 mm track length between FPGA and ADC). So far i used the datasheet values: set_input_delay -clock ClockNet -min 1.4 DataLine set_input_delay -clock ClockNet -max 5.4 Dataline The values of 1.4 ns and 5.4 ns I obtained from the ADC datasheet, however, the additional delay on the PCB traces was neglected. As far as I understood, I had to account for them in the -max constraint twice (the clock is generated from the FPGA, has to travel to the ADC and the data has to travel back to the FPGA, so a total effective lenght of 120 mm would have to used). No what is a useful approximation for the additional delay time I catch due to the traces? The reason I'm asking is, that the values I read in are heavily noisy, around 6 of the 12 bits seem to be more or less random. I would usually look for the issue in the analog front since with filtering the data matches the required result. However the PCB was already proven to work fine with a different software - the only thing that changed was the constraints and the clock frequency. I would have expected garbage data for all of the bits if a timing violation causes the problem. Would there be a justification why only the lower bits are affected if I mess up timing?