Automatic Signal Exchange Between Embedded Multi-CPU Boards
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In embedded systems with multiple CPU boards, manual adjustment of data bus addresses for signal exchange is error-prone and cumbersome, especially in complex systems with thousands of signals, requiring frequent recompilation of programs.
Innovation Solution
A method and apparatus that divide CPU boards into a master and slave configuration, where the master board collects and allocates data bus addresses based on signal registration information and configuration files, allowing automatic and intuitive signal exchange without manual intervention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual adjustment of data bus addresses is used for signal exchange between CPU boards, then signal exchange can be implemented, but the process becomes error-prone and cumbersome especially in complex systems with thousands of signals
Solution Approach 1:
The system enables automatic self-configuration of data bus addresses through the following mechanism: (1) A configuration file stores signal exchange relationships between CPU boards in a structured format; (2) Upon system initialization, the master board automatically reads this configuration file; (3) The master board parses the configuration and automatically allocates data bus addresses to all signals based on predefined rules; (4) The allocated addresses are distributed to slave boards without manual intervention. This self-service approach eliminates manual address adjustment, reducing both errors and operational complexity while maintaining signal exchange correctness
Solution Approach 2:
The patent applies preliminary action by pre-defining signal exchange relationships in a configuration file before system operation. The configuration file contains all necessary information about signal connections between CPU boards. During system initialization, the master board reads this pre-prepared configuration and automatically generates the address allocation scheme, avoiding the need for manual address assignment during operation and ensuring correctness from the start
2Adaptability or versatility
If data bus addresses are manually adjusted for signal exchange, then signal connections can be modified, but frequent recompilation of programs is required
Solution Approach 1:
The system implements dynamic signal configuration through a runtime address allocation mechanism. The configuration file can be modified to change signal exchange relationships, and the master board automatically re-parses the configuration and re-allocates addresses during system initialization or runtime. This dynamic approach allows flexible signal adjustment without requiring program recompilation, as the address allocation is decoupled from the compiled program code and handled through runtime configuration
Solution Approach 2:
By pre-defining signal exchange relationships in a configurable format separate from the program code, the system enables flexible modifications. When signal connections need to be changed, users only need to edit the configuration file rather than modify program source code, thereby avoiding recompilation while maintaining adaptability
3Ease of operation
If automatic address allocation is implemented, then manual intervention is reduced, but a master-slave architecture and configuration file management are required
Solution Approach 1:
The master board is designed with multi-functionality to handle automatic address allocation. It serves as both a normal CPU board participating in signal exchange and as a configuration management server that reads the configuration file, parses signal relationships, allocates addresses, and distributes them to slave boards. This universal design consolidates multiple functions into one component, reducing overall system complexity while maintaining automation
Solution Approach 2:
The configuration file acts as an intermediary between the physical signal connections and the software address allocation. It provides a standardized interface that describes signal exchange relationships in a structured format, allowing the master board to automatically parse and process the information without requiring complex direct communication protocols between all CPU boards. This intermediary simplifies the automation process while managing the necessary system complexity
Data Source
Figure 1~2
Figure 3
Figure 4
AI summary
The present invention discloses a signal name based method for automatic signal exchange between multiple embedded CPU boards, including the following steps: dividing CPU boards into master board and slave board, where during an initialization phase, each slave board sends signal registration information to the master board; after the master board collects the signal registration information of all the slave boards, reading, from a configuration file, an exchange relationship between an output signal and an input signal that is represented by a connection line between signal names, calculating and allocating a data bus address to which the output signal and the input signal are mapped, and sending memory addresses, data types, and bus addresses of signals to each slave board; after a slave board receives the memory addresses, the data types, and the bus addresses of the signals from the master board, saving same as output signal tables and input signal tables; and during an operation phase, writing, by a signal sender, a value of an output signal into a corresponding bus address according to the output signal tables, and reading, by a receiver, a value of an input signal from a corresponding bus address according to the input signal tables. With this method, signal exchange between CPU boards may be intuitively and simply adjusted, and the correctness of signal exchange is ensured. The present invention further provides an apparatus for implementing automatic signal exchange.