Is there any documentation on the AD9783's BIST functionality? I am testing out a board that has one of these DACs on it, and I was hoping to put it through its paces. I saw the datasheet mentions the BIST, but unfortunately it doesn't say anything more than that.
The Bist feature in the AD9783,1,0 is just a simple type adder. The BIST is a user synchronizable BIST feature. In register 0x1A the customer writes 0x20 then 0x00 to clear the BIST registers while writing zeros to the data bits. Then enables BIST with 0x80 written to 0x1A and begins writing a know set of vectors to the data inputs followed again by writing zeros into the bits after the vectors and does a Bist read 0xC0 in 0x1A and will get the unique sum of rising edge data in reg 0x1B,0x1C and a unique sum of falling edge data in 0x1D,0x1E. So these register contents should always give the same values for the same vectors each time they are sent. The Zero’s are always ignore to the data bits so time the BIST clear, enable and read during zeros being written to the data inputs.
Very interesting, thank you for the write up. So you still feed it the some values as if you were going to perform a D/A conversion, but instead it stores summation of said values into registers?
Is there an app note (or something of the like) written up somewhere?
Very interesting, thank you for the write up. So you still feed it the some values as if you were going to perform a D/A conversion, but instead it stores summation of said values into registers? Yes that is correct.
No unfortunately when this part was released a few years back we were short handed in our application group. So we don't have an apps note on this part.
Well, I guess I was hoping for an app note in general on the BIST (I assume similar functionality is in other Analog parts), or maybe some datasheet for a different part that goes into more detail. It seems simple enough, but besides your writeup in this forum, the datasheet doesn't give a whole lot of information.
I haven't had time to test it out yet, but in case I have trouble implementing it, I didn't want to have to keep pinging on your for information for it.
We have implemented the BIST feature for AD9783 used in our Base Station application.But we are unable to interpret the register readings.My test vectors are 0x1000 for the rising edge and 0x0000 for the falling edge.
When we read the BIST registers we are getting a constant value and it is same for same input.
Register values are given below.
0x1B ------------> 0x60
0X1C ------------> 0x23
0x1D ------------> 0xBC
0x1E ------------> 0X4B
We are unable to correlate the register readings and Test Vectors.