Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors

Size: px
Start display at page:

Download "Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors"

Transcription

1 Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors Paul Ekas, DSP Engineering, Altera Corp. Tel: (408) , Fax: (408) Altera Corp., 101 Innovation Dr., San Jose, Calif Overview Across a wide spectrum of applications, the growth in signal processing algorithm complexity is exceeding the processing capabilities of stand-alone digital signal processors. In some of these applications, software developers have used hardware co-processors to off-load a variety of algorithms including Viterbi decoding, Turbo encoding/decoding, butterfly processing, discrete cosine transforms (DCT), and 1D and 2D filters. In a few cases, DSP processors include on-chip hardware coprocessors where the end application supports the expense of designing a market specific solution. In 3 rd generation wireless systems, the addition of the Turbo forward error correction algorithm had a huge impact on the amount of processing required per user data channel in a channel element card. Texas Instruments successfully utilized coprocessors for Turbo and Viterbi processing to extend their leadership position in 3 rd generation wireless infrastructure equipment. Unfortunately, the high cost of implemention makes the availability of DSPs with end-marketspecific coprocessors unattainable. In these applications where no co-processors are available, Altera has developed design tools and methodologies that enable companies to develop their own coprocessors using Altera s Stratix and Cyclone devices that easily interface with a wide range of DSP and general purpose processors (GPP) providing increased system performance and lower system costs. This paper will discuss the technical development and integration of FPGA co-processors including: Profiling applications to identify high-load software algorithms suitable for offloading to co-processors Development of custom co-processor blocks Viable coprocessor system architectures Processor interface selection Hardware and software system integration FPGA co-processor development systems Cost and performance improvement attainable with FPGA co-processors In this article, a design example that implements an FPGA co-processor for a TI DSP to increase the performance and lower the cost of an example modem system will be used to highlight the methodology and application of FPGA co-processors. This article assumes the target system is initially implemented in software with no foresight into an optimal hardware/software partitioning. CF

2 Identifying Software that can be Off-loaded to a Coprocessor Often times in DSP processing applications, 80% of the MIPS required are consumed by 20% of the program code. This 20% of the program code often requires time consuming, error prone, and difficult to maintain assembly coding to increase overall system performance. This code also becomes far less portable than the remaining 80% of the code that is focused on initialization and system execution control. At the same time, the other 80% of the code reflects the majority of the system complexity. This creates a double challenge for DSP software engineers, reducing the processing load in 20% of the software and managing the complexity of the remaining 80% of the code. FPGA co-processing is well suited to addressing that 80% processing load caused by 20% of the algorithm code. The challenge is to identify what should be offloaded from the DSP to a coprocessor. The key to identifying what should be offloaded from a DSP to a co-processor are the profiling tools used by the software developer. Profiling tools parse the program code and identify percentage of processing consumed by each function and sub-routine. Every software development system includes tools to profile the program code and identify which functions consume the majority of the processing MIPS. With code profiling, the functions that consume the majority of the MIPS can be identified and the option to be accelerated by a HARDWARE co-processor can be made. Not all functions are appropriate to off-load to a co-processor. First of all, the goal is to identify a group of algorithms which together occupies more than half of your processing load. Second, the identified group of algorithms should be clustered together so that once data has been sent to the co-processor there is no processor dependency in the calculation until the processing is complete and the result can be returned to the DSP. A third criteria is that the processing is straightforward to implement in hardware. The simplest definition to describe this criterion is that the algorithm is heavily looped thus implying a very repetitive computational structure. The example system described in this article relies on a TI processor, although the principles applied are applicable to all DSP processors. The TI development tools are encapsulated in a product called Code Composer Studio (CCS). CCS includes a debugger, compiler, linker, assembler, code profiler and other assorted capabilities to enable the software developer to fully describe and develop their TI DSP program code in one environment. TI development systems can be purchased that include a TI development board, CCS, and application code examples. The example system discussed in this article utilizes one of the application examples, modem.c, that come with the TI development kits, specifically the TI6x series of development systems. Modem.c implements a QAM modem implemented entirely in software. When modem.c is compiled and executed on the Tic6711 development system, it takes 177,000 instruction cycles to execute. Next, CCS was used to profile the Modem.c example to identify what could be off-loaded to an FPGA Co-processor. The analysis identified that the majority of the processing was required by the modem transmitter algorithm (modem tx). The modem tx consumed 96.5% of the processing

3 MIPS. The modem tx is also very suitable for off-loading to a single FPGA co-processor that implements the modem tx dataflow. The contents of the modem tx include a shaping filter (82% MIPS), modulation (8% MIPS), sine lookup (2.5% MIPS) and the cosine lookup (3.5% MIPS). Figure 1: TI Modem.c Structure and Code Profile Results FPGA Coprocessor Block Development Co-processors as defined by Altera include at least a data interface and a control interface. The control interface(s) is used by the CPU to setup and monitor the operation of the co-processors. The data interface(s) can communicate to memories, peripherals, or other co-processors both as sources and sinks of data. To maximize system performance, the data interfaces are defined to include integrated direct memory access (DMA) controllers for each data interface. These DMA controllers are programmed by the CPU through the control interface of the co-processor. In general, the operation of a co-processor is setup by the CPU and is then autonomously executed by the co-processor itself. Many powerful capabilities are inherent in this architecture that yield extremely high performance systems. The first of these is that the co-processors can be setup to automatically source and sink data without dynamic interaction with the controlling CPU. This capability is

4 enabled by flexibility in how the DMAs can be programmed along with architectural selections made as part of the FPGA co-processing system definition. The DMAs can be controlled by a linked list of source or destination addresses that automatically enable the co-processors to continuously execute without CPU interaction. These source and destination locations can be memories that the CPU or some other co-processors source or sink data to. The source and destination locations could also be peripherals such as UARTs, A/Ds, or D/As. The overall architecture flexibility of FPGA co-processors enable a system definition the can be relatively tightly coupled to the master CPU or a loosely coupled data processing plane that has only minimal setup and status interaction with the master CPU. This wide variation in capabilities makes FPGA co-processors suitable for dealing with systems with a wide range of performance and flexibility requirements. There are several mechanisms available to build co-processors. The most powerful tool for building them is Altera s DSP Builder. DSP Builder is an add-on tool to the Mathworks MATLAB and Simulink toolset. DSP Builder provides an integrated design environment for dataflow system design, verification, and implementation for Altera FPGAs enabling designers to assemble parameterized building blocks into complex data flow processing systems. The building blocks of DSP Builder include modular RTL building blocks and optional parameterized complex IP building blocks. One of the features of DSP Builder is the ability package these dataflow systems into co-processing blocks. This enables the development of simple or complex co-processors implementing standard-specific or proprietary algorithm processing. The parameterized complex IP building blocks in DSP Builder are Altera s MegaCore components that include finite-impulse response (FIR) and infinite-impulse response (IIR) filters, fast-fourier transforms (FFTs), Forward Error Correction (FEC) cores, numerically-controlled oscillators (NCOs), and other components. These parameterized IP blocks can be configured first algorithmically then architecturally. The algorithm setup sets the type of filter, the coefficients, the number of coefficient and data bits, and many other algorithmic oriented parameters. The architectural configuration controls the implementation architecture to meet throughput and resource mapping constraints. In many cases, a MegaCore may reflect the entire functionality required to be implemented as a co-processor. In these cases, the MegaCores are capable of directly implementing a co-processor without requiring DSP Builder interaction. The co-processing block identified in the modem.c example requires an integration of a FIR filter, a modulator, and two look-up tables. In this case, DSP Builder has been used to assemble the design from the base library of DSP Builder and the FIR MegaCore.

5 Figure 2: Modem Co-Processor Captured in DSP Builder Processor Interface Selection When an FPGA co-processor is connected to a separate DSP or GPP, there must be an interface between the DSP and the FPGA co-processing sub-system. This interface is dependent on the interface specifications of the target processor. Most processors support a variety of standard and proprietary interfaces. The standard interfaces today and in the future include PCI (and its permutations), RapidIO, Hypertransport, and others. There are also many proprietary interfaces including EMIF (TI), MPX (Motorola), Link-Port (ADI) and others. For any processor that links to an FPGA co-processing system, an FPGA interface IP block must be available or developed to support that bus interface. The interface selection between the processor and the FPGA will be driven by the application characteristics as well as the available interfaces on the processor. For example, the TI c6x DSPs support several different interfaces. The alternative interfaces include the 16/32/64 bit extended memory interface (EMIF), the 16/32 bit host-port interface (HPI), 32 bit/33mhz PCI interface, and the multi-channel buffered serial ports (McBSPs). The configuration of these interfaces is different across the available devices and in some cases the specific features of the interface are device specific.

6 For the example system, we chose to use the EMIF interface because it is common to all the c6x devices (with some minor variations in features and number of bits) and provides high performance ( >=100MHz). EMIF has a variety of permutations including support for 16, 32, or 64 bit transfers and asynchronous and synchronous signaling. For this example, we chose asynchronous signaling on the 32 bit interface. FPGA Coprocessor Architecture When the DSP or GPP processor communicates with the co-processor, the efficiency of data movement often becomes the dominant factor in the overall system performance. Today, high performance DSP processors rely on DMA controllers to minimize CPU overhead when communicating outside of the CPU core and its memory cache. Typically, the CPU core will access cache memory as the primary memory in the core DSP algorithms. The DMA engine is used to move data into and out of the cache memory. When interfacing to a co-processor, whether it is on-chip or on an adjacent FPGA, the coprocessor must be interfaced to the cache memory via the DMA controller, thus off-loading the CPU core to continue processing other tasks. On the FPGA side, it is also advantageous to include a memory buffer to act as a local cache to the co-processors. In this way, the DMA control on the CPU side is simply moving data from memory to memory and letter the CPU and the co-processors maintain a stronger independence. The modem example utilizes the FPGA co-processor defined in DSP Builder.

7 Figure 3: TI EMIF Interface to Modem FPGA Co-processor Hardware/Software System Integration Co-processors, by their very nature, change the software implementation from an algorithmic description to a data passing and function control description. The new function call initializes the co-processor and controls the flow of data to and from the co-processor. This interaction requires that hardware specific information be made available to the software engineer that includes addressing information for controlling the co-processor as well as source and destination address information. It also requires a description of the control structure of the coprocessor. These capabilities can be pre-configured as software drivers that the software developer calls to control the FPGA co-processing dataflow. SOPC Builder is a tool from Altera that can be used to integrate FPGA co-processing blocks into sub-systems that directly interface to standard processors. SOPC Builder can support a variety of IP types including co-processors. Associated with each IP block is a predefined set of software routines used to configure and control that IP block. Within SOPC Builder, users identify which blocks to assemble and how they are parameterized and interconnected. SOPC Builder then automatically generates the hardware architecture as well as generating a software driver file called Excalibur.h. Excalibur.h includes all the software interfaces for the blocks in

8 the system and automatically dereferences them to the register and memory map defined by the users architectural selections. Figure 4: SOPC Builder Hardware and Software Integration Flow SOPC Builder can include co-processors with both a parameterized hardware architecture definition and a full set of software routines to configure, communicate, and generate status information. When SOPC Builder is used to assemble a co-processing system, not only is the hardware architecture generated, but the software routines are assembled into the Excalibur.h. SOPC Builder can support external processors by implementing the targeted processor interface logic as an IP core that interfaces into the SOPC Builder Avalon bus 1. Examples of this can include all the interfaces discussed above. The modem example system utilizes SOPC Builder to integrate the DSP Builder transmit dataflow co-processor with the TI EMIF interface. When SOPC Builder executes, it creates the hardware for the Altera FPGA based coprocessor and the Excalibur.h software to control the coprocessor from the attached CPU. The Excalibur.h file includes the address for all registers and memories inside the SOPC Builder system as well as associated software APIs for IP blocks that 1 The Avalon bus is a simple circuit switched communication architecture supported by all Altera and 3 rd party IP that supports SOPC Builer.

9 include APIs. This correct-by-construction file accelerates system integration by months by eliminating error prone and tedius manual development of the low-level software drivers. In addition, once blocks are integrated into SOPC Builder, they become easily reusable. The development system enabling this kind of integration must have both a processor and an FPGA adjacent to each other with the appropriate connections such that the FPGA can be integrated with the available processor busses. These development systems can be integrated onto a single board or be an integration of two or more development boards each hosting a subset of the complete system components. For this example, Altera utilized our own DSP Development Kit, Stratix Edition which includes a standard TI daughtercard connector allowing a direct connection to most of the TI development systems including the standard kits for the c6x family of processors. Conclusion The modem.c example required 155,000 cycles to compute an iteration of the modem functionality. When the FPGA co-processor was added to the system architecture, the total TI clock cycles dropped to 455 clock cycles. The modem co-processor consumes 6209 LEs, or about half of Altera s low-cost Cyclone EP1C12 device. Offloading the modem to a coprocessor enables an increase in channels, functionality, performance, or a significant cost reduction through the use of a less expensive variant of the TI processor. It is clear that FPGA co-processing provides a powerful approach to increasing system performance and reducing costs without changing the software development environment or the DSP platform except for the addition of a low-cost adjunct FPGA. In applications that are forced to leading edge DSPs for performance reasons, this approach can reduce costs by ten times. This approach also provides a handy way to future proof a system when future performance requirements may increase the processing performance demanded on a board. This can be done by designing an empty FPGA socket onto the production boards that is not utilized until future evolutions of the system demand increase processing performance. Through straightforward software revisions and the inclusion of one or more FPGA co-processors, the overall system performance can be dramatically increased with minimal component cost increases to the system.

Implementing FFT in an FPGA Co-Processor

Implementing FFT in an FPGA Co-Processor Implementing FFT in an FPGA Co-Processor Sheac Yee Lim Altera Corporation 101 Innovation Drive San Jose, CA 95134 (408) 544-7000 sylim@altera.com Andrew Crosland Altera Europe Holmers Farm Way High Wycombe,

More information

FPGAs Provide Reconfigurable DSP Solutions

FPGAs Provide Reconfigurable DSP Solutions FPGAs Provide Reconfigurable DSP Solutions Razak Mohammedali Product Marketing Engineer Altera Corporation DSP processors are widely used for implementing many DSP applications. Although DSP processors

More information

Turbo Encoder Co-processor Reference Design

Turbo Encoder Co-processor Reference Design Turbo Encoder Co-processor Reference Design AN-317-1.2 Application Note Introduction The turbo encoder co-processor reference design is for implemention in an Stratix DSP development board that is connected

More information

Cyclone II FFT Co-Processor Reference Design

Cyclone II FFT Co-Processor Reference Design Cyclone II FFT Co-Processor Reference Design May 2005 ver. 1.0 Application Note 375 Introduction f The fast Fourier transform (FFT) co-processor reference design demonstrates the use of an Altera FPGA

More information

System-on-a-Programmable-Chip (SOPC) Development Board

System-on-a-Programmable-Chip (SOPC) Development Board System-on-a-Programmable-Chip (SOPC) Development Board Solution Brief 47 March 2000, ver. 1 Target Applications: Embedded microprocessor-based solutions Family: APEX TM 20K Ordering Code: SOPC-BOARD/A4E

More information

USING C-TO-HARDWARE ACCELERATION IN FPGAS FOR WAVEFORM BASEBAND PROCESSING

USING C-TO-HARDWARE ACCELERATION IN FPGAS FOR WAVEFORM BASEBAND PROCESSING USING C-TO-HARDWARE ACCELERATION IN FPGAS FOR WAVEFORM BASEBAND PROCESSING David Lau (Altera Corporation, San Jose, CA, dlau@alteracom) Jarrod Blackburn, (Altera Corporation, San Jose, CA, jblackbu@alteracom)

More information

FFT Co-Processor Reference Design

FFT Co-Processor Reference Design FFT Co-Processor Reference Design October 2004 ver. 1.0 Application Note 363 Introduction f The Fast Fourier Transform (FFT) co-processor reference design demonstrates the use of an Altera FPGA as a high-performance

More information

Implementing Video and Image Processing Designs Using FPGAs. Click to add subtitle

Implementing Video and Image Processing Designs Using FPGAs. Click to add subtitle Implementing Video and Image Processing Designs Using FPGAs Click to add subtitle Agenda Key trends in video and image processing Video and Image Processing Suite Model-based design for video processing

More information

DSP Builder Handbook Volume 1: Introduction to DSP Builder

DSP Builder Handbook Volume 1: Introduction to DSP Builder DSP Builder Handbook Volume 1: Introduction to DSP Builder DSP Builder Handbook 101 Innovation Drive San Jose, CA 95134 www.altera.com HB_DSPB_INTRO-5.1 Document last updated for Altera Complete Design

More information

Embedded Computing Platform. Architecture and Instruction Set

Embedded Computing Platform. Architecture and Instruction Set Embedded Computing Platform Microprocessor: Architecture and Instruction Set Ingo Sander ingo@kth.se Microprocessor A central part of the embedded platform A platform is the basic hardware and software

More information

Multimedia Decoder Using the Nios II Processor

Multimedia Decoder Using the Nios II Processor Multimedia Decoder Using the Nios II Processor Third Prize Multimedia Decoder Using the Nios II Processor Institution: Participants: Instructor: Indian Institute of Science Mythri Alle, Naresh K. V., Svatantra

More information

DDR and DDR2 SDRAM Controller Compiler User Guide

DDR and DDR2 SDRAM Controller Compiler User Guide DDR and DDR2 SDRAM Controller Compiler User Guide 101 Innovation Drive San Jose, CA 95134 www.altera.com Operations Part Number Compiler Version: 8.1 Document Date: November 2008 Copyright 2008 Altera

More information

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim Ray Duran Staff Design Specialist FAE, Altera Corporation 408-544-7937

More information

Classification of Semiconductor LSI

Classification of Semiconductor LSI Classification of Semiconductor LSI 1. Logic LSI: ASIC: Application Specific LSI (you have to develop. HIGH COST!) For only mass production. ASSP: Application Specific Standard Product (you can buy. Low

More information

FFT MegaCore Function User Guide

FFT MegaCore Function User Guide FFT MegaCore Function User Guide 101 Innovation Drive San Jose, CA 95134 www.altera.com MegaCore Version: 11.0 Document Date: May 2011 Copyright 2011 Altera Corporation. All rights reserved. Altera, The

More information

DSP Builder Handbook Volume 1: Introduction to DSP Builder

DSP Builder Handbook Volume 1: Introduction to DSP Builder DSP Builder Handbook Volume 1: Introduction to DSP Builder DSP Builder Handbook 101 Innovation Drive San Jose, CA 95134 www.altera.com HB_DSPB_INTRO-4.0 Document last updated for Altera Complete Design

More information

The Nios II Family of Configurable Soft-core Processors

The Nios II Family of Configurable Soft-core Processors The Nios II Family of Configurable Soft-core Processors James Ball August 16, 2005 2005 Altera Corporation Agenda Nios II Introduction Configuring your CPU FPGA vs. ASIC CPU Design Instruction Set Architecture

More information

Designing Embedded Processors in FPGAs

Designing Embedded Processors in FPGAs Designing Embedded Processors in FPGAs 2002 Agenda Industrial Control Systems Concept Implementation Summary & Conclusions Industrial Control Systems Typically Low Volume Many Variations Required High

More information

Digital Signal Processor 2010/1/4

Digital Signal Processor 2010/1/4 Digital Signal Processor 1 Analog to Digital Shift 2 Digital Signal Processing Applications FAX Phone Personal Computer Medical Instruments DVD player Air conditioner (controller) Digital Camera MP3 audio

More information

DSP Co-Processing in FPGAs: Embedding High-Performance, Low-Cost DSP Functions

DSP Co-Processing in FPGAs: Embedding High-Performance, Low-Cost DSP Functions White Paper: Spartan-3 FPGAs WP212 (v1.0) March 18, 2004 DSP Co-Processing in FPGAs: Embedding High-Performance, Low-Cost DSP Functions By: Steve Zack, Signal Processing Engineer Suhel Dhanani, Senior

More information

Embedded Target for TI C6000 DSP 2.0 Release Notes

Embedded Target for TI C6000 DSP 2.0 Release Notes 1 Embedded Target for TI C6000 DSP 2.0 Release Notes New Features................... 1-2 Two Virtual Targets Added.............. 1-2 Added C62x DSP Library............... 1-2 Fixed-Point Code Generation

More information

White Paper Using Cyclone III FPGAs for Emerging Wireless Applications

White Paper Using Cyclone III FPGAs for Emerging Wireless Applications White Paper Introduction Emerging wireless applications such as remote radio heads, pico/femto base stations, WiMAX customer premises equipment (CPE), and software defined radio (SDR) have stringent power

More information

2008/12/23. System Arch 2008 (Fire Tom Wada) 1

2008/12/23. System Arch 2008 (Fire Tom Wada) 1 Digital it Signal Processor System Arch 2008 (Fire Tom Wada) 1 Analog to Digital Shift System Arch 2008 (Fire Tom Wada) 2 Digital Signal Processing Applications FAX Phone Personal Computer Medical Instruments

More information

VICP Signal Processing Library. Further extending the performance and ease of use for VICP enabled devices

VICP Signal Processing Library. Further extending the performance and ease of use for VICP enabled devices Signal Processing Library Further extending the performance and ease of use for enabled devices Why is library effective for customer application? Get to market faster with ready-to-use signal processing

More information

KeyStone C665x Multicore SoC

KeyStone C665x Multicore SoC KeyStone Multicore SoC Architecture KeyStone C6655/57: Device Features C66x C6655: One C66x DSP Core at 1.0 or 1.25 GHz C6657: Two C66x DSP Cores at 0.85, 1.0, or 1.25 GHz Fixed and Floating Point Operations

More information

4K Format Conversion Reference Design

4K Format Conversion Reference Design 4K Format Conversion Reference Design AN-646 Application Note This application note describes a 4K format conversion reference design. 4K resolution is the next major enhancement in video because of the

More information

Energy scalability and the RESUME scalable video codec

Energy scalability and the RESUME scalable video codec Energy scalability and the RESUME scalable video codec Harald Devos, Hendrik Eeckhaut, Mark Christiaens ELIS/PARIS Ghent University pag. 1 Outline Introduction Scalable Video Reconfigurable HW: FPGAs Implementation

More information

With Fixed Point or Floating Point Processors!!

With Fixed Point or Floating Point Processors!! Product Information Sheet High Throughput Digital Signal Processor OVERVIEW With Fixed Point or Floating Point Processors!! Performance Up to 14.4 GIPS or 7.7 GFLOPS Peak Processing Power Continuous Input

More information

Choosing a Processor: Benchmarks and Beyond (S043)

Choosing a Processor: Benchmarks and Beyond (S043) Insight, Analysis, and Advice on Signal Processing Technology Choosing a Processor: Benchmarks and Beyond (S043) Jeff Bier Berkeley Design Technology, Inc. Berkeley, California USA +1 (510) 665-1600 info@bdti.com

More information

Introduction to Megafunctions

Introduction to Megafunctions Introduction to Megafunctions January 1998, ver. 1 Overview With programmable logic device (PLD) densities reaching 250,000 gates, it is now possible to implement entire digital subsystems on a single

More information

systems such as Linux (real time application interface Linux included). The unified 32-

systems such as Linux (real time application interface Linux included). The unified 32- 1.0 INTRODUCTION The TC1130 is a highly integrated controller combining a Memory Management Unit (MMU) and a Floating Point Unit (FPU) on one chip. Thanks to the MMU, this member of the 32-bit TriCoreTM

More information

White Paper Low-Cost FPGA Solution for PCI Express Implementation

White Paper Low-Cost FPGA Solution for PCI Express Implementation White Paper Introduction PCI Express is rapidly establishing itself as the successor to PCI, providing higher performance, increased flexibility, and scalability for next-generation systems, as well as

More information

Cache Justification for Digital Signal Processors

Cache Justification for Digital Signal Processors Cache Justification for Digital Signal Processors by Michael J. Lee December 3, 1999 Cache Justification for Digital Signal Processors By Michael J. Lee Abstract Caches are commonly used on general-purpose

More information

VIII. DSP Processors. Digital Signal Processing 8 December 24, 2009

VIII. DSP Processors. Digital Signal Processing 8 December 24, 2009 Digital Signal Processing 8 December 24, 2009 VIII. DSP Processors 2007 Syllabus: Introduction to programmable DSPs: Multiplier and Multiplier-Accumulator (MAC), Modified bus structures and memory access

More information

Section III. Transport and Communication

Section III. Transport and Communication Section III. Transport and Communication This section describes communication and transport peripherals provided for SOPC Builder systems. This section includes the following chapters: Chapter 16, SPI

More information

ENHANCED TOOLS FOR RISC-V PROCESSOR DEVELOPMENT

ENHANCED TOOLS FOR RISC-V PROCESSOR DEVELOPMENT ENHANCED TOOLS FOR RISC-V PROCESSOR DEVELOPMENT THE FREE AND OPEN RISC INSTRUCTION SET ARCHITECTURE Codasip is the leading provider of RISC-V processor IP Codasip Bk: A portfolio of RISC-V processors Uniquely

More information

Nios II Embedded Design Suite 6.1 Release Notes

Nios II Embedded Design Suite 6.1 Release Notes December 2006, Version 6.1 Release Notes This document lists the release notes for the Nios II Embedded Design Suite (EDS) version 6.1. Table of Contents: New Features & Enhancements...2 Device & Host

More information

Nios Soft Core Embedded Processor

Nios Soft Core Embedded Processor Nios Soft Core Embedded Processor June 2000, ver. 1 Data Sheet Features... Preliminary Information Part of Altera s Excalibur TM embedded processor solutions, the Nios TM soft core embedded processor is

More information

Chapter 7. Hardware Implementation Tools

Chapter 7. Hardware Implementation Tools Hardware Implementation Tools 137 The testing and embedding speech processing algorithm on general purpose PC and dedicated DSP platform require specific hardware implementation tools. Real time digital

More information

Rapid Prototyping System for Teaching Real-Time Digital Signal Processing

Rapid Prototyping System for Teaching Real-Time Digital Signal Processing IEEE TRANSACTIONS ON EDUCATION, VOL. 43, NO. 1, FEBRUARY 2000 19 Rapid Prototyping System for Teaching Real-Time Digital Signal Processing Woon-Seng Gan, Member, IEEE, Yong-Kim Chong, Wilson Gong, and

More information

PCI Express Multi-Channel DMA Interface

PCI Express Multi-Channel DMA Interface 2014.12.15 UG-01160 Subscribe The PCI Express DMA Multi-Channel Controller Example Design provides multi-channel support for the Stratix V Avalon Memory-Mapped (Avalon-MM) DMA for PCI Express IP Core.

More information

RFNoC : RF Network on Chip Martin Braun, Jonathon Pendlum GNU Radio Conference 2015

RFNoC : RF Network on Chip Martin Braun, Jonathon Pendlum GNU Radio Conference 2015 RFNoC : RF Network on Chip Martin Braun, Jonathon Pendlum GNU Radio Conference 2015 Outline Motivation Current situation Goal RFNoC Basic concepts Architecture overview Summary No Demo! See our booth,

More information

An introduction to DSP s. Examples of DSP applications Why a DSP? Characteristics of a DSP Architectures

An introduction to DSP s. Examples of DSP applications Why a DSP? Characteristics of a DSP Architectures An introduction to DSP s Examples of DSP applications Why a DSP? Characteristics of a DSP Architectures DSP example: mobile phone DSP example: mobile phone with video camera DSP: applications Why a DSP?

More information

Low-Cost Serial RapidIO to TI 6482 Digital Signal Processor Interoperability with LatticeECP3

Low-Cost Serial RapidIO to TI 6482 Digital Signal Processor Interoperability with LatticeECP3 October 2010 Introduction Technical Note TN1214 The RapidIO Interconnect Architecture is an industry-standard, packet-based interconnect technology that provides a reliable, high-performance interconnect

More information

Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany

Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany 2013 The MathWorks, Inc. 1 Agenda Model-Based Design of embedded Systems Software Implementation

More information

System-on Solution from Altera and Xilinx

System-on Solution from Altera and Xilinx System-on on-a-programmable-chip Solution from Altera and Xilinx Xun Yang VLSI CAD Lab, Computer Science Department, UCLA FPGAs with Embedded Microprocessors Combination of embedded processors and programmable

More information

Applying the Benefits of Network on a Chip Architecture to FPGA System Design

Applying the Benefits of Network on a Chip Architecture to FPGA System Design white paper Intel FPGA Applying the Benefits of on a Chip Architecture to FPGA System Design Authors Kent Orthner Senior Manager, Software and IP Intel Corporation Table of Contents Abstract...1 Introduction...1

More information

Design of Embedded Hardware and Firmware

Design of Embedded Hardware and Firmware Design of Embedded Hardware and Firmware Introduction on "System On Programmable Chip" NIOS II Avalon Bus - DMA Andres Upegui Laboratoire de Systèmes Numériques hepia/hes-so Geneva, Switzerland Embedded

More information

Exercise 1 In this exercise you will review the DSSS modem design using the Quartus II software.

Exercise 1 In this exercise you will review the DSSS modem design using the Quartus II software. White Paper DSSS Modem Lab Background The direct sequence spread spectrum (DSSS) digital modem reference design is a hardware design that has been optimized for the Altera APEX DSP development board (starter

More information

The Lekha 3GPP LTE Turbo Decoder IP Core meets 3GPP LTE specification 3GPP TS V Release 10[1].

The Lekha 3GPP LTE Turbo Decoder IP Core meets 3GPP LTE specification 3GPP TS V Release 10[1]. Lekha IP Core: LW RI 1002 3GPP LTE Turbo Decoder IP Core V1.0 The Lekha 3GPP LTE Turbo Decoder IP Core meets 3GPP LTE specification 3GPP TS 36.212 V 10.5.0 Release 10[1]. Introduction The Lekha IP 3GPP

More information

Field Programmable Gate Array (FPGA) Devices

Field Programmable Gate Array (FPGA) Devices Field Programmable Gate Array (FPGA) Devices 1 Contents Altera FPGAs and CPLDs CPLDs FPGAs with embedded processors ACEX FPGAs Cyclone I,II FPGAs APEX FPGAs Stratix FPGAs Stratix II,III FPGAs Xilinx FPGAs

More information

MAX 10 FPGA Device Overview

MAX 10 FPGA Device Overview 2014.09.22 M10-OVERVIEW Subscribe MAX 10 devices are the industry s first single chip, non-volatile programmable logic devices (PLDs) to integrate the optimal set of system components. The following lists

More information

Using FPGAs In Automotive Radar Sensors

Using FPGAs In Automotive Radar Sensors Using FPGAs In Automotive Radar Sensors Georg Hanak, Product FAE Altera GmbH Phone: +49 (89) 321825 0 / Fax: +49 (89) 321825 79 / ghanak@altera.com Freisinger Strasse 3, 85716 Unterschleissheim, Germany

More information

Software Defined Modem A commercial platform for wireless handsets

Software Defined Modem A commercial platform for wireless handsets Software Defined Modem A commercial platform for wireless handsets Charles F Sturman VP Marketing June 22 nd ~ 24 th Brussels charles.stuman@cognovo.com www.cognovo.com Agenda SDM Separating hardware from

More information

System Debugging Tools Overview

System Debugging Tools Overview 9 QII53027 Subscribe About Altera System Debugging Tools The Altera system debugging tools help you verify your FPGA designs. As your product requirements continue to increase in complexity, the time you

More information

KeyStone C66x Multicore SoC Overview. Dec, 2011

KeyStone C66x Multicore SoC Overview. Dec, 2011 KeyStone C66x Multicore SoC Overview Dec, 011 Outline Multicore Challenge KeyStone Architecture Reminder About KeyStone Solution Challenge Before KeyStone Multicore performance degradation Lack of efficient

More information

General Purpose Signal Processors

General Purpose Signal Processors General Purpose Signal Processors First announced in 1978 (AMD) for peripheral computation such as in printers, matured in early 80 s (TMS320 series). General purpose vs. dedicated architectures: Pros:

More information

Reconfigurable VLSI Communication Processor Architectures

Reconfigurable VLSI Communication Processor Architectures Reconfigurable VLSI Communication Processor Architectures Joseph R. Cavallaro Center for Multimedia Communication www.cmc.rice.edu Department of Electrical and Computer Engineering Rice University, Houston

More information

Evaluating the DSP Processor Options (DSP-522)

Evaluating the DSP Processor Options (DSP-522) Insight, Analysis, and Advice on Signal Processing Technology Evaluating the DSP Processor Options (DSP-522) Jeff Bier Berkeley Design Technology, Inc. Berkeley, California USA +1 (510) 665-1600 info@bdti.com

More information

Reducing the cost of FPGA/ASIC Verification with MATLAB and Simulink

Reducing the cost of FPGA/ASIC Verification with MATLAB and Simulink Reducing the cost of FPGA/ASIC Verification with MATLAB and Simulink Graham Reith Industry Manager Communications, Electronics and Semiconductors MathWorks Graham.Reith@mathworks.co.uk 2015 The MathWorks,

More information

Design And Implementation Of USART IP Soft Core Based On DMA Mode

Design And Implementation Of USART IP Soft Core Based On DMA Mode Design And Implementation Of USART IP Soft Core Based On DMA Mode Peddaraju Allam 1 1 M.Tech Student, Dept of ECE, Geethanjali College of Engineering & Technology, Hyderabad, A.P, India. Abstract A Universal

More information

9. Verification and Board Bring-Up

9. Verification and Board Bring-Up 9. Verification and Board Bring-Up July 2011 ED51010-1.3 ED51010-1.3 Introduction This chapter provides an overview of the tools available in the Quartus II software and the Nios II Embedded Design Suite

More information

The extreme Adaptive DSP Solution to Sensor Data Processing

The extreme Adaptive DSP Solution to Sensor Data Processing The extreme Adaptive DSP Solution to Sensor Data Processing Abstract Martin Vorbach PACT XPP Technologies Leo Mirkin Sky Computers, Inc. The new ISR mobile autonomous sensor platforms present a difficult

More information

Intel CoFluent Studio in Digital Imaging

Intel CoFluent Studio in Digital Imaging Intel CoFluent Studio in Digital Imaging Sensata Technologies Use Case Sensata Technologies www.sensatatechnologies.com Formerly Texas Instruments Sensors & Controls, Sensata Technologies is the world

More information

FPGA Co-Processing Architectures for Video Compression

FPGA Co-Processing Architectures for Video Compression Co-Processing Architectures for Compression Overview Alex Soohoo Altera Corporation 101 Innovation Drive San Jose, CA 95054, USA (408) 544-8063 asoohoo@altera.com The push to roll out high definition video

More information

Designing and Prototyping Digital Systems on SoC FPGA The MathWorks, Inc. 1

Designing and Prototyping Digital Systems on SoC FPGA The MathWorks, Inc. 1 Designing and Prototyping Digital Systems on SoC FPGA Hitu Sharma Application Engineer Vinod Thomas Sr. Training Engineer 2015 The MathWorks, Inc. 1 What is an SoC FPGA? A typical SoC consists of- A microcontroller,

More information

All MSEE students are required to take the following two core courses: Linear systems Probability and Random Processes

All MSEE students are required to take the following two core courses: Linear systems Probability and Random Processes MSEE Curriculum All MSEE students are required to take the following two core courses: 3531-571 Linear systems 3531-507 Probability and Random Processes The course requirements for students majoring in

More information

MAX 10 FPGA Device Overview

MAX 10 FPGA Device Overview 2016.05.02 M10-OVERVIEW Subscribe MAX 10 devices are single-chip, non-volatile low-cost programmable logic devices (PLDs) to integrate the optimal set of system components. The highlights of the MAX 10

More information

Edge Detection Using SOPC Builder & DSP Builder Tool Flow

Edge Detection Using SOPC Builder & DSP Builder Tool Flow Edge Detection Using SOPC Builder & DSP Builder Tool Flow May 2005, ver. 1.0 Application Note 377 Introduction Video and image processing applications are typically very computationally intensive. Given

More information

Active Serial Memory Interface

Active Serial Memory Interface Active Serial Memory Interface October 2002, Version 1.0 Data Sheet Introduction Altera Cyclone TM devices can be configured in active serial configuration mode. This mode reads a configuration bitstream

More information

A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications

A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications Abstract: Rapid prototyping has become an important means to verify the performance and feasibility of algorithms and

More information

FPGAs: FAST TRACK TO DSP

FPGAs: FAST TRACK TO DSP FPGAs: FAST TRACK TO DSP Revised February 2009 ABSRACT: Given the prevalence of digital signal processing in a variety of industry segments, several implementation solutions are available depending on

More information

AltiVec Center of Excellence Overview Motorola s Global Software Group (GSG) is pleased to announce the formation of the AltiVec Center of Excellence.

AltiVec Center of Excellence Overview Motorola s Global Software Group (GSG) is pleased to announce the formation of the AltiVec Center of Excellence. AltiVec Center of Excellence Revised 2-4-03 MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other product or service names are the property of their respective

More information

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING 1 DSP applications DSP platforms The synthesis problem Models of computation OUTLINE 2 DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: Time-discrete representation

More information

Chapter II HARDWARE AND SOFTWARE DETAILS

Chapter II HARDWARE AND SOFTWARE DETAILS 27 Chapter II HARDWARE AND SOFTWARE DETAILS 2.1 INTRODUCTION In this Chapter, the details of the hardware and software employed for carrying out the proposed research work, i.e. development of pre-processing

More information

Advanced ALTERA FPGA Design

Advanced ALTERA FPGA Design Advanced ALTERA FPGA Design Course Description This course focuses on advanced FPGA design topics in Quartus software. The first part covers advanced timing closure problems, analysis and solutions. The

More information

4. Hardware Platform: Real-Time Requirements

4. Hardware Platform: Real-Time Requirements 4. Hardware Platform: Real-Time Requirements Contents: 4.1 Evolution of Microprocessor Architecture 4.2 Performance-Increasing Concepts 4.3 Influences on System Architecture 4.4 A Real-Time Hardware Architecture

More information

EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES

EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES Pong P. Chu Cleveland State University A JOHN WILEY & SONS, INC., PUBLICATION PREFACE An SoC (system on a chip) integrates a processor, memory

More information

HOME :: FPGA ENCYCLOPEDIA :: ARCHIVES :: MEDIA KIT :: SUBSCRIBE

HOME :: FPGA ENCYCLOPEDIA :: ARCHIVES :: MEDIA KIT :: SUBSCRIBE Page 1 of 8 HOME :: FPGA ENCYCLOPEDIA :: ARCHIVES :: MEDIA KIT :: SUBSCRIBE FPGA I/O When To Go Serial by Brock J. LaMeres, Agilent Technologies Ads by Google Physical Synthesis Tools Learn How to Solve

More information

A General Hardware/Software Co-design Methodology for Embedded Signal Processing and Multimedia Workloads

A General Hardware/Software Co-design Methodology for Embedded Signal Processing and Multimedia Workloads A General Hardware/Software Co-design Methodology for Embedded Signal Processing and Multimedia Workloads Michael Brogioli, Predrag Radosavljevic and Joseph R. Cavallaro Department of Electrical and Computer

More information

Intel MAX 10 FPGA Device Overview

Intel MAX 10 FPGA Device Overview Intel MAX 10 FPGA Device Overview Subscribe Send Feedback Latest document on the web: PDF HTML Contents Contents...3 Key Advantages of Intel MAX 10 Devices... 3 Summary of Intel MAX 10 Device Features...

More information

Introduction to C and HDL Code Generation from MATLAB

Introduction to C and HDL Code Generation from MATLAB Introduction to C and HDL Code Generation from MATLAB 이웅재차장 Senior Application Engineer 2012 The MathWorks, Inc. 1 Algorithm Development Process Requirements Research & Design Explore and discover Design

More information

Choosing the Appropriate Simulator Configuration in Code Composer Studio IDE

Choosing the Appropriate Simulator Configuration in Code Composer Studio IDE Application Report SPRA864 November 2002 Choosing the Appropriate Simulator Configuration in Code Composer Studio IDE Pankaj Ratan Lal, Ambar Gadkari Software Development Systems ABSTRACT Software development

More information

WS_CCESSH-OUT-v1.00.doc Page 1 of 8

WS_CCESSH-OUT-v1.00.doc Page 1 of 8 Course Name: Course Code: Course Description: System Development with CrossCore Embedded Studio (CCES) and the ADI SHARC Processor WS_CCESSH This is a practical and interactive course that is designed

More information

Cover TBD. intel Quartus prime Design software

Cover TBD. intel Quartus prime Design software Cover TBD intel Quartus prime Design software Fastest Path to Your Design The Intel Quartus Prime software is revolutionary in performance and productivity for FPGA, CPLD, and SoC designs, providing a

More information

FIR Compiler MegaCore Function User Guide

FIR Compiler MegaCore Function User Guide FIR Compiler MegaCore Function User Guide 101 Innovation Drive San Jose, CA 95134 (408) 544-7000 www.altera.com Operations Part Number MegaCore Function Version: 3.3.1 Document Version: 3.3.1 rev 2 Document

More information

An Overview of a Compiler for Mapping MATLAB Programs onto FPGAs

An Overview of a Compiler for Mapping MATLAB Programs onto FPGAs An Overview of a Compiler for Mapping MATLAB Programs onto FPGAs P. Banerjee Department of Electrical and Computer Engineering Northwestern University 2145 Sheridan Road, Evanston, IL-60208 banerjee@ece.northwestern.edu

More information

The MC68000 family and distributed processing

The MC68000 family and distributed processing The MC68000 family and distributed processing by JOHN F. STOCKTON Motorola Semiconductor Inc. Austin, Texas ABSTRACT The key philosophy today is to build parts that will be upward compatible with multiple

More information

ZiLOG Real-Time Kernel Version 1.2.0

ZiLOG Real-Time Kernel Version 1.2.0 ez80acclaim Family of Microcontrollers Version 1.2.0 PRELIMINARY Introduction The (RZK) is a realtime, preemptive, multitasking kernel designed for time-critical embedded applications. It is currently

More information

24K FFT for 3GPP LTE RACH Detection

24K FFT for 3GPP LTE RACH Detection 24K FFT for GPP LTE RACH Detection ovember 2008, version 1.0 Application ote 515 Introduction In GPP Long Term Evolution (LTE), the user equipment (UE) transmits a random access channel (RACH) on the uplink

More information

«Real Time Embedded systems» Multi Masters Systems

«Real Time Embedded systems» Multi Masters Systems «Real Time Embedded systems» Multi Masters Systems rene.beuchat@epfl.ch LAP/ISIM/IC/EPFL Chargé de cours rene.beuchat@hesge.ch LSN/hepia Prof. HES 1 Multi Master on Chip On a System On Chip, Master can

More information

Cover TBD. intel Quartus prime Design software

Cover TBD. intel Quartus prime Design software Cover TBD intel Quartus prime Design software Fastest Path to Your Design The Intel Quartus Prime software is revolutionary in performance and productivity for FPGA, CPLD, and SoC designs, providing a

More information

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer) ESE Back End 2.0 D. Gajski, S. Abdi (with contributions from H. Cho, D. Shin, A. Gerstlauer) Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu 1 Technology advantages

More information

Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming Nasser Kehtarnavaz

Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming Nasser Kehtarnavaz Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming Nasser Kehtarnavaz Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming by Nasser Kehtarnavaz University

More information

2. System Interconnect Fabric for Memory-Mapped Interfaces

2. System Interconnect Fabric for Memory-Mapped Interfaces 2. System Interconnect Fabric for Memory-Mapped Interfaces QII54003-8.1.0 Introduction The system interconnect fabric for memory-mapped interfaces is a high-bandwidth interconnect structure for connecting

More information

Stratix. High-Density, High-Performance FPGAs. Available in Production Quantities

Stratix. High-Density, High-Performance FPGAs. Available in Production Quantities Stratix High-Density, High-Performance FPGAs Available in Production Quantities February 2004 High-Density, High-Performance FPGAs Altera s award-winning Stratix FPGA family delivers the most comprehensive

More information

A framework for automatic generation of audio processing applications on a dual-core system

A framework for automatic generation of audio processing applications on a dual-core system A framework for automatic generation of audio processing applications on a dual-core system Etienne Cornu, Tina Soltani and Julie Johnson etienne_cornu@amis.com, tina_soltani@amis.com, julie_johnson@amis.com

More information

MICROPROCESSOR SYSTEM FOR VISUAL BAKED PRODUCTS CONTROL

MICROPROCESSOR SYSTEM FOR VISUAL BAKED PRODUCTS CONTROL MICROPROCESSOR SYSTEM FOR VISUAL BAKED PRODUCTS CONTROL Krassimir Kolev, PhD University of Food Technologies - Plovdiv, Bulgaria Abstract The paper reports an authentic solution of a microprocessor system

More information

Enabling New Low-Cost Embedded System Using Cyclone III FPGAs

Enabling New Low-Cost Embedded System Using Cyclone III FPGAs Enabling New Low-Cost Embedded System Using Cyclone III FPGAs Unprecedented combination of low power, high functionality, and low cost to enable your new designs Agenda Historical perceptions of FPGAs

More information

The S6000 Family of Processors

The S6000 Family of Processors The S6000 Family of Processors Today s Design Challenges The advent of software configurable processors In recent years, the widespread adoption of digital technologies has revolutionized the way in which

More information