NJU-ProjectN/nemu ics2023 initialized
NJU-ProjectN/nemu eb63cf3568dbf4e0c3c6ef462e6ec685550fabbc Merge pull request #76 from rijuyuezhu/master
This commit is contained in:
35
nemu/README.md
Normal file
35
nemu/README.md
Normal file
@ -0,0 +1,35 @@
|
||||
# NEMU
|
||||
|
||||
NEMU(NJU Emulator) is a simple but complete full-system emulator designed for teaching purpose.
|
||||
Currently it supports x86, mips32, riscv32 and riscv64.
|
||||
To build programs run above NEMU, refer to the [AM project](https://github.com/NJU-ProjectN/abstract-machine).
|
||||
|
||||
The main features of NEMU include
|
||||
* a small monitor with a simple debugger
|
||||
* single step
|
||||
* register/memory examination
|
||||
* expression evaluation without the support of symbols
|
||||
* watch point
|
||||
* differential testing with reference design (e.g. QEMU)
|
||||
* snapshot
|
||||
* CPU core with support of most common used instructions
|
||||
* x86
|
||||
* real mode is not supported
|
||||
* x87 floating point instructions are not supported
|
||||
* mips32
|
||||
* CP1 floating point instructions are not supported
|
||||
* riscv32
|
||||
* only RV32IM
|
||||
* riscv64
|
||||
* only RV64IM
|
||||
* memory
|
||||
* paging
|
||||
* TLB is optional (but necessary for mips32)
|
||||
* protection is not supported
|
||||
* interrupt and exception
|
||||
* protection is not supported
|
||||
* 5 devices
|
||||
* serial, timer, keyboard, VGA, audio
|
||||
* most of them are simplified and unprogrammable
|
||||
* 2 types of I/O
|
||||
* port-mapped I/O and memory-mapped I/O
|
Reference in New Issue
Block a user