WO2014086219A1 - 一种基于外设部件互联总线的内容查找芯片及系统 - Google Patents

一种基于外设部件互联总线的内容查找芯片及系统 Download PDF

Info

Publication number
WO2014086219A1
WO2014086219A1 PCT/CN2013/086543 CN2013086543W WO2014086219A1 WO 2014086219 A1 WO2014086219 A1 WO 2014086219A1 CN 2013086543 W CN2013086543 W CN 2013086543W WO 2014086219 A1 WO2014086219 A1 WO 2014086219A1
Authority
WO
WIPO (PCT)
Prior art keywords
bus
peripheral component
protocol conversion
content
request
Prior art date
Application number
PCT/CN2013/086543
Other languages
English (en)
French (fr)
Inventor
张学锋
安文杰
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2014086219A1 publication Critical patent/WO2014086219A1/zh
Priority to US14/708,791 priority Critical patent/US9342629B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]
    • 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/38Universal adapter
    • G06F2213/3852Converter between protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • a content search chip and system based on peripheral component interconnect bus The application is submitted to the Chinese Patent Office on December 6, 2012, and the application number is 201210519718. 2. The invention name is "a content based on peripheral component interconnect bus. The priority of the Chinese Patent Application for Locating Chips and Systems, the entire contents of which are incorporated herein by reference. TECHNICAL FIELD The present invention relates to the field of communications and information technology, and more particularly to a content finding chip and system based on a peripheral component interconnect bus.
  • BACKGROUND In the field of communications, hardware lookup tables are completed by a content storage module, wherein the content storage module can be a ternary content addressable memory (TCAM) chip or a content addressable memory (CAM).
  • TCAM ternary content addressable memory
  • CAM content addressable memory
  • the chip is implemented, and the newer TCAM chip or CAM chip uses a communication interface, such as an Interlaken Look Aside (Interlaken-LA) interface, or a dedicated CAM interface to send and receive serial data packets.
  • a communication interface such as an Interlaken Look Aside (Interlaken-LA) interface, or a dedicated CAM interface to send and receive serial data packets.
  • the operation request written to the TCAM chip or the CAM chip, the data to be written, the key value, and the operation response data generated by the TCAM chip or the CAM chip are packaged into a serial data packet, and then input at the Interlaken-LA interface or the CAM interface or Output.
  • older TCAM or CAM chips use a specific parallel bus.
  • PCI Peripheral Component Interconnect
  • PCIe Peripheral Component Interconnect Express
  • FIG. 1 An implementation method in the prior art is shown in FIG. 1.
  • An FPGA (Field-Programmable Gate Array) chip 102 is disposed between the X86 series processor 101 and the content storage module 103, and the FPGA chip 102 is connected to the X86 series processor 101 through the peripheral component interconnection bus 104, and is connected to the content storage module 103 through the serial bus 105.
  • the X86 series processor 101 and the FPGA chip 102 communicate with each other using the peripheral component interconnection bus 104.
  • the serial communication is performed between the FPGA chip and the TCAM or CAM chip.
  • the FPGA chip 102 converts the physical layer data transmitted in the peripheral component interconnect bus 104 into a serial data packet transmitted on the serial bus 105, or a serial transmission on the serial bus 105.
  • the data packet is converted into physical layer data transmitted in the peripheral component interconnect bus 104.
  • the technical problem to be solved by the present invention is to provide a content search chip and system embodiment based on a peripheral component interconnect bus, which can effectively reduce data processing time and reduce power consumption and cost.
  • the first aspect provides a content search chip, including a first peripheral component interconnection interface module, a protocol conversion module, and a content storage module, and the protocol conversion module is connected to the peripheral component interconnection interface module through a parallel bus, and the content storage module and the protocol conversion module Connected by an instruction bus and a data bus, wherein: a first peripheral component interconnection interface module is configured to acquire a first processing layer data packet from an external device through a peripheral component interconnection bus; and a protocol conversion module is configured to a peripheral component interconnection interface module acquires a first processing layer data packet, parses and converts the first processing layer data packet into an operation request and data that can be recognized by the content storage module; and a content storage module, configured to store the content, and according to The operation requests the operation and returns the operation response data; the instruction bus is used to transmit the operation request; and the data bus is used to transmit the data.
  • the data bus includes: a key value bus, configured to transmit a key value of the content to be searched when the operation request is a seek operation request; the search result returns to the bus And used to transmit the search result returned by the content storage module after searching according to the search operation request, and the search result includes a storage address of the content to be searched.
  • the content storage module is further configured to send the operation response data to the protocol conversion module by using a search result return bus; the protocol conversion module is further configured to respond to the operation
  • the data is encapsulated into a second processing layer data packet and sent to the peripheral component interconnection interface module through the parallel bus.
  • the first peripheral component interconnection interface module converts the second processing layer data packet into the second processing layer data and sends the data to the peripheral component. Interconnect bus.
  • the protocol conversion module generates a corresponding operation request according to the Fmt field and the Type field in the header of the first processing layer data packet.
  • the operation request includes a content lookup request, an entry read request, an entry write request, a register read request, or an entry deletion request.
  • the protocol conversion module when detecting that the Fmt field in the header of the first processing layer data packet is 00, and the Type field is 00010, Generating a content search request; the protocol conversion module generates an entry read request when the Fmt field in the header of the first processing layer data packet is 00 or 01 and the Type field is 00000; the protocol conversion module detects the first processing When the Fmt field in the header of the layer packet is 10 or 11 and the Type field is 00001, an entry entry request is generated; the protocol conversion module detects that the Fmt field in the header of the first processing layer packet is 00 and the Type field.
  • a register read request is generated; the protocol conversion module generates a register write request when detecting that the Fmt field in the header of the first processing packet is 10 and the Type field is 00100; the protocol conversion module detects the first processing When the Fmt field in the header of the layer packet is 10 and the Type field is 00101, an entry deletion request is generated.
  • the second aspect provides a content search system, where the content search system includes the implementation method of the first aspect, the content search chip according to any one of the first to fifth possible implementation manners of the first aspect, and the content search system
  • the method further includes: a processor chip, the processor chip is provided with a second peripheral component interconnection interface module, and the second peripheral component interconnection interface module is connected to the first peripheral component interconnection interface module through the peripheral component interconnection bus.
  • the processor chip is an X86 series processor chip or an ARM series processor chip.
  • a content search chip and system based on a peripheral component interconnection bus of the embodiment of the present invention uses a peripheral component interconnection interface module, a protocol conversion module, and a content storage module, and uses a peripheral component interconnection interface.
  • the module converts the physical layer data transmitted by the external peripheral component interconnection bus and the internal processing layer data packet, and converts the processing layer data packet into the content storage module operation request, the data to be written, and the key value by using the protocol conversion module.
  • 1 is a schematic diagram of a system structure of a content search system using a FPGA chip for protocol conversion in the prior art
  • 2 is a schematic structural diagram of a module for a content search chip based on a peripheral component interconnect bus according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a header data format of a data conversion layer data packet in a peripheral component interconnection system.
  • FIG. 4 is a schematic structural diagram of a system for searching a content based on a peripheral component interconnect bus according to an embodiment of the present invention.
  • the technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention.
  • the embodiments are a part of the embodiments of the invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
  • FIG. 2 is a schematic diagram of a module structure of a content search chip based on a peripheral component interconnect bus according to an embodiment of the present invention. As shown in FIG.
  • the first embodiment of the present invention provides a peripheral based device.
  • the content search chip of the component interconnection bus includes a peripheral component interconnection interface module 201, a protocol conversion module 202, and a content storage module 203.
  • the protocol conversion module 201 is connected to the first peripheral component interconnection interface module 201 through the parallel bus 205, and the content storage module 203 and the protocol conversion module 202 are connected through the instruction bus 206 and the data bus 207, wherein: the first peripheral component interconnection interface module 201 acquires a first processing layer data packet from an external device (not shown in FIG. 2, which will be described later) through the peripheral component interconnection bus 204; the protocol conversion module 202 interconnects the interface module 201 from the first peripheral component through the parallel bus 205.
  • the content search chip 20 is provided with a first peripheral component interconnect interface module 201, a protocol conversion module 202, and a content storage module 203.
  • the first peripheral component interconnect interface module 201 obtains the first processing layer data packet from the peripheral component interconnect bus 204.
  • the first processing layer data packet is converted into the operation request and data that can be recognized by the content storage module 203 by using the protocol conversion module 202, and sent to the content storage module 203, where the content is stored.
  • the operation requests and data that the module can recognize include operation requests and data based on the binary form, and the processing of the protocol conversion module 202 avoids the mutual interference of peripheral components in the prior art through the FPGA chip pair.
  • the physical layer data content transmitted in the connected bus and the serial data packet dedicated to the memory chip are converted into a data format, thereby effectively reducing processing time, reducing power consumption, and cost.
  • the data bus 207 can include a key value bus 2071 and a lookup result return bus 2072.
  • the key value bus 2071 is used to transfer the key value of the content to be searched when the operation request is a seek operation request; the search result returns to the bus. 2072.
  • the return operation response data may include, in addition to the key value bus 2071 and the lookup result return bus 2072, other data buses for transmitting data to the write.
  • the content storage module 203 is further configured to send the operation response data to the protocol conversion module 202 through the search result return bus 2072; the protocol conversion module 202 is further configured to The operation response data is encapsulated into a second processing layer data packet and sent to the first peripheral component interconnection interface module 201 through the parallel bus, and the first peripheral component interconnection interface module 201 converts the second processing layer data packet into the second processing layer data. And sent to the peripheral component interconnect bus 204. Therefore, the content search chip 20 of the present invention can further transmit the operation response data generated by the content storage module 203 to the peripheral component interconnection bus 204 in the above manner.
  • the content storage module 203 includes a CAM memory and a TCAM memory.
  • the CAM memory and the TCAM memory are generally provided with an instruction bus interface and a data bus interface. Therefore, the protocol conversion module 202 can interface with the instruction bus through the instruction bus 206.
  • the circuit is connected to the data bus interface through the data bus to implement the function of the instruction bus 206 to transfer the operation command to the CAM memory or the TCAM memory, the data bus 207 and the CAM memory or the TCAM memory for data transmission.
  • the peripheral component interconnection system defines a three-layer structure, which is a physical layer, a data link layer, and a processing layer.
  • the first peripheral component interconnection interface module 201 includes a processing layer control module.
  • the physical layer control module acquires the first physical layer data from the peripheral component interconnect bus 204, the data link layer control module converts the first physical layer data into the first data link layer data, and the processing layer control module sets the first data link The layer data is encapsulated into a first processing layer packet. And, the processing layer control module acquires the second processing layer data packet through the parallel bus 205, the data link layer control module converts the second processing layer data packet into the second data link layer data, and the processing layer control module uses the second physical layer layer The data is converted to the second physical layer data and sent to the peripheral component interconnect bus 204.
  • processing layer packets ie, TLP packets, Translation Layer Packet
  • TLP Header processing layer data packet header
  • Data Pay load load data
  • TLP Digest error detection code
  • the Fmt field and the Type field of the packet header define the operation types of the TLP data packet (ie, the first data conversion layer data packet) as shown in the following table:
  • the protocol conversion module 202 converts the operation type indicated by the TLP data packet into an operation request to the content storage module 203. Specifically, the protocol conversion module 202 determines the Fmt field and the Type in the header of the first processing layer data packet. The field generates an operation request that can be recognized by the content storage module 203, and the operation request can include an entry read request, an entry write request, a register read request, an entry delete request, or a content lookup request. specific:
  • a register read request is generated, where the register read request corresponds to the TLP data packet (ie, a processing layer packet) indicates a register read type 0; when the protocol conversion module 202 detects that the Fmt field in the header of the first processing layer packet is 10 and the Type field is 00100, a register write request is generated, wherein The register write request corresponds to a register write type 0 represented by the TLP data packet (ie, the first processing layer data packet); when the protocol conversion module 202 detects that the Fmt field in the header of the first processing layer data packet is 10 And when the Type field is 00101, an entry deletion request is generated, where the entry deletion request corresponds to a register write type 1 represented by the TLP packet (ie, the first processing layer packet); when the protocol conversion module 202 detects When the Fmt field in the header of the first processing layer data packet is 00 and the Type field is 00100, a register read request is generated, where the register read request corresponds to the TLP data packet (ie, the
  • the protocol conversion module 202 can acquire the data to be written and the key value required for performing the corresponding operation in the data payload portion of the processing layer. Therefore, the protocol conversion module 202 can convert the operation type represented by the first processing layer packet into an operation request for the content storage module 203 according to the conversion manner described above.
  • the protocol conversion module 202 can be implemented by using various logic circuit modules (such as NAND gates) or an embedded processor.
  • the content storage module 203 is connected to the protocol conversion module 202 via the instruction bus 206 and the data bus 207, acquires an operation request through the instruction bus 206, acquires data through the data bus 207, and performs corresponding operations on the content storage module 203 according to the operation request and the data. Generate operational response data.
  • the data bus 207 includes a key value bus 2071, a search result return bus 2072, data to be written, and a key value is input to the content storage module 203 through the key value bus 2071, and the content storage module 203 is based on the operation request, the data to be written, and Key value for table entry read operation, table An item write operation, a register read operation, an entry deletion operation or a content search operation, and the operation response data generated by the above operation is input to the protocol conversion module 202 through the search result return bus 2072, and the protocol conversion module 202 operates the operation response data.
  • the processing layer control module of the first peripheral component interconnection interface module 201 Converting to the second processing layer data packet and inputting to the first peripheral component interconnection interface module 201, the processing layer control module of the first peripheral component interconnection interface module 201 converting the second processing layer data packet into the second data link layer Data, the data link layer control module converts the second data link layer data into the second physical layer data and outputs to the peripheral component interconnect bus 204.
  • the currently available content storage modules retain the above-mentioned instruction bus interface, key-value bus interface, search result return bus interface or other functions capable of transmitting data, operation instructions, key values, and return results. Parallel interface.
  • the interface of the content storage module 203 is connected to the protocol conversion module 202 through the instruction bus 206, the key value bus 2071, the search result return bus 2072, and can be directly obtained by the protocol conversion module 202 to read according to the table of the processing layer data packet conversion.
  • the item write request writes the entry to the content, reads the register according to the register read request, deletes the content according to the entry deletion request, or searches for the content according to the content search request, wherein the above operation is required
  • the write data or key value can be obtained from the key value bus 2071.
  • the content storage module 203 is directly controlled by the protocol conversion module 202, and the protocol conversion module 202 can parse out the operation request and the data to be written or the key required to perform the corresponding operation from the processing layer data packet. Therefore, the content search chip 20 of the present invention does not need to convert the processing layer data packet into a serial data packet, and parses the table entry read request and the table entry from the serial data packet. Incoming requests, register read requests, table entry delete requests, content lookup requests, data to be written or key values. Moreover, it is not necessary to use a power-consuming FPGA chip, which can effectively reduce processing time and reduce power consumption and cost.
  • the content search chip 20 of the embodiment of the present invention mainly implements the operation of the content storage module 203 by hardware, and the processing speed thereof is faster than the software processing method.
  • the operation request is a table entry read request
  • the content storage module 203 obtains the entry read request from the instruction bus 206, performs an entry read operation internally according to the entry read request, and generates an entry including the entry.
  • the resulting response data is taken, and the operation response data including the entry result of the entry is sent to the protocol conversion module 202 using the lookup result return bus 209.
  • the content storage module 203 can further acquire data and key values required in the table entry reading operation in the key value bus 2071, wherein the data and the key value are stored in the load data of the processing layer data packet (Data Payload).
  • the content storage module 203 obtains an entry write request, a register read request, an entry deletion request, or a content lookup request from the instruction bus 206, the corresponding operation is performed internally according to the corresponding request, and the corresponding operation result is generated.
  • the response data, and the search result return bus 209 is used to send the operation response data including the corresponding operation result to the protocol conversion module 202.
  • the content storage module 203 can further acquire data and key values required for the operation in the key value bus 2071, wherein the data and the key value are stored in the data payload (Data Payload) portion of the processing layer data packet.
  • the above operation response data includes a table entry read result, a table entry write result, a register read result, a register write result, a table entry deletion result, and a content search result.
  • the embodiment of the present invention further discloses a content search system based on a peripheral component interconnection bus.
  • FIG. 4 is a schematic diagram of a system structure of a content search system based on a peripheral component interconnection bus according to an embodiment of the present invention.
  • the content finding system based on the peripheral component interconnection bus of the present invention comprises: a processor chip 40 and a content finding chip 20 based on the peripheral component interconnection bus of FIG. 2.
  • the processor chip 40 is provided with a second peripheral component interconnection interface module 401.
  • the second peripheral component interconnect interface module 401 is coupled to the first peripheral component interconnect interface module 201 via the peripheral component interconnect bus 204.
  • the processor chip can be, for example, an X86 series processor chip or an ARM series processor chip.
  • the second peripheral component interconnect interface module 401 sends the first physical layer data through the peripheral component interconnect bus 204, and the first peripheral component interconnect interface module 201 obtains the first physical layer data from the peripheral component interconnect bus 204 to be converted into the first physical layer data.
  • a transport layer data The first peripheral component interconnect interface module 201 converts the second transport layer data into the second physical layer data and sends the data to the peripheral component interconnect bus 204, and the second peripheral component interconnect interface module 401 obtains the first through the peripheral component interconnect bus 204.
  • a content finding chip and system based on a peripheral component interconnect bus of the embodiment of the present invention uses a peripheral component interconnection interface module, a protocol conversion module, and a content storage module, and uses a peripheral component interconnection interface module to externally.
  • the physical layer data transmitted by the component interconnection bus and the internal processing layer data packet are converted, and the processing layer data packet is converted into a content storage module operation request, a data to be written, and a key value by using a protocol conversion module, and the protocol conversion module is utilized.
  • the response data generated by the content storage module is encapsulated into a processing layer data packet, thereby avoiding the physical layer data in the peripheral component interconnection bus and the serial data packet dedicated to the content storage module. Inter-conversion, and the need to use a power-consuming FPGA chip, can effectively reduce processing time and reduce power consumption and cost.
  • a person skilled in the art can clearly understand that, for the convenience and brevity of the description, the specific working process of the device and the module described above may be referred to the corresponding process description in the foregoing method embodiment, and details are not described herein again.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the modules is only a logical function division. In actual implementation, there may be another division manner, for example, multiple modules or components may be combined or Can be integrated into another device, or some features can be ignored, or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some communication interface, device or module, and may be electrical, mechanical or otherwise.
  • the modules described as separate components may or may not be physically separated.
  • the components displayed as modules may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional module in each embodiment of the present invention may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
  • the above embodiments are merely illustrative of the technical solutions of the present invention, and are not intended to be limiting; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art The technical solutions described in the foregoing embodiments may be modified, or some or all of the technical features may be equivalently replaced; and the modifications or substitutions do not deviate from the technical solutions of the embodiments of the present invention. range.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)

Abstract

本发明公开一种基于外设部件互联总线的内容査找芯片及系统,该内容査找芯片包括第一外设部件互联接口模块、协议转换模块及内容存储模块,协议转换模块通过并行总线与外设部件互联接口模块连接,内容存储模块与协议转换模块通过指令总线、数据总线连接,第一外设部件互联接口模块通过外设部件互联总线获取第一处理层数据包;协议转换模块通过并行总线获取第一处理层数据包,对第一处理层数据包进行解析并转换为能够被内容存储模块识别的操作请求和数据;内容存储模块存储内容,并根据操作请求进行操作并返回操作响应数据;指令总线传输操作请求;数据总线传输数据。通过上述技术方案,本发明可有效缩减处理时间,并且降低功耗及成本。

Description

一种基于外设部件互联总线的内容查找芯片及系统 本申请要求于 2012年 12月 6日提交中国专利局、 申请号为 201210519718. 2、发明 名称为 "一种基于外设部件互联总线的内容查找芯片及系统"的中国专利申请的优先权, 其全部内容通过弓 I用结合在本申请中。 技术领域 本发明涉及通信以及信息技术领域,特别是涉及一种基于外设部件互联总线的内容 查找芯片及系统。 背景技术 在通讯领域中, 硬件查表都是通过内容存储模块完成, 其中内容存储模块可由三态 内容寻址存储器 (ternary content addressable memory, TCAM)芯片或内容寻址存储 器 (content addressable memory, CAM)芯片实现, 而较新的 TCAM芯片或者 CAM芯片 都是采用通信接口,例如高速串行接口协议(Interlaken Look Aside, Interlaken-LA) ) 接口, 或者专用的 CAM接口来收发串行数据包, 因此, 写入至 TCAM芯片或者 CAM芯片 的操作请求、 待写入数据、 键值以及由 TCAM芯片或者 CAM芯片产生的操作响应数据需 封装成串行数据包, 然后在 Interlaken-LA接口或者 CAM接口输入或输出。 并且, 较 老的 TCAM或 CAM芯片则使用特定的并行总线。
现有技术中的很多处理器往往只设置有 PCI (Peripheral Component Interconnect , 夕卜设部件互耳关) 或高速夕卜设部件互耳关 (Peripheral Component Interconnect Express , PCIe )接口, 而没有设置上述的 Interlaken-LA或特定的 CAM接口 (如现阶段大量应用 的 X86系列处理器以及 ARM系列处理器)。
但有时使用 X86系列处理器的系统 (比如应用安全系统) 需要采用 TCAM 或 CAM芯 片来提高查表性能。 现有技术中的一种实现方法如图 1 所示, 将一片 FPGA (Field-Programmable Gate Array, 现场可编程门阵列) 芯片 102设置于 X86系列处 理器 101以及内容存储模块 103之间, FPGA芯片 102通过外设部件互联总线 104与 X86 系列处理器 101连接,通过串行总线 105与内容存储模块 103相连接, X86系列处理器 101与 FPGA芯片 102之间利用外设部件互联总线 104进行通信, FPGA芯片与 TCAM 或 CAM芯片之间利用串行总线进行通信。 FPGA芯片 102将外设部件互联总线 104中传输的 物理层数据转换成在串行总线 105传输的串行数据包, 或将在串行总线 105传输的串行 数据包转换成外设部件互联总线 104中传输的物理层数据。
在上述的现有技术方案中, 由于需要设置 FPGA芯片, 并对其进行逻辑开发工作, 应用门槛较高, 另外 FPGA芯片的功耗往往很大, 因此采用 FPGA芯片会增加功耗并且提 高成本, 另外, 由于 FPGA芯片需将外设部件互联总线中传输的物理层数据转换为串行 数据包, 该数据格式的转换也会导致数据处理需时较长。 发明内容
本发明主要解决的技术问题是提供一种基于外设部件互联总线的内容查找芯片及 系统实施例, 能有效缩减数据处理时间, 并且可降低功耗及成本。
第一方面提供一种内容查找芯片, 包括第一外设部件互联接口模块、 协议转换模块 以及内容存储模块, 协议转换模块通过并行总线与外设部件互联接口模块连接, 内容存 储模块与协议转换模块通过指令总线、 数据总线进行连接, 其中: 第一外设部件互联接 口模块,用于通过外设部件互联总线从外部设备获取第一处理层数据包;协议转换模块, 用于通过并行总线从第一外设部件互联接口模块获取第一处理层数据包,对第一处理层 数据包进行解析并转换为能够被内容存储模块识别的操作请求和数据; 内容存储模块, 用于存储内容, 并根据操作请求进行操作并返回操作响应数据; 指令总线, 用于传输操 作请求; 数据总线, 用于传输数据。
结合第一方面的实施方式,在第一种可能的实施方式中,数据总线包括:键值总线, 用于当操作请求为查找操作请求时, 传输待查找的内容的键值; 查找结果返回总线, 用 于传输内容存储模块根据查找操作请求进行查找后返回的查找结果, 查找结果包括待查 找内容的存储地址。
结合第一方面的实施方式, 在第二种可能的实施方式中: 内容存储模块, 还用于通 过查找结果返回总线将操作响应数据发送至协议转换模块; 协议转换模块, 还用于将操 作响应数据封装为第二处理层数据包并通过并行总线发送至外设部件互联接口模块,第 一外设部件互联接口模块将第二处理层数据包转换为第二处理层数据并发送至外设部 件互联总线。
结合第一方面的实施方式, 在第三种可能的实施方式中, 协议转换模块根据第一处 理层数据包的包头中的 Fmt字段以及 Type字段产生对应的操作请求。
结合第一方面的第三种可能的实施方式, 在第四种可能的实施方式中, 操作请求包 括内容查找请求、 表项读取请求、 表项写入请求、 寄存器读取请求或表项删除请求。 结合第一方面的第四种可能的实施方式, 在第五种可能的实施方式中, 协议转换模 块在检测到第一处理层数据包的包头中的 Fmt字段为 00以及 Type字段为 00010时,产生内 容查找请求; 协议转换模块在检测到第一处理层数据包的包头中的 Fmt字段为 00或 01以 及 Type字段为 00000时, 产生表项读取请求; 协议转换模块在检测到第一处理层数据包 的包头中的 Fmt字段为 10或 11以及 Type字段为 00001时, 产生表项写入请求; 协议转换模 块在检测到第一处理层数据包的包头中的 Fmt字段为 00以及 Type字段为 00100时,产生寄 存器读取请求; 协议转换模块在检测到第一处理包的包头中的 Fmt字段为 10以及 Type字 段为 00100时, 产生寄存器写入请求; 协议转换模块在检测到第一处理层数据包的包头 中的 Fmt字段为 10以及 Type字段为 00101时, 产生表项删除请求。
第二方面提供一种内容查找系统, 内容查找系统包括第一方面的实施方式、 第一方 面的第一至第五种可能的实施方式中的任一者所述的内容查找芯片, 内容查找系统进一 步包括: 处理器芯片, 处理器芯片设置有第二外设部件互联接口模块, 第二外设部件互 联接口模块通过外设部件互联总线与第一外设部件互联接口模块连接。
结合第二方面的实施方式, 在第一种可能的实施方式中, 处理器芯片为 X86系列处 理器芯片或 ARM系列处理器芯片。
区别于现有技术的情况,本发明实施例的一种基于外设部件互联总线的内容查找芯 片及系统通过设置外设部件互联接口模块、 协议转换模块以及内容存储模块, 利用外设 部件互联接口模块对在外部外设部件互联总线传输的物理层数据以及内部的处理层数 据包进行转换, 利用协议转换模块将处理层数据包转换为适用于内容存储模块操作请 求、 待写入数据以及键值, 并利用协议转换模块将内容存储模块产生的响应数据封装为 处理层数据包, 从而避免了对外设部件互联总线中的物理层数据以及内容存储模块专用 的串行数据包进行相互转换, 并且无需采用功耗很大的 FPGA芯片, 因此可有效缩减处理 时间, 并且降低功耗及成本。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现有 技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下面描述中的附图是本发 明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还 可以根据这些附图获得其他的附图。
图 1是现有技术中采用 FPGA芯片进行协议转换的内容查找系统的系统结构示意图; 图 2是本发明实施例提供的一种基于外设部件互联总线的内容查找芯片的模块结构 示意图;
图 3是外设部件互联体系中的数据转换层数据包的包头数据格式示意图。
图 4是本发明实施例提供的一种基于外设部件互联总线的内容查找系统的系统结构 示意图。 具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发明实施例中 的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例 是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技 术人员在没有作出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范 围。 请参见图 2, 图 2是本发明实施例提供的一种基于外设部件互联总线的内容查找芯片 的模块结构示意图, 如图 2所示, 本发明第一实施例提供了一种基于外设部件互联总线 的内容查找芯片, 该内容查找芯片包括外设部件互联接口模块 201、 协议转换模块 202以 及内容存储模块 203。 协议转换模块 201通过并行总线 205与第一外设部件互联接口模块 201连接, 内容存储模块 203与协议转换模块 202通过指令总线 206、 数据总线 207进行连 接, 其中: 第一外设部件互联接口模块 201通过外设部件互联总线 204从外部设备 (图 2 未绘示, 于下文中会介绍)获取第一处理层数据包; 协议转换模块 202通过并行总线 205 从第一外设部件互联接口模块 201获取第一处理层数据包, 对第一处理层数据包进行解 析并转换为能够被内容存储模块 203识别的操作请求和数据; 内容存储模块 203用于存储 内容, 并根据操作请求进行操作并返回操作响应数据; 指令总线 206用于传输操作请求; 数据总线 207, 用于传输数据。 内容查找芯片 20设置有第一外设部件互联接口模块 201、协议转换模块 202以及内容 存储模块 203, 利用第一外设部件互联接口模块 201从外设部件互联总线 204获取第一处 理层数据包并通过并行总线 205传输至协议转换模块 202, 利用协议转换模块 202将第一 处理层数据包转换为能够被内容存储模块 203识别的操作请求与数据并发送至内容存储 模块 203, 其中, 内容存储模块可以识别的操作请求和数据包括基于二进制形式的操作 请求和数据, 协议转换模块 202的处理避免了现有技术中通过 FPGA芯片对在外设部件互 联总线中传输的物理层数据内容与存储器芯片所专用的串行数据包进行数据格式转换, 因此可有效缩减处理时间、 降低功耗及成本。 在一种情形下, 数据总线 207可以包括键值总线 2071与查找结果返回总线 2072, 键 值总线 2071用于当操作请求为查找操作请求时, 传输待查找的内容的键值; 查找结果返 回总线 2072, 用于传输内容存储模块根据查找操作请求进行查找后返回的查找结果, 查 找结果包括待查找内容的存储地址, 另外, 查找结果返回总线 2072也可传输内容存储模 块 203根据操作请求进行操作并的返回操作响应数据。 当然可以理解的是, 数据总线 207 除了可以包括键值总线 2071与查找结果返回总线 2072之外,还可以包括用于传输向所述 写入数据的其他数据总线。 在一种情形下, 当从内容查找芯片向外部设备输出数据时, 内容存储模块 203还用 于通过查找结果返回总线 2072将操作响应数据发送至协议转换模块 202 ; 协议转换模块 202还用于将操作响应数据封装为第二处理层数据包并通过并行总线发送至第一外设部 件互联接口模块 201,第一外设部件互联接口模块 201将第二处理层数据包转换为第二处 理层数据并发送至外设部件互联总线 204。 因此, 本发明的内容查找芯片 20更可通过上述方式将内容存储模块 203产生的操作 响应数据传输至外设部件互联总线 204。 具体而言, 内容存储模块 203包括 CAM存储器以及 TCAM存储器, 其中, CAM存储器以 及 TCAM存储器一般设置有指令总线接口、 数据总线接口, 因此, 协议转换模块 202可通 过指令总线 206与上述指令总线接口进行电路连接、 通过数据总线与上述数据总线接口 连接, 以实现指令总线 206传输操作指令至 CAM存储器或 TCAM存储器、 数据总线 207与 CAM 存储器或 TCAM存储器之间进行数据传输的功能。 通常外设部件互联体系定义了 3层结构, 分别是物理层、 数据链路层和处理层, 具 体而言, 在本发明实施例中, 第一外设部件互联接口模块 201包括处理层控制模块、 数 据链路层控制模块以及物理层控制模块。 物理层控制模块从外设部件互联总线 204获取 第一物理层数据, 数据链路层控制模块将第一物理层数据转换为第一数据链路层数据, 处理层控制模块将第一数据链路层数据封装为第一处理层数据包。 并且, 处理层控制模块通过并行总线 205获取第二处理层数据包, 数据链路层控制 模块将第二处理层数据包转换为第二数据链路层数据, 处理层控制模块将第二物理层数 据转换为第二物理层数据并发送至外设部件互联总线 204。 在外设部件互联体系中,处理层数据包(即 TLP数据包, Translation Layer Packet ) 定义为处理层上传输的基本数据包。 它主要包括三部分: 处理层数据包包头 (TLP Header) 、 负载数据 (Data Pay load) 及侦错码 (TLP Digest ) , 其中, 处理层数据包 包头的格式如图 3所示。 如图 3所示,在外设部件互联体系中,包头的 Fmt字段和 Type字段定义 TLP数据包(即 第一数据转换层数据包) 的操作类型如下表所示:
Figure imgf000008_0001
在本发明中,协议转换模块 202将 TLP数据包表示的操作类型转换为对内容存储模块 203的操作请求, 具体地, 协议转换模块 202根据第一处理层数据包的包头中的 Fmt字段 以及 Type字段产生能够被内容存储模块 203识别的操作请求, 该操作请求可以包括表项 读取请求、 表项写入请求、 寄存器读取请求、 表项删除请求或内容査找请求。 具体的:
6
更正页 (细则第 91条) 当协议转换模块 202在检测到第一处理层数据包的包头中的 Fmt字段为 00或 01以及 Type字段为 00000时, 产生表项读取请求, 其中, 该表项读取请求对应于 TLP数据包 (即 第一处理层数据包) 表示的读取存储器请求; 当协议转换模块 202在检测到第一处理层数据包的包头中的 Fmt字段为 10或 11以及 Type字段为 00001时, 产生表项写入请求, 其中, 该表项写入请求对应于 TLP数据包 (即 第一处理层数据包) 表示的存储器写入请求;
当协议转换模块 202在检测到第一处理层数据包的包头中的 Fmt字段为 00以及 Type 字段为 00100时, 产生寄存器读取请求, 其中, 该寄存器读取请求对应于 TLP数据包 (即 第一处理层数据包) 表示的寄存器读取类型 0; 当协议转换模块 202在检测到第一处理层数据包的包头中的 Fmt字段为 10以及 Type 字段为 00100时, 产生寄存器写入请求, 其中, 该寄存器写入请求对应于 TLP数据包 (即 第一处理层数据包) 表示的寄存器写入类型 0; 当协议转换模块 202在检测到第一处理层数据包的包头中的 Fmt字段为 10以及 Type 字段为 00101时, 产生表项删除请求, 其中, 该表项删除请求对应于 TLP数据包 (即第一 处理层数据包) 表示的寄存器写入类型 1 ; 当协议转换模块 202在检测到第一处理层数据包的包头中的 Fmt字段为 00以及 Type 字段为 00010时, 产生内容查找请求, 其中, 该内容查找请求对应于 TLP数据包 (即第一 处理层数据包) 表示的 I/O读取请求。 另外, 协议转换模块 202可在处理层的负载数据 (Data Payload) 部分获取进行对 应操作时所需的待写入数据以及键值。 因此, 协议转换模块 202可根据以上所介绍的转换方式将第一处理层数据包表示的 操作类型转换为针对内容存储模块 203的操作请求。 其中, 协议转换模块 202可利用各种 逻辑电路模块 (如与非门等) 或者内嵌处理器来实现。 并且, 内容存储模块 203通过指令总线 206、 数据总线 207与协议转换模块 202连接, 通过指令总线 206获取操作请求、 通过数据总线 207获取数据, 根据操作请求以及数据对 内容存储模块 203进行对应操作并产生操作响应数据。 具体而言, 数据总线 207包括键值 总线 2071、 查找结果返回总线 2072, 待写入数据、 键值通过键值总线 2071输入内容存储 模块 203, 内容存储模块 203根据操作请求、 待写入数据以及键值进行表项读取操作、 表 项写入操作、 寄存器读取操作、 表项删除操作或内容查找操作, 并将上述操作所产生的 操作响应数据通过查找结果返回总线 2072输入至协议转换模块 202,协议转换模块 202将 操作响应数据转换为第二处理层数据包并输入至第一外设部件互联接口模块 201, 第一 外设部件互联接口模块 201的处理层控制模块将第二处理层数据包转换为第二数据链路 层数据,数据链路层控制模块将第二数据链路层数据转换为第二物理层数据并输出至外 设部件互联总线 204。 值得注意的是, 现有可获得的内容存储模块均保留有上述的指令总线接口、 键值总 线接口、 查找结果返回总线接口或其他能够实现传输数据、 操作指令、 键值以及返回结 果等功能的并行接口。 因此, 内容存储模块 203的上述接口通过指令总线 206、 键值总线 2071、 查找结果返回总线 2072与协议转换模块 202连接, 可直接获取到协议转换模块 202 根据处理层数据包转换的表项读取请求、 表项写入请求、 寄存器读取请求、 表项删除请 求、 内容查找请求、 待写入数据或键值, 从而可以根据表项读取请求对存储的内容进行 表项读取, 根据表项写入请求对内容进行表项写入, 根据寄存器读取请求读取寄存器, 根据表项删除请求对内容进行表项删除或者根据内容查找请求对内容进行查找, 其中, 以上操作所需的待写入数据或键值可从键值总线 2071获得。 本发明实施例中, 由于内容存储模块 203直接受控于协议转换模块 202, 且协议转换 模块 202可从处理层数据包中解析出操作请求以及进行对应操作时所需的待写入数据或 键值, 因此本发明的内容查找芯片 20相对于现有技术方案一而言, 无需将处理层数据包 转换为串行数据包, 再从串行数据包解析出表项读取请求、 表项写入请求、 寄存器读取 请求、 表项删除请求、 内容查找请求、 待写入数据或键值等数据。 并且, 无需采用功耗 很大的 FPGA芯片, 从而可有效缩减处理时间, 并且降低功耗及成本。 另外,本发明实施例的内容查找芯片 20主要由硬件实现对内容存储模块 203的操作, 其处理速度相对于软件处理方法而言更加快速。 在操作请求为表项读取请求时, 内容存储模块 203从指令总线 206获取到表项读取请 求后, 根据该表项读取请求在内部进行表项读取操作, 并产生包括表项读取结果的响应 数据, 并利用查找结果返回总线 209将包括表项读取结果的操作响应数据发送至协议转 换模块 202。 另外, 内容存储模块 203更可在键值总线 2071中获取到表项读取操作中所需 的数据及键值, 其中, 该数据及键值存储于处理层数据包的负载数据 (Data Payload) 部分。 同理, 内容存储模块 203从指令总线 206获取到表项写入请求、 寄存器读取请求、 表 项删除请求或内容查找请求后, 根据对应请求在内部进行对应的操作, 并产生包括对应 操作结果的响应数据, 并利用查找结果返回总线 209将包括对应操作结果的操作响应数 据发送至协议转换模块 202。 在必要时, 内容存储模块 203更可在键值总线 2071中获取到 操作中所需的数据及键值, 其中, 该数据及键值存储于处理层数据包的负载数据 (Data Payload) 部分。 上述的操作响应数据包括表项读取结果、 表项写入结果、 寄存器读取结果、 寄存器 写入结果、 表项删除结果、 内容查找结果。 本发明实施例进一步揭示一种基于外设部件互联总线的内容查找系统, 以下请参见 图 4, 图 4是对本发明实施例提供的基于外设部件互联总线的内容查找系统的系统结构示 意图。 如图 4所示, 本发明的基于外设部件互联总线的内容查找系统, 包括: 处理器芯片 40以及图 2所述的基于外设部件互联总线的内容查找芯片 20。 处理器芯片 40设置有第二外设部件互联接口模块 401。 第二外设部件互联接口模块 401通过外设部件互联总线 204与第一外设部件互联接口模块 201连接。 处理器芯片举例而言可为 X86系列处理器芯片或 ARM系列处理器芯片。 其中,第二外设部件互联接口模块 401通过外设部件互联总线 204发送第一物理层数 据,第一外设部件互联接口模块 201从外设部件互联总线 204获取第一物理层数据转换为 第一传输层数据。 第一外设部件互联接口模块 201将第二传输层数据转换为第二物理层 数据并发送至外设部件互联总线 204,第二外设部件互联接口模块 401通过外设部件互联 总线 204获取第二物理层数据并进行对应处理, 从而实现了处理器芯片 40与内容查找芯 片 30之间的通信。 因此,本发明实施例的一种基于外设部件互联总线的内容查找芯片及系统通过设置 外设部件互联接口模块、 协议转换模块以及内容存储模块, 利用外设部件互联接口模块 对在外部外设部件互联总线传输的物理层数据以及内部的处理层数据包进行转换,利用 协议转换模块将处理层数据包转换为适用于内容存储模块操作请求、待写入数据以及键 值, 并利用协议转换模块将内容存储模块产生的响应数据封装为处理层数据包, 从而避 免了对外设部件互联总线中的物理层数据以及内容存储模块专用的串行数据包进行相 互转换, 并且无需采用功耗很大的 FPGA芯片, 因此可有效缩减处理时间, 并且降低功耗 及成本。 所属领域的技术人员可以清楚地了解到, 为描述的方便和简洁, 上述描述的设备和 模块的具体工作过程, 可以参考前述方法实施例中的对应过程描述, 在此不再赘述。 在本申请所提供的几个实施例中, 应该理解到, 所揭露的设备和方法, 可以通过其 它的方式实现。 例如, 以上所描述的装置实施例仅仅是示意性的, 例如, 所述模块的划 分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个模块或组 件可以结合或者可以集成到另一个设备中, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置 或模块的间接耦合或通信连接, 可以是电性, 机械或其它的形式。 所述作为分离部件说明的模块可以是或者也可以不是物理上分开的, 作为模块显示 的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个 网络单元上。 可以根据实际的需要选择其中的部分或者全部, 模块来实现本实施例方案 的目的。 另外, 在本发明各个实施例中的各功能模块可以集成在一个处理模块中, 也可以是 各个模块单独物理存在, 也可以两个或两个以上模块集成在一个模块中。 最后应说明的是: 以上各实施例仅用以说明本发明的技术方案, 而非对其限制; 尽 管参照前述各实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解: 其 依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特 征进行等同替换; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施 例技术方案的范围。

Claims

权利要求
1. 一种内容查找芯片, 其特征在于, 包括第一外设部件互联接口模块、 协议转换 模块以及内容存储模块,所述协议转换模块通过并行总线与所述外设部件互联接口模块 连接,所述内容存储模块与所述协议转换模块通过指令总线、数据总线进行连接,其中: 所述第一外设部件互联接口模块,用于通过外设部件互联总线从外部设备获取第一 处理层数据包;
所述协议转换模块,用于通过所述并行总线从所述第一外设部件互联接口模块获取 所述第一处理层数据包,对所述第一处理层数据包进行解析并转换为能够被所述内容存 储模块识别的操作请求和数据;
所述内容存储模块, 用于存储内容, 并根据所述操作请求进行操作并返回操作响应 数据;
所述指令总线, 用于传输所述操作请求;
所述数据总线, 用于传输所述数据。
2. 根据权利要求 1所述的内容查找芯片, 其特征在于, 所述数据总线包括: 键值总线, 用于当所述操作请求为查找操作请求时, 传输待查找的内容的键值; 查找结果返回总线,用于传输所述内容存储模块根据所述查找操作请求进行查找后 返回的查找结果, 所述查找结果包括所述待查找内容的存储地址。
3. 根据权利要求 1所述的内容查找芯片, 其特征在于:
所述内容存储模块,还用于通过所述查找结果返回总线将所述操作响应数据发送至 所述协议转换模块;
所述协议转换模块,还用于将所述操作响应数据封装为第二处理层数据包并通过所 述并行总线发送至所述外设部件互联接口模块,所述第一外设部件互联接口模块将所述 第二处理层数据包转换为第二处理层数据并发送至所述外设部件互联总线。
4. 根据权利要求 1所述的内容查找芯片, 其特征在于, 所述协议转换模块根据所述 第一处理层数据包的包头中的 Fmt字段以及 Type字段产生对应的操作请求。
5. 根据权利要求 4所述的内容查找芯片, 其特征在于, 所述操作请求包括内容查找 请求、 表项读取请求、 表项写入请求、 寄存器读取请求或表项删除请求。
6. 根据权利要求 5所述的内容查找芯片, 其特征在于:
所述协议转换模块在检测到所述第一处理层数据包的包头中的 Fmt字段为 00以及 Type字段为 00010时, 产生所述内容查找请求; 所述协议转换模块在检测到所述第一处理层数据包的包头中的 Fmt字段为 00或 01以 及 Type字段为 00000时, 产生所述表项读取请求;
所述协议转换模块在检测到所述第一处理层数据包的包头中的 Fmt字段为 10或 11以 及 Type字段为 00001时, 产生所述表项写入请求;
所述协议转换模块在检测到所述第一处理层数据包的包头中的 Fmt字段为 00以及
Type字段为 00100时, 产生所述寄存器读取请求;
所述协议转换模块在检测到所述第一处理包的包头中的 Fmt字段为 10以及 Type字段 为 00100时, 产生所述寄存器写入请求;
所述协议转换模块在检测到所述第一处理层数据包的包头中的 Fmt字段为 10以及 Type字段为 00101时, 产生所述表项删除请求。
7. 一种内容查找系统, 其特征在于, 所述内容查找系统包括权利要求 1至 6任一项 所述的内容查找芯片, 所述内容查找系统进一步包括- 处理器芯片, 所述处理器芯片设置有第二外设部件互联接口模块, 所述第二外设部 件互联接口模块通过所述外设部件互联总线与所述第一外设部件互联接口模块连接。
8. 根据权利要求 7所述的内容查找系统, 其特征在于, 所述处理器芯片为 X86系列 处理器芯片或 ARM系列处理器芯片。
PCT/CN2013/086543 2012-12-06 2013-11-05 一种基于外设部件互联总线的内容查找芯片及系统 WO2014086219A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/708,791 US9342629B2 (en) 2012-12-06 2015-05-11 Content searching chip based protocol conversion

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210519718.2 2012-12-06
CN201210519718.2A CN103034602B (zh) 2012-12-06 2012-12-06 一种基于外设部件互联总线的内容查找芯片及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/708,791 Continuation US9342629B2 (en) 2012-12-06 2015-05-11 Content searching chip based protocol conversion

Publications (1)

Publication Number Publication Date
WO2014086219A1 true WO2014086219A1 (zh) 2014-06-12

Family

ID=48021510

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/086543 WO2014086219A1 (zh) 2012-12-06 2013-11-05 一种基于外设部件互联总线的内容查找芯片及系统

Country Status (3)

Country Link
US (1) US9342629B2 (zh)
CN (1) CN103034602B (zh)
WO (1) WO2014086219A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114710237A (zh) * 2022-03-25 2022-07-05 湖南鼎一致远科技发展有限公司 通讯接口的数据处理方法、装置、电子设备及存储介质
CN117370231A (zh) * 2023-12-07 2024-01-09 芯动微电子科技(武汉)有限公司 实现gpu核内片上网络总线访问的协议转换模块及方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034602B (zh) * 2012-12-06 2015-11-25 华为技术有限公司 一种基于外设部件互联总线的内容查找芯片及系统
CN106372014A (zh) * 2016-08-25 2017-02-01 天津市英贝特航天科技有限公司 一种pcie总线转换cpci总线的实现方法
CN114008601B (zh) * 2019-06-19 2023-11-10 三菱电机株式会社 命令变换装置、方法及记录介质
CN113157609A (zh) * 2021-04-20 2021-07-23 北京达佳互联信息技术有限公司 存储系统、数据处理方法、装置、电子设备及存储介质
CN113971143B (zh) * 2021-10-22 2023-12-05 展讯半导体(成都)有限公司 一种内存控制器、物联网芯片及电子设备
CN115292237B (zh) * 2022-10-09 2022-12-20 中科声龙科技发展(北京)有限公司 一种芯片及其数据传输方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185172B1 (en) * 2003-10-31 2007-02-27 Integrated Device Technology, Inc. CAM-based search engine devices having index translation capability
CN101221538A (zh) * 2008-01-24 2008-07-16 杭州华三通信技术有限公司 实现对缓存中数据快速查找的系统和方法
CN101635747A (zh) * 2008-07-24 2010-01-27 信息产业部电信传输研究所 非ptdn网络与ptdn网络的网间地址解析装置
CN102291472A (zh) * 2011-09-09 2011-12-21 华为数字技术有限公司 一种网络地址查找方法及装置
CN103034602A (zh) * 2012-12-06 2013-04-10 华为技术有限公司 一种基于外设部件互联总线的内容查找芯片及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2010025A (en) * 1932-12-14 1935-08-06 Carborundum Co Floor surface
US6961796B2 (en) * 2001-07-26 2005-11-01 Hewlett-Packard Development Company, L.P. Extendable bus interface
US7246191B2 (en) * 2005-03-31 2007-07-17 Intel Corporation Method and apparatus for memory interface
US8762595B1 (en) * 2005-04-05 2014-06-24 Oracle America, Inc. Method for sharing interfaces among multiple domain environments with enhanced hooks for exclusiveness
CN101217468A (zh) * 2007-12-28 2008-07-09 华为技术有限公司 路由查表系统、三态内容寻址存储器和网络处理器
CN101833424B (zh) 2010-03-26 2013-07-10 中国科学院光电技术研究所 基于fpga的高速存储与传输装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185172B1 (en) * 2003-10-31 2007-02-27 Integrated Device Technology, Inc. CAM-based search engine devices having index translation capability
CN101221538A (zh) * 2008-01-24 2008-07-16 杭州华三通信技术有限公司 实现对缓存中数据快速查找的系统和方法
CN101635747A (zh) * 2008-07-24 2010-01-27 信息产业部电信传输研究所 非ptdn网络与ptdn网络的网间地址解析装置
CN102291472A (zh) * 2011-09-09 2011-12-21 华为数字技术有限公司 一种网络地址查找方法及装置
CN103034602A (zh) * 2012-12-06 2013-04-10 华为技术有限公司 一种基于外设部件互联总线的内容查找芯片及系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114710237A (zh) * 2022-03-25 2022-07-05 湖南鼎一致远科技发展有限公司 通讯接口的数据处理方法、装置、电子设备及存储介质
CN114710237B (zh) * 2022-03-25 2024-01-26 湖南鼎一致远科技发展有限公司 通讯接口的数据处理方法、装置、电子设备及存储介质
CN117370231A (zh) * 2023-12-07 2024-01-09 芯动微电子科技(武汉)有限公司 实现gpu核内片上网络总线访问的协议转换模块及方法
CN117370231B (zh) * 2023-12-07 2024-04-12 芯动微电子科技(武汉)有限公司 实现gpu核内片上网络总线访问的协议转换模块及方法

Also Published As

Publication number Publication date
CN103034602B (zh) 2015-11-25
US9342629B2 (en) 2016-05-17
CN103034602A (zh) 2013-04-10
US20150242535A1 (en) 2015-08-27

Similar Documents

Publication Publication Date Title
WO2014086219A1 (zh) 一种基于外设部件互联总线的内容查找芯片及系统
US10140242B2 (en) General purpose input/output (GPIO) signal bridging with I3C bus interfaces and virtualization in a multi-node network
JP6225154B2 (ja) 共有メモリリンクの低電力エントリ
US9411775B2 (en) iWARP send with immediate data operations
US9025495B1 (en) Flexible routing engine for a PCI express switch and method of use
EP3042297B1 (en) Universal pci express port
US7606933B2 (en) Shared memory and high performance communication using interconnect tunneling
TWI664532B (zh) 片上系統、跳頻匯流排系統、以及在片上系統中轉發資訊的方法
US20140040527A1 (en) Optimized multi-root input output virtualization aware switch
WO2019129167A1 (zh) 一种处理数据报文的方法和网卡
US8631184B2 (en) Interconnection method and device, for example for systems-on-chip
WO2022001417A1 (zh) 一种数据传输方法、处理器系统及内存访问系统
US9678891B2 (en) Efficient search key controller with standard bus interface, external memory interface, and interlaken lookaside interface
US20220358075A1 (en) Pcie-based data transmission method and apparatus
WO2022151820A1 (zh) 数据传输系统、数据传输方法以及网络设备
US9594702B2 (en) Multi-processor with efficient search key processing
KR101559089B1 (ko) 장치의 컴포넌트들 간에 메모리 자원들을 공유하기 위한 통신 프로토콜
WO2014134947A1 (zh) 控制信息的收发装置和方法
US9594706B2 (en) Island-based network flow processor with efficient search key processing
TWI637267B (zh) 具近資料端處理引擎的晶片組
CN104102550A (zh) 一种多主机进程间通信的方法
US20120041998A1 (en) Network Interface for Accelerating XML Processing
WO2015055008A1 (zh) 一种存储控制芯片及磁盘报文传输方法
JP2003050788A (ja) 高レベル・データ・リンク・コントローラから多数個のディジタル信号プロセッサ・コアに信号を分配するための装置と方法
WO2022141322A1 (zh) 一种片上系统及相关方法

Legal Events

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

Ref document number: 13860319

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13860319

Country of ref document: EP

Kind code of ref document: A1