{"id":1718,"date":"2014-05-31T17:02:23","date_gmt":"2014-05-31T17:02:23","guid":{"rendered":"http:\/\/sites.unica.it\/rpct\/?page_id=1718"},"modified":"2015-08-07T09:30:05","modified_gmt":"2015-08-07T09:30:05","slug":"how-it-works","status":"publish","type":"page","link":"https:\/\/sites.unica.it\/rpct\/risultati-ricerca\/how-it-works\/","title":{"rendered":"How It Works"},"content":{"rendered":"<h4>it<\/h4><p>Il tool MDC prende in ingresso reti di attori descritte mediante il modello dataflow proprio del formalismo MPEG-RVC.<\/p>\n<p>Ogni rete \u00e8 formata dall\u2019interconnessione di attori: rappresentazioni astratte che implementano una certa funzionalit\u00e0. Una rete pu\u00f2 essere composta da attori atomici o attori complessi. Un attore atomico \u00e8 un elemento unitario, non ulteriormente scomponibile. Un attore complesso \u00e8 invece una sottorete di attori atomici, a loro volta, eventualmente, complessi.<\/p>\n<p><a href=\"http:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-2055\" src=\"http:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1-856x1024.png\" alt=\"mdc1\" width=\"581\" height=\"695\" srcset=\"https:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1-856x1024.png 856w, https:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1-250x300.png 250w, https:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1.png 1720w\" sizes=\"auto, (max-width: 581px) 100vw, 581px\" \/><\/a><\/p>\n<p>La versione base del tool MDC, MDC 1.0, \u00a0\u00e8 composta da un front-end, che comprende un <b>parser<\/b> e un <b>merger<\/b>, ed un back-end che esegue il mapping hardware.<\/p>\n<p>Il <b>parser <\/b>si occupa di svolgere il cosiddetto \u201cflattening\u201d: le reti in ingresso, qualora contengano attori complessi, vengono ricondotte a reti di soli attori atomici.<\/p>\n<p>Il <b>merger <\/b>si occupa di identificare le similarit\u00e0 (gli attori comuni) fra le reti di attori atomici e di \u201cfonderle\u201d fra loro in un unica rete multi-funzionale. Ingressi, uscite o attori possono essere condivisi tra diverse reti se identici e compatibili. La condivisione di questi elementi pu\u00f2 avvenire attraverso degli attori aggiuntivi di switching.<\/p>\n<p>Le uscite del front-end di MDC sono:<\/p>\n<ul>\n<li>il grafo orientato \u201cmulti-dataflow\u201d (ossia multi-funzionale);<\/li>\n<li>la tabella di configurazione che tiene traccia della programmabilit\u00e0 degli attori di switching.<\/li>\n<\/ul>\n<p>Il back-end di MDC \u00e8 denominato Platform Composer Tool. Esso, a partire dalla rappresentazione multi-dataflow generata dal front-end, ricava la descrizione HDL della piattaforma finale. La riconfigurazione del sistema, da una funzionalit\u00e0 all\u2019altra, avviene attraverso l\u2019utilizzo a livello fisico delle <strong><a href=\"http:\/\/sites.unica.it\/rpct\/risultati-ricerca\/how-it-works\/switching-units\/\">Switching Boxes<\/a><\/strong> (SBoxes). Queste ultime corrispondono agli attori di switching inseriti dal front-end durante la fase di fusione delle reti di ingresso. Indirizzando opportunamente le SBoxes, grazie alle informazioni memorizzate nella tabella di configurazione prodotta dal front-end, il sistema MDC-based pu\u00f2 implementare tutte le diverse funzionalit\u00e0 originariamente implementabili stand-alone.<\/p>\n<p>MDC non si occupa di High-Level Synthesis (ossia di compilazione diretta di codice RTL a partire dalla specifica di alto livello CAL) quindi non \u00e8 in grado di generare il codice HDL del sistema riconfigurabile in maniera completamente autonoma. In sintesi i suoi compiti sono:<\/p>\n<ul>\n<li>definizione automatica della specifica del sistema multi-funzionale;<\/li>\n<li>generazione del top module del sistema;<\/li>\n<li>gestione della programmabilit\u00e0 automatica.<\/li>\n<\/ul>\n<p>Per l\u2019implementazione fisica degli attori, MDC si interfaccia con una libreria di componenti esterna.<\/p>\n<p>Per maggiori dettagli riguardo gli algoritmi implementati da MDC 1.0:<a href=\"http:\/\/sites.unica.it\/rpct\/the-multi-dataflow-composer-tool-generation-of-on-the-fly-reconfigurable-platforms\/\"> articolo<\/a>.<\/p>\n<hr \/>\n<p><strong>Guarda anche: <\/strong><a title=\"Step-by-step example\" href=\"http:\/\/sites.unica.it\/rpct\/step-by-step-example\/\">Step-by-step Example<\/a>, <a title=\"Switching Units\" href=\"http:\/\/sites.unica.it\/rpct\/switching-units\/\">Switching Units<\/a>, <a title=\"MDC 2.0\" href=\"http:\/\/sites.unica.it\/rpct\/mdc-2-0\/\">MDC 2.0<\/a>.<\/p>\n<p><a title=\"Tool overview\" href=\"http:\/\/sites.unica.it\/rpct\/risultati-ricerca\/\">Torna a Tool Uverview<\/a><\/p>\n<p><\/p><h4>en<\/h4><p>The MDC tool takes as input networks of actors described according to the dataflow formalism of the MPEG-RVC standard.<\/p>\n<p>Each network is formed by the interconnection of actors: abstract representations that implement a specific functionality. A network can consist of atomic or complex actors. An atomic actor is an elementary unit that cannot further decomposed. A complex actor is instead a subnet of actors that, in turn, can be atomic or even complex.<\/p>\n<p><a href=\"http:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-2055\" src=\"http:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1-856x1024.png\" alt=\"mdc1\" width=\"581\" height=\"695\" srcset=\"https:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1-856x1024.png 856w, https:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1-250x300.png 250w, https:\/\/sites.unica.it\/rpct\/files\/2014\/05\/mdc1.png 1720w\" sizes=\"auto, (max-width: 581px) 100vw, 581px\" \/><\/a><\/p>\n<p>The basic version of the tool MDC, MDC 1.0, consists of a front-end, which includes a <b>parser <\/b>and a <b>merger<\/b>, and a back-end that is in charge of the real mapping of the physical system.<\/p>\n<p>The <b>parser <\/b>is responsible to carry out the so-called &#8220;flattening&#8221; operation: the input networks, if they contain complex actors, are converted in networks composed of atomic actors only.<\/p>\n<p>The <b>merger <\/b>is concerned with identifying the similarities (the common actors) between networks of atomic actors and merges them together in a unique multi-functional network. Input ports, output ports or actors can be shared between different networks if identical (same functionality) and compatible (same ports width). Sharing the common elements is made possible by the insertion of additional dedicated switching actors. \u00a0The outputs of the MDC front-end of MDC are:<\/p>\n<ul>\n<li>the &#8220;multi-dataflow&#8221; graph (i.e. multi-functional);<\/li>\n<li>the configuration table that keeps track of the programmability of the switching actors.<\/li>\n<\/ul>\n<p>The back end of MDC is called Platform Composer Tool. Starting from the multi-dataflow network generated by the front end, it produces the HDL description of the overall multi-functional platform. System reconfiguration is achieved at the physical level by the adoption of the <strong><a href=\"http:\/\/sites.unica.it\/rpct\/risultati-ricerca\/how-it-works\/switching-units\/\">Switching Boxes<\/a><\/strong> (SBoxes). These latter correspond to the switching actors inserted by the front end during the merging phase of the flattened input networks. The proper configuration of the SBoxes, according to the information stored in the configuration table produced by the front-end, allows MDC correctly executing all the different functionalities originally implemented by the different stand-alone networks.<\/p>\n<p>MDC does not provide High-Level Synthesis (i.e. direct compilation of RTL code from the CAL high-level specification), so it is not able to generate the HDL code of the coarse grained reconfigurable system in a completely autonomous manner.<\/p>\n<p>In summary, MDC provides:<\/p>\n<ul>\n<li>automatic definition of the multi-functional specification;<\/li>\n<li>the generation of the top module of the coarse grained reconfigurable system;<\/li>\n<li>the automatic management of system programmability.<\/li>\n<\/ul>\n<p>For the physical implementation of the actors, MDC leverages of a library of external components.<\/p>\n<p>For all the details about the algorithms implemented by MDC 1.0 please refer to this <a href=\"http:\/\/sites.unica.it\/rpct\/the-multi-dataflow-composer-tool-generation-of-on-the-fly-reconfigurable-platforms\/\">article<\/a>.<\/p>\n<hr \/>\n<p><strong>See also: <\/strong><a title=\"Step-by-step example\" href=\"http:\/\/sites.unica.it\/rpct\/step-by-step-example\/\">Step-by-step Example<\/a>, <a title=\"Switching Units\" href=\"http:\/\/sites.unica.it\/rpct\/switching-units\/\">Switching Units<\/a>, <a title=\"MDC 2.0\" href=\"http:\/\/sites.unica.it\/rpct\/mdc-2-0\/\">MDC 2.0<\/a>.<\/p>\n<p><a title=\"Tool overview\" href=\"http:\/\/sites.unica.it\/rpct\/risultati-ricerca\/\">Return to Tool Overview<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>itIl tool MDC prende in ingresso reti di attori descritte mediante il modello dataflow proprio del formalismo MPEG-RVC. Ogni rete \u00e8 formata dall\u2019interconnessione di attori: rappresentazioni astratte che implementano una certa funzionalit\u00e0. Una rete pu\u00f2 essere composta da attori atomici o attori complessi. Un attore atomico \u00e8 un elemento unitario, non ulteriormente scomponibile. Un attore &hellip; <a href=\"https:\/\/sites.unica.it\/rpct\/risultati-ricerca\/how-it-works\/\" class=\"more-link\">Continua la lettura di <span class=\"screen-reader-text\">How It Works<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2556,"featured_media":0,"parent":4,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1718","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/pages\/1718","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/users\/2556"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/comments?post=1718"}],"version-history":[{"count":23,"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/pages\/1718\/revisions"}],"predecessor-version":[{"id":2289,"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/pages\/1718\/revisions\/2289"}],"up":[{"embeddable":true,"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/pages\/4"}],"wp:attachment":[{"href":"https:\/\/sites.unica.it\/rpct\/wp-json\/wp\/v2\/media?parent=1718"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}