MemBlock: split store addr and store data (#781)
* RSFeedback: add source type
* StoreQueue: split store addr and store data
* StoreQueue: update ls forward logic
* Now it supports splited addr and data
* Chore: force assign name for load/store unit
* RS: add rs'support for store a-d split
* StoreQueue: fix stlf logic
* StoreQueue: fix addr wb sq update logic
* AtomicsUnit: support splited a/d
* StoreQueue: add sbuffer enq condition assertion
Store data op (std) may still be invalid after store addr op's (sta)
commitment, so datavalid needs to be checked before commiting
store data to sbuffer
Note that at current commit a non-completed std op for a
commited store may exist. We should make sure that uop
will not be cancelled by a latter branch mispredict. More work
to be done!
* Roq: add std/sta split writeback logic
Now store will commit only if both sta & std have been writebacked
Co-authored-by: NZhangZifei <zhangzifei20z@ict.ac.cn>
Showing
想要评论请 注册 或 登录