Вы находитесь на странице: 1из 6

VERTICALLY PARTITIONED SRAM-BASED TERNARY

CONTENT ADDRESSABLE MEMORY


Gara Niharika architecture. The access time of TCAM is 3.3
Department of ECE times longer than the SRAM access time.
JNTU No : 17341A0458 Currently, TCAMs are used in networking
GMR Institute of Technology, systems but they are
Rajam, Srikakulam District
neerugara@gmail.com Abotula Surekha
7780730690 Department of ECE
JNTU No : 17341A0401
ABSTRACT :
GMR Institute of Technology,
This paper proposes a novel memory
Rajam, Srikakulam District
architecture called VPSRAM-based TCAM that
surekhaabotula3411@gmail.com
emulates TCAM functionality with SRAM.VP
9010945808
SRAM-based TCAM dissects conventional
TCAM table vertically into TCAM sub-tables, expensive and not scalable with respect to
which are then processed to be stored in their clock rate or circuit area compared with
corresponding SRAM blocks.Analysis shows RAMs. Thus, SRAM- based TCAMs can be
that maximum possible number of vertical used in applications such as in networking
partitions reduces size of the proposed TCAM chips to achieve high speed and high
approximately by a factor of 1.3 than its throughput. With the potential advantages of
traditional counterpart and offers optimized SRAM over CAM, Z-TCAM emulates TCAM
values for both area and latency of VP SRAM- functionality with SRAM. TCAM offers
based TCAM and hence, is a practically comparable search performance, scalability,
feasible alternative to traditional TCAMs. and lower cost than classical TCAM devices,
Index terms-Memory architecture, vertical provided that SRAM devices are denser,
partition, cheaper, and operate faster than TCAM
SRAM ,TCAM. devices. 
The rest of the paper is organized as follows:
I. INTRODUCTION:
Sections II and III elaborate the architecture
The main role of TCAM is to search input data
and phases of VP SRAM-based TCAM.
against the pre-loaded data and output the
Section IV analyzes the proposed TCAM.
comparison result [1]. A typical TCAM cell
has two SRAM cells and a comparison
III. ARCHITECTURE OF VP SRAM-
circuitry and has the ability to store three states
BASED TCAM:
− 0, 1, and x where x is a don’t care state. The
VP SRAM-based TCAM logically divides
constant time search of TCAM makes it
conventional TCAM table column-wise into
suitable for different applications such as
‘n’ TCAM sub-tables, which are then
network routers,data compression,real-time
processed to be stored in their corresponding
pattern matching in virus-detection,and image
SRAM blocks.Vertical partitioning implies
processing. TCAM provides single clock
that a TCAM word of width ‘W’ bits are
lookup .However,it has several disadvantages
divided into ‘n’ sub-words, each of which is of
compared with SRAM.TCAM is less dense
width ‘w’ bits. A conceptual view of VP is
than SRAM. The comparator’s circuitry in
illustrated in Fig.1 where a row corresponds to
TCAM cell adds complexity to the TCAM
a TCAM word.

1
Memory architecture of VP SRAM-based
TCAM is
depicted in Fig. 2. Its main components
include ‘n’ Bit Position Tables (BPTs), ‘n’
Address Position Tables (APTs), ‘n’ APT
Address Generators (APTAGs), Priority
Encoder (PE), and ANDing operation. BPTs
and APTs are constructed from SRAM. Each
vertical partition has its corresponding BPT,
APTAG, and APT.
The maximum possible combinations of
‘w’ bits are 2^w where each combination
represents a sub-word. The aim is to map 2^w
sub-words to 2^w bits such that each sub-word
would be represented by a single bit in
memory.
In BPT, 2^w bits of memory are
grouped into 2^w-b rows; with each row has
2^b bits, which can be two or more. Each row
is supplemented with a value called Last Index
(LI) of length w+1 bit. The ‘w-b’ high order bits of input sub-word
are used to select a particular row in BPT, thus
acting as an address. From now onwards this
address is termed as BPT Address (BPTA).
The ‘b’ low order bits, from now onwards
termed as Bit Position Indicator (BPI), of the
input sub-word are used to indicate a particular
bit position in the row selected. If the
bit position indicated by BPI is high, then it
means that the input sub-word is present,
otherwise not. Conceptual view of BPT is
shown in Fig. 3.

2
corresponds to rows in Fig. 1. A conceptual
view of APT is illustrated in Fig. 4.

For instance, if w = 4 bits, then BPT has 2^4


bit positions (0th, 1st, 2nd,…, 15th). These
sixteen bits, for instance, are arranged in four
rows (2^2), with each row having four bits
(2^2). LI of a row is set to the total number of
bits set in all previous rows reduced by 1.
Composition of BPT for the mentioned An example of APT is shown in Table II
example is illustrated in Table I where all the where ‘1’ means that its corresponding sub-
bit word in BPT is present at this high (1) address
positions (0th to 15th) are set to 1. position and ‘0’ means absent. It should be
noted that all BPTs are similar and all APTs
are similar. K-bit rows are read out by using
their corresponding APTAs from their
corresponding APTs, which are then bit-wise
ANDed.
Multiple matches may also occur, which
are resolved by PE. PE selects the highest
priority matching address as a desired
matching address (MA); word in the lowest
APTAG generates an address referred to APT physical memory location has the highest
Address (APTA), which is used to index a row priority.
in APT. APTAG contains 1’s counter and
adder. The 1’s counter counts the number of
1’s in the selected row of BPT up to the
indicated bit position inclusive and then
forwards this information to adder. The adder
then adds the output of the 1’s counter and
LI of the selected row. For example, if input
sub-word is 1011, then using Table 1, APTA
generated to be 7 + 4 = 11.

Size of APT is 2^w*K where 2^w represents


number of rows and ‘K’ is the number of bits
in each row where each bit represents an
address position. This address position
III. PHASES OF VP SRAM-BASED
corresponds to its original address. It is
TCAM:
noteworthy to mention here that ‘K’

3
A.DATA AND ADDRESS ORGANISING position in BPT indicated by BPI in the row
AND STORING PHASE: selected by BPTA is read out.
In this phase, conventional TCAM
table is vertically (column-wise) partitioned If the read out bit is high (1), it shows that
into TCAM sub-tables, which are then input sub-word is considered present
expanded into binary counter parts and (otherwise, not) but at which address, still
processed in such a way that each sub-word in unknown. Step 3 occurs in parallel for all
all partitions is mapped to its corresponding bit BPTs.
in its corresponding BPT and original address In step 4, the read out bits from all BPTs are
(s) of the sub-word are mapped to its/their ANDed. The result of this 1-bit ANDing
corresponding bit (s) in the corresponding operation specifies whether the searching
APT, respectively. Only those bit positions effort is to be continued or to be stopped. If the
and address positions in BPTs and APTs, 1-bit ANDing results in a low signal, it means
respectively, are high, which are mapped while that mismatch has occurred and shows end of
remaining bit positions and search phase, otherwise the proposed TCAM
address positions are set to low in BPTs and sustains search operation and enters step 5
APTs where APTAG computes APTA by summing
respectively. After mapping, LIs of their the number of one’s (1) in the selected row up
corresponding BPTs are set to their respective to the bit position inclusive indicated by BPI
values. A conceptual view of mapping of and LI of the selected row of BPT.
original addresses to their corresponding bits Step 5 is also carried out in parallel for the
in APT and computation of all the APTAs.
mapping of sub-words to their corresponding In step 6, APTAs read out rows from their
bits in BPT is pictured in Fig. 5. corresponding APTs simultaneously.
Step 7 is the K-bit ANDing. The
corresponding ith bits of all rows read out in
step 6 are ANDed where 0 ≤ i ≤ K-1. The
address positions that remain at high level (1)
after ANDing are considered Potential
Matching Addresses(PMAs).
In the last step, step 8,a PE selects Matching
Address (MA) among the PMAs, if exists.
otherwise a mismatch is signaled.A mismatch
of an input word can be signaled at two
places;first, when the enable signal is low in
step 4 and second,
when all the address positions are low (0) after
B.SEARCH PHASE: ANDing in step 7.When 1-bit ANDing of Fig.
In this phase, an input word is 2 results in a high output, this condition
applied and, if exits,its MA is sent to output. permits the searching effort to be continued.
In step 1, an input word is applied to the At this point, it cannot be decided that the
proposed TCAM. In step 2, the applied word is input word is present. It provides only a hope
partitioned into ‘n’ number of sub-words. for the match case of the input word.
These sub-words are then applied to the Whenever this case occurs, the
corresponding SRAM blocks of their match/mismatch is decided by the ANDing
corresponding BPTs in parallel. In step 3, bit

4
operation in step 7 on the accessed rows of the
APT.

IV. ANALYSIS OF VP SRAM-BASED


TCAM:
Number of vertical partitions has a
great impact on the proposed TCAM size. List
of symbols for this section is given in Table
III.

It should be noted here that when NPT > NCT,


then (5) is used, otherwise (6) and it should
further be noted that routing overhead has not
been counted in the size analysis.

Table IV shows a comparison for different


number of partitions with respect to size in
terms of number of transistors for different
conventional TCAM dimensions taken for
analysis.
It is evident from Table IV that size of the
proposed
TCAM has dependency on ‘n’ and also on the
dimensions of the conventional TCAM. In
Table IV, DF written with the computed value
specifies the reduction of the proposed TCAM
by that factor than its traditional counterpart.
Equation (1) shows how to calculate Vertical partitioning has dependency on
NCT. Equation (2) calculates NPT where number of 2^b bits in the data portion of BPT
NAPT and NBPT are explained in (3) and (4). (See Fig. 3), which can be two or more bits as
In (1), a typical 16 transistors TCAM cell [3], explained in section III. Keeping this
and in (3) and (4), a typical 6 transistor SRAM constraint in mind, maximum possible value of
cell are taken for ‘n’ has been worked out for different types of
analysis. conventional TCAM
dimensions listed in Table IV. It has also been
shown that maximum possible value of ‘n’
offers minimum possible size of VP SRAM-
based TCAM. For different dimensions taken
in Table IV, it has been analyzed that for
maximum possible value of ‘n’, size of the
proposed TCAM is reduced

5
approximately by a factor of 1.3 than its smaller approximately by factor of 1.3 than its
conventional counterpart. corresponding conventional TCAM.
REFERENCES:
[1]. Z. Ullah, M. K. Jaiswal, and R. C. C.
Cheung, “Z-TCAM: An SRAM based
architecture for TCAM,” IEEE Trans. Very
Large Scale Integration.
(VLSI) Syst., vol. 23, no. 2, pp. 402–406, Feb.
2015.
[2]. Z. Ullah, M. K. Jaiswal, and R. C. C.
Cheung, “E-TCAM: An efficient SRAM-based
architecture for TCAM,” Circuits Syst. Signal
Process.,
vol. 33, no. 10, pp. 3123–3144, Oct. 2014.
[3]. R. Karam, R. Puri, S. Ghosh, and S.
Bhunia, “Emerging trends in design and
applications of memory-based computing and
content-addressable
memories,” Proc. IEEE, vol. 103, no. 8, pp.
1311–1330, Aug. 2015.

CONCLUSIONS:
In this paper, we presented VP SRAM-based
TCAM that emulates TCAM functionality
with SRAM. Analysis for VP SRAM-based
TCAM shows
that size and latency are dependent on number
of vertical partitions and also on the
dimensions of the conventional TCAM. In
general, size of VP SRAM-based TCAM
increases as the width of sub-word increases or
alternatively when number of vertical
partitions shrinks. We analyzed that maximum
possible number of vertical partitions provides
optimized VP SRAM-based TCAM in terms
of important performance parameters
concurrently
including size and search latency and thus is a
practical solution to traditional TCAMs and its
variations. It has also been shown that for
maximum number of vertical partitions, for the
different dimension that we have taken for
analysis, size of VP SRAM-based TCAM is

Вам также может понравиться