CN116302135A - Method, system, equipment and medium for self-adapting PCIe display card - Google Patents

Method, system, equipment and medium for self-adapting PCIe display card Download PDF

Info

Publication number
CN116302135A
CN116302135A CN202310296098.9A CN202310296098A CN116302135A CN 116302135 A CN116302135 A CN 116302135A CN 202310296098 A CN202310296098 A CN 202310296098A CN 116302135 A CN116302135 A CN 116302135A
Authority
CN
China
Prior art keywords
address
pcie
graphics card
space
card
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310296098.9A
Other languages
Chinese (zh)
Inventor
张国磊
王宏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310296098.9A priority Critical patent/CN116302135A/en
Publication of CN116302135A publication Critical patent/CN116302135A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

The invention provides a method, a system, equipment and a medium for a self-adaptive PCIe display card, wherein the method comprises the following steps: the method comprises the steps of initializing and configuring an input/output address space and a register required by a display card to determine a space address required by the display card; establishing a mapping relation among the display card address, the display card provider address and the space address; acquiring a space address according to the display card address or the display card provider address; and initializing the display card according to the space address. Based on a method of the self-adaptive PCIe display card, a system, equipment and medium of the self-adaptive PCIe display card are also provided. The invention solves the problem of abnormal VGA display by dynamically distributing the space address of the PCIe base address register, is automatically suitable for various display cards, and avoids abnormal display. Different space addresses are allocated for suppliers of different devices, and the problem that a display is in black screen or split-screen display is avoided by dynamically allocating addresses of display cards.

Description

Method, system, equipment and medium for self-adapting PCIe display card
Technical Field
The invention belongs to the technical field of server display, and particularly relates to a method, a system, equipment and a medium for a self-adaptive PCIe display card.
Background
PCI-Express (peripheral component interconnect express) is a high-speed serial computer expansion bus standard, originally called "3GIO", proposed by Intel in 2001, intended to replace the old PCI, PCI-X and AGP bus standards. PCIe belongs to high-speed serial point-to-point dual-channel high-bandwidth transmission, where connected devices allocate exclusive channel bandwidth, do not share bus bandwidth, and mainly support functions such as active power management, error reporting, end-to-end reliability transmission, hot plug, and quality of service (QOS). PCIe is not named "PCI-Express", abbreviated as "PCI-e" until it is issued by PCI-SIG (PCI special interest group) authentication. Its main advantage is high data transmission speed and considerable development potential. PCI Express also has a variety of specifications, from PCI Express x1 to PCI Express x32, which can meet the demands of low-speed devices and high-speed devices that occur in a certain time in the future. The PCI-Express interface is a pcie3.0 interface, with a bit rate of 8Gbps, which is about twice the bandwidth of the previous generation of products, and contains a series of important new functions such as transmitter and receiver equalization, PLL improvement, and clock data recovery, for improving data transmission and data protection performance.
In addition to the CPU, a system BMC independent of the CPU is operated in the server, and the BMC is used for monitoring a main board of the server and providing an external interface which mainly comprises various forms such as IPMI and the like. BMC (Baseboard Management Controller) is a baseboard management controller; IPMI: (Intelligent Platform Management Interface), i.e., the intelligent platform management interface). The BMC system runs on the BMC chip, and the BMC chip processes and uses the VGA information as a PCIe display card of the CPU besides being used as an ARM, and can display the VGA information of the CPU, and display the VGA information of the CPU outwards through remote, wherein the VGA information is video transmission information data. In the prior art, after a part of BMC chips are mounted on a CPU as PCIe devices, because static allocation is adopted, the displayed VGA signals are abnormal, namely, the screen black and white split screen or screen black screen and other abnormal conditions are often generated.
Disclosure of Invention
In order to solve the technical problems, the invention provides a method, a system, equipment and a medium for self-adapting PCIe display cards, which are automatically adapted to various display cards and avoid abnormal display.
In order to achieve the above purpose, the present invention adopts the following technical scheme:
a method of an adaptive PCIe graphics card, comprising the steps of:
determining a space address required by the PCIe display card;
establishing a mapping relation among PCIe graphics card addresses, graphics card provider addresses and space addresses;
acquiring a space address according to the PCIe graphics card address or the graphics card provider address; and initializing the PCIe display card according to the space address.
Further, the determining the space address required by the PCIe display card further includes: and initializing and configuring an input/output address space and a register required by the PCIe display card.
Further, the process of determining the space address required by the PCIe graphics card is: by configuring the base address register in the space address header, the system allocates an available address for the PCIe graphics card.
Further, the allocating, by configuring the base address register in the space address header, the available address for the PCIe graphics card by the system specifically includes: and taking the base address register in the first header or the base address register in the second header as an available address of the PCIe display card.
Further, the method further comprises:
when the number of the base address registers required by the PCIe display card is less than or equal to 2, selecting a first header or a second header;
when the number of the base address registers required by the PCIe display card is more than or equal to 3 and less than or equal to 6, selecting a first header.
Further, the process of establishing the mapping relationship among the PCIe graphics card address, the graphics card provider address, and the space address includes: and establishing a corresponding table among the PCIe graphics card address, the graphics card provider address and the base address register address.
The invention also provides a system of the self-adaptive PCIe display card, which comprises: the device comprises a determining module, a building module and an initializing module;
the determining module is used for determining a space address required by the PCIe display card;
the establishing module is used for establishing a mapping relation among the PCIe graphics card address, the graphics card provider address and the space address;
the initialization module is used for acquiring a space address according to the PCIe graphics card address or the graphics card provider address; and initializing the PCIe display card according to the space address.
Further, the system also comprises a configuration module;
the configuration module is used for initializing and configuring an input/output address space and a register required by the PCIe display card.
The invention also proposes a device comprising:
a memory for storing a computer program;
and a processor for implementing the method steps when executing the computer program.
The invention also proposes a readable storage medium having stored thereon a computer program which, when executed by a processor, implements the method steps.
The effects provided in the summary of the invention are merely effects of embodiments, not all effects of the invention, and one of the above technical solutions has the following advantages or beneficial effects:
the invention provides a method, a system, equipment and a medium for a self-adaptive PCIe display card, wherein the method comprises the following steps: the method comprises the steps that through initializing and configuring an input/output address space and a register required by a PCIe display card, a space address required by the PCIe display card is determined; establishing a mapping relation among PCIe graphics card addresses, graphics card provider addresses and space addresses; acquiring a space address according to the PCIe graphics card address or the graphics card provider address; and initializing the PCIe display card according to the space address. Based on a method of the self-adaptive PCIe display card, a system, equipment and medium of the self-adaptive PCIe display card are also provided. The invention solves the problem of abnormal VGA display by dynamically distributing the space address of the PCIe base address register, is automatically suitable for various display cards, and avoids abnormal display.
According to the invention, different space addresses are allocated for suppliers of different PCIe display cards, and the problem that a display is in black screen or split-screen display is avoided by dynamically allocating addresses of the PCIe display cards.
Drawings
FIG. 1 is a flow chart of a method for PCIe graphics card display in the prior art;
FIG. 2 is a flowchart illustrating a method for an adaptive PCIe graphics card according to embodiment 1 of the present invention;
fig. 3 is a schematic diagram of a data format of a first header and a second header in embodiment 1 of the present invention;
FIG. 4 is a schematic diagram of a system for an adaptive PCIe graphics card according to embodiment 2 of the present invention;
fig. 5 is a schematic diagram of an apparatus for an adaptive PCIe graphics card according to embodiment 3 of the present invention.
Detailed Description
In order to clearly illustrate the technical features of the present solution, the present invention will be described in detail below with reference to the following detailed description and the accompanying drawings. The following disclosure provides many different embodiments, or examples, for implementing different structures of the invention. In order to simplify the present disclosure, components and arrangements of specific examples are described below. Furthermore, the present invention may repeat reference numerals and/or letters in the various examples. This repetition is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed. It should be noted that the components illustrated in the figures are not necessarily drawn to scale. Descriptions of well-known components and processing techniques and processes are omitted so as to not unnecessarily obscure the present invention.
Example 1
The embodiment 1 of the invention provides a method for a self-adaptive PCIe display card, which is used for solving the problem that in the prior art, after a part of BMC chips are used as PCIe devices to be mounted on a CPU, the displayed VGA signals are abnormal.
The specific process of the invention is as follows: the method comprises the steps that through initializing and configuring an input/output address space and a register required by a PCIe display card, a space address required by the PCIe display card is determined; establishing a mapping relation among PCIe graphics card addresses, graphics card provider addresses and space addresses; acquiring a space address according to the PCIe graphics card address or the graphics card provider address; and initializing the PCIe display card according to the space address.
Namely: the BIOS initializes the PCIe display card; acquiring the configuration of the bar address according to the equipment and the Vendor ID; in the invention, the equipment Device is a PCIE display card; writing the bar address into a Type0Header, and sending information to an OS through an SMBIOS; and initializing the PCIe display card by the OS according to the acquired BAR address.
The BIOS is an abbreviation of "Basic Input Output System," basic input output System ". It is a set of programs solidified on a ROM chip on the main board in the computer, and it can save the most important basic input and output programs of computer, system setting information, self-checking program after starting up and system self-starting program. Its main function is to provide the lowest, most direct hardware setup and control for the computer.
The Vendor ID is the Vendor address.
BAR is a base address register.
FIG. 2 is a flowchart illustrating a method for an adaptive PCIe graphics card according to embodiment 1 of the present invention;
in step S200, the flow of processing is started.
In step S201, the BIOS initializes for the PCIe graphics card. PCIe devices have multiple internal registers/stores that can be accessed through the IO address space, as well as through MMIO (memory mapped I/O). And initializing the PCIe display card, namely configuring IO address space and registers required by the PCIe device.
By configuring Base Address Register (BAR) in the space header. Once the system software knows the device's requirements in terms of address space, the system software will assign the device an available address range of the appropriate type (IO, NP-MMIO, or P-MMIO). Fig. 3 is a schematic diagram of a data format of a first header and a second header in embodiment 1 of the present invention. The first Header Type0Header has 6 BARs available (each BAR is 32 bits in size); the second Header Type 1Header has 2 BARs available.
In this application, the base address register in the first header or the base address register in the second header is used as the available address of the PCIe graphics card.
When the number of the base address registers required by the PCIe display card is less than or equal to 2, selecting a first header or a second header; when the number of the base address registers required by the PCIe display card is more than or equal to 3 and less than or equal to 6, selecting a first header.
In step S202, the configuration of the base address register BAR address is acquired from the Device and the Vendor address Vendor ID.
First, a mapping relationship among PCIe graphics card addresses, graphics card provider addresses and space addresses is established. Namely, establishing a corresponding table among PCIe graphics card addresses, graphics card provider addresses and base address register addresses.
As shown in the table below.
Figure BDA0004143229610000051
Figure BDA0004143229610000061
The scope of the present invention is not limited to the addresses listed in the table in embodiment 1, the above data are illustrated as examples, and those skilled in the art may choose different address offsets or spatial address sizes in practical situations.
In step S203, the BIOS first reads the Device ID and Vendor ID of the PCIe graphics card, obtains the base address register bar space address according to the table in the above step, writes the base address register bar address into the first Header Type0Header if it can be found, and sends the information to the OS through the SMBIOS.
OS: the Operating System is the most basic System software that manages and controls the hardware and software resources of a computer, and any other software must be run with the support of the Operating System.
In step S204, the operating system OS initializes the PCIe graphics card according to the acquired base address register bar address.
In step S205, the flow ends.
According to the method for the self-adaptive PCIe display card provided by the embodiment 1 of the invention, through dynamically distributing the space address of the PCIe base address register, the problem of abnormal VGA display is solved, the method is automatically adapted to various display cards, and abnormal display is avoided.
According to the method for the self-adaptive PCIe display card provided by the embodiment 1 of the invention, different space addresses are allocated for suppliers of different PCIe display cards, and the problem that a display is in black screen or split-screen display is avoided by dynamically allocating the addresses of the PCIe display cards.
Example 2
Based on the method of the adaptive PCIe graphics card provided in embodiment 1 of the present invention, embodiment 2 of the present invention further provides a system of the adaptive PCIe graphics card, as shown in fig. 4, which is a schematic diagram of a system of the adaptive PCIe graphics card of embodiment 2 of the present invention; the system comprises: the device comprises a determining module, a building module and an initializing module;
the determining module is used for determining a space address required by the PCIe display card;
the establishing module is used for establishing a mapping relation among the PCIe graphics card address, the graphics card provider address and the space address;
the initialization module is used for acquiring a space address according to the PCIe display card address or the display card provider address; and initializing the PCIe display card according to the space address.
The system also comprises a configuration module;
the configuration module is used for initializing and configuring an input/output address space and a register required by the PCIe display card.
In the determining module, the system allocates an available address for the PCIe graphics card by configuring a base address register in the space address header.
And taking the base address register in the first header or the base address register in the second header as an available address of the PCIe display card. When the number of the base address registers required by the PCIe display card is less than or equal to 2, selecting a first header or a second header; when the number of the base address registers required by the PCIe display card is more than or equal to 3 and less than or equal to 6, selecting a first header.
In the establishing module, a corresponding table among PCIe graphics card addresses, graphics card provider addresses and base address register addresses is established.
The detailed implementation process of each module and the setting process of the system for an adaptive PCIe graphics card according to embodiment 2 of the present invention can refer to the specific flow of the method for an adaptive PCIe graphics card according to embodiment 1, and are not described herein. The system of the adaptive PCIe display card provided by embodiment 2 of the present invention modularizes the process of the method of the adaptive PCIe display card provided by embodiment 1, and also has the function of embodiment 1 of the present invention.
The system for the self-adaptive PCIe display card provided by the embodiment 2 of the invention solves the problem of abnormal VGA display by dynamically distributing the space address of the PCIe base address register, is automatically adaptive to various display cards and avoids abnormal display.
The system of the adaptive PCIe display card provided by the embodiment 2 of the invention allocates different space addresses for suppliers of different PCIe display cards, and avoids the problem that a display has a black screen or is displayed by a black screen split screen by dynamically allocating the addresses of the PCIe display cards.
Example 3
The invention also provides a device, as shown in fig. 5, which is a schematic diagram of a device of an adaptive PCIe video card according to embodiment 3 of the present invention. Comprising the following steps:
a memory for storing a computer program;
the processor is used for realizing the following steps when executing the computer program:
the BIOS initializes the PCIe display card; acquiring the configuration of the bar address according to the equipment and the Vendor ID; in the invention, the equipment Device is a PCIE display card; writing the bar address into a Type0Header, and sending information to an OS through an SMBIOS; and initializing the PCIe display card by the OS according to the acquired BAR address.
FIG. 2 is a flowchart illustrating a method for an adaptive PCIe graphics card according to embodiment 1 of the present invention;
in step S200, the flow of processing is started.
In step S201, the BIOS initializes for the PCIe graphics card. PCIe devices have multiple internal registers/stores that can be accessed through the IO address space, as well as through MMIO (memory mapped I/O). And initializing the PCIe display card, namely configuring IO address space and registers required by the PCIe device.
By configuring Base Address Register (BAR) in the space header. Once the system software knows the device's requirements in terms of address space, the system software will assign the device an available address range of the appropriate type (IO, NP-MMIO, or P-MMIO). Fig. 3 is a schematic diagram of a data format of a first header and a second header in embodiment 1 of the present invention. The first Header Type0Header has 6 BARs available (each BAR is 32 bits in size); the second Header Type 1Header has 2 BARs available.
In this application, the base address register in the first header or the base address register in the second header is used as the available address of the PCIe graphics card.
When the number of the base address registers required by the PCIe display card is less than or equal to 2, selecting a first header or a second header; when the number of the base address registers required by the PCIe display card is more than or equal to 3 and less than or equal to 6, selecting a first header.
In step S202, the configuration of the base address register BAR address is acquired from the Device and the Vendor address Vendor ID.
First, a mapping relationship among PCIe graphics card addresses, graphics card provider addresses and space addresses is established. Namely, establishing a corresponding table among PCIe graphics card addresses, graphics card provider addresses and base address register addresses.
As shown in the table below.
Figure BDA0004143229610000091
Figure BDA0004143229610000101
The scope of the present invention is not limited to the addresses listed in the table in embodiment 1, the above data are illustrated as examples, and those skilled in the art may choose different address offsets or spatial address sizes in practical situations.
In step S203, the BIOS first reads the Device ID and Vendor ID of the PCIe graphics card, obtains the base address register bar space address according to the table in the above step, writes the base address register bar address into the first Header Type0Header if it can be found, and sends the information to the OS through the SMBIOS.
In step S204, the operating system OS initializes the PCIe graphics card according to the acquired base address register bar address.
In step S205, the flow ends.
The device for the self-adaptive PCIe display card provided by the embodiment 3 of the invention solves the problem of abnormal VGA display by dynamically distributing the space address of the PCIe base address register, is automatically adaptive to various display cards and avoids abnormal display.
According to the device for the self-adaptive PCIe display card, provided by the embodiment 3, different space addresses are allocated for suppliers of different PCIe display cards, and the problem that a display is in black screen or split-screen display is avoided by dynamically allocating the addresses of the PCIe display cards.
It is necessary to explain that: the technical scheme of the invention also provides electronic equipment, which comprises: a communication interface capable of information interaction with other devices such as a network device and the like; and the processor is connected with the communication interface to realize information interaction with other devices, and is used for executing the method of the adaptive PCIe display card provided by the one or more technical schemes when running the computer program, and the computer program is stored on the memory. Of course, in practice, the various components in the electronic device are coupled together by a bus system. It will be appreciated that a bus system is used to enable connected communications between these components. The bus system includes a power bus, a control bus, and a status signal bus in addition to the data bus. The memory in the embodiments of the present application is used to store various types of data to support the operation of the electronic device. Examples of such data include: any computer program for operating on an electronic device. It will be appreciated that the memory can be either volatile memory or nonvolatile memory, and can include both volatile and nonvolatile memory. Wherein the nonvolatile Memory may be Read Only Memory (ROM), programmable Read Only Memory (PROM, programmable Read-Only Memory), erasable programmable Read Only Memory (EPROM, erasable Programmable Read-Only Memory), electrically erasable programmable Read Only Memory (EEPROM, electrically Erasable Programmable Read-Only Memory), magnetic random access Memory (FRAM, ferromagnetic random access Memory), flash Memory (Flash Memory), magnetic surface Memory, optical disk, or compact disk Read Only Memory (CD-ROM, compact Disc Read-Only Memory); the magnetic surface memory may be a disk memory or a tape memory. The volatile memory may be random access memory (RAM, random AccessMemory), which acts as external cache memory. By way of example, and not limitation, many forms of RAM are available, such as static random access memory (SRAM, static Random Access Memory), synchronous static random access memory (SSRAM, synchronous Static Random Access Memory), dynamic random access memory (DRAM, dynamic Random Access Memory), synchronous dynamic random access memory (SDRAM, synchronousDynamic Random Access Memory), double data rate synchronous dynamic random access memory (ddr sdram, double Data Rate Synchronous Dynamic Random Access Memory), enhanced synchronous dynamic random access memory (ESDRAM, enhanced Synchronous Dynamic Random Access Memory), synchronous link dynamic random access memory (SLDRAM, syncLink Dynamic Random Access Memory), direct memory bus random access memory (DRRAM, direct Rambus Random Access Memory). The memory described in the embodiments of the present application is intended to comprise, without being limited to, these and any other suitable types of memory. The method disclosed in the embodiments of the present application may be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware in a processor or by instructions in the form of software. The processor may be a general purpose processor, a DSP (Digital Signal Processing, meaning a chip capable of implementing digital signal processing techniques), or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. The processor may implement or perform the methods, steps, and logic blocks disclosed in embodiments of the present application. The general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiments of the present application may be directly embodied in a hardware decoding processor or implemented by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium having a memory, and the processor reads the program in the memory and performs the steps of the method in combination with its hardware. The processor executes the program to implement the corresponding flow in each method of the embodiments of the present application, and for brevity, will not be described in detail herein.
Example 4
The invention also provides a readable storage medium, the readable storage medium stores a computer program, and the computer program when executed by a processor realizes the following steps:
the BIOS initializes the PCIe display card; acquiring the configuration of the bar address according to the equipment and the Vendor ID; in the invention, the equipment Device is a PCIE display card; writing the bar address into a Type0Header, and sending information to an OS through an SMBIOS; and initializing the PCIe display card by the OS according to the acquired BAR address.
FIG. 2 is a flowchart illustrating a method for an adaptive PCIe graphics card according to embodiment 1 of the present invention;
in step S200, the flow of processing is started.
In step S201, the BIOS initializes for the PCIe graphics card. PCIe devices have multiple internal registers/stores that can be accessed through the IO address space, as well as through MMIO (memory mapped I/O). And initializing the PCIe display card, namely configuring IO address space and registers required by the PCIe device.
By configuring Base Address Register (BAR) in the space header. Once the system software knows the device's requirements in terms of address space, the system software will assign the device an available address range of the appropriate type (IO, NP-MMIO, or P-MMIO). Fig. 3 is a schematic diagram of a data format of a first header and a second header in embodiment 1 of the present invention. The first Header Type0Header has 6 BARs available (each BAR is 32 bits in size); the second Header Type 1Header has 2 BARs available.
In this application, the base address register in the first header or the base address register in the second header is used as the available address of the PCIe graphics card.
When the number of the base address registers required by the PCIe display card is less than or equal to 2, selecting a first header or a second header; when the number of the base address registers required by the PCIe display card is more than or equal to 3 and less than or equal to 6, selecting a first header.
In step S202, the configuration of the base address register BAR address is acquired from the Device and the Vendor address Vendor ID.
First, a mapping relationship among PCIe graphics card addresses, graphics card provider addresses and space addresses is established. Namely, establishing a corresponding table among PCIe graphics card addresses, graphics card provider addresses and base address register addresses.
As shown in the table below.
Figure BDA0004143229610000131
Figure BDA0004143229610000141
The scope of the present invention is not limited to the addresses listed in the table in embodiment 1, the above data are illustrated as examples, and those skilled in the art may choose different address offsets or spatial address sizes in practical situations.
In step S203, the BIOS first reads the Device ID and Vendor ID of the PCIe graphics card, obtains the base address register bar space address according to the table in the above step, writes the base address register bar address into the first Header Type0Header if it can be found, and sends the information to the OS through the SMBIOS.
In step S204, the operating system OS initializes the PCIe graphics card according to the acquired base address register bar address.
In step S205, the flow ends.
The storage medium of the adaptive PCIe display card provided by the embodiment 4 of the invention solves the problem of abnormal VGA display by dynamically distributing the space address of the PCIe base address register, is automatically adaptive to various display cards and avoids abnormal display.
According to the storage medium of the adaptive PCIe display card provided by the embodiment 4 of the invention, different space addresses are allocated for suppliers of different PCIe display cards, and the problem that a display is in black screen or split-screen display is avoided by dynamically allocating addresses of the PCIe display cards.
The embodiments of the present application also provide a storage medium, i.e. a computer storage medium, in particular a computer readable storage medium, for example comprising a memory storing a computer program executable by a processor for performing the steps of the aforementioned method. The computer readable storage medium may be FRAM, ROM, PROM, EPROM, EEPROM, flash Memory, magnetic surface Memory, optical disk, or CD-ROM.
Those of ordinary skill in the art will appreciate that: all or part of the steps for implementing the above method embodiments may be implemented by hardware associated with program instructions, where the foregoing program may be stored in a computer readable storage medium, and when executed, the program performs steps including the above method embodiments; and the aforementioned storage medium includes: a removable storage device, ROM, RAM, magnetic or optical disk, or other medium capable of storing program code. Alternatively, the integrated units described above may be stored in a computer readable storage medium if implemented in the form of software functional modules and sold or used as a stand-alone product. Based on such understanding, the technical solutions of the embodiments of the present application may be essentially or partly contributing to the prior art, and the computer software product may be stored in a storage medium, and include several instructions to cause an electronic device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a removable storage device, ROM, RAM, magnetic or optical disk, or other medium capable of storing program code.
The description of the relevant parts in the storage medium of the adaptive PCIe graphics card provided in the embodiment of the present application may refer to the detailed description of the corresponding parts in the method of the adaptive PCIe graphics card provided in embodiment 1 of the present application, which is not repeated here.
It is noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements is inherent to. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element. In addition, the parts of the above technical solutions provided in the embodiments of the present application, which are consistent with the implementation principles of the corresponding technical solutions in the prior art, are not described in detail, so that redundant descriptions are avoided.
While the specific embodiments of the present invention have been described above with reference to the drawings, the scope of the present invention is not limited thereto. Other modifications and variations to the present invention will be apparent to those of skill in the art upon review of the foregoing description. It is not necessary here nor is it exhaustive of all embodiments. On the basis of the technical scheme of the invention, various modifications or variations which can be made by the person skilled in the art without the need of creative efforts are still within the protection scope of the invention.

Claims (10)

1. The method for the adaptive PCIe display card is characterized by comprising the following steps of:
determining a space address required by the PCIe display card;
establishing a mapping relation among PCIe graphics card addresses, graphics card provider addresses and space addresses;
acquiring a space address according to the PCIe graphics card address or the graphics card provider address; and initializing the PCIe display card according to the space address.
2. The method of an adaptive PCIe graphics card of claim 1, wherein the determining the spatial address required by the PCIe graphics card further comprises: and initializing and configuring an input/output address space and a register required by the PCIe display card.
3. The method of an adaptive PCIe graphics card of claim 1, wherein the determining a spatial address required by the PCIe graphics card is: by configuring the base address register in the space address header, the system allocates an available address for the PCIe graphics card.
4. The method of claim 3, wherein the allocating, by the system, the available address to the PCIe graphics card through the base address register in the configuration space address header specifically comprises: and taking the base address register in the first header or the base address register in the second header as an available address of the PCIe display card.
5. The method of an adaptive PCIe graphics card of claim 4, wherein the method further comprises:
when the number of the base address registers required by the PCIe display card is less than or equal to 2, selecting a first header or a second header;
when the number of the base address registers required by the PCIe display card is more than or equal to 3 and less than or equal to 6, selecting a first header.
6. The method of claim 1, wherein the process of establishing a mapping relationship among PCIe graphics card addresses, graphics card vendor addresses, and space addresses comprises: and establishing a corresponding table among the PCIe graphics card address, the graphics card provider address and the base address register address.
7. A system for an adaptive PCIe graphics card, comprising: the device comprises a determining module, a building module and an initializing module;
the determining module is used for determining a space address required by the PCIe display card;
the establishing module is used for establishing a mapping relation among the PCIe graphics card address, the graphics card provider address and the space address;
the initialization module is used for acquiring a space address according to the PCIe graphics card address or the graphics card provider address; and initializing the PCIe display card according to the space address.
8. The system of an adaptive PCIe graphics card of claim 7, wherein the system further comprises a configuration module;
the configuration module is used for initializing and configuring an input/output address space and a register required by the PCIe display card.
9. An apparatus, comprising:
a memory for storing a computer program;
a processor for implementing the method steps of any one of claims 1 to 6 when executing said computer program.
10. A readable storage medium, characterized in that it has stored thereon a computer program which, when executed by a processor, implements the method steps of any of claims 1 to 6.
CN202310296098.9A 2023-03-24 2023-03-24 Method, system, equipment and medium for self-adapting PCIe display card Pending CN116302135A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310296098.9A CN116302135A (en) 2023-03-24 2023-03-24 Method, system, equipment and medium for self-adapting PCIe display card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310296098.9A CN116302135A (en) 2023-03-24 2023-03-24 Method, system, equipment and medium for self-adapting PCIe display card

Publications (1)

Publication Number Publication Date
CN116302135A true CN116302135A (en) 2023-06-23

Family

ID=86795772

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310296098.9A Pending CN116302135A (en) 2023-03-24 2023-03-24 Method, system, equipment and medium for self-adapting PCIe display card

Country Status (1)

Country Link
CN (1) CN116302135A (en)

Similar Documents

Publication Publication Date Title
US20210240623A1 (en) Shared buffered memory routing
US11768791B2 (en) Flattening portal bridge
CN113868155B (en) Memory space expansion method and device, electronic equipment and storage medium
US10372639B2 (en) System and method to avoid SMBus address conflicts via a baseboard management controller
CN109656630B (en) Configuration space access method, device, framework and storage medium
CN113742269A (en) Data transmission method, processing device and medium for EPA device
CN114860329A (en) Dynamic consistency biasing configuration engine and method
TW201732635A (en) Data transfer method and server using the same
US20210149804A1 (en) Memory Interleaving Method and Apparatus
US11226755B1 (en) Core dump in a storage device
JP2007529815A (en) Signal transmission apparatus and method for signal transmission
JPH1055331A (en) Programmable read and write access signal and its method
US20150326684A1 (en) System and method of accessing and controlling a co-processor and/or input/output device via remote direct memory access
CN110765060B (en) MDIO bus-to-parallel bus conversion method and device, equipment and medium
CN110795373B (en) I2C bus-to-parallel bus conversion method, terminal and storage medium
CN116302135A (en) Method, system, equipment and medium for self-adapting PCIe display card
CN116346781A (en) Address space allocation method, server, electronic equipment and storage medium
CN115543894A (en) Storage system, data processing method and device, storage medium and electronic device
CN112860595B (en) PCI (peripheral component interconnect express) equipment or PCIE (peripheral component interconnect express) equipment, data access method and related assembly
CN109933434B (en) Electronic device and method for expanding peripheral equipment
TW201328246A (en) Method and system for managing cloud server system
CN111666579A (en) Computer device, access control method thereof, and computer-readable medium
CN115455397B (en) Input/output interface control method and system
CN113377704B (en) Artificial intelligence chip and data operation method
CN107688494B (en) Memory allocation method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination