diff --git a/CHANGELOG.md b/CHANGELOG.md index 542eb153d..fe2e4bcc0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,6 +54,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Force cheshire's sim scripts re-generation - Fix u-boot to support RVV-linux - Fixed src emul check for vector integer extension operation + - Fix deadlock when a mask op (vmslt/vmsleu) is issued while vrgather/vcompress owns MaskB ### Added diff --git a/hardware/src/lane/lane_sequencer.sv b/hardware/src/lane/lane_sequencer.sv index a9fa44e32..1f5326736 100644 --- a/hardware/src/lane/lane_sequencer.sv +++ b/hardware/src/lane/lane_sequencer.sv @@ -312,6 +312,8 @@ module lane_sequencer import ara_pkg::*; import rvv_pkg::*; import cf_math_pkg:: operand_request_valid_o [MulFPUB] || operand_request_valid_o[MaskB] || operand_request_valid_o[MaskM]); + if (pe_req.use_vd_op) + pe_req_ready &= (vrgat_state_q == IDLE); end VFU_None : begin // VRGATHER/VCOMPRESS use the MaskB opqueue with non-traditional request scheme