Change search
Link to record
Permanent link

Direct link
Lindgren, Per
Publications (10 of 101) Show all publications
Nurmi, A., Lindgren, P., Kalache, A., Lunnikivi, H. & Hämäläinen, T. D. (2024). Atalanta: Open-Source RISC-V Microcontroller for Rust-Based Hard Real-Time Systems. In: Dietmar Fey; Benno Stabernack; Stefan Lankes; Mathias Pacher; Thilo Pionteck (Ed.), Architecture of Computing Systems: ARCS 2024. Paper presented at 37th International Conference on Architecture of Computing Systems (ARCS 2024), Potsdam, Germany, May 14-16, 2024 (pp. 316-330). Springer Nature
Open this publication in new window or tab >>Atalanta: Open-Source RISC-V Microcontroller for Rust-Based Hard Real-Time Systems
Show others...
2024 (English)In: Architecture of Computing Systems: ARCS 2024 / [ed] Dietmar Fey; Benno Stabernack; Stefan Lankes; Mathias Pacher; Thilo Pionteck, Springer Nature, 2024, p. 316-330Conference paper, Published paper (Refereed)
Abstract [en]

Real-time systems are a segment of embedded systems that have remained dominated by proprietary hardware architectures, despite the continuing growth of the open-source RISC-V instruction set architecture (ISA). The introduction of core-local interrupt controller (CLIC) extensions to the RISC-V architecture presents a promising opportunity to bridge the technological gap with ARM in low-latency interrupt handling. Regarding software, the real-time interrupt-driven concurrency (RTIC) framework enables ever lighter hard real-time systems with formal compile-time guarantees for memory safety, response time and overall schedulability. In this publication we adapt Ibex, a small, open-source RISC-V processor for CLIC support and present Atalanta, a lightweight microcontroller designed around the RTIC framework. Atalanta implements a localized memory architecture that enables low-latency context switching together with a large number of supported interrupt inputs and levels provided by the CLIC specification. We evaluate Atalanta for real-time performance and implementation feasibility through simulation-based measurements and FPGA prototyping, respectively. We are able to demonstrate an interrupt latency of 5 cycles with minimal jitter and a context switch latency of 21 cycles, placing it competitively against current state-of-the-art solutions. Furthermore, we implement an FPGA prototype for the Xilinx PYNQ-Z1 and VCU118 boards, targeting a frequency of 45 MHz. We publish the sources and implementation scripts of Atalanta under a permissive open-source license.

Place, publisher, year, edition, pages
Springer Nature, 2024
Series
Lecture Notes in Computer Science (LNCS), ISSN 0302-9743, E-ISSN 1611-3349 ; 14842
Keywords
CLIC, FPGA, RISC-V, RTIC
National Category
Computer Systems
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-108658 (URN)10.1007/978-3-031-66146-4_21 (DOI)001293533700021 ()2-s2.0-85201015972 (Scopus ID)
Conference
37th International Conference on Architecture of Computing Systems (ARCS 2024), Potsdam, Germany, May 14-16, 2024
Note

Funder: European Union’s Horizon; Key Digital Technologies Joint Undertaking (KDT JU);

ISBN for host pubication: 978-3-031-66146-4;

Available from: 2024-08-21 Created: 2024-08-21 Last updated: 2024-11-20Bibliographically approved
Madaoui, Z., Lunnikivi, H., Dzialo, P. & Lindgren, P. (2024). Towards modularity of the Rust RTIC real-time scheduling framework. In: 2024 IEEE Nordic Circuits and Systems Conference, NORCAS 2024 - Proceedings: . Paper presented at 2024 IEEE Nordic Circuits and Systems Conference (NORCAS), 29-30 October, 2024 Lund, Sweden. Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Towards modularity of the Rust RTIC real-time scheduling framework
2024 (English)In: 2024 IEEE Nordic Circuits and Systems Conference, NORCAS 2024 - Proceedings, Institute of Electrical and Electronics Engineers Inc. , 2024Conference paper, Published paper (Other academic)
Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2024
National Category
Computer Sciences
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-111222 (URN)10.1109/NorCAS64408.2024.10752441 (DOI)2-s2.0-85211938154 (Scopus ID)
Conference
2024 IEEE Nordic Circuits and Systems Conference (NORCAS), 29-30 October, 2024 Lund, Sweden
Available from: 2025-01-07 Created: 2025-01-07 Last updated: 2025-03-06
Nurmi, A., Lindgren, P., Szymkowiak, T. & Hamalainen, T. D. (2023). AnTiQ: A Hardware-Accelerated Priority Queue Design with Constant Time Arbitrary Element Removal. In: Smail Niar; Hamza Ouarnoughi; Amund Skavhaug (Ed.), 2023 26th Euromicro Conference on Digital System Design (DSD): . Paper presented at 26th Euromicro Conference on Digital System Design (DSD 2023), Durres, Albania, September 6-8, 2023 (pp. 462-469). IEEE
Open this publication in new window or tab >>AnTiQ: A Hardware-Accelerated Priority Queue Design with Constant Time Arbitrary Element Removal
2023 (English)In: 2023 26th Euromicro Conference on Digital System Design (DSD) / [ed] Smail Niar; Hamza Ouarnoughi; Amund Skavhaug, IEEE, 2023, p. 462-469Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
IEEE, 2023
National Category
Electrical Engineering, Electronic Engineering, Information Engineering Computer and Information Sciences
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-105000 (URN)10.1109/DSD60849.2023.00070 (DOI)001195411200060 ()2-s2.0-85179508659 (Scopus ID)
Conference
26th Euromicro Conference on Digital System Design (DSD 2023), Durres, Albania, September 6-8, 2023
Note

ISBN for host publication: 979-8-3503-4419-6; 

Available from: 2024-04-09 Created: 2024-04-09 Last updated: 2024-11-20Bibliographically approved
Lindgren, P., Dzialo, P., Lunnikivi, H. & Ericsson, J. (2023). ENEST - Efficient Interrupt Nesting for RISC-V based CPUs. In: 2023 IEEE 2nd Industrial Electronics Society Annual On-Line Conference (ONCON): . Paper presented at 2nd IEEE Industrial Electronics Society Annual On-Line Conference (IES ONCON 2023), United States, [DIGITAL], December 8-10, 2023. IEEE
Open this publication in new window or tab >>ENEST - Efficient Interrupt Nesting for RISC-V based CPUs
2023 (English)In: 2023 IEEE 2nd Industrial Electronics Society Annual On-Line Conference (ONCON), IEEE, 2023Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
IEEE, 2023
National Category
Computer Systems
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-105001 (URN)10.1109/ONCON60463.2023.10431132 (DOI)001172877700145 ()2-s2.0-85186748270 (Scopus ID)
Conference
2nd IEEE Industrial Electronics Society Annual On-Line Conference (IES ONCON 2023), United States, [DIGITAL], December 8-10, 2023
Note

ISBN for host publication: 979-8-3503-5797-4;

Available from: 2024-04-08 Created: 2024-04-08 Last updated: 2025-03-06Bibliographically approved
Lindgren, P., Dzialo, P. & Lunnikivi, H. (2023). Hardware support for Static-Priority Stack Resource Policy based scheduling. In: 2023 IEEE 32nd International Symposium on Industrial Electronics (ISIE): . Paper presented at 32nd IEEE International Symposium on Industrial Electronics (ISIE) 2023, Helsinki, Finland, June 19-21, 2023. IEEE
Open this publication in new window or tab >>Hardware support for Static-Priority Stack Resource Policy based scheduling
2023 (English)In: 2023 IEEE 32nd International Symposium on Industrial Electronics (ISIE), IEEE, 2023Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
IEEE, 2023
National Category
Computer Engineering
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-104005 (URN)10.1109/ISIE51358.2023.10228088 (DOI)2-s2.0-85172084442 (Scopus ID)
Conference
32nd IEEE International Symposium on Industrial Electronics (ISIE) 2023, Helsinki, Finland, June 19-21, 2023
Note

ISBN for host publication: 979-8-3503-9972-1

Available from: 2024-01-30 Created: 2024-01-30 Last updated: 2025-03-06Bibliographically approved
Lindgren, P., Dzialo, P., Nurmi, A. & Lunnikivi, H. (2023). Static and Dynamic Memory Protection using Type-Based Memory Layout in Rust. In: 2023 IEEE 2nd Industrial Electronics Society Annual On-Line Conference (ONCON): . Paper presented at 2nd IEEE Industrial Electronics Society Annual On-Line Conference (IES ONCON 2023), United States, [DIGITAL], December 8-10, 2023. IEEE
Open this publication in new window or tab >>Static and Dynamic Memory Protection using Type-Based Memory Layout in Rust
2023 (English)In: 2023 IEEE 2nd Industrial Electronics Society Annual On-Line Conference (ONCON), IEEE, 2023Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
IEEE, 2023
National Category
Embedded Systems Computer Systems
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-104951 (URN)10.1109/ONCON60463.2023.10431237 (DOI)001172877700164 ()2-s2.0-85186747356 (Scopus ID)
Conference
2nd IEEE Industrial Electronics Society Annual On-Line Conference (IES ONCON 2023), United States, [DIGITAL], December 8-10, 2023
Note

ISBN for host publication: 979-8-3503-5797-4;

Available from: 2024-04-03 Created: 2024-04-03 Last updated: 2025-03-06Bibliographically approved
Dzialo, P., Boom, E. V. & Lindgren, P. (2023). SyncRim - A modern Simulator for Synchronous Circuits implemented in Rust. In: Jari Nurmi; Ming Shen; Peeter Ellervee; Peter Koch; Farshad Moradi (Ed.), 2023 IEEE Nordic Circuits and Systems Conference (NorCAS): . Paper presented at 2023 IEEE Nordic Circuits and Systems Conference (NorCAS), 31 October - 1 November, 2023, Aalborg, Denmark. IEEE
Open this publication in new window or tab >>SyncRim - A modern Simulator for Synchronous Circuits implemented in Rust
2023 (English)In: 2023 IEEE Nordic Circuits and Systems Conference (NorCAS) / [ed] Jari Nurmi; Ming Shen; Peeter Ellervee; Peter Koch; Farshad Moradi, IEEE, 2023Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
IEEE, 2023
National Category
Other Electrical Engineering, Electronic Engineering, Information Engineering
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-103093 (URN)10.1109/NorCAS58970.2023.10305478 (DOI)001103249500037 ()2-s2.0-85179515470 (Scopus ID)979-8-3503-3757-0 (ISBN)
Conference
2023 IEEE Nordic Circuits and Systems Conference (NorCAS), 31 October - 1 November, 2023, Aalborg, Denmark
Available from: 2023-11-29 Created: 2023-11-29 Last updated: 2025-03-06Bibliographically approved
Lindgren, P., Fitinghoff, N. & Aparicio, J. (2019). Cargo-call-stack Static Call-stack Analysis for Rust. In: 2019 IEEE 17th International Conference on Industrial Informatics (INDIN): . Paper presented at 2019 IEEE 17th International Conference on Industrial Informatics (INDIN), 22-25 July, 2019, Helsinki-Espoo, Finland (pp. 1169-1176). IEEE
Open this publication in new window or tab >>Cargo-call-stack Static Call-stack Analysis for Rust
2019 (English)In: 2019 IEEE 17th International Conference on Industrial Informatics (INDIN), IEEE, 2019, p. 1169-1176Conference paper, Published paper (Other academic)
Abstract [en]

Memory safety is instrumental to the safety and security of software systems. The Rust language stands out with a type system and underlying memory model targeting memory safety without the need for dynamic garbage collection, making Rust a viable option for embedded applications. In this paper we present an integrated tool for call-stack analysis of Rust applications. We cover both theoretical and practical challenges, their solutions and open questions. The cargo-call-stack tool is useful for analyzing Rust applications in general, and embedded Rust in particular. To the latter, we show that using the call-stack analysis we can give guarantees of total memory safety, free of assumptions on operating systems and underlying memory protection mechanisms in hardware. The feasibility of the approach is demonstrated by applying the `call-stack' tool on production code targeting a light-weight ARM Cortex-M platform.

Place, publisher, year, edition, pages
IEEE, 2019
Series
IEEE International Conference on Industrial Informatics (INDIN), ISSN 1935-4576, E-ISSN 2378-363X
National Category
Computer Sciences
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-78676 (URN)10.1109/INDIN41052.2019.8972088 (DOI)000529510400174 ()2-s2.0-85079059404 (Scopus ID)
Conference
2019 IEEE 17th International Conference on Industrial Informatics (INDIN), 22-25 July, 2019, Helsinki-Espoo, Finland
Note

ISBN för värdpublikation: 978-1-7281-2927-3, 978-1-7281-2928-0

Available from: 2020-04-27 Created: 2020-04-27 Last updated: 2020-06-15Bibliographically approved
Lindner, M., Aparicio, J. & Lindgren, P. (2019). Concurrent Reactive Objects in Rust Secure by Construction. Ada User Journal, 40(1)
Open this publication in new window or tab >>Concurrent Reactive Objects in Rust Secure by Construction
2019 (English)In: Ada User Journal, ISSN 1381-6551, Vol. 40, no 1Article in journal (Refereed) Published
Abstract [en]

Embedded systems of the IoT era face the software developer with requirements on a mix of resource efficiency, real-time, safety, and security properties. As of today, C/C++ programming dominates the mainstream of embedded development, which leaves ensuring system wide properties mainly at the hands of the programmer. We adopt a programming model and accompanying framework implementation that leverages on the memory model, type system, and zero-cost abstractions of the Rust language. Based on the outset of reactivity, a software developer models a system in terms of Concurrent Reactive Objects (CROs) hierarchically grouped into Concurrent Reactive Components (CRCs) with communication captured in terms of time constrained synchronous and asynchronous messages. The developer declaratively defines the system, from which a static system instance can be derived and analyzed. A system designed in the proposed CRC framework has the outstanding properties of efficient, memory safe, race-, and deadlock-free preemptive (single-core) execution with predictable real-time properties. In this paper, we further explore the Rust memory model and the CRC framework towards systems being secure by construction. In particular, we show that permissions granted can be freely delegated without any risk of leakage outside the intended set of components. Moreover, the model guarantees permissions to be authentic, i.e., neither manipulated nor faked. Finally, the model guarantees permissions to be temporal, i.e., never to outlive the granted authority. We believe and argue that these properties offer the fundamental primitives for building secure by construction applications and demonstrate its feasibility on a small case study, a wireless autonomous system based on an ARM Cortex M3 target.

Place, publisher, year, edition, pages
Ada Language UK Ltd., 2019
National Category
Computer Sciences
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-71246 (URN)2-s2.0-85067078450 (Scopus ID)
Note

Validerad;2019;Nivå 1;2019-04-09 (inah)

Available from: 2018-10-17 Created: 2018-10-17 Last updated: 2019-06-28Bibliographically approved
Lindgren, P., Lindner, M. & Fitinghoff, N. (2019). Introducing Certified Compilation in Education by a Functional Language Approach. In: Peter Achten; Heather Miller (Ed.), Proceedings Seventh International Workshop on Trends in Functional Programming in Education: . Paper presented at 7th International Workshop on Trends in Functional Programming in Education (TFPIE 2018), Gothenburg, Sweden, June 14, 2018 (pp. 65-78). Open Publishing Association
Open this publication in new window or tab >>Introducing Certified Compilation in Education by a Functional Language Approach
2019 (English)In: Proceedings Seventh International Workshop on Trends in Functional Programming in Education / [ed] Peter Achten; Heather Miller, Open Publishing Association , 2019, p. 65-78Conference paper, Published paper (Refereed)
Abstract [en]

Classes on compiler technology are commonly found in Computer Science curricula, covering aspects of parsing, semantic analysis, intermediate transformations and target code generation. This paper reports on introducing certified compilation techniques through a functional language approach in an introductory course on Compiler Construction. Targeting students with little or no experience in formal methods, the proof process is highly automated using the Why3 framework. Underlying logic, semantic modelling and proofs are introduced along with exercises and assignments leading up to a formally verified compiler for a simplistic imperative language.

This paper covers the motivation, course design, tool selection, and teaching methods, together with evaluations and suggested improvements from the perspectives of both students and teachers.

Place, publisher, year, edition, pages
Open Publishing Association, 2019
Series
Electronic Proceedings in Theoretical Computer Science, E-ISSN 2075-2180 ; 295
National Category
Embedded Systems
Research subject
Dependable Communication and Computation Systems
Identifiers
urn:nbn:se:ltu:diva-73010 (URN)10.4204/EPTCS.295.5 (DOI)001045458700005 ()2-s2.0-85072205932 (Scopus ID)
Conference
7th International Workshop on Trends in Functional Programming in Education (TFPIE 2018), Gothenburg, Sweden, June 14, 2018
Available from: 2019-02-26 Created: 2019-02-26 Last updated: 2024-11-20Bibliographically approved
Organisations

Search in DiVA

Show all publications