DOC PREVIEW
UT EE 382V - System Software Integration

This preview shows page 1-2-3-4-5 out of 16 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 16 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 16 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 16 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 16 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 16 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 16 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1EE382 – SoC Design – Software Integration SPS-1 University of Texas at AustinSystem Software Integration:System Software Integration:An Expansive ViewAn Expansive ViewSteven P. SmithDesign of Embedded SystemsEE382VFall, 2009EE382 – SoC Design – Software Integration SPS-2 University of Texas at AustinOverviewOverview• Some Definitions• Introduction: The Expanding Challenge• Phases of System Software Integration• From Requirements to Software Components Identification• Software Selection Issues during Architectural Design• Unit-Level Integration and Software Performance Assessment• Subsystem and Functional-Level Software Integration• System-Level Software Integration and Testing• Conclusions2EE382 – SoC Design – Software Integration SPS-3 University of Texas at AustinDefinitionsDefinitions• System Integration: The task of creating a properly functioning system from its constituent components• Hardware• Firmware• Software• System Hardware Integration• Are the components wired together correctly?• System Software Integration• Typically assumes hardware integration is largely complete• The final step before acceptance testing and deploymentEE382 – SoC Design – Software Integration SPS-4 University of Texas at AustinThe System Engineering ProcessThe System Engineering ProcessRequirementsDefinitionSystemSpecificationSystemDesignDetailedDesignModule Designand CodingModule/UnitTestSubsystemIntegrationSubsystemTestSystemIntegrationSystem Test &VerificationAcceptanceTestSystemDeploymentAcceptanceTest PlanSystemIntegrationTest PlanSubsystemIntegrationTest PlansOf course, iteration occurs at all levels and among most levels…3EE382 – SoC Design – Software Integration SPS-5 University of Texas at AustinSoftware Integration in Embedded Systems: Software Integration in Embedded Systems: ““The Good Old DaysThe Good Old Days””• Software developed internally• Design-specific software• No consideration given to software reuse• Direct access to software design, source code anddeveloper• Uni-processors predominate• No inter-processor and limited inter-process communications• Small, simple real-time operating systems (RTOS)• Easy porting and configuration• Comparatively simple debugging and testing• Single-function systemsEE382 – SoC Design – Software Integration SPS-6 University of Texas at AustinSoftware Integration in Embedded Systems Software Integration in Embedded Systems Today: Life Gets Complicated.Today: Life Gets Complicated.• Software components gathered from many sources• Heterogeneous multi-processors• Customized, configurable processors• Memory management units (MMUs)• Mix of operating systems: RTOS and Linux• Mix of functions and operating modes• Browser-based configuration• Multiple debuggers, no interoperability among tools• Enormously challenging testing implications4EE382 – SoC Design – Software Integration SPS-7 University of Texas at AustinImplications for Software Integration Implications for Software Integration of Embedded System Trendsof Embedded System Trends••System software integration issues must be addressed System software integration issues must be addressed early and continually throughout the design!early and continually throughout the design!• Tool and software component selection must be made in the context of system-level design and development considerations.• Debugger interoperability increasingly critical• Integrated Development Environments (IDE) may have long learning curves• Compilers each have their own idiosyncrasies • Disparate operating systems don’t often play well together.• No longer just a “back-end” taskEE382 – SoC Design – Software Integration SPS-8 University of Texas at AustinPhases of the System Software Phases of the System Software Design and Integration EffortDesign and Integration Effort• Identification of required software functions• Begins during requirements specification• Architecture decisions may add or remove requirements• Mapping of required functions to candidate components• Analysis of trade-offs in software component selection• Initial software component selection or specification• Performance analysis, verification• Subsystem integration, performance analysis, verification• System integration, performance analysis, verification5EE382 – SoC Design – Software Integration SPS-9 University of Texas at AustinThe System Engineering ProcessThe System Engineering ProcessRequirementsDefinitionSystemSpecificationSystemDesignDetailedDesignModule Designand CodingModule/UnitTestSubsystemIntegrationSubsystemTestSystemIntegrationSystem Test &VerificationAcceptanceTestSystemDeploymentAcceptanceTest PlanSystemIntegrationTest PlanSubsystemIntegrationTest PlansIdentifyRequiredSoftwareFunctionsIdentifyCandidateSoftwareComponentsAnalysisof SoftwareDesignTrade-offsSoftware PerformanceAnalysis &VerificationSubsystem SoftwarePerformanceAnalysis &VerificationSystem PerformanceAnalysis &VerificationEE382 – SoC Design – Software Integration SPS-10 University of Texas at AustinIdentifying Required Software FunctionsIdentifying Required Software Functions• Embedded system design often begins with an executable specification, or a high-level language (HLL) application.• Or, increasingly, two, or three…• Natural starting place for software function identification• Initial hardware/software partitioning during architectural design defines required software functions.• This is a highly iterative process as performance bottlenecks and other design criteria come into sharper focus.• Some software functions are not performance critical, but may demand significant flexibility.• E.g., the Internet refrigerator and its embedded http server• End-user or OEM/VAR customization requirements also dictate required software functionality. Java, anyone?6EE382 – SoC Design – Software Integration SPS-11 University of Texas at AustinSystem Software ElementsSystem Software ElementsSystem Application 1System Application 2Embedded Operating System(s)System Application nHardware Abstraction Layer (HAL)DriversExternalInterfaceBootLoader(s)CustomIPC…Interfaces to:- Hardware Accelerators- Real-time clocks- IPC control hardware(e.g., semaphores)- Boot hardware (flash)Provides inter-processor messaging, synchronization, and notification functionsEE382 – SoC Design – Software Integration


View Full Document

UT EE 382V - System Software Integration

Documents in this Course
Load more
Download System Software Integration
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view System Software Integration and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view System Software Integration 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?