TLM Technology for Off-Chip Interfaces on the Automotive domain
|
|
- Anastasia Allison
- 5 years ago
- Views:
Transcription
1 TLM Technology for Off-Chip Interfaces on the Automotive domain European SystemC User s Group Workshop Victor Reyes Synopsys Synopsys
2 More than SoC only simulations SoC Board System IP communication chip-to-chip communication device-to-device communication Domain Mobile, Consumer, Automotive, Networking Synopsys
3 The Challenge When moving to full system (device) simulations the interactions between Different chips on a device The device and the environment become more important A strategy to model and use the required (off-chip) interfaces that Enable the different players on the supply-chain to exchange models Take into account the requirements for systems beyond the SoC is required The scope of OSCI TLM-2.0 is limited to within the SoC (memorymapped on-chip bus communication) Can the TLM-2.0 standard (or part of it) be reused to model bigger systems? Synopsys
4 Agenda Automotive Overview TLM Serial Interface Synopsys Solutions for Automotive Summary Synopsys
5 Automotive Overview Synopsys
6 Automotive E/E systems A car is a highly distributed computer system High-end cars today can contain up to 100 ECUs More than 2000 individual SW functions in a car and increasing Automotive applications are distributed across multiple ECUs that communicate and interact with each other Dramatic increase in interdependencies and connection e.g. going in reverse gear involves 10 ECUs one connector problem at Gateway ECU 38 error messages in 5 ECUs transmission CAN bus gateway head unit Development and tests of such systems is very complex and costly driver door pass. door parking aid rear light CAN bus roof module rearview trailer int. light driver int. light pass. int. light back Synopsys
7 From Vehicle to SW Vehicle Level Vehicle SW 1 Billion lines of code by 2010 > 2000 functions Distributed on 75 ECUs (average) Growing inter-dependencies Subsystem Level ECU Level Engine Control ECU (2005) functions pages of spec 200,000 lines of code 10-20,000 parameters MCU Level SW Level Synopsys
8 Elements in a Subsystem (terminology) The Controlled system (e.g. engine, transmission, brakes, suspension, etc) Accelerator pedal position Transmission stage ECU network Spark plugs Fuel injectors Throttle control Throttle valve Air mass Lambda oxygen sensor Crankshaft speed Synopsys
9 In-Vehicle Networking LIN is a low cost bus for body applications (19.2 Kbauds, UART interface) CAN is the most spread network in the car, but has limitations (1 Mbps, non-deterministic under high load >60%) Ethernet mainly used for diagnostics (but high potential in other areas) MOST is designed for multimedia using optical fiber (up to 150 Mb/s) FlexRay is a high performance (10 Mbps), deterministic, and secure network (mainly used in X-by-wire, ADAS, and high performance applications) Synopsys
10 Electronic Control Units (ECU) e.g. Powertrain Subsystem The core of a ECU is the main MCU (run the controller binary SW) Other components include: Secondary MCU (8-bit) acting as external safety watchdog, etc EEPROM Mixed-signal input and output conditioning blocks Dedicated ASIC (e.g. security) ECU components communicate with each other mainly using serial communication (SPI, I2C, ) Synopsys
11 Microcontroller Unit (MCU) e.g. Freescale MPC5643L New generation MCUs are multi-core architectures Memory-mapped based on-chip interconnect (suitable for TLM-2.0) PMU SWT MCM STM INTC edma Power Architecture FPU VLE MMU CACHE Cross Bar Switch Memory Protection Unit Debug FlexRay RC Power Architecture FPU VLE MMU CACHE PMU SWT MCM STM INTC edma Cross Bar Switch Memory Protection Unit Peripherals grouped by: Tightly coupled (INTC, Timers, DMA, ) Inter-ECU communication controllers (CAN, LIN, FlexRay, ) Intra-ECU communication (SPI, I2C, ) Sensoring/Actuation (ADC, PWM, GPIO, ) BAM MC I/O Bridge SSCM XOSC FLPLL SIU FMPLL WAKE IRCOSC ADC ADC RC FLASH (ECC) CMU CMU CTU FlexPWM RC RC SRAM (ECC) etimer etimer etimer TSENS TSENS FlexCAN FlexCAN CRC LFLEX LFLEX I/O Bridge PIT DSPI DSPI DSPI FCCU Synopsys
12 TLM Serial Interface Synopsys
13 Objective Define a generic infrastructure that can be used to model different off-chip interfaces Focus on serial interfaces (i.e. SPI, CAN, etc) Based on TLM technology That can serve as a basis for future standardization Synopsys
14 Where to start? Understand off-chip serial interface communication Types, concepts, characteristics, Find common parts Understand how the SW interacts with off-chip interfaces What can be abstracted, what has to be modeled Understand how the HW interacts with the off-chip interfaces Pin-multiplexing, SW controlled configuration,.. What the best implementation would be according to Simulation speed, use-of-use, scalability, etc Synopsys
15 Approach Analyze characteristic Define the key Create an of serial requirements implementation interfaces Synopsys
16 Indentify relevant interfaces Sensoring/actuation PWM, ADC, GPIO Plant model Plant model ECU ECU Intra-ECU communication I2C, SPI MCU MCU Inter-ECU communication CAN, FlexRay, LIN Synopsys
17 Serial interface (common) concepts Connectivity Different topologies: point-to-point, bus, daisy chain, Serial peripherals can have both the role of master (transmitter) and/or slave (receiver) dynamically over the same interface Communication Synchronous (separated clock line) / asynchronous (local clock) communication Bidirectional full-duplex (simultaneous data send and receive) Bidirectional half-duplex (data send or receive but not simultaneously) Unidirectional Multi-master is a bus with more than one master (arbitration required) Multi-drop is an interface where there is one transmitter and several receivers (multicast) Multi-point is an multi-drop interface that allows bidirectional communication over the same set of wires Addressing (routing) Communication can be unicast (single receiver), multicast (multiple receivers), broadcast (all connected nodes are receivers) Dedicated lines can be used for the selection Addressing can be decided based on (partly) message decoding and filtering Arbitration Bit-wise arbitration, dominant bit wins Acknowledge Interleave response bit(s) from receiver on specific slots of transmitter message Synopsys
18 SPI (serial peripheral interface) Intra-ECU communication Connectivity 4-wire (clock, slave select, data out, data in) Bus topology for data and clock Point-to-point for slave select Communication Single-master Full duplex Synchronous Unicast Addressing Dedicated slave select signal (master to slave) Arbitration none Acknowledge none Speed Max. 70 MHz Other Clock polarity (CPOL) and phase configuration (CPHA) are relevant parameters (SW configured) Daisy chain bus configuration Not specific payload structure (or size) Synopsys
19 CAN (controller area network) Inter-ECU communication Connectivity Differential-wires Bus topology Communication Multi-master Broadcast Half-duplex Asynchronous Addressing Filtering happens based on message ID Arbitration Lower ID wins Acknowledge Last bits of message Speed Max. 1 Mbps Other Different types of frames: Data frames (max. 108 bits) Remote frames (43 bits) Extended frames (128 bits) Synopsys
20 Requirements Serial peripherals and busses are protocol specific (it should not be possible to connect e.g. CAN to SPI) A generic infrastructure that can be specialized to different protocols will be defined instead The generic infrastructure will include objects and rules to be used on the serial peripheral and bus models Keep the interface simple, handle protocol dependent details in the peripheral models and not in the interface (or bus) Focus on a single coding style (abstraction level) Timed-accurate at the transaction boundary To be used on a LT or AT (with arbitration) platform The generic serial interface framework should support Different types of routing: broadcast, multicast and unicast, over the same implementation Synchronous and asynchronous communication Optional arbitration Enough timing information for the coding style Protocol specific information Synopsys
21 Implementation Overview PROTOCOL Serial Peripheral Serial Bus Serial Peripheral thread P_socket B_socket b_send(...) B_socket P_socket nb_receive( ) P_socket->b_send(payload) B_socket->nb_receive(payload) Modules Serial peripheral Serial bus Sockets Bus socket (used only on the serial bus) Peripheral socket (used only on the serial peripherals) Bidirectional interfaces Blocking send (to be used by the serial peripherals, implemented only on the serial bus) Non blocking receive (implemented only on the serial peripherals, used by the serial bus) Generic payload Generic attributes used mainly by the serial bus (addressing, arbitration and timing info) Extension mechanism Sockets, interfaces and payload are templatized with a protocol specific data structure Synopsys
22 Generic Serial Payload Attribute Data type Default value Description routing_mask unsigned int 0 Value 0 Broadcasting Value 0xffffffff Unicast(use select_id) Any other value Multicast (in combination with select_id) This attribute is used by the serial bus. select_id unsigned int 0 Indicates the destination port on the serial bus. Not relevant when broadcasting. This attribute is used by the serial bus. arbitration_id unsigned int 0 Indicates the value to be used during arbitration. This attribute is used by the serial bus. prot_data_ptr T* 0 Pointer to the protocol specific data. This attribute is used by the serial peripherals. bit_length unsigned int 0 Length in bits of the data transmitted. Only used for timing calculation purposes. This attribute is used by the serial peripherals. clock sc_time 0 Indicates the serial clock used during the transmission (synchronous protocols). It can also used for error checking in asynchronous protocols. This attribute is used by the serial peripherals. status tlm_serial_response *see table below Indicates the status of the transmission. More information in the table below. This attribute is used by the serial bus and peripherals. (select & mask) == (conn & mask) tlm_serial_response TLM_SERIAL_OK TLM_SERIAL_ERROR TLM_SERIAL_INCOMPLETE TLM_SERIAL_ARBITRATION_FAILED Description Set by the receiver(s) to indicate successful reception of the transfer Set by the receiver(s) to indicate a problem during the reception of the transfer Set by the transmitter. This is the default value. If the same value is return indicates that no receiver has got the transfer Set by the serial bus only. Indicates that arbitration failed and the transmission did not take place completely. struct tlm_serial_default_protocol { unsigned int byte_lenght; unsigned char* data_ptr; }; Synopsys
23 Bidirectional Serial Interfaces class tlm_fw_serial_if : public virtual sc_core::sc_interface { public: virtual void b_send(tlm_serial_payload & payload) = 0; }; The forward interface (b_send) is blocking. The rationale to make this interface blocking is to enable its used within SC_THREAD (simplicity) and to enable optional arbitration on the serial bus (serial bus may call sc_core::wait within the implementation). class tlm_bw_serial_if : public virtual sc_core::sc_interface { public: virtual void nb_receive(tlm_serial_payload & payload) = 0; }; The backward interface (nb_receive) is non-blocking. That means that the serial peripherals can NOT call sc_core::wait within the implementation. The rationale behind this decision is to assure the correct timing on the communication when broadcasting or multicasting is used. Synopsys
24 Serial Peripheral Socket template < typename PROTOCOL = tlm_serial_default_protocol > class tlm_serial_socket : public tlm_base_serial_socket <PROTOCOL, tlm_fw_serial_if, tlm_bw_serial_if >{ public: tlm_serial_socket() : tlm_base_serial_socket<protocol, tlm_fw_serial_if, tlm_bw_serial_if >() { } explicit tlm_serial_socket(const char* name) : tlm_base_serial_socket<protocol, tlm_fw_serial_if, tlm_bw_serial_if >(name) { } }; The tlm_serial_socket is used in the serial peripherals ONLY This socket type enables bidirectional communication by using a sc_port and sc_export on the base class as standard TLM2 initiator sockets The socket uses the serial forward and backward interfaces described before The socket has also a template parameter named PROTOCOL. This parameter is used to enable the connection only between serial peripherals and busses that implement the same protocol Synopsys
25 Serial Bus Socket template < typename PROTOCOL = tlm_serial_default_protocol > class tlm_serial_bus_socket : public tlm_base_serial_bus_socket<protocol, tlm_fw_serial_if, tlm_bw_serial_if > { public: tlm_serial_bus_socket() : tlm_base_serial_bus_socket<protocol, tlm_fw_serial_if, tlm_bw_serial_if >() { } }; explicit tlm_serial_bus_socket(const char* name) : tlm_base_serial_bus_socket<protocol, tlm_fw_serial_if, tlm_bw_serial_if >(name) { } The tlm_serial_bus_socket is used in the serial bus ONLY This socket type enables bidirectional communication by using a sc_export and sc_port on the base class as standard TLM2 target sockets The socket uses the serial backward and forward interfaces described before The socket has also a template parameter named PROTOCOL. This parameter is used to enable the connection only between serial peripherals and busses that implement the same protocol Synopsys
26 Serial Bus (without arbitration) template< typename PROTOCOL = tlm_serial_default_protocol, int NoCONN = 2 > class tlm_serial_bus : public sc_core::sc_module, public tlm_fw_serial_if { public: tlm_serial_bus_socket< PROTOCOL > *conn[noconn]; tlm_serial_bus(sc_module_name name): sc_core::sc_module(name) { } void b_send(tlm_serial_payload & payload) { tlm_serial_response default_rsp = TLM_SERIAL_INCOMPLETE; unsigned int mask = payload.get_routing_mask(); unsigned int select = payload.get_select_id(); }; } for(int c=0;c<noconn;c++) { if( (select & mask) == (c & mask) ) { (*conn[c])->nb_receive(payload); if(payload.get_status() == TLM_SERIAL_ERROR) { default_rsp = TLM_SERIAL_ERROR; } } } payload.set_status(default_rsp); Serial bus implements b_send and invokes nb_receive (twisted communication) Bus supports broadcast, multicast and unicast routing based on mask and select attributes Acknowledges are collected and returned to sender Synopsys
27 Serial Peripheral struct my_protocol { unsigned int id; unsigned int data[2]; }; class tlm_serial_peripheral : public sc_core::sc_module, public tlm_bw_serial_if { public: tlm_serial_socket< my_protocol > serial_port; public: SC_HAS_PROCESS(tlm_serial_peripheral); tlm_serial_peripheral( sc_core::sc_module_name nm ) : sc_core::sc_module(nm), serial_port("serial_port") { serial_port(*this); // TX THREAD SC_THREAD(tx_thread); sensitivity << activate_tx; // RX METHOD SC_METHOD(rx_method); sensitivity << activate_rx; } private: my_protocol mserialprotocol; Reference implementation for a serial peripheral Serial peripherals will be protocol dependent Protocol specific information is described on the structure my_protocol TX thread can be activated by an internal event triggered by SW through the register interface Since nb_receive is not blocking, for correct timing a separate SC_METHOD that handle the actions at the end of the message (e.g. set interrupts) triggered by an internal event can be used tlm_serial_payload sc_core::sc_time unsigned int tx_message; mserialclk; storage[2]; Synopsys
28 Serial Peripheral (cont.) void tx_thread(){ while(true){ // Wait until there is a message Tx request sc_core::wait(activate_tx); } } // default is broadcasting tx_message.set_prot_ptr(&mserialprotocol); tx_message.set_bit_length(100); tx_message.set_clock(mserialclk); do { serial_port->b_send(tx_message); sc_core::wait(100*mserialclk); } while(tx_message.get_status()!= TLM_SERIAL_OK); Sender side bit_lenght and serial_clock attributes are assigned for timing calculation purpose on the receiver side With a response different than TLM_SERIAL_OK then the peripheral will try to re-transmit the message void nb_receive(tlm_serial_payload & payload){ mserialclk = sc_core::sc_time(baudrate_in_us, SC_US); // Asynchonous receiver if(mserialclk!= payload.get_clock()) { // error handling payload.set_status(tlm_serial_error); return; } } my_protocol * mtemp = payload.get_data_ptr(); // Accept messages only with the same RX_ID if(mtemp->id == RX_ID){ Tmp_storage[0] = mtemp->data[0]; Tmp_storage[1] = mtemp->data[1]; int n_bits = payload.get_bit_length(); activate_rx.notify(n_bits*mserialclk); } payload.set_status(tlm_serial_ok); void rx_method() { // update status flag and interrupt interrupt.write(true); } Receiver side In case the peripheral is asynchronous the first to do it is to check that the sender clock matches the receiver clock, otherwise an error should be flag The receiver will filter messages based on its configuration RX_ID) and the protocol specific information (my_protocol->id) Synopsys
29 Synopsys Solutions for Automotive Synopsys
30 Virtual Prototyping Flow Virtual Prototyping Development Flow Software Tool Interfaces Model Libraries Block Creation Flows Component Modeling Assembly Debugging Virtualizer: VP Creation HW/SW Debug & Analysis Tools Virtual Prototype VDKs Design Tasks: SW-driven verification Virtual Prototype Use SoC HW/SW integration SW development System validation & test Supply chain enablement Co-Simulation & External Connectivity Synopsys
31 Virtual Prototyping Flow Virtual Prototyping Development Flow Software Tool Interfaces Model Libraries Block Creation Flows e200z6 CLOCKS & RESET e200z0 PIT Component Modeling Assembly Debugging INTC Virtualizer: VP Creation HW/SW Debug & Analysis Tools Virtual Prototype VDKs Design Tasks: SW-driven verification Virtual Prototype Use SoC HW/SW integration SW development System validation & test Supply chain enablement SWT XBAR FLASH edma STM SRAM1 SRAM2 Co-Simulation & External Connectivity (ECC) (ECC) (ECC) ADC FlexCAN Synopsys
32 Ecosystem MCU Vendors Renesas Freescale Infineon HLL Debuggers Lauterbach GreenHills PLS Physical Simulation Simulink Saber Restbus CANoe Synopsys
33 Debug and Analysis 3 rd party source code debugger Extra visibility and control with VPA Break-/Watch-point Visible assembly code Visible Register Visible Signal Task, event tracing Function, instruction tracing Internal pin and register tracing Virtual HW model Memory Memory Core #1 Core #2 Memory Timer INTC SPI CAN DMA RTC ADC I/O I/O signal tracing Host PC Synopsys
34 Connectivity Simulink Virtual Prototype Saber Custom tools Vector Synopsys
35 Agenda Automotive Overview TLM Serial Interface Synopsys Solutions for Automotive Summary Synopsys
36 Summary Virtual prototyping is moving above the SoC level to full system simulation There is a need to model (and standardize) off-chip interfaces TLM-2 cannot be applied as is, but it can serve as the technology foundation Synopsys has prototyped a TLM serial interface framework To be used on automotive applications and according to automotive requirements To be discussed with customers throughout the year Synopsys
37 Demos Synopsys
38 Synopsys Thank You
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, t he Energy Efficient Solutions logo, mobilegt, PowerQUICC,
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, t he Energy Efficient Solutions logo, mobilegt, PowerQUICC, QorIQ, StarCore and Symphony are trademarks of Freescale
More informationFreescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, ColdFire+, C- Ware, the Energy Efficient Solutions logo, Kinetis,
July 19, 2013 Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, ColdFire+, C- Ware, the Energy Efficient Solutions logo, Kinetis, mobilegt, PEG, PowerQUICC, Processor Expert,
More informationWhat is needed on top of TLM-2 for bigger Systems?
What is needed on top of TLM-2 for bigger Systems? Jerome Cornet - ST Martin Schnieringer - Bosch GmbH Accellera Systems Initiative 1 Agenda Introduction Example of Serial Protocols TLM Standard Design
More informationQorivva MPC560xP and MPC564xL Compatibility Transition from MPC5604P to MPC5643L in QFP 144 packages
Freescale Semiconductor Application Note Document Number: AN3952 Rev. 0, 10/2009 Qorivva MPC560xP and MPC564xL Compatibility Transition from MPC5604P to MPC5643L in QFP 144 packages by: Oliver Bibel München,
More informationUniversität Dortmund. IO and Peripheral Interfaces
IO and Peripheral Interfaces Microcontroller System Architecture Each MCU (micro-controller unit) is characterized by: Microprocessor 8,16,32 bit architecture Usually simple in-order microarchitecture,
More informationVirtual 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 informationAN4405 Application note
Application note Transition from SPC560P50x to SPC570S50x Introduction This application note describes common properties of, and the differences between, the SPC560P50x family and SPC570S50x family. This
More informationSerial Buses in Industrial and Automotive Applications
Serial Buses in Industrial and Automotive Applications Presented by Neelima Chaurasia Class: #368 1 Overview As consumer electronics, computer peripherals, vehicles and industrial applications add embedded
More informationTN1274 Technical note
TN1274 Technical note Migration differences between SPC584Bx and SPC560B64 Introduction The SPC560B54/6x family expands the range of the SPC560B microcontroller family. It provides the scalability needed
More informationRemote Keyless Entry In a Body Controller Unit Application
38 Petr Cholasta Remote Keyless Entry In a Body Controller Unit Application Many of us know this situation. When we leave the car, with a single click of a remote control we lock and secure it until we
More informationRad-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 informationSPC56EL60L3 SPC56EL60L5 32-bit Power Architecture microcontroller for automotive SIL3/ASILD chassis and safety applications Features
SPC56EL60L3 SPC56EL60L5 32-bit Power Architecture microcontroller for automotive SIL3/ASILD chassis and safety applications Features High-performance e200z4d dual core 32-bit Power Architecture technology
More informationInterconnects, Memory, GPIO
Interconnects, Memory, GPIO Dr. Francesco Conti f.conti@unibo.it Slide contributions adapted from STMicroelectronics and from Dr. Michele Magno, others Processor vs. MCU Pipeline Harvard architecture Separate
More informationINTRODUCTION TO FLEXIO
INTRODUCTION TO FLEXIO Osvaldo Romero Applications Engineer EXTERNAL USE Agenda Introduction to FlexIO FlexIO Main Features FlexIO Applications Freescale Products with FlexIO Collaterals\Tools for FlexIO
More informationEMBEDDED 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 informationInfineon C167CR microcontroller, 256 kb external. RAM and 256 kb external (Flash) EEPROM. - Small single-board computer (SBC) with an
Microcontroller Basics MP2-1 week lecture topics 2 Microcontroller basics - Clock generation, PLL - Address space, addressing modes - Central Processing Unit (CPU) - General Purpose Input/Output (GPIO)
More informationAutomotive Trends: Architecture and Technology
June, 2010 Automotive Trends: Architecture and Technology FTF-AUT-F0341 Davide Santo System Architect The lecture will: Describe the primary drivers expected in the next generation of automotive embedded
More informationSPC584Cx, SPC58ECx. 32-bit Power Architecture microcontroller for automotive ASIL-B applications. Features
32-bit Power Architecture microcontroller for automotive ASIL-B applications Data brief Features etqfp64 (10 x 10 x 1.0 mm) etqfp144 (20 x 20 x 1.0 mm) AEC-Q100 qualified FPBGA292 (17 x 17 x 1.8 mm) High
More informationFOR 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 informationMICROPROCESSOR BASED SYSTEM DESIGN
MICROPROCESSOR BASED SYSTEM DESIGN Lecture 5 Xmega 128 B1: Architecture MUHAMMAD AMIR YOUSAF VON NEUMAN ARCHITECTURE CPU Memory Execution unit ALU Registers Both data and instructions at the same system
More informationMPC5607B Microcontroller Product Brief
Freescale Semiconductor Product Brief Document Number: MPC5607BPB Rev. 8, 07/2011 MPC5607B Microcontroller Product Brief This document provides an overview and describes the features of the MPC5607B series
More informationDesign and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso
Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso Microcontroller It is essentially a small computer on a chip Like any computer, it has memory,
More informationAUTOSAR stands for AUTomotive Open Systems ARchitecture. Partnership of automotive Car Manufacturers and their Suppliers
Introduction stands for AUTomotive Open Systems ARchitecture Electronic Control Unit Partnership of automotive Car Manufacturers and their Suppliers Source for ECU: Robert Bosch GmbH 2 Introduction Members
More informationMicrocontroller basics
FYS3240 PC-based instrumentation and microcontrollers Microcontroller basics Spring 2017 Lecture #4 Bekkeng, 30.01.2017 Lab: AVR Studio Microcontrollers can be programmed using Assembly or C language In
More informationS32 SDK for Power Architecture Release Notes Version EAR
S32 SDK for Power Architecture Release Notes Version 0.8.0 EAR 2017 NXP Contents 1. DESCRIPTION...3 2. SOFTWARE CONTENTS...4 3. DOCUMENTATION...4 4. EXAMPLES...5 5. SUPPORTED HARDWARE AND COMPATIBLE SOFTWARE...6
More informationMPC5604E microcontroller product brief
Freescale Semiconductor Product Brief Document Number: MPC5604EPB Rev. 2, 10/2011 MPC5604E microcontroller product brief The MPC5604E microcontroller is a gateway system designed to move data from different
More informationMPC5607B Microcontroller Reference Manual Addendum Microcontroller Solutions Group
Freescale Semiconductor Reference Manual Addendum MPC5607BRMAD Rev. 1, 05/2012 MPC5607B Microcontroller Reference Manual Addendum by: Microcontroller Solutions Group This addendum document describes corrections
More informationSoC Platforms and CPU Cores
SoC Platforms and CPU Cores COE838: Systems on Chip Design http://www.ee.ryerson.ca/~courses/coe838/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer Engineering Ryerson University
More informationGetting Started with Qorivva Fast
Freescale Semiconductor Document Number:AN4894 Application Note Rev 0, Mar 2014 Getting Started with Qorivva Fast Start Kit for TRK-MPC5604P by: Sudhakar Srinivasa 1 Introduction This application note
More informationTest 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 informationFlexRay and Automotive Networking Future
FlexRay and Automotive Networking Future Chris Quigley Warwick Control Technologies Presentation Overview High Speed and High Integrity Networking Why FlexRay? CAN Problems Time Triggered Network Principles
More informationLecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT
1 Lecture 5: Computing Platforms Asbjørn Djupdal ARM Norway, IDI NTNU 2013 2 Lecture overview Bus based systems Timing diagrams Bus protocols Various busses Basic I/O devices RAM Custom logic FPGA Debug
More informationHello, and welcome to this presentation of the STM32 Low Power Universal Asynchronous Receiver/Transmitter interface. It covers the main features of
Hello, and welcome to this presentation of the STM32 Low Power Universal Asynchronous Receiver/Transmitter interface. It covers the main features of this interface, which is widely used for serial communications.
More informationRL78 Serial interfaces
RL78 Serial interfaces Renesas Electronics 00000-A Introduction Purpose This course provides an introduction to the RL78 serial interface architecture. In detail the different serial interfaces and their
More informationSTM32 F0 Value Line. Entry-level MCUs
STM32 F0 Value Line Entry-level MCUs Key Messages 2 STM32 F0: Is the Cortex -M0 core generated with ST s STM32 DNA, for cost sensitive designs. The STM32 F0 is benefiting of STM32 DNA, providing the essential
More informationSri Vidya College of Engineering and Technology. EC6703 Embedded and Real Time Systems Unit IV Page 1.
Sri Vidya College of Engineering and Technology ERTS Course Material EC6703 Embedded and Real Time Systems Page 1 Sri Vidya College of Engineering and Technology ERTS Course Material EC6703 Embedded and
More informationArchitecture concepts in Body Control Modules
Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 11,0 cm) Course 7 www.continental-corporation.com Interior Body and Security Table Of Contents
More informationCprE 488 Embedded Systems Design. Lecture 4 Interfacing Technologies
CprE 488 Embedded Systems Design Lecture 4 Interfacing Technologies Joseph Zambreno Electrical and Computer Engineering Iowa State University www.ece.iastate.edu/~zambreno rcl.ece.iastate.edu Never trust
More informationOverview of Qorivva family and MPC564xB/C (5 minutes) Smart peripherals for lighting (20 minutes) Gateway communications and questions (5 minutes)
23 June 2011 Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, t he Energy Efficient Solutions logo, mobilegt, PowerQUICC, QorIQ, StarCore and Symphony are trademarks
More informationProduct Brief Supports all SKEA8 devices
Freescale Semiconductor Document Number:SKEA8PB Product Brief Rev 1.1, 02/2014 Product Brief Supports all SKEA8 devices 1 Kinetis EA series Kinetis EA series provide the highly scalable portfolio of ARM
More informationAmarjeet Singh. January 30, 2012
Amarjeet Singh January 30, 2012 Website updated - https://sites.google.com/a/iiitd.ac.in/emsys2012/ Lecture slides, audio from last class Assignment-2 How many of you have already finished it? Final deadline
More informationZigBee Compliant Platform 2.4G RF Low Power Transceiver Module for IEEE Standard. DATA SHEET Version B
ZMD400-A01 ZigBee Compliant Platform 2.4G RF Low Power Transceiver Module for IEEE 802.15.4 Standard DATA SHEET Version B Quan International Co., Ltd., ZMD400 Features Fully compliant 802.15.4 Standard
More informationHello, and welcome to this presentation of the STM32 Universal Synchronous/Asynchronous Receiver/Transmitter Interface. It covers the main features
Hello, and welcome to this presentation of the STM32 Universal Synchronous/Asynchronous Receiver/Transmitter Interface. It covers the main features of this USART interface, which is widely used for serial
More informationProduct Brief Supports all SKEA64 devices
Freescale Semiconductor Document Number:SKEA64PB Product Brief Rev 1.1, 02/2014 Product Brief Supports all SKEA64 devices 1 Kinetis EA series Kinetis EA series provide the highly scalable portfolio of
More informationWS_CCESBF7-OUT-v1.00.doc Page 1 of 8
Course Name: Course Code: Course Description: System Development with CrossCore Embedded Studio (CCES) and the ADSP-BF70x Blackfin Processor Family WS_CCESBF7 This is a practical and interactive course
More informationTRK-S12ZVL Quick Start Guide. MagniV Mixed-signal MCUs for LIN Applications
TRK-S12ZVL Quick Start Guide MagniV Mixed-signal MCUs for LIN Applications Quick Start Guide Introduction The TRK-S12ZVL features the S12ZVL, an automotive 16-bit MCU family. This integrates on the same
More informationEEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools
EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: wylin@mail.cgu.edu.tw March 2013 Agenda Introduction
More informationLesson 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 informationSoftware 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 informationTN0147 Technical note
TN0147 Technical note SPC56xB/C/Dxx family overview - features comparison Introduction The 32-bit SPC56 automotive microcontrollers are a family of System-on-Chip (SoC) devices designed to be central to
More informationDigital Circuits Part 2 - Communication
Introductory Medical Device Prototyping Digital Circuits Part 2 - Communication, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Topics Microcontrollers Memory
More informationApplication Note, V1.0, Feb AP LIN Application for XC164CM Using DAvE LIN Configuration tool. Microcontrollers
Application Note, V1.0, Feb. 2007 AP16107 for XC164CM Using DAvE LIN Configuration tool Microcontrollers Edition 2007-02-15 Published by Infineon Technologies AG 81726 München, Germany Infineon Technologies
More informationSerial Peripheral Interface Bus SPI
Serial Peripheral Interface Bus SPI SPI Bus Developed by Motorola in the mid 1980 s Full-duplex, master-slave serial bus suited to data streaming applications for embedded systems Existing peripheral busses
More informationBasic Components of Digital Computer
Digital Integrated Circuits & Microcontrollers Sl. Mihnea UDREA, mihnea@comm.pub.ro Conf. Mihai i STANCIU, ms@elcom.pub.ro 1 Basic Components of Digital Computer CPU (Central Processing Unit) Control and
More informationRapidly Developing Embedded Systems Using Configurable Processors
Class 413 Rapidly Developing Embedded Systems Using Configurable Processors Steven Knapp (sknapp@triscend.com) (Booth 160) Triscend Corporation www.triscend.com Copyright 1998-99, Triscend Corporation.
More informationVerification 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 informationSafety Manual for Qorivva MPC5643L Devices Supported: MPC5643L
Safety Manual for Qorivva MPC5643L Devices Supported: MPC5643L (NOTE: Replaces the Safety Application Guide for MPC5643L MPC5643LSAG) MPC5643LSM Rev. 2 04/2013 How to Reach Us: Home Page: freescale.com
More informationWelcome to this presentation of the STM32 direct memory access controller (DMA). It covers the main features of this module, which is widely used to
Welcome to this presentation of the STM32 direct memory access controller (DMA). It covers the main features of this module, which is widely used to handle the STM32 peripheral data transfers. 1 The Direct
More informationMicrocontroller Brief
Freescale Semiconductor Product Brief Document Number: MPC560XPPB Rev. 5, 10/2009 Microcontroller Brief The 32-bit MPC5604P automotive System-on-Chip (SoC) device development of the next wave of airbag/steering
More informationS2C 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 informationSPC560P50L3, SPC560P50L5 SPC560P44L3, SPC560P44L5
SPC560P50L3, SPC560P50L5 SPC560P44L3, SPC560P44L5 32-bit Power Architecture based MCU for chassis & safety applications Data brief Features Single issue, 32-bit CPU core complex (e200z0h) Compliant with
More informationComputer Architecture CS 355 Busses & I/O System
Computer Architecture CS 355 Busses & I/O System Text: Computer Organization & Design, Patterson & Hennessy Chapter 6.5-6.6 Objectives: During this class the student shall learn to: Describe the two basic
More informationPXN20 Product Brief. 32-bit Power Architecture Dual Core Microcontrollers for Industrial Networking. Freescale Semiconductor Product Brief
Freescale Semiconductor Product Brief Document Number: PXN20PB Rev. 1, 06/2011 PXN20 Product Brief 32-bit Power Architecture Dual Core Microcontrollers for Industrial Networking The PXN20 products are
More informationGrowing Together Globally Serial Communication Design In Embedded System
Growing Together Globally Serial Communication Design In Embedded System Contents Serial communication introduction......... 01 The advantages of serial design......... 02 RS232 interface......... 04 RS422
More informationMore on IO: The Universal Serial Bus (USB)
ecture 37 Computer Science 61C Spring 2017 April 21st, 2017 More on IO: The Universal Serial Bus (USB) 1 Administrivia Project 5 is: USB Programming (read from a mouse) Optional (helps you to catch up
More informationDevelopment and research of different architectures of I 2 C bus controller. E. Vasiliev, MIET
Development and research of different architectures of I 2 C bus controller E. Vasiliev, MIET I2C and its alternatives I²C (Inter-Integrated Circuit) is a multi-master serial computer bus invented by Philips
More informationPRU Hardware Overview. Building Blocks for PRU Development: Module 1
PRU Hardware Overview Building Blocks for PRU Development: Module 1 Agenda SoC Architecture PRU Submodules Example Applications 2 SoC Architecture Building Blocks for PRU Development: PRU Hardware Overview
More informationUser Manual. LPC-StickView V3.0. for LPC-Stick (LPC2468) LPC2478-Stick LPC3250-Stick. Contents
User Manual LPC-StickView V3.0 for LPC-Stick (LPC2468) LPC2478-Stick LPC3250-Stick Contents 1 What is the LPC-Stick? 2 2 System Components 2 3 Installation 3 4 Updates 3 5 Starting the LPC-Stick View Software
More informationMPC55xx Highlighted Features
MPC55xx Highlighted Features Why Do I Need an etpu? Number one constraint of microcontrollers is their limited ability to perform high speed time related tasks. Limited by CPU interrupt overhead in servicing
More informationrcube2: Advanced Rapid Prototyping Electronic Control Unit
Page 1 rcube2: Advanced Rapid Prototyping Electronic Control Unit Overview rcube2 is a rapid prototyping ECU based on AUTOSAR that enables fast and efficient development of control systems from initial
More informationLecture 2. Basics of networking in automotive systems: Network. topologies, communication principles and standardised protocols
Lecture 2. Basics of networking in automotive systems: Network topologies, communication principles and standardised protocols Objectives Introduce basic concepts used in building networks for automotive
More informationAm186ER/Am188ER AMD continues 16-bit innovation
Am186ER/Am188ER AMD continues 16-bit innovation 386-Class Performance, Enhanced System Integration, and Built-in SRAM Am186ER and Am188ER Am186 System Evolution 80C186 Based 3.37 MIP System Am186EM Based
More informationSPC58EHx,SPC58NHx. A scalable approach for high-end body, networking and security platforms for Automotive. Description. Features
SPC58EHx,SPC58NHx A scalable approach for high-end body, networking and security platforms for Automotive Data brief Package: etqfp144, elqfp176, FPBGA302, FPBGA386 Supply: 5V or 3.3V with internal regulator
More informationDEVKIT-MPC5744P QUICK START GUIDE (QSG) Ultra-Reliable MCUs for Industrial and Automotive Applications. EXTERNAL USE
DEVKIT-MPC5744P QUICK START GUIDE (QSG) Ultra-Reliable MCUs for Industrial and Automotive Applications www.nxp.com/devkit-mpc5744p Contents Quick Start Package Overview Step-by-Step Installation Instructions
More informationAVR XMEGA Product Line Introduction AVR XMEGA TM. Product Introduction.
AVR XMEGA TM Product Introduction 32-bit AVR UC3 AVR Flash Microcontrollers The highest performance AVR in the world 8/16-bit AVR XMEGA Peripheral Performance 8-bit megaavr The world s most successful
More informationImplementation of automotive CAN module requirements
Implementation of automotive CAN module requirements Alan Devine, freescale semiconductors At first glance all CAN modules are very similar, the only difference being the number of message buffers which
More informationFlexible Design of ARM- CAN MCUs with Powered Gate Technology
Flexible Design of ARM- CAN MCUs with Powered Gate Technology Uwe Stock, Manager New Product Development, OKI Electric Europe GmbH So far potential users of ARM 32-bit RISC-Controllers always had the choice
More informationHYDRA-X23/X23S. Power Application Controllers. PAC HYDRA-X User s Guide. Copyright 2014 Active-Semi, Inc.
HYDRA-X23/X23S Power Application Controllers PAC5223 - HYDRA-X User s Guide www.active-semi.com Copyright 2014 Active-Semi, Inc. CONTENTS Contents...2 Overview...3 HYDRA-X23/X23S Body Resources...5 Header
More informationPD215 Mechatronics. Week 3/4 Interfacing Hardware and Communication Systems
PD215 Mechatronics Week 3/4 Interfacing Hardware and Communication Systems Interfacing with the physical world A compute device (microprocessor) in mechatronic system needs to accept input information
More informationCountermeasures against Cyber-attacks
Countermeasures against Cyber-attacks Case of the Automotive Industry Agenda Automotive Basics ECU, domains, CAN Automotive Security Motivation, trends Hardware and Software Security EVITA, SHE, HSM Secure
More informationUsing Enhanced Time Processing Unit (etpu/etpu2) for Combustion Engine Management and Electric Motor Control Milan Brejl, Ph.D.
June 23, 2010 Using Enhanced Time Processing Unit (etpu/etpu2) for Combustion Engine Management and Electric Motor Control FTF-AUT-F0447 Milan Brejl, Ph.D. System Application Engineer and VortiQa are trademarks
More informationSTM32F3. Cuauhtémoc Carbajal ITESM CEM 12/08/2013
STM32F3 Cuauhtémoc Carbajal ITESM CEM 12/08/2013 1 STM32 Portfolio 2 32 bit/dsc Applications A typical embedded system with both control and signal processing requirements Digital Signal Controllers efficient
More informationMPC5510 Family Product Brief
Freescale Semiconductor Product Brief Document Number: MPC5510PB Rev. 2, 5/2008 MPC5510 Family Product Brief 32-Bit Power Architecture Microcontrollers for Body Electronics The MPC5510 is a new family
More informationProgramming in the MAXQ environment
AVAILABLE The in-circuit debugging and program-loading features of the MAXQ2000 microcontroller combine with IAR s Embedded Workbench development environment to provide C or assembly-level application
More informationUser Manual. LPC-StickView V1.1. for LPC-Stick. Contents
User Manual LPC-StickView V1.1 for LPC-Stick Contents 1 What is LPC-Stick? 2 2 System Components 2 3 Installation 2 4 Updates 3 5 Starting the LPC-Stick View Software 4 6 Operating the LPC-Stick 6 7 Start
More informationDeveloping deterministic networking technology for railway applications using TTEthernet software-based end systems
Developing deterministic networking technology for railway applications using TTEthernet software-based end systems Project n 100021 Astrit Ademaj, TTTech Computertechnik AG Outline GENESYS requirements
More informationAdvantages of MIPI Interfaces in IoT Applications
Advantages of MIPI Interfaces in IoT Applications IoT DevCon Conference Hezi Saar April 27, 2017 Abstract In addition to sensors, high-resolution cameras are key enablers of IoT devices. The challenge
More informationAchieving UFS Host Throughput For System Performance
Achieving UFS Host Throughput For System Performance Yifei-Liu CAE Manager, Synopsys Mobile Forum 2013 Copyright 2013 Synopsys Agenda UFS Throughput Considerations to Meet Performance Objectives UFS Host
More informationMPC5606S Microcontroller Product Brief
Product Brief Document Number: MPC560xSPB Rev. 4, 04/2011 MPC5606S Microcontroller Product Brief 32-bit MCU for cluster applications with stepper motor, TFT graphic controller and LCD driver The MPC5606S
More informationAccessing I/O Devices Interface to CPU and Memory Interface to one or more peripherals Generic Model of IO Module Interface for an IO Device: CPU checks I/O module device status I/O module returns status
More informationEmulating Dual SPI Using FlexIO
Freescale Semiconductor, Inc. Document Number: AN5242 Application Note Rev. 0, 01/2016 Emulating Dual SPI Using FlexIO 1. Introduction This application note discusses one example of how to use FlexIO module
More informationL2 - C language for Embedded MCUs
Formation C language for Embedded MCUs: Learning how to program a Microcontroller (especially the Cortex-M based ones) - Programmation: Langages L2 - C language for Embedded MCUs Learning how to program
More informationProduct Technical Brief S3C2413 Rev 2.2, Apr. 2006
Product Technical Brief Rev 2.2, Apr. 2006 Overview SAMSUNG's is a Derivative product of S3C2410A. is designed to provide hand-held devices and general applications with cost-effective, low-power, and
More informationProduct Technical Brief S3C2412 Rev 2.2, Apr. 2006
Product Technical Brief S3C2412 Rev 2.2, Apr. 2006 Overview SAMSUNG's S3C2412 is a Derivative product of S3C2410A. S3C2412 is designed to provide hand-held devices and general applications with cost-effective,
More informationDariusz Makowski Department of Microelectronics and Computer Science tel
Dariusz Makowski Department of Microelectronics and Computer Science tel. 631 2720 dmakow@dmcs.pl http://fiona.dmcs.pl/es 1 Lecture Agenda Microprocessor Systems, ARM Processors Family Peripheral Devices
More informationSCope: Efficient HdS simulation for MpSoC with NoC
SCope: Efficient HdS simulation for MpSoC with NoC Eugenio Villar Héctor Posadas University of Cantabria Marcos Martínez DS2 Motivation The microprocessor will be the NAND gate of the integrated systems
More informationQorivva MPC5602P Microcontroller Product Brief
Freescale Semiconductor Product Brief Document Number: MPC5602PPB Rev. 4.1, 09/2011 Qorivva MPC5602P Microcontroller Product Brief 1 Introduction 1.1 Document overview This document provides an overview
More informationor between microcontrollers)
: Communication Interfaces in Embedded Systems (e.g., to interface with sensors and actuators or between microcontrollers) Spring 2016 : Communication Interfaces in Embedded Systems Spring (e.g., 2016
More informationOUTLINE. SPI Theory SPI Implementation STM32F0 SPI Resources System Overview Registers SPI Application Initialization Interface Examples
SERIAL PERIPHERAL INTERFACE (SPI) George E Hadley, Timothy Rogers, and David G Meyer 2018, Images Property of their Respective Owners OUTLINE SPI Theory SPI Implementation STM32F0 SPI Resources System
More informationEPIC board ensures reliability in the toughest environment
EPIC board ensures reliability in the toughest environment The XE 800 SBC is a high performance single board computer (SBC) with a rich family of essential I/O functions. It integrates video, serial ports,
More information