30.01.2013 Views

november 2010 volume 1 number 2 - Advances in Electronics and ...

november 2010 volume 1 number 2 - Advances in Electronics and ...

november 2010 volume 1 number 2 - Advances in Electronics and ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

36 ADVANCES IN ELECTRONICS AND TELECOMMUNICATIONS, VOL. 1, NO. 2, NOVEMBER <strong>2010</strong><br />

Fig. 1. The MSM Clos switch<strong>in</strong>g fabric architecture.<br />

II. MSM CLOS SWITCHING NETWORK<br />

Clos-networks are well known <strong>and</strong> widely analyzed <strong>in</strong> the<br />

literature [16]. The three-stage Clos-network architecture is<br />

denoted by C(m, n, k), where parameters m, n, <strong>and</strong> k entirely<br />

determ<strong>in</strong>e the structure of the network. We def<strong>in</strong>e the MSM<br />

Clos switch<strong>in</strong>g fabric based on the term<strong>in</strong>ology used <strong>in</strong> [4]<br />

(see Fig. 1).<br />

IntheMSMClosswitch<strong>in</strong>gfabricarchitecturethefirst stage<br />

consists of k IMs, <strong>and</strong> each of them has an n × m dimension<br />

<strong>and</strong> nk V OQ(i, j, h) to elim<strong>in</strong>ateHead-Of-L<strong>in</strong>eblock<strong>in</strong>g.The<br />

second stage consists of m bufferless CMs, <strong>and</strong> each of them<br />

has a k × k dimension. The third stage consists of k OMs of<br />

capacity m × n, where each OP (j, h) has an output buffer.<br />

Each output buffer can receive at most m cells from m CMs,<br />

so a memory speedup is required here.<br />

Generally speak<strong>in</strong>g, <strong>in</strong> the MSM Clos switch<strong>in</strong>g fabric<br />

architecture each V OQ(i, j, h) located <strong>in</strong> IM(i) stores cells<br />

go<strong>in</strong>g from IM(i) to the OP (j, h) at OM(j). In one cell<br />

time slot VOQ can receive at most n cells from n <strong>in</strong>put ports<br />

<strong>and</strong> send one cell to any CMs. A memory speedup of n is<br />

required here because the rate of memory work has to be n<br />

times higherthan the l<strong>in</strong>e rate. Each IM(i) has m outputl<strong>in</strong>ks<br />

LI(i, r) connected to each CM(r), respectively. A CM(r)<br />

has k output l<strong>in</strong>ks LC(r, j) which are connected to each<br />

OM(j), respectively.<br />

In simulation experiments we consider the Clos switch<strong>in</strong>g<br />

fabric without any expansion, denoted by C(n, n, n), so <strong>in</strong><br />

the description of the packet dispatch<strong>in</strong>g schemes <strong>in</strong> Section<br />

III, parameters k <strong>and</strong> m are not used. We also use Virtual<br />

Output Module Queues (VOMQs), <strong>in</strong>stead of VOQs. In this<br />

case, an <strong>in</strong>put buffer <strong>in</strong> each IM is divided <strong>in</strong>to k parallel<br />

queues, each of them stor<strong>in</strong>g cells dest<strong>in</strong>ed for different OMs.<br />

It is possible to arrange buffers <strong>in</strong> such way because OMs<br />

are nonblock<strong>in</strong>g. Memory speedup of n is necessary here.<br />

There are fewer queues <strong>in</strong> each IM but they are longer than<br />

VOQs. Each V OMQ(i, j) stores cells go<strong>in</strong>g from IM(i) to<br />

the OM(j).<br />

III. PACKET DISPATCHING SCHEMES<br />

Under the nonuniform traffic distribution patterns, selected<br />

VOQs store more cells than others. Because of that, it is<br />

Fig. 2. Static connection patterns <strong>in</strong> CMs, C(3, 3, 3).<br />

necessary to implement a special mechanism for a packet<br />

dispatch<strong>in</strong>g scheme, which is able to send up to n cells from<br />

IM(i) to OM(j) <strong>in</strong> the same time slot, <strong>in</strong> order to unload<br />

overloaded buffers. Three dispatch<strong>in</strong>g schemes presented <strong>in</strong><br />

this paper have such possibility.<br />

Theproposedpacketdispatch<strong>in</strong>gschemesperformmatch<strong>in</strong>g<br />

between each IM <strong>and</strong> OM, tak<strong>in</strong>g <strong>in</strong>to account the <strong>number</strong><br />

of cells wait<strong>in</strong>g <strong>in</strong> VOMQs. Each VOMQ has its own<br />

counter P V (i, j) which shows the <strong>number</strong> of cells dest<strong>in</strong>ed<br />

for OM(j). The value of P V (i, j) is <strong>in</strong>creased by 1 when<br />

a new cell is written <strong>in</strong>to memory, <strong>and</strong> decreased by 1 when<br />

the cell is sent out to OM(j). The algorithms use the central<br />

arbiter to <strong>in</strong>dicate the matched pairs of IM(i) − OM(j) but<br />

the set of data sent to the arbiter by each scheme is different.<br />

Therefore, the architecture <strong>and</strong> functionality of each arbiter<br />

is also different. After match<strong>in</strong>g phase, <strong>in</strong> the next time slot<br />

IM(i) is allowed to send up to n cells to the selected OM(j).<br />

In the SD-OC <strong>and</strong> SD-FC schemes the central arbiter<br />

matches IM(i) <strong>and</strong> OM(j) only if the <strong>number</strong> of cells<br />

buffered <strong>in</strong> V OMQ(i, j) is at least equal to n. Under the<br />

nonuniform traffic distribution patterns this happens very often,contraryto<br />

theuniformtrafficdistribution.Intheproposed<br />

packet dispatch<strong>in</strong>g schemes, each VOMQ has to wait until at<br />

least n cellsare stored beforebe<strong>in</strong>gallowedto makearequest.<br />

To reduce latency <strong>and</strong> avoid starvation, a very simple packet<br />

dispatch<strong>in</strong>g rout<strong>in</strong>e, called Static Dispatch<strong>in</strong>g (SD), is also<br />

used. Underthis algorithm,connect<strong>in</strong>gpaths<strong>in</strong> the MSM Clos<br />

switch<strong>in</strong>g fabric are set up accord<strong>in</strong>g to connection patterns<br />

which are static but different <strong>in</strong> each CM (see Fig. 2). These<br />

fixed connection paths between IMs <strong>and</strong> OMs elim<strong>in</strong>ate the<br />

h<strong>and</strong>shak<strong>in</strong>g process with the second stage, <strong>and</strong> no <strong>in</strong>ternal<br />

conflicts<strong>in</strong> the switch<strong>in</strong>gfabricwill occur.Also, noarbitration<br />

process is necessary. Cells dest<strong>in</strong>ed for the same OM, but<br />

located <strong>in</strong> different IMs, will be sent through different CMs.<br />

In detail, the SD algorithm works as follows:<br />

Step 1: Accord<strong>in</strong>g to the connection pattern of IM(i),<br />

match all output l<strong>in</strong>ks LI(i, r) with cells from VOMQs.<br />

Step 2: Send the matched cells <strong>in</strong> the next time slot. If there<br />

is any unmatched output l<strong>in</strong>k, it rema<strong>in</strong>s idle.<br />

The SD-OC <strong>and</strong> SD-FC schemes are very similar but the<br />

central arbiter which matches the IMs <strong>and</strong> OMs works <strong>in</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!