forked from riscv-software-src/riscv-isa-sim
-
Notifications
You must be signed in to change notification settings - Fork 0
RISC-V Functional ISA Simulator
License
qmn/riscv-isa-sim
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
========================================================================== RISC-V ISA Simulator ========================================================================== # Author : Andrew Waterman # Date : June 19, 2011 # Version : (under version control) The RISC-V ISA Simulator implements a functional model of one or more RISC-V processors. -------------------------------------------------------------------------- Build Steps -------------------------------------------------------------------------- % mkdir build % cd build % ../configure % make % [sudo] make install -------------------------------------------------------------------------- Usage -------------------------------------------------------------------------- The riscv-isa-run program is not usually invoked directly; rather, fesvr, the Front-End Server, invokes riscv-isa-run. fesvr and riscv-pk must be installed to simulate a RISC-V user program using riscv-isa-run. -------------------------------------------------------------------------- Compiling and Running a Simple C Program -------------------------------------------------------------------------- Install riscv-isa-run (see Build Steps), then install the following additional packages: riscv-fesvr, riscv-gcc, riscv-pk. Write a short C program and name it hello.c. Then, compile it into a RISC-V ELF binary named hello: % riscv-gcc -o hello hello.c Now you can simulate the program: % riscv-fesvr hello -------------------------------------------------------------------------- Simulating a New Instruction -------------------------------------------------------------------------- Adding an instruction to the simulator requires two steps: 1. Describe the instruction's functional behavior in the file riscv/insns/<new_instruction_name>.h. Examine other instructions in that directory as a starting point. 2. Add the instruction to the riscv-opcodes package: % cd ../riscv-opcodes % vi opcodes // add a line for the new instruction % make install 3. Rebuild the simulator.
About
RISC-V Functional ISA Simulator
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C 58.0%
- C++ 38.4%
- Shell 2.9%
- Other 0.7%