
            TOPPERS/JSPJ[l [UY}jA 
               (M32R ^[Qbgˑ)

           iRelease 1.4.3 ΉCŏIXV: 29-Mar-2007j

------------------------------------------------------------------------ 
 TOPPERS/JSP Kernel
     Toyohashi Open Platform for Embedded Real-Time Systems/
     Just Standard Profile Kernel

 Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
                             Toyohashi Univ. of Technology, JAPAN
 Copyright (C) 2007 by Embedded and Real-Time Systems Laboratory
             Graduate School of Information Science, Nagoya Univ., JAPAN

 L쌠҂́Cȉ (1)`(4) ̏CFree Software Foundation 
 ɂČ\Ă GNU General Public License  Version 2 ɋL
 qĂ𖞂ꍇɌC{\tgEFAi{\tgEFA
 ς̂܂ށDȉjgpEEρEĔzziȉC
 pƌĂԁj邱Ƃ𖳏ŋD
 (1) {\tgEFA\[XR[ȟ`ŗpꍇɂ́CL̒
     \C̗pщL̖ۏ؋K肪Ĉ܂܂̌`Ń\[
     XR[hɊ܂܂Ă邱ƁD
 (2) {\tgEFACCu`ȂǁC̃\tgEFAJɎg
     pł`ōĔzzꍇɂ́CĔzzɔhLgip
     ҃}jAȂǁjɁCL̒쌠\C̗pщL
     ̖ۏ؋Kfڂ邱ƁD
 (3) {\tgEFAC@ɑgݍނȂǁC̃\tgEFAJɎg
     płȂ`ōĔzzꍇɂ́Ĉꂩ̏𖞂
     ƁD
   (a) ĔzzɔhLgip҃}jAȂǁjɁCL̒
       쌠\C̗pщL̖ۏ؋Kfڂ邱ƁD
   (b) Ĕzž`ԂCʂɒ߂@ɂāCTOPPERSvWFNg
       񍐂邱ƁD
 (4) {\tgEFA̗pɂ蒼ړI܂͊ԐړIɐ邢Ȃ鑹
     QCL쌠҂TOPPERSvWFNgƐӂ邱ƁD

 {\tgEFÁCۏ؂Œ񋟂Ă̂łDL쌠҂
 TOPPERSvWFNǵC{\tgEFAɊւāC̓Kp\
 ܂߂āCȂۏ؂sȂD܂C{\tgEFA̗pɂ蒼
 ړI܂͊ԐړIɐȂ鑹QɊւĂC̐ӔC𕉂ȂD

 @(#) $Id: m32r.txt,v 1.1 2008/06/17 00:04:40 suikan Exp $
------------------------------------------------------------------------


̃hLgł́CTOPPERS/JSP M32RłɂĉD

PD M32R ^[Qbgˑ̊Tv

1.1 ^[QbgVXeƊJ

M32RvZbT̃^[QbgVXeƂẮCȉ̂̂T|[gĂ
D

	ElTXeNmW M3A-ZA36 (M32102)
	ElTXeNmW M3A-2131 (M32102)

Jɂ́CGCCȂǂGNUJpCIuWFNgt@CtH[}b
gELFWƂD

TOPPERS/JSP M32R̊J ̊ōsĂD

	EGNU gcc-4.1.2
	EGNU binutils-2.17
	EGNU gdb-6.6

1.2 T|[g@\̊Tv

    Ed

	  M32Rł͊݃nhN̑d荞݂D

    Echg_ipm 

	  M32Rł́Cchg_ipm(݃}XNx̕ύX)T|[gD
      ^XNchg_ipm𗘗pă}XNxύXꍇCs
      ^XNł̂ݕύXLƂȂ (fBXpb`Ɋ݃}XNޔ
      /ύX)D

1.3 TOPPERS/JSP M32R̐

    Evxget_tim

	  M32Rłvxget_timT|[gȂD

    Eena_int, dis_int
	
      M32Rł̓[Uɂ銄݋E֎~͍sȂ̂ƂĂD
      Cena_int/dis_int́Cloc_cpu/unl_cpu̕ʖƂđ݂D

    E^C}eBbN1ms

      TOPPERS/JSP M32Rł́C1ms̐xŃJ[l^C}쓮D


Q. M32RɈˑ@\

̐߂ł́CJ[lуVXeT[rX̋@\̒ŁCM32Rˑ
ɂĉD

2.1 f[^^

int^  unsigned int^̃TCY32rbgłDݗDx\
^ IPR ͕Ȃ8rbgłD


R. VXeɈˑ@\

3.1 }bv

EM3A-2131

  0x00000000 - 0x0000020f : xN^e[u, EITnḧꕔ (FLASH ROM)
  0x00000210 -            : gp (FLASH ROM)
  0x00f00000 - 0x00f0ffff : vO + VXeX^bN (RAM)
  0x01000000 - 0x017fffff : f[^ (OSDRAM 8MB)

M3A-2131ˑł́CftHgœRAMɃvOzu悤
ȂĂDRAMɃvOzu邽߂ɂ́CxN^e[u
(0x00000000-0x0000020f)̈C0xFF3C0000 (BRA PC+0x00F00000)Ŗ߂
KvD

X^bN̈́CRAM̖̈AhXl֐iށD
f[^̈͏̗̈悩AhXl֊mۂD

M3A-2131ˑł́CVXeX^bNׂẴf[^OSDRAM 
zu邱ƂftHgƂĂDzuς邽߂ɂ́DM3A-2131p
JXNvgt@C(jsp/config/m32r/m3a2131/m32relf.ld)C
΂悢B

EM3A-ZA36

  0x00f00000 - 0x00f0ffff : vO + VXeX^bNiSRAMj
  0x04000000 - 0x047fffff : f[^iOSDRAM 64MBj

M3A-ZA36ˑł́CSRAMɃeLXgZNVzuƂWƂ
ĂDX^bN̈́COSDRAM̈0x04100000ԒnAhXl
֐iށD

f[^̈́CSDRAM̐擪Ԓn0x04000000AhXl
mۂD̂߁CJ[l[hۂɂ́C\߃fobK
SDRAMĂKvD

zuς邽߂ɂ́CM3A-ZA36pJXNvgt@C
(jsp/config/m32r/m3a_za36/m32relf.ld)C΂悢D


3.2 ̃VXe/`bvւ̃|[eBO

|[eBOƂ͎̃XebvȂD
	E}bvhWX^̃AhXlݒ
    E^C}[l̐ݒ
    ERAMJnԒn̐ݒ
    ECjVX^bN|C^̐ݒ

3.2.1 }bvhWX^̃AhXlݒ

TOPPERS/JSP M32Rł͂̐䃌WX^QƂĂD
SăVXeˑpfBNgsys_defs.hŒ`ĂDp҂
KvɉĂ̒lC邱ƁD

3.2.2 ^C}[l̐ݒ

TOPPERS/JSP M32Rł͕W1msƂɊ݂𔭐ĂD

݂𔭐܂ł̎Ԃ́C^C}RyAWX^̒l}jA
ɂāCTIMER_CLKCNT𒲐邱ƂŕύXłD

Em3a2131

config/m32r/m3a2131/sys_config.h

/* M3A-2131 66MHz  115.2kbps */
#define TIMER_CLKCNT	(16667*2)
#define TIMER_PORT		5

Em3a_za36

config/m32r/m3a_za36/sys_config.h

#define TIMER_CLKCNT		1250		/* 10MHz  57600bps */
#define TIMER_PORT			4

܂C^CeBbN̂Cꍇ́Csys_defs.hTIC_NUME
TIC_DENOCDꂼ͎ɏ]D

^CeBbN(ms) = TIC_NUME(ms) / TIC_DENO(ms)

3.2.3 RAMJnԒn̐ݒ

m32relf.ldMEMORY̓eC邱ƂŁC̃TCYшʒu
ύXłD܂CeZNV̖ɂ"> iram""> eram"ɕύX
ƂŁCZNVɔzuʒuύXłD

3.2.4 CjVX^bN|C^̐ݒ

Nɐݒ肳鏉X^bN|C^(݃X^bN|C^)̔Ԓn
m32relf.ld__stackɋLqĂD__ stackɂ4oCgAC
ꂽli[D

M3A-ZA36̏X^bN|C^́Cȉ̂悤ɐݒ肳ĂD

PROVIDE(__stack = 0x04100000);

X^bN̓vfNgX^bNł邽߁C__stackŎꂽAh
Xɂ͉i[ȂƂɒӂꂽD

3.2.5 ̑̐ݒ

    Egp^C}jbg̔ԍ
        config/m32r/(sys)/sys_config.h: TIMER_PORT錾
            gp^C}jbgԍ߂BftHg5BW̏
            Ԃł́A̐錾C邾ŁAݔԍ⃌WX^Ah
            XȂǂCB

    ER\[ɎgpUARTjbgID
        config/m32r/(sys)/sys_config.h: CONSOLE_PORTID錾
            R\[ƂĎgpUARTjbgIDw肷BUARTjb
            gID1n܂邱ƂɒӁBftHg1B

    Eݗv̍ő吔
        config/m32r/(sys)/sys_config.h: NUM_INTERRUPT錾
            ݃xN^e[u쐬邽߂̊ݗv̍ő吔ݒ
            BftHg64 (0-63)B


SDJ̍\z

J̍\z@ɂẮCGNUJ\z}jAQƂ邱ƁD
{CPUʂ邽߂̃^[Qbg m32r-elf łD

TD̑

5.1 fBNgEt@C\

[jsp]
  +- [doc]
  |   +- m32r.txt  : ̃t@C
  +- [config]
      +- [m32r]
          +- cpu_config.c    : vZbTˑW[
          +- cpu_config.h    : vZbTˑW[
          +- cpu_context.h   : ^XNReLXg샋[`
          +- cpu_defs.h      : CPUˑ(/OԍȂ) `t@C
          +- cpu_support.S   : CPUˑAZuR[fBO
          +- m32rasm.inc     : AZupCN[ht@C
          +- m32r.h			 : WX^}bv (M32R )
          +- Makefile.config : CPUˑMakefile
          +- makeoffset.c    : \̃ItZbgʒu擾p
          +- start.S         : X^[gAbv / ݃nh
          +- cpu_rename.h    : V{Փˉwb_
          +- cpu_unrename.h  :  
          +- cpu_rename.def  : ՓˉΏۃV{`t@C
          +- tool_defs.h     : nˑ
          +- tool_config.h   : g[XO@\`t@C (Ή)
          +- [m3a_2131]
              +- hw_serial.h     : VA (M32R񓯊SIO)
              +- hw_serial.c     :  
              +- hw_timer.h      : ^C}   (M32R^C})
              +- m32relf.ld      : M3A-2131pJXNvg
              +- Makefile.config : VXeˑMakefile
              +- sys_config.h    : VXeˑW[
              +- sys_config.c    : VXeˑW[
              +- sys_defs.h      : VXeˑ`t@C
              +- sys_support.S   : VXeˑAZu
              +- sys_rename.h    : V{Փˉwb_
              +- sys_unrename.h  :  
              +- sys_rename.def  : ՓˉΏۃV{`t@C
          +- [m3a_za36]
			  +- ...


UDo[W

    2007N0528  Release 1.4.3
        Ecpu_support.S̃^XNON菈C
        Em3a-2131g50̃fBNgm3a_2131ɕύX
        Em3a-2131SDRAMC
        EM32Rʂ̃WX^}bvm32r.hƂăvZbTˑɒu
    2007N0422  Release 1.4.2
        Ecpu_support.SenadspłĂȂCDM3A-ZA36 
          ̃T|[gǉD
    2003N0617  Release 1.4
        EʕύXɂȂ̂ŁAɍ킹
    2003N0421  Release 1.4
        ETOPPERS/JSP rel 1.4ɂ킹ލƂs
    2002N0809  Release 1.2
        EVDECZ~i[ŕ׋ʂ𔽉fD32rbgV{[h
          shigh/low[߂ɕύX
    2002N0806  Release 1.1
        Elock_cpu/unlock_cpũCCAZuLqŔj󂳂
          WX^̃XĝYĂ̂C
        EꕔAZuꕔ̃xtCAftHgRpC
          IvV-O0-O2
        ER[ḧꕔ "V850" ̋Lq̂C
    2002N0415  Release 1.0
        EM32Rˑ [X
    2002N0310  Release 0.2
        ENbN66MHzɁDgp^C}0->5ցD
        EhLg
    2002N0301  Release 0.1
        Eŏ̃[X
