=====================================================================
                        MPCore¸ޥ˥奢
                                  Last Modified: 14 Jul 2009 11:37:19
=====================================================================



MPCore¸ϡARMҤMPCore򥿡åȤȤƤ롥ARM11MPCore
Τߤ򥵥ݡȤƤ롥


ͥλѥ꥽

ץå˥ͥϰʲΥ꥽Ѥ롥

¢

ͥΥƥåȤѤ롥

0֤Υץåֳ

DICγֹ0Υץåֳߤץå֤Υǥѥå׵
Ѥ롥

SCUMN0

ǽɾѤSCU󥿤MN0Ѥ롥


߽ط

ߤDICѤư

ߥϥɥֹȳֹ

DICǳդƤֹߥϥɥֹڤӳֹȤ롥
˳դʳߤ˴ؤƤϡ̥ӥåȤǳդ
Ƥ륳ΥӥåȤ뤳Ȥǡ̤롥Хʳߤϡ
ӥåȤ0xfȤʤäƤ롥

ͥ٤κǾͤȺ

ͥ٤κǾͤ-15Ǥꡤͤ-1Ǥ롥

dis_int/ena_int Υݡ

dis_int/ena_int򥵥ݡȤƤ롥

ͥγߥݡ

ͥγߤϥݡȤƤʤ


ǽɾѥƥλ

¢ޤˤ get_utm 򥵥ݡȤƤ롥


åװ¸Υޥץåѽ롼

ͥ뵯ư str_ker() μ¹˸ƤӽФ롼Ȥơ
chip_mprc_initialize() ꡤʲνԤ

DICν

DICö̵ˤơƤγߤػߤǡڥǥ󥰥ӥåȤ
ꥢ塤ͭˤ롥

SCUν

SCUͭˤơƤΥΥ⡼ɤNORMALȤ롥

SILΥԥåѿν

SILΥԥåؿͭˤ뤿ᡤԥåѿͭˤ롥


åװ¸ν롼

åװ¸ν롼Ȥơchip_initialize()ꡤʲν
Ԥ

ARM¸ν롼θƤӽФ

ARM¸ν롼Ǥ롤core_initialize()ƤӽФ

MMUν

MMUơڡơ֥ʲ1ĺ롥

  ʪɥ쥹 = ۥɥ쥹
  Υ󥭥å֥롤ΥХåե֥Ȥ 

SMP⡼ɤꤹ

åTLV򥯥ꥢ塤ץåSMP⡼ɤȤ롥

åͭ

IåDåξͭˤ롥

DICCPU󥿥եͭ

ץåγͥ٤ͥ٤Ȥͥ٤ӥåȤͭ
ˤơEOIˤڥǥ󥰤Ƥߤ򥯥ꥢ롥


åװ¸νλ롼

åװ¸ν롼Ǥchip_exit()ǤϡʲνλԤ

ARM¸νλ롼θƤӽФ

ARM¸νλ롼Ǥ롤core_exit()ƤӽФ

DICCPU󥿥եߤ

DICDIS󥿥ե


ǽɾѥѥ롼

ץå٤֤¬뤿ˡSCUMN0󥿤Ѥ¬롼
ѰդƤ롥ȤCPUåǹԤ롥

  void scu_counter_init(void); //󥿡ν

  void scu_counter_reset(void) //󥿡ͤΥꥻå

  void scu_counter_get_current(void) //󥿡ͤμ


SILϢ

MPCore¸ǤϡSILΥԥå롼󶡤롥
åѤѿϡåװ¸Υޥץåѽ롼
chip_mprc_initialize()ˤǽƤ롥


=====================================================================
                åȰ¸ȯԸξ
=====================================================================
ޥץåλ

ޥץåΥץåID򼡤Υޥǻꤹ롥

  TMPRC_INDEX

¢ڥեΥ١ɥ쥹򼡤Υޥǻꤹ롥

  MPCORE_PMR_BASE

MMUν롼

MMUδŪʽνλ塤åȰ¸ǹԤMMUν
ʲδؿ˵Ҥ롥

  void target_mmu_init(void)

MPCore¸ǤϡMMUνѤδؿȤƼδؿ󶡤

  void mmu_map_memory(MEMORY_ATTRIBUTE *m_attribute);

MEMORY_ATTRIBUTE ꤷΰΥ䥭åͭ
̵ꤹ롥
    
	typedef struct{
		uintptr_t   va;
		uintptr_t   pa;
		uint32_t    size;
		uint8_t     s;
		uint8_t     tex;
		uint8_t     ap;
		uint8_t     c;
		uint8_t     b;
	}MEMORY_ATTRIBUTE;

chip_mprc_initialize()θƤӽФ

target_mprc_initialize()θƤӽФȡ

chip_initialize()θƤӽФ

target_initialize()θƤӽФȡ


=====================================================================
                             ѹ
=====================================================================
2009-07-14
 CPUEXC3  CPUEXC4 
 ץץѤCPUEXC1... 򥿡åȰ¸˰ư

2009-05-14
 INTHDR_ENTRY() externϤʤ褦ѹ

2009-02-03
 ޥ˥奢

2009-01-26
 ȤΥ󥿥եѹˤꡤؿ̾ѹ

2008-09-11
 CP15_DATA_SYNC_BARRIER()/CP15_INVALIDATE_UNIFIED_TLB() : mpcore.h
   饤󥢥֥ޥ

2008-08-04
 x_config_int() : chip_config.c
   ߤξ硤нץå˼ץåޤޤ
   뤫å롥

ʾ塥
