liu.seSearch for publications in DiVA
Change search
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
Enhancing Compiler-Driven HDL Design withAutomatic Waveform Analysis
Linköping University, Faculty of Science & Engineering. Linköping University, Department of Electrical Engineering, Computer Engineering.ORCID iD: 0000-0001-7089-9697
Johannes Kepler University.ORCID iD: 0000-0002-2571-1058
Linköping University, Department of Electrical Engineering, Computer Engineering. Linköping University, Faculty of Science & Engineering.ORCID iD: 0000-0003-3470-3911
Johannes Kepler University.ORCID iD: 0000-0002-1490-6175
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 [en]
Performance Analysis, Hardware Description Languages, Debugging
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:liu:diva-209367DOI: 10.1109/FDL59689.2023.10272204OAI: oai:DiVA.org:liu-209367DiVA, id: diva2:1912066
Conference
Forum on Specification, Verification and Design Languages, FDL
Available from: 2024-11-11 Created: 2024-11-11 Last updated: 2025-06-03
In thesis
1. Improved Tooling for Digital Hardware Development: Spade, Surfer, and more
Open this publication in new window or tab >>Improved Tooling for Digital Hardware Development: Spade, Surfer, and more
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:nbn:se:liu:diva-214272 (URN)10.3384/9789181181777 (DOI)9789181181760 (ISBN)9789181181777 (ISBN)
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

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full texthttps://ieeexplore.ieee.org/document/10272204

Authority records

Skarman, FransGustafsson, Oscar

Search in DiVA

By author/editor
Skarman, FransKlemmer, LucasGustafsson, OscarGroße, Daniel
By organisation
Faculty of Science & EngineeringComputer Engineering
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 111 hits
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