Giter VIP home page Giter VIP logo

rrrocket's Introduction

Rocket

This is the undergoing refactor project of rocket core. The final goal is making the rocket core a minimal project with these features:

  1. not depending on diplomacy or rocket-chip.
  2. decouple bus interfaces, providing TL, ACE to users.
  3. provide diplomatic Module for diplomacy-based SoC integration.
  4. online cosim simulation framework for fuzzing and fault injection.
  5. collect and documenting each parameters, for each configuration, providing corresponding cover points. test cases or fuzzer should hit the cover points to validate these configuration.
  6. add uarch cover points for performance event tuning.

Refactor Procedure

Here are rules for refactoring: There will be two projects: rocket and diplomatic, rocket will depend on chisel3 project, diplomatic is the source code originally pulled from rocket-chip.

  1. git mv all scala codes from rocket-chip to diplomatic project.
  2. Remove codes which should not be maintained by rocket project, however it will still depend on the rocket-chip project.
  3. Add CI and pass the smoketest(hello world elf).
  4. Refactor out cde from rocket, start to git mv file by file from diplomatic to rocket project, see sequencer#4 for detail.
  5. a TilePRCIDomain will be the sham to the instantible RocketCore.
  6. There won't be any unrelated functional change during this refactoring.

Test & CI

For now, CI is only a bucket of sanity test, running cases from riscv-tests under the default cases.
In the future, Rocket Core will get rid of the DTM based simulation, since it:

  1. requires a correct debug mode, LSU to start test
  2. cannot diff with a reference model(spike, qemu, etc)
  3. slow to load binary, a large start-up time

A new online difftest should be provided with these features:

  1. spike as reference model
  2. capture architecture events, for each cycles, comparing event with architecutre events generated from spike

Pending PRs

Philosophy of this repository is fast break and fast fix. This repository always tracks remote developing branches, it may need some patches to work, make patch will append below in sequence:

rocket-chip https://github.com/chipsalliance/rocket-chip/pull/2968.diff
rocket-chip https://github.com/chipsalliance/rocket-chip/pull/3013.diff
rocket-chip https://github.com/chipsalliance/rocket-chip/pull/3066.diff
rocket-chip https://github.com/chipsalliance/rocket-chip/pull/3103.diff

rrrocket's People

Contributors

albertchen-sifive avatar aswaterman avatar brrmorre avatar ccelio avatar colinschmidt avatar davidbiancolin avatar derekpappas avatar ernie-sifive avatar hcook avatar huytbvo avatar ingallsj avatar jackkoenig avatar jchang0 avatar jerryz123 avatar mhtwn avatar mwachs5 avatar palmer-dabbelt avatar richardxia avatar rimasaviz avatar rmac-sifive avatar sbeamer avatar scottj97 avatar sdtwigg avatar seldridge avatar sequencer avatar srivatsa611y avatar terpstra avatar ucbjrl avatar yunsup avatar zhemao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.