Unverified Commit c1f2a238 authored by ah-condor's avatar ah-condor Committed by GitHub
Browse files

Add SYS execute pipe (#170)

This PR is a followup to
https://github.com/riscv-software-src/riscv-perf-model/pull/162.

It is also discussed in:
https://github.com/riscv-software-src/riscv-perf-model/issues/164


 
This PR changes the way SYS instructions are executed. Previously, SYS
instructions did not go through an execution pipe but instead were
dispatched to the ROB without delay, and the ROB handled the scoreboard
with respect to the destination register. This PR requires the SYS
instructions to pass through an execution pipe, thereby obviating any
special scoreboard code in the ROB.  With the exception of CSR read
instructions, the ROB will flush all SYS instructions.

This feature can be tested by running example_json.json workload, which
is part of the make regress suite.  Also, the sys execute pipe was added
to 3 config files big_core, medium_core and small_core.

How was this tested:
make regress passes 83/83.
 

---------

Co-authored-by: default avatarAnthony Hung <anthonyh@compute1.condorcomputing.net>
parent a0f965f6
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment