Vés al contingut
26 jul. 2021

Flux de disseny del projecte DRAC

La lògica i la síntesi física darrere del projecte DRAC s’explica ara a través d’un flux de disseny, inclosos els passos dels processadors basats en l’arquitectura RISC-V.

Design flow of the DRAC project. BSC

Share

DRAC és un projecte de recerca amb l’objectiu de produir processadors RISC-V i diferents acceleradors que intenten aconseguir el màxim rendiment possible tot minimitzant el consum d’energia. Per aconseguir-ho, és obligatòria una selecció correcta del procés tecnològic on es fabricaran els processadors, ja que afecta el rendiment, el consum d'energia i els costos de fabricació. Al projecte DRAC s’han estudiat diverses tecnologies, però la seleccionada és el procés tecnològic FDSOI (22FDX) de 22 nm de Globalfoundries (GF), ja que ens permet orientar freqüències de rellotge superiors a 1 GHz, ens dóna diferents opcions per reduir el consum d’energia i els costos de fabricació són relativament baixos.

El projecte DRAC és una col·laboració conjunta entre l’Institut de Microelectrònica de Barcelona, el Centre de Supercomputació de Barcelona, l’Institut Politècnic Nacional (Mèxic) i la UPC, entre altres institucions.

Font original: Barcelona Supercomputing Center.

En el projecte DRAC estem dissenyant SoCs (de l’anglès System-on-Chip) que inclouen processadors basats en l’arquitectura RISC-V, diferents acceleradors i un conjunt de blocs analògics com son un PLL, un SerDes, un ADC i SPADs (de l’anglès, Phase-Locked Loop, Serializer Deserializer, Analog to Digital Converter i Single Photon Avalanche Diode, respectivament). D’aquests blocs analògics, el PLL i el SerDes permeten augmentar el nombre d’instruccions executades pel processador; el PLL permet augmentar la freqüència de treball mentre que el SerDes habilita comunicacions més ràpides amb les memòries externes. D’altra banda, l’ADC permet interactuar amb sensors analògics i els SPADs son una eina per poder habilitar la criptografia quàntica.

A l’hora de planificar l’estratègia d’integració dels diferents elements del SoC, s’ha de considerar que treballarem amb un disseny de senyal mixta. Tot i així, com els circuits que ocupen més àrea i els més complexes son els digitals, l’estratègia escollida és la DoT (de l’anglès, Digital On Top). Això vol dir que començarem a treballar com si el SoC fos purament digital, i a mig camí hi afegirem la informació dels blocs analògics que s’han dissenyat per separat.

Cada bloc analògic es dissenya seguint el flux analògic, emprant l’eina “virtuoso” de Cadence®. En canvi, els dissenys digitals com el processador o els acceleradors es codifiquen amb llenguatge RTL (de l’anglès , Register-Transfer Level), que ens permet descriure el comportament del circuit que volem dissenyar i verificar-lo amb simulacions. Un cop estem segurs que el circuit dissenyat té el comportament esperat, es necessita traduir el comportament descrit a un conjunt de portes lògiques que facin la mateixa funció. Aquest pas s’anomena síntesis lògica, i per a realitzar-la son necessàries la descripció del nostre circuit, la informació de portes disponibles de la tecnologia que fem servir i incloure les limitacions del circuit.

Un cop finalitzada la síntesis obtenim un fitxer, anomenat “netlist”, on hi trobarem el circuit digital que hem dissenyat expressat en portes lògiques disponibles en la tecnologia escollida. El següent pas consisteix en distribuir les cel·les lògiques, blocs analògics, GPIOs i memòries en una àrea determinada i, a més, realitzar les connexions entre ells. Aquest pas s’anomena síntesis física, i es pot resumir, molt breument, en 5 etapes: Floorplan, Placement, Clock tree synthesis (CTS), Routing i Signoff o Final Verification (veure figura 2, del pas 6 al 10).

En l’etapa Floorplan fem la distribució del nostre SoC, l’àrea que ocuparan els circuits digitals, on posarem les memòries i GPIOs, on posarem els blocs analògics i com alimentarem els circuits. En l’etapa Placement, es realitza una primera disposició de les portes lògiques per a comprovar que el disseny realment es pot realitzar, considerant l’espai disponible i les limitacions temporals que volem aconseguir. En l’etapa CTS, es realitza la distribució de la xarxa dels rellotges del sistema. En l’etapa Routing, es realitza la connexió física, a través de línies de metall, de les portes lògiques. Finalment, l’etapa Signoff serveix per tancar el xip; aquí s’executen comprovacions temporals i tecnològiques per saber si el xip compleix les limitacions temporals que desitgem i, també, si el xip pot ser fabricat. Aquesta última etapa finalitza generant un arxiu GDS II que, en resum, és el que necessita la fabrica de semiconductors per a fabricar el xip.

Cofinançament del Fons Europeo de Desenvolupament Regional de la Unió Europea

El projecte DRAC amb número d'expedient 001-P-001.723 ha estat cofinançat en un 50% amb 2.000.000,00 € pel Fons Europeu de Desenvolupament Regional de la Unió Europea en el marc de el Programa Operatiu FEDER de Catalunya 2014-2020, amb el suport de la Generalitat de Catalunya.

    FEDER
    GenCat - Departament de Recerca i Universitats