PPU A Control Error-Tolerant Processor for Streaming Applications with Formal Guarantees
With increasing technology scaling and design complexity there are increasing threats from device and circuit failures. This is expected to worsen with post-CMOS devices. Current error-resilient solutions ensure reliability of circuits through protection mechanisms such as redundancy, error correcti...
        Saved in:
      
    
          | Published in | ACM journal on emerging technologies in computing systems Vol. 13; no. 3; pp. 1 - 29 | 
|---|---|
| Main Authors | , , , , | 
| Format | Journal Article | 
| Language | English | 
| Published | 
          
        31.07.2017
     | 
| Online Access | Get full text | 
| ISSN | 1550-4832 1550-4840  | 
| DOI | 10.1145/2990502 | 
Cover
| Abstract | With increasing technology scaling and design complexity there are increasing threats from device and circuit failures. This is expected to worsen with post-CMOS devices. Current error-resilient solutions ensure reliability of circuits through protection mechanisms such as redundancy, error correction, and recovery. However, the costs of these solutions may be high, rendering them impractical. In contrast, error-tolerant solutions allow errors in the computation and are positioned to be suitable for error-tolerant applications such as media applications. For such programmable error-tolerant processors, the Instruction-Set-Architecture (ISA) no longer serves as a specification since it is acceptable for the processor to allow for errors during the execution of instructions. In this work, we address this specification gap by defining the basic requirements needed for an error-tolerant processor to provide acceptable results. Furthermore, we formally define properties that capture these requirements. Based on this, we propose the Partially Protected Uniprocessor (PPU), an error-tolerant processor that aims to meet these requirements with low-cost microarchitectural support. These protection mechanisms convert potentially fatal control errors to potentially tolerable data errors instead of ensuring instruction-level or byte-level correctness. The protection mechanisms in PPU protect the system against crashes, unresponsiveness, and external device corruption. In addition, they also provide support for achieving acceptable result quality. Additionally, we provide a methodology that formally proves the specification properties on PPU using model checking. This methodology uses models for the hardware and software that are integrated with the fault and recovery models. Finally, we experimentally demonstrate the results of model checking and the application-level quality of results for PPU. | 
    
|---|---|
| AbstractList | With increasing technology scaling and design complexity there are increasing threats from device and circuit failures. This is expected to worsen with post-CMOS devices. Current error-resilient solutions ensure reliability of circuits through protection mechanisms such as redundancy, error correction, and recovery. However, the costs of these solutions may be high, rendering them impractical. In contrast, error-tolerant solutions allow errors in the computation and are positioned to be suitable for error-tolerant applications such as media applications. For such programmable error-tolerant processors, the Instruction-Set-Architecture (ISA) no longer serves as a specification since it is acceptable for the processor to allow for errors during the execution of instructions. In this work, we address this specification gap by defining the basic requirements needed for an error-tolerant processor to provide acceptable results. Furthermore, we formally define properties that capture these requirements. Based on this, we propose the Partially Protected Uniprocessor (PPU), an error-tolerant processor that aims to meet these requirements with low-cost microarchitectural support. These protection mechanisms convert potentially fatal control errors to potentially tolerable data errors instead of ensuring instruction-level or byte-level correctness. The protection mechanisms in PPU protect the system against crashes, unresponsiveness, and external device corruption. In addition, they also provide support for achieving acceptable result quality. Additionally, we provide a methodology that formally proves the specification properties on PPU using model checking. This methodology uses models for the hardware and software that are integrated with the fault and recovery models. Finally, we experimentally demonstrate the results of model checking and the application-level quality of results for PPU. | 
    
| Author | Vizel, Yakir Yetim, Yavuz Malik, Sharad Golnari, Pareesa Ameneh Martonosi, Margaret  | 
    
| Author_xml | – sequence: 1 givenname: Pareesa Ameneh surname: Golnari fullname: Golnari, Pareesa Ameneh organization: Princeton University, Princeton, NJ, US – sequence: 2 givenname: Yavuz surname: Yetim fullname: Yetim, Yavuz organization: Princeton University – sequence: 3 givenname: Margaret surname: Martonosi fullname: Martonosi, Margaret organization: Princeton University, Princeton, NJ, US – sequence: 4 givenname: Yakir surname: Vizel fullname: Vizel, Yakir organization: Princeton University, Princeton, NJ, US – sequence: 5 givenname: Sharad surname: Malik fullname: Malik, Sharad organization: Princeton University, Princeton, NJ, US  | 
    
| BookMark | eNo9jruKAkEQABtPwSd-htGe3fOwd0IRXyBooPEy0zsDyp3Kjsn9_SGKUVVUVB_a19s1AowJv4mMnSrn0KJqQY-sxcKUBtsf16oL_ZwviJodux58HQ6nIXSS_8lx9OYATqvlcbEpdvv1djHfFUIlPwrvAhtLoWZRKQVOwhKskpgiR61QGB05U88MkQSHYssUZqxEeW-0qfUAJq-uNLecm5iqe3P-9c1fRVg936v3u_4HFKs1Kg | 
    
| Cites_doi | 10.1109/TCAD.2011.2179038 10.1145/1993498.1993518 10.5555/977395.977673 10.1145/363095.363139 10.1109/MICRO.2003.1253179 10.1145/321296.321310 10.1109/TC.2010.253 10.1145/1189256.1189259 10.1145/2544173.2509546 10.1007/3-540-45937-5_14 10.7873/DATE.2013.055 10.1007/s100090050046 10.1145/2000064.2000118 10.1109/MM.2005.110 10.1109/DATE.2010.5457181 10.1145/1347375.1347389 10.1109/MDAT.2015.2505723 10.1109/TED.2011.2121913 10.1109/MICRO.1999.809458 10.1109/MICRO.2007.18 10.1109/2.982916 10.1145/2150976.2151008 10.1145/2384616.2384619 10.1109/MICRO.2012.48 10.1109/ICCAD.2015.7372582 10.1145/1809028.1806620 10.1145/313817.313834 10.1017/CBO9780511811449 10.1145/2893356 10.1145/2694344.2694354 10.1145/2025113.2025133 10.1145/2248487.1950391  | 
    
| ContentType | Journal Article | 
    
| DBID | AAYXX CITATION  | 
    
| DOI | 10.1145/2990502 | 
    
| DatabaseName | CrossRef | 
    
| DatabaseTitle | CrossRef | 
    
| DatabaseTitleList | CrossRef | 
    
| DeliveryMethod | fulltext_linktorsrc | 
    
| Discipline | Computer Science | 
    
| EISSN | 1550-4840 | 
    
| EndPage | 29 | 
    
| ExternalDocumentID | 10_1145_2990502 | 
    
| GroupedDBID | -DZ .4S .DC 23M 4.4 5GY 5VS 8US AAKMM AALFJ AAYFX AAYXX ABPPZ ACM ADBCU ADL ADMLS AEBYY AEFXT AEJOY AENEX AENSD AFWIH AFWXC AIKLT AKRVB ALMA_UNASSIGNED_HOLDINGS ARCSS ASPBG AVWKF BDXCO CCLIF CITATION CS3 D0L EBS EDO EJD FEDTE GUFHI HGAVV H~9 LHSKQ MK~ ML~ P1C P2P RNS ROL TUS ZCA  | 
    
| ID | FETCH-LOGICAL-c187t-a9b7451bd7c2ffb7fc7cb52cefe7e320c709194d6411cb90c58fb672c2aa434d3 | 
    
| ISSN | 1550-4832 | 
    
| IngestDate | Wed Oct 01 05:59:10 EDT 2025 | 
    
| IsPeerReviewed | true | 
    
| IsScholarly | true | 
    
| Issue | 3 | 
    
| Language | English | 
    
| LinkModel | OpenURL | 
    
| MergedId | FETCHMERGED-LOGICAL-c187t-a9b7451bd7c2ffb7fc7cb52cefe7e320c709194d6411cb90c58fb672c2aa434d3 | 
    
| PageCount | 29 | 
    
| ParticipantIDs | crossref_primary_10_1145_2990502 | 
    
| ProviderPackageCode | CITATION AAYXX  | 
    
| PublicationCentury | 2000 | 
    
| PublicationDate | 2017-07-31 | 
    
| PublicationDateYYYYMMDD | 2017-07-31 | 
    
| PublicationDate_xml | – month: 07 year: 2017 text: 2017-07-31 day: 31  | 
    
| PublicationDecade | 2010 | 
    
| PublicationTitle | ACM journal on emerging technologies in computing systems | 
    
| PublicationYear | 2017 | 
    
| References | Stanley-Marbell Phillip (e_1_2_1_33_1) 2015 Prabhakaran Vijayan (e_1_2_1_30_1) e_1_2_1_20_1 e_1_2_1_40_1 e_1_2_1_23_1 e_1_2_1_24_1 e_1_2_1_21_1 e_1_2_1_22_1 e_1_2_1_27_1 e_1_2_1_28_1 e_1_2_1_26_1 Misailovic Sasa (e_1_2_1_25_1); 49 e_1_2_1_29_1 e_1_2_1_7_1 e_1_2_1_31_1 e_1_2_1_8_1 e_1_2_1_5_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_1_1 e_1_2_1_10_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 e_1_2_1_17_1 Stathaki Tania (e_1_2_1_34_1) 2008 e_1_2_1_38_1 e_1_2_1_14_1 e_1_2_1_37_1 e_1_2_1_15_1 e_1_2_1_36_1 e_1_2_1_9_1 e_1_2_1_18_1 e_1_2_1_19_1  | 
    
| References_xml | – ident: e_1_2_1_7_1 doi: 10.1109/TCAD.2011.2179038 – ident: e_1_2_1_31_1 doi: 10.1145/1993498.1993518 – ident: e_1_2_1_21_1 doi: 10.5555/977395.977673 – ident: e_1_2_1_10_1 doi: 10.1145/363095.363139 – ident: e_1_2_1_12_1 doi: 10.1109/MICRO.2003.1253179 – ident: e_1_2_1_27_1 – volume: 49 volume-title: ACM SIGPLAN Notices ident: e_1_2_1_25_1 – ident: e_1_2_1_11_1 doi: 10.1145/321296.321310 – ident: e_1_2_1_19_1 doi: 10.1109/TC.2010.253 – volume-title: Proceedings of the 15th Workshop on Hot Topics in Operating Systems (HotOS XV). year: 2015 ident: e_1_2_1_33_1 – ident: e_1_2_1_38_1 doi: 10.1145/1189256.1189259 – ident: e_1_2_1_6_1 doi: 10.1145/2544173.2509546 – volume-title: Image Fusion: Algorithms and Applications year: 2008 ident: e_1_2_1_34_1 – ident: e_1_2_1_29_1 – ident: e_1_2_1_35_1 doi: 10.1007/3-540-45937-5_14 – ident: e_1_2_1_18_1 – ident: e_1_2_1_40_1 doi: 10.7873/DATE.2013.055 – ident: e_1_2_1_8_1 doi: 10.1007/s100090050046 – ident: e_1_2_1_1_1 doi: 10.1145/2000064.2000118 – ident: e_1_2_1_5_1 doi: 10.1109/MM.2005.110 – volume-title: Proceedings of the USENIX Annual Technical Conference, General Track. 105--120 ident: e_1_2_1_30_1 – ident: e_1_2_1_28_1 doi: 10.1109/DATE.2010.5457181 – ident: e_1_2_1_36_1 doi: 10.1145/1347375.1347389 – ident: e_1_2_1_37_1 doi: 10.1109/MDAT.2015.2505723 – ident: e_1_2_1_20_1 doi: 10.1109/TED.2011.2121913 – ident: e_1_2_1_3_1 doi: 10.1109/MICRO.1999.809458 – ident: e_1_2_1_24_1 doi: 10.1109/MICRO.2007.18 – ident: e_1_2_1_23_1 doi: 10.1109/2.982916 – ident: e_1_2_1_13_1 doi: 10.1145/2150976.2151008 – ident: e_1_2_1_16_1 doi: 10.1145/2384616.2384619 – ident: e_1_2_1_14_1 doi: 10.1109/MICRO.2012.48 – ident: e_1_2_1_15_1 doi: 10.1109/ICCAD.2015.7372582 – ident: e_1_2_1_4_1 doi: 10.1145/1809028.1806620 – ident: e_1_2_1_17_1 doi: 10.1145/313817.313834 – ident: e_1_2_1_2_1 doi: 10.1017/CBO9780511811449 – ident: e_1_2_1_9_1 – ident: e_1_2_1_26_1 doi: 10.1145/2893356 – ident: e_1_2_1_39_1 doi: 10.1145/2694344.2694354 – ident: e_1_2_1_32_1 doi: 10.1145/2025113.2025133 – ident: e_1_2_1_22_1 doi: 10.1145/2248487.1950391  | 
    
| SSID | ssj0037979 | 
    
| Score | 2.06195 | 
    
| Snippet | With increasing technology scaling and design complexity there are increasing threats from device and circuit failures. This is expected to worsen with... | 
    
| SourceID | crossref | 
    
| SourceType | Index Database | 
    
| StartPage | 1 | 
    
| Subtitle | A Control Error-Tolerant Processor for Streaming Applications with Formal Guarantees | 
    
| Title | PPU | 
    
| Volume | 13 | 
    
| hasFullText | 1 | 
    
| inHoldings | 1 | 
    
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVEBS databaseName: Inspec with Full Text customDbUrl: eissn: 1550-4840 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0037979 issn: 1550-4832 databaseCode: ADMLS dateStart: 20090101 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/eLvHCXMwnV1bS8MwFA5ze_HFu3hnD75JtW3Spn0cUxnDycBNtqeRZCkMpJOu9WG_3pOmlzAFLy-lpEkh-cI5X07OBaFr35sHjDrCCgMhLEIYtxSrtzCDc1igPMPykiyDZ783Jv2JN2k0-obXUpbyW7H-Nq7kP6hCG-CqomT_gGz1U2iAd8AXnoAwPH-F8XA4NsllpzuoM0HENyr0Ny9BlJbm80XufZW7kWe5u_PKyFeeJ8l_i5kOPR-yRMoVUzc6saxMxlOZ6urLU_aRrWtrdgIMcrlaFME_eeXc8uPrYq0dAabAVRPTyOBU1staLnq2sjtqwSnNNp1tqRKm2Ng02JCMjqFitY3jq_AmKs-F0o-e7db6qbyT31BblTOhDq32ZsXALdRyQcLbTdTq3A-eXkq9jGmYZ16spqJDqNXQu2KowU0MkjHaQzvF6aDd0VDvo4aMD9BuWXmjXQjiQ7QFyB-h8ePDqNuzinIWlnACmlos5JR4Dp9T4UYRp5GggnuukJGkEru2oMDdQjL3ieMIHtrCCyLuU1e4jBFM5vgYNeNlLE9QWzBKOQZmFXJCJOVcpVEkmHNCmWML-xS6FBOZveusJbONZTr7ucs52q73wgVqpkkmL4GCpfyqWNtPj0Iu9w | 
    
| 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=PPU&rft.jtitle=ACM+journal+on+emerging+technologies+in+computing+systems&rft.au=Golnari%2C+Pareesa+Ameneh&rft.au=Yetim%2C+Yavuz&rft.au=Martonosi%2C+Margaret&rft.au=Vizel%2C+Yakir&rft.date=2017-07-31&rft.issn=1550-4832&rft.eissn=1550-4840&rft.volume=13&rft.issue=3&rft.spage=1&rft.epage=29&rft_id=info:doi/10.1145%2F2990502&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_2990502 | 
    
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1550-4832&client=summon | 
    
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1550-4832&client=summon | 
    
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1550-4832&client=summon |