Discussão: o projeto OpenROAD pretende resolver a tarefa de automatizar o design dos processadores


Fotos - Pexels - CC BY

Segundo a PWC, o mercado de tecnologia de semicondutores está crescendo - no ano passado atingiu a barra de US $ 481 bilhões. Mas sua taxa de crescimento diminuiu recentemente. Entre os motivos da recessão estão a complexidade dos processos de design de dispositivos e a falta de automação.

Alguns anos atrás, os engenheiros da Intel escreveram que, ao criar um microprocessador de alto desempenho, é necessário usar 100-150 ferramentas de software separadas ( EDA ). A situação pode ser agravada no caso de dispositivos heterogêneos, cuja arquitetura inclui vários tipos diferentes 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 fazer parte do trabalho manualmente. Os autores do livro Advanced Logic Synthesis dizem que, às vezes, os designers precisam escrever scripts em Skill ou Python a partir de dois milhões de linhas para formar bibliotecas com células .

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

Eles decidiram corrigir a situação e tentar padronizar os processos de design no DARPA. A agência também acredita que os métodos existentes para criar chips estão desatualizados. A organização lançou o programa OpenROAD de cinco anos, cujo objetivo é desenvolver novas ferramentas para automatizar os processos de design de chips.

Que tipo de programa


O programa envolve vários projetos que usam aprendizado de máquina e tecnologia em nuvem para automatizar os estágios individuais da criação de chips. Como parte da iniciativa , mais de dez ferramentas estão sendo desenvolvidas (Esquema 1). A seguir, falaremos mais sobre alguns deles: Flow Runner, RePlAce, TritonCTS, OpenSTA.

O Flow Runner é uma ferramenta para gerenciar bibliotecas RTL e GDSII. Os últimos são arquivos de banco de dados que são o padrão do setor para a 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 no local. O guia de instalação está no repositório oficial no GitHub .

O RePlAce é uma solução de aprendizado de máquina baseada em nuvem, responsável por colocar os componentes em um chip e automatizar o rastreamento. Segundo alguns relatórios , algoritmos inteligentes aumentam a eficiência da ferramenta em 2 a 10% em comparação com os sistemas clássicos. Além disso, a implementação na nuvem simplifica o dimensionamento. O guia de instalação e configuração também está no repositório .

TritonCTS é um utilitário para otimizar pulsos de clock fornecidos ao chip. Ajuda a rotear relógios para todas as partes do dispositivo com a mesma latência. O princípio de operação é baseado em árvores H. Essa abordagem aumenta a eficiência da distribuição do sinal em 30%, em comparação com os métodos tradicionais. Os desenvolvedores dizem que, no futuro, esse número poderá ser aumentado para 56%. O código fonte e os scripts do TritonCTS estão disponíveis no GitHub .

O OpenSTA é um mecanismo de análise de tempo estático. Dá ao desenvolvedor a oportunidade de verificar o desempenho do chip antes mesmo de sua montagem. O exemplo de código no OpenSTA se parece com 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 de lista de rede do código Verilog, bibliotecas no formato Liberty, arquivos SDC etc.

Vantagens e desvantagens


Especialistas da IBM e IEEE observam que a computação em nuvem e o aprendizado de máquina são utilizados há muito tempo na fabricação de chips. Na opinião deles, o projeto DARPA pode ser um exemplo bem-sucedido da implementação dessa ideia e iniciará mudanças no setor.

Também é esperado que a natureza aberta do OpenROAD permita a formação de uma comunidade poderosa em torno de ferramentas e atraia novas startups.


Fotos - Pexels - CC BY

Já existem participantes - o laboratório envolvido no desenvolvimento de chips baseado na Universidade de Michigan será o primeiro a testar as ferramentas abertas do OpenROAD. Ainda não se sabe se novas soluções poderão ter um efeito perceptível no custo dos produtos finais.

Em geral, espera-se que as ferramentas desenvolvidas sob a liderança da DARPA tenham um impacto positivo na indústria de processadores, e mais e mais novos projetos começarão a aparecer nesta área. Um exemplo seria a ferramenta gEDA - permite projetar chips com um número ilimitado de componentes. O gEDA inclui utilitários para editar e modelar chips e placas de rastreamento. A solução foi desenvolvida para plataformas UNIX, mas vários de seus componentes também funcionam no Windows. As orientações sobre como trabalhar com eles podem ser encontradas na documentação no site do projeto .

As ferramentas distribuídas livremente fornecem às organizações e startups independentes mais oportunidades. É provável que, com o tempo, novas abordagens do OpenROAD para o desenvolvimento de ferramentas EDA e criação de chips possam se tornar um padrão do setor.



Sobre o que escrevemos em nosso blog corporativo:

Source: https://habr.com/ru/post/pt453200/


All Articles