Integrating Power Models into Instruction Accurate Virtual Platforms for ARM-based MPSoCs

Size: px
Start display at page:

Download "Integrating Power Models into Instruction Accurate Virtual Platforms for ARM-based MPSoCs"

Transcription

1 Integrating Power Models into Instruction Accurate Virtual Platforms for ARM-based MPSoCs ARM TechCon October 2016 R. Görgen 2, D. Graham 1, K. Grüttner 2, L. Lapides 1, S. Schreiner 2 1 Imperas, 2 OFFIS Page 1 1

2 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 2 2

3 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 3 3

4 Embedded Software Development Issues (in no specific order) Schedule Quality Functionality Timing, power constraints Security / safety Predictability of the software engineering task: management accuracy on software resource and schedule requirements is +/- 50% Unknown / unmeasurable delivery risk Page 4 The last two bullets are management issues, and their importance should not be underestimated.

5 Modern SoCs Have Many Concurrent Processing Elements SMP cores AMP cores Accelerators Renesas R-Car H2: Automotive infotainment and ADAS Page Imperas Software Ltd & OFFIS e.v. ARM TechCon

6 SW Verification Requirements Hardware Dependent Software (HDS) Hardware Dependent Software (HDS) Most complex foundation layer Drivers, hypervisors, assembly libraries, operating system Buried problems often appear elsewhere in a system, leading to misdirected analysis Ripe for corner case type issues Post development bugs hardest to fix Testing needs to be platform centric not application centric Modern SoC SW verification is complex SMP/AMP multicore interaction Shared memory & devices Extensive accelerators, peripherals Externally authored, complex libraries Complex SW/HW interaction (e.g. power) How to estimate power consumption and test power management strategies over a wide range of conditions? Page 6

7 Hardware-Based Software Development Has timing/cycle accuracy JTAG-based debug, trace Traditional development board or hardware emulator based testing Late to arrive Limited physical system availability Emulators are too slow to run enough system scenarios Limited external test access (controllability) Limited internal visibility How to observe power consumption? To get around these limitations, software is modified printf Debug versions of OS kernels Instrumentation for specific analytical tools, e.g. code coverage, profiling Modified software may not have the same behavior as clean source code Page Imperas Software Ltd & OFFIS e.v. ARM TechCon

8 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 8 8

9 Advantages of Virtual Platform Based Software Development (Instruction Accurate Simulation) Earlier system availability Easy access for entire team Runs actual binaries, e.g. runs ARM executables on x86 host Fast, enables quick turnaround and comprehensive testing Full controllability of platform both from external ports and internal nodes Corner cases can be tested Errors can be made to happen Full visibility into platform: if an error occurs, it will be observed by the test environment Easy to replicate platform and test environment to support automated continuous integration (CI) and regression testing on compute farms Test Set 1 Page 9 Test Set n 2016 Imperas Software Ltd & OFFIS e.v. ARM TechCon

10 Virtual Platforms Complement Hardware-Based Software Development Current methodology employs testing on hardware Proven methodology Has limitations We are at the breaking point Virtual platform based methodology delivers controllability, visibility, repeatability, automation Application Layer: Customer Differentiation Middleware: TCP/IP, DHCP, LCD, OS: Linux, FreeRTOS, µc/os-iii, ThreadX, Drivers: USB, SPI, ethernet, Actual Hardware or Virtual Platform Virtual platforms software simulation provide a complementary technology to the current methodology Page 10 The same software stack can run on either the actual hardware or the virtual platform. This enables users to add virtual platform technology to their existing flow with minimal changes/risk, and achieve the benefits of virtual platforms. 10

11 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 11 11

12 Building the Virtual Platform The virtual platform is a set of models that reflects the hardware on which the software will execute Could be 1 SoC, multiple SoCs, board, system; no physical limitations Functionally accurate, such that the software does not know that it is not running on the hardware Models are typically written in C or SystemC Models for individual components interrupt controller, UART, ethernet, are connected just like in the hardware Peripheral components can be connected to the real world by using the host workstation resources: keyboard, mouse, screen, ethernet, USB, Page 12 12

13 Imperas Tool Architecture Output Data T E S T B E N C H Application Software & Operating System Virtual Platform Peripheral Memory B U S OVP CPU OVP CPU C P U H E L P E R O S H E L P E R V A P T O O L S Trace Profile Coverage Schedule Multiprocessor / Multicore Debugger Just Just In In Time (JIT) (JIT) sim simengine SlipStreamer API API Eclipse IDE Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The SlipStreamer API enables the building of non-intrusive tools in the simulation environment. These tools include tracing (instructions, C functions, OS tasks), profiling, code coverage, OS scheduler analysis, memory analysis, and more. The SlipStreamer API is made available to both Imperas engineers and Imperas users, so that custom tools can be developed, such as the power analysis tools discussed in this presentation.

14 Simulator / Tool / Model Architecture Build environment elements separately Simulator engine uses Just In Time (JIT) binary translation (code morphing) technology to efficiently translate instructions for the target processor to x86 SlipStreamer API enables tools to be built non-instrusively, i.e. no instrumentation or modification of software or operating systems Models processors, peripherals, platforms are built using the Open Virtual Platforms (OVP) APIs Software execution For single core processor in the virtual platform, a block ( quantum ) of instructions, typically 1, ,000, is executed, then peripheral events are executed For multicore processors, a quantum of instructions is executed in turn on each processor core; after each core has executed a quantum, the peripheral events are executed Page Imperas Software Ltd & OFFIS e.v. ARM TechCon

15 Simultor / Tool / Model Flow Example Platform Simulator Intercept Processor Library Model icminit() Configure icmnewprocessor() icmloadprocessormemory() Load Model Load Program to Memory Constructor Constructor icmwritereg(pc, 0x1000) Set PC Write Reg vmirtsetpc() icmsimulateplatform() Run Code Available for Address? yes no Create Translation for address End of Code Block yes no Get Next PC Code Dictionary Intercept Intercept Morph Function (thispc=0x1000) Morph Function (thispc=0x1004) Morph Function (thispc=0x1008) Morph Function (thispc=0x100c) Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The intercept library, created using the SlipStreamer API, is compiled for the x86 host (not the embedded processor target) and linked into the simulation environment.

16 Timing Controls in Instruction Accurate Simulation Instruction accurate simulation is not timing or cycle accurate, however The simulator and models have a sense of time Timing assumption is 1 cycle per instruction Processor models have an assumed speed in MIPS (millions of instructions per second) Processor speed can be changed during simulation Quantum size can be changed during simulation, so that artificial waits before peripheral events are reduced Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The ability to dynamically change processor speed will be utilized later in this presentation when we talk about power management using DVFS.

17 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 17 17

18 Current Measurement Based Power Analysis Timing & Power Constraints Scenarios/ Test-Cases Stimulate Application, Operating System, Firmware Physical Prototype Timing & Power Measurement Need hardware board; expensive measurement equipment Page Imperas Software Ltd & OFFIS e.v. ARM TechCon How to obtain information about software power consumption? State-of-the-art approach: Run application on development board and measure the power consumption in the laboratory (depending on the required measurement accuracy different (expensive) equipment is required) Obtained power measurement results can be compared against the specified power constraints. 18

19 Virtual Platform for Functional Software Testing Timing & Power Constraints Scenarios/ Test-Cases Stimulate Application, Operating System, Firmware Runs on Virtual Platform Physical Prototype Timing & Power Measurement Page Imperas Software Ltd & OFFIS e.v. ARM TechCon With the availability of a virtual platform, the functional software testing can be performed without going down to the evaluation board. This approach is well suited for functional software (and to some extent for timing) software testing, BUT Power measurement still performed on evaluation board. 19

20 Generating a Power Model for the Virtual Platform Timing & Power Constraints Power Model Scenarios/ Test-Cases Timing Power Temp. Est./ Modeling Stimulate Application, Operating System, Firmware Runs on Virtual Platform Physical Prototype Timing & Power Measurement Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The first step power analysis with virtual platforms is the power model generation/extraction process from measurement trails on the evaluation board. Different approaches exist (micro-benchmarks, machine-based learning, ) exist, but this is out of the scope of this presentation. 20

21 Design Time Power Analysis Timing & Power Constraints Power Model Scenarios/ Test-Cases Stimulate Application, Operating System, Firmware Runs on Virtual Platform Physical Prototype Tracing Design-Time Opt. Analyze/ Debug Timing & Power Measurement Page Imperas Software Ltd & OFFIS e.v. ARM TechCon After integration of the power model in the virtual platform (the following slides will show this), we can obtain -Functional traces -Timing traces -AND (this is new) power traces over time Depending on the spatial granularity of the power model, a hardware component power consumption breakdown can be supported. Combining functional traces with component power traces, design time power optimization of the software can be performed. 21

22 Run-Time Power Management Timing & Power Constraints Power Model Scenarios/ Test-Cases Stimulate Application, Operating System, Firmware Runs on Virtual Platform Physical Prototype Tracing Design-Time Opt. Analyze/ Debug Timing & Power Measurement Page 22 Run-Time Opt./Mgt. Power Sensor 2016 Imperas Software Ltd & OFFIS e.v. ARM TechCon Since many software already performs power management (usually based on temperature sensing). Instead of writing the power information into an analysis trace (as before), we can also feed it into a power sensor that can be mapped into the address space of the hardware platform and thus allow software access to derive power management decisions at run-time. 22

23 System-Level Power Model Parameters Power Model Virtual Platform Page 23 Looking into the power model: The applied power model has a hierarchical structure to represent different dies, power domains per die and different modules/functional hardware units per power domain. The power consumption can be modeled at module level. It consists of: -A dynamic part: depending on the actual usage of the component, expressed as average switched capacitance. The software dependent activity can be expressed as - 1) Power State Machine (each state has a switched capacitance, transitions between states are triggered by the software or a power manager) - 2) Annotation: Can be switched capacitance annotations in the processor model - Our used power model is an annotation model. We are collection statistics during software execution (CPU load, number of memory read/write transactions, ) and transform them into a switched capacitance equivalent that is multiplied with the supply voltage and clock frequency to obtain the power consumption (see next slides). -A static part: depending on the leaking conductance (area and technology dependent) The actual power for the dynamic and the static part depends on the switching activity and the dynamic parameters of the associated power domain: -Supply voltage -Clock frequency 23

24 System-Level Power Model Parameters Building blocks for flexible power model Static design parameters Dynamic annotation/monitoring Overall power consumption can be computed from static parameters and observations Page 24 Overall power consumption P(t) based on: -Dynamic part + static part Important: All parameters can change over time: -Vdd (supply voltage) can be changes by the software -F (clock frequency) can be changed by the software -C (average switched capacitance) is computed by a formula that takes different statistics during software execution (CPU load, number of memory read/write transactions, ) into consideration -G(theta(t)) is not further taken into consideration. We assume a constant temperature (e.g. guaranteed by a sufficient cooling system) 24

25 Performance Counter Based Power Model for the Xilinx Zynq ARM-based System double ps_dynpower_est(int ncores, double clk_cpu, double load_cpu, double clk_mem, double readrate_mem, double writerate_mem, double clk_axi, double usage_axi, int axi_bw, double clk_io) Int ncores number of active cores [0-2] double clk_cpu clock frequency of CPU in [Mhz] double load_cpu load of processors [0-1] double clk_mem clock frequency of memory in [Mhz] double readrate_mem read rate of external DDR3 memory [0-1] double writerate_mem write rate of external DDR3 memory [0-1] double clk_axi AXI clock frequency in [Mhz] double usage_axi usage rate of AXI interface [0-1] int axi_bw bit width of AXI interface [32 or 64] double clk_io clock frequency of IO in [Mhz] Page 25 The function: double ps_dynpower_est(int ncores, double clk_cpu, double load_cpu, double clk_mem, double readrate_mem, double writerate_mem, double clk_axi, double usage_axi, int axi_bw, double clk_io) Replaces the dynamic power term of the equation above. The leakage term is assumed to be only dependent on the supply voltage. 25

26 Obtain Dynamic Parameters From Virtual Platform double ps_dynpower_est(int ncores, double clk_cpu, double load_cpu, double clk_mem, double readrate_mem, double writerate_mem, double clk_axi, double usage_axi, int axi_bw, double clk_io) double clk_cpu: clock frequency of CPU in [Mhz] vmirtaddwritecallback (vmiprocessorp processor, Addr lowaddr, Addr highaddr, vmirtmemwatchfn readc, Bvoid* userdata ) : void Monitor access to clock speed register interface double load_cpu: load of processors [0-1] vmirtgeticount (vmiprocessorp processor ) : Uns64 Load: numer of non-empty instructions / (time interval * clk_cpu) double readrate_mem: read rate of external DDR3 memory [0-1] vmirtaddreadcallback (vmiprocessorp processor, Addr lowaddr, Addr highaddr, vmirtmemwatchfn readc, Bvoid* userdata ) : void Read rate: number of read instructions / (time interval * clk_axi) double writerate_mem: write rate of external DDR3 memory [0-1] vmirtaddwritecallback (vmiprocessorp processor, Addr lowaddr, Addr highaddr, vmirtmemwatchfn readc, Bvoid* userdata ) : void Write rate: number of write instructions / (time interval * clk_axi) Page 26 Shows how some of the parameters of the function double ps_dynpower_est(int ncores, double clk_cpu, double load_cpu, double clk_mem, double readrate_mem, double writerate_mem, double clk_axi, double usage_axi, int axi_bw, double clk_io) Are obtained through the OVP VP API. 26

27 Performance Counter Based Power Model for the Xilinx Zynq ARM-based System double ps_dynpower_est(int ncores, double clk_cpu, double load_cpu, double clk_mem, double readrate_mem, double writerate_mem, double clk_axi, double usage_axi, int axi_bw, double clk_io) { P_Processor = VCCPINT / * (ncores * clk_cpu * load_cpu * (load_cpu<0.5? (0.5 load_cpu)*ncores*clk_cpu* : 0)); P_Processor_PLL = (((clk_cpu*2 > 0)? 15.0 : 0) + clk_cpu*2*0.02)*vccpaux/1000.0; P_AXI = (VCCPINT/1000.0)*clk_axi*usage_axi* *axi_bw/8; P_Logic = P_Processor + P_Processor_PLL + P_AXI;... P_DDR = P_Memory + P_Memory_PLL;... P_Interfaces = P_USB + P_SD + 2*P_UART + P_I2C + P_SPI + 5*P_GPIO;... P_IO = P_Interfaces + P_Interfaces_PLL; P_total = P_Logic + P_DDR + P_IO; return P_total; } Page 27 This slide just shows the complex power function for the dynamic power consumption of the PS part of the Xilinx Zynq SoC. 27

28 Timed Value Streams: Power Traces Application, Operating System, Firmware Runs on Virtual Platform Power Model Design-Time Opt. Analyze/ Debug Tracing Page 28

29 Timed Value Streams: Power Monitoring in SW Application, Power Operating System, Consumption Firmware Runs on Virtual Platform Register Interface Power Model Power Sensor Design-Time Opt. Analyze/ Debug Tracing Page 29

30 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 30 30

31 ARM Cortex-A9 Power Model Overview Platform Callbacks and Intercepts Timed Value Streams Intercept Library Power Model Int. Lib. ARM Cortex -A9MPx2 Voltage Regulators and Power Sensors I²C (PMBUS) Imperas SmartLoader Power Model Platform Access Memory, Registers, Voltages, etc. Reset Controller Timer0 Timer1 L2 Cache Controller Timer2 Utilizations (CPU, RAM R/W, AXI) Core Model Platform Model Clock Rates (CPU, RAM, AXI, IO) and Voltages SRAM Timer3 System Manager Power Formulas Power Values VCD Sink UART0 Ethernet UART1 DMA Page 31 File Output 2016 Imperas Software Ltd & OFFIS e.v. ARM TechCon This slide shows an overview of the Power Model and the Zynq ARM Dual Core Platform The Power Model is instantiated in the intercept library, it accesses the platform information via defined memory callbacks and I²C intercepts are used for transmitting new voltage parameters or returning power values. The power model has 4 main parts which communicate via Timed Value Streams: -The Platform model is responsible for recognizing all platform values, like frequencies and voltages, as well as the intercepted I²C communication with the Voltage Regulators and Power Sensors -Both Cores have one Core Model. It is responsible to calculate all Core specific data, like CPU utilization (with vmirtgetexecutedicount and vmirtgeticount), Memory Read and Write rates and AXI Load (both with memory read and write callbacks). All calculations for the utilizations are called periodicaly by a defined Model Timer -The Power Formulas calculate all power streams for CPU, Memory, AXI, IO, Leakage, etc. -The VCD Sink writes all traces and data to a trace file 31

32 Executing Linux in VP with Attached Power Model Virtual Platform (VP) executes Linux and Power Model recognizes changes: Core frequencies are reconfigured to 333MHz RAM frequency is configured to 533MHz Power Model reconfigures MIPS rate of both cores Linux Console and Simulator output Core Frequencies RAM Frequency Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The platform is able to boot Linux with the Power Model attached. In the screenshots you the reconfiguration of the core frequencies and the RAM frequency. Since the frequency of the Cores is reduced from 667MHz to 333MHz, also the MIPS rate in the platform is degrated from 667MIPS to 333MIPS with a factor of

33 Executing Linux in VP with Attached Power Model boot Linux change dirs Power Traces in W CPU0 CPU1 execute 3 applications idle CPU Total Memory AXI IO Leakage Total VCC_PINT VCC_PAUX VCC_DDR Page 33 0s Exported VCD Power Traces 2016 Imperas Software Ltd & OFFIS e.v. 250s ARM TechCon This Slide presents all exported power Traces that are written to the VCD file I booted Linux, switched to the directory /benchmarks/ and executed 3 instances of peakspeed1.exe Next to the power traces the following data is also written to the VCD file: Group Power: -CPU0 -CPU1 -CPU Total -Memory -AXI -IO -Leakage -Total Power -VCC_PINT -VCC_PAUX -VCC_DDR Group Frequency: -CPU -Memory AXI 33

34 DVFS Bare Metal Example Application Binary is executed bare metal on ARM cores Switch frequencies and voltages for: ARM cores DDR memory Power Model recognizes changes Power CPU Total Power Memory Power AXI Power Leakage Power Total Voltage PINT Voltage DDR Load CPU 0 Load Mem Read Load Mem Write Load AXI VCD Traces of DVFS example Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The DVFS Bare Metal Example executes the following: While(1) { // First state scalefrequency(ddr_clk_ctrl, DDR_CLK_533_MHZ); scalefrequency(arm_clk_ctrl, PS_CLK_667_MHZ); scalevoltage(vccpint_device, VCCPINT_PAGE, 1.0); scalevoltage(vccpaux_device, VCCPAUX_PAGE, 1.8); scalevoltage(vcc1v5_ps_device, VCC1V5_PS_PAGE, 1.5); //VCC_DDR // Go throuh the changes for(i = 0; i < ; i++); // wait readmeasurementsti(); // read virtual sensor for(i = 0; i < ; i++); // wait scalevoltage(vccpint_device, VCCPINT_PAGE, 0.9); for(i = 0; i < ; i++); // wait readmeasurementsti(); // read virtual sensor for(i = 0; i < ; i++); // wait scalefrequency(arm_clk_ctrl, PS_CLK_333_MHZ); for(i = 0; i < ; i++); // wait dm t TI() // d i t l 34

35 Virtual Power Sensor Power Sensor is represented by an intercepted I²C interface Semihosting Library Power Model Power Model gets VCD File new voltage values and returns power values That means: Next to the frequency configuration the application is able to configure the voltages and to request the present power values Semi. Lib. ARM Cortex -A9MPx2 Imperas SmartLoader Reset Controller L2 Cache Controller SRAM UART0 UART1 Voltage Regulators and Power Sensors I²C (PMBUS) Timer0 Timer1 Timer2 Timer3 System Manager Ethernet DMA Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The executed application is able to request the current power values over an intercepted I²C communication from the power model. The communication protocol is nearly the same as of the TI chips located at the Zynq zc702 board. As well as the application is able to reconfigure the frequncies of the cores and the DDR memory via the original register interface, there is the ability to configure also the voltages VCC_PINT, VCC_PAUX and VCC_DDR over the intercepted I²C communication. In that way the platform and the power model fully supports DVFS. 35

36 Power Monitors in Action Bare Metal DVFS example is executed in VP VP Power Model intercepts I²C communication of Virtual Power Sensor Executed application is able to read power information Values can be used in applications Example: UART output of executed application: Simple read and print out of power values Page Imperas Software Ltd & OFFIS e.v. ARM TechCon The DVFS Bare Metal Example requests the power values (present voltages and currents) over the intercepted I²C communication and prints all grabbed information for the 3 power domains in its UART interface. 36

37 Agenda Current state of embedded software development Comparison of hardware-based and virtual platform-based methodologies Instruction accurate software timing simulation Power model with dynamic frequency and voltage scaling (DVFS) support Case study: Simple power model for ARM Cortex-A9 Demo of case study Page 37 37

38 Demo Booting Linux DVFS on the ARM Cortex-A9 Power monitor in action Page 38 Video Demo of Zynq Platform with attached Power Model 1) Linux Demo:- Initialization: Power Model Init Outputs, Streams and other Models are initialized. Power Model outputs of Linux Booting Phase. See the new derate factor that is set to since the Frequency switches from 667MHz to 333MHz, as well as setting the DDR frequency to 533MHz. The output sequence is the full Linux boot-up until the login comes.- After it the same is shown with the uart1 output, here I login as root, switch the directory and execute two times the same peakspeed benchmark- Next I show the outputs of the power model again. First one task is already running (~0.8W) then the other one is started (~1.2W)- As last I show the VCD Trace in the Viewer (impulse [ You see the boot phase at the beginning, in the power and utilization traces, as well as the execution of the two benchmarks (2 steps) in the power traces. 2) DVFS Demo:- Initialization: Power Model Init Outputs, Streams and other Models are initialized. Power Model outputs are shown later again, here only for 2 seconds. -Power Monitor: Application configures new frequencies and voltages, reads back voltages and currents to calculate power consumption on its own. -Power Model Output: You see next to the core loads all switching activity of the frequencies and the voltages, as well as the readbacks (... Addr: 52,...) of the currents. The procedure is described in the slide comments -Power Model VCD Output: Here you see the swtiching activity in all traces.

39 Summary Virtual platforms software simulation provide a complementary technology to hardware-based testing of software Besides functional correctness, timing properties and power consumption are gaining importance Virtual platforms with a power model can help to Test power management for low power or temperature sensitive systems and thus contribute to Achieve higher quality software Reduce development schedules Increase software project predictability Reduce delivery risk Page 39

40 Thank you This work was partially funded by the European Union s Horizon2020 research and innovation programme under the grant agreement No More information at Page 40

Software Verification for Low Power, Safety Critical Systems

Software Verification for Low Power, Safety Critical Systems Software Verification for Low Power, Safety Critical Systems 29 Nov 2016, Simon Davidmann info@imperas.com, Imperas Software Ltd. Page 1 Software Verification for Low Power, Safety Critical Systems Page

More information

Parallel Simulation Accelerates Embedded Software Development, Debug and Test

Parallel Simulation Accelerates Embedded Software Development, Debug and Test Parallel Simulation Accelerates Embedded Software Development, Debug and Test Larry Lapides Imperas Software Ltd. larryl@imperas.com Page 1 Modern SoCs Have Many Concurrent Processing Elements SMP cores

More information

Software Quality is Directly Proportional to Simulation Speed

Software Quality is Directly Proportional to Simulation Speed Software Quality is Directly Proportional to Simulation Speed CDNLive! 11 March 2014 Larry Lapides Page 1 Software Quality is Directly Proportional to Test Speed Intuitively obvious (so my presentation

More information

Virtual Platform Software Simulation for Enhanced Multi-core Software Verification

Virtual Platform Software Simulation for Enhanced Multi-core Software Verification Virtual Platform Software Simulation for Enhanced Multi-core Software Verification Simon Davidmann Company: Imperas Software Ltd, 17 March 2014 Event: TVS Software Testing Location: UWE Conference Centre,

More information

Simulation Based Analysis and Debug of Heterogeneous Platforms

Simulation Based Analysis and Debug of Heterogeneous Platforms Simulation Based Analysis and Debug of Heterogeneous Platforms Design Automation Conference, Session 60 4 June 2014 Simon Davidmann, Imperas Page 1 Agenda Programming on heterogeneous platforms Hardware-based

More information

Virtual Platforms, Simulators and Software Tools

Virtual Platforms, Simulators and Software Tools Virtual Platforms, Simulators and Software Tools DAC San Francisco June 2018 Simon Davidmann Imperas Software Ltd Page 1 Agenda Introduction to Imperas Embedded Software Development Challenges Range of

More information

Cycle Approximate Simulation of RISC-V Processors

Cycle Approximate Simulation of RISC-V Processors Cycle Approximate Simulation of RISC-V Processors Lee Moore, Duncan Graham, Simon Davidmann Imperas Software Ltd. Felipe Rosa Universidad Federal Rio Grande Sul Embedded World conference 27 February 2018

More information

Customized, Intelligent Memory Access Monitoring for Reliable Asymmetric MultiProcessor System Development

Customized, Intelligent Memory Access Monitoring for Reliable Asymmetric MultiProcessor System Development Customized, Intelligent Memory Access Monitoring for Reliable Asymmetric MultiProcessor System Development Simon Davidmann and Larry Lapides Imperas Software Ltd. Oxford, United Kingdom larryl@imperas.com

More information

Virtual Platform Based Linux Bring Up Methodology

Virtual Platform Based Linux Bring Up Methodology Virtual Platform Based Linux Bring Up Methodology DAC Tutorial 19 June 2017 Simon Davidmann, Imperas Page 1 2017 Imperas Software Ltd Agenda New challenges posed by heterogeneous architectures Comparison

More information

Virtual Platforms for early Embedded Software Development

Virtual Platforms for early Embedded Software Development Virtual Platforms for early Embedded Software Development RISC-V 8 th Workshop Barcelona Wednesday May 09, 4:00pm Kevin McDermott & Lee Moore Imperas Software Hugh O Keeffe Ashling Page 1 New Markets With

More information

Copyright 2014 Xilinx

Copyright 2014 Xilinx IP Integrator and Embedded System Design Flow Zynq Vivado 2014.2 Version This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able

More information

Imperas Guide to using Virtual Platforms. Platform / Module Specific Information for imperas.ovpworld.org / ArmuKernelDual. Imperas Software Limited

Imperas Guide to using Virtual Platforms. Platform / Module Specific Information for imperas.ovpworld.org / ArmuKernelDual. Imperas Software Limited Imperas Guide to using Virtual Platforms Platform / Module Specific Information for / ArmuKernelDual Imperas Software Limited Imperas Buildings, North Weston Thame, Oxfordshire, OX9 2HA, U.K. docs@imperas.com.

More information

Imperas Guide to using Virtual Platforms. Platform / Module Specific Information for mips.ovpworld.org / BareMetalMipsSingle. Imperas Software Limited

Imperas Guide to using Virtual Platforms. Platform / Module Specific Information for mips.ovpworld.org / BareMetalMipsSingle. Imperas Software Limited Imperas Guide to using Virtual Platforms Platform / Module Specific Information for / BareMetalMipsSingle Imperas Software Limited Imperas Buildings, North Weston Thame, Oxfordshire, OX9 2HA, U.K. docs@imperas.com.

More information

Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models. Jason Andrews

Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models. Jason Andrews Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models Jason Andrews Agenda System Performance Analysis IP Configuration System Creation Methodology: Create,

More information

Embedded Software Dynamic Analysis. A new life for the Virtual Platform

Embedded Software Dynamic Analysis. A new life for the Virtual Platform Embedded Software Dynamic Analysis A new life for the Virtual Platform The Software Part of HW/SW Co-Design Integrated with DA flow: regression and up-to-date interfaces Simultaneous development and test

More information

Extending Fixed Subsystems at the TLM Level: Experiences from the FPGA World

Extending Fixed Subsystems at the TLM Level: Experiences from the FPGA World I N V E N T I V E Extending Fixed Subsystems at the TLM Level: Experiences from the FPGA World Frank Schirrmeister, Steve Brown, Larry Melling (Cadence) Dave Beal (Xilinx) Agenda Virtual Platforms Xilinx

More information

Simplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools

Simplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools Simplifying the Development and Debug of 8572-Based SMP Embedded Systems Wind River Workbench Development Tools Agenda Introducing multicore systems Debugging challenges of multicore systems Development

More information

Software Driven Verification at SoC Level. Perspec System Verifier Overview

Software Driven Verification at SoC Level. Perspec System Verifier Overview Software Driven Verification at SoC Level Perspec System Verifier Overview June 2015 IP to SoC hardware/software integration and verification flows Cadence methodology and focus Applications (Basic to

More information

Attack Your SoC Power Challenges with Virtual Prototyping

Attack Your SoC Power Challenges with Virtual Prototyping Attack Your SoC Power Challenges with Virtual Prototyping Stefan Thiel Gunnar Braun Accellera Systems Initiative 1 Agenda Part #1: Power-aware Architecture Definition Part #2: Power-aware Software Development

More information

Validation Strategies with pre-silicon platforms

Validation Strategies with pre-silicon platforms Validation Strategies with pre-silicon platforms Shantanu Ganguly Synopsys Inc April 10 2014 2014 Synopsys. All rights reserved. 1 Agenda Market Trends Emulation HW Considerations Emulation Scenarios Debug

More information

NS115 System Emulation Based on Cadence Palladium XP

NS115 System Emulation Based on Cadence Palladium XP NS115 System Emulation Based on Cadence Palladium XP wangpeng 新岸线 NUFRONT Agenda Background and Challenges Porting ASIC to Palladium XP Software Environment Co Verification and Power Analysis Summary Background

More information

Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs

Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs Niu Feng Technical Specialist, ARM Tech Symposia 2016 Agenda Introduction Challenges: Optimizing cache coherent subsystem

More information

Introduction to Embedded System Design using Zynq

Introduction to Embedded System Design using Zynq Introduction to Embedded System Design using Zynq Zynq Vivado 2015.2 Version This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able

More information

Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs. August 2015

Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs. August 2015 Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs August 2015 SPMI USB 2.0 SLIMbus RFFE LPDDR 2 LPDDR 3 emmc 4.5 UFS SD 3.0 SD 4.0 UFS Bare Metal Software DSP Software Bare Metal Software

More information

esi-risc Development Suite Getting Started Guide

esi-risc Development Suite Getting Started Guide 1 Contents 1 Contents 2 2 Overview 3 3 Starting the Integrated Development Environment 4 4 Hello World Tutorial 5 5 Next Steps 8 6 Support 10 Version 2.5 2 of 10 2011 EnSilica Ltd, All Rights Reserved

More information

Optimizing ARM SoC s with Carbon Performance Analysis Kits. ARM Technical Symposia, Fall 2014 Andy Ladd

Optimizing ARM SoC s with Carbon Performance Analysis Kits. ARM Technical Symposia, Fall 2014 Andy Ladd Optimizing ARM SoC s with Carbon Performance Analysis Kits ARM Technical Symposia, Fall 2014 Andy Ladd Evolving System Requirements Processor Advances big.little Multicore Unicore DSP Cortex -R7 Block

More information

Software Design Challenges for heterogenic SOC's

Software Design Challenges for heterogenic SOC's Software Design Challenges for heterogenic SOC's René Janssen, Product manager Logic Technology 1 Agenda 1. Advantages of heterogenous devices 2. How to manage inter-processor communication 3. Example

More information

Designing a Multi-Processor based system with FPGAs

Designing a Multi-Processor based system with FPGAs Designing a Multi-Processor based system with FPGAs BRINGING BRINGING YOU YOU THE THE NEXT NEXT LEVEL LEVEL IN IN EMBEDDED EMBEDDED DEVELOPMENT DEVELOPMENT Frank de Bont Trainer / Consultant Cereslaan

More information

ID 730L: Getting Started with Multimedia Programming on Linux on SH7724

ID 730L: Getting Started with Multimedia Programming on Linux on SH7724 ID 730L: Getting Started with Multimedia Programming on Linux on SH7724 Global Edge Ian Carvalho Architect 14 October 2010 Version 1.0 Mr. Ian Carvalho System Architect, Global Edge Software Ltd. Responsible

More information

Designing with ALTERA SoC Hardware

Designing with ALTERA SoC Hardware Designing with ALTERA SoC Hardware Course Description This course provides all theoretical and practical know-how to design ALTERA SoC devices under Quartus II software. The course combines 60% theory

More information

SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator

SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator FPGA Kongress München 2017 Martin Heimlicher Enclustra GmbH Agenda 2 What is Visual System Integrator? Introduction Platform

More information

Virtual Hardware ECU How to Significantly Increase Your Testing Throughput!

Virtual Hardware ECU How to Significantly Increase Your Testing Throughput! Virtual Hardware ECU How to Significantly Increase Your Testing Throughput! Elektrobit Tech Day Jason Niatas Synopsys Inc. July 27, 2017 2017 Synopsys, Inc. 1 Agenda Automotive electronic evolution and

More information

Using Virtual Platforms To Improve Software Verification and Validation Efficiency

Using Virtual Platforms To Improve Software Verification and Validation Efficiency Using Virtual Platforms To Improve Software Verification and Validation Efficiency Odin Shen Staff FAE Arm Arm Tech Symposia Taiwan 2017 Software complexity and best practices Software Costs Increasing

More information

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors Patrick Keliher, Simics Field Application Engineer Software Development Using Full System Simulation with Freescale QorIQ Communications Processors 1 2013 Wind River. All Rights Reserved. Agenda Introduction

More information

FPGA Adaptive Software Debug and Performance Analysis

FPGA Adaptive Software Debug and Performance Analysis white paper Intel Adaptive Software Debug and Performance Analysis Authors Javier Orensanz Director of Product Management, System Design Division ARM Stefano Zammattio Product Manager Intel Corporation

More information

Zatara Series ARM ASSP High-Performance 32-bit Solution for Secure Transactions

Zatara Series ARM ASSP High-Performance 32-bit Solution for Secure Transactions 1 ARM-BASED ASSP FOR SECURE TRANSACTIONS ZATARA SERIES 32-BIT ARM ASSP PB022106-1008 ZATARA SERIES ADVANTAGE SINGLE-CHIP SOLUTION BEST FEATURE SET IN POS PCIPED PRE-CERTIFIED EMV L1 CERTIFIED TOTAL SOLUTION

More information

S2C K7 Prodigy Logic Module Series

S2C K7 Prodigy Logic Module Series S2C K7 Prodigy Logic Module Series Low-Cost Fifth Generation Rapid FPGA-based Prototyping Hardware The S2C K7 Prodigy Logic Module is equipped with one Xilinx Kintex-7 XC7K410T or XC7K325T FPGA device

More information

Real Safe Times in the Jailhouse Hypervisor Unrestricted Siemens AG All rights reserved

Real Safe Times in the Jailhouse Hypervisor Unrestricted Siemens AG All rights reserved Siemens Corporate Technology Real Safe Times in the Jailhouse Hypervisor Real Safe Times in the Jailhouse Hypervisor Agenda Jailhouse introduction Safe isolation Architecture support Jailhouse application

More information

2-Oct-13. the world s most energy friendly microcontrollers and radios

2-Oct-13.  the world s most energy friendly microcontrollers and radios 1 2 3 EFM32 4 5 LESENSE Low Energy Sensor Interface Autonomous sensing in Deep Sleep LESENSE with central control logic ACMP for sensor input DAC for reference generation Measure up to 16 sensors Inductive

More information

EMBEDDED SYSTEMS WITH ROBOTICS AND SENSORS USING ERLANG

EMBEDDED SYSTEMS WITH ROBOTICS AND SENSORS USING ERLANG EMBEDDED SYSTEMS WITH ROBOTICS AND SENSORS USING ERLANG Adam Lindberg github.com/eproxus HARDWARE COMPONENTS SOFTWARE FUTURE Boot, Serial console, Erlang shell DEMO THE GRISP BOARD SPECS Hardware & specifications

More information

VXS-610 Dual FPGA and PowerPC VXS Multiprocessor

VXS-610 Dual FPGA and PowerPC VXS Multiprocessor VXS-610 Dual FPGA and PowerPC VXS Multiprocessor Two Xilinx Virtex -5 FPGAs for high performance processing On-board PowerPC CPU for standalone operation, communications management and user applications

More information

SMT943 APPLICATION NOTE 1 APPLICATION NOTE 1. Application Note - SMT372T and SMT943.doc SMT943 SUNDANCE MULTIPROCESSOR TECHNOLOGY LTD.

SMT943 APPLICATION NOTE 1 APPLICATION NOTE 1. Application Note - SMT372T and SMT943.doc SMT943 SUNDANCE MULTIPROCESSOR TECHNOLOGY LTD. APPLICATION NOTE 1 Application Note - SMT372T + SMT943 SMT943 SUNDANCE MULTIPROCESSOR TECHNOLOGY LTD. Date Comments / Changes Author Revision 07/07/10 Original Document completed CHG 1 Date 13/05/2010

More information

A Seamless Tool Access Architecture from ESL to End Product

A Seamless Tool Access Architecture from ESL to End Product A Seamless Access Architecture from ESL to End Product Albrecht Mayer Infineon Technologies AG, 81726 Munich, Germany albrecht.mayer@infineon.com Abstract access to processor cores is needed from the first

More information

Projects on the Intel Single-chip Cloud Computer (SCC)

Projects on the Intel Single-chip Cloud Computer (SCC) Projects on the Intel Single-chip Cloud Computer (SCC) Jan-Arne Sobania Dr. Peter Tröger Prof. Dr. Andreas Polze Operating Systems and Middleware Group Hasso Plattner Institute for Software Systems Engineering

More information

FOR IOT PRODUCT DEVELOPMENT

FOR IOT PRODUCT DEVELOPMENT FOR IOT PRODUCT DEVELOPMENT TRONSHOW IEEE2050-2018 STANDARD 2018/12/12 ATSUSHI HASEGAWA INDUSTRIAL SOLUTION BUSINESS UNIT RENESAS ELECTRONICS CORPORATION SOLUTION OFFERINGS FOR FOCUS DOMAINS To develop

More information

Veloce2 the Enterprise Verification Platform. Simon Chen Emulation Business Development Director Mentor Graphics

Veloce2 the Enterprise Verification Platform. Simon Chen Emulation Business Development Director Mentor Graphics Veloce2 the Enterprise Verification Platform Simon Chen Emulation Business Development Director Mentor Graphics Agenda Emulation Use Modes Veloce Overview ARM case study Conclusion 2 Veloce Emulation Use

More information

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014 Profiling and Debugging OpenCL Applications with ARM Development Tools October 2014 1 Agenda 1. Introduction to GPU Compute 2. ARM Development Solutions 3. Mali GPU Architecture 4. Using ARM DS-5 Streamline

More information

Verification Futures The next three years. February 2015 Nick Heaton, Distinguished Engineer

Verification Futures The next three years. February 2015 Nick Heaton, Distinguished Engineer Verification Futures The next three years February 2015 Nick Heaton, Distinguished Engineer Let s rewind to November 2011 2 2014 Cadence Design Systems, Inc. All rights reserved. November 2011 SoC Integration

More information

Introduction to L.A.P. 1

Introduction to L.A.P. 1 Introduction to L.A.P. 1 Corrado Santoro ARSLAB - Autonomous and Robotic Systems Laboratory Dipartimento di Matematica e Informatica - Università di Catania, Italy santoro@dmi.unict.it L.A.P. 1 Course

More information

It's not about the core, it s about the system

It's not about the core, it s about the system It's not about the core, it s about the system Gajinder Panesar, CTO, UltraSoC gajinder.panesar@ultrasoc.com RISC-V Workshop 18 19 July 2018 Chennai, India Overview Architecture overview Example Scenarios

More information

The Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006

The Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006 The Use Of Virtual Platforms In MP-SoC Design Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006 1 MPSoC Is MP SoC design happening? Why? Consumer Electronics Complexity Cost of ASIC Increased SW Content

More information

VXS-621 FPGA & PowerPC VXS Multiprocessor

VXS-621 FPGA & PowerPC VXS Multiprocessor VXS-621 FPGA & PowerPC VXS Multiprocessor Xilinx Virtex -5 FPGA for high performance processing On-board PowerPC CPU for standalone operation, communications management and user applications Two PMC/XMC

More information

Lesson 6 Intel Galileo and Edison Prototype Development Platforms. Chapter-8 L06: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

Lesson 6 Intel Galileo and Edison Prototype Development Platforms. Chapter-8 L06: Internet of Things , Raj Kamal, Publs.: McGraw-Hill Education Lesson 6 Intel Galileo and Edison Prototype Development Platforms 1 Intel Galileo Gen 2 Boards Based on the Intel Pentium architecture Includes features of single threaded, single core and 400 MHz constant

More information

A So%ware Developer's Journey into a Deeply Heterogeneous World. Tomas Evensen, CTO Embedded So%ware, Xilinx

A So%ware Developer's Journey into a Deeply Heterogeneous World. Tomas Evensen, CTO Embedded So%ware, Xilinx A So%ware Developer's Journey into a Deeply Heterogeneous World Tomas Evensen, CTO Embedded So%ware, Xilinx Embedded Development: Then Simple single CPU Most code developed internally 10 s of thousands

More information

CoLinkEx_LPC11C14 EVB Kit User Guide

CoLinkEx_LPC11C14 EVB Kit User Guide CoLinkEx_LPC11C14 EVB Kit User Guide Rev. 1.0 Release: 2012-05-07 Website: http://www.coocox.org Forum: http://www.coocox.org/forum/forum.php?id=1 Techinal: master@coocox.com Market: market@coocox.com

More information

Hello, and welcome to this presentation of the STM32L4 power controller. The STM32L4 s power management functions and all power modes will also be

Hello, and welcome to this presentation of the STM32L4 power controller. The STM32L4 s power management functions and all power modes will also be Hello, and welcome to this presentation of the STM32L4 power controller. The STM32L4 s power management functions and all power modes will also be covered in this presentation. 1 Please note that this

More information

RISC-V Summit, December 2018 Simon Davidmann, Lee Moore 2018, Imperas Software

RISC-V Summit, December 2018 Simon Davidmann, Lee Moore 2018, Imperas Software How to Address RISC-V Compliance in the Era of OPEN ISA and Custom Instructions RISC-V Summit, December 2018 Simon Davidmann, Lee Moore 2018, Imperas Software Agenda RISC-V Compliance Compliance for RISC-V

More information

Real-Timeness and System Integrity on a Asymmetric Multi Processing configuration

Real-Timeness and System Integrity on a Asymmetric Multi Processing configuration Real-Timeness and System Integrity on a Asymmetric Multi Processing configuration D&E Event November 2nd Relator: Manuele Papais Sales & Marketing Manager 1 DAVE Embedded Systems DAVE Embedded Systems'

More information

Tile Processor (TILEPro64)

Tile Processor (TILEPro64) Tile Processor Case Study of Contemporary Multicore Fall 2010 Agarwal 6.173 1 Tile Processor (TILEPro64) Performance # of cores On-chip cache (MB) Cache coherency Operations (16/32-bit BOPS) On chip bandwidth

More information

Zynq-7000 All Programmable SoC Product Overview

Zynq-7000 All Programmable SoC Product Overview Zynq-7000 All Programmable SoC Product Overview The SW, HW and IO Programmable Platform August 2012 Copyright 2012 2009 Xilinx Introducing the Zynq -7000 All Programmable SoC Breakthrough Processing Platform

More information

Creating hybrid FPGA/virtual platform prototypes

Creating hybrid FPGA/virtual platform prototypes Creating hybrid FPGA/virtual platform prototypes Know how to use the PCIe-over-Cabling interface in its HAPS-60-based system to create a new class of hybrid prototypes. By Troy Scott Product Marketing

More information

Building High Performance, Power Efficient Cortex and Mali systems with ARM CoreLink. Robert Kaye

Building High Performance, Power Efficient Cortex and Mali systems with ARM CoreLink. Robert Kaye Building High Performance, Power Efficient Cortex and Mali systems with ARM CoreLink Robert Kaye 1 Agenda Once upon a time ARM designed systems Compute trends Bringing it all together with CoreLink 400

More information

Simplify System Complexity

Simplify System Complexity Simplify System Complexity With the new high-performance CompactRIO controller Fanie Coetzer Field Sales Engineer Northern South Africa 2 3 New control system CompactPCI MMI/Sequencing/Logging FieldPoint

More information

Test and Verification Solutions. ARM Based SOC Design and Verification

Test and Verification Solutions. ARM Based SOC Design and Verification Test and Verification Solutions ARM Based SOC Design and Verification 7 July 2008 1 7 July 2008 14 March 2 Agenda System Verification Challenges ARM SoC DV Methodology ARM SoC Test bench Construction Conclusion

More information

Copyright 2016 Xilinx

Copyright 2016 Xilinx Zynq Architecture Zynq Vivado 2015.4 Version This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: Identify the basic building

More information

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Joseph Yiu, ARM Ian Johnson, ARM January 2013 Abstract: While the majority of Cortex -M processor-based microcontrollers are

More information

DRAFT. Joined up debugging and analysis in the RISC-V world RISC-V Workshop November DRAFT

DRAFT. Joined up debugging and analysis in the RISC-V world RISC-V Workshop November DRAFT Joined up debugging and analysis in the RISC-V world RISC-V Workshop November 29-30 2016 Agenda Some obvious statements Key Requirements Some examples of Performance analysis and Debug Use cases Demos

More information

Keil uvision development story (Adapted from (Valvano, 2014a))

Keil uvision development story (Adapted from (Valvano, 2014a)) Introduction uvision has powerful tools for debugging and developing C and Assembly code. For debugging a code, one can either simulate it on the IDE s simulator or execute the code directly on ta Keil

More information

Ultra Low Power Microcontroller - Design Criteria - June 2017

Ultra Low Power Microcontroller - Design Criteria - June 2017 Ultra Low Power Microcontroller - Design Criteria - June 2017 Agenda 1. Low power technology features 2. Intelligent Clock Generator 3. Short wake-up times 4. Intelligent memory access 5. Use case scenario

More information

Introduction to gem5. Nizamudheen Ahmed Texas Instruments

Introduction to gem5. Nizamudheen Ahmed Texas Instruments Introduction to gem5 Nizamudheen Ahmed Texas Instruments 1 Introduction A full-system computer architecture simulator Open source tool focused on architectural modeling BSD license Encompasses system-level

More information

CoreTile Express for Cortex-A5

CoreTile Express for Cortex-A5 CoreTile Express for Cortex-A5 For the Versatile Express Family The Versatile Express family development boards provide an excellent environment for prototyping the next generation of system-on-chip designs.

More information

Assembling and Debugging VPs of Complex Cycle Accurate Multicore Systems. July 2009

Assembling and Debugging VPs of Complex Cycle Accurate Multicore Systems. July 2009 Assembling and Debugging VPs of Complex Cycle Accurate Multicore Systems July 2009 Model Requirements in a Virtual Platform Control initialization, breakpoints, etc Visibility PV registers, memories, profiling

More information

10 Steps to Virtualization

10 Steps to Virtualization AN INTEL COMPANY 10 Steps to Virtualization WHEN IT MATTERS, IT RUNS ON WIND RIVER EXECUTIVE SUMMARY Virtualization the creation of multiple virtual machines (VMs) on a single piece of hardware, where

More information

PDK (Platform Development Kit) Getting Started. Automotive Processors

PDK (Platform Development Kit) Getting Started. Automotive Processors PDK (Platform Development Kit) Getting Started Automotive Processors 1 Agenda PDK Overview PDK Software Architecture PDK Directory structure PDK Pre-requisite and Build instructions Running Examples Important

More information

Estimating Accelerator Performance and Events

Estimating Accelerator Performance and Events Lab Workbook Estimating Accelerator Performance and Events Tracing Estimating Accelerator Performance and Events Tracing Introduction This lab guides you through the steps involved in estimating the expected

More information

Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module

Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module Freescale Semiconductor Document Number: KSDKK24FN256RN Release Notes 1.0.0, 08/2014 Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module 1 Overview These are the release notes for the TWR-K24F120M

More information

Rad-Hard Microcontroller For Space Applications

Rad-Hard Microcontroller For Space Applications The most important thing we build is trust ADVANCED ELECTRONIC SOLUTIONS AVIATION SERVICES COMMUNICATIONS AND CONNECTIVITY MISSION SYSTEMS Rad-Hard Microcontroller For Space Applications Fredrik Johansson

More information

The Challenges of System Design. Raising Performance and Reducing Power Consumption

The Challenges of System Design. Raising Performance and Reducing Power Consumption The Challenges of System Design Raising Performance and Reducing Power Consumption 1 Agenda The key challenges Visibility for software optimisation Efficiency for improved PPA 2 Product Challenge - Software

More information

COL862 - Low Power Computing

COL862 - Low Power Computing COL862 - Low Power Computing Power Measurements using performance counters and studying the low power computing techniques in IoT development board (PSoC 4 BLE Pioneer Kit) and Arduino Mega 2560 Submitted

More information

Early Software Development Through Emulation for a Complex SoC

Early Software Development Through Emulation for a Complex SoC Early Software Development Through Emulation for a Complex SoC FTF-NET-F0204 Raghav U. Nayak Senior Validation Engineer A P R. 2 0 1 4 TM External Use Session Objectives After completing this session you

More information

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS Embedded System System Set of components needed to perform a function Hardware + software +. Embedded Main function not computing Usually not autonomous

More information

WaferBoard Rapid Prototyping

WaferBoard Rapid Prototyping WaferBoard Rapid Prototyping WaferBoard (cover not shown) 1. Select components that are packaged in ball grid array, QFP, TSOP, etc. 2. Place the packaged components FPGAs, ASICs, processors, memories,

More information

FPGA-based Evaluation Platform for Disaggregated Computing

FPGA-based Evaluation Platform for Disaggregated Computing This project has received funding from the European Union s Horizon 2020 research and innovation programme under grant agreement No 687632 FPGA-based Evaluation Platform for Disaggregated Computing Dimitris

More information

System-on-Chip Architecture for Mobile Applications. Sabyasachi Dey

System-on-Chip Architecture for Mobile Applications. Sabyasachi Dey System-on-Chip Architecture for Mobile Applications Sabyasachi Dey Email: sabyasachi.dey@gmail.com Agenda What is Mobile Application Platform Challenges Key Architecture Focus Areas Conclusion Mobile Revolution

More information

i.mx 7 - Hetereogenous Multiprocessing Architecture

i.mx 7 - Hetereogenous Multiprocessing Architecture i.mx 7 - Hetereogenous Multiprocessing Architecture Overview Toradex Innovative Business Model Independent Companies Direct Sales Publicly disclosed Sales Prices Local Warehouses In-house HW and SW Development

More information

Xilinx Vivado/SDK Tutorial

Xilinx Vivado/SDK Tutorial Xilinx Vivado/SDK Tutorial (Laboratory Session 1, EDAN15) Flavius.Gruian@cs.lth.se March 21, 2017 This tutorial shows you how to create and run a simple MicroBlaze-based system on a Digilent Nexys-4 prototyping

More information

Quick Start Guide. TWR-VF65GS10 For Vybrid Controller Solutions Based on ARM Cortex -A5 and Cortex-M4 Processors with the DS-5 Toolchain TOWER SYSTEM

Quick Start Guide. TWR-VF65GS10 For Vybrid Controller Solutions Based on ARM Cortex -A5 and Cortex-M4 Processors with the DS-5 Toolchain TOWER SYSTEM TWR-VF65GS10 For Vybrid Controller Solutions Based on ARM Cortex -A5 and Cortex-M4 Processors with the DS-5 Toolchain TOWER SYSTEM Get to Know the TWR-VF65GS10 Dual Quad SPI K20 JTAG Header UART Selection

More information

Optimizing HW/SW Partition of a Complex Embedded Systems. Simon George November 2015.

Optimizing HW/SW Partition of a Complex Embedded Systems. Simon George November 2015. Optimizing HW/SW Partition of a Complex Embedded Systems Simon George November 2015 Zynq-7000 All Programmable SoC HP ACP GP Page 2 Zynq UltraScale+ MPSoC Page 3 HW/SW Optimization Challenges application()

More information

Embedded HW/SW Co-Development

Embedded HW/SW Co-Development Embedded HW/SW Co-Development It May be Driven by the Hardware Stupid! Frank Schirrmeister EDPS 2013 Monterey April 18th SPMI USB 2.0 SLIMbus RFFE LPDDR 2 LPDDR 3 emmc 4.5 UFS SD 3.0 SD 4.0 UFS Bare Metal

More information

Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools

Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools The hardware modules and descriptions referred to in this document are *NOT SUPPORTED* by Texas Instruments

More information

SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator

SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator Embedded Computing Conference 2017 Matthias Frei zhaw InES Patrick Müller Enclustra GmbH 5 September 2017 Agenda Enclustra introduction

More information

Getting Started with FreeRTOS BSP for i.mx 7Dual

Getting Started with FreeRTOS BSP for i.mx 7Dual Freescale Semiconductor, Inc. Document Number: FRTOS7DGSUG User s Guide Rev. 0, 08/2015 Getting Started with FreeRTOS BSP for i.mx 7Dual 1 Overview The FreeRTOS BSP for i.mx 7Dual is a Software Development

More information

QEMU for Xilinx ZynqMP. V Aug-20

QEMU for Xilinx ZynqMP. V Aug-20 QEMU for Xilinx ZynqMP Edgar E. Iglesias V2 2015-Aug-20 ZynqMP SoC New Chip (Zynq NG) Aggressive target for QEMU as early SW platform emulating WiP chip BootROMs, Boot-loaders,

More information

64 bit Bare Metal Programming on RPI-3. Tristan Gingold

64 bit Bare Metal Programming on RPI-3. Tristan Gingold 64 bit Bare Metal Programming on RPI-3 Tristan Gingold gingold@adacore.com What is Bare Metal? Images: Wikipedia No box What is Bare Metal? No Operating System Your application is the OS Why Bare Board?

More information

Kinetis KE1xF512 MCUs

Kinetis KE1xF512 MCUs NXP Semiconductors Document Number: KE1XF512PB Product Brief Rev. 1.1, 08/2016 Kinetis KE1xF512 MCUs Robust 5V MCUs with ADCs, FlexTimers, CAN and expanding memory integration in Kinetis E-series. Now

More information

AT-501 Cortex-A5 System On Module Product Brief

AT-501 Cortex-A5 System On Module Product Brief AT-501 Cortex-A5 System On Module Product Brief 1. Scope The following document provides a brief description of the AT-501 System on Module (SOM) its features and ordering options. For more details please

More information

Zynq-7000 All Programmable SoC: Embedded Design Tutorial. A Hands-On Guide to Effective Embedded System Design

Zynq-7000 All Programmable SoC: Embedded Design Tutorial. A Hands-On Guide to Effective Embedded System Design Zynq-7000 All Programmable SoC: Embedded Design Tutorial A Hands-On Guide to Effective Embedded System Design Revision History The following table shows the revision history for this document. Date Version

More information

ARM TrustZone for ARMv8-M for software engineers

ARM TrustZone for ARMv8-M for software engineers ARM TrustZone for ARMv8-M for software engineers Ashok Bhat Product Manager, HPC and Server tools ARM Tech Symposia India December 7th 2016 The need for security Communication protection Cryptography,

More information

Processor Trace in a Holistic World. DAC-2018 San Francisco RISC-V Foundation Booth

Processor Trace in a Holistic World. DAC-2018 San Francisco RISC-V Foundation Booth Processor Trace in a Holistic World DAC-2018 San Francisco RISC-V Foundation Booth Processor Trace in a Holistic World SoC DAC-2018 San Francisco RISC-V Foundation Booth Processor Debug, Analytics and

More information

A Next Generation Hypervisor for the Embedded Market. Whitepaper

A Next Generation Hypervisor for the Embedded Market. Whitepaper A Next Generation Hypervisor for the Embedded Market Whitepaper 1 Table of Contents Background: Current Generation of Hypervisors... 3 Limitations of Current Generation Hypervisors... 4 Next Generation

More information