[go: up one dir, main page]

CN116701275B - Terminal equipment expansion equipment, method and device and bus standard equipment - Google Patents

Terminal equipment expansion equipment, method and device and bus standard equipment Download PDF

Info

Publication number
CN116701275B
CN116701275B CN202310953586.2A CN202310953586A CN116701275B CN 116701275 B CN116701275 B CN 116701275B CN 202310953586 A CN202310953586 A CN 202310953586A CN 116701275 B CN116701275 B CN 116701275B
Authority
CN
China
Prior art keywords
controller
module
intellectual property
core
expansion bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310953586.2A
Other languages
Chinese (zh)
Other versions
CN116701275A (en
Inventor
郭巍
刘伟
徐亚明
李军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IEIT Systems Co Ltd
Original Assignee
Inspur Electronic Information Industry 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 Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN202310953586.2A priority Critical patent/CN116701275B/en
Publication of CN116701275A publication Critical patent/CN116701275A/en
Application granted granted Critical
Publication of CN116701275B publication Critical patent/CN116701275B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

本发明公开了一种终端设备扩展设备、方法、装置及总线标准设备,属于PCIe设备领域,用于扩充基于FPGA实现的单个PCIe设备支持连接的终端设备的数量,解决了基于FPGA实现的单个PCIe设备支持连接的终端设备数量较少的问题。可以控制FPGA的IP核处于桥接模式下,并在连接于IP核的控制器内部设定了控制器可支持功能模块端口的预设数量,如此一来,在PCIe设备初始化阶段,主机便可以扫描控制器所支持的预设数量个功能模块端口并完成PCIe设备的拓扑初始化,由于预设数量可自主改动,从而使得单个PCIe设备可提供大量的功能模块端口数量,从而可以连接大量的终端设备,满足了用户需求,提升了用户体验。

The invention discloses a terminal equipment expansion equipment, method, device and bus standard equipment, which belongs to the field of PCIe equipment and is used to expand the number of terminal equipment supported by a single PCIe equipment implemented based on FPGA, and solve the problem of a single PCIe equipment implemented based on FPGA. The device supports the problem of a small number of connected terminal devices. The IP core that can control the FPGA is in bridge mode, and the preset number of functional module ports that the controller can support is set inside the controller connected to the IP core. In this way, during the initialization phase of the PCIe device, the host can scan The controller supports a preset number of functional module ports and completes the topology initialization of the PCIe device. Since the preset number can be changed independently, a single PCIe device can provide a large number of functional module ports and can connect a large number of terminal devices. Meets user needs and improves user experience.

Description

Terminal equipment expansion equipment, method and device and bus standard equipment
Technical Field
The invention relates to the field of PCIe equipment, in particular to terminal equipment expansion equipment, and further relates to a terminal equipment expansion method, a terminal equipment expansion device, high-speed serial computer expansion bus standard equipment, a server and a computer readable storage medium.
Background
When implementing PCIe (Peripheral Component Interconnect express, high-speed serial computer expansion bus standard) devices using FPGA (Field Programmable Gate Array ), an IP (Intellectual Property, intellectual property) core in the FPGA is generally used as a core of the PCIe device, however, the number of EPs (End Point) that can be supported by the PCIe device is limited by the IP core in the FPGA, that is, the number of ports for connecting EPs provided by the IP core cannot be modified, so that only a small number of terminal devices can be implemented in one PCIe device based on FPGA design at present, which is difficult to satisfy user requirements and reduces user experience.
Therefore, how to provide a solution to the above technical problem is a problem that a person skilled in the art needs to solve at present.
Disclosure of Invention
The invention aims to provide terminal equipment expansion equipment, and the preset number in a controller can be changed automatically, so that a single PCIe equipment can provide a large number of functional module ports, a large number of terminal equipment can be connected, the user requirements are met, and the user experience is improved; another object of the present invention is to provide a method and apparatus for expanding a terminal device, a high-speed serial computer expansion bus standard device, a server, and a computer readable storage medium, in which a preset number in a controller can be changed autonomously, so that a single PCIe device can provide a large number of ports of functional modules, and thus a large number of terminal devices can be connected, thereby meeting user requirements and improving user experience.
In order to solve the above technical problems, the present invention provides a terminal device extension device, including:
the controller is connected with the intellectual property core of the high-speed serial computer expansion bus standard equipment and is used for responding to a port scanning request sent by a host through the intellectual property core in the initialization stage of the high-speed serial computer expansion bus standard equipment so that the host can complete scanning of a preset number of function module ports supported by the controller and topology initialization work of the high-speed serial computer expansion bus standard equipment; the method is also used for storing initialization data generated in the topology initialization process, which is sent by the host through the intellectual property core, to pre-stored port configuration data;
the first end is connected with the intellectual property core, the second end is connected with the controller, and the third end is connected with each functional module of the high-speed serial computer expansion bus standard equipment, and is used for realizing data communication between the intellectual property core and the controller and between the intellectual property core and the functional modules;
the intellectual property cores are intellectual property cores in a field programmable gate array, the intellectual property cores are in a bridge mode, and the upper limit of the preset number is the total amount of bus resources specified by a high-speed serial computer expansion bus standard.
In another aspect, the signal transmission module includes:
a first end is connected with the intellectual property core, a second end is connected with the controller, a third end is connected with each functional module of the high-speed serial computer expansion bus standard equipment, and a first signal transmission sub-module is used for sending a request sent by the intellectual property core to the controller or the designated functional module and sending response data of the controller and the functional module for the intellectual property core to the intellectual property core;
the first end is connected with the intellectual property core, the second end is connected with the second signal transmission sub-module of the controller, and is used for sending the request sent by the functional module to the intellectual property core, and sending the response signal sent by the intellectual property core to the request sent by the functional module to the appointed functional module.
On the other hand, the terminal equipment expansion equipment is arranged in a field programmable gate array where the high-speed serial computer expansion bus standard equipment is located.
In another aspect, the controller includes a first controller core and a first memory module;
the first controller core is configured to communicate with the first signal transmission submodule through a flow-oriented advanced expansion bus interface of the first controller core, respond to a port scanning request sent by a host through the intellectual property core in an initialization stage of the high-speed serial computer expansion bus standard device, and store initialization data generated in the topology initialization process and sent by the host through the intellectual property core into pre-stored port configuration data;
The first storage module is used for storing data.
In another aspect, the controller further comprises:
and the first signal connection module is connected with the first controller core and is used for generating a plurality of signal interfaces of specified types based on the simplified advanced expansion bus interface of the first controller core.
In another aspect, the first signal connection module includes a first port expansion module and a first port conversion module;
the first port expansion module is configured to expand the simplified advanced expansion bus interface of the first controller core into a plurality of simplified advanced expansion bus interfaces;
the first port conversion module is configured to convert a single simplified advanced expansion bus interface provided by the first port expansion module into a signal interface of a target type;
wherein the target type includes a universal input output interface and a serial interface.
On the other hand, the controller comprises a second controller inner core, a second storage module and a signal switching module;
the second controller core is configured to communicate with the advanced expansion bus interface of the first signal transmission sub-module, which faces the flow, under the cooperation of the client instruction interface and the signal switching module, and respond to a port scanning request sent by the host through the intellectual property core in an initialization stage of the high-speed serial computer expansion bus standard device, and store initialization data generated in the topology initialization process and sent by the host through the intellectual property core to pre-stored port configuration data;
The second storage module is used for storing data;
the signal transfer module is configured to send data of the client instruction interface of the second controller core to the stream-oriented advanced expansion bus interface of the first signal transmission sub-module according to a status signal of the stream-oriented advanced expansion bus interface of the first signal transmission sub-module, and cache the data sent by the stream-oriented advanced expansion bus interface of the first signal transmission sub-module, so that the second controller core reads the cached data through the client instruction interface.
In another aspect, the controller further comprises:
and the second signal connection module is connected with the second controller core and is used for generating a plurality of signal interfaces of specified types based on the advanced expansion bus interface of the second controller core.
On the other hand, the second signal connection module comprises a second port expansion module and a second port conversion module;
the second port expansion module is configured to expand the simplified advanced expansion bus interface of the second controller core into a plurality of ports;
the second port conversion module is configured to convert a single simplified advanced expansion bus interface provided by the second port expansion module into a signal interface of a target type;
Wherein the target type includes a universal input output interface and a serial interface.
In another aspect, the controller is further configured to:
and responding to a modification instruction sent by the host through the intellectual property core, and modifying the port configuration data and/or the preset quantity.
In another aspect, the terminal device extension device further includes:
and the man-machine interaction module is connected with the controller and used for changing the port configuration data and/or the preset quantity in the controller.
In another aspect, the first signal transmission sub-module is further configured to:
and determining a base address register space number to which the request of the intellectual property core sent to the specified functional module belongs, and binding and sending the base address register space number and the corresponding request to the specified functional module.
In another aspect, the controller is further configured to, in an initialization stage of the high-speed serial computer expansion bus standard device, initialize interrupt data pre-stored in a designated memory in response to an interrupt data initialization instruction sent by the host through an intellectual property core of the high-speed serial computer expansion bus standard device, so that the functional module sends an interrupt request to the host through the interrupt data.
In another aspect, the designated memory is a memory in a field programmable gate array in which the high speed serial computer expansion bus standard device resides.
In order to solve the technical problem, the invention also provides a terminal equipment expansion method, which is applied to a controller and comprises the following steps:
in the initialization stage of the high-speed serial computer expansion bus standard equipment, responding to a port scanning request sent by a host through the intellectual property core, so that the host can complete scanning of a preset number of function module ports supported by the controller and topology initialization work of the high-speed serial computer expansion bus standard equipment;
storing initialization data generated in the topology initialization process and sent by the host through the intellectual property core to pre-stored port configuration data;
the intellectual property core of the high-speed serial computer expansion bus standard device is the intellectual property core in the field programmable gate array, the intellectual property core of the high-speed serial computer expansion bus standard device is in a bridging mode, and the upper limit of the preset number is the total amount of bus resources specified by the high-speed serial computer expansion bus standard.
On the other hand, the terminal equipment expansion method further comprises the following steps:
in the initialization stage of the high-speed serial computer expansion bus standard device, in response to an interrupt data initialization instruction sent by the host through the intellectual property core of the high-speed serial computer expansion bus standard device, initializing interrupt data pre-stored in a designated memory so that the functional module sends an interrupt request to the host through the interrupt data.
In another aspect, the designated memory is a memory in a field programmable gate array in which the high speed serial computer expansion bus standard device resides.
On the other hand, the terminal equipment expansion method further comprises the following steps:
and responding to a modification instruction sent by the host through the intellectual property core, and modifying the port configuration data and/or the preset quantity.
In order to solve the above technical problem, the present invention further provides a terminal device extension apparatus, which is applied to a controller, and includes:
the transmitting module is used for responding to a port scanning request transmitted by the host through the intellectual property core in the initialization stage of the high-speed serial computer expansion bus standard equipment so that the host can complete scanning of a preset number of function module ports supported by the controller and topology initialization work of the high-speed serial computer expansion bus standard equipment;
The storage module is used for storing initialization data generated in the topology initialization process and sent by the host through the intellectual property core to pre-stored port configuration data;
the intellectual property core of the high-speed serial computer expansion bus standard device is the intellectual property core in the field programmable gate array, the intellectual property core of the high-speed serial computer expansion bus standard device is in a bridging mode, and the upper limit of the preset number is the total amount of bus resources specified by the high-speed serial computer expansion bus standard.
In order to solve the technical problem, the invention also provides high-speed serial computer expansion bus standard equipment, which comprises the terminal equipment expansion equipment.
In order to solve the technical problem, the invention also provides a server which comprises the high-speed serial computer expansion bus standard equipment.
To solve the above technical problem, the present invention also provides a computer readable storage medium, on which a computer program is stored, which when executed by a processor, implements the steps of the terminal device extension method as described above.
The beneficial effects are that: the invention provides terminal equipment extension equipment, which considers that the quantity of the terminal equipment supported by PCIe equipment can be flexibly configured through another controller, and the IP core of the intellectual property of an FPGA can be connected with the other controller in a bridging mode, so that the IP core of the FPGA can be controlled to be in the bridging mode, and the preset quantity of ports of the functional module supported by the controller is set in the controller connected with the IP core.
The invention also provides a terminal equipment expansion method, a device, a high-speed serial computer expansion bus standard equipment, a server and a computer readable storage medium, which have the same beneficial effects as the terminal equipment expansion method.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following description will briefly explain the related art and the drawings required to be used in the embodiments, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person of ordinary skill in the art.
Fig. 1 is a schematic structural diagram of an extension device of a terminal device provided by the present invention;
fig. 2 is a schematic structural diagram of another terminal device expansion device provided by the present invention;
FIG. 3 is a schematic diagram of a controller according to the present invention;
FIG. 4 is a schematic diagram of another controller according to the present invention;
fig. 5 is a schematic flow chart of a terminal device expansion method provided by the invention;
fig. 6 is a schematic structural diagram of an extension device of a terminal device provided by the present invention;
fig. 7 is a schematic structural diagram of a computer readable storage medium according to the present invention.
Detailed Description
The core of the invention is to provide a terminal equipment expansion device, because the preset number in the controller can be changed automatically, a single PCIe device can provide a large number of function module ports, thereby being capable of connecting a large number of terminal equipment, meeting the user demands and improving the user experience; the invention further provides a terminal equipment expansion method, a terminal equipment expansion device, a high-speed serial computer expansion bus standard equipment, a server and a computer readable storage medium, and because the preset number in the controller can be changed automatically, a single PCIe equipment can provide a large number of function module ports, so that a large number of terminal equipment can be connected, the user requirements are met, and the user experience is improved.
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments of the present invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a terminal device extension device provided by the present invention, where the terminal device extension device includes:
the controller 1 is connected with the intellectual property core of the high-speed serial computer expansion bus standard equipment and is used for responding to a port scanning request sent by the host through the intellectual property core in the initialization stage of the high-speed serial computer expansion bus standard equipment so that the host can complete scanning of the ports of the preset number of functional modules supported by the controller 1 and topology initialization work of the high-speed serial computer expansion bus standard equipment; the method is also used for storing initialization data generated in the topology initialization process, which is sent by the host through the intellectual property core, into pre-stored port configuration data;
The first end is connected with the intellectual property core, the second end is connected with the controller 1, and the third end is connected with the signal transmission module 2 of each functional module of the high-speed serial computer expansion bus standard equipment, and the signal transmission module is used for realizing data communication between the intellectual property core and the controller 1 and between the functional modules;
the intellectual property cores are intellectual property cores in the field programmable gate array, the intellectual property cores are in a bridge mode, and the upper limit of the preset quantity is the total quantity of bus resources specified by the expansion bus standard of the high-speed serial computer.
Specifically, considering the technical problems in the background art as above, in combination with considering that the controller 1 outside the IP core of the PCIe device can implement flexible configuration for the number of End devices that can be supported by the PCIe device, and the intellectual property IP core of the FPGA can connect to another controller 1 in the bridge mode, so in the embodiment of the present invention, the IP core of the PCIe device can be controlled to be in the bridge mode, and the controller 1 connected to the IP core of the PCIe device is set, so that support of a large number of function module ports is implemented based on the controller 1, thereby expanding the number of connectable End devices (EP, end Point), and for the IP core, the related parameters inside the controller cannot be changed after leaving the factory, including the number of support of function module ports for the PCIe device, that is, limiting the number of End devices that are connected to the function module ports of the PCIe device, and the controller 1 serves as a bridge device for the PCIe device, where the preset number of supportable function module ports can be set, and the preset number can be flexibly changed, so that the preset number can be set within an upper limit, and the number of autonomously expanding the number of possible End devices for the PCIe device.
The bridge mode may be various types, for example, a bridge mode or a TLP (Transaction Layer Packet ) Bypass mode, which is not limited herein.
Specifically, the terminal device may refer to various functional modules connected to ports of the functional modules, which are implemented at the end in the topology of the PCIe device, and include a PF (Physical Function ) module, a VF (Virtual Function) module, etc., which is not limited herein.
Specifically, the host may scan the EP devices existing on the PCIe bus through the IP core, and based on the preset number set in the controller 1, the controller 1 performs an effective response to the query messages of the existing EP devices, and performs an ineffective response to the query messages exceeding the preset number. Based on the above process, the host completes the topology initialization work of the PCIe device. And the controller 1 can also store related initialization data (mainly related to related data of a function module currently connected with the PCIe device) generated by the host in a topology initialization process in pre-stored port configuration data, so that subsequent calling is facilitated.
The signal transmission module 2 can realize communication between the IP core and the functional module besides communication between the IP core and the controller 1, so that data interaction between the host and the functional module through the IP core is realized.
Specifically, after the PF function in EP is identified by the host, continuing to enable the SR-IOV (Single Root I/O Virtualization) function may increase the support for VF. When the number of VFs needs to be greater than 8, ARI (Alternative Routing-ID, alternative route ID) characteristics of the PCIe device need to be enabled, each PF module obtains a Bus number, and each PF module can enable 255 VF modules at maximum based on the configuration of a user, so that the number of VF modules supported in the PCIe device is also expanded.
Specifically, the preset number may be set autonomously, for example, set to 64, where the upper limit may be the total amount of bus resources specified by the PCIe protocol, and since the total amount of bus resources specified by the PCIe protocol is far greater than the number of ports for connecting to EPs provided by the IP core of the FPGA, the PCIe device may provide a large number of ports for connecting to EPs by flexibly setting the preset number.
The controller 1 may be of various types, for example, may be a single chip microcomputer, etc., and the embodiment of the present invention is not limited herein.
The invention provides terminal equipment extension equipment, which is characterized in that the number of the supported terminal equipment of PCIe equipment can be flexibly configured through another controller 1, and the other controller 1 can be connected with the IP core of the intellectual property of the FPGA in a bridging mode, so that the IP core of the FPGA can be controlled to be in the bridging mode, and the preset number of ports of the supportable functional modules of the controller 1 is set in the controller 1 connected with the IP core, therefore, in the initialization stage of the PCIe equipment, a host can scan the preset number of ports of the functional modules supported by the controller 1 and complete the topology initialization of the PCIe equipment, and because the preset number can be independently changed, a single PCIe equipment can provide a large number of ports of the functional modules, thereby being capable of connecting a large number of terminal equipment, meeting the user requirements and improving the user experience.
Based on the above embodiments:
as an embodiment, the signal transmission module 2 includes:
the first end is connected with the intellectual property core, the second end is connected with the controller 1, the third end is connected with each functional module of the high-speed serial computer expansion bus standard equipment, and the first signal transmission sub-module is used for sending the request sent by the intellectual property core to the controller 1 or the designated functional module, and sending the response data of the controller 1 and the functional module for the request sent by the intellectual property core to the intellectual property core;
the first end is connected with the intellectual property core, and the second end is connected with the second signal transmission sub-module of the controller 1, and is used for sending the request sent by the functional module to the intellectual property core, and sending the response signal sent by the intellectual property core to the request sent by the functional module to the appointed functional module.
For better explaining the embodiments of the present invention, please refer to fig. 2, fig. 2 is a schematic structural diagram of another terminal device expansion device provided by the present invention, where the completer request interface and the completer completion interface in fig. 2 form a first signal transmission sub-module, and the requester request interface and the requester completion interface form a second signal transmission sub-module.
Specifically, the first signal transmission sub-module may be configured to transmit a request actively sent by the intellectual property core and response data thereof, the completer request interface may transmit the request actively sent by the intellectual property core to the controller 1 or the specified functional module, and the completer completion interface may transmit response data of the controller 1 and the functional module to the intellectual property core for the request sent by the intellectual property core to the intellectual property core; and the second signal transmission sub-module can be used for transmitting the request sent by the functional module and the response data thereof, wherein the request interface of the requester can send the request sent by the functional module to the intellectual property core, and the completion interface of the requester can send the response signal sent by the intellectual property core to the request sent by the functional module to the appointed functional module.
The signal transmission module 2 in the embodiment of the invention can smoothly realize data transmission between each functional module in the intellectual property core and the PCIe equipment.
Of course, other specific forms of the signal transmission module 2 besides this specific architecture are also possible, and the embodiments of the present invention are not limited herein.
As an embodiment, the terminal device expansion device is arranged in a field programmable gate array where the high-speed serial computer expansion bus standard device is located.
Specifically, considering that the FPGA has the advantages of fast data processing speed, the terminal device extension device in the embodiment of the present invention may be disposed in the FPGA where the PCIe device is located.
Of course, the terminal device extension device may be disposed outside the FPGA, and the embodiment of the present invention is not limited herein.
As an embodiment, the controller 1 includes a first controller core and a first memory module;
the first controller core is used for communicating with the first signal transmission sub-module through the own advanced expansion bus interface facing the flow, responding to the port scanning request sent by the host through the intellectual property core in the initialization stage of the high-speed serial computer expansion bus standard equipment, and storing the initialization data generated in the topology initialization process and sent by the host through the intellectual property core into the pre-stored port configuration data;
and the first storage module is used for storing data.
Specifically, considering that the IP cores in FPGAs of different manufacturers are different, the specific situation when the controller 1 is designed based on the IP cores in the FPGAs is different, and in combination, in order to improve the data transmission efficiency, the communication interfaces between the controller 1 and the completer request interface and between the controller and the completer completion interface can be designed to be flow-oriented advanced expansion bus interfaces (AXIS, advanced eXtensible Interface Stream), while the IP cores of FPGAs of some manufacturers are provided with the AXIS interfaces, so that the controller 1 designed based on the IP cores can directly communicate with the first signal transmission submodule through the AXIS interfaces.
As an embodiment, the controller 1 further includes:
the first signal connection module is connected with the first controller core and is used for generating a plurality of signal interfaces of specified types based on the simplified advanced expansion bus interface of the first controller core.
Specifically, in consideration of that, besides communication with the first signal transmission sub-module, there are other communication requirements of the first controller core of the controller 1, so more interfaces are required, so in the embodiment of the present invention, the first signal connection module may be configured for the controller 1, so as to generate a plurality of signal interfaces of a specified type based on the simplified advanced expansion bus interface of the first controller core, thereby supporting more communication requirements of the controller 1.
As one embodiment, the first signal connection module includes a first port expansion module and a first port conversion module;
the first port expansion module is used for expanding the simplified advanced expansion bus interface of the first controller core into a plurality of simplified advanced expansion bus interfaces;
the first port conversion module is used for converting the single simplified advanced expansion bus interface provided by the first port expansion module into a signal interface of a target type;
the target type comprises a general input/output interface and a serial interface.
Specifically, for better explaining the embodiments of the present invention, please refer to fig. 3, fig. 3 is a schematic structural diagram of a controller provided by the present invention, and the first port conversion module includes a first conversion module, a second conversion module and a third conversion module in fig. 3.
Specifically, in view of the limited number of data interfaces in the IP core, in order to implement more interfaces, the simplified advanced expansion bus interface (AXI-Lite) of the first controller core may be expanded into a plurality of interfaces by the first port expansion module, and then a single simplified advanced expansion bus interface provided by the first port expansion module may be converted into a signal interface of a target type by the first port conversion module. Specifically, in fig. 3, the first to third conversion modules may respectively convert signal interfaces of corresponding target types, for example, may include a universal input/output interface, a serial interface, and an interrupt controller interface (axi_intc), through which external debugging of the first controller core may be implemented.
The first controller core may be a MicroBlaze IP core of Xilinx.
As an embodiment, the controller 1 includes a second controller core, a second storage module, and a signal transfer module;
the second controller kernel is used for communicating with the advanced expansion bus interface facing the flow of the first signal transmission sub-module under the cooperation of the client instruction interface and the signal transfer module, responding to the port scanning request sent by the host through the intellectual property core in the initialization stage of the high-speed serial computer expansion bus standard equipment, and storing the initialization data generated in the topology initialization process and sent by the host through the intellectual property core into pre-stored port configuration data;
the second storage module is used for storing data;
the signal transfer module is used for sending the data of the client instruction interface of the second controller core to the stream-oriented advanced expansion bus interface of the first signal transmission sub-module according to the state signal of the stream-oriented advanced expansion bus interface of the first signal transmission sub-module, and caching the data sent by the stream-oriented advanced expansion bus interface of the first signal transmission sub-module so that the second controller core can read the cached data through the client instruction interface.
Specifically, for better illustrating an embodiment of the present invention, please refer to fig. 4, fig. 4 is a schematic structural diagram of another controller according to the present invention.
Specifically, considering that some manufacturer's IP cores (the IP cores in fig. 4 may be Nios-V/g) do not have an AXIS interface, in order to implement the communication of the AXIS interface, in this embodiment of the present invention, a signal switching module is designed, so that, under the cooperation of the client instruction interface of the second controller core and the signal switching module, the second controller core may communicate with the advanced expansion bus interface facing the flow of the first signal transmission sub-module, where the signal switching module in fig. 4 includes a custom module 0-3, and the Nios-V uses a dedicated CI (Custom Instruction, client instruction) interface for supporting the client instruction. Each instruction is connected with an independent interface, and the realization of the instruction is realized by a client through verilog code coding. In this example, 4 axis interfaces are needed, so that 4 instructions are respectively corresponding, but only two interface modes of axis master and slave are actually needed, only 2 Custom modules are needed to be designed, and Custom-0/2 (namely Custom module 0/2) is the master mode of axis, and the implementation process is as follows: the guest instruction loads 2 operands, data0 is 32 bits of data to be sent onto the axis bus, and data1 is last flag bit to be sent onto the axis bus. If the ready signal of the axis bus is 1, data is sent and the valid signal is also set to 1, otherwise the ready signal is waited to become 1. When the Ready and valid signals are simultaneously 1, the successful sending is indicated, and a result 0 is returned. Custom-1/3 (i.e., custom module 1/3) is an axis slave mode, implemented as follows: the client instruction module uses a built-in FIFO (First Input First Output, first-in first-out memory) to receive data on the axis bus, and based on the packet mode, pauses the reception of bus data every time a data packet is received until the software instruction finishes receiving the data packet and then continues to receive new data. The guest instruction does not load an operand, but the functional area in the instruction indicates whether the instruction reads the status of the FIFO or the data content in the FIFO. And reading the FIFO state, returning the data depth in the FIFO through a result interface, and if the depth is 0, expressing that no valid data exists. If a non-0 value is returned, a number of read data instructions are initiated consecutively based on the value, the data content in the FIFO is read out. At this point the result interface returns the data content.
As an embodiment, the controller 1 further includes:
and the second signal connection module is connected with the second controller core and is used for generating a plurality of signal interfaces of specified types based on the advanced expansion bus interface of the second controller core.
In particular, in view of the limited number of data interfaces that are provided in the IP core itself, in order to implement more interfaces, several signal interfaces of a specified type may be generated based on the advanced expansion bus interface of the second controller core, so as to support more communication requirements of the controller 1.
As one embodiment, the second signal connection module includes a second port expansion module and a second port conversion module;
the second port expansion module is used for expanding the simplified advanced expansion bus interface of the second controller core into a plurality of ports;
the second port conversion module is used for converting the single simplified advanced expansion bus interface provided by the second port expansion module into a signal interface of a target type;
the target type comprises a general input/output interface and a serial interface.
Specifically, the advanced expansion bus interface of the second controller core may be first expanded into a plurality of advanced expansion bus interfaces by the second port expansion module, and then a single AXI interface provided by the second port expansion module may be converted into a target type signal interface by the second port conversion module. Specifically, in fig. 4, the fourth to fifth conversion modules may respectively convert signal interfaces of corresponding target types, for example, may respectively convert a general input/output interface, a serial interface, and the like, and may implement debugging of the second controller core through the serial interface.
The AXI interface of the second controller core may be an AXI4 (For high-performance memory-mapped requirements, for high-performance memory mapping requirements), which mainly faces to the requirements of high-performance address mapping communication, and is an address mapping-oriented interface, which allows For maximum 256 rounds of data burst transmission.
Of course, the second signal connection module may be of other types besides this specific configuration, and embodiments of the present invention are not limited herein.
As an embodiment, the controller 1 is further configured to:
and responding to a modification instruction sent by the host through the intellectual property core, and modifying the port configuration data and/or the preset quantity.
Specifically, considering that the host may have a need for modifying the port configuration data or the preset number of ports of the functional module, in the embodiment of the present invention, the port configuration data and/or the preset number may be modified in response to a modification instruction sent by the host through the intellectual property core.
As an embodiment, the terminal device extension device further includes:
the man-machine interaction module is connected with the controller 1 and is used for changing port configuration data and/or preset quantity in the controller 1.
Specifically, considering that a worker near the controller 1 also has a need to modify the port configuration data or the preset number of ports of the functional module, in the embodiment of the present invention, a man-machine interaction module connected to the controller 1 may be configured to modify the port configuration data and/or the preset number in the controller 1 through the man-machine interaction module.
The man-machine interaction module may be of various types, such as a notebook computer, and the embodiment of the invention is not limited herein.
As an embodiment, the first signal transmission sub-module is further configured to:
and determining the space number of the base address register to which the target memory address of the request sent to the specified functional module by the intellectual property core belongs, and binding the space number of the base address register with the corresponding request and sending the binding to the specified functional module.
Specifically, considering that the functional module needs to determine the base address register space number to which the target memory address of the request belongs by itself after receiving the request, the first signal transmission submodule itself can determine the content more efficiently, so the first signal transmission submodule in the embodiment of the present invention is further configured to: and determining the space number of the base address register to which the target memory address of the request sent to the specified functional module by the intellectual property core belongs, and binding the space number of the base address register with the corresponding request and sending the binding to the specified functional module.
As an embodiment, the controller 1 is further configured to initialize the interrupt data pre-stored in the specified memory 3 in response to an interrupt data initialization instruction sent by the host through the intellectual property core of the high-speed serial computer expansion bus standard device in an initialization phase of the high-speed serial computer expansion bus standard device, so that the functional module sends an interrupt request to the host through the interrupt data.
Specifically, considering that the host also needs to initialize interrupt data in the initialization stage of the PCIe device, so that the function module generates an interrupt request sent to the IP core through the interrupt data, in order to fully utilize the computing capability of the controller 1, in the embodiment of the present invention, the controller 1 is further configured to, in the initialization stage of the high-speed serial computer expansion bus standard device, respond to an interrupt data initialization instruction sent by the host through the intellectual property core of the high-speed serial computer expansion bus standard device, initialize the interrupt data pre-stored in the specified memory 3, so that the function module sends an interrupt request to the host through the interrupt data.
Specifically, the interrupt data may include three types of data, which are stored in the form of tables, respectively, including an interrupt configuration table, an interrupt vector table, and a pending bit table, where whether each PF or VF uses interrupts, and the number of interrupts used and the offset position in the interrupt vector table are recorded in the interrupt configuration table. The definitions of the interrupt vector table and the pending bit table are consistent with the definitions in the PCIe specification. Interrupt data can be read and written by the controller 1 and the user interrupt request processing module, respectively.
Specifically, the interrupt request processing module in fig. 2: and receiving an interrupt sending application of a user through the functional module, checking an interrupt configuration table, and reading the interrupt vector table if the equipment has interrupt enabling. If the interrupt mask bit is not enabled, an interrupt application is sent, and a PBA (suspension flag) bit is cleared (PBA is zero representing non-suspension waiting and 1 representing suspension waiting); otherwise, if the interrupt mask bit enabled condition is encountered, the PBA is set to 1, and the interrupt application is abandoned. When the module does not receive the interrupt sending application of the user, polling the interrupt vector table, and finding that the effective unmasked interrupt vector of the PBA bit exists, then sending the interrupt application.
The topology initialization command and the interrupt data initialization command in the data frame sent by the intellectual property core need to be forwarded to the controller 1 by the completer request interface, and other data frames irrelevant to the controller 1 are sent to the downstream functional modules.
As an example, memory 3 is designated as memory in a field programmable gate array in which a high-speed serial computer expansion bus standard device resides.
Specifically, considering that the memory in the FPGA has the characteristic of fast data processing speed, in order to improve the transmission rate of the interrupt data, the designated memory 3 in the embodiment of the present invention is a memory in the field programmable gate array where the high-speed serial computer expansion bus standard device is located.
Referring to fig. 5, fig. 5 is a flow chart of a terminal device expansion method provided by the present invention, where the terminal device expansion method is applied to a controller 1, and includes:
s501: in the initialization stage of the high-speed serial computer expansion bus standard equipment, responding to a port scanning request sent by a host through an intellectual property core, so that the host can complete scanning of a preset number of function module ports supported by the controller 1 and topology initialization work of the high-speed serial computer expansion bus standard equipment;
s502: storing initialization data generated in a topology initialization process, which is sent by a host through an intellectual property core, into pre-stored port configuration data;
the intellectual property core of the high-speed serial computer expansion bus standard device is the intellectual property core in the field programmable gate array, the intellectual property core of the high-speed serial computer expansion bus standard device is in a bridge mode, and the upper limit of the preset quantity is the total quantity of bus resources specified by the high-speed serial computer expansion bus standard.
As an embodiment, the terminal device extension method further includes:
s503: in the initialization stage of the high-speed serial computer expansion bus standard device, in response to an interrupt data initialization instruction sent by the host through the intellectual property core of the high-speed serial computer expansion bus standard device, the interrupt data pre-stored in the designated memory 3 is initialized so that the functional module sends an interrupt request to the host through the interrupt data.
As an example, memory 3 is designated as memory in a field programmable gate array in which a high-speed serial computer expansion bus standard device resides.
As an embodiment, the terminal device extension method further includes:
s504: and responding to a modification instruction sent by the host through the intellectual property core, and modifying the port configuration data and/or the preset quantity.
For the description of the terminal device extension method provided in the embodiment of the present invention, reference is made to the foregoing embodiment of the terminal device extension device, and the embodiment of the present invention is not repeated herein.
Referring to fig. 6, fig. 6 is a schematic structural diagram of a terminal device expansion device provided by the present invention, where the terminal device expansion device is applied to a controller 1, and includes:
a transmitting module 61, configured to respond to a port scanning request sent by the host through the intellectual property core in an initialization stage of the high-speed serial computer expansion bus standard device, so that the host finishes scanning a preset number of ports of the functional module supported by the controller 1 and finishes topology initialization work for the high-speed serial computer expansion bus standard device;
a storage module 62, configured to store initialization data generated in a topology initialization process, which is sent by a host through an intellectual property core, to pre-stored port configuration data;
The intellectual property core of the high-speed serial computer expansion bus standard device is the intellectual property core in the field programmable gate array, the intellectual property core of the high-speed serial computer expansion bus standard device is in a bridge mode, and the upper limit of the preset quantity is the total quantity of bus resources specified by the high-speed serial computer expansion bus standard.
For the description of the terminal device expansion apparatus provided in the embodiment of the present invention, reference is made to the foregoing embodiment of the terminal device expansion apparatus, and the embodiment of the present invention is not repeated herein.
The invention also provides high-speed serial computer expansion bus standard equipment, which comprises the terminal equipment expansion equipment.
For the description of the high-speed serial computer expansion bus standard device provided in the embodiment of the present invention, reference is made to the foregoing embodiment of the terminal device expansion device, and the embodiment of the present invention is not repeated herein.
The invention also provides a server comprising the high-speed serial computer expansion bus standard device.
For the introduction of the server provided by the embodiment of the present invention, reference is made to the foregoing embodiment of the terminal device extension apparatus, and the embodiment of the present invention is not repeated herein.
Referring to fig. 7, fig. 7 is a schematic structural diagram of a computer readable storage medium provided in the present invention, in which a computer program 71 is stored in the computer readable storage medium 70, and the computer program 71 implements the steps of the terminal device extension method when executed by a processor.
For the description of the computer readable storage medium provided in the embodiment of the present invention, reference is made to the foregoing embodiment of the terminal device extension apparatus, and the embodiment of the present invention is not repeated here.
In the present specification, each embodiment is described in a progressive manner, and each embodiment is mainly described in a different point from other embodiments, and identical and similar parts between the embodiments are all enough to refer to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant points refer to the description of the method section. It should also be noted that in this specification, 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 does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. 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.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (18)

1.一种终端设备扩展设备,其特征在于,包括:1. A terminal equipment expansion device, characterized by including: 与高速串行计算机扩展总线标准设备的知识产权核连接的控制器,用于在所述高速串行计算机扩展总线标准设备的初始化阶段,对主机通过所述知识产权核发送的端口扫描请求进行响应,以便所述主机完成对所述控制器支持的预设数量个功能模块端口的扫描并完成对于所述高速串行计算机扩展总线标准设备的拓扑初始化工作;还用于将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;A controller connected to the intellectual property core of the high-speed serial computer expansion bus standard device, configured to respond to a port scan request sent by the host through the intellectual property core during the initialization phase of the high-speed serial computer expansion bus standard device. , so that the host can complete the scanning of a preset number of functional module ports supported by the controller and complete the topology initialization work for the high-speed serial computer expansion bus standard device; and also be used to connect the host through the The initialization data generated during the topology initialization process sent by the intellectual property core is stored in the pre-stored port configuration data; 第一端与所述知识产权核连接,第二端与所述控制器连接,第三端与所述高速串行计算机扩展总线标准设备的各个功能模块连接的信号传输模块,用于实现所述知识产权核与所述控制器以及所述功能模块间的数据通信;The first end is connected to the intellectual property core, the second end is connected to the controller, and the third end is connected to the signal transmission module of each functional module of the high-speed serial computer expansion bus standard equipment, used to implement the Data communication between the intellectual property core and the controller and the functional modules; 其中,所述知识产权核为现场可编程门阵列中的知识产权核,所述知识产权核处于桥接模式,所述预设数量的上限为高速串行计算机扩展总线标准所规定的总线资源总量;Wherein, the intellectual property core is an intellectual property core in a field programmable gate array, the intellectual property core is in bridge mode, and the upper limit of the preset number is the total amount of bus resources specified by the high-speed serial computer extended bus standard ; 所述信号传输模块包括:The signal transmission module includes: 第一端与所述知识产权核连接,第二端与所述控制器连接,第三端与所述高速串行计算机扩展总线标准设备的各个功能模块连接的第一信号传输子模块,用于将所述知识产权核发送的请求发送至所述控制器或指定的所述功能模块,将所述控制器以及所述功能模块对于所述知识产权核发送请求的响应数据发送至所述知识产权核;The first end is connected to the intellectual property core, the second end is connected to the controller, and the third end is connected to the first signal transmission submodule of each functional module of the high-speed serial computer expansion bus standard equipment, for Send the request sent by the intellectual property core to the controller or the designated functional module, and send the response data of the controller and the functional module to the request sent by the intellectual property core to the intellectual property nuclear; 第一端与所述知识产权核连接,第二端与所述控制器连接的第二信号传输子模块,用于将所述功能模块发出的请求发送至所述知识产权核,将所述知识产权核发出的对于所述功能模块发出的请求的响应信号发送至指定的所述功能模块;A second signal transmission submodule whose first end is connected to the intellectual property core and whose second end is connected to the controller is used to send the request issued by the functional module to the intellectual property core and transfer the knowledge The response signal sent by the property rights core to the request issued by the functional module is sent to the specified functional module; 该终端设备扩展设备设置于所述高速串行计算机扩展总线标准设备所在的现场可编程门阵列;The terminal equipment expansion device is arranged on the field programmable gate array where the high-speed serial computer expansion bus standard device is located; 所述控制器包括第二控制器内核、第二存储模块以及信号转接模块;The controller includes a second controller core, a second storage module and a signal transfer module; 所述第二控制器内核,用于在自身的客户指令接口以及信号转接模块的配合下,与所述第一信号传输子模块的面向流的先进扩展总线接口进行通信,在所述高速串行计算机扩展总线标准设备的初始化阶段,对主机通过所述知识产权核发送的端口扫描请求进行响应,将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;The second controller core is used to communicate with the stream-oriented advanced expansion bus interface of the first signal transmission sub-module with the cooperation of its own customer command interface and signal transfer module. Execute the initialization phase of the computer expansion bus standard device, respond to the port scan request sent by the host through the intellectual property core, and use the initialization data generated during the topology initialization process sent by the host through the intellectual property core, Store to pre-stored port configuration data; 所述第二存储模块,用于存储数据;The second storage module is used to store data; 所述信号转接模块,用于根据所述第一信号传输子模块的面向流的先进扩展总线接口的状态信号,将所述第二控制器内核的客户指令接口的数据发送至所述第一信号传输子模块的面向流的先进扩展总线接口,将所述第一信号传输子模块的面向流的先进扩展总线接口发送的数据进行缓存,以便所述第二控制器内核通过所述客户指令接口读取缓存的数据。The signal transfer module is configured to send the data of the client instruction interface of the second controller core to the first signal transmission sub-module according to the status signal of the advanced stream-oriented expansion bus interface of the first signal transmission sub-module. The advanced flow-oriented extended bus interface of the signal transmission submodule caches the data sent by the advanced flow-oriented extended bus interface of the first signal transmission submodule so that the second controller core can pass the client instruction interface Read cached data. 2.根据权利要求1所述的终端设备扩展设备,其特征在于,所述控制器包括第一控制器内核以及第一存储模块;2. The terminal device expansion device according to claim 1, wherein the controller includes a first controller core and a first storage module; 所述第一控制器内核,用于通过自身的面向流的先进扩展总线接口与所述第一信号传输子模块进行通信,在所述高速串行计算机扩展总线标准设备的初始化阶段,对主机通过所述知识产权核发送的端口扫描请求进行响应,将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;The first controller core is used to communicate with the first signal transmission sub-module through its own advanced stream-oriented expansion bus interface. In the initialization phase of the high-speed serial computer expansion bus standard equipment, the host passes Respond to the port scan request sent by the intellectual property core, and store the initialization data generated during the topology initialization process sent by the host through the intellectual property core into the pre-stored port configuration data; 所述第一存储模块,用于存储数据。The first storage module is used to store data. 3.根据权利要求2所述的终端设备扩展设备,其特征在于,所述控制器还包括:3. The terminal device expansion device according to claim 2, wherein the controller further includes: 与所述第一控制器内核连接的第一信号连接模块,用于基于所述第一控制器内核的简化先进扩展总线接口,生成若干个指定类型的信号接口。A first signal connection module connected to the first controller core is configured to generate several specified types of signal interfaces based on the simplified advanced expansion bus interface of the first controller core. 4.根据权利要求3所述的终端设备扩展设备,其特征在于,所述第一信号连接模块包括第一端口扩展模块以及第一端口转换模块;4. The terminal equipment expansion device according to claim 3, wherein the first signal connection module includes a first port expansion module and a first port conversion module; 所述第一端口扩展模块,用于将所述第一控制器内核的简化先进扩展总线接口扩展为多个;The first port expansion module is used to expand the simplified advanced expansion bus interface of the first controller core to multiple; 所述第一端口转换模块,用于将所述第一端口扩展模块提供的单个所述简化先进扩展总线接口转换为目标类型的信号接口;The first port conversion module is used to convert the single simplified advanced expansion bus interface provided by the first port expansion module into a target type signal interface; 其中,所述目标类型包括通用输入输出接口以及串行接口。Wherein, the target type includes a general input and output interface and a serial interface. 5.根据权利要求1所述的终端设备扩展设备,其特征在于,所述控制器还包括:5. The terminal device expansion device according to claim 1, wherein the controller further includes: 与所述第二控制器内核连接的第二信号连接模块,用于基于所述第二控制器内核的先进扩展总线接口,生成若干个指定类型的信号接口。A second signal connection module connected to the second controller core is configured to generate several specified types of signal interfaces based on the advanced expansion bus interface of the second controller core. 6.根据权利要求5所述的终端设备扩展设备,其特征在于,所述第二信号连接模块包括第二端口扩展模块以及第二端口转换模块;6. The terminal equipment expansion device according to claim 5, wherein the second signal connection module includes a second port expansion module and a second port conversion module; 所述第二端口扩展模块,用于将所述第二控制器内核的简化先进扩展总线接口扩展为多个;The second port expansion module is used to expand the simplified advanced expansion bus interface of the second controller core to multiple; 所述第二端口转换模块,用于将所述第二端口扩展模块提供的单个所述简化先进扩展总线接口转换为目标类型的信号接口;The second port conversion module is used to convert the single simplified advanced expansion bus interface provided by the second port expansion module into a target type signal interface; 其中,所述目标类型包括通用输入输出接口以及串行接口。Wherein, the target type includes a general input and output interface and a serial interface. 7.根据权利要求1所述的终端设备扩展设备,其特征在于,所述控制器还用于:7. The terminal equipment expansion device according to claim 1, characterized in that the controller is also used to: 响应于所述主机通过所述知识产权核发送的修改指令,对所述端口配置数据和/或所述预设数量进行修改。In response to a modification instruction sent by the host through the intellectual property core, the port configuration data and/or the preset number are modified. 8.根据权利要求1所述的终端设备扩展设备,其特征在于,该终端设备扩展设备还包括:8. The terminal device expansion device according to claim 1, characterized in that the terminal device expansion device further includes: 与所述控制器连接的人机交互模块,用于通过其对所述控制器中的所述端口配置数据和/或所述预设数量进行更改。A human-computer interaction module connected to the controller is used to change the port configuration data and/or the preset number in the controller. 9.根据权利要求1所述的终端设备扩展设备,其特征在于,所述第一信号传输子模块还用于:9. The terminal equipment expansion device according to claim 1, characterized in that the first signal transmission sub-module is also used for: 确定出所述知识产权核发送至指定的所述功能模块的请求的目标内存地址所属的基地址寄存器空间号,将所述基地址寄存器空间号与其对应的请求绑定发送至指定的所述功能模块。Determine the base address register space number to which the target memory address of the request sent by the intellectual property core to the specified functional module belongs, and bind the base address register space number with its corresponding request and send it to the specified function module. 10.根据权利要求1至9任一项所述的终端设备扩展设备,其特征在于,所述控制器还用于,在所述高速串行计算机扩展总线标准设备的初始化阶段,响应于所述主机通过所述高速串行计算机扩展总线标准设备的知识产权核发送的中断数据初始化指令,对指定存储器中预存的中断数据进行初始化,以便所述功能模块通过所述中断数据向所述主机发送中断请求。10. The terminal equipment expansion device according to any one of claims 1 to 9, characterized in that the controller is further configured to, in the initialization phase of the high-speed serial computer expansion bus standard device, respond to the The host initializes the interrupt data pre-stored in the designated memory through the interrupt data initialization instruction sent by the intellectual property core of the high-speed serial computer expansion bus standard device, so that the functional module sends an interrupt to the host through the interrupt data ask. 11.根据权利要求10所述的终端设备扩展设备,其特征在于,所述指定存储器为所述高速串行计算机扩展总线标准设备所在的现场可编程门阵列中的存储器。11. The terminal equipment expansion device according to claim 10, wherein the designated memory is a memory in a field programmable gate array where the high-speed serial computer expansion bus standard device is located. 12.一种终端设备扩展方法,其特征在于,应用于控制器,包括:12. A terminal device expansion method, characterized in that it is applied to a controller and includes: 在高速串行计算机扩展总线标准设备的初始化阶段,对主机通过知识产权核发送的端口扫描请求进行响应,以便所述主机完成对所述控制器支持的预设数量个功能模块端口的扫描并完成对于所述高速串行计算机扩展总线标准设备的拓扑初始化工作;In the initialization phase of the high-speed serial computer expansion bus standard equipment, respond to the port scan request sent by the host through the intellectual property core, so that the host can complete the scan of the preset number of functional module ports supported by the controller and complete the Topology initialization work for the high-speed serial computer expansion bus standard equipment; 将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;Store the initialization data generated during the topology initialization process sent by the host through the intellectual property core into pre-stored port configuration data; 其中,所述高速串行计算机扩展总线标准设备的知识产权核为现场可编程门阵列中的知识产权核,所述高速串行计算机扩展总线标准设备的知识产权核处于桥接模式,所述预设数量的上限为高速串行计算机扩展总线标准所规定的总线资源总量;Wherein, the intellectual property core of the high-speed serial computer expansion bus standard equipment is an intellectual property core in a field programmable gate array, the intellectual property core of the high-speed serial computer expansion bus standard equipment is in bridge mode, and the preset The upper limit of the number is the total amount of bus resources specified by the high-speed serial computer expansion bus standard; 所述控制器通过信号传输模块与所述知识产权核通信,所述信号传输模块包括:The controller communicates with the intellectual property core through a signal transmission module, which includes: 第一端与所述知识产权核连接,第二端与所述控制器连接,第三端与所述高速串行计算机扩展总线标准设备的各个功能模块连接的第一信号传输子模块,用于将所述知识产权核发送的请求发送至所述控制器或指定的所述功能模块,将所述控制器以及所述功能模块对于所述知识产权核发送请求的响应数据发送至所述知识产权核;The first end is connected to the intellectual property core, the second end is connected to the controller, and the third end is connected to the first signal transmission submodule of each functional module of the high-speed serial computer expansion bus standard equipment, for Send the request sent by the intellectual property core to the controller or the designated functional module, and send the response data of the controller and the functional module to the request sent by the intellectual property core to the intellectual property nuclear; 第一端与所述知识产权核连接,第二端与所述控制器连接的第二信号传输子模块,用于将所述功能模块发出的请求发送至所述知识产权核,将所述知识产权核发出的对于所述功能模块发出的请求的响应信号发送至指定的所述功能模块;A second signal transmission submodule whose first end is connected to the intellectual property core and whose second end is connected to the controller is used to send the request issued by the functional module to the intellectual property core and transfer the knowledge The response signal sent by the property rights core to the request issued by the functional module is sent to the specified functional module; 所述控制器以及所述信号传输模块设置于所述高速串行计算机扩展总线标准设备所在的现场可编程门阵列;The controller and the signal transmission module are arranged in a field programmable gate array where the high-speed serial computer expansion bus standard device is located; 所述控制器包括第二控制器内核、第二存储模块以及信号转接模块;The controller includes a second controller core, a second storage module and a signal transfer module; 所述第二控制器内核,用于在自身的客户指令接口以及信号转接模块的配合下,与所述第一信号传输子模块的面向流的先进扩展总线接口进行通信,在所述高速串行计算机扩展总线标准设备的初始化阶段,对主机通过所述知识产权核发送的端口扫描请求进行响应,将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;The second controller core is used to communicate with the stream-oriented advanced expansion bus interface of the first signal transmission sub-module with the cooperation of its own customer command interface and signal transfer module. Execute the initialization phase of the computer expansion bus standard device, respond to the port scan request sent by the host through the intellectual property core, and use the initialization data generated during the topology initialization process sent by the host through the intellectual property core, Store to pre-stored port configuration data; 所述第二存储模块,用于存储数据;The second storage module is used to store data; 所述信号转接模块,用于根据所述第一信号传输子模块的面向流的先进扩展总线接口的状态信号,将所述第二控制器内核的客户指令接口的数据发送至所述第一信号传输子模块的面向流的先进扩展总线接口,将所述第一信号传输子模块的面向流的先进扩展总线接口发送的数据进行缓存,以便所述第二控制器内核通过所述客户指令接口读取缓存的数据。The signal transfer module is configured to send the data of the client instruction interface of the second controller core to the first signal transmission sub-module according to the status signal of the advanced stream-oriented expansion bus interface of the first signal transmission sub-module. The advanced flow-oriented extended bus interface of the signal transmission submodule caches the data sent by the advanced flow-oriented extended bus interface of the first signal transmission submodule so that the second controller core can pass the client instruction interface Read cached data. 13.根据权利要求12所述的终端设备扩展方法,其特征在于,该终端设备扩展方法还包括:13. The terminal equipment expansion method according to claim 12, characterized in that the terminal equipment expansion method further includes: 在所述高速串行计算机扩展总线标准设备的初始化阶段,响应于所述主机通过所述高速串行计算机扩展总线标准设备的知识产权核发送的中断数据初始化指令,对指定存储器中预存的中断数据进行初始化,以便所述功能模块通过所述中断数据向所述主机发送中断请求。In the initialization phase of the high-speed serial computer expansion bus standard equipment, in response to the interrupt data initialization instruction sent by the host through the intellectual property core of the high-speed serial computer expansion bus standard equipment, the interrupt data prestored in the designated memory is Initialization is performed so that the functional module sends an interrupt request to the host through the interrupt data. 14.根据权利要求12所述的终端设备扩展方法,其特征在于,该终端设备扩展方法还包括:14. The terminal equipment expansion method according to claim 12, characterized in that the terminal equipment expansion method further includes: 响应于所述主机通过所述知识产权核发送的修改指令,对所述端口配置数据和/或所述预设数量进行修改。In response to a modification instruction sent by the host through the intellectual property core, the port configuration data and/or the preset number are modified. 15.一种终端设备扩展装置,其特征在于,应用于控制器,包括:15. A terminal equipment expansion device, characterized in that it is applied to a controller and includes: 发送模块,用于在高速串行计算机扩展总线标准设备的初始化阶段,对主机通过知识产权核发送的端口扫描请求进行响应,以便所述主机完成对所述控制器支持的预设数量个功能模块端口的扫描并完成对于所述高速串行计算机扩展总线标准设备的拓扑初始化工作;A sending module, configured to respond to the port scan request sent by the host through the intellectual property core during the initialization phase of the high-speed serial computer expansion bus standard equipment, so that the host can complete the preset number of functional modules supported by the controller. Scan the port and complete the topology initialization work for the high-speed serial computer expansion bus standard device; 存储模块,用于将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;A storage module configured to store the initialization data generated during the topology initialization process sent by the host through the intellectual property core into pre-stored port configuration data; 其中,所述高速串行计算机扩展总线标准设备的知识产权核为现场可编程门阵列中的知识产权核,所述高速串行计算机扩展总线标准设备的知识产权核处于桥接模式,所述预设数量的上限为高速串行计算机扩展总线标准所规定的总线资源总量;Wherein, the intellectual property core of the high-speed serial computer expansion bus standard equipment is an intellectual property core in a field programmable gate array, the intellectual property core of the high-speed serial computer expansion bus standard equipment is in bridge mode, and the preset The upper limit of the number is the total amount of bus resources specified by the high-speed serial computer expansion bus standard; 所述控制器通过信号传输模块与所述知识产权核通信,所述信号传输模块包括:The controller communicates with the intellectual property core through a signal transmission module, which includes: 第一端与所述知识产权核连接,第二端与所述控制器连接,第三端与所述高速串行计算机扩展总线标准设备的各个功能模块连接的第一信号传输子模块,用于将所述知识产权核发送的请求发送至所述控制器或指定的所述功能模块,将所述控制器以及所述功能模块对于所述知识产权核发送请求的响应数据发送至所述知识产权核;The first end is connected to the intellectual property core, the second end is connected to the controller, and the third end is connected to the first signal transmission submodule of each functional module of the high-speed serial computer expansion bus standard equipment, for Send the request sent by the intellectual property core to the controller or the designated functional module, and send the response data of the controller and the functional module to the request sent by the intellectual property core to the intellectual property nuclear; 第一端与所述知识产权核连接,第二端与所述控制器连接的第二信号传输子模块,用于将所述功能模块发出的请求发送至所述知识产权核,将所述知识产权核发出的对于所述功能模块发出的请求的响应信号发送至指定的所述功能模块;A second signal transmission submodule whose first end is connected to the intellectual property core and whose second end is connected to the controller is used to send the request issued by the functional module to the intellectual property core and transfer the knowledge The response signal sent by the property rights core to the request issued by the functional module is sent to the specified functional module; 所述控制器以及所述信号传输模块设置于所述高速串行计算机扩展总线标准设备所在的现场可编程门阵列;The controller and the signal transmission module are arranged in a field programmable gate array where the high-speed serial computer expansion bus standard device is located; 所述控制器包括第二控制器内核、第二存储模块以及信号转接模块;The controller includes a second controller core, a second storage module and a signal transfer module; 所述第二控制器内核,用于在自身的客户指令接口以及信号转接模块的配合下,与所述第一信号传输子模块的面向流的先进扩展总线接口进行通信,在所述高速串行计算机扩展总线标准设备的初始化阶段,对主机通过所述知识产权核发送的端口扫描请求进行响应,将所述主机通过所述知识产权核发送的在所述拓扑初始化过程中生成的初始化数据,存储至预存的端口配置数据;The second controller core is used to communicate with the stream-oriented advanced expansion bus interface of the first signal transmission sub-module with the cooperation of its own customer command interface and signal transfer module. Execute the initialization phase of the computer expansion bus standard device, respond to the port scan request sent by the host through the intellectual property core, and use the initialization data generated during the topology initialization process sent by the host through the intellectual property core, Store to pre-stored port configuration data; 所述第二存储模块,用于存储数据;The second storage module is used to store data; 所述信号转接模块,用于根据所述第一信号传输子模块的面向流的先进扩展总线接口的状态信号,将所述第二控制器内核的客户指令接口的数据发送至所述第一信号传输子模块的面向流的先进扩展总线接口,将所述第一信号传输子模块的面向流的先进扩展总线接口发送的数据进行缓存,以便所述第二控制器内核通过所述客户指令接口读取缓存的数据。The signal transfer module is configured to send the data of the client instruction interface of the second controller core to the first signal transmission sub-module according to the status signal of the advanced stream-oriented expansion bus interface of the first signal transmission sub-module. The advanced flow-oriented extended bus interface of the signal transmission submodule caches the data sent by the advanced flow-oriented extended bus interface of the first signal transmission submodule so that the second controller core can pass the client instruction interface Read cached data. 16.一种高速串行计算机扩展总线标准设备,其特征在于,包括如权利要求1至11任一项所述的终端设备扩展设备。16. A high-speed serial computer expansion bus standard device, characterized in that it includes the terminal device expansion device according to any one of claims 1 to 11. 17.一种服务器,其特征在于,包括如权利要求16所述的高速串行计算机扩展总线标准设备。17. A server, characterized by comprising the high-speed serial computer expansion bus standard device as claimed in claim 16. 18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求12至14任一项所述终端设备扩展方法的步骤。18. A computer-readable storage medium, characterized in that a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the terminal device according to any one of claims 12 to 14 is implemented. Extension method steps.
CN202310953586.2A 2023-08-01 2023-08-01 Terminal equipment expansion equipment, method and device and bus standard equipment Active CN116701275B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310953586.2A CN116701275B (en) 2023-08-01 2023-08-01 Terminal equipment expansion equipment, method and device and bus standard equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310953586.2A CN116701275B (en) 2023-08-01 2023-08-01 Terminal equipment expansion equipment, method and device and bus standard equipment

Publications (2)

Publication Number Publication Date
CN116701275A CN116701275A (en) 2023-09-05
CN116701275B true CN116701275B (en) 2023-11-07

Family

ID=87832448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310953586.2A Active CN116701275B (en) 2023-08-01 2023-08-01 Terminal equipment expansion equipment, method and device and bus standard equipment

Country Status (1)

Country Link
CN (1) CN116701275B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101196859A (en) * 2006-12-04 2008-06-11 中芯国际集成电路制造(上海)有限公司 Direct access memory device and direct access memory operation method
US9026687B1 (en) * 2013-12-26 2015-05-05 Lsi Corporation Host based enumeration and configuration for computer expansion bus controllers
CN107203484A (en) * 2017-06-27 2017-09-26 北京计算机技术及应用研究所 A kind of PCIe based on FPGA and SRIO bus bridge systems
CN108234264A (en) * 2017-12-29 2018-06-29 杭州迪普科技股份有限公司 A kind of data packet forwarding method and device based on the extension of PCIe signaling interfaces
CN113407307A (en) * 2021-06-11 2021-09-17 苏州浪潮智能科技有限公司 Port expansion method, device, equipment and computer readable storage medium
CN115509985A (en) * 2022-09-29 2022-12-23 浪潮商用机器有限公司 A processor I/O controller
CN115562738A (en) * 2022-11-14 2023-01-03 苏州浪潮智能科技有限公司 Port configuration method, component and hard disk expansion device
CN116095023A (en) * 2023-04-07 2023-05-09 珠海星云智联科技有限公司 Self-adapting method for interconnecting bus resources of rapid peripheral components of data processing unit

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101196859A (en) * 2006-12-04 2008-06-11 中芯国际集成电路制造(上海)有限公司 Direct access memory device and direct access memory operation method
US9026687B1 (en) * 2013-12-26 2015-05-05 Lsi Corporation Host based enumeration and configuration for computer expansion bus controllers
CN107203484A (en) * 2017-06-27 2017-09-26 北京计算机技术及应用研究所 A kind of PCIe based on FPGA and SRIO bus bridge systems
CN108234264A (en) * 2017-12-29 2018-06-29 杭州迪普科技股份有限公司 A kind of data packet forwarding method and device based on the extension of PCIe signaling interfaces
CN113407307A (en) * 2021-06-11 2021-09-17 苏州浪潮智能科技有限公司 Port expansion method, device, equipment and computer readable storage medium
CN115509985A (en) * 2022-09-29 2022-12-23 浪潮商用机器有限公司 A processor I/O controller
CN115562738A (en) * 2022-11-14 2023-01-03 苏州浪潮智能科技有限公司 Port configuration method, component and hard disk expansion device
CN116095023A (en) * 2023-04-07 2023-05-09 珠海星云智联科技有限公司 Self-adapting method for interconnecting bus resources of rapid peripheral components of data processing unit

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于FPGA的PXIe总线DMA设计与实现;徐欣;周舟;李楠;孙兆林;;微处理机(第04期);全文 *
徐欣 ; 周舟 ; 李楠 ; 孙兆林 ; .基于FPGA的PXIe总线DMA设计与实现.微处理机.2010,(第04期),全文. *

Also Published As

Publication number Publication date
CN116701275A (en) 2023-09-05

Similar Documents

Publication Publication Date Title
CN114443529B (en) Memory direct access architecture, system, method, electronic device and medium
KR101034494B1 (en) Bus system based on open core protocol
JP6317520B2 (en) Protocol converter between CPCI bus and ISA bus and conversion method thereof
CN111061663B (en) Data transmission method, device and related components
US11983136B2 (en) PCIe device and operating method thereof
CN108959136B (en) SPI-based data transmission accelerating device and system and data transmission method
JP2541767B2 (en) Smart bus control unit
US20220327080A1 (en) PCIe DEVICE AND OPERATING METHOD THEREOF
CN106469127B (en) A data access device and method
CN115357416A (en) A method and device for cross-system data processing
JP4444101B2 (en) Bus system, station for use in the bus system, and bus interface
CN102591817B (en) Multi-bus bridge controller and implementing method thereof
CN109062834B (en) DMA-based SPI communication method, electronic equipment, storage medium and device
CN116701275B (en) Terminal equipment expansion equipment, method and device and bus standard equipment
CN114389947A (en) Data transmission method, system and computer-readable storage medium
JP2008502976A (en) Bus controller for processing split transactions
JP6760579B2 (en) Network line card (LC) integration into host operating system (OS)
CN106372019B (en) A system bus device response timeout processing method and timeout processing device
CN111177048A (en) AHB bus equipment and data stream transmission method thereof
CN111130678B (en) Data transmission method, device, equipment and computer readable storage medium
JP6965943B2 (en) Configuration management device, configuration management system, configuration management method, and configuration management program
CN106126452A (en) The method that (SuSE) Linux OS based on IIC agreement communicates with bare machine
JP2002288115A (en) Usb controller
CN118132243B (en) Interrupt signal processing method, device, equipment, medium, circuit and system
CN118981443B (en) Integrated circuit expansion method, device, equipment and storage medium

Legal Events

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