Post Go back to editing

The FIFO READ DONE flag

Thread Summary

The user reports issues with the FIFO READ DONE flag not setting in event trigger read all FIFO mode on the AD4080, making pre-triggered capture impossible. The chip revision is confirmed as AD4080 without a -U suffix. The FIFO_FULL flag remains asserted after reading the first data, only clearing when the FIFO is disabled. The support engineer requests confirmation of the hardware setup and SPI configuration to diagnose the issue.
AI Generated Content
Category: Datasheet/Specs
Product Number: AD4080

Hello

My customer had made ES, and they are  evaluating the  set using AD4080.

They use  x4 AD4080( and ADA4945 ,LTC6655) for 1unit.

Interface is,SPI interface/ FIFO enabled/ Quad data-lane  is used.( NOT LVDS)

Here is customers  3 questions.

=============


Q1). FIFO READ DONE flag

Much more serious problem exists and I would like your advice to work around.
The FIFO READ DONE flag is correctly set when the FIFO is in (1) immediate triggerLTC6655) 
or (2) event trigger read latest watermark.
However, the READ DONE is **never** set in the (3) event trigger read all FIFO mode.
The real behaviour is different from the table 27 of the datasheet (rev B).
This makes it impossible to implement a pre-triggered capture. Any work around?

Q2). Chip revision from marking


Is there a way to know the revision of the chip in my hand?
Given these many discrepancies from the document, I suspect my device in hand  may be too old.

Q3)  FIFO Full

Your Question about FIFO Full(*),If thre were mis-understanding, please let me know.

Your comment

For Q1 please clarify; the expected behavior is as shown in figs. 87 and figs.88 The FIFO will be asserted when the watermark is reached, its is cleared when the first result is read and is expected to remain cleared until the FIFO is re-triggered and filled. FIFO_READ_DONE will be asserted when all the results have been read from the FIFO. Is this the behavior being observed?
(*)
ez.analog.com/.../fifo-full-signal


Ans. From Customer
1. Clarification to the FIFO full signal question.

Let me clarify. As you mentioned, the FIFO_FULL flag is supposed to be cleared when the first data is read.
However, it is kept asserted even after the first data is read. The FULL flag is cleared when the
FIFO is disabled vai the general configuration register.

If thre were mis-understanding, please let me know.

==

Thank you for your support!,

But please advise soon because they need to study pre-production sson.

Sorry to bother you,

Best Regards

  • Hi,

          I'm not sure if this question is posted in the correct forum. Is this question specific to the EVAL-AD4080-FMCZ, related to EVAL-AD4080-ARDZ or related to a custom implementation (I'm not sure what ES refers to?)

          Q1. Suggests that perhaps an event was never triggered. How is the source event triggered? e.g. Threshold level or for GPIO trigger. If it is a threshold are the conditions set correctly for the input to generate a trigger?

         Q2. The chip markings/date code can help identify the chip. I'm not sure what is meant here by discrepancies on the chip revision, there is only one release revision of the IC. Any pre-released, sample material, would be marked with a -U suffix. 

        Q3. I would need to know more information about when this has occurred or the set up and conditions. Perhaps the functions could be all evaluated first on EVAL-AD4080-ARDZ and they can validate the functions with their signal etc.

          Rgds,

          Ds

        

  • Dear Ds

    Thank you for your answer so quickly.

    Here is customers reponse.

    I would like to have your answer.

    Thank you for your sopport.

    ==========


    Q1. Suggests that perhaps an event was never triggered. How is the source event triggered? e.g. Threshold level or for GPIO trigger. If it is a threshold are the conditions set correctly for the input to generate a trigger?

    Customer response:
    No, the event source is an external event (signal fed to the GPIO pin).
    Note that the READ_DONE is correctly set for other FIFO modes (i.e., immediate trigger and event trigger capture read latest watermark). The problem occurs only on "event trigger capture, read all FIFO".
    The event is fed in exactly the same manner as the "event trigger capture, read latest watermark".
    The only difference is the FIFO_MODE bits (either 0b11 or not) in the General Config register. From the datasheet, the READ_DONE is supposed to be set after reading 16K words. But, actually it is not.
    I am routing the READ_DONE to a GPIO pin as in Fig 50 of the datasheet. Again, the ADC and the host side logic just works fine for other FIFO modes. Only on FIFO_MODE 0b11, it does not.

    Q2. The chip markings/date code can help identify the chip. I'm not sure what is meant here by discrepancies on the chip revision, there is only one release revision of the IC. Any pre-released, sample material, would be marked with a -U suffix.

    Customer response:
    The mark is "AD4080" without the U suffix.


    Q3. I would need to know more information about when this has occurred or the set up and conditions. Perhaps the functions could be all evaluated first on EVAL-AD4080-ARDZ and they can validate the functions with their signal etc.

    Customer response:
    Here is the sequence for your info.
    o Reset host logic
    o Configure ADC (except for the GPIO pin config and the data interface config, the default values)
    o Software reset not applied
    o Set the watermark register to N
    o Set FIFO_MODE bits in the General Configuration register to "immediate trigger" or "event trigger read latest watermark"
    o After a while (depending on N and Fs), FIFO_FULL is set. So far so good.
    o Host logic starts reading out the data from ADC via the data SPI quad lanes.
    o FIFO_FULL is supposed to be cleared but kept set.
    o After reading N words, READ_DONE is set as expected. At this point, both FIFO_FULL and READ_DONE are set.
    o Set FIFO_MODE to "disabled".
    o Both FIFO_FULL and READ_DONE are cleared.
    I am monitoring FIFO_FULL and READ_DONE on both GPIO and the Device Status register. The same behavior is observed.

    Best Regards

  • Hello

    I was sorry to lack of  my statement about ' ES' .

    Please let me  add comment also.

    'ES' means  customers board ( Engineering Sample). 

    It does not related EVAL-AD4080-ARDZ.

    >I'm not sure if this question is posted in the correct forum. Is this question specific to the EVAL-AD4080->FMCZ, related to EVAL-AD4080-ARDZ or related to a custom implementation (I'm not sure what ES >refers to?)

    Could you have your answer soon ?

    Thank you fro your cooperations!

    Best Regards

  • Hi,

           Thanks for providing further information.

    Please confirm, what hardware is the behavior been seen on. Is this the customers' own PCB design or is this on the EVAL-AD4080-FMCZ?

    These functions work and have been verified so I need to establish what the differences are in the customer set up. 

    Is the part correctly configured for SPI (is DATA_INTF_MODE = 1 as well as SPI_LVDS_LANES =1, as they are using 4 SPI lanes) ?

    When data is being read back, is the converted data correct for the signal being input into the ADC?

     Thanks,

    Ds

  • Dear Ds,

    Thank you for your answer kindly.

    Here is our answer for your comment.

    ・Hardware is Customer's own PCB (Not EVM), but schematic is followed as same as EVALAD4080ARZ. 

    ・ADC driver: ADA4945 is used.When customer had check IN+, IN- with oscilloscope, Full scale input

    can be seen without no distortion, so we think drive-ability is no problem..

    ・VIN REF:LTC6655 3.000V

    ・CNV+/CNV-:CMOS driver ( like as EVAL_AD4080ARDZ)  8MHz clock from X'tal oscillator.

    Customer can read back the ADC converted data correctly in case input is small (1/4 of Full scale)

    sin wave 200kHz, however,

    When the input signal is Full scale (6Vpp) sine wave , the code of top and bottom doesn't change 

    ( it seems like clipping ),

    even though input  signal  between IN+~IN- of AD4080 is full scale with no problem.

    Currently, We ( customer and I)  are investigateing the cause .. ( I may have another

    thread )

    But thank your for your answer, soon

    Best Regards