WO2024045742A1 - Computing device - Google Patents

Computing device Download PDF

Info

Publication number
WO2024045742A1
WO2024045742A1 PCT/CN2023/098417 CN2023098417W WO2024045742A1 WO 2024045742 A1 WO2024045742 A1 WO 2024045742A1 CN 2023098417 W CN2023098417 W CN 2023098417W WO 2024045742 A1 WO2024045742 A1 WO 2024045742A1
Authority
WO
WIPO (PCT)
Prior art keywords
management unit
pcie
device management
data
message
Prior art date
Application number
PCT/CN2023/098417
Other languages
French (fr)
Chinese (zh)
Inventor
李宇涛
Original Assignee
超聚变数字技术有限公司
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 超聚变数字技术有限公司 filed Critical 超聚变数字技术有限公司
Publication of WO2024045742A1 publication Critical patent/WO2024045742A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers or receivers
    • 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
    • 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/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • H04L12/40176Flexible bus arrangements involving redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present application relates to the field of servers, and in particular to a computing device.
  • NC-SI Network Controller Sideband Interface
  • the device management unit uses the NC-SI interface of the network card to communicate with the external network.
  • the NC-SI interface is physically a Reduced Media Independent Interface (RMII), and the NC-SI interface is actually based on the RMII Based Transport (RBT) NC-SI protocol.
  • RMII Reduced Media Independent Interface
  • RBT RMII Based Transport
  • the NC-SI interface signal is not included in the interface signal definition of the Peripheral Component Interconnect Express (PCIE) standard card.
  • PCIE Peripheral Component Interconnect Express
  • NC-SI functionality cannot be supported.
  • Some computing equipment manufacturers develop their own PCIE network cards with NC-SI interface connectors. NC-SI connectors are also provided on computing device motherboards. Then, customized cables are used to implement NC-SI sideband communication between the server's device management unit and the PCIE network card, which increases deployment costs.
  • Embodiments of the present application provide a computing device, a device management unit, a PCIE device and a data structure. It can effectively reduce the interface deployment cost for NC-SI sideband communication between the device management unit and the PCIE device.
  • inventions of the present application provide a computing device.
  • the computing device includes a device management unit and a PCIE device; the device management unit includes an I3C interface; the PCIE device includes an I3C interface, and the device management unit and the PCIE device are connected through the I3C interface; the device management unit and the PCIE device transmit NC-SI edges through the I3C interface With communication data; among them, NC-SI sideband communication data includes data packets and control packets; data packets are used for the device management unit to communicate with the external network; control packets are used for the device management unit to manage PCIE devices.
  • the device management unit managing the PCIE device includes the device management unit configuring the PCIE device, such as configuring a channel to transmit data packets.
  • the device management unit managing the PCIE device includes the device management unit querying the PCIE device, such as querying the status of the PCIE device.
  • the device management unit of the computing device and the PCIE device do not need to have an NC-SI physical interface for transmitting NC-SI sideband communication data.
  • the device management unit and the PCIE device use the I3C interface they have to implement NC-SI. Sideband communications. The cost of implementing NC-SI sideband communications on computing devices is reduced.
  • the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface.
  • the I3C protocol is used to transmit NC-SI sideband communication data between the device management unit and the PCIE network card. This makes it possible to transmit NC-SI sideband communication data regardless of whether the device management unit and the PCIE device have an NC-SI physical interface, thereby improving the compatibility of the device management unit and the PCIE device in the computing device.
  • the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the device management unit and the PCIE device transmit NC-SI direct common command code commands based on the I3C protocol.
  • Sideband communication data; its , the direct public command code is used to instruct the device management unit to communicate with the specified PCIE device.
  • NC-SI sideband communication data is transmitted between the device management unit and the PCIE device using predetermined direct common command code instructions. Improved the efficiency of sideband communication between the device management unit and PCIE devices.
  • the direct public command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: the device management unit Control messages are transmitted with the PCIE device based on the direct writing frame format and the direct reading frame format.
  • the direct public command code command includes direct writing; the device management unit transmits NC-SI sideband communication data with the PCIE device based on the direct command code command of the I3C protocol, including: the device management unit transmits NC-SI sideband communication data based on direct writing
  • the frame format is used to send data packets to the PCIE device; the PCIE device receives data packets from the device management unit.
  • the master device on the I3C bus can actively read and write from the slave device.
  • the device management unit is the master device of the I3C bus
  • the PCIE device is the slave device of the I3C bus.
  • the device management unit can realize the transmission of NC-SI sideband communication to PCIE by using direct writing in the direct public command code command.
  • Data; the NC-SI sideband communication data includes NC-SI control messages used by the device management unit to manage PCIE devices and NC-SI data messages sent by the device management unit to the external network.
  • the directly written frame format and the directly read frame format include: a customized direct public command code sent by the device management unit to the PCIE device;
  • the customized direct public command code is used to indicate the transmission of control messages or data messages; the customized direct public command code is determined based on the reserved extended command code of the direct public command code in the I3C protocol; the PCIE device receives data from the device management The unit's custom direct public command code.
  • the value range of reserved extended command codes is 0xE0-0xFE.
  • the customized direct public command code is used to instruct the transmission of control messages from the device management unit to the PCIE device; in the directly read frame format, the customized The direct public command code is used to instruct the transmission of control messages from the PCIE device to the device management unit.
  • the customized direct public command code is used to instruct the device management unit to transmit data packets to the PCIE device.
  • the customized direct public command code used to instruct the transmission of the control message is different from the customized direct public command code used to instruct the transmission of the data message.
  • NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices, and different custom command codes can be selected to indicate NC-SI sideband The specific type of communication increases the flexibility of specification usage.
  • the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including: the PCIE device sends a data message to the device management unit based on the I3C protocol in-band interrupt mechanism through the I3C interface; the device The management unit receives the data message.
  • the slave device on the I3C bus can actively request to transmit data to the master device by using the interrupt mechanism in the I3C protocol.
  • the device management unit communicates with the PCIE device through the I3C interface based on the I3C protocol.
  • the device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus.
  • the PCIE device receives external After receiving the data packets from the network, the data packets can be actively transmitted to the device management unit in a timely manner to improve communication efficiency.
  • the PCIE device before the PCIE device sends a data message to the device management unit through the I3C interface based on the I3C protocol in-band interrupt mechanism, the PCIE device sends a custom mandatory data byte value to the device management unit; where, the custom The mandatory data byte value is used to indicate the transmission of data packets from the PCIE device to the device management unit; the custom mandatory data byte value is determined based on the reserved extension value of the mandatory data byte in the I3C protocol; the device management unit receives from Custom mandatory data byte value for PCIE devices.
  • the value of the high-order three bits MDB[7:5] of the forced data byte is 3'b000; the value range of the low-order five bits MDB[4:0] of the forced data byte is 5'h00–5'h1F.
  • NC-SI sideband communication broadens the application scenarios of the I3C protocol specification in computing devices.
  • different custom command codes can be selected to indicate the specific type of NC-SI sideband communication, which improves the flexibility of standard use.
  • the control message includes a command message and a response message; the device management unit and the PCIE device transmit the control message based on the direct write frame format and the direct read frame format, including: the device management unit transmits the control message based on the direct write frame format and the direct read frame format.
  • the data field in the incoming frame format sends a command message to the PCIE device; the command message is used to manage the PCIE device; the PCIE device receives the command message from the device management unit; the PCIE device sends the command message to the device management unit based on directly reading the data field in the frame format.
  • Send a response message the device management unit receives the response message from the PCIE device; the response message is used to indicate the management result.
  • the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to configure the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message The text is used to indicate the configuration results.
  • the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to query the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message Text is used to indicate query results.
  • the device management unit is a device manager.
  • the PCIE device is a PCIE network card.
  • inventions of the present application provide a device management unit.
  • the device management unit includes an I3C interface; the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface; wherein, the NC-SI sideband communication data It includes data packets and control packets. Data packets are used for the device management unit to communicate with the external network; control packets are used for the device management unit to manage PCIE devices.
  • the device management unit managing the PCIE device includes the device management unit configuring the PCIE device, such as configuring a channel to transmit data packets.
  • the device management unit managing the PCIE device includes the device management unit querying the PCIE device, such as querying the status of the PCIE device.
  • the device management unit does not need to have an NC-SI physical interface for transmitting NC-SI sideband communication data.
  • the I3C interface can be used to realize NC-SI sideband communication with PCIE devices. The cost of implementing NC-SI sideband communication for the device management unit is reduced.
  • the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including: the device management unit and the PCIE device transmit the NC-SI sideband communication data through the I3C interface based on the I3C protocol.
  • the I3C protocol is used to transmit NC-SI sideband communication data between the device management unit and the PCIE device. This enables the device management unit to transmit NC-SI sideband communication data with the PCIE device regardless of whether it has an NC-SI interface, thereby improving the compatibility of the device management unit.
  • the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the device management unit and the PCIE device transmit NC-SI direct common command code commands based on the I3C protocol. Sideband communication data; among them, the direct public command code command is used to instruct the device management unit to communicate with the specified PCIE device.
  • NC-SI sideband communication data is transmitted between the device management unit and the PCIE device using designated direct common command code instructions. Improved the efficiency of sideband communication between the device management unit and PCIE devices.
  • the direct public command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: the device management unit Control messages are transmitted with the PCIE device based on the direct writing frame format and the direct reading frame format.
  • the direct public command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: the device management unit Send data packets to the PCIE device based on the directly written frame format.
  • the master device on the I3C bus can actively read and write to the slave device.
  • the device management sheet The device management unit is the master device of the I3C bus
  • the PCIE device is the slave device of the I3C bus.
  • the device management unit can realize the transmission of NC-SI sideband communication data to PCIE by using direct writing in the direct public command code command;
  • the NC-SI sideband Communication data includes NC-SI control messages used by the device management unit to manage PCIE devices and NC-SI data messages sent by the device unit to the external network.
  • the directly written frame format and the directly read frame format include: a customized direct public command code sent by the device management unit to the PCIE device; wherein the customized direct public command code is used to indicate Transmit control messages or data messages; the customized direct public command code is determined based on the reserved extended command code of the direct public command code in the I3C protocol.
  • the value range of reserved extended command codes is 0xE0-0xFE.
  • the customized direct public command code used to instruct the transmission of the control message is different from the customized direct public command code used to instruct the transmission of the data message.
  • NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices. And different custom command codes can be selected to indicate the specific type of NC-SI sideband communication, which improves the flexibility of standard use.
  • the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including: the device management unit receives the data message sent by the PCIE device through the I3C interface and based on the I3C protocol in-band interrupt mechanism.
  • the slave device on the I3C bus can actively request to transmit data to the master device by using the interrupt mechanism in the I3C protocol.
  • the device management unit communicates with the PCIE device through the I3C interface based on the I3C protocol.
  • the device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus.
  • the PCIE device receives external After receiving the data packet from the network, the data packet can be actively transmitted to the device management unit in a timely manner. Improve the communication efficiency between the device management unit and external networks.
  • the device management unit before the device management unit receives the data message sent by the PCIE device through the I3C interface based on the I3C protocol in-band interrupt mechanism, the device management unit includes: the device management unit receives a custom mandatory data byte value sent by the PCIE device; Among them, the customized mandatory data byte value is used to indicate the transmission of data messages; the customized mandatory data byte value is determined based on the reserved extension value of the mandatory data byte in the I3C protocol. Among them, the upper three bits MDB[7:5] of the forced data byte have a value of 3’b000; the lower five bits MDB[4:0] of the forced data byte have a value range of 5’h00–5’h1F.
  • NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices, and different custom command codes can be used to indicate NC-SI sideband communication. Concrete types improve the flexibility of specification usage.
  • the control message includes a command message and a response message; the device management unit and the PCIE device transmit the control message based on the direct write frame format and the direct read frame format, including: the device management unit transmits the control message based on the direct write frame format and the direct read frame format.
  • the data field in the incoming frame format sends a command message to the PCIE device; the command message is used to manage the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message is used to indicate the management result.
  • the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to configure the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message The text is used to indicate the configuration results.
  • the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to query the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message Text is used to indicate query results.
  • the device management unit is a device manager.
  • inventions of the present application provide a PCIE device.
  • the PCIE device includes an I3C interface; the PCIE device and the device management unit transmit NC-SI sideband communication data through the I3C interface; wherein the NC-SI sideband communication data includes data Messages and control messages, data messages are data used by the device management unit to communicate with the external network, and control messages are used by the device management unit to manage PCIE devices.
  • the device management unit managing the PCIE device includes the device management unit configuring the PCIE device, such as configuring a channel for transmission of data packets.
  • the device management unit managing the PCIE device includes the device management unit querying the PCIE device, such as querying the channel status of the PCIE device.
  • PCIE equipment does not need to have an NC-SI physical interface for transmitting NC-SI sideband communication data.
  • PCIE The device uses its own I3C interface to implement NC-SI sideband communication with the device management unit, reducing the cost of PCIE equipment implementing NC-SI sideband communication.
  • the PCIE device and the device management unit transmit NC-SI sideband communication data through the I3C interface, including: the PCIE device and the device management unit transmit the NC-SI sideband communication data through the I3C interface based on the I3C protocol.
  • the PCIE device and the device management unit transmit the NC-SI sideband communication data based on the I3C protocol, including: the PCIE device and the device management unit transmit the NC-SI sideband communication data based on the direct common command code command of the I3C protocol. ; Among them, the direct public command code command is used to instruct the device management unit to communicate with the specified PCIE device.
  • Different direct public command codes can indicate different types of communication between the master device and the specified slave device.
  • specified direct public command code instructions are used to transmit NC-SI sideband communication data between the device management unit and the PCIE device, thereby improving the sideband communication efficiency between the device management unit and the PCIE device.
  • the direct public command code command includes direct writing and direct reading; the PCIE device and the device management unit transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: PCIE device and The device management unit transmits control messages based on the direct writing frame format and the direct reading frame format.
  • the direct public command code command includes direct writing; the PCIE device and the device management unit transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the PCIE device is based on The directly written frame format receives the data message sent by the device management unit.
  • the master device on the I3C bus can actively read and write from the slave device.
  • the device management unit is the master device of the I3C bus
  • the PCIE device is the slave device of the I3C bus.
  • the device management unit can realize the transmission of NC-SI sideband communication to PCIE by using direct writing in the direct public command code command.
  • Data; the NC-SI sideband communication data includes NC-SI control messages used by the device management unit to manage PCIE devices and NC-SI data messages sent by the device management unit to the external network.
  • the directly written frame format and the directly read frame format include: the PCIE device receives a customized direct public command code sent by the device management unit; wherein the customized direct public command code is used to indicate Transmit control messages or data messages; the customized direct public command code is determined based on the reserved extended command code of the direct public command code in the I3C protocol. Among them, the value range of reserved extended command codes is 0xE0-0xFE.
  • the customized direct public command code used to instruct the transmission of the control message is different from the customized direct public command code used to instruct the transmission of the data message.
  • NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices, and different custom command codes can be selected to indicate NC-SI sideband communication. With communication specific types, the flexibility of specification usage is improved.
  • the PCIE device and the device management unit transmit NC-SI sideband communication data through the I3C interface, including: the PCIE device sends a data message to the device management unit through the I3C interface and based on the I3C protocol in-band interrupt mechanism.
  • the slave device on the I3C bus can actively request to transmit data to the master device by using the interrupt mechanism in the I3C protocol.
  • the device management unit communicates with the PCIE device through the I3C interface based on the I3C protocol.
  • the device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus.
  • the PCIE device receives external After receiving the data packet from the network, the data packet can be actively transmitted to the device management unit in a timely manner. Improve the communication efficiency between the device management unit and external networks.
  • the process before the PCIE device sends a data message to the device management unit through the I3C interface based on the I3C protocol in-band interrupt mechanism, the process includes: the PCIE device sends a custom mandatory data byte value to the device management unit; where, The customized mandatory data byte value is used to indicate the transmission of data messages; the customized mandatory data byte value is determined based on the reserved extension value of the mandatory data byte in the I3C protocol.
  • the upper three bits MDB[7:5] of the forced data byte have a value of 3’b000; the lower five bits MDB[4:0] of the forced data byte have a value range of 5’h00–5’h1F.
  • NC-SI sideband communications broadens the scope of the I3C specification in computing devices application scenarios, and different custom command codes can be selected to indicate the specific type of NC-SI sideband communication, which improves the flexibility of standard use.
  • the control message includes a command message and a response message; the PCIE device and the device management unit transmit the control message based on the direct write frame format and the direct read frame format, including: the PCIE device transmits the control message based on the direct write frame format and the direct read frame format.
  • the data field in the frame format receives the command message sent by the device management unit; the command message is used to manage the PCIE device; the PCIE device sends a response message to the device management unit based on directly reading the data field in the frame format; the response message is used for instructions Management results.
  • the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to configure the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message The text is used to indicate the configuration results.
  • the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to query the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message Text is used to indicate query results.
  • the PCIE device is a PCIE network card.
  • inventions of the present application provide a data structure.
  • the data structure includes: Start field, I3C Reserved Address field, first Read/Write field, first Acknowledge field, I3C Directed Common Command Code field, Parity Bit field, Repeated Start field, I3C Target Address, second Read/Write field, second Acknowledge field, Data field, Transition Bit field, Stop field; among them, I3C Directed Common Command Code value is any command code from 0xE0-0xFE; this command
  • the code is used to instruct the device management unit and the PCIE device to transmit NC-SI sideband communication data through the I3C interface; where the NC-SI sideband communication data includes control messages and/or data messages; the data messages are used for all
  • the device management unit communicates with an external network, and the control message is used by the device management unit to manage the PCIE device.
  • the I3C Reserved Address field carries the I3C broadcast address 7’h7E; the first Read/Write field is set to 0. At this time, the first Read/Write field can be understood as a Write field, indicating the execution of a write operation.
  • I3C Directed Common Command Code is used to instruct the device management unit and PCIE device to transmit control messages.
  • the reserved extended command code value xF0 of I3C Directed Common Command Code to instruct the device management unit to transmit control messages to the PCIE device or the PCIE device to transmit control messages to the device management unit.
  • the second Read/Write value is 0, and the Transition Bit field is the Parity Bit field, which is used to verify the written control message.
  • the Transition Bit field is End-of-Data, which is used to indicate whether the control packet transmission is completed; for example, when the Transition Bit is 1 When the Transition Bit is 0, it means that the control message has not been transmitted yet. When the Transition Bit is 0, it means that the control message has been transmitted.
  • the I3C Directed Common Command Code is used to instruct the transmission of data packets from the device management unit to the PCIE device; the RnW value is 0, and the Transition Bit field is the Parity Bit field, which is used to verify the written data packet. arts.
  • the reserved extended command code value 0xF1 of I3C Directed Common Command Code to instruct the device management unit to transmit data packets to the PCIE device.
  • the second Read/Write value is 0, and the Transition Bit field is the Parity Bit field, which is used to verify the written data message.
  • the Data field is used to send the above NC-SI sideband communication data.
  • the technical solution of this application provides a data structure.
  • the data structure includes: Start field, I3C Target Address, Read/Write field, Acknowledge field, Mandatory Data Byte field, Parity Bit field, Data field, Stop field; wherein , the value of the high three bits MDB[7:5] of Mandatory Data Byte (MDB) is 3'b000; the value range of the low five bits MDB[4:0] of Mandatory Data Byte is 5'h00–5'h1F; from all Select one value from the lower five bits of the Mandatory Data Byte and the upper three bits to form a value; this MDB value is used to instruct the PCIE device to send a data message to the device management unit.
  • MDB Mandatory Data Byte
  • the value of the high-order three bits of MDB [7:5] is 3'b000; the value of the low-order five bits of MDB [4:0] is 5'h01; then the MDB value is 0x01, and this MBD value is used to indicate the slave
  • the PCIE device sends a data packet to the device management unit.
  • the Data field is used to send data packets.
  • Figure 1A is a schematic diagram of a computing device deploying PCIE devices provided by an embodiment of the present application
  • Figure 1B is a schematic structural diagram of a PCIE network card provided by an embodiment of the present application.
  • FIG. 2A is a schematic diagram of the I3C direct writing frame format provided by the embodiment of the present application.
  • Figure 2B is a schematic diagram of the I3C direct reading frame format provided by the embodiment of the present application.
  • Figure 3 is a schematic flowchart of the method for the device management unit to send NC-SI command messages to the PCIE network card based on I3C direct writing provided by the embodiment of the present application;
  • Figure 4 is a schematic diagram of the NC-SI command message format provided by the embodiment of the present application.
  • FIG. 5 is a schematic diagram of the format of the Enable Channel command message provided by the embodiment of this application.
  • Figure 6 is a schematic flowchart of the method for the PCIE network card provided by the embodiment of the present application to send an NC-SI response message to the device management unit based on direct I3C reading;
  • Figure 7 is a schematic diagram of the NC-SI response message format provided by the embodiment of the present application.
  • Figure 8 is a schematic diagram of the format of the Enable Channel response message provided by the embodiment of this application.
  • Figure 9 is a schematic flowchart of the method for the device management unit to send NC-SI data packets to the PCIE network card through I3C direct writing provided by the embodiment of the present application;
  • Figure 10 is a schematic diagram of the NC-SI data message format provided by the embodiment of the present application.
  • FIG 11 is a schematic diagram of the Mandatory Data Byte data format provided by the embodiment of this application.
  • FIG. 12 is a schematic diagram of the I3C interrupt communication frame format provided by the embodiment of the present application.
  • Figure 13 is a schematic flowchart of a method for the PCIE network card to send an NC-SI data message to the device management unit through the I3C interrupt mechanism provided by the embodiment of the present application.
  • first and second in the embodiments of this application do not have logical or temporal dependencies, nor do they limit the number or execution order. It should also be understood that, although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another.
  • the term "at least one” means one or more, and in the embodiments of this application, the term “multiple” means two or more.
  • the term “if” may be interpreted as “when” or “upon” or “in response to determining” or “in response to detecting.”
  • the phrase “if it is determined" or “if [stated condition or event] is detected” may be interpreted as “when it is determined" or “in response to the determination" or “On detection of [stated condition or event]” or “In response to detection of [stated condition or event]”.
  • N-SI Network Controller Sideband Interface
  • DMTF Distributed Management Task Force
  • Equipment management unit performs component management and asset management functions in the computer system, such as power on and off control, fan speed regulation, electronic label management, etc.
  • Different server manufacturers have different names for the device management unit.
  • the device management unit can be a baseboard management controller. (Baseboard Management Controller, BMC), integrated remote management iLO (Integrated Lights-Out, iLO), and/or, integrated Dell Remote Access Controller (Integrated Dell Remote Access Controller, iDRAC).
  • BMC Baseboard Management Controller
  • iLO Integrated Lights-Out
  • iDRAC integrated Dell Remote Access Controller
  • I2C I2C bus, two-wire synchronous serial bus, master-slave communication mechanism, using clock line (Serial Clock, SCL) and data line (Serial Data, SDA) for communication, supporting multiple master devices and slave devices sharing the bus connection , distinguish nodes by physical address.
  • SCL Serial Clock
  • SDA Serial Data
  • I3C bus is an improved version of I2C bus. It uses clock line (SCL) and data line (SDA) for communication and is downward compatible with I2C. Compared with I2C, I3C data rate has been greatly improved, supports dynamic address allocation to support common bus connection of multiple nodes with the same physical address, and supports interrupt mechanism to support slave nodes actively sending data to the master node.
  • SCL clock line
  • SDA data line
  • an embodiment of the present application provides a schematic diagram of a computing device deploying a PCIE device.
  • the computing device is an electronic device with a PCIE interface.
  • the computing device can be a server, a desktop computer, a user equipment (UE), a mobile phone, a tablet, etc.; it can also be a data transfer device, such as a router, repeater, bridge or switch wait.
  • the PCIE device may be a network card with a PCIE interface. For the convenience of description, the following description takes the PCIE network card as an example.
  • FIG. 1B is a schematic structural diagram of a PCIE network card provided in this embodiment. 1A and 1B, the computing device 100 includes a motherboard 110 on which a device management unit 120, a processor 130 and a PCIE interface connector 140 are provided.
  • the PCIE interface connector 140 may be a PCIE slot.
  • the device management unit 120 can be a baseboard management controller (Baseboard Management Controller, BMC), an integrated remote management iLO (Integrated Lights-Out, iLO) or an integrated Dell remote management controller (Integrated Dell Remote Access Controller, iDRAC). ).
  • BMC Baseboard Management Controller
  • iLO Integrated Lights-Out
  • iDRAC Integrated Dell Remote Access Controller
  • the PCIE network card 200 includes a body 210, which may be a circuit board.
  • the body 210 is provided with a chip 220 and a PCIE interface connector 230; the PCIE interface connector 230 is located at the edge of the body 210; the PCIE interface connector 230 includes a plurality of gold fingers 231; the gold fingers 231 of the PCIE 230 connector and the chip 220 Electrical connection.
  • the PCIE interface connector 140 of the motherboard 110 is plugged into the PCIE interface connector 230 of the PCIE network card 200 .
  • the specific implementation is that the golden finger on the body 210 of the PCIE network card is inserted into the PCIE slot on the motherboard 110, so that the PCIE network card 200 is electrically connected to the motherboard 110 to realize signal transmission.
  • the signal definition of PCIE interface connector 230 includes the interface definition of I2C (Inter-Integrated Circuit); and I3C (Improved Inter Integrated Circuit) and I2C are compatible in terms of physical signals, and both Use two physical signal lines, SCL and SDA, for communication.
  • the device management unit 120 and the PCIE network card 200 can use the I2C channel to run I3C protocol communication to form an I3C interface. Therefore, the PCIE interface connector 230 of the PCIE network card 200 can be compatible with the I3C interface.
  • the computing device 100 is connected to the PCIE network card 200 through a PCIE interface.
  • the PCIE interface may be a business interface, such as using a PCIE network card to transmit business data for a business system of the computing device 100, such as a CPU system or an OS system.
  • the device management unit 120 in the computing device 100 interfaces with the I3C interface.
  • the I3C interface is an out-of-band interface and is used by the PCIE network card 200 to transmit management data to the device management unit 120, such as a BMC.
  • the PCIE network card 200 provides an I3C interface and supports connection and communication with the device management unit 120 through the I3C interface.
  • the device management unit 120 is connected to the PCIE network card 200 through the I3C interface.
  • the device management unit 120 supports NC-SI sideband communications.
  • the PCIE network card 200 and the device management unit 120 support the transmission of NC-SI information through the I3C interface to realize NC-SI sideband communication.
  • the device management unit 120 is the master device on the I3C bus
  • the PCIE network card 200 is the slave device on the I3C bus.
  • this embodiment provides a method for NC-SI sideband communication between the device management unit and the PCIE network card.
  • the NC-SI sideband communication data includes NC-SI control messages and NC-SI data messages.
  • the NC-SI control message includes an NC-SI command message and an NC-SI response message;
  • the NC-SI command message is used by the device management unit to manage the PCIE network card.
  • the management of the PCIE network card includes querying and configuring the configuration. function, initialization, etc.; the response message is used by the PCIE network card to feedback the management results to the device management unit; such as whether the configuration is successful.
  • Data packets are used to transmit management data between the device management unit 120 and the external network.
  • the I3C specification is extended and reserved extension words in the I3C specification are used to define NC-SI sideband communication.
  • the I3C Directed CCC field represents the I3C direct public command code.
  • different command codes are used to indicate different communication commands; the direct public command code can indicate different types of communication between the master device and the specified slave device.
  • the I3C specification defines some reserved extended command codes, with a value range of 0xE0-0xFE, for use as manufacturer extensions.
  • the I3C direct public command code reserved extended command code is used to define the transmission of control data of NC-SI sideband communication.
  • I3C direct public command code commands include I3C direct reading and I3C direct writing.
  • the communication between the device management unit and the NC-SI control message of the PCIE network card includes the device management unit 120 using I3C direct writing to send the NC-SI command message to the PCIE network card 200, and the PCIE network card 200 using I3C direct reading to the device management unit 120 sends the response message of the above NC-SI command.
  • the I3C directly written frame format used in the NC-SI command message sent by the device management unit 120 to the PCIE network card 200 is shown in Figure 2A; the response to the NC-SI command sent by the PCIE network card device 200 to the management module 120
  • the frame format of the I3C direct reading used in the message is shown in Figure 2B. It can be understood that the above frame format may be a set of command timings for communication between the device management unit 120 and the PCIE network card 200 .
  • the description of the frame format of the I3C direct write command and the frame format of the I3C direct read is shown in Table 1.
  • this embodiment provides a method for the device management unit to send an NC-SI command message to the PCIE network card.
  • the method flow is shown in Figure 3.
  • the device management unit 120 sends the startup signal S to the PCIE network card 200.
  • the device management unit 120 initiates START, indicating that communication with the PCIE network card 200 can be started.
  • the device management unit 120 sends the I3C broadcast address and write signal W to the PCIE network card 200.
  • the device management unit 120 before sending the I3C direct public command code command, the device management unit 120 sends the broadcast address (7'h7E) as the I3C reserved address and Read/Write is set to 0 (1'b0). Wait for the response confirmation signal ACK from the PCIE network card 200.
  • the PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK.
  • the PCIE network card 200 may respond to the device management unit 120 with a confirmation signal ACK.
  • the device management unit 120 sends the direct public command code indicating the transmission of the NC-SI control message and the check digit of the direct public command code to the PCIE network card 200.
  • any command code is selected from the reserved extended command codes 0xE0-0xFE of the direct public command code as the command code indicating the transmission of the control message.
  • 0xF0 is selected as the command code indicating the transmission of control packets.
  • the direct public command code indicates that the message to be sent is an NC-SI command message for the device management unit 120 to manage the PCIE network card 200. The checksum of the command is sent at the same time as the direct command code.
  • the device management unit 120 manages the PCIE 200 device and can configure the PCIE 200 device for the device management unit 120 or query information from the PCIE 200 device.
  • the device management unit 120 sends the repeated start signal Sr to the PCIE network card 200.
  • the device management unit 120 initiates Repeated START to continue communication with the PCIE network card 200.
  • the device management unit 120 sends the address of the PCIE network card 200 and the write signal W to the PCIE network card 200.
  • the device management unit 120 sends the PCIE network card 200 address (7bit) and Read/Write is set to 0 (1’b0), indicating that the NC-SI command message is about to be sent to the PCIE network card 200. Wait for the response confirmation signal ACK from the PCIE network card 200.
  • the PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK.
  • the PCIE network card 200 may automatically reply to the device management unit 120 with a response confirmation signal ACK.
  • the device management unit 120 sends the NC-SI command message and the check digit of the NC-SI command message to the PCIE network card 200.
  • the device management unit 120 sends the NC-SI command message Command Data (Data1, Data2,..., DataN) and the corresponding verification data Parity (Para1, DataN) to the PCIE network card 200 in byte units. Para2,...,ParaN) to realize the management of the PCIE network card, which management includes configuration or query.
  • the device management unit 120 configures the PCIE network card 200 through an NC-SI command message, where the format of the NC-SI command message is as shown in FIG. 4 .
  • Each NC-SI command message includes a packet header (NC-SI Control packet header), payload data (payload) and checksum data (checksum).
  • the payload data is variable in length depending on the command.
  • the description of the command message format is shown in Table 2.
  • the NC-SI commands used by the device management unit 120 to configure the PCIE network card 200 include but are not limited to Select Package, Clear Initial State or Enable Channel.
  • This embodiment uses the NC-SI command Enable Channel as an example to describe the specific format of the command.
  • the control message type of the NC-SI command Enable Channel is 0x03.
  • the Enable Channel does not have payload data, so the 12-bit value of Payload Length is 0x000.
  • the sender of the NC-SI command can use a cumulative sum algorithm to generate the check data.
  • the cumulative check value of the NC-SI command Enable Channel is 0xFFFFFFFA.
  • the command format of the Enable Channel is shown in Figure 5.
  • the total length of the command is 20 bytes, including a 16-byte header and 4-byte check data.
  • the device management unit 120 sends the above command to the PCIE network card 200 in byte units 20 times.
  • the device management unit 120 sends the end signal P to the PCIE network card 200.
  • the device management unit 120 After the device management unit 120 completes sending the NC-SI command message, it sends a completion signal P to the PCIE network card 200 to end the current sending operation of the NC-SI command message.
  • the PCIE network card 200 After receiving the NC-SI command message sent by the device management unit 120, the PCIE network card 200 parses the command message and completes the NC-SI channel enabling configuration according to the command. Then the PCIE network card 200 generates an NC-SI response message and sends the response message to the device management unit 120. The response message is used to indicate the configuration result, such as whether the configuration is successful.
  • the PCIE network card 200 receives the NC-SI command message sent by the device management unit 120 and parses the command message, it first accumulates and checks the command message; for example, Enable Channel
  • the command format is as shown in Figure 5. Each data in the command is accumulated. When the sum is 0, it indicates that the data passes the verification.
  • the NC-SI command that passes the verification can be used to configure the PCIE network card 200.
  • this embodiment Based on the frame format directly read by I3C shown in Figure 2B, this embodiment provides a method for the PCIE network card to send an NC-SI response message to the device management unit. The method flow is shown in Figure 6.
  • the device management unit 120 sends the startup signal S to the PCIE network card 200.
  • the device management unit 120 initiates START, indicating that communication with the PCIE network card 200 can be started.
  • the device management unit 120 sends the I3C broadcast address and the write W signal to the PCIE network card 200.
  • the device management unit 120 before sending the I3C direct public command code command, the device management unit 120 sends the I3C broadcast address (7'h7E) as the reserved address and Read/Write position 0 (1'b0). Waiting for ACK from PCIE network card 200.
  • the PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK.
  • the PCIE network card 200 can automatically reply an ACK signal to the device management unit 120 .
  • the device management unit 120 sends the direct public command code indicating the transmission of the control message and the check digit of the direct public command code to the PCIE network card 200.
  • any command code is selected from the reserved extended command codes 0xE0-0xFE of the direct public command code as the command code indicating the transmission of the control message. For example, select 0xF0 as the command code for control message transmission.
  • the direct public command code is used to indicate that the message to be sent is an NC-SI response message sent by the PCIE network card 200 to the device management unit 120. arts.
  • the check digit Par of the direct public command code is also sent.
  • the device management unit 120 sends the repeated start signal Sr to the PCIE network card 200.
  • the device management unit 120 initiates Repeated START to continue communication with the PCIE network card 200.
  • the device management unit 120 sends the PCIE network card 200 address and the read signal R to the PCIE network card 200.
  • the device management unit 120 sends the PCIE network card 200 address (7bit) and Read/Write position 1 (1’b1), instructing the PCIE network card 200 to send a response message to the device management unit 120. Wait for the response confirmation signal ACK from the PCIE network card 200.
  • the PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK.
  • the PCIE network card 200 confirms receipt of its own address, it can automatically reply an ACK signal to the device management unit 120 .
  • the PCIE network card 200 sends the NC-SI response message and the conversion bit to the device management unit 120.
  • the PCIE network card 200 sends the NC-SI response message Respouse Data (Data1, Data2,..., DataN) to the device management unit 120 in units of bytes and continues the conversion bit after each data. Transition (T1, T2,...,TN) to respond to the management of PCIE network cards.
  • the conversion bit T is used to indicate whether the read data has been sent. For example, if the transmission conversion bits T1, T2,..., TN-1 have a value of 1, it means that the data has not been sent completely; if TN has a value of 0, it means that the data has been sent.
  • the message data format in which the PCIE network card 200 responds to the NC-SI command of the device management unit 120 is as shown in FIG. 7 .
  • the description of each field in the message data format is shown in Table 3.
  • each NC-SI response message includes a packet header (NC-SI Control packet header), payload data (payload) and checksum data (checksum), where the payload data is variable in length depending on the command.
  • NC-SI Control packet header NCP Control packet header
  • payload payload
  • checksum checksum data
  • NC-SI command is Select Package, Clear Initial State or Enable Channel
  • the corresponding NC-SI response is Select Package Response, Clear Initial State Response or Enable Channel Response.
  • This embodiment uses the response to the Enable Channel command as an example to illustrate the response format of NC-SI.
  • control packet identification Control Packet Type changes to 0x83.
  • Set the command sequence ID IID of this command to 0x01; set the channel ID Channel ID to 0x01.
  • the response code and reason code of the Enable Channel response message are used as the payload data.
  • the 12-bit value of Payload Length is 0x004.
  • the response code value is 0x0000, indicating that the configuration is completed.
  • the value of the reason code is 0x0000, which means there is no error in the configuration.
  • the sender of the NC-SI command can use a cumulative sum algorithm to generate the check data.
  • the cumulative check value of the NC-SI command Enable Channel is 0xFFFFFF7A.
  • the NC-SI response message of the Enable Channel Response is shown in Figure 8.
  • the total length of the Enable Channel response message is 24 bytes, including a 16-byte header, a 4-byte response code and reason code, and a 4-byte verification data.
  • the PCIE network card 200 sends the above response to the device management unit 120 in byte units 24 times.
  • the device management unit 120 After determining that the data transmission is completed, the device management unit 120 sends the end signal P to the PCIE network card 200. Initiate STOP on the device management unit 120 to end the current sending operation of the NC-SI response message.
  • the device management unit 120 After receiving the NC-SI response message sent by the PCIE network card 200, the device management unit 120 parses the response message to obtain the configuration result, such as whether the configuration is successful.
  • the device management unit 120 After receiving the NC-SI response message sent by the PCIE network card 200 and parsing the response message, the device management unit 120 first accumulates and checks the response message; for example, Enable Channel The response format of the command is as shown in Figure 8. The command Each data in is accumulated. If the accumulated sum is 0, it indicates that the response message passes the verification. The device management unit 120 may obtain the configuration result according to the response message and determine whether the configuration of the PCIE network card 200 is completed.
  • the device management unit 120 when the device management unit 120 detects that the conversion bit T changes to a low level, the device management unit 120 sends an end signal to the PCIE network card 200 to end the sending of the NC-SI response message this time. operate.
  • NC-SI control messages includes the transmission of NC-SI command messages and the transmission of NC-SI response messages. Therefore, the above-mentioned device management unit 120 sends the NC-SI command message to the PCIE network card 200 and The NC-SI response message sent by the PCIE network card 200 to the device management unit 120 belongs to a complete NC-SI control message communication process between the device management unit 120 and the PCIE network card.
  • the device management unit 120 After the device management unit 120 completes the configuration of the PCIE network card 200, the device management unit can communicate with the external network through data packets (NC-SI Data) through the PCIE network card.
  • N-SI Data data packets
  • the device management unit 120 sends the NC-SI data message to the PCIE network card 200 through I3C direct writing.
  • the specific implementation is to extend the I3C specification, and the device management unit 120 uses the reserved extended command code definition of the I3C direct public command code to send the NC-SI sideband communication data message to the PCIE network card 200.
  • this embodiment provides a method for a device management unit to send a data message to a PCIE network card.
  • the method flow is shown in Figure 9.
  • the device management unit 120 sends the startup signal S to the PCIE network card 200.
  • the device management unit 120 initiates START, indicating that communication with the PCIE network card 200 can be started.
  • the device management unit 120 sends the I3C broadcast address and write signal W to the PCIE network card 200.
  • the device management unit 120 before sending the I3C direct public command code command, the device management unit 120 sends the broadcast address (7'h7E) as the I3C reserved address and Read/Write is set to 0 (1'b0). Wait for the response confirmation signal ACK from the PCIE network card 200.
  • PCIE network card 200 responds to the device management unit 120 with an acknowledgment signal ACK.
  • the PCIE network card 200 may automatically respond to the device management unit 120 with a confirmation signal ACK.
  • the device management unit 120 sends the direct public command code indicating the transmission of the transmission data packet and the check digit of the direct public command code to the PCIE network card 200.
  • any command code is selected from the reserved extended command codes 0xE0-0xFE of the direct public command code as the command code for transmitting the control message.
  • This command code is different from the command code for transmitting control messages.
  • 0xF1 is selected as the command code for control message transmission.
  • the direct public command code indicates that the message to be sent is an NC-SI data message sent by the device management unit to the PCIE network card 200.
  • This data packet is a data packet that the PCIE network card subsequently transparently transmits to the external network.
  • the check word Par of the direct common command code is sent.
  • the device management unit 120 sends the repeated start signal Sr to the PCIE network card 200.
  • the device management unit 120 initiates Repeated START to continue communication with the PCIE network card 200.
  • the device management unit 120 sends the PCIE network card 200 address and the write signal W to the PCIE network card 200.
  • the device management unit 120 sends the PCIE network card 200 address (7bit) and Read/Write set to 1 (1’b0), indicating that the NC-SI data message is about to be sent to the PCIE network card 200. Wait for the response confirmation signal ACK from the PCIE network card 200.
  • the PCIE network card 200 responds to the device management unit 120 with a confirmation signal.
  • the PCIE network card 200 confirms receipt of its own address, it may automatically reply to the device management unit 120 with a response confirmation signal ACK.
  • the device management unit 120 sends the data packet and the check bit of the data packet to the PCIE network card 200.
  • the device management unit 120 sends the data message NC-SI Data (Data1, Data2,..., DataN) and the check bit corresponding to each byte of data to the PCIE network card 200 in units of bytes. Par(Par1, Par2,...,ParN).
  • the NC-SI sideband communication data message is an Ethernet message
  • the data format is as shown in Figure 10.
  • the format description of the Ethernet message data is shown in Table 4.
  • the PCIE network card 200 After the PCIE network card 200 receives the I3C data, it obtains the Ethernet message, parses the Ethernet message to obtain the DMAC address, and transparently transmits the Ethernet message to the external network device based on the DMAC address.
  • the PCIE network card 200 can use the in-band interrupt mechanism of the I3C protocol to send a data message to the device management unit 120.
  • the data message is received by the PCIE network card 200 from the external network and forwarded to the device management unit 120. data message.
  • the specific implementation is to extend the I3C specification and use the Mandatory Data Byte (MDB) of the I3C protocol to reserve an extended interrupt group identifier (3'b000) and a reserved specific interrupt identifier value (5'h00– 5'h1F) to define the PCIE network card 200 to send the data message NC-SI Data to the device management unit 120, in which the format of the mandatory data byte (Mandatory Data Byte, MDB) of the I3C protocol is as shown in Figure 11.
  • MDB Mandatory Data Byte
  • MDB mandatory Data Byte
  • the device management unit 120 uses the I3C interrupt mechanism to receive the NC-SI sideband communication data message command frame format from the PCIE network card as shown in Figure 12.
  • the description of each field in this frame format is shown in Table 5. It can be understood that the frame format may be a set of command timings for communication between the device management unit 120 and the PCIE network card 200 .
  • this embodiment Based on the frame format of in-band interrupt communication as shown in Figure 12, this embodiment provides a method for a PCIE network card to send a data message to the device management unit. The method flow is shown in Figure 13.
  • the device management unit 120 responds to the interrupt request of the PCIE network card 200 and sends the start signal S.
  • the I3C protocol supports in-band interrupts. When the bus is idle, the slave device is allowed to initiate an interrupt request and actively transmit data to the slave device.
  • the device management unit 120 when the device management unit 120 communicates with the PCIE network card 200 based on the I3C protocol, the device management unit 120 acts as a master device on the I3C bus, and the PCIE network card 200 acts as a slave device on the I3C bus. After the PCIE network card 200 receives the message data from the external network, it actively sends an interrupt request to the master device to transmit the message data.
  • PCIE network card 200 sends the PCIE network card 200 address and the read signal R to the device management unit 120.
  • PCIE network card 200 sends its own address (7bit) and Read operation (1’b1). Wait for the ACK signal from the device management unit 120.
  • the device management unit 120 responds to the PCIE network card 200 with the acknowledgment signal ACK.
  • the device management unit 120 can automatically reply an ACK signal to the PCIE network card 200.
  • the PCIE network card 200 sends the mandatory data byte value indicating the transmission data message and the check bit of the mandatory data byte value to the device management unit 120.
  • the mandatory data byte value is used to define the command code for transmitting the NC-SI data message.
  • the forced data byte is set to 0x01. Indicates that the current interruption is that the PCIE network card 200 forwards Ethernet packets received from the external network.
  • the PCIE network card 200 sends the external data message Data and the conversion bit T to the device management unit 120.
  • the NC-SI sideband communication data message is an Ethernet message, and the data format is as shown in Figure 10.
  • the PCIE network card 200 sends the data message NC-SI Data (Data1, Data2,..., DataN) and the check bit corresponding to each byte of data to the device management unit 120 in units of bytes. T(T1, T2,...,TN).
  • the device management unit 120 sends an end signal to the PCIE network card 200.
  • the device management unit 120 initiates STOP to end the current reception operation of external Ethernet message data.

Abstract

Embodiments of the present application provide a computing device. The computing device comprises a device management unit and a PCIE device; the device management unit comprises an I3C interface; the PCIE device comprises an I3C interface, and the device management unit is connected to the PCIE device by means of the I3C interface; the device management unit and the PCIE device transmit NC-SI sideband communication data by means of the I3C interface, wherein the NC-SI sideband communication data comprises a data packet and/or a control packet, the data packet is used for the device management unit to communicate with an external network, and the control packet is used for the device management unit to manage the PCIE device. According to the computing device of the embodiments of the present application, NC-SI sideband communication is achieved by using the I3C interface, interface deployment of the computing device is simplified, and the costs of the computing device are reduced.

Description

一种计算设备a computing device
本申请要求于2022年08月31日提交国家知识产权局、申请号为202211056291.7、申请名称为“一种计算设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority to the Chinese patent application filed with the State Intellectual Property Office on August 31, 2022, with application number 202211056291.7 and the application title "A Computing Device", the entire content of which is incorporated into this application by reference.
技术领域Technical field
本申请涉及服务器领域,尤其涉及一种计算设备。The present application relates to the field of servers, and in particular to a computing device.
背景技术Background technique
现有的计算设备和数据中心中,越来越多地使用网络控制器中边带接口(Network Controller Sideband Interface,NC-SI)的边带通信功能来实现计算设备的设备管理平面的组网。设备管理单元利用网卡的NC-SI接口与外部网络进行通信。该NC-SI接口在物理上是简化媒体独立接口(Reduced Media Independent Interface,RMII),该NC-SI接口实际上是基于媒体独立接口传输(RMII Based Transport,RBT)NC-SI协议。在外设互连标准(Peripheral Component Interconnect Express,PCIE)标卡的接口信号定义中,没有包含NC-SI接口信号。PCIE设备,如网卡插在服务器中使用时,即使PCIE网卡上的芯片支持NC-SI接口,该PCIE网卡也不能直接通过NC-SI接口与服务器主板的设备管理单元连接通信。因此,不能支持NC-SI功能。一些计算设备厂家自行开发具有NC-SI接口连接器的PCIE网卡。在计算设备主板上也提供了NC-SI连接器。然后通过定制化线缆,实现服务器的设备管理单元与PCIE网卡的NC-SI边带通信,增加了部署成本。In existing computing equipment and data centers, the sideband communication function of the Network Controller Sideband Interface (NC-SI) in the network controller is increasingly used to realize the networking of the device management plane of the computing equipment. The device management unit uses the NC-SI interface of the network card to communicate with the external network. The NC-SI interface is physically a Reduced Media Independent Interface (RMII), and the NC-SI interface is actually based on the RMII Based Transport (RBT) NC-SI protocol. The NC-SI interface signal is not included in the interface signal definition of the Peripheral Component Interconnect Express (PCIE) standard card. When a PCIE device, such as a network card, is inserted into a server, even if the chip on the PCIE network card supports the NC-SI interface, the PCIE network card cannot directly communicate with the device management unit of the server motherboard through the NC-SI interface. Therefore, NC-SI functionality cannot be supported. Some computing equipment manufacturers develop their own PCIE network cards with NC-SI interface connectors. NC-SI connectors are also provided on computing device motherboards. Then, customized cables are used to implement NC-SI sideband communication between the server's device management unit and the PCIE network card, which increases deployment costs.
发明内容Contents of the invention
本申请实施例提供了一种计算设备、设备管理单元、PCIE设备和数据结构。可以有效降低设备管理单元与PCIE设备进行NC-SI边带通信的接口部署成本。Embodiments of the present application provide a computing device, a device management unit, a PCIE device and a data structure. It can effectively reduce the interface deployment cost for NC-SI sideband communication between the device management unit and the PCIE device.
第一方面,本申请实施例提供了一种计算设备。该计算设备包括设备管理单元和PCIE设备;设备管理单元包括I3C接口;PCIE设备包括I3C接口,设备管理单元和PCIE设备通过I3C接口连接;设备管理单元与该PCIE设备通过I3C接口传输NC-SI边带通信数据;其中,NC-SI边带通信数据包括数据报文和控制报文;数据报文用于设备管理单元与外部网络通信;控制报文用于设备管理单元管理PCIE设备。In a first aspect, embodiments of the present application provide a computing device. The computing device includes a device management unit and a PCIE device; the device management unit includes an I3C interface; the PCIE device includes an I3C interface, and the device management unit and the PCIE device are connected through the I3C interface; the device management unit and the PCIE device transmit NC-SI edges through the I3C interface With communication data; among them, NC-SI sideband communication data includes data packets and control packets; data packets are used for the device management unit to communicate with the external network; control packets are used for the device management unit to manage PCIE devices.
在一种实现方式中,设备管理单元管理PCIE设备包括设备管理单元配置PCIE设备,如配置通道以传输数据报文。In one implementation, the device management unit managing the PCIE device includes the device management unit configuring the PCIE device, such as configuring a channel to transmit data packets.
在一种实现方式中,设备管理单元管理PCIE设备包括设备管理单元查询PCIE设备,如查询PCIE设备的状态。In one implementation, the device management unit managing the PCIE device includes the device management unit querying the PCIE device, such as querying the status of the PCIE device.
在该技术方案中,计算设备的设备管理单元和PCIE设备均不需要设有传输NC-SI边带通信数据的NC-SI物理接口,设备管理单元和PCIE设备利用具有的I3C接口实现NC-SI边带通信。降低了计算设备实现NC-SI边带通信的成本。In this technical solution, the device management unit of the computing device and the PCIE device do not need to have an NC-SI physical interface for transmitting NC-SI sideband communication data. The device management unit and the PCIE device use the I3C interface they have to implement NC-SI. Sideband communications. The cost of implementing NC-SI sideband communications on computing devices is reduced.
在一种实现方式中,设备管理单元与PCIE设备通过I3C接口,基于I3C协议传输NC-SI边带通信数据。In one implementation, the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface.
在该实现方式中,在设备管理单元与PCIE网卡与之间采用I3C协议传输NC-SI边带通信数据。使得无论设备管理单元和PCIE设备是否具备NC-SI物理接口,都可以用于传输NC-SI边带通信数据,提高了计算设备中设备管理单元和PCIE设备使用的兼容性。In this implementation, the I3C protocol is used to transmit NC-SI sideband communication data between the device management unit and the PCIE network card. This makes it possible to transmit NC-SI sideband communication data regardless of whether the device management unit and the PCIE device have an NC-SI physical interface, thereby improving the compatibility of the device management unit and the PCIE device in the computing device.
在一种实现方式中,设备管理单元与PCIE设备通过I3C接口,基于I3C协议传输NC-SI边带通信数据,包括:设备管理单元与PCIE设备基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据;其 中,直接公共命令码用于指示设备管理单元与指定的PCIE设备通信。In one implementation, the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the device management unit and the PCIE device transmit NC-SI direct common command code commands based on the I3C protocol. Sideband communication data; its , the direct public command code is used to instruct the device management unit to communicate with the specified PCIE device.
不同的直接公共命令码可以指示主设备和指定从设备之间进行不同类型的通信。在该实现方式中,利用预定的直接公共命令码指示在设备管理单元和PCIE设备之间传输NC-SI边带通信数据。提高了设备管理单元和PCIE设备之间边带通信效率。Different direct public command codes can indicate different types of communication between the master device and the specified slave device. In this implementation, NC-SI sideband communication data is transmitted between the device management unit and the PCIE device using predetermined direct common command code instructions. Improved the efficiency of sideband communication between the device management unit and PCIE devices.
在一种实现方式中,直接公共命令码命令包括直接写入和直接读取;设备管理单元与PCIE设备基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据,包括:设备管理单元与PCIE设备基于直接写入的帧格式和直接读取的帧格式传输控制报文。In one implementation, the direct public command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: the device management unit Control messages are transmitted with the PCIE device based on the direct writing frame format and the direct reading frame format.
在一种可实现方式中,直接公共命令码命令包括直接写入;设备管理单元基于I3C协议的直接命令码命令与PCIE设备传输NC-SI边带通信数据,包括:设备管理单元基于直接写入的帧格式向PCIE设备发送数据报文;PCIE设备接收来自设备管理单元的数据报文。In an implementable manner, the direct public command code command includes direct writing; the device management unit transmits NC-SI sideband communication data with the PCIE device based on the direct command code command of the I3C protocol, including: the device management unit transmits NC-SI sideband communication data based on direct writing The frame format is used to send data packets to the PCIE device; the PCIE device receives data packets from the device management unit.
I3C总线上的主设备可以主动对从设备进行读写。在上述计算设备中,设备管理单元为I3C总线的主设备,PCIE设备为I3C总线的从设备,设备管理单元利用直接公共命令码命令中的直接写入可以实现向PCIE传输NC-SI边带通信数据;该NC-SI边带通信数据包括设备管理单元用于管理PCIE设备的NC-SI控制报文和设备管理单元向外部网络发送的NC-SI数据报文。The master device on the I3C bus can actively read and write from the slave device. In the above computing device, the device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus. The device management unit can realize the transmission of NC-SI sideband communication to PCIE by using direct writing in the direct public command code command. Data; the NC-SI sideband communication data includes NC-SI control messages used by the device management unit to manage PCIE devices and NC-SI data messages sent by the device management unit to the external network.
在一种实现方式中,直接写入的帧格式和直接读取的帧格式包括:设备管理单元向PCIE设备发送的自定义的直接公共命令码;In one implementation, the directly written frame format and the directly read frame format include: a customized direct public command code sent by the device management unit to the PCIE device;
其中,自定义的直接公共命令码用于指示传输控制报文或数据报文;自定义的直接公共命令码基于I3C协议中直接公共命令码的预留扩展命令码确定;PCIE设备接收来自设备管理单元的自定义的直接公共命令码。其中,预留扩展命令码的取值范围为0xE0-0xFE。Among them, the customized direct public command code is used to indicate the transmission of control messages or data messages; the customized direct public command code is determined based on the reserved extended command code of the direct public command code in the I3C protocol; the PCIE device receives data from the device management The unit's custom direct public command code. Among them, the value range of reserved extended command codes is 0xE0-0xFE.
在传输控制报文时,在直接写入的帧格式中,自定义的直接公共命令码用于指示从设备管理单元向PCIE设备传输控制报文;在直接读取的帧格式中,自定义的直接公共命令码用于指示从PCIE设备向设备管理单元传输控制报文。When transmitting control messages, in the directly written frame format, the customized direct public command code is used to instruct the transmission of control messages from the device management unit to the PCIE device; in the directly read frame format, the customized The direct public command code is used to instruct the transmission of control messages from the PCIE device to the device management unit.
在传输数据报文时,在直接写入的帧格式中,自定义的直接公共命令码用于指示从设备管理单元向PCIE设备传输数据报文。When transmitting data packets, in the directly written frame format, the customized direct public command code is used to instruct the device management unit to transmit data packets to the PCIE device.
在一种实现方式中,用于指示传输控制报文的自定义的直接公共命令码与用于指示传输数据报文的自定义的直接公共命令码不同。In one implementation, the customized direct public command code used to instruct the transmission of the control message is different from the customized direct public command code used to instruct the transmission of the data message.
使用I3C直接公共命令码在规范中的预留扩展命令码定义NC-SI边带通信,拓宽了I3C规范在计算设备中的应用场景,并且可以选用不同的自定义命令码指示NC-SI边带通信具体类型,提高了规范使用的灵活性。Using the reserved extended command code of the I3C direct public command code in the specification to define NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices, and different custom command codes can be selected to indicate NC-SI sideband The specific type of communication increases the flexibility of specification usage.
在一种实现方式中,设备管理单元与PCIE设备通过I3C接口传输NC-SI边带通信数据,包括:PCIE设备通过I3C接口,基于I3C协议带内中断机制向设备管理单元发送数据报文;设备管理单元接收数据报文。In one implementation, the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including: the PCIE device sends a data message to the device management unit based on the I3C protocol in-band interrupt mechanism through the I3C interface; the device The management unit receives the data message.
I3C总线上的从设备可以利用I3C协议中的中断机制主动请求向主设备传输数据。在该计算设备中,设备管理单元与PCIE设备通过I3C接口基于I3C协议通信,设备管理单元为I3C总线的主设备,PCIE设备为I3C总线的从设备,利用上述中断机制,PCIE设备在收到外部网络的数据报文后,可以及时主动向设备管理单元传输数据报文,提高通信效率。The slave device on the I3C bus can actively request to transmit data to the master device by using the interrupt mechanism in the I3C protocol. In this computing device, the device management unit communicates with the PCIE device through the I3C interface based on the I3C protocol. The device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus. Using the above interrupt mechanism, the PCIE device receives external After receiving the data packets from the network, the data packets can be actively transmitted to the device management unit in a timely manner to improve communication efficiency.
在一种实现方式中,PCIE设备通过I3C接口,基于I3C协议带内中断机制向设备管理单元发送数据报文之前,PCIE设备向设备管理单元发送自定义的强制数据字节值;其中,自定义的强制数据字节值用于指示从PCIE设备向设备管理单元传输数据报文;该自定义的强制数据字节值基于I3C协议中强制数据字节的预留扩展值确定;设备管理单元接收来自PCIE设备的自定义的强制数据字节值。其中,强制数据字节的高三位MDB[7:5]取值为3’b000;强制数据字节的低五位MDB[4:0]取值范围为5’h00–5’h1F。 In one implementation, before the PCIE device sends a data message to the device management unit through the I3C interface based on the I3C protocol in-band interrupt mechanism, the PCIE device sends a custom mandatory data byte value to the device management unit; where, the custom The mandatory data byte value is used to indicate the transmission of data packets from the PCIE device to the device management unit; the custom mandatory data byte value is determined based on the reserved extension value of the mandatory data byte in the I3C protocol; the device management unit receives from Custom mandatory data byte value for PCIE devices. Among them, the value of the high-order three bits MDB[7:5] of the forced data byte is 3'b000; the value range of the low-order five bits MDB[4:0] of the forced data byte is 5'h00–5'h1F.
在该实现方式中,使用I3C强制数据字节在规范中的预留扩展值来定义NC-SI边带通信拓宽了I3C协议规范在计算设备中的应用场景。并且可以选用不同的自定义命令码指示NC-SI边带通信具体类型,提高了规范使用的灵活性。In this implementation, using the reserved extension value of the I3C mandatory data byte in the specification to define NC-SI sideband communication broadens the application scenarios of the I3C protocol specification in computing devices. And different custom command codes can be selected to indicate the specific type of NC-SI sideband communication, which improves the flexibility of standard use.
在一种实现方式中,控制报文包括命令报文和响应报文;设备管理单元与PCIE设备基于直接写入帧格式和直接读取帧格式传输控制报文,包括:设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于管理PCIE设备;PCIE设备接收来自设备管理单元的命令报文;PCIE设备基于直接读取帧格式的数据字段向设备管理单元发送响应报文;设备管理单元接收来自PCIE设备的响应报文;响应报文用于指示管理结果。In one implementation, the control message includes a command message and a response message; the device management unit and the PCIE device transmit the control message based on the direct write frame format and the direct read frame format, including: the device management unit transmits the control message based on the direct write frame format and the direct read frame format. The data field in the incoming frame format sends a command message to the PCIE device; the command message is used to manage the PCIE device; the PCIE device receives the command message from the device management unit; the PCIE device sends the command message to the device management unit based on directly reading the data field in the frame format. Send a response message; the device management unit receives the response message from the PCIE device; the response message is used to indicate the management result.
在一种实现方式中,设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于配置PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示配置结果。In one implementation, the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to configure the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message The text is used to indicate the configuration results.
在一种实现方式中,设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于查询PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示查询结果。In one implementation, the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to query the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message Text is used to indicate query results.
在一种实现方式中,设备管理单元为设备管理器。In one implementation, the device management unit is a device manager.
在一种实现方式中,PCIE设备为PCIE网卡。In an implementation manner, the PCIE device is a PCIE network card.
第二方面,本申请实施例提供了一种设备管理单元,设备管理单元包括I3C接口;设备管理单元与PCIE设备通过I3C接口传输NC-SI边带通信数据;其中,NC-SI边带通信数据包括数据报文和控制报文,数据报文用于设备管理单元与外部网络通信;控制报文用于设备管理单元管理PCIE设备。In the second aspect, embodiments of the present application provide a device management unit. The device management unit includes an I3C interface; the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface; wherein, the NC-SI sideband communication data It includes data packets and control packets. Data packets are used for the device management unit to communicate with the external network; control packets are used for the device management unit to manage PCIE devices.
在一种实现方式中,设备管理单元管理PCIE设备包括设备管理单元配置PCIE设备,如配置通道以传输数据报文。In one implementation, the device management unit managing the PCIE device includes the device management unit configuring the PCIE device, such as configuring a channel to transmit data packets.
在一种实现方式中,设备管理单元管理PCIE设备包括设备管理单元查询PCIE设备,如查询PCIE设备的状态。In one implementation, the device management unit managing the PCIE device includes the device management unit querying the PCIE device, such as querying the status of the PCIE device.
在该技术方案中,设备管理单元不需要设有传输NC-SI边带通信数据的NC-SI物理接口,利用I3C接口可以实现与PCIE设备的NC-SI边带通信。降低了设备管理单元实现NC-SI边带通信的成本。In this technical solution, the device management unit does not need to have an NC-SI physical interface for transmitting NC-SI sideband communication data. The I3C interface can be used to realize NC-SI sideband communication with PCIE devices. The cost of implementing NC-SI sideband communication for the device management unit is reduced.
在一种实现方式中,设备管理单元与PCIE设备通过I3C接口传输NC-SI边带通信的数据,包括:设备管理单元与PCIE设备通过I3C接口,基于I3C协议传输NC-SI边带通信数据。In one implementation, the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including: the device management unit and the PCIE device transmit the NC-SI sideband communication data through the I3C interface based on the I3C protocol.
在该实现方式中,在设备管理单元与PCIE设备之间采用I3C协议传输NC-SI边带通信数据。使得无论设备管理单元是否具备NC-SI接口,都可以与PCIE设备传输NC-SI边带通信数据,提高了设备管理单元使用的兼容性。In this implementation, the I3C protocol is used to transmit NC-SI sideband communication data between the device management unit and the PCIE device. This enables the device management unit to transmit NC-SI sideband communication data with the PCIE device regardless of whether it has an NC-SI interface, thereby improving the compatibility of the device management unit.
在一种实现方式中,设备管理单元与PCIE设备通过I3C接口,基于I3C协议传输NC-SI边带通信数据,包括:设备管理单元与PCIE设备基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据;其中,直接公共命令码命令用于指示设备管理单元与指定的PCIE设备通信。In one implementation, the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the device management unit and the PCIE device transmit NC-SI direct common command code commands based on the I3C protocol. Sideband communication data; among them, the direct public command code command is used to instruct the device management unit to communicate with the specified PCIE device.
不同的直接公共命令码可以指示主设备和指定从设备之间进行不同类型的通信。在该实现方式中,利用指定的直接公共命令码指示在设备管理单元和PCIE设备之间传输NC-SI边带通信数据。提高了设备管理单元和PCIE设备之间边带通信效率。Different direct public command codes can indicate different types of communication between the master device and the specified slave device. In this implementation, NC-SI sideband communication data is transmitted between the device management unit and the PCIE device using designated direct common command code instructions. Improved the efficiency of sideband communication between the device management unit and PCIE devices.
在一种实现方式中,直接公共命令码命令包括直接写入和直接读取;设备管理单元与PCIE设备基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据,包括:设备管理单元与PCIE设备基于直接写入的帧格式和直接读取的帧格式传输控制报文。In one implementation, the direct public command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: the device management unit Control messages are transmitted with the PCIE device based on the direct writing frame format and the direct reading frame format.
在一种实现方式中,直接公共命令码命令包括直接写入和直接读取;设备管理单元与PCIE设备基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据,包括:设备管理单元基于直接写入的帧格式向PCIE设备发送数据报文。In one implementation, the direct public command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: the device management unit Send data packets to the PCIE device based on the directly written frame format.
在该实现方式中,I3C总线上的主设备可以主动对从设备进行读写。在上述计算设备中,设备管理单 元为I3C总线的主设备,PCIE设备为I3C总线的从设备,设备管理单元利用直接公共命令码命令中的直接写入可以实现向PCIE传输NC-SI边带通信数据;该NC-SI边带通信数据包括设备管理单元用于管理PCIE设备的NC-SI控制报文和设备单元向外部网络发送的NC-SI数据报文。In this implementation, the master device on the I3C bus can actively read and write to the slave device. In the computing device described above, the device management sheet The device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus. The device management unit can realize the transmission of NC-SI sideband communication data to PCIE by using direct writing in the direct public command code command; the NC-SI sideband Communication data includes NC-SI control messages used by the device management unit to manage PCIE devices and NC-SI data messages sent by the device unit to the external network.
在一种实现方式中,直接写入的帧格式和直接读取的帧格式包括:设备管理单元向PCIE设备发送的自定义的直接公共命令码;其中,自定义的直接公共命令码用于指示传输控制报文或数据报文;自定义的直接公共命令码基于I3C协议中直接公共命令码的预留扩展命令码确定。预留扩展命令码的取值范围为0xE0-0xFE。In one implementation, the directly written frame format and the directly read frame format include: a customized direct public command code sent by the device management unit to the PCIE device; wherein the customized direct public command code is used to indicate Transmit control messages or data messages; the customized direct public command code is determined based on the reserved extended command code of the direct public command code in the I3C protocol. The value range of reserved extended command codes is 0xE0-0xFE.
在一种实现方式中,用于指示传输控制报文的自定义的直接公共命令码与用于指示传输数据报文的自定义的直接公共命令码不同。In one implementation, the customized direct public command code used to instruct the transmission of the control message is different from the customized direct public command code used to instruct the transmission of the data message.
使用I3C直接公共命令码在规范中的预留扩展命令码来定义NC-SI边带通信,拓宽了I3C规范在计算设备中的应用场景。并且可以选用不同的自定义命令码指示NC-SI边带通信具体类型,提高了规范使用的灵活性。Using the reserved extended command code of the I3C direct public command code in the specification to define NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices. And different custom command codes can be selected to indicate the specific type of NC-SI sideband communication, which improves the flexibility of standard use.
在一种实现方式中,设备管理单元与PCIE设备通过I3C接口传输NC-SI边带通信数据,包括:设备管理单元通过I3C接口,基于I3C协议带内中断机制接收PCIE设备发送的数据报文。In one implementation, the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including: the device management unit receives the data message sent by the PCIE device through the I3C interface and based on the I3C protocol in-band interrupt mechanism.
I3C总线上的从设备可以利用I3C协议中的中断机制主动请求向主设备传输数据。在该计算设备中,设备管理单元与PCIE设备通过I3C接口基于I3C协议通信,设备管理单元为I3C总线的主设备,PCIE设备为I3C总线的从设备,利用上述中断机制,PCIE设备在收到外部网络的数据报文后,可以及时主动向设备管理单元传输数据报文。提高设备管理单元与外部网络的通信效率。The slave device on the I3C bus can actively request to transmit data to the master device by using the interrupt mechanism in the I3C protocol. In this computing device, the device management unit communicates with the PCIE device through the I3C interface based on the I3C protocol. The device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus. Using the above interrupt mechanism, the PCIE device receives external After receiving the data packet from the network, the data packet can be actively transmitted to the device management unit in a timely manner. Improve the communication efficiency between the device management unit and external networks.
在一种实现方式中,设备管理单元通过I3C接口,基于I3C协议带内中断机制接收PCIE设备发送的数据报文之前,包括:设备管理单元接收PCIE设备发送的自定义的强制数据字节值;其中,自定义的强制数据字节值用于指示传输数据报文;自定义的强制数据字节值基于I3C协议中强制数据字节的预留扩展值确定。其中,强制数据字节的高三位MDB[7:5]取值3’b000;强制数据字节的低五位MDB[4:0]取值范围为5’h00–5’h1F。In one implementation, before the device management unit receives the data message sent by the PCIE device through the I3C interface based on the I3C protocol in-band interrupt mechanism, the device management unit includes: the device management unit receives a custom mandatory data byte value sent by the PCIE device; Among them, the customized mandatory data byte value is used to indicate the transmission of data messages; the customized mandatory data byte value is determined based on the reserved extension value of the mandatory data byte in the I3C protocol. Among them, the upper three bits MDB[7:5] of the forced data byte have a value of 3’b000; the lower five bits MDB[4:0] of the forced data byte have a value range of 5’h00–5’h1F.
使用I3C强制数据字节在规范中的预留扩展值定义NC-SI边带通信,拓宽了I3C规范在计算设备中的应用场景,并且可以选用不同的自定义命令码指示NC-SI边带通信具体类型,提高了规范使用的灵活性。Using the reserved extended value of the I3C mandatory data byte in the specification to define NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices, and different custom command codes can be used to indicate NC-SI sideband communication. Concrete types improve the flexibility of specification usage.
在一种实现方式中,控制报文包括命令报文和响应报文;设备管理单元与PCIE设备基于直接写入帧格式和直接读取帧格式传输控制报文,包括:设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于管理PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示管理结果。In one implementation, the control message includes a command message and a response message; the device management unit and the PCIE device transmit the control message based on the direct write frame format and the direct read frame format, including: the device management unit transmits the control message based on the direct write frame format and the direct read frame format. The data field in the incoming frame format sends a command message to the PCIE device; the command message is used to manage the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message is used to indicate the management result.
在一种实现方式中,设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于配置PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示配置结果。In one implementation, the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to configure the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message The text is used to indicate the configuration results.
在一种实现方式中,设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于查询PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示查询结果。In one implementation, the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to query the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message Text is used to indicate query results.
在一种实现方式中,设备管理单元为设备管理器。In one implementation, the device management unit is a device manager.
第三方面,本申请实施例提供了一种PCIE设备,PCIE设备包括I3C接口;PCIE设备与设备管理单元通过I3C接口传输NC-SI边带通信数据;其中,NC-SI边带通信数据包括数据报文和控制报文,数据报文为设备管理单元与外部网络通信的数据,控制报文用于设备管理单元管理PCIE设备。In the third aspect, embodiments of the present application provide a PCIE device. The PCIE device includes an I3C interface; the PCIE device and the device management unit transmit NC-SI sideband communication data through the I3C interface; wherein the NC-SI sideband communication data includes data Messages and control messages, data messages are data used by the device management unit to communicate with the external network, and control messages are used by the device management unit to manage PCIE devices.
在一种实现方式中,设备管理单元管理PCIE设备包括设备管理单元配置PCIE设备,如为数据报文的传输配置通道。In one implementation, the device management unit managing the PCIE device includes the device management unit configuring the PCIE device, such as configuring a channel for transmission of data packets.
在一种实现方式中,设备管理单元管理PCIE设备包括设备管理单元查询PCIE设备,如查询PCIE设备的通道状态。在该技术方案中,PCIE设备不需要设有传输NC-SI边带通信数据的NC-SI物理接口,PCIE 设备利用自身具有的I3C接口与设备管理单元实现NC-SI边带通信,降低了PCIE设备实现NC-SI边带通信的成本。In one implementation, the device management unit managing the PCIE device includes the device management unit querying the PCIE device, such as querying the channel status of the PCIE device. In this technical solution, PCIE equipment does not need to have an NC-SI physical interface for transmitting NC-SI sideband communication data. PCIE The device uses its own I3C interface to implement NC-SI sideband communication with the device management unit, reducing the cost of PCIE equipment implementing NC-SI sideband communication.
在一种实现方式中,PCIE设备与设备管理单元通过I3C接口传输NC-SI边带通信数据,包括:PCIE设备与设备管理单元通过I3C接口,基于I3C协议传输NC-SI边带通信数据。In one implementation, the PCIE device and the device management unit transmit NC-SI sideband communication data through the I3C interface, including: the PCIE device and the device management unit transmit the NC-SI sideband communication data through the I3C interface based on the I3C protocol.
在一种实现方式中,PCIE设备与设备管理单元基于I3C协议传输NC-SI边带通信数据,包括:PCIE设备与设备管理单元基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据;其中,直接公共命令码命令用于指示设备管理单元与指定的PCIE设备通信。In one implementation, the PCIE device and the device management unit transmit the NC-SI sideband communication data based on the I3C protocol, including: the PCIE device and the device management unit transmit the NC-SI sideband communication data based on the direct common command code command of the I3C protocol. ; Among them, the direct public command code command is used to instruct the device management unit to communicate with the specified PCIE device.
不同的直接公共命令码可以指示主设备和指定从设备之间进行不同类型的通信。在该实现方式中,利用指定的直接公共命令码指示在设备管理单元和PCIE设备之间传输NC-SI边带通信数据,提高了设备管理单元和PCIE设备之间边带通信效率。Different direct public command codes can indicate different types of communication between the master device and the specified slave device. In this implementation, specified direct public command code instructions are used to transmit NC-SI sideband communication data between the device management unit and the PCIE device, thereby improving the sideband communication efficiency between the device management unit and the PCIE device.
在一种实现方式中,直接公共命令码命令包括直接写入和直接读取;PCIE设备与设备管理单元基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据,包括:PCIE设备与设备管理单元基于直接写入的帧格式和直接读取的帧格式传输控制报文。In one implementation, the direct public command code command includes direct writing and direct reading; the PCIE device and the device management unit transmit NC-SI sideband communication data based on the direct public command code command of the I3C protocol, including: PCIE device and The device management unit transmits control messages based on the direct writing frame format and the direct reading frame format.
在一种实现方式中,直接公共命令码命令包括直接写入;PCIE设备与设备管理单元通过I3C接口,基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据,包括:PCIE设备基于直接写入的帧格式接收设备管理单元发送的数据报文。In one implementation, the direct public command code command includes direct writing; the PCIE device and the device management unit transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the PCIE device is based on The directly written frame format receives the data message sent by the device management unit.
I3C总线上的主设备可以主动对从设备进行读写。在上述计算设备中,设备管理单元为I3C总线的主设备,PCIE设备为I3C总线的从设备,设备管理单元利用直接公共命令码命令中的直接写入可以实现向PCIE传输NC-SI边带通信数据;该NC-SI边带通信数据包括设备管理单元用于管理PCIE设备的NC-SI控制报文和设备管理单元向外部网络发送的NC-SI数据报文。The master device on the I3C bus can actively read and write from the slave device. In the above computing device, the device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus. The device management unit can realize the transmission of NC-SI sideband communication to PCIE by using direct writing in the direct public command code command. Data; the NC-SI sideband communication data includes NC-SI control messages used by the device management unit to manage PCIE devices and NC-SI data messages sent by the device management unit to the external network.
在一种实现方式中,直接写入的帧格式和直接读取的帧格式包括:PCIE设备接收设备管理单元发送的自定义的直接公共命令码;其中,自定义的直接公共命令码用于指示传输控制报文或数据报文;自定义的直接公共命令码基于I3C协议中直接公共命令码的预留扩展命令码确定。其中,预留扩展命令码的取值范围为0xE0-0xFE。In one implementation, the directly written frame format and the directly read frame format include: the PCIE device receives a customized direct public command code sent by the device management unit; wherein the customized direct public command code is used to indicate Transmit control messages or data messages; the customized direct public command code is determined based on the reserved extended command code of the direct public command code in the I3C protocol. Among them, the value range of reserved extended command codes is 0xE0-0xFE.
在一种实现方式中,用于指示传输控制报文的自定义的直接公共命令码与用于指示传输数据报文的自定义的直接公共命令码不同。In one implementation, the customized direct public command code used to instruct the transmission of the control message is different from the customized direct public command code used to instruct the transmission of the data message.
使用I3C直接公共命令码在规范中的预留扩展命令码来定义NC-SI边带通信,拓宽了I3C规范在计算设备中的应用场景,并且可以选用不同的自定义命令码指示NC-SI边带通信具体类型,提高了规范使用的灵活性。Using the reserved extended command code of the I3C direct public command code in the specification to define NC-SI sideband communication broadens the application scenarios of the I3C specification in computing devices, and different custom command codes can be selected to indicate NC-SI sideband communication. With communication specific types, the flexibility of specification usage is improved.
在一种实现方式中,PCIE设备与设备管理单元通过I3C接口传输NC-SI边带通信数据,包括:PCIE设备通过I3C接口,基于I3C协议带内中断机制向设备管理单元发送数据报文。In one implementation, the PCIE device and the device management unit transmit NC-SI sideband communication data through the I3C interface, including: the PCIE device sends a data message to the device management unit through the I3C interface and based on the I3C protocol in-band interrupt mechanism.
I3C总线上的从设备可以利用I3C协议中的中断机制主动请求向主设备传输数据。在该计算设备中,设备管理单元与PCIE设备通过I3C接口基于I3C协议通信,设备管理单元为I3C总线的主设备,PCIE设备为I3C总线的从设备,利用上述中断机制,PCIE设备在收到外部网络的数据报文后,可以及时主动向设备管理单元传输数据报文。提高设备管理单元与外部网络的通信效率。The slave device on the I3C bus can actively request to transmit data to the master device by using the interrupt mechanism in the I3C protocol. In this computing device, the device management unit communicates with the PCIE device through the I3C interface based on the I3C protocol. The device management unit is the master device of the I3C bus, and the PCIE device is the slave device of the I3C bus. Using the above interrupt mechanism, the PCIE device receives external After receiving the data packet from the network, the data packet can be actively transmitted to the device management unit in a timely manner. Improve the communication efficiency between the device management unit and external networks.
在一种实现方式中,PCIE设备通过I3C接口,基于I3C协议带内中断机制向设备管理单元发送数据报文之前,包括:PCIE设备向设备管理单元发送自定义的强制数据字节值;其中,自定义的强制数据字节值用于指示传输数据报文;自定义的强制数据字节值基于I3C协议中强制数据字节的预留扩展值确定。其中,强制数据字节的高三位MDB[7:5]取值3’b000;强制数据字节的低五位MDB[4:0]取值范围为5’h00–5’h1F。In one implementation, before the PCIE device sends a data message to the device management unit through the I3C interface based on the I3C protocol in-band interrupt mechanism, the process includes: the PCIE device sends a custom mandatory data byte value to the device management unit; where, The customized mandatory data byte value is used to indicate the transmission of data messages; the customized mandatory data byte value is determined based on the reserved extension value of the mandatory data byte in the I3C protocol. Among them, the upper three bits MDB[7:5] of the forced data byte have a value of 3’b000; the lower five bits MDB[4:0] of the forced data byte have a value range of 5’h00–5’h1F.
使用I3C强制数据字节在规范中的预留扩展值来定义NC-SI边带通信,拓宽了I3C规范在计算设备中 的应用场景,并且可以选用不同的自定义命令码指示NC-SI边带通信具体类型,提高了规范使用的灵活性。Using the I3C mandatory data byte reserved extension value in the specification to define NC-SI sideband communications broadens the scope of the I3C specification in computing devices application scenarios, and different custom command codes can be selected to indicate the specific type of NC-SI sideband communication, which improves the flexibility of standard use.
在一种实现方式中,控制报文包括命令报文和响应报文;PCIE设备与设备管理单元基于直接写入帧格式和直接读取帧格式传输控制报文,包括:PCIE设备基于直接写入帧格式的数据字段接收设备管理单元发送的命令报文;命令报文用于管理PCIE设备;PCIE设备基于直接读取帧格式的数据字段向设备管理单元发送响应报文;响应报文用于指示管理结果。In one implementation, the control message includes a command message and a response message; the PCIE device and the device management unit transmit the control message based on the direct write frame format and the direct read frame format, including: the PCIE device transmits the control message based on the direct write frame format and the direct read frame format. The data field in the frame format receives the command message sent by the device management unit; the command message is used to manage the PCIE device; the PCIE device sends a response message to the device management unit based on directly reading the data field in the frame format; the response message is used for instructions Management results.
在一种实现方式中,设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于配置PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示配置结果。In one implementation, the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to configure the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message The text is used to indicate the configuration results.
在一种实现方式中,设备管理单元基于直接写入帧格式的数据字段向PCIE设备发送命令报文;命令报文用于查询PCIE设备;设备管理单元接收PCIE设备发送的响应报文;响应报文用于指示查询结果。In one implementation, the device management unit sends a command message to the PCIE device based on the data field written directly into the frame format; the command message is used to query the PCIE device; the device management unit receives the response message sent by the PCIE device; the response message Text is used to indicate query results.
在一种实现方式中,PCIE设备为PCIE网卡。In an implementation manner, the PCIE device is a PCIE network card.
第四方面,本申请实施例提供了一种数据结构,数据结构包括:Start字段、I3C Reserved Address字段、第一Read/Write字段、第一Acknowledge字段、I3C Directed Common Command Code字段、Parity Bit字段、Repeated Start字段、I3C Target Address、第二Read/Write字段、第二Acknowledge字段、Data字段、Transition Bit字段、Stop字段;其中,I3C Directed Common Command Code取值为0xE0-0xFE任一个命令码;该命令码用于指示设备管理单元与PCIE设备通过I3C接口传输NC-SI边带通信数据;其中,NC-SI边带通信数据包括控制报文和/或数据报文;所述数据报文用于所述设备管理单元与外部网络通信,所述控制报文用于所述设备管理单元管理所述PCIE设备。In the fourth aspect, embodiments of the present application provide a data structure. The data structure includes: Start field, I3C Reserved Address field, first Read/Write field, first Acknowledge field, I3C Directed Common Command Code field, Parity Bit field, Repeated Start field, I3C Target Address, second Read/Write field, second Acknowledge field, Data field, Transition Bit field, Stop field; among them, I3C Directed Common Command Code value is any command code from 0xE0-0xFE; this command The code is used to instruct the device management unit and the PCIE device to transmit NC-SI sideband communication data through the I3C interface; where the NC-SI sideband communication data includes control messages and/or data messages; the data messages are used for all The device management unit communicates with an external network, and the control message is used by the device management unit to manage the PCIE device.
在一种实现方式中,I3C Reserved Address字段携带I3C广播地址7’h7E;第一Read/Write字段设置为0,此时第一Read/Write字段可以理解为Write字段,表示执行写入操作。In one implementation, the I3C Reserved Address field carries the I3C broadcast address 7’h7E; the first Read/Write field is set to 0. At this time, the first Read/Write field can be understood as a Write field, indicating the execution of a write operation.
在一种实现方式中,I3C Directed Common Command Code用于指示设备管理单元和PCIE设备传输控制报文。In one implementation, I3C Directed Common Command Code is used to instruct the device management unit and PCIE device to transmit control messages.
例如,选取I3C Directed Common Command Code的预留扩展命令码值xF0用于指示设备管理单元向PCIE设备传输控制报文或PCIE设备向设备管理单元传输控制报文。当指示设备管理单元向PCIE设备传输控制报文时,第二Read/Write取值为0,Transition Bit字段为Parity Bit字段,用于校验写入的控制报文。For example, select the reserved extended command code value xF0 of I3C Directed Common Command Code to instruct the device management unit to transmit control messages to the PCIE device or the PCIE device to transmit control messages to the device management unit. When instructing the device management unit to transmit a control message to the PCIE device, the second Read/Write value is 0, and the Transition Bit field is the Parity Bit field, which is used to verify the written control message.
当指示PCIE设备向设备管理单元传输控制报文时,Read/Write取值为1时,Transition Bit字段为End-of-Data,用于指示控制报文是否输完成;例如,当Transition Bit为1时表示控制报文还未传输完,当Transition Bit为0时,表示控制报文已经传输完成。When instructing the PCIE device to transmit control packets to the device management unit, when the Read/Write value is 1, the Transition Bit field is End-of-Data, which is used to indicate whether the control packet transmission is completed; for example, when the Transition Bit is 1 When the Transition Bit is 0, it means that the control message has not been transmitted yet. When the Transition Bit is 0, it means that the control message has been transmitted.
在一种实现方式中,I3C Directed Common Command Code用于指示从设备管理单元向PCIE设备传输数据报文;RnW取值为0,Transition Bit字段为Parity Bit字段,用于校验写入的数据报文。In one implementation, the I3C Directed Common Command Code is used to instruct the transmission of data packets from the device management unit to the PCIE device; the RnW value is 0, and the Transition Bit field is the Parity Bit field, which is used to verify the written data packet. arts.
例如,选取I3C Directed Common Command Code的预留扩展命令码值0xF1用于指示设备管理单元向PCIE设备传输数据报文。当指示设备管理单元向PCIE设备传输数据报文时,第二Read/Write取值为0,Transition Bit字段为Parity Bit字段,用于校验写入的数据报文。For example, select the reserved extended command code value 0xF1 of I3C Directed Common Command Code to instruct the device management unit to transmit data packets to the PCIE device. When instructing the device management unit to transmit a data message to the PCIE device, the second Read/Write value is 0, and the Transition Bit field is the Parity Bit field, which is used to verify the written data message.
在一种实现方式中,Data字段用于发送上述NC-SI边带通信数据。In one implementation, the Data field is used to send the above NC-SI sideband communication data.
第五方面,本申请技术方案提供了一种数据结构,数据结构包括:Start字段、I3C Target Address、Read/Write字段、Acknowledge字段、Mandatory Data Byte字段、Parity Bit字段、Data字段、Stop字段;其中,Mandatory Data Byte(MDB)的高三位MDB[7:5]取值为3’b000;Mandatory Data Byte的低五位MDB[4:0]取值范围为5’h00–5’h1F;从所述Mandatory Data Byte的低五位中任选一个值与高三位共同组成值;该MDB值用于指示PCIE设备向设备管理单元发送数据报文。In the fifth aspect, the technical solution of this application provides a data structure. The data structure includes: Start field, I3C Target Address, Read/Write field, Acknowledge field, Mandatory Data Byte field, Parity Bit field, Data field, Stop field; wherein , the value of the high three bits MDB[7:5] of Mandatory Data Byte (MDB) is 3'b000; the value range of the low five bits MDB[4:0] of Mandatory Data Byte is 5'h00–5'h1F; from all Select one value from the lower five bits of the Mandatory Data Byte and the upper three bits to form a value; this MDB value is used to instruct the PCIE device to send a data message to the device management unit.
例如,MDB的高三位MDB[7:5]取值为3’b000;MDB的低五位MDB[4:0]取值为5’h01;则MDB值为0x01,该MBD值用于指示从PCIE设备向设备管理单元发送数据报文。For example, the value of the high-order three bits of MDB [7:5] is 3'b000; the value of the low-order five bits of MDB [4:0] is 5'h01; then the MDB value is 0x01, and this MBD value is used to indicate the slave The PCIE device sends a data packet to the device management unit.
在一种实现方式中,Data字段用于发送数据报文。 In one implementation, the Data field is used to send data packets.
附图说明Description of drawings
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application.
图1A是本申请实施例提供的部署PCIE设备的计算设备的示意图;Figure 1A is a schematic diagram of a computing device deploying PCIE devices provided by an embodiment of the present application;
图1B是本申请实施例提供的PCIE网卡的结构示意图;Figure 1B is a schematic structural diagram of a PCIE network card provided by an embodiment of the present application;
图2A是本申请实施例提供的I3C直接写入帧格式示意图;Figure 2A is a schematic diagram of the I3C direct writing frame format provided by the embodiment of the present application;
图2B是本申请实施例提供的I3C直接读取帧格式示意图;Figure 2B is a schematic diagram of the I3C direct reading frame format provided by the embodiment of the present application;
图3是本申请实施例提供的设备管理单元基于I3C直接写入向PCIE网卡发送NC-SI命令报文的方法流程示意图;Figure 3 is a schematic flowchart of the method for the device management unit to send NC-SI command messages to the PCIE network card based on I3C direct writing provided by the embodiment of the present application;
图4是本申请实施例提供的NC-SI命令报文格式示意图;Figure 4 is a schematic diagram of the NC-SI command message format provided by the embodiment of the present application;
图5是本申请实施例提供的Enable Channel命令报文格式示意图;Figure 5 is a schematic diagram of the format of the Enable Channel command message provided by the embodiment of this application;
图6是本申请实施例提供的PCIE网卡基于I3C直接读取向设备管理单元发送NC-SI响应报文的方法流程示意图;Figure 6 is a schematic flowchart of the method for the PCIE network card provided by the embodiment of the present application to send an NC-SI response message to the device management unit based on direct I3C reading;
图7是本申请实施例提供的NC-SI响应报文格式示意图;Figure 7 is a schematic diagram of the NC-SI response message format provided by the embodiment of the present application;
图8是本申请实施例提供的Enable Channel响应报文格式示意图;Figure 8 is a schematic diagram of the format of the Enable Channel response message provided by the embodiment of this application;
图9是本申请实施例提供的设备管理单元通过I3C直接写入向PCIE网卡发送NC-SI数据报文的方法流程示意图;Figure 9 is a schematic flowchart of the method for the device management unit to send NC-SI data packets to the PCIE network card through I3C direct writing provided by the embodiment of the present application;
图10是本申请实施例提供的NC-SI数据报文格式示意图;Figure 10 is a schematic diagram of the NC-SI data message format provided by the embodiment of the present application;
图11是本申请实施例提供的Mandatory Data Byte数据格式示意图;Figure 11 is a schematic diagram of the Mandatory Data Byte data format provided by the embodiment of this application;
图12是本申请实施例提供的I3C中断通信帧格式示意图;Figure 12 is a schematic diagram of the I3C interrupt communication frame format provided by the embodiment of the present application;
图13是本申请实施例提供的PCIE网卡通过I3C中断机制向设备管理单元发送NC-SI数据报文的方法流程示意图。Figure 13 is a schematic flowchart of a method for the PCIE network card to send an NC-SI data message to the device management unit through the I3C interrupt mechanism provided by the embodiment of the present application.
具体实施方式Detailed ways
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚的描述。In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiment of the present application will be clearly described below in conjunction with the drawings in the embodiment of the present application.
本申请实施例中术语“第一”“第二”等字样不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。The terms "first" and "second" in the embodiments of this application do not have logical or temporal dependencies, nor do they limit the number or execution order. It should also be understood that, although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another.
本申请实施例中术语“至少一个”的含义是指一个或多个,本申请实施例中术语“多个”的含义是指两个或两个以上。In the embodiments of this application, the term "at least one" means one or more, and in the embodiments of this application, the term "multiple" means two or more.
还应理解,术语“如果”可被解释为“当……时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。It should also be understood that the term "if" may be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting." Similarly, depending on the context, the phrase "if it is determined..." or "if [stated condition or event] is detected" may be interpreted as "when it is determined..." or "in response to the determination..." or “On detection of [stated condition or event]” or “In response to detection of [stated condition or event]”.
为便于理解本申请,首先对本申请中涉及的名词进行介绍。In order to facilitate understanding of this application, the terms involved in this application are first introduced.
网络控制器边带接口(Network Controller Sideband Interface,NC-SI)是一个由分布式管理任务组(Distributed Management Task Force,DMTF)定义的用于支持服务器带外管理的边带接口网络控制器的工业标准。Network Controller Sideband Interface (NC-SI) is an industrial sideband interface network controller defined by the Distributed Management Task Force (DMTF) to support server out-of-band management. standard.
设备管理单元:在计算机系统里面执行部件管理、资产管理功能,例如上下电控制、风扇调速、电子标签管理等。不同的服务器厂家对设备管理单元有不同的称呼,设备管理单元例如可以是基板管理控制器 (Baseboard Management Controller,BMC),集成式远程管理iLO(Integrated Lights-Out,iLO),和/或,集成式戴尔远程管理控制器(Integrated Dell Remote Access Controller,iDRAC)。Equipment management unit: performs component management and asset management functions in the computer system, such as power on and off control, fan speed regulation, electronic label management, etc. Different server manufacturers have different names for the device management unit. For example, the device management unit can be a baseboard management controller. (Baseboard Management Controller, BMC), integrated remote management iLO (Integrated Lights-Out, iLO), and/or, integrated Dell Remote Access Controller (Integrated Dell Remote Access Controller, iDRAC).
I2C:I2C总线,两线制同步串行总线,主从通信机制,使用时钟线(Serial Clock,SCL)和数据线(Serial Data,SDA)进行通信,支持多个主设备和从设备共总线连接,通过物理地址区分节点。I2C: I2C bus, two-wire synchronous serial bus, master-slave communication mechanism, using clock line (Serial Clock, SCL) and data line (Serial Data, SDA) for communication, supporting multiple master devices and slave devices sharing the bus connection , distinguish nodes by physical address.
I3C:I3C总线,是I2C总线的改进型,使用时钟线(SCL)和数据线(SDA)进行通信,可向下兼容I2C。相对于I2C,I3C数据速率大幅度提升,支持动态地址分配以支持多个相同物理地址的节点共总线连接,支持中断机制以支持从节点主动向主节点发送数据。I3C: I3C bus is an improved version of I2C bus. It uses clock line (SCL) and data line (SDA) for communication and is downward compatible with I2C. Compared with I2C, I3C data rate has been greatly improved, supports dynamic address allocation to support common bus connection of multiple nodes with the same physical address, and supports interrupt mechanism to support slave nodes actively sending data to the master node.
参见图1A,本申请实施例提供一种部署PCIE设备的计算设备的示意图。Referring to FIG. 1A, an embodiment of the present application provides a schematic diagram of a computing device deploying a PCIE device.
该计算设备是具有PCIE接口的电子设备。该计算设备可以是服务器、台式电脑、用户设备(user equipment,UE)、手机(mobile phone)、平板电脑(pad)等;也可以是数据中转设备,例如路由器、中继器、桥接器或交换机等。PCIE设备可以为具有PCIE接口的网卡。为便于描述,下文以PCIE网卡为例进行描述。The computing device is an electronic device with a PCIE interface. The computing device can be a server, a desktop computer, a user equipment (UE), a mobile phone, a tablet, etc.; it can also be a data transfer device, such as a router, repeater, bridge or switch wait. The PCIE device may be a network card with a PCIE interface. For the convenience of description, the following description takes the PCIE network card as an example.
图1B为本实施例提供的一种PCIE网卡的结构示意图。结合图1A和图1B,计算设备100包括主板110,该主板上设置设备管理单元120、处理器130和PCIE接口连接器140。该PCIE接口连接器140可以为PCIE插槽。其中,该设备管理单元120可以是基板管理控制器(Baseboard Management Controller,BMC)、集成式远程管理iLO(Integrated Lights-Out,iLO)或集成式戴尔远程管理控制器(Integrated Dell Remote Access Controller,iDRAC)。FIG. 1B is a schematic structural diagram of a PCIE network card provided in this embodiment. 1A and 1B, the computing device 100 includes a motherboard 110 on which a device management unit 120, a processor 130 and a PCIE interface connector 140 are provided. The PCIE interface connector 140 may be a PCIE slot. Among them, the device management unit 120 can be a baseboard management controller (Baseboard Management Controller, BMC), an integrated remote management iLO (Integrated Lights-Out, iLO) or an integrated Dell remote management controller (Integrated Dell Remote Access Controller, iDRAC). ).
PCIE网卡200包括本体210,该本体210可以为电路板。该本体210上设置芯片220和PCIE接口连接器230;该PCIE接口连接器230位于该本体210的边缘;PCIE接口连接器230包括多个金手指231;PCIE 230连接器的金手指231与芯片220电连接。主板110的PCIE接口连接器140和PCIE网卡200的PCIE接口连接器230插接。具体实现为,PCIE网卡的本体210上的金手指插接入主板110上的PCIE插槽,使PCIE网卡200与主板110电连接以实现信号传输。The PCIE network card 200 includes a body 210, which may be a circuit board. The body 210 is provided with a chip 220 and a PCIE interface connector 230; the PCIE interface connector 230 is located at the edge of the body 210; the PCIE interface connector 230 includes a plurality of gold fingers 231; the gold fingers 231 of the PCIE 230 connector and the chip 220 Electrical connection. The PCIE interface connector 140 of the motherboard 110 is plugged into the PCIE interface connector 230 of the PCIE network card 200 . The specific implementation is that the golden finger on the body 210 of the PCIE network card is inserted into the PCIE slot on the motherboard 110, so that the PCIE network card 200 is electrically connected to the motherboard 110 to realize signal transmission.
在一种实现方式中,PCIE接口连接器230的信号定义中包括了I2C(Inter-Integrated Circuit)的接口定义;而I3C(Improved Inter Integrated Circuit)与I2C在物理信号上是兼容的,二者都使用SCL和SDA两条物理信号线进行通信。In one implementation, the signal definition of PCIE interface connector 230 includes the interface definition of I2C (Inter-Integrated Circuit); and I3C (Improved Inter Integrated Circuit) and I2C are compatible in terms of physical signals, and both Use two physical signal lines, SCL and SDA, for communication.
在如图1A的计算设备100与PCIE网卡200互连结构中,设备管理单元120与PCIE网卡200可以利用I2C通道,运行I3C协议通信,形成I3C接口。因此PCIE网卡200的PCIE接口连接器230可以兼容I3C接口。其中,计算设备100通过PCIE接口与该PCIE网卡200连接。该PCIE接口可以为业务接口,如使用PCIE网卡为计算设备100的业务系统,例如CPU系统、OS系统,传输业务数据。计算设备100中的设备管理单元120与I3C接口连接。该I3C接口为带外接口,用于PCIE网卡200为设备管理单元120,例如BMC,传输管理数据。In the interconnection structure of the computing device 100 and the PCIE network card 200 as shown in Figure 1A, the device management unit 120 and the PCIE network card 200 can use the I2C channel to run I3C protocol communication to form an I3C interface. Therefore, the PCIE interface connector 230 of the PCIE network card 200 can be compatible with the I3C interface. The computing device 100 is connected to the PCIE network card 200 through a PCIE interface. The PCIE interface may be a business interface, such as using a PCIE network card to transmit business data for a business system of the computing device 100, such as a CPU system or an OS system. The device management unit 120 in the computing device 100 interfaces with the I3C interface. The I3C interface is an out-of-band interface and is used by the PCIE network card 200 to transmit management data to the device management unit 120, such as a BMC.
如上所述,PCIE网卡200,提供I3C接口,支持通过I3C接口与设备管理单元120连接通信。设备管理单元120,通过I3C接口与PCIE网卡200连接。设备管理单元120支持NC-SI边带通信。PCIE网卡200与设备管理单元120,支持通过I3C接口传输NC-SI信息,实现NC-SI边带通信。其中,在上述I3C通信中,设备管理单元120为I3C总线上的主设备,PCIE网卡200为I3C总线上从设备。As mentioned above, the PCIE network card 200 provides an I3C interface and supports connection and communication with the device management unit 120 through the I3C interface. The device management unit 120 is connected to the PCIE network card 200 through the I3C interface. The device management unit 120 supports NC-SI sideband communications. The PCIE network card 200 and the device management unit 120 support the transmission of NC-SI information through the I3C interface to realize NC-SI sideband communication. Among them, in the above I3C communication, the device management unit 120 is the master device on the I3C bus, and the PCIE network card 200 is the slave device on the I3C bus.
基于PCIE网卡的接口结构,本实施例提供了一种设备管理单元与PCIE网卡进行NC-SI边带通信的方法。其中,该NC-SI边带通信数据包括了NC-SI控制报文和NC-SI数据报文。其中,NC-SI控制报文包括NC-SI命令报文和NC-SI响应报文;NC-SI命令报文用于设备管理单元管理PCIE网卡,该管理PCIE网卡包括查询和配置该配置包括使能,初始化等;响应报文用于PCIE网卡向设备管理单元反馈指示管理结果;如配置是否成功。数据报文用于设备管理单元120与外部网络传输管理数据。 Based on the interface structure of the PCIE network card, this embodiment provides a method for NC-SI sideband communication between the device management unit and the PCIE network card. Among them, the NC-SI sideband communication data includes NC-SI control messages and NC-SI data messages. Among them, the NC-SI control message includes an NC-SI command message and an NC-SI response message; the NC-SI command message is used by the device management unit to manage the PCIE network card. The management of the PCIE network card includes querying and configuring the configuration. function, initialization, etc.; the response message is used by the PCIE network card to feedback the management results to the device management unit; such as whether the configuration is successful. Data packets are used to transmit management data between the device management unit 120 and the external network.
在一种可实现方式中,对I3C规范进行扩展,使用I3C规范中的预留扩展字来定义NC-SI边带通信。具体为:I3C Directed CCC字段表示I3C直接公共命令码,按照规范定义,使用不同的命令码指示不同的通信命令;该直接公共命令码可以指示主设备和指定从设备之间进行不同类型的通信。对于I3C Directed CCC,I3C规范中定义了一些预留扩展命令码,取值范围0xE0-0xFE,作为厂家扩展使用。在本实施例中,利用该规范扩展,使用I3C直接公共命令码预留扩展命令码定义NC-SI边带通信的控制数据的传输。I3C直接公共命令码命令包括I3C直接读取和I3C直接写入。In an implementable manner, the I3C specification is extended and reserved extension words in the I3C specification are used to define NC-SI sideband communication. Specifically: the I3C Directed CCC field represents the I3C direct public command code. According to the specification definition, different command codes are used to indicate different communication commands; the direct public command code can indicate different types of communication between the master device and the specified slave device. For I3C Directed CCC, the I3C specification defines some reserved extended command codes, with a value range of 0xE0-0xFE, for use as manufacturer extensions. In this embodiment, using this specification extension, the I3C direct public command code reserved extended command code is used to define the transmission of control data of NC-SI sideband communication. I3C direct public command code commands include I3C direct reading and I3C direct writing.
设备管理单元与PCIE网卡的NC-SI控制报文的通信包括设备管理单元120使用I3C直接写入向PCIE网卡200发送NC-SI命令报文,以及PCIE网卡200使用I3C直接读取向设备管理单元120发送上述NC-SI命令的响应报文。The communication between the device management unit and the NC-SI control message of the PCIE network card includes the device management unit 120 using I3C direct writing to send the NC-SI command message to the PCIE network card 200, and the PCIE network card 200 using I3C direct reading to the device management unit 120 sends the response message of the above NC-SI command.
具体的,设备管理单元120向PCIE网卡200发送的NC-SI命令报文所用的I3C直接写入的帧格式如图2A所示;PCIE网卡设备200向管理模块120发送的NC-SI命令的响应报文所用的I3C直接读取的帧格式如图2B所示。可以理解的,上述帧格式可以为设备管理单元120与PCIE网卡200通信的命令时序的集合。I3C直接写入命令的帧格式和I3C直接读取的帧格式的说明如表1所示。Specifically, the I3C directly written frame format used in the NC-SI command message sent by the device management unit 120 to the PCIE network card 200 is shown in Figure 2A; the response to the NC-SI command sent by the PCIE network card device 200 to the management module 120 The frame format of the I3C direct reading used in the message is shown in Figure 2B. It can be understood that the above frame format may be a set of command timings for communication between the device management unit 120 and the PCIE network card 200 . The description of the frame format of the I3C direct write command and the frame format of the I3C direct read is shown in Table 1.
表1 I3C直接写入/直接读取码命令的帧格式说明
Table 1 Frame format description of I3C direct write/direct read code command
基于图2A中所示的I3C直接写入的帧格式,该实施例提供了一种设备管理单元向PCIE网卡发送NC-SI命令报文的方法,方法流程如图3所示。Based on the I3C directly written frame format shown in Figure 2A, this embodiment provides a method for the device management unit to send an NC-SI command message to the PCIE network card. The method flow is shown in Figure 3.
S101:设备管理单元120向PCIE网卡200发送启动信号S。在I3C总线空闲状态下,设备管理单元120发起START,表示可以开启与PCIE网卡200的通信。S101: The device management unit 120 sends the startup signal S to the PCIE network card 200. In the idle state of the I3C bus, the device management unit 120 initiates START, indicating that communication with the PCIE network card 200 can be started.
S102:设备管理单元120向PCIE网卡200发送I3C广播地址和写入信号W。 S102: The device management unit 120 sends the I3C broadcast address and write signal W to the PCIE network card 200.
在一种可实现的方式中,在发送I3C直接公共命令码命令前,设备管理单元120发送广播地址(7’h7E)作为I3C预留地址和Read/Write置0(1’b0)。等待PCIE网卡200的响应确认信号ACK。In an implementable manner, before sending the I3C direct public command code command, the device management unit 120 sends the broadcast address (7'h7E) as the I3C reserved address and Read/Write is set to 0 (1'b0). Wait for the response confirmation signal ACK from the PCIE network card 200.
S103:PCIE网卡200向设备管理单元120响应确认信号ACK。PCIE网卡200在确认收到广播消息时,可以向设备管理单元120响应确认信号ACK。S103: The PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK. When confirming receipt of the broadcast message, the PCIE network card 200 may respond to the device management unit 120 with a confirmation signal ACK.
S104:设备管理单元120向PCIE网卡200发送指示传输NC-SI控制报文的直接公共命令码以及该直接公共命令码的校验位。S104: The device management unit 120 sends the direct public command code indicating the transmission of the NC-SI control message and the check digit of the direct public command code to the PCIE network card 200.
在一种可实现的方式中,从直接公共命令码的预留扩展命令码0xE0-0xFE内任选一个命令码作为指示传输控制报文的命令码。例如选取0xF0作为指示控制报文传输的命令码。具体为,在设备管理单元120管理PCIE 200设备时,该直接公共命令码指示即将发送的报文为设备管理单元120对PCIE网卡200进行管理的NC-SI命令报文。在发送直接命令码的同时发送该命令的校验字。In an implementable manner, any command code is selected from the reserved extended command codes 0xE0-0xFE of the direct public command code as the command code indicating the transmission of the control message. For example, 0xF0 is selected as the command code indicating the transmission of control packets. Specifically, when the device management unit 120 manages the PCIE 200 device, the direct public command code indicates that the message to be sent is an NC-SI command message for the device management unit 120 to manage the PCIE network card 200. The checksum of the command is sent at the same time as the direct command code.
需要说明的是,设备管理单元120管理PCIE 200设备可以为设备管理单元120配置PCIE 200设备或从PCIE 200设备查询信息。It should be noted that the device management unit 120 manages the PCIE 200 device and can configure the PCIE 200 device for the device management unit 120 or query information from the PCIE 200 device.
可以理解的,本领域技术人员可以基于设定需求从上述I3C直接公共命令码的预留扩展命令码0xE0-0xFE中任意选取命令码,本申请对选取的命令码不作具体限制。It can be understood that those skilled in the art can arbitrarily select a command code from the reserved extended command codes 0xE0-0xFE of the above-mentioned I3C direct public command codes based on setting requirements. This application does not impose specific restrictions on the selected command codes.
S105:设备管理单元120向PCIE网卡200发送重复启动信号Sr。设备管理单元120发起Repeated START,以继续与PCIE网卡200的通信。S105: The device management unit 120 sends the repeated start signal Sr to the PCIE network card 200. The device management unit 120 initiates Repeated START to continue communication with the PCIE network card 200.
S106:设备管理单元120向PCIE网卡200发送PCIE网卡200的地址和写信号W。S106: The device management unit 120 sends the address of the PCIE network card 200 and the write signal W to the PCIE network card 200.
设备管理单元120发送PCIE网卡200地址(7bit)和Read/Write置0(1’b0),指示即将向PCIE网卡200发送NC-SI命令报文。等待PCIE网卡200的响应确认信号ACK。The device management unit 120 sends the PCIE network card 200 address (7bit) and Read/Write is set to 0 (1’b0), indicating that the NC-SI command message is about to be sent to the PCIE network card 200. Wait for the response confirmation signal ACK from the PCIE network card 200.
S107:PCIE网卡200向设备管理单元120响应确认信号ACK。PCIE网卡200在确认收到自身地址时,可以自动向设备管理单元120回复响应确认信号ACK。S107: The PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK. When the PCIE network card 200 confirms receipt of its own address, it may automatically reply to the device management unit 120 with a response confirmation signal ACK.
S108:设备管理单元120向PCIE网卡200发送NC-SI命令报文以及该NC-SI命令报文的校验位。S108: The device management unit 120 sends the NC-SI command message and the check digit of the NC-SI command message to the PCIE network card 200.
在一种可实现的方式中,设备管理单元120以字节为单位向PCIE网卡200发送NC-SI命令报文Command Data(Data1,Data2,…,DataN)及对应的校验数据Parity(Para1,Para2,…,ParaN),以实现对PCIE网卡的管理,该管理包括配置或查询。In an implementable manner, the device management unit 120 sends the NC-SI command message Command Data (Data1, Data2,..., DataN) and the corresponding verification data Parity (Para1, DataN) to the PCIE network card 200 in byte units. Para2,...,ParaN) to realize the management of the PCIE network card, which management includes configuration or query.
在一种可实现的方式中,设备管理单元120通过NC-SI命令报文对PCIE网卡200进行配置,其中,NC-SI命令报文格式如图4所示。每个NC-SI命令报文包括包头(NC-SI Control packet header),载荷数据(payload)和校验数据(checksum),其中,载荷数据根据命令的不同长度可变。该命令报文格式的说明如表2所示。In an implementable manner, the device management unit 120 configures the PCIE network card 200 through an NC-SI command message, where the format of the NC-SI command message is as shown in FIG. 4 . Each NC-SI command message includes a packet header (NC-SI Control packet header), payload data (payload) and checksum data (checksum). The payload data is variable in length depending on the command. The description of the command message format is shown in Table 2.
表2 NC-SI的命令报文格式说明

Table 2 NC-SI command message format description

在一种可选的实现方式中,设备管理单元120用于配置PCIE网卡200的NC-SI命令包括但不限于Select Package、Clear Initial State或Enable Channel。本实施例以NC-SI命令Enable Channel为例描述命令的具体格式,NC-SI命令Enable Channel的控制报文类型为0x03。In an optional implementation, the NC-SI commands used by the device management unit 120 to configure the PCIE network card 200 include but are not limited to Select Package, Clear Initial State or Enable Channel. This embodiment uses the NC-SI command Enable Channel as an example to describe the specific format of the command. The control message type of the NC-SI command Enable Channel is 0x03.
可选的,将该Enable Channel的命令顺序标识IID设置为0x01;通道标识Channel ID设置为0x01。Optionally, set the command sequence ID IID of the Enable Channel to 0x01; set the channel ID Channel ID to 0x01.
该Enable Channel不具有载荷数据,则Payload Length的12bit值为0x000。The Enable Channel does not have payload data, so the 12-bit value of Payload Length is 0x000.
在一种可实现的方式中,NC-SI命令的发送者可以采用累加和算法生成校验数据。将NC-SI控制报文的保留字段均设置为0的情况下,NC-SI命令Enable Channel的累加校验取值为0xFFFFFFFA。In an implementable manner, the sender of the NC-SI command can use a cumulative sum algorithm to generate the check data. When all reserved fields of the NC-SI control message are set to 0, the cumulative check value of the NC-SI command Enable Channel is 0xFFFFFFFA.
该Enable Channel的命令格如图5所示。命令的总长度为20字节,包括16个字节的包头和4字节的校验数据。设备管理单元120分以字节为单位分20次将上述命令发送至PCIE网卡200。The command format of the Enable Channel is shown in Figure 5. The total length of the command is 20 bytes, including a 16-byte header and 4-byte check data. The device management unit 120 sends the above command to the PCIE network card 200 in byte units 20 times.
S109:设备管理单元120向PCIE网卡200发送结束信号P。S109: The device management unit 120 sends the end signal P to the PCIE network card 200.
在一种可实现的方式中,当设备管理单元120将NC-SI命令报文发送完毕后,向PCIE网卡200发送结束信号P,以结束本次对NC-SI命令报文的发送操作。In an implementable manner, after the device management unit 120 completes sending the NC-SI command message, it sends a completion signal P to the PCIE network card 200 to end the current sending operation of the NC-SI command message.
PCIE网卡200在收到设备管理单元120发送的NC-SI命令报文后,解析该命令报文,依据命令完成对NC-SI通道使能配置。然后PCIE网卡200产生NC-SI响应报文,向设备管理单元120发送该响应报文,所述响应报文用于指示配置结果,如配置是否成功。After receiving the NC-SI command message sent by the device management unit 120, the PCIE network card 200 parses the command message and completes the NC-SI channel enabling configuration according to the command. Then the PCIE network card 200 generates an NC-SI response message and sends the response message to the device management unit 120. The response message is used to indicate the configuration result, such as whether the configuration is successful.
在一种可实现的方式中,在PCIE网卡200在收到设备管理单元120发送的NC-SI命令报文,解析该命令报文后,先对该命令报文进行累加和检验;如Enable Channel命令格式为如图5所示,将命令中的各数据进行累加,在和为0的情况下表明数据通过校验,可以采用该通过校验的NC-SI命令来配置PCIE网卡200。In an implementable manner, after the PCIE network card 200 receives the NC-SI command message sent by the device management unit 120 and parses the command message, it first accumulates and checks the command message; for example, Enable Channel The command format is as shown in Figure 5. Each data in the command is accumulated. When the sum is 0, it indicates that the data passes the verification. The NC-SI command that passes the verification can be used to configure the PCIE network card 200.
对于其它NC-SI命令,如Select Package、Clear Initial State的发送方法参照图3所示的步骤S101-S109。可以理解的,对于发送不同的NC-SI命令,不同之处在于I3C直接写入中发送的Data不同,其余的方法流程相同,在此不再赘述。For the sending method of other NC-SI commands, such as Select Package and Clear Initial State, refer to steps S101-S109 shown in Figure 3. It is understandable that for sending different NC-SI commands, the difference is that the Data sent in I3C direct writing is different. The rest of the method process is the same and will not be repeated here.
基于图2B中所示的I3C直接读取的帧格式,该实施例提供了一种PCIE网卡向设备管理单元发送NC-SI响应报文的方法,方法流程如图6所示。Based on the frame format directly read by I3C shown in Figure 2B, this embodiment provides a method for the PCIE network card to send an NC-SI response message to the device management unit. The method flow is shown in Figure 6.
S201:设备管理单元120向PCIE网卡200发送启动信号S。在I3C总线空闲状态下,设备管理单元120发起START,表示可以开启与PCIE网卡200的通信。S201: The device management unit 120 sends the startup signal S to the PCIE network card 200. In the idle state of the I3C bus, the device management unit 120 initiates START, indicating that communication with the PCIE network card 200 can be started.
S202:设备管理单元120向PCIE网卡200发送I3C广播地址和写入W信号。 S202: The device management unit 120 sends the I3C broadcast address and the write W signal to the PCIE network card 200.
在一种可实现的方式中,在发送I3C直接公共命令码命令前,设备管理单元120发送I3C广播地址(7’h7E)作为预留地址和Read/Write位置0(1’b0)。等待PCIE网卡200的ACK。In an implementable manner, before sending the I3C direct public command code command, the device management unit 120 sends the I3C broadcast address (7'h7E) as the reserved address and Read/Write position 0 (1'b0). Waiting for ACK from PCIE network card 200.
S203:PCIE网卡200向设备管理单元120响应确认信号ACK。PCIE网卡200在确认收到该广播消息时,可以自动向设备管理单元120回复ACK信号。S203: The PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK. When confirming receipt of the broadcast message, the PCIE network card 200 can automatically reply an ACK signal to the device management unit 120 .
S204:设备管理单元120向PCIE网卡200发送指示传输控制报文的直接公共命令码以及该直接公共命令码的校验位。S204: The device management unit 120 sends the direct public command code indicating the transmission of the control message and the check digit of the direct public command code to the PCIE network card 200.
在一种可实现的方式中,从直接公共命令码的预留扩展命令码0xE0-0xFE内任选一个命令码作为指示传输控制报文的命令码。例如选取0xF0作为控制报文传输的命令码。具体为,在PCIE 200设备基于设备管理单元的命令完成配置后,响应配置结果时,使用该直接公共命令码指示即将发送的报文为PCIE网卡200向设备管理单元120发送的NC-SI响应报文。在发送直接公共命令码的同时该直接公共命令码的校验位Par。In an implementable manner, any command code is selected from the reserved extended command codes 0xE0-0xFE of the direct public command code as the command code indicating the transmission of the control message. For example, select 0xF0 as the command code for control message transmission. Specifically, after the PCIE 200 device completes the configuration based on the command of the device management unit, when responding to the configuration result, the direct public command code is used to indicate that the message to be sent is an NC-SI response message sent by the PCIE network card 200 to the device management unit 120. arts. When the direct public command code is sent, the check digit Par of the direct public command code is also sent.
S205:设备管理单元120向PCIE网卡200发送重复启动信号Sr。设备管理单元120发起Repeated START,以继续与PCIE网卡200的通信。S205: The device management unit 120 sends the repeated start signal Sr to the PCIE network card 200. The device management unit 120 initiates Repeated START to continue communication with the PCIE network card 200.
S206:设备管理单元120向PCIE网卡200发送PCIE网卡200地址和读取信号R。设备管理单元120发送PCIE网卡200地址(7bit)和Read/Write位置1(1’b1),指示从PCIE网卡200向设备管理单元120发送响应报文。等待PCIE网卡200的响应确认信号ACK。S206: The device management unit 120 sends the PCIE network card 200 address and the read signal R to the PCIE network card 200. The device management unit 120 sends the PCIE network card 200 address (7bit) and Read/Write position 1 (1’b1), instructing the PCIE network card 200 to send a response message to the device management unit 120. Wait for the response confirmation signal ACK from the PCIE network card 200.
S207:PCIE网卡200向设备管理单元120响应确认信号ACK。PCIE网卡200在确认收到自身地址时,可以自动向设备管理单元120回复ACK信号。S207: The PCIE network card 200 responds to the device management unit 120 with the acknowledgment signal ACK. When the PCIE network card 200 confirms receipt of its own address, it can automatically reply an ACK signal to the device management unit 120 .
S208:PCIE网卡200向设备管理单元120发送NC-SI响应报文以及转换位。S208: The PCIE network card 200 sends the NC-SI response message and the conversion bit to the device management unit 120.
在一种可实现的方式中,PCIE网卡200以字节为单位向设备管理单元120发送NC-SI响应报文Respouse Data(Data1,Data2,…,DataN)及在每个数据后面续接转换位Transition(T1,T2,…,TN)以实现对PCIE网卡的管理的响应。In an implementable manner, the PCIE network card 200 sends the NC-SI response message Respouse Data (Data1, Data2,..., DataN) to the device management unit 120 in units of bytes and continues the conversion bit after each data. Transition (T1, T2,…,TN) to respond to the management of PCIE network cards.
需要说明的是,转换位T用于指示读取的数据是否发送完毕。例如,发送转换位T1,T2,…,TN-1取值为1,表示数据还未发送完;TN取值为0,表示数据已经发送完。It should be noted that the conversion bit T is used to indicate whether the read data has been sent. For example, if the transmission conversion bits T1, T2,..., TN-1 have a value of 1, it means that the data has not been sent completely; if TN has a value of 0, it means that the data has been sent.
在一种可实现的方式中,PCIE网卡200对设备管理单元120的NC-SI命令进行响应的报文数据格式如图7所示。该报文数据格式的各字段说明如表3所示。In an implementable manner, the message data format in which the PCIE network card 200 responds to the NC-SI command of the device management unit 120 is as shown in FIG. 7 . The description of each field in the message data format is shown in Table 3.
在一种可实现的方式中,PCIE网卡200需要对设备管理单元120的NC-SI命令进行响应的报文数据格式如图7所示。每个NC-SI响应报文包括包头(NC-SI Control packet header),载荷数据(payload)和校验数据(checksum),其中载荷数据根据命令的不同长度可变。该报文数据格式的各字段说明如表3所示。In an implementable manner, the message data format that the PCIE network card 200 needs to respond to the NC-SI command of the device management unit 120 is as shown in FIG. 7 . Each NC-SI response message includes a packet header (NC-SI Control packet header), payload data (payload) and checksum data (checksum), where the payload data is variable in length depending on the command. The description of each field in the message data format is shown in Table 3.
表3 NC-SI的响应报文格式字段说明

Table 3 NC-SI response message format field description

在一种可实现的方式中,NC-SI的命令为Select Package、Clear Initial State或Enable Channel时,对应的NC-SI响应为Select Package Response、Clear Initial State Response或Enable Channel Response。本实施例以Enable Channel命令的响应为例对NC-SI的响应格式进行说明。In an implementable manner, when the NC-SI command is Select Package, Clear Initial State or Enable Channel, the corresponding NC-SI response is Select Package Response, Clear Initial State Response or Enable Channel Response. This embodiment uses the response to the Enable Channel command as an example to illustrate the response format of NC-SI.
对于该Enable Channel响应,控制包的标识Control Packet Type变为0x83。将该命令的命令顺序标识IID设置为0x01;通道标识Channel ID设置为0x01。For this Enable Channel response, the control packet identification Control Packet Type changes to 0x83. Set the command sequence ID IID of this command to 0x01; set the channel ID Channel ID to 0x01.
该Enable Channel响应报文的响应码和原因码作为载荷数据Payload Length的12bit值为0x004。The response code and reason code of the Enable Channel response message are used as the payload data. The 12-bit value of Payload Length is 0x004.
在一种可实现的方式中,当PCIE网卡基于NC-SI命令配置成功后,响应代码取值为0x0000,表示配置完成。原因代码的取值为0x0000,表示配置没有出错。In an implementable manner, when the PCIE network card is successfully configured based on the NC-SI command, the response code value is 0x0000, indicating that the configuration is completed. The value of the reason code is 0x0000, which means there is no error in the configuration.
在一种可实现的方式中,NC-SI命令的发送者可以采用累加和算法生成校验数据。将NC-SI控制报文的保留字段均设置为0的情况下,NC-SI命令Enable Channel的累加校验取值为0xFFFFFF7A。In an implementable manner, the sender of the NC-SI command can use a cumulative sum algorithm to generate the check data. When all reserved fields of the NC-SI control message are set to 0, the cumulative check value of the NC-SI command Enable Channel is 0xFFFFFF7A.
该Enable Channel Response的NC-SI响应报文如图8所示。该Enable Channel响应报文的总长度为24字节,包括16字节的包头,4字节的响应码和原因码以及4字节的校验数据。PCIE网卡200以字节为单位分24次将上述响应发送至设备管理单元120。The NC-SI response message of the Enable Channel Response is shown in Figure 8. The total length of the Enable Channel response message is 24 bytes, including a 16-byte header, a 4-byte response code and reason code, and a 4-byte verification data. The PCIE network card 200 sends the above response to the device management unit 120 in byte units 24 times.
S209:在确定数据传输完成后,设备管理单元120向PCIE网卡200发送结束信号P。在设备管理单元120发起STOP,结束本次对NC-SI响应报文的发送操作。S209: After determining that the data transmission is completed, the device management unit 120 sends the end signal P to the PCIE network card 200. Initiate STOP on the device management unit 120 to end the current sending operation of the NC-SI response message.
设备管理单元120在收到PCIE网卡200发送的NC-SI响应报文后,解析该响应报文,获取配置结果,如配置是否成功。After receiving the NC-SI response message sent by the PCIE network card 200, the device management unit 120 parses the response message to obtain the configuration result, such as whether the configuration is successful.
在一种可实现的方式中,在设备管理单元120在收到PCIE网卡200发送的NC-SI响应报文,解析该响应报文后,先对该响应报文进行累加和检验;如Enable Channel命令的响应格式为如图8所示,将命令 中的各数据进行累加,若累加和为0,表明响应报文通过校验。设备管理单元120可以根据响应报文获取配置结果,确定是否完成PCIE网卡200配置。In an implementable manner, after receiving the NC-SI response message sent by the PCIE network card 200 and parsing the response message, the device management unit 120 first accumulates and checks the response message; for example, Enable Channel The response format of the command is as shown in Figure 8. The command Each data in is accumulated. If the accumulated sum is 0, it indicates that the response message passes the verification. The device management unit 120 may obtain the configuration result according to the response message and determine whether the configuration of the PCIE network card 200 is completed.
在一种可实现的方式中,在设备管理单元120检测到转换位T变为低电平时,则设备管理单元120向PCIE网卡200发送结束信号,结束本次对NC-SI响应报文的发送操作。In an implementable manner, when the device management unit 120 detects that the conversion bit T changes to a low level, the device management unit 120 sends an end signal to the PCIE network card 200 to end the sending of the NC-SI response message this time. operate.
可以理解的,NC-SI控制报文的通信包括NC-SI命令报文的传输和NC-SI响应报文的传输,因此,上述设备管理单元120向PCIE网卡200发送NC-SI命令报文以及PCIE网卡200向设备管理单元120发送NC-SI响应报文属于设备管理单元120和PCIE网卡之间一个完整的NC-SI控制报文通信过程。It can be understood that the communication of NC-SI control messages includes the transmission of NC-SI command messages and the transmission of NC-SI response messages. Therefore, the above-mentioned device management unit 120 sends the NC-SI command message to the PCIE network card 200 and The NC-SI response message sent by the PCIE network card 200 to the device management unit 120 belongs to a complete NC-SI control message communication process between the device management unit 120 and the PCIE network card.
在本实施例中,相比于现有技术在设备管理单元与PCIE网卡之间定制额外的连接器及线缆,及私有的连接器信号定义不支持第三方设备兼容。本方案对I3C规范进行扩展,使用I3C公共命令码中的预留扩展命令码定义NC-SI通信的控制报文的传输,实现了PCIE网卡与设备管理单元之间NC-SI控制报文的通信。降低了PCIE网卡和设备管理单元NC-SI边带通信的成本。In this embodiment, compared with the existing technology, additional connectors and cables are customized between the device management unit and the PCIE network card, and the private connector signal definition does not support third-party device compatibility. This solution extends the I3C specification and uses the reserved extended command code in the I3C public command code to define the transmission of control messages for NC-SI communication, realizing the communication of NC-SI control messages between the PCIE network card and the device management unit. . Reduces the cost of PCIE network card and device management unit NC-SI sideband communication.
设备管理单元120在完成对PCIE网卡200的配置后,设备管理单元可以通过PCIE网卡与外部网络进行数据报文(NC-SI Data)通信。After the device management unit 120 completes the configuration of the PCIE network card 200, the device management unit can communicate with the external network through data packets (NC-SI Data) through the PCIE network card.
在一种可实现的方式中,设备管理单元120通过I3C直接写入将NC-SI数据报文发送给PCIE网卡200。具体实现为,对I3C规范进行扩展,设备管理单元120使用I3C直接公共命令码的预留扩展命令码定义向PCIE网卡200发送NC-SI边带通信数据报文。In an implementable manner, the device management unit 120 sends the NC-SI data message to the PCIE network card 200 through I3C direct writing. The specific implementation is to extend the I3C specification, and the device management unit 120 uses the reserved extended command code definition of the I3C direct public command code to send the NC-SI sideband communication data message to the PCIE network card 200.
可以理解的,本领域技术人员可以基于设定需求从上述预留扩展命令码0xE0-0xFE中任意选取命令码,但指示传输NC-SI数据报文的直接公共命令码与指示传输NC-SI控制报文的直接公共命令码不同,本申请对选取的命令码不作具体限制。It can be understood that those skilled in the art can arbitrarily select a command code from the above reserved extended command codes 0xE0-0xFE based on setting requirements, but the direct common command code instructing the transmission of NC-SI data packets is the same as the direct common command code instructing the transmission of NC-SI control. The direct public command codes of the messages are different, and this application does not impose specific restrictions on the selected command codes.
设备管理单元120通过I3C直接写入将NC-SI边带通信中的数据报文发送给PCIE网卡200的帧格式如图2A所示。并且各字段的含义及取值如表1所示,在此不再赘述。The frame format in which the device management unit 120 directly writes the data packet in the NC-SI sideband communication to the PCIE network card 200 through I3C is shown in Figure 2A. And the meaning and value of each field are shown in Table 1, which will not be described again here.
基于图2A所示的I3C直接写入的帧格式,本实施例提供一种设备管理单元向PCIE网卡发送数据报文的方法,方法流程如图9所示。Based on the I3C directly written frame format shown in Figure 2A, this embodiment provides a method for a device management unit to send a data message to a PCIE network card. The method flow is shown in Figure 9.
S301:设备管理单元120向PCIE网卡200发送启动信号S。在I3C总线空闲状态下,设备管理单元120发起START,表示可以开启与PCIE网卡200的通信。S301: The device management unit 120 sends the startup signal S to the PCIE network card 200. In the idle state of the I3C bus, the device management unit 120 initiates START, indicating that communication with the PCIE network card 200 can be started.
S302:设备管理单元120向PCIE网卡200发送I3C广播地址和写入信号W。S302: The device management unit 120 sends the I3C broadcast address and write signal W to the PCIE network card 200.
在一种可实现的方式中,在发送I3C直接公共命令码命令前,设备管理单元120发送广播地址(7’h7E)作为I3C预留地址和Read/Write置0(1’b0)。等待PCIE网卡200的响应确认信号ACK。In an implementable manner, before sending the I3C direct public command code command, the device management unit 120 sends the broadcast address (7'h7E) as the I3C reserved address and Read/Write is set to 0 (1'b0). Wait for the response confirmation signal ACK from the PCIE network card 200.
S303:PCIE网卡200向设备管理单元120响应确认信号ACK。PCIE网卡200在确认收到该广播消息时,可以自动向设备管理单元120响应确认信号ACK。S303: PCIE network card 200 responds to the device management unit 120 with an acknowledgment signal ACK. When confirming receipt of the broadcast message, the PCIE network card 200 may automatically respond to the device management unit 120 with a confirmation signal ACK.
S304:设备管理单元120向PCIE网卡200发送指示传输数据报文传输的直接公共命令码以及该直接公共命令代的校验位。S304: The device management unit 120 sends the direct public command code indicating the transmission of the transmission data packet and the check digit of the direct public command code to the PCIE network card 200.
在一种可实现的方式中,从直接公共命令码的预留扩展命令码0xE0-0xFE内任选一个命令码作为传输控制报文的命令码。该命令码与传输控制报文的命令码不同,例如选取0xF1作为控制报文传输的命令码。具体为,在设备管理单元120向PCIE 200设备发送向外部透传的数据报文时,该直接公共命令码指示即将发送的报文为设备管理单元向PCIE网卡200发送的NC-SI数据报文。该数据报文为PCIE网卡后续向外部网络透传的数据报文。在发送直接公共命令码的同时发送该直接公共命令码的校验字Par。In an implementable manner, any command code is selected from the reserved extended command codes 0xE0-0xFE of the direct public command code as the command code for transmitting the control message. This command code is different from the command code for transmitting control messages. For example, 0xF1 is selected as the command code for control message transmission. Specifically, when the device management unit 120 sends a data message for external transparent transmission to the PCIE 200 device, the direct public command code indicates that the message to be sent is an NC-SI data message sent by the device management unit to the PCIE network card 200. . This data packet is a data packet that the PCIE network card subsequently transparently transmits to the external network. When sending the direct common command code, the check word Par of the direct common command code is sent.
S305:设备管理单元120向PCIE网卡200发送重复启动信号Sr。设备管理单元120发起Repeated START,以继续与PCIE网卡200的通信。S305: The device management unit 120 sends the repeated start signal Sr to the PCIE network card 200. The device management unit 120 initiates Repeated START to continue communication with the PCIE network card 200.
S306:设备管理单元120向PCIE网卡200发送PCIE网卡200地址和写入信号W。 S306: The device management unit 120 sends the PCIE network card 200 address and the write signal W to the PCIE network card 200.
设备管理单元120发送PCIE网卡200地址(7bit)和Read/Write置1(1’b0),指示即将向PCIE网卡200发送NC-SI数据报文。等待PCIE网卡200的响应确认信号ACK。The device management unit 120 sends the PCIE network card 200 address (7bit) and Read/Write set to 1 (1’b0), indicating that the NC-SI data message is about to be sent to the PCIE network card 200. Wait for the response confirmation signal ACK from the PCIE network card 200.
S307:PCIE网卡200向设备管理单元120响应确认信号。PCIE网卡200在确认收到自身地址时,可以自动向设备管理单元120回复响应确认信号ACK。S307: The PCIE network card 200 responds to the device management unit 120 with a confirmation signal. When the PCIE network card 200 confirms receipt of its own address, it may automatically reply to the device management unit 120 with a response confirmation signal ACK.
S308:设备管理单元120向PCIE网卡200发送数据报文以及该数据报文的校验位。S308: The device management unit 120 sends the data packet and the check bit of the data packet to the PCIE network card 200.
S309:发送结束信号P。S309: Send the end signal P.
在一种可实现的方式中,设备管理单元120以字节为单位向PCIE网卡200发送数据报文NC-SI Data(Data1,Data2,…,DataN)及每个字节数据对应的校验位Par(Par1,Par2,…,ParN)。In an implementable manner, the device management unit 120 sends the data message NC-SI Data (Data1, Data2,..., DataN) and the check bit corresponding to each byte of data to the PCIE network card 200 in units of bytes. Par(Par1, Par2,…,ParN).
在一种实现的方式中,NC-SI边带通信数据报文为以太报文,数据格式如图10所示。该以太报文数据的格式说明如表4所示。In one implementation method, the NC-SI sideband communication data message is an Ethernet message, and the data format is as shown in Figure 10. The format description of the Ethernet message data is shown in Table 4.
表4 NC-SI边带通信数据报文说明
Table 4 NC-SI sideband communication data message description
可以理解的,在PCIE网卡200接收到I3C数据后,获取其中的以太网报文,解析以太报文获取DMAC地址,基于该DMAC地址将以太报文透传到外部网络设备。It can be understood that after the PCIE network card 200 receives the I3C data, it obtains the Ethernet message, parses the Ethernet message to obtain the DMAC address, and transparently transmits the Ethernet message to the external network device based on the DMAC address.
在本实施例中,相比于现有技术在设备管理单元与PCIE网卡之间自制额外的连接器及线缆,以及私有的连接器信号定义不支持第三方设备兼容性。本方案对I3C规范进行扩展,使用I3C直接公共命令码的预留扩展命令码定义从设备管理单元向PCIE网卡发送NC-SI数据报文,实现了设备管理单元与PCIE网卡之间NC-SI数据报文的边带通信。降低了PCIE网卡和设备管理单元之间NC-SI边带通信的成本,提高了PCIE网卡使用的兼容性。In this embodiment, compared with the existing technology, additional connectors and cables are made between the device management unit and the PCIE network card, and the private connector signal definition does not support third-party device compatibility. This solution extends the I3C specification and uses the reserved extended command code definition of the I3C direct public command code to send NC-SI data messages from the device management unit to the PCIE network card, realizing NC-SI data between the device management unit and the PCIE network card. Sideband communication of messages. It reduces the cost of NC-SI sideband communication between the PCIE network card and the device management unit, and improves the compatibility of the PCIE network card.
在一种可实现的方式中,PCIE网卡200可以利用I3C协议的带内中断机制向设备管理单元120发送数据报文,该数据报文为PCIE网卡200从外部网络接收转发至设备管理单元120的数据报文。具体实现为,对I3C规范进行扩展,使用I3C协议的强制数据字节(Mandatory Data Byte,MDB)预留扩展的中断组标识(3’b000)和预留的特定中断标识值(5’h00–5’h1F)来定义PCIE网卡200向设备管理单元120发送数据报文NC-SI Data,其中,I3C协议的强制数据字节(Mandatory Data Byte,MDB)的格式如图11所示。In an implementable manner, the PCIE network card 200 can use the in-band interrupt mechanism of the I3C protocol to send a data message to the device management unit 120. The data message is received by the PCIE network card 200 from the external network and forwarded to the device management unit 120. data message. The specific implementation is to extend the I3C specification and use the Mandatory Data Byte (MDB) of the I3C protocol to reserve an extended interrupt group identifier (3'b000) and a reserved specific interrupt identifier value (5'h00– 5'h1F) to define the PCIE network card 200 to send the data message NC-SI Data to the device management unit 120, in which the format of the mandatory data byte (Mandatory Data Byte, MDB) of the I3C protocol is as shown in Figure 11.
设备管理单元120通过I3C中断机制实现从PCIE网卡接收NC-SI边带通信数据报文命令帧格式如图12所示。该帧格式中各字段的说明如表5所示。可以理解的,该帧格式可以为设备管理单元120与PCIE网卡200通信的命令时序的集合。 The device management unit 120 uses the I3C interrupt mechanism to receive the NC-SI sideband communication data message command frame format from the PCIE network card as shown in Figure 12. The description of each field in this frame format is shown in Table 5. It can be understood that the frame format may be a set of command timings for communication between the device management unit 120 and the PCIE network card 200 .
表5I3C中断操作帧格式说明
Table 5 I3C interrupt operation frame format description
基于如图12所示的带内中断通信的帧格式,本实施例提供了一种PCIE网卡向设备管理单元发送数据报文的方法,方法流程如图13所示。Based on the frame format of in-band interrupt communication as shown in Figure 12, this embodiment provides a method for a PCIE network card to send a data message to the device management unit. The method flow is shown in Figure 13.
S401:设备管理单元120响应PCIE网卡200的中断请求,发送启动信号S。S401: The device management unit 120 responds to the interrupt request of the PCIE network card 200 and sends the start signal S.
I3C协议支持带内中断,在总线空闲的状态下,允许从设备发起中断请求,主动向从设备进行数据传输。The I3C protocol supports in-band interrupts. When the bus is idle, the slave device is allowed to initiate an interrupt request and actively transmit data to the slave device.
可以理解的,在设备管理单元120基于I3C协议与PCIE网卡200进行通行时,设备管理单元120作为I3C总线上的主设备,PCIE网卡200作为I3C总线上的从设备。在PCIE网卡200接收外部网络的报文数据后,主动向主设备发送中断请求,以传输报文数据。It can be understood that when the device management unit 120 communicates with the PCIE network card 200 based on the I3C protocol, the device management unit 120 acts as a master device on the I3C bus, and the PCIE network card 200 acts as a slave device on the I3C bus. After the PCIE network card 200 receives the message data from the external network, it actively sends an interrupt request to the master device to transmit the message data.
S402:PCIE网卡200向设备管理单元120发送PCIE网卡200地址和读取信号R。PCIE网卡200发送自身地址(7bit)和Read操作(1’b1)。等待设备管理单元120的ACK信号。S402: The PCIE network card 200 sends the PCIE network card 200 address and the read signal R to the device management unit 120. PCIE network card 200 sends its own address (7bit) and Read operation (1’b1). Wait for the ACK signal from the device management unit 120.
S403:设备管理单元120向PCIE网卡200响应确认信号ACK。设备管理单元120在确认收到PCIE网卡200的设备地址时,可以自动向PCIE网卡200回复ACK信号。S403: The device management unit 120 responds to the PCIE network card 200 with the acknowledgment signal ACK. When confirming receipt of the device address of the PCIE network card 200, the device management unit 120 can automatically reply an ACK signal to the PCIE network card 200.
S404:PCIE网卡200向设备管理单元120发送指示传输数据报文的强制数据字节值及该强制数据字节值的校验位。S404: The PCIE network card 200 sends the mandatory data byte value indicating the transmission data message and the check bit of the mandatory data byte value to the device management unit 120.
在一种可实现的方式中,采用强制数据字节值定义传输NC-SI数据报文的命令码。本实施例中以中断组标识3’b000和中断号5’h01为例,将强制数据字节置位为0x01。表示当前中断为PCIE网卡200转发从外部网络接收的以太报文。In an implementable manner, the mandatory data byte value is used to define the command code for transmitting the NC-SI data message. In this embodiment, taking the interrupt group identifier 3’b000 and the interrupt number 5’h01 as an example, the forced data byte is set to 0x01. Indicates that the current interruption is that the PCIE network card 200 forwards Ethernet packets received from the external network.
可以理解的,本领域技术人员可基于定义需求,使用I3C协议中强制数据字节预留扩展的中断组标识(3’b000)和预留的特定中断标识(5’h00–5’h1F)的其它值来定义PCIE网卡200向设备管理单元120发送数据报文NC-SI Data。本申请对强制数据字节预留扩展的取值并不作限定。It can be understood that those skilled in the art can use the extended interrupt group identifier (3'b000) and the reserved specific interrupt identifier (5'h00–5'h1F) of the mandatory data byte reservation in the I3C protocol based on the definition requirements. Other values are used to define that the PCIE network card 200 sends the data message NC-SI Data to the device management unit 120. This application does not limit the value of the mandatory data byte reservation extension.
S405:PCIE网卡200向设备管理单元120发送外部数据报文Data及转换位T。S405: The PCIE network card 200 sends the external data message Data and the conversion bit T to the device management unit 120.
在一种实现的方式中,NC-SI边带通信数据报文为以太报文,数据格式如图10所示。 In one implementation method, the NC-SI sideband communication data message is an Ethernet message, and the data format is as shown in Figure 10.
在一种可实现的方式中,PCIE网卡200以字节为单位向设备管理单元120发送数据报文NC-SI Data(Data1,Data2,…,DataN)及每个字节数据对应的校验位T(T1,T2,…,TN)。In an implementable manner, the PCIE network card 200 sends the data message NC-SI Data (Data1, Data2,..., DataN) and the check bit corresponding to each byte of data to the device management unit 120 in units of bytes. T(T1, T2,…,TN).
S406:设备管理单元120向PCIE网卡200发送结束信号。设备管理单元120发起STOP,结束本次对外部以太网报文数据的接收操作。S406: The device management unit 120 sends an end signal to the PCIE network card 200. The device management unit 120 initiates STOP to end the current reception operation of external Ethernet message data.
应理解,本申请实施例中提到的“一个实施例”、“一实施例”、“一种实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。It should be understood that "one embodiment", "an embodiment" and "an implementation" mentioned in the embodiments of this application mean that specific features, structures or characteristics related to the embodiment or implementation are included in the embodiments of this application. In at least one embodiment. Therefore, “in one embodiment” or “in an embodiment” and “an implementation” appearing in various places throughout this specification do not necessarily refer to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined in any suitable manner in one or more embodiments.
以上所述仅为本申请的实施例,并不用以限制本申请,凡在本申请原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。 The above are only examples of the present application and are not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the principles of the present application shall be included in the protection scope of the present application.

Claims (12)

  1. 一种计算设备,其特征在于,所述计算设备包括设备管理单元和PCIE设备;所述设备管理单元包括I3C接口;所述PCIE设备包括I3C接口,所述设备管理单元与所述PCIE设备通过所述I3C接口连接;A computing device, characterized in that the computing device includes a device management unit and a PCIE device; the device management unit includes an I3C interface; the PCIE device includes an I3C interface, and the device management unit communicates with the PCIE device through the The above I3C interface connection;
    所述设备管理单元和所述PCIE设备通过所述I3C接口传输NC-SI边带通信数据;The device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface;
    其中,所述NC-SI边带通信数据包括数据报文和/或控制报文,其中,所述数据报文用于所述设备管理单元与外部网络通信,所述控制报文用于所述设备管理单元管理所述PCIE设备。Wherein, the NC-SI sideband communication data includes data messages and/or control messages, wherein the data messages are used for the device management unit to communicate with the external network, and the control messages are used for the The device management unit manages the PCIE device.
  2. 根据权利要求1所述的计算设备,其特征在于,所述设备管理单元与所述PCIE设备通过所述I3C接口传输NC-SI边带通信数据,包括:The computing device according to claim 1, wherein the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including:
    所述设备管理单元与所述PCIE设备通过所述I3C接口,基于I3C协议传输所述NC-SI边带通信数据。The device management unit and the PCIE device transmit the NC-SI sideband communication data based on the I3C protocol through the I3C interface.
  3. 根据权利要求2所述的计算设备,其特征在于,所述设备管理单元与所述PCIE设备通过所述I3C接口,基于I3C协议传输NC-SI边带通信数据,包括:所述设备管理单元与所述PCIE设备基于I3C协议的直接公共命令码命令传输所述NC-SI边带通信数据;其中,所述直接公共命令码用于指示所述设备管理单元与指定的所述PCIE设备通信。The computing device according to claim 2, wherein the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol through the I3C interface, including: the device management unit and the PCIE device transmit NC-SI sideband communication data based on the I3C protocol. The PCIE device transmits the NC-SI sideband communication data based on the direct public command code command of the I3C protocol; wherein the direct public command code is used to instruct the device management unit to communicate with the designated PCIE device.
  4. 根据权利要求3所述的计算设备,其特征在于,所述直接公共命令码命令包括直接写入和直接读取;所述设备管理单元与所述PCIE设备基于I3C协议的直接公共命令码命令传输NC-SI边带通信数据,包括:The computing device according to claim 3, wherein the direct common command code command includes direct writing and direct reading; the device management unit and the PCIE device transmit direct common command code commands based on the I3C protocol. NC-SI sideband communication data, including:
    所述设备管理单元与所述PCIE设备基于所述直接写入的帧格式和所述直接读取的帧格式传输所述控制报文。The device management unit and the PCIE device transmit the control message based on the directly written frame format and the directly read frame format.
  5. 根据权利要求3或4所述的计算设备,其特征在于,所述直接公共命令码命令包括直接写入;所述设备管理单元基于I3C协议的直接命令码命令与所述PCIE设备传输NC-SI边带通信数据,包括:所述设备管理单元基于所述直接写入的帧格式向所述PCIE设备发送所述数据报文;所述PCIE设备接收来自所述设备管理单元的所述数据报文。The computing device according to claim 3 or 4, characterized in that the direct common command code command includes direct writing; the device management unit transmits NC-SI with the PCIE device based on the direct command code command of the I3C protocol. Sideband communication data includes: the device management unit sending the data message to the PCIE device based on the directly written frame format; the PCIE device receiving the data message from the device management unit .
  6. 根据权利要求4或5所述的计算设备,其特征在于,所述直接写入的帧格式和所述直接读取的帧格式包括:所述设备管理单元向所述PCIE设备发送的自定义的直接公共命令码;The computing device according to claim 4 or 5, characterized in that the directly written frame format and the directly read frame format include: a customized frame format sent by the device management unit to the PCIE device. Direct public command code;
    其中,所述自定义的直接公共命令码用于指示传输所述控制报文或所述数据报文;所述自定义的直接公共命令码基于I3C协议中所述直接公共命令码的预留扩展命令码确定。Wherein, the self-defined direct public command code is used to instruct transmission of the control message or the data message; the self-defined direct public command code is based on the reserved extension of the direct public command code in the I3C protocol. The command code is confirmed.
  7. 根据权利要求6所述的计算设备,其特征在于,用于指示传输所述控制报文的所述自定义的直接公共命令码与用于指示传输所述数据报文的所述自定义的直接公共命令码不同。The computing device of claim 6, wherein the customized direct common command code used to instruct transmission of the control message is different from the customized direct common command code used to instruct transmission of the data message. The public command codes are different.
  8. 根据权利要求1至7任一项所述的计算设备,其特征在于,所述设备管理单元与PCIE设备通过所述I3C接口传输NC-SI边带通信数据,包括:The computing device according to any one of claims 1 to 7, characterized in that the device management unit and the PCIE device transmit NC-SI sideband communication data through the I3C interface, including:
    所述PCIE设备通过所述I3C接口,基于I3C协议带内中断机制向所述设备管理单元发送所述数据报文;The PCIE device sends the data message to the device management unit through the I3C interface and based on the I3C protocol in-band interrupt mechanism;
    所述设备管理单元接收所述数据报文。The device management unit receives the data message.
  9. 根据权利要求8所述的计算设备,其特征在于,所述PCIE设备通过所述I3C接口,基于I3C协议带内中断机制向所述设备管理单元发送所述数据报文之前,包括:The computing device according to claim 8, characterized in that, before the PCIE device sends the data message to the device management unit through the I3C interface based on the I3C protocol in-band interrupt mechanism, it includes:
    所述PCIE设备向所述设备管理单元发送自定义的强制数据字节值;The PCIE device sends a customized mandatory data byte value to the device management unit;
    其中,所述自定义的强制数据字节值用于指示所述PCIE设备向所述设备管理单元传输所述数据报文;所述自定义的强制数据字节值基于I3C协议中强制数据字节的预留扩展值确定;Wherein, the self-defined mandatory data byte value is used to instruct the PCIE device to transmit the data message to the device management unit; the self-defined mandatory data byte value is based on the mandatory data byte in the I3C protocol. The reserved extension value is determined;
    所述设备管理单元接收来自所述PCIE设备的所述自定义的强制数据字节值。The device management unit receives the customized mandatory data byte value from the PCIE device.
  10. 根据权利要求4-9任一项所述的计算设备,其特征在于,所述控制报文包括命令报文和响应报文;所述设备管理单元与所述PCIE设备基于所述直接写入的帧格式和所述直接读取的帧格式传输所述控制报文,包括: The computing device according to any one of claims 4 to 9, characterized in that the control message includes a command message and a response message; the device management unit and the PCIE device are based on the direct writing. The frame format and the directly read frame format for transmitting the control message include:
    所述设备管理单元基于所述直接写入的帧格式的数据字段向所述PCIE设备发送所述命令报文;所述命令报文用于管理所述PCIE设备;The device management unit sends the command message to the PCIE device based on the data field of the directly written frame format; the command message is used to manage the PCIE device;
    所述PCIE设备接收来自所述设备管理单元的所述命令报文;The PCIE device receives the command message from the device management unit;
    所述PCIE设备基于所述直接读取的帧格式的数据字段向设备管理单元发送所述响应报文;The PCIE device sends the response message to the device management unit based on the data field of the directly read frame format;
    所述设备管理单元接收来自PCIE设备的所述响应报文;所述响应报文用于指示管理结果。The device management unit receives the response message from the PCIE device; the response message is used to indicate the management result.
  11. 根据权利要求1-10任一项所述的计算设备,其特征在于,所述设备管理单元为设备管理器。The computing device according to any one of claims 1-10, characterized in that the device management unit is a device manager.
  12. 根据权利要求1-11任一项所述的计算设备,其特征在于,所述PCIE设备为PCIE网卡。 The computing device according to any one of claims 1-11, characterized in that the PCIE device is a PCIE network card.
PCT/CN2023/098417 2022-08-31 2023-06-05 Computing device WO2024045742A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211056291.7 2022-08-31
CN202211056291.7A CN115632900B (en) 2022-08-31 2022-08-31 Computing equipment

Publications (1)

Publication Number Publication Date
WO2024045742A1 true WO2024045742A1 (en) 2024-03-07

Family

ID=84902863

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/098417 WO2024045742A1 (en) 2022-08-31 2023-06-05 Computing device

Country Status (2)

Country Link
CN (1) CN115632900B (en)
WO (1) WO2024045742A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115632900B (en) * 2022-08-31 2023-09-01 超聚变数字技术有限公司 Computing equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210240567A1 (en) * 2020-02-03 2021-08-05 Dell Products, Lp System and method to run basic input/output system code from a non-volatile memory express device boot partition
CN113821083A (en) * 2020-06-18 2021-12-21 三星电子株式会社 System for storage and apparatus and method for performing communication management
US20220210229A1 (en) * 2020-12-30 2022-06-30 Dell Products, Lp System and method for providing secure console access with multtiple smart nics using nc-si and spdm
CN115632900A (en) * 2022-08-31 2023-01-20 超聚变数字技术有限公司 Computing device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690725B2 (en) * 2014-01-14 2017-06-27 Qualcomm Incorporated Camera control interface extension with in-band interrupt
WO2015054433A1 (en) * 2013-10-08 2015-04-16 Qualcomm Incorporated Coexistence of i2c slave devices and camera control interface extension devices on a shared control data bus
US20170255588A1 (en) * 2016-03-07 2017-09-07 Qualcomm Incorporated Multiprotocol i3c common command codes
US10439934B2 (en) * 2017-04-20 2019-10-08 Dell Products L.P. Systems and methods for addressing multiple physical and virtual functions in network controller-sideband interface
JP6983542B2 (en) * 2017-06-08 2021-12-17 ソニーセミコンダクタソリューションズ株式会社 Communication equipment, communication methods, programs, and communication systems
JP6976729B2 (en) * 2017-06-08 2021-12-08 ソニーセミコンダクタソリューションズ株式会社 Communication equipment, communication methods, programs, and communication systems
CN108255754B (en) * 2017-12-01 2019-11-19 广东高云半导体科技股份有限公司 A kind of I3C main equipment of compatible I2C, I3C master-slave equipment communication system and method
CN108847959B (en) * 2018-05-24 2021-01-15 联想(北京)有限公司 Server monitoring method and server
CN114969713A (en) * 2022-05-25 2022-08-30 超聚变数字技术有限公司 Equipment verification method, equipment and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210240567A1 (en) * 2020-02-03 2021-08-05 Dell Products, Lp System and method to run basic input/output system code from a non-volatile memory express device boot partition
CN113821083A (en) * 2020-06-18 2021-12-21 三星电子株式会社 System for storage and apparatus and method for performing communication management
US20220210229A1 (en) * 2020-12-30 2022-06-30 Dell Products, Lp System and method for providing secure console access with multtiple smart nics using nc-si and spdm
CN115632900A (en) * 2022-08-31 2023-01-20 超聚变数字技术有限公司 Computing device

Also Published As

Publication number Publication date
CN115632900B (en) 2023-09-01
CN115632900A (en) 2023-01-20

Similar Documents

Publication Publication Date Title
US8347008B2 (en) Method and system for hardware based implementation of USB 1.1 over a high speed link
AU2007278728B2 (en) Method and apparatus for distributing usb hub functions across a network
JP5054201B2 (en) Unified connector architecture
CN106959935B (en) Method compatible with I2C communication and IPMB communication
JP3629513B2 (en) Data processing system and method
US11720512B2 (en) Unified systems and methods for interchip and intrachip node communication
JP2001358733A (en) Method for using universal serial but (usb) as peer-to- peer network
WO2001017177A1 (en) Information communication system, information communication method, information signal processing device and information signal processing method, and storage medium
US20090286489A1 (en) Wireless Communications Between Wired Devices with Adaptive Data Rates
WO2024045742A1 (en) Computing device
JP2007087082A (en) Information processor and option device sharing method
EP2593876A1 (en) System and method for accessing resources of a pci express compliant device
TW202014901A (en) Slave-to-slave direct communication
TWI799179B (en) Computing systems and methods for management of a network device
CN100493018C (en) Communication method via bus interface of network and and system thereof
US6996124B1 (en) Mechanism to strip LARQ header and regenerate FCS to support sleep mode wake up
WO2012058875A1 (en) Method and system for serial communication
CN115391261A (en) High-speed peripheral component interconnection device and computing system comprising same
US20230315672A1 (en) Interface device and computing system including the same
JP3977240B2 (en) Electronics
JP2000224193A (en) Method of detecting equipment on network
JP2004129028A (en) Communication equipment
TW200929933A (en) Integrated network device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23858781

Country of ref document: EP

Kind code of ref document: A1