mtkcpu icon indicating copy to clipboard operation
mtkcpu copied to clipboard

interconnect to be unified

Open bieganski opened this issue 3 years ago • 2 comments

Currently porting third-party peripherals to mtkCPU may be problematic, because what is called Wishbone in the CPU code (we have WishboneBusRecord, GenericInterfaceToWishboneMasterBridge and WishboneSlave classes) does not implement a real Wishbone interface - indeed, it's similar, but much simplified.

Some examples of discrepancies:

  • no strobe signal is used at all - there is an assumption, that strobe == cyc
  • no tags are present
  • no select signal - chip select logic is moved to address decoder, that switches peripherals based on request address as shown here

However, ideally we should implement and functionally verify Wishbone Bus, to make it easier for users to port their own peripherals.

bieganski avatar Feb 27 '22 16:02 bieganski

Do check out the new Interfaces RFC in Amaranth. We now discuss RFCs every Monday at 1700 UTC on the irc channel.

robtaylor avatar Jun 20 '23 17:06 robtaylor

oh, good to know, thank you! for sure will check it out.

bieganski avatar Jun 20 '23 20:06 bieganski