Skip to content

Commit

Permalink
Update difftest/doc/rational.md
Browse files Browse the repository at this point in the history
Co-authored-by: Jiuyang Liu <[email protected]>
  • Loading branch information
Clo91eaf and sequencer authored Sep 30, 2024
1 parent c5b7115 commit ccf6226
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion difftest/doc/rational.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ The goal of offline difftest is to ensure the correctness of each instruction’
- **Using SAIL Simulator:** SAIL offers a highly formalized and customizable architecture simulation framework. Despite its slower speed, SAIL’s precision and flexibility make it well-suited for offline verification needs.
- **Removing Platform Dependencies:** To simplify the simulation, platform-related parts of SAIL will be removed, focusing on validating the instruction set and processor core.
- **Function Patch:** For example, in validating FP (floating-point) related instructions, certain functions, such as `fp reduce order`, may need to be replaced.
- **Handling Undefined Behavior:** To verify undefined behavior, an interface will be provided for the simulator to inject specific behavior. This may involve forking the SAIL project or directly customizing its source code.
- **Handling Undefined Behavior:** To verify undefined behavior, an interface will be provided for the simulator to inject specific behavior. This may involve adding external functions to SAIL and patching its source code.

##### 3. **DiffTest Algorithm**
- **Instruction Alignment:** During the comparison process, it’s crucial to ensure that the DUT and model instruction streams are properly aligned. This may require special alignment algorithms to handle challenges arising from out-of-order or parallel execution.
Expand Down

0 comments on commit ccf6226

Please sign in to comment.