Fix AXI4 IOBinder for multi-channel systems

This commit is contained in:
Jerry Zhao
2020-06-18 17:36:51 -07:00
parent d245df9133
commit f87522bf0e

View File

@@ -185,9 +185,9 @@ object AddIOCells {
} }
def axi4(io: Seq[AXI4Bundle], node: AXI4SlaveNode): Seq[(AXI4Bundle, AXI4EdgeParameters, Seq[IOCell])] = { def axi4(io: Seq[AXI4Bundle], node: AXI4SlaveNode): Seq[(AXI4Bundle, AXI4EdgeParameters, Seq[IOCell])] = {
io.zip(node.in).map{ case (mem_axi4, (_, edge)) => { io.zip(node.in).zipWithIndex.map{ case ((mem_axi4, (_, edge)), i) => {
val (port, ios) = IOCell.generateIOFromSignal(mem_axi4, Some("iocell_mem_axi4")) val (port, ios) = IOCell.generateIOFromSignal(mem_axi4, Some(s"iocell_mem_axi4_${i}"))
port.suggestName("mem_axi4") port.suggestName(s"mem_axi4_${i}")
(port, edge, ios) (port, edge, ios)
}} }}
} }