#ifndef _FC7240_ACC_NU_Tztufn3_REGS_H_ #define _FC7240_ACC_NU_Tztufn3_REGS_H_ #ifdef __cplusplus extern "C" { #endif /* ---------------------------------------------------------------------------- -- ACC Peripheral Access Layer ---------------------------------------------------------------------------- */ /*! * @addtogroup ACC_Peripheral_Access_Layer ACC Peripheral Access Layer * @{ */ /** ACC - Size of Registers Arrays */ /** ACC - Register Layout Typedef */ #define ACC_IEBR_COUNT 2 #define ACC_DEBR_COUNT 2 typedef struct { uint8_t RESERVED_0[20]; __IO uint32_t CCR ; /* Configuration and Control Register, offset: 0x14 */ uint8_t RESERVED_1[96]; __I uint32_t CLIDR ; /* Cache Level ID Register, offset: 0x78 */ __I uint32_t CTR ; /* Cache Type Register, offset: 0x7C */ __I uint32_t CCSIDR ; /* Cache Size ID Register, offset: 0x80 */ __IO uint32_t CSSELR ; /* Cache Size Selection Register, offset: 0x84 */ uint8_t RESERVED_2[456]; __O uint32_t ICIALLU ; /* I-cache Invalidate All to PoU Register, offset: 0x250 */ uint8_t RESERVED_3[4]; __O uint32_t ICIMVAU ; /* I-cache Invalidate by MVA to PoU Register, offset: 0x258 */ __O uint32_t DCIMVAC ; /* D-cache Invalidate by MVA to PoC Register, offset: 0x25C */ __O uint32_t DCISW ; /* D-cache Invalidate by Set-way Register, offset: 0x260 */ __O uint32_t DCCMVAU ; /* D-cache Clean by MVA to PoU Register, offset: 0x264 */ __O uint32_t DCCMVAC ; /* D-cache Clean by MVA to PoC Register, offset: 0x268 */ __O uint32_t DCCSW ; /* D-cache Clean by Set-way Register, offset: 0x26C */ __O uint32_t DCCIMVAC ; /* D-cache Clean and Invalidate by MVA to PoC Register, offset: 0x270 */ __O uint32_t DCCISW ; /* D-cache Clean and Invalidate by Set-way Register, offset: 0x274 */ uint8_t RESERVED_4[36]; __IO uint32_t CACR ; /* L1 Cache Control Register, offset: 0x29C */ uint8_t RESERVED_5[16]; __IO uint32_t IEBR[ACC_IEBR_COUNT] ; /* Instruction Error Bank Register, offset: 0x2b0 */ __IO uint32_t DEBR[ACC_DEBR_COUNT] ; /* Data Error Bank Register, offset: 0x2b8 */ } ACC_Type, *ACC_MemMapPtr; /** Number of instances of the ACC module. */ #define ACC_INSTANCE_COUNT (1u) /* ACC - Peripheral instance base addresses */ /** Peripheral ACC base address */ #define ACC_BASE (0xE000ED00u) /** Peripheral ACC base pointer */ #define ACC ((ACC_Type *)ACC_BASE) /** Array initializer of ACC peripheral base addresses */ #define ACC_BASE_ADDRS {ACC_BASE} /** Array initializer of ACC peripheral base pointers */ #define ACC_BASE_PTRS {ACC} // need fill by yourself ///** Number of interrupt vector arrays for the ACC module. */ //#define ACC_IRQS_ARR_COUNT (1u) ///** Number of interrupt channels for the ACC module. */ //#define ACC_IRQS_CH_COUNT (1u) ///** Interrupt vectors for the ACC peripheral type */ //#define ACC_IRQS {ACC_IRQn} /* ---------------------------------------------------------------------------- -- ACC Register Masks ---------------------------------------------------------------------------- */ /*! * @addtogroup ACC_Register_Masks ACC Register Masks * @{ */ /* CCR Bit Fields */ #define ACC_CCR_BP_MASK 0x40000u #define ACC_CCR_BP_SHIFT 18u #define ACC_CCR_BP_WIDTH 1u #define ACC_CCR_BP(x) (((uint32_t)(((uint32_t)(x))<