bugfix in locking arbiter
This commit is contained in:
parent
4ebf637642
commit
c5dd37ae80
@ -207,7 +207,7 @@ class LockingArbiter[T <: Data](n: Int)(data: => T) extends Component {
|
|||||||
for (i <- 1 until n) {
|
for (i <- 1 until n) {
|
||||||
io.in(i).ready := Mux(any_lock_held, io.out.ready && locked(i),
|
io.in(i).ready := Mux(any_lock_held, io.out.ready && locked(i),
|
||||||
!io.in(i-1).valid && io.in(i-1).ready)
|
!io.in(i-1).valid && io.in(i-1).ready)
|
||||||
locked(i) := Mux(any_lock_held, locked(i), io.in(i).ready)
|
locked(i) := Mux(any_lock_held, locked(i), io.in(i).ready && io.lock(i))
|
||||||
}
|
}
|
||||||
|
|
||||||
var dout = io.in(n-1).bits
|
var dout = io.in(n-1).bits
|
||||||
|
Loading…
Reference in New Issue
Block a user