[libre-riscv-dev] [Bug 154] Cell for Dependency Matrices is needed
bugzilla-daemon at libre-riscv.org
bugzilla-daemon at libre-riscv.org
Mon Jan 13 15:35:58 GMT 2020
http://bugs.libre-riscv.org/show_bug.cgi?id=154
--- Comment #7 from Staf Verhaegen <staf at fibraservi.eu> ---
After reading a little further I think that the architecture was developed at a
moment where not the current synthesis, place-and-route and timing check tools
were available. With current tools I think it is better to implement it all on
the DependencyMatrix level without sublevels. Incomplete and non-checked code:
class DependencyMatrix(Elaboratable):
def __init__(self, n_fus, n_regs):
self.fu_start = Signal(n_fus)
self.fu_read_in = Array(Signal(n_regs) for _ in range(n_fus))
self.fu_write_in = Array(Signal(n_regs) for _ in range(n_fus))
self.fu_read_ok = Signal(n_fus)
self.fu_read_done = Signal(n_fus)
self.read_reserve = Signal(n_refs)
self.fu_write_ok = Signal(n_fus)
self.fu_write_done = Signal(n_fus)
self.write_reserve = Signal(n_refs)
def elaborate(self, platform):
m = Module()
matrix_fu = Array(
return m
{{{python
import sys
}}}
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-riscv-dev
mailing list