Till innehåll på sidan

High-Level Synthesis for SiLago

Advances in Optimization of High-Level Synthesis Tool and Neural Network Algorithms

Tid: To 2022-10-06 kl 13.00

Plats: Ka-Sal C (Sven-Olof Öhrvik), Kistagången 16, Kista

Språk: Engelska

Ämnesområde: Informations- och kommunikationsteknik

Respondent: Yu Yang , Elektronik och inbyggda system

Opponent: Professor Madhura Purnaprajna, P.E.S. University

Handledare: Ahmed Hemani, Elektronik och inbyggda system; Zhonghai Lu, Elektronik och inbyggda system

Exportera till kalender

QC 20220914

Abstract

Automatiseringen av inbyggda system ökar ingenjörers produktivitet och minskar systemens energiförbrukning. Målen är ofta motstridiga då högre ingenjörsproduktivitet sker på bekostnad av energiförbrukning och vice versa. Högnivåsyntes (high-level synthesis, HLS) exemplifierar dilemmat. Trots att det forskats i mer än tre decennier på HLS har inte designmetodiken blivit mainstream inom elektronikdesign på grund av det stora effektivitetsgapet mellan den HLS-genererade och den manuellt skapade RTL-designen.

Avhandlingen handlar om detta dilemma. Forskningsutmaningarna kring att förbättra HLS avhandlar vi i tre delar: 1) hårdvaruarkitektur och underliggande VLSI-designmetodik, 2) elektronikdesignens algoritmer och datastruktuer och 3) optimering av den algoritm som ska implementeras.

SiLago-plattformen har visats vara en framstående hårdvaruarkitektur som kan uppnå ASIC-liknande prestanda samtidigt som den är en idealisk för HLS. Plattformen har följande egenskaper: 1) SiLago förkroppsligar den parallella distribuerade två-nivåskontrollparadigmen, 2) SiLago-komponenter är försyntetiserade med vilka funktionella VLSI-designer kan skapas genom hopfogning utan ytterligare logisk eller fysisk syntes.

Därför skapar inte SiLagos HLS-verktyg en enda controller utan flera stycken samverkande controllers. Var och en av dessa består av en tvånivåshierarki. Detta medför unika synkroniserings- och schemaläggningsutmaningar. Unika datastrukturer och schemaläggningsmodeller har utvecklats för SiLago HLS för att stödja denna två-nivåskontrollparadigm. Därutöver skapar SiLagos HLS-verktyg GDSII-makron vars genomsnittliga energiförbrukning, yta och prestanda inte uppskattas utan bestäms med post-layout precision tack vare SiLagos försyntetiserade komponenter. Målgruppen för SiLagos HLS-verktyg är inte slutanvändare utan utvecklare som utvecklar algoritmbibliotek som sedan används av SiLagos applikationssyntesverktyg (application level synthesis, ALS). Applikationen ses som en hierarki av algoritmer. Biblioteket kan innehålla algoritmer vars egenskaper skiljer, såsom olika funktioner, dimensioner och parallelliseringsmöjligheter. ALS-verktyget utforskar designrymden i termer av antal och algoritmtyper, istället för aritmetiska resurser, som konkurrerande HLS-verktyg gör.

Algoritmer utvecklas ofta av sakkunniga. För att de ska kunna realiseras i hårdvara måste de optimeras med målplattformen i åtanke. Två algoritmer har valts som demonstrationsexempel. Det första exemplet är en genidentifieringsalgoritm som bygger på en självorganiserande karta (self-organizing map, SOM). Det andra exemplet är en avancerad modell av hjärnbarken, ett bayesiskt neuralt överföringsnätverk (Bayesian confidence propagation network, BCPNN). Då modellen utvecklats av beräkningsneurovetenskapspersoner kräver den för mycket lagring och överföringskapacitet.

Avhandlingen handlar om de två sistnämnda delarna eftersom den förstnämnda redan avhandlats av andra. Vi visar hur SiLago HLS stödjer distribuerade tvånivåskontrollsystem. Därutöver och med de två nämnda algoritmexemplen - SOM och BCPNN - demonstrerar vi algoritmspecifika och plattformsspecifika optimeringstekniker. Forskningen som beskrivs i avhandlingen har signifikant förbättrat SiLagos HLS-ramverk.

urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-317555