System on Chip (SoC) assembly involves instantiating complex IPs with their parameters and connecting them in ever-growing designs. For many years, it has not been feasible to directly write the top-level RTL for SoCs because of their complexity and dimension, and companies have resorted to structured assembly methods, which offer faster development times and better correctness guarantees. Most of these structured assembly tools use IP-Xact, which is a standard for documenting IPs which, thanks to its wide adoption and wide scope of application, has achieved great success in the field of SoC assembly. This thesis work describes our approach for designing Chassy, a new domain specific language (DSL) with its compiler, which aims to solve the inefficiencies of available solutions and to make structured SoC assembly flows based on IP-Xact more accessible. We present the experimental results that we collected to prove the adequacy of our solution, including a complete comparison with Magillem Connectivity by Arteris, our state-of-the-art reference for SoC assembly structured tools. We also analyze the benefits that this new compiler brings to the assembly of SoCs by performing timed benchmarks on engineers working with our solution and comparing them with Magillem Connectivity. Engineers were able to fix a set of errors in a large test case project 6.4 times faster using the new DSL and compiler with respect to Magillem Connectivity, and gave positive feedbacks about the clarity and ease of use of the new DSL. The new solution offers faster compilation times and much improved development speeds thanks to the new IDE tools, while still offering great correctness guarantees. The proposed approach enhances the accessibility of useful SoC assembly features, which were previously only available through TCL or Python scripts, and instead they are now accessible through an easy-to-learn and compact domain specific syntax.

L'assemblaggio di System on Chip (SoC) implica la creazione di istanze di IP complesse con i loro parametri e la loro connessione in progetti in costante crescita. Per molti anni, non è stato praticabile scrivere direttamente l'RTL del SoC al Top a causa della loro complessità e dimensione, e le aziende sono ricorse a metodi di assemblaggio strutturato, che offrono tempi di sviluppo più veloci e migliori garanzie di correttezza. La maggior parte di questi strumenti di assemblaggio strutturato utilizza IP-Xact, che è uno standard per la documentazione delle IP, il quale, grazie alla sua ampia adozione e vasto campo di applicazione, ha ottenuto grande successo nel campo dell'assemblaggio di SoC. Questo lavoro di tesi descrive l'approccio utilizzato nella progettazione di Chassy, un nuovo linguaggio di dominio specifico (DSL) con il suo compilatore, che mira a risolvere le inefficienze delle soluzioni disponibili e a rendere i flussi strutturati di assemblaggio di SoC basati su IP-Xact più accessibili. Presentiamo i risultati sperimentali raccolti per dimostrare l'adeguatezza della soluzione presentata in questa tesi ed una comparazione completa con Magillem Connectivity di Arteris, il riferimento usato in questa tesi per gli strumenti strutturati di assemblaggio di SoC. Analizziamo anche i benefici che questo nuovo compilatore porta all'assemblaggio di SoC, mediante benchmark cronometrati su ingegneri mentre lavorano con Chassy e con Magillem Connectivity di Arteris. Gli ingegneri sono stati in grado di correggere un insieme di errori in un progetto di test di grandi dimensioni 6.4 volte più velocemente utilizzando il nuovo DSL e compilatore rispetto a Magillem Connectivity, e hanno fornito feedback positivi sulla chiarezza e facilità d'uso del nuovo DSL. La nuova soluzione offre velocità di sviluppo notevolmente migliori grazie alle nuove funzionalità dell'ambiente di sviluppo integrato (IDE) ed ai tempi di compilazione più rapidi, continuando ad offrire ottime garanzie di correttezza. L'approccio proposto migliora l'accessibilità delle utili funzionalità di assemblaggio di SoC, precedentemente disponibili solo tramite script TCL o Python, ed ora accessibili attraverso una sintassi specifica del dominio facile da imparare e compatta.

Design and implementation of a domain-specific language for SoC assembly and its compiler

Carrara, Matteo
2022/2023

Abstract

System on Chip (SoC) assembly involves instantiating complex IPs with their parameters and connecting them in ever-growing designs. For many years, it has not been feasible to directly write the top-level RTL for SoCs because of their complexity and dimension, and companies have resorted to structured assembly methods, which offer faster development times and better correctness guarantees. Most of these structured assembly tools use IP-Xact, which is a standard for documenting IPs which, thanks to its wide adoption and wide scope of application, has achieved great success in the field of SoC assembly. This thesis work describes our approach for designing Chassy, a new domain specific language (DSL) with its compiler, which aims to solve the inefficiencies of available solutions and to make structured SoC assembly flows based on IP-Xact more accessible. We present the experimental results that we collected to prove the adequacy of our solution, including a complete comparison with Magillem Connectivity by Arteris, our state-of-the-art reference for SoC assembly structured tools. We also analyze the benefits that this new compiler brings to the assembly of SoCs by performing timed benchmarks on engineers working with our solution and comparing them with Magillem Connectivity. Engineers were able to fix a set of errors in a large test case project 6.4 times faster using the new DSL and compiler with respect to Magillem Connectivity, and gave positive feedbacks about the clarity and ease of use of the new DSL. The new solution offers faster compilation times and much improved development speeds thanks to the new IDE tools, while still offering great correctness guarantees. The proposed approach enhances the accessibility of useful SoC assembly features, which were previously only available through TCL or Python scripts, and instead they are now accessible through an easy-to-learn and compact domain specific syntax.
MASTROROCCO, GIORGIO
ING - Scuola di Ingegneria Industriale e dell'Informazione
19-dic-2023
2022/2023
L'assemblaggio di System on Chip (SoC) implica la creazione di istanze di IP complesse con i loro parametri e la loro connessione in progetti in costante crescita. Per molti anni, non è stato praticabile scrivere direttamente l'RTL del SoC al Top a causa della loro complessità e dimensione, e le aziende sono ricorse a metodi di assemblaggio strutturato, che offrono tempi di sviluppo più veloci e migliori garanzie di correttezza. La maggior parte di questi strumenti di assemblaggio strutturato utilizza IP-Xact, che è uno standard per la documentazione delle IP, il quale, grazie alla sua ampia adozione e vasto campo di applicazione, ha ottenuto grande successo nel campo dell'assemblaggio di SoC. Questo lavoro di tesi descrive l'approccio utilizzato nella progettazione di Chassy, un nuovo linguaggio di dominio specifico (DSL) con il suo compilatore, che mira a risolvere le inefficienze delle soluzioni disponibili e a rendere i flussi strutturati di assemblaggio di SoC basati su IP-Xact più accessibili. Presentiamo i risultati sperimentali raccolti per dimostrare l'adeguatezza della soluzione presentata in questa tesi ed una comparazione completa con Magillem Connectivity di Arteris, il riferimento usato in questa tesi per gli strumenti strutturati di assemblaggio di SoC. Analizziamo anche i benefici che questo nuovo compilatore porta all'assemblaggio di SoC, mediante benchmark cronometrati su ingegneri mentre lavorano con Chassy e con Magillem Connectivity di Arteris. Gli ingegneri sono stati in grado di correggere un insieme di errori in un progetto di test di grandi dimensioni 6.4 volte più velocemente utilizzando il nuovo DSL e compilatore rispetto a Magillem Connectivity, e hanno fornito feedback positivi sulla chiarezza e facilità d'uso del nuovo DSL. La nuova soluzione offre velocità di sviluppo notevolmente migliori grazie alle nuove funzionalità dell'ambiente di sviluppo integrato (IDE) ed ai tempi di compilazione più rapidi, continuando ad offrire ottime garanzie di correttezza. L'approccio proposto migliora l'accessibilità delle utili funzionalità di assemblaggio di SoC, precedentemente disponibili solo tramite script TCL o Python, ed ora accessibili attraverso una sintassi specifica del dominio facile da imparare e compatta.
File allegati
File Dimensione Formato  
2023_12_Carrara_Tesi_01.pdf

non accessibile

Descrizione: Tesi
Dimensione 3.13 MB
Formato Adobe PDF
3.13 MB Adobe PDF   Visualizza/Apri
2023_12_Carrara_Executive Summary_02.pdf

non accessibile

Descrizione: Executive Summary
Dimensione 412.49 kB
Formato Adobe PDF
412.49 kB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/215339