This project implements a serial bus that supports 2 masters and 3 slaves. One master and one slave can be configured as a bus bridge. Slave 2 (or any other slave) can be configured to support split transactions.
The bus interconnect contains several parts:
- Arbiter: Gives priority to Master 1 over Master 2 when both masters request access at the same time.
- Address decoder: Decodes the address to identify which slave to select
- Multiplexers and decoders: Connect required master and slave ports through the bus based on control signals from the arbiter and address decoder