liu.seSearch for publications in DiVA
1234565 of 6
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Improved Tooling for Digital Hardware Development: Spade, Surfer, and more
Linköping University, Department of Electrical Engineering, Electronics and Computer Engineering. Linköping University, Faculty of Science & Engineering.ORCID iD: 0000-0001-7089-9697
2025 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Hardware complexity is ever-growing but the front-end tools used to design hardware are not keeping up, especially when compared with software tooling. While software and hardware have fundamental differences, there is enough overlap between the domains to warrant taking ideas and inspiration from software tooling to build better hardware tooling. This dissertation is made up of three parts, each focused around a tool that was built in part based on this idea.

The first tool is Spade, a hardware description language built with the explicit goal of improving developer productivity by taking inspiration from software programming languages. Some features are carried over outright: the type system, a build system with easy dependency management, and a compiler that produces helpful error messages. Most features however, are built specifically for hardware based on design philosophy from software, these include an abstraction for correct by construction pipelining, linear types for modeling memory ports, and the ability to define new custom hardware-centric abstractions such as ready valid interfaces.

The second tool is Surfer, a waveform viewer built from the ground up to accommodate new hardware design workflows. One example of this is integration with modern HDLs like Spade to allow full use of their complex type systems. Other examples include the ability to embed the waveform viewer in bigger project, to control it externally, and to use it in web technologies. The viewer has already seen widespread adoption, has integration with Chisel, Clash, and RHDL in addition to Spade, and is used as a component of several proprietary and open source tools.

The final part of the thesis is centered around Cinnabar, a new high level synthesis tool. It lays the groundwork for a way for domain experts to work with hardware engineers to build accelerators for model based control applications. To do this efficiently, it is helpful if the domain experts can work on the modeling largely independently of the hardware engineers working on the hardware architecture. This is achieved by a high level synthesis tool that compiles a simulation model to efficient hardware without requiring any domain expertise. In parallel, a hardware engineer can develop the hardware which executes the simulation, a task which requires less domain expertise and where high level synthesis typically performs worse than a handwritten solution.

In order to tie these works together, a simulation model of a hybrid electric vehicle synthesized with high level synthesis was combined with hardware written in Spade for performing dynamic programming. Together, this allows real time use of an algorithm for optimizing fuel efficiency, which has traditionally only been possible off-line when executing on CPUs.

Place, publisher, year, edition, pages
Linköping: Linköping University Electronic Press, 2025. , p. 55
Series
Linköping Studies in Science and Technology. Dissertations, ISSN 0345-7524 ; 2460
National Category
Embedded Systems
Identifiers
URN: urn:nbn:se:liu:diva-214272DOI: 10.3384/9789181181777ISBN: 9789181181760 (print)ISBN: 9789181181777 (electronic)OAI: oai:DiVA.org:liu-214272DiVA, id: diva2:1963389
Public defence
2025-08-29, Planck, F-building, Campus Valla, Linköping, 09:15 (English)
Opponent
Supervisors
Available from: 2025-06-03 Created: 2025-06-03 Last updated: 2025-06-03Bibliographically approved
List of papers
1. Enhancing Compiler-Driven HDL Design withAutomatic Waveform Analysis
Open this publication in new window or tab >>Enhancing Compiler-Driven HDL Design withAutomatic Waveform Analysis
2023 (English)In: Forum on Specification, Verification and Design Languages, FDL, IEEE conference proceedings, 2023Conference paper, Published paper (Refereed)
Abstract [en]

The time-to-market of a new product is one of its most crucial factors for success, therefore, reducing this time is of utter importance. However, this reduction must not come at the expense of a less thorough development process. This paper presents a compiler-driven approach for automatically analyzing metrics such as transaction delays or bus throughput on simulation waveforms of projects developed in the Spade Hardware Description Language (HDL). By utilizing the Spade compiler’s knowledge about design internals, an automatic analysis of the waveforms created during simulation is possible using the Waveform Analysis Language (WAL). Analysis programs can be bundled with Spade projects or libraries, such that they are automatically detected by Spade and can be reused by other projects using simple annotations. We call these bundled WAL programs analysis passes, since they fit into the Spade workflow and provide thorough analysis at no additional cost to the users of these libraries. In a detailed description, we present how new analysis passes can be defined using the example of a data streaming interface. Additionally, we highlight the possibilities of analysis passes in two case studies, including Finite State Machine (FSM) and Wishbone protocol analysis.

Place, publisher, year, edition, pages
IEEE conference proceedings, 2023
Keywords
Performance Analysis, Hardware Description Languages, Debugging
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-209367 (URN)10.1109/FDL59689.2023.10272204 (DOI)
Conference
Forum on Specification, Verification and Design Languages, FDL
Available from: 2024-11-11 Created: 2024-11-11 Last updated: 2025-06-03
2. A Tool to Enable FPGA-Accelerated Dynamic Programming for Energy Management of Hybrid Electric Vehicles
Open this publication in new window or tab >>A Tool to Enable FPGA-Accelerated Dynamic Programming for Energy Management of Hybrid Electric Vehicles
2020 (English)In: IFAC PAPERSONLINE, ELSEVIER , 2020, Vol. 53, no 2, p. 15104-15109Conference paper, Published paper (Refereed)
Abstract [en]

When optimising the vehicle trajectory and powertrain energy management of hybrid electric vehicles, it is important to include look-ahead information such as road conditions and other traffic. One method for doing so is dynamic programming, but the execution time of such an algorithm on a general purpose CPU is too slow for it to be useable in real time. Significant improvements in execution time can be achieved by utilising parallel computations, for example, using a Field-Programmable Gate Array (FPGA). A tool for automatically converting a vehicle model written in C++ into code that can executed on an FPGA which can be used for dynamic programming-based control is presented in this paper. A vehicle model with a mild-hybrid powertrain is used as a case study to evaluate the developed tool and the output quality and execution time of the resulting hardware. Copyright (C) 2020 The Authors.

Place, publisher, year, edition, pages
ELSEVIER, 2020
Keywords
Hybrid vehicles; Dynamic programming; Energy management systems; Computer-aided circuit design; Integrated circuits
National Category
Computer Systems
Identifiers
urn:nbn:se:liu:diva-177418 (URN)10.1016/j.ifacol.2020.12.2033 (DOI)000652593600304 ()
Conference
21st IFAC World Congress on Automatic Control - Meeting Societal Challenges, ELECTR NETWORK, jul 11-17, 2020
Available from: 2021-06-28 Created: 2021-06-28 Last updated: 2025-06-03
3. Scalable FPGA Implementation of Dynamic Programming for Optimal Control of Hybrid Electrical Vehicles
Open this publication in new window or tab >>Scalable FPGA Implementation of Dynamic Programming for Optimal Control of Hybrid Electrical Vehicles
2024 (English)In: DESIGN AND ARCHITECTURES FOR SIGNAL AND IMAGE PROCESSING, DASIP 2024, SPRINGER INTERNATIONAL PUBLISHING AG , 2024, Vol. 14622, p. 27-39Conference paper, Published paper (Refereed)
Abstract [en]

Dynamic programming (DP) can be used for optimal control of hybrid electric vehicles but requires a large number of computations to be performed. As many of these computations can be performed in parallel, FPGAs are an interesting platform for executing the dynamic programming algorithm. This paper presents a scalable architecture for performing dynamic programming on FPGAs using a pipelined model of a hybrid electric vehicle (HEV). The proposed architecture supports multiple parallel model execution units and is scalable to support a configurable number of units, inputs, states, and time steps. The run time of the optimization process is shown to be improved significantly compared to a CPU implementation. With four parallel model execution units, the design runs in about 1.5% of the time required for an Intel Xeon W-1250 CPU. This shows that DP-based optimal control is feasible for HEVs and that FPGAs can be used to achieve it.

Place, publisher, year, edition, pages
SPRINGER INTERNATIONAL PUBLISHING AG, 2024
Series
Lecture Notes in Computer Science, ISSN 0302-9743
National Category
Embedded Systems
Identifiers
urn:nbn:se:liu:diva-207490 (URN)10.1007/978-3-031-62874-0_3 (DOI)001283306100003 ()9783031628733 (ISBN)9783031628740 (ISBN)
Conference
17th International Workshop on Design and Architecture for Signal and Image Processing (DASIP), Munich, GERMANY, jan 17-19, 2024
Available from: 2024-09-10 Created: 2024-09-10 Last updated: 2025-06-03

Open Access in DiVA

fulltext(4856 kB)2133 downloads
File information
File name FULLTEXT02.pdfFile size 4856 kBChecksum SHA-512
ba9c88f74295b4abb338a91280e999b04a4d05e8484a5c0db325625473dc67f49bcd868f1408f9fe4e1560e8a5eff3e16f625594a4f04990682e9ba1f679f480
Type fulltextMimetype application/pdf
Order online >>

Other links

Publisher's full text

Authority records

Skarman, Frans

Search in DiVA

By author/editor
Skarman, Frans
By organisation
Electronics and Computer EngineeringFaculty of Science & Engineering
Embedded Systems

Search outside of DiVA

GoogleGoogle Scholar
Total: 2178 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

doi
isbn
urn-nbn

Altmetric score

doi
isbn
urn-nbn
Total: 12856 hits
1234565 of 6
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf