aboutsummaryrefslogtreecommitdiffstats
path: root/picosoc/start.s
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2017-09-20 20:17:27 +0200
committerClifford Wolf <clifford@clifford.at>2017-09-20 20:17:27 +0200
commit51436b1c5017012fb1d666d8a7ffcb96b0906d73 (patch)
treeb31b03127316677e013ece1c53334ac1079319f7 /picosoc/start.s
parent7639e6ebac26fafbff2c3e2a72e83cf5cd0c3a3e (diff)
downloadpicorv32-51436b1c5017012fb1d666d8a7ffcb96b0906d73.tar.gz
picorv32-51436b1c5017012fb1d666d8a7ffcb96b0906d73.zip
PicoSoC QSPI DDR progress
Diffstat (limited to 'picosoc/start.s')
-rw-r--r--picosoc/start.s13
1 files changed, 10 insertions, 3 deletions
diff --git a/picosoc/start.s b/picosoc/start.s
index 9a285d1..5e43feb 100644
--- a/picosoc/start.s
+++ b/picosoc/start.s
@@ -1,8 +1,10 @@
.section .text
start:
+
+# zero-initialize register file
addi x1, zero, 0
-addi x2, zero, 0
+# x2 (sp) is initialized by reset
addi x3, zero, 0
addi x4, zero, 0
addi x5, zero, 0
@@ -33,9 +35,14 @@ addi x29, zero, 0
addi x30, zero, 0
addi x31, zero, 0
-li sp, 4*256
-call main
+# zero initialize scratchpad memory
+setmemloop:
+sw zero, 0(x1)
+addi x1, x1, 4
+blt x1, sp, setmemloop
+# call main
+call main
loop:
j loop