[BUG] mstatus.SD does not reflect VS=Dirty, violating RISC-V Privileged Spec

Placeholder NACC
2026-01-09T15:04:06Z

## Spec Reference
According to the RISC-V Privileged Spec (the SD description of mstatus), SD is a read-only bit that summarizes whether any extension state is dirty:

this is equivalent to: _SD == 1 if any of FS==Dirty, VS==Dirty, or XS==Dirty holds_

## Problem Description
In core/csr_regfile.sv (around lines 1859–1863). The computation of SD only considers XS and FS, and does not include VS:

As a result, there exists a condition where VS=Dirty but SD=0,which contradicts the specification definition of SD.