Discusión: O proxecto OpenROAD pretende resolver o problema da automatización do deseño do procesador

Discusión: O proxecto OpenROAD pretende resolver o problema da automatización do deseño do procesador
Фото - Pexels - CC BY

En dado PWC, o mercado de tecnoloxía de semicondutores está crecendo: o ano pasado alcanzou os 481 millóns de dólares. Pero a súa taxa de crecemento recentemente diminuíu. As razóns para o descenso inclúen procesos de deseño de dispositivos confusos e falta de automatización.

Hai uns anos, enxeñeiros de Intel писалиque ao crear un microprocesador de alto rendemento ten que usar 100-150 ferramentas de software separadas (E DESDE). A situación pódese agravar no caso de dispositivos heteroxéneos, cuxa arquitectura inclúe varios tipos diferentes de chips: ASIC, FPGA, CPU ou GPU. Como resultado, prodúcense erros de deseño que atrasan o lanzamento dos produtos.

A pesar da gran cantidade de ferramentas auxiliares, os enxeñeiros aínda están obrigados a facer algún traballo manualmente. Os autores do libro "Síntese lóxica avanzada“Din que ás veces os deseñadores ten que escribir scripts en Skill ou Python de dous millóns de liñas para crear bibliotecas células.

Tamén se escriben scripts para analizar informes xerados polos sistemas EDA. Cando se desenvolve un chip mediante unha tecnoloxía de proceso de 22 nm, estes informes poden levar ata 30 terabytes.

DARPA decidiu corrixir a situación e tratar de estandarizar os procesos de deseño. Na axencia tamén considereque os métodos existentes para crear fichas están desactualizados. Organización lanzado programa de cinco anos OpenROAD, que ten como obxectivo desenvolver novas ferramentas para automatizar os procesos de deseño de chips.

Que tipo de programa

O programa inclúe varios proxectos que usan tecnoloxías de aprendizaxe automática e nube para automatizar etapas individuais de creación de chips. Como parte da iniciativa están sendo desenvolvidos (diagrama 1) máis de dez instrumentos. A continuación falaremos con máis detalle dalgúns deles: Flow Runner, RePlAce, TritonCTS, OpenSTA.

Corredor de fluxo é unha ferramenta para xestionar bibliotecas RTL e GDSII. Estes últimos son ficheiros de bases de datos que son un estándar da industria para o intercambio de información sobre circuítos integrados e as súas topoloxías. A solución baséase na tecnoloxía de contedores Docker. Podes executar Flow Runner tanto na nube como localmente. A guía de instalación está no repositorio oficial en github.

Substituír é unha solución na nube baseada na aprendizaxe automática, que se encarga de colocar compoñentes nun chip e automatizar o enrutamento. Por algúns datos, os algoritmos intelixentes aumentan a eficiencia da ferramenta nun 2-10% en comparación cos sistemas clásicos. Ademais, a implementación na nube facilita o escalado. Tamén está dispoñible a guía de instalación e configuración no repositorio.

TritonCTS — unha utilidade para optimizar os pulsos de reloxo subministrados ao chip. Axuda a dirixir os sinais do reloxo a todas as partes do dispositivo cos mesmos atrasos. O principio de funcionamento baséase en Árbores H. Este enfoque aumenta eficiencia de distribución do sinal nun 30% en comparación cos métodos tradicionais. Os desenvolvedores din que no futuro esta cifra pode aumentar ata o 56%. Código fonte e scripts de TritonCTS dispoñibles en github.

OpenSTA - un motor para análise de temporización estática. Dálle ao deseñador a oportunidade de comprobar a funcionalidade do chip antes de montarlo. Código de exemplo en OpenSTA parece como isto.

@@ -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

A utilidade admite descricións de listas de rede do código Verilog, bibliotecas de formato Liberty, ficheiros SDC, etc.

Vantaxes e inconvenientes

Expertos de IBM e IEEE celebrarque as tecnoloxías na nube e a aprendizaxe automática están moi atrasadas para o seu uso na produción de chips. Na súa opinión, o proxecto DARPA pode converterse nun exemplo exitoso da aplicación desta idea e poñerá o inicio dos cambios na industria.

Tamén se espera que a natureza aberta de OpenROAD cree unha poderosa comunidade arredor das ferramentas e atraiga novas empresas.

Discusión: O proxecto OpenROAD pretende resolver o problema da automatización do deseño do procesador
Фото - Pexels - CC BY

Xa hai participantes: un laboratorio que desenvolve chips na Universidade de Michigan, será o primeiro, que probará as ferramentas de código aberto de OpenROAD. Pero aínda non se sabe se as novas solucións poderán ter un efecto notable no custo dos produtos finais.

En xeral, espérase que as ferramentas que se están a desenvolver baixo o liderado de DARPA teñan un impacto positivo na industria dos procesadores e comezarán a xurdir máis novos proxectos nesta área. Un exemplo sería unha ferramenta gEDA — permítelle deseñar chips cun número ilimitado de compoñentes. gEDA inclúe utilidades para editar e modelar microcircuítos e enrutamento de placas. A solución foi desenvolvida para plataformas UNIX, pero algúns dos seus compoñentes tamén funcionan en Windows. Pódese atopar unha guía para traballar con eles na documentación da páxina web do proxecto.

As ferramentas dispoñibles de xeito gratuíto ofrecen máis opcións ás organizacións e startups independentes. É posible que co paso do tempo, os novos enfoques de OpenROAD para o desenvolvemento de ferramentas EDA e o deseño de chips poidan converterse nun estándar da industria.

Sobre o que escribimos no noso blog corporativo:

Fonte: www.habr.com

Engadir un comentario