1
Criação de Layouts Digitais Utilizando Criação de Layouts Digitais Utilizando Ferramentas de Síntese e Place&Route Ferramentas de Síntese e Place&Route Automáticas Automáticas Aluno: Fernando José Soares Leal ( [email protected] ) Orientador: Prof. João Canas Ferreira ( [email protected] ) Supervisor: Engº Célio Albuquerque ( [email protected] ) Local de Trabalho: FEUP ( Lab. Microelectrónica I223 ) e Chipidea Página Web: www.fe.up.pt/~ee00236/ Licenciatura em Engenharia Electrotécnica e de Computadores – Projecto, Seminário ou Trabalho Final de Curso Licenciatura em Engenharia Electrotécnica e de Computadores – Projecto, Seminário ou Trabalho Final de Curso 2003/2004 2003/2004 MOTIVAÇÃO As tarefas de Síntese Lógica e Place&Route, embora parcialmente automatizadas através do recurso às ferramentas de CAD, são de vital importância para o sucesso ou fracasso do resultado final. Importa portanto conseguir realizá-las de maneira a obter, não só o melhor resultado possível, mas também obtê-lo dentro de parâmetros competitivos. OBJECTIVO As diversas tarefas que compõem o back-end digital revestem-se de uma complexidade bastante apreciável. Isto deve-se, logo de início, ao trabalho em circuitos de grande dimensão em termos de número de transístores, dimensão essa que obriga à utilização das referidas ferramentas. Serão elas que se encarregarão de semi-automatizar algumas tarefas que de outro modo seriam simplesmente impracticáveis. Estas ferramentas são, no entanto, bastante genéricas, pelo que a sua utilização para cada determinado circuito ou bloco de circuito implica a tomada de uma série de decisões de estratégia de utilização, bem como uma configuração muito apurada, de modo a se conseguir obter aquilo que era pretendido. É exactamente nisto que este trabalho incidiu. No final pretendia-se ter obtido conhecimentos profundos sobre todas estas questões que surgem durante o back-end digital. Estes conhecimentos irão permitir uma muito maior sistematização e portanto fluidez nas tarefas, o que levará inevitavelmente a uma maior competitividade, num ambiente empresarial em que o time-to-market desempenha um papel fulcral. Síntese Lógica Place&Route front- front- end end Descrições HDL Netlist Gate- Level Layout Digital Verificação Final back-end digital Design Compiler Scripts de Síntese Bibliotecas Tecnológicas Ficheiro .synop sys_dc Netlist Gate- Level Report s Top- level Sub- Bloco 1 Sub- Bloco n Instruções de : -Condições de Operação -Restrições Temporais -Inserção de Scan- Chains -Compilação/ Optimização -Verificação -Geração de Reports Descrições HDL Para Place&Route SÍNTESE LÓGICA PLACE & ROUTE VERIFICAÇÃO FINAL Silicon Ensemble Bibliotecas Tecnológicas ( ficheiro LEF ) Bibliotecas Tecnológicas ( ficheiro Verilog ) Timing Librarys ( ficheiro CTLF ) Netlist Gate- Level BitStream ( formato GDS ) LAYOUT DIGITAL Floorplann ing Placemen t Ex. de parâmetros: - Aspect Ratio -IO to Core Distance - Row Utilization Power Routing Ex. de operações: - Especificação de Power Rings - Especificação de Stripes Clock Trees Generatio n CT-Gen Ficheiros ctgen.commands ctgen.constraints Filler Cells Procedimentos: - Identificação de células disponíveis - Inserção recursiva das maiores para as menores Routing Procedimentos: -Clock Routing -Global/Final Routing ou WROUTE Sequência de Tarefas INTRODUÇÃO O trabalho insere-se na segunda parte do projecto de circuitos integrados digitais, ou seja, a obtenção de um layout digital a partir das descrições HDL do circuito pretendido. Para tal foram utilizadas as ferramentas de CAD automáticas apropriadas. Pretende-se pois executar a Síntese Lógica, Place&Route e Verificação Final de alguns blocos digitais já correctamente codificados e validados. Os blocos foram implementados numa tecnologia de Standard-Cells de 0.18µm. Contemplava-se a execução de blocos de complexidade variável e pretendia-se verificar os resultados obtidos com diferentes abordagens na utilização das ferramentas. RESULTADOS e CONCLUSÔES Referências Bibliográficas: [1] User’s Guide e Tutoriais disponibilizados pela Synopsys e Cadence; [2] Cadence Silicon Ensemble in the Digital Backend Domain for AMIS 0.35 Autores: J. Neves Rodrigues, T. Olsson e T. Lenart; [3] Place & Route with Silicon Ensemble Autor: T. Lenart - Lund University; [4] Step by Step guide to Place&Route with Cadence Silicon Ensemble Autor: J.C.Alves – FEUP; [5] Clock Tree Generation Autor: Lund University; Retirados da Internet Agradecimentos: aos professores João Canas Ferreira e José Carlos Alves; aos Engenheiros Célio Albuquerque e Pedro Alves da Chipidea, pela disponibilidade sempre demonstrada. Netlist Post- Layout ( Verilog ) Para geração de esquemático PLANO DE TRABALHO Estava previsto o seguinte plano de trabalho: - Estudo das ferramentas a utilizar - Síntese e Place&Route de blocos digitais de complexidade variável. - Elaboração do Relatório Final Para a síntese Lógica foi utilizada a ferramenta DesignCompiler da Synopsys. A tarefa consiste numa tradução das descrições em HDL (Verilog, no caso) dos circuitos em portas lógicas. No final é gerada uma netlist chamada de gate-level que será usada para fazer o Place&Route. A ferramenta tem como entradas: as bibliotecas tecnológicas e as descrições HDL; O ficheiro de configuração .synopsys_dc, que deverá ser atentamente trabalhado; e os scripts de síntese criados pelo projectista, onde constarão todas as instruções para as operações a serem executadas pela ferramenta. Estes scripts são exactamente o factor onde existe maior grau de liberdade e por isso concentram em si a maior parte da complexidade da Síntese. Tiveram de ser tomadas decisões em diversas áreas, tanto mais gerais como a estratégia de síntese, ou mais particulares como restrições a impor ou introdução de características particulares a um circuito ou bloco. No final foram gerados também diversos reports que permitiram analisar os resultados da síntese. Calibre Netlist Spice Ficheiro com as regras a cumprir BitStream completo ( formato GDS ) Extraida do esquemático Reports Tarefas DRC LVS Para o Place&Route foi utilizada a ferramenta Silicon Ensemble da Cadence. A tarefa consiste na definição e implementação do desenho físico dos blocos já sintetizados. É feita a definição dos vários parâmetros para o layout, a colocação das células da tecnologia adequadas da forma pretendida (placement), o dimensionamento e planeamento de linhas de alimentação e suas ligações. Poderá incluir outros itens como, por exemplo, inserção de pads ou geração de clock-trees (como no caso). Finalmente, é feito o encaminhamento (routing) de todas as ligações começando pelas mais prioritárias, ou seja, as referentes aos clocks. Recebe, como entradas, os vários ficheiros da tecnologia e a netlist gate-level criada pela Síntese. No final é exportado um ficheiro bitstream em formato GDS e eventualmente uma descrição Verilog do layout (para geração de esquemático) Para a Verificação Final (signoff) foi utilizada a ferramenta Calibre da Synopsys. Esta é a ferramenta aconselhada pela foundry para a tecnologia em causa. A tarefa consiste na execução do DRC- Design Rules Check e do LVS- Layout vs Schematic. Estas duas verificações permitem aferir a correcção do design antes de uma eventual inclusão noutros projectos ou mesmo produção. O DRC verifica se não há violações ás regras de desenho relativas à tecnologia. O LVS confirma a correcção das ligações ou seja, se o circuito corresponde realmente ao esquemático pretendido. Ambas as operações geram reports de erros para posterior análise. A execução do trabalho veio confirmar a complexidade das tarefas envolvidas. O aparecimento consecutivo das mais diversas questões, que originaram por exemplo muitas repetições de operações, colocou de facto em realce a importância que assume o seu conhecimento e experiência na sua resolução para uma sistematização cada vez maior do trabalho. Compreende-se pois que, num meio de produção, seja vital que todo este processo seja feito da forma mais fluída e rápida possível. Apesar do esforço envolvido, e confirmando uma vez mais a complexidade verificada, apenas foi executado um bloco digital. Na figura da direita pode-se ter uma ideia do aspecto visual do layout digital obtido. Este layout passou sem erros a fase de verificação final (executada na Chipidea). No final, penso ter realmente adquirido os conhecimentos pretendidos, apesar de obviamente, a execução de outro bloco ser desejável para a consolidação dos mesmos.

Criação de Layouts Digitais Utilizando Ferramentas de Síntese e Place&Route Automáticas

  • Upload
    justis

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

Criação de Layouts Digitais Utilizando Ferramentas de Síntese e Place&Route Automáticas. Licenciatura em Engenharia Electrotécnica e de Computadores – Projecto, Seminário ou Trabalho Final de Curso 2003/2004. Aluno: Fernando José Soares Leal ( [email protected] ) - PowerPoint PPT Presentation

Citation preview

Page 1: Criação de Layouts Digitais Utilizando Ferramentas de Síntese e Place&Route Automáticas

Criação de Layouts Digitais Utilizando Criação de Layouts Digitais Utilizando Ferramentas de Síntese e Place&Route Ferramentas de Síntese e Place&Route

AutomáticasAutomáticas

Aluno: Fernando José Soares Leal ( [email protected] )

Orientador: Prof. João Canas Ferreira ( [email protected] )

Supervisor: Engº Célio Albuquerque ( [email protected] )

Local de Trabalho: FEUP ( Lab. Microelectrónica I223 ) e Chipidea

Página Web: www.fe.up.pt/~ee00236/

Licenciatura em Engenharia Electrotécnica e de Computadores – Projecto, Seminário ou Trabalho Final de Curso 2003/2004Licenciatura em Engenharia Electrotécnica e de Computadores – Projecto, Seminário ou Trabalho Final de Curso 2003/2004

MOTIVAÇÃOAs tarefas de Síntese Lógica e Place&Route, embora

parcialmente automatizadas através do recurso às

ferramentas de CAD, são de vital importância para o

sucesso ou fracasso do resultado final.

Importa portanto conseguir realizá-las de maneira a

obter, não só o melhor resultado possível, mas também

obtê-lo dentro de parâmetros competitivos.

OBJECTIVOAs diversas tarefas que compõem o back-end digital

revestem-se de uma complexidade bastante apreciável.

Isto deve-se, logo de início, ao trabalho em circuitos de

grande dimensão em termos de número de transístores,

dimensão essa que obriga à utilização das referidas

ferramentas. Serão elas que se encarregarão de semi-

automatizar algumas tarefas que de outro modo seriam

simplesmente impracticáveis.

Estas ferramentas são, no entanto, bastante genéricas,

pelo que a sua utilização para cada determinado circuito

ou bloco de circuito implica a tomada de uma série de

decisões de estratégia de utilização, bem como uma

configuração muito apurada, de modo a se conseguir

obter aquilo que era pretendido.

É exactamente nisto que este trabalho incidiu. No final

pretendia-se ter obtido conhecimentos profundos sobre

todas estas questões que surgem durante o back-end

digital.

Estes conhecimentos irão permitir uma muito maior

sistematização e portanto fluidez nas tarefas, o que

levará inevitavelmente a uma maior competitividade,

num ambiente empresarial em que o time-to-market

desempenha um papel fulcral.

Síntese Lógica Place&Route

fro

nt-

end

fro

nt-

end

Descrições HDL Netlist Gate-Level Layout Digital

Verificação Final

back-end digital

Design Compiler

Scripts de Síntese

Bibliotecas Tecnológicas

Ficheiro .synopsys_dc

Netlist Gate-Level

Reports

Top-level

Sub-Bloco1

Sub-Bloco n

Instruções de:

-Condições de Operação

-Restrições Temporais

-Inserção de Scan-Chains

-Compilação/Optimização

-Verificação

-Geração de Reports

Descrições HDL

Para Place&Route

SÍNTESE LÓGICA

PLACE & ROUTE

VERIFICAÇÃO FINAL

Silicon Ensemble

Bibliotecas Tecnológicas

( ficheiro LEF )

Bibliotecas Tecnológicas ( ficheiro Verilog )

Timing Librarys ( ficheiro CTLF )

Netlist Gate-Level

BitStream ( formato GDS )

LAYOUT DIGITAL

Floorplanning PlacementEx. de parâmetros: -Aspect Ratio -IO to Core Distance -Row Utilization

Power Routing

Ex. de operações: -Especificação de Power Rings -Especificação de Stripes

Clock Trees Generation

CT-GenFicheiros

ctgen.commands ctgen.constraints

Filler CellsProcedimentos: -Identificação de células disponíveis -Inserção recursiva das maiores para as menores

RoutingProcedimentos: -Clock Routing -Global/Final Routing ou WROUTE

Sequência de Tarefas

INTRODUÇÃOO trabalho insere-se na segunda parte do projecto de circuitos integrados digitais, ou seja, a obtenção de um layout digital a

partir das descrições HDL do circuito pretendido. Para tal foram utilizadas as ferramentas de CAD automáticas apropriadas.

Pretende-se pois executar a Síntese Lógica, Place&Route e Verificação Final de alguns blocos digitais já correctamente

codificados e validados. Os blocos foram implementados numa tecnologia de Standard-Cells de 0.18µm.

Contemplava-se a execução de blocos de complexidade variável e pretendia-se verificar os resultados obtidos com diferentes

abordagens na utilização das ferramentas.

RESULTADOS e CONCLUSÔES

Referências Bibliográficas:

[1] User’s Guide e Tutoriais disponibilizados pela Synopsys e Cadence; [2] Cadence Silicon Ensemble in the Digital Backend Domain for AMIS 0.35 Autores: J. Neves Rodrigues, T. Olsson e T. Lenart;[3] Place & Route with Silicon Ensemble Autor: T. Lenart - Lund University; [4] Step by Step guide to Place&Route with Cadence Silicon Ensemble Autor: J.C.Alves – FEUP; [5] Clock Tree Generation Autor: Lund University;

Retirados da Internet

Agradecimentos: aos professores João Canas Ferreira e José Carlos Alves; aos Engenheiros Célio Albuquerque e Pedro Alves da Chipidea, pela disponibilidade sempre demonstrada.

Netlist Post-Layout ( Verilog )

Para geração de esquemático

PLANO DE TRABALHOEstava previsto o seguinte plano de trabalho:

- Estudo das ferramentas a utilizar

- Síntese e Place&Route de blocos digitais de

complexidade variável.

- Elaboração do Relatório Final

Para a síntese Lógica foi utilizada a ferramenta DesignCompiler da Synopsys.

A tarefa consiste numa tradução das descrições em HDL (Verilog, no caso) dos circuitos em portas lógicas. No final é gerada uma netlist chamada de gate-level que será usada para fazer o Place&Route.

A ferramenta tem como entradas: as bibliotecas tecnológicas e as descrições HDL; O ficheiro de configuração .synopsys_dc, que deverá ser atentamente trabalhado; e os scripts de síntese criados pelo projectista, onde constarão todas as instruções para as operações a serem executadas pela ferramenta.

Estes scripts são exactamente o factor onde existe maior grau de liberdade e por isso concentram em si a maior parte da complexidade da Síntese. Tiveram de ser tomadas decisões em diversas áreas, tanto mais gerais como a estratégia de síntese, ou mais particulares como restrições a impor ou introdução de características particulares a um circuito ou bloco.

No final foram gerados também diversos reports que permitiram analisar os resultados da síntese.

Calibre

Netlist Spice

Ficheiro com as regras a cumprir

BitStream completo ( formato GDS )

Extraida do esquemático

Reports

Tarefas

DRC LVS

Para o Place&Route foi utilizada a ferramenta Silicon Ensemble da Cadence.

A tarefa consiste na definição e implementação do desenho físico dos blocos já sintetizados.

É feita a definição dos vários parâmetros para o layout, a colocação das células da tecnologia adequadas da forma pretendida (placement), o dimensionamento e planeamento de linhas de alimentação e suas ligações. Poderá incluir outros itens como, por exemplo, inserção de pads ou geração de clock-trees (como no caso). Finalmente, é feito o encaminhamento (routing) de todas as ligações começando pelas mais prioritárias, ou seja, as referentes aos clocks.

Recebe, como entradas, os vários ficheiros da tecnologia e a netlist gate-level criada pela Síntese.

No final é exportado um ficheiro bitstream em formato GDS e eventualmente uma descrição Verilog do layout (para geração de esquemático)

Para a Verificação Final (signoff) foi utilizada a ferramenta Calibre da Synopsys. Esta é a ferramenta aconselhada pela foundry para a tecnologia em causa.

A tarefa consiste na execução do DRC- Design Rules Check e do LVS- Layout vs Schematic. Estas duas verificações permitem aferir a correcção do design antes de uma eventual inclusão noutros projectos ou mesmo produção.

O DRC verifica se não há violações ás regras de desenho relativas à tecnologia. O LVS confirma a correcção das ligações ou seja, se o circuito corresponde realmente ao esquemático pretendido. Ambas as operações geram reports de erros para posterior análise.

A execução do trabalho veio confirmar a complexidade das tarefas envolvidas. O aparecimento consecutivo das mais diversas questões, que originaram por exemplo muitas repetições de operações, colocou de facto em realce a importância que assume o seu conhecimento e experiência na sua resolução para uma sistematização cada vez maior do trabalho.

Compreende-se pois que, num meio de produção, seja vital que todo este processo seja feito da forma mais fluída e rápida possível.

Apesar do esforço envolvido, e confirmando uma vez mais a complexidade verificada, apenas foi executado um bloco digital. Na figura da direita pode-se ter uma ideia do aspecto visual do layout digital obtido. Este layout passou sem erros a fase de verificação final (executada na Chipidea).

No final, penso ter realmente adquirido os conhecimentos pretendidos, apesar de obviamente, a execução de outro bloco ser desejável para a consolidação dos mesmos.