Transcript
Page 1: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 1/70

 

Interconnect-driven Cell-based Migration of Integrated Circuit Layout

Research Thesis

In Partial Fulfillment of the

Requirements for the Degree of

Master of Science in Computer Science

Evgeny Shaphir

Submitted to the Senate of

the Technion - Israel Institute of Technology

Nisan, 5769 Haifa April 2009

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 2: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 2/70

 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 3: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 3/70

 

This Research Thesis Was Done Under the Supervision of Assoc. Prof. Shmuel Wimer,

Department of Electrical Engineering, Technion and the School of Engineering, Bar-Ilan

University, and Assoc. Prof. Ron Y. Pinter, Department of Computer Science, Technion,

in the Department of Computer Science.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 4: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 4/70

 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 5: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 5/70

 

Table of Contents

1.  INTRODUCTION ...................................................................................................... 3 

2.  THE MIGRATION FRAMEWORK .......................................................................... 6 

2.1  The Placement-Routing Handshake ..................................................................... 6 

3.  THE INTERCONNECT MIGRATION ALGORITHM .......................................... 12 

3.1  The Graph Model ............................................................................................... 12 

3.2  Description of the Algorithm ............................................................................. 13 

3.2.1  Construction of the Layout Graph .............................................................. 15 

3.2.2  Merge .......................................................................................................... 16 

3.2.3  Reduce ......................................................................................................... 19 

3.2.4  Exact Solution Construction ....................................................................... 20 

4.  CORRECTNESS OF THE INTERCONNECT MIGRATION ALGORITHM ....... 23 

4.1  Layouts and Graphs ............................................................................................ 23 

4.2  The Algorithm's Invariants ................................................................................. 29 

4.2.1 

Merge .......................................................................................................... 29 

4.2.2  Reduce ......................................................................................................... 39 

4.2.3  Exact Solution Construction ....................................................................... 41 

5.  EXPERIMENTAL RESULTS .................................................................................. 49 

6.  DISCUSSION AND FUTURE RESEARCH ........................................................... 51 

7.  REFERENCES ......................................................................................................... 52 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 6: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 6/70

 

List of Figures

Figure 1: (a) A hierarchical layout comprising four levels of hierarchy and (b) the

corresponding calling tree. The black-frame cells are library leaf cells. ............................ 7 

Figure 2: Complete block layout migration flow ................................................................ 9 

Figure 3: Parent-son cell placement and its X and Y visibility graphs. Weights are

assigned to vertices according to sonsโ€™ width and height in target process. Weights are

assigned to arcs according to the space between the corresponding son cells weighted by

some scaling factor. .......................................................................................................... 10 

Figure 4: A one-layer layout and the associated visibility graph ..................................... 12 

Figure 5: Bottom-up flow block diagram ......................................................................... 14 

Figure 6: Top-down flow block diagram .......................................................................... 14 

Figure 7: Construction of a Flat Layout Visibility Graph โ€“ pseudo code......................... 15 

Figure 8: Construction of placement arcs โ€“ pseudo code ................................................. 16  

Figure 9: A one-layer layout and the associated Flat Visibility Layout Graph: gray

vertices represent walls, blue and green โ€“ polygons, red arcs represent placement

constraints ......................................................................................................................... 16 

Figure 10: (a) The hierarchical layout and (b) the underlying hierarchy graph. The

hierarchy order is A,B,C,D,E. ........................................................................................... 17 

Figure 11: Merge phase โ€“ pseudo code ............................................................................ 18 

Figure 12: Merged graph โ€“ generated by Merge on Layout Graph G .............................. 19 

Figure 13: Reduce template โ€“ pseudo code ...................................................................... 20 

Figure 14: Reduced graph โ€“ generated by reduceTemplateInstances reducing template Bfrom Layout Graph G ........................................................................................................ 20 

Figure 15: Exact solution derivation โ€“ pseudo code ......................................................... 21 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 7: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 7/70

 

Figure 16: (a) Reduced Graph - the numbers next to vertices represent the coordinates for

the vertices that already obtained the solution. (b) Constructing an LP problem from the

graph. ................................................................................................................................ 22 

Figure 17: Coordinates of an instance i and polygons in vertically oriented layout. ....... 24 

Figure 18: (a) A layout and (b) the underlying Flat Visibility Layout Graph. ................. 25 

Figure 19: (a) A layout and (b) the underlying Hierarchy Constrained Graph................. 26 

Figure 19: The path in Ht. Similarity arcs are in red. Blue represents the path

 x1 x2โ€ฆ xn ................................................................................................................. 31 

Figure 20: The path in Ht. Similarity arc is red. Blue represents the paths x1โ€ฆ xn and

 y1โ€ฆ ym ........................................................................................................................ 35 

Figure 21: The path ฯ€  in Ht  Blue represents the paths x1โ€ฆ xn and y1โ€ฆ ym ....... 36 

Figure 22: Destination Layout vs. Source Layout Net Delays. Encircled data points

represent nets of significant delays which have been badly scaled .................................. 49  

Figure 23: Tests statistics - size of graphs and runtime .................................................... 50 

List of Tables

Table 1: Equivalence between the properties of layouts and graphs ................................ 28 

Table 2 : Tests statistics โ€“ size of graphs and runtimes .................................................... 50 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 8: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 8/70

 

1

ABSTRACT 

Time to market and cost are primary drivers to preserve designs of integrated circuits,

calling for effective migration methods. Moreover, it is desirable to maintain the

hierarchical nature of a design for performance, use of libraries, and

maintainability. Thus, flattening a layout for migration is inappropriate both due to the

huge data structures that might arise as well as the loss of the hierarchical information.

We provide a novel, cell-based method for migrating hierarchical designs, while meeting

 performance constraints imposed on the signals goals such as delay, power and signal

integrity. Our algorithm separates the placement and interconnect considerations in a

clear and effective manner. It supports a bottom-up flow with emphasis on efficient

interconnect migration, thus addressing the most difficult challenge in cell-based

compaction. The algorithm's input is a source layout, a target layout sizing together with

a placement, the target's manufacturing technology design rules, and target design

 performance specifications; it uses a hierarchy of directed graphs to represent the

constraints of the interconnect layout in a non-redundant fashion. The complete solution

is derived top-down, formulating and solving a Linear Programming problem, treating a

single level of the hierarchy at the time. It satisfies the new design rules, a good starting

 point for convergence, preserving hierarchies and wires' order. We prove that the

algorithm either returns a legal routing or manifests contradictory constraints. Finally,

we have implemented our method and applied it to a number of microprocessor designs,

demonstrating a significant reduction of time complexity without sacrificing the quality

of the resulting layout.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 9: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 9/70

 

2

List of Symbols and Abbreviations

ASIC Application-specific Integrated Circuit

BFS Breadth First Search

DFM Design For ManufacturabilityDFS Depth First Search

FVLG Flat Visibility Layout Graph

HCG Hierarchy Constrained Graph

IC Integrated Circuit

LP Linear Programming

LPW(u, v) The Weight of the Longest Path between the vertices u and v 

TSA Template Similarity Arc

VG Visibility Graph

VLSI Very Large Scale of Integration

W(u, v) The Weight of arc (u, v)

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 10: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 10/70

 

3

1. 

INTRODUCTION

The strong competition in the highโ€“end microprocessor market [1,2] have lead IC

manufacturers to adopt an aggressive marketing strategy in which every year brands of

new processors, covering a wide spectrum of applications, are being delivered to market.

VLSI process technology, on the other hand, follows Mooreโ€™s Law [3], with a new

 process technology every two years [4].

The gap between the oneโ€“year product cycle and the twoโ€“year technology period,

together with the tremendous VLSI design effort required for fullโ€“custom highโ€“end

 products, have lead to a marketing policy called Tickโ€“Tock [5]: a new core โ€“ featuring

major architectural enhancements โ€“ is designed every two years, such that new design

and new technology are progressing in oneโ€“year overlap. The new core designed in the

nth โ€“generation process node and being sold in low volumes, is then migrated into the

(n+1) st  โ€“generation process node and sold in high volumes, where its performance is

significantly improved in both higher speed and lower power consumption. The transition

of a core across process generations mostly involves reโ€“design of circuit and layout due

to the new process technology.

The above circumstances raise the need for a very fast fullโ€“custom backend redesign

cycle for which traditional design methods are inappropriate. Since layout artwork effort

is very significant, layout skills are very expensive, and the design period is very short,

new layout automation methods have become a must. Among those methods the

automatic migration of layout, called also hard  โ€“  IP reuse, was found as a major

 productivity booster [6]. More importantly, the preservation of the relative position of

layout objects, whose careful design in nth โ€“generation required a huge investment,

ensures the fast convergence and timing closure in the new design.

The key technology involved in hardโ€“IP reuse is layout compaction [7,8,9]. This well

known technology has been widely used for several decades to migrate smallโ€“scale VLSI

layouts, such as standardโ€“cell and custom libraries [10], dataโ€“path macros [11,12],

control blocks [13], and DFM enhancements [14]. The complexity of compaction

algorithms and the desire to preserve the design hierarchy has delayed the usage of fullโ€“ 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 11: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 11/70

 

4

chip automatic compaction until recently, when some novel commercial tools have been

made available to cope with largeโ€“scale fully hierarchical layouts [6].

Hierarchical compaction has been used successfully at e.g.  Intel for several process

generations by now, from 130nm, through 90nm and 65nm, to 45nm. Lately, lithographylimitations and DFM requirements have significantly increased the complexity of layout

compaction. Moreover, though hierarchical compactors fully preserve the hierarchy of a

layout and each standard cell of the source layout is modified into a unique target cell

complying with all its instances, a separate migration of several different layouts might

create several target mutations of the same cell, each for a distinct source layout. Cell

mutations are major disadvantage in fullโ€“custom design, since they avoid the usage of

central cell characterization. The need for a unique common cell library is a key factor

for design efficiency and productivity.

Thus, a new layout migration technology called cellโ€“based compaction [15], has evolved.

It uses a common standard cell library for the entire project, which is optimized

regardless of its cell instances in the entire layout. The migration of a given functional

 block takes place bottomโ€“up, starting from the leaf standard cells, building the

intermediate hierarchies, up to the top of the block, which is a basic entity in fullโ€“custom

design.

This thesis scales the cell-based approach to entire processor design. Its goal is to

 preserve the design intent and meet predefined performance goals, such that the layout

obtained will be a good starting point for fast convergence. It uses a common standard

cell library for the entire project, which is optimized regardless of its cell instances in the

entire layout. It uses a bottom-up flow with emphasis on efficient interconnect migration,

thus addressing the most difficult challenge in cell-based compaction. The input to the

interconnect migration phase is the source layout, the blocks' placement in the target

layout, the target's manufacturing technology design rules, and wire width and space

specifications as derived from delay considerations. The migration of a given functional

 block takes place bottom-up, starting from the leaf standard cells, building the

intermediate hierarchies, up to the top of the block, which is a basic entity in full-custom

design. The complete solution is then derived top-down, formulating and solving a

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 12: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 12/70

 

5

Linear Programming problem, treating one level of the hierarchy at a time; it satisfies the

new design rules, a good starting point for convergence, and preserving hierarchies and

wires' order.

The rest of the thesis is organized as follows. Section 2 describes the general frameworkof the migration process and provides its placement portion. Section 3 presents the

interconnect migration problem and outlines its solution by using a suitable graph

theoretic model. Section 4 provides the mathematical foundations of the algorithm in use,

with an outline of a rigorous proof for its correctness. Section 5 presents experimental

results achieved on industrial fullโ€“custom VLSI blocks of a 45nm process technology.

We conclude with some challenges for further research.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 13: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 13/70

 

6

2. 

THE MIGRATION FRAMEWORK

2.1 

The Placement-Routing Handshake

Figure 1a illustrates a hierarchical layout comprising several cells and their

interconnecting wires. Various hierarchical layers are drawn by distinct colors, where

 black cells are library leaf cells. Wires of vertical and horizontal routing layers are drawn

in different colors, while connecting vias reside at their incidence point. Wires

connecting leaf cells within their parents are drawn by solid lines, while upper level wires

are drawn by dotted lines. The corresponding callโ€“tree is drawn in Figure 1b. We denote

 by a template the master cell that is being instantiated in the design. The occurrences of a

template are denoted by instances. The physical location of the instance (its left down

corner) is denoted by the instance's offset.

The transition from one process technology to its successor is a uniform scaling of all

design rules by a common factor, usually nearly 0.7, thus yielding area scaling of 0.5

across process migration. Unfortunately, ideal scaling is impossible and strong

nonlinearity occurs, which becomes worse in 32nm and smaller process nodes. The

electrical characteristics of interconnecting wires are also scaled differently on different

layers, so the width and space specifications of every net are recalculated to retain

 performance goals such as delay, power, signal integrity and IR drop. This is further

introducing nonlinearity to the scaling. As a result, standard cells, custom leaf-cells and

intermediate hierarchical blocks scale nonlinearly, and their X and Y scaling may

typically be distributed from 0.6 to 0.9 according to a variety of geometric and circuit

considerations that are beyond the scope of this thesis. The non-linearity is propagated all

the way up to the layout's root, where the area consumed by every intermediate

hierarchical block is the outcome of the area of its sons and the scaling of the

interconnecting wires.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 14: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 14/70

 

7

 

Implementation of bottom-up migration by a Depth First Search (DFS) traversal of the

layout hierarchy tree is self evident. We start with migrating parent cells calling leaf cells

 by positioning the leaf cells of the new process technology in the same relative left-to-

right and bottom-to-top order as in the source layout. Here we account also for the

 projected routing area in order to accommodate interconnecting wires. We then complete

those by using the same routing patterns as in the source layout. Clearly, the preservation

of hierarchy requires that every intermediate hierarchy is migrated only once and then

used in its multiple instances. Such a bottom-up migration flow is far more efficient than

and advantageous over ordinary hierarchical compaction as it deals with one block at a

Figure 1: (a) A hierarchical layout comprising four levels of hierarchy and (b)

the corresponding calling tree. The black-frame cells are library leaf cells.

(a)

(b)

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 15: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 15/70

 

8

time, knowing the exact dimensions of all its called cells, which have already been

migrated. In contrast, traditional full-size hierarchical compaction solves the constraint

graph of the entire layout at once, where the identity of cell instances is maintained by

imposing a huge amount of extra constraint equations.

There is a problem with the above paradigm, stemming from interlace of sameโ€“layer

interconnects across various hierarchy levels. Unlike placeโ€“andโ€“route layout

implementation widely used in ASIC design where all interconnecting wires reside in

same hierarchy level, fullโ€“custom design style consists of many hierarchy levels, so

interleave of wires across various hierarchies is unavoidable as shown in Figs 1a and 2.

The above bottomโ€“up migration however is blind to upper level wires, which may

constrain the position and size of its wires in given cell. Moreover, different instances of

same cell may see different upper constraining wires, so their adherences in one instance

doesnโ€™t guarantee adherence of other instances. This problem is handled in fullโ€“size

hierarchical compaction by solving simultaneously all the instance constraints, which is

robust but very time consuming [16].

The entire migration flow of our process is shown in Figure 2. In addition to reading the

source layout and target process technologies, width and space specifications for every

wire in every net are read and subsequently derived such that the performance measures

mentioned before are retained [17]. The placement and routing migration are carried out

in two successive steps, with internal feedback to ensure convergence to feasible and

high-quality layout realization. A purely placement-oriented migration is carried out first

 by estimating the area resources required for the wiring migration which follows. If the

wiring subject to the given placement and the area resources is found feasible, a routing

commitment takes place which assigns accurate width and position to every wire. If

however a feasible solution does not exist two actions can take place. In the first the

 placement of the underlying block is relaxed in order to accommodate interconnect

constraints, at the expense of area growth. Alternatively, the constraints are relaxed, so

the final layout will include violations that will later be fixed manually at the expense of

the design effort.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 16: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 16/70

 

9

 

For the sake of completeness weโ€™ll briefly describe the placement migration part of the

 bottomโ€“up flow and how it accommodates the area resources required for the migration

of routing which follows later. By the very definition of bottomโ€“up, all the sons of a

 presently migrated intermediate hierarchy cell are already done; hence their size in target

 process is defined. A visibility graph ( ), , ,G U E w s   is then derived from the source

layout, defined as follows (see Figure 3). Assuming that there are n son blocks, the left

and right borders of the migrated parent cell correspond to the source and target vertices,

denoted by 0 1and nu u + , respectively. Every son cell corresponds to a vertex , 1iu i nโ‰ค โ‰ค .

Two vertices andi ju u are connected with a directed arc ( ),i je u u if son cells i  and  j  are

visible to each other in source layout.

Figure 2: Complete block layout migration flow

InterconnectPerformance

Spec

Source

Layout

Migrate interconnects of

++Layer

Migrate cells placement

Feasible interconnects?

Commit layout

yesno

yes

More layers?

no

 New

Process

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 17: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 17/70

 

10

 

G thus defined is directed acyclic planar graph having one source and one sink. A node

u U โˆˆ is assigned with a weight ( )w u equals the width of the corresponding migrated son

cell in target process. An arc e E โˆˆ is assigned with a weight ( ) s e equals the distance

 between the corresponding cells in source layout, multiplied by some scaling factor

which accounts for the process technology scaling factor and the amount of wires that are

crossing the space between the blocks. The derivation of scaling factor for an arc is pretty

delicate and its discussion is beyond the scope of this thesis.

A graph ( ), , , H V F w s is defined similarly to represent the vertical relations between son

cells and define the vertical dimension of the parent cell. In these definitions the

dimensions of parent cell in target process are defined by the longest paths from source to

sink in andG H  , where the location of the son cells within their parent are defined by

the longest paths from sources to the corresponding vertices in andG H  . At this point

the placement migration of a cell has been finished and DFS proceeds. Once the root is

Figure 3: Parent-son cell placement and its X and Y visibility graphs. Weights

are assigned to vertices according to sonsโ€™ width and height in target process.

Weights are assigned to arcs according to the space between the corresponding

son cells weighted by some scaling factor.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 18: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 18/70

 

11

reached the placement migration of the entire block is done and routing migration takes

 place.

The next sections present an efficient and accurate solution to the hierarchical wire

interlace problem, which ensures the solution of interconnect migration. It detectswhether the given cell area can accommodate certain layer routing requisites imposed by

the source layout, target process and performance specifications (via wire width and

space). If the answer is positive, the width and position of wires is committed, where net

connectivity is retained by stitching the wires of orthogonal layers to the ends of those

migrated. Such stitching is possible due to a strict methodology of using layers in

alternating routing directions. Then the next layer is verified. If however it is found that

the area available after placement cannot accommodate legal routing in a given layer, this

information is fed back to the placement algorithm for another iteration which accounts

for the discovered wire congestion, or some constraints are relaxed and left for later

resolution by manual work of a mask designer or by circuit fixes. This placement-routing

handshaking migration continues until all congestions are resolved and a committed

layout is produced. The flow in Figure 2 guarantees that the area, process technology rule

and performance constraints in the target design are under control, leaving low design

effort to reach convergence. The experiment in Section 5 demonstrates by how much

 performance constraints imposed on interconnects are met.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 19: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 19/70

 

12

3. 

THE INTERCONNECT MIGRATION ALGORITHM

3.1 

The Graph Model

The common method to represent the adjacency relation between interconnect features in

a layout is by a directed graph, where vertices represent polygons, and edges โ€“ the

visibility relations of polygons. For purposes of presentation, we limit our discussion

throughout to one layer; still, our solution to the layout migration problem can be

extended to the general case layout, with multipleโ€“layer layout. Independent treatment of

layers is possible because of the following reasons:

-  The layers are treated in sequential order โ€“ thus the changes to polygonsโ€™

coordinates of the layer n-1 are fixed by changing the length of the polygons

of layer n (which is orthogonal to n-1)-  Statistically the changes to polygons coordinates of the layer n-1 are

negligible relatively to the length of polygons of the layer n.

The layout produced by the algorithm is not expected to be clean: final routing

fixes to be done by either specific application or mask designers.

Figure 4 shows the oneโ€“layer layout with vertical routing orientation and the associated

visibility graph. In this case the compaction problem is translated into the longest path

 problem in a graph [7], [8], [23]. The algorithm for finding longest paths is also used for

 positive cyclesโ€™ detection, thus establishing the feasibility of the layout itself.

Figure 4: A one-layer layout and the associated

visibility graph   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 20: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 20/70

 

13

3.2 

Description of the Algorithm

The interconnect migration flow that is presented in this section is aimed to solve the

migration of routing from old technology to the new one for a single layer and satisfy the

requirements as stated below.

Given the layer interconnect (set of rectangles) at source manufacturing technology and

 blocksโ€™ sizing and placement (blocksโ€™ borders coordinates) at the target manufacturing

technology the flow generates a legal layer interconnect (set of rectangles) at the target

manufacturing technology that satisfies:

1.  Preserves the polygon order (derived from visibility relation)

2.  Preserve the hierarchical structure

3. 

Satisfy the new sizing and placement at the target manufacturing technology

4.  Satisfies the new manufacturing technology design rules

In the next section we prove the correctness of the flow subject to these requirements.

At the time the visibility graph is being built, the instances of subโ€“graphs of the same

hierarchy are marked; this information is used later in the  Merge  phase to obtain a

compact solution for the problem. Then, during the Reduce phase, we construct a concise

description of the compaction problem at each level of the hierarchy. Once solved, the

algorithm will transfer to the upper layout hierarchy levels only the data that is essential

for the upper level solutions. Note that this data represents a family of solutions, which in

turn will result in a related family of solutions at the upper levels.

At the end of this bottomโ€“up propagation of solutions, all the solutions are obtained at the

root of the hierarchical layout. The block diagram for the bottomโ€“up part of the flow is

 presented in Figure 5.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 21: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 21/70

 

14

 

The commitment of the exact locations of the interconnecting polygons takes place topโ€“ 

down (Figure 6). There, the decision of the polygons' locations at a certain level of the

hierarchy is made in order to optimize some objective function, reflecting circuit and

layout considerations. The specific solution thus obtained imposes constraints on the

solution family of its layout children. These are then being solved independently of each

other.

Figure 5: Bottom-up flow block diagram

Figure 6: Top-down flow block diagram

Build LP problem for Ri and obtain solution i* for

vertices of i;  i =  i

*โˆช i-1 

Foreach template i=1โ€ฆ N  in reversed hierarchical order

Initialize solution 0:

0: 

Return  N

Build

layout graph G=M 0

Merge all instances of template T i 

in merged graph M i-1 to  M i 

 R0= M  N  has positive

cycles? NoYes

Return false 

(positive cycles) 

Foreach template i=1โ€ฆ N  

Foreach template i=1โ€ฆ N  in hierarchical order

Return { Ri}1 N 

Reduce template T i 

in reduced graph Ri-1 to Ri

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 22: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 22/70

 

15

3.2.1  Construction of the Layout Graph

The first phase of the top down flow is the generation of a Flat Visibility Layout Graph

(FVLG) G  induced by the source layout (of the old manufacturing technology) and

 placement (of the new manufacturing technology). The FVLG will be formally defined

later. The generation of the graph is performed in two main phases: (1) visibility graph

construction and (2) addition of placement arcs.

The pseudo code for Phase 1 is presented in Figure 7. Every polygon or block border

 becomes a vertex of G. The arcs of G represent the visibility relation between the layout

features. The weights of the arcs are defined by the new technology design rules.

Roughly speaking, minimum space between any two layout features is the minimum

distance allowed by the manufacturing technology measured from the centers of those

features.

Phase 2 adds the arcs to the graph generated by Phase 1; the arcs represent the constraints

created by placement. For every instance, two arcs added to the graph: these two arcs

ensure that the size of the block remains equal to the size defined by placement. The

 pseudo code for Phase 2 is presented in Figure 8.

Figure 7: Construction of a Flat Layout Visibility Graph โ€“ pseudo code

1.   f or each el ( l ayout . pol ygons, l ayout . bor der s) {

2.   f l at Gr aph. addVer t ex( el )

3.   }

4.   f or each el ( l ayout . pol ygons, l ayout . bor der s) {

5.   f or each nb ( el . vi si bl eEl ement sOnRi ght ) {

/*Skip non-relevant relations*/

6.   i f ( el . i sBor der && nb. i sPol ygon && nb โˆ‰  el . i ns tance | |

nb. i sBor der && el . i sPol ygon && el โˆ‰  nbr . i nst ance)

cont i nue;

7.   f l at Gr aph. addAr c( el , nb, mi nSpace) ;

}

}

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 23: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 23/70

 

16

 

The example for FVLG generated by the pseudo code is given on Figure 9. Grey vertices

represent block borders; colored vertices represent polygons.

3.2.2 

 Merge

The next step in topโ€“down flow is the generation of a merged graph  M  from the Layout

Graph G; the aim is both to reduce the graph's complexity as well as to add the similarity

constraints between all instances of the same template.

Figure 8: Construction of placement arcs โ€“ pseudo code

Figure 9: A one-layer layout and the associated Flat Visibility Layout Graph: gray vertices

represent walls, blue and green โ€“ polygons, red arcs represent placement constraints

1.  f or each i nst ( pl acement . i nst ances ) {

/*arc from leftborder to rightborder;

wei ght equal s t o i nst ance wi dt h*/

2.   w = i nst . r i ght Bor der . coor d โ€“ i nst . l ef t Bor der . coor d;

3. 

f l at Gr aph. addAr c( i nst. l ef t Bor der , i nst . r i ght Bor der , w) ;4.   f l at Gr aph. addAr c( i nst. r i ght Bor der , i nst . l ef t Bor der , โ€“w) ;

}

AL 

BR

5

BL  1  2  ARBRBL

6   74 

3  1 2  3 

B  2 

15

  6   7

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 24: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 24/70

 

17

This is done iteratively for all the templates in reverse hierarchical order  (defined later)

from the leaf cells to the top cell, concentrating on one template at every iteration. All

occurrences of some polygon in the instances of the treated template are merged into a

single vertex. The weights of the arcs to/from the treated vertex are updated accordingly.

This significantly reduces the size of the graph on one hand, and ensures the similarity

 between all instances of the same template on the other hand.

The hierarchical order between the templates is defined by the containment relation: for

any two templates a ,b  define a<b    a โŠ† b.  The order can be obtained from the

topological order of the hierarchy graph as shown in Figure 10.

The pseudo code for the procedure mergeTemplateInstances  is presented in Figure 11.

This procedure is iteratively called for all templates in G, as shown in Figure 5. At the

 beginning of the phase, the vertices of the flat graph G  represent the occurrences of

 polygons. The aim of the Merge phase is to replace all vertices that represent the

occurrences of the same polygon by a single vertex. Denote by v(i)  the vertex that

represents the occurrence of some template vertex v  in instance i. First we add a new

vertex v  to the graph (Line 2); v  is a single vertex that will replace all the occurrences.

For every arc (u, v(i)) entering the occurrence vertex v(i) in instance i, a new arc is added

to the graph, to the newly introduced template vertex v, that represents the vertex v(i).

The weight of the new arc is decreased by the offset of the instance i of vertex v(i) (Line

7). The original arc is removed. Similarly, the arcs going from the vertex v(i) are replaced

(a) (b)

Figure 10: (a) The hierarchical layout and (b) the underlying hierarchy

graph. The hierarchy order is A,B,C,D,E.

A

B

C

E

DE

E

A

B

DC

E

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 25: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 25/70

 

18

 by arcs from v; the weight of those arcs are increased by the offset of the instance i (Line

10).

We prove later that the merged graph maintains the property of the original layout graph:

the feasible solution exists if and only if there are no positive cycles in the graph. Thus

the check of positive cycles can be done at this step on the smaller merged graph. Once

 positive cycles are detected, the layout does not have a feasible solution, and a false 

status is returned as in Figure 5. However, instead of termination, a relaxation can be

done at this step: some of constraints can be removed or relaxed. This will produce a

 partially legal layout that is ready for further usage (e.g.  performance verification

analysis), depending on project requirements.

Figure 11: Merge phase โ€“ pseudo code

proc mergeTempl ateI nst ances( graph, t empl ate) {

1.   f or each ver t ex ( t empl at e. ver t i ces ) {

2.   gr aph. addVer t ex(ver t ex) ;

}

3.   f or each i nst ( t empl at e. i nst ances ) {

4.   f or each t empV ( t empl ate. vet i ces ) {

5.   i nst V โ†  i nst ance. get Ver t ex( t empl at eV. name) ;

6.   f or each e ( i nst anceV. i nAr cs) {

7. 

gr aph. addAr c( e. ver t ex1, t empV,e. wei ght โ€“ i nst . of f set ) ;

8.   gr aph. r emoveAr c( e) ;

}

9.   f or each e ( i nst anceV. out Ar cs) {

10.   gr aph. addAr c( t empV, e. ver t ex2,

e. wei ght +i nst. of f set ) ;

11.   gr aph. r emoveAr c( e) ;

}

12. 

gr aph. r emoveVer t ex( i nst anceV) ;

}

}

}

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 26: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 26/70

 

19

 

 Note that the size of the FVLG is proportional to the size of the whole layout, whereas

the size of the merged graph is proportional to the sum of sizes of the design templates. In

a hierarchical design the latter is significantly smaller than the FVLG we started with.

3.2.3 

 Reduce

The next phase of the flow is a construction of sequence of graphs called reduced graphs 

 โ€“ one for every template. This phase is also performed iteratively for all the templates in

reverse hierarchical order (from the leaf cells to the top cell), considering a single

template at a time. At each iteration, while treating the template t , all vertices that belong

to t   are removed from the graph. For every pair of arcs of a vertex v  that is being

removed, one entering v  โ€“ say (u, v)  โ€“ and one leaving v, (v, w),  a new arc (u, w) is

created with a weight that equals the sum of the weights of the two arcs (Line 5). The

 procedure reduceTemplateInstances is presented in Figure 13. During the Reduce phase

this procedure is iteratively called for all the templates in the design in template

hierarchical order. The graph generated by procedure reduceTemplateInstances  after

reducing template B in Merged Graph from Figure 12 is presented in Figure 14.

Figure 12: Merged graph โ€“ generated by Merge onLayout Graph G 

AL 

BR

5

BL 

1 2

AR 

6 74

3

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 27: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 27/70

 

20

 

3.2.4  Exact Solution Construction

The next step is the derivation of the exact locations (coordinates) of the interconnect

 polygons. This is done by a topโ€“down flow, iterating on templates in a hierarchical order

 โ€“ from the topโ€“level block to leaf cells, see Figure 6. At each iteration, the coordinates of

all the polygons of treated templates are derived. The linear programming problem is

 being built from the reduced graph: every variable represents the polygon coordinate and

Figure 13: Reduce template โ€“ pseudo code

Figure 14: Reduced graph โ€“ generated by reduceTemplateInstances 

reducing template B from Layout Graph G 

pr oc r educeTempl at eI nst ances( gr aph, t empl ate) {

1.   r educedGr aph โ†  gr aph;

2.   f or each ver t ex ( t empl at e. ver t i ces) {

3.   f or each i nAr c ( ver t ex. i nAr cs) {

4. 

f or each out Ar c ( ver t ex. out Ar cs) {

5.   r educedGr aph. addAr c( i nAr c. ver t ex1,

out Ar c. ver t ex2, i nAr c. wei ght +out Ar c. wei ght ) ;

}

}

6.   f or each ar c ( ver t ex. i nAr cs, ver t ex. out Ar cs) {

7.   r educedGr aph. r emoveAr c( arc) ;

}

8.   r educedGr aph. r emoveVert ex( ver t ex) ;

}

9.   r etur n r educedGr aph;

}

AL 

5   AR 

6 74

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 28: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 28/70

 

21

a constraint represents the arc. The solution of the LP problem determines the location of

the polygons.

Figure 15 presents the pseudo code for the LP problem construction from the reduced

graph. At every iteration, the inductive property is that the polygons of the templates that precede the treated template in hierarchical order are already treated, i.e. all the polygons

of those templates already derived their location. This information is used in the

generation of constraints in lines 2โ€“7: the coordinates of the polygons are stored in an

array called SOL; polygons which coordinates that have not yet been calculated are

represented by โˆ….

The solution of the LP that is constructed in the previous stage contains the coordinates

of the polygons in the template. In the next section we present the proof that a solution

always exists and it is feasible, i.e.  the layout is legal in terms of new manufacturing

technology design rules. Note that the size of the LP problem is bounded quadratically by

the number of template polygons; this follows directly from the fact that the number of

variables is the number of template polygons and all constraints involve at most 2

variables.

Figure 15: Exact solution derivation โ€“ pseudo code

1.   f or each e (gr aph. ar cs) {

2.   i f ( SOL[e. ver t ex1] =โˆ…  && SOL[ e. ver t ex2] =โˆ…)

3.   addConst r ai nt ( e. ver t ex2โ€“e. ver t ex1 โ‰ฅ  e. wei ght ) ;

4.   el se i f ( SOL[e. ver t ex1] =โˆ…  && SOL[ e. ver t ex2] โ‰ โˆ…)

5.   addConst r ai nt ( SOL[ e. ver t ex2] โ€“e. ver t ex1 โ‰ฅ  e. wei ght ) ;

6.   el se i f ( SOL[ e. ver t ex1] โ‰ โˆ…  && SOL[ e. ver t ex2] โ‰ โˆ…)

7.   addConst r ai nt ( e. ver t ex2โ€“SOL[ e. ver t ex1] โ‰ฅ  e. wei ght ) ;

}

8.   LPsol ver . sol ve( ) ;

9. 

f or each ver t ex ( get Ver t i ces( gr aph) )10.   i f ( SOL[ver t ex] =โˆ…)

11.   SOL[ ver t ex] โ†  LPsol ver Sol ut i on( ver t ex)

}

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 29: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 29/70

 

22

 

(a) (b)

Figure 16: (a) Reduced Graph - the numbers next to vertices represent

the coordinates for the vertices that already obtained the solution.(b) Constructing an LP problem from the graph.

v1 โ€“ 0 โ‰ฅ 0

v1 โ€“ 33 โ‰ฅ -31

46 โ€“ v1 โ‰ฅ 44

v2 โ€“ v1 โ‰ฅ 3

v2 โ€“ 46 โ‰ฅ -31

22 โ€“ v2 โ‰ฅ 6

33 โ€“ v2 โ‰ฅ 7

v3 โ€“ v2 โ‰ฅ 4

v3 โ€“ 22 โ‰ฅ 4

30 โ€“ v3 โ‰ฅ 0

33 โ€“ v3 โ‰ฅ 7

74 โ€“ v3 โ‰ฅ 46AL 

BR

 5

BL 

1 2

AR

6 74

3

8046

30

74

0

0

22 33

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 30: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 30/70

 

23

4. 

CORRECTNESS OF THE INTERCONNECT MIGRATION

ALGORITHM

In this section we prove the following properties of the algorithm presented in section 3:

โ€ข 

If the layout has a feasible solution, the algorithm will return one.

โ€ข 

Any feasible solution can be derived using the algorithm (depending on the objective

function used in the LP problemโ€™s solution).

โ€ข  The solution returned by the algorithm represents a legal layout and satisfies the

requirements that were stated in Section 3.2.

This section is organized as follows. We start with a formal definition of a layout and its

 properties in Section 4.1. Then we define graphs that are derived from the layout and its

 properties. This is followed by a proof of the equivalence between graph and layout

 properties that are stated in Propositions 1โ€“3. In Section 4.2 we present the definitions

related to the bottomโ€“up routing migration algorithm, and prove its invariants in

Propositions 4โ€“8. We conclude with definitions related to the exact solution derivation

 part of the routing migration algorithm, and prove its properties in Propositions 9 and 10.

Lemmas 1 and 2 capture the main results of this chapter.

4.1 

Layouts and Graphs

Definition 1: A layout  L is a hierarchical tree, where every node is an instance of some

 template, containing a set of polygons (rectangles).

Here we define only a oneโ€“layer routing as a layout (see Figure 1).

Definition 2: Given a layout L, the layout solution ฯƒ of L is a function ฯƒ  : V   โ„œ where

V  is a set of polygons (rectangles) and instances' borders in  L and ฯƒ ( p) is the coordinate

of p.

The coordinate of a polygon is the coordinate of its center. The coordinate (offset ) of an

instance is the coordinate of its left border, as shown on Figure 17.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 31: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 31/70

 

24

 

 Note that the layout solution ฯƒ  of a layout L is feasible if it satisfies all spacing rules, i.e. 

for any 2 elements u, vโˆˆV  we have

ฯƒ (v)โ€“ ฯƒ (u) โ‰ฅ spacing_rule( L, u, v).

Definition 3: A feasible layout solution ฯƒ of a layout L preserves the hierarchy structure 

if for any 2 instantiations v1 and v2 of the same element v the following holds:

ฯƒ (v1) โ€“ ฯƒ (v2) = ฯƒ (instance(v1)) โ€“ ฯƒ (instance(v2)).

We have already presented the  Flat Visibility Layout Graph  (FVLG) in the previous

section. Below we give a formal definition for it.

Definition 4: Given a layout L, a graph G(V G, E 

G) is a Flat Visibility Layout Graph if it

satisfies:

(1) 

V G={polygons and instance borders in L}

(2)  u, v are polygons that are visible to each other in the layout โ‡’ (u, v) โˆˆ  E G; W (u, v) is

defined by the layout rules.

(3)  u is a left border of instance i and v is a polygon of instance i โ‡’ (u, v) โˆˆ E 

G; W (u, v)

is defined by the layout rules.

(4)  v is a right border of instance i and u  is a polygon of instance i โ‡’ (u, v) โˆˆ E 

G; W (u, v)

is defined by the layout rules.

(5) 

u, v are the right and left borders respectively of 2 instances in the same hierarchy

that are visible to each other โ‡’ (u, v)โˆˆ E G; W (u, v) is defined by the layout rules.

(6)  u is a left border of instance i and v is a right border of the same instance โ‡’ (u, v)

โˆˆ E G; W (u, v) = width of instance i.

Figure 17: Coordinates of an instance i and

polygons in vertically oriented layout.

i 1 2

ฯƒ (1) ฯƒ (2)offset (i)

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 32: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 32/70

 

25

(7) 

u is a right border of instance i and v is a left border of the same instance โ‡’ (u, v)

โˆˆ E G; W (u, v) = โ€“width of instance i.

(8)  u is a left border of instance i and v is a left border of instance j such that j is a direct

son of i โ‡’ (u, v)โˆˆ E G; W (u, v) is defined by the placement of j in i.

(9)  u  is a right border of instance i and v  is a right border of instance  j such that  j  is a

direct son of i โ‡’ (u, v)โˆˆ E G; W (u, v) is defined by the placement of j in i.

Definition 5: Let G(V G,  E 

G) be a FVLG for a given layout  L. The graph  H (V 

 H ,  E 

 H ) is a

 Hierarchy Constrained Graph (HCG) of the layout L if it satisfies:

โ€ข  V 

 H  = V 

โ€ข   E  H 

 =  E G โˆช {(u, v)| u and v are different instantiations of the same polygon, W (u, v) =

offset between the two instances that contain u and v respectively}.

Definition 6: The arc (u, v) is a  template similarity arc of the template  t   if u and v are

different instantiations of the same polygon of template t .

Denote by LPW(G, u, v) the weight of the longest path between vertices u and v in G. If

there is an arc between the vertices u  and v  in G, the weight of the arc is denoted by

W(G, u, v), or simply W(u, v) when the graph is clear from the context. For a path

uโ€ฆv we denote by W(G, uโ€ฆv) the weight of the path; in this case the graph G 

can also be omitted if it is clear from the context.

Figure 18: (a) A layout and (b) the underlying Flat Visibility Layout Graph.

A

AL  BRBL  1 2   AR BR BL 1 2

B1 2

B1 2

(a)

(b)

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 33: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 33/70

 

26

 

Definition 7: Given a FVLG G(V G, E 

G), the graph solution ฯ„   for G is a function ฯ„  : V   

โ„œ. A graph solution ฯ„   is feasible if for any two vertices u, v we have:

LPW(G, u, v) โ‰ค ฯ„ (v) โ€“ ฯ„ (u).

Since we identify between the layout elements (polygons and cell borders) and graph

vertices, we can also identify between the layout solution and the graph solution.

Propositions 1โ€“3 below capture the equality between the properties of layouts and the

associated graphs, as summarized in Table 1.

Proposition 1: A layout L has a feasible solution โ‡” its FVLG G has a feasible solution.

Moreover, ฯƒ  is a feasible solution for L โ‡” ฯƒ is a feasible solution for G.

Proof :

โ‡’: Let ฯƒ  be a feasible solution for the layout L. Let G be FVLG for L. We will show that

ฯƒ  is also a feasible solution for G. 

Let u, v be 2 vertices in G. It is required to show that LPW(G, u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u). We

will show this by induction on the number of vertices N  in the path uโ€ฆv.

If  N =1, there is an arc uv  in G. It was created by rules 2โ€ฆ8 of Definition 4 and the

weight defined by the polygonโ€™s width, its placement or the layout rule. Since the layout

Figure 19: (a) A layout and (b) the underlying Hierarchy Constrained Graph.

โ€w  โ€w 

A

B1 2

B1 2

w  w 

AL  BRBL  1  2   AR BR BL   1 2

w

(a)

(b)

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 34: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 34/70

 

27

is legal, all layout rules, width and placement constraints hold and thus ฯƒ (v)โ€“ ฯƒ (u) โ‰ฅ 

W(u,v); this means that for any path of length 1 (single arc) we have: LPW( G, u, v) โ‰ค 

ฯƒ (v) โ€“ ฯƒ (u).

 Now we assume the correctness for  N   and prove for  N +1. Let uโ€ฆwv  be a path

from u to v of length of N +1; the induction hypothesis implies: LPW(G, u, w) โ‰ค ฯƒ (w) โ€“

ฯƒ (u) and LPW(G, w, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (w). For every longest path in G of length โ‰ค  N +1 the

induction hypothesis implies that LPW(G, u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u); thus ฯƒ  is a feasible graph

solution for G.

โ‡: Let ฯƒ  be a feasible solution for G. Clearly LPW(G, u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u) โ‡’ W(u,v) โ‰ค 

ฯƒ (v)โ€“ ฯƒ (u); thus all the layout rules hold by construction of G. Hence ฯƒ   is a feasible

layout solution for L.

Q.E.D.

Proposition 2: A layout L has a feasible solution that preserves the hierarchy structure โ‡” 

its HCG has a feasible solution. Moreover, ฯƒ  is a feasible solution for L that preserves the

hierarchy structure โ‡” ฯƒ  is a feasible solution for H .

Proof :

โ‡’: Let ฯƒ  be a feasible solution that preserves the hierarchy structure for the layout  L.

Let  H   be a hierarchy constrained graph for  L. We will show that ฯƒ   is also a feasible

solution for G.

The only change from Proposition 1is that we need to show the basis of the induction: for

any arc (u,v) between two instantiations of the same element W(u,v) โ‰ค ฯƒ (v)โ€“ ฯƒ (u). By the

construction of  H : W(u,v)=offset between the two instances that contain u  and v,

respectively. ฯƒ   preserves the hierarchy structure โ‡’ ฯƒ (v) โ€“ ฯƒ (u)= offset between the 2

instances that contain u and v, respectively; thus W(u,v) = ฯƒ (v) โ€“ ฯƒ (u);

โ‡: Let ฯƒ   be a feasible solution for the HCG of the layout  L. From Proposition 1 it

follows that ฯƒ   is also a feasible solution for  L. We will show that ฯƒ  also preserves the

hierarchy structure. We need to show that for any 2 instantiations u, v  of the same

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 35: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 35/70

 

28

element the following holds: ฯƒ (v)โ€“ ฯƒ (u) = ฯƒ (instance(v))โ€“ ฯƒ (instance(u)). By the

construction of H the following holds:

(1)  ฯƒ (instance(v)) โ€“ ฯƒ (instance(u)) = W(u,v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u)

(2) 

ฯƒ (instance(u)) โ€“ ฯƒ (instance(v)) = W(v,u) โ‰ค ฯƒ (u) โ€“ ฯƒ (v) โ‡’ 

ฯƒ (instance(v)) โ€“ ฯƒ (instance(u)) โ‰ฅ ฯƒ (v) โ€“ ฯƒ (u)

Thus from (1) and (2), ฯƒ (instance(v)) โ€“ ฯƒ (instance(u))= ฯƒ(v) โ€“ ฯƒ(u).

Q.E.D.

Proposition 3: Given a HCG  H  of the layout  L, a feasible solution exists for  H  โ‡” no

 positive cycles exist in H .

Proof:

โ‡’: Let ฯƒ  be a feasible solution for  H . Proof by contradiction: assume that uโ€ฆvu 

is a positive cycle. Since ฯƒ   is feasible, ฯƒ (v) โ€“ ฯƒ (u) โ‰ฅ LPW( H , u, v); also ฯƒ (u) โ€“ ฯƒ (v) โ‰ฅ 

LPW( H , v, u); Thus the total length of the given positive cycle is

LPW( H , u, v) + LPW( H , v, u) โ‰ค ฯƒ (v) โ€“ ฯƒ (u) + ฯƒ (u) โ€“ ฯƒ (v) = 0; Contradiction.

โ‡: For every vโˆˆV  define ฯƒ (v)=LPW( H , top_left_border, v). Let u, v โˆˆ H .

We need to show that LPW( H , u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u).

LPW( H , top_left_border, v) โ‰ฅ LPW(H, top_left_border, u)+ LPW( H , u, v)

ฯƒ (v)โ‰ฅฯƒ (u)+ LPW( H , u, v).

LPW( H , u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u).

Q.E.D.

Table 1: Equivalence between the properties of layouts and graphs

Layout Legal Legal and preserves hierarchy structure

Graph  No positive cycles in FVLG No positive cycles in HCG   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 36: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 36/70

 

29

4.2 

The Algorithm's Invariants

We continue with a presentation of the main invariants of the Merge and Reduce phases.

Once the hierarchical order for the templates is defined, w.l.o.g.  we can rename the

templates of the layout to 1,โ€ฆ, N  starting from the leafs to the top level template.

4.2.1  Merge

As presented in the top level flow in Figure 5, the procedure mergeTemplateInstances is

iteratively applied to the FVLG.

Definition 8: An i โ€“  Merged Layout Graph is a FVLG after exactly i calls to the procedure

mergeTemplateInstances. The  N  โ€“  Merged Layout Graph  is called the  Merged Layout

Graph.

Definition 9: Let G(V G

,  E G

) be a FVLG for a given layout  L, and t  some template in  L.The graph H =(V 

 H , E 

 H ) is a t โ€“  Hierarchy Constrained Graph of the layout L if it satisfies:

โ€ข  V 

 H  = V 

โ€ข   E  H 

 = E G โˆช {(u, v)| (u, v) is a template similarity arc of t }

Definition 10: Let G(V G, E 

G) be a FVLG for a given layout L. The graph H (V 

 H , E 

 H ) is an

i โ€“  Hierarchy Constrained Graph  0 โ‰ค i โ‰ค  N  of the layout L if it satisfies:

โ€ข 

V  H 

 = V G 

โ€ข 

 E 

 H 

 = E 

G

 โˆช {(u, v)| โˆ€ j  1โ‰ค jโ‰คi (u, v) is a template similarity arc of j} Note that the 0 โ€“ hierarchy constrained graph of layout L is a FVLG of L; the N  โ€“ hierarchy

constrained graph of layout L is a HCG of L (where N  is the number of templates in L).

โˆ€i, the i โ€“  Hierarchy Constrained Graph  H i(V i, E i) of layout L and a the HCG H (V  H , E 

 H )

of L satisfy: V i=V  H 

, E 0โŠ†โ€ฆโŠ† E i โ€“ 1โŠ† E i= E  H 

.

Propositions 4 and 5 capture the main invariant of the Merge phase. They claim that at

every step of Merge, the weight of the longest path between a pair of vertices in the

i โ€“  Merged Layout Graph equals to that in the i โ€“  Hierarchy Constrained Graph. 

We prove the relation โ‰ค  between the weights of the longest paths in  Merged Layout

Graph and Hierarchy Constrained Graph in Proposition 4a and relation โ‰ฅ in Proposition

4b; we conclude the equality in proposition 4.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 37: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 37/70

 

30

Proposition 4a: Given  are a layout graph  G(V G,  E 

G), some template t , a t  โ€“hierarchy

constrained graph H t (V  Ht 

, E  Ht 

) of G, and a merged graph M (V  M 

, E  M 

) generated from G by

the procedure mergeTemplateInstances applied to template t . Let u, vโˆˆV  M 

 so that u, vโˆˆt .

Let i  be an instance of t   and u(i), v(i)โˆˆV  Ht 

  are instantiations of u, v, respectively, in

instance i. The following holds:โˆ€u, vโˆˆt  โˆ€i  LPW( M , u, v) โ‰ค LPW( H t , u(i), v(i)).

Proof :

We will pick one of the longest paths between u and v in  M  and find a path in  H t  of the

same length. Let ฯ€ =u x1 x2โ€ฆ xnv be the path that we picked. We will construct

the path ฯ€ โ€™  in H t  and show that its length is at least equal to that of ฯ€ .

We will show the correctness by induction on the number of template vertices in the path,

i.e. m = |{ x jโˆˆฯ€ | 1โ‰ค jโ‰คn, x jโˆˆt }|.

Basis: m = 0: โˆ€ j  x jโˆ‰t .

There are 2 cases: x1=v (the path is uv) and x1โ‰ v.

Case x1=v. The arc (u(i), v(i)) exists in G and thus it exists in  H t . The weight of the arc,

while being added to the merged graph M , was changed twice: once by adding the offset

of instance i (line 10 of mergeTemplateInstances) since the arc is an output of u(i)โˆˆi, and

then by subtracting the offset of instance i (line 7 of mergeTemplateInstances) since the

arc is an input of v(i)โˆˆi; thus the weight of the arc in G is the same and the weight of arc

(u(i), v(i)) in H t  is at least the same.

Case x1โ‰ v. By the construction of M , there exists an instance iโ€™  so that arc (u(iโ€™ ), x1)โˆˆ E G,

and the weight of the arc changed exactly once by subtracting the offset of instance i (line

7 of mergeTemplateInstances) since the arc is an output of u(iโ€™ )โˆˆiโ€™ : W(u, x1) = W(u(iโ€™ ),

 x1) + offset(iโ€™ ).

By the construction of  M , there exists an instance iโ€™โ€™  so that arc ( xn, v(iโ€™โ€™ ))โˆˆ E G, and the

weight of the arc changed exactly once by adding the offset of instance iโ€™โ€™   (line 10 of

mergeTemplateInstances) since the arc is an input of v(iโ€™โ€™ )โˆˆiโ€™โ€™ : W( xn, v) = W( xn, v(iโ€™โ€™ )) โ€“

offset(iโ€™โ€™ ).

Thus โˆ€ j  x jโˆ‰t   the path  x1 x2โ€ฆ xn  exists in G, and all the arcs in the path are

unchanged.

 Note that H t  contains the template similarity arcs of t .

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 38: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 38/70

 

31

Hence (u(i), u(iโ€™ ))โˆˆ H t  and (v(iโ€™โ€™ ), v(i))โˆˆ H t :

W(u(i), u(iโ€™ ))=(offset(iโ€™ )-offset(i)), W(v(iโ€™โ€™ ), v(i))=(offset(i) โ€“ offset(iโ€™โ€™ )).

In case iโ€™ =i, W(u(i), u(i))=(offset(i)-offset(i))=0, the same holds if iโ€™โ€™ =i.

Let us calculate the weight of path u(i)u(iโ€™ ) x1 x2โ€ฆ xnv(iโ€™โ€™ )v(i) in H t :

W(u(i), u(iโ€™ )) + W(u(iโ€™ ), x1) + LPW( x1 x2โ€ฆ xn) + W( xn, v(iโ€™โ€™ )) + W(v(iโ€™โ€™ ), v(i))

= (offset(iโ€™ ) โ€“ offset(i)) + (W(u, x1) - offset(iโ€™ )) + LPW( x1 x2โ€ฆ xn) + (W( xn, v) +

offset(iโ€™โ€™ )) + (offset(i) โ€“ offset(iโ€™โ€™ )) = W(u, x1) + LPW( x1 x2โ€ฆ xn) + W( xn, v).

This is exactly the weight of the longest path in M.

Until now we proved the basis of the induction, we continue with the step.

We assume the correctness for every path u x1 x2โ€ฆ xnv that satisfies

|{ x j| 1โ‰ค jโ‰คn, x jโˆˆt }| < m, and prove for mโ‰ฅ1.

Let ฯ€ =u x1 x2โ€ฆ xnv be the longest path in  M  so that |{ x jโˆˆฯ€ | 1โ‰ค jโ‰คn, x jโˆˆt }| = m.

Since m>0, there exists wโˆˆt  so that the path is ฯ€ =u x1 x2โ€ฆwโ€ฆ xnv.

Clearly the path ฯ€ 1=u x1 x2โ€ฆw  is the longest path in  M   between u  and w 

(otherwise we can find a longer path in M between u  and v). The Same holds for

ฯ€ 2=wโ€ฆ xnv.

Thus the induction hypothesis holds for both paths ฯ€ 1  and ฯ€ 2 meaning

LPW( M , u, w) โ‰ค LPW( H t , u(i), w(i))

LPW( M , w, v) โ‰ค LPW( H t , w(i), v(i))

Figure 20: The path in Ht. Similarity arcs are in red.

Blue represents the path x1  x 2 โ€ฆ  x n 

ii

  u(i) v(i)

  iโ€™

  u(iโ€™) v(iโ€™)

  iโ€™โ€™

  u(iโ€™โ€™  ) v(i

โ€™โ€™  )

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 39: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 39/70

 

32

Thus LPW( M , u, v) = LPW( H t , u(i), w(i)) + LPW( M , w, v) โ‰ค LPW( H t , u(i), v(i))

Q.E.D.

Proposition 4b: Given  are a layout graph  G(V G,  E 

G), some template t , a t  โ€“hierarchy

constrained graph H t (V  Ht 

, E  Ht 

) of G, and a merged graph M (V  M 

, E  M 

) generated from G by

the procedure mergeTemplateInstances applied to template t . Let u, vโˆˆV  M 

 so that u, vโˆˆt .

Let i  be an instance of t   and u(i), v(i)โˆˆV  Ht   are instantiations of u, v, respectively, in

instance i. The following holds:โˆ€u, vโˆˆt  โˆ€i  LPW( M , u, v) โ‰ฅ LPW( H t , u(i), v(i)).

Proof :

We will pick one of the longest paths between u(i) and v(i) in H t  and find a path in M  of

at least the same length. Let u(i) x1 x2โ€ฆ xnv(i) be the longest path in H t .

We shall show the claim by induction on the number of template vertices included in the

longest path, m = |{ x j| 1โ‰ค jโ‰คn, x jโˆˆt }|

Basis: m=0.

There are 2 cases: x1=v (the path is u(i)v(i)) and x1โ‰ v(i).

Case x1=v. By the construction of M  the arc (u, v) exists in G and thus it exists in M . The

weight of the arc, while being added to the merged graph was changed twice: once by

adding the offset of instance i (line 10 of mergeTemplateInstances) since the arc is an

output of u(i)โˆˆi  and then by subtracting the offset of instance i  (line 7 of

mergeTemplateInstances) since the arc is an input of v(i)โˆˆi. Thus the weight of the arc in

 M  is at least the same as in G. Since (u(i), v(i)) is not a template similarity arc, it is same

in G and H t .

Case  x1โ‰ v. By the construction of  M , the weight of arc (u(i),  x1)โˆˆ E G  changed exactly

once by adding the offset of instance i (line 10 of mergeTemplateInstances) since the arc

is an output of u(i)โˆˆi: W(u, x1) = W(u(i), x1) + offset(i).

By the construction of M , the weight of arc ( xn, v(i)) changed exactly once by subtracting

the offset of instance i  (line 7 of mergeTemplateInstances) since the arc is an input of

v(i)โˆˆi: W( xn, v) = W( xn, v(i)) โ€“ offset(i).

Since โˆ€ j   x jโˆ‰t   the number of template similarity arcs is 0, the path

u(i) x1 x2โ€ฆ xk v(i) exists in G  and belongs to the same instance. By the

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 40: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 40/70

 

33

construction of M , all the paths from u(i) to v(i) exist in M . Since โˆ€ j  x jโˆ‰t  the weights of

arcs ( x j, x j+1) are unchanged.

Let us calculate the weight of the path u x1 x2โ€ฆ xnv in M :

W( M , u x1 x2โ€ฆ xnv) = W( M , u,  x1) + W( M ,  x1 x2โ€ฆ xn) + W( M ,  xn, v) =

(W(G, u(i), x1) + offset(i)) + W(G, x1 x2โ€ฆ xn) + (W(G, xn, v) โ€“ offset(i)) = W(G,

u(i), x1) + W(G, x1 x2โ€ฆ xn) + W(G, xn, v(i)) = W(G, u(i) x1 x2โ€ฆ xnv(i))

This is exactly the weight of the path in Ht.

Until now the basis of the induction was proven; we continue with the step.

Assume the correctness for every path u(i) x1 x2โ€ฆ xnv(i) so that |{ x j| 1โ‰ค jโ‰คn,

 x jโˆˆt }| < m, and prove for mโ‰ฅ1.

Let ฯ€ =u(i) x1 x2โ€ฆ xnv(i) be the longest path ฯ€ in H t  so that |{ x j| 1โ‰ค jโ‰คn, x jโˆˆt }| =

m.

Let ( xk , xk+1) be the first template similarity arc in the path. Clearly,  xk โˆˆiโ€™  and xk +1โˆˆiโ€™โ€™  are

instantiations of the same vertex w in instances iโ€™  and iโ€™โ€™ , respectively, which are โ€“ in turn

 โ€“ instances of t .

Let us introduce a new path ฯ€ โ€™  in H t  with at least the same weight as ฯ€ :

u(i) x1โ€ฆ xk w(i) xk+1โ€ฆ xnv(i)

W( H t  , xk w(i) xk+1) = W( H t  , xk , w(i)) + W( H t  , w(i),  xk+1) = offset(i) โ€“ offset(iโ€™ ) +

offset(iโ€™โ€™ ) โ€“ offset(i) = W( H t  , xk , xk+1).

 Now divide the path ฯ€ โ€™  into 2 paths: u(i) x1โ€ฆ xk w(i) and

w(i)xk+1โ€ฆxnv(i). Both of them satisfy |{ x j| 1โ‰ค jโ‰คn, x jโˆˆt }| <m.

Clearly path u x1 x2โ€ฆw(i) is a longest path in M  between u and w (otherwise we

can find a longer path in M  between u and v). The same holds for w(i)โ€ฆ xnv.

Thus induction hypothesis holds for both paths u x1 x2โ€ฆw  and wโ€ฆ xnv,

meaning

LPW( M , u, w) โ‰ฅ LPW( H t , u(i), w(i))

LPW( M , w, v) โ‰ฅ LPW( H t , w(i), v(i))

LPW( M , u, v) โ‰ฅ LPW( M , u, w) + LPW( M , w, v) โ‰ฅ LPW( H t , u(i), v(i));

Q.E.D.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 41: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 41/70

 

34

Proposition 4: Given  are a layout graph  G(V G,  E 

G), some template t , a t  โ€“hierarchy

constrained graph H t (V  Ht 

, E  Ht 

) of G, and a merged graph M (V  M 

, E  M 

) generated from G by

the procedure mergeTemplateInstances applied to template t . Let u, vโˆˆV  M 

 so that u, vโˆˆt .

Let i  be an instance of t   and u(i), v(i)โˆˆV  Ht 

  are instantiations of u, v, respectively, in

instance i. The following holds:โˆ€u, vโˆˆt  โˆ€i  LPW( M , u, v) = LPW( H t , u(i), v(i)).

Proof : Follows directly from Propositions 4a and 4b.

Proposition 4 claims the equality between the weights of the longest paths in  Merged

 Layout Graph and Hierarchy Constrained Graph between a pair of vertices u, vโˆˆV  M 

 so

that u, vโˆˆt  for a template t  treated by procedure mergeTemplateInstances. In Proposition

5 we prove the same property for a pair of vertices u, vโˆˆV  M 

 so that u, vโˆ‰t for a template t  

treated by procedure mergeTemplateInstances.

We prove the relation โ‰ค  between the weights of the longest paths in  Merged Layout

Graph and Hierarchy Constrained Graph in Proposition 5a and relation โ‰ฅ in Proposition

5b; we conclude the equality in proposition 5.

Proposition 5a: Given are a layout graph  G(V G,  E 

G), some template t , a t  โ€“hierarchy

constrained graph H t (V  Ht 

,  E  Ht 

) of G, and a merged graph  M (V  M 

,  E  M 

) generated from G 

 by procedure mergeTemplateInstances applied to template t. Let u, vโˆˆV  M 

 so that u, vโˆ‰t .

The following holds: โˆ€u, vโˆ‰t   LPW( M , u, v) โ‰คLPW( H t , u, v).

Proof : Let u x1 x2โ€ฆ xk v be the longest path in M  between u and v.

There are 2 cases:

1. โˆ€ j 1โ‰ค jโ‰คk    x jโˆ‰t  โ‡’ the same path exists in G and all the arcs in the path are unchanged

(see mergeTemplateInstances).

2. โˆƒ j  1โ‰ค jโ‰คk    x jโˆˆt . Denote the first vertex in the path that belong to t   by a  and the last

vertex in the path that belong to t  by b. So the path is

u x1โ€ฆ xnaโ€ฆb y1โ€ฆ ymv, โˆ€ j  x j, y jโˆ‰t  

By the construction of  M , there exists an instance iโ€™   so that arc ( xn, a(iโ€™ ))โˆˆ E G, and the

weight of the arc changed exactly once by subtracting the offset of instance iโ€™  (line 7 of

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 42: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 42/70

 

35

mergeTemplateInstances) since the arc is an input of v(iโ€™ )โˆˆiโ€™ : W( xn, a) = W( xn, a(iโ€™ )) -

offset(iโ€™ ).

By the construction of  M , there exists an instance iโ€™โ€™  so that arc (b(iโ€™ ),  y1)โˆˆEG, and the

weight of the arc changed exactly once by adding the offset of instance iโ€™โ€™   (line 10 of

mergeTemplateInstances) since the arc is an output of b(iโ€™โ€™ )โˆˆiโ€™โ€™ : W(b, y1) = W(b(iโ€™โ€™ ), y1)

+ offset(iโ€™โ€™ ).

Using Proposition 4a there exists a path in  H t  a(iโ€™ )โ€ฆ b(iโ€™ ) so that LPW( M , a, b) โ‰ค 

LPW( H , a(iโ€™ ), b(iโ€™ )).

In addition, there is an arc (b(iโ€™ ), b(iโ€™โ€™ ))โˆˆ H : W(b(iโ€™ ), b(iโ€™โ€™ ))=(offset(iโ€™โ€™ )-offset(iโ€™ )).

 Now let us calculate the weight of the path

u x1โ€ฆ xna(iโ€™ )โ€ฆb(iโ€™ )b(iโ€™โ€™ ) y1โ€ฆ ymv in H t  :

LPW( H t , u, v) โ‰ฅ LPW( H t , u,  xn) + W( H t ,  xn, a(iโ€™ )) + LPW( H t , a(iโ€™ ), b(iโ€™ )) + W( H t , b(iโ€™ ),

b(iโ€™โ€™ )) + W( H t , b(iโ€™โ€™ ), y1) + LPW( H t , ym, v) โ‰ฅ 

โ‰ฅ LPW( M , u,  xn) + W( M ,  xn, a) + offset(iโ€™ ) + LPW( M , a, b) + (offset(iโ€™โ€™ )-offset(iโ€™ )) +

W( M , u, y1) โ€“ offset(iโ€™โ€™ ) + LPW( M , ym, v) = LPW( M , u, v).

Q.E.D.

Proposition 5b: Given are a layout graph  G(V G,  E 

G), some template t , a t  โ€“hierarchy

constrained graph H t (V  Ht 

,  E  Ht 

) of G, and a merged graph  M (V  M 

,  E  M 

) generated from G 

Figure 21: The path in Ht. Similarity arc is red.

Blue represents the paths x1 โ€ฆ  x n and y1 โ€ฆ  y m 

i

iโ€™

  a(iโ€™) b(iโ€™)

  iโ€™โ€™

  a(iโ€™โ€™  )

u

v

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 43: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 43/70

 

36

 by procedure mergeTemplateInstances applied to template t . Let u, vโˆˆV  M 

 so that u, vโˆ‰t .

The following holds: โˆ€u, vโˆ‰t   LPW( M , u, v) โ‰ฅLPW( H t , u, v).

Proof : Let ฯ€ =u x1 x2โ€ฆ xk v be the longest path in H t  between u and v.

There are 2 cases:

1. โˆ€ j 1โ‰ค jโ‰คk    x jโˆ‰t  โ‡’ the same path exists in G and all the arcs in the path are unchanged

(see mergeTemplateInstances).

2. โˆƒ j 1โ‰ค jโ‰คk    x jโˆˆt . Denote the first vertex in the path that belongs to t  by a(iโ€™ ) and the last

vertex in the path that belongs to t  by b(iโ€™โ€™ ); a(iโ€™ ) and b(iโ€™โ€™ ) belong to the instances of t  iโ€™  

and iโ€™โ€™  respectively. So the path is

ฯ€ =u x1โ€ฆ xna(iโ€™ )โ€ฆb(iโ€™โ€™ ) y1โ€ฆ ymv,  x j, y jโˆ‰t

Since there are arcs b(iโ€™โ€™ )b(iโ€™ ) and b(iโ€™ )b(iโ€™โ€™ ) in H t , let us introduce a new path ฯ€ โ€™  in

 H t  with the same weight as ฯ€ :

ฯ€ โ€™=u x1โ€ฆ xna(iโ€™ )โ€ฆb(iโ€™โ€™ )b(iโ€™ )b(iโ€™โ€™ ) y1โ€ฆ ymv,  x j, y jโˆ‰t  

W(b(iโ€™โ€™ ),b(iโ€™ )) + W(b(iโ€™ ),b(iโ€™โ€™ )) = offset(iโ€™ ) โ€“ offset(iโ€™โ€™ ) + offset(iโ€™โ€™ ) โ€“ offset(iโ€™ ) = 0

By the construction of  M , there exists an arc ( xn, a)โˆˆ E 

 M 

, and the weight of the arcchanged exactly once by subtracting the offset of instance iโ€™   (line 7 of

mergeTemplateInstances) since the arc is an input of v(iโ€™ )โˆˆiโ€™ : W( xn, a) = W( xn, a(iโ€™ )) -

offset(iโ€™ ).

Figure 22: The path in Ht 

Blue represents the paths x1 โ€ฆ  x n and y1 โ€ฆ  y m 

i

iโ€™

  a(iโ€™)

iโ€™โ€™

  a(iโ€™โ€™  ) b(i

โ€™โ€™  )

u

v

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 44: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 44/70

 

37

By the construction of  M , there exists an instance iโ€™โ€™   so that arc (b,  y1)โˆˆ E T , and the

weight of the arc changed exactly once by adding the offset of instance iโ€™โ€™   (line 10 of

mergeTemplateInstances) since the arc is an output of b(iโ€™โ€™ )โˆˆiโ€™โ€™ : W(b, y1) = W(b(iโ€™โ€™ ), y1)

+ offset(iโ€™โ€™ ).

Using Proposition 4b there exists a path in  H t   aโ€ฆb  so that LPW( M , a, b) โ‰ฅ 

LPW( H t , a(iโ€™ ), b(iโ€™ )).

Let us calculate the weight of the path in M :

ฯ€ โ€™=u x1โ€ฆ xna(iโ€™ )โ€ฆb(iโ€™โ€™ )b(iโ€™ )b(iโ€™โ€™ ) y1โ€ฆ ymv  :

LPW( H t , u, v) = LPW( H t , u, xn) + W( H t , xn, a(iโ€™ )) + LPW( H t , a(iโ€™ ), b(iโ€™ )) + W( H t , b(iโ€™ ),

b(iโ€™โ€™ )) + W( H t , b(iโ€™โ€™ ), y1) + LPW( H t , y1, v) โ‰ค 

LPW( M , u,  xn) + W( M ,  xn, a) + offset(iโ€™ ) + LPW( M , a, b) + offset(iโ€™โ€™ ) โ€“ offset(iโ€™ ) +

W( M , b, y1) โ€“ offset(iโ€™โ€™ ) + LPW( M , y1, v) โ‰ค LPW( M , u, v).

Q.E.D.

Proposition 5: Given are a layout graph  G(V G,  E 

G), some template t , a t  โ€“hierarchy

constrained graph H t (V  Ht 

,  E  Ht 

) of G, and a merged graph  M (V  M 

,  E  M 

) generated from G 

 by procedure mergeTemplateInstances applied to template t . Let u, vโˆˆV  M 

 so that u, vโˆ‰t .

The following holds: โˆ€u, vโˆ‰t   LPW( M , u, v) = LPW( H t , u, v).

Proof : Follows directly from Propositions 5a and 5b.

Proposition 6 follows from Propositions 4 and 5 by induction on the number of iterations. 

Proposition 6: Given are a HCG  H  of the layout  L and a merged graph M  generated by

the Merge phase. Let u, vโˆˆM so that u, vโˆˆt  for some template t . Let i be an instance of t  

and u(i), v(i)โˆˆ H  are instantiations of u  and v, respectively, in instance i. The following

holds: โˆ€u, vโˆˆt  โˆ€i  LPW( M , u, v) = LPW( H , u(i), v(i)).

Proof :

We will prove by induction on number n of calls to mergeTemplateInstances as presented

in Figure 5.

Basis: for n=0, M = H  and we are done.

Induction hypothesis: Let M n be the n-merged graph after n iterations of loop 3-5.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 45: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 45/70

 

38

IH1. For any template t , if t  has already been treated by mergeTemplateInstances, then

โˆ€u, vโˆˆt  โˆ€i  LPW( M n, u, v) = LPW( H , u(i), v(i)).

Where i  is an instance of template t   and u(i), v(i)โˆˆ H   are instantiations of u  and v,

respectively, in instance i.

IH2: For any template t , if t  was not treated by mergeTemplateInstances, then โˆ€u, vโˆˆt  โˆ€i 

LPW( M n, u(i), v(i)) = LPW( H , u(i), v(i)).

Step: Let M n+1

 be the (n+1)-Merged Graph.

1. There are 2 cases:

a. Let t   be some template that was already treated by mergeTemplateInstances,

 before iteration n+1 and u, vโˆˆt.

We will show that โˆ€i  LPW( M n+1

, u, v) = LPW( H , u(i), v(i)).

Since t  was already treated before the iteration started, Proposition 5 implies

โˆ€i  LPW( M n+1

, u, v) = LPW( M n, u, v).

By IH1, โˆ€i  LPW( M n, u, v) = LPW( H , u(i), v(i)).

Thus โˆ€i  LPW( M n+1, u, v) = LPW( H , u(i), v(i)).

 b. Let t  be some template that is treated by mergeTemplateInstances in iteration

n+1 and u, vโˆˆt.

We shall show that โˆ€i  LPW( M n+1

, u, v) = LPW(H, u(i), v(i)).

Since t   was treated in iteration n+1, By Proposition 4 โˆ€i  LPW( M n+1, u, v) =

LPW( M n, u(i), v(i)).

By IH2, โˆ€i  LPW( M n, u(i), v(i)) = LPW( H , u(i), v(i)).

Thus โˆ€i  LPW( M n+1, u, v) = LPW( H , u(i), v(i)).

2. Let t   be some template that was not treated by mergeTemplateInstances, before/in

iteration n+1 and u, vโˆˆt.

Will show โˆ€u, vโˆˆt  โˆ€i  LPW( M n, u(i), v(i)) = LPW( H , u(i), v(i)).

By Proposition 5 โˆ€u, v  that are not in a treated template holds: LPW( M n+1, u, v) =

LPW( M n, u, v),

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 46: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 46/70

 

39

Thus LPW( M n+1

, u(i), v(i)) = LPW( M n, u(i), v(i)),

By IH2, โˆ€i  LPW( M n, u(i), v(i)) = LPW( H , u(i), v(i)).

Hence โˆ€i  LPW( M n+1

, u, v) = LPW( H , u(i), v(i)).

Q.E.D

Corollary1: A layout L has a feasible solution that preserves a hierarchy structure โ‡” its

merged graph M  does not contain positive cycles.

Proof:

(1) By Proposition 2  L has a feasible solution that preserves a hierarchy structure โ‡” its

HCG H  has feasible solution.

(2) By Proposition 3 feasible solution exists for HCG  H  of the layout  L โ‡” no positive

cycles exists in H .

(3) By Proposition 6 โˆ€u, vโˆˆt  โˆ€i  LPW( M , u, v) = LPW( H , u(i), v(i)); thus positive cycles

exist in H  โ‡” positive cycles exist in M .

Thus using (1), (2), and (3), the layout  L has feasible solution that preserves hierarchy

structure โ‡” its merged graph M  does not contain positive cycles.

Q.E.D.

Corollary 1 implies that returning false on the presence of positive cycles in the merged

graph is safe.

4.2.2  Reduce

As presented by the top level flow in Figure 5, the procedure reduceTemplateInstances is

iteratively applied to merged graphs in the template hierarchical order.

Definition 11: An i โ€“  Reduced Layout Graph  is a graph returned by

reduceTemplateInstances after exactly i calls to it.

Proposition 7 captures the invariant of the Reduce phase: the longest path weight between

a pair of vertices in the graph.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 47: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 47/70

 

40

Proposition 7: Given a layout graph G(V G,  E 

G) and a reduced layout graph  R(V 

 R,  E 

 R)

generated by a single invocation of procedure reduceTemplateInstances  on G, the

following holds:โˆ€ u, v โˆˆV  R

 LPW( R, u, v) = LPW(G, u, v).

Proof : By induction on the number of iterations of loop 2-8. Denote by  Ri  the reduced

graph after the i-th iteration of the loop. Note, that at every loop iteration exactly one

vertex (with all it incident arcs) is removed and some other arcs are added to the graph.

Basis: after 0 iterations, R0 equals to G since nothing was changed.

Induction hypothesis: For any 2 vertices u, v โˆˆ Ri-1

, the following holds: LPW( Ri-1

, u, v) =

LPW(G, u, v). We shall show the correctness for Ri.

Let r  be the vertex that is going to be reduced at the step i.

First we will show that LPW( Ri, u, v) โ‰ฅ LPW(G, u, v)

Let u= x1 x2โ€ฆ xk =v be the longest path between u and v in Ri-1.

If โˆ€ j  x jโ‰ r  all the vertices and arcs in the path remain exactly as in  Ri-1

. Thus LPW( Ri, u,

v) โ‰ฅ LPW( Ri-1, u, v) = LPW(G, u, v).

Otherwise โˆƒ j  x j=r . So the path is

u= x1โ€ฆ xnr  y1โ€ฆ ym=v,  x j,  y jโ‰ r . (We assume that there are no loops in the

 path).

As in line 5 of reduceTemplateInstances for the pair of arcs ( xn, r ) and (r , y1) the new arc

( xn, y1) is added to the graph:

W( Ri, xn, y1) = W( R

i-1, xn, r ) + W( R

i-1, r , y1).

Thus there is a path in Ri u= x1โ€ฆ xn y1โ€ฆ ym=v, and

LPW( Ri, u, v) โ‰ฅ LPW( R

i, u,  xn) + W( Ri,  xn,  y1) + LPW( R

i,  y1, ym) = LPW( Ri-1, u,  xn) +

W( Ri-1

, xn, r ) + W( Ri-1

, r , y1)+ LPW( Ri-1

, y1, ym) = LPW( Ri-1

, u, v)=LPW(G, u, v).

It is left to show that LPW( Ri, u, v) โ‰ค LPW(G, u, v)

Let u= x1 x2โ€ฆ xk =v be the longest path between u and v in Ri.

Since there are no loops in the path, there is at most one arc that does not exist in Ri-1

.

If all the arcs in the path are unchanged (i.e. the same path exists in G), we are done.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 48: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 48/70

 

41

Otherwise, the path is x1โ€ฆ xn y1โ€ฆ ym. (Here we assume that there are no loops

in the path).

As in line 5 of reduceTemplateInstances the arc ( xn, y1) is added to the graph when a pair

of arcs ( xn, r ) and (r , y1) is removed so that:

W( Ri, xn, y1) = W( R

i-1, xn, r ) + W( R

i-1, r , y1);

there exists a path in Ri-1

: u= x1โ€ฆ xnr  y1โ€ฆ ym=v; and

LPW(G, u, v) = LPW( Ri-1

, u, v) โ‰ฅ  LPW( Ri-1

, u,  xn) + W( Ri-1

,  xn, r ) + W( Ri-1

, r ,  y1) +

LPW( Ri-1

, y1, ym) = LPW( Ri, u, xn) + W( R

i, xn, y1) + LPW( R

i, y1, ym)= LPW( R

i, u, v).

Q.E.D

Proposition 8 follows directly from Proposition 7 by induction on the number of

iterations of reduceTemplateInstances. 

Proposition 8: Given a layout L, a merged graph M (V  M 

, E  M 

) of L, and an i-reduced graph

 Ri(V  Ri

, E  Ri

), we have โˆ€u, v โˆˆV  Ri

 LPW( Ri, u, v) = LPW( M , u, v).

Proof : By induction on i.

Basis: The 0-Reduced Layout Graph R0 is exactly the merged graph M .

Induction hypothesis: For any two vertices u, v โˆˆ Ri-1 the following holds: LPW( Ri-1, u, v)

= LPW( M , u, v). We will show the correctness for Ri.

Step: By Proposition 7, LPW( Ri-1, u, v) = LPW( Ri, u, v), and using the induction

hypothesis LPW( Ri, u, v) = LPW( M , u, v).

Q.E.D

Corollary 2: Given a layout L, a merged graph M  of the layout L, and a reduced graph R,

โˆ€u, v โˆˆV  R

LPW( R, u, v) = LPW( M , u, v).

Proof : immediate from Proposition 8, since a reduced graph is an N -reduced graph by its

definition.

4.2.3 

 Exact Solution Construction

We continue with the derivation of the exact solution phase. This phase proceeds in

iterations, a single template at a time.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 49: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 49/70

 

42

Definition 12: An i โ€“  Partial Solution for a flat visibility layout graph G is a function ฯƒ i :V i 

โ„œ so that V i is the set of all the vertices that have an exact solution exactly as after the

ith

 iterations of the topโ€“down flow. These are the vertices that represent polygons of the

templates 1,โ€ฆ,i  in the order defined by the templateโ€™s hierarchical order.

 Note that the phase starts with ฯƒ 0  for V 0= {all the borders of all the instances} and it

finishes with an  N  โ€“partial solution which is a layout solution. Proposition 9 captures a

single step of the exact solution derivation. It is shown later that the solution always

exists and it is obtained from the solution derivation phase. We will start by proving a

generic property of directed graphs in Proposition 9a, which is then used in Proposition 9.

Proposition 9a: Given a directed weighted graph G=(V , E ) with weights w: E โ„œ+, and

non-negative function f : V โ„œ+, let ฯ€ =v1โ€ฆvk  be a path in G, and w(ฯ€ )=ฮฃw(vi, vi+1)

 be a weight of the path.

Then w(ฯ€ )โ‰ค  f (vk ) โ€“ f (v1) iff โˆ€(u,v)โˆˆ E   โ‡’  w(u, v) โ‰ค  f (v) โ€“ f (u)

Proof:

โ‡’ Obvious

โ‡ By induction on the length of the path ฯ€ .

Basis for ฯ€ =uv: clearly (u,v)โˆˆ E , thus w(ฯ€ )=w(u,v) โ‰ค  f (v) โ€“ f (u).

Induction hypothesis: For any ฯ€ =v1โ€ฆvk  of length k โ‰คn, assume w(ฯ€ )โ‰ค f (vk ) โ€“ f (v1).

Step: Let k =n+1. Define ฯ€ โ€™ = v1โ€ฆvk-1 and ฯ€ โ€™โ€™ = vk-1โ€ฆvk .

By the induction hypothesis w(ฯ€ โ€™ )โ‰ค f (vk-1) โ€“ f (v1) and w(ฯ€ โ€™โ€™ )โ‰ค f (vk ) โ€“ f (vk-1).

w(ฯ€ ) = w(ฯ€ โ€™ )+w(ฯ€ โ€™โ€™ ) โ‰ค  f (vk-1) โ€“ f (v1) + f (vk ) โ€“ f (vk-1) = f(vk ) โ€“ f(v1).

Q.E.D.

Proposition 9: If an i โ€“partial solution for a merged graph M  of layout L is obtained from

the exact solution derivation phase (as presented on Figure 15) at iteration i  โ€“ it is a

feasible solution of the merged graph M  of L.

Proof :

Let ฯƒ i be an i-partial solution for G.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 50: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 50/70

 

43

We will show the correctness by induction on i.

Basis: i=0, V 0=โˆ…, thus of course partial solution is feasible solution for M .

Induction hypothesis: assumption of correctness for all i < k ;

Step: Using Proposition 9a it is enough to show that for every two vertices u, vโˆˆV , so that

(u,v)โˆˆ E , ฯƒ k (v) โ€“ ฯƒ k (u) โ‰ฅ W( M , u, v).

By the induction hypothesis ฯƒ k-1  is a feasible solution of  M.  Thus โˆ€u, vโˆˆV k-1

, ฯƒ k (v) โ€“

ฯƒ k (u) โ‰ฅ W( M , u, v). w.l.o.g  v โˆ‰ V k-1.

There are 2 cases: uโˆˆV k-1

 and uโˆ‰V k-1

.

1.  In case uโˆˆV k-1

, u  has already obtained an exact solution and, as in line 7, the

constraint added to the LP solver for the arc (u, v) is ฯƒ k (v) โ€“ ฯƒ k-1(u) โ‰ฅ W( M , u, v).

Sinceฯƒ 

k (u)=ฯƒ 

k-1(u) thusฯƒ 

k (v) โ€“ ฯƒ k (u)โ‰ฅ

 W( M , u, v), and we are done.2.  In case uโˆ‰V 

k-1, during the LP generation, as in line 3, the constraint is generated for

the arc (u, v), and thus the solution of the LP (if it exists โ€“ the existence is shown

later) will satisfy:

ฯƒ i(v) โ€“ ฯƒ i(u) โ‰ฅ W( M , u, v).

Q.E.D

Corollary 3:  If a solution for the merged graph  M   of layout  L  is obtained from the

solution derivation phase at iteration i โ€“ it is a feasible solution of the merged graph  M  of

 L.

Proof:  immediate from Proposition 9, since a solution is an  N -partial solution by its

definition.

Proposition 10 states that it is possible to extend in iteration i  every partial solution

generated in iteration iโ€“1.

Proposition 10:  M  is a merged graph of layout L that does not contain positive cycles.

For any feasible (i โ€“ 1) โ€“partial solution for a merged graph  M   that is obtained from the

exact solution derivation phase at iteration iโ€“1, there exists an i โ€“partial solution for the

merged graph M , and it can be obtained at iteration i.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 51: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 51/70

 

44

Proof:

We will show the existence of a solution by construction. At iteration i, for any vertex v,

define the solution ฯƒ i(v) as follows:

ฯƒ i(v)= max{LPW( Ri, u, v) + ฯƒ i-1(u) | uโˆˆV i-1

} if vโˆ‰Vi-1

ฯƒ i(v)= ฯƒ i-1(v) otherwise

 Note that since M  does not contain positive cycles by Proposition 8, Ri does not contain

 positive cycles and thus LPW( Ri, u, v) < โˆž.

It is left to show that ฯƒ i is feasible, i.e. by Proposition 9a it satisfies โˆ€u, v ฯƒ i(v) โ€“ ฯƒ i(u) โ‰ฅ 

W( M , u, v).

Assume in contradiction that there exist u, v so that ฯƒ i(v) โ€“ ฯƒ i(u) < W( M , u, v).

Clearly, since ฯƒ i-1 is feasible, either vโˆ‰V i-1 or uโˆ‰V 

i-1 or u, vโˆ‰V i-1.

There are 3 cases:

1. uโˆˆV i-1, vโˆ‰V 

i-1 

By Proposition 8, LPW( Ri, u, v) = LPW( M , u, v), thus

ฯƒ i(v)= max{LPW( M , u, v) + ฯƒ i-1(u) | uโˆˆV i-1

} and thus ฯƒ i(v)โ‰ฅ LPW( M , u, v) + ฯƒ i-1(u), and

thus ฯƒ i(v)- ฯƒ i-1(u)โ‰ฅ W( M , u, v).

By definition ฯƒ i(u)=ฯƒ i-1(u) and thus ฯƒ i(v)- ฯƒ i(u)โ‰ฅ W( M , u, v).

2. uโˆ‰V i-1

, vโˆ‰V i-1

 

By Proposition 8, LPW( Ri, u, v) = LPW( M , u, v), thus ฯƒ i(u)= max{LPW( M , s, u) + ฯƒ i-1( s) |

 sโˆˆV i-1

}.

Let sโ€ฆu be the longest path chosen for ฯƒ i(u). Clearly sโ€ฆuv is a path.

By Proposition 8, LPW( Ri, u, v) = LPW( M , u, v), thus

ฯƒ i(v)= max{LPW( M ,  s, v) + ฯƒ i-1( s) |  sโˆˆV i-1} โ‰ฅ  max{LPW( M ,  s, u) + ฯƒi-1( s) |  sโˆˆV 

i-1} +

W( M , u, v) = ฯƒi(u) + W( M , u, v)

and thus ฯƒ i(v)- ฯƒ i(u) โ‰ฅ W( M , u, v).

3. uโˆ‰V i-1, vโˆˆV 

i-1.

By Proposition 8, LPW( Ri, u, v) = LPW( M , u, v), thus ฯƒ i(u)= max{LPW( M , s, u) + ฯƒ i-1( s) |

 sโˆˆV i-1

}.

Let sโ€ฆu be the longest path chosen for ฯƒ i(u). Note that sโˆˆV k-1. Clearly sโ€ฆuv 

is a path in Ri.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 52: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 52/70

 

45

 Note that ฯƒ i-1 is feasible for  M  and thus ฯƒ i-1(v) โ‰ฅ max{LPW( M , s, v) + ฯƒ i-1( s) |  sโˆˆV i-1

} โ‰ฅ 

max{LPW( M , s, v) + ฯƒ i-1( s) | sโˆˆV i-1} + W( M , u, v) = ฯƒ i(u) + W( M , u, v).

By definition ฯƒ i(v)=ฯƒ i-1(v) and thus ฯƒ i(v)- ฯƒ i(u)โ‰ฅ W( M , u, v).

Q.E.D

Corollary 4: A solution for a merged graph  M   that does not contain positive cycles

always exists and is constructed by exact solution derivation phase.

Proof : immediate from Proposition 10, since a solution is an  N -partial solution by its

definition.

Lemma 1: If the layout  L has a feasible solution that preserves the hierarchy structure,

the flow returns a solution ฯƒ that is feasible for the HCG H  of L.

Proof :

(1) The layout  L has a feasible solution that preserves the hierarchy structure. Thus, by

Corollary 1 for the merged graph M  generated from the HCG H , its merged graph M  does

not contain positive cycles.

(2) By Corollary 3, the solution ฯƒ   for the merged graph  M   is a feasible solution of the

merged graph M . 

(3) By Corollary 4, solution ฯƒ   for the merged graph  M   that does not contain positive

cycles can always be obtained.

Thus, using (1), (2), and (3), the flow always returns the solution ฯƒ , which is feasible for

the merged graph M , i.e. 

โˆ€t โˆˆtemplates( L), โˆ€u, vโˆˆt   ฯƒ (v) โ€“ ฯƒ (u) = LPW( M , u, v).

By Proposition 6 for the merged graph M  generated from the HCG H ,

โˆ€t โˆˆtemplates( L), โˆ€u, vโˆˆt  โˆ€i  LPW( M , u, v) = LPW( H , u(i), v(i)), and we are done.

Q.E.D.

The lemma below states that any feasible solution can be derived using the algorithm

(depending on the objective function used in the LP problem formulation).

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 53: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 53/70

 

46

Lemma 2: For any feasible solution ฯƒ  that preserves the hierarchy structure for a given

layout  L there exists an objective function  F  so that the flow will construct a solution ฯƒ 

for L.

Proof :

Let ฯƒ   be a feasible solution for  L. We shall show that ฯƒ   can be derived in an exact

solution derivation phase for some objective function F by induction on i for an i-Solved

Layout Graph.

Define the linear objective function F  for some solution ฯ• :

 F (ฯ• ) = ฮฃ(vโˆˆV ) diff(v)

where diff = |ฯƒ -ฯ• | and it can be written as the LP constraints:

diff(v) โ‰ฅฯƒ (v) โ€“ ฯ• (v)

diff(v) โ‰ฅ ฯ• (v) โ€“ ฯƒ (v)

Observation: โˆ€v, diff(v) โ‰ฅ0 โ‡’  F โ‰ฅ0.

We will show that the flow will construct a solution ฯ•   so that  F (ฯ• )=0. Clearly in that

case ฯ• =ฯƒ . We will show this by induction on the solution construction process.

Basis: By Proposition 2 ฯƒ   is a feasible solution for the HCG  H  of layout  L and thus is

equal to the 0-partial solution ฯƒ 0  for all the vertices V 0  that are already defined in ฯƒ 0 

(borders).

Induction hypothesis: Assume that the (i โ€“1)-Partial Solution ฯ• i-1 can be obtained for the

objective function F  so that ฯ• i-1 is equal to ฯƒ  for all vertices in V i-1

.

Step: will show that i-Partial Solution ฯƒ i can be obtained for objective function F  so that

ฯƒ i is equal to ฯƒ  for all vertices in V i. 

 Note that V i \ V 

i-1 = V Ti which are vertices that represent exactly the polygons of instances

of template Ti.

Define ฯ• *:V Ti  โ„œ the solution of all the vertices that represent polygons of instances of

template Ti so that โˆ€vโˆˆV Ti ฯ• *(v) = ฯƒ (v).

As part of chooseExactSolution procedure, an LP problem is built and solved by the LP

solver.

We need to show 2 items:

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 54: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 54/70

 

47

1. The solution ฯ• * is feasible for the LP solver, i.e. it satisfies all the constraints sent to

the LP solver.

2. The solution ฯ• * is optimal: i.e. any other solution ฮฑ  โ‰  ฯ• * will satisfy F(ฮฑ )> F (ฯ• *).

From the claims above it will follow that the solution obtained from the LP solver is ฯ• * 

and due to the definition of ฯ• * this will conclude the proof.

We start with 1: Let constraint c  be any one of the constraints sent to the LP solver.

w.l.o.g. the constraint is โ€œarc.vertex2 - arc.vertex1 >= arc.weightโ€ for some arc.

ฯƒ  is a feasible solution that preserves the hierarchy structure for L, thus by Proposition 6

it is a feasible solution for M , and by Proposition 8 ฯƒ  is a feasible solution for Ri. Thus ฯ• * 

satisfies all the constraints generated from Ri and is feasible.

To show 2 we will assume that the solution ฮฑ  for vertices V i obtained from the LP solver

is not equal to ฯ• *  for some vertex vโ€™ . Meaning that diff(vโ€™ )>0. Since โˆ€v  diff(v) โ‰ฅ  0,

 F (ฯƒ )โ‰ฅdiff(vโ€™ )>0. However F (ฯƒ )=0 by the definition of F . Thus ฮฑ  is suboptimal.

Q.E.D.

Corollary 5: The flow satisfies the requirements as stated in Section 3.2

Proof :

1.  Lemma 1 implies that the solution ฯƒ  returned by the flow is feasible for the HCG H  of

 L; thus ฯƒ   is a feasible solution for  L  that preserves the hierarchy structure by

Proposition 2. A feasible solution ฯƒ   satisfies: LPW(G, u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u) and in

 particular it preserves the visibility relation (wires order).

2.  ฯƒ  preserves the hierarchical structure, as stated in 1.

3.  ฯƒ  is a feasible solution and thus ฯƒ  satisfies: โˆ€u, vโˆˆV  LPW(G, u, v) โ‰ค ฯƒ (v) โ€“ ฯƒ (u). In

 particular for u  and v  that are left and right borders of an instance i, respectively.

Since by construction of the FVLG there are 2 arcs (u, v) and (v, u) so that

W(u, v) = โ€“W (v, u) = width(i) we have: 

width(i) โ‰ค ฯƒ (v) โ€“ ฯƒ (u)

 โ€“width(i) โ‰ค ฯƒ (u) โ€“ ฯƒ (v)

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 55: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 55/70

 

48

This implies that ฯƒ (v) โ€“ ฯƒ (u) = width(i) and thus ฯƒ   satisfies the new sizing and

 placement at the target manufacturing technology.

4. 

By the construction of the FVLG, every design rule is represented by an arc ( u, v) so

that W(u, v) = design_rule. ฯƒ   is a feasible solution and thus ฯƒ   satisfies: โˆ€u, vโˆˆV  

LPW(G, u, v) โ‰ค  ฯƒ (v) โ€“ ฯƒ (u). In particular ฯƒ (v) โ€“ ฯƒ (u) โ‰ฅ  design_rule and thus ฯƒ  

satisfies the new manufacturing technology design rules.

Q.E.D.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 56: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 56/70

 

49

5. 

EXPERIMENTAL RESULTS

We implemented the algorithm and ran tests, based on real designs of industrial

microprocessors for a 65nm technology migrating to a 45 nm technology. Several data

 path blocks data path comprising a few thousand nets each were migrated. The target

delay of every signal was set to 0.7 of its delay in the original design. Wire widths and

line-to-line spaces specifications have then been derived from the Elmore delay model

[23] based on the electrical parameters of the new process technology. The migration

algorithm was applied, where positive cycles have been resolved by relaxing wire width

and space specifications. As a result, the delay of some nets was degraded. Figure 13

 plots the new delays vs. the old ones for one typical block (test id 3). Notice that most of

the delays were scaled around 0.7. Of special importance are the encircled data points:

they represent nets of significant delays which have been badly scaled. This is where

most of the further manual design effort is invested in order to reach design convergence.

Destination Layout vs Source Layout Net Delays

0

10

20

30

40

50

60

70

80

0 20 40 60 80 100 120

Source Layout Net Delay

   D  e  s   t   i  n  a   t   i  o  n   L  a  y  o  u   t

   N  e   t   D  e   l  a

 

Figure 23: Destination Layout vs. Source Layout Net Delays. Encircled data points

represent nets of significant delays which have been badly scaled

The computational complexity of migrating a few of the blocks is summarized in Table 1

and Figure 14. The plot presents the size of the merged graphs and normalized run-times

as a function of the flat graph's size. The number of flat graph vertices is given on the

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 57: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 57/70

 

50

horizontal axis; the size of the merged graph (number of vertices/edges) is presented on

the left vertical axis; normalized run-times are given on the right vertical axis. As can be

seen, the size of the merged graph is an order of magnitude smaller than that of the flat

graph.

Table 2 : Tests statistics โ€“ size of graphs and runtimes

0

500

1000

1500

2000

2500

3000

0

50

100

150

200

250

300

350

0 20 40 60 80

   R  u  n   t   i  m  e   [  s   ]

   N  u  m   b  e  r  o   f   E   l  e  m  e  n   t  s

   T   h  o  u  s  a  n   d

  s

#FlatGraph Vertices Thousands

Merged Graph VerticesMerged Graph Edges

Flat Graph Edges

Runtime

 

Figure 24: Tests statistics - size of graphs and runtime

Test

id

Flat

#vertices

Flat

#edges

Merged

#vertices

Merged

#edges

LP problem

max #variables

Runtime

[s]

%nets

scaled <0.7

1  1511 5755 499 2249 302 7 98.3

2  2064 8456 1687 7130 598 11 97.1

3  4457 16890 1253 6101 434 313 98.4

4  12928 55892 2535 19524 386 244 95.8

23020 106554 4683 40334 1561 1167 97.9

29714 109212 4205 16255 1173 676 97.6

45964 177946 5963 24928 1308 1532 95.9

8  62944 248915 7850 44963 1277 2099 98.4

9  73005 294479 9455 63737 1420 2560 98.2

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 58: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 58/70

 

51

6. 

DISCUSSION AND FUTURE RESEARCH

We have shown that compaction of interconnect for purposes of layout migration can be

 performed efficiently while preserving the layout hierarchy. We have devised a data

structure, the reduced layout graph that captures the constraints of the original visibility

layout graph, and an algorithm that handles them properly. The significant savings were

demonstrated on real data.

The next step would be to incorporate circuit design considerations into a process that

employs our methodology. Since we use linear programming (LP) as the primary

underlying solution engine, some further investigation into the type of optimization

criteria that can be accommodated might be necessary.

Finally, LP does not handle discretization requirements gracefully. At extreme

dimensions this is necessary and might require integer programming solutions, which in

turn could present further algorithmic and complexity challenges.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 59: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 59/70

 

52

7. 

REFERENCES

[1]  Intel roadmap stretches from quad cores to mobile Internet, EE Times, May 2007. 

[2]  AMD discloses 12-core server chip, Times, May 2008. 

[3] 

T.S. Perry, Gordon Mooreโ€™s next act , IEEE Spectrum on-line, May 2008.

[4] 

 International Technology Roadmap for Semiconductors home page, 

http://www.itrs.net

[5]  Intelโ€™s Tick-Tock Model , http://www.intel.com/technology/tick-tock/index.htm.

[6] R. Nitzan and S. Wimer, AMPS and SiClone integration for implementing 0.18um to

0.13um design migration, Synoposys Users Group (SNUG) Conf., San Jose CA,

March 2002.

[7]  M. Reinhardt, Automatic Layout Modification: Including Design Reuse of the Alpha

CPU in 0.13 Micron Soi Technology, Kluwer Academic Publishers, 2002

[8] 

T. Lengauer, Combinatorial Algorithms for Integrated Circuit Layout , John Wiley,

1990.

[9] C.S. Bamji, M. Berkens, A. B. Kahng, C. Strolenberg, Automated Layout and

 Migration in Ultra-Deep Submicron VLSI , 36th

 Design Automation Conf. 1999.

[10] 

M. Lefebvre, D. Marple, C. Sechen, The Future of Custom Cell Generation in

 Physical Synthesis, Proc. 34th Design automation Conf., pp 446-451, 1997.

[11]   N. Matsumoto, et. al., Datapath Generator Based on Gate-Level Symbolic Layout ,

Proc. 27th Design automation Conf., pp 388-393, 1990.

[12]  J.L. Burns, A.R. Newton, Efficient Constraint Generation for Hierarchical

Compaction, IEEE International Conference on Computer Design, pp. 197-200, Oct.

1987.

[13]  J.L. Burns, J A. Feldman, C5M - A Control-Logic Layout Synthesis System for

 High-Performance Microprocessors, IEEE Trans. On CAD of Integrated Circuits and

Systems, Vol. 17, No. 1, 1998, pp. 14-13.

[14]  M Berkens, R Ravikumar, Minimizing layout hot spots at the 45-nm node, EE

Times, July 2007. 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 60: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 60/70

 

53

[15]  S-Z. Yao, C-K. ChengT, D. Dutt, S. Nahar, C-Y. Lo, Cell-Based Hierarchical

 Pitchmatching Compaction Using Minimal LP , 30th

 Design Automation Conf., 1993,

 pp.395 โ€“ 400. 

[16]  L-Y. Wang, Y-T Lai, Constraints Graph-Theory-Based Simplex Algorithm for

VLSI Layout Spacing Problems with Multiple Variables, IEEE Trans. On CAD of

Integrated Circuits and Systems, Vol. 20, No. 8, 2001, pp. 967 โ€“ 979. 

[17]  J. Cong, Z. Pan, Wire width planning for interconnect performance optimization,

IEEE Trans. On CAD of Integrated Circuits and Systems, Vol. 21, No. 3, 2002, pp.

319 โ€“ 329. 

[18] 

 N. Hanchate, N. Ranganathan, A Game-Theoretic Framework for Multimetric

Optimization of Interconnect Delay, Power, and Crosstalk Noise During Wire Sizing ,

ACM Transactions on Design Automation of Electronic Systems, Volume 11 , Issue

3 (July 2006), pp. 711 - 739

[19]  Simultaneous, n-level hierarchical layout compaction, process migration and

 physical optimization. http://www.sagantec.com/SiClone.pdf.

[20]  D. Marple,  A hierarchy preserving hierarchical compactor , Proc. 27th

ACM/IEEE Design Automation Conference, pp. 375-381, 1990.

[21]  W. Rulling, T Schilz,  A New Method for Hierarchical Compaction, IEEE

Transactions on Computer-aided design, Vol. 12, No. 2, pp. 353-360, Feb. 1993.

[22]  A. Mlynsky and C.-H. Sung,  Layout Compaction, in Layout Design and

Verification. T.Ohtsuki (Ed.), Ch. 6, pp. 199-235, North Holland, 1986.

[23]  W.C. Elmore, The Transient Analysis of Damped Linear Networks with

 Particular Regard to Wideband Amplifiers, J. Applied Physics, vol. 19(1), 1948.

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 61: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 61/70

 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 62: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 62/70

V

 

Destination Layout vs Source Layout Net Delays

0

10

20

30

40

50

60

70

80

0 20 40 60 80 100 120

Source Layout Net Delay

   D  e  s   t   i  n  a   t   i  o  n   L  a  y  o  u   t   N  e   t   D  e   l  a

 

ืขื’ืœื™ื ืžืฉื•ืœ ื™ื ื™ืขื™ืœื” ื™ื—ืกื™ืช ืœืฉื™ื˜ื•ืช ื”ืงื™ื™ืžื•ืช ืž ืœื™ืฉื”ืฉื™ื˜ื” ืฉื”ื•ืฆื’ื” ืœื”ืžืจืช ืžืกื™ื›ื•ืช ืฉืœ ื ืฆื™ื™ืœืกื™ื•ื

ืคื•ื ืงืฆื™ื•ืช ืžื˜ืจื”ื”ืฆืขื“ื™ื ื” ื™ื ืžื—ืงืจ ื™ื›ื•ืœื™ื ืœื”ืชืžืงื“ ื—ื™ืค.ืžืชืง ืœืœื”ืชืคืฉืจ ืขืœ ื™ื›ื•ืช ื”ืžืกื›ื” 

 ื˜ื™ืคื•ืœ ื˜ื›ื ื•ืœื•ื’ื™ื•ืช ืฉืจ ื“ื•ืจืฉื•ืช.ืœ ืขื™ื•ืช ืชื›ื ื•ืช ืœื™ื ื™ ืจื™ ืฉืจ ื™ื™ืฆื’ื• ืช ื“ืจื™ืฉื•ืช ื”ืชื›ืŸ ื™ื•ื•ืŸ ื ื•ืกืฃ ื”ื•

 .ื ื•ืกืจื™ ื”ื•ืคื›ื•ืช ืœ ืขื™ื•ืช ืชื›ื ื•ืช ืฉืœืžื™ื ื•ืœื›ืŸ ื“ื•ืจืฉื•ืช ื™ื™ืขืฉื ืขื™ื•ืช ืชื›ื ื•ืช ืœื™ื ื™ โ€“ ื“ื™ืกืงืจื˜ื™ื–ืฆื™ื” 

ื™ื•ืจ

:7ืœื™ื ื™ ืจื™

 ืชื›ื ื•ืช

 ื ื™ืช ืขื™ื™ืช

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 63: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 63/70

IV

 

ืคืชืจื•ืŸืฉืชื•ืฆ ืชื” ื”ื• ,ืข ื•ืจ ื›ืœ ืช ืชื›ืŸ ื ื—ื ื• ื•ื ื™ื ืขื™ื™ืช ืชื›ื ื•ืช ืœื™ื ื™ .ืจ ืฉื•ืฉื”ื™ื” ื—ืœืง

 ื–ื” ื ืชื•ื ื” ื™ื•ืจ.ืข ื•ืจ ื•ืชื• ื”ืช  ืข ื•ืจื”ืคืชืจื•ื ื•ืชื• ืžื•ืฆื’ ื”ื’ืจืฃ ืฉืžื™ื™ืฆื’ ืช ืžืฉืคื—ืช6ื“ื•ื’ืžื” ืœืฉืœ

  ืคืž: ืœื™ื ื™ ืจื™ ื—ืกื•ืžืชื›ื ื•ืชื’ื•ื“ืœ ืขื™ื™ืช.ื› ืจ ื ื’ื–Aืข ื•ืจ ืช ื”ืกื•ืคื™ืคืชืจื•ืŸื› ืฉืจ Bืช

 ื›ืžืกืคืจ ื”ืคื•ืœื™ื’ื•ื ื™ื ืช  ื” ืขื™ื”. ื™ ืจื™ ื•ืข ื’ื•ื“ืœ ื”ื ืขืœืžื™"ืžืกืคืจ ื” ื™ืœื•ืฆื™ื ื—ืกื•ื ;ื”ื ืขืœืžื™ื ื”ื•

ืข ื•ืจื’ื“ืœื™ื ืœื• ื ืชื•ื ื™ื ื—ืœืง ืชื•ืฆ ื•ืช.ื ื” ื’ื“ื•ืœ ืข ื•ืจ ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื ืชืขืฉื™ื™ืชื™ื™ืื”ืžืชืง ืœืช 

 .ื—ื™ื ืฉื”ืชื”ืœื™ืš ื”ื–ื” ืชืžื™ื“ ื ื™ืชืŸ ืœื”ืฉืœืžื™ืœ ื ื—ื ื• ืžื•ื› ืžื•ืจ ืœ.ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื ืชืขืฉื™ื™ืชื™ื™ื

.65nmืขืœ ืžืกืคืจ ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื ืชืขืฉื™ื™ืชื™ื™ื ื˜ื›ื ื•ืœื•ื’ื™ืช ื™ืฆื•ืจื•ืชื•ื”ืจืฆื ,ืžืฉื ื• ืช ื” ืœื’ื•ืจื™ืชืž

 .1ื”ืชื•ืฆ ื•ืช ื ืชื•ื ื•ืช ื˜ ืœื”.45nmื˜ื›ื ื•ืœื•ื’ื™ืช ื™ืฆื•ืจื•ืžืจื™ื›ืชื•ืฆ ื” ืงื™ ืœื ื• ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื 

 ืชื•ืฆ ื•ืช ื”ืจืฆืช ื” ืœื’ื•ืจื™ืชื ืขืœ ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื ืชืขืฉื™ื™ืชื™ื™ื:1ื˜ ืœื”

'ืžืกืฆืžืชื™ื'ืžืก

ื’ืจืฃ ืฉื˜ื•ื—

ืงืฉืชื•'ืžืก

ื’ืจืฃ ืฉื˜ื•ื—

ืฆืžืชื™ื'ืžืก

ื’ืจืฃ ืžืžื•ื–ื’

ืงืฉืชื•'ืžืก

ื’ืจืฃ ืžืžื•ื–ื’

ืžืฉืชื ื™ื ืขื™ื™ืช'ืžืก

  ืชื›ื ื•ืช ืœื™ื ื™ ืจื™

ื–ืžืŸ ืจื™ืฆื”

[s]

1511 5755 499 2249 302 7

2064 8456 1687 7130 598 11

4457 16890 1253 6101 434 313

4  12928 55892 2535 19524 386 244

5  23020 106554 4683 40334 1561 1167

29714 109212 4205 16255 1173 676

7  45964 177946 5963 24928 1308 1532

62944 248915 7850 44963 1277 2099

73005 294479 9455 63737 1420 2560

 

.ื™ืฆื•ืขื™ื ืฉืœ ื”ืžืขื’ืœ ื”ืŸ ื˜ื›ื ื•ืœื•ื’ื™ื” ื™ืฉื ื” ื•ื”ืŸ ื˜ื›ื ื•ืœื•ื’ื™ื” ื”ื—ื“ืฉื ื•ืกืฃ ืžื“ื“ื ื• ืข ื•ืจ ื›ืœ ื”ืจืฉืชื•ืช ืช

ืฉืœื• ืœืคื ื™ื”ื”ืฉื”ื™ื› ืฉืจ,ื›ืœ ื ืงื•ื“ื” ืขืœ ื”ื’ืจืฃ ืžื™ื™ืฆื’ืช ืคื•ืœื™ื’ื•:7ื™ื—ืก ื™ืŸ ื” ื™ืฆื•ืขื™ื ื ืชื•ืŸ ื’ืจืฃ ื™ื•ืจื”

ื”ื”ืฉื”ื™ื” ืฉืœ ื”ืจืฉืชื•ืช ื—ื•ืฉ ื”.ื•ืจื“ื™ื  -ื”ื”ืžืจื”ื—ืจื•ื”ื”ืฉื”ื™ื”ื”ืžืจื” ื”ื™ ื• ืกืฆื™ืกื” ืฉืœ ื”ื ืงื•ื“ื” 

ื™ื—ืกื•ืขื•ืžื™,ืžืฉืžืขื•ืชื™ื”ืฉื”ื™ื™ืขืœื•,ืŸ ืœืจ ื•ืช ืฉืžืกืคืจ ืงื˜ืŸ ืฉืœ ืจืฉืชื•ื ื™.Elmoreืฉื™ื˜ืช 

 .ื™ ืขื•ืจืš ืžืขื’ืœื™"ื“ืจืฉื• ืœื˜ื™ืคื•ืœ ื ื•ืกืฃ ืจืฉืชื•ืช ืœื• .ื” ื™ืฆื•ืขื™ื ื”ื ื•ืžื™ื ืœื™ ืฉืœ ื”ื˜ื›ื ื•ืœื•ื’ื™ื”

v1 โ€“ 0 โ‰ฅ 0

v1 โ€“ 33 โ‰ฅ -31

46 โ€“ v1 โ‰ฅ 44

v2 โ€“ v1 โ‰ฅ 3

v2 โ€“ 46 โ‰ฅ -31

22 โ€“ v2 โ‰ฅ 6

33 โ€“ v2 โ‰ฅ 7

 

v3 โ€“ v2 โ‰ฅ 4

v3 โ€“ 22 โ‰ฅ 4

30 โ€“ v3 โ‰ฅ 0

33 โ€“ v3 โ‰ฅ 7

74 โ€“ v3 โ‰ฅ 46AL

BR

 5

BL  1 2

AR

6 74

 3

8046

30

74

0

0

22 33

ื™ื•ืจ

:6

ืœื™ื ื™ ืจื™

 

ืชื›ื ื•ืช

 

ื ื™ืช ืขื™ื™ืช

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 64: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 64/70

III

 

.ื”ื ื›ื ืกื™ื ื•ื”ื™ื•ืฆ ื™ื ืžื”ืฆื•ืžืช ืฉืจ ืžื™ื™ืฆื’ ืคื•ืœื™ื’ื•ืŸ ื–ื” ืžืฉืชื ื™ื ื”ืช ื ืœืžื™ืงื•ื ื”ืช ื• ืžืžื•ืงื ื”ืคื•ืœื™ื’ื•ืŸ

 ืชื”ืœื™ืš ื™ื˜ืจื˜ื™ ื™  ืกื“ืจ,ื›ืœ ื™ื˜ืจืฆื™ื” ืžืชืžืงื“ื™ื ืช ื—,ืชื”ืœื™ืš ื–ื” ื”ื• ื› ืฉืจ ื”ืกื“ืจ ื™ืŸ ื”ืช ื™ื ื”ื•

 .ื”ื™ืจืจื›ื™

 ืคืจื•ืคื•ืจืฆื™ื•ื ื™ ืœืกื›ื•ื ื”ื’ื“ืœื™ื ืฉืœ ื›ืœ,ืžืกื™ื›ืฉืœ ื•ืชื”ืžืžื•ื–ื’ืจืฃื’ืจืฃ ื”ืžืชืง ืœ ื ืงืจื” ื•ื’ื•ื“ืœื• ื”ื•

ืฉื’ื•ื“ืœื• ืคืจื•ืคื•ืจืฆื™ื•ื ื™ ืœืกื›ื•ื ื”ื’ื“ืœื™ื ืฉืœ ื›ืœ ื”ืžื•ืคืขื™ื ืฉืœ,ืœื” ื“ื™ืœ ืžื’ื•ื“ืœ ื”ื’ืจืฃ ื”ืฉื˜ื•ื– .ืช ื™ื ืชื›ื”

ื ื™ ื”ื’ืจืคื™ื ื™ื›ื•ืœ ืœื”ื’ื™ืขื”ื™ื—ืก ื™ ,ืขืœื™ ืž ื ื” ื”ื™ืจืจื›ืชืขืฉื™ื™ืชื™ืžืฉื•ืœ ื™ืžืขื’ืœื™.ืช ื™ื ืชื›ื›ืœ 

 ืž ื˜ื™ื— ืฉืžื™ืงื•ืžื• ืกื•ืฃ ื” ืœื’ื•ืจื™ืชื ื™ื”ื™ื”,ื ื•ืก.ืกื“ืจื™ ื’ื•ื“ืœืžืกืคืจ ื”ื™ื™ืฆื•ื’ ื”ื™ื—ื™ื“ื™ ืฉืœ ื›ืœ ืคื•ืœื™ื’ื•ืŸ ืฉืœ ืช

ื”ืช 

 ืฉืœ ื•ืชื•

 ื”ืžื•ืคืขื™ื

 ื–ื”ื” ื›ืœ

.ืžื•

 ื’ืจื ื—ื ื•

 ืฉืœ

 ื”ืฉืžื•ืจื”

 ื”ื•ืจืก ืช

 ื–ื” ื™ื ื•

 ืฉืชื”ืœื™ืš

 ื—ื™ื

:ืคืชืจื•ืŸ

 ืงื”ืžืžื•ื–ื”ืžืงื™ื™ื ืช ื›ืœ ื”ื“ืจื™ืฉื•ืช ืงื™ื™ื ื’ืจืฃ  ืœื’ืจืฃ ืžืžื•ื–ื“ื•ื’ืž.ื™ื ื’ืจืฃ ื”ืžืงื•ืจื ื•ืจืง ื ื”ื•

 .4ื ืชื•ื ื” ื™ื•ืจ3ื™ื•ืจืฉื˜ื•ื— ืฉื  ื ื” ืžื’ืจืฃ

 ื”ืฉืœื™ืฉื™ ื”ื• ื“ื™ืงืช ื”ืงื™ื•ื ืฉืœ ื ื—ื ื•.ืœืขื™ื”ืžื•ื’ื“ืจื•ืžืงื™ื™ื ืช ื›ืœ ื”ื“ืจื™ืฉื•ืฉืจืคืชืจื•ืŸื”ืฉืœ

ืžืขื’ืœื™ื ื—ื™ื• ื™ื™ืืœืฆื•ืจืš ื–ื™ื”.ื”ืžืžื•ื–ื›ื–ื” ืงื™ื™ื ื ื•ืจืง ื ื™ืŸ ืžืขื’ืœื™ื ื—ื™ื• ื™ื™ื ื’ืจืฃืคืชืจื•ื—ื™ื ืžื•ื›

ื ื™ืชืŸ ืœื”ืชืขืœื,ื—ื™ื• ื™ื™ื ื’ืจืฃ ื–ื ืงื™ื™ืžื™ื ืžืขื’ืœื™ื.ืคื•ืจ-ืœื’ื•ืจื™ืชื ืœืžื™ืฉืชืžื ื—ื ื•ื’ืจืฃ 

 .ืฉืชืชืคื•ืช ืžืขื’ืœ ืขื“ ืฉืžืฉืงืœื• ื™ื”ื™ื” ืฉืœื™ืœืœืžืฉืœ ืœื”ื•ืจื™ื“ ืช ืžืฉืงืœ ื”ืงืฉืชื•ืช  โ€“ ืžื—ืœืง ืžื” ื™ืœื•ืฆื™ื 

 ื”ืจ ื™ืขื™ ื”ื• ื ื™ืช ืกื™ื“ืจื” ืฉืœ ื’ืจืคื™ื ื•ืŸ ืกื“ืจื” ื–ื• ื”ื• ื’ืจืฃ.ื”ื ืงืจ ื™ื ื’ืจืคื™ื ืžืฆื•ืžืฆืžื™,ื”ืฉืœ

 ื”ืงื•ื“ืžืชืง ืœ ื”ื’ืจืฃ ื”ืžืžื•ื–ื’ ืฉ ื›ืš ืฉ ื™ื ื• ืžื›ื™ืœ ืžืขื’ืœื™ื,ืœ ื—ืจ ื”ืจืคื™ื” ืฉืœ ื—ืœืง ืžื” ื™ืœื•ืฆื™,ืฉืœ

 ื ื•ืจื™ื“ ืชืข ื•ืจ ,ื ืข ื•ืจ ืขืœ ื›ืœ ื”ืช ื™ื ืชื›,ืขื›ืฉื™.ื—ื™ื• ื™ื™ื  ืžื”ื’ืจื”ืฆืžืชื™ื ืฉืœ ื•ืชื•ืช .ืช

 ืฉืœ ื”:ื ืง ,ื›ืœื•ืžืจ ื ื ื’ื“ื™ืจ ืช ื”ื’ืจืคื™ื ืกื“ืจื” ื•ืคืŸ ื™ื ื“ื•ืงื˜ื™ ื™ ,ืจืฃ ื”ื ืชื•ืŸ ืกื“ืจื” ื– ื”ื’ืจืฃ ื”ืขื•ืง

ื”ื ืชื•ืŸ

 ื”ืช

 ืฆืžืชื™

 ื›ืœ

 ื”ื•ืจื“ืช

 ืœ ื—ืจ

 ื ืชื•ืŸ

 ื’ืจืฃ

 ื”ื•

.ื ื›ื ืก

 ืงืฉืชื•ืช

 ื–ื•ื’

 ื›ืœ

/ืฉื”ื™ื•

 ืžืฆื•ืžืช

 ืฉืžืช

,ื ื—ืœื™ืฃ

ื›ืžื•ืช ื”ืงืฉืชื•ืช โ€“ ื•ืจื” ืžืขืจื™ื›ืชื”ืœื™ืš ื–ื” ืœื›.ื›ื•ื ื”ืงืฉืชื•ืช ืฉื”ื•ืจื“ื ืงืฉืช ื™ื—ื™ื“ื” ืขืœืช ืžืฉืงืœ ื”ืฉื•ื•ื” ืœืก

,ื™ ืจื™ ื•ืข ืžืกืคืจ ื”ืฆืžืชื™"ื—ืกื•ื ืžืกืคืจ ื”ืงืฉืชื•ืช ื’ืจืฃ,ืฃ ืขืœ ืคื™ ื›;ื’ืจืฃ ื”ืžืชืง ืœ ื’ื“ืœื” ื•ืคืŸ ืžืขืจื™ื›ื™

 ื™ื—ืกื™ืช ืงื˜ืŸ ืœ ื—ืจ ื”ืžื™ื–ื•ื’  ืœืฉืœ,ื ื•ืก.ืฉื’ื ื”ื• ืœื›ืŸ ื”ื’ืจืคื™ื ื”ืžืชืง ืœื™ื.ืžืกืคืจ ื”ืฆืžืชื™ื ืงื˜ืŸ ืžืฉืœ

 ื’ื“ื•ืœื™  ื–ื•ืฉืœ ืข ื•ื“ืชื•ืฆ ื•ื’ื“ืœื™ื ืœื• ื ืชื•ื ื™ื ื—ืœืง.ืข ื•ืจ ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื ืชืขืฉื™ื™ืชื™ื™ื ื”ื ืœ

 .ืข ื•ืจ ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื ืชืขืฉื™ื™ืชื™ื™ื

 ื”ื•ืฉืžื˜ื• ืžื”ื’ืจืคืชืจื•ื ื•ืชื’ืจืฃ ืžืฆื•ืžืฆื ืžื”ื•ื•ื” ืžืฉืคื—ื” ืฉืœ ื ื—ื ื• ืžื•ื›ื™ื—ื™ื.ืข ื•ืจ ื”ืช ื™ื ืฉืขื“ื™ื™ืŸ ืœ

ื“ื•ื’ืžื” ืœื’ืจืฃ ืžืฆื•ืžืฆื ืฉืžืชืง ืœ.ื—ื•ืกืจ ื”ืžืขื’ืœื™ื ื”ื—ื™ื• ื™ โ€“ ืฉืชื”ืœื™ืš ื–ื” ื’ื ืžืฉืžืจ ืช ืชื›ื•ื ืช ื”ื’ืจืฃ

   .5ื ืชื•ื ื” ื™ื•ืจ4ืžื”ื’ืจืฃ ื”ืžืžื•ื–ื’ ืฉ ื™ื•ืจBืžืฆืžืฆื•ื ืฉืœ ืช

.ืข ื•ืจ ื›ืœ ืช ืชื›ื”ืคืชืจื•ื ื•ืžืฉืคื—ืชืฉืจ ืžื™ื™ืฆื’ื™ืืกื•ืคื• ืฉืœ ืชื”ืœื™ืš ื–ื” ืžืชืง ืœืช ืกื“ืจื” ืฉืœ ื’ืจืคื™

ื–ื” ื ืขืฉื” ืกื“ืจ ื”ื”ืคื•ืš ืœื–ื”.ืกื•ืคื™ ืข ื•ืจ ื›ืœ ื”ืคื•ืœื™ื’ื•ื ื™ืคืชืจื•ืŸื› ืŸ ืžืชื—ื™ืœ ื”ื—ืœืง ื”ืฉื ื™ ืฉ ื• ื ื—ื ื• ื’ื•ื–ืจื™ื 

AL

BR

5

BL 1 2

AR

6 74

3

ื”ืžืžื•ื–ื ื™ืช ื”ื’ืจืฃ:4ื™ื•ืจ

AL 5   AR6 74

ื”ืžืฆื•ืžืฆื ื™ืช ื”ื’ืจืฃ:5ื™ื•ืจ

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 65: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 65/70

II

 

 ื’ื–ื™ืจืช ืคืชืจื•ืŸ ืกื•ืคื™ ืžืชื•ืš ืžืฉืคื—ืช.ืจ ืฉื•ื”ื™ื” ื—ืœืง ืกื“ืจ ื”ื”ืคื•ืš ืœื–ื” ื”ื—ืœืง ื”ืฉื ื™ ืžืช ืฆืข ื”ืžื˜ืจื” ื”ื™

 ื”ืช ืžื” ืฉืœ ืžื™ืงื•ืืคืชืจื•ืŸ.ืจ ืฉื•ืฉืจ ื  ื ืชื” ื—ืœืงื”ืคืชืจื•ื ื•ืช  ืœื›ืœ)ืจื“ื™ืง(ื•ืจ ื’ืจืฃ ื”ื•

ืคืชืจื•ืŸื ื—ื ื• ืžื•ื›ื™ื—ื™ื ื›ื™ ื’ื–ื™ืจืช.ืช ื” ื™ืœื•ืฆื™ื ืฉื ืชื•ื ื™ื ื’ืจืฃ ื”ืžื›ื•ื•ื›ืš ืฉื”ืžื™ืงื•ื ืžืงื™ื™ื ,ืคื•ืœื™ื’ื•ืŸ ืช 

 ื”ืกื•ืคื™   ืชืกืชื™ื™ื ื”ืฆืœื—ื”  .2ืœื•ืงื™ื ื ืชื•ื ื” ื™ื•ืจื“ื™ ื’.ื”ืฆืœื™ืจ ืฉื•ืŸื”ื—ืœืงื•ืจืง

 .ื“ื•ื’ืžื™"ื”ืจืฆ ืœื”ืœืŸ ื ืช ืจ ื›ืœ ืฉืœ ืœื’ื•ืจื™ืชื ื•ื ื“ื’ื™ื

 ื”ืจ ืฉื•ืŸ ืฉืœ ื” ืœื’ื•ืจื™ืชื ื›ืœ:ื”ืžืกื›ื™ืœื•ืฆื™ ื”ืฉื›ื ื•ืช ื™ืŸ ื›ืœ ืœืžื ื˜ ื  ื ื” ื’ืจืฃ ืฉืจ ืžื™ื™ืฆ,ืฉืœ

 ื”ื ื”ืฆืžืชื™ื ืฉืœ ื”ื’ืจืฃ ืคื•ืœื™ื’ื•ื ื™ืืื’ืจืฃืงื™ื™ืžื™ืŸ ืฉื ื™ ืฆืžืชื™ืืงืฉ;ืคื•ืœื™ื’ื•ืŸ ื•ื›ืœ ื’ ื•ืœ ืฉืœ ืช

.ืฉื˜ื•ื— ืฉืœ ื”ืžืกื›ื’ืจืฃื ืงืจื’ืจืฃ ื–ื”.ืขืœ ื”ืžืกื›ืจื• ื™ื ื—ื“ ืช ืฉื ืœื•ืฆืžืชื™"ืฉืžื™ื•ืฆื’ื™ื ืข

ื—ื•ืงื™ื ืฉืœ ื˜ื›ื ื•ืœื•ื’ื™ื™ืชื ื• ืขื™ืœื™ื ืขืœ ื”ืงืฉืชื•ืช ื’ืจืฃืžืฉ.3ื ื” ื™ื•ืจืœืžืกื›ื” ื•ื’ืจืฃ ื ืชื”ื“ื•ื’ืžื”

ืฆื•ืขื™ื ืฉืœื•ื“ืจื™ืฉื•ืช ืœ,ืœื•ื’ื™ืช ื”ื™ืฆื•ืจ ื”ื—ื“ืฉืžื™ืžื“ื™ื ืฉืœ ื”ืช ื™ื ืชื›ืŸ ื˜ื›ื ืžื™ืงื•ื ,ื”ื™ืฆื•ืจ ื”ื—ื“ืฉื”

 .ื”ืžืขื’ืœ

 ื”ืฉื ื™ ื•ืœื”ื•ืกื™ืฃ ืช ื™ืœื•ืฆื™ ื”ื”ื™ืจืจื›ื™ื•ืช ืžืฆื“,ืžืฆื“ ื—ื”ืฉื˜ื•ืขืœ ืžื ืช ืœืฆืžืฆื ืช ื’ื•ื“ืœื• ืฉืœ ื”ื’ืจ,ืฉืœ

ื”ื ืžืฆ ื™ื ืžื•ืคืขื™ื(ื›ืœ ื”ืฆืžืชื™ื ืฉืจ ืžื™ื™ืฆื’ื™ื ืช ื”ืžื•ืคืขื™ื ืฉื•ื ื™ื ืฉืœ ื•ืชื• ืคื•ืœื™ื’ื•ืŸื ื—ืœื™ืฃ ืช,ืฉื ื”

ืฆื•ืžืช ื– ืช ืชื™ื™ืฆื’ ืช ืžื™ืงื•ื ืฉืœ ื•ืชื• ื”ืคื•ืœื™ื’ื•ืŸ ื™ื—ืกื™ืช ืœืงื™ืจ ืฉืœ ื•ืชื•;ืฆื•ืžืช ื™ื—ื™ื“,)ืฉื•ื ื™ื ืฉืœ ื•ืชื• ื”ืช 

 ,ืชื”ืœื™ืš ื”ื”ื—ืœืคื” ื ืขืฉื” ื•ืคืŸ ืกื™ื“ืจืชื™ ืข ื•ืจ ื›ืœ ื”ืคื•ืœื™ื’ื•ื ื™ื ืฉืœ ื›ืœ ืช.ืช ื›ืœ ื”ืžื•ืคืขื™ื ืฉืœ ื•ืชื• ืช 

 ื”ืฉื ื™  ื ืชื•ืŸ ืขื•ืชืง ื™ื—ื™ืžื•ืคืขื™ื ืฉื™ ื”ื—ืœืคื” ืฉืœ ื›ืœ"ืฆืžืฆื ืช ื”ื’ืจืฃืฉืœ ืขื•ืชืงื™ืื›ืš ื’ื ื›ืœ;ืช

 ื”ืžื›ื™ืœ ื•ืชืžืฉืชื›ืคืœื™ืื•ืŸืฉืœ ืคื•ืœื™ื’ ืžืฉืงืœื™ ื”ืงืฉืชื•ืช,ื›ืžื• ื›.ื™ื—ื™ื“ ื’ืจื™ื•ืฆื’ื• ืฆื•ืžืขื•ืชืงื™ื ืฉืœ ืช

  iืจื•ืŸืคื•ืง  Riื’ืจืข ื•ื ื” ืขื™ื™ืช ืชื›ื ื•ืช ืœื™ื ื™ ืจื™

*  

 :i iืข ื•ืจ ืฆืžืชื™ื ืฉืœ

 =  i 

*   i-1

  i=1โ€ฆ Nืœื›ืœ ืช ืชื›ืŸ

ืจื•ื”ืชื—ืœ ืคืช

 0 

0: 

   Nื”ื—ื–ืจ

ืœืžื˜-ืžืขืœืžืช ืฆืข ืžืฉื ื”ื—ืœืง:2ื™ื•ืจ

AL   BR

5

BL   1   2   ARBRBL

6   74

 3   1 2 

3

1

15

  6   7

2

ื”ืฉื˜ื•ื ื™ืช ื”ื’ืจ:3ื™ื•ืจ

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 66: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 66/70

I

 

 ืชืงืฆื™ืจ

ืŸ ืฉืœ ืžืขื’ืœื™ืืชืช ืœืฉืžืจืฆื•ืฆืจ ื”ื ื”ื’ื•ืจืžื™ื ื”ืขื™ืงืจื™ื™ืžืฉืœื™ืจ ื”ืกื•ืคื”ืžื–ืžืŸ ื”ืคื™ืชื•ื— ื•

ืจืฆื•ื™,ื™ืชืจ ืขืœ ื›.ื™ืฆื•ืจ ื—ื“ ืœ ื—ืจื™ืœื”ืžืจืช ืžืกื›ื•ืช ืžืชื”ืœื™ืšื“ืจื›ื™ื ื™ืขื™ืœื•ืžื˜ืจื” ื–ื• ื“ื•ืจืฉืช.ืžืฉื•ืœ ื™ื

ืชืžื™ื›ื”ื”ืงื™ื™ืžื•ืฉื™ืžื•ืฉ ืกืคืจื™ื•,ื™ืฆื•ืขื™ืœืฆืจื›ื™ืžืฉื•ืœืžืขื’ืœืฉืžืจ ืช ื”ืž ื ื” ื”ื”ื™ืจืจื›ื™ ืฉืœ 

 ืœ ืขื’ืœืœื›ืŸ ืฉื™ื˜ื•ื— ืฉืœ ืžืกื™ื›ื•ืช ื”ื”ืžืจื” ืฉืœ.ื”ื ื“ืจืฉืช  ื”ื• ืž ื ื” ื”ื ืชื•ื ื™ืื’ืœืœื”ืŸืคืชืจื•ืžืฉื•ืœ

ืž ื•ืกืก,ื—ื“ืฉื ื ื—ื ื• ืžืฆื™ืขื™ื ืœื’ื•ืจื™ืชื. ื™ ื•ื•ื”ืŸ ื’ืœืœ ืฉื”ืžื™ื“ืข ื”ื”ื™ืจืจื›ื™ ื”ื•ืœืš ืœื”ื’ื“ื•ืœ ืฉืžืชืง ืœ

ืช ื™ื

,ืฉืœ

 ืžืกื™ื›ื•ืช

 ื”ื”ื™ืจืจื›ื™ื™ืœื”ืžืจืช

 ื”ืžืขื’ืœื™ื

,ืžื“ืจื™ืฉื•ืช

 ื”ื ื• ืขื™ื

 ื” ื™ืœื•ืฆื™ื

 ืขืœ

 ืฉืžื™ืจื”

 ื›ื“ื™

 ืชื•ืš

 .ืจื•ืจื” ื•ื™ืขื™ืœื—ื™ื•ื•ื˜ ืฆื•ืจื” ื”ืžื™ืงื•ืื™ืŸ ืชื”ืœื™ื›ื” ืœื’ื•ืจื™ืชื ืžืคืจื™.ื™ืฆื•ืขื™ื ืฉืœ ื”ืžืขื’ื”

ื ืžืกื›ืชื’ื“ืœื™ื ื•ืžื™ืงื•ืžื™ื ืฉืœ ื›ืœ ื”ืช ,ื”ื™ืฆื•ืจ ื”ืžืงื•ืจื˜ื›ื ื•ืœื•ื’ื™ืžืกื™ื›ืช ื”ืžืขื’:ื”ืงืœื˜ ืœ ืœื’ื•ืจื™ืชื ื”ื•

ื”ืคืœื˜ ืฉืœ.ืฆื•ืขื™ื™ ืชื›ืŸ ื˜ื›ื ื•ืœื•ื’ื™ืช ื”ื™ืฆื•ืจ ื”ื—ื“ืฉื” ื•ื“ืจื™ืฉื•ืช ืœื—ื•,ื—ื“ืฉื”ืžืขื’ืœ ื˜ื›ื ื•ืœื•ื’ื™ื” 

 ืžืกื›ืช ื”ืžืขื’ืœ ื˜ื›ื ื•ืœื•ื’ื™ืช ื”ื™ืฆื•ืจ ื”ื—ื“ืฉื” ืฉื›ื•ืœืœ ืช ื”ื—ื™ื•ื•ื˜ ื™ื™ื ืช ื”ื“ืจื™ืฉื•ืชืฉืจ ืž,ื” ืœื’ื•ืจื™ืชื ื”ื•

 :ื” ื•ืช

 ืฉื•ืช ื”ืชื›ืŸ ื˜ื›ื ื•ืœื•ื’ื™ืช ื”ื™ืฆื•ืจ ื”ื—ื“ืฉื”ื—ื™ื•ื•ื˜ ืžืงื™ื™ื ืช ื›ืœ ื“โ€ข

ื” ื™ืฆื•ืขื™ื ืฉืœ ื”ืžืขื’ื”ื—ื™ื•ื•ื˜ ืžืงื™ื™ื ืช ื“ืจื™ืฉื•ืชโ€ข

ื”ืกื“ืจ ื™ืŸ ื”ืคื•ืœื™ื’ื•ื ื™ื ืžืกื›ื” ื”ื—ื“ืฉื” ื–ื”ื” ืœืกื“ืจ ืžืกื›ื” ื”ืžืงื•ืจื™โ€ข

 ื ืชื•ืŸ ื–ื”ื™ื›ืœ:ื”ืž ื ื” ื”ื”ื™ืจืจื›ื™ ื ืฉืžโ€ข ื”ืžื•ืคืขื™ื ืฉืœ ื›ืœ ืช

 ื—ื“ืฉื“ืœ ืฉืœ ื”ืช ื™ื ื˜ื›ื ื•ืœื•ื’ื™ืช ื”ื™ืฆื•ืจื’ื”ื—ื™ื•ื•ื˜ ืžืงื™ื™ื ืช ื™ืœื•ืฆื™ ื”ืžื™ืงื•ื โ€ข

 ืงื™ื™ื ืกืชื™ืจื” ื™ืŸ ื” ื™ืœื•ืฆื™ื ื• ืžื•ื•ืชืจืœ ื” ืœื’ื•ืจื™ืชื ืžื“ื•ื•ื— ืข"ื”ืžืงื™ื™ื ืช ื”ื“ืจื™ืฉื•ืช ื”ืคืชืจื•ืŸืžื™ื“ื” ื•ืœ

 .ื—ืœืงื™ืงื ื•ืžื—ื–ื™ืจ ืคื™ืชืจื•ืŸ ื—ื•ืงื™ืœ ื—ืข

ืœืžืกื›ื” ืขืœืช ื™ื•ืชืจ ืžืฉื› ื” ื—ืช ื•ืคืŸื”ืœื”ืจื–ื” ื ื™ืชืคื™ืฉื•.ืฉื› ื” ื•ื“ื“ื› ืœื”ืœืŸ ื ืชื™ื™ื—ืก ืœืžืกื›ื”

  ื”ืจื› ื” ื™ืŸ;ืฉื› ื•ืช ื—ืจื•ืชืœื•ื™ -ืช ืชื”ืœื™ืš ื”ื”ืžืจื” ื•ืคืŸ ืœืชืจืชืฉื› ื•ืชื—ืช ื›:ื”

 ื”ื–ื–ืชื ื™ ืฉื™ื ื•ื™ ื” ื•ืจื›ื™ื ืฉืœ ื”ืคื•ืœื™ื’ื•ื ื™ื ืฉื› ื•ืช ื”ืฉ"ื”ืฉื› ื•ืช ืžืชืง ืœืช ืข  .ืช ืœืœ

ื”ื• ื ื™ื” ืฉืœืœืžืขืœ-ืžืช ืฆืข ืžืœืžื˜ืฉืจ,ืจ ืฉื•ื—ืœืง:ื’ื•ืจื™ืชื ืžื—ื•ืœืง ืœืฉื ื™ ื—ืœืงื™ื ืขื™ืงืจื™ื™ื” ืœ

 ืคืฉืœืžืฉืคื—ื” ื™ ื’ืจืฃ"ืžื™ื•ืฆื’ืช ื”ืคืชืจื•ื ื•ืžืฉืคื—ืช,ืœื›ืœ ืช.ื” ื™ืœื•ืฆื™ื ืœื›ืœ ืช ืชื›ืจื•ื ื•ืช ื”ืžืงื™ื™ืžื™ื

 ,ืžื›ื•ื•ืŸ  ื ืชื”ืคื•ืœื™ื’ื•ื ื›ืฉื”ืฆืžืชื™ื ื’ืจืฃ ืžื™ื™ืฆื’ื™ื ื™ืŸื”ืžื™ื ื™ื™ืœื•ืฆื™ ื”ืžืจื—ืงื•ื”ืงืฉืชื•ืช ืžื™ื™ืฆื’ื•ืช

 .1ืœื•ืงื™ื ื ืชื•ื ื” ื™ื•ืจื“ื™ ื’.ื”ืคื•ืœื™ื’ื•ื ื™ื ืฉืœ ื•ืชื• ื”ืช

ืฉื˜ื•ื—

 ื’ืจืฃ

 ื ื™ื™ืช

G=M 0

T iื ืฉืœ ืช ืžื–ื’ ื›ืœ ื”ืžื•ืคืขื™

  M iืœื’ืจ M i-1ื’ืจืฃ ืžืžื•ื–ื’ 

  R0= M  N  ื™ืœื’ืขืž ืฉื™

?ื—ื™ื• ื™ื™ืืœ 

ื›

 falseื”ื—ื–ืจ

  i=1โ€ฆ Nืœื›ืœ ืช ืชื›ืŸ

  i=1โ€ฆ Nืœื›ืœ ืช ืชื›ืŸ

{ Ri }1ื”ื—ื–ืจ N 

  T iื”ืฉืžื˜ ืช

  Ri-1 Riืžื’ืจืฃ ืžืฆื•ืžืฆื

ืœืžืขืœ-ื”ื—ืœืง ื”ืจ ืฉื•ืŸ ืฉืžืช ืฆืข ืžืœืžื˜:1ื™ื•ืจ

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 67: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 67/70

 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 68: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 68/70

ื™ืช ื”ืกืค,ื”ื˜ื›ื ื™ื•,ื”ืคืงื•ืœื˜ื” ืœื”ื ื“ืกืช ื—ืฉืž,ืฉืžื• ืœ ื•ื™ืž'/'ื™ื™ืชื ืฉืœ ืคืจื•ืžื—ืงืจ ื–ื” ื•ืฆืข ื”ื ื—

 ,ืœื”ื ื“ืกื” ืคืงื•ืœื˜ื” ืœืžื“ืขื™,ื”ื˜ื›ื ื™ื•,ืคืงื•ืœื˜ื” ืœืžื“ืขื™ ื”ืžื—ืฉ,ืจื•ืŸ ืคื™ื ื˜'/'ื•ืคืจื•,ื™ืœ-ื•ื ื™ ืจืกื™ื˜ืช

.ื™ืฉืจ ,ื˜ื›ื ื™ื•,ื”ืžื—ืฉ

 

ืขืœ ืฉื”ื™ื• ืฉืืœืžืœ ื ื™ ืœื™ืข,ืœ ื™ืฉืชื™ ืœื™ื“ื™ืžื™ื•ื—ื“,ืœืžืฉืคื—ืชื™ ื”ื™ืงืจืจืฆื•ื ื™ ืœื”ื•ื“ื•ืช ืžื›ืœ ื”ืœ

.ืฉ ื™ืœื™

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 69: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 69/70

 

   T  e

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9

Page 70: Scalable and Low Power LDPC Decoder Design Using High Level

7/23/2019 Scalable and Low Power LDPC Decoder Design Using High Level

http://slidepdf.com/reader/full/scalable-and-low-power-ldpc-decoder-design-using-high-level 70/70

ืช ื™ื ืฉืœ-ื•ืจื™ื•ืช ืž ื•ืกืก-ื—ืžื”ืžืจื” 

 ืžืกื™ื›ื•ืช ืฉืœ ืžืขื’ืœื™ื ืžืฉื•ืœ ื™ื 

 ื—ื™ ื•ืจ ืขืœ ืžื—ืงืจ

 ืœืฉื ืžื™ืœื•ื™ ื—ืœืงื™ ืฉืœ ื“ืจื™ืฉื•ืช ืœืง ืœืช ื”ืชื• ืจ

 ืžื’ื™ืกื˜ืจ ืœืžื“ืขื™ื ืžื“ืขื™ ื”ืžื—ืฉ

 ื™ ื’ื ื™ ืฉืคื™ืจ

 Teืžื›ื•ืŸ ื”ื˜ื›ื ื•ืœื•ื’ื™ ืœื™ืฉืจ  โ€“ ื”ื•ื’ืฉ ืœืกื ื˜ ื”ื˜ื›ื ื™ื•ืŸ

  c   h  n   i  o  n  -   C  o  m  p  u   t  e  r   S  c   i  e

  n  c  e   D  e  p  a  r   t  m  e  n   t  -   M .   S  c .

   T   h  e  s   i  s   M   S   C  -   2   0   0   9  -   1   1  -   2   0   0   9


Recommended