ASPのSkyeyeターゲットの実行

用意するものは

  • Skyeye
  • asp(skyeyeターゲットでビルドしたものsample1とか)
  • skyeye.conf(起動に必要なconfigureファイル。aspのskyeyeターゲットフォルダにある)

でmsysで実行するとこんな感じ。

$ skyeye -e ./asp -c skyeye.conf
big_endian is false.
uart_mod:0, desc_in:, desc_out:, converter:
arch: arm
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0 
mach info: name at91, mach_init addr 0041A8B0
***
*** [UART_STDIO_WIN32]: unsupported for rxvt shell !!!
***     you should add "GOTO: startsh" to the target of
***     the link pointed to "msys.bat".
***

msys.batの修正が必要らしい。

PizzaFactory2上では?

$ skyeye.exe -e asp.elf -c skyeye.conf
big_endian is false.
arch: arm
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0
mach info: name at91, mach_init addr 0041A8B0
uart_mod:0, desc_in:, desc_out:, converter:
SKYEYE: use arm7100 mmu ops
exec file "asp.elf"'s format is elf32-little.
load section .text: addr = 0x00000000  size = 0x00007410.
load section .rodata: addr = 0x00007410  size = 0x00000f84.
load section .data: addr = 0x00100000  size = 0x00000000.
not load section .bss: addr = 0x00100000  size = 0x00004c58 .
not load section .comment: addr = 0x00000000  size = 0x000003f0 .
not load section .debug_aranges: addr = 0x00000000  size = 0x00000448 .
not load section .debug_pubnames: addr = 0x00000000  size = 0x00001205 .
not load section .debug_info: addr = 0x00000000  size = 0x0000f57e .
not load section .debug_abbrev: addr = 0x00000000  size = 0x0000302f .
not load section .debug_line: addr = 0x00000000  size = 0x000042a1 .
not load section .debug_frame: addr = 0x00000000  size = 0x00001328 .
not load section .debug_str: addr = 0x00000000  size = 0x000020ea .
not load section .debug_ranges: addr = 0x00000000  size = 0x00000340 .
start addr is set to 0x0000003c by exec file.

TOPPERS/ASP Kernel Release 1.3.2 for AT91SKYEYE(ARM) (Sep 10 2008, 16:19:21)
Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
                            Toyohashi Univ. of Technology, JAPAN
Copyright (C) 2004-2008 by Embedded and Real-Time Systems Laboratory
            Graduate School of Information Science, Nagoya Univ., JAPAN

System logging task is started on port 1.
Sample program starts (exinf = 0).
task1 is running (001).   |
task1 is running (002).   |
task1 is running (003).   |
task1 is running (004).   |
task1 is running (005).   |
task1 is running (006).   |

というわけで無事に起動しました。

動いたと思ったけど...

sample1をざっくり動かしただけなんだけど、時間関係のAPIの挙動がおかしい。
コマンドだと「S,d,c,b,V」全て時間に関係する
そういえば、向えの同僚がSkyeyeとASPターゲット依存部のコードにバグありますよとか言っていたなー...

追記(2008.9.26)

「時間関係のAPIの挙動がおかしい」ということを上で書いたけど、どうやらSkyeyeのtimerの進み具合がかなり遅いということらしい。
インストラクションセットの処理スピードが遅いというわけではなさそうなので、この問題はとりあえず棚上げにしておく