Skip to content

Commit

Permalink
2.3.0: minor updates
Browse files Browse the repository at this point in the history
  • Loading branch information
acaldero committed Jun 29, 2023
1 parent 641f404 commit 92cd4cc
Show file tree
Hide file tree
Showing 34 changed files with 15,199 additions and 468 deletions.
6 changes: 5 additions & 1 deletion devel/mk_dist.sh
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,10 @@ cat sim_core/sim_cfg.js \
sim_hw/sim_hw_poc/sim_hw_scr.js \
sim_hw/sim_hw_poc/sim_hw_l3d.js \
sim_hw/sim_hw_poc/sim_hw_ldm.js \
sim_hw/sim_hw_rv/sim_rv.js \
sim_hw/sim_hw_rv/sim_hw_board.js \
sim_hw/sim_hw_rv/sim_hw_cpu.js \
sim_hw/sim_hw_rv/sim_hw_mem.js \
\
sim_sw/firmware/lexical.js \
sim_sw/firmware/firm_mcode.js \
Expand Down Expand Up @@ -373,7 +377,7 @@ jq 'reduce inputs as $i (.; . += $i)' $DEFAULT_EXAMPLE_SET > examples/examples_s
DEFAULT_EXAMPLE_SET="examples/examples_set/mips/es_ep_instructive.json examples/examples_set/mips/es_poc_instructive.json"
jq 'reduce inputs as $i (.; . += $i)' $DEFAULT_EXAMPLE_SET > examples/examples_set/mips/default_instructive.json
# RV32
DEFAULT_EXAMPLE_SET="examples/examples_set/rv32/es_ep.json examples/examples_set/rv32/es_poc.json examples/examples_set/rv32/es_ep_native.json examples/examples_set/rv32/es_poc_native.json"
DEFAULT_EXAMPLE_SET="examples/examples_set/rv32/es_ep.json examples/examples_set/rv32/es_poc.json examples/examples_set/rv32/es_ep_native.json examples/examples_set/rv32/es_poc_native.json examples/examples_set/rv32/es_rv.json"
jq 'reduce inputs as $i (.; . += $i)' $DEFAULT_EXAMPLE_SET > examples/examples_set/rv32/default.json
# RV32 instructive
DEFAULT_EXAMPLE_SET="examples/examples_set/rv32/es_ep_instructive.json examples/examples_set/rv32/es_poc_instructive.json"
Expand Down
5 changes: 3 additions & 2 deletions devel/test_jshint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,11 @@ echo "checking sim_sw..."
jshint ./sim_sw/firmware/firm_pseudoinstructions.js
#jshint ./sim_sw/firmware/firm_instruction_v1.js
jshint ./sim_sw/firmware/firm_fields_v1.js
jshint ./sim_sw/firmware/firm_fields_v2.js
#jshint ./sim_sw/firmware/firm_fields_v2.js
#jshint ./sim_sw/firmware/firm_instruction.js
#jshint ./sim_sw/firmware.js
jshint ./sim_sw/firmware/creator2native.js
jshint ./sim_sw/assembly/lexical.js
#jshint ./sim_sw/assembly/memory_segments.js
jshint ./sim_sw/assembly/lexical.js
#jshint ./sim_sw/assembly.js
Expand Down Expand Up @@ -107,7 +108,7 @@ echo "checking wepsim_web..."
jshint ./wepsim_web/wepsim_uielto_compilationbar.js
jshint ./wepsim_web/wepsim_uielto_console.js
jshint ./wepsim_web/wepsim_uielto_cpu.js
jshint ./wepsim_web/wepsim_uielto_cpusvg.js
#jshint ./wepsim_web/wepsim_uielto_cpusvg.js
jshint ./wepsim_web/wepsim_uielto_dbg_asm.js
jshint ./wepsim_web/wepsim_uielto_dbg_mc.js
jshint ./wepsim_web/wepsim_uielto_editas.js
Expand Down
264 changes: 264 additions & 0 deletions examples/examples_set/rv32/default.json
Original file line number Diff line number Diff line change
Expand Up @@ -933,5 +933,269 @@
"assembly": "s7e2",
"description": "<span data-langkey='example_01_01'>Simple example with fetch, arithmetic instructions, and basic .text segment.</span>",
"testing": true
},
{
"id": "R1E1",
"title": "Instructions",
"type": "<span data-langkey='Initial'>Initial</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s1e1",
"description": "<span data-langkey='example_01_01'>Simple example with fetch, arithmetic instructions, and basic .text segment.</span>",
"testing": true
},
{
"id": "R1E2",
"title": "Memory access",
"type": "<span data-langkey='Initial'>Initial</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s1e2",
"description": "<span data-langkey='example_01_02'>Simple example with fetch, memory access, and basic .text/.data segment.</span>",
"testing": true
},
{
"id": "R1E3",
"title": "Looping",
"type": "<span data-langkey='Initial'>Initial</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s1e3",
"description": "<span data-langkey='example_01_03'>Simple example with fetch, branch, and basic .text segment.</span>",
"testing": true
},
{
"id": "R1E5",
"title": "If-Then, If-Then-Else",
"type": "<span data-langkey='Initial'>Initial</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s1e5",
"description": "<span data-langkey='example_01_05'>If-Then and If-Then-Else.</span>",
"testing": true
},
{
"id": "R1E4",
"title": "Vector",
"type": "<span data-langkey='Initial'>Initial</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s1e4",
"description": "<span data-langkey='example_01_04'>Simple example with fetch, branch, and basic .text/.data segment.</span>",
"testing": true
},
{
"id": "R2E3",
"title": "Masks & shift",
"type": "<span data-langkey='Intermediate'>Intermediate</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s2e3",
"description": "<span data-langkey='example_02_03'>More extended example with masks, shift, and basic .text/.data segment.</span>",
"testing": true
},
{
"id": "R2E4",
"title": "Matrix",
"type": "<span data-langkey='Intermediate'>Intermediate</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s2e4",
"description": "<span data-langkey='example_02_04'>Extended example with subrutine and matrix.</span>",
"testing": true
},
{
"id": "R5E3",
"title": "Array of strings",
"type": "<span data-langkey='Intermediate'>Intermediate</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s5e3",
"description": "<span data-langkey='example_06_04'>Array of strings.</span>",
"testing": true
},
{
"id": "R2E5",
"title": "Simple stack conv.",
"type": "<span data-langkey='Intermediate'>Intermediate</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s2e5",
"description": "<span data-langkey='example_03_04'>Example with simple stack convention.</span>",
"testing": true
},
{
"id": "R2E2",
"title": "Subrutine",
"type": "<span data-langkey='Intermediate'>Intermediate</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s2e2",
"description": "<span data-langkey='example_01_03'>Simple example with fetch, branch, and basic .text segment.</span>",
"testing": true
},
{
"id": "R2E6",
"title": "Fibonacci",
"type": "<span data-langkey='Intermediate'>Intermediate</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s2e6",
"description": "<span data-langkey='example_03_05'>Fibonacci.</span>",
"testing": true
},
{
"id": "R3E1",
"title": "Interruptions",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s3e1",
"description": "<span data-langkey='example_03_02'>Example with interruptions support: fetch, RETI, and .ktext/.kdata.</span>",
"testing": true
},
{
"id": "R3E2",
"title": "System call",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s3e2",
"description": "<span data-langkey='example_03_03'>Example with system call support.</span>",
"testing": true
},
{
"id": "R3E3",
"title": "Exception",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s3e3",
"description": "<span data-langkey='example_03_01'>Example with floating point exception.</span>",
"testing": true
},
{
"id": "R4E1",
"title": "Int. + syscall + except.",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s4e1",
"description": "<span data-langkey='example_04_01'>Advanced example with interruption, system call, and exception.</span>",
"testing": true
},
{
"id": "R2E1",
"title": "I/O",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s2e1",
"description": "<span data-langkey='example_02_01'>Example with programmed I/O access, and basic .text/.data segment.</span>",
"testing": false
},
{
"id": "R4E2",
"title": "SC 1, 4-5, 8, 11-12",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s4e2",
"description": "<span data-langkey='example_04_02'>Example of syscall for printing/reading integer and string.</span>",
"testing": true
},
{
"id": "R5E2",
"title": "3D-Led",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s5e1",
"description": "<span data-langkey='example_06_03'>Example for 3D-Led.</span>",
"testing": true
},
{
"id": "R5E4",
"title": "Led Matrix (movement)",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s5e2",
"description": "<span data-langkey='example_06_05'>Example for Led Matrix.</span>",
"testing": true
},
{
"id": "R5E5",
"title": "Led Matrix (colors)",
"type": "<span data-langkey='Advanced'>Advanced</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s5e4",
"description": "<span data-langkey='example_06_05'>Example for Led Matrix.</span>",
"testing": true
},
{
"id": "R4E3",
"title": "Threads",
"type": "<span data-langkey='Extra'>Extra</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s4e3",
"description": "<span data-langkey='example_04_03'>Example of threads.</span>",
"testing": true
},
{
"id": "R4E5",
"title": "Side-channel attack",
"type": "<span data-langkey='Extra'>Extra</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s4e5",
"description": "<span data-langkey='example_04_05'>Example of side-channel attack.</span>",
"testing": true
},
{
"id": "R5E1",
"title": "Dummy instruction",
"type": "<span data-langkey='Special'>Special</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s6e1",
"description": "<span data-langkey='example_06_01'>Test example.</span>",
"testing": true
},
{
"id": "R5E2",
"title": "IEEE 754 (32 bits)",
"type": "<span data-langkey='Special'>Special</span>",
"modes": "newbie,intro,rv",
"hardware": "rv",
"microcode": "rv_base",
"assembly": "s6e7",
"description": "<span data-langkey='example_01_01'>Simple example with fetch, arithmetic instructions, and basic .text segment.</span>",
"testing": true
}
]
Loading

0 comments on commit 92cd4cc

Please sign in to comment.