Introduction to Actel FPGA Architecture

Similar documents
System Design Choices

Today. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses

ORCA Series 3C and 3T Field-Programmable Gate Arrays

Introduction to PEEL TM Arrays

Altera FLEX 8000 Block Diagram

Actel s SX Family of FPGAs: A New Architecture for High-Performance Designs

Optimized Reconfigurable Cell Array (ORCA ) OR3Cxxx/OR3Txxx Series Field-Programmable Gate Arrays

Introduction to GAL Device Architectures

Designing High-Speed ATM Switch Fabrics by Using Actel FPGAs

Optimized Reconfigurable Cell Array (ORCA ) OR3Cxxx/OR3Txxx Series Field-Programmable Gate Arrays

ispxpld TM 5000MX Family White Paper

isplsi 8000 and 8000V Family Architectural Description

Implementing LED Drivers in MAX Devices

Prototyping RTAX-S Using Axcelerator Devices

Implementing LED Drivers in MAX and MAX II Devices. Introduction. Commercial LED Driver Chips

Programmable Logic. Simple Programmable Logic Devices

The Virtex FPGA and Introduction to design techniques

AN-12. Use Quickswitch Bus Switches to Make Large, Fast Dual Port RAMs. Dual Port RAM. Figure 1. Dual Port RAM in Dual Microprocessor System

Topics. Midterm Finish Chapter 7

EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs)

UltraLogic High-Density Flash CPLDs

Outline. EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) FPGA Overview. Why FPGAs?

Virtex-II Architecture

Field Programmable Gate Array (FPGA)

Chapter 13 Programmable Logic Device Architectures

Virtex-II Architecture. Virtex II technical, Design Solutions. Active Interconnect Technology (continued)

Design Guidelines for Optimal Results in High-Density FPGAs

8. Migrating Stratix II Device Resources to HardCopy II Devices

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

CS250 VLSI Systems Design Lecture 9: Memory

FPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.

On-Chip Memory Implementations

Programmable Logic Devices

INTRODUCTION TO FPGA ARCHITECTURE

Outline. Field Programmable Gate Arrays. Programming Technologies Architectures. Programming Interfaces. Historical perspective

Summary. Introduction. Application Note: Virtex, Virtex-E, Spartan-IIE, Spartan-3, Virtex-II, Virtex-II Pro. XAPP152 (v2.1) September 17, 2003

PEEL 22CV10A-7/-10/-15/-25 CMOS Programmable Electrically Erasable Logic Device

Topics. Midterm Finish Chapter 7

Selecting the Correct CMOS PLD An Overview of Advanced Micro Devices CMOS PLDs

EECS150 - Digital Design Lecture 17 Memory 2

discrete logic do not

Application Brief 117 Barrel Shifters in FLEX 8000 Devices. May 1994, ver. 2 Application Brief 117. Product Term v Speed 16 Bits v Area 32 Bits

Chapter 2. Cyclone II Architecture

Chapter 7. Storage Components

Universal Serial Bus Host Interface on an FPGA

Infineon HYB39S128160CT M SDRAM Circuit Analysis

Memory Supplement for Section 3.6 of the textbook

Feature EPF10K30E EPF10K50E EPF10K50S

Combinational Logic II

Controller Implementation--Part I. Cascading Edge-triggered Flip-Flops. Clock Skew. Cascading Edge-triggered Flip-Flops. Why Gating of Clocks is Bad!

Section I. Cyclone II Device Family Data Sheet

Product Obsolete/Under Obsolescence

Programmable Memory Blocks Supporting Content-Addressable Memory

EKT 422/4 COMPUTER ARCHITECTURE. MINI PROJECT : Design of an Arithmetic Logic Unit

Outcomes. Spiral 1 / Unit 6. Flip Flops FLIP FLOPS AND REGISTERS. Flip flops and Registers. Outputs only change once per clock period

Built-In Self-Test for Programmable I/O Buffers in FPGAs and SoCs

DP8420V 21V 22V-33 DP84T22-25 microcmos Programmable 256k 1M 4M Dynamic RAM Controller Drivers

ECE 485/585 Microprocessor System Design

Memory Basics. Course Outline. Introduction to Digital Logic. Copyright 2000 N. AYDIN. All rights reserved. 1. Introduction to Digital Logic.

Section I. Cyclone FPGA Family Data Sheet

Picture of memory. Word FFFFFFFD FFFFFFFE FFFFFFFF

Basic FPGA Architecture Xilinx, Inc. All Rights Reserved

Memory, Latches, & Registers

FPGA Programming Technology

Stephen Churcher, Tom Kean, and Bill Wilkie Xilinx Inc. (presented by Raj Patel)

Electronics Data Sheets

EECS150 - Digital Design Lecture 3 - Field Programmable Gate Arrays (FPGAs) FPGA Overview

EE178 Lecture Module 2. Eric Crabill SJSU / Xilinx Fall 2007

Product Obsolete/Under Obsolescence

Simple Ladder Logic. Simple Ladder Logic. OR Operation. Chapter 2: Basic Ladder Logic Programming. Ladder Logic Learning objectives.

ProASIC PLUS FPGA Family

QL8X12B pasic 1 Family Very-High-Speed CMOS FPGA

16-megabit 2.5V or 2.7V DataFlash

Introduction. Synchronous vs. Asynchronous Memory. Converting Memory from Asynchronous to Synchronous for Stratix & Stratix GX Designs

PAL22V10 Family, AmPAL22V10/A

The QR code here provides a shortcut to go to the course webpage.

Stratix. Introduction. Features... Programmable Logic Device Family. Preliminary Information

Using TriMatrix Embedded Memory Blocks

The Xilinx XC6200 chip, the software tools and the board development tools

7. External Memory Interfaces in HardCopy IV Devices

Memory System Design. Outline

Section I. Cyclone II Device Family Data Sheet

Problem Formulation. Specialized algorithms are required for clock (and power nets) due to strict specifications for routing such nets.

High Capacity and High Performance 20nm FPGAs. Steve Young, Dinesh Gaitonde August Copyright 2014 Xilinx

Memory, Latches, & Registers

Single 2.5V - 3.6V or 2.7V - 3.6V supply RapidS serial interface: 66MHz maximum clock frequency. SPI compatible modes 0 and 3

Selecting PLLs for ASIC Applications Requires Tradeoffs

Using ispgdx to Replace Boundary Scan Bus Devices

INTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS)

Spiral 1 / Unit 6. Flip-flops and Registers

Topics of this Slideset. CS429: Computer Organization and Architecture. Digital Signals. Truth Tables. Logic Design

Programable Logic Devices

Physics 623. Programmable Gate Array Experiment Nov. 30, 2006

INTERCONNECT TESTING WITH BOUNDARY SCAN

Hardware Design with VHDL PLDs IV ECE 443

SDR SDRAM Controller White Paper

This document describes the CoolRunner XPLA3 CPLD architecture. Low Power CPLDs. XPLA E 5v/3.3v 32 M/C 64 M/C 128 M/C

ECOM 4311 Digital Systems Design

Summer 2003 Lecture 21 07/15/03

Chapter 3 Part 1 Combinational Logic Design

Transcription:

Introduction to ctel FPG rchitecture pplication Note 65 This overview of the different ctel device families covers the major architectural features in sufficient detail to ensure the reader is familiar enough with ctel devices to get the most out of the application notes in the rest of this section. etails on the functionality of each device are available in the individual device data sheets. FPG rchitecture User Requirements igital system design is becoming more difficult. Systems require ever-increasing complexity and performance, but time-to-market pressures continue to limit development times. System cost is also an important constraint, so a solution must meet stringent financial targets. These competing requirements demand a digital logic design solution optimized to meet all of the capacity, performance, cost, and time-to-market requirements. n optimized architecture is needed to balance all of these competing demands. The ctel architecture meets all of these requirements by providing the correct balance of capacity, performance, cost, and ease of use through its innovative combination of an optimized logic module, abundant interconnect resources, efficient silicon usage, and powerful software design tools. ctel evice rchitecture The underlying architecture of an ctel FPG is very similar to that of a conventional gate array. The core of the device consists of simple logic modules used to implement the required logic gates and storage elements. These logic modules are interconnected with an abundance of segmented routing tracks. Unlike gate arrays, the segment lengths are predefined and can be connected with low-impedance switching elements to create the precise routing length required of the interconnect signal. Surrounding the logic core is the interface to the pads of the devices. This interface consists of modules that translate and interconnect the logic signals from the core of the device to the FPG output pads. block diagram of a generic ctel FPG is given in Figure. The major elements of the ctel FPG architecture are thus the modules, interconnect resources, clocking resources, and logic modules. Each ctel FPG family has a slightly different mix of these resources, optimized for different cost, performance, and density requirements. Table shows the capabilities of each ctel FPG family. Each capability is defined in the sections following Table. Logic Module escriptions The optimal logic module should provide the user with the correct mix of performance, efficiency, and ease of design required to implement the application. If the logic module provides performance without efficiency, the cost and capacity requirements of the design might not be achieved. Similarly, if cost and capacity targets are achieved at the expense of performance and ease of use, the device may not be usable. The optimal logic module must balance these trade-offs carefully to ensure that the many conflicting goals of the designer are achievable. Simple Logic Module The first ctel logic module was the Simple Logic Module used in the T family. It is shown in Figure 2. It is a multiplexer-based logic module. Logic functions are implemented by interconnecting signals from the routing tracks to the data inputs and select lines of the multiplexers. Inputs can also be tied to a logical or if required, since these signals are always available in the routing channel. surprising number of useful logic functions can be implemented with this module. learly, multiplexing is very efficient, but random logic and sequential logic functions are also efficient. These options provide the designer with an excellent mix of logic capabilities, required for applications demanding a variety of logic functions. Figure 3 shows an example logic function implemented with the ctel Simple Logic Module. Notice that latches can be implemented in a single logic module per bit and that registers require two logic modules per bit. The T logic module is thus extremely flexible in covering a wide range of combinatorial and sequential logic mixes. September 997 5-997 ctel orporation

Modules High-rive lock uffer Logic Modules LK L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L LK hannel-oriented Segmented Routing Tracks Figure asic ctel FPG rchitecture Table Quick Summary of Key rchitectural Features of ctel FPG Families apability T T 2/2XL 32X T 3 ore Module Simple Logic Module ombinatorial and Sequential Modules ombinatorial and Sequential Modules ombinatorial and Enhanced Sequential Modules Wide ecode Modules Embedded ual-port SRM Interconnect hanneled hanneled hanneled hanneled locking Resources Routed lock () Routed locks (2) Routed locks (2) Routed locks (2) Quad locks (4) edicated rray lock edicated lock Module Simple Module Latched Module Latched Module Registered Module 5-2

Introduction to ctel FPG rchitecture ombinatorial Logic Module Some improvements were made to the Simple Logic Module when the second generation T 2 family was developed. The Simple Logic Module was replaced with two different logic modules, one for implementing combinatorial logic, (the ombinatorial Logic Module) and one for implementing storage elements (the Sequential Logic Module). The ombinatorial Logic Module, shown in the diagram in Figure 4, is similar to the Simple Logic Module, but an additional logic gate was placed on the first-level multiplexer. The added gate improves the implementation of some combinatorial functions. (Some five-input gates are now available.) lso, the first-level multiplexer lines in the Simple Logic Module were combined in the ombinatorial Logic Module. In the Simple Logic Module, the separate multiplexer select lines were used to implement latches and registers efficiently. This was not required in the ombinatorial Logic Module because of the addition the Sequential Logic Module. Figure 5 shows an example of a logic function implemented with the ombinatorial Logic Module. Figure 2 Simple Logic Module GN Figure 3 Example of a Logic Function Implemented with the T Simple Logic Module Sequential Logic Module The Sequential Logic Module, shown in the diagram in Figure 6, has a combinatorial logic front end with a dedicated storage element on the output of the logic module. The storage element can be either a register or a latch. (It can also be bypassed so the logic module can be used as a ombinatorial Logic Module.) The clock input can be selected to be either active high or active low. One of the logic gates is missing on the combinatorial logic section, making it slightly different from the ombinatorial Logic Module. The exclusion of this one logic gate allows the reset signal, which is shared with the combinatorial logic section, to be made available to the storage element without increasing the number of total module inputs required. If the storage element is bypassed, the reset signal is used to implement the required combinatorial module input. In the Integrator Series, sequential and combinatorial modules are interleaved, resulting in a 5-5 mix of logic modules. This 5-3

has been determined to be an optimal mix for a wide variety of designs and results in excellent utilization. S S Figure 4 ombinatorial Logic Module Up to 8-input function OUT Wide ecode Logic Module Every member of the 32X family has a number of special logic modules optimized for implementing wide-input combinatorial logic functions directly driving device output pads. The Wide ecode Logic Module consists of a seven-input N gate with selectable inversion on the output. The output of this module bypasses the normal routing network and connects directly to a particular output buffer. This feature minimizes the delay from the module output to the device pad and is ideal for implementing wide-decode functions typically implemented in small PL devices. The Wide ecode Logic Module output is also available to the core logic modules, so it can be used in conjunction with other logic functions internal to the device. For more details on the Wide ecode Logic Module, see the Integrator Series FPGs data sheet and the 32X Wide ecode Modules application note in this ata ook. E GN E Figure 5 Example of a Logic Function Implemented with the ombinatorial Logic Module LR OUT LK S S Up to 7-input function plus -type flip-flop with clear Figure 6 Sequential Logic Module Embedded ual-port SRM Some members of the 32X family include dedicated blocks of high-speed dual-port SRM. The SRM blocks are arranged in 256-bit blocks, which can be configured as 32 x 8 or 64 x 4. SRM blocks can be cascaded to form wider or deeper memory blocks. The SRM is dual ported, with separate read and write addresses, a separate data input port (for writes), and a separate data output port (for reads). Reads and writes are controlled by separate clocked read and write enables, easing timing requirements for using the SRM. The dual-port structure is ideal for implementing FIFO, burst buffers, and internal register storage for status, control, or constant data. The 32X devices have from 8 SRM blocks (on the 32X) to 6 SRM blocks (on the 324X). For more detail on the structure and functionality of the dual-port SRM blocks, see the 5-4

Introduction to ctel FPG rchitecture Integrator Series FPGs data sheet and the 32X ual-port Random ccess Memory application note in this ata ook. Enhanced Sequential Logic Module The Enhanced Sequential Logic Module used in the T 3 family is a refinement of the Sequential Logic Module and is shown in the diagram in Figure 7. The reset input on the register in the sequential section is not shared with the combinatorial logic function, so the full combinatorial logic is available in the ombinatorial Logic Module to be used in front of the register. This makes all single module combinatorial logic functions usable in front of the storage element, simplifying design via schematics or synthesis inputs, and it can result in speed improvements for wide-input functions. S S Figure 7 S-Module iagram hanneled Interconnect LK ll ctel devices use a channeled interconnect architecture to make connections between internal logic modules and device pins. This architecture is similar to that of a channeled gate array, in that horizontal tracks span the length of the array with a variety of predefined segmentation lengths. This makes a huge amount of routing resources available and ensures that signals usually have the length of available track that they require. In addition, tracks can be joined together to construct longer tracks, when required, by programming an interconnect fuse. Logic module outputs span four channels (two above and two below) and can be connected to any track. This means that most signals require only two fuses to connect any logic module output to any logic module input. There are enough routing resources available in ctel devices so that place and route is an automatic task. No hand routing is required. For more details on the interconnect resources available in ctel devices, refer to the device family data sheets. Q LR OUT locking Resources ctel devices have a wide range of clocking flexibility. Every sequential element s clock input can be connected to regular interconnects within the channel, as well as to optimized clocking resources. Regular interconnects offer the most flexibility, allowing for thousands of potential separate clocks. Each ctel device also has dedicated clocking resources on-chip to improve clock performance and to simplify the design of sequential signals. locking resources can also be used, in most cases, as high-drive global signals like reset, output enable, or select signals. Each FPG family is slightly different in the way it implements clocking functions. For more details on each type of clocking resource, refer to the associated device data sheets and application notes. Routed locks ll ctel FPG families have one or two special buffers that provide high-drive, low-skew signals and that can be used to drive any signal requiring these characteristics. These routed clocks are distributed to every routing channel and are available to every logic module. This allows a routed clock signal to be used by both Sequential and ombinatorial Logic Modules, offering maximum flexibility with slightly lower performance than dedicated clocks. edicated rray lock The T 3 family has an additional clocking resource consisting of a high-speed dedicated clock buffer optimized for driving the sequential modules in the core array. This clock buffer can be driven from an external pin or from an internal signal. The dedicated array clock is optimized for driving sequential modules and can t drive storage elements built from combinatorial modules. edicated lock The T 3 family has another clocking resource consisting of a high-speed dedicated clock buffer optimized for driving the sequential modules in the modules. The dedicated clock is optimized for driving modules and can t drive storage elements in the array. If all storage elements need to be driven from a common clock, the array clock and clock can be connected together externally. Quad locks The 32X family has an additional clocking resource consisting of four special high-drive buffers called quadrant clocks. Each buffer provides a high-drive signal that spans about one-quarter of the device (a quadrant). These buffers can be used for fast local clocks (perhaps for prescaled shifters or counters), for wide-width mux selects, or for enables. Note that since these are quadrant oriented, only a single quadrant clock can be used per quadrant. Quad clocks can be connected together internally to span up to one-half of 5-5

the device. dditionally, the quad clocks can be sourced from internal signals as well as external pins. Thus they can be used as internally driven high-fanout nets. Refer to the 32X Quadrant locks application note in this ata ook. Module escriptions Each ctel FPG family has a slightly different module. The Simple Module, found in the T family, is optimized for low cost, and the Latched Module, found in the Integrator Series, offers a balance of speed and cost (value). The Registered Module in T 3 is optimized for high speed in synchronous applications. More details on each module can be found in the associated device data sheets and application notes. Simple Module The Simple Module (Figure 8) used in the T family was the first module developed by ctel and is a simple buffer with interconnections to the logic array. ll input, output, and three-state control signals are available to the array. Outputs are TTL and MOS compatible and sink or source m at TTL levels. Latched Module The Latched Module, shown in the diagram in Figure 9, is used in the Integrator Series and is slightly more complicated than the Simple Module. The Latched Module contains input and output latches that can be used as such or combined with internal latches to construct input or output registers. Outputs are TTL and MOS compatible and sink or source m at TTL levels. Registered Module The Registered Module, used in the T 3 family devices, is optimized for speed and functionality in synchronous system designs. It contains complete registers at both the input and output paths, as shown in the diagram in Figure. ata can be stored in the output register (under control of the OE, output data enable, signal), or it can bypass the register if the OT control bit is tied low. oth the output register and the input register can be cleared or preset via the global IOPL signal, and both are clocked via the IOLK global signal. Notice that the output of the output register can be selected as an input to the array (on the signal). This allows state machines, for example, to be built right into the module for fast clock-to-output requirements. Refer to the Using T 3 Family Macros application note in this ata ook. Figure 8 Simple Module OE GOUT OUT GIN Figure 9 Latched Module Summary G G This introduction has given the reader a quick start to the architecture of ctel FPG families. The reader can now continue exploring ctel devices and applications by turning to a variety of applications and data sheet resources. If you are interested in finding out more about a particular device, consult the appropriate data sheet. If you are interested in seeing the application of ctel devices to your particular design problem, or one similar to it, consult the table of contents of the applications sections of the ata ook. If you want to see estimates of performance and capacity for real-world functions implemented in ctel devices, turn to the applications sections to find information on estimating performance and capacity of ctel FPGs. 5-6

Introduction to ctel FPG rchitecture OE PSS OUT IOLK E S OE E P IOPL SEL IOLK Q P E TE IOPL Figure Registered Module 5-7

5-8