Intelligent ethernet card with function of hardware acceleration
Technical field
The present invention relates to technical field of the computer network, particularly a kind of intelligent ethernet card with function of hardware acceleration.
Background technology
The development of computer enters cybertimes, and server-client application pattern has obtained greatly development.In this application model, a groundwork of server is exactly transmitting-receiving and the processing to network packet.And along with the continuous development of the Internet, broadband network universal day by day is also more and more higher to the requirement of server performance.But when Ethernet goes on foot the kilomega network epoch that leap to from 100,000,000 nets one, it is found that most of disposal ability that can consume processor-server to the processing of a gigabit ethernet traffic easily, by further discovering, the groundwork of the CPU of this moment is to interrupt in response, and do that some are packed, unpack, error checking and correction, to filtering etc. relatively simpler but more time-consuming I/O generic operation makes it can't bring into play its powerful computing ability so that more useful service to be provided in the address of network packet.
At the problems referred to above, can on network interface card, design the special embedded microprocessor that I/O handles that is used for, most ICP/IP protocol is downloaded on the network interface card carry out.Usually embedded microprocessor all is a risc processor, has higher clock frequency, and average every instruction only needs a clock cycle, has higher MIPS value.At the I/O processing demands, embedded microprocessor also has interrupt response speed and real-time disposal ability faster, utilizes the network interface card of embedded microprocessor design also to be referred to as intelligent network adapter usually.Utilize FPGA as hardware-accelerated device in addition, a part of user program is configured among the FPGA, the hardware operation replacement software operation with highly-parallel can further improve treatment effeciency.
Summary of the invention
The purpose of this invention is to provide a kind of intelligent ethernet card that meets the gigabit Ethernet standard with function of hardware acceleration, be used for server that network throughput is had relatively high expectations, utilize the embedded microprocessor on this network interface card and the disposal ability of hardware accelerator, alleviate the load of server, improved the disposal ability of whole system.
To achieve these goals, the invention provides a kind of intelligent ethernet card with function of hardware acceleration, comprise: embedded microprocessor 1, Peripheral Component Interconnect expansion interface 2,100 m ethernet transceiver 3, copper cable interface 5, memory module 7, flash memory 8, network interface card administration module 10, Clock management circuit 11, electrically erasable programmable ROM 12, serial ports 13, the serial media interface 14 that has nothing to do, memory controller interface 16, external equipment bus 17, gigabit ethernet transceiver 4, fiber interface module 6, simplify gigabit Media Independent Interface/simplification ten bit interface 15 and hardware accelerator 9; Described embedded microprocessor 1 links to each other with main frame by Peripheral Component Interconnect expansion interface 2, described embedded microprocessor 1 connects 100 m ethernet transceiver 3 and gigabit ethernet transceiver 4 respectively, each self-driven two copper cable interfaces 5 and fiber interface module 6; Embedded microprocessor 1 connects memory module 7 by memory controller interface 16; Also be connected with external equipment bus 17 on the embedded microprocessor 1, connect flash memory 8, hardware accelerator 9 and network interface card administration module 10 by external equipment bus 17, Clock management circuit 11, processor connect electrically erasable programmable ROM 12 and serial ports 13 directly is connected on the embedded microprocessor 1.
In the technique scheme, described hardware accelerator 9 is used for sharing the load of processor when the receiving network data bag, improve treatment effeciency, comprising: accelerating circuit 18, power management module 19, configuration management circuit 20, flash memory 21 and quick passive parallel interface 22; Wherein,
Described accelerating circuit 18 links to each other with configuration management circuit 20 by quick passive parallel interface 22, configuration meets interface logic, metadata cache and the acceleration logic relevant with user program of external equipment bus protocol in accelerating circuit 18, described interface logic connects external equipment bus 17, by external equipment bus 17 and embedded microprocessor 1 swap data, described acceleration logic realizes the processing to data, and described accelerating circuit 18 can be realized by fpga chip;
Described power management module 19 provides hardware accelerator 9 required 1.2V, 3.3V power supply;
Described configuration management circuit 20 is used to dispose accelerating circuit 18, and described configuration management circuit 20 connects external equipment bus 17 to receive data, connects flash memory 21 with the storage data, and connects accelerating circuit 18 by quick passive parallel interface 22;
The configuration file of the FPGA that described flash memory 21 storage accelerating circuits 18 are adopted, external equipment bus 17 is by configuration management circuit 20 programming flash memories 21.
Described hardware accelerator 9 is installed on the form of expansion card on the expansion slot of external equipment bus 17 of network interface card.
Described configuration management circuit 20 uses programming device MAX3000A.
Described accelerating circuit 18 uses the Stratix II fpga chip EP2S60 of ALTERA company,
In the technique scheme, described embedded microprocessor 1 adopts the PowerPC440GX flush bonding processor of IBM Corporation, this processor imcorporating peripherals interconnect extended interface 2, the irrelevant interface 14 of serial media, simplification gigabit Media Independent Interface/simplification ten bit interface 15, external equipment bus interface 17 and memory controller interface 16, memory bank is expanded the PC2700 DDR SDRAM of 2GB at most.
In the technique scheme, the irrelevant interface 14 of described serial media connects the AC104Z 100 m ethernet transceiver 3 of ALTIMA company, drives two copper cable 100 m ethernet interfaces 5; Described simplification gigabit Media Independent Interface/simplification ten bit interface 15 connect the MC92604 gigabit ethernet transceiver 4 of motorola inc, drive the V23818-K305-L57 multimode fiber transceiver 6 of two Infineon companies.
In the technique scheme, described intelligent ethernet card provides the Ethernet interface of copper cable interface 5 and fiber interface module 6 two medias, described copper cable interface 5 is 100,000,000 interfaces, described fiber interface module 6 is gigabit interfaces, and described copper cable interface 5 respectively has two with described fiber interface module 6.
In the server that intelligent ethernet card with function of hardware acceleration of the present invention can be used for network throughput is had relatively high expectations, utilize the powerful network throughput of this network interface card, the load that much needs server to handle can be unloaded on the network interface card, handle by processor on the network interface card and hardware accelerator, thereby alleviated pressure, improved the disposal ability of whole system server.
Description of drawings
Fig. 1 is the structure chart with intelligent ethernet card of function of hardware acceleration of the present invention;
Fig. 2 is an IBM PowerPC440GX processor logic block diagram;
Fig. 3 is a Motorola MC92604 dual gigabit ethernet transceiver logic block diagram;
Fig. 4 is an ALTIMAAC104Z 100 m ethernet transceiver logic block diagram;
Fig. 5 is the hardware accelerator logic diagram with intelligent ethernet card of function of hardware acceleration of the present invention.
The drawing explanation
1 embedded microprocessor, 2 Peripheral Component Interconnect expansion interfaces, 3 100 m ethernet transceivers
4 gigabit ethernet transceivers, 5 copper cable interfaces, 6 fiber interface modules
7 memory modules, 8 flash memories, 9 hardware accelerators
10 network interface card administration modules, 11 Clock management circuit, 12 electrically erasable programmable ROMs
13 serial ports, the 14 serial medias interface that has nothing to do
15 simplify gigabit Media Independent Interface/simplification ten bit interface 16 memory controller interfaces
17 external equipment buses, 18 accelerating circuits, 19 power management modules
20 configuration management circuit, 21 flash memories, 22 quick passive parallel interfaces
Embodiment
The invention will be further described below in conjunction with the drawings and specific embodiments.
As shown in Figure 1, be the structure chart with intelligent ethernet card of function of hardware acceleration of the present invention.The intelligent ethernet card with function of hardware acceleration of present embodiment comprises: embedded microprocessor 1, Peripheral Component Interconnect expansion (PCI-X) interface 2,100 m ethernet transceiver 3, gigabit ethernet transceiver 4, copper cable interface 5, fiber interface module 6, memory module 7, flash memory 8, hardware accelerator 9, network interface card administration module 10, Clock management circuit 11, electrically erasable programmable ROM (E2PROM) 12, serial ports 13, the serial media interface (SMII) 14 that has nothing to do, simplify gigabit Media Independent Interface/simplification ten bit interface (RGMII/RTBI) 15, memory controller interface 16, external equipment bus 17.
Wherein, described embedded microprocessor 1 is used for deal with data, realize the IP bag content analysis, unpack, operation such as encapsulation.In the present embodiment, embedded microprocessor 1 is selected IBM PowerPC440GX processor for use.Fig. 2 is the logic diagram of IBM PowerPC440GX processor.This processor is based on the PPC440 core design, maximum operating frequency 800MHz, the Instructions Cache of built-in 32KB and the metadata cache of 32KB and 256KBSRAM.Gigabit Ethernet medium access controller (MAC), the 100 m ethernet medium access controller (MAC) of two SMII interfaces 14, four dma controllers, internal integrated circuit (IIC) interface 12 and the serial ports 13 etc. of the integrated 64-Bit/133MHz PCI-X of processor interface 2,64-Bit/166MHz DDR sdram controller interface 16,32-Bit/83MHz external equipment bus control unit 17, two RGMII/RTBI interfaces 15.The total power consumption of this processor is less than 6W.
Described Peripheral Component Interconnect expansion (PCI-X) interface 2 is positioned on the embedded microprocessor 1, when in the intelligent ethernet card with function of hardware acceleration of the present invention is inserted in the 64-Bit/133MHZ PCI-X bus duct of main frame, using, link to each other with main frame by PCI-X interface 2.
Embedded microprocessor 1 has four Ethernet interfaces, and two SMII interfaces 14 wherein connect 100 m ethernet transceiver 3, drive two copper cable 100 m ethernet interfaces 5; Two RGMII/RTBI interfaces 15 connect gigabit ethernet transceiver 4, drive two fiber interface modules 6, and network interface card shows the operating state of each Ethernet interface by LED light.
Described 100 m ethernet transceiver 3 is selected ALTIMAAC104Z 100 m ethernet transceiver in the present embodiment for use, and Fig. 4 is the logic diagram of ALTIMAAC104Z 100 m ethernet transceiver.Built-in four transceiver passages are independently supported SMII interface 14 in this ethernet transceiver, drive 10/,100 half/full duplex self adaptation copper cable Ethernet interface 5, and this device needs 11 inputs of 125MHz reference clock.Total power consumption meets IEEE 802.3/802.3u standard less than 160mW.
Described gigabit ethernet transceiver 4 is selected Motorola MC92604 gigabit ethernet transceiver in the present embodiment for use, and Fig. 3 is a Motorola MC92604 dual gigabit ethernet transceiver logic block diagram.Built-in two serial (SerDes) passages that unstring independently in this ethernet transceiver, support RGMII/RTBI transmitting-receiving interface 15, its sending and receiving end bandwidth is 1.25Gb, drive fiber interface module 6, this device needs 11 inputs of 125MHz reference clock, total power consumption meets IEEE 802.3/802.3z standard less than 1W; Described fiber interface module 6 is selected Infineon V23818-K305-L57 multimode fiber transceiver in the present embodiment for use.
Described network interface card administration module 10 is used for bus address decoding and shows the running status of program on the network interface card, it is a slice MAX3000A programming device, in the present embodiment, network interface card administration module 10 is selected the ALTERAEPM3128ATC144 programming device for use, MAX3000A be ALTERA company based on the i.e. device of the property used of the device able to programme of E2PROM technology, from 32 to 512 macrocells of density range.MAX 3000A device is supported in the system programmable ability, and reshuffle at the scene of realizing like a cork, and each MAX 3000A macrocell can be configured to order or combinational logic operation independently.ALTERA company provides the developing instrument MAX+plus II of this chip.
Described Clock management circuit 11 for processor and 100,000,000 and the gigabit transceiver synchronous refernce clocks of 125MHz is provided.
Described electrically erasable programmable ROM (E2PROM) 12 is connected on internal integrated circuit (IIC) interface on the embedded microprocessor 1, is used for the user register configuration information of storage of processor.
Described serial ports 13 is drawn by processor, and it is used for the function of network card debugging.
Connect high-capacity flash memory 8, hardware accelerator 9 and network interface card administration module 10 on the external equipment bus 17 of described processor, flash memory 8 is used for operating system and the user program on the storage card, the configuration acceleration logic relevant with user program in the hardware accelerator 9.
But the liquid crystal indicator light that on intelligent ethernet card of the present invention, also has display working condition.
Described hardware accelerator 9 is used for sharing the load of processor when the receiving network data bag, improve treatment effeciency.It is an expansion card on processor peripheral bus 17 expansion slot, and as shown in Figure 5, this figure is the logic diagram of hardware accelerator 9.Hardware accelerator 9 comprises accelerating circuit 18, power management module 19, configuration management circuit 20, flash memory 21 and passive fast parallel (FPP) interface 22.
Wherein, accelerating circuit 18 is cores of hardware accelerator 9, in the present embodiment, accelerating circuit 18 adopts ALTERA Stratix II fpga chip EP2S60, configuration meets interface logic, metadata cache and the acceleration logic relevant with user program of external equipment bus protocol, the developing instrument compilation and synthesis that acceleration logic is provided by ALTERA company in the fpga chip.The interface logic of FPGA connects external equipment bus 17, and the I/O pattern is 32-Bit/83MHz.According to the difference of user program, accelerating circuit 18 is selected different acceleration logic, the acceleration logic that processor 1 is selected in the accelerating circuit 18 by external equipment bus 17 control configuration management circuit 20.
The Stratix II fpga chip of ALTERA company is based on 1.2V 90nm SRAM technology, the EP2S60 device that hardware accelerator adopts has 24176 adaptive logic modules (ALM), 2.4Mb ram in slice, the digital signal processing block of 16 height optimizations (DSP), 12 phase-locked loops (PLL).ALTERA company provides the developing instrument Quartus II of this chip, use this developing instrument some algorithm of user program mode with the large-scale parallel circuit can be realized, compilation and synthesis becomes corresponding FPGA configuration file, be stored in the flash chip 21 of hardware accelerator, select to dispose FPGA accelerating circuit 18 during user program work with the corresponding configuration file of its algorithm that need quicken.Under different configurations, the acceleration logic difference in the FPGA accelerating circuit 18, interface logic is identical with metadata cache.
Power management module 19 provides hardware accelerator 9 required 1.2V, 3.3V power supply.
Configuration management circuit 20 adopts the MAX3000A programming device, and this circuit connects external equipment bus 17, flash memory 21 and the accelerating circuit 18 of eight bit wides.The developing instrument MAX+plus II programmed configurations that the internal logic of this device and pin function can be provided by ALTERA company.Configuration management circuit 20 is read flash memory 21, by quick passive parallel (FPP) interface 22 configuration accelerating circuits 18.
The configuration file of the FPGA that flash memory 21 storage accelerating circuits 18 are adopted, external equipment bus 17 is by configuration management circuit 20 programming flash memories 21.
In the intelligent ethernet card with function of hardware acceleration of the present invention, the bandwidth that the 64-Bit/133MHZ PCI-X bus of the main frame that links to each other with Ethernet card is provided is 8.53Gbps, the bandwidth that the external equipment bus of processor provides is 2.67Gbps, four needed total bandwidths of Ethernet interface of network interface card are 2.2Gbps, and the data exchange capability between main frame and network interface card processor and network interface card processor and the hardware accelerator is enough to satisfy network demand.
Intelligent ethernet card groundwork process with function of hardware acceleration is as follows: after network interface card powers on, and the acceleration logic of hardware accelerator 9 configuration accelerating circuits 18, the embedded microprocessor 1 operation (SuSE) Linux OS on the network interface card.Processor 1 is at first opened up in local memory module 7 and is received and send the data buffer zone, by PCI-X interface 2 and host communication, inform that local internal memory receives and send the size and the first address of data buffer zone, obtain reception and transmission data buffer zone size and first address that main frame is opened up simultaneously in its memory.When the receiving network data bag, ethernet mac will receive that at first the IP packet transfers in the local internal memory 7 of processor by memory controller interface 16, processor 1 can be analyzed this IP bag then, for example can wait processings, this IP wrapped unpack etc. carrying out content analysis from the IP of some IP address bag or abandoning, these operations can be finished or data are transferred to hardware accelerator 9 processing by external equipment bus 17 by processor 1; Processor 1 repeats above-mentioned receiving course, when the bag of the IP in reception data buffer data arrive certain threshold value, processor 1 starts the dma operation of local internal memory to host memory, the dma controller of main frame wraps data DMA in the reception data buffer of main frame with these IP that receive, then by the interrupt notification main frame, this interruption of response of host also is further processed these IP packets.When sending network packet, the data that main frame at first will send place and send in the data buffer zone, then by interrupt notification network interface card processor 1, processor 1 this interruption of response also starts the dma operation of host memory to local memory module 7, after dma operation is finished, processor 1 becomes the IP bag with the data encapsulation in the transmission buffering area of local memory module 7, then by ethernet mac, this IP bag is sent from network.