diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index aa9d57edc..079c3e0ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -132,14 +132,14 @@ serdiv-quest: s-asm-quest: stage: serpent script: - - make -j${NUM_JOBS} run-asm-tests defines=SERPENT_PULP+AXI64_CACHE_PORTS batch-mode=1 + - make -j${NUM_JOBS} run-asm-tests defines=PITON_ARIANE+AXI64_CACHE_PORTS batch-mode=1 dependencies: - build s-bench-quest: stage: serpent script: - - make -j${NUM_JOBS} run-benchmarks defines=SERPENT_PULP+AXI64_CACHE_PORTS batch-mode=1 + - make -j${NUM_JOBS} run-benchmarks defines=PITON_ARIANE+AXI64_CACHE_PORTS batch-mode=1 dependencies: - build @@ -147,7 +147,7 @@ s-bench-quest: s-asm1-ver: stage: serpent script: - - make -j${NUM_JOBS} run-asm-tests1-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make -j${NUM_JOBS} run-asm-tests1-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS dependencies: - build @@ -155,14 +155,14 @@ s-asm1-ver: s-asm2-ver: stage: serpent script: - - make -j${NUM_JOBS} run-asm-tests2-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make -j${NUM_JOBS} run-asm-tests2-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS dependencies: - build s-bench-ver: stage: serpent script: - - make -j${NUM_JOBS} run-benchmarks-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make -j${NUM_JOBS} run-benchmarks-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS dependencies: - build @@ -187,7 +187,7 @@ s-dcache-quest: # s-torture: # stage: serpent # script: -# - make torture-rtest defines=SERPENT_PULP+AXI64_CACHE_PORTS batch-mode=1 -# - make torture-rtest-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS +# - make torture-rtest defines=PITON_ARIANE+AXI64_CACHE_PORTS batch-mode=1 +# - make torture-rtest-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS # dependencies: # - build diff --git a/.travis.yml b/.travis.yml index 6d8198aee..738c74283 100644 --- a/.travis.yml +++ b/.travis.yml @@ -108,27 +108,27 @@ jobs: name: run riscv benchmarks (serpent) script: - ci/build-riscv-tests.sh - - make -j${NUM_JOBS} run-benchmarks-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make -j${NUM_JOBS} run-benchmarks-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS # rv64ui-p-* tests - stage: test name: run asm tests1 (serpent) script: - ci/build-riscv-tests.sh - - make -j${NUM_JOBS} run-asm-tests1-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make -j${NUM_JOBS} run-asm-tests1-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS # rv64ui-v-* tests - stage: test name: run asm tests2 (serpent) script: - ci/build-riscv-tests.sh - - make -j${NUM_JOBS} run-asm-tests2-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make -j${NUM_JOBS} run-asm-tests2-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS - stage: test name: run torture (serpent) script: - ci/get-torture.sh - make clean - - make torture-gen defines=SERPENT_PULP+AXI64_CACHE_PORTS - - make torture-rtest-verilator defines=SERPENT_PULP+AXI64_CACHE_PORTS + - make torture-gen defines=PITON_ARIANE+AXI64_CACHE_PORTS + - make torture-rtest-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS diff --git a/README.md b/README.md index 6b0e44813..681448343 100644 --- a/README.md +++ b/README.md @@ -221,7 +221,7 @@ Ariane version 4.0 has preliminary support for the OpenPiton distributed cache s The corresponding integration patches will soon be released on [OpenPiton GitHub repository](https://github.com/PrincetonUniversity/openpiton). -To activate the different cache system, compile your code with the macro `SERPENT_PULP`. +To activate the different cache system, compile your code with the macro `PITON_ARIANE`. Note that this feature is still in Beta stage, and may hence not be completely bug-free. diff --git a/fpga/src/bootrom/bootrom.h b/fpga/src/bootrom/bootrom.h index 9dde46a3a..262493949 100644 --- a/fpga/src/bootrom/bootrom.h +++ b/fpga/src/bootrom/bootrom.h @@ -1,14 +1,755 @@ // Auto-generated code -const int reset_vec_size = 790; +const int reset_vec_size = 1884; uint32_t reset_vec[reset_vec_size] = { + 0x00800913, + 0x30491073, + 0x00000493, + 0xf1402973, + 0x03249663, + 0x0210011b, + 0x01a11113, + 0x241000ef, + 0x020004b7, + 0x00100913, + 0x0124a023, + 0x00448493, + 0x02000937, + 0x4009091b, + 0xff24c6e3, + 0x10500073, + 0x34402973, + 0x00897913, + 0xfe090ae3, + 0x020004b7, + 0xf1402973, + 0x00291913, + 0x00990933, + 0x00092023, + 0x0004a903, + 0xfe091ee3, + 0x00448493, + 0x02000937, + 0x4009091b, + 0xff24c6e3, + 0xf1402573, + 0x00001597, + 0xb8458593, + 0x0010049b, + 0x01f49493, + 0x00048067, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00238082, + 0x808200b5, + 0x00054503, + 0x07b78082, + 0xc5031000, + 0x75130147, + 0x80820205, + 0x10000737, + 0x01474783, + 0x0207f793, + 0x0023dfe5, + 0x808200a7, + 0x100007b7, + 0x00078223, + 0xf8000713, + 0x00e78623, + 0x8023476d, + 0x822300e7, + 0x470d0007, + 0x00e78623, + 0xfc700713, + 0x00e78423, + 0x02000713, + 0x00e78823, + 0x11418082, + 0xe406e022, + 0x4503842a, + 0xe5090004, + 0x640260a2, + 0x80820141, + 0xfa5ff0ef, + 0xb7f50405, + 0x00001797, + 0x98078793, + 0x00f57713, + 0x4703973e, + 0x81110007, + 0x80a397aa, + 0xc78300e5, + 0x80230007, + 0x808200f5, + 0xf0227179, + 0xe84aec26, + 0x892af406, + 0x54e14461, + 0x0089553b, + 0x7513002c, + 0xf0ef0ff5, + 0x4503fc3f, + 0x34610081, + 0xf55ff0ef, + 0x00914503, + 0xf4dff0ef, + 0xfe9410e3, + 0x740270a2, + 0x694264e2, + 0x80826145, + 0xf0227179, + 0xe84aec26, + 0x892af406, + 0x03800413, + 0x553354e1, + 0x002c0089, + 0x0ff57513, + 0xf81ff0ef, + 0x00814503, + 0xf0ef3461, + 0x4503f13f, + 0xf0ef0091, + 0x10e3f0bf, + 0x70a2fe94, + 0x64e27402, + 0x61456942, + 0x11018082, + 0xec06002c, + 0xf55ff0ef, + 0x00814503, + 0xee9ff0ef, + 0x00914503, + 0xee1ff0ef, + 0x610560e2, + 0xc10c8082, + 0x41088082, + 0x80822501, + 0x00002517, + 0x05131101, + 0xec068485, + 0xe426e822, + 0xf03ff0ef, + 0x200007b7, + 0xc3b84729, + 0x000147a9, + 0xfff537fd, + 0x20000437, + 0x10400793, + 0x5064d03c, + 0x00002517, + 0x82850513, + 0xedbff0ef, + 0x95132481, + 0x91010204, + 0xf51ff0ef, + 0x00002517, + 0x83050513, + 0xec3ff0ef, + 0x16600793, + 0x5064d03c, + 0x00001517, + 0x7fc50513, + 0xeafff0ef, + 0x95132481, + 0x91010204, + 0xf25ff0ef, + 0x00002517, + 0x80450513, + 0xe97ff0ef, + 0xd03c4799, + 0x60e26442, + 0x151764a2, + 0x05130000, + 0x61057de5, + 0xe7fff06f, + 0x07b71101, + 0xec062000, + 0xe426e822, + 0xdbb85779, + 0x0793d7a8, + 0x00010640, + 0xfff537fd, + 0x200007b7, + 0x10600713, + 0x53f8d3b8, + 0x06478493, + 0xff658b05, + 0x53fc57e0, + 0x8b852401, + 0x1517e395, + 0x05130000, + 0xf0ef7ae5, + 0x4088e39f, + 0x91011502, + 0xeb1ff0ef, + 0x00001517, + 0x79050513, + 0xe23ff0ef, + 0x200007b7, + 0x7513577d, + 0x60e20ff4, + 0xdbb86442, + 0xd3b84719, + 0x610564a2, + 0x07938082, + 0xee631000, + 0x07b706b7, + 0x57792000, + 0x06b7dbb8, + 0x47812000, + 0x0007871b, + 0x04b76163, + 0x03200793, + 0x37fd0001, + 0x0713fff5, + 0x07b71060, + 0xd3b82000, + 0x20000737, + 0x8b85537c, + 0x0537fff5, + 0x08372000, + 0x869b2000, + 0xe1630007, + 0x07b702b6, + 0x577d2000, + 0x4719dbb8, + 0x4501d3b8, + 0x07338082, + 0x470300f5, + 0x07850007, + 0xb77dd6b8, + 0x8b055178, + 0x2683ff69, + 0x073306c8, + 0x078500f6, + 0x00d70023, + 0x557db7d9, + 0x05138082, + 0xf06f0ff0, + 0x7179f03f, + 0xe432f406, + 0xec26f022, + 0x84aa842e, + 0xfebff0ef, + 0x0404e513, + 0xee9ff0ef, + 0x0184551b, + 0xee1ff0ef, + 0x0104551b, + 0x0ff57513, + 0xed5ff0ef, + 0x0084551b, + 0x0ff57513, + 0xec9ff0ef, + 0x0ff47513, + 0xec1ff0ef, + 0x04136622, + 0x85320640, + 0xeb5ff0ef, + 0xfabff0ef, + 0x0185179b, + 0x4187d79b, + 0x0007d463, + 0xf47d147d, + 0x740270a2, + 0x614564e2, + 0x11018082, + 0x842ae822, + 0x00001517, + 0x68c50513, + 0xe42eec06, + 0xcfbff0ef, + 0xf0ef8522, + 0x1517cf5f, + 0x05130000, + 0xf0ef6865, + 0x65a2ce9f, + 0xf0ef852e, + 0x6442da5f, + 0x151760e2, + 0x05130000, + 0x610563e5, + 0xccfff06f, + 0xe8221101, + 0xe4266409, + 0xe04aec06, + 0x71040413, + 0x06134485, + 0x45810950, + 0xf0ef4501, + 0x347df39f, + 0xf0ef892a, + 0xc00df29f, + 0xfe9915e3, + 0x00001517, + 0x64450513, + 0xf0ef4585, + 0x4505f89f, + 0x644260e2, + 0x690264a2, + 0x80826105, + 0xbfcd4501, + 0x06131101, + 0x05930870, + 0x45211aa0, + 0xe822ec06, + 0xe04ae426, + 0xef3ff0ef, + 0xf0ef892a, + 0xf0efee5f, + 0xf0efee1f, + 0x84aaeddf, + 0xed7ff0ef, + 0xf0ef842a, + 0xf0efed1f, + 0x4785ecdf, + 0x1b634501, + 0x88bd00f9, + 0x01249863, + 0x0004051b, + 0xf5650513, + 0x00153513, + 0x644260e2, + 0x690264a2, + 0x80826105, + 0x06131141, + 0x45810650, + 0x03700513, + 0xe022e406, + 0xe9bff0ef, + 0xf0ef842a, + 0x1517e8df, + 0x85a20000, + 0x5b650513, + 0xef3ff0ef, + 0x0004051b, + 0x640260a2, + 0x3513157d, + 0x01410015, + 0x11018082, + 0xec06e426, + 0x4485e822, + 0xfbdff0ef, + 0x07700613, + 0x400005b7, + 0x02900513, + 0xe57ff0ef, + 0x85aa842a, + 0x00001517, + 0x57c50513, + 0xeb3ff0ef, + 0xe3bff0ef, + 0xfc940ce3, + 0x0004051b, + 0x644260e2, + 0x351364a2, + 0x61050015, + 0x11418082, + 0xe022e406, + 0xc89ff0ef, + 0x00001517, + 0x55450513, + 0xb8fff0ef, + 0x347d4429, + 0xe07ff0ef, + 0xf0effc6d, + 0x57fdeb7f, + 0xf0efc911, + 0x57f9efbf, + 0xf0efc511, + 0x4781f89f, + 0x57f5e111, + 0x640260a2, + 0x0141853e, + 0x8de98082, + 0x0075d79b, + 0x0045d51b, + 0x8d2d8d3d, + 0x00451593, + 0x75138d2d, + 0x808207f5, + 0x0085579b, + 0x8d5d0522, + 0x91411542, + 0xd51b8da9, + 0x893d0045, + 0x95138da9, + 0x8d2d00c5, + 0x0105151b, + 0x4105551b, + 0x0105179b, + 0x0107d79b, + 0x17016709, + 0x0057979b, + 0x8d3d8ff9, + 0x91411542, + 0x71558082, + 0xfd26e1a2, + 0x84b2f94a, + 0xf54ee586, + 0xed56f152, + 0xe55ee95a, + 0x842e892a, + 0x567d4781, + 0x08000713, + 0x00f106b3, + 0x00c68023, + 0x9be30785, + 0x559bfee7, + 0x45010184, + 0xf73ff0ef, + 0x0104559b, + 0x0ff5f593, + 0xf67ff0ef, + 0x0084559b, + 0x0ff5f593, + 0xf5bff0ef, + 0x0ff47593, + 0xf53ff0ef, + 0x0015161b, + 0x00166613, + 0x0ff67613, + 0x454985a2, + 0xd23ff0ef, + 0xf0efc501, + 0xbff5d15f, + 0x90811482, + 0x20090913, + 0x0fe00a93, + 0x3e800b13, + 0xe0090413, + 0xcfbff0ef, + 0xff551ee3, + 0x86224981, + 0x04000593, + 0xf0ef850a, + 0x4a01c65f, + 0x04000b93, + 0x014407b3, + 0x0007c583, + 0x0a05854e, + 0xf11ff0ef, + 0x17e389aa, + 0x0413ff7a, + 0x1ae30404, + 0xf0effd24, + 0x151bcc1f, + 0x14130085, + 0x90410305, + 0xcb3ff0ef, + 0x14428c49, + 0x90412981, + 0x04899463, + 0x0364e7b3, + 0x1517e799, + 0x05130000, + 0xf0ef3f25, + 0x14fda15f, + 0x20090913, + 0xf89046e3, + 0x46054401, + 0x45314581, + 0xc87ff0ef, + 0xc7bff0ef, + 0x60ae8522, + 0x74ea640e, + 0x79aa794a, + 0x6aea7a0a, + 0x6baa6b4a, + 0x80826169, + 0xbfe15479, + 0xe8a2711d, + 0xec5ef456, + 0xe4a6ec86, + 0xfc4ee0ca, + 0xf05af852, + 0xe466e862, + 0x1080e06a, + 0x8bae8aaa, + 0xe1bff0ef, + 0x1517c90d, + 0x05130000, + 0xf0ef3925, + 0x54fd9adf, + 0xfa040113, + 0x852660e6, + 0x64a66446, + 0x79e26906, + 0x7aa27a42, + 0x6be27b02, + 0x6ca26c42, + 0x61256d02, + 0x15178082, + 0x05130000, + 0xf0ef38a5, + 0x710197df, + 0x45854605, + 0xf0ef850a, + 0x890ae6df, + 0xc90584aa, + 0x00001517, + 0x38450513, + 0x95fff0ef, + 0x00001517, + 0x39050513, + 0x953ff0ef, + 0xf0ef8526, + 0x15179cff, + 0x05130000, + 0xf0ef2ae5, + 0x54f9941f, + 0x1517bf51, + 0x05130000, + 0xf0ef3865, + 0x1517931f, + 0x05130000, + 0xf0ef39a5, + 0x6502925f, + 0x9a1ff0ef, + 0x00001517, + 0x39850513, + 0x913ff0ef, + 0xf0ef4522, + 0x151794ff, + 0x05130000, + 0xf0ef3965, + 0x4532901f, + 0x93dff0ef, + 0x00001517, + 0x39450513, + 0x8efff0ef, + 0xf0ef4542, + 0x151792bf, + 0x05130000, + 0xf0ef3925, + 0x45528ddf, + 0x919ff0ef, + 0x00001517, + 0x39050513, + 0x8cbff0ef, + 0xf0ef6562, + 0x1517947f, + 0x05130000, + 0xf0ef3965, + 0x75028b9f, + 0x935ff0ef, + 0x00001517, + 0x39450513, + 0x8a7ff0ef, + 0xf0ef6526, + 0x1517923f, + 0x05130000, + 0xf0ef3a25, + 0x4546895f, + 0x8d1ff0ef, + 0x00001517, + 0x3b050513, + 0x883ff0ef, + 0xf0ef4556, + 0x15178bff, + 0x05130000, + 0xf0ef1de5, + 0x2583871f, + 0x71010489, + 0x850a4605, + 0xd5fff0ef, + 0x84aa8b0a, + 0x08010993, + 0x02010913, + 0x10051b63, + 0x4c114cc1, + 0x00001517, + 0x39050513, + 0x843ff0ef, + 0x0ff4f513, + 0x8ffff0ef, + 0x00001517, + 0x39450513, + 0xf8098d13, + 0x82bff0ef, + 0x07b34a01, + 0xc503014d, + 0x0a050007, + 0x8dfff0ef, + 0xff9a19e3, + 0x00001517, + 0x39050513, + 0x80bff0ef, + 0xf9098a13, + 0x000a4503, + 0xf0ef0a05, + 0x1be38c1f, + 0x1517ff2a, + 0x05130000, + 0xf0ef3925, + 0x3503fecf, + 0x8a130009, + 0xf0effb89, + 0x1517863f, + 0x05130000, + 0xf0ef38a5, + 0x3503fd4f, + 0xf0ef0089, + 0x151784ff, + 0x05130000, + 0xf0ef3865, + 0x3503fc0f, + 0xf0ef0109, + 0x151783bf, + 0x05130000, + 0xf0ef3825, + 0x4503facf, + 0x0a05000a, + 0x867ff0ef, + 0xff3a1be3, + 0x00001517, + 0x10050513, + 0xf0ef2485, + 0x0993f90f, + 0x0913080a, + 0x9de30809, + 0x1517f384, + 0x05130000, + 0xf0ef35e5, + 0x2583f78f, + 0x865e020b, + 0xf0ef8556, + 0x84aac69f, + 0x1517c929, + 0x05130000, + 0xf0ef1825, + 0x1517f5cf, + 0x05130000, + 0xf0ef18e5, + 0x8526f50f, + 0xfccff0ef, + 0x00001517, + 0x0ac50513, + 0x1517bbfd, + 0x05130000, + 0xf0ef15a5, + 0x1517f34f, + 0x05130000, + 0xf0ef1665, + 0x8526f28f, + 0xfa4ff0ef, + 0x00001517, + 0x08450513, + 0x1517bbd9, + 0x05130000, + 0xf0ef30a5, + 0xb38df0cf, + 0xe4061141, + 0xed0ff0ef, + 0x00001517, + 0x02450513, + 0xef6ff0ef, + 0x65a14505, + 0xf0ef057e, + 0xe911d13f, 0x0010041b, 0x01f41413, - 0xf1402573, 0x00000597, - 0x07458593, - 0x00008402, + 0x17c58593, + 0xa0018402, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x33323130, + 0x37363534, + 0x42413938, + 0x46454443, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, @@ -19,11 +760,6 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000000, 0x00000000, 0x00000000, - 0xf1402573, - 0x00000597, - 0x03c58593, - 0x10500073, - 0x0000bff5, 0x00000000, 0x00000000, 0x00000000, @@ -36,15 +772,15 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000000, 0x00000000, 0xedfe0dd0, - 0xd20b0000, + 0x820e0000, 0x38000000, - 0x30090000, + 0xe00a0000, 0x28000000, 0x11000000, 0x10000000, 0x00000000, - 0xa2020000, - 0xf8080000, + 0xa2030000, + 0xa80a0000, 0x00000000, 0x00000000, 0x00000000, @@ -170,11 +906,11 @@ uint32_t reset_vec[reset_vec_size] = { 0x03000000, 0x04000000, 0xb5000000, - 0x01000000, + 0x02000000, 0x03000000, 0x04000000, 0xbb000000, - 0x01000000, + 0x02000000, 0x02000000, 0x02000000, 0x02000000, @@ -197,6 +933,37 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000008, 0x02000000, 0x01000000, + 0x7364656c, + 0x00000000, + 0x03000000, + 0x0a000000, + 0x1b000000, + 0x6f697067, + 0x64656c2d, + 0x00000073, + 0x01000000, + 0x72616568, + 0x61656274, + 0x656c2d74, + 0x00000064, + 0x03000000, + 0x0c000000, + 0xc3000000, + 0x01000000, + 0x01000000, + 0x00000000, + 0x03000000, + 0x0a000000, + 0xc9000000, + 0x72616568, + 0x61656274, + 0x00000074, + 0x03000000, + 0x00000000, + 0xdf000000, + 0x02000000, + 0x02000000, + 0x01000000, 0x00636f73, 0x03000000, 0x04000000, @@ -219,7 +986,7 @@ uint32_t reset_vec[reset_vec_size] = { 0x00007375, 0x03000000, 0x00000000, - 0xc3000000, + 0xf6000000, 0x01000000, 0x6e696c63, 0x30324074, @@ -234,10 +1001,10 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000000, 0x03000000, 0x10000000, - 0xca000000, - 0x01000000, + 0xfd000000, + 0x02000000, 0x03000000, - 0x01000000, + 0x02000000, 0x07000000, 0x03000000, 0x10000000, @@ -248,7 +1015,7 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000c00, 0x03000000, 0x08000000, - 0xde000000, + 0x11010000, 0x746e6f63, 0x006c6f72, 0x02000000, @@ -280,10 +1047,10 @@ uint32_t reset_vec[reset_vec_size] = { 0xa0000000, 0x03000000, 0x10000000, - 0xca000000, - 0x01000000, + 0xfd000000, + 0x02000000, 0x0b000000, - 0x01000000, + 0x02000000, 0x09000000, 0x03000000, 0x10000000, @@ -294,20 +1061,20 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000004, 0x03000000, 0x04000000, - 0xe8000000, + 0x1b010000, 0x07000000, 0x03000000, 0x04000000, - 0xfb000000, + 0x2e010000, 0x03000000, 0x03000000, 0x04000000, 0xb5000000, - 0x02000000, + 0x03000000, 0x03000000, 0x04000000, 0xbb000000, - 0x02000000, + 0x03000000, 0x02000000, 0x01000000, 0x75626564, @@ -324,8 +1091,8 @@ uint32_t reset_vec[reset_vec_size] = { 0x00333130, 0x03000000, 0x08000000, - 0xca000000, - 0x01000000, + 0xfd000000, + 0x02000000, 0xffff0000, 0x03000000, 0x10000000, @@ -336,7 +1103,7 @@ uint32_t reset_vec[reset_vec_size] = { 0x00100000, 0x03000000, 0x08000000, - 0xde000000, + 0x11010000, 0x746e6f63, 0x006c6f72, 0x02000000, @@ -363,23 +1130,23 @@ uint32_t reset_vec[reset_vec_size] = { 0x80f0fa02, 0x03000000, 0x04000000, - 0x06010000, + 0x39010000, 0x00c20100, 0x03000000, 0x04000000, - 0x14010000, - 0x02000000, + 0x47010000, + 0x03000000, 0x03000000, 0x04000000, - 0x25010000, + 0x58010000, 0x01000000, 0x03000000, 0x04000000, - 0x30010000, + 0x63010000, 0x02000000, 0x03000000, 0x04000000, - 0x3a010000, + 0x6d010000, 0x04000000, 0x02000000, 0x01000000, @@ -411,11 +1178,11 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000000, 0x03000000, 0x04000000, - 0x14010000, - 0x02000000, + 0x47010000, + 0x03000000, 0x03000000, 0x08000000, - 0x25010000, + 0x58010000, 0x02000000, 0x02000000, 0x03000000, @@ -427,24 +1194,24 @@ uint32_t reset_vec[reset_vec_size] = { 0x00100000, 0x03000000, 0x08000000, - 0x47010000, + 0x7a010000, 0x746e696b, 0x00377865, 0x03000000, 0x04000000, - 0x53010000, + 0x86010000, 0x01000000, 0x03000000, 0x04000000, - 0x63010000, + 0x96010000, 0x01000000, 0x03000000, 0x04000000, - 0x74010000, + 0xa7010000, 0x08000000, 0x03000000, 0x04000000, - 0x8b010000, + 0xbe010000, 0x04000000, 0x01000000, 0x40636d6d, @@ -462,16 +1229,16 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000000, 0x03000000, 0x04000000, - 0x9a010000, + 0xcd010000, 0x20bcbe00, 0x03000000, 0x08000000, - 0xac010000, + 0xdf010000, 0xe40c0000, 0xe40c0000, 0x03000000, 0x00000000, - 0xbb010000, + 0xee010000, 0x02000000, 0x02000000, 0x01000000, @@ -504,22 +1271,22 @@ uint32_t reset_vec[reset_vec_size] = { 0x006b726f, 0x03000000, 0x04000000, - 0x14010000, - 0x02000000, + 0x47010000, + 0x03000000, 0x03000000, 0x08000000, - 0x25010000, + 0x58010000, 0x03000000, 0x00000000, 0x03000000, 0x06000000, - 0xc6010000, + 0xf9010000, 0x00350a00, 0x00002201, 0x03000000, 0x04000000, - 0xd8010000, - 0x03000000, + 0x0b020000, + 0x04000000, 0x03000000, 0x10000000, 0x67000000, @@ -529,23 +1296,23 @@ uint32_t reset_vec[reset_vec_size] = { 0x00000100, 0x03000000, 0x04000000, - 0xe3010000, + 0x16020000, 0x01000000, 0x03000000, 0x04000000, - 0xef010000, + 0x22020000, 0x01000000, 0x03000000, 0x04000000, - 0x0b020000, + 0x3e020000, 0x00000000, 0x03000000, 0x04000000, - 0x2a020000, + 0x5d020000, 0x01000000, 0x03000000, 0x18000000, - 0x3c020000, + 0x6f020000, 0x6c785f69, 0x615f786e, 0x655f6978, @@ -554,23 +1321,23 @@ uint32_t reset_vec[reset_vec_size] = { 0x00657469, 0x03000000, 0x04000000, - 0x4a020000, + 0x7d020000, 0x01000000, 0x03000000, 0x04000000, - 0x5c020000, + 0x8f020000, 0x04000000, 0x03000000, 0x04000000, - 0x70020000, + 0xa3020000, 0x01000000, 0x03000000, 0x04000000, - 0x82020000, + 0xb5020000, 0x00000000, 0x03000000, 0x04000000, - 0x94020000, + 0xc7020000, 0x01000000, 0x01000000, 0x6f69646d, @@ -612,13 +1379,90 @@ uint32_t reset_vec[reset_vec_size] = { 0x03000000, 0x04000000, 0xb5000000, - 0x03000000, + 0x04000000, 0x03000000, 0x04000000, 0xbb000000, + 0x04000000, + 0x02000000, + 0x02000000, + 0x02000000, + 0x01000000, + 0x6f697067, + 0x30303440, + 0x30303030, + 0x00000030, 0x03000000, + 0x04000000, + 0xd5020000, 0x02000000, - 0x02000000, + 0x03000000, + 0x15000000, + 0x1b000000, + 0x786e6c78, + 0x7370782c, + 0x6970672d, + 0x2e312d6f, + 0x612e3030, + 0x00000000, + 0x03000000, + 0x00000000, + 0xe1020000, + 0x03000000, + 0x10000000, + 0x67000000, + 0x00000000, + 0x00000040, + 0x00000000, + 0x00000100, + 0x03000000, + 0x04000000, + 0xf1020000, + 0x00000000, + 0x03000000, + 0x04000000, + 0x01030000, + 0x00000000, + 0x03000000, + 0x04000000, + 0x13030000, + 0x00000000, + 0x03000000, + 0x04000000, + 0x25030000, + 0x00000000, + 0x03000000, + 0x04000000, + 0x39030000, + 0x08000000, + 0x03000000, + 0x04000000, + 0x49030000, + 0x08000000, + 0x03000000, + 0x04000000, + 0x5a030000, + 0x00000000, + 0x03000000, + 0x04000000, + 0x71030000, + 0x01000000, + 0x03000000, + 0x04000000, + 0x7e030000, + 0xffffffff, + 0x03000000, + 0x04000000, + 0x8f030000, + 0xffffffff, + 0x03000000, + 0x04000000, + 0xb5000000, + 0x01000000, + 0x03000000, + 0x04000000, + 0xbb000000, + 0x01000000, 0x02000000, 0x02000000, 0x02000000, @@ -671,126 +1515,376 @@ uint32_t reset_vec[reset_vec_size] = { 0x6e696c00, 0x702c7875, 0x646e6168, - 0x7200656c, - 0x65676e61, - 0x6e690073, - 0x72726574, - 0x73747075, - 0x7478652d, + 0x6700656c, + 0x736f6970, + 0x6e696c00, + 0x642c7875, + 0x75616665, + 0x742d746c, + 0x67676972, + 0x72007265, + 0x69617465, + 0x74732d6e, + 0x2d657461, + 0x70737573, 0x65646e65, - 0x65720064, - 0x616e2d67, - 0x0073656d, - 0x63736972, - 0x616d2c76, - 0x72702d78, - 0x69726f69, - 0x72007974, - 0x76637369, - 0x65646e2c, - 0x75630076, - 0x6e657272, - 0x70732d74, - 0x00646565, - 0x65746e69, - 0x70757272, - 0x61702d74, - 0x746e6572, + 0x61720064, + 0x7365676e, 0x746e6900, 0x75727265, - 0x00737470, - 0x2d676572, - 0x66696873, - 0x65720074, - 0x6f692d67, + 0x2d737470, + 0x65747865, + 0x6465646e, + 0x67657200, + 0x6d616e2d, + 0x72007365, + 0x76637369, + 0x78616d2c, + 0x6972702d, + 0x7469726f, + 0x69720079, + 0x2c766373, + 0x7665646e, + 0x72756300, + 0x746e6572, + 0x6570732d, + 0x69006465, + 0x7265746e, + 0x74707572, + 0x7261702d, + 0x00746e65, + 0x65746e69, + 0x70757272, + 0x72007374, + 0x732d6765, + 0x74666968, + 0x67657200, + 0x2d6f692d, + 0x74646977, + 0x6c780068, + 0x662c786e, + 0x6c696d61, + 0x6c780079, + 0x662c786e, + 0x2d6f6669, + 0x73697865, + 0x6c780074, + 0x6e2c786e, + 0x732d6d75, + 0x69622d73, + 0x78007374, + 0x2c786e6c, + 0x2d6d756e, + 0x6e617274, + 0x72656673, + 0x7469622d, + 0x6c780073, + 0x732c786e, + 0x722d6b63, + 0x6f697461, + 0x69707300, + 0x78616d2d, + 0x6572662d, + 0x6e657571, + 0x76007963, + 0x61746c6f, + 0x722d6567, + 0x65676e61, + 0x69640073, + 0x6c626173, + 0x70772d65, + 0x636f6c00, + 0x6d2d6c61, + 0x612d6361, + 0x65726464, + 0x70007373, + 0x682d7968, + 0x6c646e61, + 0x6c780065, + 0x642c786e, + 0x656c7075, + 0x6c780078, + 0x692c786e, + 0x756c636e, + 0x672d6564, + 0x61626f6c, + 0x75622d6c, + 0x72656666, + 0x6c780073, + 0x692c786e, + 0x756c636e, + 0x692d6564, + 0x7265746e, + 0x2d6c616e, + 0x706f6f6c, + 0x6b636162, + 0x6e6c7800, + 0x6e692c78, + 0x64756c63, + 0x646d2d65, + 0x78006f69, + 0x2c786e6c, + 0x74736e69, + 0x65636e61, + 0x6e6c7800, + 0x78722c78, + 0x6e69702d, + 0x6f702d67, + 0x7800676e, + 0x2c786e6c, + 0x78612d73, + 0x64692d69, 0x6469772d, 0x78006874, 0x2c786e6c, - 0x696d6166, - 0x7800796c, + 0x702d7874, + 0x2d676e69, + 0x676e6f70, + 0x6e6c7800, + 0x73752c78, + 0x6e692d65, + 0x6e726574, + 0x78006c61, 0x2c786e6c, - 0x6f666966, - 0x6978652d, - 0x78007473, + 0x2d736168, + 0x6f69646d, + 0x70672300, + 0x632d6f69, + 0x736c6c65, + 0x69706700, + 0x6f632d6f, + 0x6f72746e, + 0x72656c6c, + 0x6e6c7800, + 0x6c612c78, + 0x6e692d6c, + 0x73747570, + 0x6e6c7800, + 0x6c612c78, + 0x6e692d6c, + 0x73747570, + 0x7800322d, 0x2c786e6c, - 0x2d6d756e, - 0x622d7373, - 0x00737469, - 0x786e6c78, - 0x6d756e2c, - 0x6172742d, - 0x6566736e, - 0x69622d72, - 0x78007374, - 0x2c786e6c, - 0x2d6b6373, - 0x69746172, - 0x7073006f, - 0x616d2d69, - 0x72662d78, - 0x65757165, - 0x0079636e, - 0x746c6f76, - 0x2d656761, - 0x676e6172, - 0x64007365, - 0x62617369, - 0x772d656c, - 0x6f6c0070, - 0x2d6c6163, - 0x2d63616d, - 0x72646461, - 0x00737365, - 0x2d796870, - 0x646e6168, - 0x7800656c, - 0x2c786e6c, - 0x6c707564, - 0x78007865, - 0x2c786e6c, - 0x6c636e69, - 0x2d656475, - 0x626f6c67, - 0x622d6c61, - 0x65666675, - 0x78007372, - 0x2c786e6c, - 0x6c636e69, - 0x2d656475, - 0x65746e69, - 0x6c616e72, - 0x6f6f6c2d, - 0x63616270, - 0x6c78006b, + 0x74756f64, + 0x6665642d, + 0x746c7561, + 0x6e6c7800, + 0x6f642c78, + 0x642d7475, + 0x75616665, + 0x322d746c, + 0x6e6c7800, + 0x70672c78, + 0x772d6f69, + 0x68746469, + 0x6e6c7800, + 0x70672c78, + 0x2d326f69, + 0x74646977, + 0x6c780068, 0x692c786e, - 0x756c636e, - 0x6d2d6564, - 0x006f6964, - 0x786e6c78, - 0x736e692c, - 0x636e6174, - 0x6c780065, - 0x722c786e, - 0x69702d78, - 0x702d676e, - 0x00676e6f, - 0x786e6c78, - 0x612d732c, - 0x692d6978, - 0x69772d64, - 0x00687464, - 0x786e6c78, - 0x2d78742c, - 0x676e6970, - 0x6e6f702d, - 0x6c780067, - 0x752c786e, - 0x692d6573, 0x7265746e, - 0x006c616e, - 0x786e6c78, - 0x7361682c, - 0x69646d2d, - 0x0000006f, + 0x74707572, + 0x6572702d, + 0x746e6573, + 0x6e6c7800, + 0x73692c78, + 0x6175642d, + 0x6c78006c, + 0x742c786e, + 0x642d6972, + 0x75616665, + 0x7800746c, + 0x2c786e6c, + 0x2d697274, + 0x61666564, + 0x2d746c75, + 0x00000032, + 0x00000000, + 0x6c6c6548, + 0x6f57206f, + 0x21646c72, + 0x00000a0d, + 0x74696e69, + 0x49505320, + 0x00000a0d, + 0x00000000, + 0x74617473, + 0x203a7375, + 0x00007830, + 0x00000000, + 0x20495053, + 0x74696e69, + 0x696c6169, + 0x2164657a, + 0x00000a0d, + 0x00000000, + 0x66207872, + 0x206f6669, + 0x20746f6e, + 0x74706d65, + 0x203f3f79, + 0x00000000, + 0x63204453, + 0x616d6d6f, + 0x0020646e, + 0x00000000, + 0x65720920, + 0x6e6f7073, + 0x3a206573, + 0x00000020, + 0x30646d63, + 0x00000000, + 0x35646d63, + 0x00000035, + 0x34646d63, + 0x00000031, + 0x74696e69, + 0x696c6169, + 0x676e697a, + 0x2e445320, + 0x0d202e2e, + 0x0000000a, + 0x0000002e, + 0x00000000, + 0x6c756f63, + 0x6f6e2064, + 0x6e692074, + 0x61697469, + 0x657a696c, + 0x2e647320, + 0x65202e2e, + 0x69746978, + 0x0a0d676e, + 0x00000000, + 0x69206473, + 0x6974696e, + 0x7a696c61, + 0x0d216465, + 0x0000000a, + 0x00000000, + 0x63204453, + 0x20647261, + 0x6c696166, + 0x0d216465, + 0x0000000a, + 0x00000000, + 0x63206473, + 0x2079706f, + 0x75746572, + 0x76206e72, + 0x65756c61, + 0x0000203a, + 0x20747067, + 0x74726170, + 0x6f697469, + 0x6174206e, + 0x20656c62, + 0x64616568, + 0x003a7265, + 0x00000000, + 0x73090a0d, + 0x616e6769, + 0x65727574, + 0x0000093a, + 0x72090a0d, + 0x73697665, + 0x3a6e6f69, + 0x00000009, + 0x73090a0d, + 0x3a657a69, + 0x00000909, + 0x00000000, + 0x63090a0d, + 0x685f6372, + 0x65646165, + 0x00093a72, + 0x72090a0d, + 0x72657365, + 0x3a646576, + 0x00000009, + 0x63090a0d, + 0x65727275, + 0x6c20746e, + 0x093a6162, + 0x00000000, + 0x00000000, + 0x62090a0d, + 0x756b6361, + 0x646c2070, + 0x00093a61, + 0x70090a0d, + 0x69747261, + 0x6e6f6974, + 0x746e6520, + 0x73656972, + 0x61626c20, + 0x2020203a, + 0x00000009, + 0x6e090a0d, + 0x65626d75, + 0x61702072, + 0x74697472, + 0x206e6f69, + 0x72746e65, + 0x3a736569, + 0x00000009, + 0x73090a0d, + 0x20657a69, + 0x74726170, + 0x6f697469, + 0x6e65206e, + 0x65697274, + 0x20203a73, + 0x00000009, + 0x20747067, + 0x74726170, + 0x6f697469, + 0x6e65206e, + 0x20797274, + 0x00000000, + 0x70090a0d, + 0x69747261, + 0x6e6f6974, + 0x70797420, + 0x75672065, + 0x093a6469, + 0x00000000, + 0x00000000, + 0x70090a0d, + 0x69747261, + 0x6e6f6974, + 0x69756720, + 0x20203a64, + 0x09202020, + 0x00000000, + 0x00000000, + 0x66090a0d, + 0x74737269, + 0x61626c20, + 0x0000093a, + 0x6c090a0d, + 0x20747361, + 0x3a61626c, + 0x00000009, + 0x61090a0d, + 0x69727474, + 0x65747562, + 0x00093a73, + 0x6e090a0d, + 0x3a656d61, + 0x00000009, + 0x00000000, + 0x79706f63, + 0x20676e69, + 0x746f6f62, + 0x616d6920, + 0x00206567, + 0x00000000, + 0x6e6f6420, + 0x0a0d2165, + 0x00000000, + 0x00000000, + 0x00000000, 0x00000000 }; diff --git a/fpga/src/bootrom/bootrom.sv b/fpga/src/bootrom/bootrom.sv index 17809642c..baf12e4f9 100644 --- a/fpga/src/bootrom/bootrom.sv +++ b/fpga/src/bootrom/bootrom.sv @@ -20,9 +20,102 @@ module bootrom ( input logic [63:0] addr_i, output logic [63:0] rdata_o ); - localparam int RomSize = 481; + localparam int RomSize = 942; const logic [RomSize-1:0][63:0] mem = { + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h0a0d2165_6e6f6420, + 64'h00000000_00206567, + 64'h616d6920_746f6f62, + 64'h20676e69_79706f63, + 64'h00000000_00000009, + 64'h3a656d61_6e090a0d, + 64'h00093a73_65747562, + 64'h69727474_61090a0d, + 64'h00000009_3a61626c, + 64'h20747361_6c090a0d, + 64'h0000093a_61626c20, + 64'h74737269_66090a0d, + 64'h00000000_00000000, + 64'h09202020_20203a64, + 64'h69756720_6e6f6974, + 64'h69747261_70090a0d, + 64'h00000000_00000000, + 64'h093a6469_75672065, + 64'h70797420_6e6f6974, + 64'h69747261_70090a0d, + 64'h00000000_20797274, + 64'h6e65206e_6f697469, + 64'h74726170_20747067, + 64'h00000009_20203a73, + 64'h65697274_6e65206e, + 64'h6f697469_74726170, + 64'h20657a69_73090a0d, + 64'h00000009_3a736569, + 64'h72746e65_206e6f69, + 64'h74697472_61702072, + 64'h65626d75_6e090a0d, + 64'h00000009_2020203a, + 64'h61626c20_73656972, + 64'h746e6520_6e6f6974, + 64'h69747261_70090a0d, + 64'h00093a61_646c2070, + 64'h756b6361_62090a0d, + 64'h00000000_00000000, + 64'h093a6162_6c20746e, + 64'h65727275_63090a0d, + 64'h00000009_3a646576, + 64'h72657365_72090a0d, + 64'h00093a72_65646165, + 64'h685f6372_63090a0d, + 64'h00000000_00000909, + 64'h3a657a69_73090a0d, + 64'h00000009_3a6e6f69, + 64'h73697665_72090a0d, + 64'h0000093a_65727574, + 64'h616e6769_73090a0d, + 64'h00000000_003a7265, + 64'h64616568_20656c62, + 64'h6174206e_6f697469, + 64'h74726170_20747067, + 64'h0000203a_65756c61, + 64'h76206e72_75746572, + 64'h2079706f_63206473, + 64'h00000000_0000000a, + 64'h0d216465_6c696166, + 64'h20647261_63204453, + 64'h00000000_0000000a, + 64'h0d216465_7a696c61, + 64'h6974696e_69206473, + 64'h00000000_0a0d676e, + 64'h69746978_65202e2e, + 64'h2e647320_657a696c, + 64'h61697469_6e692074, + 64'h6f6e2064_6c756f63, + 64'h00000000_0000002e, + 64'h0000000a_0d202e2e, + 64'h2e445320_676e697a, + 64'h696c6169_74696e69, + 64'h00000031_34646d63, + 64'h00000035_35646d63, + 64'h00000000_30646d63, + 64'h00000020_3a206573, + 64'h6e6f7073_65720920, + 64'h00000000_0020646e, + 64'h616d6d6f_63204453, + 64'h00000000_203f3f79, + 64'h74706d65_20746f6e, + 64'h206f6669_66207872, + 64'h00000000_00000a0d, + 64'h2164657a_696c6169, + 64'h74696e69_20495053, + 64'h00000000_00007830, + 64'h203a7375_74617473, + 64'h00000000_00000a0d, + 64'h49505320_74696e69, + 64'h00000a0d_21646c72, + 64'h6f57206f_6c6c6548, 64'h00000000_00000032, 64'h2d746c75_61666564, 64'h2d697274_2c786e6c, @@ -493,17 +586,385 @@ module bootrom ( 64'h00000000_00000000, 64'h00000000_00000000, 64'h00000000_00000000, - 64'h00000000_0000bff5, - 64'h10500073_03c58593, - 64'h00000597_f1402573, 64'h00000000_00000000, 64'h00000000_00000000, 64'h00000000_00000000, 64'h00000000_00000000, 64'h00000000_00000000, - 64'h00008402_07458593, - 64'h00000597_f1402573, - 64'h01f41413_0010041b + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h46454443_42413938, + 64'h37363534_33323130, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'ha0018402_17c58593, + 64'h00000597_01f41413, + 64'h0010041b_e911d13f, + 64'hf0ef057e_65a14505, + 64'hef6ff0ef_02450513, + 64'h00001517_ed0ff0ef, + 64'he4061141_b38df0cf, + 64'hf0ef30a5_05130000, + 64'h1517bbd9_08450513, + 64'h00001517_fa4ff0ef, + 64'h8526f28f_f0ef1665, + 64'h05130000_1517f34f, + 64'hf0ef15a5_05130000, + 64'h1517bbfd_0ac50513, + 64'h00001517_fccff0ef, + 64'h8526f50f_f0ef18e5, + 64'h05130000_1517f5cf, + 64'hf0ef1825_05130000, + 64'h1517c929_84aac69f, + 64'hf0ef8556_865e020b, + 64'h2583f78f_f0ef35e5, + 64'h05130000_1517f384, + 64'h9de30809_0913080a, + 64'h0993f90f_f0ef2485, + 64'h10050513_00001517, + 64'hff3a1be3_867ff0ef, + 64'h0a05000a_4503facf, + 64'hf0ef3825_05130000, + 64'h151783bf_f0ef0109, + 64'h3503fc0f_f0ef3865, + 64'h05130000_151784ff, + 64'hf0ef0089_3503fd4f, + 64'hf0ef38a5_05130000, + 64'h1517863f_f0effb89, + 64'h8a130009_3503fecf, + 64'hf0ef3925_05130000, + 64'h1517ff2a_1be38c1f, + 64'hf0ef0a05_000a4503, + 64'hf9098a13_80bff0ef, + 64'h39050513_00001517, + 64'hff9a19e3_8dfff0ef, + 64'h0a050007_c503014d, + 64'h07b34a01_82bff0ef, + 64'hf8098d13_39450513, + 64'h00001517_8ffff0ef, + 64'h0ff4f513_843ff0ef, + 64'h39050513_00001517, + 64'h4c114cc1_10051b63, + 64'h02010913_08010993, + 64'h84aa8b0a_d5fff0ef, + 64'h850a4605_71010489, + 64'h2583871f_f0ef1de5, + 64'h05130000_15178bff, + 64'hf0ef4556_883ff0ef, + 64'h3b050513_00001517, + 64'h8d1ff0ef_4546895f, + 64'hf0ef3a25_05130000, + 64'h1517923f_f0ef6526, + 64'h8a7ff0ef_39450513, + 64'h00001517_935ff0ef, + 64'h75028b9f_f0ef3965, + 64'h05130000_1517947f, + 64'hf0ef6562_8cbff0ef, + 64'h39050513_00001517, + 64'h919ff0ef_45528ddf, + 64'hf0ef3925_05130000, + 64'h151792bf_f0ef4542, + 64'h8efff0ef_39450513, + 64'h00001517_93dff0ef, + 64'h4532901f_f0ef3965, + 64'h05130000_151794ff, + 64'hf0ef4522_913ff0ef, + 64'h39850513_00001517, + 64'h9a1ff0ef_6502925f, + 64'hf0ef39a5_05130000, + 64'h1517931f_f0ef3865, + 64'h05130000_1517bf51, + 64'h54f9941f_f0ef2ae5, + 64'h05130000_15179cff, + 64'hf0ef8526_953ff0ef, + 64'h39050513_00001517, + 64'h95fff0ef_38450513, + 64'h00001517_c90584aa, + 64'h890ae6df_f0ef850a, + 64'h45854605_710197df, + 64'hf0ef38a5_05130000, + 64'h15178082_61256d02, + 64'h6ca26c42_6be27b02, + 64'h7aa27a42_79e26906, + 64'h64a66446_852660e6, + 64'hfa040113_54fd9adf, + 64'hf0ef3925_05130000, + 64'h1517c90d_e1bff0ef, + 64'h8bae8aaa_1080e06a, + 64'he466e862_f05af852, + 64'hfc4ee0ca_e4a6ec86, + 64'hec5ef456_e8a2711d, + 64'hbfe15479_80826169, + 64'h6baa6b4a_6aea7a0a, + 64'h79aa794a_74ea640e, + 64'h60ae8522_c7bff0ef, + 64'hc87ff0ef_45314581, + 64'h46054401_f89046e3, + 64'h20090913_14fda15f, + 64'hf0ef3f25_05130000, + 64'h1517e799_0364e7b3, + 64'h04899463_90412981, + 64'h14428c49_cb3ff0ef, + 64'h90410305_14130085, + 64'h151bcc1f_f0effd24, + 64'h1ae30404_0413ff7a, + 64'h17e389aa_f11ff0ef, + 64'h0a05854e_0007c583, + 64'h014407b3_04000b93, + 64'h4a01c65f_f0ef850a, + 64'h04000593_86224981, + 64'hff551ee3_cfbff0ef, + 64'he0090413_3e800b13, + 64'h0fe00a93_20090913, + 64'h90811482_bff5d15f, + 64'hf0efc501_d23ff0ef, + 64'h454985a2_0ff67613, + 64'h00166613_0015161b, + 64'hf53ff0ef_0ff47593, + 64'hf5bff0ef_0ff5f593, + 64'h0084559b_f67ff0ef, + 64'h0ff5f593_0104559b, + 64'hf73ff0ef_45010184, + 64'h559bfee7_9be30785, + 64'h00c68023_00f106b3, + 64'h08000713_567d4781, + 64'h842e892a_e55ee95a, + 64'hed56f152_f54ee586, + 64'h84b2f94a_fd26e1a2, + 64'h71558082_91411542, + 64'h8d3d8ff9_0057979b, + 64'h17016709_0107d79b, + 64'h0105179b_4105551b, + 64'h0105151b_8d2d00c5, + 64'h95138da9_893d0045, + 64'hd51b8da9_91411542, + 64'h8d5d0522_0085579b, + 64'h808207f5_75138d2d, + 64'h00451593_8d2d8d3d, + 64'h0045d51b_0075d79b, + 64'h8de98082_0141853e, + 64'h640260a2_57f5e111, + 64'h4781f89f_f0efc511, + 64'h57f9efbf_f0efc911, + 64'h57fdeb7f_f0effc6d, + 64'he07ff0ef_347d4429, + 64'hb8fff0ef_55450513, + 64'h00001517_c89ff0ef, + 64'he022e406_11418082, + 64'h61050015_351364a2, + 64'h644260e2_0004051b, + 64'hfc940ce3_e3bff0ef, + 64'heb3ff0ef_57c50513, + 64'h00001517_85aa842a, + 64'he57ff0ef_02900513, + 64'h400005b7_07700613, + 64'hfbdff0ef_4485e822, + 64'hec06e426_11018082, + 64'h01410015_3513157d, + 64'h640260a2_0004051b, + 64'hef3ff0ef_5b650513, + 64'h85a20000_1517e8df, + 64'hf0ef842a_e9bff0ef, + 64'he022e406_03700513, + 64'h45810650_06131141, + 64'h80826105_690264a2, + 64'h644260e2_00153513, + 64'hf5650513_0004051b, + 64'h01249863_88bd00f9, + 64'h1b634501_4785ecdf, + 64'hf0efed1f_f0ef842a, + 64'hed7ff0ef_84aaeddf, + 64'hf0efee1f_f0efee5f, + 64'hf0ef892a_ef3ff0ef, + 64'he04ae426_e822ec06, + 64'h45211aa0_05930870, + 64'h06131101_bfcd4501, + 64'h80826105_690264a2, + 64'h644260e2_4505f89f, + 64'hf0ef4585_64450513, + 64'h00001517_fe9915e3, + 64'hc00df29f_f0ef892a, + 64'h347df39f_f0ef4501, + 64'h45810950_06134485, + 64'h71040413_e04aec06, + 64'he4266409_e8221101, + 64'hccfff06f_610563e5, + 64'h05130000_151760e2, + 64'h6442da5f_f0ef852e, + 64'h65a2ce9f_f0ef6865, + 64'h05130000_1517cf5f, + 64'hf0ef8522_cfbff0ef, + 64'he42eec06_68c50513, + 64'h00001517_842ae822, + 64'h11018082_614564e2, + 64'h740270a2_f47d147d, + 64'h0007d463_4187d79b, + 64'h0185179b_fabff0ef, + 64'heb5ff0ef_85320640, + 64'h04136622_ec1ff0ef, + 64'h0ff47513_ec9ff0ef, + 64'h0ff57513_0084551b, + 64'hed5ff0ef_0ff57513, + 64'h0104551b_ee1ff0ef, + 64'h0184551b_ee9ff0ef, + 64'h0404e513_febff0ef, + 64'h84aa842e_ec26f022, + 64'he432f406_7179f03f, + 64'hf06f0ff0_05138082, + 64'h557db7d9_00d70023, + 64'h078500f6_073306c8, + 64'h2683ff69_8b055178, + 64'hb77dd6b8_07850007, + 64'h470300f5_07338082, + 64'h4501d3b8_4719dbb8, + 64'h577d2000_07b702b6, + 64'he1630007_869b2000, + 64'h08372000_0537fff5, + 64'h8b85537c_20000737, + 64'hd3b82000_07b71060, + 64'h0713fff5_37fd0001, + 64'h03200793_04b76163, + 64'h0007871b_47812000, + 64'h06b7dbb8_57792000, + 64'h07b706b7_ee631000, + 64'h07938082_610564a2, + 64'hd3b84719_dbb86442, + 64'h60e20ff4_7513577d, + 64'h200007b7_e23ff0ef, + 64'h79050513_00001517, + 64'heb1ff0ef_91011502, + 64'h4088e39f_f0ef7ae5, + 64'h05130000_1517e395, + 64'h8b852401_53fc57e0, + 64'hff658b05_06478493, + 64'h53f8d3b8_10600713, + 64'h200007b7_fff537fd, + 64'h00010640_0793d7a8, + 64'hdbb85779_e426e822, + 64'hec062000_07b71101, + 64'he7fff06f_61057de5, + 64'h05130000_151764a2, + 64'h60e26442_d03c4799, + 64'he97ff0ef_80450513, + 64'h00002517_f25ff0ef, + 64'h91010204_95132481, + 64'heafff0ef_7fc50513, + 64'h00001517_5064d03c, + 64'h16600793_ec3ff0ef, + 64'h83050513_00002517, + 64'hf51ff0ef_91010204, + 64'h95132481_edbff0ef, + 64'h82850513_00002517, + 64'h5064d03c_10400793, + 64'h20000437_fff537fd, + 64'h000147a9_c3b84729, + 64'h200007b7_f03ff0ef, + 64'he426e822_ec068485, + 64'h05131101_00002517, + 64'h80822501_41088082, + 64'hc10c8082_610560e2, + 64'hee1ff0ef_00914503, + 64'hee9ff0ef_00814503, + 64'hf55ff0ef_ec06002c, + 64'h11018082_61456942, + 64'h64e27402_70a2fe94, + 64'h10e3f0bf_f0ef0091, + 64'h4503f13f_f0ef3461, + 64'h00814503_f81ff0ef, + 64'h0ff57513_002c0089, + 64'h553354e1_03800413, + 64'h892af406_e84aec26, + 64'hf0227179_80826145, + 64'h694264e2_740270a2, + 64'hfe9410e3_f4dff0ef, + 64'h00914503_f55ff0ef, + 64'h34610081_4503fc3f, + 64'hf0ef0ff5_7513002c, + 64'h0089553b_54e14461, + 64'h892af406_e84aec26, + 64'hf0227179_808200f5, + 64'h80230007_c78300e5, + 64'h80a397aa_81110007, + 64'h4703973e_00f57713, + 64'h98078793_00001797, + 64'hb7f50405_fa5ff0ef, + 64'h80820141_640260a2, + 64'he5090004_4503842a, + 64'he406e022_11418082, + 64'h00e78823_02000713, + 64'h00e78423_fc700713, + 64'h00e78623_470d0007, + 64'h822300e7_8023476d, + 64'h00e78623_f8000713, + 64'h00078223_100007b7, + 64'h808200a7_0023dfe5, + 64'h0207f793_01474783, + 64'h10000737_80820205, + 64'h75130147_c5031000, + 64'h07b78082_00054503, + 64'h808200b5_00238082, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00000000_00000000, + 64'h00048067_01f49493, + 64'h0010049b_b8458593, + 64'h00001597_f1402573, + 64'hff24c6e3_4009091b, + 64'h02000937_00448493, + 64'hfe091ee3_0004a903, + 64'h00092023_00990933, + 64'h00291913_f1402973, + 64'h020004b7_fe090ae3, + 64'h00897913_34402973, + 64'h10500073_ff24c6e3, + 64'h4009091b_02000937, + 64'h00448493_0124a023, + 64'h00100913_020004b7, + 64'h241000ef_01a11113, + 64'h0210011b_03249663, + 64'hf1402973_00000493, + 64'h30491073_00800913 }; logic [$clog2(RomSize)-1:0] addr_q; diff --git a/fpga/src/bootrom/linker.lds b/fpga/src/bootrom/linker.lds index 935476433..b1e1a6473 100644 --- a/fpga/src/bootrom/linker.lds +++ b/fpga/src/bootrom/linker.lds @@ -30,9 +30,14 @@ SECTIONS _BSS_END_ = .; } - /* PROVIDE(_sp = 0x84000000); */ - /* PROVIDE(_heap_end = _sp - 0x80000); */ - - /*.rodata.dtb : { *(.rodata.dtb) }*/ + # PROVIDE(_sp = 0x84000000); + # PROVIDE(_heap_end = _sp - 0x80000); + .rodata : ALIGN(0x100) { + _RODATA_START_ = .; + *(.rodata) + *(.dtb*) + *(.rodata*) + _RODATA_END_ = .; + } } diff --git a/fpga/src/bootrom/src/gpt.c b/fpga/src/bootrom/src/gpt.c index fb9a5937d..15c975110 100644 --- a/fpga/src/bootrom/src/gpt.c +++ b/fpga/src/bootrom/src/gpt.c @@ -4,12 +4,12 @@ #include "uart.h" #include -void gpt_find_boot_partition(uint8_t* dest, uint32_t size) +int gpt_find_boot_partition(uint8_t* dest, uint32_t size) { int ret = init_sd(); if (ret != 0) { print_uart("could not initialize sd... exiting\r\n"); - return; + return -1; } print_uart("sd initialized!\r\n"); @@ -22,9 +22,11 @@ void gpt_find_boot_partition(uint8_t* dest, uint32_t size) if (res != 0) { + print_uart("SD card failed!\r\n"); print_uart("sd copy return value: "); print_uart_addr(res); print_uart("\r\n"); + return -2; } gpt_pth_t *lba1 = (gpt_pth_t *)lba1_buf; @@ -58,9 +60,11 @@ void gpt_find_boot_partition(uint8_t* dest, uint32_t size) if (res != 0) { + print_uart("SD card failed!\r\n"); print_uart("sd copy return value: "); print_uart_addr(res); print_uart("\r\n"); + return -2; } for (int i = 0; i < 4; i++) @@ -89,5 +93,16 @@ void gpt_find_boot_partition(uint8_t* dest, uint32_t size) partition_entries_t *boot = (partition_entries_t *)(lba2_buf); print_uart("copying boot image "); res = sd_copy(dest, boot->first_lba, size); + + if (res != 0) + { + print_uart("SD card failed!\r\n"); + print_uart("sd copy return value: "); + print_uart_addr(res); + print_uart("\r\n"); + return -2; + } + print_uart(" done!\r\n"); + return 0; } \ No newline at end of file diff --git a/fpga/src/bootrom/src/gpt.h b/fpga/src/bootrom/src/gpt.h index 239e907dd..2968fbbd4 100644 --- a/fpga/src/bootrom/src/gpt.h +++ b/fpga/src/bootrom/src/gpt.h @@ -36,4 +36,4 @@ typedef struct partition_entries } partition_entries_t; // Find boot partition and load it to the destination -void gpt_find_boot_partition(uint8_t* dest, uint32_t size); \ No newline at end of file +int gpt_find_boot_partition(uint8_t* dest, uint32_t size); \ No newline at end of file diff --git a/fpga/src/bootrom/src/main.c b/fpga/src/bootrom/src/main.c index 0f1030df7..66af9c3af 100644 --- a/fpga/src/bootrom/src/main.c +++ b/fpga/src/bootrom/src/main.c @@ -8,14 +8,16 @@ int main() init_uart(); print_uart("Hello World!\r\n"); - gpt_find_boot_partition((uint8_t *)0x80000000UL, 2*16384); + int res = gpt_find_boot_partition((uint8_t *)0x80000000UL, 2 * 16384); - // jump to the address - __asm__ volatile( - "li s0, 0x80000000;" - "la a1, _dtb;" - "jr s0" - ); + if (res == 0) + { + // jump to the address + __asm__ volatile( + "li s0, 0x80000000;" + "la a1, _dtb;" + "jr s0"); + } while (1) { diff --git a/fpga/src/bootrom/src/sd.c b/fpga/src/bootrom/src/sd.c index 54b56f7e1..104a4ef53 100644 --- a/fpga/src/bootrom/src/sd.c +++ b/fpga/src/bootrom/src/sd.c @@ -31,7 +31,9 @@ uint8_t sd_cmd(uint8_t cmd, uint32_t arg, uint8_t crc) } } while (--n > 0); if (n == 0) - print_uart("could not find valid sd response\r\n"); + { + // print_uart("could not find valid sd response\r\n"); + } return r; } @@ -46,13 +48,17 @@ void print_status(const char *cmd, uint8_t response) int sd_cmd0() { + int counter = 10000; uint8_t r = 0xff; while (r != 0x1) { r = sd_cmd(0, 0, 0x95); sd_dummy(); // R1: 1 Byte response - print_status("cmd0", r); + counter--; + if (counter <= 0) + return 1 == 0; } + print_status("cmd0", r); return r == 0x1; } diff --git a/fpga/src/bootrom/startup.S b/fpga/src/bootrom/startup.S index 98ec9e38a..76a49801d 100644 --- a/fpga/src/bootrom/startup.S +++ b/fpga/src/bootrom/startup.S @@ -17,9 +17,8 @@ _prog_start: li s1, DRAM_BASE jr s1 - .section .rodata -.section .rodata.dtb, "a", @progbits -.globl _dtb -.align 5, 0 + .section .dtb + .globl _dtb + .align 4, 0 _dtb: -.incbin "ariane.dtb" + .incbin "ariane.dtb" \ No newline at end of file diff --git a/include/ariane_pkg.sv b/include/ariane_pkg.sv index 7830db5e4..3fca0b5ea 100644 --- a/include/ariane_pkg.sv +++ b/include/ariane_pkg.sv @@ -49,7 +49,7 @@ package ariane_pkg; // depth of store-buffers, this needs to be a power of two localparam int unsigned DEPTH_SPEC = 4; -`ifdef SERPENT_PULP +`ifdef PITON_ARIANE // in this case we can use a small commit queue since we have a write buffer in the dcache // we could in principle do without the commit queue in this case, but the timing degrades if we do that due // to longer paths into the commit stage @@ -263,28 +263,53 @@ package ariane_pkg; // we just use the default config of ariane // otherwise we have to propagate the openpiton L15 configuration from l15.h `ifdef PITON_ARIANE - // I$ - localparam int unsigned ICACHE_LINE_WIDTH = `CONFIG_L1I_CACHELINE_WIDTH; - localparam int unsigned ICACHE_SET_ASSOC = `CONFIG_L1I_ASSOCIATIVITY; - localparam int unsigned ICACHE_INDEX_WIDTH = $clog2(`CONFIG_L1I_SIZE / ICACHE_SET_ASSOC); - localparam int unsigned ICACHE_TAG_WIDTH = 56 - ICACHE_INDEX_WIDTH; - // D$ - localparam int unsigned DCACHE_LINE_WIDTH = `CONFIG_L1D_CACHELINE_WIDTH; - localparam int unsigned DCACHE_SET_ASSOC = `CONFIG_L1D_ASSOCIATIVITY; - localparam int unsigned DCACHE_INDEX_WIDTH = $clog2(`CONFIG_L1D_SIZE / DCACHE_SET_ASSOC); - localparam int unsigned DCACHE_TAG_WIDTH = 56 - DCACHE_INDEX_WIDTH; -`else + +`ifndef CONFIG_L1I_CACHELINE_WIDTH + `define CONFIG_L1I_CACHELINE_WIDTH 128 +`endif + +`ifndef CONFIG_L1I_ASSOCIATIVITY + `define CONFIG_L1I_ASSOCIATIVITY 4 +`endif + +`ifndef CONFIG_L1I_SIZE + `define CONFIG_L1I_SIZE 16*1024 +`endif + +`ifndef CONFIG_L1D_CACHELINE_WIDTH + `define CONFIG_L1D_CACHELINE_WIDTH 128 +`endif + +`ifndef CONFIG_L1D_ASSOCIATIVITY + `define CONFIG_L1D_ASSOCIATIVITY 4 +`endif + +`ifndef CONFIG_L1I_SIZE + `define CONFIG_L1D_SIZE 16*1024 +`endif + + // I$ + localparam int unsigned ICACHE_LINE_WIDTH = `CONFIG_L1I_CACHELINE_WIDTH; + localparam int unsigned ICACHE_SET_ASSOC = `CONFIG_L1I_ASSOCIATIVITY; + localparam int unsigned ICACHE_INDEX_WIDTH = $clog2(`CONFIG_L1I_SIZE / ICACHE_SET_ASSOC); + localparam int unsigned ICACHE_TAG_WIDTH = 56 - ICACHE_INDEX_WIDTH; + // D$ + localparam int unsigned DCACHE_LINE_WIDTH = `CONFIG_L1D_CACHELINE_WIDTH; + localparam int unsigned DCACHE_SET_ASSOC = `CONFIG_L1D_ASSOCIATIVITY; + localparam int unsigned DCACHE_INDEX_WIDTH = $clog2(`CONFIG_L1D_SIZE / DCACHE_SET_ASSOC); + localparam int unsigned DCACHE_TAG_WIDTH = 56 - DCACHE_INDEX_WIDTH; + `else // align to openpiton for the time being (this should be more configurable in the future) - // I$ - localparam int unsigned ICACHE_INDEX_WIDTH = 12; // in bit - localparam int unsigned ICACHE_TAG_WIDTH = 44; // in bit - localparam int unsigned ICACHE_LINE_WIDTH = 128; // in bit - localparam int unsigned ICACHE_SET_ASSOC = 4; - // D$ - localparam int unsigned DCACHE_INDEX_WIDTH = 12; // in bit - localparam int unsigned DCACHE_TAG_WIDTH = 44; // in bit - localparam int unsigned DCACHE_LINE_WIDTH = 128; // in bit - localparam int unsigned DCACHE_SET_ASSOC = 8; + // I$ + localparam int unsigned ICACHE_INDEX_WIDTH = 12; // in bit + localparam int unsigned ICACHE_TAG_WIDTH = 44; // in bit + localparam int unsigned ICACHE_LINE_WIDTH = 128; // in bit + localparam int unsigned ICACHE_SET_ASSOC = 4; + // D$ + localparam int unsigned DCACHE_INDEX_WIDTH = 12; // in bit + localparam int unsigned DCACHE_TAG_WIDTH = 44; // in bit + localparam int unsigned DCACHE_LINE_WIDTH = 128; // in bit + localparam int unsigned DCACHE_SET_ASSOC = 8; `endif // --------------- diff --git a/openpiton/ariane_verilog_wrap.sv b/openpiton/ariane_verilog_wrap.sv index a0968bab7..9c89abef9 100644 --- a/openpiton/ariane_verilog_wrap.sv +++ b/openpiton/ariane_verilog_wrap.sv @@ -14,7 +14,7 @@ // default to AXI64 cache ports if not using the // serpent PULP extension -`ifndef SERPENT_PULP +`ifndef PITON_ARIANE `ifndef AXI64_CACHE_PORTS `define AXI64_CACHE_PORTS `endif diff --git a/src/ariane.sv b/src/ariane.sv index d9145b193..4927f205b 100644 --- a/src/ariane.sv +++ b/src/ariane.sv @@ -21,14 +21,14 @@ import instruction_tracer_pkg::*; // default to AXI64 cache ports if not using the // serpent PULP extension -`ifndef SERPENT_PULP +`ifndef PITON_ARIANE `ifndef AXI64_CACHE_PORTS `define AXI64_CACHE_PORTS `endif `endif module ariane #( -`ifdef SERPENT_PULP +`ifdef PITON_ARIANE parameter bit SwapEndianess = 0, // swap endianess in l15 adapter parameter logic [63:0] CachedAddrEnd = 64'h80_0000_0000, // end of cached region `endif @@ -578,7 +578,7 @@ module ariane #( // Cache Subsystem // ------------------- -`ifdef SERPENT_PULP +`ifdef PITON_ARIANE // this is a cache subsystem that is compatible with OpenPiton serpent_cache_subsystem #( .CachedAddrBeg ( CachedAddrBeg ), @@ -715,7 +715,7 @@ module ariane #( end endprogram -`ifdef SERPENT_PULP +`ifdef PITON_ARIANE logic piton_pc_vld; logic [63:0] piton_pc; @@ -746,7 +746,7 @@ module ariane #( end end -`endif // SERPENT_PULP +`endif // PITON_ARIANE // mock tracer for Verilator, to be used with spike-dasm `else diff --git a/src/cache_subsystem/serpent_cache_subsystem.sv b/src/cache_subsystem/serpent_cache_subsystem.sv index e0c4535cf..04e0c2b38 100644 --- a/src/cache_subsystem/serpent_cache_subsystem.sv +++ b/src/cache_subsystem/serpent_cache_subsystem.sv @@ -18,7 +18,7 @@ // Description: Ariane cache subsystem that is compatible with the OpenPiton // coherent memory system. // -// Define SERPENT_PULP if you want to use this cache. +// Define PITON_ARIANE if you want to use this cache. // Define AXI64_CACHE_PORTS if you want to use this cache // with a standard 64bit AXI interace instead of the openpiton // L1.5 interface. diff --git a/tb/ariane_soc_pkg.sv b/tb/ariane_soc_pkg.sv index 6c724b8e3..5e7f24902 100644 --- a/tb/ariane_soc_pkg.sv +++ b/tb/ariane_soc_pkg.sv @@ -33,7 +33,7 @@ package ariane_soc; localparam NB_PERIPHERALS = Debug + 1; localparam logic[63:0] DebugLength = 64'h1000; - localparam logic[63:0] ROMLength = 64'h1000; + localparam logic[63:0] ROMLength = 64'h10000; localparam logic[63:0] CLINTLength = 64'hC0000; localparam logic[63:0] PLICLength = 64'h3FF_FFFF; localparam logic[63:0] UARTLength = 64'h1000; diff --git a/tb/ariane_testharness.sv b/tb/ariane_testharness.sv index ed1542f72..ffc868ead 100644 --- a/tb/ariane_testharness.sv +++ b/tb/ariane_testharness.sv @@ -539,7 +539,7 @@ module ariane_testharness #( ariane_axi::resp_t axi_ariane_resp; ariane #( -`ifdef SERPENT_PULP +`ifdef PITON_ARIANE .SwapEndianess ( 0 ), .CachedAddrEnd ( (ariane_soc::DRAMBase + ariane_soc::DRAMLength) ), `endif