Using the Decimator with Dynamic Reconfiguration

Question: Why does an ADC user module stop functioning properly when a loadable configuration is loaded?



Some ADC user modules (such as the ADCINC User Module) use the decimator resource in the device. In most PSoC 1 devices, there is only one decimator resource. In these devices, any user modules that use the decimator resource cannot function at the same time. In the Chip View of a PSoC Designer project, it is sometimes not clear that an ADC or other user module is using a decimator. For example, a user may place one ADCINC User Module in blocks ASC10 and DBB00 in one configuration. Then, a second ADCINC User Module may be placed in blocks ASD11 and DBB01 of a second configuration. In this case, it appears that both ADC user modules are not sharing any resources. However, they are. This is because they both must use the decimator. So, if both of these configurations are loaded at the same time, at least one of the ADCs will not function as expected.

To determine if any user module uses the decimator for its operation, observe the Resource Meter for the project as the user module is placed into the project, or read through the datasheet of the user module. If a user module does use the decimator and it is in a configuration that is active, ensure that another configuration with a user module that also uses the decimator is not loaded.