Functions | |
static bool | CLB_isBaseValid (uint32_t base) |
static bool | CLB_isAddressValid (uint32_t address) |
static void | CLB_enableCLB (uint32_t base) |
static void | CLB_disableCLB (uint32_t base) |
static void | CLB_enableNMI (uint32_t base) |
static void | CLB_disableNMI (uint32_t base) |
static void | CLB_configureClockPrescalar (uint32_t base, uint16_t prescl) |
static void | CLB_configureStrobeMode (uint32_t base, uint16_t strb) |
static void | CLB_writeSWReleaseControl (uint32_t base, CLB_SWReleaseCtrl inID, bool val) |
static void | CLB_writeSWGateControl (uint32_t base, CLB_SWGateCtrl inID, bool val) |
static void | CLB_configCounterTapSelects (uint32_t base, uint32_t tapSel) |
static void | CLB_configAOC (uint32_t base, CLB_AOCs aocID, uint32_t aocCfg) |
static void | CLB_enableLock (uint32_t base) |
static void | CLB_writeInterface (uint32_t base, uint32_t address, uint32_t value) |
static void | CLB_selectInputFilter (uint32_t base, CLB_Inputs inID, CLB_FilterType filterType) |
static void | CLB_enableSynchronization (uint32_t base, CLB_Inputs inID) |
static void | CLB_disableSynchronization (uint32_t base, CLB_Inputs inID) |
static void | CLB_configGPInputMux (uint32_t base, CLB_Inputs inID, CLB_GPInputMux gpMuxCfg) |
static void | CLB_setGPREG (uint32_t base, uint32_t gpRegVal) |
static uint32_t | CLB_getGPREG (uint32_t base) |
static void | CLB_configLocalInputMux (uint32_t base, CLB_Inputs inID, CLB_LocalInputMux localMuxCfg) |
static void | CLB_configGlobalInputMux (uint32_t base, CLB_Inputs inID, CLB_GlobalInputMux globalMuxCfg) |
static void | CLB_setOutputMask (uint32_t base, uint32_t outputMask, bool enable) |
static uint16_t | CLB_getInterruptTag (uint32_t base) |
static void | CLB_clearInterruptTag (uint32_t base) |
static void | CLB_selectLUT4Inputs (uint32_t base, uint32_t lut4In0, uint32_t lut4In1, uint32_t lut4In2, uint32_t lut4In3) |
static void | CLB_configLUT4Function (uint32_t base, uint32_t lut4Fn10, uint32_t lut4Fn2) |
static void | CLB_selectFSMInputs (uint32_t base, uint32_t external0, uint32_t external1, uint32_t extra0, uint32_t extra1) |
static void | CLB_configFSMLUTFunction (uint32_t base, uint32_t fsmLutFn10, uint32_t fsmLutFn2) |
static void | CLB_configFSMNextState (uint32_t base, uint32_t nextState0, uint32_t nextState1, uint32_t nextState2) |
static void | CLB_selectCounterInputs (uint32_t base, uint32_t reset, uint32_t event, uint32_t mode0, uint32_t mode1) |
static void | CLB_configMiscCtrlModes (uint32_t base, uint32_t miscCtrl) |
static void | CLB_configOutputLUT (uint32_t base, CLB_Outputs outID, uint32_t outputCfg) |
static void | CLB_configHLCEventSelect (uint32_t base, uint32_t eventSel) |
static void | CLB_programHLCInstruction (uint32_t base, uint32_t instructionNum, uint32_t instruction) |
static void | CLB_setHLCRegisters (uint32_t base, uint32_t r0Init, uint32_t r1Init, uint32_t r2Init, uint32_t r3Init) |
static uint32_t | CLB_getRegister (uint32_t base, CLB_Register registerID) |
static uint32_t | CLB_getOutputStatus (uint32_t base) |
static void | CLB_enablePipelineMode (uint32_t base) |
static void | CLB_disablePipelineMode (uint32_t base) |
static void | CLB_disableOutputMaskUpdates (uint32_t base) |
static void | CLB_enableOutputMaskUpdates (uint32_t base) |
static void | CLB_enableInputPipelineMode (uint32_t base, CLB_Inputs inID) |
static void | CLB_disableInputPipelineMode (uint32_t base, CLB_Inputs inID) |
static void | CLB_disableSPIBufferAccess (uint32_t base) |
static void | CLB_enableSPIBufferAccess (uint32_t base) |
static void | CLB_configSPIBufferLoadSignal (uint32_t base, uint16_t eventSel) |
static void | CLB_configSPIBufferShift (uint32_t base, uint16_t shiftVal) |
static void | CLB_enableSPIStrobeDelay (uint32_t base) |
static void | CLB_disableSPIStrobeDelay (uint32_t base) |
void | CLB_configCounterLoadMatch (uint32_t base, CLB_Counters counterID, uint32_t load, uint32_t match1, uint32_t match2) |
void | CLB_clearFIFOs (uint32_t base) |
void | CLB_writeFIFOs (uint32_t base, const uint32_t pullData[]) |
void | CLB_readFIFOs (uint32_t base, uint32_t pushData[]) |
Macros | |
#define | CLB_LOGICCTL 0x0200U |
#define | CLB_DATAEXCH 0x0300U |
#define | CLB_ADDR_COUNTER_0_LOAD 0x0U |
#define | CLB_ADDR_COUNTER_1_LOAD 0x1U |
#define | CLB_ADDR_COUNTER_2_LOAD 0x2U |
#define | CLB_ADDR_COUNTER_0_MATCH1 0x4U |
#define | CLB_ADDR_COUNTER_1_MATCH1 0x5U |
#define | CLB_ADDR_COUNTER_2_MATCH1 0x6U |
#define | CLB_ADDR_COUNTER_0_MATCH2 0x8U |
#define | CLB_ADDR_COUNTER_1_MATCH2 0x9U |
#define | CLB_ADDR_COUNTER_2_MATCH2 0xAU |
#define | CLB_ADDR_HLC_R0 0xCU |
#define | CLB_ADDR_HLC_R1 0xDU |
#define | CLB_ADDR_HLC_R2 0xEU |
#define | CLB_ADDR_HLC_R3 0xFU |
#define | CLB_ADDR_HLC_BASE 0x20U |
#define | CLB_NUM_HLC_INSTR 31U |
#define | CLB_FIFO_SIZE 4U |
#define | CLB_LOCK_KEY 0x5A5AU |
#define | CLB_LCL_MUX_SEL_MISC_INPUT_SEL_M 0x20U |
#define | CLB_LCL_MUX_SEL_MISC_INPUT_SEL_S 28U |
#define | CLB_LCL_MUX_SEL_MISC_INPUT_SEL_BITM (uint32_t)1U |
#define | CLB_OUTPUT_00 0x00000001U |
Mask for CLB OUTPUT ENABLE/DISABLE 0. | |
#define | CLB_OUTPUT_01 0x00000002U |
Mask for CLB OUTPUT ENABLE/DISABLE 1. | |
#define | CLB_OUTPUT_02 0x00000004U |
Mask for CLB OUTPUT ENABLE/DISABLE 2. | |
#define | CLB_OUTPUT_03 0x00000008U |
Mask for CLB OUTPUT ENABLE/DISABLE 3. | |
#define | CLB_OUTPUT_04 0x00000010U |
Mask for CLB OUTPUT ENABLE/DISABLE 4. | |
#define | CLB_OUTPUT_05 0x00000020U |
Mask for CLB OUTPUT ENABLE/DISABLE 5. | |
#define | CLB_OUTPUT_06 0x00000040U |
Mask for CLB OUTPUT ENABLE/DISABLE 6. | |
#define | CLB_OUTPUT_07 0x00000080U |
Mask for CLB OUTPUT ENABLE/DISABLE 7. | |
#define | CLB_OUTPUT_08 0x00000100U |
Mask for CLB OUTPUT ENABLE/DISABLE 8. | |
#define | CLB_OUTPUT_09 0x00000200U |
Mask for CLB OUTPUT ENABLE/DISABLE 9. | |
#define | CLB_OUTPUT_10 0x00000400U |
Mask for CLB OUTPUT ENABLE/DISABLE 10. | |
#define | CLB_OUTPUT_11 0x00000800U |
Mask for CLB OUTPUT ENABLE/DISABLE 11. | |
#define | CLB_OUTPUT_12 0x00001000U |
Mask for CLB OUTPUT ENABLE/DISABLE 12. | |
#define | CLB_OUTPUT_13 0x00002000U |
Mask for CLB OUTPUT ENABLE/DISABLE 13. | |
#define | CLB_OUTPUT_14 0x00004000U |
Mask for CLB OUTPUT ENABLE/DISABLE 14. | |
#define | CLB_OUTPUT_15 0x00008000U |
Mask for CLB OUTPUT ENABLE/DISABLE 15. | |
#define | CLB_OUTPUT_16 0x00010000U |
Mask for CLB OUTPUT ENABLE/DISABLE 16. | |
#define | CLB_OUTPUT_17 0x00020000U |
Mask for CLB OUTPUT ENABLE/DISABLE 17. | |
#define | CLB_OUTPUT_18 0x00040000U |
Mask for CLB OUTPUT ENABLE/DISABLE 18. | |
#define | CLB_OUTPUT_19 0x00080000U |
Mask for CLB OUTPUT ENABLE/DISABLE 19. | |
#define | CLB_OUTPUT_20 0x00100000U |
Mask for CLB OUTPUT ENABLE/DISABLE 20. | |
#define | CLB_OUTPUT_21 0x00200000U |
Mask for CLB OUTPUT ENABLE/DISABLE 21. | |
#define | CLB_OUTPUT_22 0x00400000U |
Mask for CLB OUTPUT ENABLE/DISABLE 22. | |
#define | CLB_OUTPUT_23 0x00800000U |
Mask for CLB OUTPUT ENABLE/DISABLE 23. | |
#define | CLB_OUTPUT_24 0x01000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 24. | |
#define | CLB_OUTPUT_25 0x02000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 25. | |
#define | CLB_OUTPUT_26 0x04000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 26. | |
#define | CLB_OUTPUT_27 0x08000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 27. | |
#define | CLB_OUTPUT_28 0x10000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 28. | |
#define | CLB_OUTPUT_29 0x20000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 29. | |
#define | CLB_OUTPUT_30 0x40000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 30. | |
#define | CLB_OUTPUT_31 0x80000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 31. | |
#define CLB_LOGICCTL 0x0200U |
#define CLB_DATAEXCH 0x0300U |
#define CLB_ADDR_COUNTER_0_LOAD 0x0U |
#define CLB_ADDR_COUNTER_1_LOAD 0x1U |
#define CLB_ADDR_COUNTER_2_LOAD 0x2U |
#define CLB_ADDR_COUNTER_0_MATCH1 0x4U |
#define CLB_ADDR_COUNTER_1_MATCH1 0x5U |
#define CLB_ADDR_COUNTER_2_MATCH1 0x6U |
#define CLB_ADDR_COUNTER_0_MATCH2 0x8U |
#define CLB_ADDR_COUNTER_1_MATCH2 0x9U |
#define CLB_ADDR_COUNTER_2_MATCH2 0xAU |
#define CLB_ADDR_HLC_R0 0xCU |
#define CLB_ADDR_HLC_R1 0xDU |
#define CLB_ADDR_HLC_R2 0xEU |
#define CLB_ADDR_HLC_R3 0xFU |
#define CLB_ADDR_HLC_BASE 0x20U |
#define CLB_NUM_HLC_INSTR 31U |
#define CLB_FIFO_SIZE 4U |
#define CLB_LOCK_KEY 0x5A5AU |
#define CLB_LCL_MUX_SEL_MISC_INPUT_SEL_M 0x20U |
#define CLB_LCL_MUX_SEL_MISC_INPUT_SEL_S 28U |
#define CLB_LCL_MUX_SEL_MISC_INPUT_SEL_BITM (uint32_t)1U |
#define CLB_OUTPUT_00 0x00000001U |
Mask for CLB OUTPUT ENABLE/DISABLE 0.
Values that can be passed to control the CLB output enable signal. It can be passed to CLB_setOutputMask() as the outputMask parameter.
#define CLB_OUTPUT_01 0x00000002U |
Mask for CLB OUTPUT ENABLE/DISABLE 1.
#define CLB_OUTPUT_02 0x00000004U |
Mask for CLB OUTPUT ENABLE/DISABLE 2.
#define CLB_OUTPUT_03 0x00000008U |
Mask for CLB OUTPUT ENABLE/DISABLE 3.
#define CLB_OUTPUT_04 0x00000010U |
Mask for CLB OUTPUT ENABLE/DISABLE 4.
#define CLB_OUTPUT_05 0x00000020U |
Mask for CLB OUTPUT ENABLE/DISABLE 5.
#define CLB_OUTPUT_06 0x00000040U |
Mask for CLB OUTPUT ENABLE/DISABLE 6.
#define CLB_OUTPUT_07 0x00000080U |
Mask for CLB OUTPUT ENABLE/DISABLE 7.
#define CLB_OUTPUT_08 0x00000100U |
Mask for CLB OUTPUT ENABLE/DISABLE 8.
#define CLB_OUTPUT_09 0x00000200U |
Mask for CLB OUTPUT ENABLE/DISABLE 9.
#define CLB_OUTPUT_10 0x00000400U |
Mask for CLB OUTPUT ENABLE/DISABLE 10.
#define CLB_OUTPUT_11 0x00000800U |
Mask for CLB OUTPUT ENABLE/DISABLE 11.
#define CLB_OUTPUT_12 0x00001000U |
Mask for CLB OUTPUT ENABLE/DISABLE 12.
#define CLB_OUTPUT_13 0x00002000U |
Mask for CLB OUTPUT ENABLE/DISABLE 13.
#define CLB_OUTPUT_14 0x00004000U |
Mask for CLB OUTPUT ENABLE/DISABLE 14.
#define CLB_OUTPUT_15 0x00008000U |
Mask for CLB OUTPUT ENABLE/DISABLE 15.
#define CLB_OUTPUT_16 0x00010000U |
Mask for CLB OUTPUT ENABLE/DISABLE 16.
#define CLB_OUTPUT_17 0x00020000U |
Mask for CLB OUTPUT ENABLE/DISABLE 17.
#define CLB_OUTPUT_18 0x00040000U |
Mask for CLB OUTPUT ENABLE/DISABLE 18.
#define CLB_OUTPUT_19 0x00080000U |
Mask for CLB OUTPUT ENABLE/DISABLE 19.
#define CLB_OUTPUT_20 0x00100000U |
Mask for CLB OUTPUT ENABLE/DISABLE 20.
#define CLB_OUTPUT_21 0x00200000U |
Mask for CLB OUTPUT ENABLE/DISABLE 21.
#define CLB_OUTPUT_22 0x00400000U |
Mask for CLB OUTPUT ENABLE/DISABLE 22.
#define CLB_OUTPUT_23 0x00800000U |
Mask for CLB OUTPUT ENABLE/DISABLE 23.
#define CLB_OUTPUT_24 0x01000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 24.
#define CLB_OUTPUT_25 0x02000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 25.
#define CLB_OUTPUT_26 0x04000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 26.
#define CLB_OUTPUT_27 0x08000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 27.
#define CLB_OUTPUT_28 0x10000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 28.
#define CLB_OUTPUT_29 0x20000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 29.
#define CLB_OUTPUT_30 0x40000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 30.
#define CLB_OUTPUT_31 0x80000000U |
Mask for CLB OUTPUT ENABLE/DISABLE 31.
enum CLB_Inputs |
enum CLB_Outputs |
Values that can be passed to select CLB output signal. It can be passed to CLB_configOutputLUT() as the outID parameter.
Enumerator | |
---|---|
CLB_OUT0 | Output 0. |
CLB_OUT1 | Output 1. |
CLB_OUT2 | Output 2. |
CLB_OUT3 | Output 3. |
CLB_OUT4 | Output 4. |
CLB_OUT5 | Output 5. |
CLB_OUT6 | Output 6. |
CLB_OUT7 | Output 7. |
enum CLB_AOCs |
Values that can be passed to select CLB AOC signal. It can be passed to CLB_configAOC() as the aocID parameter. AOC is the Asynchronous Output Conditioning block.
Enumerator | |
---|---|
CLB_AOC0 | AOC 0. |
CLB_AOC1 | AOC 1. |
CLB_AOC2 | AOC 2. |
CLB_AOC3 | AOC 3. |
CLB_AOC4 | AOC 4. |
CLB_AOC5 | AOC 5. |
CLB_AOC6 | AOC 6. |
CLB_AOC7 | AOC 7. |
enum CLB_SWReleaseCtrl |
Values that can be passed to set/clear CLB SW release signals. It can be passed to CLB_writeSWReleaseControl() as the inID parameter.
enum CLB_SWGateCtrl |
Values that can be passed to set/clear CLB SW release signals. It can be passed to CLB_writeSWGateControl() as the inID parameter.
enum CLB_Counters |
Values that can be passed to select CLB counter. It can be passed to CLB_configCounterLoadMatch() as the counterID parameter.
Enumerator | |
---|---|
CLB_CTR0 | Counter 0. |
CLB_CTR1 | Counter 1. |
CLB_CTR2 | Counter 2. |
enum CLB_Register |
Values that can be passed to CLB_getRegister() as the registerID parameter.
enum CLB_FilterType |
Values that can be passed to CLB_selectInputFilter() as the filterType parameter.
Enumerator | |
---|---|
CLB_FILTER_NONE | No filtering. |
CLB_FILTER_RISING_EDGE | Rising edge detect. |
CLB_FILTER_FALLING_EDGE | Falling edge detect. |
CLB_FILTER_ANY_EDGE | Any edge detect. |
enum CLB_GPInputMux |
Values that can be passed to CLB_configGPInputMux() as the gpMuxCfg parameter.
Enumerator | |
---|---|
CLB_GP_IN_MUX_EXTERNAL | Use external input path. |
CLB_GP_IN_MUX_GP_REG | Use CLB_GP_REG bit value as input. |
enum CLB_LocalInputMux |
Values that can be passed to CLB_configLocalInputMux() as the localMuxCfg parameter.
enum CLB_GlobalInputMux |
Values that can be passed to CLB_configGlobalInputMux() as the globalMuxCfg parameter.
|
inlinestatic |
Checks the CLB base address.
base | is the base address of a CLB tile's logic config register. |
This function determines if a CLB base address is valid.
|
inlinestatic |
Checks the CLB internal memory address.
base | is the base address of a CLB tile's logic config register. |
This function determines if a CLB base address is valid.
|
inlinestatic |
Set global enable.
base | is the base address of a CLB tile's logic config register. |
This function enables the CLB via global enable register.
|
inlinestatic |
Clear global enable.
base | is the base address of a CLB tile's logic config register. |
This function disables the CLB via global enable register.
|
inlinestatic |
Enable HLC NMI.
base | is the base address of a CLB tile's logic config register. |
This function enables the CLB HLC NMI.
|
inlinestatic |
Disable HLC NMI.
base | is the base address of a CLB tile's logic config register. |
This function disables the CLB HLC NMI.
|
inlinestatic |
Configure Clock Prescalar.
base | is the base address of a CLB tile's logic config register. |
This function enables and configures the CLB Clock Precalar.
|
inlinestatic |
Configures Clock Precalar Strobe Mode.
base | is the base address of a CLB tile's logic config register. |
This function enables and configures the CLB Clock Precalar Strobe Mode.
|
inlinestatic |
Configures the general purpose SW release control value.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB SW Release input signal. |
val | is the value of the SW RLS control. |
This function configures the general purpose SW release control value. The inID parameter can have one enumeration value from CLB_SWReleaseCtrl.
|
inlinestatic |
Configures the general purpose SW gate control value.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB SW Release input signal. |
val | is the value of the SW GATE control. |
This function configures the general purpose SW release control value. The inID parameter can have one enumeration value from CLB_SWGateCtrl.
|
inlinestatic |
Configures Counter TAP Selects.
base | is the base address of a CLB tile's logic config register. |
miscCtrl | is the value to represent counter tap selects. Generated by tool as TILEx_CFG_TAP_SELL. |
This function configures the counter tap selects.
|
inlinestatic |
Configures AOC (Asynchronous Output Conditioning) functions.
base | is the base address of a CLB tile's logic config register. |
aocID | is the specified CLB tile AOC signal. |
aocCfg | is the value for the AOC signal function and input signal selections. Generated by tool as TILEx_OUTPUT_COND_CTR_n where n is the output number. |
This function configures the input signals and equations of the aoc LUT corresponding to the /e aocID parameter.
|
inlinestatic |
Enable CLB lock.
base | is the base address of a CLB tile's logic config register. |
This function enables the lock bit of the lock register. The lock can only be set once and can only be cleared by a device reset.
|
inlinestatic |
Write value to address.
base | is the base address of a CLB tile's logic config register. |
address | is the address of CLB internal memory. |
value | is the value to write to specified address. |
This function writes the specified value to CLB internal memory.
|
inlinestatic |
Select input filter type.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB tile input signal. |
filterType | is the selected type of filter applied to the input. |
This function configures the filter selection for the specified input. The inID parameter can have one enumeration value from CLB_Inputs. The filterType parameter can have one enumeration value from CLB_FilterType.
|
inlinestatic |
Enables synchronization of an input signal.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB tile input signal. |
This function enables synchronization on the specified input signal. The inID parameter can have one enumeration value from CLB_Inputs.
|
inlinestatic |
Disables synchronization of an input signal.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB tile input signal. |
This function disables synchronization on the specified input signal. The inID parameter can have one enumeration value from CLB_Inputs.
|
inlinestatic |
Configures the general purpose input mux.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB tile input signal. |
gpMuxCfg | is the mux selection for the general purpose input mux. |
This function configures the general purpose input mux. The gpMuxCfg parameter can select either the use of an external input signal (CLB_GP_IN_MUX_EXTERNAL) or the use of the corresponding CLB_GP_REG bit as an input (CLB_GP_IN_MUX_GP_REG). The inID parameter can have one enumeration value from CLB_Inputs.
|
inlinestatic |
Sets the CLB_GP_REG register value.
base | is the base address of a CLB tile's logic config register. |
gpRegVal | is the value to be written to CLB_GP_REG. |
This function writes to the CLB_GP_REG register. When the general purpose input mux is configured to use CLB_GP_REG, each bit in gpRegVal corresponds to an input signal (bit 0 to Input 0, bit 1 to Input 1, and so on).
|
inlinestatic |
Gets the CLB_GP_REG register value.
base | is the base address of a CLB tile's logic config register. |
This function writes to the CLB_GP_REG register. When the general purpose input mux is configured to use CLB_GP_REG, each bit in gpRegVal corresponds to an input signal (bit 0 to Input 0, bit 1 to Input 1, and so on).
|
inlinestatic |
Configures the local input mux.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB tile input signal. |
localMuxCfg | is the mux selection for the local input mux. |
This function configures the local input mux for the specified input signal.
The inID parameter can have one enumeration value from CLB_Inputs. The localMuxCfg parameter can have one enumeration value from CLB_LocalInputMux.
|
inlinestatic |
Configures the global input mux.
base | is the base address of a CLB tile's logic config register. |
inID | is the specified CLB tile input signal. |
globalMuxCfg | is the mux selection for the global input mux. |
This function configures the global input mux for the specified input signal. The inID parameter can have one enumeration value from CLB_Inputs. The globalMuxCfg parameter can have one enumeration value from CLB_GlobalInputMux.
|
inlinestatic |
Controls the output enable.
base | is the base address of a CLB tile's logic config register. |
outputMask | is a mask of the outputs to be enabled. |
enable | is a switch to decide if the CLB outputs need to be enabled or not. |
This function is used to enable and disable CLB outputs by writing a mask to CLB_OUT_EN. Each bit corresponds to a CLB output. When a bit is 1, the corresponding output is enabled; when a bit is 0, the output is disabled.
The outputMask parameter takes a logical OR of any of the CLB_OUTPUT_0x values that correspond to the CLB OUTPUT ENABLE for the respective outputs. The enable parameter can have one of the values from: false: Disable the respective CLB outputs true: Enable the respective CLB outputs
|
inlinestatic |
Reads the interrupt tag register.
base | is the base address of a CLB tile's logic config register. |
|
inlinestatic |
Clears the interrupt tag register.
base | is the base address of a CLB tile's logic config register. |
This function clears the interrupt tag register, setting it to 0.
|
inlinestatic |
Selects LUT4 inputs.
base | is the base address of a CLB tile's logic config register. |
lut4In0 | is the value for LUT4 input signal 0. Generated by tool as TILEx_CFG_LUT4_IN0. |
lut4In1 | is the value for LUT4 input signal 1. Generated by tool as TILEx_CFG_LUT4_IN1. |
lut4In2 | is the value for LUT4 input signal 2. Generated by tool as TILEx_CFG_LUT4_IN2. |
lut4In3 | is the value for LUT4 input signal 3. Generated by tool as TILEx_CFG_LUT4_IN3. |
This function configures the LUT4 block's input signals.
|
inlinestatic |
Configures LUT4 functions.
base | is the base address of a CLB tile's logic config register. |
lut4Fn10 | is the equation value for LUT4 blocks 0 and 1. Generated by tool as TILEx_CFG_LUT4_FN10. |
lut4Fn2 | is the equation value for LUT4 block2. Generated by tool as TILEx_CFG_LUT4_FN2. |
This function configures the LUT4 block's equations.
|
inlinestatic |
Selects FSM inputs.
base | is the base address of a CLB tile's logic config register. |
external0 | is the value for FSM external 0 input. Generated by tool as TILEx_CFG_FSM_EXT_IN0. |
external1 | is the value for FSM external 1 input. Generated by tool as TILEx_CFG_FSM_EXT_IN1. |
extra0 | is the value for FSM extra 0 input. Generated by tool as TILEx_CFG_FSM_EXTRA_IN0. |
extra1 | is the value for FSM extra 1 input. Generated by tool as TILEx_CFG_FSM_EXTRA_IN1. |
This function configures the FSM block's external inputs and extra external inputs.
|
inlinestatic |
Configures FSM LUT function.
base | is the base address of a CLB tile's logic config register. |
fsmLutFn10 | is the value for FSM 0 & FSM 1 LUT function. Generated by tool as TILEx_CFG_FSM_LUT_FN10. |
fsmLutFn2 | is the value for FSM 2 LUT function. Generated by tool as TILEx_CFG_FSM_LUT_FN2. |
This function configures the FSM block's LUT equations.
|
inlinestatic |
Configures FSM next state.
base | is the base address of a CLB tile's logic config register. |
nextState0 | is the value for FSM 0's next state. Generated by tool as TILEx_CFG_FSM_NEXT_STATE_0. |
nextState1 | is the value for FSM 1's next state. Generated by tool as TILEx_CFG_FSM_NEXT_STATE_1. |
nextState2 | is the value for FSM 2's next state. Generated by tool as TILEx_CFG_FSM_NEXT_STATE_2. |
This function configures the FSM's next state equation.
|
inlinestatic |
Selects Counter inputs.
base | is the base address of a CLB tile's logic config register. |
reset | is the value for counter's reset inputs. Generated by tool as TILEx_CFG_COUNTER_RESET. |
event | is the value for counter's event inputs. Generated by tool as TILEx_CFG_COUNTER_EVENT. |
mode0 | is the value for counter's mode 0 inputs. Generated by tool as TILEx_CFG_COUNTER_MODE_0. |
mode1 | is the value for counter's mode 1 inputs. Generated by tool as TILEx_CFG_COUNTER_MODE_1. |
This function selects the input signals to the counter block.
|
inlinestatic |
Configures Counter and FSM modes.
base | is the base address of a CLB tile's logic config register. |
miscCtrl | is the value to represent counter and FSM modes. Generated by tool as TILEx_CFG_MISC_CONTROL. |
This function configures the counter mode, particularly add/shift, load modes. The function also configures whether the FSM should use state inputs or an extra external input.
|
inlinestatic |
Configures Output LUT functions.
base | is the base address of a CLB tile's logic config register. |
outID | is the specified CLB tile output signal. |
outputCfg | is the value for the output LUT signal function and input signal selections. Generated by tool as TILEx_CFG_OUTLUT_n where n is the output number. |
This function configures the input signals and equations of the output LUT corresponding to the /e outID parameter.
|
inlinestatic |
Configures HLC event selection.
base | is the base address of a CLB tile's logic config register. |
eventSel | is the value for HLC event selection. Generated by tool as TILEx_HLC_EVENT_SEL. |
This function configures the event selection for the High Level Controller.
|
inlinestatic |
Program HLC instruction.
base | is the base address of a CLB tile's logic config register. |
instructionNum | is the index into the HLC instruction memory. For example, a value of 0 corresponds to instruction 0 of event 0, a value of 1 corresponds to instruction 1 of event 0, and so on up to a value of 31 which corresponds to instruction 7 of event 3. |
instruction | is the instruction to be programmed. Generated by tool as TILEx_HLCINSTR_n where n is the instruction number. |
This function configures the CLB internal memory corresponding to the specified HLC instruction number with the given instruction.
|
inlinestatic |
Set HLC registers.
base | is the base address of a CLB tile's logic config register. |
r0Init | is the value to write to HLC register R0. Generated by tool as TILEx_HLC_R0_INIT. |
r1Init | is the value to write to HLC register R1. Generated by tool as TILEx_HLC_R1_INIT. |
r2Init | is the value to write to HLC register R2. Generated by tool as TILEx_HLC_R2_INIT. |
r3Init | is the value to write to HLC register R3. Generated by tool as TILEx_HLC_R3_INIT. |
This function configures the CLB internal memory corresponding to the HLC registers R0-R3 with the specified values.
|
inlinestatic |
Get HLC or counter register values.
base | is the base address of a CLB tile's logic config register. |
registerID | is the internal register from which to read. Can be either an HLC register (CLB_REG_HLC_Rn) or a counter value (CLB_REG_CTR_Cn). |
|
inlinestatic |
Get output status.
base | is the base address of a CLB tile's logic config register. |
hw_clb.h
to decode the bits.
|
inlinestatic |
Enable CLB Pipeline Mode.
base | is the base address of a CLB tile's logic config register. |
This function enables the CLB Pipeline Mode
|
inlinestatic |
Disable CLB Pipeline Mode.
base | is the base address of a CLB tile's logic config register. |
This function disables the CLB Pipeline Mode.
|
inlinestatic |
Disable CLB Output Mask Updates.
base | is the base address of a CLB tile's logic config register. |
This function disables the CLB Output Mask updates
|
inlinestatic |
Enable CLB Output Mask Updates.
base | is the base address of a CLB tile's logic config register. |
This function enables the CLB Output Mask updates
|
inlinestatic |
Enable Input Pipeline Mode.
base | is the base address of a CLB tile's logic config register. |
This function enables the CLB Input Pipeline mode
|
inlinestatic |
Disable Input Pipeline Mode.
base | is the base address of a CLB tile's logic config register. |
This function disables the CLB Input Pipeline mode
|
inlinestatic |
Disable SPI RX Buffer Access.
base | is the base address of a CLB tile's logic config register. |
This function disables the CLB SPI RX Buffer access
|
inlinestatic |
Enable SPI RX Buffer Access.
base | is the base address of a CLB tile's logic config register. |
This function enables the CLB SPI RX Buffer access
|
inlinestatic |
Configures SPI RX Buffer Load Signal event selection.
base | is the base address of a CLB tile's logic config register. |
eventSel | is the value for HLC event selection. Generated by tool as TILEx_SPI_BUF_EVENT_SEL. |
This function configures the event selection for the SPI RX Buffer.
|
inlinestatic |
Configures SPI Export HLC R0 Shift value.
base | is the base address of a CLB tile's logic config register. |
shiftVal | is the value for SPI export HLC R0 bit range selection. |
This function configures the SPI Export HLC R0 Shift value.
|
inlinestatic |
Enables strobe delay event for SPI.
base | is the base address of a CLB tile's logic config register. |
This function enables the delay for selected strobe event by 4-CLB clock cycles to SPI module.
|
inlinestatic |
Disables strobe delay event for SPI.
base | is the base address of a CLB tile's logic config register. |
This function disables the delay for selected strobe event.
|
extern |
Configures Counter load and match.
base | is the base address of a CLB tile's logic config register. |
counterID | is the specified counter unit. |
load | is the value for counter's load mode. Generated by tool as TILEx_COUNTER_n_LOAD_VAL where n is the counter number. |
match1 | is the value for counter's match 1. Generated by tool as TILEx_COUNTER_n_MATCH1_VAL where n is the counter number. |
match2 | is the value for counter's match 2. Generated by tool as TILEx_COUNTER_n_MATCH2_VAL where n is the counter number. |
This function configures the CLB internal memory corresponding to the counter block's load and match values.
|
extern |
Clear FIFO registers.
base | is the base address of a CLB tile's logic config register. |
This function clears the PUSH/PULL FIFOs as well as its pointers.
|
extern |
Configure the FIFO registers.
base | is the base address of a CLB tile's logic config register. |
pullData[] | is a pointer to an array of bytes which needs to be written into the FIFO. The 0th FIFO data is in the 0th index. |
This function writes to the PULL FIFO. This also clears the FIFOs and its pointer using the CLB_clearFIFOs() API prior to writing to the FIFO.
|
extern |
Read FIFO registers.
base | is the base address of a CLB tile's logic config register. |
pushData[] | is a pointer to an array of bytes which needs to be read from the FIFO. |
This function reads from the PUSH FIFO. The 0th FIFO data would be in the 0th index.