source: EcnlProtoTool/trunk/asp3_dcre/target/gr_peach_gcc/target_user.txt@ 270

Last change on this file since 270 was 270, checked in by coas-nagasima, 7 years ago

mruby版ECNLプロトタイピング・ツールを追加

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/plain
File size: 15.2 KB
Line 
1
2 TOPPERS/ASP3カーネル
3 GR-PEACH依存部 ユーザーズマニュアル
4
5 対応バージョン: Release 3.1
6 最終更新: 2016年4月2日
7
8このドキュメントは,TOPPERS/ASP3カーネルのGR-PEACHターゲット依存部を使
9用するために必
10要な事項
11を説明するものである.
12
13----------------------------------------------------------------------
14 TOPPERS/ASP Kernel
15 Toyohashi Open Platform for Embedded Real-Time Systems/
16 Advanced Standard Profile Kernel
17
18 Copyright (C) 2008-2016 by Embedded and Real-Time Systems Laboratory
19 Graduate School of Information Science, Nagoya Univ., JAPAN
20
21 上記著作権者
22は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
23 ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
24 変・再é…
25å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
26 (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
27 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
28 スコード中に含まれていること.
29 (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
30 用できる形で再é…
31å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
32å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
33 者
34マニュアルなど)に,上記の著作権表示,この利用条件および下記
35 の無保証規定を掲載すること.
36 (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
37 用できない形で再é…
38å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
39 と.
40 (a) 再é…
41å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
42マニュアルなど)に,上記の著
43 作権表示,この利用条件および下記の無保証規定を掲載すること.
44 (b) 再é…
45å¸ƒã®å½¢æ…
46‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
47 報告すること.
48 (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
49 害からも,上記著作権者
50およびTOPPERSプロジェクトをå…
51è²¬ã™ã‚‹ã“と.
52 また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
53 由に基づく請求からも,上記著作権者
54およびTOPPERSプロジェクトを
55 å…
56è²¬ã™ã‚‹ã“と.
57
58 本ソフトウェアは,無保証で提供されているものである.上記著作権者
59お
60 よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
61 に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
62 アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
63 の責任を負わない.
64
65 $Id: target_user.txt 270 2017-02-09 04:03:47Z coas-nagasima $
66----------------------------------------------------------------------
67
68○ライセンスに関する注意事項
69
70
71GR-PEACHターゲット依存部には,ROM実行のためのブートローダ(sf_boot.c)
72を含んでいるが,このソフトウェアはルネサスエレクトロニクスが開発したも
73のであり,ライセンス条件もルネサスエレクトロニクス独自のものである.
74TOPPERSライセンスでないため注意すること.
75
76○目次
77
78
791.GR-PEACHターゲット依存部の概要
80
81GR-PEACHターゲット依存部(GNU開発環境向け)は,TOPPERS/ASP3カーネルを,
82ルネサス RZ/A1Hを搭載したGR-PEACHボード上で動作させる環境を構築するため
83のものである.
84
851.1 対応するターゲットシステムとターゲット略称
86
87GR-PEACHターゲット依存部(GNU開発環境向け)の動作確認は,実機を用いて行っ
88ている.GR-PEACHに関する情
89報は,以下のウェブサイトにある.
90
91 http://gadget.renesas.com/ja/product/peach.html
92
93プログラムをフラッシュメモリに書き込んで実行する方法(ROM実行)と,デバッ
94ガによりRAMにダウンロードして実行する方法(RAM実行)をサポートしている.
95
96ターゲット略称等は次の通り.
97
98 ターゲット略称:gr_peach_gcc
99 システム略称:gr_peach
100 開発環境略称:gcc
101
1021.2 ターゲット依存部の構成
103
104GR-PEACHターゲット依存部(GNU開発環境向け)は,チップ依存部としてRZ/A1
105チップ依存部(GNU開発環境向け)を,コア依存部としてARMコア依存部(GNU開
106発環境向け)を使用している.
107
108ターゲット依存部(targetディレクトリ)およびターゲット依存部のå…
109±é€šéƒ¨
110(archディレクトリ)のディレクトリは次の通り.
111
112 target/
113 gr_peach_gcc/ GR-PEACHターゲット依存部
114
115 arch/
116 arm_gcc/common/ ARMコア依存部
117 arm_gcc/rza1/ RZ/A1チップ依存部
118 arm_gcc/doc/ ARM依存部に関するドキュメント
119 gcc/ GCC開発環境依存部
120 tracelog/ トレースログ記録のサンプルコード
121
1221.3 依存している個別パッケージのバージョン番号
123
124GR-PEACHターゲット依存部(バージョン 3.1.0)の個別パッケージが依存して
125いる個別パッケージと,動作確認を行ったバージョンは次の通り.
126
127 個別パッケージの名称 バージョン 個別パッケージファイル名
128 ------------------------------------------------------------------
129 ターゲット非依存部 3.1.0 asp3-3.1.0.tar.gz
130
1311.4 開発環境/デバッグ環境と動作確認条件
132
133開発環境として,以下のURLからプリビルド版をダウンロードすることができる
134GCC ARM Embeddedを用いている.
135
136 https://launchpad.net/gcc-arm-embedded/
137
138動作確認を行ったバージョンは次の通り.
139
140 gcc: version 4.8.3 20140228
141 binutils(objcopy,objdump):2.23.2.20140228
142
143デバッグ環境として,オンボードのCMSIS-DAPから,OpenOCDを経由して,GDBを
144用いる環境で動作確認を行っている.動作確認を行ったデバッグ環境のバージョ
145ンは次の通り.
146
147 gdb: 7.6.0.20140228-cvs
148 openocd: 0.10.0-dev-00287-g85cec24
149
150古いバージョンのOpenOCDでは正しく動作しないことが報告されているため,注
151意が必
152要である.
153
154GUIベースの開発環境/デバッグ環境として,Atollic TrueStudioを用いること
155ができる.
156
1571.5 メモリマップ
158
159ROM実行の場合は,以下のメモリマップを想定している.
160
161 0x18000000 - 0x1fffffff:シリアルフラッシュメモリ(128MB)
162 0x20000000 - 0x209fffff:内
163蔵SRAM(10MB)
164 0x3fe00000 - 0x3fffffff:I/O領域(2MB),予約領域を含む
165 0xe8000000 - 0xffffffff:I/O領域(384MB),予約領域を含む
166
167内
168蔵SRAM領域のå…
169ˆé ­ã®16KBは,ブートローダを置くために使用する.
170
171RAM実行の場合は,以下のメモリマップを想定している.
172
173 0x20000000 - 0x200fffff:内
174蔵SRAM(1MB)… ROM領域として使用
175 0x20100000 - 0x209fffff:内
176蔵SRAM(9MB)
177 0x3fe00000 - 0x3fffffff:I/O領域(2MB),予約領域を含む
178 0xe8000000 - 0xffffffff:I/O領域(384MB),予約領域を含む
179
180プログラムおよび定数データ領域は,内
181蔵SRAM領域のå…
182ˆé ­ã®1MBに置く想定とし
183て,(定数でない)データ領域は,その後にé…
184ç½®ã™ã‚‹ï¼Ž
185
186メモリマップを変更する場合には,target_kernel_impl.cとgr_peach_rom.ld
187(または,pr_peach_ram.kd)を修正する必
188要がある.
189
190
1912.ターゲット定義事項
192の規定
193
194GR-PEACHターゲット依存部は,ARMコア依存部とRZ/A1チップ依存部を用いて実
195装
196されている.ARMコア依存部およびRZ/A1チップ依存部におけるターゲット定
197義事項
198の規定については,「ARM依存部 ユーザーズマニュアル」を参ç…
199§ã™ã‚‹ã“
200と.それらの規定以外に,GR-PEACHターゲット定義の事項
201はない.
202
203
2043.ドライバ関連の情
205å ±
206
2073.1 タイマドライバ
208
209高分解能タイマは,RZ/A1Hが持つ2チャンネルのOSタイマの内
210の1つを用いて実
211現している.また,もう1つのOSタイマを用いて,オーバランタイマを実現して
212いる.
213
2143.2 シリアルインタフェースドライバ
215
216シリアルインタフェースドライバは,RZ/A1Hが持つ8ポートのFIFO内
217蔵シリアル
218コミュニケーションインタフェースをサポートしている.
219
220USB経由でホストと接続できるポートは,SCIFのチャネル2(チャネル番号は0か
221ら始まるので,ポート3に相当)である.一方,sample1.cdlでは,ログタスク
222およびサンプルプログラムが使うポートがポート1となっているため,ポート1
223とポート3をå…
224¥ã‚Œæ›ãˆã¦ã„る.すなわち,シリアルインタフェースドライバのポー
225ト1がSCIFのチャネル2,ポート2がチャネル1,ポート3がチャネル0,ポート4が
226チャネル3,…に対応している.
227
228 ボーレート:115200bps
229 データ:8ビット
230 パリティ:なし
231 ストップビット:1ビット
232 フロー制御:なし
233
234この対応を変更するには,tSIOPortGRPeach.cdlを修正する必
235要がある.
236
2373.3 システムログの低レベル出力
238
239システムログの低レベル出力は,シリアルインタフェースドライバのポート1と
240同じチャネル(すなわち,SCIFのチャネル2)に対して,ポーリングにより文字
241を出力する方法で実現している.
242
243用いるポートを変更する場合には,target.cdlを修正する必
244要がある.
245
246
2474.システム構築手順と実行手順
248
249GR-PEACH用のASP3カーネルおよびサンプルプログラムを構築する手順は,基本
250的には,「TOPPERS/ASP3カーネル ユーザーズマニュアル」の「3.クイックス
251タートガイド」の章に記述されている通りであるが,ROM実行かRAM実行かによっ
252て,構築手順と実行手順に違いがある.
253
2544.1 ROM実行の場合の構築手順と実行手順
255
256カーネルの構築前に,GR-PEACHターゲット依存部のMakefile.targetを編集し,
257以下の行を有効にする(コメントアウトする).
258
259 EXECUTE_ON = ROM
260
261ROM実行する場合には,バイナリ形式が必
262要であるため,サンプルプログラムの
263構築後に,以下のコマンドを実行する.
264
265 % make asp.bin
266
267GR-PEACHのUSBポートとPCを接続すると,GR-PEACHがドライブとして認識される
268ため,そのドライブにasp.binを書き込むことで,GR-PEACHのフラッシュメモリ
269にプログラムが書き込まれる.
270
271書き込み後,リセットボタンを押すことにより,プログラムの実行が開始され
272る.
273
2744.2 RAM実行の場合の構築手順と実行手順
275
276カーネルの構築前に,GR-PEACHターゲット依存部のMakefile.targetを編集し,
277以下の行を有効にする(コメントアウトする).
278
279 EXECUTE_ON = RAM
280
281以下,ASP3カーネルを置いたディレクトリを<SRCDIR>,OpenOCDをインストール
282したディレクトリを<OPENOCD_DIR>と書く.openocdの実行プログラムは,実行
283パスに指定されたディレクトリにコピーまたはシンボリックリンクしておく.
284
285 % cd /usr/local/bin
286 % ln -s <OPENOCD_DIR>/bin/openocd .
287
288まず,GR-PEACHターゲット依存部のディレクトリにあるrenesas_rza1h_swd.cfg
289を,<OPENOCD_DIR>/scripts/targetsにコピーしておく.
290
291次に,GR-PEACHのUSBポートとPCを接続し,以下のコマンドでopenocdを起動する.
292
293 % setenv OPENOCD_SCRIPTS <OPENOCD_DIR>/scripts
294 % openocd -f interface/cmsis-dap.cfg -f target/renesas_rza1h_swd.cfg
295
296以下のコマンドでgdbを起動し,aspをロードした後,continueコマンドでプロ
297グラムの実行が開始される.
298
299 % arm-none-eabi-gdb asp -x <SRCDIR>/target/gr_peach_gcc/gdb_ram.ini
300 (gdb) continue
301
302<SRCDIR>/target/gr_peach_gcc/gdb_ram.iniを,カレントディレクトリの
303.gdbinitにコピーしておくことで,gdbの起動毎にスクリプトを指定する必
304要が
305なくなる.
306
3074.3 ドライバのインストール
308
309GR-PEACHのUSBポートとPCを接続しても,GR-PEACHがシリアルポートとして認識
310されない場合には,USBシリアルドライバをインストールする必
311要がある.
312
313Windows向けのドライバは,以下のURLにある.
314
315 https://developer.mbed.org/handbook/Windows-serial-configuration
316
317MacOS X用のUSBシリアルドライバは,例えば,以下のURLにあるものを使用する
318ことができる.
319
320 http://www.ftdichip.com/Drivers/VCP.htm
321
322
3235.リファレンス
324
3255.1 ディレクトリ構成・ファイル構成
326
327 target/gr_peach_gcc/
328 E_PACKAGE 簡易パッケージのファイルリスト
329 MANIFEST 個別パッケージのファイルリスト
330 Makefile.target Makefileのターゲット依存部
331 gdb_ram.ini GDBの起動スクリプト(RAM実行用)
332 gdb_rom.ini GDBの起動スクリプト(ROM実行用)
333 gr_peach.h ターゲットのハードウェア資源の定義
334 gr_peach_ram.ld 標準のリンカスクリプト(RAM実行用)
335 gr_peach_rom.ld 標準のリンカスクリプト(ROM実行用)
336 renesas_rza1h_swd.cfg OpenOCDの起動スクリプト
337 sf_boot.c ブートローダ(ROM実行用)
338 tPutLogGRPeach.c システムログの低レベル出力
339 tPutLogGRPeach.cdl システムログの低レベル出力のコンポーネント記述
340 tSIOPortGRPeach.cdl シリアルインタフェースドライバのターゲット
341 依存部(GR-PEACH用)のコンポーネント記述
342 tSIOPortGRPeachMain_inline.h シリアルインタフェースドライバの
343 ターゲット依存部(GR-PEACH用)
344 target.cdl コンポーネント記述ファイルのターゲット依存部
345 target_cfg1_out.h cfg1_out.cのリンクに必
346要なスタブの定義
347 target_kernel.cfg カーネル実装
348のコンフィギュレーションファイル
349 target_kernel.h kernel.hのターゲット依存部
350 target_kernel.trb kernel.trbのターゲット依存部
351 target_check.trb kernel_check.trbのターゲット依存部
352 target_kernel_impl.c カーネル実装
353のターゲット依存部
354 target_kernel_impl.h カーネル実装
355のターゲット依存部に関する定義
356 target_rename.def ターゲット依存部の内
357部識別名のリネーム定義
358 target_rename.h ターゲット依存部の内
359部識別名のリネーム
360 target_sil.h sil.hのターゲット依存部
361 target_stddef.h t_stddef.hのターゲット依存部
362 target_support.S カーネル実装
363のターゲット依存部(アセンブ
364 リ言語で記述した部分)
365 target_syssvc.h システムサービスのターゲット依存定義
366 target_test.h テストプログラムのターゲット依存定義
367 target_timer.cfg タイマドライバのコンフィギュレーションファイル
368 target_timer.h タイマドライバを使用するための定義
369 target_unrename.h ターゲット依存部の内
370部識別名のリネーム解除
371 target_user.txt ターゲット依存部のユーザーズマニュアル
372
3735.2 バージョン履歴
374
375 2016å¹´5月15日 Release 3.1.0 最初の一般å…
376¬é–‹
377
378以上
Note: See TracBrowser for help on using the repository browser.