A Type-C debugging card, a debugging method and device
By connecting the Type-C debugging card to the computer motherboard, and using DIP switches and the main control module to acquire and display debugging information, the problem of not being able to acquire computer debugging information without disassembling the computer in the existing technology is solved, and convenient debugging information acquisition is realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- WUHAN BITLAND INFORMATION TECH CO LTD
- Filing Date
- 2022-12-19
- Publication Date
- 2026-04-24
AI Technical Summary
Existing technologies cannot obtain computer debugging information without disassembling the machine, especially in scenarios such as factory trial production, mass production, and client machine maintenance, where debugging information cannot be obtained through the external I/O ports of the casing.
A Type-C debug card was designed, including a DIP switch, a main control module, a first USB-C interface, and a display module. It is connected to the computer motherboard via a Type-C data cable. The main control module receives user debug commands and transmits them to the motherboard. The debug information fed back by the motherboard is displayed through the display module.
It enables communication with the computer motherboard via a Type-C data cable to obtain debugging information without disassembling the device, meeting the needs for obtaining debugging information in scenarios such as non-disassembly and client machine maintenance.
Smart Images

Figure CN116048892B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer debugging technology, and in particular to a Type-C debugging card, debugging method and apparatus. Background Technology
[0002] With the advancement of the times, computers have entered thousands of households.
[0003] During computer use, it is sometimes necessary to obtain debugging information. However, since the computer's debugging interface is soldered onto the motherboard, the computer casing needs to be removed to connect the debugging tools. Debugging information cannot be obtained through the external I / O ports of the casing, which cannot meet the needs of obtaining debugging information in situations such as not disassembling the machine, factory trial production and mass production where disassembly is not allowed, and client machine maintenance.
[0004] The above content is only used to help understand the technical solution of the present invention and does not represent an admission that the above content is prior art. Summary of the Invention
[0005] The main objective of this invention is to provide a Type-C debugging card, debugging method, and device, which aims to solve the technical problem that existing technologies cannot meet the requirements for obtaining debugging information in situations such as without disassembling the device or during client machine maintenance.
[0006] To achieve the above objectives, the present invention provides a Type-C debugging card, which includes: a DIP switch, a main control module, a first USB-C interface, and a display module;
[0007] The main control module is connected to the DIP switch, the first USB-C interface and the display module respectively, and the Type-C debugging card is connected to the computer motherboard via a Type-C data cable based on the first USB-C interface;
[0008] The DIP switch is used to acquire the user's debugging commands and transmit the debugging commands to the main control module;
[0009] The main control module is used to transmit the debugging command to the computer motherboard through the first USB-C interface when it receives the debugging command triggered by the DIP switch, so that the computer motherboard can provide corresponding debugging information when it receives the debugging command.
[0010] The main control module is also used to transmit the debugging information to the display module for display when it receives the debugging information fed back by the computer motherboard.
[0011] Optionally, the computer motherboard may also include a processor, a motherboard main control module, a protocol module, and a second USB-C interface;
[0012] The motherboard main control module is connected to the processor and the protocol module respectively, and the protocol module is also connected to the second USB-C interface;
[0013] The protocol module is used to receive the debugging command transmitted by the Type-C debugging card via the Type-C data cable through the second USB-C interface, and transmit the debugging command to the motherboard main control module.
[0014] Optionally, the computer motherboard further includes: a data selector;
[0015] The data selector is connected to the processor, the motherboard main control module, and the protocol module, respectively.
[0016] The motherboard main control module is used to obtain debugging information in the processor when the received debugging command is a first debugging command, and transmit the debugging information to the protocol module, wherein the debugging information is the first debugging information;
[0017] The protocol module is also used to receive debugging information sent by the motherboard main control module and transmit the debugging information to the Type-C debugging card through the second USB-C interface;
[0018] The main control module of the motherboard is also used to control the data selector to select a channel based on the GPIO group when the received debugging command is the second debugging command;
[0019] The data selector is used to select a channel and transmit serial port debugging information to the protocol module based on the motherboard's universal asynchronous transceiver. The serial port debugging information is the second debugging information.
[0020] The protocol module is also used to receive serial port debugging information sent by the motherboard's universal asynchronous transceiver, and transmit the serial port debugging information to the Type-C debugging card through the second USB-C interface.
[0021] Optionally, the Type-C debug card further includes: a universal asynchronous transceiver and a button module;
[0022] The universal asynchronous transceiver is connected to the main control module, and the button module is connected to both the main control module and the display module.
[0023] The main control module is also used to receive debugging information transmitted by the computer motherboard based on the first USB-C interface;
[0024] The main control module is also used to transmit the debugging information to the display module for display when the debugging information is the first debugging information;
[0025] The main control module is also used to export the debugging information to an external device based on the universal asynchronous transceiver when the debugging information is the second debugging information;
[0026] The button module is used to switch the display of the display module.
[0027] Optionally, the DIP switch or button module is further configured to acquire a blue screen command and transmit the blue screen command to the main control module;
[0028] The main control module is also used to transmit the blue screen command to the protocol module based on the first USB-C interface;
[0029] The protocol module is also used to receive the blue screen command based on the second USB-C interface and transmit the blue screen command to the motherboard main control module;
[0030] The motherboard main control module is also used to trigger a computer blue screen through the processor according to the blue screen command.
[0031] Optionally, the main control module is further configured to enable the response mode when it receives a response mode enable command sent by the computer motherboard.
[0032] Optionally, the main control module is further configured to receive a list retrieval instruction sent by the computer motherboard at preset intervals when the response mode is enabled;
[0033] The main control module is also used to transmit the list of commands supported by the Type-C debug card to the computer motherboard when it receives the list acquisition instruction, so that the computer motherboard can send a debug command acquisition instruction according to the command list;
[0034] The main control module is also used to transmit the debugging command triggered by the DIP switch to the computer motherboard when it receives the debugging command acquisition instruction.
[0035] Optionally, the Type-C debug card and the computer motherboard transmit data based on the USB-PD protocol.
[0036] Furthermore, to achieve the above objectives, the present invention also proposes a Type-C debugging method, which includes the following steps:
[0037] Debugging commands input by the user are obtained based on DIP switches;
[0038] The debugging command is sent to the computer motherboard, so that the computer motherboard can provide debugging information based on the debugging command.
[0039] When debugging information is received from the computer motherboard, the debugging information is displayed.
[0040] In addition, to achieve the above objectives, the present invention also proposes a Type-C debugging device, wherein the Type-C debugging device is provided with a Type-C debugging card as described above.
[0041] The Type-C debug card of the present invention includes: a DIP switch, a main control module, a first USB-C interface, and a display module; the main control module is connected to the DIP switch, the first USB-C interface, and the display module respectively; the Type-C debug card is connected to a computer motherboard via a Type-C data cable through the first USB-C interface; the DIP switch is used to acquire user debug commands and transmit the debug commands to the main control module; the main control module is used to transmit the debug commands to the computer motherboard through the first USB-C interface when it receives the debug commands triggered by the DIP switch, so that the computer motherboard can provide corresponding debug information upon receiving the debug commands; the main control module is also used to transmit the debug information received from the computer motherboard to the display module for display when it acquires the debug information. The Type-C debug card transmits user-triggered debug commands via a DIP switch to the computer motherboard through a Type-C data cable. It then uses a display module to show the debug information fed back by the computer motherboard based on the debug commands. Compared to existing methods that require disassembly to export computer debug information, this invention connects to the computer motherboard via a Type-C data cable and obtains debug information through communication with the motherboard, thus satisfying the need for obtaining debug information without disassembly or during client machine maintenance. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the structures shown in these drawings without creative effort.
[0043] Figure 1 This is a schematic diagram of the structure of the first embodiment of the Type-C debug card proposed in this invention;
[0044] Figure 2 This is a schematic diagram of an application scenario for the Type-C debug card of the present invention;
[0045] Figure 3 This is a schematic diagram illustrating another application scenario of the Type-C debug card of the present invention;
[0046] Figure 4 This is a schematic diagram of the communication protocol between the Type-C debug card and the computer motherboard of this invention.
[0047] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0048] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
[0049] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present invention.
[0050] Furthermore, the use of terms such as "first" and "second" in this invention is for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined with "first" or "second" may explicitly or implicitly include at least one of that feature. Additionally, the technical solutions of the various embodiments can be combined with each other, but only on the basis of being achievable by those skilled in the art. When the combination of technical solutions is contradictory or impossible to implement, the user should consider such a combination of technical solutions to be non-existent and not within the scope of protection claimed by this invention.
[0051] Reference Figure 1 , Figure 1 This is a schematic diagram of the structure of the first embodiment of the Type-C debug card proposed in this invention;
[0052] based on Figure 1 The first embodiment of the Type-C debug card of the present invention is presented.
[0053] In this embodiment, the Type-C debugging card is used to debug the computer's boot software and includes: a DIP switch, a main control module, and a first USB-C interface;
[0054] The main control module is connected to the DIP switch and the first USB-C interface respectively, and the Type-C debugging card is connected to the computer motherboard via a Type-C data cable based on the first USB-C interface;
[0055] The DIP switch is used to acquire the user's debugging commands and transmit the debugging commands to the main control module;
[0056] The main control module is used to transmit the debugging command to the computer motherboard through the first USB-C interface when it receives the debugging command triggered by the DIP switch, so that the computer motherboard can provide corresponding debugging information when it receives the debugging command.
[0057] The main control module is also used to obtain debugging information fed back from the computer motherboard.
[0058] It is understandable that the aforementioned DIP switch is an address switch that can be used for operation and control. It adopts the binary encoding principle of 0 / 1. Users send debugging commands by toggling the DIP switch set on the Type-C debug card.
[0059] It should be understood that the aforementioned first USB-C interface is located on the Type-C debugging card and is used for data exchange with the computer motherboard that needs to be debugged.
[0060] It should be noted that the aforementioned main control module is a main control chip that performs data transmission based on the USB-PD protocol. Its model can be either an LDR6028 chip or an LDR6023 chip; this embodiment does not impose any restrictions. The main control module transmits data with the computer motherboard via the USB-C interface through the CC1 / CC2 signals.
[0061] It should be understood that the aforementioned display module can be a digital tube. After the Type-C debugging card receives the debugging information fed back by the computer motherboard, it can transmit the debugging information to the display module, which is used to display the debugging information fed back by the computer motherboard.
[0062] It is understood that the debugging command is a command that can debug the computer, which can be a blue screen command, an information acquisition command, or a command to enable other functions. This embodiment does not limit this.
[0063] It should be noted that the debugging information is information that can be used to determine the computer's operating status, and it can be hardware information or system software information. This embodiment does not impose any restrictions on it.
[0064] In practice, the user sends a debugging command by toggling a DIP switch. The main control module sends the debugging command to the computer motherboard via the USB-C interface. The computer motherboard executes the debugging command and feeds back the debugging information to the main control module. The main control module then displays the debugging information through the display module, allowing technicians to debug the computer's startup software based on the debugging information.
[0065] Furthermore, in order to process the debugging information fed back from the computer motherboard, the Type-C debugging card also includes: a button module;
[0066] The button module is connected to the main control module and the display module respectively;
[0067] The button module is used to switch the display of the display module.
[0068] It should be noted that the aforementioned button module may include buttons such as UP, DOWN, MENU, and RESET. The UP and DOWN buttons can switch the display of the display module. The MENU button is the function menu access key, which can be used to customize the backup functions. Users can also use the MENU button to view the debugging functions supported by the debugging card and transmit debugging commands to the main control module through the button module, so that the main control module can transmit the debugging commands to the computer motherboard through the USB-C interface. The RESET button can reset the debugging card. The debugging command selected by the user through the button module can be the same as or different from the debugging command triggered by the DIP switch. This embodiment does not impose any restrictions on this.
[0069] Understandably, when the Type-C debug card receives debug information from the computer motherboard, it can output the debug information to the display module, display the debug information, and adjust the display using the button module. At the same time, the user can also select debug commands using the button module.
[0070] This embodiment features a Type-C debug card equipped with a DIP switch, a main control module, a USB-C interface, and a display module. Data is transmitted between the card and the computer motherboard via a Type-C data cable. User debug commands are acquired via the DIP switch and sent to the motherboard via the USB-C interface through the main control module. The main control module then receives debug information from the motherboard and displays it through the display module. Connecting to the USB-C interface on the motherboard via the Type-C data cable allows for direct export of debug information from the computer, satisfying the need for obtaining debug information without disassembling the device or during client machine maintenance.
[0071] Furthermore, based on the above Figure 1 The first embodiment of the present invention is shown, and the second embodiment of the Type-C debugging card of the present invention is shown. Corresponding to the Type-C debugging card, the computer motherboard is also provided with a processor, a motherboard main control module, a protocol module and a second USB-C interface.
[0072] The motherboard main control module is connected to the processor and the protocol module respectively, and the protocol module is also connected to the second USB-C interface;
[0073] The protocol module is used to receive the debugging command transmitted by the Type-C debugging card via the Type-C data cable through the second USB-C interface, and transmit the debugging command to the motherboard main control module.
[0074] The motherboard main control module is connected to the processor and the protocol module respectively, and the protocol module is also connected to the second USB-C interface;
[0075] The protocol module is used to receive the debugging command transmitted by the Type-C debugging card via the Type-C data cable through the second USB-C interface, and transmit the debugging command to the motherboard main control module.
[0076] It is understood that the aforementioned protocol module can be a USB-PD protocol chip located inside the computer motherboard, or a USB-PD based TCPC chip (USB Type-C Port Controller). This module can be used to interact with the main control module of the Type-C debug card. The computer motherboard interacts with the Type-C debug card through this protocol module, receives debug commands from the Type-C debug card, and exports the corresponding debug information to enable debugging of the computer's boot software.
[0077] It should be noted that the processor mentioned above is the central processing unit, which operates and processes the computer system and is the final execution unit for information processing and program execution.
[0078] It is understandable that the aforementioned second USB-C interface is located on the computer motherboard and can be used to connect with the first USB-C interface on the Type-C debugging card. The computer motherboard and the Type-C debugging card exchange data via a Type-C data cable through the USB-C interface to enable debugging of the computer's boot software.
[0079] It should be noted that the aforementioned motherboard main control module can be an EC chip (Embedded Controller) set on the computer motherboard, which is used to process and control the data and modules in the computer motherboard. The data can be data sent to the computer motherboard by the Type-C debugging card through the USB-C interface, or it can be data transmitted inside the computer motherboard. This embodiment does not limit this.
[0080] Understandably, the protocol module on the computer motherboard obtains the debugging commands transmitted by the Type-C debugging card through the second USB-C interface and sends the debugging commands to the motherboard main control module for execution.
[0081] Furthermore, the computer motherboard also needs to process the received debugging commands. Different debugging commands may return different debugging information. Therefore, the computer motherboard also includes a data selector.
[0082] The data selector is connected to the processor, the motherboard main control module, and the protocol module, respectively.
[0083] The motherboard main control module is used to obtain debugging information in the processor when the received debugging command is a first debugging command, and transmit the debugging information to the protocol module, wherein the debugging information is the first debugging information;
[0084] The protocol module is also used to receive debugging information sent by the motherboard main control module and transmit the debugging information to the Type-C debugging card through the second USB-C interface;
[0085] The main control module of the motherboard is also used to control the data selector to select a channel based on the GPIO group when the received debugging command is the second debugging command;
[0086] The data selector is used to select a channel and transmit serial port debugging information to the protocol module based on the motherboard's universal asynchronous transceiver. The serial port debugging information is the second debugging information.
[0087] The protocol module is also used to receive serial port debugging information sent by the motherboard's universal asynchronous transceiver, and transmit the serial port debugging information to the Type-C debugging card through the second USB-C interface.
[0088] Understandably, a computer motherboard can be equipped with a MUX data selector. The motherboard's main control module can control the MUX data selector to select channels and output the corresponding data through the GPIO group.
[0089] It should be noted that the first debugging command mentioned above is a command to obtain debugging information in the processor. This debugging information is the first debugging information, which can be an 80H POST code, an 81H POST code, or other debugging information in the processor. This embodiment does not limit this. The second debugging command mentioned above is a command to obtain serial port debugging information. This serial port debugging information is the second debugging information, which can include CPU UART information, EC UART information, or other information.
[0090] It should be explained that the protocol module receives debugging commands sent by the Type-C debugging card via the Type-C data line through the second USB-C interface, and transmits the debugging commands to the motherboard main control module via I2C / Gpio_int. The motherboard main control module processes the received debugging commands. When the debugging command is the first debugging command, it outputs the first debugging information obtained from the processor to the Type-C debugging card. When the debugging command is the second debugging command, the motherboard main control module controls the MUX data selector to select the channel through the GPIO (General-purpose input / output) group and outputs the second debugging information to the motherboard UART. The protocol module obtains the debugging information from the motherboard UART and transmits the debugging information to the Type-C debugging card.
[0091] It should be noted that another set of I2C signals from the motherboard's main control module can be multiplexed onto the USB-C USB 2.0 signal via the protocol module.
[0092] Furthermore, in order to enable the Type-C debug card to perform different processing when it receives different debug information, the Type-C debug card also includes: a universal asynchronous transceiver and a button module;
[0093] The universal asynchronous transceiver is connected to the main control module, and the button module is connected to both the main control module and the display module.
[0094] The main control module is also used to receive debugging information transmitted by the computer motherboard based on the first USB-C interface;
[0095] The main control module is also used to transmit the debugging information to the display module for display when the debugging information is the first debugging information;
[0096] The main control module is also used to export the debugging information to an external device based on the universal asynchronous transceiver when the debugging information is the second debugging information;
[0097] The button module is used to switch the display of the display module.
[0098] It should be understood that the debugging information may contain multiple pieces of information or be too much to be displayed at once. Therefore, when displaying the debugging information through the display module, the button module can be used to switch the displayed debugging information.
[0099] Understandably, the main control module of the Type-C debug card judges the received debug information. When the debug information is the first debug information, it displays the debug information through the display module; when the debug information is the second debug information, it exports the debug information to an external device based on the universal asynchronous transceiver so that technicians can analyze and judge the debug information.
[0100] Furthermore, during computer debugging, faults may occur that need to be handled. Therefore, the DIP switch or button module is also used to acquire blue screen commands and transmit the blue screen commands to the main control module.
[0101] The main control module is also used to transmit the blue screen command to the protocol module based on the first USB-C interface;
[0102] The protocol module is also used to receive the blue screen command based on the second USB-C interface and transmit the blue screen command to the motherboard main control module;
[0103] The motherboard main control module is also used to trigger a computer blue screen through the processor according to the blue screen command.
[0104] It is understandable that the above blue screen command is to cause the motherboard's main control module to execute the command to trigger the blue screen by pulling the NMI (Non Maskable Interrupt) GPIO signal.
[0105] In practice, users select the NMI to trigger the blue screen function via a DIP switch or button module. At this time, the Type-C debug card sends a blue screen command to the computer motherboard. The computer motherboard receives the blue screen command through the protocol module and passes it to the main control module of the motherboard via I2C or GPIO_int. This causes the main control module of the motherboard to execute the processor to pull the NMI GPIO signal to trigger the blue screen. When the computer triggers the blue screen, it can display fault information on the screen, and technicians can select a solution based on the fault information.
[0106] In this embodiment, the protocol module of the computer motherboard receives the debugging command sent by the Type-C debugging card and transmits the debugging command to the motherboard main control module. The motherboard module judges the debugging command. When the debugging command is the first debugging command, it sends the debugging information obtained from the processor to the Type-C debugging card through the protocol module. When the debugging command is the second debugging command, it controls the data selector to send the debugging information to the Type-C debugging card through the protocol module. The main control module on the Type-C debugging card judges the received debugging information, transmits the first debugging information to the display module for display, and exports the second debugging information to an external device through a universal asynchronous transceiver. This realizes the acquisition and processing of different debugging information in the computer motherboard, making the debugging of computer startup software more convenient.
[0107] Reference Figure 2 , Figure 2 This is a schematic diagram of an application scenario for the Type-C debug card of the present invention;
[0108] Figure 2 This diagram illustrates a scenario where a Type-C debug card interacts with a desktop or laptop computer. The motherboard of this desktop or laptop computer has an EC chip added as the main control chip and a PD chip added as the protocol chip, which is also used as the Device Policy Manager.
[0109] The EC chip serves as the main control chip for implementing functions. It controls the MUX Switch to switch channels through the GPIO group, acts as the I2C Master to transmit information with the PD chip, is used for EC UART debugging information output, and can also interact with the CPU through LPC / ESPI.
[0110] As the main control chip of the Type-C protocol, the PD chip interacts with external devices through the USB-C interface.
[0111] The CPU (BIOS) acts as the host, sending commands and can also be used for BIOS UART debugging information output.
[0112] The MUX Switch performs channel switching, switching the EC Uart or BIOS Uart to the MUX output Uart.
[0113] In its implementation, the Type-C debug card is powered via a power interface. Users trigger debug commands by toggling a DIP switch on the Type-C debug card. The main control module on the Type-C debug card transmits the debug commands to the protocol module on the computer motherboard via CC1 / CC2 signals through the USB-C interface. The protocol module then transmits the received debug commands to the motherboard's main control module via I2C / GPIO_int. The motherboard's main control module controls the data selector via GPIO groups based on the acquired debug command data. The data selector selects the channel and outputs CPU UART or RC UART information to the motherboard UART. After the motherboard UART information is input to the protocol module on the computer motherboard, it can be transmitted to the Type-C debug card via the USB-C interface on the computer motherboard in the form of CC1 / CC2 signals. Meanwhile, another set of I2C signals from the motherboard's main control module can be used to connect to the USB 2.0 signals of the USB-C interface through the protocol module.
[0114] Meanwhile, the Type-C debug card is also equipped with a display module. Every time the Type-C debug card is connected to the USB-C interface of the computer motherboard, the protocol module of the computer motherboard will output the 80 code / 81 code that the motherboard main control module has saved in advance to the Type-C debug card. The display module can display the 80 code / 81 code received by the Type-C debug card. The Type-C debug card is also equipped with a button module to switch the display module.
[0115] Furthermore, users can select NMI to trigger a blue screen via a DIP switch or the MENU function in the button module; the Type-C debug card main control module transmits the NMI-triggered blue screen information to the computer motherboard protocol module via CC1 / CC2 signals; the protocol module then transmits the NMI-triggered blue screen information to the motherboard main control module via I2C / Gpio_int, thereby enabling the motherboard main control module to execute the processor (CPU) to pull the NMI GPIO signal to trigger a blue screen.
[0116] In addition, users can customize functions using the MENU menu function buttons on the Type-C debug card.
[0117] Reference Figure 3 , Figure 3 This is a schematic diagram illustrating another application scenario of the Type-C debug card of the present invention;
[0118] Figure 3 This is a schematic diagram illustrating a scenario of interaction between a Type-C debugging card and a desktop computer. The desktop computer's motherboard incorporates an EC chip as the main control chip and a TCPC chip as the protocol chip for device policy management.
[0119] The EC chip serves as the main control chip for implementing functions, and also acts as the I2C Master to transmit information with the TCPC chip; it is also used to transmit EC UART debugging information output to TCPC via I2C; it can also interact with the CPU via LPC / ESPI; and it can provide a serial port COM port so that the CPU can output debugging information through this COM port.
[0120] The TCPC chip, also known as the PD PHY chip, acts as a Physical Layer controller for the Type-C protocol and interacts with external devices via USB-C port information.
[0121] The CPU (BIOS) acts as the host and sends the command.
[0122] The MUX Switch performs channel switching, allowing the EC Uart or BIOS Uart to switch to the MUX output Uart.
[0123] In its implementation, the Type-C debug card is powered via a power interface. The Type-C debug card also features a display module. Each time the Type-C debug card connects to the computer motherboard's USB-C port, the motherboard's protocol module outputs the 80 / 81 codes pre-saved by the motherboard's main control module to the Type-C debug card. The display module can then display the 80 / 81 codes received by the Type-C debug card. The Type-C debug card also has a button module that allows users to switch between different display modules.
[0124] Furthermore, users can select NMI to trigger a blue screen via a DIP switch or the MENU function in the button module; the Type-C debug card main control module transmits the NMI-triggered blue screen information to the computer motherboard protocol module via CC1 / CC2 signals; the protocol module then transmits the NMI-triggered blue screen information to the motherboard main control module via I2C / Gpio_int, thereby enabling the motherboard main control module to execute the processor (CPU) to pull the NMI GPIO signal to trigger a blue screen.
[0125] In addition, users can trigger debugging commands by toggling the DIP switches on the Type-C debug card; the main control module on the Type-C debug card transmits the debugging commands to the TCPC chip on the computer motherboard via the CC1 / CC2 signals through the USB-C interface; the TCPC chip transmits the received debugging commands to the EC chip via I2C / Gpio_int; the CPU transmits BIOS UART debugging information to the EC chip via the Serial Port; after receiving the debugging commands sent by the TCPC chip, the EC chip transmits the BIOS UART debugging information and EC UART debugging information to the Type-C debug card via the TCPC chip; after receiving the debugging information, the Type-C debug card can export the debugging information via a universal asynchronous transceiver.
[0126] Furthermore, the communication process of the EC chip should meet the following requirements:
[0127] The PC (Personal Computer) has a fixed Data Role as DFP (Downstream Facing Port), while the Type-C debug card has a fixed Data Role as UFP (Upstream Facing Port). Because UVDM (Unstructured Vendor Defined Message) can only be initiated by the DFP, the 80H and 81H POST Codes are actively sent by the PC to the Type-C debug card. The PC sends a UVDM Command to obtain function information from the Type-C debug card. After receiving the UVDM Command, the Type-C debug card responds and returns function information.
[0128] It is easy to understand that the above UVDM Command is an unstructured original equipment manufacturer (OEM) defined message command, and the number of commands can be at least one.
[0129] In addition, the PC can send a UVDM Command to send 80 code information to the Type-C debug card, and the Type-C debug card responds to the 80 code sent by the PC (response is optional).
[0130] In addition, the PC can send a UVDM Command to the Type-C debug card to ask whether NMI needs to be triggered. If NMI needs to be triggered, the Type-C debug card sends a response; if NMI does not need to be triggered, the Type-C debug card does not send a response.
[0131] In addition, the PC can send a UVDM Command to the Type-C debug card to ask which MUX channel it needs to switch to. After receiving the Command, the debug card returns the corresponding channel SEL1 and SEL0.
[0132] It is understandable that the SEL1 and SEL0 channels mentioned above are used to output different debugging information.
[0133] refer to Figure 4 , Figure 4 This is a schematic diagram of the communication protocol between the Type-C debug card and the computer motherboard of this invention.
[0134] It should be noted that when the computer motherboard and the Type-C debug card are connected via a Type-C data cable, the computer motherboard can send a discovery ID request to the Type-C debug card; after the Type-C debug card receives the discovery ID request, it responds to the request from the computer motherboard; after the Type-C debug card responds to the discovery ID request, the computer motherboard sends a discovery message request, the Type-C debug card receives the response message request, and returns a message to the computer motherboard.
[0135] It is easy to understand that the messages returned by the Type-C debug card can include function information from within the Type-C debug card.
[0136] It should be noted that the computer motherboard determines the type of message returned by the Type-C debug card. If the message does not contain a custom message, the computer motherboard executes other commands. If the message contains a custom message, the computer motherboard sends a discovery mode request to the Type-C debug card. The Type-C debug card responds if it supports mode one. After the Type-C debug card responds to the request, the computer motherboard sends a request to the Type-C debug card to enable mode one. The Type-C debug card responds to the request and enables mode one.
[0137] It should be explained that the above-mentioned mode one is the response mode of the Type-C debug card. When the response mode is enabled, the Type-C debug card can respond to commands sent by the computer motherboard based on the function information in the debug card.
[0138] Furthermore, the computer motherboard performs mode determination. If the Type-C debugging card is not in mode one within a preset time, the response ends. This preset time can be any time set by the administrator. When the Type-C debugging card is in mode one, the computer motherboard sends the first command to the Type-C debugging card every preset time to obtain the command list. This preset time can be 200ms, 300ms, or other times set by the administrator.
[0139] Furthermore, after receiving the first command, the Type-C debug card returns a list of supported commands. The computer motherboard, upon receiving this list, sends a second command, retrieves the user-defined debug command from the command list, and processes and responds to the user-defined debug command after the Type-C debug card returns it. After the computer motherboard sends a request to the Type-C debug card to exit mode one (response mode), the Type-C debug card exits mode one, ending the response.
[0140] It is understood that, corresponding to mode one, the Type-C debugging card in this invention can also be preset with modes two to N, which can be set by administrators.
[0141] Furthermore, this invention also proposes a Type-C debugging method, which includes: acquiring a debugging command input by a user based on a DIP switch; sending the debugging command to a computer motherboard so that the computer motherboard can provide debugging information based on the debugging command; and receiving the debugging information provided by the computer motherboard.
[0142] This embodiment obtains the debugging command input by the user based on the DIP switch and sends the debugging command to the computer motherboard so that the computer can return debugging information. When the debugging information is received from the computer motherboard, the debugging information is displayed. The debugging information in the computer can be directly exported, which meets the needs of obtaining debugging information without disassembling the machine or during client machine maintenance.
[0143] Furthermore, this embodiment of the invention also proposes a Type-C debugging device, which is the Type-C debugging card described above.
[0144] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.
[0145] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0146] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0147] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.
Claims
1. A Type-C debug card, characterized in that, The Type-C debug card includes: a DIP switch, a main control module, a first USB-C interface, and a display module; The main control module is connected to the DIP switch, the first USB-C interface and the display module respectively, and the Type-C debugging card is connected to the computer motherboard via a Type-C data cable based on the first USB-C interface; The DIP switch is used to acquire the user's debugging commands and transmit the debugging commands to the main control module; The main control module is used to transmit the debugging command to the computer motherboard through the first USB-C interface when it receives the debugging command triggered by the DIP switch, so that the computer motherboard can provide corresponding debugging information when it receives the debugging command. The main control module is also used to transmit the debugging information fed back by the computer motherboard to the display module for display when it receives the debugging information; The computer motherboard also includes a processor, a motherboard main control module, a protocol module, and a second USB-C interface; The motherboard main control module is connected to the processor and the protocol module respectively, and the protocol module is also connected to the second USB-C interface; The protocol module is used to receive the debugging command transmitted by the Type-C debugging card via the Type-C data cable through the second USB-C interface, and to transmit the debugging command to the motherboard main control module; The computer motherboard also includes: a data selector; The data selector is connected to the processor, the motherboard main control module, and the protocol module, respectively. The motherboard main control module is used to obtain debugging information in the processor when the received debugging command is a first debugging command, and transmit the debugging information to the protocol module, wherein the debugging information is the first debugging information; The protocol module is also used to receive debugging information sent by the motherboard main control module and transmit the debugging information to the Type-C debugging card through the second USB-C interface; The main control module of the motherboard is also used to control the data selector to select a channel based on the GPIO group when the received debugging command is the second debugging command; The data selector is used to select a channel and transmit serial port debugging information to the protocol module based on the motherboard's universal asynchronous transceiver. The serial port debugging information is the second debugging information. The protocol module is also used to receive serial port debugging information sent by the motherboard's universal asynchronous transceiver, and transmit the serial port debugging information to the Type-C debugging card through the second USB-C interface.
2. The Type-C debug card as described in claim 1, characterized in that, The Type-C debug card also includes: a universal asynchronous transceiver and a button module; The universal asynchronous transceiver is connected to the main control module, and the button module is connected to both the main control module and the display module. The main control module is also used to receive debugging information transmitted by the computer motherboard based on the first USB-C interface; The main control module is also used to transmit the debugging information to the display module for display when the debugging information is the first debugging information; The main control module is also used to export the debugging information to an external device based on the universal asynchronous transceiver when the debugging information is the second debugging information; The button module is used to switch the display of the display module.
3. The Type-C debug card as described in claim 2, characterized in that, The DIP switch or button module is also used to acquire the blue screen command and transmit the blue screen command to the main control module; The main control module is also used to transmit the blue screen command to the protocol module based on the first USB-C interface; The protocol module is also used to receive the blue screen command based on the second USB-C interface and transmit the blue screen command to the motherboard main control module; The motherboard main control module is also used to trigger a computer blue screen through the processor according to the blue screen command.
4. The Type-C debug card as described in claim 1, characterized in that, The main control module is also used to enable the response mode when it receives a response mode enable command sent by the computer motherboard.
5. The Type-C debug card as described in claim 4, characterized in that, The main control module is also used to receive a list retrieval instruction sent by the computer motherboard at preset intervals when the response mode is enabled. The main control module is also used to transmit the list of commands supported by the Type-C debug card to the computer motherboard when it receives the list acquisition instruction, so that the computer motherboard can send a debug command acquisition instruction according to the command list; The main control module is also used to transmit the debugging command triggered by the DIP switch to the computer motherboard when it receives the debugging command acquisition instruction.
6. The Type-C debugging card as described in any one of claims 1-5, wherein the Type-C debugging card and the computer motherboard transmit data based on the USB-PD protocol.
7. A Type-C debugging method, characterized in that, The method is used with the Type-C debug card as described in any one of claims 1-6, the method comprising: Debugging commands input by the user are obtained based on DIP switches; The debugging command is sent to the computer motherboard, so that the computer motherboard can provide debugging information based on the debugging command. When debugging information is received from the computer motherboard, the debugging information is displayed. The computer motherboard also includes a processor, a motherboard main control module, a protocol module, and a second USB-C interface; the motherboard main control module is connected to the processor and the protocol module respectively, and the protocol module is also connected to the second USB-C interface; The protocol module receives the debugging command transmitted by the Type-C debugging card via the Type-C data cable through the second USB-C interface, and transmits the debugging command to the motherboard main control module; The computer motherboard also includes: a data selector; The data selector is connected to the processor, the motherboard main control module, and the protocol module, respectively. When the received debugging command is the first debugging command, the main control module of the motherboard obtains the debugging information in the processor and transmits the debugging information to the protocol module, wherein the debugging information is the first debugging information; The protocol module is also used to receive debugging information sent by the motherboard main control module and transmit the debugging information to the Type-C debugging card through the second USB-C interface; When the received debugging command is the second debugging command, the main control module of the motherboard controls the data selector to select the channel based on the GPIO group; The data selector performs channel selection and transmits the serial port debugging information to the protocol module based on the motherboard's general asynchronous transceiver. The serial port debugging information is the second debugging information. The protocol module receives serial port debugging information sent by the motherboard's universal asynchronous transceiver and transmits the serial port debugging information to the Type-C debugging card through the second USB-C interface.
8. A Type-C debugging device, characterized in that, The Type-C debugging device is provided with a Type-C debugging card as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Testing functional component and data debugging method
WO2017166211A1