CN107368373A - A kind of method of the software bus data communication management based on static programming - Google Patents
A kind of method of the software bus data communication management based on static programming Download PDFInfo
- Publication number
- CN107368373A CN107368373A CN201710591407.XA CN201710591407A CN107368373A CN 107368373 A CN107368373 A CN 107368373A CN 201710591407 A CN201710591407 A CN 201710591407A CN 107368373 A CN107368373 A CN 107368373A
- Authority
- CN
- China
- Prior art keywords
- message
- software
- soft ridge
- ridge terrace
- data communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer And Data Communications (AREA)
Abstract
The present invention relates to the method that data communication is realized between the soft ridge terrace of the composition software under On-board software Framework reuse, the method of especially a kind of software bus data communication management based on static programming, Software for Design and data equally loaded are optimized by decomposition multiplex and static programming, redundancy fault-tolerant is taken to design message between soft ridge terrace, so as to detect the mistake occurred in message transmission, and retransmitted by limited number of time with software restarting to avoid process deadlock, solve traditional On-board software bus and lack reliability, real-time is relatively low under big data quantity signal intelligence, the problem of data interaction difficulty and not high bus utilization, improve the reliability of data communication between software bus framework and soft ridge terrace, real-time.
Description
Technical field
The present invention relates to realized between the soft ridge terrace of the composition software under On-board software Framework reuse data communication method,
A kind of specifically method of the software bus data communication management based on static programming.
Background technology
Software bus thought starts to occur in the nineties in last century with the development of middleware Technology, software bus
The concept of (Software Bus) was proposed by the Purtilo and Suodgras of Maryland universities of the U.S. in 1994 earliest, was explained
Stated a kind of software bus prototype POLYLITH, POLYLITH realizes the integrated of heterogeneous component under distributed environment.
Along with the increasingly huge of On-board software scale, high level of architectural complexity, different development modes releases one after another, software
The exploitation of bus shows powerful vigor with intergration model.Research for Soft-Bus Technology is also ground as Software Engineering
The focus studied carefully.By standard interface, information of the software bus between On-board software system components, which exchanges, to be provided virtually
Common data channel and interface service.Every component for meeting the bus interface specifications can be realized by adapter and inserted i.e.
With, obtain bus and support, with other components communication in bus, coordinate and control, realize the distribution of message in system, transmission,
Conversion and filtering, form dynamic structure, realize the integrated and customization of software systems.
However, in traditional software bus framework, lack the consideration to real time and reliability design, bus manager and
Bus communication module needs order and the communication of business datum between responsible all soft ridge terraces, does not have redundancy in program and data
Design and data diversion design, lack fault-tolerant measure in data communication.Therefore, bus manager process and bus communication module
Become the Single Point of Faliure bottleneck in whole On-board software system.
Therefore, for Soft-Bus Technology in large complicated On-board software system integration development field concrete application
When, it is necessary to take enhancing software quality and its reliability solution, for On-board software serve the whole star of satellite safety, can
Provided safeguard by operation, while development efficiency can be improved, shorten the construction cycle, save development cost, improve software real-time response
Ability.
The content of the invention
In order to solve the problems, such as that the communication of soft ridge terrace data is in the presence of competing and lacking guaranteed reliability under software bus framework, originally
Invention provides a kind of method of the software bus data communication management based on static programming, with realize improve software inhouse component it
Between the reliability of data transfer and the purpose of durability.
In order to solve the above-mentioned technical problem, present invention employs following technical scheme:
A kind of method of the software bus data communication management based on static programming, comprises the following steps:
S1. software requirement is analyzed before running software, designs soft ridge terrace communication task static programming table;
S2. after running software, software bus manager process is initialized, establishes soft ridge terrace address table;
S3. software bus message sink;
S4. software bus message dissection process;
S5. object matching, the soft ridge terrace of matching is searched in soft ridge terrace address table with the purpose component mark of message, if
The person that there is message subscribing in soft ridge terrace address table, then into step S6, if ordered in soft ridge terrace address table in the absence of message
Reader, then into step S8;
S6. message loop redundancy check, if CRC result is correct, into step S7, if cyclic redundancy
Check errors, into step S8;
S7. message is sent to purpose component;
S8. message retransmission order is sent to message issuer;
S9. message retransmission number judges, if number is more than the upper limit, into step S10, if number is less than or equal to upper
Limit, return to step S3;
S10. software bus is restarted, return to step S2.
Further, in step sl, the analysis process of software requirement comprises the following steps:
S11. each soft ridge terrace communication task triggering mode and cycle in analysis system;
S12. each soft ridge terrace transceiving data amount is analyzed;
S13. soft ridge terrace communication task run time is estimated;
S14. soft ridge terrace communication task static programming table is designed.
Further, each list item includes mark and the starting of soft ridge terrace mailbox of soft ridge terrace in described soft ridge terrace address table
Address.
Further, software bus message dissection process is specially in described step S4:According to message number, message name,
The message format extraction of message issuer's mark, message subscribing person mark, message-length, message data and CRC
Message issuer's mark, message subscribing person mark, message data and the CRC of outbound message.
Further, in step s 5, identified according to the message subscribing person extracted after step S4 dissection process to soft ridge terrace
Address table carries out linear table lookup operation,
If existed in soft ridge terrace address table identical occurrence, decision message subscriber mark are identified with message subscribing person
Knowledge exists in soft ridge terrace address table, takes out soft ridge terrace mailbox initial address;
If being not present in soft ridge terrace address table and identifying identical occurrence with message subscribing person, soft ridge terrace address is judged
Message subscribing person is not present in table to identify.
Further, in step S6, the generator polynomial of message loop redundancy check is x16+x12+x5+1。
Further, described message loop redundancy check is specially:
If CRC result is zero, judge that CRC is correct;
If CRC result is not zero, cyclic redundancy check error is judged.
Further, described step S8 is specially:According to message-length, by the message person's matching that copies to message subscribing
Soft ridge terrace mailbox initial address.
Further, after step S9, before step S10, in addition to message retransmission number adds 1.
Further, the upper limit of described message retransmission number is 3 times.
Further, described soft ridge terrace communication task triggering mode is divided into periodic triggers, down trigger and event and touched
Hair, periodic triggers task it needs to be determined that triggering the cycle, down trigger and event triggering it needs to be determined that interrupt or event it is most short
The origination interval time.
Further, described run time is multiplied by processor unit by the soft ridge terrace transceiving data amount in step S12
PDR calculates.
Further, described static programming table includes all communication tasks in the software arranged according to time shaft
Minimum period and run time.
The present invention is allowed to compared with prior art, have the following advantages that and actively imitate due to using above technical scheme
Fruit:
The present invention optimizes Software for Design and data equally loaded by soft ridge terrace decomposition multiplex and static programming, to soft structure
Message takes redundancy fault-tolerant to design between part, can detect the mistake occurred in message transmission, and retransmitted by limited number of time and
Software restarting avoids process deadlock, solve traditional On-board software bus lack it is real under reliability, big data quantity signal intelligence
The problem of when property is relatively low, data interaction is difficult and bus utilization is not high, is improved between software bus framework and soft ridge terrace
Reliability, the real-time of data communication.
Brief description of the drawings
Fig. 1 is the flow chart of the present invention;
Fig. 2 is the soft ridge terrace communication task static programming table of embodiment in the present invention.
Embodiment
Technical scheme proposed by the present invention is further described below in conjunction with the drawings and specific embodiments.According to following
Illustrate and claims, advantages and features of the invention will become apparent from.It should be noted that accompanying drawing is using very simplified shape
Formula and non-accurately ratio is used, be only used for conveniently, lucidly aiding in illustrating the purpose of the embodiment of the present invention.
As shown in figure 1, it is the schematic flow sheet of the present invention, in conjunction with accompanying drawing 1 to software of the present invention based on static programming
The method of bus data communication management describes in detail.
This method mainly includes the following steps that:
S1. software requirement is analyzed before running software, designs soft ridge terrace communication task static programming table;
The step can also be subdivided into following steps:
S11. each soft ridge terrace communication task triggering mode and cycle in analysis system;
Soft ridge terrace triggering mode is divided into periodic triggers, down trigger and event triggering, when the triggering mode of soft ridge terrace is
During periodic triggers task, it is thus necessary to determine that the triggering cycle, and when the triggering mode of soft ridge terrace is down trigger and event triggers,
Then it needs to be determined that the most bob of interruption or event life interval time.
S12. each soft ridge terrace transceiving data amount is analyzed;
S13. soft ridge terrace communication task run time is estimated;
It should be noted that estimating soft ridge terrace communication task run time is received by the soft ridge terrace in above-mentioned step 2
Hair data volume is multiplied by processor unit data processing speed to calculate;
S14. soft ridge terrace communication task static programming table is designed;
Static programming table should include the minimum period of all communication tasks and run time in software, as shown in Fig. 2 according to
The minimum period of communication task and run time, are arranged according to time shaft in static programming table, to ensure all soft ridge terraces
After program has performed within the communication task cycle, at least 20% time margin is left.
By above-mentioned S11-14 steps, the preparation of software actual motion is completed, then can be with runs software.
S2. after running software, software bus manager process is initialized, establishes soft ridge terrace address table;
Wherein, the mark and soft ridge terrace mailbox initial address of soft ridge terrace should be included in soft ridge terrace address table in each list item,
Usually, soft ridge terrace is identified as 32 integers, is distributed when software starts, each soft ridge terrace is owned by the mark uniquely determined
Know, soft ridge terrace mailbox is a piece of data structure of overall importance in internal memory, and only bus manager process is writeable, and affiliated soft ridge terrace can
Read, size is typically set to 64 bytes;
S3. software bus message sink;
The message format that software bus receives message includes message number, message name, message issuer's mark, message subscribing
Person's mark, message-length, message data and CRC;
S4. software bus message dissection process;
Software bus message dissection process is according to message number, message name, message issuer's mark, message subscribing person mark
Knowledge, message-length, message data and CRC message format extraction outbound message message issuer's mark, message
Subscriber identity, message data and CRC;
S5. object matching, the soft ridge terrace of matching is searched in soft ridge terrace address table with the purpose component mark of message, if
The person that there is message subscribing in soft ridge terrace address table, then into step S6, if ordered in soft ridge terrace address table in the absence of message
Reader, then into step S8;
Further, object matching is that the message subscribing person mark extracted according to step S4 enters line to soft ridge terrace address table
Property table lookup operation, if in soft ridge terrace address table exist and message subscribing person identify identical occurrence, decision message subscribe to
Person mark exists in soft ridge terrace address table, take out soft ridge terrace mailbox initial address, if in soft ridge terrace address table be not present with
Message subscribing person identifies identical occurrence, then judges that message subscribing person is not present in soft ridge terrace address table to be identified;
S6. message loop redundancy check, if CRC is correct, into step S7, if CRC
Mistake, into step S8;
In the step for message loop redundancy check, the generator polynomial of CRC chooses x16+x12+x5+ 1,
CRC only includes message-length and message data part, without message number, message name, message issuer mark, disappear
Subscriber identity is ceased, if CRC result is zero, judges that CRC is correct, if CRC
As a result it is not zero, then judges cyclic redundancy check error.
S7. message is sent to purpose component;
S8. message retransmission order is sent to message issuer;
Message is sent to message issuer to specifically refer to according to message-length, by the message person that copies to message subscribing matching
Soft ridge terrace mailbox initial address.
S9. message retransmission number judges, if number is more than the upper limit, into step S10, if number is less than or equal to upper
Limit, return to step S3;
In the operating process of this step, judge to need message retransmission number adding 1 after sending times, be limited limited number of time processed
Retransmit, the message retransmission number upper limit is preferably 3 times by the present invention.
S10. software bus is restarted, and performs cpu reset operation, return to step S2.
The present invention solves soft ridge terrace data communication under software bus framework and competition be present and lack asking for guaranteed reliability
Topic, while the problem of real-time runs into bottleneck under big data quantity signal intelligence is avoided, improve soft structure under software bus framework
Data communication reliability and durability between part so that form software soft ridge terrace can it is balanced, effectively utilize processor
Timeslice, avoid running software due to data contention deadlock, and the message communicating between soft ridge terrace is taken error detection, error correction and
Fault-tolerant measure.
Those skilled in the art should be understood that the present invention can be implemented without departing from this with many other concrete forms
The spirit or scope of invention, disclosed above is only the preferred embodiment of the present invention.Preferred embodiment does not have detailed descriptionthe and owned
Details, it is only described embodiment also not limit the invention.Obviously, according to the content of this specification, can make a lot
Modifications and variations.This specification is chosen and specifically describes these embodiments, be in order to preferably explain the present invention principle and
Practical application, so that one of ordinary skill in the art can utilize the present invention well.The present invention is only by claims and its entirely
The limitation of portion's scope and equivalent, those skilled in the art can be defined such as appended claims the present invention spirit and
Within the scope of make and changing and modifications.
Claims (13)
- A kind of 1. method of the software bus data communication management based on static programming, it is characterised in that comprise the following steps:S1. software requirement is analyzed before running software, designs soft ridge terrace communication task static programming table;S2. after running software, software bus manager process is initialized, establishes soft ridge terrace address table;S3. software bus message sink;S4. software bus message dissection process;S5. object matching, the soft ridge terrace of matching is searched in soft ridge terrace address table with the purpose component mark of message, if soft The person that there is message subscribing in component address table, then into step S6, if message subscribing person is not present in soft ridge terrace address table, Then enter step S8;S6. message loop redundancy check, if CRC result is correct, into step S7, if CRC Mistake, into step S8;S7. message is sent to purpose component;S8. message retransmission order is sent to message issuer;S9. message retransmission number judges, if number is more than the upper limit, into step S10, if number is less than or equal to the upper limit, returns Return step S3;S10. software bus is restarted, return to step S2.
- 2. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, in step sl, the analysis process of software requirement comprises the following steps:S11. each soft ridge terrace communication task triggering mode and cycle in analysis system;S12. each soft ridge terrace transceiving data amount is analyzed;S13. soft ridge terrace communication task run time is estimated;S14. soft ridge terrace communication task static programming table is designed.
- 3. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, each list item includes the mark and soft ridge terrace mailbox initial address of soft ridge terrace in described soft ridge terrace address table.
- 4. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, software bus message dissection process is specially in described step S4:According to message number, message name, message issuer's mark The message of the message format extraction outbound message of knowledge, message subscribing person mark, message-length, message data and CRC Publisher's mark, message subscribing person mark, message data and CRC.
- 5. a kind of method of software bus data communication management based on static programming according to claim 1 or 4, it is special Sign is, in step s 5, soft ridge terrace address table is carried out according to the message subscribing person mark extracted after step S4 dissection process Linear table lookup operation,If existing in soft ridge terrace address table and identifying identical occurrence with message subscribing person, decision message subscriber identity exists Exist in soft ridge terrace address table, take out soft ridge terrace mailbox initial address;If being not present in soft ridge terrace address table and identifying identical occurrence with message subscribing person, judge in soft ridge terrace address table Identified in the absence of message subscribing person.
- 6. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, in step S6, the generator polynomial of message loop redundancy check is x16+x12+x5+1。
- 7. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, described message loop redundancy check is specially:If CRC result is zero, judge that CRC is correct;If CRC result is not zero, cyclic redundancy check error is judged.
- 8. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, described step S8 is specially:According to message-length, the soft ridge terrace mailbox of the message person's matching that copies to message subscribing is risen Beginning address.
- 9. a kind of method of software bus data communication management based on static programming according to claim 1, its feature It is, after step S9, before step S10, in addition to message retransmission number adds 1.
- 10. a kind of method of software bus data communication management based on static programming according to claim 9, its feature It is, the upper limit of described message retransmission number is 3 times.
- 11. a kind of method of software bus data communication management based on static programming according to claim 2, its feature It is, described soft ridge terrace communication task triggering mode is divided into periodic triggers, down trigger and event triggering, periodic triggers Task is it needs to be determined that triggering cycle, down trigger and event trigger it needs to be determined that the most bob of interruption or event life interval time.
- 12. a kind of method of software bus data communication management based on static programming according to claim 2, its feature It is, described run time is multiplied by processor unit data processing speed by the soft ridge terrace transceiving data amount in step S12 To calculate.
- 13. a kind of method of software bus data communication management based on static programming according to claim 1 or 2, its It is characterised by, described static programming table includes the minimum period of all communication tasks in the software arranged according to time shaft And run time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710591407.XA CN107368373A (en) | 2017-07-19 | 2017-07-19 | A kind of method of the software bus data communication management based on static programming |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710591407.XA CN107368373A (en) | 2017-07-19 | 2017-07-19 | A kind of method of the software bus data communication management based on static programming |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107368373A true CN107368373A (en) | 2017-11-21 |
Family
ID=60308229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710591407.XA Pending CN107368373A (en) | 2017-07-19 | 2017-07-19 | A kind of method of the software bus data communication management based on static programming |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107368373A (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030083864A (en) * | 2002-04-22 | 2003-11-01 | 한국전자통신연구원 | A Processing Method of the Distributed Forwarding Table in the High Speed Router |
CN101299763A (en) * | 2008-06-13 | 2008-11-05 | 南京邮电大学 | Method for reconfiguration of wireless medium access control layer protocol |
CN101651863A (en) * | 2008-08-14 | 2010-02-17 | 中兴通讯股份有限公司 | Message sending method based on software bus extension |
CN106293919A (en) * | 2016-08-12 | 2017-01-04 | 中国航空工业集团公司西安飞行自动控制研究所 | The built-in tasks dispatching device of a kind of Time Triggered and method |
CN106656706A (en) * | 2017-02-25 | 2017-05-10 | 华南理工大学 | Service-oriented robot open-type control system and method based on software bus |
CN106649173A (en) * | 2016-10-10 | 2017-05-10 | 上海航天控制技术研究所 | High-reliability in-orbit self-correction system and method for on-board computer on the basis of 1553B bus |
-
2017
- 2017-07-19 CN CN201710591407.XA patent/CN107368373A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030083864A (en) * | 2002-04-22 | 2003-11-01 | 한국전자통신연구원 | A Processing Method of the Distributed Forwarding Table in the High Speed Router |
CN101299763A (en) * | 2008-06-13 | 2008-11-05 | 南京邮电大学 | Method for reconfiguration of wireless medium access control layer protocol |
CN101651863A (en) * | 2008-08-14 | 2010-02-17 | 中兴通讯股份有限公司 | Message sending method based on software bus extension |
CN106293919A (en) * | 2016-08-12 | 2017-01-04 | 中国航空工业集团公司西安飞行自动控制研究所 | The built-in tasks dispatching device of a kind of Time Triggered and method |
CN106649173A (en) * | 2016-10-10 | 2017-05-10 | 上海航天控制技术研究所 | High-reliability in-orbit self-correction system and method for on-board computer on the basis of 1553B bus |
CN106656706A (en) * | 2017-02-25 | 2017-05-10 | 华南理工大学 | Service-oriented robot open-type control system and method based on software bus |
Non-Patent Citations (3)
Title |
---|
刘恒光: "基于电源母线的星载CAN总线系统研究", 《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》 * |
朱海江 等: "基于设计模式的星载软件体系结构设计方法", 《计算机应用与软件》 * |
贾振宇: "基于软总线的组件式飞行控制软件设计", 《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022116323A1 (en) | Federated learning scheduling method, device, and system | |
TWI323433B (en) | Graphics pipeline precise interrupt method and appartus | |
CN110083455B (en) | Graph calculation processing method, graph calculation processing device, graph calculation processing medium and electronic equipment | |
CN110247984B (en) | Service processing method, device and storage medium | |
CN110519374B (en) | Edge computing method of ZigBee networked industrial control system and edge node thereof | |
WO2020224569A1 (en) | Express order delivery information sending method and device, and storage medium and express cabinet | |
CN112738294B (en) | Domain name resolution method and device based on block chain, electronic equipment and storage medium | |
CN116662038B (en) | Industrial information detection method, device, equipment and medium based on shared memory | |
CN112905668B (en) | Database derivative method, device and medium based on distributed data stream processing engine | |
WO2021052237A1 (en) | Transaction processing method and apparatus, device, storage medium and database | |
WO2018133556A1 (en) | Method, device and apparatus implementing communication in application | |
CN107368373A (en) | A kind of method of the software bus data communication management based on static programming | |
CN111813518A (en) | Robot early warning method and device, computer equipment and storage medium | |
CN105975359A (en) | Method and device for data cleaning of server and server | |
CN109271454A (en) | A kind of method and the network equipment that data are synchronous | |
CN104965909B (en) | A kind of request processing method of dynamic web content | |
CN110677465B (en) | Control method and device of distributed lock | |
CN109150328B (en) | Automatic detection method for receiver | |
CN109426720B (en) | Interface parameter verification method and related device | |
CN106776033B (en) | Resource utilization method and system of embedded equipment | |
CN112988407A (en) | Data processing method and device, electronic equipment and computer readable storage medium | |
CN107196843B (en) | Instant messaging method and device | |
CN111756834B (en) | Code scanning delay processing method and device | |
CN114244916B (en) | Port identification method of intelligent electronic equipment, electronic equipment and storage medium | |
TW201910978A (en) | System for completing check in process automatically through mobile device and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171121 |
|
RJ01 | Rejection of invention patent application after publication |