Python to accelerate embedded SoC design A case study for systems biology

We present SysPy (System Python) a tool which exploits the strengths of the popular Python scripting language to boost design productivity of embedded System on Chips for FPGAs. SysPy acts as a “glue” software between mature HDLs, ready-to-use VHDL components and programmable processor soft IP cores...

Full description

Saved in:
Bibliographic Details
Published inACM transactions on embedded computing systems Vol. 13; no. 4; pp. 1 - 25
Main Authors Logaras, Evangelos, Hazapis, Orsalia G., Manolakos, Elias S.
Format Journal Article
LanguageEnglish
Published 01.11.2014
Subjects
Online AccessGet full text
ISSN1539-9087
1558-3465
DOI10.1145/2560032

Cover

Abstract We present SysPy (System Python) a tool which exploits the strengths of the popular Python scripting language to boost design productivity of embedded System on Chips for FPGAs. SysPy acts as a “glue” software between mature HDLs, ready-to-use VHDL components and programmable processor soft IP cores. SysPy can be used to: (i) automatically translate hardware components described in Python into synthesizable VHDL, (ii) capture top-level structural descriptions of processor-centric SoCs in Python, (iii) implement all the steps necessary to compile the user's C code for an instruction set processor core and generate processor specific Tcl scripts that import to the design project all the necessary HDL files of the processor's description and instantiate/connect the core to other blocks in a synthesizable top-level Python description. Moreover, we have developed a Hardware Abstraction Layer (HAL) in Python which allows user applications running in a host PC to utilize effortlessly the SoC's resources in the FPGA. SysPy's design capabilities, when complemented with the developed HAL software API, provide all the necessary tools for hw/sw partitioning and iterative design for efficient SoC's performance tuning. We demonstrate how SysPy's design flow and functionalities can be used by building a processor-centric embedded SoC for computational systems biology. The designed SoC, implemented using a Xilinx Virtex-5 FPGA, combines the flexibility of a programmable soft processor core (Leon3) with the high performance of an application specific core to simulate flexibly and efficiently the stochastic behavior of large size biomolecular reaction networks. Such networks are essential for studying the dynamics of complex biological systems consisting of multiple interacting pathways.
AbstractList We present SysPy (System Python) a tool which exploits the strengths of the popular Python scripting language to boost design productivity of embedded System on Chips for FPGAs. SysPy acts as a “glue” software between mature HDLs, ready-to-use VHDL components and programmable processor soft IP cores. SysPy can be used to: (i) automatically translate hardware components described in Python into synthesizable VHDL, (ii) capture top-level structural descriptions of processor-centric SoCs in Python, (iii) implement all the steps necessary to compile the user's C code for an instruction set processor core and generate processor specific Tcl scripts that import to the design project all the necessary HDL files of the processor's description and instantiate/connect the core to other blocks in a synthesizable top-level Python description. Moreover, we have developed a Hardware Abstraction Layer (HAL) in Python which allows user applications running in a host PC to utilize effortlessly the SoC's resources in the FPGA. SysPy's design capabilities, when complemented with the developed HAL software API, provide all the necessary tools for hw/sw partitioning and iterative design for efficient SoC's performance tuning. We demonstrate how SysPy's design flow and functionalities can be used by building a processor-centric embedded SoC for computational systems biology. The designed SoC, implemented using a Xilinx Virtex-5 FPGA, combines the flexibility of a programmable soft processor core (Leon3) with the high performance of an application specific core to simulate flexibly and efficiently the stochastic behavior of large size biomolecular reaction networks. Such networks are essential for studying the dynamics of complex biological systems consisting of multiple interacting pathways.
Author Hazapis, Orsalia G.
Manolakos, Elias S.
Logaras, Evangelos
Author_xml – sequence: 1
  givenname: Evangelos
  surname: Logaras
  fullname: Logaras, Evangelos
  organization: University of Athens, Athens, Greece
– sequence: 2
  givenname: Orsalia G.
  surname: Hazapis
  fullname: Hazapis, Orsalia G.
  organization: University of Athens, Athens, Greece
– sequence: 3
  givenname: Elias S.
  surname: Manolakos
  fullname: Manolakos, Elias S.
  organization: University of Athens, Athens, Greece
BookMark eNpl0E1LAzEQBuAgFWyr-Bf2Zi-rk-_NUYpWoaCgnpfsZqIr201N0kP_vVvak55mBh5ehndGJkMYkJBrCreUCnnHpALg7IxMqZRVyYWSk8POTWmg0hdkltI3ANVMyClZvO7zVxiKHArbtthjtBkL3DToHLriLSwLh6n7HC7Jubd9wqvTnJOPx4f35VO5flk9L-_XZctklUtOG-OY9JVC1yj04IxstIXGKIkO0Ht0tNVSCwCk3rDx9p4rpQTTlRF8ThbH3G0MPztMud50aXystwOGXaqpFkKD1pyO9OZI2xhSiujrbew2Nu5rCvWhi_rUxSjLP7Ltss1dGHK0Xf_P_wIPNl-e
CitedBy_id crossref_primary_10_1145_3412821_3412826
Cites_doi 10.1145/2043662.2043666
10.1021/bp070255h
10.1007/978-3-540-25944-2_157
10.1016/0021-9991(76)90041-3
10.1146/annurev.physchem.58.032806.104637
10.1093/bioinformatics/btg015
10.1109/MCSE.2011.36
10.1093/bioinformatics/btn051
10.1145/360262.360268
10.1109/FPL.2007.4380656
10.1109/FPL.2011.90
10.18637/jss.v025.i12
10.1021/jp993732q
10.1063/1.1627296
10.1093/bioinformatics/btp457
10.1109/FPL.2006.311218
ContentType Journal Article
DBID AAYXX
CITATION
7SC
8FD
JQ2
L7M
L~C
L~D
DOI 10.1145/2560032
DatabaseName CrossRef
Computer and Information Systems Abstracts
Technology Research Database
ProQuest Computer Science Collection
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
DatabaseTitle CrossRef
Computer and Information Systems Abstracts
Technology Research Database
Computer and Information Systems Abstracts – Academic
Advanced Technologies Database with Aerospace
ProQuest Computer Science Collection
Computer and Information Systems Abstracts Professional
DatabaseTitleList CrossRef
Computer and Information Systems Abstracts
DeliveryMethod fulltext_linktorsrc
Discipline Engineering
EISSN 1558-3465
EndPage 25
ExternalDocumentID 10_1145_2560032
GroupedDBID -DZ
-~X
.4S
.DC
23M
4.4
5GY
5VS
6J9
8US
AAKMM
AALFJ
AAYFX
AAYXX
ABPPZ
ACGFO
ACM
ADBCU
ADL
ADMLS
AEBYY
AEFXT
AEGXH
AEJOY
AENEX
AENSD
AFWIH
AFWXC
AIAGR
AIKLT
AKRVB
ALMA_UNASSIGNED_HOLDINGS
ARCSS
ASPBG
AVWKF
BDXCO
CCLIF
CITATION
CS3
D0L
EBS
EDO
EJD
FEDTE
GUFHI
HGAVV
H~9
I07
LHSKQ
P1C
P2P
PQQKQ
RNS
ROL
TUS
UPT
ZCA
7SC
8FD
JQ2
L7M
L~C
L~D
ID FETCH-LOGICAL-c258t-31b9d25f86edb6ef0d95b7a0b965ed0effed1c757400e1f92fedff36664278943
ISSN 1539-9087
IngestDate Thu Jul 10 17:42:53 EDT 2025
Wed Oct 01 05:52:44 EDT 2025
Thu Apr 24 23:01:51 EDT 2025
IsPeerReviewed true
IsScholarly true
Issue 4
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c258t-31b9d25f86edb6ef0d95b7a0b965ed0effed1c757400e1f92fedff36664278943
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 23
PQID 1744707731
PQPubID 23500
PageCount 25
ParticipantIDs proquest_miscellaneous_1744707731
crossref_primary_10_1145_2560032
crossref_citationtrail_10_1145_2560032
ProviderPackageCode CITATION
AAYXX
PublicationCentury 2000
PublicationDate 2014-11-01
PublicationDateYYYYMMDD 2014-11-01
PublicationDate_xml – month: 11
  year: 2014
  text: 2014-11-01
  day: 01
PublicationDecade 2010
PublicationTitle ACM transactions on embedded computing systems
PublicationYear 2014
References Haglund P. (e_1_2_1_15_1)
e_1_2_1_40_1
e_1_2_1_23_1
e_1_2_1_21_1
e_1_2_1_27_1
e_1_2_1_25_1
e_1_2_1_26_1
Zhang M. (e_1_2_1_41_1); 1
Ou J. (e_1_2_1_28_1)
Logaras E. (e_1_2_1_20_1)
Hutchings B. (e_1_2_1_18_1)
Mencer O. (e_1_2_1_22_1)
e_1_2_1_7_1
Decaluwe J. (e_1_2_1_8_1) 2004; 127
e_1_2_1_31_1
e_1_2_1_30_1
e_1_2_1_6_1
e_1_2_1_3_1
e_1_2_1_12_1
e_1_2_1_35_1
e_1_2_1_4_1
e_1_2_1_13_1
e_1_2_1_34_1
e_1_2_1_1_1
e_1_2_1_10_1
e_1_2_1_33_1
e_1_2_1_2_1
e_1_2_1_11_1
e_1_2_1_32_1
e_1_2_1_16_1
e_1_2_1_39_1
Chen P. (e_1_2_1_5_1)
e_1_2_1_17_1
e_1_2_1_38_1
e_1_2_1_14_1
e_1_2_1_37_1
Ouzounoglou E. (e_1_2_1_29_1)
e_1_2_1_36_1
Myers C. J. (e_1_2_1_24_1)
e_1_2_1_9_1
e_1_2_1_19_1
References_xml – ident: e_1_2_1_35_1
– ident: e_1_2_1_7_1
– ident: e_1_2_1_32_1
  doi: 10.1145/2043662.2043666
– ident: e_1_2_1_21_1
– ident: e_1_2_1_38_1
– ident: e_1_2_1_19_1
  doi: 10.1021/bp070255h
– ident: e_1_2_1_27_1
– volume: 127
  start-page: 5
  year: 2004
  ident: e_1_2_1_8_1
  article-title: MyHDL: A Python-based hardware description language
  publication-title: Linux J
– volume-title: Proceedings of the IEEE International Conference on Electronics, Circuits and Systems. 762--765
  ident: e_1_2_1_20_1
– ident: e_1_2_1_11_1
  doi: 10.1007/978-3-540-25944-2_157
– ident: e_1_2_1_13_1
  doi: 10.1016/0021-9991(76)90041-3
– ident: e_1_2_1_26_1
– ident: e_1_2_1_37_1
– volume-title: Engineering Genetic Circuits
  ident: e_1_2_1_24_1
– ident: e_1_2_1_34_1
– ident: e_1_2_1_14_1
  doi: 10.1146/annurev.physchem.58.032806.104637
– ident: e_1_2_1_1_1
– ident: e_1_2_1_17_1
  doi: 10.1093/bioinformatics/btg015
– volume-title: Proceedings of the International Conference on Field Programmable Logic and Applications (FPL'09)
  ident: e_1_2_1_18_1
– ident: e_1_2_1_23_1
  doi: 10.1109/MCSE.2011.36
– ident: e_1_2_1_3_1
  doi: 10.1093/bioinformatics/btn051
– ident: e_1_2_1_6_1
– ident: e_1_2_1_4_1
  doi: 10.1145/360262.360268
– volume-title: Proceedings of the International Conference on Field Programmable Logic. 1040--1043
  ident: e_1_2_1_15_1
– volume-title: Proceedings of the International Symposium on Field-Programmable Custom Computing Machines. 47--56
  ident: e_1_2_1_28_1
– ident: e_1_2_1_39_1
  doi: 10.1109/FPL.2007.4380656
– ident: e_1_2_1_16_1
  doi: 10.1109/FPL.2011.90
– ident: e_1_2_1_30_1
  doi: 10.18637/jss.v025.i12
– volume-title: Proceedings of the International Symposium on Quality Electronic Design. 87--93
  ident: e_1_2_1_5_1
– ident: e_1_2_1_2_1
– ident: e_1_2_1_12_1
  doi: 10.1021/jp993732q
– ident: e_1_2_1_31_1
  doi: 10.1063/1.1627296
– volume-title: Proceedings of the International Conference on Systems Biology.
  ident: e_1_2_1_29_1
– ident: e_1_2_1_33_1
– ident: e_1_2_1_25_1
  doi: 10.1093/bioinformatics/btp457
– ident: e_1_2_1_9_1
– ident: e_1_2_1_10_1
– ident: e_1_2_1_40_1
  doi: 10.1109/FPL.2006.311218
– volume: 1
  volume-title: Proceedings of the International SoC Design Conference.
  ident: e_1_2_1_41_1
– volume-title: Proceedings of the IEEE Symposium on FPGAs for Custom Computing Machines. 167--174
  ident: e_1_2_1_22_1
– ident: e_1_2_1_36_1
SSID ssj0017245
Score 1.9879127
Snippet We present SysPy (System Python) a tool which exploits the strengths of the popular Python scripting language to boost design productivity of embedded System...
SourceID proquest
crossref
SourceType Aggregation Database
Enrichment Source
Index Database
StartPage 1
SubjectTerms Construction
Descriptions
Design engineering
Field programmable gate arrays
Hardness
Microprocessors
Programming languages
Software
Subtitle A case study for systems biology
Title Python to accelerate embedded SoC design
URI https://www.proquest.com/docview/1744707731
Volume 13
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVEBS
  databaseName: Inspec with Full Text
  customDbUrl:
  eissn: 1558-3465
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0017245
  issn: 1539-9087
  databaseCode: ADMLS
  dateStart: 20070701
  isFulltext: true
  titleUrlDefault: https://www.ebsco.com/products/research-databases/inspec-full-text
  providerName: EBSCOhost
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1LT9wwELbocqEHBLQVb6VSVVVaZXESO4mPaHmp6raVAIlbFDvjHgpZtBsO8OsZx85jAYnSS5Q4caRkRvOyv_kI-cI0xqwSUHk15iYs1uBLDtSnmkmlC4VOzwCFJz_js0v2_YpfdZytNbqkkiP18CKu5H-kimMoV4OSfYNk25fiAJ6jfPGIEsbjP8n4971B_pvwMVcK_Ydp-zCEGwloTcyGzPGw6DZoNK1mxxPDC9GQhNerBe0UVXM81CWGXifzvKZkzmcW-2Vi7z9wPZ13xushv7WtCn7N5qZuMjwddZXuEpPnv3Yz3zHemw_PR_1SQ8Ac5q5vHYUvqPOQ4MZ46kfMEj60JjXqqQ7r2ceg52gt4Pm5CWem20UdibnK50KT7CfOq91SaAHWPHMT35HlEO08HZDlw6PJj_N2ZSkJa-Lq9lMskNpMPXBTFyOURQddRx0Xa2TVpQveoZX9OlmCcoO87zWR_EC-WS3wqqnXaYHXiNRDLfCsFnwklyfHF-Mz3_Ff-CrkaYXuUYoi5DqNoZAxaFoILpOcShFzKKjZ8FMEKuEJ2mEItAjxWusIE1LDnyJY9IkMymkJm8RLOZhydypkUDAZC6F5HGFoF4RAYx3qLfK1-eZMuebwhqPkOnvyX7eI1z54a_uhPH_kc_PTMrRVZgEqL2F6N88w-2UJTZIo2H79NTtkpdPBXTKoZnewhwFgJfedTB8B5LhaCg
linkProvider EBSCOhost
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%3Ajournal&rft.genre=article&rft.atitle=Python+to+accelerate+embedded+SoC+design&rft.jtitle=ACM+transactions+on+embedded+computing+systems&rft.au=Logaras%2C+Evangelos&rft.au=Hazapis%2C+Orsalia+G.&rft.au=Manolakos%2C+Elias+S.&rft.date=2014-11-01&rft.issn=1539-9087&rft.eissn=1558-3465&rft.volume=13&rft.issue=4&rft.spage=1&rft.epage=25&rft_id=info:doi/10.1145%2F2560032&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_2560032
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1539-9087&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1539-9087&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1539-9087&client=summon