Abstract:
|
Com o aumento no número de transistores por área nos computadores, com atualmente bilhões de transistores em um único chip, é inviável realizar o design do chip de forma totalmente manual. Portanto, desde a década de 1970, tem sido utilizadas ferramentas capazes de realizar de forma automática a síntese física, etapa esta responsável por definir a real posicão dos componentes e os caminhos das conexões entre eles. O desenvolvimento dessas ferramentas deram início a uma nova área entre a computação e a eletrônica: a electronic design automation (EDA). A relevância dessa área vem aumentando constantemente, levando em consideração que os dispositivos eletrônicos estão cada vez mais presentes no dia a dia e, com o avanço dos sistemas embarcados, exigindo circuitos eletrônicos mais potentes em áreas cada vez menores. Devido à alta complexidade do processo, a síntese física é dividida em várias etapas que podem ser avaliadas independentemente: particionamento, planejamento do chip, posicionamento, geração da árvore de clock, roteamento e fechamento de timing. Esta separação, por sua vez, limita o máximo de otimização possível, fazendo com que técnicas do estado da arte integrem múltiplas etapas. Porém, as ferramentas que realizavam a síntese física eram todas de código fechado, dificultando o surgimento de novas técnicas. A vinda do OpenROAD, uma ferramenta de código aberto que tem como meta realizar a síntese física de forma totalmente automática, tem facilitado o processo de criação de novas técnicas pela comunidade acadêmica. Dessa forma, esta pesquisa tem como objetivo considerar técnicas de movimentação de células baseadas no roteamento, integrando as etapas de posicionamento e roteamento, utilizando o OpenROAD. Durante a pesquisa, foram implementadas duas técnicas de legalização, o Tetris e o Abacus, que alinham as células em linhas (rows) e colunas (sites), fundamental ao posicionamento e descoberta uma forma de adaptar os circuitos de teste do ISPD benchmark de forma a gerar congestionamento. |