MCPcopy Index your code
hub / github.com/ESEO-Tech/emulsiV

github.com/ESEO-Tech/emulsiV @v1.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.1 ↗ · + Follow
221 symbols 467 edges 20 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

emulsiV

emulsiV is a visual simulator for Virgule, a minimal CPU core implementation based on the RISC-V architecture. This simulator is intended to be used as a tool for teaching the basics of computer architecture.

The user interface shows the structure of the datapath and animates the data transfers between functional units. The execution of a single instruction is decomposed into several steps (fetch, decode, ALU, mem/reg, PC) for educational reasons, but the intent is not to reflect a specific sequencer or pipeline implementation. In fact, we don't plan to simulate a pipeline in more detail.

emulsiV is free software and is distributed under the terms of the Mozilla Public License 2.0. It is developed by Guillaume Savaton, teacher, researcher and engineer at ESEO.

Running the simulator locally

Due to the security policies in recent web browsers, some features will only work if the simulator is served by a web server. We provide facilities to automate the process.

Install npm and run the following command from the root of the source tree:

npm install

This command starts a local web server and opens the simulator in a web browser:

npm start

Development

Check the JavaScript source code:

npm run lint

This command starts a local web server and runs the unit tests from the test folder:

npm test

Core symbols most depended-on inside this repo

toHex
called by 75
src/int32.js
unsignedSlice
called by 24
src/int32.js
update
called by 20
src/view.js
resizePath
called by 18
src/view.js
unsigned
called by 18
src/int32.js
read
called by 15
src/virgule.js
localRead
called by 13
src/devices/gpio.js
setX
called by 8
src/virgule.js

Shape

Method 113
Function 72
Class 36

Languages

TypeScript98%
C2%

Modules by API surface

src/virgule.js41 symbols
src/view.js36 symbols
src/devices/gpio.js32 symbols
src/devices/text.js22 symbols
src/controller.js22 symbols
src/devices/bitmap.js11 symbols
src/devices/assembly.js11 symbols
src/assembly.js9 symbols
src/hex.js7 symbols
src/index.js6 symbols
src/binary.js6 symbols
src/int32.js5 symbols

For agents

$ claude mcp add emulsiV \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact