29.9 Configuring the CLB

The CLB module must be completely configured before use. The Microchip CLB Synthesizer allows configuration of all CLB parameters using a bitstream which is stored in Program Memory. The NVM Scanner transfers the bitstream from Program Memory into the CLB latches and Look-Up Tables (LUTs).

Important: The module configuration that is developed using the Microchip CLB Synthesizer must be loaded to program memory with the NVM scanner before setting the Enable (EN) bit.
There are various CLB configuration modes that must be considered prior to programming the device. The configuration modes are determined by the state of CLB-related bits found in the device Configuration Words:
  • CLB Configuration on Start-Up (CLBSU) bit - enables/disables automatic configuration of the CLB during device start-up
  • CPU Halt (CPUHALT) bit - determines CPU operation after the device is programmed.
  • CLB Configuration Start Address (CLBSA) bits - contains the high byte of the starting address in which the CLB configuration is stored in Program Memory. This bit is ignored when the automatic configuration of the CLB is disabled (CLBSU = 1).
The following modes can be selected based on the configuration of the CLB-related Configuration bits:
  • Software Configuration
  • CLB configured on start-up, CPU executes code
  • CLB configured on start-up, CPU halts