Ameba-D User Manual
User Manual All information provided in this document is subject to legal disclaimers. © REALTEK 2019. All rights reserved.
108
Table 9-6 Parameters in transfer operation – Example 4
Parameter
Description
CTL
x
.TT_FC = 3’b011
Peripheral-to-peripheral transfer with DMAC as flow controller
CTL
x
.BLOCK_TS = 12
–
CTL
x
.SRC_TR_WIDTH = 3’b010
32 bits
CTL
x
.DST_TR_WIDTH = 3’b010
32 bits
CTL
x
.SRC_MSIZE = 3’b010
Source burst transaction length = 8
CTL
x
.DEST_MSIZE = 3’b001
Destination burst transaction length = 4
CFG
x
.MAX_ABRST = 1’b0
No limit on maximum AMBA burst length
DMAH_CH
x
_FIFO_DEPTH = 16 bytes
–
In this case, BLOCK_TS is not a multiple of the source burst transaction length, CTL
x
.SRC_MSIZE, so near the end of a block transfer from the
source, the amount of data left to be transferred is less than
src_burst_size_bytes
.
In this example, the block size is a multiple of the destination burst transaction length:
blk_size_bytes_dma/dst_burst_size_bytes
= 48/16 =
integer
The destination block is made up of three burst transactions to the destination and does not enter the Single Transaction Region.
The block size is not a multiple of the source burst transaction length:
blk_size_bytes_dma/src_burst_size_bytes
= 48/32 !=
integer
Consider the case where the watermark level that triggers a source burst request in the source peripheral is equal to CTL
x
.SRC_MSIZE = 8; that
is, eight entries or more need to be in the source peripheral FIFO in order to trigger a burst request. Fig 9-24 shows how this block transfer is
broken into burst and single transactions, and bursts and single transfers.
Fig 9-24 Breakdown of block transfer
Fig 9-25 shows the status of the source FIFO at various times throughout the source block transfer.
Realtek confidential files
The document authorized to
SZ99iot
2019-05-15 10:08:03