{"title":"From CNN to DNN Hardware Accelerators: A Survey on Design, Exploration, Simulation, and Frameworks","authors":"L. Juracy, Rafael Garibotti, F. Moraes","doi":"10.1561/1000000060","DOIUrl":"https://doi.org/10.1561/1000000060","url":null,"abstract":"","PeriodicalId":42137,"journal":{"name":"Foundations and Trends in Electronic Design Automation","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82064440","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Benveniste, B. Caillaud, D. Ničković, R. Passerone, Jean-Baptiste Raclet, Philipp Reinkemeier, A. Sangiovanni-Vincentelli, W. Damm, T. Henzinger, K. Larsen
Systems design has become a key challenge and differentiating factor over the last decades for system companies. Aircrafts, trains, cars, plants, distributed telecommunication military or health care systems, and more, involve systems design as a critical step. Complexity has caused system design times and costs to go severely over budget so as to threaten the health of entire industrial sectors. Heuristic methods and standard practices do not seem to scale with complexity so that novel design methods and tools based on a strong theoretical foundation are sorely needed. Model-based design as well as other methodologies such as layered and compositional design have been used recently but a unified intellectual framework with a complete design flow supported by formal tools is still lacking albeit some attempts at this framework such as Platform-based Design have been successfully deployed. Recently an "orthogonal" approach has been proposed that can be applied to all methodologies proposed thus far to provide a rigorous scaffolding for verification, analysis and abstraction/refinement: contractbased design. Several results have been obtained in this domain but a unified treatment of the topic that can help in putting contract-based design in perspective is still missing. This paper intends to provide such treatment where contracts are precisely defined and characterized so that they can be used in design methodologies such as the ones mentioned above with no ambiguity. In addition, the paper provides an important link between interfaces and contracts to show similarities and correspondences. Examples of the use of contracts in design are provided as well as in depth analysis of existing literature.
{"title":"Contracts for System Design","authors":"A. Benveniste, B. Caillaud, D. Ničković, R. Passerone, Jean-Baptiste Raclet, Philipp Reinkemeier, A. Sangiovanni-Vincentelli, W. Damm, T. Henzinger, K. Larsen","doi":"10.1561/1000000053","DOIUrl":"https://doi.org/10.1561/1000000053","url":null,"abstract":"Systems design has become a key challenge and differentiating factor over the last decades for system companies. Aircrafts, trains, cars, plants, distributed telecommunication military or health care systems, and more, involve systems design as a critical step. Complexity has caused system design times and costs to go severely over budget so as to threaten the health of entire industrial sectors. Heuristic methods and standard practices do not seem to scale with complexity so that novel design methods and tools based on a strong theoretical foundation are sorely needed. Model-based design as well as other methodologies such as layered and compositional design have been used recently but a unified intellectual framework with a complete design flow supported by formal tools is still lacking albeit some attempts at this framework such as Platform-based Design have been successfully deployed. Recently an \"orthogonal\" approach has been proposed that can be applied to all methodologies proposed thus far to provide a rigorous scaffolding for verification, analysis and abstraction/refinement: contractbased design. Several results have been obtained in this domain but a unified treatment of the topic that can help in putting contract-based design in perspective is still missing. This paper intends to provide such treatment where contracts are precisely defined and characterized so that they can be used in design methodologies such as the ones mentioned above with no ambiguity. In addition, the paper provides an important link between interfaces and contracts to show similarities and correspondences. Examples of the use of contracts in design are provided as well as in depth analysis of existing literature.","PeriodicalId":42137,"journal":{"name":"Foundations and Trends in Electronic Design Automation","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90243057","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Non-Boolean Computing with Spintronic Devices","authors":"Kawsher A. Roxy, S. Bhanja","doi":"10.1561/1000000046","DOIUrl":"https://doi.org/10.1561/1000000046","url":null,"abstract":"","PeriodicalId":42137,"journal":{"name":"Foundations and Trends in Electronic Design Automation","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-01-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"72614687","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Secure Processors Part I: Background, Taxonomy for Secure Enclaves and Intel SGX Architecture
安全处理器第1部分:背景,安全Enclaves和Intel SGX架构的分类
{"title":"Secure Processors Part I: Background, Taxonomy for Secure Enclaves and Intel SGX Architecture","authors":"Victor Costan, Ilia A. Lebedev, S. Devadas","doi":"10.1561/1000000051","DOIUrl":"https://doi.org/10.1561/1000000051","url":null,"abstract":"Secure Processors Part I: Background, Taxonomy for Secure Enclaves and Intel SGX Architecture","PeriodicalId":42137,"journal":{"name":"Foundations and Trends in Electronic Design Automation","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2017-07-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73906442","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
As the automotive industry is entering the smart era through advancesin sensing, computation, storage, communication, and actuation technologies,a larger number of more complex control applications withbetter performances are expected to be on board. This requires an implementationplatform with abundant resources, which is undesired inthe cost-sensitive automotive domain. The implementation platform,often embedded in an Electronic Control Unit ECU and shared bymultiple applications to save cost, is mainly comprised of a processorfor computation, memory for storing instructions and data, and busfor internal and external communication. Conventionally, automotivecontrol systems are designed using model-based approaches, where thedetails of the implementation platform are ignored. Techniques thatintegrate the characteristics of implementation resources into controlalgorithms design are largely missing. Such a separate design paradigmis too conservative in resources dimensioning and utilization for modernvehicles. This article presents recently developed approaches in automotivecontrol systems design that take implementation resources intoconsideration, aiming to improve the control performances for a givenamount of resources, or equivalently, realize the required control performanceswith fewer resources. While communication resources have beenextensively explored in the literature of networked embedded controlsystems, we will focus on memory and computation resources, whichhave started to receive attention from the academic community andindustry just recently. As Electric Vehicles EVs have become a newtrend in the automotive industry, energy resources of EVs, i.e., thebatteries, are also investigated. A number of real-world applicationsvalidate the resource-aware automotive systems design techniques presentedin this article.
{"title":"Resource-aware Automotive Control Systems Design: A Cyber-Physical Systems Approach","authors":"Wanli Chang, S. Chakraborty","doi":"10.1561/1000000045","DOIUrl":"https://doi.org/10.1561/1000000045","url":null,"abstract":"As the automotive industry is entering the smart era through advancesin sensing, computation, storage, communication, and actuation technologies,a larger number of more complex control applications withbetter performances are expected to be on board. This requires an implementationplatform with abundant resources, which is undesired inthe cost-sensitive automotive domain. The implementation platform,often embedded in an Electronic Control Unit ECU and shared bymultiple applications to save cost, is mainly comprised of a processorfor computation, memory for storing instructions and data, and busfor internal and external communication. Conventionally, automotivecontrol systems are designed using model-based approaches, where thedetails of the implementation platform are ignored. Techniques thatintegrate the characteristics of implementation resources into controlalgorithms design are largely missing. Such a separate design paradigmis too conservative in resources dimensioning and utilization for modernvehicles. This article presents recently developed approaches in automotivecontrol systems design that take implementation resources intoconsideration, aiming to improve the control performances for a givenamount of resources, or equivalently, realize the required control performanceswith fewer resources. While communication resources have beenextensively explored in the literature of networked embedded controlsystems, we will focus on memory and computation resources, whichhave started to receive attention from the academic community andindustry just recently. As Electric Vehicles EVs have become a newtrend in the automotive industry, energy resources of EVs, i.e., thebatteries, are also investigated. A number of real-world applicationsvalidate the resource-aware automotive systems design techniques presentedin this article.","PeriodicalId":42137,"journal":{"name":"Foundations and Trends in Electronic Design Automation","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2016-12-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"88027219","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Kalyanaraman, M. Halappanavar, D. Chavarría-Miranda, Hao Lu, K. Duraisamy, P. Pande
Graph representations are pervasive in scientific and social computing.They serve as vital tools to model the interplay among differentinteracting entities.In this paper, we visit the problem of community detection, which isone of the most widely used graph operations toward scientific discovery.Community detection refers to the process of identifying tightlyknitsubgroups of vertices in a large graph. These sub-groups or communitiesrepresent vertices that are tied together through commonstructure or function. Identification of communities could help in understandingthe modular organization of complex networks. However,owing to large data sizes and high computational costs, performingcommunity detection at scale has become increasingly challenging.Here, we present a detailed review and analysis of some of the leadingcomputational methods and implementations developed for executingcommunity detection on modern day multicore and manycorearchitectures. Our goals are to: a define the problem of community detectionand highlight its scientific significance; b relate to challengesin parallelizing the operation on modern day architectures; c providea detailed report and logical organization of the approaches that havebeen designed for various architectures; and d finally, provide insightsinto the strengths and suitability of different architectures for communitydetection, and a preview into the future trends of the area. It is ourhope that this detailed treatment of community detection on parallelarchitectures can serve as an exemplar study for extending the applicationof modern day multicore and manycore architectures to othercomplex graph applications.
{"title":"Fast Uncovering of Graph Communities on a Chip: Toward Scalable Community Detection on Multicore and Manycore Platforms","authors":"A. Kalyanaraman, M. Halappanavar, D. Chavarría-Miranda, Hao Lu, K. Duraisamy, P. Pande","doi":"10.1561/1000000044","DOIUrl":"https://doi.org/10.1561/1000000044","url":null,"abstract":"Graph representations are pervasive in scientific and social computing.They serve as vital tools to model the interplay among differentinteracting entities.In this paper, we visit the problem of community detection, which isone of the most widely used graph operations toward scientific discovery.Community detection refers to the process of identifying tightlyknitsubgroups of vertices in a large graph. These sub-groups or communitiesrepresent vertices that are tied together through commonstructure or function. Identification of communities could help in understandingthe modular organization of complex networks. However,owing to large data sizes and high computational costs, performingcommunity detection at scale has become increasingly challenging.Here, we present a detailed review and analysis of some of the leadingcomputational methods and implementations developed for executingcommunity detection on modern day multicore and manycorearchitectures. Our goals are to: a define the problem of community detectionand highlight its scientific significance; b relate to challengesin parallelizing the operation on modern day architectures; c providea detailed report and logical organization of the approaches that havebeen designed for various architectures; and d finally, provide insightsinto the strengths and suitability of different architectures for communitydetection, and a preview into the future trends of the area. It is ourhope that this detailed treatment of community detection on parallelarchitectures can serve as an exemplar study for extending the applicationof modern day multicore and manycore architectures to othercomplex graph applications.","PeriodicalId":42137,"journal":{"name":"Foundations and Trends in Electronic Design Automation","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2016-05-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79623054","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}