... | ... | @@ -5,7 +5,7 @@ CPU が一通り完成したら、その上でプログラムを動かすこと |
|
|
|
|
|
## メモリへの読み込み方法
|
|
|
|
|
|
[RAM の書き方](../FPGARAM)にも書いてあるとおり、メモリの初期化は、モジュール内に次のような記述をすることで行うことができます。
|
|
|
[RAM の書き方](FPGARAM)にも書いてあるとおり、メモリの初期化は、モジュール内に次のような記述をすることで行うことができます。
|
|
|
|
|
|
```verilog
|
|
|
initial $readmemh("/home/username/workspace/test.hex", mem);
|
... | ... | @@ -22,8 +22,8 @@ CPU が一通り完成したら、その上でプログラムを動かすこと |
|
|
| 0x10000-0x18000 | 32KiB | .rodata + .data + .bss + .comment(RAM) (データメモリ)|
|
|
|
| 0x18000-0x20000 | 32KiB | stack(RAM) (データメモリ)|
|
|
|
|
|
|
* 0xF6FF_F070にSTBするとその値がシリアルポートに書き込まれる
|
|
|
* 0xFFFF_FF00からLWするとハードウェアカウンタの値が読み出される
|
|
|
* 0xF6FF_F070にSTBするとその値がシリアルポートに書き込まれる([シリアル出力の利用](serialOutput)時までは無視してください)
|
|
|
* 0xFFFF_FF00からLWするとハードウェアカウンタの値が読み出される([ハードウェアカウンタの利用](hardwareCounter)時までは無視してください)
|
|
|
|
|
|
実装における具体的な注意点としては、
|
|
|
|
... | ... | |