Files
tatu/src/main/scala/issue/IssueQueue.scala
2026-06-27 03:38:34 +00:00

26 lines
868 B
Scala

import chisel3._
class IssueQueue(p: CoreParams = CoreParams()) extends Module {
val io = IO(new Bundle {
val enqValid = Input(Vec(p.issueWidth, Bool()))
val enq = Input(Vec(p.issueWidth, new RenamePacket(p)))
val enqReady = Output(Vec(p.issueWidth, Bool()))
val wakeup = Input(Vec(p.issueWidth, new Wakeup(p)))
val issueValid = Output(Vec(p.issueWidth, Bool()))
val issue = Output(Vec(p.issueWidth, new RenamePacket(p)))
val issueReady = Input(Vec(p.issueWidth, Bool()))
val flush = Input(Bool())
})
val intRs = Module(new ReservationStation(p, p.intRsEntries))
intRs.io.enqValid := io.enqValid
intRs.io.enq := io.enq
intRs.io.wakeup := io.wakeup
intRs.io.issueReady := io.issueReady
intRs.io.flush := io.flush
io.enqReady := intRs.io.enqReady
io.issueValid := intRs.io.issueValid
io.issue := intRs.io.issue
}