ADC Results’ RAM Special Features
717
SPNU503C – March 2018
Copyright © 2018, Texas Instruments Incorporated
Analog To Digital Converter (ADC) Module
19.9 ADC Results’ RAM Special Features
The following sections describe some of the special features supported by the ADC module to enhance
the results’ RAM testability and integrity.
19.9.1 ADC Results’ RAM Auto-Initialization
The ADC module allows the application to auto-initialize the ADC results’ RAM to all zeros. The
application must ensure that the ADC module is not in any of the conversion modes before triggering off
the auto-initialization process.
The auto-initialization sequence is as follows:
1. Enable the global hardware memory initialization key by programming a value of Ah to the bits [3-0] of
the MINITGCR register of the System module.
2. Set the control bit for the ADC results’ RAM in the MSINENA System module register. The bit 8 of the
MSINENA register is used to control the initialization of the ADC1 results’ RAM, while bit 14 controls
the initialization of the ADC2 results’ RAM. This starts the initialization process. The
BUF_INIT_ACTIVE flag in the ADBNDEND register will get set to reflect that the initialization is
ongoing.
3. When the memory initialization is completed, the corresponding status bit in the MINISTAT register will
be set. Also, the BUF_INIT_ACTIVE flag will get cleared.
19.9.2 ADC Results’ RAM Test Mode
In the defined conversion modes of the ADC, the application can only read from the ADC results’ RAM.
Only the ADC module is allowed to write to the results’ RAM. A special test mode is defined to allow the
application to also write into the ADC results’ RAM - this mode is the ADC Results’ RAM Test Mode. Only
32-bit reads and writes are allowed to the ADC results’ RAM in this test mode.
NOTE:
Contention on access to ADC Results’ RAM
The ADC module cannot handle a contention between the application write to the results’
RAM and the ADC writing a conversion result to the results’ RAM. The application must
ensure that the ADC is not likely to write a new conversion result to the results’ RAM when
the ADC Results’ RAM Test Mode is enabled.
The ADC Results’ RAM Test Mode is enabled by setting the RAM_TEST_EN bit in the ADOPMODECR.
19.9.3 ADC Results’ RAM Parity
The following shows the ADC Results’ RAM parity control registers.
Parity checking is implemented using parity on a per-half word basis for the ADC RAM. That is, there is
one parity bit for 16 bits of the ADC RAM. The polarity of the ADC RAM parity is controlled by the
DEVCR1 register in the system module (address = FFFF FFDCh). The parity checking is enabled by the
ADPARCR register. After reset, the parity checking is disabled and must be enabled if parity protection is
required.
During a read access, the parity is calculated based on the data read from the ADC RAM and compared
with the good parity value stored in the parity bits. If any word fails the parity check then the ADC
generates an error signal hooked up to the Error Signaling Module (ESM). The ADC RAM address which
generated the parity error is captured for host system debugging, and is frozen from being updated until it
is read by the application.
Testing the Parity Checking Mechanism:
To test the parity checking mechanism itself, the parity RAM is made writable by the CPU in a special test
mode. This is done by a control bit called TEST in the ADPARCR register. Once this bit is set, the parity
bits are mapped to an address starting at an address offset of 4KB from the base address of the ADC
RAM. See
. The CPU can now manually insert parity errors. Note that the ADC RAM only
supports 32-bit accesses.