
GR716-DS-UM, May 2019, Version 1.29
241
www.cobham.com/gaisler
GR716
28.2
Configuration
The GRDMAC core consists of four main components: the DMA control unit, the AHB Master inter-
face, the internal buffer with realignment support and second AHB Master interface. The core will
perform two types of DMA transfers through one of the AMBA AHB Master interfaces: from mem-
ory to the internal buffer (M2B) and from the internal buffer to memory (B2M). The core will read
data from memory until its internal buffer is filled or until the M2B descriptor chain is completed.
When one of these two events is detected, GRDMAC will start writing the buffer content into mem-
ory, by switching to the B2M chain.
28.2.1 Core setup
The GRDMAC core reads its configuration from any memory mapped address (typically the
on-chip data memory). The M2B and B2M descriptor linked lists must be set up, and a
pointer to the first descriptor in the two chains must be provided. These pointers are orga-
nized in a structure called Channel Vector. The Channel Vector is organized as in Table 265,
below. For the GRDMAC channel there are two pointers: one pointer to the M2B descriptor
linked list and one pointer to the B2M descriptor linked list. The Channel Vector array must
be created at a 128-byte-aligned address.
28.2.2 Descriptor specification
Fields that are named RESERVED, RES, or R are read-only fields. These fields can be written with
zero or with the value read from the same register field
28.2.3 Descriptor type 0
Each descriptor consists of a four-field structure as provided in the tables below and must be
created at a 16-byte-aligned address. There are three descriptor types: M2B descriptors, B2M
descriptors and conditional descriptors.
The former two descriptors, categorized as data descriptors, are only allowed in the respec-
tive descriptor linked lists (M2B descriptor linked list and B2M descriptor linked list).
Conditional descriptors on the other hand, are required to be followed by a data descriptor, to
which they bond to, and they can be specified in both the M2B and B2M descriptor linked
lists. They are special descriptors that enable conditional behavior in a descriptor linked list
and they are described in more detail in paragraph 28.3.2.
28.2.4 Descriptor type 1
Special descriptor type 1 consists of a eight field structure. Descriptor type 1 is a extension of
the conditional descriptor type 0. The descriptor type 1, are required to be followed by a data
descriptor, to which they bond to, and can only be specified in both the M2B and B2M
descriptor linked list. They are special descriptors that enable conditional behavior in a
descriptor linked list and they are described in more detail in paragraph 28.3.2
Table 265.
GRDMAC Channel Vector format
Address offset
Field
0x00
Channel 0: M2B descriptor pointer
0x04
Channel 0: B2M descriptor pointer