Skip to content

alvstakahashi/TOPPERS_SSP_shrink_V850_For_athrill

Repository files navigation

DockerDesktop4.2版対応

Athrill 実行環境事前設定の説明.docx<を更新しました。

DockerのインストールがWin10 64Homeで可能になり

コマンド1つでほぼ可能になりますのでマニュアルを更新しました。

2021/11/30

DockerHubバージョン対応
issue1の指摘対応

athrill での動作確認済み

#athrill -i -d device_config.txt -m memory.txt test_main.elf
で起動してください。

手順について
Windows10Pro64bit にて確認したためその手順の記載しています。

1.以下のサイトで、athrillを起動してみてください
 TOPPERS/athrillをdockerで利用できるようにするまで
 https://qiita.com/kanetugu2018/items/f1368a6da7bdc773cfd9

 DockerHUbにてビルド環境およびathrill本体さらにサンプルアプリケーションが
 ビルド済みで組み込まれています。 上記サイトの手順のとおりに
 WSLとDockerのセットアップを行う必要があります。

2.本ソースを取り込んで実行方法
 本ソースをクローンもしくはダウンロードし、例えば
 D:/usr2/
にダウンロードしておきます。

 PowerShellから以下を実行
   PS C:\WINDOWS\system32> docker run -v /D/usr2:/usr2 -it kanetugu2015/athrill_asp3:ver3.0

#cd /usr2/TOPPERS_SSP_shrink_V850_For_athrill\V850-SSP-SHR
#make
#athrill -i -d device_config.txt -m memory.txt test_main.elf

例)
PS C:\WINDOWS\system32>
PS C:\WINDOWS\system32> docker run -v /D/usr2:/usr2 -it kanetugu2015/athrill_asp3:ver3.0
root@a6b478c50e79:/# cd /usr2
root@a6b478c50e79:/usr2# cd V850-SSP-SHR
root@a6b478c50e79:/usr2/V850-SSP-SHR# athrill -i -d device_config.txt -m memory.txt test_main.elf
core id num=0
ROM : START=0x0 SIZE=512
RAM : START=0x6ff7000 SIZE=512
Elf loading was succeeded:0x0 - 0x32e7 : 12.743 KB
Elf loading was succeeded:0x32e8 - 0x41fc : 0.0 KB
Elf loading was succeeded:0x41fc - 0x4afc : 2.256 KB
ELF SYMBOL SECTION LOADED:index=16
ELF SYMBOL SECTION LOADED:sym_num=195
ELF STRING TABLE SECTION LOADED:index=17
[DBG>[NEXT> pc=0x0 vector.S 9
c
[CPU>WARNING: Found invalid data write on not variable region(addr=0x6ff75f2 size=1) : bss_clear(0x166a)@_kernel_stack
WARNING: Found invalid data write on not variable region(addr=0x6ff75f3 size=1) : bss_clear(0x166a)@_kernel_stack
WARNING: Found invalid data write on not variable region(addr=0x6ff7efe size=1) : bss_clear(0x166a)@_kernel_stack
WARNING: Found invalid data write on not variable region(addr=0x6ff7eff size=1) : bss_clear(0x166a)@_kernel_stack
task1-----------------
task2 RUNNING-----------------------------------------------------
TASK2
task1-----------------
^C
root@a6b478c50e79:/usr2/V850-SSP-SHR#

3.Visual Studio Code のリモートコンテナでの実行例
VScodeのremote Contenerを組み込んでいれば
V850-SSP-SHR フォルダを 
Remote-Containers:Open Folder in Container...
で読みこむことでDockerに接続されそのまま実行可能です。

kanetugu2015/athrill_asp3:ver3.0 をDockerfileに記載しています。

手順について詳しく説明を以下の資料を参照ください。
VSCodeを利用した仮想化リアルタイムOS実演.pptx

そのほか:
PCの環境設定は、
Athrill 実行環境事前設定の説明.docx
を参照ください。

以上 2020.8.12追記

TOPPERS_SSPシュリンク版 V850移植

TOPPERS_SSP_shrink_V850_For_athrill

TOPPERS_SSPシュリンク版をV850に移植する。 ターゲットは、athrill という仮想マシン。

本リポジトリは、athrillのberametalコードから TOPPERS_SSPシュリンクに移植していきます。 完成後、どのように変更したかが見えるかと思います。

2018.8.16現在、baremetalコードをタイマー割り込みのみ 追加したコードから開始します。

なぜか、表示文字が 

ttiimmeerr__iinntteerrrruupptt__hhaannddlleerr!!!!

のように 2重にプリントされる問題がありますが、 とりあえずやっていきます。

8/17 追記---------------------------------------------------------

  • タスク2つ 動作 印字がおかしいまま Revisionでいったん完成

以下のように出ればOKです 
D:\DEV\V850-SSP-HM\GIT\TOPPERS_SSP_shrink_V850_For_athrill\V850-SSP-SHR>athrill -i -d device_config.txt -m memory.txt test_main.elf
core id num=0
ROM : START=0x0 SIZE=512
RAM : START=0x6ff7000 SIZE=512
WARNING: unknown memory type=MMAP
Elf loading was succeeded:0x0 - 0x2f2f : 11.815 KB
Elf loading was succeeded:0x2f30 - 0x4340 : 0.0 KB
Elf loading was succeeded:0x4340 - 0x4740 : 1.0 KB
ELF SYMBOL SECTION LOADED:index=17
ELF SYMBOL SECTION LOADED:sym_num=194
ELF STRING TABLE SECTION LOADED:index=18
search_region:not found error:addr=0x7ff0000
[DBG>
HIT break:0x0
[NEXT> pc=0x0 vector.S 9
c
[CPU>WARNING: Found invalid data write on not variable region(addr=0x6ff75f2 size=1) : bss_clear(0x144e)@stack_data
WARNING: Found invalid data write on not variable region(addr=0x6ff75f3 size=1) : bss_clear(0x144e)@stack_data
WARNING: Found invalid data write on not variable region(addr=0x6ff83fe size=1) : bss_clear(0x144e)@stack_data
WARNING: Found invalid data write on not variable region(addr=0x6ff83ff size=1) : bss_clear(0x144e)@stack_data
task1-----------------
task2 RUNNING-----------------------------------------------------
TASK2
task1-----------------
TASK2 OFF
task1-----------------
TASK2
task1-----------------
task1-----------------
TASK2 OFF
task1-----------------
TASK2
task1-----------------
TASK2 OFF
task1-----------------
task1-----------------
TASK2
task1-----------------
TASK2 OFF
task1-----------------

---------------------------------------------------------------
task何某が0.5秒くらいで表示が増えていけばOKです。 文字が2重になる問題は、atrhillをビルドしなおしたら治りました。

開発環境

Windows10 64bit MinGW 32bit V850 gcc KPIT

実行環境 athrill2 Windows版

目的(余談) Raspberry piでのJTAGデバッグはあれはあれで意味があると思いますが もっと簡単にOSを実行できる環境があったほうがいいと思ったからです。 CubeSuite+とかでRXでも可能ですが、あまりメーカーよりじゃなく すべてオープンソースのほうがいいし、 athrillのほうが高機能でデバッグできそうな感じです。 まだよく使いこなせていません。