simde

Educational computer simulator on a mission to "superscale" the study of computer architecture fundamentals

https://github.com/simde-ull/simde

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.3%) to scientific vocabulary

Keywords

computer-architecture computer-architecture-and-organization educational instruction-level-parallelism learning-by-doing learning-resources out-of-order pipelining risc simulator superscalar
Last synced: 6 months ago · JSON representation ·

Repository

Educational computer simulator on a mission to "superscale" the study of computer architecture fundamentals

Basic Info
  • Host: GitHub
  • Owner: SIMDE-ULL
  • License: gpl-3.0
  • Language: TypeScript
  • Default Branch: main
  • Homepage: https://simde.net
  • Size: 11.4 MB
Statistics
  • Stars: 13
  • Watchers: 5
  • Forks: 10
  • Open Issues: 47
  • Releases: 3
Topics
computer-architecture computer-architecture-and-organization educational instruction-level-parallelism learning-by-doing learning-resources out-of-order pipelining risc simulator superscalar
Created over 8 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

SIMDE

SIMDE Build Status SIMDE License SIMDE Stars SIMDE Contributors

SIMDE Logo

🖥️ Run SIMDE directly from your browser: https://simde.net/

SIMDE is a computer simulator with a strong focus on assisting in learning and education. As a didactic simulator, SIMDE aims to supercharge the teaching of computer architecture principles with a pragmatic, learn-by-doing approach.

When used in supporting educational practices, SIMDE shines both for reproducing architectural concepts, such as Tomasulo's algorithm and representing organizational structures, like re-order buffers.

This is how SIMDE looks in action

SIMDE in action

Features

  • Designed to be simple and enjoyable to use.
  • Includes several forms of visualizing computer units and memory data.
  • Cross-platform, accessible from any modern web browser.
  • Superscalar architecture simulation.
  • Very Long Instruction Word (VLIW) architecture simulation.
  • Multiple instruction processing modes, including batch processing.
  • Instruction flow tracing to visually follow instructions through the pipeline.
  • Project uses modern development standards.
  • Free as in Freedom (see License further below).

Getting started

Using the official web instance

SIMDE can be accessed directly from any modern browser of your choice at:

https://simde.net/

Building from sources

Prerequisites

Make sure that the following tools are installed in your system:

Build steps

  1. Install the project dependencies: bash pnpm install --frozen-lockfile

  2. Build the static site: bash pnpm build

The generated build will be available in the dist/ directory generated in the root directory of the project. The static files can be served using a HTTP server, such as Apache httpd, NGINX or Traefik.

Citation

In papers and reports, please refer to SIMDE by using the following BibTex entry:

tex @software{Castilla_Rodriguez_Simulador_para_Planificacion, author = {Castilla Rodríguez, Iván and Abreu González, Adrián and Díaz Arteaga, Melissa and Carrasco Benítez, Óscar and La spina, Francesco}, license = {GPL-3.0-only}, title = {{Simulador para Planificación Dinámica y Estática}}, url = {https://github.com/SIMDE-ULL/SIMDE} }

Contributing

See CONTRIBUTING.

Contributors

Iván Castilla Rodríguez
Iván Castilla Rodríguez

🔬 📆 🧑‍🏫 🤔 💡 📖
Adrian Abreu Gonzalez
Adrian Abreu Gonzalez

📦 🎨
alu0100884012
alu0100884012

📦
Óscar Carrasco
Óscar Carrasco

🧑‍🏫 🚧 📦
endes0
endes0

⚠️ 🚧

License

SIMDE is licensed under the GNU General Public License v3.0 only.

The rationale behind this decision is that we, the SIMDE authors, believe that society must strive for free, accessible, high quality educational resources. Given that, SIMDE will always be "Free as in Freedom" for anyone to use anywhere, at any time.

Owner

  • Name: SIMDE
  • Login: SIMDE-ULL
  • Kind: organization

Computer Architecture Simulator

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Simulador para Planificación Dinámica y Estática
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - family-names: Castilla Rodríguez
    given-names: Iván
    email: icasrod@ull.es
    orcid: 'https://orcid.org/0000-0003-3933-2582'
    affiliation: Universidad de La Laguna
  - given-names: Adrián
    family-names: Abreu González
    email: adrianabreugonzalez@outlook.com
  - given-names: Melissa
    family-names: Díaz Arteaga
  - given-names: Óscar
    family-names: Carrasco Benítez
    email: me@oxca.be
  - given-names: Francesco
    family-names: La spina
    email: endes@disroot.org
repository-code: 'https://github.com/SIMDE-ULL/SIMDE'
url: 'https://simde-ull.github.io/SIMDE/'
abstract: >-
  Educational computer simulator on a mission to
  "superscalate" the study of computer architecture
  fundamentals.
keywords:
  - simulator
  - educational
  - computer architecture
  - superscalar
  - VLIW
  - instruction level parallelism
  - out of order
license: GPL-3.0-only

GitHub Events

Total
  • Issues event: 9
  • Delete event: 34
  • Issue comment event: 14
  • Push event: 251
  • Pull request review event: 36
  • Pull request event: 87
  • Create event: 44
Last Year
  • Issues event: 9
  • Delete event: 34
  • Issue comment event: 14
  • Push event: 251
  • Pull request review event: 36
  • Pull request event: 87
  • Create event: 44

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 5
  • Total pull requests: 31
  • Average time to close issues: 10 days
  • Average time to close pull requests: 16 days
  • Total issue authors: 4
  • Total pull request authors: 2
  • Average comments per issue: 0.6
  • Average comments per pull request: 0.0
  • Merged pull requests: 19
  • Bot issues: 0
  • Bot pull requests: 29
Past Year
  • Issues: 5
  • Pull requests: 31
  • Average time to close issues: 10 days
  • Average time to close pull requests: 16 days
  • Issue authors: 4
  • Pull request authors: 2
  • Average comments per issue: 0.6
  • Average comments per pull request: 0.0
  • Merged pull requests: 19
  • Bot issues: 0
  • Bot pull requests: 29
Top Authors
Issue Authors
  • oxcabe (17)
  • icasrod (4)
  • renovate[bot] (3)
  • nicolasjml99 (2)
  • endes0 (2)
  • H0smax (1)
  • github-actions[bot] (1)
  • adrianabreu (1)
  • LuccianoSileo (1)
  • OscarGuerraRodriguez (1)
Pull Request Authors
  • renovate[bot] (89)
  • oxcabe (14)
  • endes0 (13)
  • github-actions[bot] (2)
  • allcontributors[bot] (1)
Top Labels
Issue Labels
refactor (7) enhancement (5) ui (5) bug (5) integration (4) documentation (3) idea (3) feature (2) deployment (2) i18n (2) autorelease: pending (1) local-state (1) core-dev (1) dependencies (1)
Pull Request Labels
enhancement (9) bug (8) ui (4) core-dev (4) refactor (4) parsers (3) autorelease: pending (2) i18n (2) feature (2) documentation (1) deployment (1)

Dependencies

package-lock.json npm
  • 2160 dependencies
package.json npm
  • @types/node 8.0.51 development
  • ava 0.23.0 development
  • codecov ^3.6.5 development
  • coveralls 3.0.0 development
  • html-webpack-plugin 2.30.1 development
  • multiview 2.5.3 development
  • npm-scripts-info ^0.3.6 development
  • nyc 11.3.0 development
  • opn-cli 3.1.0 development
  • standard-version 4.2.0 development
  • stylelint ^9.1.1 development
  • stylelint-config-recommended-scss ^3.1.0 development
  • stylelint-config-standard ^18.2.0 development
  • stylelint-scss ^2.5.0 development
  • stylelint-webpack-plugin ^0.10.3 development
  • trash-cli 1.4.0 development
  • tslint 5.9.1 development
  • tslint-config-standard 7.0.0 development
  • tslint-loader 3.6.0 development
  • typedoc ^0.17.6 development
  • typescript 2.6.1 development
  • webpack 3.8.1 development
  • @types/i18next 8.4.2
  • @types/react 16.0.22
  • @types/react-dom 16.0.3
  • @types/react-i18next 4.6.0
  • awesome-typescript-loader 3.3.0
  • babel-loader 7.1.2
  • babel-preset-es2015 ^6.24.1
  • babel-preset-react ^6.24.1
  • bootstrap ^3.4.1
  • browser-sync ^2.26.7
  • browser-sync-webpack-plugin ^1.1.4
  • copy-webpack-plugin ^4.0.1
  • css-loader ^0.28.1
  • extract-text-webpack-plugin ^2.1.0
  • file-loader ^0.11.1
  • font-awesome 4.7.0
  • gitbook-cli ^2.3.2
  • i18next 10.0.7
  • i18next-browser-languagedetector 2.1.0
  • i18next-localstorage-cache 1.1.1
  • i18next-xhr-backend 1.5.0
  • lex 1.7.9
  • node-sass ^4.14.0
  • react 16.1.0
  • react-bootstrap 0.31.5
  • react-color ^2.14.0
  • react-dom ^16.13.1
  • react-file-reader-input 1.1.4
  • react-i18next 6.1.0
  • react-redux ^5.0.7
  • react-router ^4.2.0
  • react-router-dom ^4.2.2
  • redux ^3.7.2
  • sass-loader 6.0.6
  • source-map-loader 0.2.3
  • style-loader 0.10.0
  • tslib 1.8.0
  • webpack-dev-server 2.9.4
  • webpack-merge 4.1.1
.github/workflows/deploy.yml actions
  • actions/checkout v2 composite
  • actions/download-artifact v2 composite
  • actions/setup-node v1 composite
  • actions/upload-artifact v2 composite
  • peaceiris/actions-gh-pages v3 composite
Dockerfile docker
  • node lts build