Embedded software development integration platform based on model development
By providing an integrated platform based on model development in embedded software development, existing tools have solved the shortcomings in embedded target optimization and user interface intuitiveness, and achieved more efficient and reliable embedded software development.
Patent Information
- Application Number
- CN202411741587.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-03-28
AI Technical Summary
Existing model-based development (MBD) tools lack optimization and user interface intuitiveness for specific embedded targets in embedded software development, resulting in inefficient development and insufficient software reliability.
It provides an embedded software development integration platform based on model development, including integrated model module, interface configuration module, task scheduling module and code generation and deployment module. Through graphical interfaces and automation tools, model construction, interface configuration, simulation, testing, and automatic code generation and deployment are realized.
Improves the efficiency and software quality of embedded software development, simplifies the development of complex control systems and signal processing systems, and reduces human errors through automated processes.
Smart Images

Figure CN119718292A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of embedded software development, and in particular relates to an embedded software development integrated platform based on model development. Background Art
[0002] Embedded software development usually involves complex functional design, code writing, and heavy testing. Traditional manual coding and testing methods are inefficient and error-prone. Model-based development (MBD), as a visual development method, performs system design and verification on models and then automatically converts them into execution code, which has been proven to significantly improve development efficiency and software reliability. However, existing MBD tools are still insufficient in terms of optimization for specific embedded targets and intuitive user interfaces. The related tools lack consistency in use, which limits their application in embedded software development. Summary of the invention
[0003] In order to solve the deficiencies in the prior art, the present invention provides an integrated platform for embedded software development based on model development to solve the technical problem of improving the efficiency of the embedded software development process and the software quality.
[0004] In order to solve the above technical problems, the present invention adopts the following technical solutions.
[0005] The present invention firstly discloses an integrated platform for embedded software development based on model development, including an integrated model module, an interface configuration module, a task scheduling module and a code generation and deployment module;
[0006] The integrated model module is used to load the algorithm model generated by the simulink software tool so that the user can perform model checking, simulation testing and system integration;
[0007] The interface configuration module is used to automatically detect hardware interface information and generate corresponding self-description files and system configuration files according to the hardware interface information;
[0008] The task scheduling module is used to analyze task scheduling requirements and set periodic task execution plans;
[0009] The code generation and deployment module is used to convert the system model designed by the user into optimized execution code for the specified embedded target hardware.
[0010] The present invention further includes the following preferred embodiments:
[0011] The integrated model module further comprises:
[0012] Predefined embedded system component library modules, including input AI / DI, output AO / DO, pressure plate EN set value input SETTING, recording data RECORD, message data REPORT and control algorithm components;
[0013] The graphical user interface module accepts users to complete model building, simulation testing and system integration through click and drag operations.
[0014] The simulation test includes unit testing, online debugging and test report management.
[0015] The interface configuration module is further used to:
[0016] Provides a graphical interface configuration tool to enable users to directly configure the embedded system interface; based on the user configuration, the software platform retrieves the component library defined in the configuration model and automatically generates the required communication interface data definition and memory space definition.
[0017] The embedded system interface further includes DI, AI, DO, AO, EN, SETTING, RECORD and REPORT.
[0018] The task scheduling module is further used for:
[0019] Implement a priority-based task scheduling strategy for the generated code to ensure the real-time performance of key tasks and the response time of high-priority tasks in embedded systems; provide a task scheduling configuration tool to receive user-defined task priorities, time slices, and other scheduling parameters to adapt to different runtime requirements and hardware characteristics.
[0020] The component library defined in the model includes DI, AI, DO, AO, EN, SETTING, RECORD, REPORT, FT3 data, Gigabit network data and inter-core data.
[0021] The code generation deployment module further includes:
[0022] Code optimization module, which optimizes the performance and memory usage of the generated code according to the characteristics of the embedded target hardware;
[0023] A code configuration module receives different code optimization levels and target platforms selected by users;
[0024] Code deployment tools are used to deploy optimized code directly to embedded target hardware, ensuring correct installation and execution of the code.
[0025] Accordingly, the present application also discloses a terminal, including a processor and a storage medium;
[0026] The storage medium is used to store instructions;
[0027] The processor is used to operate according to the instructions to implement the embedded software development integrated platform based on the aforementioned model development.
[0028] Correspondingly, the present application also discloses a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the aforementioned model-based embedded software development integrated platform is implemented.
[0029] The beneficial effect of the present invention is that, compared with the prior art, the present invention provides an integrated embedded software development platform based on model development, integrating key functions such as model construction, interface configuration, simulation, testing, automatic code generation and deployment, and adopting MBD's graphical programming, automated test design, and automated compilation design to achieve the establishment of an embedded software integrated design and development platform, using a graphical interface to assist users in system modeling, and being equipped with code generation and verification tools specifically for embedded targets, thereby simplifying the development of complex control systems and signal processing systems. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 It is a schematic diagram of the graphical interface configuration tool in the present invention.
[0031] Figure 2 It is a schematic diagram of the classification of the embedded system component library in the present invention.
[0032] Figure 3 It is a schematic diagram of the components defined by the model in the present invention (used for configuring the tool to retrieve specific application data).
[0033] Figure 4 It is a schematic diagram of the task scheduling configuration tool in the present invention.
[0034] Figure 5 It is a configuration code generated by the integrated platform in the present invention, and an algorithm automatically generates code and automatically compiles and deploys a flow chart.
[0035] Figure 6 It is the simulink simulation test structure diagram in the present invention.
[0036] Figure 7 It is a schematic diagram of the design platform in Simulink in the present invention. DETAILED DESCRIPTION
[0037] In order to make the purpose, technical solution and advantages of the present invention more clear, the technical solution of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention.
[0038] The embodiments described in this application are only some embodiments of the present invention, not all embodiments. Based on the spirit of the present invention, other embodiments obtained by ordinary technicians in this field without creative work are all within the protection scope of the present invention.
[0039] In view of the shortcomings or efficiency problems of existing handwritten code technology, the present invention proposes an integrated platform for embedded software development based on model development, which constructs an integrated development platform based on model-based development (MBD) technology related methods, integrates key functions such as model construction, interface configuration, simulation and testing, automatic code generation and deployment, and adopts MBD's graphical programming, automated test design, and automated compilation design to achieve the establishment of an embedded software integrated design and development platform. A graphical interface is used to assist users in system modeling, and classification and memory mapping of specific application data are achieved through a customized component library built in the algorithm model and the integrated design and development tool retrieval function, and is equipped with code generation and verification tools specifically for embedded targets, which simplifies the development difficulty of complex control systems and signal processing systems.
[0040] See also Figure 1 As shown, the model-based embedded software development integrated platform disclosed in the present invention includes an integrated model module, an interface configuration module, a task scheduling module and a code generation and deployment module.
[0041] The integrated model module is used to uniformly load and couple multiple algorithm models generated by the simulink software tool, and implement multi-model normative inspection and multi-model retrieval (retrieval sub-definition component) through the integrated platform. Figure 2 and Figure 3 Defined self-built library.
[0042] In a preferred embodiment, Figure 2 As shown, the integrated model module further includes: a predefined embedded system component library module, including input (AI / DI), output (AO / DO), pressure plate (EN), fixed value input (SETTING), recording data (RECORD), message data (REPORT) and control algorithm components; a graphical user interface module, which receives user clicks and drags to complete model building, simulation testing and system integration, including unit testing, online debugging, test report management, etc. Figure 6 For example, in the simulink algorithm model, a self-built wave recording database is added, and the wave recording data, FT3 data or station control LAN network data can be retrieved through the retrieval function in the integrated design module; through the simulink simulation test suite, unit testing, online debugging and test report management are realized.
[0043] The interface configuration module is used to automatically detect hardware interface information and generate corresponding self-description files and system configuration files according to the hardware interface information. Figure 7 , design the platform virtual hardware configuration interface library, four-remote information configuration library, etc. in Simulink. Double-click the self-built configuration library to edit and change the configuration information associated with the hardware interface or operating system layer, and automatically generate configuration files through the integrated design platform.
[0044] In a preferred embodiment, the interface configuration module is further used to provide a graphical interface configuration tool, allowing the user to directly configure the embedded system interface (including but not limited to
[0045] DI / AI / DO / AO / EN / SETTING / RECORD / REPORT); according to user configuration, such as Figure 3 As shown, the component library defined by the configuration model is retrieved through the software platform
[0046] DI / AI / DO / AO / EN / SETTING / RECORD / REPORT / FT3 data / Gigabit network data / inter-core data, etc., automatically generate the required communication interface data definition and memory space definition to reduce the workload of manual writing and debugging drivers.
[0047] The task scheduling module is used to analyze task scheduling requirements and set periodic task execution plans. Figure 4 As shown, the task scheduling module graphically associates the designed functional algorithm with the hardware interrupt or soft interrupt.
[0048] In a preferred embodiment, the task scheduling module is further used to:
[0049] Implement a priority-based task scheduling strategy for the generated code to ensure the real-time performance of key tasks and the response time of high-priority tasks in embedded systems; provide a task scheduling configuration tool to receive user-defined task priorities, time slices, and other scheduling parameters to adapt to different runtime requirements and hardware characteristics.
[0050] The code generation and deployment module is used to convert the system model designed by the user into optimized execution code for the specified embedded target hardware.
[0051] In a preferred embodiment, the code generation and deployment module further includes:
[0052] The code optimization module optimizes the performance and memory usage of the generated code according to the characteristics of the embedded target hardware; the optimization goal is to manage the independent space of the configuration file code, FT3 data / Gigabit network data / inter-core data, etc. The code memory space is defined and managed through the code optimization module.
[0053] A code configuration module receives different code optimization levels and target platforms selected by users;
[0054] Code deployment tools are used to automatically compile and deploy optimized code (including configuration code generated by the tool and automatically generated algorithm code) directly to the embedded target hardware to ensure the correct installation and execution of the code, such as Figure 5 The process shown.
[0055] The beneficial effect of the present invention is that, compared with the prior art, the present invention provides an integrated embedded software development platform based on model development, integrating key functions such as model construction, interface configuration, simulation, testing, automatic code generation and deployment, adopting MBD's graphical programming, automated test design, and automated compilation design to achieve the establishment of an embedded software integrated design and development platform, using a graphical interface to assist users in system modeling, and equipped with simulink's built-in code generation and verification tools specifically for embedded targets, thereby simplifying the development of complex control systems and signal processing systems.
[0056] Based on the spirit of the present invention, those skilled in the art can easily think that a computer program product can be obtained based on the aforementioned model-based embedded software development integrated platform. The computer program product may include a computer-readable storage medium, which carries computer-readable program instructions for enabling a processor to implement various aspects of the present disclosure. That is, the present application also includes a terminal, including a processor and a storage medium; the storage medium is used to store instructions; the processor is used to operate according to the instructions to implement the aforementioned model-based embedded software development integrated platform.
[0057] Computer readable storage medium can be a tangible device that can keep and store the instructions used by the instruction execution device. Computer readable storage medium can be, for example, - but not limited to - electrical storage device, magnetic storage device, optical storage device, electromagnetic storage device, semiconductor storage device or any suitable combination of the above. More specific examples (non-exhaustive list) of computer readable storage medium include: portable computer disk, hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanical encoding device, for example, punch card or groove protrusion structure with instructions stored thereon and any suitable combination of the above. Computer readable storage medium used here is not interpreted as instantaneous signal itself, such as radio wave or other free propagating electromagnetic wave, electromagnetic wave propagated by waveguide or other transmission medium (for example, light pulse by optical fiber cable) or electrical signal transmitted by wire.
[0058] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.
[0059] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages-such as Smalltalk, C++, etc., and conventional procedural programming languages-such as "C" language or similar programming languages. Computer-readable program instructions may be executed completely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network-including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) may be personalized by utilizing the state information of a computer-readable program instruction, and the electronic circuit may execute a computer-readable program instruction, thereby realizing various aspects of the present disclosure.
[0060] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, ordinary technicians in the relevant field should understand that the specific implementation methods of the present invention can still be modified or replaced by equivalents, and any modifications or equivalent replacements that do not depart from the spirit and scope of the present invention should be covered within the scope of protection of the claims of the present invention.
Claims
1. An integrated platform for embedded software development based on model development, characterized in that: It includes integrated model module, interface configuration module, task scheduling module and code generation and deployment module; The integrated model module is used to load the algorithm model generated by the simulink software tool so that the user can perform model checking, simulation testing and system integration; The interface configuration module is used to automatically detect hardware interface information and generate corresponding self-description files and system configuration files according to the hardware interface information; The task scheduling module is used to analyze task scheduling requirements and set periodic task execution plans; The code generation and deployment module is used to convert the system model designed by the user into optimized execution code for the specified embedded target hardware.
2. The model-based embedded software development integrated platform according to claim 1, characterized in that: The integrated model module further comprises: Predefined embedded system component library modules, including input AI / DI, output AO / DO, pressure plate EN set value input SETTING, recording data RECORD, message data REPORT and control algorithm components; The graphical user interface module accepts users to complete model building, simulation testing and system integration through click and drag operations.
3. The model-based embedded software development integrated platform according to claim 2, characterized in that: The simulation test includes unit testing, online debugging and test report management.
4. The model-based embedded software development integrated platform according to claim 3, characterized in that: The interface configuration module is further used to: Provides a graphical interface configuration tool to enable users to directly configure the embedded system interface; based on the user configuration, the software platform retrieves the component library defined in the configuration model and automatically generates the required communication interface data definition and memory space definition.
5. The model-based embedded software development integrated platform according to claim 4, characterized in that: The embedded system interface further includes DI, AI, DO, AO, EN, SETTING, RECORD and REPORT.
6. The model-based embedded software development integrated platform according to claim 5, characterized in that: The task scheduling module is further used for: Implement a priority-based task scheduling strategy for the generated code to ensure the real-time performance of key tasks and the response time of high-priority tasks in embedded systems; Provides a task scheduling configuration tool that accepts user-defined task priorities, time slices, and other scheduling parameters to adapt to different runtime requirements and hardware characteristics.
7. The model-based embedded software development integrated platform according to claim 6, characterized in that: The component library defined in the model includes DI, AI, DO, AO, EN, SETTING, RECORD, REPORT, FT3 data, Gigabit network data and inter-core data.
8. The model-based embedded software development integrated platform according to claim 7, characterized in that: The code generation deployment module further includes: Code optimization module, which optimizes the performance and memory usage of the generated code according to the characteristics of the embedded target hardware; A code configuration module receives different code optimization levels and target platforms selected by users; Code deployment tools are used to deploy optimized code directly to embedded target hardware, ensuring correct installation and execution of the code.
9. A terminal comprising a processor and a storage medium; characterized in that: The storage medium is used to store instructions; The processor is used to operate according to the instructions to implement the model-based embedded software development integrated platform according to any one of claims 1-5.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the model-based embedded software development integrated platform described in any one of claims 1 to 5 is implemented.