• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 6
  • Tagged with
  • 6
  • 4
  • 3
  • 3
  • 3
  • 3
  • 3
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Software Synthesis of Synchronous Data Flow Models Using ForSyDe IO / Mjukvarusyntesen av Synkront dataflöde Med ForSyDe IO

Zhao, Yihang January 2022 (has links)
The implementation of embedded software applications is a complex process. The complexity arises from the intense time-to-market pressures; power and memory constraints. To deal with this complexity, an idea is to automatically construct the applications based on the high-level abstraction model. Synchronous data flow (SDF) is a high-level model of computation, and is used to model the embedded applications. Formal System Design (ForSyDe), developed by ForSyDe group at KTH Royal Institute of Technology, is a methodology for modeling and designing heterogeneous systems-on-chip. The aim of Formal System Design (ForSyDe) is to automatically generate the detailed software implementation or hardware implementation according to the high-level system specification. Formal System Design (ForSyDe) starts from the high-level system specification and specifies the system model in Haskell language. Synchronous data flow is supported by ForSyDe. ForSyDe IO is an intermediate representation of the high-level system specification. This master thesis focuses on the software synthesis of synchronous data flow models specified in ForSyDe IO, and aims to produce an automatic code generator that can generate software applications in C code for different platforms based on ForSyDe IO. In this project, a software synthesis method for ForSyDe IO was proposed. Then, based on the software synthesis method, a code generator, written in Java and Xtend, was designed. The derived code generator was tested on two examples. The experiment results show that the synchronous data flow models specified in ForSyDe IO are successfully synthesized into C code. The code is in the Github repository https://github.com/Rojods/CInTSyDe.git with MIT license. / Implementeringen av inbäddade mjukvaruapplikationer är en komplex process. Komplexiteten beror på det intensiva trycket på tid-till-marknad; kraft- och minnesbegränsningar. För att hantera denna komplexitet är en idé att applikationerna automatiskt kan konstrueras den högnivåabstraktionsmodellen. Synkront dataflöde (SDF) är en beräkningsmodell på hög nivå som används för att modellera inbäddade applikationer. Formell systemdesign (ForSyDe), utvecklad av ForSyDe-gruppen vid KTH, Kungliga Tekniska Högskolan , är en metodik för modellering och design av heterogena system på chipp. Syftet med formell systemdesign (ForSyDe) är att automatiskt generera den detaljerade mjuk- eller hårdvaruimplementationen enligt systemspecifikationen på hög nivå. Formell systemdesign (ForSyDe) utgår från systemspecifikationen på hög nivå och specificerar systemmodellen på Haskell-språket. Synkront dataflöde stöds av ForSyDe. ForSyDe IO är en mellanrepresentation av systemspecifikationen på hög nivå. Detta examensarbete fokuserar på mjukvarusyntesen av ForSyDe IO och synkront dataflöde, och syftar till att producera ett automatiskt verktyg som kan generera mjukvaruapplikation i C-kod för olika plattformar baserat på ForSyDe IO. I detta projekt föreslås en mjukvarusyntesmetod för ForSyDe IO. Sedan, baserat på mjukvarusyntesmetoden, designas en kodgenerator skriven i Java och Xtend. Den härledda kodgeneratorn testas på två exempel. Experimentresultaten visar att ForSyDe IO framgångsrikt har syntetiserats till C-kod.
2

Prototyping a formal system modeling workbench in the java ecosystem : A Domain Specific Language in Groovy

Savegren, Joakim, Edling, Joar January 2022 (has links)
Modeling is a fundamental property in today’s development of embedded systems. Models of computation enable us to describe the functionality and characteristics of a system on a higher abstraction level which gives the designer great insight in the behavior of the final implemented system at a very early stage in the design process. The ForSyDe modeling framework is based on the Model-of-computation (MoC) theory. Synchronous data-flow (SDF) is one MoC that uses actors and tokens to describe the communication and behavior of a system. Currently, the ForSyDe input modeling language exists only as a Haskell implementation and a System C implementation. The main problem is that the ForSyDe tool ecosystem is implemented across different languages without proper connections between tools. However, a framework to make such connections exists, namely the ForSyDe IO Java supporting library. In addition, any language running on the JVM can already be connected to ForSyDe IO. Hence, the thesis explores how a modeling workbench can be designed as a domain specific language (DSL) in the JVM language Groovy using the Gradle environment. Since there are many modules in the ForSyDe modeling framework, one for each MoC, this thesis targets one module: SDF. This choice is enough to explore whether it is possible to achieve the same modeling that Haskell provides in a JVM language, without sacrificing the user experience while modeling. The resulting Groovy DSL can describe the Synchronous Data-Flow MoC with the purpose of modeling SDF graphs, often used in image processing applications. By using the produced DSL workbench, a designer can model SDF applications in an efficient way. There were some differences when comparing the Groovy DSL to the Haskell implementation, such as the methods for defining actors and connecting them. However, the core modeling concepts are the same. Combining Groovy and Gradle offered an easy way of designing a DSL using the concept of closures. The created Groovy DSL is the first member of a family of textual DSL’s for describing MoC’s and therefore acts as a foundation for future work within the ForSyDe modeling framework. It can be extended to support more modules and functions or to inspire others to develop new DSL’s. / Modellering av system är en grundsten i dagens utveckling av inbyggda system. Beräkningsmodeller möjliggör att beskriva systems egenskaper och funktioner på en hög abstraktionsnivå vilket underlättar den första tiden vid utvecklingen av ett nytt inbyggt system. ForSyDe är ett modelleringsspråk baserat på beräkbarhetsteori. Det synkrona dataflödet (SDF) är en beräkningsmodell som använder sig av aktörer och tokens för att beskriva ett systems kommunikation och bettend. ForSyDe är implementerat i programmeringsspråket Haskell och System C, men är i fortsatt utveckling och grenar ut till andra språk och miljöer. Det huvudsakliga Problemet med ForSyDe är att ramverket saknar bra kopplingar mellan verktygen som erbjuds. Ett ramverk som möjliggör kopplingen mellan verktygen är stöd biblioteket ForSyDe IO och dessutom kan ett språk som kör i Javas virtuella miljö redan kopplas med ForSyDe IO. Därför undersöker uppsatsen hur ett domänspecifikt språk kan skrivas i Groovy i utvecklingsmiljön gradle för att direkt extrahera en ForSyDe IO modell utan att behöva undersöka varje element i modellen. Det finns många moduler i ForSyDe ramverket, en för varje beräkningsmodell och därför menar uppsatsen att undersöka en modul: SDF. Att undersöka SDF modulen anses tillräckligt för att bestämma sig huruvida det är möjligt att uppnå liknande modellering som Haskell erbjuder fast i java miljön, utan att offra användarvänligheten då ett system modelleras. Resultatet blev en Groovy prototyp som kan beskriva SDF-modulen med syftet att modellera SDF-grafer vars funktion ofta används inom bildbehandling. En SDF-graf beskriver ett systems dataflöde och via det resulterande domänspecifika språket kan en utvecklare på ett tillfredsställande sätt beskriva dataflöden i javamiljön. Det visade sig att det resulterande domän specifika språket i Groovy skiljer sig en aning från Haskell i hur man specificerar aktörer och deras kopplingar, men det fundamentala konceptet är detsamma. Groovy i kombination med Gradle erbjöd ett smidigt sätt att programmera ett domänspecifikt språk med hjälp av closures vilket kan användas för framtida bruk inom utvecklingsområdet. Den skapade prototypen är den första medlemmen i en familj av framtida modelleringsspråk som beskriver beräkningsmodeller. Resultatet av projektet utgör en grund för ett fortsatt arbete med att bygga vidare på prototypen, men även för att kunna lägga till fler beräkningsmoduler som i sin tur bidrar med utbyggningen av ramverket ForSyDe.
3

Fault-Tolerant Nostrum NoC on FPGA for theForSyDe/NoC System Generator Tool Suite

Gkalea, Salvator January 2014 (has links)
Moore’s law is the observation that over the years, the transistor density will increase,allowing billions of transistors to be integrated on a single chip. Over the lasttwo decades, Moore’s law has enabled the implementation of complex systems on asingle chip(SoCs). The challenge of the System-on-Chip(SoC) era was the demandof an efficient communication mechanism between the growing number of processingcores on the chip. The outcome established an new interconnection scheme (amongothers, like crossbars, rings, buses) based on the telecommunication networks andthe Network- on-Chip(NoC) appeared on the scene.The NoC has been developed not only to support systems embedded into asingle processor, but also to support a set of processors embedded on a singlechip.Therefore, the Multi-Processors System on Chip(MPSoC) has arisen, whichincorporate processing elements, memories and I/O with a fixed interconnection infrastructurein a complete integrated system. In such systems, the NoC constitutesthe backbone of the communication architecture that targets future SoC composedby hundred of processing elements. Besides that, together with the deep sub-microntechnology progress, some drawbacks have arisen. The communication efficiencyand the reliability of the systems rely on the proper functionality of NoC for onchipdata communication. A NoC must deal with the susceptibility of transistors tofailure that indicates the demand for a fault tolerant communication infrastructure.A mechanism that can deal with the existence of different classes of faults(transient,intermittent and permanent [11]) which can occur in the communication network.In this thesis, different algorithms are investigated that implement fault toleranttechniques for permanent faults in the NoC. The outcome would be to deliver a faulttolerantmechanism for the NoC System Generator Tool [29] which is a researchin Network-on-Chip carried out at the Royal Institute of Technology. It will beexplicitly described the fault tolerant algorithm that is implemented in the switchin order to achieve packet rerouting around the faulty communication links.
4

Synthesizing Software from a ForSyDe Model Targeting GPGPUs

Hjort Blindell, Gabriel January 2012 (has links)
Today, a plethora of parallel execution platforms are available. One platform in particular is the GPGPU – a massively parallel architecture designed for exploiting data parallelism. However, GPGPUS are notoriously difficult to program due to the way data is accessed and processed, and many interconnected factors affect the performance. This makes it an exceptionally challengingtask to write correct and high-performing applications for GPGPUS. This thesis project aims to address this problem by investigating how ForSyDe models – a software engineering methodology where applications are modeled at a very high level of abstraction – can be synthesized into CUDA C code for execution on NVIDIA CUDA-enabled graphics cards. The report proposes a software synthesis process which discovers one type of potential data parallelism in a model and generates either pure C or CUDA C code. A prototype of the software synthesis component has also been implemented and tested on models derived from two applications – a Mandelbrot generator and an industrial-scale image processor. The synthesized CUDA code produced in the tests was shown to be both correct and efficient, provided there was enough computation complexity in the processes to amortize the overhead cost of using the GPGPU.
5

Towards a Correct-by-Construction design flow : A case-study from railway signaling systems

Hanikat, Marcus January 2021 (has links)
As technological advancements and manufacturing techniques continues to bring us more complex and powerful hardware, software engineers struggle to keep up with this rapid progress and reap the benefits brought by this hardware. In the field of safety-critical system development, where a thorough understanding and deterministic nature of the hardware often is required, the cost of development closely relates to the complexity of the hardware used. For software developers to be able to reap the benefits of the technological advancement in hardware design, a Correct-by-Construction with a model- based design flow seem promising. Even though there seem to be significant benefits in using a Correct-by-Construction workflow for developing safety- critical systems, it is far from exclusively used within the industry. Therefore, this thesis illustrates how a model-based design flow should be applied when developing safety-critical systems for usage in the rail transport sector. This thesis also explores the benefits Correct-by-Construction can bring to the development process of safety-critical systems. Within this thesis, two different modeling tools, ForSyDe and Simulink, were used to achieve a model-based design flow. The functionality of these tools is investigated to see how they can be used for developing safety-critical systems, meeting the EN 50128 standard. The result presented is an example of how these tools can be used within a model-based design flow which meets the EN 50128 standard for developing Safety Integrity Level (SIL) 4 systems. The thesis also compares the tools investigated and highlights their differences. Finally, future work required to create a complete Correct-by-Construction workflow that complies with the EN 50128 standard requirements for system development is identified. / Allt eftersom teknologiska framsteg och tillverkningstekniker fortsätter att ge oss tillgång till mer komplex och kraftfull hårdvara så kämpar mjukvaruingenjörer fibrilit med att kunna hänga med i denna utvecklingstakt och kunna utnyttja de nya möjligheterna som denna nya hårdvara ger. Inom fältet för säkerhetskritiska system, där en genomgående förståelse av och deterministiska egenskaper för hårdvara ofta krävs, så är kostnaden för utveckling nära relaterat till komplexiteten för hårdvaran som används. För att kunna ta till vara på de fördelar som dessa nya teknologiska framsteg för med sig så föreslås ofta användningen av utvecklingsprocessen Korrektvid- Konstruktion. Även fast det verkar finnas stora fördelar med att använda Korrekt-vid-Konstruktion som utvecklingsprocess så har det inte sett en bred användning inom industrin. På grund av detta så försöker denna avhandling svara på hur ett modelleringsbaserat utvecklingsflöde kan användas vid utveckling av säkerhetskritiska system för tågtransportsektorn. Arbetet undersöker även fördelarna med användningen av Korrekt-vid-Konstruktion vid utveckling av säkerhetskritiska system. Arbetet i denna avhandling undersöker hur två olika modeleringsverktyg, ForSyDe och Simulink, kan användas i ett modeleringsbasert utvecklingsflöde. Funktionaliteten för dessa modeleringsverktyg undersöks för att se hur dem kan användas för utveckling av säkerhetskritiska system på ett sätt som klarar av kraven i EN 50128 standarden. Resultaten som presenteras är ett exempel på hur dessa verktyg kan användas i ett modeleringsbaserat utvecklingsflöde som möter kraven i EN 50128 standarden för utveckling av SIL 4 system. Arbetet jämför även de undersökta modeleringsverktygen för att påvisa deras skillnader. Till sist så beskrivs det framtida arbete som krävs för att få till en komplett utvecklingsprocess som är Korrekt-vid-Konstruktion och även möter systemutvecklingskraven i EN 50128 standarden.
6

Automatic Software Synthesis from High-Level ForSyDe Models Targeting Massively Parallel Processors

Ungureanu, George January 2013 (has links)
In the past decade we have witnessed an abrupt shift to parallel computing subsequent to the increasing demand for performance and functionality that can no longer be satisfied by conventional paradigms. As a consequence, the abstraction gab between the applications and the underlying hardware increased, triggering both industry and academia in several research directions. This thesis project aims at analyzing some of these directions in order to offer a solution for bridging the abstraction gap between the description of a problem at a functional level and the implementation on a heterogeneous parallel platform using ForSyDe – a formal design methodology. This report treats applications employing data-parallel and time-parallel computation, regards nvidia CUDA-enabled GPGPUs as the main backend platform. The report proposes a heuristic transformation-and-refinement process based on analysis methods and design decisions to automate and aid in a correct-by-design backend code synthesis. Its purpose is to identify potential data parallelism and time parallelism in a high-level system. Furthermore, based on a basic platform model, the algorithm load-balances and maps the execution onto the best computation resources in an automated design flow. This design flow will be embedded into an already existing tool, f2cc (ForSyDe-to-CUDA C) and tested for correctness on an industrial-scale image processing application aimed at monitoring inkjet print-heads reliability.

Page generated in 0.0232 seconds