Python Subset to Digital Logic Dataflow Compiler for Robots and IoT
Robots and IoT devices must process real-time signals using embedded systems with limited power and clock speeds - rather than large CPUs or GPUs. FPGAs offer highly parallel computation, but are difficult to program, both algorithmically and at hardware implementation level. Programmers of digital...
Saved in:
| Published in | IEEE ... International Conference on Trust, Security and Privacy in Computing and Communications (Online) pp. 1893 - 1899 |
|---|---|
| Main Authors | , |
| Format | Conference Proceeding |
| Language | English |
| Published |
IEEE
01.11.2023
|
| Subjects | |
| Online Access | Get full text |
| ISSN | 2324-9013 |
| DOI | 10.1109/TrustCom60117.2023.00257 |
Cover
| Abstract | Robots and IoT devices must process real-time signals using embedded systems with limited power and clock speeds - rather than large CPUs or GPUs. FPGAs offer highly parallel computation, but are difficult to program, both algorithmically and at hardware implementation level. Programmers of digital signal processing (DSP), machine vision, and neural networks typically work in high level, serial languages such as Python, so would benefit from a tool to automatically convert this code to run on FPGA. We present a design for a compiler from a serial Python subset to parallel dataflow FPGA, in which the physical connectivity and dataflow of the digital logic mirrors the logical dataflow of the programs. The subset removes some imperative features from Python and focuses on Python's functional programming elements, which can be more easily compiled into physical digital logic implementations of dataflows. Some imperative features are retained but interpreted under alternative functional semantics, making them easier to parallelize. These dataflows can then be pipelined for efficient continuous real-time data processing. An open-source partial implementation is provided together with a compilable simple neuron program. |
|---|---|
| AbstractList | Robots and IoT devices must process real-time signals using embedded systems with limited power and clock speeds - rather than large CPUs or GPUs. FPGAs offer highly parallel computation, but are difficult to program, both algorithmically and at hardware implementation level. Programmers of digital signal processing (DSP), machine vision, and neural networks typically work in high level, serial languages such as Python, so would benefit from a tool to automatically convert this code to run on FPGA. We present a design for a compiler from a serial Python subset to parallel dataflow FPGA, in which the physical connectivity and dataflow of the digital logic mirrors the logical dataflow of the programs. The subset removes some imperative features from Python and focuses on Python's functional programming elements, which can be more easily compiled into physical digital logic implementations of dataflows. Some imperative features are retained but interpreted under alternative functional semantics, making them easier to parallelize. These dataflows can then be pipelined for efficient continuous real-time data processing. An open-source partial implementation is provided together with a compilable simple neuron program. |
| Author | Jurkans, Kristaps Fox, Charles |
| Author_xml | – sequence: 1 givenname: Kristaps surname: Jurkans fullname: Jurkans, Kristaps email: 19701672@students.lincoln.ac.uk organization: University of Lincoln,School of Computer Science,UK – sequence: 2 givenname: Charles surname: Fox fullname: Fox, Charles email: chfox@lincoln.ac.uk organization: University of Lincoln,School of Computer Science,UK |
| BookMark | eNotzctKAzEUgOEoCtbaN3CRF5h6Ts7ktpSpl0JB0bouSZOpkemkzKRI315BV__u-6_ZRZ_7yBhHmCOCvVsPx7E0ea8AUc8FCJoDCKnP2Mxqa0gCGbSWztlEkKgrC0hXbDaOXwBAAmo0csKa11P5zD1_P_oxFl4yX6RdKq7jq7xLW75wxbVd_ua_p0Pq4sDbPPC37HMZuesDX-b1DbtsXTfG2X-n7OPxYd08V6uXp2Vzv6oSUl0q51og2CKEGFy0RoMPGqPe1grJG4heKVBeoRUmoBRKyqBb0lZrF1rvaMpu_9wUY9wchrR3w2mDIMlYTfQDI6FPCA |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| DBID | 6IE 6IL CBEJK RIE RIL |
| DOI | 10.1109/TrustCom60117.2023.00257 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Xplore POP ALL IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP All) 1998-Present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 9798350381993 |
| EISSN | 2324-9013 |
| EndPage | 1899 |
| ExternalDocumentID | 10538973 |
| Genre | orig-research |
| GroupedDBID | 6IE 6IF 6IL 6IN AAWTH ABLEC ADZIZ ALMA_UNASSIGNED_HOLDINGS BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO IEGSK OCL RIE RIL |
| ID | FETCH-LOGICAL-i134t-aaf030c10dedae9870bd71e7c4613b80eb6606b61928d152655d7f37977adfba3 |
| IEDL.DBID | RIE |
| IngestDate | Wed Aug 27 02:04:47 EDT 2025 |
| IsPeerReviewed | false |
| IsScholarly | false |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-i134t-aaf030c10dedae9870bd71e7c4613b80eb6606b61928d152655d7f37977adfba3 |
| PageCount | 7 |
| ParticipantIDs | ieee_primary_10538973 |
| PublicationCentury | 2000 |
| PublicationDate | 2023-Nov.-1 |
| PublicationDateYYYYMMDD | 2023-11-01 |
| PublicationDate_xml | – month: 11 year: 2023 text: 2023-Nov.-1 day: 01 |
| PublicationDecade | 2020 |
| PublicationTitle | IEEE ... International Conference on Trust, Security and Privacy in Computing and Communications (Online) |
| PublicationTitleAbbrev | TRUSTCOM |
| PublicationYear | 2023 |
| Publisher | IEEE |
| Publisher_xml | – name: IEEE |
| SSID | ssj0003204185 |
| Score | 1.8588785 |
| Snippet | Robots and IoT devices must process real-time signals using embedded systems with limited power and clock speeds - rather than large CPUs or GPUs. FPGAs offer... |
| SourceID | ieee |
| SourceType | Publisher |
| StartPage | 1893 |
| SubjectTerms | Digital signal processing Internet of Things Program processors Real-time systems Security Semantics Signal processing algorithms |
| Title | Python Subset to Digital Logic Dataflow Compiler for Robots and IoT |
| URI | https://ieeexplore.ieee.org/document/10538973 |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3LSgMxFA22K1f1UfFNFm4zZl7JZN1aqmAp0kJ3Ja-RIkykpoh-vbkznYqC4G4YJhASTu7NnXvOQeim0LHJleCkpNqQLNaaqPAhCel-wrRUktYSG48TNp5nD4t8sSWr11wYa23dfGYjeKz_5RunN1AqCwgP8BQ87aAOL1hD1toVVNKEghBL261Dxe0MWAsBVgx0zyLwCYfySf7TSKWOI6MemrQzaNpHXqKNV5H-_CXO-O8pHqD-N2UPT3fB6BDt2eoI9VrPBryF8DEaTD9ALQDDgWE99g4PV89gHILBdVnjoQQ_X_eOYWg4MdY4ZLX4ySnn37CsDL53sz6aj-5mgzHZGimQVZxmnkhZBizrmBprpBUBosrw2HKdhWCuCmoVC_cYBXepwsQgmJ8bXqY85IbSlEqmJ6hbucqeImyKUoicJkbrJFMmVQx4fMLakNdkBZNnqA-LsnxttDKW7Xqc__H-Au3DxjTsvkvU9euNvQph3qvrenu_AN4FqCU |
| linkProvider | IEEE |
| linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1LS8NAEB60HvRUHxXf7sFrYh6b17m1tNqWIin0VvYVESErdYvor3cnaSoKgrcQsrDs8u3MTub7PoCbVPgy4lniFJ6QDvWFcLj90LHpfhALxplXSWyMJ_FgRu_n0XxNVq-4MEqpqvlMufhY_cuXWqywVGYRbuGZJeE27ESU0qima21KKmHgoRRL06_jZbc58hYssGJUPnPRKRwLKNFPK5UqkvTbMGnmUDeQvLgrw13x-Uue8d-T3IfON2mPTDfh6AC2VHkI7ca1gaxBfATd6QfqBRA8MpQhRpPe8xNahxD0XRakx9DRV78THGrPjCWxeS151FybN8JKSYY678Csf5d3B87aSsF59kNqHMYKi2bhe1JJpjILUi4TXyWC2nDOU0_x2N5kON6mUumjZH4kkyJMbHbIZMFZeAytUpfqBIhMiyyLvEAKEVAuQx4jky9TymY2NI3ZKXRwURavtVrGolmPsz_eX8PuIB-PFqPh5OEc9nCTaq7fBbTMcqUubdA3_Kra6i_dDqty |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=IEEE+...+International+Conference+on+Trust%2C+Security+and+Privacy+in+Computing+and+Communications+%28Online%29&rft.atitle=Python+Subset+to+Digital+Logic+Dataflow+Compiler+for+Robots+and+IoT&rft.au=Jurkans%2C+Kristaps&rft.au=Fox%2C+Charles&rft.date=2023-11-01&rft.pub=IEEE&rft.eissn=2324-9013&rft.spage=1893&rft.epage=1899&rft_id=info:doi/10.1109%2FTrustCom60117.2023.00257&rft.externalDocID=10538973 |