Discussão: O projeto OpenROAD pretende resolver o problema de automação do design de processadores

Discussão: O projeto OpenROAD pretende resolver o problema de automação do design de processadores
Фото - Pexels - CC POR

Em Conforme PWC, o mercado de tecnologia de semicondutores está crescendo – no ano passado atingiu US$ 481 bilhões. Mas a sua taxa de crescimento recentemente diminuiu. As razões para o declínio incluem processos confusos de design de dispositivos e falta de automação.

Há alguns anos, engenheiros da Intel писалиque ao criar um microprocessador de alto desempenho você terá que usar de 100 a 150 ferramentas de software separadas (EDA). A situação pode ser agravada no caso de dispositivos heterogêneos, cuja arquitetura inclui diversos tipos de chips - ASIC, FPGA, CPU ou GPU. Como resultado, ocorrem erros de design que atrasam o lançamento dos produtos.

Apesar do grande número de ferramentas auxiliares, os engenheiros ainda são obrigados a realizar alguns trabalhos manualmente. Os autores do livro "Síntese Lógica Avançada"dizem que às vezes os designers tem que escrever scripts em Skill ou Python de dois milhões de linhas para criar bibliotecas com células.

Os scripts também são escritos para analisar relatórios gerados por sistemas EDA. Ao desenvolver um chip usando tecnologia de processo de 22 nm, esses relatórios podem levar até 30 terabytes.

A DARPA decidiu corrigir a situação e tentar padronizar os processos de design. Na agência também considereque os métodos existentes para criar chips estão desatualizados. Organização lançado programa de cinco anos Estrada aberta, que visa desenvolver novas ferramentas para automatizar processos de design de chips.

Que tipo de programa

O programa envolve vários projetos que usam aprendizado de máquina e tecnologias de nuvem para automatizar etapas individuais de criação de chips. Como parte da iniciativa estão sendo desenvolvidos (diagrama 1) mais de dez instrumentos. A seguir falaremos com mais detalhes sobre alguns deles: Flow Runner, RePlAce, TritonCTS, OpenSTA.

Corredor de fluxo é uma ferramenta para gerenciamento de bibliotecas RTL e GDSII. Estes últimos são arquivos de banco de dados que são um padrão da indústria para troca de informações sobre circuitos integrados e suas topologias. A solução é baseada na tecnologia de contêiner Docker. Você pode executar o Flow Runner na nuvem e localmente. O guia de instalação está no repositório oficial no GitHub.

Substituir é uma solução em nuvem baseada em aprendizado de máquina, responsável por colocar componentes em um chip e automatizar o roteamento. Por alguns dados, algoritmos inteligentes aumentam a eficiência da ferramenta em 2–10% em comparação com sistemas clássicos. Além disso, a implementação na nuvem facilita o dimensionamento. O guia de instalação e configuração também está disponível no repositório.

TritãoCTS — um utilitário para otimizar os pulsos de clock fornecidos ao chip. Ajuda a encaminhar sinais de relógio para todas as partes do dispositivo com os mesmos atrasos. O princípio de funcionamento é baseado em Árvores H. Esta abordagem levanta eficiência de distribuição de sinal em 30% em comparação com métodos tradicionais. Os desenvolvedores afirmam que no futuro esse número poderá aumentar para 56%. Código-fonte e scripts TritonCTS disponíveis no GitHub.

OpenSTAName — um mecanismo para análise de temporização estática. Dá ao projetista a oportunidade de verificar a funcionalidade do chip antes de ele ser realmente montado. Código de exemplo no OpenSTA parece é isso.

@@ -6,7 +6,7 @@ read_liberty -corner ff example1_fast.lib
read_verilog example1.v
link_design top
set_timing_derate -early 0.9
set_timing_derate -early 1.1
set_timing_derate -late 1.1
create_clock -name clk -period 10 {clk1 clk2 clk3}
set_input_delay -clock clk 0 {in1 in2}
# report all corners

O utilitário suporta descrições netlist de código Verilog, bibliotecas de formato Liberty, arquivos SDC, etc.

Vantagens e desvantagens

Especialistas da IBM e IEEE celebrarque as tecnologias de nuvem e o aprendizado de máquina já deveriam ter sido usadas na produção de chips. Na sua opinião, o projecto DARPA pode tornar-se um exemplo de sucesso da implementação desta ideia e vai colocar o início das mudanças na indústria.

Espera-se também que a natureza aberta do OpenROAD crie uma comunidade poderosa em torno das ferramentas e atraia novas startups.

Discussão: O projeto OpenROAD pretende resolver o problema de automação do design de processadores
Фото - Pexels - CC POR

Já existem participantes - um laboratório de desenvolvimento de chips com sede na Universidade de Michigan, será o primeiro, que testará ferramentas de código aberto OpenROAD. Mas ainda não se sabe se novas soluções poderão ter um efeito perceptível no custo dos produtos finais.

No geral, espera-se que as ferramentas desenvolvidas sob a liderança da DARPA tenham um impacto positivo na indústria de processadores e mais novos projetos começarão a surgir nesta área. Um exemplo seria uma ferramenta gEDA — permite projetar chips com um número ilimitado de componentes. gEDA inclui utilitários para edição e modelagem de microcircuitos e roteamento de placas. A solução foi desenvolvida para plataformas UNIX, mas vários de seus componentes também funcionam em Windows. Um guia para trabalhar com eles pode ser encontrado na documentação no site do projeto.

Ferramentas disponíveis gratuitamente oferecem mais opções a organizações independentes e startups. É possível que, com o tempo, as novas abordagens do OpenROAD para o desenvolvimento de ferramentas EDA e design de chips possam se tornar um padrão da indústria.

Sobre o que escrevemos em nosso blog corporativo:

Fonte: habr.com

Adicionar um comentário