Download presentation
Presentation is loading. Please wait.
Published byYulia Tanudjaja Modified over 6 years ago
1
A SRAM-based Architecture for Trie-based IP Lookup Using FPGA
Author : Hoang Le, Weirong Jiang, Viktor K. Prasanna Publisher/Conf : Field-Programmable Custom Computing Machines Speaker : Chen Deyu Data :
2
Background (1/3) A simple pipelining approach is to map each tree level onto a pipeline stage with its own memory and processing logic. One packet can be processed every clock cycle.
3
Background (2/3) However, this approach results in unbalanced tree node distribution over the pipeline stages. In an unbalanced pipeline, the “fattest” stage, which stores the largest number of tree nodes, becomes a bottleneck. “Fattest Stage”
4
Background (3/3) More time is needed to access the larger local memory. This leads to a reduction in the global clock rate. A fat stage results in many updates. During the update process caused by intensive route/rule insertion, the fattest stage may also result in memory overflow. It is unclear at hardware design time which stage will be the fattest, we need to allocate memory with the maximum size for every stage.
5
Method (1/2) 12 levels ‧‧‧‧‧ ‧‧‧‧ ‧‧‧‧‧‧‧‧‧‧‧‧ Sub trie Sub trie
6
Method (2/2) ‧‧‧‧‧‧‧‧‧‧‧‧ Stage: ‧‧‧‧
7
BiOLP Architecture (1/2)
8
BiOLP Architecture (2/2)
9
Sub-trie Invertion (1/3)
10
Sub-trie Invertion (2/3)
Stage: 1 Stage: 1 After sub-trie is inverted
11
Sub-trie Invertion (3/3)
In this paper, it’s propose several heuristics to select the subtries to be inverted: Largest leaf: The subtrie with the most number of leaves. Least height: The subtrie whose height is the minimum. Largest leaf per height: By dividing the number of leaves of a subtrie by its height. Least average depth per leaf: Average depth per leaf is the ratio of the sum of the depth of all the leaves to the number of leaves.
12
Mapping Forward subtrie reverse subtrie (a) After invertedfinish
(b) Two set of subtrie
13
Cache-based BiOLP Architecture
14
Implementation Results (1/5)
Representative routing tables
15
Implementation Results (2/5)
Impact of the inversion heuristics: We have four different heuristics to invert subtrees. The value of the inversion factor is set to 1. According to the results, the least average depth per leaf heuristic has the best performance. Impact of the inversion factor: When we increase the inversion factor from 0 to 25, the Bidirectional mapping changes from top-down to bottom-up. From the results, we can achieve perfect memory balance with the inversion factor between 4 and 8.
16
Implementation Results (3/5)
Throughput (1)
17
Implementation Results (4/5)
Throughput (2)
18
Implementation Results (5/5)
Throughput (3)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.