There is a newer version of the record available.

Published December 7, 2022 | Version v1
Software Open

Connecting the Blocks: Safely Wiring Hardware Designs together using Linear & Dependent Types (artefact)

Authors/Creators

  • 1. Anonymous

Description

ECOOP Submission Number: 89.

Our work presents a sub-structurally typed orchestration language, called LightClick, to better reason about *Systems-On-a-Chip* (SoC) Orchestration.
LightClick is a proof of concept language that showcases how *fancy types* (namely linear & dependent types) can enrich hardware design tooling such that we can move existing external static analysis checks into the language's type-system.
Using our approach will lead to the enhanced safety of designs, and increase in design productivity, through early identification and reduction of connection errors.

LightClick supports fine-grained specification of hardware modules and their interfaces, together with connection primitives to connect ports together.
What makes LightClick novel is that ports must be linearly used (at most once), and there are connection primitives (fan-outs, logic gates, mutliplexers) that support explicit weakening of linearity.

Notes

Submitted to ECOOP 23 AEC.

Files

lightclick.pdf

Files (316.5 MB)

Name Size Download all
md5:4f2b5ef9579ef56246c14c6bef53c633
315.3 MB Download
md5:e6d6c04d79f9c782ef89451a0458926b
745.3 kB Preview Download
md5:fb77d7c780920f26618453f66a23a531
109.7 kB Download
md5:c0ec2a9b5b216e8840adfc782d5fa274
41.3 kB Download
md5:389d9e04cd2b6f005db46385850faf4b
311.3 kB Download
md5:f477121d20ebc5552cef979b9c78817b
15.8 kB Preview Download