11 dax state machine, 6 dax programming considerations, 1 initiating a transmit session – Motorola DSP56012 User Manual
Page 224: 2 transmit register empty interrupt handling, 3 block transferred interrupt handling, Dax state machine -14, Dax programming considerations -14, Initiating a transmit session -14, Transmit register empty interrupt handling -14, Block transferred interrupt handling -14
8-14
DSP56012 User’s Manual
MOTOROLA
Digital Audio Transmitter
DAX Programming Considerations
Note:
For proper operation of the DAX, the DSP core clock frequency must be at
least five times higher than the DAX bit shift clock frequency (64
×
Fs).
8.5.11
DAX State Machine
The DAX state machine generates a set of sequencing signals used in the DAX.
8.6
DAX PROGRAMMING CONSIDERATIONS
8.6.1
Initiating A Transmit Session
To initiate the DAX operation, follow this procedure:
1. Write the audio data in the XADRA/XADRB registers
2. Write the non-audio data and transmit mode to the corresponding bits in the
XCTR register; ensure that the XEN bit remains cleared
3. Set the XEN bit in the XCTR; transmission begins
8.6.2
Transmit Register Empty Interrupt Handling
When the XIEN bit is set and the DAX is active, a Transmit Audio Data register
Empty interrupt (XADE = 1) is generated once at the beginning of every frame
transmission. Typically, within an XADE interrupt, one frame of audio data to be
transmitted in the next frame is stored in the XADRA and the XADRB by two
consecutive MOVEP instructions within a fast interrupt routine. This clears the
XADE bit in the XSTR.
8.6.3
Block Transferred Interrupt Handling
An interrupt with the XBLK vector indicates the end of a block transmission and can
require some computation to provide the next non-audio data structures that are to
be transmitted within the next block. Within the routine, the next audio data can be
stored in the XADRA/XADRB registers, and the next non-audio data can also be
stored in the XCTR.