Chapter 10 Analog-to-Digital Converter (ADC12B_LBA_V1)
S12ZVHY/S12ZVHL Family Reference Manual Rev. 1.05
400
Freescale Semiconductor
10.5.3.2.2
Introduction of the two Command Sequence Lists (CSLs)
The two Command Sequence Lists (CSLs) can be referred to via the Command Base Pointer Register plus
the Command and Result Offset Registers plus the Command Index Register (ADCCBP,
ADCCROFF_0/1, ADCCIDX).
The final address for conversion command loading is calculated by the sum of these registers (e.g.:
ADCADCCIDX or ADCADCCIDX).
Bit CSL_BMOD selects if the CSL is used in double buffer or single buffer mode. In double buffer mode,
the CSL can be swapped by flow control bits LDOK and RSTA. For detailed information about when and
how the CSL is swapped, please refer to
Section 10.5.3.2.5, “The four ADC conversion flow control bits
- description of Restart Event + CSL Swap,
Section 10.8.7.1, “Initial Start of a Command Sequence List
and
Section 10.8.7.3, “Restart CSL execution with new/other CSL (alternative CSL becomes active CSL)
Which list is actively used for ADC command loading is indicated by bit CSL_SEL. The register to define
the CSL start addresses (ADCCBP) can be set to any even location of the system RAM or NVM area. It
is the user’s responsibility to make sure that the different ADC lists do not overlap or exceed the system
RAM or the NVM area, respectively. The error flag IA_EIF will be set for accesses to ranges outside
system RAM area and cause an error interrupt if enabled.
Figure 10-31. Command Sequence List Schema in Double Buffer Mode
Memory Map
0x00_0000
Register Space
RAM or NVM Space
RAM or NVM start address
RAM or NVM end address
CSL_0
(active)
(ADCCROFF_0)
CSL_1
(alternative)
(ADCCROFF_1)
(ADC
(ADC
Scenario with: CSL_SEL = 1’b0
Memory Map
0x00_0000
Register Space
RAM or NVM Space
RAM / NVM start address
RAM or NVM end address
CSL_1
(active)
(ADCCROFF_0)
CSL_0
(alternative)
(ADCCROFF_1)
(ADC
(ADC
Scenario with: CSL_SEL = 1’b1
ADCCIDX(max))
ADCCIDX(max))
ADCCIDX(max))
ADCCIDX(max))
Note:
Address register names in () are not absolute addresses instead they are a sample offset or sample index