NanoBoard 3000 SPI System Overview
The NanoBoard 3000 SPI system involves a variety of SPI-compatible slave resources, located across the hardware system – on the motherboard itself and also on certain peripheral boards that plug in to the motherboard.
The majority of these SPI resources are accessible by three distinct SPI masters, over a common, multiplexed SPI bus:
- Altium Designer (via the USB connection)
- The firmware – more specifically a TSK3000A processor therein – loaded into the motherboard's Host Controller FPGA device (the NanoTalk Controller)
- The design loaded into the User FPGA device.
Providing the required SPI bus arbitration between the masters, and access to the SPI devices, is the NanoBoard 3000's SPI Controller. The Controller, which is part of the NanoBoard firmware, plays the role of multiplexer/router – determining which master has access to the common SPI bus and which SPI slave device is selected for communications.
In addition, there are several SPI resources on the motherboard that are accessible only by the User FPGA device (or rather a design loaded within). These are accessed directly using dedicated SPI links – independent of the common SPI bus.