CN106933580B - Embedded software architecture system - Google Patents

Embedded software architecture system Download PDF

Info

Publication number
CN106933580B
CN106933580B CN201710120042.2A CN201710120042A CN106933580B CN 106933580 B CN106933580 B CN 106933580B CN 201710120042 A CN201710120042 A CN 201710120042A CN 106933580 B CN106933580 B CN 106933580B
Authority
CN
China
Prior art keywords
data
unit
task
software architecture
data processing
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.)
Active
Application number
CN201710120042.2A
Other languages
Chinese (zh)
Other versions
CN106933580A (en
Inventor
赵磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Infinite Space Technology Co ltd
Original Assignee
Beijing Infinite Space Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Infinite Space Technology Co ltd filed Critical Beijing Infinite Space Technology Co ltd
Priority to CN201710120042.2A priority Critical patent/CN106933580B/en
Publication of CN106933580A publication Critical patent/CN106933580A/en
Application granted granted Critical
Publication of CN106933580B publication Critical patent/CN106933580B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention discloses an embedded software architecture system, which comprises an operating system unit, a communication adaptation unit, a data receiving and transmitting management unit, a data processing unit and a service logic unit which are connected in a bidirectional manner from bottom to top in sequence; the system also comprises a fault detection unit and a fault processing unit. The invention has the advantages that: the software architecture system provided by the invention can improve the inheritance of new and old projects and the software development reliability, and application software developers can rapidly complete the upgrade of the new and old projects through the update data processing unit and the service logic unit, thereby improving the update efficiency and saving the cost.

Description

Embedded software architecture system
Technical Field
The invention provides a computer embedded software architecture system, and belongs to the technical field of embedded software.
Background
With the development of software technology, in the process of designing and realizing new software, the reference function of historical projects is increasingly prominent, the software reuse technology is particularly important, software developed under an embedded real-time operating system such as VxWorks is mostly realized by a process-oriented language such as c language and the like at present, and the software has poor reuse and expansion performance; in undertaking complex tasks, the difficulty of maintaining the software increases as the complexity of the task increases, so that slight changes in demand can have catastrophic consequences on the entire software.
VxWorks: an embedded real-time operating system developed by Wind River corporation in America is widely applied to the fields of national defense, aerospace, communication, consumer electronics, industrial control, automotive electronics and the like.
Tornado: a set of strong graphical embedded integrated development environment developed by the American Wind River company (Wind River) can realize the functions of creating and managing engineering, establishing and managing communication between a host machine and a target machine, running, debugging, monitoring VxWorks application and the like.
XML (Extensible Markup Language), which is a Markup Language, is an Extensible Markup Language (XML). The markup refers to information symbols understood by computers, and various information included in XML and the like can be processed between the computers by the markup.
Disclosure of Invention
In order to solve the above problems, the present invention discloses an embedded software architecture system, which is mainly used for solving the following technical problems: (1) the problem of poor reutilization performance and expansibility brought by a process-oriented language is solved; (2) in undertaking complex tasks, the difficulty of maintaining the software increases as the complexity of the task increases, so that slight changes in demand can have catastrophic consequences on the entire software.
Based on the problems, the invention provides an embedded software architecture system, and by applying the system, developers can greatly improve the expansibility and reusability of software; the software testing method can encapsulate most of software changes caused by requirement change, avoid repeated testing work and save manpower and material resources.
Specifically, the invention provides an embedded software architecture system, which comprises an operating system unit, a communication adaptation unit, a data receiving and transmitting management unit, a data processing unit and a service logic unit which are connected in a bidirectional manner from bottom to top in sequence; the system also comprises a fault detection unit and a fault processing unit.
Preferably, in the embedded software architecture system, the operating system unit includes a VxWork operating system module and a driver module corresponding to each communication function interface.
Preferably, in the embedded software architecture system as described above, the communication adaptation unit is configured to further encapsulate the communication function interface in the operating system unit to obtain a unified initialization and call function interface.
Preferably, in the embedded software architecture system as described above, the data processing unit includes a received data processing module, a data storage module, and a data sending module; the receiving data processing module analyzes the received sensor data and the control instruction, and sends the analysis result to the data storage module for storage and informs the service logic unit of processing; the data storage module manages the global data, records and updates the data collected from the received data processing module and the external instruction received from the business logic unit; the sending data processing module provides a framing function, the data of the data storage module and the instruction received from the business logic unit form a frame with a set structure according to the requirement, and the framing result is sent to the transceiving data management unit for issuing and uploading.
Preferably, in the embedded software architecture system as described above, the transceiving data management unit is configured to further encapsulate data received from the communication adaptation unit, acquire data from the communication adaptation unit to organize the data into a standard frame, perform preliminary verification, place a frame qualified in the verification into the shared memory, and notify the received data processing module of the data processing unit to process the frame; and periodically checking whether a data sending processing module of the data processing unit has a data sending requirement, if so, taking out the data from the shared memory, and sending the data to the communication adaptation unit according to a required sending logic.
Preferably, in the embedded software architecture system, the service logic unit is configured to import control logic to implement specific functions of software.
Preferably, in the embedded software architecture system as described above, the fault detection unit monitors the operation of the whole software architecture system and submits the fault to the fault processing unit for processing.
Preferably, in the embedded software architecture system as described above, the failure processing unit is configured to remove a failure submitted by the failure detection unit, so as to improve program robustness.
Preferably, in the embedded software architecture system, the initialization process of the software architecture system sequentially includes: initializing system configuration, initializing a communication interface mailbox message queue, initializing a protocol, initializing clock interrupt service and initializing business logic.
Preferably, in an embedded software architecture system as described above, the initialization protocol includes a loading system configuration protocol, a loading communication protocol, and a loading data storage protocol; the loading system configuration protocol means that a software architecture system initializes the information of a computer mounting port through configuration analysis, initializes the mounting port and creates an adapter for data receiving and sending management; the communication protocol loading means that a received data processing module and a sent data processing module are initialized according to the existing port information and the port corresponding protocol ID; the loading data storage protocol means that the software architecture system establishes a mapping relation between the global data domain data and the port local data domain data according to the configuration file information, and establishes a data binding relation so as to maintain the global data domain data.
According to another aspect of the present invention, there is also provided a task communication method according to the above system, the tasks of the system including: a business logic task, a framing task, a data analysis task, an input task and an output task; the method comprises the following steps:
(1) receiving input, and triggering an input task by an input interface program;
(2) triggering a data analysis task through an input message queue;
(3) triggering a service logic task through a logic message queue;
(4) triggering a framing task through an output message queue;
(5) and triggering an output interface program by the output task to finish output.
The invention has the advantages that: the framework of the invention is realized mainly based on the configuration file, and the inheritance of the project is realized by modifying and maintaining the configuration file and simultaneously adding, deleting and modifying part of service logic. The mapping relation between the service and the data is realized through the configuration file, the inheritance of new and old projects can be improved and the software development reliability can be improved by using the software architecture system provided by the invention, and application software developers can rapidly complete the upgrading of the new and old projects through updating the data processing unit and the service logic unit, thereby improving the updating efficiency and saving the cost.
Drawings
Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The drawings are only for purposes of illustrating the preferred embodiments and are not to be construed as limiting the invention. Also, like reference numerals are used to refer to like parts throughout the drawings. In the drawings:
FIG. 1 illustrates a block diagram of an embedded software architecture system according to an embodiment of the present invention.
FIG. 2 illustrates an initialization flow diagram of an embedded software architecture system according to an embodiment of the present invention.
FIG. 3 illustrates a task communication diagram of an embedded software architecture system according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
The software architecture system is suitable for the development of the onboard computer software, and by applying the system, software developers can rapidly develop the practical, reliable and easily-expanded onboard computer application software, thereby enhancing the inheritance of new and old projects.
As shown in fig. 1, the software architecture provided by the present invention includes, from bottom to top, an operating system unit 101, a communication adaptation unit 102, a data transmission and reception management unit 103, a data processing unit 104, and a service logic unit 105, which are connected in a bidirectional manner; and a fault detection unit 106, a fault processing unit 107, wherein:
the operating system unit 101 is a running environment of the developed application software, and includes a VxWorks operating system and drivers corresponding to various communication interfaces such as CAN and 1553B buses, and provides services such as mailboxes, message queues, clocks and communication function interfaces.
The communication adaptation unit 102 further encapsulates the communication function interface, and provides a unified initialization and call function interface: the data transmission takes a frame as a unit, and one frame of data is transmitted by calling the interface each time; the data reception is performed in units of frames, and the data read in each cycle is transferred to the transmission/reception data management unit 103 for processing.
The transceiving data management unit 103 is responsible for data transceiving logic: acquiring data from the communication adaptation unit 102 to organize the data into a standard frame, performing preliminary verification, putting the frame qualified by the verification into a shared memory, and informing the received data processing module 108 of the data processing unit 104 to process the frame; the sending data processing module 110 of the data processing unit 104 is periodically checked whether there is a data sending requirement, and if so, the data is taken out from the shared memory and sent according to the required sending logic.
The data processing unit 104 provides standard frame parsing, framing services, and stores the whole data acquired by the application. The data processing unit 104 is composed of three modules: a received data processing module 108, a data storage module 109 and a transmitted data processing module 110. The received data processing module 108 analyzes the data and the control instruction collected by the computer according to the protocol, stores the analysis result in the shared memory, and notifies the service logic unit 105 of further response; the data storage module 109 is responsible for managing the global data, recording and updating the analysis result; the sending data processing module 110 performs framing operation according to a predetermined protocol according to the requirement of the service logic unit 105, and submits a data sending requirement to the transceiving data management unit 103. The predetermined protocol herein refers to an abstraction of operations such as offset, precision, limit, etc. included in data parsing and framing, and the concrete representation is usually a character string in a predetermined format such as XML, and the user can modify the character string to meet the change of parsing and framing requirements.
The business logic unit 105 is the most frequently updated module in the whole system, and the testing task generated by the software architecture system update is mainly proposed by the unit. The service logic unit 105 is used to implement specific functions of software, such as self-monitoring, remote control response, and the like.
The fault detection unit 106 monitors the operation of the whole software architecture system, has functions such as local detection and peripheral detection, and submits various exceptions generated during the operation of the software architecture system to the fault processing unit 107 in time, and the fault processing unit 107 processes the exceptions.
The failure processing unit 107 is configured to remove the failure submitted by the failure detecting unit 106, so as to improve the robustness of the program.
As shown in fig. 2, the initialization process of the software architecture system provided by the present invention includes, in order, an initialization system configuration 201, an initialization communication interface mailbox message queue 202, an initialization protocol 203, an initialization clock interrupt service 204, and an initialization service logic 205. Wherein the initialization protocol 203 is composed of a loading system configuration protocol 206, a loading communication protocol 207 and a loading data storage protocol 208. Loading the system configuration protocol 206 means that the software architecture system initializes the information of the computer mount port, such as baud rate, ID, protocol ID, etc., and initializes the mount port to create an adapter for data transceiving management through configuration and analysis; the loading of the communication protocol 207 means initializing the received data processing module 108 and the transmitted data processing module 110 according to the existing port information and the port corresponding protocol ID; the loading data storage protocol 208 refers to that the software architecture system establishes a mapping relationship between the global data domain data and the port local data domain data according to the configuration file information, and establishes a data binding relationship, so as to maintain the global data domain data, and facilitate the execution of units such as a service logic unit, a fault detection unit and the like.
The task communication diagram of the software architecture system provided by the invention is shown in FIG. 3. It can be seen that the tasks of the system include: the system comprises a business logic task, a framing task, a data analysis task, an input task and an output task. The task communication flow comprises the following steps:
(1) receiving input, and triggering an input task by an input interface program;
(2) triggering a data analysis task through an input message queue;
(3) triggering a service logic task through a logic message queue;
(4) triggering a framing task through an output message queue;
(5) and triggering an output interface program by the output task to finish output.
The periodic tasks such as output tasks and business logic tasks are triggered by semaphores, and the conditional tasks such as business logic tasks, framing tasks and data analysis tasks are respectively triggered by a logic message queue, an output message queue or an input message queue. The system tasks also comprise a detection task, and data interaction among the detection task, a framing task, a data analysis task, an input task and an output task is realized through a shared memory. The clock interrupt service program sends out binary semaphore to control the start and interrupt of the output task and the service logic task.
The above description is only for the preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.

Claims (6)

1. An embedded software architecture system, characterized by:
the embedded software architecture system comprises an operating system unit, a communication adaptation unit, a data receiving and transmitting management unit, a data processing unit and a service logic unit which are connected in a bidirectional manner from bottom to top in sequence; and
the system also comprises a fault detection unit and a fault processing unit;
the data processing unit comprises a received data processing module, a data storage module and a sent data processing module; the receiving data processing module analyzes the sensor data and the control instruction received from the transceiving data management unit, and sends the analysis result to the data storage module for storage and informs the service logic unit to process; the data storage module manages the global data, records and updates the data collected from the received data processing module and the external instruction received from the business logic unit; the sending data processing module provides a framing function, the data of the data storage module and the instruction received from the business logic unit form a frame with a set structure according to the requirement, and the framing result is sent to the transceiving data management unit for issuing and uploading;
the receiving and sending data management unit is used for further packaging the data received from the communication adaptation unit, acquiring the data from the communication adaptation unit to organize the data into standard frames, performing preliminary verification, putting the frames qualified in verification into a shared memory, and informing a received data processing module of the data processing unit to process the frames; periodically checking whether a data sending processing module of the data processing unit has a data sending requirement, if so, taking out the data from the shared memory, and sending the data to the communication adaptation unit according to a required sending logic;
the initialization process of the software architecture system comprises the following steps: initializing system configuration, initializing a communication interface mailbox message queue, initializing a protocol, initializing clock interrupt service and initializing service logic;
the initialization protocol comprises a loading system configuration protocol, a loading communication protocol and a loading data storage protocol; the loading system configuration protocol means that a software architecture system initializes the information of a computer mounting port through configuration analysis, initializes the mounting port and creates an adapter for data receiving and sending management; the communication protocol loading means that a received data processing module and a sent data processing module are initialized according to the existing port information and the port corresponding protocol ID; the loading data storage protocol means that the software architecture system establishes a mapping relation between the global data domain data and the port local data domain data according to the configuration file information, and establishes a data binding relation so as to maintain the global data domain data.
2. An embedded software architecture system as defined in claim 1, wherein:
the operating system unit comprises a VxWork operating system module and a driving module corresponding to each communication function interface.
3. An embedded software architecture system as defined in claim 2, wherein:
the communication adaptation unit is used for further packaging the communication function interface in the operating system unit to obtain a uniform initialization and calling function interface.
4. An embedded software architecture system as defined in claim 1, wherein:
the service logic unit is used for importing control logic to realize specific functions of software.
5. An embedded software architecture system as defined in claim 1, wherein:
and the fault detection unit is used for monitoring the operation of the whole software architecture system and submitting the fault to the fault processing unit for processing.
6. A task communication method of the system according to any one of claims 1 to 5, characterized in that:
the tasks of the system include: a business logic task, a framing task, a data analysis task, an input task and an output task; the method comprises the following steps:
(1) receiving input, and triggering an input task by an input interface program;
(2) triggering a data analysis task through an input message queue;
(3) triggering a service logic task through a logic message queue;
(4) triggering a framing task through an output message queue;
(5) and triggering an output interface program by the output task to finish output.
CN201710120042.2A 2017-03-02 2017-03-02 Embedded software architecture system Active CN106933580B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710120042.2A CN106933580B (en) 2017-03-02 2017-03-02 Embedded software architecture system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710120042.2A CN106933580B (en) 2017-03-02 2017-03-02 Embedded software architecture system

Publications (2)

Publication Number Publication Date
CN106933580A CN106933580A (en) 2017-07-07
CN106933580B true CN106933580B (en) 2020-12-29

Family

ID=59424018

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710120042.2A Active CN106933580B (en) 2017-03-02 2017-03-02 Embedded software architecture system

Country Status (1)

Country Link
CN (1) CN106933580B (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107621987B (en) * 2017-09-21 2020-10-27 中国航空无线电电子研究所 Unmanned aerial vehicle general ground station software architecture system based on message
CN109522006A (en) * 2018-11-16 2019-03-26 湖南国科微电子股份有限公司 Built-in multimedia playing frame
CN109947406B (en) * 2019-02-28 2022-12-27 中国空间技术研究院 Universal star affair management system architecture
CN109992554B (en) * 2019-03-12 2020-11-06 中国科学院国家空间科学中心 Method for realizing 1553B bus communication protocol based on general Schema structure description
CN110362335B (en) * 2019-07-22 2020-10-30 珠海格力电器股份有限公司 Method, server and system for processing configuration items
CN110572476B (en) * 2019-09-27 2020-12-29 深圳市宏电技术股份有限公司 Remote control method, device and equipment
CN112114781A (en) * 2020-09-03 2020-12-22 佛山市俊德政海机械科技有限公司 Embedded software system
CN112416337B (en) * 2020-11-11 2023-05-02 北京京航计算通讯研究所 Software architecture development system for aerospace embedded system
CN113325398B (en) * 2021-05-13 2024-08-23 英博超算(南京)科技有限公司 Application method of multi-core communication system of ultrasonic radar
CN113791636A (en) * 2021-08-24 2021-12-14 上海机电工程研究所 System and method for controlling configurable execution
CN117311672A (en) * 2022-06-24 2023-12-29 比亚迪股份有限公司 Software model architecture, battery management system controller and vehicle
CN117311207A (en) * 2022-06-24 2023-12-29 比亚迪股份有限公司 Embedded software model architecture, battery management system controller and vehicle

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620021A (en) * 2003-11-20 2005-05-25 南京中普信息技术有限公司 Radio transmission network system based on embeddod platform
CN101241366A (en) * 2008-03-07 2008-08-13 杭州普诺科技有限公司 Front-end machine control system for universal monitoring system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1280726C (en) * 2002-10-18 2006-10-18 上海贝尔有限公司 Virtual machine for embedded systemic software development
CN102081545A (en) * 2011-01-07 2011-06-01 中国电子科技集团公司第十研究所 Method of realizing software communications architecture (SCA) on embedded platform
CN102331935A (en) * 2011-11-07 2012-01-25 广东天波信息技术股份有限公司 Embedded cross-system software development platform
ITMI20120944A1 (en) * 2012-05-31 2013-12-01 St Microelectronics Srl CONTROL UNIT OF POWER CIRCUITS FOR ONE OR MORE LOADING POINTS OF AN ELECTRONIC SYSTEM WITH EXTERNAL CUSTOMIZATION NVM
CN103064382B (en) * 2012-12-21 2015-05-27 南京富岛信息工程有限公司 Optical proximity correction (OPC) embedded-type remote data collecting system and method based on ARM framework

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620021A (en) * 2003-11-20 2005-05-25 南京中普信息技术有限公司 Radio transmission network system based on embeddod platform
CN101241366A (en) * 2008-03-07 2008-08-13 杭州普诺科技有限公司 Front-end machine control system for universal monitoring system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Embedded design rationale in software architecture";Rafael Capilla 等;《2009 Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture》;20091023;第305-308页 *
"一种高可靠性嵌入式软件架构设计";吴慧婷;《软件导刊》;20151029;第14卷(第10期);第1-2页 *

Also Published As

Publication number Publication date
CN106933580A (en) 2017-07-07

Similar Documents

Publication Publication Date Title
CN106933580B (en) Embedded software architecture system
US8640096B2 (en) Configuration of componentized software applications
CN111371898B (en) Message monitoring method, device, equipment and storage medium
CN109946991B (en) Satellite counting simulation platform based on 1553B bus protocol encapsulation
US20020059467A1 (en) Object oriented framework architecture for sensing and/or control environments
WO2023125635A1 (en) Vehicle-mounted operating system, debugging system and method, electronic device and storage medium
US10275299B2 (en) Efficient transfer of data from CPU to onboard management device
CN109669787B (en) Data transmission method and device, storage medium and electronic equipment
GB2504772A (en) Coprocessor providing service address space for diagnostics collection
US20120227057A1 (en) Driver Shimming
CN111885114B (en) Method, device and storage medium for upgrading application program interface module in gateway
CN110825412A (en) Controller program flashing system and method based on LabVIEW
CN114745448B (en) Multi-channel protocol adaptation processing method, system and device
CN115794313A (en) Virtual machine debugging method, system, electronic equipment and storage medium
CN114285691A (en) Vehicle function implementation method and device and electronic equipment
CN112035270A (en) Interface adaptation method, system, device, computer readable medium and electronic equipment
CN114168297A (en) Method, device, equipment and medium for scheduling collection tasks
US20060136933A1 (en) Server-side eventing for managed server applications
CN111199464B (en) Processing system of collection data, processing method, device and medium of collection data
CN117707728A (en) Method, unit, equipment and storage medium for calling chip information
CN112667371A (en) Asynchronous task processing method, device, equipment and storage medium
CN107911442B (en) Receiving response interface interaction method and device, computer equipment and storage medium
US20160110368A1 (en) Data management system
US20020165893A1 (en) Recycling events to take advantage of capabilities of a management system
CN112114781A (en) Embedded software system

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
GR01 Patent grant
GR01 Patent grant
CB03 Change of inventor or designer information

Inventor after: Zhao Lei

Inventor after: Guo Ta

Inventor before: Zhao Lei

CB03 Change of inventor or designer information