[363] | 1 |
|
---|
| 2 | ï¼ TOPPERS/JSPã«ã¼ãã« ã¦ã¼ã¶ãºããã¥ã¢ã« ï¼
|
---|
| 3 | ï¼H8S ã¿ã¼ã²ããä¾åé¨ï¼
|
---|
| 4 |
|
---|
| 5 | ï¼Release 1.4.1 対å¿ï¼æçµæ´æ°: 18-OCT-2004ï¼
|
---|
| 6 |
|
---|
| 7 | ------------------------------------------------------------------------
|
---|
| 8 | TOPPERS/JSP Kernel
|
---|
| 9 | Toyohashi Open Platform for Embedded Real-Time Systems/
|
---|
| 10 | Just Standard Profile Kernel
|
---|
| 11 |
|
---|
| 12 | Copyright (C) 2000-2004 by Embedded and Real-Time Systems Laboratory
|
---|
| 13 | Toyohashi Univ. of Technology, JAPAN
|
---|
| 14 | Copyright (C) 2001-2004 by Dep. of Computer Science and Engineering
|
---|
| 15 | Tomakomai National College of Technology, JAPAN
|
---|
| 16 | Copyright (C) 2001-2004 by Industrial Technology Institute,
|
---|
| 17 | Miyagi Prefectural Government, JAPAN
|
---|
| 18 |
|
---|
| 19 | ä¸è¨èä½æ¨©è
|
---|
| 20 | ã¯ï¼Free Software Foundation ã«ãã£ã¦å
|
---|
| 21 | ¬è¡¨ããã¦ãã
|
---|
| 22 | GNU General Public License ã® Version 2 ã«è¨è¿°ããã¦ããæ¡ä»¶ãï¼ä»¥
|
---|
| 23 | ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ã¢ï¼æ¬ã½ããã¦ã§
|
---|
| 24 | ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹å¤ã»åé
|
---|
| 25 | å¸ï¼ä»¥ä¸ï¼
|
---|
| 26 | å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
|
---|
| 27 | (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
|
---|
| 28 | 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
|
---|
| 29 | ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼
|
---|
| 30 | (2) æ¬ã½ããã¦ã§ã¢ãåå©ç¨å¯è½ãªãã¤ããªã³ã¼ãï¼ãªãã±ã¼ã¿ãã«ãªã
|
---|
| 31 | ã¸ã§ã¯ããã¡ã¤ã«ãã©ã¤ãã©ãªãªã©ï¼ã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼å©ç¨
|
---|
| 32 | ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è
|
---|
| 33 | ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼
|
---|
| 34 | ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
|
---|
| 35 | (3) æ¬ã½ããã¦ã§ã¢ãåå©ç¨ä¸å¯è½ãªãã¤ããªã³ã¼ãã®å½¢ã¾ãã¯æ©å¨ã«çµ
|
---|
| 36 | ã¿è¾¼ãã å½¢ã§å©ç¨ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºãããã¨ï¼
|
---|
| 37 | (a) å©ç¨ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è
|
---|
| 38 | ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½
|
---|
| 39 | 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
|
---|
| 40 | (b) å©ç¨ã®å½¢æ
|
---|
| 41 | ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼ä¸è¨èä½æ¨©è
|
---|
| 42 | ã«å ±åãã
|
---|
| 43 | ãã¨ï¼
|
---|
| 44 | (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
|
---|
| 45 | 害ãããï¼ä¸è¨èä½æ¨©è
|
---|
| 46 | ãå
|
---|
| 47 | 責ãããã¨ï¼
|
---|
| 48 |
|
---|
| 49 | æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
|
---|
| 50 | ã¯ï¼
|
---|
| 51 | æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ã
|
---|
| 52 | ãªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çããã
|
---|
| 53 | ããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼
|
---|
| 54 | ------------------------------------------------------------------------
|
---|
| 55 |
|
---|
| 56 | ï¼ï¼H8Sã¿ã¼ã²ããä¾åé¨ã®æ¦è¦
|
---|
| 57 |
|
---|
| 58 | 1.1 ã¿ã¼ã²ããã·ã¹ãã ã¨éçºç°å¢
|
---|
| 59 |
|
---|
| 60 | H8Sãã¡ããªã¼ã®ããã»ããµããµãã¼ããã¦ãããH8Sãã¡ããªã¼ã¯ãå
|
---|
| 61 | èµã¤ã³ã¿
|
---|
| 62 | ãã§ã¼ã¹ãªã©ã®éããªã©ã«ãããæ§ã
|
---|
| 63 | ãªããã»ããµãããããããå
|
---|
| 64 | ¨ã¦ã«ã対å¿
|
---|
| 65 | å¯è½ãªããã«è¨è¨ãè¡ã£ãã
|
---|
| 66 |
|
---|
| 67 | ä»åã®å®è£
|
---|
| 68 | ã«ããã¦ãµãã¼ãã¨ããã¿ã¼ã²ãããã¼ãã¯ã以ä¸ã§ããã
|
---|
| 69 |
|
---|
| 70 | ã»æ ªå¼ä¼ç¤¾ãã¹ã製 H8S/2350 è©ä¾¡ãã¼ã (H8S/2350æè¼)
|
---|
| 71 |
|
---|
| 72 | éçºç°å¢ã«ã¯ãGCC ãªã©ã® GNUéçºç°å¢ãç¨ãããªãã¸ã§ã¯ããã¡ã¤ã«ãã©ã¼ãã
|
---|
| 73 | ã㯠coff ãæ¨æºã¨ããã
|
---|
| 74 |
|
---|
| 75 | 1.2 ãµãã¼ãããæ©è½ã®æ¦è¦
|
---|
| 76 |
|
---|
| 77 | H8Sã¿ã¼ã²ããä¾åé¨ã«ããæ©è½ã¨ãã¦ã¯ã
|
---|
| 78 | ã»å²è¾¼ã¿ãã¹ã¯ã®å¤æ´ã»åç
|
---|
| 79 | §(chg_ipmãget_ipm)
|
---|
| 80 | ã»æ§è½è©ä¾¡ç¨ã·ã¹ãã æå»åç
|
---|
| 81 | §æ©è½(vxget_tim)
|
---|
| 82 | ããµãã¼ããã¦ãããã¾ãã
|
---|
| 83 | ã»å²è¾¼ã¿ã®ç¦æ¢ã¨è¨±å¯(dis_intãena_int)
|
---|
| 84 | ã¯ãµãã¼ããã¦ããªãã(2.2.4åã³3.2åç
|
---|
| 85 | §ã)
|
---|
| 86 |
|
---|
| 87 | 1.3 ä»ã®ã¿ã¼ã²ããã¸ã®ãã¼ãã£ã³ã°
|
---|
| 88 |
|
---|
| 89 | H8Sãã¡ããªã¼ã§ããã°ããã¼ãã£ã³ã°ã¯å®¹æã«åºæ¥ããããããªãããéçºæ©æã®
|
---|
| 90 | é¢ä¿ä¸ãH8S/2350以å¤ã§ã®ãã¹ããè¡ã£ã¦ããªãã
|
---|
| 91 | ï¼ãªãããã®éçºæ©æã®é¢ä¿ãããä¸è¨ã«ããã¦ã¯H8S/2350ã§ã®ç¶æ³ãæ³å®ãã¦
|
---|
| 92 | ãããããããéçºèªä½ã¯ãH8Sãã¡ããªã¼å
|
---|
| 93 | ¨ä½ã«æå¹ãªå
|
---|
| 94 | 容ã§ãããï¼
|
---|
| 95 |
|
---|
| 96 | 1.4 GDB ã¹ã¿ã
|
---|
| 97 |
|
---|
| 98 | ç¾å¨ã® TOPPERS/JSP ã«ã¼ãã« H8S çã¯ROMåããµãã¼ããã¦ããã
|
---|
| 99 |
|
---|
| 100 | ã¾ããGDBã¹ã¿ãã¸å¯¾å¿ãã¦ãããèå³ã®ããæ¹ã¯ãå¥éãåãåãããã ããã
|
---|
| 101 | ãªãããããã°ç°å¢ã¨ãã¦ã¯ICEãæ¨å¥¨ããã
|
---|
| 102 |
|
---|
| 103 | 1.5 ã·ãªã¢ã«ãã¼ã(SCI)
|
---|
| 104 |
|
---|
| 105 | H8Sãã¡ããªã¼ã®å
|
---|
| 106 | ¨ã¦ã®ããã»ããµããï¼ãã£ã³ãã«ä»¥ä¸ã®ã·ãªã¢ã«ãã¼ããå
|
---|
| 107 | èµ
|
---|
| 108 | ãã¦ãããããã§ããããã®ãã¡ãã«ã¼ãã«ã®ãã°åºåç¨ã«ï¼ã¤ä½¿ç¨ããã
|
---|
| 109 | ã·ãªã¢ã«ãã¼ãã®è¨å®ã¯
|
---|
| 110 | ã»8ããã
|
---|
| 111 | ã»ããªãã£ãªã
|
---|
| 112 | ã»ã¹ããããããï¼1ããã
|
---|
| 113 | ã»ãã¼ã¬ã¼ãï¼38400 bps
|
---|
| 114 | ã§ããã
|
---|
| 115 |
|
---|
| 116 | ãªãããã¼ã¬ã¼ãã«ã¤ãã¦ã¯ãBAUD_RATEãã¯ãã«ã¦å®ç¾©ãã¦ããã®ã§å¿
|
---|
| 117 | è¦ã«å¿ãã¦
|
---|
| 118 | å¤æ´ãããã¨ãã§ããã
|
---|
| 119 | (sys_config.h)
|
---|
| 120 |
|
---|
| 121 | (H8S/2350ã¯ï¼ãã£ã³ãã«ã®ã·ãªã¢ã«ãã¼ããå
|
---|
| 122 | èµãã¦ãããããã¯ãsys_config.h
|
---|
| 123 | ã«å®ç¾©ãã¦ããNUM_PORTã«ãããµãã¼ããããã¼ãæ°ã決ã¾ããç¾å¨ã®å®è£
|
---|
| 124 | ã§ã¯ã
|
---|
| 125 | ï¼ãã£ã³ãã«ããµãã¼ããã¦ããã
|
---|
| 126 | ã¾ããJSPã«ã¼ãã«ã®ãã°åºåç¨ã«ã¯ãSCI0ã使ç¨ãã¦ããã)
|
---|
| 127 |
|
---|
| 128 | ï¼ï¼H8Sã¿ã¼ã²ããä¾åé¨ã®æ©è½
|
---|
| 129 |
|
---|
| 130 | 2.1 ãã¼ã¿å
|
---|
| 131 |
|
---|
| 132 | intåããã³ unsigned intåã®ãµã¤ãºã¯ 32ãããã§ããã
|
---|
| 133 |
|
---|
| 134 | 2.2 å²è¾¼ã¿ç®¡çæ©è½ã¨å²è¾¼ã¿ãã³ãã©
|
---|
| 135 |
|
---|
| 136 | ã«ã¼ãã«ç®¡çå¤ã®å²è¾¼ã¿ã¯ NMI ã®ã¿ã§ãããCPUããã¯ç¶æ
|
---|
| 137 | ãåæåã«ã¼ãã³å
|
---|
| 138 | ã§ã¯
|
---|
| 139 | NMI 以å¤ã®å²è¾¼ã¿ã¯å
|
---|
| 140 | ¨ã¦ç¦æ¢ããããå
|
---|
| 141 | ·ä½çã«ã¯ãå²è¾¼ã¿ãã¹ã¯ãï¼ã«è¨å®ãããã
|
---|
| 142 |
|
---|
| 143 | å²è¾¼ã¿ãã³ãã©ã®ç»é²ã«é¢ãã¦ã¯ãã³ã³ãã£ã°ãã¡ã¤ã«ã«å¯¾ããéçAPIã®è¨è¿°ã¨ã
|
---|
| 144 | ãã¯ã¿ãã¼ãã«ã¸ã®è¨è¿°ã¨ã®ãäºã¤ã®è¨è¿°ãè¡ããªããã°ãªããªãã
|
---|
| 145 | ãã®ãã¯ã¿ãã¼ãã«ã¸ã®è¨è¿°ã«ã¤ãã¦ã¯ãå¾è¿°ããã
|
---|
| 146 | ï¼éçAPIã«ããè¨è¿°ã«ãããå²è¾¼ã¿ãã³ãã©ï¼å²è¾¼ã¿åºå
|
---|
| 147 | ¥å£å¦çãå«ãï¼ãçæããã
|
---|
| 148 | ä¾å¤å¦çãã¯ã¿ãã¼ãã«ã«ç»é²ãããã¨ã§ããã®å²è¾¼ã¿ãã³ãã©ãå¼ã³åºããããï¼
|
---|
| 149 |
|
---|
| 150 | 2.2.1 å²è¾¼ã¿å¶å¾¡ã¢ã¼ã
|
---|
| 151 |
|
---|
| 152 | H8Sãã¡ããªã¼ã¯ãã¢ã¼ãï¼ã¨ã¢ã¼ãï¼ã®ï¼ã¤ã®å²è¾¼ã¿å¶å¾¡ã¢ã¼ãã®é¸æãå¯è½ã§
|
---|
| 153 | ãããä»åã®å®è£
|
---|
| 154 | ã§ã¯ãã¢ã¼ãï¼ããµãã¼ããã¦ããã
|
---|
| 155 |
|
---|
| 156 | 2.2.2 ãã¯ã¿ãã¼ãã«ã®è¨è¿°æ¹æ³
|
---|
| 157 |
|
---|
| 158 | å²è¾¼ã¿ãã³ãã©ãå¼ã³åºãããã«ã¯ãä¾å¤å¦çãã¯ã¿ãã¼ãã«ã«ç»é²ããå¿
|
---|
| 159 | è¦ãããã
|
---|
| 160 | ãã®ã¨ããH8Sãã¡ããªã¼ã¯ãROMé åã«ä¾å¤å¦çãã¯ã¿ãã¼ãã«ãé
|
---|
| 161 | ç½®ãã¦ããã
|
---|
| 162 | ãã¯ã¿ãã¼ãã«ã¯å®è¡ä¸ã¯åºå®ã¨ãªãã
|
---|
| 163 |
|
---|
| 164 | ãã®ãããã³ã³ãã¤ã«åã«ãexception_vector.S ã«è¨è¼ããã¦ãããã¯ã¿ãã¼ãã«ã«ã
|
---|
| 165 | å²è¾¼ã¿ãã³ãã©ã®å
|
---|
| 166 | ¥å£å¦çã®ã©ãã«åãç´æ¥è¨è¿°ããå¿
|
---|
| 167 | è¦ãããã
|
---|
| 168 |
|
---|
| 169 | ãã®ã¨ãã«è¨è¿°ãããä¾å¤å¦çã®å
|
---|
| 170 | ¥å£å¦çã®ã©ãã«åã¯ï¼ä»¥ä¸ã®ããã«è¨å®ããã
|
---|
| 171 |
|
---|
| 172 | ã»ä¾å¤å¦çã®ï¼£è¨èªã«ã¼ãã³å ï¼ *******
|
---|
| 173 | ã»ä¾å¤å¦çã®å
|
---|
| 174 | ¥ãå£å¦çã®ã©ãã«åï¼_*******_entry
|
---|
| 175 | (ããã§ãã©ãã«åã«"_"ãä»ãã¦ããã®ã¯ãï¼£è¨èªã«ã¼ãã³foo()ã«å¯¾ãã¦
|
---|
| 176 | ã¢ã»ã³ãã«ããã¨ã_fooã¨ããã©ãã«ã対å¿ä»ããããããã§ããã)
|
---|
| 177 |
|
---|
| 178 | ä¾ï¼SCI(ã·ãªã¢ã«ã³ãã¥ãã±ã¼ã·ã§ã³ã¤ã³ã¿ã¼ãã§ã¼ã¹ï¼ããã®å²è¾¼ã¿
|
---|
| 179 | ä¾å¤å¦çã®ï¼£è¨èªã«ã¼ãã³å ï¼ serial_in_handler
|
---|
| 180 | ä¾å¤å¦çã®å
|
---|
| 181 | ¥ãå£å¦çã®ã©ãã«åï¼_serial_in_handler_entry
|
---|
| 182 |
|
---|
| 183 | ãªãããã®ã«ã¼ã«ã«å¾ã£ãã©ãã«ãçæããã_INT_ENTRYãã¯ããå®ç¾©ãã¦ããã®ã§ã
|
---|
| 184 | å©ç¨ãã¦ãã ããã
|
---|
| 185 |
|
---|
| 186 | ä¾ï¼SCI(ã·ãªã¢ã«ã³ãã¥ãã±ã¼ã·ã§ã³ã¤ã³ã¿ã¼ãã§ã¼ã¹ï¼ããã®å²è¾¼ã¿
|
---|
| 187 | ä¾å¤å¦çã®ï¼£è¨èªã«ã¼ãã³å ï¼ serial_in_handler
|
---|
| 188 | ä¾å¤å¦çã®å
|
---|
| 189 | ¥ãå£å¦çã®ã©ãã«åï¼
|
---|
| 190 | _INT_ENTRY(serial_in_handler) -> _serial_in_handler_entry ãçæ
|
---|
| 191 |
|
---|
| 192 | ãªãããã®ãã¯ãããexception_vector.S ã§å©ç¨ãã¦ããã®ã§ãåèã«ãã¦ãã ããã
|
---|
| 193 |
|
---|
| 194 | 2.2.3 å²è¾¼ã¿ãã¹ã¯ï¼å²è¾¼ã¿åªå
|
---|
| 195 | 度å¶å¾¡
|
---|
| 196 |
|
---|
| 197 | å²è¾¼ã¿ãã¹ã¯ï¼å²è¾¼ã¿åªå
|
---|
| 198 | 度å¶å¾¡ã®ããã®ãå®ç¾©ã»APIã¯ä»¥ä¸ã®éãã§ããã
|
---|
| 199 |
|
---|
| 200 | (1)IPMå
|
---|
| 201 | å²è¾¼ã¿ãã¹ã¯ã®å¤ã示ããã¼ã¿åã§ãããå²è¾¼ã¿ãã¹ã¯ã¯ãEXRï¼ã¨ã¯ã¹ãã³ãã¬ã¸
|
---|
| 202 | ã¹ã¿ï¼ã®å²è¾¼ã¿ãã¹ã¯ããã(I2-0)ã®å¤ã§ããããã®ãããEXRåã®ï¼ãã¤ãããã°
|
---|
| 203 | ããã®ã§ãUBåã§å®ç¾©ãã¦ããã
|
---|
| 204 |
|
---|
| 205 | (2)icu_set_ilv å²è¾¼ã¿ã¬ãã«ã®è¨å®
|
---|
| 206 |
|
---|
| 207 | ãCè¨èªAPIã
|
---|
| 208 | icu_set_ilv( IPR, MASK, LEVEL )
|
---|
| 209 |
|
---|
| 210 | ããã©ã¡ã¼ã¿ã
|
---|
| 211 | VP IPR è¨å®ããã¤ã³ã¿ã©ãããã©ã¤ãªãªãã£ã¬ã¸ã¹ã¿ã®
|
---|
| 212 | ã¢ãã¬ã¹ ( IPRA - IPRK ãã¯ãã§è¨å® )
|
---|
| 213 | BOOL MASK è¨å®ããã¤ã³ã¿ã©ãããã©ã¤ãªãªãã£ã¬ã¸ã¹ã¿ã®
|
---|
| 214 | è¨å®ç¯å²ï¼ä¸ä½é¨åã¾ãã¯ä¸ä½é¨åï¼ã®é¸æ
|
---|
| 215 | ( IPR_UPRãã¾ãã¯ãIPR_LOW ãã¯ãã§è¨å® )
|
---|
| 216 | INT LEVEL è¨å®ããå²è¾¼ã¿ã¬ãã« ( 0 - 7 )
|
---|
| 217 |
|
---|
| 218 | ããªã¿ã¼ã³ãã©ã¡ã¼ã¿ã
|
---|
| 219 | ãªã
|
---|
| 220 |
|
---|
| 221 | ãæ©è½ã
|
---|
| 222 | ã¤ã³ã¿ã©ãããã©ã¤ãªãªãã£ã¬ã¸ã¹ã¿ã®åä¾å¤è¦å å¥ã«ãå²è¾¼ã¿ã¬ãã«è¨å®ãè¡ãã
|
---|
| 223 |
|
---|
| 224 | ã注æã
|
---|
| 225 | ç¾å¨ã¯ããã¯ããç¨ããå®è£
|
---|
| 226 | ãè¡ã£ã¦ãããããã¨ã©ã¼å¦çã¯ç¹ã«è¡ã£ã¦ããªãã
|
---|
| 227 | (cpu_config.h)
|
---|
| 228 |
|
---|
| 229 | ãªããä»åã®å®è£
|
---|
| 230 | ã«ããã¦ãå²è¾¼ã¿ã¬ãã«ã¯ã
|
---|
| 231 | ï¼ä½ï¼ã·ãªã¢ã«ï¼ ï¼ ã·ãªã¢ã«ï¼ -> ã¿ã¤ãï¼ï¼é«ï¼
|
---|
| 232 | ã¨å®ç¾©ãã¦ããã
|
---|
| 233 | (sys_config.h)
|
---|
| 234 |
|
---|
| 235 | 2.2.4 å²è¾¼ã¿ãã¹ã¯å¤æ´ã»åç
|
---|
| 236 | §ã®ããã®ãµã¼ãã¹ã³ã¼ã«ã«ã¤ãã¦
|
---|
| 237 |
|
---|
| 238 | å²è¾¼ã¿ãã¹ã¯å¤æ´ã»åç
|
---|
| 239 | §ã®ããã®ãµã¼ãã¹ã³ã¼ã«ã¯ãã¿ã¹ã¯ã³ã³ããã¹ãã㤠CPU
|
---|
| 240 | ããã¯è§£é¤ç¶æ
|
---|
| 241 | ã®å ´åã«ã®ã¿å¼ã³åºããã¨ãã§ãããchg_ipm ã«ãã IPM ãã
|
---|
| 242 | ä½ããã®å²è¾¼ã¿ãç¦æ¢ããã¦ããç¶æ
|
---|
| 243 | ï¼ï¼ä»¥å¤ã®å¤ã®å ´åï¼ã«ããå ´åã§ãã
|
---|
| 244 | ãã£ã¹ãããã¯ç¦æ¢ããããchg_ipm ã«ããå¤æ´ãã IPM ã®å¤ã¯ããã£ã¹ããã
|
---|
| 245 | å¾ã®ã¿ã¹ã¯ã«å¼ãç¶ãããã
|
---|
| 246 |
|
---|
| 247 | chg_ipm ããµãã¼ãããããã«ãå²è¾¼ã¿ãã³ãã©ã®åºå
|
---|
| 248 | ¥å£å¦çãªã©ã«ãªã¼ãããã
|
---|
| 249 | ãçãã¦ãããããã§ãSUPPORT_CHG_IPM ã¨ãããã¯ãã«ããããããã®ãµã¼ãã¹
|
---|
| 250 | ã³ã¼ã«ããµãã¼ããããã©ãããåãæ¿ããããããã«ãã¦ããã
|
---|
| 251 | (SUPPORT_CHG_IPM ã¯ãcpu_config.h ã®ä¸ã§ #define ããã¦ããã)
|
---|
| 252 |
|
---|
| 253 | H8Sã¿ã¼ã²ããä¾åã®å²è¾¼ã¿ãã¹ã¯ã®å¤æ´ã»åç
|
---|
| 254 | §ã®ããã®ãµã¼ãã¹ã³ã¼ã«ã®ä»æ§ã¯
|
---|
| 255 | 次ã®éãã
|
---|
| 256 |
|
---|
| 257 | (1) chg_ipm å²è¾¼ã¿ãã¹ã¯ã®å¤æ´
|
---|
| 258 |
|
---|
| 259 | ãCè¨èªAPIã
|
---|
| 260 | ER ercd = chg_ipm(IPM ipm);
|
---|
| 261 |
|
---|
| 262 | ããã©ã¡ã¼ã¿ã
|
---|
| 263 | IPM ipm è¨å®ãã¹ã IPM ã®å¤
|
---|
| 264 |
|
---|
| 265 | ããªã¿ã¼ã³ãã©ã¡ã¼ã¿ã
|
---|
| 266 | ER ercd ã¨ã©ã¼ã³ã¼ã
|
---|
| 267 |
|
---|
| 268 | ãã¨ã©ã¼ã³ã¼ãã
|
---|
| 269 | E_CTX ã³ã³ããã¹ãã¨ã©ã¼
|
---|
| 270 | E_PAR ãã©ã¡ã¼ã¿ã¨ã©ã¼(ipm ãä¸æ£)
|
---|
| 271 |
|
---|
| 272 | ãæ©è½ã
|
---|
| 273 |
|
---|
| 274 | å²è¾¼ã¿ãã¹ã¯ãã ipm ã§æå®ããå¤ã«è¨å®ãããæå®ããå¤ãã0ã6 ã«å
|
---|
| 275 | ¥ã£ã¦
|
---|
| 276 | ããªãå ´åãE_PARã¨ã©ã¼ãè¿ããå²è¾¼ã¿ãã¹ã¯ã0以å¤ï¼1ãMAX_IPM-1ï¼ã«è¨å®
|
---|
| 277 | ããå ´åã§ãããã£ã¹ãããã¯ç¦æ¢ãããªããã¾ããè¨å®ããå²è¾¼ã¿ãã¹ã¯ã®å¤ã¯ã
|
---|
| 278 | ãã£ã¹ãããç¦æ¢å¾ãå¼ãç¶ãããã
|
---|
| 279 |
|
---|
| 280 | ãã®ãµã¼ãã¹ã³ã¼ã«ã¯ãã¿ã¹ã¯ã³ã³ããã¹ã㧠CPUããã¯è§£é¤ç¶æ
|
---|
| 281 | ã®æã®ã¿å¼ã³
|
---|
| 282 | åºããã¨ãã§ãããéã¿ã¹ã¯ã³ã³ããã¹ãã CPUããã¯ç¶æ
|
---|
| 283 | ã§å¼ã³åºããå ´åã«ã¯ã
|
---|
| 284 | E_CTXã¨ã©ã¼ã¨ãªãã
|
---|
| 285 |
|
---|
| 286 | ãªãããã®ãµã¼ãã¹ã³ã¼ã«ãç¨ãã¦ãIPMãMAX_IPMï¼å
|
---|
| 287 | ¨ã¦ã®å²è¾¼ã¿ãç¦æ¢ï¼ã«è¨å®
|
---|
| 288 | ãããã¨ã¯ã§ããªããIPMãMAX_IPMã«ãããå ´åã«ã¯ãloc_cpuã使ç¨ãã¹ãã§ããã
|
---|
| 289 |
|
---|
| 290 | (2) get_ipm å²è¾¼ã¿ãã¹ã¯ã®åç
|
---|
| 291 | §
|
---|
| 292 |
|
---|
| 293 | ãCè¨èªAPIã
|
---|
| 294 | ER ercd = get_ipm(IPM *p_ipm);
|
---|
| 295 |
|
---|
| 296 | ããã©ã¡ã¼ã¿ã
|
---|
| 297 | ãªã
|
---|
| 298 |
|
---|
| 299 | ããªã¿ã¼ã³ãã©ã¡ã¼ã¿ã
|
---|
| 300 | ER ercd ã¨ã©ã¼ã³ã¼ã
|
---|
| 301 | IPM ipm ç¾å¨ã® IPM ã®å¤
|
---|
| 302 |
|
---|
| 303 | ãã¨ã©ã¼ã³ã¼ãã
|
---|
| 304 | E_CTX ã³ã³ããã¹ãã¨ã©ã¼
|
---|
| 305 |
|
---|
| 306 | ãæ©è½ã
|
---|
| 307 |
|
---|
| 308 | ç¾å¨ã®å²è¾¼ã¿ãã¹ã¯ã®å¤ãèªã¿åºããipm ã«è¿ãã
|
---|
| 309 |
|
---|
| 310 | ãã®ãµã¼ãã¹ã³ã¼ã«ã¯ãã¿ã¹ã¯ã³ã³ããã¹ã㧠CPUããã¯è§£é¤ç¶æ
|
---|
| 311 | ã®æã®ã¿å¼
|
---|
| 312 | ã³åºããã¨ãã§ãããéã¿ã¹ã¯ã³ã³ããã¹ãã CPUããã¯ç¶æ
|
---|
| 313 | ã§å¼ã³åºããå ´
|
---|
| 314 | åã«ã¯ãE_CTXã¨ã©ã¼ã¨ãªãã
|
---|
| 315 |
|
---|
| 316 | 2.3 CPUä¾å¤ç®¡çæ©è½ã¨CPUä¾å¤ãã³ãã©
|
---|
| 317 |
|
---|
| 318 | DEF_EXC ã§æå®ãã CPUä¾å¤ãã³ãã©çªå·ï¼excnoï¼ã¯ãH8Sãã¡ããªã¼ã«ããã
|
---|
| 319 | ãã¯ã¿ãã¼ãã«ã®ãã¯ã¿çªå·ã表ãããã®ãã¼ã¿åï¼EXCNOï¼ã¯ unsigned int å
|
---|
| 320 | ã«å®ç¾©ããã¦ããã
|
---|
| 321 | DEF_EXC ã§ããã¯ã¿çªå·ã¨ãã¦æå¹ã§ãªãå¤ããCPUä¾å¤ã«å¯¾å¿ããªãçªå·ãæå®
|
---|
| 322 | ããå ´åã®åä½ã¯ä¿è¨¼ãããªãã
|
---|
| 323 |
|
---|
| 324 | (1)å¤æ°p_excinf
|
---|
| 325 | CPUä¾å¤ãã³ãã©ã«æ¸¡ãããp_excinfã¯ãCPUä¾å¤çºçæã®ã³ã³ããã¹ããä¿å
|
---|
| 326 | ããã¹ã¿ãã¯ã¸ã®ãã¤ã³ã¿ã渡ããããã¹ã¿ãã¯ã®æ§é ã以ä¸ã«ç¤ºãã
|
---|
| 327 |
|
---|
| 328 | ----------------------
|
---|
| 329 | | er6 (32ããã) | <-- p_excinf
|
---|
| 330 | ----------------------
|
---|
| 331 | | er5 (32ããã) |
|
---|
| 332 | ----------------------
|
---|
| 333 | | er4 (32ããã) |
|
---|
| 334 | ----------------------
|
---|
| 335 | | er3 (32ããã) |
|
---|
| 336 | ----------------------
|
---|
| 337 | | er2 (32ããã) |
|
---|
| 338 | ----------------------
|
---|
| 339 | | er1 (32ããã) |
|
---|
| 340 | ----------------------
|
---|
| 341 | | er0 (32ããã) |
|
---|
| 342 | ----------------------
|
---|
| 343 | | EXR ( 8ããã) |
|
---|
| 344 | ----------------------
|
---|
| 345 | | äºç´( 8ããã) |
|
---|
| 346 | ----------------------
|
---|
| 347 | | CCR ( 8ããã) |
|
---|
| 348 | ----------------------
|
---|
| 349 | | PC (24ããã) |
|
---|
| 350 | ----------------------
|
---|
| 351 |
|
---|
| 352 | EXR : ã¨ã¯ã¹ãã³ãã¬ã¸ã¹ã¿
|
---|
| 353 | CCR : ã³ã³ãã£ã·ã§ã³ã³ã¼ãã¬ã¸ã¹ã¿
|
---|
| 354 | PC : ããã°ã©ã ã«ã¦ã³ã¿
|
---|
| 355 |
|
---|
| 356 | ã¾ããCPUä¾å¤çºçæã®PCã®å¤ã¯ã¤ã³ã¯ãªã¡ã³ããããããã®ãããCPUä¾å¤ãã³ãã©
|
---|
| 357 | ãã復帰ãè¡ãã¨ãCPUä¾å¤ãçºçããå½ä»¤ã®æ¬¡ã®å½ä»¤ããå®è¡ãåéããã
|
---|
| 358 |
|
---|
| 359 | 2.4 å²è¾¼ã¿çºçæã®ã¹ã¿ãã¯æ¶è²»éã«ã¤ãã¦
|
---|
| 360 |
|
---|
| 361 | åã¿ã¹ã¯ã¹ã¿ãã¯ã¯ãã¿ã¹ã¯èªèº«ã使ç¨ããåã«å ãã¦ãæ大 ï¼ï¼ ãã¤ãä½åã«
|
---|
| 362 | ç¨æããå¿
|
---|
| 363 | è¦ãããã
|
---|
| 364 |
|
---|
| 365 | JSPã«ã¼ãã«ã¯ãã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®ã¿ã¹ã¯ã¹ã¿ãã¯ã¨ãéã¿ã¹ã¯ã³ã³ããã¹ã
|
---|
| 366 | ç¨ã®ã¹ã¿ãã¯ï¼ä»¥ä¸ãå²è¾¼ã¿ã¹ã¿ãã¯ï¼ã¨ãç¨æãã¦ããããã®ãããéã¿ã¹ã¯ã³ã³
|
---|
| 367 | ããã¹ãã¯å²è¾¼ã¿ã¹ã¿ãã¯ã§å®è¡ãããã
|
---|
| 368 |
|
---|
| 369 | H8Sãã¡ããªã¼ã«ããã¦ãå²è¾¼ã¿ã¢ã¼ãï¼ã§ã¯ãå²è¾¼ã¿åä»æã«å²è¾¼ã¿ç¦æ¢ã«ãªã
|
---|
| 370 | æ©æ§ããã¼ãã¦ã§ã¢ã§ç¨æããã¦ããªãããã®ããã«ãå²è¾¼ã¿ã®å
|
---|
| 371 | ¥å£å¦çã§ã½ãã
|
---|
| 372 | ã¦ã§ã¢ã«ãã£ã¦å²è¾¼ã¿ç¦æ¢ã«ããå¿
|
---|
| 373 | è¦ããããå²è¾¼ã¿å
|
---|
| 374 | ¥å£å¦çã§ã¯ãå²è¾¼ã¿ç¦æ¢ã«
|
---|
| 375 | 移è¡ããããã®ä½æ¥ç¨ã«ãå²è¾¼ã¿è¨±å¯ã®ç¶æ
|
---|
| 376 | ã®ã¾ã¾ãã¿ã¹ã¯ã¹ã¿ãã¯ã« er0ãer1
|
---|
| 377 | ãéé¿ãããã
|
---|
| 378 | ï¼ä¸è¨ã¬ã¸ã¹ã¿ã¯å²è¾¼ã¿åä»æã«ãã¼ãã¦ã§ã¢ãèªåçã«éé¿ãè¡ãã
|
---|
| 379 | PC : ããã°ã©ã ã«ã¦ã³ã¿ï¼ï¼ãã¤ãï¼
|
---|
| 380 | CCR : ã³ã³ãã£ã·ã§ã³ã³ã¼ãã¬ã¸ã¹ã¿ï¼ï¼ãã¤ãï¼
|
---|
| 381 | EXR : ã¨ã¯ã¹ãã³ãã¬ã¸ã¹ã¿ï¼ï¼ãã¤ãï¼ï¼
|
---|
| 382 |
|
---|
| 383 | ãã¦ãå¤éå²è¾¼ã¿ããå²è¾¼ã¿ã¹ã¿ãã¯ã«åãæ¿ããåã«çºçããå ´åã«ã¯ãåæ§ã®
|
---|
| 384 | ã¹ã¿ãã¯ãã¬ã¼ã ãã¿ã¹ã¯ã¹ã¿ãã¯ä¸ã«çæãããã
|
---|
| 385 | ãã®ãããææªã®ã¿ã¤ãã³ã°ã§å²è¾¼ã¿ãçºçããã¨ãH8S ã¯å²è¾¼ã¿ã¬ãã«ãï¼ã¬ãã«
|
---|
| 386 | ããã®ã§ãã¿ã¹ã¯ã¹ã¿ãã¯ã«ããã¦ãï¼ï¼ãã¤ãæ¶è²»ããããã¨ã«ãªãã
|
---|
| 387 | ï¼ï¼ã¹ã¿ãã¯ãã¬ã¼ã ã®å¤§ãããã¢ããã³ã¹ã¢ã¼ãã®å ´åãï¼
|
---|
| 388 | er1ï¼ï¼ãã¤ãï¼ï¼ er0ï¼ï¼ãã¤ãï¼ï¼ EXRï¼ï¼ãã¤ãï¼ï¼ãªã¶ã¼ãï¼ï¼ãã¤ãï¼
|
---|
| 389 | ï¼ CCRï¼ï¼ãã¤ãï¼ï¼ PCï¼ï¼ãã¤ãï¼= ï¼ï¼ ãã¤ã
|
---|
| 390 | æ大ã¿ã¹ã¯ã¹ã¿ãã¯æ¶è²»éï¼
|
---|
| 391 | ï¼ï¼ãã¤ãÃï¼ã»ãã = ï¼ï¼ãã¤ãï¼
|
---|
| 392 |
|
---|
| 393 | 2.5 ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«
|
---|
| 394 |
|
---|
| 395 | H8Sãã¡ããªã¼ã§ã¯ããã¯ã¿ãã¼ãã«ã«ããã¯ã¼ãªã³ãªã»ãããããã¥ã¢ã«ãªã»ãã
|
---|
| 396 | 並ã³ã« NMI(Non Maskable Interrupt)ç¨ã®ãã¯ã¿ã¢ãã¬ã¹ãåãã¦ããããããã®
|
---|
| 397 | ã¢ãã¬ã¹ããã®ã¸ã£ã³ãå
|
---|
| 398 | ãã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«ã¨ãªã£ã¦ããã
|
---|
| 399 |
|
---|
| 400 | ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«(start.S)ã§ã¯ã次ã®åæåå¦çãè¡ãã
|
---|
| 401 |
|
---|
| 402 | (A) ã¹ã¿ãã¯ãã¤ã³ã¿ã®è¨å®
|
---|
| 403 | ã¹ã¿ãã¯ãã¤ã³ã¿ sp ããSTACKTOP ã®å¤ã«è¨å®ããããã®å¤ã¯ãsys_config.h ã«
|
---|
| 404 | å®ç¾©ããã¦ããã
|
---|
| 405 |
|
---|
| 406 | (B) hardware_init_hookã®å¼ã³åºã
|
---|
| 407 |
|
---|
| 408 | hardware_init_hook ã 0 ã§ãªããã°ãhardware_init_hook ãå¼ã³åºãã
|
---|
| 409 | hardware_init_hook ã¯ã«ã¼ãã«ãèµ·åããåã«ããã¼ã²ããä¾åã®ãã¼ãã¦ã§ã¢ç
|
---|
| 410 | ãªåæåãè¡ãããã«ç¨æããã¦ããã
|
---|
| 411 | æ¬å®è£
|
---|
| 412 | ã§ã¯ãhardware_init_hook å
|
---|
| 413 | ã§ã¯ã
|
---|
| 414 | ã»SYSCR ã®è¨å®ï¼å²è¾¼ã¿å¶å¾¡ã¢ã¼ããå
|
---|
| 415 | èµRAMã®è¨å®ï¼
|
---|
| 416 | ã»I/O ãã¼ãã®åæå
|
---|
| 417 | ã»ãã¹ã³ã³ããã¼ã©ã®è¨å®ï¼ABWCRãASTCRãWCRLãBCRHã®è¨å®ï¼
|
---|
| 418 | ãªã©ã®å¦çãè¡ããè¨è¿°å ´æã¯ãsys_support.S ãæ¨æºã¨ããã
|
---|
| 419 |
|
---|
| 420 | hardware_init_hook ãã©ãã§ãå®ç¾©ããã¦ããªãå ´åã«ã¯ããã®ã·ã³ãã«ã0ã«
|
---|
| 421 | å®ç¾©ãã(ãªã³ã«ã¹ã¯ãªããå
|
---|
| 422 | ã«è¨è¿°ãã)ã
|
---|
| 423 |
|
---|
| 424 | ãªããhardware_init_hook ãæ°ãã«è¨è¿°ããå ´åã«ã¯ãå¼ã³åºãå
|
---|
| 425 | ã¸ã®ãªã¿ã¼ã³ã¯
|
---|
| 426 | rts å½ä»¤ã§ãªããjmp å½ä»¤ã§ start_1 ã«æ»ããã¨ã
|
---|
| 427 |
|
---|
| 428 | (C) bssã»ã¯ã·ã§ã³ãdataã»ã¯ã·ã§ã³ã®åæå
|
---|
| 429 |
|
---|
| 430 | bss ã»ã¯ã·ã§ã³ã®å
|
---|
| 431 | ¨é åãã¼ãã¯ãªã¢ãããdata ã»ã¯ã·ã§ã³ãåæåãããROM å
|
---|
| 432 | 対å¿ã®ããã«ãROM ãã RAM ã¸ã¨ãã³ãã¼ãè¡ãã
|
---|
| 433 |
|
---|
| 434 | (D) software_init_hookã®å¼ã³åºã
|
---|
| 435 |
|
---|
| 436 | software_init_hook ã 0 ã§ãªããã°ãsoftware_init_hook ãå¼ã³åºãã
|
---|
| 437 | software_init_hook ã¯ãã«ã¼ãã«ãèµ·åãããåã«è¡ãå¿
|
---|
| 438 | è¦ãããã½ããã¦ã§ã¢
|
---|
| 439 | ç°å¢(å
|
---|
| 440 | ·ä½çã«ã¯ãã©ã¤ãã©ãª)ä¾åã®åæåãè¡ãããã«ç¨æãã¦ããã
|
---|
| 441 |
|
---|
| 442 | software_init_hook ãã©ãã§ãå®ç¾©ããã¦ããªãå ´åããªã³ã«ã§ãã®ã·ã³ãã«ã
|
---|
| 443 | 0 ã«å®ç¾©ãã(ãªã³ã«ã¹ã¯ãªããå
|
---|
| 444 | ã«è¨è¿°ãã)ã
|
---|
| 445 |
|
---|
| 446 | (E) ã«ã¼ãã«ã®èµ·å
|
---|
| 447 |
|
---|
| 448 | kernel_start ã¸åå²ããã«ã¼ãã«ãèµ·åãããkernel_start ãããªã¿ã¼ã³ãã¦
|
---|
| 449 | ãããã¨ã¯æ³å®ãã¦ããªãã
|
---|
| 450 |
|
---|
| 451 | 2.6 MAC ã¬ã¸ã¹ã¿ (H8S/2600ã³ã¢å
|
---|
| 452 | èµããã»ããµã®ã¿)
|
---|
| 453 |
|
---|
| 454 | â»ãã®é¨åã®ãµãã¼ãååè
|
---|
| 455 | ãæ±ãã¦ããã¾ãã
|
---|
| 456 |
|
---|
| 457 | H8Sãã¡ããªã¼ã«ã¯ãCPUã³ã¢ã« H8S/2600 㨠H8S/2000 ã®ï¼ç¨®é¡ãåå¨ããããã®
|
---|
| 458 | ãã¡ãH8S/2600 ã¯ãç©åã¬ã¸ã¹ã¿ã¨ã㦠MAC ã¬ã¸ã¹ã¿ããµãã¼ããã¦ããã
|
---|
| 459 |
|
---|
| 460 | ããã§ã使ç¨ããããã»ããµããH8S/2600 ãæã¤å ´åã¯ã
|
---|
| 461 | ã»cpu_defs.h ã«ãã㦠H8S_2600 ãã¯ããå®ç¾©ããã
|
---|
| 462 | (ãã®ãã¯ãã«ãã£ã¦ãcpu_support.S ã«ããã¦ãMAC ã¬ã¸ã¹ã¿ã®ãµãã¼ãã
|
---|
| 463 | è¡ãããã)
|
---|
| 464 | ã»$(CPU)/Makefile.config å
|
---|
| 465 | ãé©åã«ã³ã¡ã³ãã¤ã³ããã
|
---|
| 466 | (ããã«ãããH8S/2600 ç¨ã®ã³ã³ãã¤ã«ãªãã·ã§ã³ãä»å ãããã)
|
---|
| 467 | ãè¡ããã¨ã«ãããMAC ã¬ã¸ã¹ã¿ã«å¯¾å¿ãããã¨ãã§ããã
|
---|
| 468 |
|
---|
| 469 | ãµãã¼ãç¶æ³ã¯ã以ä¸ã®éãã§ããã
|
---|
| 470 |
|
---|
| 471 | ã»ï¼£è¨èªã§æ¸ãããã¿ã¹ã¯å
|
---|
| 472 | ã§ããã® MAC ã¬ã¸ã¹ã¿ã使ç¨ããå ´åã«ãèªããã£ã¹
|
---|
| 473 | ãããã£ãå¼ã³åºãã¦ãã£ã¹ãããããå ´åã¯ãé¢æ°å¼ã³åºãã«ãªãã
|
---|
| 474 | ãã®ãããå¼ã³åºãåå¾ã«ã¾ããã£ãã¿ã¹ã¯éã§ãMAC ã¬ã¸ã¹ã¿ã使ããã¨ã¯
|
---|
| 475 | ãªãããä¿åãã¦ããªãã
|
---|
| 476 | ï¼ãã®ãããã¿ã¹ã¯å
|
---|
| 477 | ã§ã¢ã»ã³ãã©ã®ã³ã¼ãã使ç¨ããå ´åããã®ã«ã¼ã«ã«å¾ã
|
---|
| 478 | å¿
|
---|
| 479 | è¦ããããï¼
|
---|
| 480 | ã»å²è¾¼ã¿ããã®ãã£ã¹ãããï¼ååçãã£ã¹ãããï¼ã§ã¯ä¿åãã¦ããã
|
---|
| 481 |
|
---|
| 482 | â»å²è¾¼ã¿çºçæã® MAC ã¬ã¸ã¹ã¿ã®ä¿åã«ã¤ãã¦ã¯ãå®è¡ç°å¢ãç¡ããããä¿åã®
|
---|
| 483 | æç¡ã確èªã§ãã¦ããªãã
|
---|
| 484 |
|
---|
| 485 | ï¼ï¼ã·ã¹ãã ä¾åé¨ã®æ©è½
|
---|
| 486 |
|
---|
| 487 | 3.1 ã·ã¹ãã ã¯ããã¯ãã©ã¤ã
|
---|
| 488 |
|
---|
| 489 | ã·ã¹ãã ã¯ããã¯ãã©ã¤ãã isig_tim ãå¼ã³åºãå¨æã¯ãsys_defs.h ä¸ã®
|
---|
| 490 | TIC_NUME 㨠TIC_DENO ã§å®ç¾©ããã¦ãã(ããã©ã«ãã§ã¯ 1ããªç§å¨æ)ããã®å®
|
---|
| 491 | 義ãå¤æ´ãããã¨ã§ãisig_tim ãå¼ã³åºãå¨æãå¤æ´ãããã¨ãã§ãããä½ãã
|
---|
| 492 | ã¿ã¤ãã®ç²¾åº¦ã1μç§ã§ããããã«ã1μç§åä½ã§ç«¯æ°ã«ãªãå¤ãè¨å®ããå ´åã«ã¯ã
|
---|
| 493 | isig_timã®å¼åºãå¨æã«èª¤å·®ãçãããã¨ã«ãªãã
|
---|
| 494 |
|
---|
| 495 | ããã©ã«ãã§ã¯ãä¸è¨ã®ã¿ã¤ããå©ç¨ãã¦ããã
|
---|
| 496 | (a) H8S/2350
|
---|
| 497 | H8Så
|
---|
| 498 | èµã¿ã¤ã(TPU)ã®ãã£ãã«0
|
---|
| 499 |
|
---|
| 500 | 3.2 æ§è½è©ä¾¡ç¨ã·ã¹ãã æå»åç
|
---|
| 501 | §æ©è½
|
---|
| 502 |
|
---|
| 503 | H8Sä¾åé¨ã§ã¯ãæ§è½è©ä¾¡ç¨ã·ã¹ãã åç
|
---|
| 504 | §æ©è½(vxget_tim)ããµãã¼ããã¦ããã
|
---|
| 505 | 精度ã¯1μç§ã§ãSYSUTIMåã¯UWå(32ããã符å·ãªãæ´æ°å)ã§ããã
|
---|
| 506 |
|
---|
| 507 | æ§è½è©ä¾¡ç¨ã·ã¹ãã æå»ã®ç²¾åº¦ã¯ä¾çµ¦ã¯ããã¯åä½ã§ããããã¿ã¤ãã®ç¾å¨å¤ã
|
---|
| 508 | èªã¿åºãããã«ä¸æçã«ã¿ã¤ããåæ¢ãããå¿
|
---|
| 509 | è¦ããããããvxget_tim ãå¼ã¶
|
---|
| 510 | 度ã«ã·ã¹ãã ã¯ããã¯ãå°ãã¥ã¤é
|
---|
| 511 | ãããã¨ã«ãªããããã§ãSUPPORT_VXGET_TIM
|
---|
| 512 | ã¨ãããã¯ãã«ããããããã®ãµã¼ãã¹ã³ã¼ã«ããµãã¼ããããã©ãããåãæ¿
|
---|
| 513 | ããããããã«ãã¦ããã
|
---|
| 514 | (SUPPORT_VXGET_TIM ã¯ãsys_config.h ã®ä¸ã§ #define ããã¦ããã)
|
---|
| 515 |
|
---|
| 516 | 3.3 ã·ãªã¢ã«ã¤ã³ã¿ã¼ãã§ã¼ã¹ãã©ã¤ã
|
---|
| 517 |
|
---|
| 518 | ä»åã®å®è£
|
---|
| 519 | ã§ã¯ãã¿ã¼ã²ããããã»ããµã®é¢ä¿ãããï¼ãã£ã³ãã«ã¾ã§ã®å¯¾å¿ã
|
---|
| 520 | è¡ã£ã¦ãããããããä»ã®H8Sãã¡ããªã¼ã«ã¯ãï¼ãã£ã³ãã«ä»¥ä¸ã®ã·ãªã¢ã«ã¤ã³ã¿
|
---|
| 521 | ãã§ã¼ã¹ãå
|
---|
| 522 | èµãã¦ãããã®ãããããã®ããã®ãå¤æ´ã¯å®¹æã«å¯è½ã§ããã
|
---|
| 523 | 詳ããã¯ãã½ã¼ã¹ã³ã¼ããåç
|
---|
| 524 | §ã®ãã¨ã
|
---|
| 525 |
|
---|
| 526 | ãªããã·ãªã¢ã«ã¤ã³ã¿ã¼ãã§ã¼ã¹ãã©ã¤ãã¯ãã«ã¼ãã«ã®ãã°åºåç¨ã«ãH8Så
|
---|
| 527 | èµ
|
---|
| 528 | SCIãã£ãã«0ã使ç¨ãã¦ããã
|
---|
| 529 |
|
---|
| 530 | 3.4 ã¡ã¢ãªããã
|
---|
| 531 |
|
---|
| 532 | ã¡ã¢ãªãããã¯ä»¥ä¸ã®ããã«è¨å®ãã¦ããã
|
---|
| 533 | ã»ROM åæ
|
---|
| 534 | 0x000000 - 0x01ffff : ã³ã¼ãé å(128kB)
|
---|
| 535 | 0x200000 - : ãã¼ã¿é å(128kB)
|
---|
| 536 | 0x21ffff : éã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®ã¹ã¿ãã¯é å
|
---|
| 537 |
|
---|
| 538 | ã»GDB ã¹ã¿ãå©ç¨æ
|
---|
| 539 | 0x200000 - 0x20ffff : ã³ã¼ãé å(64kB)
|
---|
| 540 | 0x210000 - : ãã¼ã¿é å(64kB-8kB(for GDB_STUB))
|
---|
| 541 | 0x21efff : éã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®ã¹ã¿ãã¯é å
|
---|
| 542 |
|
---|
| 543 | å
|
---|
| 544 | èµ RAM ã¯ãç¾å¨ä½¿ç¨ãã¦ããªããã使ç¨ããå ´åã«ã¯ãhardware_init_hook ã®
|
---|
| 545 | ä¸ã§å
|
---|
| 546 | èµ RAM ãæå¹ã«ããå¿
|
---|
| 547 | è¦ãããã(2.3 (2)ãåç
|
---|
| 548 | §ã)
|
---|
| 549 |
|
---|
| 550 | ï¼ï¼éçºç°å¢ã®æ§ç¯
|
---|
| 551 |
|
---|
| 552 | éçºç°å¢ã®æ§ç¯æ¹æ³ã«ã¤ãã¦ã¯ãGNUéçºç°å¢æ§ç¯ããã¥ã¢ã«ãåç
|
---|
| 553 | §ãããã¨ã
|
---|
| 554 | ãªããã¿ã¼ã²ããç°å¢ <TARGET> ã®å¤ã«ã¤ãã¦ã¯ã以ä¸ãåèã®ãã¨ã
|
---|
| 555 | éçºã«ã¯ Windows2000SP4 ä¸ã§ Cygwin ãç¨ããã
|
---|
| 556 |
|
---|
| 557 | åä½ç¢ºèªã¯ãä¸è¨ã®ãã¼ã«ã«ã¦ç¢ºèªãã¦ããããã®ãã¼ã«ãããã©ã«ãã¨ããã
|
---|
| 558 |
|
---|
| 559 | ã»GNUããé
|
---|
| 560 | å¸ããã¦ãããªãªã¸ãã«ã®GCCãªã©ãã½ã¼ã¹ããæ§ç¯ãããã¼ã«
|
---|
| 561 | åä½ç¢ºèªãè¡ã£ãã¨ãã®ãã¼ã¸ã§ã³ã¯ä»¥ä¸ã®éãã§ããã
|
---|
| 562 | BINUTILS : 2.14
|
---|
| 563 | GCC-CORE : 3.3.2
|
---|
| 564 | NEWLIB : 1.11.0
|
---|
| 565 | ï¼ãã®å ´åã®ã¿ã¼ã²ããç°å¢ <TARGET> ã«ã¯ãh8300-hms- ãç¨ãããï¼
|
---|
| 566 |
|
---|
| 567 | ã¾ããWindowsä¸ã§Cygwinãç¨ãã¦éçºããå ´åã¯ãbinutils ã® configure ã®ãªã
|
---|
| 568 | ã·ã§ã³ã« --disable-nls ãæå®ãããã¨ã
|
---|
| 569 |
|
---|
| 570 | ï¼ï¼å¶éäºé
|
---|
| 571 |
|
---|
| 572 |
|
---|
| 573 | ã»å²è¾¼ã¿å¶å¾¡ã¢ã¼ãï¼ã¯ãµãã¼ããã¦ããªãã
|
---|
| 574 |
|
---|
| 575 | ã»ãã¼ãã«ã¢ã¼ãã§ã®å®è¡ã¯ããã¹ããè¡ã£ã¦ããªãã
|
---|
| 576 |
|
---|
| 577 | ã»MACã¬ã¸ã¹ã¿ã®ãµãã¼ãã¯ããã¹ããè¡ã£ã¦ããªãã
|
---|
| 578 |
|
---|
| 579 | ã»ã¹ã¿ã¼ãã¢ããã«ã¼ãã³ããªã³ã¯ã¹ã¯ãªããã¯ãC++ ã«å¯¾å¿ãã¦ããªãã
|
---|
| 580 |
|
---|
| 581 | ã»SYSUTIM åã UW å(32ããã符å·ãªãæ´æ°å)ã¨ãã¦å®ç¾©ãã¦ããããã«ãæ§è½
|
---|
| 582 | è©ä¾¡ç¨ã·ã¹ãã åç
|
---|
| 583 | §æ©è½(vxget_tim)ã«ãã測å®ã§ããç¯å²ããå¤æ©ç¨®ããçãã
|
---|
| 584 |
|
---|
| 585 | ã»ä»ã® gcc ã®ãã¼ã¸ã§ã³ï¼ç¹ã«ãgcc 3.4.xï¼ã§ã®ã³ã³ãã¤ã«ã¯ä¿è¨¼ããªãã
|
---|
| 586 |
|
---|
| 587 | ï¼ï¼ãã®ä»
|
---|
| 588 |
|
---|
| 589 | 6.1 ãã£ã¬ã¯ããªã»ãã¡ã¤ã«æ§æ
|
---|
| 590 |
|
---|
| 591 | H8S ã¿ã¼ã²ããä¾åé¨ã®åãã¡ã¤ã«ã®æ¦è¦ã¯æ¬¡ã®éãã
|
---|
| 592 |
|
---|
| 593 | config/h8s/
|
---|
| 594 | H8Så
|
---|
| 595 | ±éé¨
|
---|
| 596 |
|
---|
| 597 | Makefile.config Makefileã®H8Sã¿ã¼ã²ããä¾åã®å®ç¾©
|
---|
| 598 | cpu_defs.h ããã»ããµä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 599 | cpu_config.h ããã»ããµä¾åé¨ã®æ§æå®ç¾©
|
---|
| 600 | cpu_config.c ããã»ããµä¾åé¨ã®é¢æ°
|
---|
| 601 | cpu_support.S ããã»ããµä¾åé¨ã®ãµãã«ã¼ãã³
|
---|
| 602 | cpu_context.h ã³ã³ããã¹ãæä½
|
---|
| 603 | cpu_rename.def ã«ã¼ãã«ã®å
|
---|
| 604 | é¨èå¥åã®ãªãã¼ã å®ç¾©
|
---|
| 605 | cpu_rename.h ã«ã¼ãã«ã®å
|
---|
| 606 | é¨èå¥åã®ãªãã¼ã
|
---|
| 607 | cpu_unrename.h ã«ã¼ãã«ã®å
|
---|
| 608 | é¨èå¥åã®ãªãã¼ã 解é¤
|
---|
| 609 | tool_defs.h éçºç°å¢ä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 610 | ï¼GNUéçºç°å¢ç¨ï¼
|
---|
| 611 | tool_config.h éçºç°å¢ä¾åé¨ã®æ§æå®ç¾©ï¼GNUéçºç°å¢ç¨ï¼
|
---|
| 612 | makeoffset.c offset.h çæãµãã¼ãããã°ã©ã
|
---|
| 613 | cpu_insn.h ä½ã¬ãã«ã®ããã»ããµæä½ã«ã¼ãã³
|
---|
| 614 | start.S ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«
|
---|
| 615 | h8s.h H8Sã®ã¬ã¸ã¹ã¿åãªã©ã®å®ç¾©
|
---|
| 616 | h8s_sil.h H8Sãã¡ããªã¼ç¨ã·ã¹ãã ã¤ã³ã¿ãã§ã¼ã¹
|
---|
| 617 | ã¬ã¤ã¤ã¼å®ç¾©
|
---|
| 618 | util.h ãããçªå·ãªã©ã®å®ç¾©
|
---|
| 619 | hw_serial.h SIOãã©ã¤ã
|
---|
| 620 | hw_serial.cfg SIOãã©ã¤ãã®ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«
|
---|
| 621 | h8s_sci.h H8Sã·ãªã¼ãºå
|
---|
| 622 | èµã·ãªã¢ã«ãã¼ãç¨
|
---|
| 623 | ç°¡æSIOãã©ã¤ãé¢é£ã®å®ç¾©
|
---|
| 624 | h8s_sci.c H8Sã·ãªã¼ãºå
|
---|
| 625 | èµã·ãªã¢ã«ãã¼ãç¨
|
---|
| 626 | ç°¡æSIOãã©ã¤ã
|
---|
| 627 | hw_timer.h ã¿ã¤ãæä½ã«ã¼ãã³
|
---|
| 628 | h8s_tpu.h H8Sã·ãªã¼ãºå
|
---|
| 629 | èµã¿ã¤ãç¨
|
---|
| 630 | ã¿ã¤ããã©ã¤ãé¢é£ã®å®ç¾©
|
---|
| 631 |
|
---|
| 632 | config/h8s/h8s2350/
|
---|
| 633 | H8S/2350対å¿ã·ã¹ãã ä¾åé¨
|
---|
| 634 | (æ ªå¼ä¼ç¤¾ãã¹ã製 H8S/2350 è©ä¾¡ãã¼ã対å¿)
|
---|
| 635 |
|
---|
| 636 | Makefile.config Makefile ã® MISPO H8S/2350 è©ä¾¡ãã¼ãä¾åå®ç¾©
|
---|
| 637 | sys_defs.h ã·ã¹ãã ä¾åé¨ã®ã¢ããªã±ã¼ã·ã§ã³ç¨å®ç¾©
|
---|
| 638 | sys_config.h ã·ã¹ãã ä¾åé¨ã®æ§æå®ç¾©(Cè¨èªç¨)
|
---|
| 639 | sys_config.c ã·ã¹ãã ä¾åé¨ã®é¢æ°
|
---|
| 640 | sys_support.S ã·ã¹ãã ä¾åé¨ã®ãµãã«ã¼ãã³
|
---|
| 641 | exception_vector.S å²è¾¼ã¿ä¾å¤å¦çãã¯ã¿ãã¼ãã«
|
---|
| 642 | sys_rename.def ã«ã¼ãã«ã®å
|
---|
| 643 | é¨èå¥åã®ãªãã¼ã å®ç¾©
|
---|
| 644 | sys_rename.h ã«ã¼ãã«ã®å
|
---|
| 645 | é¨èå¥åã®ãªãã¼ã
|
---|
| 646 | sys_unrename.h ã«ã¼ãã«ã®å
|
---|
| 647 | é¨èå¥åã®ãªãã¼ã 解é¤
|
---|
| 648 | h8s2350.h H8S/2350ããã»ããµã®ãã¼ãã¦ã§ã¢å®ç¾©
|
---|
| 649 | mispo_h8s2350.h MISP H8S/2350 è©ä¾¡ãã¼ãã®ãã¼ãã¦ã§ã¢å®ç¾©
|
---|
| 650 | h8s_coff.ld ãªã³ã«ã¹ã¯ãªãã(ROM åç¨)
|
---|
| 651 | h8s_coff_gdb.ld ãªã³ã«ã¹ã¯ãªãã(GDB ã¹ã¿ãç¨)
|
---|
| 652 |
|
---|
| 653 | 6.1 ãã®ä»
|
---|
| 654 |
|
---|
| 655 | H8Sãã¡ããªã¼ã¯ãé常ã«ããã»ããµã®ç¨®é¡ãå¤ãã§ãããã®ä¸ã§ãæã
|
---|
| 656 | éçºè
|
---|
| 657 | ã®
|
---|
| 658 | ã¿ã¼ã²ããç°å¢ã®åé¡ãããä»åã®å®è£
|
---|
| 659 | 㯠H8S/2350 ã¨ããç¹å®ã®ããã»ããµã®ã¿
|
---|
| 660 | ã®ãµãã¼ãã¨ãªã£ã¦ãã¾ãã
|
---|
| 661 |
|
---|
| 662 | ããã§ããããã®ãé常ã«å¤å²ã«æ¸¡ã£ã¦ããããã»ããµã®åä½ãã¹ãã«ååãã¦
|
---|
| 663 | ããã ããæ¹ãåéãã¦ããã¾ãã
|
---|
| 664 |
|
---|
| 665 | æ¯éãä¸è¨ã¸ã¨ãé£çµ¡ãã ããããå¾
|
---|
| 666 | ã¡ãã¦ããã¾ãã
|
---|
| 667 |
|
---|
| 668 | âTOPPERSããã¸ã§ã¯ã ã¡ã¼ãªã³ã°ãªã¹ã TOPPERS-USER
|
---|
| 669 |
|
---|
| 670 | âå®®åçç£æ¥æè¡ç·åã»ã³ã¿ã¼ æ©æ¢°é»åæ
|
---|
| 671 | å ±æè¡é¨ æ
|
---|
| 672 | å ±æè¡éçºç
|
---|
| 673 | TEL : 022-377-8700ãe-mail : micom@mit.pref.miyagi.jp
|
---|
| 674 |
|
---|
| 675 | å¤æ´å±¥æ´
|
---|
| 676 |
|
---|
| 677 | 2004å¹´ 4æ15æ¥ãJSPã«ã¼ãã« Release1.4 対å¿
|
---|
| 678 | 2004å¹´10æ18æ¥ãJSPã«ã¼ãã« Release1.4.1 対å¿
|
---|