SRAM based cache for DRAM routing table lookups
First Claim
Patent Images
1. A data and telecommunications switch, comprising:
- one or more input ports for receiving data from one or more input devices;
a router adapted to route said data to one or more output devices, said router including a router table, the router table implemented as a DRAM and SRAM lookup table; and
a switch control unit for conducting a search of said SRAM and DRAM lookup table when said data are received,wherein conducting a search of said SRAM and DRAM lookup table includes searching an SRAM portion of said SRAM and DRAM lookup table for routing information,wherein if routing information is found in the SRAM portion, no search is performed in an DRAM portion of said SRAM and DRAM lookup table, andwherein if no routing information is found in the SRAM portion, searching only the DRAM portion of said SRAM and DRAM lookup table.
10 Assignments
0 Petitions
Accused Products
Abstract
A router (101) includes one or more input ports (104) and one or more output ports (112). The router (101) includes a lookup table (105) to determine routing of the incoming packets or cells. The lookup table is implemented in dynamic random access memory (DRAM) with a portion implemented as static random access memory (SRAM) (202, 204). The SRAM (204) is used to store a first search level of destination addresses. Once the first search level in SRAM (204) has been exhausted, the search moves to the DRAM portion (202).
61 Citations
12 Claims
-
1. A data and telecommunications switch, comprising:
-
one or more input ports for receiving data from one or more input devices; a router adapted to route said data to one or more output devices, said router including a router table, the router table implemented as a DRAM and SRAM lookup table; and a switch control unit for conducting a search of said SRAM and DRAM lookup table when said data are received, wherein conducting a search of said SRAM and DRAM lookup table includes searching an SRAM portion of said SRAM and DRAM lookup table for routing information, wherein if routing information is found in the SRAM portion, no search is performed in an DRAM portion of said SRAM and DRAM lookup table, and wherein if no routing information is found in the SRAM portion, searching only the DRAM portion of said SRAM and DRAM lookup table. - View Dependent Claims (2, 3)
-
-
4. A method, comprising:
-
receiving a data packet at an input port; reading a header of said data packet for routing identification information; using said routing identification information for accessing an SRAM portion of a routing table for routing information, and if no entry corresponding to said routing identification information is found in said SRAM portion, accessing only a DRAM portion of said routing table; and routing said data packet using said routing information. - View Dependent Claims (5, 6)
-
-
7. A method, comprising:
-
providing one or more input ports for receiving data from one or more input devices; providing a router adapted to route said data to one or more output devices, said router including a router table, the router table implemented as a DRAM and SRAM lookup table; and providing a switch control unit for conducting a search of said SRAM and DRAM lookup table when said data are received, wherein conducting a search of said SRAM and DRAM lookup table includes searching an SRAM portion of said SRAM and DRAM lookup table for routing information, wherein if routing information is found in the SRAM portion, no search is performed in an DRAM portion of said SRAM and DRAM lookup table, wherein if no routing information is found in the SRAM portion, searching the DRAM portion of said SRAM and DRAM lookup table, and wherein a predetermined number of levels of said search is stored in the SRAM portion, and a remaining number of levels of said search is stored in the DRAM portion. - View Dependent Claims (8, 9)
-
-
10. A router for a data and telecommunications system, comprising:
-
a routing controller for reading routing identification information from incoming data packets; and a routing table for storing routing information, said routing table having a DRAM portion and an SRAM cache, wherein said routing controller uses said routing identification information to access said routing table for said routing information, wherein a first portion of a search of said routing table is conducted in said SRAM cache and a second portion is conducted in said DRAM portion, and wherein only said second portion of said search in said DRAM portion is conducted if no routing information is found in the SRAM portion. - View Dependent Claims (11, 12)
-
Specification