Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(CSR): correct the width of PC pgaddr for inst fetch exception #3795

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Commits on Nov 12, 2024

  1. fix(CSR): correct the width of PC pgaddr for inst fetch exception

    We found that the CSR mtval2 truncates the high bits of gpaddr when GPF occurs in instruction fetching. Actually, there is an GPAMem which storages the whole 64-bit gpaddr, but it does not pass to CSR correctly, due to incorrect width of trapPCGPA in module NewCSR and bundle TrapEntryEventInput. This patch fixes this.
    cebarobot committed Nov 12, 2024
    Configuration menu
    Copy the full SHA
    fa8fab3 View commit details
    Browse the repository at this point in the history
  2. feat(CSR): reduce the bit width of exception gpaddr

    The paddr genereted by VS Stage could only be 56 bits. So we could reduce the datapath width of IGPF tval2.
    
    Besides, tval2/gpaddr could be over 56 bits only when an jump occurs and only G stage is enabled. This is handled by backend and not use this datapath.
    cebarobot committed Nov 12, 2024
    Configuration menu
    Copy the full SHA
    9205864 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8f7529a View commit details
    Browse the repository at this point in the history