4 research outputs found
High performance algorithms for large scale placement problem
Placement is one of the most important problems in electronic design automation (EDA). An inferior placement solution will not only affect the chip’s performance but might also make it nonmanufacturable by producing excessive wirelength, which is beyond available routing resources. Although placement has been extensively investigated for several decades, it is still a very challenging problem mainly due to that design scale has been dramatically increased by order of magnitudes and the increasing trend seems unstoppable. In modern design, chips commonly integrate millions of gates that require over tens of metal routing layers. Besides, new manufacturing techniques bring out new requests leading to that multi-objectives should be optimized simultaneously during placement.
Our research provides high performance algorithms for placement problem. We propose (i) a high performance global placement core engine POLAR; (ii) an efficient routability-driven placer POLAR 2.0, which is an extension of POLAR to deal with routing congestion; (iii) an ultrafast global placer POLAR 3.0, which explore parallelism on POLAR and can make full use of multi-core system; (iv) some efficient triple patterning lithography (TPL) aware detailed placement algorithms
Incremental Timing-Driven Placement with Displacement Constraint
In the modern deep-submicron Very Large Integrated Circuit(VLSI) design flow intercon-
nect delays are becoming major limiting factor for timing closure. Traditional placement
algorithms such as routability-driven placement (improves routability) and wirelength-
driven placement (reduces total wirelength) are no longer sufficient to close timing. To
this end, timing-driven placement plays a crucial role in reducing the interconnect delay
through timing critical paths (paths with timing violations/negative slacks) of the design
and thereby achieving specific performance/clock frequency.
In the placement flow, timing information about the design can be incorporated during
global placement and/or incremental/detailed placement. Although, over the years, there
has been significant advances in the quality of the global placement, there is a growing need
for high performance incremental timing-driven placement due to the lack of accurate
interconnect information during global placement. Moreover, incremental timing-driven
placement is essential to recover timing while preserving the other optimization objectives
such as total wirelength, routing congestion, and so forth which are optimized at the early
stages of the design flow.
This thesis proposes a simple, yet efficient, incremental timing-driven placement algo-
rithm that seeks to find optimized locations for standard cells so that the total negative
slack of the design can be maximized. Our algorithm consists two stages: (1) Global Move
which positions standard cells inside a critical bounding box to eliminate timing violations
on timing critical nets; and (2) Local Move which provides further timing improvement by
finely adjusting the current locations of the standard cells within a local region.
We evaluate our algorithm using ICCAD-2014 timing-driven placement contest bench-
marks. The results show that, on average, our technique eliminates 94% and 30% of the
late and early total negative slacks, respectively, and, 82% and 27% of the late and early
worst negative slacks, respectively, under short and long displacement constraints. The
1st-place team of the contest improves late and early total negative slacks by 90% and
39%, respectively, and improves late and early worst negative slack by 76% and 32%, re-
spectively. Taking into account both timing violation improvement and the placement
quality (i.e., other objectives), on average, we outperform the 1st-place team by 3% in
terms of the ICCAD-2014 contest quality score and our technique is 4.6× faster in terms
of runtime
Otimização de atraso pós-posicionamento explorando ramos não-críticos de árvores de Steiner
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2016.O crescente impacto das interconexões no desempenho dos circuitos aumentou a importância do projeto físico na última década. No contexto das tecnologias contemporâneas, é imprescindível se considerar informações de interconexões nas estimativas de atraso, para que otimizações no projeto físico não invalidem otimizações de desempenho realizadas durante a síntese lógica. Uma das técnicas de otimização utilizadas durante o projeto físico é o posicionamento guiado por atraso (TDP: timing-driven placement). Dado um posicionamento inicial do circuito, TDP move um número limitado de células com o objetivo de reduzir (ou mesmo corrigir, se possível) as violações de atraso crítico do circuito. O TDP pode ser realizado de maneira global ou incremental. Este trabalho propõe e avalia uma técnica de TDP incremental que reposiciona um subconjunto de células a fim de otimizar o atraso referente às interconexões mais críticas do circuito tentando, ao mesmo tempo, preservar a qualidade do posicionamento inicial. A técnica modela explicitamente as interconexões com árvores de Steiner, as quais são capazes de capturar informações sobre a topologia do roteamento final. Aplicada em circuitos industriais previamente otimizados, a técnica proposta proporcionou reduções médias de violações de atraso de 34% a 62%, considerando as restrições de deslocamento short e long, respectivamente.Abstract : The growing impact of interconnections on circuit performance has increased the importance of physical design in the last decade. In the context of the contemporary technologies, it is essential that circuit delay estimates consider interconnect information to avoid that physical synthesis optimizations invalidate upstream optimizations. Timing-driven placement (TDP) is one of the optimization techniques used during physical synthesis. Given an initial circuit placement, TDP moves a limited number of cells targeting at reducing (or even correcting, if possible) the circuit timing violations. TDP can be performed in a global fashion or incrementally. This work proposes and evaluates an incremental TDP technique that moves a subset of cells to optimize the delay of the most critical interconnections in the circuit, while trying to preserve the initial placement quality. The technique explicitly models the interconnections as Steiner trees, which are able to capture information on the interconnection topologies in the final routing. The proposed technique was applied on previously optimized industrial circuits having produced average reductions of 34% and 62% in timing violations, concerning short and long maximum displacement restrictions, respectively