{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,28]],"date-time":"2025-03-28T04:35:08Z","timestamp":1743136508923,"version":"3.40.3"},"publisher-location":"Cham","reference-count":51,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030964979"},{"type":"electronic","value":"9783030964986"}],"license":[{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2022]]},"DOI":"10.1007\/978-3-030-96498-6_12","type":"book-chapter","created":{"date-parts":[[2022,3,9]],"date-time":"2022-03-09T11:03:04Z","timestamp":1646823784000},"page":"209-226","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["A Hardware Co-design Workflow for Scientific Instruments at the Edge"],"prefix":"10.1007","author":[{"given":"Kazutomo","family":"Yoshii","sequence":"first","affiliation":[]},{"given":"Rajesh","family":"Sankaran","sequence":"additional","affiliation":[]},{"given":"Sebastian","family":"Strempfer","sequence":"additional","affiliation":[]},{"given":"Maksim","family":"Levental","sequence":"additional","affiliation":[]},{"given":"Mike","family":"Hammer","sequence":"additional","affiliation":[]},{"given":"Antonino","family":"Miceli","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2022,3,10]]},"reference":[{"key":"12_CR1","doi-asserted-by":"crossref","unstructured":"Hameed, R., et al.: Understanding sources of inefficiency in general-purpose chips. In: Proceedings of the 37th Annual International Symposium on Computer Architecture, pp. 37\u201347 (2010)","DOI":"10.1145\/1815961.1815968"},{"issue":"11","key":"12_CR2","first-page":"1","volume":"2","author":"K Ovtcharov","year":"2015","unstructured":"Ovtcharov, K., Ruwase, O., Kim, J.-Y., Fowers, J., Strauss, K., Chung, E.S.: Accelerating deep convolutional neural networks using specialized hardware. Microsoft Res. Whitepaper 2(11), 1\u20134 (2015)","journal-title":"Microsoft Res. Whitepaper"},{"issue":"7862","key":"12_CR3","doi-asserted-by":"publisher","first-page":"183","DOI":"10.1038\/d41586-021-01515-9","volume":"594","author":"AB Kahng","year":"2021","unstructured":"Kahng, A.B.: AI system outperforms humans in designing floorplans for microchips. Nature 594(7862), 183\u2013185 (2021)","journal-title":"Nature"},{"key":"12_CR4","doi-asserted-by":"publisher","first-page":"P01025","DOI":"10.1088\/1748-0221\/16\/01\/P01025","volume":"16","author":"M Hammer","year":"2021","unstructured":"Hammer, M., Yoshii, K., Miceli, A.: Strategies for on-chip digital data compression for X-ray pixel detectors. J. Instrum. 16, P01025 (2021)","journal-title":"J. Instrum."},{"key":"12_CR5","unstructured":"Genc, H., et al.: Gemmini: an agile systolic array generator enabling systematic evaluations of deep-learning architectures (2019)"},{"key":"12_CR6","doi-asserted-by":"crossref","unstructured":"Farshchi, F., Huang, Q., Yun, H.: Integrating NVIDIA Deep Learning Accelerator (NVDLA) with RISC-V SoC on FireSim. In: 2019 2nd Workshop on Energy Efficient Machine Learning and Cognitive Computing for Embedded Applications (EMC2), pp. 21\u201325 (2019)","DOI":"10.1109\/EMC249363.2019.00012"},{"key":"12_CR7","doi-asserted-by":"crossref","unstructured":"Zhang, Y., Pan, J., Liu, X., Chen, H., Chen, D., Zhang, Z.: FracBNN: accurate and FPGA-efficient binary neural networks with fractional activations. In: The 2021 ACM\/SIGDA International Symposium on Field-Programmable Gate Arrays (2021)","DOI":"10.1145\/3431920.3439296"},{"issue":"07","key":"12_CR8","doi-asserted-by":"publisher","first-page":"P07027","DOI":"10.1088\/1748-0221\/13\/07\/P07027","volume":"13","author":"J Duarte","year":"2018","unstructured":"Duarte, J., et al.: Fast inference of deep neural networks in FPGAs for particle physics. J. Instrum. 13(07), P07027 (2018)","journal-title":"J. Instrum."},{"key":"12_CR9","doi-asserted-by":"crossref","unstructured":"Eldridge, S., Waterland, A., Seltzer, M., Appavoo, J., Joshi, A.: Towards general-purpose neural network computing. In: 2015 International Conference on Parallel Architecture and Compilation, PACT 2015, San Francisco, CA, USA, 18\u201321 October 2015, pp. 99\u2013112 (2015)","DOI":"10.1109\/PACT.2015.21"},{"key":"12_CR10","doi-asserted-by":"crossref","unstructured":"Liu, Z., et al.: BraggNN: fast X-ray Bragg peak analysis using deep learning. arXiv preprint arXiv:2008.08198 (2021)","DOI":"10.1107\/S2052252521011258"},{"key":"12_CR11","unstructured":"Golson, S., Clark, L.: Language wars in the 21st century: verilog versus vhdl\u2013revisited. Synopsys Users Group (SNUG) (2016)"},{"key":"12_CR12","unstructured":"Kung, H.T., Leiserson, C.E.: Systolic arrays for (VLSI). Technical report, Department of Computer Science, Carnegie-Mellon University, Pittsburgh, Pennsylvania (1978)"},{"key":"12_CR13","doi-asserted-by":"crossref","unstructured":"Kwon, H., Krishna, T.: OpenSMART: single-cycle multi-hop NoC generator in BSV and Chisel. In: 2017 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp. 195\u2013204. IEEE (2017)","DOI":"10.1109\/ISPASS.2017.7975291"},{"key":"12_CR14","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3053688","volume":"10","author":"T Ueno","year":"2017","unstructured":"Ueno, T., Sano, K., Yamamoto, S.: Bandwidth compression of floating-point numerical data streams for FPGA-based high-performance computing. ACM Trans. Reconfigurable Technol. Syst. 10, 1\u201322 (2017)","journal-title":"ACM Trans. Reconfigurable Technol. Syst."},{"issue":"2","key":"12_CR15","doi-asserted-by":"publisher","first-page":"8","DOI":"10.1109\/MM.2016.11","volume":"36","author":"Y Lee","year":"2016","unstructured":"Lee, Y., et al.: An agile approach to building RISC-V microprocessors. IEEE Micro 36(2), 8\u201320 (2016)","journal-title":"IEEE Micro"},{"key":"12_CR16","doi-asserted-by":"crossref","unstructured":"Bachrach, J., et al.: Chisel: constructing hardware in a Scala embedded language. In: DAC Design Automation Conference, pp. 1212\u20131221 (2012)","DOI":"10.1145\/2228360.2228584"},{"key":"12_CR17","unstructured":"Bachrach, J.J., Asanovi\u0107, K.: Chisel 3.0 tutorial. Technical report, EECS Department, UC Berkeley (2017)"},{"key":"12_CR18","volume-title":"Digital Design in Chisel","author":"M Schoeberl","year":"2020","unstructured":"Schoeberl, M.: Digital Design in Chisel. Kindle Direct Publishing, Seattle (2020)"},{"key":"12_CR19","volume-title":"Programming in Scala","author":"M Odersky","year":"2008","unstructured":"Odersky, M., Spoon, L., Venners, B.: Programming in Scala. Artima Inc., Walnut Creek (2008)"},{"key":"12_CR20","doi-asserted-by":"crossref","unstructured":"Mosanu, S., Guo, X., El-Hadedy, M., Anghel, L., Stan, M.: Flexi-AES: a highly-parameterizable cipher for a wide range of design constraints. In: 2019 IEEE 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), p. 338. IEEE (2019)","DOI":"10.1109\/FCCM.2019.00079"},{"key":"12_CR21","doi-asserted-by":"crossref","unstructured":"Arcas-Abella, O., et al.: An empirical evaluation of high-level synthesis languages and tools for database acceleration. In: 2014 24th International Conference on Field Programmable Logic and Applications (FPL), pp. 1\u20138. IEEE (2014)","DOI":"10.1109\/FPL.2014.6927484"},{"key":"12_CR22","unstructured":"Asanovi\u0107, K., et al.: The rocket chip generator. Technical report, UCB\/EECS-2016-17, EECS Department, University of California, Berkeley (2016)"},{"key":"12_CR23","unstructured":"Celio, C., Chiu, P.-F., Nikolic, B., Patterson, D.A., Asanovic, K.: BOOMv2: an open-source out-of-order RISC-V core. In: First Workshop on Computer Architecture Research with RISC-V (CARRV) (2017)"},{"key":"12_CR24","doi-asserted-by":"crossref","unstructured":"Bailey, S., et al.: A 28nm FDSOI 8192-point digital ASIC spectrometer from a Chisel generator. In: 2018 IEEE Custom Integrated Circuits Conference (CICC), pp. 1\u20134. IEEE (2018)","DOI":"10.1109\/CICC.2018.8357062"},{"issue":"5","key":"12_CR25","doi-asserted-by":"publisher","first-page":"16","DOI":"10.1109\/MSPEC.2019.8701189","volume":"56","author":"S Cass","year":"2019","unstructured":"Cass, S.: Taking AI to the edge: Google\u2019s TPU now comes in a maker-friendly package. IEEE Spectr. 56(5), 16\u201317 (2019)","journal-title":"IEEE Spectr."},{"key":"12_CR26","unstructured":"Lockhart, D., et al.: Experiences building edge TPU with Chisel. In: 2018 Chisel Community Conference (2018)"},{"key":"12_CR27","doi-asserted-by":"crossref","unstructured":"Di Tucci, L., Conficconi, D., Comodi, A., Hofmeyr, S., Donofrio, D., Santambrogio, M.D.: A parallel, energy efficient hardware architecture for the merAligner on FPGA using Chisel HCL. In: 2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 214\u2013217. IEEE (2018)","DOI":"10.1109\/IPDPSW.2018.00041"},{"key":"12_CR28","doi-asserted-by":"crossref","unstructured":"Serre, F., P\u00fcschel, M.: A DSL-based FFT hardware generator in Scala. In: 2018 28th International Conference on Field Programmable Logic and Applications (FPL), pp. 315\u20133157. IEEE (2018)","DOI":"10.1109\/FPL.2018.00060"},{"key":"12_CR29","doi-asserted-by":"crossref","unstructured":"Nowatzki, T., Gangadhar, V., Ardalani, N., Sankaralingam, K.: Stream-dataflow acceleration. In: 2017 ACM\/IEEE 44th Annual International Symposium on Computer Architecture (ISCA), pp. 416\u2013429. IEEE (2017)","DOI":"10.1145\/3079856.3080255"},{"key":"12_CR30","doi-asserted-by":"crossref","unstructured":"Prabhakar, R., et al.: Plasticine: a reconfigurable architecture for parallel patterns. In: 2017 ACM\/IEEE 44th Annual International Symposium on Computer Architecture (ISCA), pp. 389\u2013402. IEEE (2017)","DOI":"10.1145\/3079856.3080256"},{"issue":"4","key":"12_CR31","doi-asserted-by":"publisher","first-page":"10","DOI":"10.1109\/MM.2020.2996616","volume":"40","author":"A Amid","year":"2020","unstructured":"Amid, A., et al.: Chipyard: integrated design, simulation, and implementation framework for custom SoCs. IEEE Micro 40(4), 10\u201321 (2020)","journal-title":"IEEE Micro"},{"key":"12_CR32","unstructured":"Asanovic, K., Patterson, D.A., Celio, C.: The berkeley out-of-order machine (BOOM): an industry-competitive, synthesizable, parameterized RISC-V processor. Technical report, University of California at Berkeley Berkeley United States (2015)"},{"key":"12_CR33","unstructured":"Wang, A.: Agile design of generator-based signal processing hardware. Ph.D. thesis, EECS Department, University of California, Berkeley (2019)"},{"key":"12_CR34","unstructured":"Dobis, A., et al.: Open-source verification with Chisel and Scala (2021)"},{"key":"12_CR35","unstructured":"Snyder, W.: Verilator: open simulation-growing up. DVClub Bristol (2013)"},{"key":"12_CR36","unstructured":"Truong, L., Hanrahan, P.: A golden age of hardware description languages: applying programming language techniques to improve design productivity. In: 3rd Summit on Advances in Programming Languages (SNAPL 2019), Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2019)"},{"key":"12_CR37","unstructured":"Hennessy, J., Patterson, D.: A new golden age for computer architecture: domain-specific hardware\/software co-design, enhanced. In: ACM\/IEEE 45th Annual International Symposium on Computer Architecture (ISCA) (2018)"},{"key":"12_CR38","unstructured":"Asanovi\u0107, K., Patterson, D.A.: Instruction sets should be free: the case for RISC-V. Technical report UCB\/EECS-2014-146, EECS Department, University of California, Berkeley (2014)"},{"key":"12_CR39","doi-asserted-by":"crossref","unstructured":"Fatollahi-Fard, F., Donofrio, D., Michelogiannakis, G., Shalf, J.: OpenSoC fabric: on-chip network generator: using Chisel to generate a parameterizable on-chip interconnect fabric. In: Proceedings of the 2014 International Workshop on Network on Chip Architectures, pp. 45\u201350 (2014)","DOI":"10.1145\/2685342.2685351"},{"key":"12_CR40","unstructured":"Wolf, C., Glaser, J., Kepler, J.: Yosys - a free Verilog synthesis suite. In: Proceedings of the 21st Austrian Workshop on Microelectronics (Austrochip) (2013)"},{"key":"12_CR41","doi-asserted-by":"crossref","unstructured":"Izraelevitz, A., et al.: Reusability is FIRRTL ground: hardware construction languages, compiler frameworks, and transformations. In: 2017 IEEE\/ACM International Conference on Computer-Aided Design (ICCAD), pp. 209\u2013216. IEEE (2017)","DOI":"10.1109\/ICCAD.2017.8203780"},{"key":"12_CR42","doi-asserted-by":"crossref","unstructured":"Ansell, T., Saligane, M.: The missing pieces of open design enablement: a recent history of Google efforts (invited paper). In: 2020 IEEE\/ACM International Conference on Computer Aided Design (ICCAD), pp. 1\u20138. IEEE (2020)","DOI":"10.1145\/3400302.3415736"},{"key":"12_CR43","doi-asserted-by":"publisher","first-page":"38","DOI":"10.1109\/MDAT.2021.3050000","volume":"38","author":"RT Edwards","year":"2021","unstructured":"Edwards, R.T., Shalan, M., Kassem, M.: Real silicon using open-source EDA. IEEE Des. Test 38, 38\u201344 (2021)","journal-title":"IEEE Des. Test"},{"key":"12_CR44","doi-asserted-by":"crossref","unstructured":"Czajkowski, T.S., et al.: From OpenCL to high-performance hardware on FPGAs. In: 22nd International Conference on Field Programmable Logic and Applications (FPL), pp. 531\u2013534. IEEE (2012)","DOI":"10.1109\/FPL.2012.6339272"},{"key":"12_CR45","first-page":"84","volume":"127","author":"J Decaluwe","year":"2004","unstructured":"Decaluwe, J.: MyHDL: a python-based hardware description language. Linux J. 127, 84\u201387 (2004)","journal-title":"Linux J."},{"key":"12_CR46","unstructured":"Migen, a python toolbox for building complex digital hardware. https:\/\/github.com\/m-labs\/migen"},{"key":"12_CR47","unstructured":"Baaij, C.: C$$\\lambda $$ash: from Haskell to hardware (2009)"},{"key":"12_CR48","unstructured":"Charles, P.: SpinalHDL (2016). https:\/\/github.com\/SpinalHDL\/SpinalHDL"},{"key":"12_CR49","doi-asserted-by":"crossref","unstructured":"Koeplinger, D., et al.: Spatial: a language and compiler for application accelerators. In: Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 296\u2013311 (2018)","DOI":"10.1145\/3192366.3192379"},{"key":"12_CR50","doi-asserted-by":"crossref","unstructured":"Hashemian, R.: Design and hardware construction of a high speed and memory efficient Huffman decoding. In: IEEE International Conference on Consumer Electronics, pp. 74\u201375. IEEE (1994)","DOI":"10.1109\/ICCE.1994.582159"},{"key":"12_CR51","doi-asserted-by":"crossref","unstructured":"Strempfer, S., Yoshii, K., Hammer, M., Bycul, D., Miceli, A.: Designing a streaming data coalescing architecture for scientific detector ASICs with variable data velocity. arXiv preprint arXiv:2008.08198 (2021)","DOI":"10.1109\/XLOOP54565.2021.00007"}],"container-title":["Communications in Computer and Information Science","Driving Scientific and Engineering Discoveries Through the Integration of Experiment, Big Data, and Modeling and Simulation"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-96498-6_12","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,7,5]],"date-time":"2022-07-05T09:07:19Z","timestamp":1657012039000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-96498-6_12"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022]]},"ISBN":["9783030964979","9783030964986"],"references-count":51,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-96498-6_12","relation":{},"ISSN":["1865-0929","1865-0937"],"issn-type":[{"type":"print","value":"1865-0929"},{"type":"electronic","value":"1865-0937"}],"subject":[],"published":{"date-parts":[[2022]]},"assertion":[{"value":"10 March 2022","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"SMC","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Smoky Mountains Computational Sciences and Engineering Conference","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"18 October 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"20 October 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"21","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"smc2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/smc2021.ornl.gov","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"88","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"33","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"38% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}