{"id":2665,"date":"2021-06-09T14:25:16","date_gmt":"2021-06-09T14:25:16","guid":{"rendered":"http:\/\/sites.unica.it\/eolab\/?page_id=2665"},"modified":"2021-06-26T15:14:15","modified_gmt":"2021-06-26T15:14:15","slug":"high-level-synthesis","status":"publish","type":"page","link":"https:\/\/sites.unica.it\/eolab\/it\/high-level-synthesis\/","title":{"rendered":"High Level Synthesis"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2301\" src=\"http:\/\/sites.unica.it\/eolab\/files\/2021\/03\/hls_logo-2.jpg\" alt=\"\" width=\"250\" height=\"250\" \/><\/p>\n<h2>Informazioni Generali<\/h2>\n<ul>\n<li><b>studenti interessati:<\/b> studenti di dottorato<\/li>\n<li><strong>periodo:<\/strong> secondo semestre<\/li>\n<li><strong>durata:<\/strong> 24 ore<\/li>\n<li><strong>lingua:<\/strong> Inglese (eventualmente Italiano, in base alle necessit\u00e0 degli studenti)<\/li>\n<li><b>professore:<\/b> Carlo Sau\n<ul>\n<li><strong>e-mail: <\/strong><a href=\"mailto:carlo.sau@unica.it\">carlo.sau@unica.it<\/a><\/li>\n<li><strong>ufficio:<\/strong> DIEE, blocco M, piano 2<\/li>\n<li><strong>telefono:<\/strong> +39 070 6755778<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h2><b>Iscrizione<\/b><\/h2>\n<p>Il corso verr\u00e0 svolto nella prima met\u00e0 di luglio (il programma pressoch\u00e8 finale delle lezioni \u00e8 disponibile in fondo a questa pagina). Per iscriversi \u00e8 necessario mandare una e-mail al docente all&#8217;indirizzo carlo.sau@unica.it.<\/p>\n<hr \/>\n<h2><b>Sommario<\/b><\/h2>\n<p>A causa della diffusione dei Systems-on-Chip (SoCs) eterogenei, che integrano nello stesso chip logica general purpose e logica dedicata, l&#8217;Electronic Design Automation (EDA), che per i sistemi digitali si concentra nella sintesi logica e nell&#8217;implementazione, sta andando verso un ulteriore livello di astrazione. Se il Register Transfer Level (RTL) e i linguaggi di descrizione dell&#8217;hardware (Hardware Description Languages, HDLs) oggigiorno sono il modo pi\u00f9 comune di descrivere il comportamento del sistema, la strada verso l&#8217;adozione di linguaggi di pi\u00f9 alto livello e specifiche pi\u00f9 astratte \u00e8 stata gi\u00e0 pianificata e intrapresa. L&#8217;High Level Synthesis (HLS) utilizza linguaggi di programmazione general purpose, prevalentemente C, per generare una descrizione RTL del sistema pronta per la sintesi logica. Nonostante ci\u00f2, sono ancora necessari l&#8217;intervento dell&#8217;utente e la conoscenza di dettagli di basso livello, che hanno un grosso impatto nel sistema risultante e, nella pratica, limitano la grande diffusione di questa tecnica, dimostrando che la tecnologia di HLS si trova ad un buon stadio di sviluppo ma non \u00e8 ancora abbastanza matura.<\/p>\n<hr \/>\n<h2><b>Obiettivi<\/b><\/h2>\n<p>Il corso ha l&#8217;obiettivo di fornire le motivazioni dell&#8217;HLS, che risiedono nell&#8217;evoluzione dei SoC verso piattaforme eterogenee, cos\u00ec come nell&#8217;incremento della complessit\u00e0 delle applicazioni e del numero di dati da processare.<\/p>\n<p>Il flusso di HLS verr\u00e0 descritto ed esplorato sotto vari aspetti, e verranno analizzate diverse soluzioni di HLS disponibili in letteratura e nel mercato. Verranno studiati gli strumenti tipicamente disponibili per indirizzare l&#8217;HLS a seconda dei requisiti specifici e degli obiettivi, cos\u00ec come l&#8217;impatto che questi strumenti hanno sul sistema risultante.<\/p>\n<p>Alcuni tool di HLS (Vivado HLS e CAPH) verranno adottati nella pratica considerando uno stesso caso di studio per tutto il corso, in modo da comprendere meglio l&#8217;utilizzo, le potenzialit\u00e0 e le limitazioni di queste nuove soluzioni tecnologiche.<\/p>\n<hr \/>\n<h2><b>Syllabus<\/b><\/h2>\n<ol>\n<li>Introduzione [2h]<\/li>\n<li>Concetti base dell&#8217;HLS [8h]\n<ol>\n<li>Nozioni Necessarie<\/li>\n<li>Flusso di HLS<\/li>\n<\/ol>\n<\/li>\n<li>Software di HLS [12h]\n<ol>\n<li>Peculiarit\u00e0 dell&#8217;HLS<\/li>\n<li>Vivado HLS<\/li>\n<li>CAPH<\/li>\n<\/ol>\n<\/li>\n<li>Progetto Finale [2h]<\/li>\n<\/ol>\n<hr \/>\n<h2><b>Requisiti<\/b><\/h2>\n<ul>\n<li>Linguaggi di Programmazione<\/li>\n<li>Progettazione di Sistemi Digitali<\/li>\n<\/ul>\n<hr \/>\n<h2><b>Valutazione<\/b><\/h2>\n<ul>\n<li>Progetto Finale (progettazione di un acceleratore specializzato per un&#8217;applicazione d&#8217;esempio proposta dallo studente)<\/li>\n<\/ul>\n<hr \/>\n<h2><b>Programma delle Lezioni<\/b><\/h2>\n<ul>\n<li>Thursday, 01\/07\/2021: (9-11, 15-17), 4h\n<ul>\n<li>Introduzione (9-11)<\/li>\n<li>Concetti base dell&#8217;HLS &#8211; Nozioni Necessarie (15-17)<\/li>\n<li>Concetti base dell&#8217;HLS &#8211; Flusso di HLS (15-17)<\/li>\n<\/ul>\n<\/li>\n<li>Monday, 05\/07\/2021: (9-11, 15-17), 4h\n<ul>\n<li>Concetti base dell&#8217;HLS &#8211; Flusso di HLS (9-11)<\/li>\n<li>Concetti base dell&#8217;HLS &#8211; Flusso di HLS (15-17)<\/li>\n<\/ul>\n<\/li>\n<li>Wednesday, 07\/07\/2021: (9-11, 15-17), 4h\n<ul>\n<li>Concetti base dell&#8217;HLS &#8211; Flusso di HLS (9-11)<\/li>\n<li>Software di HLS &#8211; Peculiarit\u00e0 dell&#8217;HLS (15-17)<\/li>\n<li>Software di HLS &#8211; Vivado HLS (15-17)<\/li>\n<\/ul>\n<\/li>\n<li>Thursday, 08\/07\/2021: (9-11, 15-17), 4h\n<ul>\n<li>Software di HLS &#8211; Vivado HLS (9-11)<\/li>\n<li>Software di HLS &#8211; Vivado HLS (15-17)<\/li>\n<\/ul>\n<\/li>\n<li>Friday, 09\/07\/2021: (9-11), 2h\n<ul>\n<li>Software di HLS &#8211; Vivado HLS (9-11)<\/li>\n<\/ul>\n<\/li>\n<li>Monday, 12\/07\/2021: (16-18), 2h\n<ul>\n<li>Software di HLS &#8211; CAPH (16-18)<\/li>\n<\/ul>\n<\/li>\n<li>Tuesday, 13\/07\/2021: (16-18), 2h\n<ul>\n<li>Software di HLS &#8211; CAPH (16-18)<\/li>\n<\/ul>\n<\/li>\n<li>Tuesday, 20\/07\/2021: (9-11), 2h\n<ul>\n<li>Progetto Finale (9-11)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n","protected":false},"excerpt":{"rendered":"<p>Informazioni Generali studenti interessati: studenti di dottorato periodo: secondo semestre durata: 24 ore lingua: Inglese (eventualmente Italiano, in base alle necessit\u00e0 degli studenti) professore: Carlo Sau e-mail: carlo.sau@unica.it ufficio: DIEE, blocco M, piano 2&#46;&#46;&#46;<\/p>\n","protected":false},"author":2529,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2665","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/pages\/2665","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/users\/2529"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/comments?post=2665"}],"version-history":[{"count":15,"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/pages\/2665\/revisions"}],"predecessor-version":[{"id":2741,"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/pages\/2665\/revisions\/2741"}],"wp:attachment":[{"href":"https:\/\/sites.unica.it\/eolab\/it\/wp-json\/wp\/v2\/media?parent=2665"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}