CN111475454B - PCIe interface-based communication method and device, computer equipment and computer-readable storage medium - Google Patents

PCIe interface-based communication method and device, computer equipment and computer-readable storage medium Download PDF

Info

Publication number
CN111475454B
CN111475454B CN202010230311.2A CN202010230311A CN111475454B CN 111475454 B CN111475454 B CN 111475454B CN 202010230311 A CN202010230311 A CN 202010230311A CN 111475454 B CN111475454 B CN 111475454B
Authority
CN
China
Prior art keywords
modem
pcie interface
application processor
channel
pcie
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
CN202010230311.2A
Other languages
Chinese (zh)
Other versions
CN111475454A (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.)
Xian Fibocom Wireless Software Inc
Original Assignee
Xian Fibocom Wireless Software Inc
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 Xian Fibocom Wireless Software Inc filed Critical Xian Fibocom Wireless Software Inc
Priority to CN202010230311.2A priority Critical patent/CN111475454B/en
Publication of CN111475454A publication Critical patent/CN111475454A/en
Application granted granted Critical
Publication of CN111475454B publication Critical patent/CN111475454B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

The application relates to a communication method and device based on a PCIe interface, computer equipment and a computer readable storage medium, which receive a data transmission request sent by an upper application component and establish a communication connection based on the PCIe interface between an application processor and a modem according to the data transmission request. And sending the data transmission request to the modem through a communication connection based on the PCIe interface. Because the PCIe interface can realize high-speed data transmission, a communication connection based on the PCIe interface is established between the application processor and the modem. Therefore, high-speed data transmission between the application processor and the modem can be realized, and the transmission efficiency is improved.

Description

PCIe interface-based communication method and device, computer equipment and computer-readable storage medium
Technical Field
The present application relates to the field of communications technologies, and in particular, to a PCIe interface-based communication method and apparatus, a computer device, and a computer-readable storage medium.
Background
With the continuous development of communication technology, especially with the arrival of the fifth generation mobile communication technology (5G, 5th generation mobile networks) communication, the performance goal of 5G is to increase data transmission rate, reduce delay, save energy, reduce cost, increase system capacity and large-scale device connection, and therefore, increasingly higher requirements are put on data transmission capability of various computer devices. The conventional communication module uses the USB interface to implement data transmission with a peripheral platform (such as a linux platform), but since many peripheral platforms do not support a high-version USB interface, the communication module cannot use the high-version USB interface to implement high-rate data transmission with the peripheral platform (such as the linux platform).
Therefore, it is urgently needed to solve the problem that the conventional data transmission method cannot realize high-rate data transmission.
Disclosure of Invention
Embodiments of the present application provide a PCIe interface-based communication method and apparatus, a computer device, and a computer-readable storage medium, which can implement high-rate data transmission and improve transmission efficiency.
A PCIe interface based communication method, the method comprising:
receiving a data transmission request sent by an upper application component;
establishing a PCIe interface-based communication connection between the application processor and the modem according to the data transmission request;
and sending the data transmission request to the modem through the communication connection based on the PCIe interface.
In one embodiment, the establishing a PCIe interface-based communication connection between the application processor and the modem according to the data transmission request includes:
and establishing at least one communication connection based on a PCIe interface between the application processor and the modem through the equipment enumeration of the PCIe driver according to the data transmission request, wherein the PCIe driver is arranged in the application processor.
In one embodiment, the method further comprises: setting a driver based on a preset transmission protocol based on the PCIe driver; establishing at least one PCIe interface-based communication connection between the application processor and the modem through PCIe-driven device enumeration according to the data transmission request, including:
calling the driver based on the preset transmission protocol through the PCIe driver according to the data transmission request;
and performing device enumeration through the driver based on the preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem.
In one embodiment, the performing device enumeration through the driver based on the preset transport protocol to establish at least one PCIe interface-based communication connection between the application processor and the modem includes:
and performing device enumeration through the driver based on the preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem in a customized manner.
In one embodiment, the performing device enumeration through the driver based on the preset transport protocol to establish at least one PCIe interface-based communication connection between the application processor and the modem includes:
performing device enumeration through the driver based on the preset transmission protocol, and establishing a first channel based on a PCIe interface between the application processor and the modem as a control channel; or
Performing device enumeration through the driver based on the preset transmission protocol, and establishing a second channel based on a PCIe interface between the application processor and the modem as a data transmission channel; or
And performing device enumeration through the driver based on the preset transmission protocol, and establishing a third channel based on a PCIe interface between the application processor and the modem as an AT channel.
In one embodiment, the preset transmission protocol is an MHI transmission protocol, the first channel comprises a CLT channel, and the CLT channel is used for the application processor to transmit a QMI message to the modem for data dialing; the second channel comprises an MHI net channel used for transmitting interactive data between the application processor and the modem; the third channel comprises an MHI 32 channel and an MHI 33 channel, and the MHI 32 channel and the MHI 33 channel are used for issuing AT instructions.
In one embodiment, the MHI transport protocol is a communication protocol between the application processor and the modem, corresponding memory spaces are divided for different channels in the application processor in advance, and data of different channels are stored in the corresponding memory spaces, so that the modem writes or reads data of different channels in the memory spaces through a PCIe interface.
A PCIe interface based communications apparatus, said apparatus comprising:
the data transmission request receiving module is used for receiving a data transmission request sent by an upper application component;
the communication connection establishing module is used for establishing communication connection based on a PCIe interface between the application processor and the modem according to the data transmission request;
and the data transmission request sending module is used for sending the data transmission request to the modem through the communication connection based on the PCIe interface.
A computer device comprising a memory and a processor, the memory having stored therein a computer program which, when executed by the processor, causes the processor to carry out the steps of the PCIe interface based communication method as described above.
A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the PCIe interface-based communication method as described above.
The communication method and device based on the PCIe interface, the computer equipment and the computer readable storage medium receive the data transmission request sent by the upper application component, and establish the communication connection based on the PCIe interface between the application processor and the modem according to the data transmission request. And sending the data transmission request to the modem through a communication connection based on the PCIe interface. Because the PCIe interface can realize high-speed data transmission, a communication connection based on the PCIe interface is established between the application processor and the modem. Therefore, high-speed data transmission between the application processor and the modem can be realized, and the transmission efficiency is improved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a diagram of an application environment of a PCIe interface based communication method in one embodiment;
FIG. 2 is a flow diagram of a PCIe interface based communication method in one embodiment;
FIG. 3 is a flow diagram of a method for establishing at least one PCIe interface based communication connection between an application processor and a modem via PCIe driven device enumeration in accordance with a data transfer request, according to one embodiment;
FIG. 4 is a flowchart illustrating a method for establishing at least one PCIe interface based communication link between an application processor and a modem via device enumeration via drivers based on a predetermined transport protocol according to an embodiment;
FIG. 5 is a diagram illustrating the interaction between linux Host and modem in one embodiment;
FIG. 6 is a diagram illustrating a physical connection between a modem and an application processor over a PCIe interface in one embodiment;
FIG. 7 is a block diagram of a PCIe interface based communication device in one embodiment;
FIG. 8 is a diagram showing an internal configuration of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
It will be understood that, as used herein, the terms "first," "second," and the like may be used herein to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish one element from another. For example, a first channel may be referred to as a second channel, and similarly, a second channel may be referred to as a first channel, without departing from the scope of the present application. The first channel and the second channel are both channels, but they are not the same channel.
Fig. 1 is an application scenario diagram of a PCIe interface-based communication method in an embodiment. As shown in fig. 1, the application environment includes a computer device 102 and a communication base station 104, and the computer device 102 and the communication base station 104 are connected through a network. Wherein, the application processor in the computer device 102 can implement receiving a data transmission request sent by the upper layer application component; establishing a PCIe interface-based communication connection between the application processor and the modem according to the data transmission request; and sending the data transmission request to the modem through a communication connection based on the PCIe interface. Here, the computer device 102 may be any terminal device such as a mobile phone, a Personal computer, a tablet pc, a PDA (Personal Digital Assistant), a POS (Point of Sales), a vehicle-mounted computer, and a wearable device.
FIG. 2 is a flow diagram of a PCIe interface based communication method in one embodiment. The PCIe interface-based communication method in this embodiment is described by taking an application processor running in the computer device in fig. 1 as an example. As shown in fig. 2, the PCIe interface based communication method includes steps 220 to 260. Wherein the content of the first and second substances,
step 220, receiving a data transmission request sent by the upper layer application component.
The Linux operating system in a computer device typically includes a User Space portion and a Kernel Space portion. Both the User Space (User Space) portion and the Kernel Space (Kernel Space) portion run on the application processor. The Kernel space is the running space of the Linux Kernel, and the User space is the running space of the User program. In order to ensure the safety, the two spaces are isolated from each other, and even if the user program crashes, the kernel is not influenced. The Kernel space can execute any command and call all the resources of the system, while the User space can only execute simple operation and can not directly call the system resources, and can only send out instructions to the Kernel through a system interface (also called system call).
The application program is composed of application components, and generally, four major components for Android development are as follows: activity (Activity): for the presentation of functions. Service (Service): and running the service in the background and not providing interface presentation. Broadcast receiver (broadcastreever): for receiving the broadcast. Content provider (ContentProvider): support for storing and reading data in a plurality of applications, equivalent to a database. The user can issue an instruction through the relevant operation on the application program, so that the application program calls the corresponding upper layer application component to send the instruction to the kernel, and the instruction can be a data transmission request. The kernel receives a data transmission request sent by the upper layer application component.
And step 240, establishing a communication connection based on the PCIe interface between the application processor and the modem according to the data transmission request.
After the kernel receives the data transmission request sent by the upper layer application component, a communication connection needs to be established between the application processor and the modem. Conventionally, a modem generally uses a USB interface to implement data transmission with a peripheral platform (such as a linux platform), but since many peripheral platforms do not support a high-version USB interface, the modem cannot use the high-version USB interface to implement high-rate data transmission with the peripheral platform (such as the linux platform). The linux platform comprises a linux operating system running on a plurality of platforms such as X86, ARM, powerPC and the like. Many peripheral platforms have a pcie (peripheral component interconnect express) interface.
In the application, the communication connection is established between the application processor and the modem, and the communication connection is not established by adopting a traditional USB interface but by adopting a PCIe interface. Among them, PCI express (peripheral component interconnect express) is a high-speed serial computer expansion bus standard. PCIe belongs to high-speed serial point-to-point double-channel high-bandwidth transmission, connected devices distribute independent channel bandwidth and do not share bus bandwidth, and the PCIe mainly supports functions of active power management, error reporting, end-to-end reliable transmission, hot plug, service quality and the like.
Step 260, sending the data transmission request to the modem through the communication connection based on the PCIe interface.
After the PCIe interface based communication connection is established between the application processor and the modem, the data transfer request may be sent to the modem via the PCIe interface based communication connection. After receiving the data transmission request, the modem can send out a wireless signal to connect with a communication base station, thereby realizing the functions of talking or surfing the internet and the like.
In the embodiment of the application, a data transmission request sent by an upper layer application component is received, and a PCIe interface-based communication connection is established between an application processor and a modem according to the data transmission request. And sending the data transmission request to the modem through a communication connection based on the PCIe interface. Because the PCIe interface can realize high-speed data transmission, a communication connection based on the PCIe interface is established between the application processor and the modem. Therefore, high-speed data transmission between the application processor and the modem can be realized, and the data transmission efficiency is improved.
In one embodiment, step 240, establishing a PCIe interface based communication connection between the application processor and the modem according to the data transfer request includes:
and establishing at least one communication connection based on the PCIe interface between the application processor and the modem through the device enumeration of the PCIe driver according to the data transmission request, wherein the PCIe driver is arranged in the application processor.
Specifically, the PCIe architecture generally includes root complex, switch, end point and other types of PCIe devices, and there are usually some embedded end points in the root complex and the switch (such devices do not go out of the PCIe interface). The Host identifies the PCIe device by scanning, where the Host scans the PCIe device by using a depth-first algorithm, which is briefly described as to each possible branch path, and each node can only access once. This process is commonly referred to as PCIe device enumeration. In the enumeration process, host acquires information of downstream equipment by configuring a reading object packet, and sets the downstream equipment by configuring a writing object packet.
Wherein the PCIe driver is arranged in the application processor. The PCIe driver may divide the sub-port based on the PCIe interface in a physical layer through device enumeration of the PCIe driver, specifically, call a driver based on a preset transport protocol through the PCIe driver. And then, performing device enumeration through a driver based on a preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem. Here, one or more PCIe interface-based communication connections may be established, which is not limited in this application. PCIe drivers exist in linux operating systems on a plurality of platforms such as an X86 platform, an ARM platform and a powerPC platform, therefore, the PCIe drivers call the drivers based on the preset transmission protocol, and then the communication connection based on the PCIe interface is established in a mode of carrying out equipment enumeration by the drivers based on the preset transmission protocol, so that different platforms can be supported, and cross-platform migration and deployment are realized.
In this embodiment of the application, the PCIe driver may divide the sub-port based on the PCIe interface in a physical layer through device enumeration, specifically, the PCIe driver invokes a driver based on a preset transport protocol, and then performs device enumeration through the driver based on the preset transport protocol, and establishes at least one PCIe interface-based communication connection between the application processor and the modem. PCIe drivers exist in linux operating systems on a plurality of platforms such as an X86 platform, an ARM platform and a powerPC platform, therefore, the PCIe drivers call the drivers based on the preset transmission protocol, and then the communication connection based on the PCIe interface is established in a mode of carrying out equipment enumeration by the drivers based on the preset transmission protocol, so that different platforms can be supported, and cross-platform migration and deployment are realized. And because the PCIe interface can realize the data transmission with high speed, the data transmission with high speed between the application processor and the modem can be realized, and the data transmission efficiency is improved.
In one embodiment, as shown in fig. 3, the method further comprises: setting a driver based on a preset transmission protocol based on a PCIe driver; establishing at least one PCIe interface-based communication connection between the application processor and the modem via PCIe-driven device enumeration in accordance with the data transfer request, comprising:
step 320, calling a driver based on a preset transmission protocol through a PCIe driver according to the data transmission request;
step 340, performing device enumeration through a driver based on a preset transmission protocol, and establishing at least one PCIe interface-based communication connection between the application processor and the modem.
Specifically, PCIe drivers exist in linux operating systems on multiple platforms such as X86, ARM, and powerPC, and can support different platforms, thereby implementing cross-platform migration and deployment. Therefore, a driver based on a preset transmission protocol can be arranged on the PCIe driver, and the PCIe driver can perform device enumeration and realize the division of the sub-ports based on the PCIe interface. The sub-port based on the PCIe interface is correspondingly arranged on the modem, so that one or more communication connections based on the PCIe interface can be established between the application processor and the modem through the sub-ports based on the PCIe interface on the application processor and the modem. Therefore, the communication connection between the application processor and the modem based on the PCIe interface is realized.
In the embodiment of the application, the driver based on the preset transmission protocol is set based on the PCIe driver, and the driver based on the preset transmission protocol is called through the PCIe driver according to the data transmission request. The driver based on the preset transmission protocol can perform device enumeration and realize the division of the sub-ports based on the PCIe interface. The sub-port based on the PCIe interface is correspondingly arranged on the modem, so that one or more communication connections based on the PCIe interface can be established between the application processor and the modem through the sub-ports based on the PCIe interface on the application processor and the modem. Therefore, the communication connection between the application processor and the modem based on the PCIe interface is realized. And because the PCIe interface can realize the data transmission with high speed, the data transmission with high speed between the application processor and the modem can be realized, and the data transmission efficiency is improved.
In one embodiment, the establishing at least one PCIe interface-based communication connection between the application processor and the modem by device enumeration based on drivers of a preset transport protocol includes:
and performing device enumeration through a driver based on a preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem in a customized manner.
Specifically, device enumeration is performed through a driver based on a preset transmission protocol, and one or more PCIe interface-based communication connections are established between the application processor and the modem. The communication connection can be established in a user-defined mode, specifically, the number of channels for establishing the communication connection can be established in a user-defined mode, the functions of the channels for establishing the communication connection can be defined in a user-defined mode, and the like. For example, it is specifically defined what kind of data the data transmitted by each channel is, what function the data has, and the like, and this application does not limit this.
In the embodiment of the application, when the communication connection based on the PCIe interface is established between the application processor and the modem, the number of channels for establishing the communication connection can be customized, and the functions of the channels for establishing the communication connection can be customized. Therefore, more flexibly configured space is provided, and subsequent expansion is facilitated.
In one embodiment, as shown in fig. 4, the establishing at least one PCIe interface-based communication connection between the application processor and the modem through device enumeration based on a driver of a preset transport protocol includes:
step 420, performing device enumeration through a driver based on a preset transmission protocol, and establishing a first channel based on a PCIe interface between the application processor and the modem as a control channel; or
Step 440, performing device enumeration through a driver based on a preset transmission protocol, and establishing a second channel based on a PCIe interface between the application processor and the modem as a data transmission channel; or
Step 460, performing device enumeration through a driver based on a preset transmission protocol, and establishing a third channel based on a PCIe interface between the application processor and the modem as an AT channel.
And performing device enumeration through a driver based on a preset transmission protocol, and establishing one or more communication connections based on a PCIe interface between the application processor and the modem. For example, when the application processor interacts with the modem, the application processor may send and receive control commands, interaction data, AT commands, and the like, which is not limited in this application. Wherein, the AT (Attention) command can control the aspects of calling, short message, telephone book, data service, fax, etc.
The method comprises the steps of carrying out device enumeration in advance through a driver based on a preset transmission protocol, and establishing a first channel based on a PCIe interface between an application processor and a modem as a control channel. Thus, control instructions may be transmitted between the application processor and the modem over the first channel.
And performing device enumeration in advance through a driver based on a preset transmission protocol, and establishing a second channel based on a PCIe interface between the application processor and the modem as a data transmission channel. Thus, interactive data may be transmitted between the application processor and the modem over the second channel.
And performing device enumeration in advance through a drive based on a preset transmission protocol, and establishing a third channel based on a PCIe interface between the application processor and the modem as an AT channel. Thus, AT commands can be transmitted between the application processor and the modem over the third channel.
In the embodiment of the application, different channels are established for each different data in advance between the application processor and the modem based on the PCIe interface, so that the different data can be transmitted between the different channels. The chaos of different data in the transmission process is avoided, the data transmission efficiency is improved, and the effect of high-speed transmission is achieved.
In one embodiment, the predetermined transmission protocol is an MHI transmission protocol, the first channel includes a CLT channel (i.e., a control channel) for transmitting a QMI message to the modem by the application processor for data dialing; the second channel comprises an MHI net channel, and the MHI net channel is used for transmitting interactive data between the application processor and the modem; the third channel comprises an MHI 32 channel and an MHI 33 channel, and the MHI 32 channel and the MHI 33 channel are used for issuing AT commands.
Specifically, the preset transmission protocol is an MHI (modem-host interface) transmission protocol, which is a communication protocol between the application processor and the modem defined in the present application. Communication between the application processor and the modem over a PCIe interface may be implemented. As shown in fig. 5, it is a schematic diagram of interaction between linux Host and modem. In FIG. 5, the linux Host includes a User Space portion and a Kernel Space portion both running on the application processor. The Kernel space is the running space of the Linux Kernel, and the User space is the running space of the User program. The two spaces are isolated from each other for safety. PCIe drivers (namely PCIe drivers) are correspondingly arranged on the Kernel space and the modem respectively, and are connected with drivers of a preset transmission protocol (namely MHI drivers comprise MHI Host drivers and MHI Device drivers), wherein the MHI Host drivers are arranged on the Kernel space, and the MHI Device drivers are arranged on the modem. Connected to the MHI Host Driver is a CLT channel for the application processor to transmit QMI messages to the modem for data dialing. The MHI net channel is connected to the MHI Host Driver, and the MHI net channel is used for transmitting interactive data between the application processor and the modem, and of course, more channels may be divided for transmitting interactive data, such as MHI100 and MHI 101 channels (not shown), which is not limited in this application. Also connected to the MHI Host Driver are MHI 32 and MHI 33 channels (not shown), which are used by the MHI 32 and MHI 33 channels to issue AT commands to the modem. The channel is led out from PCIe end point on the modem, is connected to a PCIe Driver through a PCIe root complex on linux Host, is connected to an MHI Host Driver, is connected to channels established by the MHI net channel, CLT channel and the like through the MHI Host Driver, and is connected to other drivers or connected to an upper layer user space. Therefore, through the communication connection route, the communication connection between the linux Host and the modem through the PCIe interface can be realized. The QMI Message is the Qualcom Message Interface of the high-pass platform.
As shown in fig. 6, it is a schematic diagram of a physical connection between a modem (abbreviated MDM) and an Application Processor (AP) through a PCIe interface. The figure specifically shows point-to-point physical connections between the chip pins.
In the embodiment of the application, the MHI transport protocol is a communication protocol between the application processor and the modem. An MHI driver is added on the linux Host through the MHI transmission protocol, and a plurality of PCIe interface-based communication connections are established between the linux Host and the modem through the MHI driver. Therefore, high-speed data transmission between the application processor and the modem is realized, and the data transmission efficiency is improved.
In one embodiment, the MHI transport protocol is a communication protocol between the application processor and the modem, corresponding memory spaces are divided for different channels in advance in the application processor, and data of the different channels are stored in the corresponding memory spaces, so that the modem writes or reads data of the different channels in the memory spaces through the PCIe interface.
Specifically, the specific contents of the MHI transport protocol are: corresponding memory spaces are divided for different channels in advance in the application processor. The data packet which is required to be sent to the modem by the application processor through the PCIe interface is firstly stored in the memory space corresponding to the channel for sending the data packet. Then, the modem is notified to read the corresponding data packet in the memory space through the PCIe interface, thereby completing the process of sending data from the application processor to the modem through the PCIe interface.
When the modem needs to send data to the application processor through the PCIe interface, the modem writes the data packet into the memory space corresponding to the channel for sending the data packet through the PCIe interface, and then informs the application processor to read the data packet from the memory space, so that the process of sending data from the modem to the application processor through the PCIe interface can be realized.
In the embodiment of the application, the MHI transport protocol divides corresponding memory spaces for different channels in advance in the application processor, thereby realizing a process of sending data from the application processor to the modem through the PCIe interface and a process of sending data from the modem to the application processor through the PCIe interface. Because the PCIe interface can realize high-speed data transmission, high-speed data transmission between the application processor and the modem can be realized, and the data transmission efficiency is improved.
It should be understood that although the various steps in the flow charts of fig. 2-4 are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least some of the steps in fig. 2-4 may include multiple sub-steps or multiple stages that are not necessarily performed at the same time, but may be performed at different times, and the order of performance of the sub-steps or stages is not necessarily sequential, but may be performed in turn or alternating with other steps or at least some of the sub-steps or stages of other steps.
In one embodiment, as shown in fig. 7, there is also provided a PCIe interface based communication apparatus 700, comprising:
a data transmission request receiving module 720, configured to receive a data transmission request sent by an upper layer application component;
a communication connection establishing module 740, configured to establish a PCIe interface-based communication connection between the application processor and the modem according to the data transmission request;
a data transmission request sending module 760, configured to send the data transmission request to the modem through a communication connection based on the PCIe interface.
In one embodiment, the communication connection establishing module 740 is further configured to establish at least one PCIe interface-based communication connection between the application processor and the modem through device enumeration of a PCIe driver according to the data transmission request, where the PCIe driver is disposed in the application processor.
In one embodiment, a driver based on a preset transport protocol is set based on a PCIe driver; the communication connection establishing module 740 is further configured to invoke a driver based on a preset transmission protocol through a PCIe driver according to the data transmission request; and performing device enumeration through a driver based on a preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem.
In one embodiment, the communication connection establishing module 740 is further configured to perform device enumeration through a driver based on a preset transport protocol, and to custom establish at least one PCIe interface-based communication connection between the application processor and the modem.
In an embodiment, the communication connection establishing module 740 is further configured to perform device enumeration through a driver based on a preset transmission protocol, and establish a first channel based on a PCIe interface between the application processor and the modem as a control channel; or
Performing device enumeration through a driver based on a preset transmission protocol, and establishing a second channel based on a PCIe interface between an application processor and a modem as a data transmission channel; or
And performing device enumeration through a driver based on a preset transmission protocol, and establishing a third channel based on a PCIe interface between the application processor and the modem as an AT channel.
In one embodiment, the preset transmission protocol is an MHI transmission protocol, the first channel comprises a CLT channel, and the CLT channel is used for transmitting a QMI message to the modem by the application processor for data dialing; the second channel comprises an MHI net channel, and the MHI net channel is used for transmitting interactive data between the application processor and the modem; the third channel comprises an MHI 32 channel and an MHI 33 channel, and the MHI 32 channel and the MHI 33 channel are used for issuing AT commands.
In one embodiment, the MHI transport protocol is a communication protocol between the application processor and the modem, corresponding memory spaces are divided for different channels in advance in the application processor, and data of the different channels are stored in the corresponding memory spaces, so that the modem writes or reads data of the different channels in the memory spaces through the PCIe interface.
The above described division of the modules in the PCIe interface based communication device is only for illustration, and in other embodiments, the PCIe interface based communication device may be divided into different modules as needed to complete all or part of the functions of the PCIe interface based communication device.
For specific definition of the PCIe interface-based communication device, reference may be made to the above definition of the PCIe interface-based communication method, which is not described herein again. The various modules in the PCIe interface based communication apparatus described above may be implemented in whole or in part by software, hardware, and combinations thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as shown in fig. 8. The computer device includes a processor, a memory, a communication interface, a display screen, and an input device connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The communication interface of the computer device is used for carrying out wired or wireless communication with an external terminal, and the wireless communication can be realized through WIFI, an operator network, NFC (near field communication) or other technologies. The computer program is executed by a processor to implement a PCIe interface based communication method. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer equipment can be a touch layer covered on the display screen, a key, a track ball or a touch pad arranged on the shell of the computer equipment, an external keyboard, a touch pad or a mouse and the like.
Those skilled in the art will appreciate that the architecture shown in fig. 8 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory and a processor, the memory having stored therein a computer program, the processor implementing the steps of the above-described method embodiments when executing the computer program.
In an embodiment, a computer-readable storage medium is provided, on which a computer program is stored, which computer program, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware related to instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database or other medium used in the embodiments provided herein can include at least one of non-volatile and volatile memory. Non-volatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical storage, or the like. Volatile Memory can include Random Access Memory (RAM) or external cache Memory. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM), among others.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above examples only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (9)

1. A PCIe interface based communication method, the method comprising:
receiving a data transmission request sent by an upper application component;
establishing a PCIe interface-based communication connection between the application processor and the modem according to the data transmission request;
sending the data transmission request to the modem through the communication connection based on the PCIe interface;
the establishing of the communication connection based on the PCIe interface between the application processor and the modem according to the data transmission request comprises the following steps:
and establishing at least one communication connection based on a PCIe interface between the application processor and the modem through the equipment enumeration of the PCIe driver according to the data transmission request, wherein the PCIe driver is arranged in the application processor.
2. The method of claim 1, further comprising: setting a driver based on a preset transmission protocol based on the PCIe driver; establishing at least one PCIe interface-based communication connection between the application processor and the modem through PCIe-driven device enumeration according to the data transmission request, including:
calling the driver based on the preset transmission protocol through the PCIe driver according to the data transmission request;
and performing device enumeration through the driver based on the preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem.
3. The method of claim 2, wherein the performing device enumeration via the driver based on the predetermined transport protocol establishes at least one PCIe interface-based communication connection between the application processor and the modem, and comprises:
and performing device enumeration through the driver based on the preset transmission protocol, and establishing at least one communication connection based on a PCIe interface between the application processor and the modem in a customized manner.
4. The method of claim 2, wherein the performing device enumeration via the driver based on the predetermined transport protocol establishes at least one PCIe interface-based communication connection between the application processor and the modem, and comprises:
performing device enumeration through the driver based on the preset transmission protocol, and establishing a first channel based on a PCIe interface between the application processor and the modem as a control channel; or
Performing device enumeration through the driver based on the preset transmission protocol, and establishing a second channel based on a PCIe interface between the application processor and the modem as a data transmission channel; or
And performing device enumeration through the driver based on the preset transmission protocol, and establishing a third channel based on a PCIe interface between the application processor and the modem as an AT channel.
5. The method of claim 4, wherein the predetermined transport protocol is an MHI transport protocol, wherein the first channel comprises a CLT channel, and wherein the CLT channel is configured to be used by the application processor to transmit QMI messages to the modem for data dialing; the second channel comprises an MHI net channel used for transmitting interactive data between the application processor and the modem; the third channel comprises an MHI 32 channel and an MHI 33 channel, and the MHI 32 channel and the MHI 33 channel are used for issuing AT instructions.
6. The method of claim 5, wherein the MHI transport protocol is a communication protocol between the application processor and the modem, and the application processor divides corresponding memory spaces for different channels in advance, and stores data of different channels in the corresponding memory spaces, so that the modem writes or reads data of different channels in the memory spaces through a PCIe interface.
7. A PCIe interface-based communication apparatus, the apparatus comprising:
the data transmission request receiving module is used for receiving a data transmission request sent by an upper application component;
the communication connection establishing module is used for establishing communication connection based on a PCIe interface between the application processor and the modem according to the data transmission request; the communication connection establishing module is specifically configured to establish at least one PCIe interface-based communication connection between an application processor and a modem through device enumeration of a PCIe driver according to the data transmission request, where the PCIe driver is disposed in the application processor;
and the data transmission request sending module is used for sending the data transmission request to the modem through the communication connection based on the PCIe interface.
8. A computer device comprising a memory and a processor, the memory having stored therein a computer program, wherein the computer program, when executed by the processor, causes the processor to perform the steps of the PCIe interface based communication method as recited in any one of claims 1 to 6.
9. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the PCIe interface based communication method according to any one of claims 1 to 6.
CN202010230311.2A 2020-03-27 2020-03-27 PCIe interface-based communication method and device, computer equipment and computer-readable storage medium Active CN111475454B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010230311.2A CN111475454B (en) 2020-03-27 2020-03-27 PCIe interface-based communication method and device, computer equipment and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010230311.2A CN111475454B (en) 2020-03-27 2020-03-27 PCIe interface-based communication method and device, computer equipment and computer-readable storage medium

Publications (2)

Publication Number Publication Date
CN111475454A CN111475454A (en) 2020-07-31
CN111475454B true CN111475454B (en) 2022-04-15

Family

ID=71747925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010230311.2A Active CN111475454B (en) 2020-03-27 2020-03-27 PCIe interface-based communication method and device, computer equipment and computer-readable storage medium

Country Status (1)

Country Link
CN (1) CN111475454B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238982A (en) * 2021-04-25 2021-08-10 深圳市广和通无线股份有限公司 Data communication method, device, computer equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012052049A1 (en) * 2010-10-18 2012-04-26 Telefonaktiebolaget L M Ericsson (Publ) Transmission ability feedback from a communication device towards a network control node
CN103944601A (en) * 2013-01-18 2014-07-23 中国科学院上海高等研究院 PCIE (peripheral component interface express) interface based software radio frequency transmitter-receiver and method
WO2020023709A1 (en) * 2018-07-25 2020-01-30 Blues Inc. DATA SYSTEM ON A MODULE (DSoM) FOR CONNECTING COMPUTING DEVICES AND CLOUD-BASED SERVICES
CN210157213U (en) * 2019-08-06 2020-03-17 深圳市芯启源科技有限公司 Satellite modem

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012052049A1 (en) * 2010-10-18 2012-04-26 Telefonaktiebolaget L M Ericsson (Publ) Transmission ability feedback from a communication device towards a network control node
CN103944601A (en) * 2013-01-18 2014-07-23 中国科学院上海高等研究院 PCIE (peripheral component interface express) interface based software radio frequency transmitter-receiver and method
WO2020023709A1 (en) * 2018-07-25 2020-01-30 Blues Inc. DATA SYSTEM ON A MODULE (DSoM) FOR CONNECTING COMPUTING DEVICES AND CLOUD-BASED SERVICES
CN210157213U (en) * 2019-08-06 2020-03-17 深圳市芯启源科技有限公司 Satellite modem

Also Published As

Publication number Publication date
CN111475454A (en) 2020-07-31

Similar Documents

Publication Publication Date Title
CN112671760A (en) Socket-based client cross-platform network communication method and related equipment thereof
WO2019184658A1 (en) Profile switching method and apparatus, and mobile terminal
US11703910B2 (en) Docking station, electrical device, and method for configuring basic input output system
JP2007286978A (en) Electronic apparatus, and its control method and program for data transfer, and data transfer system
AU2019256257A1 (en) Processor core scheduling method and apparatus, terminal, and storage medium
US11736149B2 (en) Data transmission method for Bluetooth card reader and electronic device
WO2021088671A1 (en) Method for calling terminal capability, device, and computer storage medium
CN111190854A (en) Communication data processing method, device, equipment, system and storage medium
CN111475454B (en) PCIe interface-based communication method and device, computer equipment and computer-readable storage medium
CN116243853A (en) Data transmission method and device, electronic equipment and nonvolatile storage medium
US7236482B2 (en) Method for controlling wireless network access through wired network access interface and associated computer system
US10176133B2 (en) Smart device with no AP
US20220382920A1 (en) Terminal and communication method
CN114978916B (en) Configuration method of data transmission bandwidth and related equipment
WO2021249260A1 (en) Data transmission method and apparatus, circuit board, storage medium and electronic apparatus
CN112367362B (en) Data processing method, device, equipment and computer storage medium
KR100480951B1 (en) Serial line multiplexer interface apparatus
CN114356830B (en) Bus terminal control method, device, computer equipment and storage medium
CN102487526B (en) Protocol conformance test method and system thereof
CN110971696A (en) System and method for realizing virtual electronic card communication
CN115827545A (en) Enhanced serial peripheral interface implementation method, device, conversion device and medium
WO2024131147A1 (en) Enhanced serial peripheral interface implementing method and apparatus, enhanced serial peripheral interface conversion device and medium
CN111614794B (en) Message transmission method and device, electronic equipment and storage medium
CN109783278B (en) Mobile equipment and method and storage device for modifying Bluetooth software thereof
CN102196454A (en) Multimode co-transmission method and base station

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