notícias

Universidade de Ciência e Tecnologia da China/Huawei Noah entra em ação! Desempenho do chip ≠ pontuação de layout, estrutura de design EDA é totalmente de código aberto

2024-08-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Envio da equipe ChipBench
Qubits | Conta pública QbitAI

O layout físico do chip possui um novo padrão de avaliação que aponta diretamente para indicadores de desempenho!

O Laboratório MIRA da Universidade de Ciência e Tecnologia da China e o Laboratório Arca de Noé da Huawei lançaram em conjunto uma nova estrutura de avaliação e conjunto de dados, que é totalmente de código aberto.

Com este conjunto de padrões, espera-se que o problema de indicadores de layout inconsistentes e desempenho final de ponta a ponta, pontuações altas, mas baixo desempenho do PPA, seja resolvido.



No design de chips,automação de projetos eletrônicos(EDA) é um elo crucial e é conhecido como a "mãe dos chips" na indústria, e o layout físico do chip (Colocação) é um passo fundamental.

O problema do layout físico do chip é um problema NP-difícil. As pessoas tentaram usar a IA para fazer esse trabalho, mas falta um padrão de avaliação eficaz.

A escala de avaliação tradicional, as métricas proxy, embora fáceis de calcular, muitas vezes diferem significativamente do desempenho final ponta a ponta do chip.

Para preencher esta lacuna, o Laboratório MIRA da Universidade de Ciência e Tecnologia da China e o Laboratório Arca de Noé da Huawei lançaram em conjunto este projeto chamadoChiPBenchquadro de avaliação e conjuntos de dados relacionados.

Com o lançamento do ChiPBench, o autor também descobriu muitas deficiências no atual algoritmo de layout do chip e lembrou aos pesquisadores relevantes que é hora de desenvolver novos algoritmos.

O processo de design de chips enfrenta desafios

De acordo com a "Lei de Moore", a escala dos circuitos integrados (CIs) cresceu exponencialmente, apresentando desafios sem precedentes ao design de chips.

Para lidar com esta crescente complexidade, surgiram ferramentas EDA, que proporcionam grande ajuda aos engenheiros de hardware.

As ferramentas EDA podem concluir automaticamente várias etapas no fluxo de trabalho de design de chips, incluindo síntese de alto nível, síntese lógica, design físico, testes e verificação.



Entre eles, o layout do chip é uma etapa importante, e esta etapa pode ser dividida em duas subetapas - layout macro e layout de célula padrão.

O layout macro é uma questão fundamental no projeto físico de integração em grande escala (VLSI) e envolve principalmente o arranjo de componentes maiores, como SRAM e geradores de clock, geralmente chamados de macros.

Este estágio tem um impacto significativo no layout geral do chip e em parâmetros importantes de projeto, como comprimento do fio, consumo de energia e área.

No estágio subsequente de layout de unidade padrão, o que precisa ser tratado é o arranjo de unidades padrão maiores e menores. Essas unidades são os componentes básicos do design digital.

Normalmente, métodos como otimização e resolução combinatória são usados ​​neste estágio para otimizar o posicionamento do layout, minimizar a distância entre as unidades, estabelecer uma boa base para o trabalho de fiação subsequente e otimizar o desempenho do tempo de interconexão até certo ponto.

O layout do chip é tradicionalmente feito manualmente por designers profissionais humanos, o que não só consome muita mão de obra, mas também requer muito conhecimento prévio de especialistas.

Portanto, muitos métodos de automação de projeto, especialmente algoritmos baseados em inteligência artificial, foram desenvolvidos para automatizar esse processo.

No entanto, devido ao longo fluxo de trabalho de design de chips, a avaliação desses algoritmos geralmente se concentra em métricas de proxy intermediárias fáceis de calcular (como HPWL de comprimento de fio de meio perímetro, densidade de células de layout, etc.), mas essas métricas são frequentemente correlacionado com o desempenho ponta a ponta (ou seja, há um certo grau de desvio no PPA final projetado).

Por um lado, devido ao longo fluxo de trabalho de design de chips, obter desempenho ponta a ponta para uma determinada solução de layout de chip requer muito trabalho de design de engenharia. Ao mesmo tempo, o autor descobriu que usar diretamente as ferramentas EDA de código aberto existentes. e os conjuntos de dados muitas vezes não conseguem obter desempenho de ponta a ponta.

Devido às razões acima, os algoritmos existentes de layout de chip baseados em IA usam métricas de proxy intermediárias simples e facilmente disponíveis para treinar e avaliar os modelos aprendidos.

Por outro lado, como o indicador PPA reflete muitos aspectos que não foram totalmente considerados nas etapas anteriores,Grave lacuna entre as métricas da agência e as metas finais do PPA

Portanto, esta lacuna limita enormemente a aplicação de algoritmos de layout baseados em inteligência artificial existentes em cenários industriais reais.

Desempenho estimado do chip de ponta a ponta

O autor acredita que a razão para esta lacuna é queSimplificação excessiva dos primeiros conjuntos de dados

Por exemplo, o uso generalizado do formato Bookshelf é um exemplo representativo de "simplificação excessiva". Os resultados do layout neste formato não são adequados para fases de design subsequentes e não podem alcançar um design final eficaz.

Embora alguns conjuntos de dados subsequentes forneçam arquivos LEF/DEF e arquivos necessários para executar os estágios subsequentes, eles ainda contêm um número limitado de circuitos e não possuem as informações exigidas por algumas ferramentas de código aberto (como o OpenROAD).

Por exemplo, as definições de elementos de buffer necessárias para a síntese da árvore de relógio estavam faltando nos arquivos da biblioteca e as definições de camada nos arquivos LEF estavam incompletas, dificultando o trabalho durante a fase de roteamento.

Para resolver esses problemas, os autores construíram um conjunto de dados contendo informações abrangentes de implementação física de todo o processo.

O conjunto de dados abrange projetos em diversas áreas, incluindo componentes como CPUs, GPUs, interfaces de rede, tecnologias de processamento de imagem, dispositivos IoT, unidades criptográficas e microcontroladores.

Os autores executaram seis algoritmos de layout físico de chip baseados em inteligência artificial de última geração nesses projetos e conectaram os resultados de cada algoritmo de ponto único ao fluxo de trabalho de implementação física por meio de formatos de entrada/saída padrão para obter os resultados finais do PPA .



O conjunto de dados inicial é gerado usando arquivos Verilog como dados brutos. OpenROAD realiza síntese lógica e converte essas descrições de alto nível em netlists, detalhando as conexões elétricas entre os elementos do circuito.

A ferramenta de planejamento integrado do OpenROAD usa então esta netlist para configurar o layout físico do circuito no silício.

OpenROAD converte o projeto gerado na fase de planejamento em arquivos LEF/DEF para facilitar a aplicação de algoritmos de layout subsequentes.

Ao mesmo tempo, o autor concluiu todo o processo de design do EDA por meio do OpenROAD e gerou dados, incluindo layout, síntese da árvore de tempo e fiação nas etapas subsequentes.

O conjunto de dados ChipBench contém todos os kits de ferramentas de design necessários para cada estágio do processo de design físico.

Ao avaliar o algoritmo para a fase de layout, os arquivos de saída da fase anterior servem como entrada para o algoritmo de avaliação. O algoritmo processa esses arquivos de entrada, gera os arquivos de saída correspondentes e, em seguida, integra esses arquivos de saída no fluxo de design do OpenROAD.

Em última análise, o conjunto de dados reportará métricas de desempenho, incluindo TNS, WNS, área e consumo de energia para fornecer uma avaliação abrangente de desempenho de ponta a ponta.

Esta abordagem fornece um conjunto abrangente de métricas de avaliação que podem medir o impacto de um algoritmo de estágio específico no efeito final de otimização do design do chip, garantindo a consistência das métricas de avaliação e evitando as limitações de depender apenas de métricas simplificadas para um único estágio.

Este método de avaliação facilita a otimização e o desenvolvimento de vários algoritmos e garante que as melhorias nos algoritmos possam ser traduzidas em melhorias reais de desempenho nos designs de chips. Ao mesmo tempo, através de uma poderosa estrutura de testes e melhorias, promove o desenvolvimento de ferramentas EDA de código aberto mais eficientes e eficazes.



O layout do chip requer o desenvolvimento de novos algoritmos

Usando o fluxo de trabalho acima, o autor avaliou uma variedade de algoritmos de layout de chip baseados em inteligência artificial, incluindo SA, WireMask-EA, DREAMPlace, AutoDMP, MaskPlace, ChiPFormer e o algoritmo padrão no OpenROAD.

Os autores realizam uma avaliação ponta a ponta desses algoritmos e relatam as métricas de desempenho finais.



Além disso, os resultados da análise de correlação mostram que a correlação entre o MacroHPWL e os indicadores de desempenho finais é muito fraca, o que indica que a otimização do MacroHPWL tem um impacto muito limitado nestes indicadores de desempenho.

A correlação do Wirelength com WNS e TNS também é fraca. Isso significa que mesmo que alguns algoritmos de ponto único sejam bem-sucedidos na otimização de indicadores intermediários, como o Wirelength, eles podem melhorar apenas um determinado aspecto do indicador PPA na implementação física final, mas não podem otimizá-lo totalmente.



Portanto, há necessidade de encontrar indicadores intermediários mais adequados que possam se correlacionar melhor com as metas reais do PPA.

Os resultados da avaliação do autor revelam a inconsistência entre os indicadores intermediários enfatizados pelos algoritmos de layout convencionais atuais e os resultados finais de desempenho. Essas descobertas destacam a necessidade de desenvolver algoritmos de layout a partir de uma nova perspectiva.



△O pior diagrama de tempo de diferentes algoritmos de layout

Endereço do papel:
https://arxiv.org/abs/2407.15026
GitHub:https://github.com/MIRALab-USTC/ChiPBench

Conjunto de dados:
https://huggingface.co/datasets/ZhaojieTu/ChiPBench-D