| ... | @@ -34,7 +34,7 @@ FPGA に焼くのは、シミュレータでのデバッグが十分完了して |
... | @@ -34,7 +34,7 @@ FPGA に焼くのは、シミュレータでのデバッグが十分完了して |
|
|
|
|
|
|
|
### Coremark のトレースを使ったデバッグ
|
|
### Coremark のトレースを使ったデバッグ
|
|
|
|
|
|
|
|
b3exp/benchmarks/Coremark 内で `make` コマンドを打つことにより生成される.hexファイルを利用してシミュレーションした場合の、実行されるPCと機械語命令・デスティネーションレジスタ番号とそこに書き込まれた値・メモリアクセスに関する情報をダンプしたトレースを[内部用wiki](http://exp.mtl.t.u-tokyo.ac.jp/2021/b3exp-internal/wikis/home)に用意しています(※ b3exp/benchmarks/Coremark_for_Synthesis 内のプログラムとは内容が異なります)。
|
|
b3exp/benchmarks/Coremark 内で `make` コマンドを打つことにより生成される.hexファイルを利用してシミュレーションした場合の、実行されるPCと機械語命令・デスティネーションレジスタ番号とそこに書き込まれた値・メモリアクセスに関する情報をダンプしたトレースを[内部用wiki](http://exp.mtl.t.u-tokyo.ac.jp/2022/b3exp-internal/wikis/home)に用意しています(※ b3exp/benchmarks/Coremark_for_Synthesis 内のプログラムとは内容が異なります)。
|
|
|
|
|
|
|
|
自分の作った CPU でも同様の出力を`$display`や`$write`等で出力し、`(vim)diff`コマンドや`cut`コマンド等を組み合わせて、一致しているかを確認することでデバッグしてみましょう。
|
|
自分の作った CPU でも同様の出力を`$display`や`$write`等で出力し、`(vim)diff`コマンドや`cut`コマンド等を組み合わせて、一致しているかを確認することでデバッグしてみましょう。
|
|
|
|
|
|
| ... | @@ -87,7 +87,7 @@ Iterations/Sec が Coremark スコアの値です。また、これを動作周 |
... | @@ -87,7 +87,7 @@ Iterations/Sec が Coremark スコアの値です。また、これを動作周 |
|
|
|
|
|
|
|
### Coremark_for_Synthesisのトレース
|
|
### Coremark_for_Synthesisのトレース
|
|
|
|
|
|
|
|
要望がありましたので、Coremark_for_Synthesisのトレースも[内部用wiki](http://exp.mtl.t.u-tokyo.ac.jp/2021/b3exp-internal/wikis/home)に用意しました。クロック周波数の設定は1 MHzとなっていますので注意してください(クロック周波数を100 MHzなどにするとトレースが長大になりすぎるため、非常に低いクロック周波数としています)。
|
|
要望がありましたので、Coremark_for_Synthesisのトレースも[内部用wiki](http://exp.mtl.t.u-tokyo.ac.jp/2022/b3exp-internal/wikis/home)に用意しました。クロック周波数の設定は1 MHzとなっていますので注意してください(クロック周波数を100 MHzなどにするとトレースが長大になりすぎるため、非常に低いクロック周波数としています)。
|
|
|
|
|
|
|
|
## どうしても動かない
|
|
## どうしても動かない
|
|
|
|
|
|
| ... | @@ -99,4 +99,4 @@ Iterations/Sec が Coremark スコアの値です。また、これを動作周 |
... | @@ -99,4 +99,4 @@ Iterations/Sec が Coremark スコアの値です。また、これを動作周 |
|
|
1. [RAMの書き方の注意](FPGARAM#注意)を守りましょう
|
|
1. [RAMの書き方の注意](FPGARAM#注意)を守りましょう
|
|
|
1. [Coremark_for_Synthesisのトレースを使ったデバッグ](evaluation#coremark_for_synthesisのトレース)を行いましょう
|
|
1. [Coremark_for_Synthesisのトレースを使ったデバッグ](evaluation#coremark_for_synthesisのトレース)を行いましょう
|
|
|
1. [Uartのテストプログラムを使ったデバッグ](evaluation#uartのテストプログラム)を行いましょう
|
|
1. [Uartのテストプログラムを使ったデバッグ](evaluation#uartのテストプログラム)を行いましょう
|
|
|
1. ソースコードをgitlabにpushしたうえでTAにヘルプを求めましょう |
|
1. ソースコードをgitlabにpushしたうえでTAにヘルプを求めましょう |
|
\ No newline at end of file |
|
|