EMBEDDED SYSTEM DESIGN USING FPGA

Slides:



Advertisements
Similar presentations
VHDL Design of Multifunctional RISC Processor on FPGA
Advertisements

Nios Multi Processor Ethernet Embedded Platform Final Presentation
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 31/22alt1 Lecture 31 System Test (Lecture 22alt in the Alternative Sequence) n Definition n Functional.
StreamBlade SOE TM Initial StreamBlade TM Stream Offload Engine (SOE) Single Board Computer SOE-4-PCI Rev 1.2.
Apr. 20, 2001VLSI Test: Bushnell-Agrawal/Lecture 311 Lecture 31 System Test n Definition n Functional test n Diagnostic test  Fault dictionary  Diagnostic.
1 SECURE-PARTIAL RECONFIGURATION OF FPGAs MSc.Fisnik KRAJA Computer Engineering Department, Faculty Of Information Technology, Polytechnic University of.
LOGSYS Development Environment of Embedded Systems Tamás Raikovich Béla Fehér Péter Laczkó Budapest University of Technology and Economics Department of.
Motor Control Lab Using Altera Nano FPGA
MotoHawk Training Model-Based Design of Embedded Systems.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
A.R. Hertneky J.W. O’Brien J.T. Shin C.S. Wessels Laser Controller One (LC1)
A Study of the Speedups and Competitiveness of FPGA Soft Processor Cores using Dynamic Hardware/Software Partitioning Roman Lysecky, Frank Vahid* Department.
VirtexIIPRO FPGA Device Functional Testing In Space environment. Performed by: Mati Musry, Yahav Bar Yosef Instuctor: Inna Rivkin Semester: Winter/Spring.
Configurable System-on-Chip: Xilinx EDK
29 April 2005 Part B Final Presentation Peripheral Devices For ML310 Board Project name : Spring Semester 2005 Final Presentation Presenting : Erez Cohen.
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
Coordinate Based Tracking System
Performance Analysis of Processor Characterization Presentation Performed by : Winter 2005 Alexei Iolin Alexander Faingersh Instructor:
Performance Analysis of Processor Midterm Presentation Performed by : Winter 2005 Alexei Iolin Alexander Faingersh Instructor: Evgeny.
1 Fast Communication for Multi – Core SOPC Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
ASPPRATECH.
Lecture 7 Lecture 7: Hardware/Software Systems on the XUP Board ECE 412: Microcomputer Laboratory.
Using FPGAs with Embedded Processors for Complete Hardware and Software Systems Jonah Weber May 2, 2006.
BLDC MOTOR SPEED CONTROL USING EMBEDDED PROCESSOR
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Final presentation Encryption/Decryption on embedded system Supervisor: Ina Rivkin students: Chen Ponchek Liel Shoshan Winter 2013 Part A.
General FPGA Architecture Field Programmable Gate Array.
Programmable Logic- How do they do that? 1/16/2015 Warren Miller Class 5: Software Tools and More 1.
© 2003 Xilinx, Inc. All Rights Reserved Power Estimation.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
Xilinx at Work in Hot New Technologies ® Spartan-II 64- and 32-bit PCI Solutions Below ASSP Prices January
A Company Selling Technology and not just a Product.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
SOC Consortium Course Material ASIC Logic National Taiwan University Adopted from National Chiao-Tung University IP Core Design.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
© 2004 Xilinx, Inc. All Rights Reserved EDK Overview.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
J. Christiansen, CERN - EP/MIC
® SPARTAN Series High Volume System Solution. ® Spartan/XL Estimated design size (system gates) 30K 5K180K XC4000XL/A XC4000XV Virtex S05/XL.
NIOS II Ethernet Communication Final Presentation
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
LAB1 Summary Zhaofeng SJTU.SOME. Embedded Software Tools CPU Logic Design Tools I/O FPGA Memory Logic Design Tools FPGA + Memory + IP + High Speed IO.
Part A Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
© 2004 Xilinx, Inc. All Rights Reserved Embedded Processor Design.
This material exempt per Department of Commerce license exception TSU Xilinx On-Chip Debug.
© 2004 Xilinx, Inc. All Rights Reserved Adding a Processor System to an FPGA Design.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
Ethernet Bomber Ethernet Packet Generator for network analysis
Lecture 7: Overview Microprocessors / microcontrollers.
Somervill RSC 1 125/MAPLD'05 Reconfigurable Processing Module (RPM) Kevin Somervill 1 Dr. Robert Hodson 1
Survey of Reconfigurable Logic Technologies
Maj Jeffrey Falkinburg Room 2E46E
Lab 1: Using NIOS II processor for code execution on FPGA
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
Introduction to Programmable Logic
ENG3050 Embedded Reconfigurable Computing Systems
Electronics for Physicists
ChipScope Pro Software
The performance requirements for DSP applications continue to grow and the traditional solutions do not adequately address this new challenge Paradigm.
A High Performance SoC: PkunityTM
Manual Robotics ..
Electronics for Physicists
ChipScope Pro Software
Presentation transcript:

EMBEDDED SYSTEM DESIGN USING FPGA K. M. Khare Senior Scientist kmkhare@rrcat.gov.in Raja Ramanna Centre for Advanced Technology Department of Atomic Energy Government of India Indore - INDIA ICTP, Trieste November 21, 2013

Introduction We are Involved: Our centre is know for LIGHT sources LASERS SYNCHROTRON RADIATION SOURCE We are Involved: Basic Research Design and Development Applications November 21, 2013 RRCAT, Indore - INDIA

Laser Instrumentation Various laser based instruments has been developed such as Uranium analyzer using N2 laser. Land leveler, Surgical CO2 laser system Density measurement system Micrometer Laser Marker Laser fluorescence spectroscopy of tissues etc. November 21, 2013 RRCAT, Indore - INDIA

Objective Basic concept of embedded systems Importance of FPGA based embedded systems Embedded system design flow and available tools Example design of FPGA based embedded system Physical Aspect of Hardware Design November 21, 2013 RRCAT, Indore - INDIA 4

Embedded Systems Embedded system is nearly any computing system Single function Typically designed to perform a predefined function Tightly constrained Tuned for low cost Single-to-fewer components Performs functions fast enough Consumes minimum power Reactive and real-time Must continually monitor the desired environment and react to changes Hardware and software coexistence November 21, 2013 RRCAT, Indore - INDIA

Embedded Systems… Examples: Mobile phone systems Customer handsets and base stations Automotive applications Braking systems, traction control, airbag release systems, and cruise-control applications Aerospace applications Flight-control systems, engine controllers, auto-piloting systems, and passenger in-flight entertainment systems Defense systems Radar systems, fighter aircraft flight-control systems, radio systems, and missile guidance systems November 21, 2013 RRCAT, Indore - INDIA

Embedded Systems… Almost every embedded systems design includes Logic circuit design Processor-based hardware development Memory Other input output peripherals Interface In a single or few chips solution. November 21, 2013 RRCAT, Indore - INDIA

Integration in Embedded System Design Embedded Software Tools CPU Logic + Memory + IP + Processors Embedded Software Tool Tools CPU Logic Design Tools FPGA + Memory + IP + High Speed IO Integration of Functions Logic Design Tools FPGA Programmable systems usher in a new era of system design integration possibilities I/O Logic Design Tools Memory Time Curtsey: Xilinx Inc. November 21, 2013 RRCAT, Indore - INDIA

Embedded System Design… FABRIC Highly configurable Fast Design & Modification Time Avoid Obsolescence FPGAs SoC Software, Hardware Configurble With CPU and GPU like ZYNQ, ARM Support Complex Functions Embedded Systems with Soft Processors

Hardcore verses Soft-core Processors Soft Cores Synthesizable RTL, Gate level, IPs, Technology independent High flexibility, Customizable Hard Cores Transistor layout, predefined block (hardwired ) Process dependent High Performance A hard processor core is one that is implemented as a dedicated, predefined (hardwired ) block. Ex. PowerPC A soft processor is an Intellectual Property (IP) core that is implemented using the logic primitives of the FPGA. A Soft core processor can be customized for a given application and synthesized for an ASIC or FPGA target

Advantages of Softcore Processors Configurability to trade between price and performance, Faster time to market, Easy integration with the FPGA fabric, Avoids obsolesces. November 21, 2013 RRCAT, Indore - INDIA

Softcores Processors… Different soft processor available from different FPGA manufacturers. Xilinx : Picoblaze and Microblaze Altera : Nios-II Actel : Cortex-M3(From ARM) Lattice : Lattice Micro32(open-source) ARM : Cortex-M3(open-source) November 21, 2013 RRCAT, Indore - INDIA

FPGA based Embedded Design Embedded design in an FPGA consists of the following: Develop FPGA hardware design Customization of soft core processors and Custom IPs Create the software application Software routines Interrupt service routines etc November 21, 2013 RRCAT, Indore - INDIA

MicroBlazeTM Processor Based- Embedded System Design I-Cache BRAM Local Memory Bus Flexible Soft IP MicroBlaze 32-Bit RISC Core BRAM Configurable Sizes D-Cache BRAM Fast Simplex Link PLB OPB Arbiter Arbiter Bus Bridge Processor Local Bus On-Chip Peripheral Bus 0,1….15 Custom Functions Custom Functions On-Chip Peripheral 10/100 E-Net Memory Controller UART GPIO CacheLink Curtsey: Xilinx Inc. Off-Chip Memory SDRAM FLASH/SRAM This is a v7.1 architecture. Versions 6.0 or earlier do not support PLB bus off the processor. Instead they have OPB bus November 21, 2013 RRCAT, Indore - INDIA

Partitioning the design Criteria for partitioning into hardware and software components - Picoseconds and nanosecond logic To be implemented in hardware(fabric) - Microsecond logic Can be implemented in hardware or software - Millisecond logic Such as communication with slower peripherals can be mapped to software November 21, 2013 RRCAT, Indore - INDIA

Xilinx Embedded Development Kit (EDK) Embedded Development Kit is the Xilinx software for Designing complete embedded programmable systems. Tools for customization and integration of soft processor cores. Tools for integration of both hardware and software components of an embedded system. November 21, 2013 RRCAT, Indore - INDIA

Xilinx Platform Studio (XPS) Access project files Select cores from the IP catalog Develop software applications Connect the hardware system View a block diagram of the system November 21, 2013 RRCAT, Indore - INDIA

Adding IP and Bus Connection Add IP cores to an existing project, select the IP Catalog tab in XPS Select a core and drop it in the system view or double-click on it to add Select a bus instance to which it need to connect November 21, 2013 RRCAT, Indore - INDIA

Created Hardware: Block Diagram Block diagram of created hardware shows the interconnection between the selected peripherals and processor In also shows the input and out ports of the system November 21, 2013 RRCAT, Indore - INDIA

XPS Functions Platform management Project management Tool flow settings Software platform settings Tool invocation Debug and simulation Project management Creation of MHS or MSS file Xilinx Microprocessor Project (XMP) file Software application Management Hardware Design XPS HW/SW Simulation Curtsey: Xilinx Inc Software Design HW/SW Debug November 21, 2013 RRCAT, Indore - INDIA

Library Generation Flow Then Library Generator (LibGen) utility generates the necessary libraries, drivers and user project directories for the embedded software processors The LibGen takes Microprocessors Software Specification(MSS ) file as input and produces an archive of object files libc.a, libxil.a and libm.a The MSS file, generated by XPS, defines the defines the drivers associated with peripherals, standard input/output devices, interrupt handler routines and other related software features November 21, 2013 RRCAT, Indore - INDIA

SDK Application Development Flow Create software App Project Add sources + Edit Compile + Link Generate Hardware Platform Done? Import ELF file, Download to board Debug / Profile Platform Studio SDK Generate Software libraries, drivers Platform Studio Yes Curtsey: Xilinx Inc Libraries can be generate/updated from SDK November 21, 2013 RRCAT, Indore - INDIA

Merging Hardware and Software Flows Final download.bit file generated from the input files system_bd.bmm, system.bit and executable.elf files, which contains information regarding both the software and the hardware part of the design This invokes the data2MEM tool, which initializes the instruction memory of the processor This is the stage where hardware and software flows come together. Download the generated bitstream file November 21, 2013 RRCAT, Indore - INDIA

Example Design of Embedded System Designed system consists of softcore processor Custom IP for multi axis motor controllers, Encoder Interface. UART and general purpose I/Os Peripheral interface. Application Software for soft-core processor. XILINX FPGA XC3S500AN-4I TQ144 MULTI AXIS MOTOR DRIVERS CLK & RST POWER SUPPLY UART ENCODER INTERFACE November 21, 2013 RRCAT, Indore - INDIA XILINX FPGA XC3S50AN-4C TQ144 STEPPER MOTOR DRIVERS CLK & RST POWER SUPPLY UART ENCOD ER INTERF ACE

Development Board for Embedded Applications Custom Board Curtsey : Xilinx Development Board November 21, 2013 RRCAT, Indore - INDIA

Hardware Design Why customization required? How to customize FPGA boards? Practical Example Advantages of customization Some Tricks and Techniques Tools Available Overview November 21, 2013 RRCAT, Indore - INDIA 26

Why Customization Required? Customization technique used very widely: Fulfill specific requirements. Gain the competitive edge. Save time, money and space. Minimize board complexity. Reduce unused components Make it flexible. November 21, 2013 RRCAT, Indore - INDIA 27

How to customize FPGA Boards? Specify your product features Selection of FPGA Incorporating essential circuits Specify the constraints Implementation techniques Testing and debugging Transcript: November 21, 2013 RRCAT, Indore - INDIA 28

Specification of Product Features How to customize FPGA Boards? (cont..) Specification of Product Features UART/USB/Ethernet DISPLAY(LCD/OLED/Touch Screen/Matrix) Key Board/Buttons External Memory Interface ADCs/DACs Indication and Debug port Transcript: November 21, 2013 RRCAT, Indore - INDIA 29

How to customize FPGA Boards? (cont..) Selection of FPGA An appropriate FPGA for specific application is determined by the following features. Density No. of I/Os Package Speed Grade Vendor Series Part no. November 21, 2013 RRCAT, Indore - INDIA 30

Incorporating Essential Circuits How to customize FPGA Boards? (cont..) Incorporating Essential Circuits Power Circuit Clock Circuit Reset Circuit In system programming circuit (JTAG) Configuration Memory Interface Debug Port November 21, 2013 RRCAT, Indore - INDIA 31

How to customize FPGA Boards? (cont..) Power Circuit Design While designing power supply to fulfill the power requirements of FPGA and other peripherals on board, we keep following points in mind. Voltage and current requirements Voltage tolerances Power distribution Sequencing Monotonicity Power up ramp time. Transcript: November 21, 2013 RRCAT, Indore - INDIA 32

How to customize FPGA Boards? (cont..) Power Circuit Design …. Voltage Requirement: Most of FPGAs require multiple power supply. Internal core logic power supply (VCCINT). Input Output drivers power supply (VCCO). Auxiliary power supply (VCCAUX). Current Requirement: Depends on Logic utilization, Frequency of operation Other on board peripherals. Hence estimate power requirement before designing the power circuit. November 21, 2013 RRCAT, Indore - INDIA 33

How to customize FPGA Boards? (cont..) Power Circuit Design…. Voltages Tolerances: Check the voltage tolerances of FPGA and peripherals. Generally voltage tolerances of FPGA in the order of 5% to 10% of voltage requirement. Power Distribution: Power distribution should be such that to maintain power around the device during peaks and drops. Power Sequencing: It is good design practice to switch on power in sequence (core and then I/O) to avoid initial power on surges. Most of the FPGAs do not require power sequencing, Monotonicity: Ramp the voltages without any dips in the power ramp up to respective threshold. Power up Ramp Time: It should neither be fast nor be slow. Ex. Minimum ramp time is 200 micro second and maximum is 100 mili seconds. Transcript: November 21, 2013 RRCAT, Indore - INDIA 34

Switching vs. Linear Regulators How to customize FPGA Boards? (cont..) Switching vs. Linear Regulators Linear Regulators Advantages Good for low power applications Few external components Low output noise Fast response to output disturbances Disadvantages Lower efficiency Higher power consumption Limited range for Vin/Vout Switching Regulators Advantages Higher efficiency Lower power consumption Large Vin/Vout range, largely independent of load current Ability to step-up and step-down. Disadvantages More external components if modules are not used November 21, 2013 RRCAT, Indore - INDIA 35

How to customize FPGA Boards? (cont..) Power Circuit Design…. Example: Power supply design for Spartan-II FPGA November 21, 2013 RRCAT, Indore - INDIA

Decoupling Capacitors How to customize FPGA Boards? (cont..) Decoupling Capacitors Power and Ground voltages are affected by logic transition and may cause the operational issues. The external package pins should be properly decoupled, which provides local energy storage, for stable power supply and ground. Proper decoupling improves the overall signal integrity . Decoupling capacitors should place as close as possible. Smaller the capacitor package, lower the Inductance and hence recommended. November 21, 2013 RRCAT, Indore - INDIA 37

Decoupling Capacitors… How to customize FPGA Boards? (cont..) Decoupling Capacitors… Curtsey : Xilinx November 21, 2013 RRCAT, Indore - INDIA 38

How to customize FPGA Boards? (cont..) Clock Circuit External clock should be connected to global clock inputs (GCLK) pin of the FPGA. GCLK pins are low-capacitance, low-skew interconnect lines well-suited to carrying high-frequency signals throughout the FPGA. Fig.: Clock Circuit using oscillator November 21, 2013 RRCAT, Indore - INDIA 39

How to customize FPGA Boards? (cont..) Reset Circuit Most of the FPGA has internal power on reset. It’s good design practice to provide external power on reset RST should be connected to global Set/Reset (GSR) pin of the FPGA. Transcript: Fig.: Reset Circuit November 21, 2013 RRCAT, Indore - INDIA 40

How to customize FPGA Boards? (cont..) In System Programming (ISP) Dedicated JTAG port is available in all FPGA. Every package has four dedicated JTAG pins. Namely, TDI, TMS, TCK (Input) and TDO (Output). Internal charge pumps create high voltages for programming the memories powered by VCCAUX. The signal integrity of the TCK signal is critical because all JTAG operations are synchronous to the TCK clock. The JTAG interface is easily cascaded to any number of FPGAs by connecting the TDO output of one device to the TDI input of the next device in the chain. The TDO output of the last device in the chain loops back to the port connector. November 21, 2013 RRCAT, Indore - INDIA

How to customize FPGA Boards? (cont..) In System Programming (ISP) Curtsey : Xilinx November 21, 2013 RRCAT, Indore - INDIA

How to customize FPGA Boards? (cont..) In System Programming (ISP) Curtsey : Xilinx Mode configuration Pin: M0. M1,M2. November 21, 2013 RRCAT, Indore - INDIA

How to customize FPGA Boards? (cont..) Debug & Testing Port Wherever it is necessary, implement the hardware debugging and testing point must tap and brought out of circuit. Ex. Power supply, clk, Rx and Tx etc Some of I/O of the FPGA may also be connected through switch/LED and brought out for debugging of hardware. This port may also be used for implementation debugging. November 21, 2013 RRCAT, Indore - INDIA

Practical Example: FPGA Based Motor Controller Power Supply Reset & Clock RS-232/ RS 485 JTAG & SPROM LOGIC AND INTERFACE DECODER DPRAM PWM DIR / SPEED FPGA CUSTOM BOARD with FPGA Transcript: Curtsey : Actel November 21, 2013 RRCAT, Indore - INDIA 45

Schematic Design: For Motor Controller Transcript: November 21, 2013 RRCAT, Indore - INDIA 46

Tools Available and many more… Cadence PCB design Tools: OrCAD PCB design tools Allegro PCB design tools OrCAD/Allegro FPGA system planner ModelSim PCB design Tools PADs Zuken PCB design tools and many more… November 21, 2013 RRCAT, Indore - INDIA

PCB Designing Tools… Almost all available PCB design tools are bundle of following modules used for different stages of the PCB design. Schematic design tool PCB design tool Foot print editor Thermal analysis tools EMI analysis tools Verification Tools Simulation tools November 21, 2013 RRCAT, Indore - INDIA

OrCAD FPGA System Planner… Curtsey : Cadence Fig.: The OrCAD FPGA System Planner Methodology November 21, 2013 RRCAT, Indore - INDIA

PCB Design for Motor Controller After Routing TOP LAYER November 21, 2013 RRCAT, Indore - INDIA

Embedded Controller FPGA: For sequential control module and digital PID etc FPGA: For peripheral Interface and other digital I/Os etc November 21, 2013 RRCAT, Indore - INDIA

Thank You