ebook img

Design Concepts for a Virtualizable Embedded MPSoC Architecture: Enabling Virtualization in Embedded Multi-Processor Systems PDF

222 Pages·2014·8.064 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Design Concepts for a Virtualizable Embedded MPSoC Architecture: Enabling Virtualization in Embedded Multi-Processor Systems

Design Concepts for a Virtualizable Embedded MPSoC Architecture Alexander Biedermann Design Concepts for a Virtualizable Embedded MPSoC Architecture Enabling Virtualization in Embedded Multi-Processor Systems Alexander Biedermann Darmstadt, Germany Technische Universität Darmstadt, 2014 Darmstädter Dissertation, D17 ISBN 978-3-658-08046-4 ISBN 978-3-658-08047-1 (eBook) DOI 10.1007/978-3-658-08047-1 Library of Congress Control Number: 2014954234 Springer Vieweg © Springer Fachmedien Wiesbaden 2014 This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifi cally the rights of translation, reprinting, reuse of illus- trations, recitation, broadcasting, reproduction on microfi lms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specifi c statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made. Printed on acid-free paper Springer Vieweg is a brand of Springer Fachmedien Wiesbaden Springer Fachmedien Wiesbaden is part of Springer Science+Business Media (www.springer.com) fürmeineEltern Abstract Inthepresentwork,agenerichardware-basedvirtualizationarchitectureisintroduced. The proposed virtualization concept transforms an array of off-the-shelf embedded processorsintoasystemwithhighexecutiondynamism. Atanypointintime,tasks maybeshiftedamongtheprocessorarraytransparently. Neitherthesoftwareoftasks northeprocessorcoreshavetobemodifiedinordertoenablethisfeature. Thework detailstask-processorinterconnection,virtualizedtaskcommunicationaswellasmeans forenergyawarenessandfaulttoleranceinavirtualizableMPSoC. Based on this architecture, concepts for the design of embedded multi-processor systems with the ability for a dynamic reshaping of their initial configuration are highlighted. This includes energy aware systems, fault tolerant systems as well as parallelizedsystems. Forthelatter,theso-calledAgileProcessingschemeisintroduced, whichenablesaseamlesstransitionbetweensequentialandparallelexecutionschemes oftasks. Thedesignofvirtualizablesystemsisfurthermoreaidedbyadedicateddesign framework,whichintegratesintoexisting,commercialdesignflows. Application examples taken from different domains in embedded system design feature specific optimization goals and demonstrate the feasibility of the proposed designconceptsandofthevirtualizationarchitecture. Forthispurpose,prototyped virtualizablemulti-processordesignshavebeensuccessfullysynthesizedforFPGAs. Zusammenfassung DievorliegendeArbeitstellteingenerischeshardware-basiertesVirtualisierungskonzept vor, das aus einem Array aus eingebetteten Standardprozessoren ein System mit hoherAusführungsdynamikschafft.TaskskönnenzurLaufzeitzujedemZeitpunkt transparentzwischendenProzessorenimArrayverschobenwerden.Wederexistierende SoftwarederTasks,nochdieProzessorenbedürfenhierbeieinerspeziellenAnpassung. Die Arbeit detailliert die skalierbare Task-Prozessoranbindung, virtualisierte Task- Kommunikation,sowieMaßnahmenzurEnergieverwaltungundFehlererkennungbzw. -maskierunginvirtualisierbarenSystemen. Auf Basis des vorgestellten Virtualisierungskonzepts können eingebettete Multi- ProzessorsystemeunterschiedlicherAusprägungdesigntwerden.Diesbeinhaltetener- gie-bewusste Systeme, fehlertolerante Systeme oder parallel verarbeitende Systeme. Beiletzteremwirddassog.AgileProcessing-SchemaalsnahtloseTransitionzwischen sequentiellerundparallelerAusführungvonTaskseingeführt.DasDesignvirtualisier- barerSystemewirddurcheineigensbereitgestelltesDesign-Frameworkunterstützt, daseinenahtloseAnbindunganexistierende,kommerzielleDesignFlowsbietet. Das Entwurfskonzept wird durch Anwendungsbeispiele aus eingebetteten Syste- menmitjeweilsunterschiedlichenOptimierungszielendemonstriert.Hierfürwurden entsprechendeDesignsprototypischfürFPGAssynthetisiert. Acknowledgments Thisthesiswouldnotexistwithoutthehelp,advice,andguidancebyalotofpeople. Firstofall,IwouldliketothankProf. SorinA.Hussforsupervisingmythesis. For morethanhalfadecade,Prof. Hussguidedmeonthejourneytowardsthisthesisby givingadvicewhenIwasstuck,bypointingoutlinksIhadnotseenandbysharing experienceIwaslacking. Iamgratefulforhavinghadtheopportunitytoresearchand workattheIntegratedandCircuitsLabwhereIcouldpursueandevolvemyideas. Second, I would like to thank Prof. Jörg Henkel for taking the time to be second assessorofthisthesis. At the Integrated Circuits and Systems Lab, I especially thank Maria Tiedemann, whoalwaysprovidedkindandexperiencedsupportinallmattersIstillconsiderbeing mysteriousandinscrutable,suchastravelexpenseaccounting. Ideasevolvebothinphasesofsecludedthinkingaswellasinlivelydebates. Forthe latter,IthankmycolleaguesTomAßmuth,AttilaJaeger,FelixMadlener,GregorMolter, andQizhiTianfordelightfulhoursofferviddiscussionsaboutLife,theUniverseand Everything. IalsothankmyothercolleaguesattheIntegratedCircuitsandSystemsLab andattheCenterforAdvancedSecurityResearchDarmstadt(CASED),inparticular Tolga Arul, Carsten Büttner, Thomas Feller, Annelie Heuser, Adeel Israr, Zheng Lu, SunilMalipatlolla,AndréSeffrin,AbdulhadiShoufan,MarcStöttinger,HagenStübing, andMichaelZohner. Tensofthousandslinesofimplementationworkbyalotofstudentshaveenabled thatthisworkisnotsolelyaconstructofideas,butisbasedonworkingprototypes, whichallowedtotestandtodemonstratetheopportunitiesarisingfromtheproposed virtualizationconcept. Inthisconnection,IespeciallythankBorisDreyerfordiscussing ideasandprovidingexceptionalworkoverthelastthreeyears. Ifurthermorethank ClemensBergmann,AntonioGavinoCasu,HieuHaChi,QuocHienDang,Johannes Decher, Binh Vu Duc, Nicolas Eicke, Steffen Fleckenstein, Sebastian Funke, Peter Glöckner,MaikGörtz,ChristopherHuth,InacKadir,MichaelKoch,ThorstenJacobi, Dan Le, Randolph Lieding, Wei Lin, Kevin Luck, Mischa Lundberg, Amir Naseri, JoelNjeukam,JanPost,AndreasRjasanow,LucasRothamel,TobiasRückelt,Gregor Rynkowski,DanielSchneider,KaiSchwierczek,OmidPahlevanSharif,JohannesSimon, NielsStröher,MarkusTasch,DoThanhTung,ManuelWeiel,andMatthiasZöllner. Finally,Ithankmybelovedfamilyforneverdemandingtoomuchdetailaboutmy researchabout“somethingwithcomputers”atthecoffeetable. AlexanderBiedermann Contents 1 The“Nulticore”Dilemma 1 2 VirtualizableArchitectureforembeddedMPSoC 5 2.1 TheTermVirtualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 VirtualizationforEmbeddedMulti-ProcessorArchitectures . . . . . . . 7 2.2.1 CharacteristicsofEmbeddedProcessors . . . . . . . . . . . . . . 7 2.2.2 PurposeofVirtualizationinEmbeddedMulti-ProcessorArrays . 9 2.2.3 RequirementsforEmbeddedVirtualization . . . . . . . . . . . . 12 2.2.4 PrerequisitestoenableVirtualizationFeatures . . . . . . . . . . . 13 2.2.5 VirtualizationProcedure. . . . . . . . . . . . . . . . . . . . . . . . 17 2.2.6 AnalysisandCharacteristicsoftheVirtualizationProcedure. . . 23 2.2.7 IntermediateConclusions . . . . . . . . . . . . . . . . . . . . . . . 28 2.3 DynamicallyReconfigurableTask-to-ProcessorInterconnectionNetwork 30 2.3.1 InterconnectionRequirementsforavirtualizableMPSoC . . . . 30 2.3.2 ArchitecturalAlternatives . . . . . . . . . . . . . . . . . . . . . . . 32 2.3.3 PermutationNetworks. . . . . . . . . . . . . . . . . . . . . . . . . 34 2.3.4 ASortingPermutationNetworkasTask-ProcessorInterconnect 39 2.3.5 Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.3.6 IntermediateConclusions . . . . . . . . . . . . . . . . . . . . . . . 57 2.4 TaskSchedulingviaInterconnectionNetwork . . . . . . . . . . . . . . . 59 2.4.1 BindingDefinitionsofTaskGroupsandTaskBudgets . . . . . . 59 2.4.2 Schedulingann-to-1Relation. . . . . . . . . . . . . . . . . . . . . 61 2.4.3 Schedulingseveraln-to-1Relations . . . . . . . . . . . . . . . . . 63 2.4.4 Self-SchedulingofTasks . . . . . . . . . . . . . . . . . . . . . . . . 64 2.4.5 IntermediateConclusions . . . . . . . . . . . . . . . . . . . . . . . 75 2.5 VirtualizedTask-to-TaskCommunication . . . . . . . . . . . . . . . . . . 76 2.5.1 CommunicationAlternatives . . . . . . . . . . . . . . . . . . . . . 76 2.5.2 ConventionalPoint-to-PointTransferinnon-VirtualizedSystems 79 2.5.3 ArchitecturalEnhancementsandCodeChanges . . . . . . . . . . 81 2.5.4 BasicCommunicationScheme . . . . . . . . . . . . . . . . . . . . 83 2.5.5 EnhancedCommunicationScheme . . . . . . . . . . . . . . . . . 89 2.5.6 PropertiesandAdvancedFeatures . . . . . . . . . . . . . . . . . . 93 2.6 ReliabilityFeaturesoftheVirtualizationLayer . . . . . . . . . . . . . . . 95 2.7 FeaturesforEnergyManagement. . . . . . . . . . . . . . . . . . . . . . . 101 XIV Contents 2.8 IntermediateConclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 3 TheVirtualizableMPSoC:Requirements,Concepts,andDesignFlows 107 3.1 RequirementsforDesigningonTopofthevirtualizableArchitecture . . 109 3.1.1 WeaknessesofExistingDesignTools . . . . . . . . . . . . . . . . 109 3.1.2 TheFripGaDesignFramework . . . . . . . . . . . . . . . . . . . . 110 3.2 DesignConceptsforReliable,Self-HealingSystems . . . . . . . . . . . . 116 3.2.1 DynamicBindingStrategies. . . . . . . . . . . . . . . . . . . . . . 117 3.2.2 Self-HealingStrategiesinthevirtualizableMPSoC . . . . . . . . 119 3.3 DesignFlowforParallelizedExecution . . . . . . . . . . . . . . . . . . . 122 3.3.1 ProblemMotivation . . . . . . . . . . . . . . . . . . . . . . . . . . 122 3.3.2 ParallelizationTopologies . . . . . . . . . . . . . . . . . . . . . . . 123 3.3.3 DataDependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 3.3.4 DesignFlow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 3.3.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 3.4 DesignFlowforAgileProcessing. . . . . . . . . . . . . . . . . . . . . . . 135 3.4.1 MotivationandChallenge . . . . . . . . . . . . . . . . . . . . . . . 135 3.4.2 Prerequisites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 3.4.3 DesignFlowModification . . . . . . . . . . . . . . . . . . . . . . . 136 3.4.4 SchedulingSchemesforAgileProcessingDesigns. . . . . . . . . 141 3.4.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 3.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 4 ApplicationScenarios 149 4.1 ReshapinginanAutomotiveAssistanceSystem . . . . . . . . . . . . . . 149 4.1.1 SystemArchitecture . . . . . . . . . . . . . . . . . . . . . . . . . . 150 4.1.2 DriverAssistanceTasks . . . . . . . . . . . . . . . . . . . . . . . . 150 4.1.3 RoadTypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 4.1.4 FunctionalProfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 4.1.5 TimingConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 4.1.6 BindingDerivation . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 4.1.7 TaskScheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 4.1.8 SetupoftheMPSoCandBindingStorage. . . . . . . . . . . . . . 158 4.1.9 FunctionalReshaping . . . . . . . . . . . . . . . . . . . . . . . . . 160 4.1.10 ReliabilityReshaping . . . . . . . . . . . . . . . . . . . . . . . . . 162 4.1.11 SynthesisEvaluation . . . . . . . . . . . . . . . . . . . . . . . . . . 168 4.1.12 OutcomeandOutlook . . . . . . . . . . . . . . . . . . . . . . . . . 170 4.2 ReshapinginanEnergy-ConstrainedQuadrocopterSystem . . . . . . . 172 4.2.1 EnvisagedScenario. . . . . . . . . . . . . . . . . . . . . . . . . . . 173 4.2.2 SensorsandControlSystemsoftheQuadrocopter . . . . . . . . 174 4.2.3 ExampleMissionSequence . . . . . . . . . . . . . . . . . . . . . . 176 4.2.4 RoleofthevirtualizableMPSoC . . . . . . . . . . . . . . . . . . . 178

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.