09.12.2012 Views

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>RM0090</strong> Ethernet (ETH): media access control (MAC) with DMA controller<br />

1. The DMA operates as described in steps 1–6 of the TxDMA (default mode).<br />

2. Without closing the previous frame’s last descriptor, the DMA fetches the next<br />

descriptor.<br />

3. If the DMA owns the acquired descriptor, the DMA decodes the transmit buffer address<br />

in this descriptor. If the DMA does not own the descriptor, the DMA goes into Suspend<br />

mode and skips to Step 7.<br />

4. The DMA fetches the Transmit frame from the STM32F4xx memory and transfers the<br />

frame until the end of frame data are transferred, closing the intermediate descriptors if<br />

this frame is split across multiple descriptors.<br />

5. The DMA waits for the transmission status and time stamp of the previous frame. When<br />

the status is available, the DMA writes the time stamp to TDES2 and TDES3, if such<br />

time stamp was captured (as indicated by a status bit). The DMA then writes the status,<br />

with a cleared OWN bit, to the corresponding TDES0, thus closing the descriptor. If<br />

time stamping was not enabled for the previous frame, the DMA does not alter the<br />

contents of TDES2 and TDES3.<br />

6. If enabled, the Transmit interrupt is set, the DMA fetches the next descriptor, then<br />

proceeds to Step 3 (when Status is normal). If the previous transmission status shows<br />

an underflow error, the DMA goes into Suspend mode (Step 7).<br />

7. In Suspend mode, if a pending status and time stamp are received by the DMA, it<br />

writes the time stamp (if enabled for the current frame) to TDES2 and TDES3, then<br />

writes the status to the corresponding TDES0. It then sets relevant interrupts and<br />

returns to Suspend mode.<br />

8. The DMA can exit Suspend mode and enter the Run state (go to Step 1 or Step 2<br />

depending on pending status) only after receiving a Transmit Poll demand<br />

(ETH_DMATPDR register).<br />

Figure 348 shows the basic flowchart in OSF mode.<br />

Doc ID 018909 Rev 3 946/1416

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!