the EDG via SAT solver prototype
Appendix to the paper “Turning coders into makers: The promise of Embedded Design Generation.” by Rohit Ramesh, Richard Lin, Antonio Iannopollo, Alberto Sangiovanni-Vincentelli, Bjoern Hartmann, and Prabal Dutta. Presented at the Symposium on Computational Fabrication (SCF), Cambridge, MA | June 12 - 13, 2017
@inproceedings{Ramesh:2017:TCM:3083157.3083159,
author = {Ramesh, Rohit and Lin, Richard and Iannopollo, Antonio and Sangiovanni-Vincentelli, Alberto and Hartmann, Bj\"{o}rn and Dutta, Prabal},
title = {Turning Coders into Makers: The Promise of Embedded Design Generation},
booktitle = {Proceedings of the 1st Annual ACM Symposium on Computational Fabrication},
series = {SCF '17},
year = {2017},
isbn = {978-1-4503-4999-4},
location = {Cambridge, Massachusetts},
pages = {4:1--4:10},
articleno = {4},
numpages = {10},
url = {http://doi.acm.org/10.1145/3083157.3083159},
doi = {10.1145/3083157.3083159},
acmid = {3083159},
publisher = {ACM},
address = {New York, NY, USA},
keywords = {embedded design, makers, satisfiability modulo theorem, software defined hardware, synthesis, type system},
}
ACM Ref format:
Rohit Ramesh, Richard Lin, Antonio Iannopollo, Alberto Sangiovanni-Vincentelli, Björn Hartmann, and Prabal Dutta. 2017. Turning coders into makers: the promise of embedded design generation. In Proceedings of the 1st Annual ACM Symposium on Computational Fabrication (SCF ‘17). ACM, New York, NY, USA, Article 4, 10 pages. DOI: https://doi.org/10.1145/3083157.3083159
All the experiments were launched using the same executable, each with a different command line. The common main file of the prototype is here.
The project can be compiled simply executing on a terminal the following command:
stack build
In the following paragraphs there are all the experiments we have run. For each experiment, there is a link to the file implementing the experiment control logic, the command used to run the experiment, and one or more graphs describing the results.
stack exec edg-prototype -- new-min-blinky -g new-min-blinky.svg -o new-min-blinky.edg
stack exec edg-prototype -- new-med-blinky -g new-med-blinky.svg -o new-med-blinky.edg
stack exec edg-prototype -- new-blinky -g new-blinky.svg -o new-blinky.edg
stack exec edg-prototype -- new-min-feedbackfan -g new-min-feedbackfan.svg -o new-min-feedbackfan.edg
stack exec edg-prototype -- new-med-feedbackfan -g new-med-feedbackfan.svg -o new-med-feedbackfan.edg
stack exec edg-prototype -- new-feedbackfan -g new-feedbackfan.svg -o new-feedbackfan.edg
stack exec edg-prototype -- new-min-robot -g new-min-robot.svg -o new-min-robot.edg
stack exec edg-prototype -- new-med-robot -g new-med-robot.svg -o new-med-robot.edg
stack exec edg-prototype -- new-robot -g new-robot.svg -o new-robot.edg
stack exec edg-prototype -- new-min-ol-datalogger -g new-min-ol-datalogger.svg -o new-min-ol-datalogger.edg
stack exec edg-prototype -- new-med-ol-datalogger -g new-med-ol-datalogger.svg -o new-med-ol-datalogger.edg
stack exec edg-prototype -- new-ol-datalogger -g new-ol-datalogger.svg -o new-ol-datalogger.edg
stack exec edg-prototype -- new-min-datalogger -g new-min-datalogger.svg -o new-min-datalogger.edg
stack exec edg-prototype -- new-med-datalogger -g new-med-datalogger.svg -o new-med-datalogger.edg
stack exec edg-prototype -- new-datalogger -g new-datalogger.svg -o new-datalogger.edg
stack exec edg-prototype -- new-min-simon -g new-min-simon.svg -o new-min-simon.edg
stack exec edg-prototype -- new-med-simon -g new-med-simon.svg -o new-med-simon.edg
stack exec edg-prototype -- new-simon -g new-simon.svg -o new-simon.edg
stack exec edg-prototype -- new-min-simon-trinket -g new-min-simon-trinket.svg -o new-min-simon-trinket.edg
stack exec edg-prototype -- new-med-simon-trinket -g new-med-simon-trinket.svg -o new-med-simon-trinket.edg
stack exec edg-prototype -- new-simon-trinket -g new-simon-trinket.svg -o new-simon-trinket.edg
stack exec edg-prototype -- new-min-alt-simon-trinket -g new-min-alt-simon-trinket.svg -o new-min-alt-simon-trinket.edg
stack exec edg-prototype -- new-med-alt-simon-trinket -g new-med-alt-simon-trinket.svg -o new-med-alt-simon-trinket.edg
stack exec edg-prototype -- new-alt-simon-trinket -g new-alt-simon-trinket.svg -o new-alt-simon-trinket.edg