// ***************** startup.h ****************************************/ // SBC-DBG sample program for ARMCortex-A9. // The program demonstrates program running at Elcore dsp // core. // // (c) OJSC ELVEES, multicore.ru // // *******************************************************************/ // DSP Registers #define MASKR_DSP *((volatile int *)0x37001000) #define QSTR_DSP *((volatile int *)0x37001004) #define CSR_DSP *((volatile int *)0x37001008) #define BASE(i) (0x37000000 + (i)*0x10000) #define DCSR(i) *((volatile int *)(BASE(i) + 0x0100)) #define SR(i) *((volatile int *)(BASE(i) + 0x0104)) #define IDR(i) *((volatile int *)(BASE(i) + 0x0108)) #define EFR(i) *((volatile int *)(BASE(i) + 0x010C)) #define DSTART(i) *((volatile int *)(BASE(i) + 0x010C)) #define IRQR(i) *((volatile int *)(BASE(i) + 0x0110)) #define IMASKR(i) *((volatile int *)(BASE(i) + 0x0114)) #define TMR(i) *((volatile int *)(BASE(i) + 0x0118)) #define PC(i) *((volatile int *)(BASE(i) + 0x0120)) #define SS(i) *((volatile int *)(BASE(i) + 0x0124)) #define LA(i) *((volatile int *)(BASE(i) + 0x0128)) #define LC(i) *((volatile int *)(BASE(i) + 0x0130)) #define CSH(i) *((volatile int *)(BASE(i) + 0x0134)) #define SP(i) *((volatile int *)(BASE(i) + 0x0138)) #define CNTR(i) *((volatile int *)(BASE(i) + 0x0140)) #define SAR1(i) *((volatile int *)(BASE(i) + 0x0144)) #define SAR2(i) *((volatile int *)(BASE(i) + 0x0148)) #define SAR3(i) *((volatile int *)(BASE(i) + 0x014C)) #define SAR4(i) *((volatile int *)(BASE(i) + 0x0150)) #define SAR5(i) *((volatile int *)(BASE(i) + 0x0154)) #define SAR6(i) *((volatile int *)(BASE(i) + 0x0158)) #define SAR7(i) *((volatile int *)(BASE(i) + 0x015C)) #define CCR(i) *((volatile int *)(BASE(i) + 0x0160)) #define PDNR(i) *((volatile int *)(BASE(i) + 0x0164)) #define SFR(i) *((volatile int *)(BASE(i) + 0x0168)) #define A0(i) *((volatile int *)(BASE(i) + 0x0080)) #define A1(i) *((volatile int *)(BASE(i) + 0x0084)) #define A2(i) *((volatile int *)(BASE(i) + 0x0088)) #define A3(i) *((volatile int *)(BASE(i) + 0x008C)) #define A4(i) *((volatile int *)(BASE(i) + 0x0090)) #define A5(i) *((volatile int *)(BASE(i) + 0x0094)) #define A6(i) *((volatile int *)(BASE(i) + 0x0098)) #define A7(i) *((volatile int *)(BASE(i) + 0x009C)) #define I0(i) *((volatile int *)(BASE(i) + 0x00A0)) #define I1(i) *((volatile int *)(BASE(i) + 0x00A4)) #define I2(i) *((volatile int *)(BASE(i) + 0x00A8)) #define I3(i) *((volatile int *)(BASE(i) + 0x00AC)) #define I4(i) *((volatile int *)(BASE(i) + 0x00B0)) #define I5(i) *((volatile int *)(BASE(i) + 0x00B4)) #define I6(i) *((volatile int *)(BASE(i) + 0x00B8)) #define I7(i) *((volatile int *)(BASE(i) + 0x00BC)) #define M0(i) *((volatile int *)(BASE(i) + 0x00C0)) #define M1(i) *((volatile int *)(BASE(i) + 0x00C4)) #define M2(i) *((volatile int *)(BASE(i) + 0x00C8)) #define M3(i) *((volatile int *)(BASE(i) + 0x00CC)) #define M4(i) *((volatile int *)(BASE(i) + 0x00D0)) #define M5(i) *((volatile int *)(BASE(i) + 0x00D4)) #define M6(i) *((volatile int *)(BASE(i) + 0x00D8)) #define M7(i) *((volatile int *)(BASE(i) + 0x00DC)) #define AT(i) *((volatile int *)(BASE(i) + 0x00E0)) #define IT(i) *((volatile int *)(BASE(i) + 0x00E4)) #define MT(i) *((volatile int *)(BASE(i) + 0x00E8)) #define DT(i) *((volatile int *)(BASE(i) + 0x00EC)) #define IVAR(i) *((volatile int *)(BASE(i) + 0x00FC)) #define R0_L(i) *((volatile int *)(BASE(i) + 0x0000)) #define R2_L(i) *((volatile int *)(BASE(i) + 0x0004)) #define R4_L(i) *((volatile int *)(BASE(i) + 0x0008)) #define R6_L(i) *((volatile int *)(BASE(i) + 0x000C)) #define R8_L(i) *((volatile int *)(BASE(i) + 0x0010)) #define R10_L(i) *((volatile int *)(BASE(i) + 0x0014)) #define R12_L(i) *((volatile int *)(BASE(i) + 0x0018)) #define R14_L(i) *((volatile int *)(BASE(i) + 0x001C)) #define R16_L(i) *((volatile int *)(BASE(i) + 0x0020)) #define R18_L(i) *((volatile int *)(BASE(i) + 0x0024)) #define R20_L(i) *((volatile int *)(BASE(i) + 0x0028)) #define R22_L(i) *((volatile int *)(BASE(i) + 0x002C)) #define R24_L(i) *((volatile int *)(BASE(i) + 0x0030)) #define R26_L(i) *((volatile int *)(BASE(i) + 0x0034)) #define R28_L(i) *((volatile int *)(BASE(i) + 0x0038)) #define R30_L(i) *((volatile int *)(BASE(i) + 0x003C)) #define R1_L(i) *((volatile int *)(BASE(i) + 0x0040)) #define R3_L(i) *((volatile int *)(BASE(i) + 0x0044)) #define R5_L(i) *((volatile int *)(BASE(i) + 0x0048)) #define R7_L(i) *((volatile int *)(BASE(i) + 0x004C)) #define R9_L(i) *((volatile int *)(BASE(i) + 0x0050)) #define R11_L(i) *((volatile int *)(BASE(i) + 0x0054)) #define R13_L(i) *((volatile int *)(BASE(i) + 0x0058)) #define R15_L(i) *((volatile int *)(BASE(i) + 0x005C)) #define R17_L(i) *((volatile int *)(BASE(i) + 0x0060)) #define R19_L(i) *((volatile int *)(BASE(i) + 0x0064)) #define R21_L(i) *((volatile int *)(BASE(i) + 0x0068)) #define R23_L(i) *((volatile int *)(BASE(i) + 0x006C)) #define R25_L(i) *((volatile int *)(BASE(i) + 0x0070)) #define R27_L(i) *((volatile int *)(BASE(i) + 0x0074)) #define R29_L(i) *((volatile int *)(BASE(i) + 0x0078)) #define R31_L(i) *((volatile int *)(BASE(i) + 0x007C)) #define R1D_L(i) *((volatile int *)(BASE(i) + 0x0180)) #define R1D_H(i) *((volatile int *)(BASE(i) + 0x0184)) #define R3D_L(i) *((volatile int *)(BASE(i) + 0x0188)) #define R3D_H(i) *((volatile int *)(BASE(i) + 0x018C)) #define R5D_L(i) *((volatile int *)(BASE(i) + 0x0190)) #define R5D_H(i) *((volatile int *)(BASE(i) + 0x0194)) #define R7D_L(i) *((volatile int *)(BASE(i) + 0x0198)) #define R7D_H(i) *((volatile int *)(BASE(i) + 0x019C)) #define R9D_L(i) *((volatile int *)(BASE(i) + 0x01A0)) #define R9D_H(i) *((volatile int *)(BASE(i) + 0x01A4)) #define R11D_L(i) *((volatile int *)(BASE(i) + 0x01A8)) #define R11D_H(i) *((volatile int *)(BASE(i) + 0x01AC)) #define R13D_L(i) *((volatile int *)(BASE(i) + 0x01B0)) #define R13D_H(i) *((volatile int *)(BASE(i) + 0x01B4)) #define R15D_L(i) *((volatile int *)(BASE(i) + 0x01B8)) #define R15D_H(i) *((volatile int *)(BASE(i) + 0x01BC)) #define R17D_L(i) *((volatile int *)(BASE(i) + 0x01C0)) #define R17D_H(i) *((volatile int *)(BASE(i) + 0x01C4)) #define R19D_L(i) *((volatile int *)(BASE(i) + 0x01C8)) #define R19D_H(i) *((volatile int *)(BASE(i) + 0x01CC)) #define R21D_L(i) *((volatile int *)(BASE(i) + 0x01D0)) #define R21D_H(i) *((volatile int *)(BASE(i) + 0x01D4)) #define R23D_L(i) *((volatile int *)(BASE(i) + 0x01D8)) #define R23D_H(i) *((volatile int *)(BASE(i) + 0x01DC)) #define R25D_L(i) *((volatile int *)(BASE(i) + 0x01E0)) #define R25D_H(i) *((volatile int *)(BASE(i) + 0x01E4)) #define R27D_L(i) *((volatile int *)(BASE(i) + 0x01E8)) #define R27D_H(i) *((volatile int *)(BASE(i) + 0x01EC)) #define R29D_L(i) *((volatile int *)(BASE(i) + 0x01F0)) #define R29D_H(i) *((volatile int *)(BASE(i) + 0x01F4)) #define R31D_L(i) *((volatile int *)(BASE(i) + 0x01F8)) #define R31D_H(i) *((volatile int *)(BASE(i) + 0x01FC)) #define AC0(i) *((volatile int *)(BASE(i) + 0x0200)) #define AC1(i) *((volatile int *)(BASE(i) + 0x0204)) #define AC2(i) *((volatile int *)(BASE(i) + 0x0208)) #define AC3(i) *((volatile int *)(BASE(i) + 0x020C)) #define AC4(i) *((volatile int *)(BASE(i) + 0x0210)) #define AC5(i) *((volatile int *)(BASE(i) + 0x0214)) #define AC6(i) *((volatile int *)(BASE(i) + 0x0218)) #define AC7(i) *((volatile int *)(BASE(i) + 0x021C)) #define AC8(i) *((volatile int *)(BASE(i) + 0x0220)) #define AC9(i) *((volatile int *)(BASE(i) + 0x0224)) #define AC10(i) *((volatile int *)(BASE(i) + 0x0228)) #define AC11(i) *((volatile int *)(BASE(i) + 0x022C)) #define AC12(i) *((volatile int *)(BASE(i) + 0x0230)) #define AC13(i) *((volatile int *)(BASE(i) + 0x0234)) #define AC14(i) *((volatile int *)(BASE(i) + 0x0238)) #define AC15(i) *((volatile int *)(BASE(i) + 0x023C)) #define dbDCSR(i) *((volatile int *)(BASE(i) + 0x0500)) #define Cnt_RUN(i) *((volatile int *)(BASE(i) + 0x0518)) #define dbPCa(i) *((volatile int *)(BASE(i) + 0x0524)) #define dbPCf(i) *((volatile int *)(BASE(i) + 0x0528)) #define dbPCe(i) *((volatile int *)(BASE(i) + 0x0520)) #define dbPCe1(i) *((volatile int *)(BASE(i) + 0x0530)) #define dbPCe2(i) *((volatile int *)(BASE(i) + 0x0534)) #define dbPCe3(i) *((volatile int *)(BASE(i) + 0x0538)) #define dbCNTR(i) *((volatile int *)(BASE(i) + 0x0540)) #define dbSAR1(i) *((volatile int *)(BASE(i) + 0x0544)) #define dbSAR2(i) *((volatile int *)(BASE(i) + 0x0548)) #define dbSAR3(i) *((volatile int *)(BASE(i) + 0x054C)) #define dbSAR4(i) *((volatile int *)(BASE(i) + 0x0550)) #define dbSAR5(i) *((volatile int *)(BASE(i) + 0x0554)) #define dbSAR6(i) *((volatile int *)(BASE(i) + 0x0558))