Changeset 429 for EcnlProtoTool/trunk/asp3_dcre/target
- Timestamp:
- Jul 3, 2020, 7:19:17 PM (4 years ago)
- Location:
- EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc
- Files:
-
- 27 edited
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/Makefile.target
r321 r429 2 2 # Makefile のターゲット依存部(GR-PEACH用) 3 3 # 4 # $Id $4 # $Id: Makefile.target 732 2016-04-03 03:08:05Z ertl-hiro $ 5 5 # 6 6 … … 31 31 32 32 # 33 # MPCoreの種類の定義33 # FPUサポートとコーリングコンベンション 34 34 # 35 MPCORE_TYPE = CA9 35 # FPUを使用する場合は,USE_ARM_FPUをマクロ定義し,使用するコーリング 36 # コンベンションに応じて,-mfloat-abi=softfpまたは-mfloat-abi=hardオ 37 # プションをつける. 38 # 39 #CDEFS := $(CDEFS) -DUSE_ARM_FPU 40 #COPTS := $(COPTS) -mfloat-abi=softfp 41 COPTS := $(COPTS) -mfloat-abi=hard 36 42 37 43 # … … 46 52 # 47 53 KERNEL_DIRS := $(KERNEL_DIRS) $(TARGETDIR) 48 KERNEL_COBJS := $(KERNEL_COBJS) target_kernel_impl.o core_pl310.o54 KERNEL_COBJS := $(KERNEL_COBJS) target_kernel_impl.o 49 55 KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) target_support.o 50 56 … … 55 61 CDEFS := $(CDEFS) -DTOPPERS_EXECUTE_ON_ROM 56 62 #LDSCRIPT = $(TARGETDIR)/gr_peach_rom.ld 57 LDSCRIPT = $(SRCDIR)/mbed/targets/ cmsis/TARGET_RENESAS/TARGET_RZ_A1H/TOOLCHAIN_GCC_ARM/RZA1H.ld63 LDSCRIPT = $(SRCDIR)/mbed/targets/TARGET_RENESAS/TARGET_RZA1XX/TARGET_RZ_A1H/device/TOOLCHAIN_GCC_ARM/RZA1H.ld 58 64 else 59 65 CDEFS := $(CDEFS) -DTOPPERS_EXECUTE_ON_RAM … … 62 68 63 69 # 64 # GNU開発環境のターゲットアーキテクチャの定義70 # チップ依存部 65 71 # 66 GCC_TARGET = arm-none-eabi 67 #GCC_TARGET = arm-atollic-eabi 68 69 # 70 # トレースログ記録のサンプルコードに関する定義 71 # 72 ifeq ($(ENABLE_TRACE),true) 73 COPTS := $(COPTS) -DTOPPERS_ENABLE_TRACE 74 SYSSVC_DIRS := $(SYSSVC_DIRS) $(SRCDIR)/arch/tracelog 75 endif 76 77 # 78 # チップ依存部のインクルード 79 # 80 include $(SRCDIR)/arch/arm_gcc/rza1/Makefile.chip 72 include $(SRCDIR)/arch/$(CORE)_$(TOOL)/$(CHIP)/Makefile.chip -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/Makefile.tinet
r321 r429 29 29 # 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 30 30 # 31 # @(#) $Id $31 # @(#) $Id: Makefile.tinet,v 1.6 2012/07/18 04:17:01 abe Exp abe $ 32 32 # 33 33 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/cfg_dmy.c
r321 r429 1 1 #include "MBRZA1H.h" 2 #include <stdlib.h> 2 3 3 IRQHandler _kernel_inh_table[R enesas_RZ_A1_IRQ_MAX+1];4 IRQHandler _kernel_inh_table[RZ_A1_IRQ_MAX+1]; 4 5 uint32_t _kernel_excpt_nest_count = 0; 5 6 … … 23 24 { 24 25 } 26 25 27 void _kernel_irq_handler() 26 28 { … … 30 32 { 31 33 } 34 35 void __libc_init_array() 36 { 37 } 38 39 void *memset(void *dst, int c, size_t size) 40 { 41 return NULL; 42 } 43 44 void *memcpy(void *dst, void * src, size_t size) 45 { 46 return NULL; 47 } 48 49 int main() 50 { 51 } 52 53 void exit(int exitcd) 54 { 55 } -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/gr_peach.h
r321 r429 1 1 /* 2 * TOPPERS/ASP Kernel 3 * Toyohashi Open Platform for Embedded Real-Time Systems/ 4 * Advanced Standard Profile Kernel 5 * 2 * TOPPERS Software 3 * Toyohashi Open Platform for Embedded Real-Time Systems 4 * 6 5 * Copyright (C) 2011-2016 by Embedded and Real-Time Systems Laboratory 7 6 * Graduate School of Information Science, Nagoya Univ., JAPAN 8 * 7 * 9 8 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 10 9 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 … … 29 28 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 30 29 * 免責すること. 31 * 30 * 32 31 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 33 32 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 … … 35 34 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 36 35 * の責任を負わない. 37 * 36 * 37 * $Id$ 38 38 */ 39 39 … … 58 58 59 59 /* 60 * ボーレート設定 61 */ 62 #define UART_BAUDRATE 115200 63 64 /* 60 65 * LEDの点灯/消灯 61 66 */ -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/gr_peach_ram.ld
r321 r429 1 1 /* 2 * $Id $2 * $Id: gr_peach_ram.ld 720 2016-04-01 22:16:17Z ertl-hiro $ 3 3 */ 4 4 5 OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")5 OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") 6 6 OUTPUT_ARCH(arm) 7 7 ENTRY(start); -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/gr_peach_rom.ld
r321 r429 1 1 /* 2 * $Id $2 * $Id: gr_peach_rom.ld 720 2016-04-01 22:16:17Z ertl-hiro $ 3 3 */ 4 4 5 OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")5 OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") 6 6 OUTPUT_ARCH(arm) 7 7 ENTRY(start); -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/tSIOPortGRPeach.cdl
r321 r429 6 6 * Copyright (C) 2015 by Ushio Laboratory 7 7 * Graduate School of Engineering Science, Osaka Univ., JAPAN 8 * Copyright (C) 2015 ,2016by Embedded and Real-Time Systems Laboratory8 * Copyright (C) 2015-2018 by Embedded and Real-Time Systems Laboratory 9 9 * Graduate School of Information Science, Nagoya Univ., JAPAN 10 10 * … … 47 47 48 48 /* 49 * GR-PEACH とRZ/A1に関する定義49 * GR-PEACHのハードウェア資源の定義 50 50 */ 51 51 import_C("gr_peach.h"); 52 import_C(" rza1.h");53 54 /* 55 * FIFO内蔵シリアルコミュニケーションインタフェース用 簡易SIOドライバ56 */ 57 import("t SCIF.cdl");52 import_C("device.h"); 53 54 /* 55 * シリアルインタフェースドライバのチップ依存部(RZ/A1用) 56 */ 57 import("tMbedSerial.cdl"); 58 58 59 59 /* … … 73 73 call sSIOPort cSIOPort; 74 74 [inline] entry siSIOCBR eiSIOCBR; 75 76 /*77 * 割込み要求ライン操作のための結合78 */79 call sInterruptRequest cRxInterruptRequest;80 call sInterruptRequest cTxInterruptRequest;81 75 }; 82 76 … … 85 79 * ト)のセルタイプ 86 80 */ 87 [active]88 81 composite tSIOPortGRPeach { 89 82 /* … … 97 90 */ 98 91 attr { 99 uintptr_t baseAddress; /* ベースアドレス */ 100 INTNO rxInterruptNumber; /* 受信割込み番号 */ 101 INTNO txInterruptNumber; /* 送信割込み番号 */ 102 PRI isrPriority = 1; /* ISR優先度 */ 103 PRI interruptPriority = -4; /* 割込み優先度 */ 92 int32_t tx; /* 送信Pin */ 93 int32_t rx; /* 受信Pin */ 104 94 uint32_t baudRate = 115200; /* ボーレートの設定値 */ 105 95 }; … … 108 98 * SIOドライバ 109 99 */ 110 cell tSCIF SCIF { 111 baseAddress = composite.baseAddress; 100 cell tMbedSerial MbedSerial { 101 tx = composite.tx; 102 rx = composite.rx; 112 103 baudRate = composite.baudRate; 113 104 ciSIOCBR = SIOPortMain.eiSIOCBR; … … 119 110 cell tSIOPortGRPeachMain SIOPortMain { 120 111 ciSIOCBR => composite.ciSIOCBR; 121 cSIOPort = SCIF.eSIOPort; 122 cRxInterruptRequest = RxInterruptRequest.eInterruptRequest; 123 cTxInterruptRequest = TxInterruptRequest.eInterruptRequest; 112 cSIOPort = MbedSerial.eSIOPort; 124 113 }; 125 114 composite.eSIOPort => SIOPortMain.eSIOPort; 126 127 /*128 * SIOの受信割込みサービスルーチンと割込み要求ライン129 */130 cell tISR RxISRInstance {131 interruptNumber = composite.rxInterruptNumber;132 isrPriority = composite.isrPriority;133 ciISRBody = SCIF.eiRxISR;134 };135 cell tInterruptRequest RxInterruptRequest {136 interruptNumber = composite.rxInterruptNumber;137 interruptPriority = composite.interruptPriority;138 };139 140 /*141 * SIOの受信割込みサービスルーチンと割込み要求ライン142 */143 cell tISR TxISRInstance {144 interruptNumber = composite.txInterruptNumber;145 isrPriority = composite.isrPriority;146 ciISRBody = SCIF.eiTxISR;147 };148 cell tInterruptRequest TxInterruptRequest {149 interruptNumber = composite.txInterruptNumber;150 interruptPriority = composite.interruptPriority;151 };152 115 }; 153 116 … … 157 120 * サンプルプログラムが使うポートが,SIOPortTarget1に固定されているた 158 121 * め,ポート1とポート3を入れ換えている.具体的には,SIOPortTarget1は 159 * SCIFのチャネル2(チャネル番号は0から始まるので,ポート3のこと)に,160 * SIOPortTarget3は SCIFのチャネル0につながっている.122 * MbedSerialのチャネル2(チャネル番号は0から始まるので,ポート3のこと)に, 123 * SIOPortTarget3はMbedSerialのチャネル0につながっている. 161 124 */ 162 125 [prototype] 163 126 cell tSIOPortGRPeach SIOPortTarget1 { 164 127 /* 属性の設定 */ 165 baseAddress = C_EXP("SCIF2_BASE"); 166 rxInterruptNumber = C_EXP("INTNO_SCIF2_RXI"); 167 txInterruptNumber = C_EXP("INTNO_SCIF2_TXI"); 128 tx = C_EXP("P6_3"); 129 rx = C_EXP("P6_2"); 168 130 }; 169 131 … … 171 133 cell tSIOPortGRPeach SIOPortTarget2 { 172 134 /* 属性の設定 */ 173 baseAddress = C_EXP("SCIF1_BASE"); 174 rxInterruptNumber = C_EXP("INTNO_SCIF1_RXI"); 175 txInterruptNumber = C_EXP("INTNO_SCIF1_TXI"); 135 tx = C_EXP("P2_5"); 136 rx = C_EXP("P2_6"); 176 137 }; 177 138 … … 179 140 cell tSIOPortGRPeach SIOPortTarget3 { 180 141 /* 属性の設定 */ 181 baseAddress = C_EXP("SCIF0_BASE"); 182 rxInterruptNumber = C_EXP("INTNO_SCIF0_RXI"); 183 txInterruptNumber = C_EXP("INTNO_SCIF0_TXI"); 142 tx = C_EXP("P4_12"); 143 rx = C_EXP("P4_13"); 184 144 }; 185 145 … … 187 147 cell tSIOPortGRPeach SIOPortTarget4 { 188 148 /* 属性の設定 */ 189 baseAddress = C_EXP("SCIF3_BASE"); 190 rxInterruptNumber = C_EXP("INTNO_SCIF3_RXI"); 191 txInterruptNumber = C_EXP("INTNO_SCIF3_TXI"); 149 tx = C_EXP("P2_14"); 150 rx = C_EXP("P2_15"); 192 151 }; 193 152 … … 195 154 cell tSIOPortGRPeach SIOPortTarget5 { 196 155 /* 属性の設定 */ 197 baseAddress = C_EXP("SCIF4_BASE"); 198 rxInterruptNumber = C_EXP("INTNO_SCIF4_RXI"); 199 txInterruptNumber = C_EXP("INTNO_SCIF4_TXI"); 156 tx = C_EXP("P4_14"); 157 rx = C_EXP("P4_15"); 200 158 }; 201 159 … … 203 161 cell tSIOPortGRPeach SIOPortTarget6 { 204 162 /* 属性の設定 */ 205 baseAddress = C_EXP("SCIF5_BASE"); 206 rxInterruptNumber = C_EXP("INTNO_SCIF5_RXI"); 207 txInterruptNumber = C_EXP("INTNO_SCIF5_TXI"); 163 tx = C_EXP("P5_3"); 164 rx = C_EXP("P5_4"); 208 165 }; 209 166 … … 211 168 cell tSIOPortGRPeach SIOPortTarget7 { 212 169 /* 属性の設定 */ 213 baseAddress = C_EXP("SCIF6_BASE"); 214 rxInterruptNumber = C_EXP("INTNO_SCIF6_RXI"); 215 txInterruptNumber = C_EXP("INTNO_SCIF6_TXI"); 170 tx = C_EXP("P8_8"); 171 rx = C_EXP("P8_9"); 216 172 }; 217 173 … … 219 175 cell tSIOPortGRPeach SIOPortTarget8 { 220 176 /* 属性の設定 */ 221 baseAddress = C_EXP("SCIF7_BASE"); 222 rxInterruptNumber = C_EXP("INTNO_SCIF7_RXI"); 223 txInterruptNumber = C_EXP("INTNO_SCIF7_TXI"); 224 }; 177 tx = C_EXP("P5_0"); 178 rx = C_EXP("P5_1"); 179 }; 180 181 [prototype] 182 cell tSIOPortGRPeach SIOPortTarget9 { 183 /* 属性の設定 */ 184 tx = C_EXP("P8_14"); 185 rx = C_EXP("P8_15"); 186 }; 187 188 [prototype] 189 cell tSIOPortGRPeach SIOPortTarget10 { 190 /* 属性の設定 */ 191 tx = C_EXP("P8_13"); 192 rx = C_EXP("P8_11"); 193 }; 194 195 [prototype] 196 cell tSIOPortGRPeach SIOPortTarget11 { 197 /* 属性の設定 */ 198 tx = C_EXP("P11_10"); 199 rx = C_EXP("P11_11"); 200 }; 201 202 [prototype] 203 cell tSIOPortGRPeach SIOPortTarget12 { 204 /* 属性の設定 */ 205 tx = C_EXP("P6_6"); 206 rx = C_EXP("P6_7"); 207 }; 208 209 [prototype] 210 cell tSIOPortGRPeach SIOPortTarget13 { 211 /* 属性の設定 */ 212 tx = C_EXP("P5_6"); 213 rx = C_EXP("P5_7"); 214 }; 215 216 [prototype] 217 cell tSIOPortGRPeach SIOPortTarget14 { 218 /* 属性の設定 */ 219 tx = C_EXP("P11_1"); 220 rx = C_EXP("P11_2"); 221 }; 222 223 [prototype] 224 cell tSIOPortGRPeach SIOPortTarget15 { 225 /* 属性の設定 */ 226 tx = C_EXP("P7_4"); 227 rx = C_EXP("P7_5"); 228 }; -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/tSIOPortGRPeachMain_inline.h
r321 r429 57 57 */ 58 58 cSIOPort_open(); 59 60 /*61 * SIOの割込みマスクを解除する.62 */63 cRxInterruptRequest_enable();64 cTxInterruptRequest_enable();65 59 } 66 60 … … 77 71 */ 78 72 cSIOPort_close(); 79 80 /*81 * SIOの割込みをマスクする.82 */83 cRxInterruptRequest_disable();84 cTxInterruptRequest_disable();85 73 } 86 74 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target.cdl
r321 r429 6 6 * Copyright (C) 2015 by Ushio Laboratory 7 7 * Graduate School of Engineering Science, Osaka Univ., JAPAN 8 * Copyright (C) 2015 ,2016by Embedded and Real-Time Systems Laboratory8 * Copyright (C) 2015-2018 by Embedded and Real-Time Systems Laboratory 9 9 * Graduate School of Information Science, Nagoya Univ., JAPAN 10 10 * … … 42 42 43 43 /* 44 * コンポーネント記述ファイルのターゲット依存部(GR-PEACH用) 45 */ 46 47 /* 44 48 * タスクのスタックサイズのデフォルト 45 49 */ … … 60 64 * ターゲット依存のセルタイプの定義 61 65 */ 62 import(" tPutLogGRPeach.cdl");66 import("syssvc/tPutLogSIOPort.cdl"); 63 67 import("tSIOPortGRPeach.cdl"); 64 68 … … 72 76 * 低レベル出力の組み上げ記述 73 77 */ 74 cell tPutLog GRPeachPutLogTarget {78 cell tPutLogSIOPort PutLogTarget { 75 79 /* SIOドライバとの結合 */ 76 80 cSIOPort = SIOPortTarget1.eSIOPort; -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_check.trb
r321 r429 1 1 # -*- coding: utf-8 -*- 2 2 # 3 # パス3の生成スクリプトのターゲット依存部(GR-PEACH用) 3 # パス3の生成スクリプトのターゲット依存部 4 # 5 # $Id: target_check.trb 1071 2018-11-25 01:27:37Z ertl-hiro $ 4 6 # 5 7 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_kernel.cfg
r321 r429 4 4 * $Id$ 5 5 */ 6 INCLUDE("target_timer.cfg") 6 INCLUDE("target_timer.cfg"); -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_kernel.h
r321 r429 1 /*2 * TOPPERS/ASP Kernel3 * Toyohashi Open Platform for Embedded Real-Time Systems/4 * Advanced Standard Profile Kernel5 *6 * Copyright (C) 2006-2016 by Embedded and Real-Time Systems Laboratory7 * Graduate School of Information Science, Nagoya Univ., JAPAN8 *9 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ10 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改11 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.12 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作13 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー14 * スコード中に含まれていること.15 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使16 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用17 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記18 * の無保証規定を掲載すること.19 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使20 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ21 * と.22 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著23 * 作権表示,この利用条件および下記の無保証規定を掲載すること.24 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに25 * 報告すること.26 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損27 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.28 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理29 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを30 * 免責すること.31 *32 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お33 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的34 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ35 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ36 * の責任を負わない.37 *38 * $Id$39 */40 41 1 /* 42 2 * kernel.hのターゲット依存部(GR-PEACH用) … … 45 5 * から直接インクルードすることはない.このファイルをインクルードする 46 6 * 前に,t_stddef.hがインクルードされるので,それに依存してもよい. 7 * 8 * $Id$ 47 9 */ 48 10 49 11 #ifndef TOPPERS_TARGET_KERNEL_H 50 12 #define TOPPERS_TARGET_KERNEL_H 13 14 /* 15 * 高分解能タイマのタイマ周期 16 * 17 * 2^32 / 33.33…を丸めた値とする. 18 */ 19 #define TCYC_HRTCNT 128849019U 20 21 /* 22 * 高分解能タイマのカウント値の進み幅 23 */ 24 #define TSTEP_HRTCNT 1U 25 26 /* 27 * オーバランハンドラの残りプロセッサ時間に指定できる最大値 28 * 29 * この値をOSタイマへの設定値に変換してタイマに設定した後,タイマの現 30 * 在値を読み出してμ秒単位に変換できる値としている.タイマの現在値を 31 * μ秒単位に変換する時に34を加えるため,以下の条件を満たす最大の値と 32 * する. 33 * (TMAX_OVRTIM * 33 + TMAX_OVRTIM / 3 + 1) + 34 < 2^32 34 */ 35 #define TMAX_OVRTIM 128849017U 51 36 52 37 /* -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_kernel.trb
r321 r429 1 1 # -*- coding: utf-8 -*- 2 2 # 3 # パス2の生成スクリプトのターゲット依存部(GR-PEACH用) 3 # パス2の生成スクリプトのターゲット依存部 4 # 5 # $Id: target_kernel.trb 1071 2018-11-25 01:27:37Z ertl-hiro $ 4 6 # 5 7 … … 7 9 # 生成スクリプトのチップ依存部 8 10 # 9 IncludeTrb("chip_kernel.trb") 11 IncludeTrb("chip_kernel.trb"); -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_kernel_impl.c
r321 r429 3 3 * Toyohashi Open Platform for Embedded Real-Time Systems/ 4 4 * Advanced Standard Profile Kernel 5 * 6 * Copyright (C) 2007-201 6by Embedded and Real-Time Systems Laboratory5 * 6 * Copyright (C) 2007-2018 by Embedded and Real-Time Systems Laboratory 7 7 * Graduate School of Information Science, Nagoya Univ., JAPAN 8 * 8 * 9 9 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 10 10 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 … … 29 29 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 30 30 * 免責すること. 31 * 31 * 32 32 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 33 33 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 … … 35 35 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 36 36 * の責任を負わない. 37 * 37 * 38 38 * $Id$ 39 39 */ … … 48 48 #include "rza1.h" 49 49 #include "scif.h" 50 #include "core_pl310.h" 51 #include "us_ticker_api.h" 50 51 /* 52 * C++のグローバルコンストラクタ呼び出し 53 */ 54 void __libc_init_array() 55 { 56 /* グローバルコンストラクタでOS APIを呼び出す場合は、 57 タスクが起動してから行う */ 58 } 52 59 53 60 /* … … 63 70 * MMUへの設定属性(第1レベルディスクリプタ) 64 71 */ 65 #define MMU_ATTR_RAM (ARM_MMU_DSCR1_SHARED|ARM V6_MMU_DSCR1_APX0\66 |ARM _MMU_DSCR1_TEX001|ARM_MMU_DSCR1_AP11 \67 |ARM_MMU_DSCR1_CB11) 68 #define MMU_ATTR_IODEV (ARM_MMU_DSCR1_SHARED|ARMV6_MMU_DSCR1_APX0\69 |ARM _MMU_DSCR1_TEX000|ARM_MMU_DSCR1_AP11 \70 |ARM_MMU_DSCR1_CB01|ARMV6_MMU_DSCR1_NOEXEC) 72 #define MMU_ATTR_RAM (ARM_MMU_DSCR1_SHARED|ARM_MMU_DSCR1_TEX001 \ 73 |ARMV6_MMU_DSCR1_AP011|ARM_MMU_DSCR1_CB11) 74 #define MMU_ATTR_IODEV (ARM_MMU_DSCR1_SHARED|ARM_MMU_DSCR1_TEX000 \ 75 |ARMV6_MMU_DSCR1_AP011|ARM_MMU_DSCR1_CB01 \ 76 |ARMV6_MMU_DSCR1_NOEXEC) 77 71 78 /* 72 79 * MMUの設定情報(メモリエリアの情報) 73 80 */ 74 ARM_MMU_CONFIG arm_memory_area[] = {81 const ARM_MMU_CONFIG arm_memory_area[] = { 75 82 { SPI_ADDR, SPI_ADDR, SPI_SIZE, MMU_ATTR_RAM }, 76 83 { SRAM_ADDR, SRAM_ADDR, SRAM_SIZE, MMU_ATTR_RAM }, … … 206 213 * システムログの低レベル出力のための初期化 207 214 * 208 * セルタイプtPutLog GRPeach内に実装されている関数を直接呼び出す.209 */ 210 extern void tPutLog GRPeach_initialize(void);215 * セルタイプtPutLogSIOPort内に実装されている関数を直接呼び出す. 216 */ 217 extern void tPutLogSIOPort_initialize(void); 211 218 212 219 /* … … 244 251 245 252 /* 246 * L2キャッシュコントローラ(PL310)の初期化247 */248 /*pl310_initialize(0x0U, ~0x0U);*/249 250 /*251 253 * LEDを青色に点灯させる 252 254 */ … … 254 256 255 257 /* 256 * 低レベル出力用にSIOを初期化258 * SIOを初期化 257 259 */ 258 260 #ifndef TOPPERS_OMIT_TECS 259 tPutLog GRPeach_initialize();261 tPutLogSIOPort_initialize(); 260 262 #endif /* TOPPERS_OMIT_TECS */ 261 263 } … … 268 270 { 269 271 static int first = 1; 272 extern void software_term_hook(void); 273 void (*volatile fp)(void) = software_term_hook; 274 275 /* 276 * software_term_hookへのポインタを,一旦volatile指定のあるfpに代 277 * 入してから使うのは,0との比較が最適化で削除されないようにするた 278 * めである. 279 */ 280 if (fp != 0) { 281 (*fp)(); 282 } 270 283 271 284 /* … … 293 306 rza1_config_port(RZA1_PORT_P(6), led, set); 294 307 } 295 296 void us_ticker_init(void)297 {298 }299 300 uint32_t us_ticker_read()301 {302 ER ret;303 SYSTIM now;304 305 ret = get_tim(&now);306 if(ret != E_OK)307 return 0;308 309 return now;310 }311 312 void us_ticker_set_interrupt(timestamp_t timestamp)313 {314 Asm("bkpt #0");315 }316 317 void us_ticker_disable_interrupt(void)318 {319 }320 321 void us_ticker_clear_interrupt(void)322 {323 }324 325 void wait(float s)326 {327 wait_us(s * 1000000.0f);328 }329 330 void wait_ms(int ms)331 {332 wait_us(ms * 1000);333 }334 335 void wait_us(int us)336 {337 ER ret;338 339 ret = dly_tsk(us);340 if (ret == E_CTX){341 uint32_t start = us_ticker_read();342 while ((us_ticker_read() - start) < (uint32_t)us);343 }344 } -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_kernel_impl.h
r321 r429 3 3 * Toyohashi Open Platform for Embedded Real-Time Systems/ 4 4 * Advanced Standard Profile Kernel 5 * 5 * 6 6 * Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory 7 7 * Toyohashi Univ. of Technology, JAPAN 8 * Copyright (C) 2006-201 6by Embedded and Real-Time Systems Laboratory8 * Copyright (C) 2006-2018 by Embedded and Real-Time Systems Laboratory 9 9 * Graduate School of Information Science, Nagoya Univ., JAPAN 10 * 10 * 11 11 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 12 12 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 … … 31 31 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 32 32 * 免責すること. 33 * 33 * 34 34 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 35 35 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 … … 37 37 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 38 38 * の責任を負わない. 39 * 39 * 40 40 * $Id$ 41 41 */ … … 57 57 58 58 /* 59 * トレースログに関する設定60 */61 #ifdef TOPPERS_ENABLE_TRACE62 #include "arch/tracelog/trace_log.h"63 #endif /* TOPPERS_ENABLE_TRACE */64 65 /*66 * デフォルトの非タスクコンテキスト用のスタック領域の定義67 */68 #define DEFAULT_ISTKSZ 0x2000U /* 8KB */69 70 /*71 59 * 微少時間待ちのための定義(本来はSILのターゲット依存部) 72 60 */ 73 #define SIL_DLY_TIM1 35274 #define SIL_DLY_TIM2 20061 #define SIL_DLY_TIM1 110 62 #define SIL_DLY_TIM2 72 75 63 76 64 /* … … 84 72 * ターゲットシステム依存の初期化 85 73 */ 86 extern void 74 extern void target_initialize(void); 87 75 88 76 /* … … 91 79 * システムを終了する時に使う. 92 80 */ 93 extern void 81 extern void target_exit(void) NoReturn; 94 82 95 83 #endif /* TOPPERS_MACRO_ONLY */ -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_rename.def
r331 r429 1 1 # target_kernel_impl.c 2 arm_tnum_memory_area 3 arm_memory_area 2 4 target_initialize 3 5 target_exit 4 6 5 # tTraceLog.c6 log_dsp_enter7 log_dsp_leave8 log_inh_enter9 log_inh_leave10 log_exc_enter11 log_exc_leave12 13 7 INCLUDE "chip" -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_rename.h
r321 r429 7 7 * target_kernel_impl.c 8 8 */ 9 #define arm_tnum_memory_area _kernel_arm_tnum_memory_area 10 #define arm_memory_area _kernel_arm_memory_area 9 11 #define target_initialize _kernel_target_initialize 10 12 #define target_exit _kernel_target_exit 11 12 /*13 * tTraceLog.c14 */15 #define log_dsp_enter _kernel_log_dsp_enter16 #define log_dsp_leave _kernel_log_dsp_leave17 #define log_inh_enter _kernel_log_inh_enter18 #define log_inh_leave _kernel_log_inh_leave19 #define log_exc_enter _kernel_log_exc_enter20 #define log_exc_leave _kernel_log_exc_leave21 13 22 14 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_sil.h
r321 r429 1 1 /* 2 * TOPPERS Software 3 * Toyohashi Open Platform for Embedded Real-Time Systems 4 * 5 * Copyright (C) 2007-2015 by Embedded and Real-Time Systems Laboratory 6 * Graduate School of Information Science, Nagoya Univ., JAPAN 7 * 8 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 9 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 10 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 11 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 12 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 13 * スコード中に含まれていること. 14 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 15 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 16 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 17 * の無保証規定を掲載すること. 18 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 19 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 20 * と. 21 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 22 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 23 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 24 * 報告すること. 25 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 26 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 27 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 28 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 29 * 免責すること. 30 * 31 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 32 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 33 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 34 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 35 * の責任を負わない. 36 * 37 * $Id$ 38 */ 39 40 /* 41 * sil.hのチップ依存部(GR-PEACH用) 2 * sil.hのターゲット依存部(GR-PEACH用) 42 3 * 43 4 * このヘッダファイルは,sil.hからインクルードされる.他のファイルから 44 5 * 直接インクルードすることはない.このファイルをインクルードする前に, 45 6 * t_stddef.hがインクルードされるので,それに依存してもよい. 7 * 8 * $Id$ 46 9 */ 47 10 … … 57 20 * コアで共通な定義(チップ依存部は飛ばす) 58 21 */ 59 #ifndef TECSGEN60 22 #include "core_sil.h" 61 #endif /* TECSGEN */62 23 63 24 #endif /* TOPPERS_TARGET_SIL_H */ -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_stddef.h
r321 r429 1 /*2 * TOPPERS Software3 * Toyohashi Open Platform for Embedded Real-Time Systems4 *5 * Copyright (C) 2007-2016 by Embedded and Real-Time Systems Laboratory6 * Graduate School of Information Science, Nagoya Univ., JAPAN7 *8 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ9 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改10 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.11 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作12 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー13 * スコード中に含まれていること.14 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使15 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用16 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記17 * の無保証規定を掲載すること.18 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使19 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ20 * と.21 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著22 * 作権表示,この利用条件および下記の無保証規定を掲載すること.23 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに24 * 報告すること.25 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損26 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.27 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理28 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを29 * 免責すること.30 *31 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お32 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的33 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ34 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ35 * の責任を負わない.36 *37 * $Id$38 */39 40 1 /* 41 2 * t_stddef.hのターゲット依存部(GR-PEACH用) … … 44 5 * イルからは直接インクルードすることはない.他のヘッダファイルに先立っ 45 6 * て処理されるため,他のヘッダファイルに依存してはならない. 7 * 8 * $Id$ 46 9 */ 47 10 … … 56 19 57 20 /* 58 * 開発環境で共通な定義 59 */ 60 #ifndef TOPPERS_MACRO_ONLY 61 #include <stdint.h> 62 #endif /* TOPPERS_MACRO_ONLY */ 63 64 #define TOPPERS_STDFLOAT_TYPE1 65 #include "tool_stddef.h" 66 67 /* 68 * チッブ依存で共通な定義 21 * チッブで共通な定義 69 22 */ 70 23 #include "chip_stddef.h" -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_support.S
r321 r429 51 51 #define CAST(type, val) (val) /* 型キャストを行うマクロ */ 52 52 #include "kernel_impl.h" 53 #include " core_pl310.h"53 #include "pl310.h" 54 54 #include "core_asm.inc" 55 55 … … 71 71 ldrb r0, [r2] /* ダミーリード */ 72 72 73 /* 73 /* 74 74 * クロック関係の初期化 75 75 * … … 103 103 104 104 #ifdef TOPPERS_RZA1H 105 /* 105 /* 106 106 * 画像処理クロックを「×2/3」に(266.67MHz) 107 107 */ … … 115 115 #endif /* TOPPERS_RZA1H */ 116 116 117 /* 117 /* 118 118 * ソフトウェアスタンバイ復帰中でなくなるまで待つ 119 119 */ -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_syssvc.h
r426 r429 1 1 /* 2 * TOPPERS/ASP Kernel 3 * Toyohashi Open Platform for Embedded Real-Time Systems/ 4 * Advanced Standard Profile Kernel 5 * 6 * Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory 7 * Toyohashi Univ. of Technology, JAPAN 8 * Copyright (C) 2005-2016 by Embedded and Real-Time Systems Laboratory 9 * Graduate School of Information Science, Nagoya Univ., JAPAN 10 * 11 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 12 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 13 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 14 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 15 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 16 * スコード中に含まれていること. 17 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 18 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 19 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 20 * の無保証規定を掲載すること. 21 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 22 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 23 * と. 24 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 25 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 26 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 27 * 報告すること. 28 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 29 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 30 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 31 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 32 * 免責すること. 33 * 34 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 35 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 36 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 37 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 38 * の責任を負わない. 39 * 40 * $Id$ 41 */ 42 43 /* 44 * システムサービスのターゲット依存部(GR-PEACH用) 2 * システムサービスのターゲット依存部 45 3 * 46 4 * システムサービスのターゲット依存部のヘッダファイル.システムサービ 47 5 * スのターゲット依存の設定は,できる限りコンポーネント記述ファイルで 48 6 * 記述し,このファイルに記述するものは最小限とする. 7 * 8 * $Id$ 49 9 */ 50 10 51 11 #ifndef TOPPERS_TARGET_SYSSVC_H 52 12 #define TOPPERS_TARGET_SYSSVC_H 53 54 #include "gr_peach.h"55 56 /*57 * トレースログに関する設定58 */59 #ifdef TOPPERS_ENABLE_TRACE60 #include "arch/tracelog/trace_log.h"61 #endif /* TOPPERS_ENABLE_TRACE */62 13 63 14 /* -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_test.h
r321 r429 3 3 * Toyohashi Open Platform for Embedded Real-Time Systems/ 4 4 * Advanced Standard Profile Kernel 5 * 5 * 6 6 * Copyright (C) 2007-2016 by Embedded and Real-Time Systems Laboratory 7 7 * Graduate School of Information Science, Nagoya Univ., JAPAN 8 * 8 * 9 9 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 10 10 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 … … 29 29 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 30 30 * 免責すること. 31 * 31 * 32 32 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 33 33 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 … … 35 35 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 36 36 * の責任を負わない. 37 * 37 * 38 38 * $Id$ 39 39 */ … … 49 49 50 50 /* 51 * サンプルプログラム で使用する割込みに関する定義51 * サンプルプログラム/テストプログラムで使用する割込みに関する定義 52 52 */ 53 53 #define INTNO1 INTNO_IRQ5 54 54 #define INTNO1_INTATR TA_ENAINT|TA_NEGEDGE 55 #define INTNO1_INTPRI -1555 #define INTNO1_INTPRI (-15) 56 56 #define intno1_clear() rza1_clear_irq(INTNO_IRQ5) 57 57 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_timer.cfg
r321 r429 5 5 */ 6 6 7 #include "gr_peach.h"8 7 #include "target_timer.h" 9 8 10 9 /* 11 * チップ依存部 (RZ/A1用)10 * チップ依存部 12 11 */ 13 12 INCLUDE("chip_timer.cfg"); -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_timer.h
r321 r429 1 1 /* 2 * TOPPERS/ASP Kernel 3 * Toyohashi Open Platform for Embedded Real-Time Systems/ 4 * Advanced Standard Profile Kernel 5 * 6 * Copyright (C) 2007-2016 by Embedded and Real-Time Systems Laboratory 7 * Graduate School of Information Science, Nagoya Univ., JAPAN 8 * 9 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 10 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 11 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 12 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 13 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 14 * スコード中に含まれていること. 15 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 16 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 17 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 18 * の無保証規定を掲載すること. 19 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 20 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 21 * と. 22 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 23 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 24 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 25 * 報告すること. 26 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 27 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 28 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 29 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 30 * 免責すること. 31 * 32 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 33 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 34 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 35 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 36 * の責任を負わない. 37 * 2 * タイマドライバ 3 * 38 4 * $Id$ 39 */40 41 /*42 * タイマドライバ(GR-PEACH用)43 5 */ 44 6 … … 47 9 48 10 /* 49 * チップで共通な定義 (RZ/A1用)11 * チップで共通な定義 50 12 */ 51 13 #include "chip_timer.h" -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_unrename.h
r321 r429 8 8 * target_kernel_impl.c 9 9 */ 10 #undef arm_tnum_memory_area 11 #undef arm_memory_area 10 12 #undef target_initialize 11 13 #undef target_exit 12 13 /*14 * tTraceLog.c15 */16 #undef log_dsp_enter17 #undef log_dsp_leave18 #undef log_inh_enter19 #undef log_inh_leave20 #undef log_exc_enter21 #undef log_exc_leave22 14 23 15 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_user.txt
r331 r429 3 3 GR-PEACH依存部 ユーザーズマニュアル 4 4 5 対応バージョン: Release 3. 16 最終更新: 201 6年4月2日5 対応バージョン: Release 3.5.0 6 最終更新: 2019年10月6日 7 7 8 8 このドキュメントは,TOPPERS/ASP3カーネルのGR-PEACHターゲット依存部を使 … … 14 14 Advanced Standard Profile Kernel 15 15 16 Copyright (C) 2008-201 6by Embedded and Real-Time Systems Laboratory16 Copyright (C) 2008-2019 by Embedded and Real-Time Systems Laboratory 17 17 Graduate School of Information Science, Nagoya Univ., JAPAN 18 18 19 上記著作権者は,以下の(1) 〜(4)の条件を満たす場合に限り,本ソフトウェ19 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 20 20 ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 21 21 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. … … 46 46 の責任を負わない. 47 47 48 $Id: target_user.txt 1 145 2017-02-06 04:26:43Z coas-nagasima$48 $Id: target_user.txt 1280 2019-10-06 01:47:52Z ertl-hiro $ 49 49 ---------------------------------------------------------------------- 50 50 … … 57 57 58 58 ○目次 59 60 1.GR-PEACHターゲット依存部の概要 61 1.1 対応するターゲットシステムとターゲット略称 62 1.2 ターゲット依存部の構成 63 1.3 依存している個別パッケージのバージョン番号 64 1.4 開発環境/デバッグ環境と動作確認条件 65 1.5 メモリマップ 66 2.ターゲット定義事項の規定 67 3.ドライバ関連の情報 68 3.1 タイマドライバ 69 3.2 シリアルインタフェースドライバ 70 3.3 システムログの低レベル出力 71 4.システム構築手順と実行手順 72 4.1 ROM実行の場合の構築手順と実行手順 73 4.2 RAM実行の場合の構築手順と実行手順 74 4.3 ドライバのインストール 75 5.リファレンス 76 5.1 ディレクトリ構成・ファイル構成 77 5.2 バージョン履歴 59 78 60 79 … … 98 117 arm_gcc/doc/ ARM依存部に関するドキュメント 99 118 gcc/ GCC開発環境依存部 100 tracelog/ トレースログ記録のサンプルコード101 119 102 120 1.3 依存している個別パッケージのバージョン番号 103 121 104 GR-PEACHターゲット依存部(バージョン 3. 1.0)の個別パッケージが依存して122 GR-PEACHターゲット依存部(バージョン 3.4.0)の個別パッケージが依存して 105 123 いる個別パッケージと,動作確認を行ったバージョンは次の通り. 106 124 107 125 個別パッケージの名称 バージョン 個別パッケージファイル名 108 126 ------------------------------------------------------------------ 109 ターゲット非依存部 3. 1.0 asp3-3.1.0.tar.gz127 ターゲット非依存部 3.4.0 asp3-3.4.0.tar.gz 110 128 111 129 1.4 開発環境/デバッグ環境と動作確認条件 112 130 113 開発環境として,以下のURLからプリビルド版をダウンロードすることができる 114 GCC ARM Embeddedを用いている. 115 116 https://launchpad.net/gcc-arm-embedded/ 131 開発環境として,以下のURLからプリビルド版をダウンロードすることができ 132 るGNU ARM Embedded Toolchainを用いている(Cortex-MとCortex-R向けの開発 133 環境であるが,Cortex-A向けにも使用できる). 134 135 https://developer.arm.com/open-source/gnu-toolchain/gnu-rm 117 136 118 137 動作確認を行ったバージョンは次の通り. 119 138 120 gcc: version 4.8.3 20140228121 binutils(objcopy,objdump):2. 23.2.20140228122 123 デバッグ環境として,オンボードのCMSIS-DAPから,OpenOCDを経由して,GDB を124 用いる環境で動作確認を行っている.動作確認を行ったデバッグ環境のバージョ 125 ンは次の通り.139 gcc: 7.3.1 20180622 140 binutils(objcopy,objdump):2.30.0.20180329 141 142 デバッグ環境として,オンボードのCMSIS-DAPから,OpenOCDを経由して,GDB 143 を用いる環境で動作確認を行っている.動作確認を行ったデバッグ環境のバー 144 ジョンは次の通り. 126 145 127 146 gdb: 7.6.0.20140228-cvs 128 147 openocd: 0.10.0-dev-00287-g85cec24 129 148 130 古いバージョンのOpenOCDでは正しく動作しないことが報告されているため,注 131 意が必要である. 132 133 GUIベースの開発環境/デバッグ環境として,Atollic TrueStudioを用いること 134 ができる. 149 新しいgdb(8.1.0.20180315-git)を使用したところ,OpenOCDとうまく接続で 150 きなかったため,やや古いgdbを使用している.また,異なるバージョンの 151 OpenOCDでは正しく動作しないことが報告されているため,注意が必要である. 152 153 GUIベースの開発環境/デバッグ環境として,Atollic TrueSTUDIOを用いるこ 154 とができる. 135 155 136 156 1.5 メモリマップ … … 143 163 0xe8000000 - 0xffffffff:I/O領域(384MB),予約領域を含む 144 164 145 内蔵SRAM領域の先頭の16KBは,ブートローダを置くために使用する. 165 シリアルフラッシュメモリの先頭の16KBは,ブートローダを置くために使用す 166 る. 146 167 147 168 RAM実行の場合は,以下のメモリマップを想定している. 148 169 149 0x20000000 - 0x200fffff: 内蔵SRAM(1MB)… ROM領域として使用150 0x20100000 - 0x209fffff: 内蔵SRAM(9MB)170 0x20000000 - 0x200fffff:ROMとみなす内蔵SRAM領域(1MB) 171 0x20100000 - 0x209fffff:RAMとみなす内蔵SRAM領域(9MB) 151 172 0x3fe00000 - 0x3fffffff:I/O領域(2MB),予約領域を含む 152 173 0xe8000000 - 0xffffffff:I/O領域(384MB),予約領域を含む … … 156 177 157 178 メモリマップを変更する場合には,target_kernel_impl.cとgr_peach_rom.ld 158 (または,pr_peach_ram. kd)を修正する必要がある.179 (または,pr_peach_ram.ld)を修正する必要がある. 159 180 160 181 … … 164 185 装されている.ARMコア依存部およびRZ/A1チップ依存部におけるターゲット定 165 186 義事項の規定については,「ARM依存部 ユーザーズマニュアル」を参照するこ 166 と. それらの規定以外に,GR-PEACHターゲット定義の事項はない.187 と. 167 188 168 189 … … 180 201 コミュニケーションインタフェースをサポートしている. 181 202 182 USB経由でホストと接続できるポートは,SCIFのチャネル2(チャネル番号は0か 183 ら始まるので,ポート3に相当)である.一方,sample1.cdlでは,ログタスク 184 およびサンプルプログラムが使うポートがポート1となっているため,ポート1 185 とポート3を入れ換えている.すなわち,シリアルインタフェースドライバのポー 186 ト1がSCIFのチャネル2,ポート2がチャネル1,ポート3がチャネル0,ポート4が 187 チャネル3,…に対応している. 203 GR-PEACHでUSB経由でホストと接続できるポートは,SCIFのチャネル2(チャネ 204 ル番号は0から始まるので,ポート3に相当)である.一方,サンプルプログラ 205 ム(sample1.cdl)では,ログタスクおよびサンプルプログラムが使うポート 206 がポート1となっているため,ポート1とポート3を入れ換えている.すなわち, 207 シリアルインタフェースドライバのポート1がSCIFのチャネル2,ポート2がチャ 208 ネル1,ポート3がチャネル0,ポート4がチャネル3,…に対応している.この 209 対応を変更するには,tSIOPortGRPeach.cdlを修正する必要がある. 210 211 各ポートは,以下の通りに設定している. 188 212 189 213 ボーレート:115200bps … … 191 215 パリティ:なし 192 216 ストップビット:1ビット 193 フロー制御:なし 194 195 この対応を変更するには,tSIOPortGRPeach.cdlを修正する必要がある.217 218 この設定は,RZ/A1チップ依存部で行っているが,tSIOPortGRPeach.cdlを修正 219 することで変更することができる. 196 220 197 221 3.3 システムログの低レベル出力 … … 292 316 renesas_rza1h_swd.cfg OpenOCDの起動スクリプト 293 317 sf_boot.c ブートローダ(ROM実行用) 294 tPutLogGRPeach.c システムログの低レベル出力295 tPutLogGRPeach.cdl システムログの低レベル出力のコンポーネント記述296 318 tSIOPortGRPeach.cdl シリアルインタフェースドライバのターゲット 297 319 依存部(GR-PEACH用)のコンポーネント記述 298 tSIOPortGRPeachMain_inline.h シリアルインタフェースドライバの299 ターゲット依存部(GR-PEACH用)300 320 target.cdl コンポーネント記述ファイルのターゲット依存部 301 321 target_cfg1_out.h cfg1_out.cのリンクに必要なスタブの定義 … … 322 342 323 343 2016年5月15日 Release 3.1.0 最初の一般公開 344 2017年7月21日 Release 3.2.0 345 2018年4月19日 Release 3.3.0 346 2019年3月20日 Release 3.4.0 347 2019年10月6日 Release 3.5.0 324 348 325 349 以上 -
EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/tinet_target_config.h
r331 r429 182 182 #define NUM_IF_MBED_RXBUF NUM_OF_RX_DESCRIPTOR /* 受信バッファ数 */ 183 183 184 #define TMO_IF_MBED_GET_NET_BUF 1000 /* [ ms]、受信用 net_buf 獲得タイムアウト */184 #define TMO_IF_MBED_GET_NET_BUF 1000 /* [us]、受信用 net_buf 獲得タイムアウト */ 185 185 /* [s]、 送信タイムアウト */ 186 186 #define TMO_IF_MBED_XMIT (2*IF_TIMER_HZ) 187 187 188 188 /*#define IF_MBED_CFG_ACCEPT_ALL マルチキャスト、エラーフレームも受信するときはコメントを外す。*/ 189 190 /* 191 * Bluetooth USB PAN に関する定義 192 */ 193 194 #define NUM_IF_BTUSB_TXBUF 2 /* 送信バッファ数 */ 195 #define NUM_IF_BTUSB_RXBUF 2 /* 受信バッファ数 */ 196 #define IF_BTUSB_BUF_PAGE_SIZE 1518 /* バッファサイズ */ 197 198 #define TMO_IF_BTUSB_GET_NET_BUF 1000 /* [us]、受信用 net_buf 獲得タイムアウト */ 199 /* [s]、 送信タイムアウト */ 200 #define TMO_IF_BTUSB_XMIT (2*IF_TIMER_HZ) 189 201 190 202 /*
Note:
See TracChangeset
for help on using the changeset viewer.