extra word during out transfer?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi,

   

I'm using the 32-bit slave fifo sync interface and using the slfifosync example code.

   

When I do an IN transfer, the following OUT transfer has an extra word of zeros prepended to it.  Any ideas?  Is this expected?

   

I don't see the OUT direction GPIF flags asserted after the IN transfer.  Even so, when I try an OUT transaction, I get this extra word.  Any subsequent OUT transfer does not have the extra word.  If I perform another IN transfer, then the very next OUT transfer again has the extra word.

   

Second question:

   

On the OUT direction I'm using the partial flag to indicate when I can do a high speed burst.  This works fine, except that at power up this flag is incorrectly asserted.  After any transfer, the flag is correct.  To overcome this, I only do a high speed burst if both partial flag and the ready flag indicate that data is available.  I have both flags set to "initial value = low", "asserted polarity = low".  BTW, the ready flag does not have this behavior, only the partial flag.  Also the IN direction flags work as expected.  Anyway, is this incorrect initial polarity expected?

   

Thanks,

   

Joe

0 Likes
2 Replies