Scalar Fixed-Point Compliancy Subset (SFS) #15

Open
opened 2 years ago by Jean-François Nguyen · 1 comments
Collaborator

Scalar Fixed-Point Compliancy Subset (SFS)

Goals

  • Add support for the SFS subset of PowerISA v3.1
  • Provide a usable framework for CPU verification

Roadmap

Testbench

  • Define the Power-FV CPU interface (7114ed80)
    • CIA/NIA
    • GPRs (todo: quad-word access)
    • CR
    • SPRs
    • Instruction/data memory
    • Interrupts
  • Add support for alternative arithmetic operations (to serve as substitutes for mul/div ops) (a325393c)

Checks

Consistency checks

Instruction checks

Branch
Load/Store
Arithmetic
Compare
Trap
Select
  • Select
Logical
Rotate and Shift
Other instructions

Other checks

Build system

Documentation

  • Tutorial
  • API reference
# Scalar Fixed-Point Compliancy Subset (SFS) ## Goals - Add support for the SFS subset of PowerISA v3.1 - Provide a usable framework for CPU verification ## Roadmap ### Testbench - [ ] Define the Power-FV CPU interface (7114ed80) * [x] CIA/NIA * [ ] GPRs (todo: quad-word access) * [x] CR * [x] SPRs * [x] Instruction/data memory * [x] Interrupts - [x] Add support for alternative arithmetic operations (to serve as substitutes for mul/div ops) (a325393c) ### Checks #### Consistency checks - [x] Instruction address (#1, e0e43420) - [x] GPR access (#2, b84a2387) - [x] CR access (e7e9bb08) - [x] MSR access (a5e69954) - [x] SPR access (2988ffc6, 25500cd6) - [x] Causality (#3, 23f50354) - [x] Instruction memory (#4, 749184e9) - [x] Data memory (#5, 5ca0001b) #### Instruction checks ##### Branch - [x] Branch (#6, 58bef1a7, 5c097b94) - [x] Condition Register (#7, fee59d22, 2ffff619, 7b7aa6cc) - [x] System Call (0038f3ff) ##### Load/Store - [x] Load (#8, 0f731db1) - [x] Store (#9, 0f731db1) - [ ] Load/Store Quadword - [x] Load/Store with Byte Reversal (0f731db1) ##### Arithmetic - [x] Add/Subtract From/Negate (#11, f06c8000) - [x] Multiply/Divide/Modulo (#12, a325393c) - [ ] Random ##### Compare - [x] Compare (#13, 692e8ec7) - [x] Character-Type Compare (b3255def) ##### Trap - [x] Trap (b579665d) ##### Select - [ ] Select ##### Logical - [x] Logical/Equivalent/Extend Sign (#14, aeed0909) - [x] Compare Bytes (aeed0909) - [x] Count Leading/Trailing Zeros (aeed0909) - [x] Population Count (aeed0909) - [x] Parity (aeed0909) ##### Rotate and Shift - [x] Rotate (#16, 23dcd80a) - [x] Shift (#17, 23dcd80a) ##### Other instructions - [x] BCD Assist (4bf23982) - [x] Byte-Reverse (#18, ae76adef) - [x] Move To/From System Register (8cf56ab5) - [ ] Prefixed No-Op #### Other checks - [x] Uniqueness check (fc9feb58) - [x] Liveness check (9fde9f97) - [ ] Completeness check ### Build system - [x] Execute checks concurrently (5c9bc3e6, dd6048f1) - [x] Execute checks on a remote machine (89be0e67) ### Documentation - [ ] Tutorial - [ ] API reference
Poster
Collaborator
Slides used in yesterday's review/demo meeting with James and @wtf: https://docs.google.com/presentation/d/1m88D0o8hK5T74RDi-MLj2W0f3DQlX-nn3dw98uYRlYM/edit?usp=sharing
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: cores/power-fv#15
Loading…
There is no content yet.