SPI Bus Dynamic Reconfiguration for Scalable Slave Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
SPI serial peripheral interface data buses face limitations in scalability, efficiency, and flexibility due to fixed configurations, where slave devices must remain active during communication and the chain is static, and the number of pins required increases significantly with the number of slaves, making dynamic reconfiguration challenging.
Innovation Solution
A communication method that dynamically adjusts between serial and parallel configurations using a selection channel and a transmission channel, allowing for end-of-chain detection and enabling dynamic addition or removal of slave devices during communication, optimizing clock frequency, and reducing the number of wires required to six, while maintaining compatibility with existing SPI protocols.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If parallel SPI configuration is used to optimize clock frequency for each slave device, then communication efficiency improves, but the number of pins required increases significantly
Solution Approach 1:
The invention segments the communication function into two distinct channels: a selection channel for addressing slave devices and a transmission channel for data transfer. This segmentation allows the system to maintain parallel communication capabilities while reducing pin requirements, as the selection channel can reuse existing SPI pins rather than requiring dedicated pins for each slave device.
Solution Approach 2:
The invention makes the SPI bus pins multi-functional by using them for both selection and transmission purposes. The same MOSI and MISO pins are used for both addressing slaves on the selection channel and data transfer on the transmission channel, eliminating the need for separate dedicated pins for each function and each slave device.
2Device complexity
If serial SPI configuration is used to reduce pin count, then device complexity reduces, but communication efficiency decreases due to fixed configuration
Solution Approach 1:
The invention introduces dynamic reconfiguration capability where the SPI bus can switch between serial selection mode and parallel transmission mode. The system dynamically assigns slaves to the transmission channel based on selection commands, allowing the configuration to adapt to different communication needs rather than being fixed in advance.
Solution Approach 2:
The invention adds a temporal dimension to the communication protocol by implementing distinct phases (selection phase and transmission phase) within the same physical channel. This allows the system to achieve parallel communication efficiency without requiring simultaneous physical parallel connections for all slaves.
3Device complexity
If static SPI chain configuration is used, then device complexity is reduced, but adaptability decreases as the chain cannot be dynamically expanded
Solution Approach 1:
The invention implements dynamic slave assignment where slaves can be added or removed from the transmission channel during operation. The master device can dynamically select which slaves participate in transmission based on current needs, allowing the system to adapt to changing requirements without reconfiguring the entire chain.
Solution Approach 2:
The system allows slaves to self-manage their participation in transmission by monitoring selection commands. When a slave receives a selection command matching its identity, it automatically transitions to transmission mode, enabling dynamic expansion and contraction of the active slave set without centralized control overhead.
4Reliability
If all slave devices remain active during communication, then reliability is improved, but energy consumption increases
Solution Approach 1:
The invention implements periodic selection and activation of slaves based on communication needs. Instead of keeping all slaves continuously active, the system periodically selects specific slaves for transmission based on current data requirements, allowing non-selected slaves to enter low-power states while maintaining system reliability through on-demand activation.
Data Source
Figure 1A~1B
Figure 2
Figure 3
AI summary
A method for communication between a master device (MT) and N slave devices (ES1-ESN) connected consecutively one-to-one on a data bus (SPI+), the bus having a clock line (SCK), a mode selection line (SS), a serial selection channel (MOSIs, MISOs), and a parallel transmission channel (MOSIp, MISOp), the method comprising: - a selection step (614, 618) implemented by the master device (MT) and the N slave devices (ES1-ESN) on the selection channel (MOSIs, MISOs), comprising a selection of a slave device selected from among the N slave devices (ES1-ESN); and - a transmission step (620, 622; 714, 716) implemented on the transmission channel (MOSIp, MISOp), comprising a data transmission between the master device (MT) and the selected slave device.