CN117033029A - Data transmission method, device, equipment and medium - Google Patents
Data transmission method, device, equipment and medium Download PDFInfo
- Publication number
- CN117033029A CN117033029A CN202311080225.8A CN202311080225A CN117033029A CN 117033029 A CN117033029 A CN 117033029A CN 202311080225 A CN202311080225 A CN 202311080225A CN 117033029 A CN117033029 A CN 117033029A
- Authority
- CN
- China
- Prior art keywords
- operating system
- information
- bus data
- data information
- bus
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000005540 biological transmission Effects 0.000 title claims abstract description 50
- 238000004891 communication Methods 0.000 claims abstract description 100
- 238000004590 computer program Methods 0.000 claims description 16
- 230000002093 peripheral effect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
-
- 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/544—Buffers; Shared memory; Pipes
-
- 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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Computer And Data Communications (AREA)
Abstract
The invention discloses a data transmission method, a device, equipment and a medium. The method is applied to heterogeneous chips, the heterogeneous chips comprise at least two operating systems, and each operating system is provided with corresponding kernels and comprises the following steps: analyzing bus data information input by external bus equipment, and determining a target operating system associated with the bus data information from other operating systems; determining communication route information communicated with a target operating system according to a pre-stored communication route table; and transmitting the bus data information to the target operating system according to the communication route information. The communication route information of the corresponding target operating system can be determined by configuring the bus data by the communication route table in a unified way, and then the bus data information is transmitted to the target operating system according to the communication route information. The unified and efficient management of the bus data information is realized, the inter-core communication is realized under the condition that peripheral equipment is not required to be added, and the data transmission efficiency and safety are ensured.
Description
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a data transmission method, apparatus, device, and medium.
Background
With the rapid development of automobile electronic technology, the functional complexity of vehicles is increasingly improved, the regulatory requirements on safety, environmental protection and energy conservation are increasingly strict, comfortable, flexible and personalized customer demands are widely different, market competition is globalized, and the development period is continuously shortened. As chip integration continues to increase, heterogeneous chips will become an important solution. The bus device of the heterogeneous chip cannot be shared by all cores, only one core can be exclusive, but the data in the bus needs to be processed in different cores. Different inter-core communication techniques are introduced.
The existing inter-core communication technology is to perform data interaction of different cores through external devices such as Ethernet, SPI and the like.
However, these schemes require redevelopment of a set of internal communication protocols to ensure reliability and real-time performance of data, and have low efficiency, low expansibility, and hardware support.
Disclosure of Invention
The invention provides a data transmission method, a device, equipment and a medium, which are used for realizing the transmission of cross-core data.
According to a first aspect of the present invention, there is provided a data transmission method, which is applied to a heterogeneous chip, wherein the heterogeneous chip includes at least two operating systems, and each operating system has a corresponding kernel, and the method includes:
analyzing bus data information input by external bus equipment, and determining a target operating system associated with the bus data information from other operating systems;
determining communication route information communicated with the target operating system according to a pre-stored communication route table;
and transmitting the bus data information to the target operating system according to the communication route information.
According to a second aspect of the present invention, there is provided a data transmission apparatus comprising:
the system determining module is used for analyzing bus data information input by external bus equipment and determining a target operating system associated with the bus data information from other operating systems;
the information determining module is used for determining communication route information communicated with the target operating system according to a pre-stored communication route table;
and the information transmission module is used for transmitting the bus data information to the target operating system according to the communication route information.
According to a third aspect of the present invention, there is provided an electronic device comprising:
the heterogeneous chip comprises at least two operating systems, and each operating system is provided with a corresponding kernel; and
a memory communicatively coupled to the at least one heterogeneous chip; wherein,
the memory stores a computer program executable by the at least one heterogeneous chip, the computer program being executable by the at least one heterogeneous chip to enable the at least one heterogeneous chip to perform the data transmission method according to any of the embodiments of the present invention.
According to a fourth aspect of the present invention, there is provided a computer readable storage medium storing computer instructions for implementing the data transmission method according to any one of the embodiments of the present invention when executed by a heterogeneous chip.
According to the technical scheme, the method is applied to the heterogeneous chip, the heterogeneous chip comprises at least two operating systems, each operating system is provided with a corresponding kernel, bus data information input by external bus equipment is analyzed, and a target operating system associated with the bus data information is determined from other operating systems; determining communication route information communicated with a target operating system according to a pre-stored communication route table; and transmitting the bus data information to the target operating system according to the communication route information. The communication route information of the corresponding target operating system can be determined by configuring the bus data by the communication route table in a unified way, and then the bus data information is transmitted to the target operating system according to the communication route information. The unified and efficient management of the bus data information is realized, the inter-core communication is realized under the condition that peripheral equipment is not required to be added, and the data transmission efficiency and safety are ensured.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the invention or to delineate the scope of the invention. Other features of the present invention will become apparent from the description that follows.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a flowchart of a data transmission method according to a first embodiment of the present invention;
FIG. 2 is a diagram illustrating an operating system in a data transmission method according to a first embodiment of the present invention;
fig. 3 is a schematic structural diagram of a data transmission device according to a second embodiment of the present invention;
fig. 4 is a schematic structural diagram of an electronic device implementing an embodiment of the present invention.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Example 1
Fig. 1 is a flowchart of a data transmission method provided in an embodiment of the present invention, where the method may be applied to a data transmission situation between multiple cores of heterogeneous chips, and the method may be performed by a data transmission device, where the data transmission device may be implemented in a form of hardware and/or software, and the data transmission device may be configured in an electronic device, where the electronic device includes at least one heterogeneous chip, where the heterogeneous chip includes at least two operating systems, and each operating system has a corresponding core. As shown in fig. 1, the method includes:
s110, analyzing bus data information input by the external bus equipment, and determining a target operating system associated with the bus data information from other operating systems.
In this embodiment, the bus device may be understood as a device that is hooked on the bus and is externally connected to the heterogeneous chip. Bus data information is understood to mean data information of bus devices transmitted via a bus. Other operating systems may be understood as other operating systems besides the current operating system, which are divided by the heterogeneous chip, where the heterogeneous chip may divide a plurality of operating systems according to requirements, and the operating systems may be divided into other operating systems for computing and the current operating system for communication with the bus according to computing power, instantaneity, and the like. The target operating system may be understood as an operating system that can process bus data information, which is typically more computationally intensive.
Specifically, the heterogeneous chip can acquire external bus data information through a current operating system with higher real-time performance, analyze bus data information input by external bus equipment, and determine a target operating system associated with the bus data information from other operating systems through a preset bus system association table and other forms.
The method includes the steps that the bus data information input by the external bus device B can be obtained and analyzed through an operating system A with high real-time performance in the heterogeneous chip, and the target operating system associated with the bus device B can be determined to be C through searching a form of a preset bus system association table.
S120, determining communication route information for communicating with a target operating system according to a pre-stored communication route table.
In this embodiment, the communication routing table may be understood as storing paths pointing to specific system addresses, and it may be determined how to transmit to the target operating system through the communication routing table. Communication routing information may be understood as information indicating that a communication connection is established with a target operating system.
Specifically, the heterogeneous chip can directly communicate with the current operating system through the current operating system, and can search a pre-stored communication routing table in a storage medium corresponding to the current operating system, and search communication routing information communicated with the target operating system in the communication routing table.
Illustratively, the communication routing information for communicating with the target operating system may be determined by a lookup of a communication routing table by a protocol data unit router, i.e., the PduR module (Protocol Data Unit Router).
S130, transmitting the bus data information to a target operating system according to the communication route information.
Specifically, the heterogeneous chip can transmit bus data information to the target operating system according to the communication route information and the corresponding communication mode through the operating system.
The current operating system can determine a transmission module required in the target operating system through the communication routing information, and then perform inter-core data exchange through an inter-process communication mechanism (IPC for short), so as to transmit bus data information to the target operating system through the IPC.
According to the technical scheme, the method is applied to the heterogeneous chip, the heterogeneous chip comprises at least two operating systems, each operating system is provided with a corresponding kernel, bus data information input by external bus equipment is analyzed, and a target operating system associated with the bus data information is determined from other operating systems; determining communication route information communicated with a target operating system according to a pre-stored communication route table; and transmitting the bus data information to the target operating system according to the communication route information. The communication route information of the corresponding target operating system can be determined by configuring the bus data by the communication route table in a unified way, and then the bus data information is transmitted to the target operating system according to the communication route information. The unified and efficient management of the bus data information is realized, the inter-core communication is realized under the condition that peripheral equipment is not required to be added, and the data transmission efficiency and safety are ensured.
Further, on the basis of the above embodiment, the step of transmitting the bus data information to the target operating system according to the communication route information may be optimized as:
a1, determining an endpoint sending queue of the target operating system according to the communication route information.
In this embodiment, an endpoint send queue may be understood as a queue used to cache data into a target operating system. I.e. End Point (EP) transmit queues.
Specifically, the endpoint sending queue corresponding to the target operating system can be determined by searching according to the communication routing information.
b1, writing the bus data information into an endpoint sending queue.
And c1, storing bus data information in the endpoint sending queue into a preset shared memory.
Specifically, the operating system may store the bus data information included in the endpoint transmission queue to a preset position in the preset shared memory in sequence.
d1, notifying a target operating system to acquire bus data information through a preset ring buffer zone of the shared memory.
Specifically, after the operating system stores the bus data information into the preset shared memory, the operating system can inform the target operating system to acquire the bus data information through the ring buffer zone of the preset shared memory.
Further, on the basis of the above embodiment, the step of notifying the target operating system to acquire the bus data information by presetting the ring buffer of the shared memory may be further optimized as follows:
d11, sending a software interrupt message to the target operating system.
Specifically, after the operating system stores the bus data information in the preset shared memory, a software interrupt message can be automatically generated and sent to the target operating system.
d12, rewriting the current sending pointer in the ring buffer area to inform the target receiving end of acquiring bus data information through the current sending pointer.
Specifically, after the operating system stores the bus data information in the preset shared memory, the current sending pointer in the ring buffer area can be rewritten, so that the target receiving end is informed to acquire the bus data information through the current sending pointer.
According to the technical scheme, the target operating system associated with the bus data information is determined from other operating systems by analyzing the bus data information input by the external bus equipment; determining communication route information communicated with a target operating system according to a pre-stored communication route table; according to the communication route information, an endpoint sending queue of the target operating system is determined, bus data information in the endpoint sending queue is sequentially stored in a preset shared memory, the target operating system is informed to acquire the bus data information through a ring buffer zone of the preset shared memory, the efficiency of data transmission is improved, and the integrity and stability of data in the transmission process are guaranteed. The communication route information of the corresponding target operating system can be determined by configuring the bus data by the communication route table in a unified way, and then the bus data information is transmitted to the target operating system according to the communication route information. The unified and efficient management of the bus data information is realized, the inter-core communication is realized under the condition that peripheral equipment is not required to be added, and the data transmission efficiency and safety are ensured. The expansibility of the method is improved.
As a first alternative embodiment of the first embodiment, on the basis of the above embodiment, further includes:
and receiving target information of other operating systems and feeding the target information back to the corresponding bus equipment.
In this embodiment, the target information may be understood as information generated by other external devices or applications of the operating system.
Specifically, the operating system of the external bus device in the heterogeneous chip can also receive the target information of other operating systems, the route information of the bus device corresponding to the target information can be determined according to a preset route table, and the target information is fed back to the corresponding bus device through the bus by the bottom communication module in the operating system of the external bus device.
According to the first alternative embodiment of the first embodiment, through the arrangement, the target information received by other operating systems can be fed back to the bus equipment, so that the data transmission process is perfected.
As a second alternative embodiment of the first embodiment, on the basis of the above embodiment, further comprising:
and when receiving the software interrupt message, reading the bus data information and sending the bus data information to the corresponding preset application.
In this embodiment, the software interrupt message may be understood as an interrupt message for indicating that the bus data information has been uploaded. The preset application may be understood as an application set for performing operations such as calculation or display of bus data information.
Specifically, when the target operating system in the heterogeneous chip receives the software interrupt message, that is, the bus data information is already transmitted, the target operating system may read the bus data information at a designated position in the corresponding preset shared memory, and send the bus data information to the preset application after corresponding processing, for example, the target operating system may process the bus data information through the signal conversion service S2S (Signal to Service) module, convert the bus data information into a format that can be identified by the preset application, and then send the bus data information to the corresponding preset application.
Further, the step of reading the bus data information and sending the bus data information to the corresponding preset application may be optimized based on the above embodiment:
a2, determining a current sending pointer and a current receiving pointer of a ring buffer in a preset shared memory.
In this embodiment, the preset shared memory may be understood as a memory accessible to all operating systems in the heterogeneous chip. A ring buffer is understood to be a queue reserved for shared memory for caching data. The current transmission pointer is understood to be a pointer indicating the transmission of data, and is changed by the operating system transmitting the data. The current receiving pointer is understood to be a pointer indicating the writing situation of data, and is changed by the operating system receiving the data.
Specifically, when receiving the software interrupt message, the target operating system can query the current sending pointers of other operating systems in the annular buffer in the preset shared memory and the corresponding current receiving pointers of the target operating system.
b2, when the current sending pointer is inconsistent with the current receiving pointer, acquiring bus data information from the ring buffer.
Specifically, if the current sending pointer is inconsistent with the current receiving pointer, the ring buffer area includes data information which is not yet read, the target operating system may acquire bus data information from the ring buffer area, and after reading is completed, modify the current receiving pointer to ensure consistency with the current sending pointer.
And c2, sending the bus data information to the corresponding associated application.
Specifically, the target operating system may determine an application module associated with the bus device according to a preset comparison table, and send the bus data information to the corresponding associated application.
For the sake of easy understanding of the present invention, a specific example is shown in fig. 2, which is an example diagram of an operating system in a data transmission method provided in the first embodiment of the present invention, where a heterogeneous chip includes two operating systems, respectively, an operating system C and an operating system D, each operating system has a corresponding kernel, the operating system C may obtain bus data information on a bus through a bottom communication module and transmit the bus data information to a protocol data unit routing module (PduR module), determine, through analysis, that a target operating system associated with the bus data information is the operating system D, determine, through a communication routing table pre-stored in the PduR module, communication routing information of the operating system D, and route the communication routing information and the bus data information to an inter-core communication module (IPC), send the bus data information to a preset shared memory through the inter-core communication module of the operating system C, receive the bus data information through the inter-core communication module of the operating system D, and forward the bus data information to a service module (S2S module), and distribute the data to a corresponding application module through the S2S module of the operating system D. When the operating system D receives the target information processed by the application module, the S2S module sends the target information to the inter-core communication module of the operating system D, the inter-core communication module of the operating system D stores the target information into a preset shared memory, the inter-core communication module of the operating system C receives the target information, a communication routing table prestored in the Pdur module determines bus equipment corresponding to the target information, the target information is sent to the bottom communication module, and the target information is sent to the corresponding bus equipment through the bottom communication module.
Example two
Fig. 3 is a schematic structural diagram of a data transmission device according to a second embodiment of the present invention. As shown in fig. 3, the apparatus includes: a system determination module 31, an information determination module 32, and an information transmission module 33.
The system determining module 31 is configured to analyze bus data information input by the external bus device, and determine a target operating system associated with the bus data information from other operating systems;
an information determining module 32, configured to determine, according to a pre-stored communication routing table, communication routing information for communicating with the target operating system;
and an information transmission module 33, configured to transmit the bus data information to the target operating system according to the communication routing information.
According to the technical scheme, the method is applied to the heterogeneous chip, the heterogeneous chip comprises at least two operating systems, each operating system is provided with a corresponding kernel, bus data information input by external bus equipment is analyzed, and a target operating system associated with the bus data information is determined from other operating systems; determining communication route information communicated with a target operating system according to a pre-stored communication route table; and transmitting the bus data information to the target operating system according to the communication route information. The communication route information of the corresponding target operating system can be determined by configuring the bus data by the communication route table in a unified way, and then the bus data information is transmitted to the target operating system according to the communication route information. The unified and efficient management of the bus data information is realized, the inter-core communication is realized under the condition that peripheral equipment is not required to be added, and the data transmission efficiency and safety are ensured.
Further, the information determination module 32 includes:
a queue determining unit, configured to determine an endpoint transmission queue of the target operating system according to the communication routing information;
an information writing unit, configured to write the bus data information into the endpoint transmission queue;
the information storage unit is used for storing the bus data information in the endpoint sending queue to a preset shared memory;
and the information notification unit is used for notifying the target operating system to acquire the bus data information through the annular buffer zone of the preset shared memory.
The information notification unit is specifically configured to:
sending a software interrupt message to the target operating system;
and rewriting a current sending pointer in the ring buffer area so as to inform the target receiving end of acquiring the bus data information through the current sending pointer.
Optionally, the apparatus further comprises:
and the information feedback module is used for receiving the target information of the other operating systems and feeding back the target information to the corresponding bus equipment.
Optionally, the apparatus further comprises:
and the information sending module is used for reading the bus data information and sending the bus data information to a corresponding preset application when receiving the software interrupt message.
The information sending module is specifically used for:
determining a current sending pointer and a current receiving pointer of a ring buffer area in a preset shared memory;
when the current sending pointer is inconsistent with the current receiving pointer, acquiring the bus data information from the ring buffer;
and sending the bus data information to a corresponding associated application.
The data transmission device provided by the embodiment of the invention can execute the data transmission method provided by any embodiment of the invention, and has the corresponding functional modules and beneficial effects of the execution method.
Example III
Fig. 4 shows a schematic diagram of an electronic device 40 that may be used to implement an embodiment of the invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. Electronic equipment may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 4, the electronic device 40 includes at least one heterogeneous chip 41, and a memory, such as a Read Only Memory (ROM) 42, a Random Access Memory (RAM) 43, etc., communicatively connected to the at least one heterogeneous chip 41, in which the memory stores a computer program executable by the at least one heterogeneous chip, and the heterogeneous chip 41 may perform various appropriate actions and processes according to the computer program stored in the Read Only Memory (ROM) 42 or the computer program loaded from the storage unit 48 into the Random Access Memory (RAM) 43. In the RAM 43, various programs and data required for the operation of the electronic device 40 may also be stored. The heterogeneous chip 41, the ROM 42 and the RAM 43 are connected to each other via a bus 44. An input/output (I/O) interface 45 is also connected to bus 44.
Various components in electronic device 40 are connected to I/O interface 45, including: an input unit 46 such as a keyboard, a mouse, etc.; an output unit 47 such as various types of displays, speakers, and the like; a storage unit 48 such as a magnetic disk, an optical disk, or the like; and a communication unit 49 such as a network card, modem, wireless communication transceiver, etc. The communication unit 49 allows the electronic device 40 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
The heterogeneous chip 41 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of heterogeneous chips 41 include, but are not limited to, central Processing Units (CPUs), graphics Processing Units (GPUs), various dedicated Artificial Intelligence (AI) computing chips, various heterogeneous chips running machine learning model algorithms, digital signal heterogeneous chips (DSPs), and any suitable heterogeneous chips, controllers, microcontrollers, etc. The heterogeneous chip 41 performs the respective methods and processes described above, such as a data transmission method.
In some embodiments, the data transmission method may be implemented as a computer program tangibly embodied on a computer-readable storage medium, such as the storage unit 48. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 40 via the ROM 42 and/or the communication unit 49. When the computer program is loaded into the RAM 43 and executed by the heterogeneous chip 41, one or more steps of the data transmission method described above may be performed. Alternatively, in other embodiments, heterogeneous chip 41 may be configured to perform the data transfer method in any other suitable manner (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable heterogeneous chip, which may be a special purpose or general purpose programmable heterogeneous chip, that can receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for carrying out methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a heterogeneous chip of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the heterogeneous chip, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The computer program may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of the present invention, a computer-readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. The computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) through which a user can provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), blockchain networks, and the internet.
The computing system may include clients and servers. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service are overcome.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps described in the present invention may be performed in parallel, sequentially, or in a different order, so long as the desired results of the technical solution of the present invention are achieved, and the present invention is not limited herein.
The above embodiments do not limit the scope of the present invention. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the scope of the present invention.
Claims (10)
1. The data transmission method is characterized by being applied to a heterogeneous chip, wherein the heterogeneous chip comprises at least two operating systems, and each operating system is provided with a corresponding kernel, and the method comprises the following steps:
analyzing bus data information input by external bus equipment, and determining a target operating system associated with the bus data information from other operating systems;
determining communication route information communicated with the target operating system according to a pre-stored communication route table;
and transmitting the bus data information to the target operating system according to the communication route information.
2. The method of claim 1, wherein said transmitting said bus data information to said target operating system in accordance with said communication routing information comprises:
determining an endpoint sending queue of the target operating system according to the communication route information;
writing the bus data information into the endpoint transmission queue;
storing the bus data information in the endpoint sending queue into a preset shared memory;
and notifying the target operating system to acquire the bus data information through the annular buffer zone of the preset shared memory.
3. The method according to claim 2, wherein the notifying, by the predetermined ring buffer of the shared memory, the target operating system to acquire the bus data information includes:
sending a software interrupt message to the target operating system;
and rewriting a current sending pointer in the ring buffer area so as to inform the target receiving end of acquiring the bus data information through the current sending pointer.
4. The method as recited in claim 1, further comprising:
and receiving target information of the other operating systems and feeding the target information back to the corresponding bus equipment.
5. The method as recited in claim 1, further comprising:
and when receiving the software interrupt message, reading the bus data information and sending the bus data information to a corresponding preset application.
6. The method of claim 5, wherein the reading the bus data information and sending the bus data to the corresponding predetermined application comprises:
determining a current sending pointer and a current receiving pointer of a ring buffer area in a preset shared memory;
when the current sending pointer is inconsistent with the current receiving pointer, acquiring the bus data information from the ring buffer;
and sending the bus data information to a corresponding associated application.
7. A data transmission apparatus, comprising:
the system determining module is used for analyzing bus data information input by external bus equipment and determining a target operating system associated with the bus data information from other operating systems;
the information determining module is used for determining communication route information communicated with the target operating system according to a pre-stored communication route table;
and the information transmission module is used for transmitting the bus data information to the target operating system according to the communication route information.
8. The method of claim 7, wherein the information determination module comprises:
a queue determining unit, configured to determine an endpoint transmission queue of the target operating system according to the communication routing information;
an information writing unit, configured to write the bus data information into the endpoint transmission queue;
the information storage unit is used for storing the bus data information in the endpoint sending queue to a preset shared memory;
and the information notification unit is used for notifying the target operating system to acquire the bus data information through the annular buffer zone of the preset shared memory.
9. An electronic device, the electronic device comprising:
the heterogeneous chip comprises at least two operating systems, and each operating system is provided with a corresponding kernel; and
a memory communicatively coupled to the at least one heterogeneous chip; wherein,
the memory stores a computer program executable by the at least one heterogeneous chip to enable the at least one heterogeneous chip to perform the data transmission method of any of claims 1-6.
10. A computer readable storage medium, characterized in that the computer readable storage medium stores computer instructions for causing a heterogeneous chip to implement the data transmission method of any of claims 1-6 when executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311080225.8A CN117033029A (en) | 2023-08-25 | 2023-08-25 | Data transmission method, device, equipment and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311080225.8A CN117033029A (en) | 2023-08-25 | 2023-08-25 | Data transmission method, device, equipment and medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117033029A true CN117033029A (en) | 2023-11-10 |
Family
ID=88629862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311080225.8A Pending CN117033029A (en) | 2023-08-25 | 2023-08-25 | Data transmission method, device, equipment and medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117033029A (en) |
-
2023
- 2023-08-25 CN CN202311080225.8A patent/CN117033029A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112540806B (en) | Method and device for rendering small program page, electronic equipment and storage medium | |
CN114936173B (en) | Read-write method, device, equipment and storage medium of eMMC device | |
CN114564435A (en) | Inter-core communication method, device and medium for heterogeneous multi-core chip | |
CN115794313B (en) | Virtual machine debugging method, system, electronic device and storage medium | |
CN115955518A (en) | Communication conversion method, device and storage medium for communication between master equipment and slave equipment | |
CN116126916A (en) | Data query method, device and equipment based on intelligent network card | |
CN116243978A (en) | Data protocol method, device, medium and training system in distributed training | |
CN116527652A (en) | Method, device, equipment and medium for determining file format conversion path | |
CN117033029A (en) | Data transmission method, device, equipment and medium | |
CN115599571A (en) | Data processing method and device, electronic equipment and storage medium | |
CN116107763B (en) | Data transmission method, device, equipment and storage medium | |
CN115840604B (en) | Data processing method, device, electronic equipment and computer readable storage medium | |
CN115525415B (en) | Data processing method, device, equipment and medium | |
CN116306407B (en) | Verification method, device, equipment and storage medium of Network On Chip (NOC) | |
CN117193726A (en) | Parallel design method and device of software, electronic equipment and medium | |
CN117271398A (en) | Low-power interface control method, device, equipment and storage medium | |
CN116279215A (en) | Data processing method and device, electronic equipment and storage medium | |
CN116846977A (en) | Network sharing method, device and system, electronic equipment and storage medium | |
CN117440064A (en) | Data transmission method, device, equipment and medium based on function code | |
CN117395211A (en) | Data forwarding method, device, switch and medium | |
CN116521739A (en) | Data processing method and device and electronic equipment | |
CN117651078A (en) | Data transmission method and device, electronic equipment and storage medium | |
CN116166253A (en) | Inter-vehicle domain communication method, data gateway, device and storage medium | |
CN116847316A (en) | Data transmission method and device, electronic equipment and storage medium | |
CN115061664A (en) | Object conversion method and device, electronic equipment and storage medium |
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 |