Title :
Sorting and searching using ternary CAMs
Author :
Sharma, Samar ; Panigrahy, Rina
Abstract :
Sorting and searching are classic problems in computing and several RAM based solutions exist. We present sorting and searching algorithms using TCAMs. Using these algorithms, one can perform sorting in O(n) memory cycles using a TCAM. Furthermore, inserts and deletes to a sorted list and priority queue operations can be done in O(1) cycles. A searching problem may typically involve finding if a query point is contained in a given set of ranges. We call this the point intersection problem. The ranges may be inserted or deleted from the set dynamically. For these problems, we present several algorithms with different time, space and implementation complexity tradeoffs. One of the algorithms uses only O(1) time for all operations and O(1) space for each range in the set when the ranges are disjoint. More precisely, one can perform disjoint range search in one memory cycle using a 2-stage pipeline. We also provide several solutions in scenarios where the ranges in the set are allowed to overlap.
Keywords :
computational complexity; content-addressable storage; random-access storage; search problems; 2-stage pipeline; RAM; TCAM; implementation complexity; memory cycles; point intersection problem; query point; searching algorithms; sorting algorithms; space complexity; ternary CAM; Cams; Hardware; Impedance matching; Memory management; Packet switching; Pipelines; Protection; Random access memory; Read-write memory; Sorting;
Conference_Titel :
High Performance Interconnects, 2002. Proceedings. 10th Symposium on
Print_ISBN :
0-7695-1650-5
DOI :
10.1109/CONECT.2002.1039264