/* * Xtensa processor core configuration information. * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (c) 1999-2007 Tensilica Inc.
*/
/**************************************************************************** Parameters Useful for Any Code, USER or PRIVILEGED
****************************************************************************/
/* * Note: Macros of the form XCHAL_HAVE_*** have a value of 1 if the option is * configured, and a value of 0 otherwise. These macros are always defined.
*/
/*---------------------------------------------------------------------- ISA
----------------------------------------------------------------------*/
#define XCHAL_NUM_WRITEBUFFER_ENTRIES 8 /* size of write buffer */ #define XCHAL_INST_FETCH_WIDTH 4 /* instr-fetch width in bytes */ #define XCHAL_DATA_WIDTH 4 /* data width in bytes */ /* In T1050, applies to selected core load and store instructions (see ISA): */ #define XCHAL_UNALIGNED_LOAD_EXCEPTION 1 /* unaligned loads cause exc. */ #define XCHAL_UNALIGNED_STORE_EXCEPTION 1 /* unaligned stores cause exc.*/
#define XCHAL_SW_VERSION 701001 /* sw version of this header */
#define XCHAL_CORE_ID "dc232b"/* alphanum core name (CoreID) set in the Xtensa
Processor Generator */
#define XCHAL_CORE_DESCRIPTION "Diamond 232L Standard Core Rev.B (LE)" #define XCHAL_BUILD_UNIQUE_ID 0x0000BEEF /* 22-bit sw build ID */
/* * These definitions describe the hardware targeted by this software.
*/ #define XCHAL_HW_CONFIGID0 0xC56307FE /* ConfigID hi 32 bits*/ #define XCHAL_HW_CONFIGID1 0x0D40BEEF /* ConfigID lo 32 bits*/ #define XCHAL_HW_VERSION_NAME "LX2.1.1"/* full version name */ #define XCHAL_HW_VERSION_MAJOR 2210 /* major ver# of targeted hw */ #define XCHAL_HW_VERSION_MINOR 1 /* minor ver# of targeted hw */ #define XCHAL_HW_VERSION 221001 /* major*100+minor */ #define XCHAL_HW_REL_LX2 1 #define XCHAL_HW_REL_LX2_1 1 #define XCHAL_HW_REL_LX2_1_1 1 #define XCHAL_HW_CONFIGID_RELIABLE 1 /* If software targets a *range* of hardware versions, these are the bounds: */ #define XCHAL_HW_MIN_VERSION_MAJOR 2210 /* major v of earliest tgt hw */ #define XCHAL_HW_MIN_VERSION_MINOR 1 /* minor v of earliest tgt hw */ #define XCHAL_HW_MIN_VERSION 221001 /* earliest targeted hw */ #define XCHAL_HW_MAX_VERSION_MAJOR 2210 /* major v of latest tgt hw */ #define XCHAL_HW_MAX_VERSION_MINOR 1 /* minor v of latest tgt hw */ #define XCHAL_HW_MAX_VERSION 221001 /* latest targeted hw */
#define XCHAL_ICACHE_LINESIZE 32 /* I-cache line size in bytes */ #define XCHAL_DCACHE_LINESIZE 32 /* D-cache line size in bytes */ #define XCHAL_ICACHE_LINEWIDTH 5 /* log2(I line size in bytes) */ #define XCHAL_DCACHE_LINEWIDTH 5 /* log2(D line size in bytes) */
#define XCHAL_ICACHE_SIZE 16384 /* I-cache size in bytes or 0 */ #define XCHAL_DCACHE_SIZE 16384 /* D-cache size in bytes or 0 */
/**************************************************************************** Parameters Useful for PRIVILEGED (Supervisory or Non-Virtualized) Code
****************************************************************************/
/* Number of encoded cache attr bits (see <xtensa/hal.h> for decoded bits): */ #define XCHAL_CA_BITS 4
/*---------------------------------------------------------------------- INTERNAL I/D RAM/ROMs and XLMI
----------------------------------------------------------------------*/
#define XCHAL_NUM_INSTROM 0 /* number of core instr. ROMs */ #define XCHAL_NUM_INSTRAM 0 /* number of core instr. RAMs */ #define XCHAL_NUM_DATAROM 0 /* number of core data ROMs */ #define XCHAL_NUM_DATARAM 0 /* number of core data RAMs */ #define XCHAL_NUM_URAM 0 /* number of core unified RAMs*/ #define XCHAL_NUM_XLMI 0 /* number of core XLMI ports */
/*---------------------------------------------------------------------- INTERRUPTS and TIMERS
----------------------------------------------------------------------*/
#define XCHAL_HAVE_INTERRUPTS 1 /* interrupt option */ #define XCHAL_HAVE_HIGHPRI_INTERRUPTS 1 /* med/high-pri. interrupts */ #define XCHAL_HAVE_NMI 1 /* non-maskable interrupt */ #define XCHAL_HAVE_CCOUNT 1 /* CCOUNT reg. (timer option) */ #define XCHAL_NUM_TIMERS 3 /* number of CCOMPAREn regs */ #define XCHAL_NUM_INTERRUPTS 22 /* number of interrupts */ #define XCHAL_NUM_INTERRUPTS_LOG2 5 /* ceil(log2(NUM_INTERRUPTS)) */ #define XCHAL_NUM_EXTINTERRUPTS 17 /* num of external interrupts */ #define XCHAL_NUM_INTLEVELS 6 /* number of interrupt levels
(not including level zero) */ #define XCHAL_EXCM_LEVEL 3 /* level masked by PS.EXCM */ /* (always 1 in XEA1; levels 2 .. EXCM_LEVEL are "medium priority") */
/* Masks of interrupts at each interrupt level: */ #define XCHAL_INTLEVEL1_MASK 0x001F80FF #define XCHAL_INTLEVEL2_MASK 0x00000100 #define XCHAL_INTLEVEL3_MASK 0x00200E00 #define XCHAL_INTLEVEL4_MASK 0x00001000 #define XCHAL_INTLEVEL5_MASK 0x00002000 #define XCHAL_INTLEVEL6_MASK 0x00000000 #define XCHAL_INTLEVEL7_MASK 0x00004000
/* Masks of interrupts at each range 1..n of interrupt levels: */ #define XCHAL_INTLEVEL1_ANDBELOW_MASK 0x001F80FF #define XCHAL_INTLEVEL2_ANDBELOW_MASK 0x001F81FF #define XCHAL_INTLEVEL3_ANDBELOW_MASK 0x003F8FFF #define XCHAL_INTLEVEL4_ANDBELOW_MASK 0x003F9FFF #define XCHAL_INTLEVEL5_ANDBELOW_MASK 0x003FBFFF #define XCHAL_INTLEVEL6_ANDBELOW_MASK 0x003FBFFF #define XCHAL_INTLEVEL7_ANDBELOW_MASK 0x003FFFFF
/* Interrupt numbers for levels at which only one interrupt is configured: */ #define XCHAL_INTLEVEL2_NUM 8 #define XCHAL_INTLEVEL4_NUM 12 #define XCHAL_INTLEVEL5_NUM 13 #define XCHAL_INTLEVEL7_NUM 14 /* (There are many interrupts each at level(s) 1, 3.) */
/* * External interrupt vectors/levels. * These macros describe how Xtensa processor interrupt numbers * (as numbered internally, eg. in INTERRUPT and INTENABLE registers) * map to external BInterrupt<n> pins, for those interrupts * configured as external (level-triggered, edge-triggered, or NMI). * See the Xtensa processor databook for more details.
*/
/*---------------------------------------------------------------------- EXCEPTIONS and VECTORS
----------------------------------------------------------------------*/
/* See core-matmap.h header file for more details. */
#define XCHAL_HAVE_TLBS 1 /* inverse of HAVE_CACHEATTR */ #define XCHAL_HAVE_SPANNING_WAY 0 /* one way maps I+D 4GB vaddr */ #define XCHAL_HAVE_IDENTITY_MAP 0 /* vaddr == paddr always */ #define XCHAL_HAVE_CACHEATTR 0 /* CACHEATTR register present */ #define XCHAL_HAVE_MIMIC_CACHEATTR 0 /* region protection */ #define XCHAL_HAVE_XLT_CACHEATTR 0 /* region prot. w/translation */ #define XCHAL_HAVE_PTP_MMU 1 /* full MMU (with page table [autorefill] and protection)
usable for an MMU-based OS */ /* If none of the above last 4 are set, it's a custom TLB configuration. */ #define XCHAL_ITLB_ARF_ENTRIES_LOG2 2 /* log2(autorefill way size) */ #define XCHAL_DTLB_ARF_ENTRIES_LOG2 2 /* log2(autorefill way size) */
#define XCHAL_MMU_ASID_BITS 8 /* number of bits in ASIDs */ #define XCHAL_MMU_RINGS 4 /* number of rings (1..4) */ #define XCHAL_MMU_RING_BITS 2 /* num of bits in RING field */
#endif/* !XTENSA_HAL_NON_PRIVILEGED_ONLY */
#endif/* _XTENSA_CORE_CONFIGURATION_H */
Messung V0.5
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.