datasheet

电子工程世界电子工程世界电子工程世界

型号

产品描述

搜索
 

AFS600-2FG256I

器件型号:AFS600-2FG256I
器件类别:可编程逻辑器件   
厂商名称:Actel
厂商官网:http://www.actel.com/
下载文档

AFS600-2FG256I在线购买

供应商 器件名称 价格 最低购买 库存  
AFS600-2FG256I ¥1,279.03 90 点击查看 点击购买

器件描述

FPGA, 600000 GATES, PBGA256

现场可编程门阵列, 600000 , PBGA256

参数

AFS600-2FG256I功能数量 1
AFS600-2FG256I端子数量 256
AFS600-2FG256I最大工作温度 85 Cel
AFS600-2FG256I最小工作温度 -40 Cel
AFS600-2FG256I最大供电/工作电压 1.58 V
AFS600-2FG256I最小供电/工作电压 1.42 V
AFS600-2FG256I额定供电电压 1.5 V
AFS600-2FG256I加工封装描述 1 MM PITCH, 绿色, FBGA-256
AFS600-2FG256I无铅 Yes
AFS600-2FG256I欧盟RoHS规范 Yes
AFS600-2FG256I状态 ACTIVE
AFS600-2FG256I工艺 CMOS
AFS600-2FG256I包装形状 SQUARE
AFS600-2FG256I包装尺寸 GRID 阵列, 低 PROFILE
AFS600-2FG256I表面贴装 Yes
AFS600-2FG256I端子形式 BALL
AFS600-2FG256I端子间距 1 mm
AFS600-2FG256I端子涂层 锡 银 铜
AFS600-2FG256I端子位置 BOTTOM
AFS600-2FG256I包装材料 塑料/环氧树脂
AFS600-2FG256I温度等级 INDUSTRIAL
AFS600-2FG256I组织 600000 门
AFS600-2FG256I可编程逻辑类型 FIELD PROGRAMMABLE GATE 阵列
AFS600-2FG256I等效门电路数量 600000

文档预览

AFS600-2FG256I器件文档内容

                                                                                         Preliminary v1.7

Actel Fusion Mixed-Signal FPGAs                                                                     

Family with Optional ARM Support

Features and Benefits                                                       Frequency: Input 1.5350 MHz, Output 0.75350 MHz

High-Performance Reprogrammable Flash                                 Low Power Consumption
Technology
                                                                         Single 3.3 V Power Supply with On-Chip 1.5 V Regulator
   Advanced 130-nm, 7-Layer Metal, Flash-Based CMOS Process             Sleep and Standby Low Power Modes
   Nonvolatile, Retains Program when Powered Off
   Live at Power-Up (LAPU) Single-Chip Solution                      In-System Programming (ISP) and Security
   350 MHz System Performance
                                                                         Secure ISP with 128-Bit AES via JTAG
Embedded Flash Memory                                                    FlashLock to Secure FPGA Contents

   User Flash Memory 2 Mbits to 8 Mbits                            Advanced Digital I/O
       Configurable 8-, 16-, or 32-Bit Datapath
       10 ns Access in Read-Ahead Mode                                  1.5 V, 1.8 V, 2.5 V, and 3.3 V Mixed-Voltage Operation
                                                                         Bank-Selectable I/O Voltages Up to 5 Banks per Chip
   1 kbit of Additional FlashROM                                        Single-Ended I/O Standards: LVTTL, LVCMOS

Integrated A/D Converter (ADC) and Analog I/O                               3.3 V / 2.5 V /1.8 V / 1.5 V, 3.3 V PCI / 3.3 V PCI-X, and
                                                                            LVCMOS 2.5 V / 5.0 V Input
   Up to 12-Bit Resolution and up to 600 ksps                           Differential I/O Standards: LVPECL, LVDS, BLVDS, and M-LVDS
   Internal 2.56 V or External Reference Voltage                            Built-In I/O Registers
   ADC: Up to 30 Scalable Analog Input Channels                            700 Mbps DDR Operation
   High-Voltage Input Tolerance: 10.5 V to +12 V                      Hot-Swappable I/Os
   Current Monitor and Temperature Monitor Blocks                      Programmable Output Slew Rate, Drive Strength, and Weak
   Up to 10 MOSFET Gate Driver Outputs                                     Pull-Up/Down Resistor
                                                                         Pin-Compatible Packages across the Fusion Family
       P- and N-Channel Power MOSFET Support
       Programmable 1, 3, 10, 30 A and 20 mA Drive Strengths        SRAMs and FIFOs
   ADC Accuracy is Better than 1%
                                                                         Variable-Aspect-Ratio 4,608-Bit SRAM Blocks (1, 2, 4, 9,
On-Chip Clocking Support                                                    and 18 organizations available)

   Internal 100 MHz RC Oscillator (accurate to 1%)                      True Dual-Port SRAM (except 18)
   Crystal Oscillator Support (32 kHz to 20 MHz)                        Programmable Embedded FIFO Control Logic
   Programmable Real-Time Counter (RTC)
   6 Clock Conditioning Circuits (CCCs) with 1 or 2 Integrated       Soft ARM7TM Core Support in M7 and M1 Fusion Devices

      PLLs                                                               ARM CortexTM-M1 (without debug), CoreMP7Sd (with
       Phase Shift, Multiply/Divide, and Delay Capabilities                debug) and CoreMP7S (without debug)

Fusion Family

Fusion Devices                                           AFS090         AFS250    AFS600    AFS1500
                                                                      M1AFS250  M7AFS600  M1AFS1500
ARM-Enabled               CoreMP7 1                                             M1AFS600
Fusion Devices            Cortex-M1 2

                          System Gates                   90,000       250,000   600,000   1,500,000

                          Tiles (D-flip-flops)           2,304        6,144     13,824    38,400

                          Secure (AES) ISP                       Yes  Yes       Yes       Yes

General                   PLLs                                   1    1         2         2
Information               Globals
                                                                 18   18        18        18

                          Flash Memory Blocks (2 Mbits)          1    1         2         4

                          Total Flash Memory Bits                2M   2M        4M        8M

Memory                    FlashROM Bits                          1k   1k        1k        1k

                          RAM Blocks (4,608 bits)                6    8         24        60

                          RAM kbits                              27   36        108       270

                          Analog Quads                           5    6         10        10

                          Analog Input Channels                  15   18        30        30

                            Gate Driver Outputs                  5    6         10        10
Analog and I/Os
                                                                 4    4         5         5
                            I/O Banks (+ JTAG)

                          Maximum Digital I/Os                   75   114       172       252

                          Analog I/Os                            20   24        40        40

Notes:
1. Refer to the CoreMP7 datasheet for more information.
2. Refer to the Cortex-M1 product brief for more information.

October 2008                                                                                         I

2008 Actel Corporation
  Actel Fusion Mixed-Signal FPGAs

Fusion Device Architecture Overview

                     Bank 0                                 Bank 1

     OSC                                                                                         CCC
CCC/PLL                                                                                          SRAM Block
                                                                                                 4,608-Bit Dual-Port SRAM
                                                                                                 or FIFO Block

                                                                                                 I/Os

                                                                                                 VersaTile

          Bank 4                                                                         Bank 2

                       ISP AES            User Nonvolatile  Charge Pumps                         SRAM Block
                     Decryption               FlashROM                                           4,608-Bit Dual-Port SRAM
                                                                                                 or FIFO Block

                     Flash Memory Blocks  ADC               Flash Memory Blocks

    CCC           Analog Analog Analog Analog Analog Analog Analog Analog Analog Analog
                   Quad Quad Quad Quad Quad Quad Quad Quad Quad Quad

                                                                  Bank 3

Figure 1-1 Fusion Device Architecture Overview (AFS600)

Package I/Os: Single-/Double-Ended (Analog)

Fusion Devices                            AFS090                 AFS250                          AFS600      AFS1500

                                 CoreMP7                                                 M7AFS600

ARM-Enabled Devices  Cortex-M1                              M1AFS250                     M1AFS600            M1AFS1500

QN108                                     37/9 (16)

QN180                                     60/16 (20)        65/15 (24)

PQ208                                                       93/26 (24)                           95/46 (40)

FG256                                     75/22 (20)        114/37 (24)                  119/58 (40)         119/58 (40)

FG484                                                                                    172/86 (40)         223/109 (40)

FG676                                                                                                        252/126 (40)

Note: All devices in the same package are pin compatible with the exception of the PQ208 package (AFS250 and AFS600).

II                                             Preliminary v1.7
                                             Actel Fusion Mixed-Signal FPGAs

Product Ordering Codes

M7AFS600 _  1  FG       G  256  I

                                                  Application (ambient temperature range)
                                                    Blank = Commercial (0 to +70C)
                                                           I = Industrial (40 to +85C)
                                                        PP = Pre-Production
                                                        ES = Engineering Silicon (room temperature only)

                                Package Lead Count

                                                                        Lead-Free Packaging Options
                                                                                  Blank = Standard Packaging
                                                                                        G = RoHS-Compliant (green) Packaging

                                                        Package Type
                                                                QN = Quad Flat No Lead (0.5 mm pitch)
                                                                PQ = Plastic Quad Flat Pack (0.5 mm pitch)
                                                                FG = Fine Pitch Ball Grid Array (1.0 mm pitch)

                                      Speed Grade
                                                 F = 20% Slower than Standard

                                           Blank = Standard
                                                 1 = 15% Faster than Standard
                                                 2 = 25% Faster than Standard

                 Part Number

                     Fusion Devices
                         AFS090 = 90,000 System Gates
                         AFS250 = 250,000 System Gates
                         AFS600 = 600,000 System Gates

                        AFS1500 = 1,500,000 System Gates

                     ARM-Enabled Fusion Devices

                     M7AFS600 = 600,000 System Gates
                    M1AFS250 = 250,000 System Gates
                    M1AFS600 = 600,000 System Gates
                   M1AFS1500 = 1,500,000 System Gates

Notes:
1. DC and switching characteristics for F speed grade targets are based only on simulation. The characteristics provided for

    the F speed grade are subject to change after establishing FPGA specifications. Some restrictions might be added and
    will be reflected in future revisions of this document. The F speed grade is only supported in the commercial
    temperature range.
2. Quad Flat No Lead packages are only offered as RoHS compliant, QNG.

                           Preliminary v1.7  III
Actel Fusion Mixed-Signal FPGAs

Temperature Grade Offerings

Fusion Devices                            AFS090              AFS250         AFS600     AFS1500
                                                                           M7AFS600
                                 CoreMP7                    M1AFS250       M1AFS600   M1AFS1500
                                                                                            
ARM-Enabled Devices  Cortex-M1                                   C, I                       
                                                                 C, I                       
QN108                                     C, I                   C, I           C, I        C, I
                                                                               C, I        C, I
QN180                                     C, I                                 C, I        C, I
                                                                                 
PQ208                                    

FG256                                     C, I

FG484                                    

FG676                                    

Notes:
1. C = Commercial Temperature Range: 0C to 70C Ambient
2. I = Industrial Temperature Range: 40C to 85C Ambient

Speed Grade and Temperature Grade Matrix

                                 F1            Std.                   1             2

C2                                                                                    

I3                                                                                  

Notes:

1. DC and switching characteristics for F speed grade targets are based only on simulation. The characteristics provided
    for the F speed grade are subject to change after establishing FPGA specifications. Some restrictions might be added
    and will be reflected in future revisions of this document. The F speed grade is only supported in the commercial
    temperature range.

2. C = Commercial Temperature Range: 0C to 70C Ambient
3. I = Industrial Temperature Range: 40C to 85C Ambient

Contact your local Actel representative for device availability (http://www.actel.com/contact/offices/index.html).

    IV                                    Preliminary v1.7
1 Fusion Device Family Overview

Introduction

                  The Actel Fusion mixed-signal FPGA satisfies the demand from system architects for a device that
                  simplifies design and unleashes their creativity. As the world's first mixed-signal programmable
                  logic family, Fusion integrates mixed-signal analog, flash memory, and FPGA fabric in a monolithic
                  device. Actel Fusion devices enable designers to quickly move from concept to completed design
                  and then deliver feature-rich systems to market. This new technology takes advantage of the
                  unique properties of Actel flash-based FPGAs, including a high-isolation, triple-well process and the
                  ability to support high-voltage transistors to meet the demanding requirements of mixed-signal
                  system design.

                  Actel Fusion mixed-signal FPGAs bring the benefits of programmable logic to many application
                  areas, including power management, smart battery charging, clock generation and management,
                  and motor control. Until now, these applications have only been implemented with costly and
                  space-consuming discrete analog components or mixed-signal ASIC solutions. Actel Fusion mixed-
                  signal FPGAs present new capabilities for system development by allowing designers to integrate a
                  wide range of functionality into a single device, while at the same time offering the flexibility of
                  upgrades late in the manufacturing process or after the device is in the field. Actel Fusion devices
                  provide an excellent alternative to costly and time-consuming mixed-signal ASIC designs. In
                  addition, when used in conjunction with the Actel or ARM-based soft MCU core, Actel Fusion
                  technology represents the definitive mixed-signal FPGA platform.

                  Flash-based Fusion devices are live at power-up. As soon as system power is applied and within
                  normal operating specifications, Fusion devices are working. Fusion devices have a 128-bit flash-
                  based lock and industry-leading AES decryption, used to secure programmed intellectual property
                  (IP) and configuration data. Actel Fusion devices are the most comprehensive single-chip analog
                  and digital programmable logic solution available today.

                  To support this new ground-breaking technology, Actel has developed a series of major tool
                  innovations to help maximize designer productivity. Implemented as extensions to the popular
                  Actel Libero Integrated Design Environment (IDE), these new tools allow designers to easily
                  instantiate and configure peripherals within a design, establish links between peripherals, create
                  or import building blocks or reference designs, and perform hardware verification. This tool suite
                  will also add comprehensive hardware/software debug capability as well as a suite of utilities to
                  simplify development of embedded soft-processor-based solutions.

General Description

                  The Actel Fusion family, based on the highly successful ProASIC3 and ProASIC3E Flash FPGA
                  architecture, has been designed as a high-performance, programmable, mixed-signal platform. By
                  combining an advanced flash FPGA core with flash memory blocks and analog peripherals, Fusion
                  devices dramatically simplify system design and, as a result, dramatically reduce overall system cost
                  and board space.

                  The state-of-the-art flash memory technology offers high-density integrated flash memory blocks,
                  enabling savings in cost, power, and board area relative to external flash solutions, while providing
                  increased flexibility and performance. The flash memory blocks and integrated analog peripherals
                  enable true mixed-mode programmable logic designs. Two examples are using an on-chip soft
                  processor to implement a fully functional Flash MCU and using high-speed FPGA logic to offer
                  system and power supervisory capabilities. Live at power-up and capable of operating from a single
                  3.3 V supply, the Fusion family is ideally suited for system management and control applications.

                  The devices in the Fusion family are categorized by FPGA core density. Each family member
                  contains many peripherals, including flash memory blocks, an analog-to-digital-converter (ADC),
                  high-drive outputs, both RC and crystal oscillators, and a real-time counter (RTC). This provides the

Preliminary v1.7                   1-1
Fusion Device Family Overview

                  user with a high level of flexibility and integration to support a wide variety of mixed-signal
                  applications. The flash memory block capacity ranges from 2 Mbits to 8 Mbits. The integrated 12-
                  bit ADC supports up to 30 independently configurable input channels. The on-chip crystal and RC
                  oscillators work in conjunction with the integrated phase-locked loops (PLLs) to provide clocking
                  support to the FPGA array and on-chip resources. In addition to supporting typical RTC uses such as
                  watchdog timer, the Fusion RTC can control the on-chip voltage regulator to power down the
                  device (FPGA fabric, flash memory block, and ADC), enabling a low-power standby mode.

                  The Actel Fusion family offers revolutionary features, never before available in an FPGA. The
                  nonvolatile flash technology gives the Fusion solution the advantage of being a secure, low-power,
                  single-chip solution that is live at power-up. Fusion is reprogrammable and offers time to market
                  benefits at an ASIC-level unit cost. These features enable designers to create high-density systems
                  using existing ASIC or FPGA design flows and tools.

                  The family has up to 1.5 M system gates, supported with up to 270 kbits of true dual-port SRAM, up
                  to 8 Mbits of flash memory, 1 kbit of user FlashROM, and up to 278 user I/Os. With integrated flash
                  memory, the Fusion family is the ultimate soft-processor platform. The AFS600 and AFS1500 devices
                  both support the Actel ARM7 core (CoreMP7). The ARM-enabled versions are identified with the
                  M7 prefix as M7AFS600 and M7AFS1500. The AFS250, AFS600, and AFS1500 devices support the
                  Actel Cortex-M1 core. The Cortex-M1-enabled versions are identified with the M1 prefix as
                  M1AFS250, M1AFS600, and M1AFS1500.

            Flash Advantages

             Reduced Cost of Ownership

                  Advantages to the designer extend beyond low unit cost, high performance, and ease of use. Flash-
                  based Fusion devices are live at power-up and do not need to be loaded from an external boot
                  PROM. On-board security mechanisms prevent access to the programming information and enable
                  secure remote updates of the FPGA logic. Designers can perform secure remote in-system
                  reprogramming to support future design iterations and field upgrades, with confidence that
                  valuable IP cannot be compromised or copied. Secure ISP can be performed using the industry-
                  standard AES algorithm with MAC data authentication on the device. The Fusion family device
                  architecture mitigates the need for ASIC migration at higher user volumes. This makes the Fusion
                  family a cost-effective ASIC replacement solution for applications in the consumer, networking and
                  communications, computing, and avionics markets.

             Security

                  As the nonvolatile, flash-based Fusion family requires no boot PROM, there is no vulnerable
                  external bitstream. Fusion devices incorporate FlashLock, which provides a unique combination of
                  reprogrammability and design security without external overhead, advantages that only an FPGA
                  with nonvolatile flash programming can offer.

                  Fusion devices utilize a 128-bit flash-based key lock and a separate AES key to secure programmed
                  IP and configuration data. The FlashROM data in Fusion devices can also be encrypted prior to
                  loading. Additionally, the Flash memory blocks can be programmed during runtime using the
                  industry-leading AES-128 block cipher encryption standard (FIPS Publication 192). The AES standard
                  was adopted by the National Institute of Standards and Technology (NIST) in 2000 and replaces the
                  DES standard, which was adopted in 1977. Fusion devices have a built-in AES decryption engine
                  and a flash-based AES key that make Fusion devices the most comprehensive programmable logic
                  device security solution available today. Fusion devices with AES-based security allow for secure
                  remote field updates over public networks, such as the Internet, and ensure that valuable IP
                  remains out of the hands of system overbuilders, system cloners, and IP thieves. As an additional
                  security measure, the FPGA configuration data of a programmed Fusion device cannot be read
                  back, although secure design verification is possible. During design, the user controls and defines
                  both internal and external access to the flash memory blocks.

                  Security, built into the FPGA fabric, is an inherent component of the Fusion family. The Flash cells
                  are located beneath seven metal layers, and many device design and layout techniques have been
                  used to make invasive attacks extremely difficult. Fusion with FlashLock and AES security is unique
                  in being highly resistant to both invasive and noninvasive attacks. Your valuable IP is protected,

1-2  Preliminary v1.7
                                                                                             Actel Fusion Mixed-Signal FPGAs

making secure remote ISP possible. A Fusion device provides the most impenetrable security for
programmable logic designs.

Single Chip

Flash-based FPGAs store their configuration information in on-chip flash cells. Once programmed,
the configuration data is an inherent part of the FPGA structure, and no external configuration
data needs to be loaded at system power-up (unlike SRAM-based FPGAs). Therefore, flash-based
Fusion FPGAs do not require system configuration components such as EEPROMs or
microcontrollers to load device configuration data. This reduces bill-of-materials costs and PCB
area, and increases security and system reliability.

Live at Power-Up

Flash-based Fusion devices are Level 0 live at power-up (LAPU). LAPU Fusion devices greatly simplify
total system design and reduce total system cost by eliminating the need for CPLDs. The Fusion
LAPU clocking (PLLs) replaces off-chip clocking resources. The Fusion mix of LAPU clocking and
analog resources makes these devices an excellent choice for both system supervisor and system
management functions. LAPU from a single 3.3 V source enables Fusion devices to initiate, control,
and monitor multiple voltage supplies while also providing system clocks. In addition, glitches and
brownouts in system power will not corrupt the Fusion device flash configuration. Unlike SRAM-
based FPGAs, the device will not have to be reloaded when system power is restored. This enables
reduction or complete removal of expensive voltage monitor and brownout detection devices from
the PCB design. Flash-based Fusion devices simplify total system design and reduce cost and design
risk, while increasing system reliability.

Firm Errors

Firm errors occur most commonly when high-energy neutrons, generated in the upper atmosphere,
strike a configuration cell of an SRAM FPGA. The energy of the collision can change the state of the
configuration cell and thus change the logic, routing, or I/O behavior in an unpredictable way.
Another source of radiation-induced firm errors is alpha particles. For an alpha to cause a soft or
firm error, its source must be in very close proximity to the affected circuit. The alpha source must
be in the package molding compound or in the die itself. While low-alpha molding compounds are
being used increasingly, this helps reduce but does not entirely eliminate alpha-induced firm errors.

Firm errors are impossible to prevent in SRAM FPGAs. The consequence of this type of error can be
a complete system failure. Firm errors do not occur in Fusion Flash-based FPGAs. Once it is
programmed, the flash cell configuration element of Fusion FPGAs cannot be altered by high-
energy neutrons and is therefore immune to errors from them.

Recoverable (or soft) errors occur in the user data SRAMs of all FPGA devices. These can easily be
mitigated by using error detection and correction (EDAC) circuitry built into the FPGA fabric.

Low Power

Flash-based Fusion devices exhibit power characteristics similar to those of an ASIC, making them
an ideal choice for power-sensitive applications. With Fusion devices, there is no power-on current
surge and no high current transition, both of which occur on many FPGAs.

Fusion devices also have low dynamic power consumption and support both low power standby
mode and very low power sleep mode, offering further power savings.

Advanced Flash Technology

The Fusion family offers many benefits, including nonvolatility and reprogrammability through an
advanced flash-based, 130-nm LVCMOS process with seven layers of metal. Standard CMOS design
techniques are used to implement logic and control functions. The combination of fine granularity,
enhanced flexible routing resources, and abundant flash switches allows very high logic utilization
(much higher than competing SRAM technologies) without compromising device routability or
performance. Logic functions within the device are interconnected through a four-level routing
hierarchy.

Preliminary v1.7  1-3
Fusion Device Family Overview

            Advanced Architecture

                  The proprietary Fusion architecture provides granularity comparable to standard-cell ASICs. The
                  Fusion device consists of several distinct and programmable architectural features, including the
                  following (Figure 1-1 on page 1-5):

                        Embedded memories
                            Flash memory blocks
                            FlashROM
                            SRAM and FIFO

                        Clocking resources
                            PLL and CCC
                            RC oscillator
                           Crystal oscillator
                            No-Glitch MUX (NGMUX)

                        Digital I/Os with advanced I/O standards
                        FPGA VersaTiles
                        Analog components

                            ADC
                            Analog I/Os supporting voltage, current, and temperature monitoring
                           1.5 V on-board voltage regulator
                            Real-time counter
                  The FPGA core consists of a sea of VersaTiles. Each VersaTile can be configured as a three-input
                  logic lookup table (LUT) equivalent or a D-flip-flop or latch (with or without enable) by
                  programming the appropriate flash switch interconnections. This versatility allows efficient use of
                  the FPGA fabric. The VersaTile capability is unique to the Actel families of flash-based FPGAs.
                  VersaTiles and larger functions are connected with any of the four levels of routing hierarchy. Flash
                  switches are distributed throughout the device to provide nonvolatile, reconfigurable interconnect
                  programming. Maximum core utilization is possible for virtually any design.
                  In addition, extensive on-chip programming circuitry allows for rapid (3.3 V) single-voltage
                  programming of Fusion devices via an IEEE 1532 JTAG interface.

Unprecedented Integration

            Integrated Analog Blocks and Analog I/Os

                  Fusion devices offer robust and flexible analog mixed-signal capability in addition to the high-
                  performance flash FPGA fabric and flash memory block. The many built-in analog peripherals
                  include a configurable 32:1 input analog MUX, up to 10 independent MOSFET gate driver outputs,
                  and a configurable ADC. The ADC supports 8-, 10-, and 12-bit modes of operation with a
                  cumulative sample rate up to 600 k samples per second (ksps), differential nonlinearity (DNL) < 1.0
                  LSB, and Total Unadjusted Error (TUE) of 0.72 LSB in 10-bit mode. The TUE is used for
                  characterization of the conversion error and includes errors from all sources, such as offset and
                  linearity. Internal bandgap circuitry offers 1% voltage reference accuracy with the flexibility of
                  utilizing an external reference voltage. The ADC channel sampling sequence and sampling rate are
                  programmable and implemented in the FPGA logic using Designer and Libero IDE software tool
                  support.
                  Two channels of the 32-channel ADCMUX are dedicated. Channel 0 is connected internally to VCC
                  and can be used to monitor core power supply. Channel 31 is connected to an internal temperature
                  diode which can be used to monitor device temperature. The 30 remaining channels can be
                  connected to external analog signals. The exact number of I/Os available for external connection
                  signals is device-dependent (refer to the "Fusion Family" table on page I for details).

1-4  Preliminary v1.7
                                                                                            Actel Fusion Mixed-Signal FPGAs

          With Fusion, Actel also introduces the Analog Quad I/O structure (Figure 1-1 on page 1-5). Each
          quad consists of three analog inputs and one gate driver. Each quad can be configured in various
          built-in circuit combinations, such as three prescaler circuits, three digital input circuits, a current
          monitor circuit, or a temperature monitor circuit. Each prescaler has multiple scaling factors
          programmed by FPGA signals to support a large range of analog inputs with positive or negative
          polarity. When the current monitor circuit is selected, two adjacent analog inputs measure the
          voltage drop across a small external sense resistor. Built-in operational amplifiers amplify small
          voltage signals (2 mV sensitivity) for accurate current measurement. One analog input in each quad
          can be connected to an external temperature monitor diode and achieves detection accuracy of
          3C. In addition to the external temperature monitor diode(s), a Fusion device can monitor an
          internal temperature diode using dedicated channel 31 of the ADCMUX.

          Figure 1-1 on page 1-5 illustrates a typical use of the Analog Quad I/O structure. The Analog Quad
          shown is configured to monitor and control an external power supply. The AV pad measures the
          source of the power supply. The AC pad measures the voltage drop across an external sense resistor
          to calculate current. The AG MOSFET gate driver pad turns the external MOSFET on and off. The AT
          pad measures the load-side voltage level.

          Power          Line Side                                                          Load Side

Off-Chip  AV                                                    Rpullup         AG          AT
   Pads                             AC                                                                 Temperature
                     Voltage                                                         Gate             Monitor Block
On-Chip          Monitor Block                     Current                          Driver
                                              Monitor Block                                         Pre-
                  Pre-                                                                             scaler
                 scaler                           Analog Quad

                                         Pre-
                                       scaler

          Digital                      Digital                              Power            Digital
          Input                         Input                              MOSFET             Input
                                                                         Gate Driver
                                       Current                                              Temperature
                                    Monitor/Instr                                              Monitor

                                      Amplifier

                                           To FPGA              To FPGA  From FPGA           To FPGA
                                         (DAVOUTx)            (DACOUTx)   (GDONx)           (DATOUTx)

                                               To Analog MUX  To Analog MUX                         To Analog MUX

Figure 1-1 Analog Quad

          Embedded Memories

          Flash Memory Blocks

          The flash memory available in each Fusion device is composed of one to four flash blocks, each 2
          Mbits in density. Each block operates independently with a dedicated flash controller and
          interface. Fusion flash memory blocks combine fast access times (60 ns random access and 10 ns
          access in Read-Ahead mode) with a configurable 8-, 16-, or 32-bit datapath, enabling high-speed

                                                              Preliminary v1.7                                       1-5
Fusion Device Family Overview

                  flash operation without wait states. The memory block is organized in pages and sectors. Each
                  page has 128 bytes, with 33 pages comprising one sector and 64 sectors per block. The flash block
                  can support multiple partitions. The only constraint on size is that partition boundaries must
                  coincide with page boundaries. The flexibility and granularity enable many use models and allow
                  added granularity in programming updates.

                  Fusion devices support two methods of external access to the flash memory blocks. The first
                  method is a serial interface that features a built-in JTAG-compliant port, which allows in-system
                  programmability during user or monitor/test modes. This serial interface supports programming of
                  an AES-encrypted stream. Secure data can be passed through the JTAG interface, decrypted, and
                  then programmed in the flash block. The second method is a soft parallel interface.

                  FPGA logic or an on-chip soft microprocessor can access flash memory through the parallel
                  interface. Since the flash parallel interface is implemented in the FPGA fabric, it can potentially be
                  customized to meet special user requirements. For more information, refer to the CoreCFI
                  Handbook. The flash memory parallel interface provides configurable byte-wide (8), word-wide
                  (16), or dual-word-wide (32) data port options. Through the programmable flash parallel
                  interface, the on-chip and off-chip memories can be cascaded for wider or deeper configurations.

                  The flash memory has built-in security. The user can configure either the entire flash block or the
                  small blocks to prevent unintentional or intrusive attempts to change or destroy the storage
                  contents. Each on-chip flash memory block has a dedicated controller, enabling each block to
                  operate independently.

                  The flash block logic consists of the following sub-blocks:

                        Flash block Contains all stored data. The flash block contains 64 sectors and each sector
                           contains 33 pages of data.

                        Page Buffer Contains the contents of the current page being modified. A page contains 8
                           blocks of data.

                        Block Buffer Contains the contents of the last block accessed. A block contains 128 data
                           bits.

                        ECC Logic The flash memory stores error correction information with each block to
                           perform single-bit error correction and double-bit error detection on all data blocks.

             User Nonvolatile FlashROM

                  In addition to the flash blocks, Actel Fusion devices have 1 kbit of user-accessible, nonvolatile
                  FlashROM on-chip. The FlashROM is organized as 8128-bit pages. The FlashROM can be used in
                  diverse system applications:

                        Internet protocol addressing (wireless or fixed)

                        System calibration settings

                        Device serialization and/or inventory control

                        Subscription-based business models (for example, set-top boxes)

                        Secure key storage for secure communications algorithms

                        Asset management/tracking

                        Date stamping

                        Version management

                  The FlashROM is written using the standard IEEE 1532 JTAG programming interface. Pages can be
                  individually programmed (erased and written). On-chip AES decryption can be used selectively over
                  public networks to securely load data such as security keys stored in the FlashROM for a user
                  design.

                  The FlashROM can be programmed (erased and written) via the JTAG programming interface, and
                  its contents can be read back either through the JTAG programming interface or via direct FPGA
                  core addressing.

                  The FlashPoint tool in the Actel Fusion development software solutions, Libero IDE and Designer,
                  has extensive support for flash memory blocks and FlashROM. One such feature is auto-generation
                  of sequential programming files for applications requiring a unique serial number in each part.
                  Another feature allows the inclusion of static data for system version control. Data for the
                  FlashROM can be generated quickly and easily using the Actel Libero IDE and Designer software

1-6  Preliminary v1.7
                                                                                             Actel Fusion Mixed-Signal FPGAs

tools. Comprehensive programming file support is also included to allow for easy programming of
large numbers of parts with differing FlashROM contents.

SRAM and FIFO

Fusion devices have embedded SRAM blocks along the north and south sides of the device. Each
variable-aspect-ratio SRAM block is 4,608 bits in size. Available memory configurations are 25618,
5129, 1k4, 2k2, and 4k1 bits. The individual blocks have independent read and write ports that
can be configured with different bit widths on each port. For example, data can be written
through a 4-bit port and read as a single bitstream. The SRAM blocks can be initialized from the
flash memory blocks or via the device JTAG port (ROM emulation mode), using the UJTAG macro.
In addition, every SRAM block has an embedded FIFO control unit. The control unit allows the
SRAM block to be configured as a synchronous FIFO without using additional core VersaTiles. The
FIFO width and depth are programmable. The FIFO also features programmable Almost Empty
(AEMPTY) and Almost Full (AFULL) flags in addition to the normal EMPTY and FULL flags. The
embedded FIFO control unit contains the counters necessary for the generation of the read and
write address pointers. The SRAM/FIFO blocks can be cascaded to create larger configurations.

Clock Resources

PLLs and Clock Conditioning Circuits (CCCs)

Fusion devices provide designers with very flexible clock conditioning capabilities. Each member of
the Fusion family contains six CCCs. In the two larger family members, two of these CCCs also
include a PLL; the smaller devices support one PLL.
The inputs of the CCC blocks are accessible from the FPGA core or from one of several inputs with
dedicated CCC block connections.
The CCC block has the following key features:

    Wide input frequency range (fIN_CCC) = 1.5 MHz to 350 MHz
    Output frequency range (fOUT_CCC) = 0.75 MHz to 350 MHz
    Clock phase adjustment via programmable and fixed delays from 6.275 ns to +8.75 ns
    Clock skew minimization (PLL)
    Clock frequency synthesis (PLL)
    On-chip analog clocking resources usable as inputs:

          100 MHz on-chip RC oscillator
          Crystal oscillator
Additional CCC specifications:
    Internal phase shift = 0, 90, 180, and 270
    Output duty cycle = 50% 1.5%
    Low output jitter. Samples of peak-to-peak period jitter when a single global network is
         used:
          70 ps at 350 MHz
          90 ps at 100 MHz
          180 ps at 24 MHz
          Worst case < 2.5% clock period
    Maximum acquisition time = 150 s
    Low power consumption of 5 mW

Global Clocking

Fusion devices have extensive support for multiple clocking domains. In addition to the CCC and
PLL support described above, there are on-chip oscillators as well as a comprehensive global clock
distribution network.
The integrated RC oscillator generates a 100 MHz clock. It is used internally to provide a known
clock source to the flash memory read and write control. It can also be used as a source for the PLLs.

Preliminary v1.7  1-7
Fusion Device Family Overview

                  The crystal oscillator supports the following operating modes:
                        Crystal (32.768 kHz to 20 MHz)
                        Ceramic (500 kHz to 8 MHz)
                        RC (32.768 kHz to 4 MHz)

                  Each VersaTile input and output port has access to nine VersaNets: six main and three quadrant
                  global networks. The VersaNets can be driven by the CCC or directly accessed from the core via
                  MUXes. The VersaNets can be used to distribute low-skew clock signals or for rapid distribution of
                  high-fanout nets.

             Digital I/Os with Advanced I/O Standards

                  The Fusion family of FPGAs features a flexible digital I/O structure, supporting a range of voltages
                  (1.5 V, 1.8 V, 2.5 V, and 3.3 V). Fusion FPGAs support many different digital I/O standards, both
                  single-ended and differential.
                  The I/Os are organized into banks, with four or five banks per device. The configuration of these
                  banks determines the I/O standards supported. The banks along the east and west sides of the
                  device support the full range of I/O standards (single-ended and differential). The south bank
                  supports the Analog Quads (analog I/O). In the family's two smaller devices, the north bank
                  supports multiple single-ended digital I/O standards. In the family's larger devices, the north bank is
                  divided into two banks of digital Pro I/Os, supporting a wide variety of single-ended, differential,
                  and voltage-referenced I/O standards.
                  Each I/O module contains several input, output, and enable registers. These registers allow the
                  implementation of the following applications:

                        Single-Data-Rate (SDR) applications
                        Double-Data-Rate (DDR) applications--DDR LVDS I/O for chip-to-chip communications
                        Fusion banks support LVPECL, LVDS, BLVDS, and M-LVDS with 20 multi-drop points.

             VersaTiles

                  The Fusion core consists of VersaTiles, which are also used in the successful Actel ProASIC3 family.
                  The Fusion VersaTile supports the following:

                        All 3-input logic functions--LUT-3 equivalent
                        Latch with clear or set
                        D-flip-flop with clear or set and optional enable
                  Refer to Figure 1-2 for the VersaTile configuration arrangement.

     LUT-3 Equivalent D-Flip-Flop with Clear or Set Enable D-Flip-Flop with Clear or Set

     X1                                Data               Y       Data                  Y
                                        CLK                        CLK
     X2 LUT-3 Y                         CLR  D-FF              Enable   D-FFE

     X3

                                                               CLR

Figure 1-2 VersaTile Configurations

1-8                                          Preliminary v1.7
                                     Actel Fusion Mixed-Signal FPGAs

Related Documents

Application Notes

Fusion FlashROM
http://www.actel.com/documents/Fusion_FROM_AN.pdf
Fusion SRAM/FIFO Blocks
http://www.actel.com/documents/Fusion_RAM_FIFO_AN.pdf
Using DDR in Fusion Devices
http://www.actel.com/documents/Fusion_DDR_AN.pdf
Fusion Security
http://www.actel.com/documents/Fusion_Security_AN.pdf
Using Fusion RAM as Multipliers
http://www.actel.com/documents/Fusion_Multipliers_AN.pdf
Prototyping with AFS600 for Smaller Devices
http://www.actel.com/documents/Fusion_Prototyp_AN.pdf
UJTAG Applications in Actel's Low-Power Flash Devices
http://www.actel.com/documents/LPD_UJTAG_HBs.pdf
In-System Programming (ISP) of Actel's Low-Power Flash Devices Using FlashPro3
http://www.actel.com/documents/LPD_ISP_HBs.pdf

Handbook

Fusion Handbook
http://www.actel.com/documents/Fusion_HB.pdf

User's Guides

Designer User's Guide
http://www.actel.com/documents/designer_UG.pdf
Fusion, IGLOO/e and ProASIC3/E Macro Library Guide
http://www.actel.com/documents/pa3_libguide_ug.pdf
SmartGen, FlashROM, Flash Memory System Builder, and Analog System Builder User's Guide
http://www.actel.com/documents/genguide_ug.pdf

White Papers

Fusion Technology
http://www.actel.com/documents/Fusion_Tech_WP.pdf

                   Preliminary v1.7                                                      1-9
Fusion Device Family Overview

Part Number and Revision Date

                  Part Number 51700092-013-0
                  Revised October 2008

List of Changes

                  The following table lists critical changes that were made in the current version of the document.

Previous Version                         Changes in Current Version (Preliminary v1.7)               Page
Advance v1.6                                                                                         N/A
(August 2008)     The version number category was changed from Advance to Preliminary, which
Advance v1.4      means the datasheet contains information based on simulation and/or initial           I
(July 2008)       characterization. The information is believed to be correct, but changes are          I
Advance v0.9      possible.                                                                             I
(October 2007)                                                                                        1-4
                  The title of the datasheet changed from Actel Programmable System Chips to
Advance v0.7      Actel Fusion Mixed-Signal FPGAs. In addition, all instances of programmable          II
(January 2007)    system chip were changed to mixed-signal FPGA.                                        I

Advance v0.4      The following bullet was updated from High-Voltage Input Tolerance: 12 V to
(April 2006)      High-Voltage Input Tolerance: 10.5 V to 12 V.

Advance v0.3      The following bullet was updated from Programmable 1, 3, 10, 30 A and 25
(April 2006)      mA Drive Strengths to Programmable 1, 3, 10, 30 A and 20 mA Drive
Advance v0.2      Strengths.
(April 2006)
                  This bullet was added to the "Integrated A/D Converter (ADC) and Analog I/O"
                  section:
                  ADC Accuracy is Better than 1%

                  In the "Integrated Analog Blocks and Analog I/Os" section, 4 LSB was changed
                  to 0.72. The following sentence was deleted:
                  The input range for voltage signals is from 12 V to +12 V with full-scale output
                  values from 0.125 V to 16 V.
                  In addition, 2C was changed to 3C:
                  "One analog input in each quad can be connected to an external temperature
                  monitor diode and achieves detection accuracy of 3C."
                  The following sentence was deleted:
                  The input range for voltage signals is from 12 V to +12 V with full-scale output
                  values from 0.125 V to 16 V.

                  In the "Package I/Os: Single-/Double-Ended (Analog)" table, the
                  AFS1500/M7AFS1500 I/O counts were updated for the following devices:
                  FG484: 223/109
                  FG676: 252/126

                  The AFS1500 digital I/O count was updated in the "Fusion Family" table.

                  The AFS1500 digital I/O count was updated in the "Package I/Os: Single- II
                  /Double-Ended (Analog)" table.

                  The G was moved in the "Product Ordering Codes" section.                           III

                  The "Features and Benefits" section was updated.                                   I

                  The "Fusion Family" table was updated.                                             I

                  The "Package I/Os: Single-/Double-Ended (Analog)" table was updated.               II

1-10              Preliminary v1.7
                                    Actel Fusion Mixed-Signal FPGAs

Previous Version                         Changes in Current Version (Preliminary v1.7)       Page
                  The "Product Ordering Codes" table was updated.                              III
Advance v0.2
(continued)       The "Temperature Grade Offerings" table was updated.                         IV
                  The "General Description" section was updated to include ARM information.   1-1

                  Preliminary v1.7                                                           1 - 11
Fusion Device Family Overview

Datasheet Categories

             Categories

                  In order to provide the latest information to designers, some datasheets are published before data
                  has been fully characterized. Datasheets are designated as "Product Brief," "Advance,"
                  "Preliminary," and "Production." The definition of these categories are as follows:

             Product Brief

                  The product brief is a summarized version of a datasheet (advance or production) and contains
                  general product information. This document gives an overview of specific device and family
                  information.

             Advance

                  This version contains initial estimated information based on simulation, other products, devices, or
                  speed grades. This information can be used as estimates, but not for production. This label only
                  applies to the DC and Switching Characteristics chapter of the datasheet and will only be used
                  when the data has not been fully characterized.

             Preliminary

                  The datasheet contains information based on simulation and/or initial characterization. The
                  information is believed to be correct, but changes are possible.

             Unmarked (production)

                  This version contains information that is considered to be final.

            Export Administration Regulations (EAR)

                  The products described in this document are subject to the Export Administration Regulations
                  (EAR). They could require an approved export license prior to export from the United States. An
                  export includes release of product or disclosure of technology to a foreign national inside or
                  outside the United States.

Actel Safety Critical, Life Support, and High-Reliability
Applications Policy

                  The Actel products described in this advance status document may not have completed Actel's
                  qualification process. Actel may amend or enhance products during the product introduction and
                  qualification process, resulting in changes in device functionality or performance. It is the
                  responsibility of each customer to ensure the fitness of any Actel product (but especially a new
                  product) for a particular purpose, including appropriateness for safety-critical, life-support, and
                  other high-reliability applications. Consult Actel's Terms and Conditions for specific liability
                  exclusions relating to life-support applications. A reliability report covering all of Actel's products is
                  available on the Actel website at http://www.actel.com/documents/ORT_Report.pdf. Actel also
                  offers a variety of enhanced qualification and lot acceptance screening procedures. Contact your
                  local Actel sales office for additional reliability information.

1-12  Preliminary v1.7
2 Device Architecture

Fusion Stack Architecture

                  To manage the unprecedented level of integration in Fusion devices, Actel developed the Fusion
                  technology stack (Figure 2-1). This layered model offers a flexible design environment, enabling
                  design at very high and very low levels of abstraction. Fusion peripherals include hard analog IP
                  and hard and soft digital IP. Peripherals communicate across the FPGA fabric via a layer of soft
                  gates--the Fusion backbone. Much more than a common bus interface, this Fusion backbone
                  integrates a micro-sequencer within the FPGA fabric and configures the individual peripherals and
                  supports low-level processing of peripheral data. Fusion applets are application building blocks
                  that can control and respond to peripherals and other system signals. Applets can be rapidly
                  combined to create large applications. The technology is scalable across devices, families, design
                  types, and user expertise, and supports a well-defined interface for external IP and tool
                  integration.

                  At the lowest level, Level 0, are Fusion peripherals. These are configurable functional blocks that
                  can be hardwired structures such as a PLL or analog input channel, or soft (FPGA gate) blocks such
                  as a UART or two-wire serial interface. The Fusion peripherals are configurable and support a
                  standard interface to facilitate communication and implementation.

                  Connecting and controlling access to the peripherals is the Fusion backbone, Level 1. The backbone
                  is a soft-gate structure, scalable to any number of peripherals. The backbone is a bus and much
                  more; it manages peripheral configuration to ensure proper operation. Leveraging the common
                  peripheral interface and a low-level state machine, the backbone efficiently offloads peripheral
                  management from the system design. The backbone can set and clear flags based upon peripheral
                  behavior and can define performance criteria. The flexibility of the stack enables a designer to
                  configure the silicon, directly bypassing the backbone if that level of control is desired.

                  One step up from the backbone is the Fusion applet, Level 2. The applet is an application building
                  block that implements a specific function in FPGA gates. It can react to stimuli and board-level
                  events coming through the backbone or from other sources, and responds to these stimuli by
                  accessing and manipulating peripherals via the backbone or initiating some other action. An applet
                  controls or responds to the peripheral(s). Applets can be easily imported or exported from the
                  design environment. The applet structure is open and well-defined, enabling users to import
                  applets from Actel, system developers, third parties, and user groups.

                       Optional ARM or 8051 Processor                                    Level 3
                                 User Applications

  Flash                      Fusion Applets                                              Level 2
Memory                 Fusion Smart Backbone                                             Level 1

            Analog     Analog  Analog                            Smart Peripherals       Level 0
             Smart                                                      in FPGA
         Peripheral 1  Smart   Smart                                     Fabric

                       Peripheral 2 Peripheral n               (e.g., logic, PLL, FIFO)

Note: Levels 1, 2, and 3 are implemented in FPGA logic gates.
Figure 2-1 Fusion Architecture Stack

                       Preliminary v1.7                                                  2-1
Device Architecture

                        The system application, Level 3, is the larger user application that utilizes one or more applets.
                        Designing at the highest level of abstraction supported by the Actel Fusion technology stack, the
                        application can be easily created in FPGA gates by importing and configuring multiple applets.
                        In fact, in some cases an entire FPGA system design can be created without any HDL coding.
                        An optional MCU enables a combination of software and HDL-based design methodologies. The
                        MCU can be on-chip or off-chip as system requirements dictate. System portioning is very flexible,
                        allowing the MCU to reside above the applets or to absorb applets, or applets and backbone, if
                        desired.
                        The Actel Fusion technology stack enables a very flexible design environment. Users can engage in
                        design across a continuum of abstraction from very low to very high.

   Core Architecture

                VersaTile

                        Based upon successful Actel ProASIC3/E logic architecture, Fusion devices provide granularity
                        comparable to gate arrays. The Fusion device core consists of a sea-of-VersaTiles architecture.
                        As illustrated in Figure 2-2, there are four inputs in a logic VersaTile cell, and each VersaTile can be
                        configured using the appropriate flash switch connections:

                              Any 3-input logic function
                              Latch with clear or set
                              D-flip-flop with clear or set
                              Enable D-flip-flop with clear or set (on a 4th input)
                        VersaTiles can flexibly map the logic and sequential gates of a design. The inputs of the VersaTile
                        can be inverted (allowing bubble pushing), and the output of the tile can connect to high-speed,
                        very-long-line routing resources. VersaTiles and larger functions are connected with any of the four
                        levels of routing hierarchy.
                        When the VersaTile is used as an enable D-flip-flop, the SET/CLR signal is supported by a fourth
                        input, which can only be routed to the core cell over the VersaNet (global) network.

2-2  Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

The output of the VersaTile is F2 when the connection is to the ultra-fast local lines, or YL when the
connection is to the efficient long-line or very-long-line resources (Figure 2-2).

                                                     0                             Y
                                                     1
                                                        0                          Pin 1
         Data
          X3                                                  0                            F2

                                                        1     1

                                                                                           YL

             0

CLK          1

         X2

CLR/
Enable

  X1

CLR
XC*

Legend:      Via (hard connection) Switch (flash connection)                       Ground

Note: *This input can only be connected to the global clock distribution network.
Figure 2-2 Fusion Core VersaTile

             Preliminary v1.7                                                                  2-3
Device Architecture

                  VersaTile Characteristics

                     Sample VersaTile Specifications--Combinatorial Module
                        The Fusion library offers all combinations of LUT-3 combinatorial functions. In this section, timing
                        characteristics are presented for a sample of the library (Figure 2-3). For more details, refer to the
                        Fusion, IGLOO/e and ProASIC3/E Macro Library Guide.

                                                 A                        Y

                                                               INV

     A                                           A
                                                           NOR2 Y
        OR2   Y
                                                 B
     B

     A                                                         A
                                                                       NAND2 Y
        AND2     Y
                                                               B
     B

     A                                           A

        XOR2        Y                            B                  XOR3        Y

     B                                           C

                       A                                    A       0
                                     MAJ3        Y
     A                                                              MUX2        Y
     B NAND3           B                                    B
     C                                                              1
                       C                                    S

     Figure 2-3 Sample of Combinatorial Cells

2-4                    Preliminary v1.7
                                                                  Actel Fusion Mixed-Signal FPGAs

                             tPD

                A

                             NAND2 or                        Y

                             Any Combinatorial

                B            Logic

                             tPD = MAX(tPD(RR), tPD(RF), tPD(FF), tPD(FR))
                             where edges are applicable for the

                             particular combinatorial cell

                     VCCA

                50%          50%
                             VCCA
A, B, C                                                         GND

                     50%                                        50%

OUT                 tPD                          tPD
         GND       (RR)                         (FF)

          VCCA          tPD                             tPD
OUT                   (RF)                            (FR)

                             50%               GND              50%

Figure 2-4 Combinatorial Timing Model and Waveforms

                             Preliminary v1.7                               2-5
Device Architecture

                     Timing Characteristics

Table 2-1 Combinatorial Cell Propagation Delays
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Combinatorial Cell   Equation                Parameter  2     1                   Std.  Units

INV                  Y = !A                  tPD        0.40   0.46                 0.54  ns

AND2                 Y=AB                   tPD        0.47   0.54                 0.63  ns

NAND2                Y = !(A B)            tPD        0.47   0.54                 0.63  ns

OR2                  Y=A+B                   tPD        0.49   0.55                 0.65  ns

NOR2                 Y = !(A + B)            tPD        0.49   0.55                 0.65  ns
XOR2
                     Y=AB                    tPD        0.74   0.84                 0.99  ns

MAJ3                 Y = MAJ(A, B, C)        tPD        0.70   0.79                 0.93  ns
XOR3
                     Y=ABC                   tPD        0.87   1.00                 1.17  ns

MUX2                 Y = A !S + B S          tPD        0.51   0.58                 0.68  ns

AND3                 Y=ABC                 tPD        0.56   0.64                 0.75  ns

Note: For the derating values at specific junction temperature and voltage supply levels, refer to Table 3-7 on
          page 3-9.

       Sample VersaTile Specifications--Sequential Module

       The Fusion library offers a wide variety of sequential cells, including flip-flops and latches. Each has
       a data input and optional enable, clear, or preset. In this section, timing characteristics are
       presented for a representative sample from the library (Figure 2-5). For more details, refer to the
       Fusion, IGLOO/e and ProASIC3/E Macro Library Guide.

2-6                                          Preliminary v1.7
                                                                                Actel Fusion Mixed-Signal FPGAs

           Data                               Out             Data                    Out
                    D                    Q                              D       Q

                       DFN1                                     En DFN1E1
           CLK
                                                              CLK

                                                              PRE

           Data                          Q Out                Data                    Out
                    D                                                  D        Q

                              DFN1C1                            En DFI1E1P1

           CLK                                                CLK

                                  CLR

Figure 2-5 Sample of Sequential Cells

                                                                                     tCKMPWH tCKMPWL

CLK   50%                     50%             50%               50%             50%        50% 50%
Data
                                      tHD
                              tSUD

           50%                       0 50%

EN    50%                                  tWPRE     tRECPRE                          tREMPRE
PRE                                                                                  50%
CLR                      tHE             50%       50%
Out          tSUE

                                                     tWCLR             tRECCLR                          tREMCLR
                                                         50%       50%                                50%

                                             tPRE2Q               tCLR2Q
                                         50% 50%                50%

                              tCLKQ

Figure 2-6 Sequential Timing Model and Waveforms

                                              Preliminary v1.7                                        2-7
Device Architecture

                     Sequential Timing Characteristics

Table 2-2   Register Delays
Parameter   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

                     Description                                              2  1 Std. Units

tCLKQ        Clock-to-Q of the Core Register                                  0.55 0.63 0.74 ns

tSUD         Data Setup Time for the Core Register                            0.43 0.49 0.57 ns

tHD          Data Hold Time for the Core Register                             0.00 0.00 0.00 ns

tSUE         Enable Setup Time for the Core Register                          0.45 0.52 0.61 ns

tHE          Enable Hold Time for the Core Register                           0.00 0.00 0.00 ns

tCLR2Q       Asynchronous Clear-to-Q of the Core Register                     0.40 0.45 0.53 ns

tPRE2Q       Asynchronous Preset-to-Q of the Core Register                    0.40 0.45 0.53 ns

tREMCLR      Asynchronous Clear Removal Time for the Core Register            0.00 0.00 0.00 ns

tRECCLR      Asynchronous Clear Recovery Time for the Core Register           0.22 0.25 0.30 ns

tREMPRE      Asynchronous Preset Removal Time for the Core Register           0.00 0.00 0.00 ns

tRECPRE      Asynchronous Preset Recovery Time for the Core Register          0.22 0.25 0.30 ns

tWCLR        Asynchronous Clear Minimum Pulse Width for the Core Register 0.22 0.25 0.30 ns

tWPRE        Asynchronous Preset Minimum Pulse Width for the Core Register 0.22 0.25 0.30 ns

tCKMPWH Clock Minimum Pulse Width HIGH for the Core Register                  0.32 0.37 0.43 ns

tCKMPWL Clock Minimum Pulse Width LOW for the Core Register                   0.36 0.41 0.48 ns

Note: For the derating values at specific junction temperature and voltage supply levels, refer to Table 3-7 on
          page 3-9.

2-8                                           Preliminary v1.7
                                                                                   Actel Fusion Mixed-Signal FPGAs

             Array Coordinates

             During many place-and-route operations in the Actel Designer software tool, it is possible to set
             constraints that require array coordinates. Table 2-3 is provided as a reference. The array
             coordinates are measured from the lower left (0, 0). They can be used in region constraints for
             specific logic groups/blocks, designated by a wildcard, and can contain core cells, memories, and
             I/Os.

             Table 2-3 provides array coordinates of core cells and memory blocks.

             I/O and cell coordinates are used for placement constraints. Two coordinate systems are needed
             because there is not a one-to-one correspondence between I/O cells and edge core cells. In
             addition, the I/O coordinate system changes depending on the die/package combination. It is not
             listed in Table 2-3. The Designer ChipPlanner tool provides array coordinates of all I/O locations. I/O
             and cell coordinates are used for placement constraints. However, I/O placement is easier by
             package pin assignment.

             Figure 2-7 illustrates the array coordinates of an AFS600 device. For more information on how to
             use array coordinates for region/placement constraints, see the Designer User's Guide or online
             help (available in the software) for Fusion software tools.

Table 2-3   Array Coordinates

Device                            VersaTiles                    Memory Rows                           All
AFS090                                                                                                        Max.
AFS250                   Min.                        Max.       Bottom  Top       Min.                       (x, y)
AFS600                                                                            (x, y)
AFS1500               x        y  x                        y    (x, y)  (x, y)    (0, 0)                   (101, 29)
                                                                                   (0, 0)                   (133, 53)
                       3        2  98                       25   None    (3, 26)   (0, 0)                   (197, 79)
                                                                                   (0, 0)                  (325, 129)
                       3        2  130                      49   None    (3, 50)

                       3        4  194                      75   (3, 2)  (3, 76)

                       3        4  322                      123  (3, 2)  (3, 124)

(0, 79)                                I/O Tile                                                        (197, 79)

                            Top Row (7, 79) to (189, 79)
                          Bottom Row (5, 78) to (192, 78)

Memory (3, 77)                                                                                        (194, 77) Memory
   Blocks (3, 76)                                                                                      (194, 76) Blocks

VersaTile (Core)                                                                                       (194, 75)
             (3, 75)                                                                                   VersaTile (Core)

VersaTile (Core)                                                                                       (194, 4)
               (3, 4)                                                                                  VersaTile(Core)

  Memory (3, 3)                                                                                        (194, 3) Memory
    Blocks (3, 2)                                                                                      (194, 2) Blocks

(0, 0)                                                                                                 (197, 1)
                                                                                                       (197, 0)
                           I/O Tile to Analog Block                         UJTAG FlashROM
                                                                         Top Row (169, 1) to (192, 1)
                         Top Row (5, 1) to (168, 1)
                       Bottom Row (7, 0) to (165, 0)

Note: The vertical I/O tile coordinates are not shown. West side coordinates are {(0, 2) to (2, 2)} to {(0, 77) to (2,
          77)}; east side coordinates are {(195, 2) to (197, 2)} to {(195, 77) to (197, 77)}.

Figure 2-7 Array Coordinates for AFS600

                                                      Preliminary v1.7                                            2-9
Device Architecture

                Routing Architecture

                        The routing structure of Fusion devices is designed to provide high performance through a flexible
                        four-level hierarchy of routing resources: ultra-fast local resources; efficient long-line resources;
                        high-speed very-long-line resources; and the high-performance VersaNet networks.
                        The ultra-fast local resources are dedicated lines that allow the output of each VersaTile to connect
                        directly to every input of the eight surrounding VersaTiles (Figure 2-8). The exception to this is that
                        the SET/CLR input of a VersaTile configured as a D-flip-flop is driven only by the VersaNet global
                        network.
                        The efficient long-line resources provide routing for longer distances and higher-fanout
                        connections. These resources vary in length (spanning one, two, or four VersaTiles), run both
                        vertically and horizontally, and cover the entire Fusion device (Figure 2-9 on page 2-11). Each
                        VersaTile can drive signals onto the efficient long-line resources, which can access every input of
                        every VersaTile. Active buffers are inserted automatically by routing software to limit loading
                        effects.
                        The high-speed very-long-line resources, which span the entire device with minimal delay, are used
                        to route very long or high-fanout nets: length +/12 VersaTiles in the vertical direction and length
                        +/16 in the horizontal direction from a given core VersaTile (Figure 2-10 on page 2-12). Very long
                        lines in Fusion devices, like those in ProASIC3 devices, have been enhanced. This provides a
                        significant performance boost for long-reach signals.
                        The high-performance VersaNet global networks are low-skew, high-fanout nets that are accessible
                        from external pins or from internal logic (Figure 2-11 on page 2-13). These nets are typically used to
                        distribute clocks, reset signals, and other high-fanout nets requiring minimum skew. The VersaNet
                        networks are implemented as clock trees, and signals can be introduced at any junction. These can
                        be employed hierarchically, with signals accessing every input on all VersaTiles.

                                                                           Long Lines

      L                     L       L

                    Inputs  L       L
                                                Ultra-Fast Local Lines
      L                                         (connects a VersaTile to the
                                                adjacent VersaTile, I/O buffer,
                            Output              or memory block)

      L                     L       L

Note: Input to the core cell for the D-flip-flop set and reset is only available via the VersaNet global network connection.
Figure 2-8 Ultra-Fast Local Lines Connected to the Eight Nearest Neighbors

            Global Resources (VersaNets)

                  Fusion devices offer powerful and flexible control of circuit timing through the use of analog
                  circuitry. Each chip has six CCCs. The west CCC also contains a PLL core. In the two larger devices

2-10                                Preliminary v1.7
                                                                     Actel Fusion Mixed-Signal FPGAs

   Spans Four VersaTiles  Spans Two VersaTiles  Spans One VersaTile

                                                                     VersaTile

L  L  L                   L                     L  L

L  L  L                   L                     L  L

L  L  L                   L                     L  L                 Spans One VersaTile
                                                                     Spans Two VersaTiles
                                                                     Spans Four VersaTiles

L  L  L                   L                     L  L

L  L  L                   L                     L  L

Figure 2-9 Efficient Long-Line Resources

                  (AFS600 and AFS1500), the west and the east CCCs each contain a PLL. The PLLs include delay lines,
                  a phase shifter (0, 90, 180, 270), and clock multipliers/dividers. Each CCC has all the circuitry
                  needed for the selection and interconnection of inputs to the VersaNet global network. The east
                  and west CCCs each have access to three VersaNet global lines on each side of the chip (six lines
                  total). The CCCs at the four corners each have access to three quadrant global lines on each
                  quadrant of the chip.

             Advantages of the VersaNet Approach

                  One of the architectural benefits of Fusion is the set of powerful and low-delay VersaNet global
                  networks. Fusion offers six chip (main) global networks that are distributed from the center of the
                  FPGA array (Figure 2-11). In addition, Fusion devices have three regional globals (quadrant globals)
                  in each of the four chip quadrants. Each core VersaTile has access to nine global network resources:
                  three quadrant and six chip (main) global networks. There are a total of 18 global networks on the
                  device. Each of these networks contains spines and ribs that reach all VersaTiles in all quadrants
                  (Figure 2-12 on page 2-14). This flexible VersaNet global network architecture allows users to map
                  up to 180 different internal/external clocks in a Fusion device. Details on the VersaNet networks are
                  given in Table 2-4 on page 2-14. The flexibility of the Fusion VersaNet global network allows the
                  designer to address several design requirements. User applications that are clock-resource-intensive
                  can easily route external or gated internal clocks using VersaNet global routing networks.
                  Designers can also drastically reduce delay penalties and minimize resource usage by mapping
                  critical, high-fanout nets to the VersaNet global network.

                          Preliminary v1.7                                      2 - 11
Device Architecture
                                       High-Speed, Very-Long-Line Resources

                        Pad Ring

                                                                             I/O Ring  SRAM
                                                                                         1612 Block of VersaTiles

                I/O Ring

      Pad Ring

Figure 2-10 Very-Long-Line Resources

2-12                                    Preliminary v1.7
   Quadrant Global Pads          Pad Ring                       Actel Fusion Mixed-Signal FPGAs

        Top Spine      Pad Ring                           High-PerformanceI/O Ring
Chip (main)                                               VersaNet Global Network
Global Pads
                                                                                    Main (chip)
  Bottom Spine                                                                      Global Network
Spine-Selection                                                                    Global
                                                                                    Pads
     Tree MUX                                                                    Global Spine
                                                                                 Global Ribs

                       I/O Ring

Figure 2-11 Overview of Fusion VersaNet Global Network

                                 Preliminary v1.7                   2 - 13
Device Architecture

                                                     Northwest Quadrant Global Network

      CCC                                                                                           CCC

      Quadrant Global Spine  3                       3              3                   3

                                                        Chip (main)

                                                           Global

                                                           Network

                                                  6     6                 6                6
                                       3                                                             CCC
                                                        6                 6
                           CCC                                                              3
                                                  6
      Global Spine                                                                         6

                   3                                 3              3                   3
      CCC
                                                                                           AFS600   CCC
                                                     Southeast Quadrant Global Network         9
                                                                                               12     AFS1500
Figure 2-12 Global Network Architecture                                                                  9
                                                                                              108         20
Table 2-4 Globals/Spines/Rows by Device                                                   1,152
                                                                                            13,824       180
                                                           AFS090         AFS250                        1,920
                                                                                                       38,400
Global VersaNets (trees)*                                  9                 9

VersaNet Spines/Tree                                       4                 8

Total Spines                                               36             72

VersaTiles in Each Top or Bottom Spine                     384            768

Total VersaTiles                                           2,304          6,144

Note: *There are six chip (main) globals and three globals per quadrant.

2-14                                                    Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

VersaNet Global Networks and Spine Access

The Fusion architecture contains a total of 18 segmented global networks that can access the
VersaTiles, SRAM, and I/O tiles on the Fusion device. There are 6 chip (main) global networks that
access the entire device and 12 quadrant networks (3 in each quadrant). Each device has a total of
18 globals. These VersaNet global networks offer fast, low-skew routing resources for high-fanout
nets, including clock signals. In addition, these highly segmented global networks offer users the
flexibility to create low-skew local networks using spines for up to 180 internal/external clocks (in
an AFS1500 device) or other high-fanout nets in Fusion devices. Optimal usage of these low-skew
networks can result in significant improvement in design performance on Fusion devices.

The nine spines available in a vertical column reside in global networks with two separate regions
of scope: the quadrant global network, which has three spines, and the chip (main) global
network, which has six spines. Note that there are three quadrant spines in each quadrant of the
device. There are four quadrant global network regions per device (Figure 2-12 on page 2-14).

The spines are the vertical branches of the global network tree, shown in Figure 2-11 on page 2-13.
Each spine in a vertical column of a chip (main) global network is further divided into two equal-
length spine segments: one in the top and one in the bottom half of the die.

Each spine and its associated ribs cover a certain area of the Fusion device (the "scope" of the
spine; see Figure 2-11 on page 2-13). Each spine is accessed by the dedicated global network MUX
tree architecture, which defines how a particular spine is driven--either by the signal on the global
network from a CCC, for example, or another net defined by the user (Figure 2-13). Quadrant
spines can be driven from user I/Os on the north and south sides of the die, via analog I/Os
configured as direct digital inputs. The ability to drive spines in the quadrant global networks can
have a significant effect on system performance for high-fanout inputs to a design.

Details of the chip (main) global network spine-selection MUX are presented in Figure 2-13. The
spine drivers for each spine are located in the middle of the die.

Quadrant spines are driven from a north or south rib. Access to the top and bottom ribs is from the
corner CCC or from the I/Os on the north and south sides of the device. For details on using spines
in Fusion devices, see the Actel application note Using Global Resources in Actel Fusion Devices.

Internal/External                                 Internal/External
      Signals                                           Signals

Tree Node MUX                                     Tree Node MUX

Internal/External                                   Tree Node MUX
       Signal
                                                  Global Driver MUX
                           Global Rib                 Spine

Internal/External
       Signal

Figure 2-13 Spine-Selection MUX of Global Tree

Preliminary v1.7                                                     2 - 15
Device Architecture

                  Clock Aggregation

                        Clock aggregation allows for multi-spine clock domains. A MUX tree provides the necessary
                        flexibility to allow long lines or I/Os to access domains of one, two, or four global spines. Signal
                        access to the clock aggregation system is achieved through long-line resources in the central rib,
                        and also through local resources in the north and south ribs, allowing I/Os to feed directly into the
                        clock system. As Figure 2-14 indicates, this access system is contiguous.
                        There is no break in the middle of the chip for north and south I/O VersaNet access. This is different
                        from the quadrant clocks, located in these ribs, which only reach the middle of the rib.Refer to the
                        Using Global Resources in Actel Fusion Devices application note.

      Global Spine           I/O Access                  I/O Tiles
      Global Rib             Internal Signal Access
      Global Driver and MUX  Global Signal Access
      Tree Node MUX

      Figure 2-14 Clock Aggregation Tree Architecture

2-16  Preliminary v1.7
                                                                                                        Actel Fusion Mixed-Signal FPGAs

     Global Resource Characteristics

     AFS600 VersaNet Topology
     Clock delays are device-specific. Figure 2-15 is an example of a global tree used for clock
     routing. The global tree presented in Figure 2-15 is driven by a CCC located on the west side
     of the AFS600 device. It is used to drive all D-flip-flops in the device.

                                                                                Central
                                                                                Global Rib

CCC                                                                             VersaTile

                                                                                Rows

                                                                                Global Spine

Figure 2-15 Example of Global Tree Use in an AFS600 Device for Clock Routing

     Preliminary v1.7                                                                       2 - 17
Device Architecture

             VersaNet Timing Characteristics

             Global clock delays include the central rib delay, the spine delay, and the row delay. Delays do not
             include I/O input buffer clock delays, as these are dependent upon I/O standard, and the clock may
             be driven and conditioned internally by the CCC module. Table 2-5, Table 2-6, Table 2-7, and
             Table 2-8 on page 2-19 present minimum and maximum global clock delays within the
             device.Minimum and maximum delays are measured with minimum and maximum loading,
             respectively.

                     Timing Characteristics

Table 2-5   AFS1500 Global Resource Timing
Parameter   Commercial-Case Conditions: TJ = 70C, VCC = 1.425 V

                                                 2                        1          Std.
                                                                   Min.1 Max.2  Min.1 Max.2
                     Description                 Min.1 Max.2                                 Units

tRCKL        Input LOW Delay for Global Clock    1.53 1.75 1.74 1.99 2.05 2.34 ns

tRCKH        Input HIGH Delay for Global Clock   1.53 1.79 1.75 2.04 2.05 2.40 ns

tRCKMPWH Minimum Pulse Width HIGH for Global                                                 ns

             Clock

tRCKMPWL Minimum Pulse Width LOW for Global                                                  ns

             Clock

tRCKSW       Maximum Skew for Global Clock           0.26          0.29         0.34 ns

FRMAX        Maximum Frequency for Global Clock                                              MHz

Notes:

1. Value reflects minimum load. The delay is measured from the CCC output to the clock pin of a sequential
    element located in a lightly loaded row (single element is connected to the global net).

2. Value reflects maximum load. The delay is measured on the clock pin of the farthest sequential element
    located in a fully loaded row (all available flip-flops are connected to the global net in the row).

3. For the derating values at specific junction temperature and voltage supply levels, refer to Table 3-7 on
    page 3-9.

Table 2-6   AFS600 Global Resource Timing
Parameter   Commercial-Case Conditions: TJ = 70C, VCC = 1.425 V

                                                 2                        1         Std.
                                                                   Min.1 Max.2  Min.1 Max.2
                     Description                 Min.1 Max.2                                 Units

tRCKL        Input LOW Delay for Global Clock    1.27 1.49 1.44 1.70 1.69 2.00 ns

tRCKH        Input HIGH Delay for Global Clock   1.26 1.54 1.44 1.75 1.69 2.06 ns

tRCKMPWH Minimum Pulse Width HIGH for Global                                                 ns

             Clock

tRCKMPWL Minimum Pulse Width LOW for Global                                                  ns

             Clock

tRCKSW       Maximum Skew for Global Clock           0.27          0.31         0.36 ns

FRMAX        Maximum Frequency for Global Clock                                              MHz

Notes:

1. Value reflects minimum load. The delay is measured from the CCC output to the clock pin of a sequential
    element located in a lightly loaded row (single element is connected to the global net).

2. Value reflects maximum load. The delay is measured on the clock pin of the farthest sequential element
    located in a fully loaded row (all available flip-flops are connected to the global net in the row).

3. For the derating values at specific junction temperature and voltage supply levels, refer to Table 3-7 on
    page 3-9.

2-18                                            Preliminary v1.7
                                                                            Actel Fusion Mixed-Signal FPGAs

Table 2-7   AFS250 Global Resource Timing
Parameter   Commercial-Case Conditions: TJ = 70C, VCC = 1.425 V

                                                 2                             1          Std.
                                                                        Min.1 Max.2  Min.1 Max.2 Units
                    Description                  Min.1 Max.2

tRCKL        Input LOW Delay for Global Clock    0.89 1.12 1.02 1.27 1.20 1.50 ns

tRCKH        Input HIGH Delay for Global Clock   0.88 1.14 1.00 1.30 1.17 1.53 ns

tRCKMPWH Minimum Pulse Width HIGH for Global                                               ns

             Clock

tRCKMPWL Minimum Pulse Width LOW for Global                                                ns

             Clock

tRCKSW       Maximum Skew for Global Clock           0.26               0.30         0.35 ns

FRMAX        Maximum Frequency for Global Clock                                            MHz

Notes:

1. Value reflects minimum load. The delay is measured from the CCC output to the clock pin of a sequential
    element located in a lightly loaded row (single element is connected to the global net).

2. Value reflects maximum load. The delay is measured on the clock pin of the farthest sequential element
    located in a fully loaded row (all available flip-flops are connected to the global net in the row).

3. For the derating values at specific junction temperature and voltage supply levels, refer to Table 3-7 on
    page 3-9.

Table 2-8   AFS090 Global Resource Timing
Parameter   Commercial-Case Conditions: TJ = 70C, VCC = 1.425 V

                                                 2                     1           Std.

                    Description                  Min.1 Max.2            Min.1 Max.2 Min.1 Max.2 Units

tRCKL        Input LOW Delay for Global Clock    0.84 1.07 0.96 1.21 1.13 1.43 ns

tRCKH        Input HIGH Delay for Global Clock   0.83 1.10 0.95 1.25 1.12 1.47 ns

tRCKMPWH Minimum Pulse Width HIGH for Global                                               ns

             Clock

tRCKMPWL Minimum Pulse Width LOW for Global                                                ns

             Clock

tRCKSW       Maximum Skew for Global Clock                        0.27      0.30           0.36 ns

FRMAX        Maximum Frequency for Global Clock                                            MHz

Notes:

1. Value reflects minimum load. The delay is measured from the CCC output to the clock pin of a sequential
    element located in a lightly loaded row (single element is connected to the global net).

2. Value reflects maximum load. The delay is measured on the clock pin of the farthest sequential element
    located in a fully loaded row (all available flip-flops are connected to the global net in the row).

3. For the derating values at specific junction temperature and voltage supply levels, refer to Table 3-7 on
    page 3-9.

                                                Preliminary v1.7                           2 - 19
Device Architecture

   Clocking Resources

                        The Fusion family has a robust collection of clocking peripherals, as shown in the block diagram in
                        Figure 2-16. These on-chip resources enable the creation, manipulation, and distribution of many
                        clock signals. The Fusion integrated RC oscillator produces a 100 MHz clock source with no external
                        components. For systems requiring more precise clock signals, the Actel Fusion family supports an
                        on-chip crystal oscillator circuit. The integrated PLLs in each Fusion device can use the RC oscillator,
                        crystal oscillator, or another on-chip clock signal as a source. These PLLs offer a variety of
                        capabilities to modify the clock source (multiply, divide, synchronize, advance, or delay). Utilizing
                        the CCC found in the popular Actel ProASIC3 family, Fusion incorporates six CCC blocks. The CCCs
                        allow access to Fusion global and local clock distribution nets, as described in the "Global Resources
                        (VersaNets)" section on page 2-10.

                           Off-Chip On-Chip

              GNDOSC                     100 MHz
              VCCOSC                   RC Oscillator

                                                         Clock Out to FPGA Core through CCC

                        XTAL1  Crystal Oscillator                     GLINT           To Core
                        XTAL2                                                         CLKOUT
                                             Clock I/Os              PLL/ GLA
                                   From FPGA Core        Xtal Clock  CCC GLC   NGMUX

External  or  External
Crystal         RC

Figure 2-16 Fusion Clocking Options

2-20                                   Preliminary v1.7
                                                                               Actel Fusion Mixed-Signal FPGAs

           RC Oscillator

           The RC oscillator is an on-chip free-running clock source generating a 100 MHz clock. It can be used
           as a source clock for both on-chip and off-chip resources. When used in conjunction with the Fusion
           PLL and CCC circuits, the RC oscillator clock source can be used to generate clocks of varying
           frequency and phase.

           The Fusion RC oscillator is very accurate at 1% over commercial and industrial temperature
           ranges. It is an automated clock, requiring no setup or configuration by the user. It requires only
           that the power and GNDOSC pins be connected; no external components are required. The RC
           oscillator can be used to drive either a PLL or another internal signal.

           RC Oscillator Characteristics

Table 2-9 Electrical Characteristics of RC Oscillator

Parameter  Description        Conditions                                       Min.  Typ. Max. Units

FRC        Operating                                                                 100  MHz

           Frequency

           Accuracy           Temperature: 0C to 85C                               1    %
                              Voltage: 3.3 V 5%

                              Temperature: 40C to 125C                            3    %
                              Voltage: 3.3 V 5%

           Output Jitter      Period Jitter (at 5 k cycles)                          100  ps

                              CycleCycle Jitter (at 5 k cycles)                     100  ps

                              Period Jitter (at 5 k cycles) with                     150  ps
                              1 kHz / 300 mV peak-to-peak noise on power
                              supply

                              CycleCycle Jitter (at 5 k cycles) with 1 kHz /        150  ps
                              300 mV peak-to-peak noise on power supply

           Output Duty Cycle                                                         50   %

IDYNRC     Operating Current                                                         1    mA

                              Preliminary v1.7                                            2 - 21
Device Architecture

      Crystal Oscillator

      The on-chip crystal oscillator circuit works with an off-chip crystal to generate a high-precision
      clock. It has an accuracy of 100 ppm (0.01%) and is capable of providing system clocks for Fusion
      peripherals and other system clock networks, both on-chip and off-chip. When combined with the
      on-chip CCC/PLL blocks, a wide range of clock frequencies can be created to support various design
      requirements.

      The on-chip circuitry is designed to work with an external crystal, a ceramic resonator, or an RC
      network. It can only support one of these configurations at a time. Typical design practices dictate
      that the desired mode for the crystal oscillator be determined and the board designed for a single
      configuration. The crystal oscillator supports four modes of operation, defined in Table 2-10.

      In Mode 0, the oscillator is configured to work with an external RC network. The RC components
      are connected to the XTAL1 pin, with XTAL2 left floating. The frequency generated by the circuit in
      Mode 0 is determined by the RC time constant of the selected components (Figure 2-18).

      Table 2-10 Crystal Oscillator Mode Definition                     RTCMODE/MODE[1:0]    Frequency Range
       Mode                                                                            00                N/A
       RC network (Mode 0)                                                             01
       Low gain (Mode 1)                                                               10      0.032 to 0.20 MHz
       Medium gain (Mode 2)                                                            11       0.20 to 2.0 MHz
       High gain (Mode 3)                                                                       2.0 to 20.0 MHz

                                                        XTL               CLKOUT
                                                        SELMODE

                                                        RTCMODE[1:0]
                                                        MODE[1:0]

      Figure 2-17 Crystal Oscillator Macro

                                                        RC Time Constant Values vs. Frequency

                                             1.00E-0.3

                     RC Time Constant (sec)  1.00E-0.4

                                             1.00E-0.5

                               1.00E-0.6

                               1.00E-0.7
                                           0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5
                                                                   Frequency (MHz)

      Figure 2-18 Crystal Oscillator: RC Time Constant Values vs. Frequency (typical)

2-22                                                    Preliminary v1.7
                                                                               Actel Fusion Mixed-Signal FPGAs

           In Modes 1 to 3, the crystal oscillator is configured to support an external crystal or ceramic
           resonator. These modes correspond to low, medium, and high gain. They differ in the crystal or
           resonator frequency supported. The crystal or resonator is connected to the XTAL1 and XTAL2 pins.
           Additionally, a capacitor is required on both XTAL1 and XTAL2 pins to ground (Figure 2-16 on
           page 2-20). Table 2-10 on page 2-22 details each crystal oscillator mode, supported frequency
           range, and recommended capacitor value.

           A use model supported by the Fusion device involves powering down the core while the RTC
           continues to run, clocked by the crystal oscillator. When powered down, the core cannot control
           crystal oscillator mode pins. Also, some designers may wish to avoid the RTC altogether. To support
           both situations, the crystal oscillator can be controlled by either the RTC or the FPGA core. If the
           RTC is instantiated in the design, it will by default use RTCMODE[1:0] to set the crystal oscillator
           control pins (the default). If the RTC is not used in the design, the FPGA core will set the crystal
           oscillator control pins with MODE[1:0].

           The crystal oscillator can be disabled/enabled by RTC or FPGA upon operation requirement. When
           the crystal oscillator is disabled, XTL1 and XTL2 pins can be left floating.

           Crystal Oscillator Characteristics

Table 2-11 Electrical Characteristics of the Crystal Oscillator

Parameter  Description             Conditions                          Min.    Typ.  Max.  Units
                                                                       0.032           20   MHz
FXTAL      Operating Frequency     Using External Crystal                       50      8   MHz
                                   Using Ceramic Resonator              0.5     50      4   MHz
                                                                       0.032    0.6
                                   Using RC Network                            0.19           %
                                                                   90% of VCC   0.6        ps RMS
           Output Duty Cycle                                                    0.6
                                                                                10           mA
           Output Jitter           With 10 MHz Crystal                          0.5          mA
                                                                                             mA
IDYNXTAL Operating Current         RC                                                        mA
                                   0.0320.2 MHz                                              A
                                                                                            Vpp
                                   0.22.0 MHz

                                   2.020.0 MHz

ISTBXTAL   Sleep Current
PSRRXTAL
           Power Supply Noise
           Tolerance

VIHXTAL    Input Logic Level HIGH                                                                          V
VILXTAL    Input Logic Level LOW                                                     10% of VCC V

                                   Preliminary v1.7                                        2 - 23
Device Architecture

                Clock Conditioning Circuits

                        In Fusion devices, the CCCs are used to implement frequency division, frequency multiplication,
                        phase shifting, and delay operations.

                        The CCCs are available in six chip locations--each of the four chip corners and the middle of the
                        east and west chip sides.

                        Each CCC can implement up to three independent global buffers (with or without programmable
                        delay), or a PLL function (programmable frequency division/multiplication, phase shift, and delays)
                        with up to three global outputs. Unused global outputs of a PLL can be used to implement
                        independent global buffers, up to a maximum of three global outputs for a given CCC.

                        A global buffer can be placed in any of the three global locations (CLKA-GLA, CLKB-GLB, and CLKC-
                        GLC) of a given CCC.

                        A PLL macro uses the CLKA CCC input to drive its reference clock. It uses the GLA and, optionally,
                        the GLB and GLC global outputs to drive the global networks. A PLL macro can also drive the YB
                        and YC regular core outputs. The GLB (or GLC) global output cannot be reused if the YB (or YC)
                        output is used (Figure 2-19). Refer to the "PLL Macro" section on page 2-30 for more information.

                        Each global buffer, as well as the PLL reference clock, can be driven from one of the following:

                              3 dedicated single-ended I/Os using a hardwired connection

                              2 dedicated differential I/Os using a hardwired connection

                              The FPGA core

                        The CCC block is fully configurable, either via flash configuration bits set in the programming
                        bitstream or through an asynchronous interface. This asynchronous interface is dynamically
                        accessible from inside the Fusion device to permit changes of parameters (such as divide ratios)
                        during device operation. To increase the versatility and flexibility of the clock conditioning system,
                        the CCC configuration is determined either by the user during the design process, with
                        configuration data being stored in flash memory as part of the device programming procedure, or
                        by writing data into a dedicated shift register during normal device operation. This latter mode
                        allows the user to dynamically reconfigure the CCC without the need for core programming. The
                        shift register is accessed through a simple serial interface. Refer to the UJTAG Applications in Actel's
                        Low-Power Flash Devices handbook chapter and the "CCC and PLL Characteristics" section on
                        page 2-31 for more information.

2-24  Preliminary v1.7
                                                           Actel Fusion Mixed-Signal FPGAs

         Clock Source       Clock Conditioning                          Output
Input LVDS/LVPECL Macro
                            CLKA       GLA                 GLA
                                                           or
                            EXTFB      LOCK                GLA and (GLB or YB)
                                                           or
                            POWERDOWN                      GLA and (GLC or YC)
                                                           or
PADN                     Y                           GLB   GLA and (GLB or YB) and
                                                       YB  (GLC or YC)
PADP
                                                     GLC
           INBUF2 Macro                                YC
           Y
      PAD                   OADIVRST
                            OADIVHALF
                            OADIV[4:0]
                            OAMUX[2:0]
                            DLYGLA[4:0]
                            OBDIV[4:0]
                            OBMUX[2:0]
                            DLYYB[4:0]
                            DLYGLB[4:0]
                            OCDIV[4:0]
                            OCMUX[2:0]
                            DLYYC[4:0]
                            DLYGLC[4:0]
                            FINDIV[6:0]
                            FBDIV[6:0]
                            FBDLY[4:0]
                            FBSEL[1:0]
                            XDLYSEL
                            VCOSEL[2:0]

Notes:
1. Visit the Actel website for future application notes concerning dynamic PLL reconfiguration. Refer to the

    "PLL Macro" section on page 2-30 for signal descriptions.
2. Many specific INBUF macros support the wide variety of single-ended and differential I/O standards for the

    Fusion family.
3. Refer to the Fusion, IGLOO/e, and ProASIC3/E Macro Library Guide for more information.
Figure 2-19 Fusion CCC Options: Global Buffers with the PLL Macro

Table 2-12 Available Selections of I/O Standards within CLKBUF and CLKBUF_LVDS/LVPECL Macros

                                                                   CLKBUF Macros

                                                                 CLKBUF_LVCMOS5
                                                                CLKBUF_LVCMOS331

                                                                CLKBUF_LVCMOS18

                                                                CLKBUF_LVCMOS15

                                                                      CLKBUF_PCI
                                                                    CLKBUF_LVDS2

                                                                   CLKBUF_LVPECL

Notes:
1. This is the default macro. For more details, refer to the Fusion, IGLOO/e and ProASIC3/E Macro Library

     Guide.
2. The BLVDS and M-LVDS standards are supported with CLKBUF_LVDS.

                            Preliminary v1.7                                        2 - 25
Device Architecture

                  Global Buffers with No Programmable Delays

                        The CLKBUF and CLKBUF_LVPECL/LVDS macros are composite macros that include an I/O macro
                        driving a global buffer, hardwired together (Figure 2-20).
                        The CLKINT macro provides a global buffer function driven by the FPGA core.
                        The CLKBUF, CLKBUF_LVPECL/LVDS, and CLKINT macros are pass-through clock sources and do not
                        use the PLL or provide any programmable delay functionality.
                        Many specific CLKBUF macros support the wide variety of single-ended and differential I/O
                        standards supported by Fusion devices. The available CLKBUF macros are described in the Fusion,
                        IGLOO/e and ProASIC3/E Macro Library Guide.

                          Clock Source                      Clock Conditioning  Output
                                                                                 GLA
CLKBUF_LVDS/LVPECL Macro  CLKBUF Macro     CLKINT Macro          None            or
                                                                                 GLB
      PADN                                                                       or
                                                                                 GLC
      PADP  Y             PAD           Y  A             Y

Figure 2-20 Global Buffers with No Programmable Delay

2-26                                    Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Global Buffers with Programmable Delay

The CLKDLY macro is a pass-through clock source that does not use the PLL, but provides the ability
to delay the clock input using a programmable delay (Figure 2-21). The CLKDLY macro takes the
selected clock input and adds a user-defined delay element. This macro generates an output clock
phase shift from the input clock.

The CLKDLY macro can be driven by an INBUF macro to create a composite macro, where the I/O
macro drives the global buffer (with programmable delay) using a hardwired connection. In this
case, the I/O must be placed in one of the dedicated global I/O locations.

Many specific INBUF macros support the wide variety of single-ended and differential I/O standards
supported by the Fusion family. The available INBUF macros are described in the Fusion, IGLOO/e
and ProASIC3/E Macro Library Guide.

The CLKDLY macro can be driven directly from the FPGA core.

The CLKDLY macro can also be driven from an I/O that is routed through the FPGA regular routing
fabric. In this case, users must instantiate a special macro, PLLINT, to differentiate from the
hardwired I/O connection described earlier.

The visual CLKDLY configuration in the SmartGen part of the Libero IDE and Designer tools allows
the user to select the desired amount of delay and configures the delay elements appropriately.
SmartGen also allows the user to select the input clock source. SmartGen will automatically
instantiate the special macro, PLLINT, when needed.

      Clock Source        Clock Conditioning                              Output
                                                                            GLA
Input LVDS/LVPECL Macro                                                     or
                                                                            GLB
                          CLK                 GL                            or
                                                                            GLC
PADN                   Y

PADP

                          DLYGL[4:0]

      INBUF* Macro

      PAD           Y

Figure 2-21 Fusion CCC Options: Global Buffers with Programmable Delay

                          Preliminary v1.7                                        2 - 27
Device Architecture

                Global Input Selections

                        Each global buffer, as well as the PLL reference clock, can be driven from one of the following
                        (Figure 2-22):

                              3 dedicated single-ended I/Os using a hardwired connection
                              2 dedicated differential I/Os using a hardwired connection
                              The FPGA core

Each shaded box represents an      To Core
input buffer called out by the
appropriate name: INBUF or
INBUF_LVDS/LVPECL.

     Sample Pin Names
                      GAA01

      GAA11                     +

                                                     Source for CCC
                                                     (CLKA or CLKB or CLKC)

      GAA21                     +                       Routed Clock
                                                     (from FPGA core)2

                   GAA[0:2]: GA represents global in the northwest corner
                   of the device. A[0:2]: designates specific A clock source.

Notes:

3. Represents the global input pins. Globals have direct access to the clock conditioning block and are not
    routed via the FPGA fabric. Refer to the "User I/O Naming Convention" section on page 2-157 for more
    information.

4. Instantiate the routed clock source input as follows:
    a) Connect the output of a logic element to the clock input of the PLL, CLKDLY, or CLKINT macro.
    b) Do not place a clock source I/O (INBUF or INBUF_LVPECL/LVDS) in a relevant global pin location.

5. LVDS-based clock sources are available in the east and west banks on all Fusion devices.
Figure 2-22 Clock Input Sources Including CLKBUF, CLKBUF_LVDS/LVPECL, and CLKINT

2-28                               Preliminary v1.7
                                                                                                         Actel Fusion Mixed-Signal FPGAs

      CCC Physical Implementation

      The CCC circuit is composed of the following (Figure 2-23):
          PLL core
          3 phase selectors
          6 programmable delays and 1 fixed delay
          5 programmable frequency dividers that provide frequency multiplication/division (not
               shown in Figure 2-23 because they are automatically configured based on the user's
               required frequencies)
          1 dynamic shift register that provides CCC dynamic reconfiguration capability (not shown)

      CCC Programming
      The CCC block is fully configurable. It is configured via static flash configuration bits in the array,
      set by the user in the programming bitstream, or configured through an asynchronous dedicated
      shift register, dynamically accessible from inside the Fusion device. The dedicated shift register
      permits changes of parameters such as PLL divide ratios and delays during device operation. This
      latter mode allows the user to dynamically reconfigure the PLL without the need for core
      programming. The register file is accessed through a simple serial interface.

CLKA

                       Four-Phase Output  Phase   Programmable GLA
      PLL Core                            Select   Delay Type 2

      Fixed Delay  Programmable
                    Delay Type 1

                                          Phase   Programmable GLB
                                          Select   Delay Type 2

                                                  Programmable YB
                                                   Delay Type 1

                                                  Programmable GLC
                                                   Delay Type 2

                                          Phase
                                          Select

                                                                                                                      Programmable YC
                                                                                                                        Delay Type 1

Note: Clock divider and multiplier blocks are not shown in this figure or in SmartGen. They are automatically
          configured based on the user's required frequencies.

Figure 2-23 PLL Block

                   Preliminary v1.7                                 2 - 29
Device Architecture

                  PLL Macro

                        The PLL functionality of the clock conditioning block is supported by the PLL macro. Note that the
                        PLL macro reference clock uses the CLKA input of the CCC block, which is only accessible from the
                        global A[0:2] package pins. Refer to Figure 2-22 on page 2-28 for more information.

                        The PLL macro provides five derived clocks (three independent) from a single reference clock. The
                        PLL feedback loop can be driven either internally or externally. The PLL macro also provides power-
                        down input and lock output signals. During power-up, POWERDOWN should be asserted LOW until
                        VCC is up. See Figure 2-19 on page 2-25 for more information.
                       Inputs:

                              CLKA: selected clock input

                              POWERDOWN (active low): disables PLLs. The default state is power-down on (active low).

                        Outputs:

                              LOCK (active high): indicates that PLL output has locked on the input reference signal

                              GLA, GLB, GLC: outputs to respective global networks

                              YB, YC: allows output from the CCC to be routed back to the FPGA core

                        As previously described, the PLL allows up to five flexible and independently configurable clock
                        outputs. Figure 2-23 on page 2-29 illustrates the various clock output options and delay elements.

                        As illustrated, the PLL supports three distinct output frequencies from a given input clock. Two of
                        these (GLB and GLC) can be routed to the B and C global networks, respectively, and/or routed to
                        the device core (YB and YC).

                        There are five delay elements to support phase control on all five outputs (GLA, GLB, GLC, YB, and
                        YC).

                        There is also a delay element in the feedback loop that can be used to advance the clock relative to
                        the reference clock.

                        The PLL macro reference clock can be driven by an INBUF macro to create a composite macro,
                        where the I/O macro drives the global buffer (with programmable delay) using a hardwired
                        connection. In this case, the I/O must be placed in one of the dedicated global I/O locations.

                        The PLL macro reference clock can be driven directly from the FPGA core.

                        The PLL macro reference clock can also be driven from an I/O routed through the FPGA regular
                        routing fabric. In this case, users must instantiate a special macro, PLLINT, to differentiate it from
                        the hardwired I/O connection described earlier.

                        The visual PLL configuration in SmartGen, available with the Libero IDE and Designer tools, will
                        derive the necessary internal divider ratios based on the input frequency and desired output
                        frequencies selected by the user. SmartGen allows the user to select the various delays and phase
                        shift values necessary to adjust the phases between the reference clock (CLKA) and the derived
                        clocks (GLA, GLB, GLC, YB, and YC). SmartGen also allows the user to select where the input clock is
                        coming from. SmartGen automatically instantiates the special macro, PLLINT, when needed.

2-30  Preliminary v1.7
                                                                        Actel Fusion Mixed-Signal FPGAs

             CCC and PLL Characteristics

             Timing Characteristics

Table 2-13 Fusion CCC/PLL Specification               Min.      Typ.  Max.            Unit
Parameter

Clock Conditioning Circuitry Input Frequency fIN_CCC    1.5             350             MHz

Clock Conditioning Circuitry Output Frequency fOUT_CCC  0.75            350             MHz

Delay Increments in Programmable Delay Blocks1, 2                 160                   ps

Number of Programmable Values in Each Programmable                      32

Delay Block

Input Period Jitter                                                     1.5             ns

CCC Output Peak-to-Peak Period Jitter FCCC_OUT          Max Peak-to-Peak Period Jitter

                                                        1 Global        3 Global
                                                        Network         Networks

                                                          Used             Used

0.75 MHz to 24 MHz                                      1.00%           1.00%

24 MHz to 100 MHz                                       1.50%           1.50%

100 MHz to 250 MHz                                      2.25%           2.25%

250 MHz to 350 MHz                                      3.50%           3.50%

Acquisition Time     LockControl = 0                                    300             s

                     LockControl = 1                                    6.0             ms
                     LockControl = 0
Tracking Jitter3                                                        1.6             ns

                     LockControl = 1                                    0.8             ns

Output Duty Cycle                                       48.5            51.5            %
Delay Range in Block: Programmable Delay 1 1, 2
Delay Range in Block: Programmable Delay 2 1, 2         0.6             5.56            ns
Delay Range in Block: Fixed Delay 1, 2
                                                        0.025           5.56            ns

                                                                  2.2                   ns

Notes:

1. This delay is a function of voltage and temperature. See Table 3-7 on page 3-9 for deratings.

2. TJ = 25C, VCC = 1.5 V
3. Tracking jitter is defined as the variation in clock edge position of PLL outputs with reference to PLL input

    clock edge. Tracking jitter does not measure the variation in PLL output period, which is covered by period
    jitter parameter.

                                           Preliminary v1.7                                   2 - 31
Device Architecture

                  No-Glitch MUX (NGMUX)

                        Positioned downstream from the PLL/CCC blocks, the NGMUX provides a special switching
                        sequence between two asynchronous clock domains that prevents generating any unwanted
                        narrow clock pulses. The NGMUX is used to switch the source of a global between three different
                        clock sources. Allowable inputs are either two PLL/CCC outputs or a PLL/CCC output and a regular
                        net, as shown in Figure 2-24. The GLMUXCFG[1:0] configuration bits determine the source of the
                        CLK inputs (i.e., internal signal or GLC). These are set by SmartGen during design but can also be
                        changed by dynamically reconfiguring the PLL. The GLMUXSEL[1:0] bits control which clock source
                        is passed through the NGMUX to the global network (GL). See Table 2-14.

                     Crystal Oscillator
                                RC Oscillator

      W I/O Ring                                            GLMUXCFG[1:0]
        CCC/PLL

                                        GLINT

                                        PLL/ GLA            NGMUX     To Clock Rib Driver
                                        CCC                           GL
                     Clock I/Os
                     From FPGA Core               GLC

                                                       PWR UP

                                                       GLMUXSEL[1:0]

      Figure 2-24 NGMUX
      Table 2-14 NGMUX Configuration and Selection Table

      GLMUXCFG[1:0]  GLMUXSEL[1:0]                             Selected Input    MUX Type
      00                                                            Signal     2-to-1 GLMUX
                                     X                      0         GLA
      01                                                              GLC      2-to-1 GLMUX
                                     X                      1         GLA
                                                                     GLINT
                                     X                      0

                                     X                      1

2-32                                 Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

The NGMUX macro is simplified to show the two clock options that have been selected by the
GLMUXCFG[1:0] bits. Figure 2-25 illustrates the NGMUX macro. During design, the two clock
sources are connected to CLK0 and CLK1 and are controlled by GLMUXSEL[1:0] to determine which
signal is to be passed through the MUX.

                                     CLK0

                                                                                                  GL

                                      CLK1

                                                              GLMUXSEL[1:0]
Figure 2-25 NGMUX Macro
The sequence of switching between two clock sources (from CLK0 to CLK1) is as follows
(Figure 2-26):

    GLMUXSEL[1:0] transitions to initiate a switch.
    GL drives one last complete CLK0 positive pulse (i.e., one rising edge followed by one falling

         edge).
    From that point, GL stays LOW until the second rising edge of CLK1 occurs.
    At the second CLK1 rising edge, GL will begin to continuously deliver the CLK1 signal.
    Minimum tsw = 0.05 ns at 25C (typical conditions)
For examples of NGMUX operation, refer to the Fusion Handbook.

                                                                   tSW
                                    CLK0

                                    CLK1

                     GLMUXSEL[1:0]

                                       GL

Figure 2-26 NGMUX Waveform

Preliminary v1.7  2 - 33
Device Architecture

   Real-Time Counter System

                        The addition of the RTC system enables Fusion devices to support both standby and sleep modes of
                        operation, greatly reducing power consumption in many applications.
                        The RTC system comprises six blocks that work together to provide this increased functionality and
                        reduced power consumption. Figure 2-27 shows these blocks and how they are connected.

                              RTC (Figure 2-28)
                              Crystal oscillator
                              VCC33UP detector
                              Voltage regulator initialization
                              Voltage regulator logic
                              1.5 V voltage regulator
                        The RTC provides a counter as well as a MATCH output signal that can be used in the FPGA and,
                        optionally, to power up the on-chip 1.5 V voltage regulator and provide a 1.5 V power source (in
                        conjunction with an external pass transistor) to the FPGA fabric portion of the Fusion silicon device.
                        The FPGA fabric can then be used to power down the 1.5 V voltage regulator.

                                                    FPGA Fabric                               1.5 V FPGA Supply Input

                                             1.5/3.3 Volt Level Shift Circuitry

                                                    From                                                               3.3 V
                                                    Core Flash
                                                    Bits                                                                 External
                                                                                                                         Pass
        Crystal Oscillator             RTC                                       VR Logic     1.5 V Voltage              Transistor
                   MODE[1:0]                                                                    Regulator
                                                                                                                               1.5 V
                EN0            ACM     RTCMATCH           VR Init                                                             Output
      XTAL1
      XTAL2                                         Flash Bits                   FPGA_VRON    VRFPD  PTBASE                     Power-Up/Down
                                                    VRINITSTATE                  RTCPSMMATCH                                    Toggle Control
                       CLKOUT  RTCMODE[1:0]                                                                                     Switch

                               SELMODE                                                               PTEM
                                       RTCPSMMATCH                                                     PUB

                                                                                 VRON         VRPU

                               RTCCLK

                                                    VCC33UP

                                                                                 ~ VRPSM

Figure 2-27 Real-Time Counter System

2-34                                                Preliminary v1.7
                                              Actel Fusion Mixed-Signal FPGAs

                 Analog Configuration MUX (ACM) Interface

                 Control/Status                            Main
                     Register                              Registers

7-Bit Prescaler      40-Bit           40-Bit
(Crystal 128)     Counter        Read-Hold

                                    Register

                 40-Bit Match      40 XNORs   Match
                    Register                  Bits

                                                          Match

Figure 2-28 RTC Block Diagram

Real-Time Counter

The RTC can be configured to power up the FPGA fabric at a specific time or periodically. Custom
user logic or a soft microcontroller within the FPGA fabric portion of the Fusion device can be
programmed to read and modify the registers in the RTC. Based on this information or other
internal or external conditions, the FPGA may decide to power down the voltage regulator and
thereby shut off the FPGA fabric.

The 3.3 V supply must be valid and the crystal oscillator (nominally 32.768 kHz) enabled for a self-
timed wake-up/restart operation. When operating from the 3.3 V supply with the 1.5 V core
voltage disabled, the ACM interface to the FPGA is disabled.

A 40-bit loadable counter is used as the primary timekeeping element within the RTC. This counter
can be configured to reset itself when a count value is reached that matches the value set within a
40-bit match register. Note that the only exception to this self-clearing mechanism occurs when the
40-bit counter is equal to zero (0x0000000000), since the counter would never increment from
zero. When the device is first powered up (i.e., when the 3.3 V supply becomes valid), the 40-bit
counter and 40-bit match register are cleared to logic 0, and the MATCH output signal is active
(logic 1). At any time when the 40-bit counter value does not match the value in the 40-bit match
register, the MATCH output signal will become inactive (logic 0).

Both the counter and match registers are addressable (read/write) from the FPGA and through a
JTAG instruction. The RTC is considered part of the analog system and is accessed via the ACM.
Refer to the "Analog Configuration MUX" section on page 2-124 for detailed instructions on
writing to the RTC via the ACM. The counter action can be suspended/resumed by clearing/setting
the Cntr_En bit in the Control/Status register.

If a 32.768 kHz external crystal is connected to the crystal oscillator pad, the 40-bit counter will
have a maximum count of 4,294,967,296 seconds, which equates to just over 136 years of elapsed
timekeeping with a minimum period of 1/256 of a second, which will be the toggle rate of the LSB
of the 40-bit counter.

Frequencies other than 32.768 kHz can be used as a clock source with the appropriate scaling of
the LSB time interval. The maximum input clock frequency is 20 MHz (the crystal oscillator limit).

The RTC signals are included in the Analog Block macro. The signal functions and descriptions are
listed in Table 2-15.

A Fusion use model includes the RTC controlling the power-up state of the FPGA core via the 1.5 V
regulator. To support this model, the crystal oscillator must be running and configured when the
FPGA is powered off. Hence, when the RTC is enabled in the system design, it will configure the
crystal oscillator via the RTCXTLMODE[1:0] and RTCXTLSEL pins.

A 7-bit prescaler block is used to divide the source clock (from the external crystal) by 128. This
prescaled 50%-duty-cycle clock signal is then used by the counter logic as its reference clock. Given

                 Preliminary v1.7                                     2 - 35
Device Architecture

           an external crystal frequency of 32.768 kHz, the prescaler output clock will toggle at a rate of
           32.768 kHz / 128 = 256 Hz.

           The RTC is built from and controlled by a set of registers, denoted "Main Registers" in Figure 2-27
           on page 2-34. These registers are accessed via the ACM.

           The FPGA fabric portion of the Fusion device must be powered up and active at least once to write
           to the various registers within the RTC to initialize them for the user's application. Users set up the
           RTC by configuring it from the Actel SmartGen tool, implementing custom logic or programming a
           soft microcontroller.

           The 40-bit counter and match registers are each divided into five bytes. Each byte is directly
           addressable by the ACM. The address map of registers accessed through the ACM and used by the
           RTC is shown in Table 2-16 on page 2-36.

Table 2-15 RTC Macro Signal Description

Signal Name          Number of Bits Direction                                   Function
                                                Match between 40-bit counter and match register
RTCMATCH                 1                 Out  RTCMATCH connected to voltage regulator power
                                                supply monitor (VRPSM) (Figure 2-30 on page 2-40)
RTCPSMMATCH              1                 Out  Drives XTLOSC RTCMODE[1:0] pins
                                                Drives XTLOSC SELMODE pin
RTCXTLMODE[1:0]          2                 Out  RTC clock input from XTLOSC CLKOUT pin

RTCXTLSEL                1                 Out

RTCCLK                   1                 In

Table 2-16 RTC ACM Memory Map

ACM_ADDR[7:0] Decimal Register Name             Description                            Use

0x40                 64  COUNTER0 Counter bits 7:0                   Used to preload the counter to a
0x41                                                                 specified start point. Default setting
0x42                 65  COUNTER1 Counter bits 15:8                  is all zeroes.

                     66  COUNTER2 Counter bits 23:16

0x43                 67  COUNTER3 Counter bits 31:24

0x44                 68  COUNTER4 Counter bits 39:32

0x48                 72  MATCHREG0 Match register bits 7:0           The RTC uses a 40-bit register to
0x49
0x4A                 73  MATCHREG1 Match register bits 15:8          compare against the 40-bit counter
0x4B
0x4C                 74                                              value to determine when a match
                         MATCHREG2 Match register bits 23:16 occurs. This 40-bit match register, like

                     75  MATCHREG3 Match register bits 31:24 the counter, is broken into 5 bytes

                     76  MATCHREG4 Match register bits 39:32 (MATCHREG04).

0x50                 80  MATCHBITS0 Individual match bits 7:0 Each bit of the 40-bit counter is
0x51
0x52                 81  MATCHBITS1 Individual match bits 15:8 compared to each bit of the 40-bit
0x53                                                                 match register via XNOR gates. These
                     82  MATCHBITS2 Individual match bits 23:16 40 match bits are partitioned into 5

                     83  MATCHBITS3 Individual match bits 31:24 bytes.

0x54                 84  MATCHBITS4 Individual match bits 39:32

0x58                 88  CTRL_STAT Control (write) / Status Control (write) / Status (read) register

                                           (read) register bits 7:0  bits 7:0

0x59                 89  TEST_REG Test register(s)                   Test register(s)

Note: Accessing RTC Registers: When reading the RTC count or match register, which operates in the XTLCLK
          domain, the appropriate 40-bit value is first copied to a capture register through clock synchronization
          circuitry, if and only if the least significant byte of that set of register is addressed. Higher-order bytes of
          the same set of registers captured with the LSB can then be read on immediately later read cycles. Higher-
          order bytes of that set of registers can be read in any order but must be read before switching to a
          different set of registers to ensure data consistency. For example, RTC counter address ranges from 0x40
          to 0x44, register 0x40 must be accessed first before accessing addresses 0x41, 0x42, 0x43, and 0x44 to get
          the full 40-bit value.

2-36                                       Preliminary v1.7
                                                                    Actel Fusion Mixed-Signal FPGAs

           The Control/Status register (CTRL_STAT) is an 8-bit register that defines the operation of the RTC.
           The Control register can reset the RTC, enabling operation to begin with all zeroes in the counter.
           The RTC can be configured to clear upon a match with the Match register, or it can continue to
           count while still setting the match signal. To enable the Fusion device to power up at a specific time
           or at periodic intervals, the RTC can be configured to turn on the 1.5 V voltage regulator.
           Table 2-17 details the CTRL_STAT settings.

Table 2-17 RTC Control/Status Register

Bit     Name                                           Description

7       rtc_rst RTC Reset: Writing a logic 1 to this bit causes an RTC reset.2 Writing a logic 0 to this bit will

              allow synchronous deassertion of reset after two ACM_CLK cycles if VCC33UP = 1.3

6       cntr_en Counter Enable: A logic 1 in this bit will enable the counter if the RTC is not in reset.

              It takes 64 RTCCLK positive edges (one-half of the prescaler division factor), after reset is
              removed and cntr_en = 1, before the counter is incremented.4

              A logic 0 in this bit resets the prescaler and therefore suspends incrementing the counter,
              but the counter is not reset.

              Before writing to the counter registers, the counter must be disabled.

5 vr_en_mat Voltage Regulator Enable on Match: Writing a logic 1 to this bit will allow the RTCMATCH
                           output port to go to logic 1 when a match occurs between the 40-bit counter and the 40-
                           bit match register.

              Logic 0 forces RTCMATCH to logic 0 to prevent enabling the voltage regulator from the
              RTC.

4:3 xt_mode[1:0 Crystal Oscillator Mode: These bits control the RTCXTLMODE[1:0] output ports that are

        ]     connected to the RTCMODE[1:0] input pins of the crystal oscillator pad. For 32 kHz crystal

              operation, this should be set to '01'.

              (See the "Crystal Oscillator" section on page 2-22.)

2 rst_cnt_omat Reset Counter on Match: A logic 1 written to this bit allows the counter to clear itself when
                           a match occurs. In this situation, the 40-bit counter clears on the next rising edge of the
                           prescaled clock, approximately 4 ms after the match occurs (the prescaled clock toggles at a
                           rate of 256 Hz, given a 32.768 kHz external crystal).

              A logic 0 written to this bit allows the counter to increment indefinitely while still allowing
              match events to occur.

1       rstb_cnt Counter Reset: A logic 0 resets the 40-bit counter value to zero. A logic 1 allows the

              counter to count.4

0       xtal_en Crystal Oscillator Enable: This bit controls the RTCXTLSEL output port connected to the

              SELMODE input pin of the crystal oscillator. If a logic 0 is written to this bit, only the FPGA

              fabric can be used to control the crystal oscillator EN and MODE[1:0] inputs.

              xtal_en = 1: RTC takes control of crystal oscillator. For example, the RTC Mode bits
              configure the crystal oscillator (not the FPGA mode bits).

              To enable sleep mode, set xtal_en = `0', so the crystal is controlled from the FPGA EN signal.
              Then when the FPGA is powered down, the signal from the fpga_en will be 0. It disables
              the crystal oscillator.

Notes:

1. Default state (set when VCC33UP = 0) for bits 07 is logic 0.

2. Reset of all RTC states (except this Control/Status register) occurs asynchronously if VCC33UP = 0 or
    CTRL_STAT bit 7 (rtc_rst) is set to 1.

3. Reset is removed synchronously after two rising edges of ACM_CLK, following both VCC33UP = 1 and rtc_rst = 0.
4. Counter will first increment on the 64th rising edge of RTCCLK after all of the following are true:

     a. reset is removed
     b. rstb_cnt (CTRL_STAT bit 1) is set to 1
     c. cntr_en (CTRL_STAT bit 6) is set to 1
     and will then increment every 128 RTCCLK cycles.

                                          Preliminary v1.7                                                 2 - 37
Device Architecture

                Crystal Oscillator (Xtal Osc)

                        When used as the clock source for the RTC, the crystal oscillator will be configured by the RTC with
                        the RTCXTLMODE[1:0] RTC macro pins. Refer to the "Crystal Oscillator" section on page 2-22 for
                        specific details on crystal oscillator operation.
                        The crystal oscillator input to the RTC is divided by 128, so bit 0 of the RTC toggles at the frequency
                        of the crystal oscillator divided by 128. The frequencies of the RTC are gated by those of the crystal
                        oscillator, from 32.768 kHz to 20 MHz. When used with a 32.768 kHz crystal, bit 0 of the of RTC has
                        a period of ~7.8 ms, and bit 7 has a period of 1 second.

                Voltage Regulator (VR) Initialization (Init)

                        The VR Init block determines voltage regulator behavior when the 3.3 V supply is valid. The Fusion
                        devices support different use models. Some of these require the 1.5 V voltage regulator to turn on
                        when the 3.3 V supply is stable. Other use models require additional conditions to be met before
                        the 1.5 V VR turns on. Since the FPGA is not operating when the 3.3 V supply is off, the VR Init
                        block lets the user define VR behavior at design time. Two bits can be set within the core, which
                        bits the VR Init block will read as it comes out of reset and either turn on the VR or leave it in an off
                        state.

                Voltage Regulator Logic

                        The VR Logic block, along with the VR, combines commands from the FPGA, RTC, VR Init block,
                        VCC33UP detector, and PUB pad to determine whether or not the VR is enabled.
                        The VR can be enabled from several sources: the PUB pin, the RTC_MATCH signal from the RTC
                        block, or triggered by the VR Init block. Once triggered, the VR will remain on. Only the FPGA
                        fabric can disable the VR, unless the VCC33A supply falls below the VCC33UP threshold and a reset
                        occurs.

2-38  Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

1.5 V Voltage Regulator

The VR generates a 1.5 V power supply from the 3.3 V power supply. The 1.5 V output is intended
to supply all 1.5 V needs of the Fusion device. This regulator requires an external bipolar pass
transistor (Figure 2-29). The VR can drive up to 20 mA of current through the PTBASE pad. The
amount of 1.5 V current available is dependent upon the gain of the external pass transistor used.
Enable for this block is generated in the VR Logic block or from the PUB pin.
The VR is forced "on" with TRST high or floating (internal pull-up), so an external pull-down is
required on TRST if the customer desires to power-down the VR.
The 1.5 V is not supplied internally to the Fusion device. It must be routed externally to the VCC pins
on the device. Therefore the user is not required to use the VR and can use an off-chip 1.5 V supply
if desired.

RTC FPGA                                           On-Chip Off-Chip

                    1.5 V                                         VCC33A
                 Regulator                                 VCC33A

                    PDVR                           PTBASE
                                                    PTEM
       Power-Up/Down Control Circuit
                                                                1.5 V Out

                                                   VCC33A
                                                       1 A
                                                           PUB

Figure 2-29 Voltage Regulator

                                 Preliminary v1.7                          2 - 39
Device Architecture

                Voltage Regulator Power Supply Monitor (VRPSM)

                        As the functions of the VR Logic and Power System Monitor work closely together to control the
                        power-up state of the FPGA core, these functions were combined into a single VRPSM macro
                        (Figure 2-30).
                        The signals for the VRPSM macro are listed in Table 2-18. The PUB input comes from the PUB pin on
                        the device and can be pulled LOW by a signal external to the Fusion device. This can be used to
                        wake up the device. The inputs VRINITSTATE and RTCPSMMTACH come from the VR Init and RTC
                        blocks, respectively, and either can initiate a VR power-up. The detailed description is available in
                        the Fusion Handbook.

                                 PUB               FPGAGOOD
                                 VRPU                   PUCORE
                                 VRINITSTATE
                                 RTCPSMMATCH

      Figure 2-30 VRPSM Macro

      Table 2-18 Signals for VRPSM Macro

      Signal Name  Number of     Direction                          Function
                        Bits

      PUB          1             Input Active low signal to power up the FPGA core via

                                              the 1.5 V regulator.

                                              In this reference design, PUB is on the top level,
                                              connected to an external switch.

      VRPU         1             Input When this pin is at logic 1, the FPGA core will be

                                              turned off via the voltage regulator.

      VRINITSTATE  1             Input This feature is not used in this reference design and

                                              is not shown in the macro generated by SmartGen.

                                              If used, the signal enables you to set your voltage

                                              regulator output at power-up (ON or OFF).

      RTCPSMMATCH  1             Input        This feature is not used in this reference design. If
                                              used, this active high signal is driven by the RTC's
                                              match signal to indicate that the RTC counter value
                                              matches the pre-defined Match register value set in
                                              SmartGen.

      FPGAGOOD     1             Output Logic 1 indicates that FPGA is logically functional.

      PUCORE       1             Output Logic 1 indicates that FPGA is logically functional.

2-40                             Preliminary v1.7
                                                                                                                     Actel Fusion Mixed-Signal FPGAs

Embedded Memories

                  Fusion devices include four types of embedded memory: flash block, FlashROM, SRAM, and FIFO.

            Flash Memory Block

                  Fusion is the first FPGA that offers a flash memory block (FB). Each FB block stores 2 Mbits of data.
                  The flash memory block macro is illustrated in Figure 2-31. The port pin name and descriptions are
                  detailed on Table 2-19 on page 2-42. All flash memory block signals are active high, except for CLK
                  and active low RESET. All flash memory operations are synchronous to the rising edge of CLK.

                                  ADDR[17:0]           RD[31:0]

                                  WD[31:0]             BUSY

                                  DATAWIDTH[1:0] STATUS[1:0]

                                  REN

                                  READNEXT

                                  PAGESTATUS

                                  WEN

                                  ERASEPAGE

                                  PROGRAM

                                  SPAREPAGE

                                  AUXBLOCK

                                  UNPROTECTPAGE

                                  OVERWRITEPAGE

                                  DISCARDPAGE

                                  OVERWRITEPROTECT

                                  PAGELOSSPROTECT

                                  PIPE

                                  LOCKREQUEST

                                  CLK
                                                RESET

Figure 2-31 Flash Memory Block

                                  Preliminary v1.7               2 - 41
Device Architecture

            Flash Memory Block Pin Names

Table 2-19 Flash Memory Block Pin Names

Interface Name       Width Direction                                  Description

ADDR[17:0]           18  In Byte offset into the FB. Byte-based address.

AUXBLOCK             1   In When asserted, the page addressed is used to access the auxiliary block

                                      within that page.

BUSY                 1   Out When asserted, indicates that the FB is performing an operation.

CLK                  1   In User interface clock. All operations and status are synchronous to the

                                      rising edge of this clock.

DATAWIDTH[1:0]       2   In Data width

                                  00 = 1 byte in RD/WD[7:0]
                                  01 = 2 bytes in RD/WD[15:0]
                                  1x = 4 bytes in RD/WD[31:0]

DISCARDPAGE          1   In When asserted, the contents of the Page Buffer are discarded so that a

                                      new page write can be started.

ERASEPAGE            1   In When asserted, the contents of the Page Buffer are discarded so that a

                                      new page write can be started.

LOCKREQUEST          1   In When asserted, indicates to the JTAG controller that the FPGA

                                      interface is accessing the FB.

OVERWRITEPAGE        1   In When asserted, the page addressed is overwritten with the contents of
                                  the Page Buffer if the page is writable.

OVERWRITEPROTE 1         In When asserted, all program operations will set the overwrite protect
CT                                bit of the page being programmed.

PAGESTATUS           1   In When asserted with REN, initiates a read page status operation.

PAGELOSSPROTECT 1        In When asserted, a modified Page Buffer must be programmed or
                                  discarded before accessing a new page.

PIPE                 1   In Adds a pipeline stage to the output for operation above 50 MHz.

PROGRAM              1   In When asserted, writes the contents of the Page Buffer into the FB page

                                      addressed.

RD[31:0]             32  Out Read data; data will be valid from the first non-busy cycle (BUSY = 0)

                                      after REN has been asserted.

READNEXT             1   In When asserted with REN, initiates a read-next operation.

REN                  1   In When asserted, initiates a read operation.

RESET                1   In When asserted, resets the state of the FB (active low).

SPAREPAGE            1   In When asserted, the sector addressed is used to access the spare page

                                      within that sector.

2-42                                       Preliminary v1.7
                                                                                      Actel Fusion Mixed-Signal FPGAs

Table 2-19 Flash Memory Block Pin Names (continued)

Interface Name  Width Direction                             Description

STATUS[1:0]     2   Out Status of the last operation completed:

                                 00: Successful completion

                                 01: Read-/Unprotect-Page: single error detected and corrected

                                 Write: operation addressed a write-protected page
                                 Erase-Page: protection violation
                                 Program: Page Buffer is unmodified
                                 Protection violation

                                 10: Read-/Unprotect-Page: two or more errors detected

                                 11: Write: attempt to write to another page before programming
                                       current page

                                 Erase-Page/Program: page write count has exceeded the 10-year
                                 retention threshold

UNPROTECTPAGE   1   In When asserted, the page addressed is copied into the Page Buffer and
                             the Page Buffer is made writable.

WD[31:0]        32  In Write data

WEN             1   In When asserted, stores WD in the page buffer.

             All flash memory block input signals are active high, except for RESET.

                                 Preliminary v1.7                                               2 - 43
Device Architecture

                  Flash Memory Block Diagram

                        A simplified diagram of the flash memory block is shown in Figure 2-32.

      RD[31:0]                Output                 ECC    Page Buffer = 8 Blocks               Flash Array = 64 Sectors
                               MUX                   Logic       Plus AUX Block

                                       Block Buffer
                                         (128 bits)

               WD[31 :0]      Control
                               Logic
           ADDDR[17:0]
     DATAWIDTH[1:0]

                        REN
              READNEXT
           PAGESTATUS

                      WEN
             ERASEPAGE

               PROGRAM
             SPAREPAGE
              AUXBLOCK
     UNPROTECTPAGE
     OVERWRITEPAGE
         DISCARDPAGE
OVERWRITEPROTECT
  PAGELOSSPROTECT

                        PIPE
         LOCKREQUEST

                        CLK
                     RESET
            STATUS[1:0]
                      BUSY

Figure 2-32 Flash Memory Block Diagram

                  The logic consists of the following sub-blocks:
                        Flash Array
                           Contains all stored data. The flash array contains 64 sectors, and each sector contains 33
                           pages of data.
                        Page Buffer
                           A page-wide volatile register. A page contains 8 blocks of data and an AUX block.
                        Block Buffer
                           Contains the contents of the last block accessed. A block contains 128 data bits.
                        ECC Logic
                           The FB stores error correction information with each block to perform single-bit error
                           correction and double-bit error detection on all data blocks.

2-44                                   Preliminary v1.7
                                                                                                          Actel Fusion Mixed-Signal FPGAs

       Flash Memory Block Addressing

       Figure 2-33 shows a graphical representation of the flash memory block.

               33 Pages                                                                     Spare Page     Sector n
                                                                                      Page 31

                                                        ....

                                                            Page 3
                                                   Page 2
                                          Page 1
                                  Page 0

                                                                                                           ....

                         ....                                                                               Sector 1
                                                                                                            Sector 0
                               1190
                                                                                                        Notes:
       140                                                                                              1 block = 128 bits
                                                                                                        1 page = 8 blocks plus the AUX block
Block  1       2         3     4                               5     6     7  Aux                       1 sector = 33 pages
                                                                                 Block                  1 Flash array = 64 sectors
0

Block Organization

Byte 0                                                                        User Data
      Byte 1                                                                     (32 bits)
            Byte 2
                  Byte 3
                                                Byte 14
                                                      Byte 15

Figure 2-33 Flash Memory Block Organization

       Each FB is partitioned into sectors, pages, blocks, and bytes. There are 64 sectors in an FB, and each
       sector contains 32 pages and 1 spare page. Each page contains 8 data blocks and 1 auxiliary block.
       Each data block contains 16 bytes of user data, and the auxiliary block contains 4 bytes of user
       data.

       Addressing for the FB is shown in Table 2-20.

Table 2-20 FB Address Bit Allocation ADDR[17:0]

17             12              11                                       7               6               4            3        0

       Sector                                                  Page                         Block                       Byte

       When the spare page of a sector is addressed (SPAREPAGE active), ADDR[11:7] are ignored.
       When the Auxiliary block is addressed (AUXBLOCK active), ADDR[6:2] are ignored.
       Note: The spare page of sector 0 is unavailable for any user data. Writes to this page will return an
       error, and reads will return all zeroes.

                                                                     Preliminary v1.7                                                         2 - 45
Device Architecture

      Data operations are performed in widths of 1 to 4 bytes. A write to a location in a page that is not
      already in the Page Buffer will cause the page to be read from the FB Array and stored in the Page
      Buffer. The block that was addressed during the write will be put into the Block Buffer, and the
      data written by WD will overwrite the data in the Block Buffer. After the data is written to the
      Block Buffer, the Block Buffer is then written to the Page Buffer to keep both buffers in sync.
      Subsequent writes to the same block will overwrite the Block Buffer and the Page Buffer. A write to
      another block in the page will cause the addressed block to be loaded from the Page Buffer, and
      the write will be performed as described previously.

      The data width can be selected dynamically via the DATAWIDTH input bus. The truth table for the
      data width settings is detailed in Table 2-21. The minimum resolvable address is one 8-bit byte. For
      data widths greater than 8 bits, the corresponding address bits are ignored--when
      DATAWIDTH = 0 (2 bytes), ADDR[0] is ignored, and when DATAWIDTH = '10' or '11' (4 bytes),
      ADDR[1:0] are ignored. Data pins are LSB-oriented and unused WD data pins must be grounded.

      Table 2-21 Data Width Settings                    Data Width
       DATAWIDTH[1:0]                                      1 byte [7:0]
       00                                                 2 byte [15:0]
       01                                                 4 bytes [31:0]
       10, 11

      Flash Memory Block Protection

      Page Loss Protection
      When the PAGELOSSPROTECT pin is set to logic 1, it prevents writes to any page other than the
      current page in the Page Buffer until the page is either discarded or programmed.

      A write to another page while the current page is Page Loss Protected will return a STATUS of '11'.

      Overwrite Protection
      Any page that is Overwrite Protected will result in the STATUS being set to '01' when an attempt is
      made to either write, program, or erase it. To set the Overwrite Protection state for a page, set the
      OVERWRITEPROTECT pin when a Program operation is undertaken. To clear the Overwrite Protect
      state for a given page, an Unprotect Page operation must be performed on the page, and then the
      page must be programmed with the OVERWRITEPROTECT pin cleared to save the new page.

      LOCKREQUEST
      The LOCKREQUEST signal is used to give the user interface control over simultaneous access of the
      FB from both the User and JTAG interfaces. When LOCKREQUEST is asserted, the JTAG interface will
      hold off any access attempts until LOCKREQUEST is deasserted.

      Flash Memory Block Operations

      FB Operation Priority
      The FB provides for priority of operations when multiple actions are requested simultaneously.
      Table 2-22 shows the priority order (priority 0 is the highest).

      Table 2-22 FB Operation Priority                  Priority
       Operation

      System Initialization                               0

      FB Reset                                            1

      Read                                                2

      Write                                               3

      Erase Page                                          4

      Program                                             5

      Unprotect Page                                      6

      Discard Page                                        7

2-46                                    Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Access to the FB is controlled by the BUSY signal. The BUSY output is synchronous to the CLK signal.
FB operations are only accepted in cycles where BUSY is logic 0.
Write Operation
Write operations are initiated with the assertion of the WEN signal. Figure 2-34 on page 2-47
illustrates the multiple Write operations.

CLK

WEN

ADDR[17:0]       A0  A1                A2 A3 A4  A5  A6

WD[31:0]         D0  D1                D2 D3 D4  D5  D6

DATAWIDTH[1:0]

PAGELOSSPROTECT

BUSY

STATUS[1:0]              S0 S1 S2 S3                 S4 S5 S6

Figure 2-34 FB Write Waveform

                  When a Write operation is initiated to a page that is currently not in the Page Buffer, the FB control
                  logic will issue a BUSY signal to the user interface while the page is loaded from the FB Array into
                  the Page Buffer. (Note: The number of clock cycles that the BUSY output is asserted during the load
                  of the Page Buffer is variable.) After loading the page into the Page Buffer, the addressed data
                  block is loaded from the Page Buffer into the Block Buffer. Subsequent writes to the same block of
                  the page will incur no busy cycles. A write to another block in the page will assert BUSY for four
                  cycles (five cycles when PIPE is asserted), to allow the data to be written to the Page Buffer and
                  have the current block loaded into the Block Buffer.

                  Write operations are considered successful as long as the STATUS output is '00'. A non-zero STATUS
                  indicates that an error was detected during the operation and the write was not performed. Note
                  that the STATUS output is "sticky"; it is unchanged until another operation is started.

                  Only one word can be written at a time. Write word width is controlled by the DATAWIDTH bus.
                  Users are responsible for keeping track of the contents of the Page Buffer and when to program it
                  to the array. Just like a regular RAM, writing to random addresses is possible. Users can write into
                  the Page Buffer in any order but will incur additional BUSY cycles. It is not necessary to modify the
                  entire Page Buffer before saving it to nonvolatile memory.

                  Write errors include the following:

                       1. Attempting to write a page that is Overwrite Protected (STATUS = '01'). The write is not
                           performed.

                       2. Attempting to write to a page that is not in the Page Buffer when Page Loss Protection is
                           enabled (STATUS = '11'). The write is not performed.

                Program Operation
                  A Program operation is initiated by asserting the PROGRAM signal on the interface. Program
                  operations save the contents of the Page Buffer to the FB Array. Due to the technologies inherent
                  in the FB, a program operation is a time consuming operation (~8 ms). While the FB is writing the
                  data to the array, the BUSY signal will be asserted.

                     Preliminary v1.7                    2 - 47
Device Architecture

                        During a Program operation, the sector and page addresses on ADDR are compared with the
                        stored address for the page (and sector) in the Page Buffer. If there is a mismatch between the two
                        addresses, the Program operation will be aborted and an error will be reported on the STATUS
                        output.
                        It is possible to write the Page Buffer to a different page in memory. When asserting the PROGRAM
                        pin, if OVERWRITEPAGE is asserted as well, the FB will write the contents of the Page Buffer to the
                        sector and page designated on the ADDR inputs if the destination page is not Overwrite Protected.
                        A Program operation can be utilized to either modify the contents of the page in the flash memory
                        block or change the protections for the page. Setting the OVERWRITEPROTECT bit on the interface
                        while asserting the PROGRAM pin will put the page addressed into Overwrite Protect Mode.
                        Overwrite Protect Mode safeguards a page from being inadvertently overwritten during
                        subsequent Program or Erase operations.
                        Program operations that result in a STATUS value of '01' do not modify the addressed page. For all
                        other values of STATUS, the addressed page is modified.
                        Program errors include the following:

                             1. Attempting to program a page that is Overwrite Protected (STATUS = '01')
                             2. Attempting to program a page that is not in the Page Buffer when the Page Buffer has

                                 entered Page Loss Protection Mode (STATUS = '01')
                             3. Attempting to perform a program with OVERWRITEPAGE set when the page addressed has

                                 been Overwrite Protected (STATUS = '01')
                             4. The Write Count of the page programmed exceeding the Write Threshold defined in the

                                 part specification (STATUS = '11')
                             5. The ECC Logic determining that there is an uncorrectable error within the programmed

                                 page (STATUS = '10')
                             6. Attempting to program a page that is not in the Page Buffer when OVERWRITEPAGE is not

                                 set and the page in the Page Buffer is modified (STATUS = '01')
                             7. Attempting to program the page in the Page Buffer when the Page Buffer is not modified
                        The waveform for a Program operation is shown in Figure 2-35.

                        CLK    Page                    Valid
               PROGRAM       0
            ADDR[17:0]
     OVERWRITEPAGE
OVERWRITEPROTECT
  PAGELOSSPROTECT

                      BUSY
            STATUS[1:0]

Figure 2-35 FB Program Waveform

                  Note: OVERWRITEPAGE is only sampled when the PROGRAM or ERASEPAGE pins are asserted.
                  OVERWRITEPAGE is ignored in all other operations.

2-48                                 Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Erase Page Operation
The Erase Page operation is initiated when the ERASEPAGE pin is asserted. The Erase Page
operation allows the user to erase (set user data to zero) any page within the FB.
The use of the OVERWRITEPAGE and PAGELOSSPROTECT pins is the same for erase as for a Program
Page operation.
As with the Program Page operation, a STATUS of '01' indicates that the addressed page is not
erased.
A waveform for an Erase Page operation is shown in Figure 2-36.
Erase errors include the following:

    1. Attempting to erase a page that is Overwrite Protected (STATUS = '01')
    2. Attempting to erase a page that is not in the Page Buffer when the Page Buffer has entered

         Page Loss Protection mode (STATUS = '01')
    3. The Write Count of the erased page exceeding the Write Threshold defined in the part

         specification (STATUS = '11')
    4. The ECC Logic determining that there is an uncorrectable error within the erased page

         (STATUS = '10')

                       CLK  Page
                    ERASE
            ADDR[17:0]                                  Valid
OVERWRITEPROTECT
  PAGELOSSPROTECT
                     BUSY
           STATUS[1:0]

Figure 2-36 FB Erase Page Waveform

                                      Preliminary v1.7         2 - 49
Device Architecture

                     Read Operation
                        Read operations are designed to read data from the FB Array, Page Buffer, Block Buffer, or status
                        registers. Read operations support a normal read and a read-ahead mode (done by asserting
                        READNEXT). Also, the timing for Read operations is dependent on the setting of PIPE.
                        The following diagrams illustrate representative timing for Non-Pipe Mode (Figure 2-37) and Pipe
                        Mode (Figure 2-38) reads of the flash memory block interface.

                  CLK  A0        A1                     A2 A3     A4
                  REN
       ADDR[17:0]          0         S0 S1 S2 S3               0          S4
DATAWIDTH[1:0]
                BUSY       0         D0 D1 D2 D3               0      D4      0
      STATUS[1:0]
           RD[31:0]

Figure 2-37 Read Waveform (Non-Pipe Mode, 32-bit access)

                  CLK  A0        A1            A2 A3              A4
                  REN
       ADDR[17:0]             0      S0 S1 S2 S3                  0       S4
DATAWIDTH[1:0]                0      D0 D1 D2 D3
                BUSY                                              0   X D4 0
      STATUS[1:0]
           RD[31:0]

Figure 2-38 Read Waveform (Pipe Mode, 32-bit access)

2-50                                 Preliminary v1.7
                                                               Actel Fusion Mixed-Signal FPGAs

The following error indications are possible for Read operations:

    1. STATUS = '01' when a single-bit data error was detected and corrected within the block
         addressed.

    2. STATUS = '10' when a double-bit error was detected in the block addressed (note that the
         error is uncorrected).

In addition to data reads, users can read the status of any page in the FB by asserting PAGESTATUS
along with REN. The format of the data returned by a page status read is shown in Table 2-23, and
the definition of the page status bits is shown in Table 2-24.

Table 2-23 Page Status Read Data Format

   31 8 7 4         3                        2              1                      0

Write Count Reserved Over Threshold Read Protected Write Protected Overwrite Protected

Table 2-24 Page Status Bit Definition

Page Status Bit(s)                              Definition

318                The number of times the page addressed has been programmed/erased

74                 Reserved; read as 0

3                   Over Threshold indicator (see the"Program Operation" section on page 2-47)

2                   Read Protected; read protect bit for page, which is set via the JTAG interface

                    and only affects JTAG operations. This bit can be overridden by using the

                    correct user key value.

1                   Write Protected; write protect bit for page, which is set via the JTAG interface

                    and only affects JTAG operations. This bit can be overridden by using the

                    correct user key value.

0                   Overwrite Protected; designates that the user has set the OVERWRITEPROTECT

                    bit on the interface while doing a Program operation. The page cannot be

                    written without first performing an Unprotect Page operation.

                       Preliminary v1.7                                                2 - 51
Device Architecture

                     Read Next Operation
                        The Read Next operation is a feature by which the next block relative to the block in the Block
                        Buffer is read from the FB Array while performing reads from the Block Buffer. The goal is to
                        minimize wait states during consecutive sequential Read operations.
                        The Read Next operation is performed in a predetermined manner because it does look-ahead
                        reads. The general look-ahead function is as follows:

                              Within a page, the next block fetched will be the next in linear address.
                              When reading the last data block of a page, it will fetch the first block of the next page.
                              When reading spare pages, it will read the first block of the next sector's spare page.
                              Reads of the last sector will wrap around to sector 0.
                              Reads of Auxiliary blocks will read the next linear page's Auxiliary block.

                        When an address on the ADDR input does not agree with the predetermined look-ahead address,
                        there is a time penalty for this access. The FB will be busy finishing the current look-ahead read
                        before it can start the next read. The worst case is a total of nine BUSY cycles before data is
                        delivered.

                        The Non-Pipe Mode and Pipe Mode waveforms for Read Next operations are illustrated in
                        Figure 2-39 and Figure 2-40.

                  CLK       A0  A1  A2 A3 A4                     A5    A6 A7 A8  A9
                  REN
        READNEXT       0            S0 S1 S2 S3 0 S4 S5 S6 S7 0 S8 S9
       ADDR[17:0]      0            D0 D1 D2 D3 0 D4 D5 D6 D7 0 D8 D9
DATAWIDTH[1:0]
                BUSY
      STATUS[1:0]
           RD[31:0]

Figure 2-39 Read Next Waveform (Non-Pipe Mode, 32-bit access)

           CLK              A0  A1                           A2 A3 A4  A5  A6 A7 A8
          REN          0
READNEXT                           S0 S1 S2 S3 0 S4 S5 S6 S7 0
ADDR[17:0]                          D0 D1 D2 D3 0 D4 D5 D6 D7 0
         BUSY
STATUS[1:0]
    RD[31:0]

Figure 2-40 Read Next WaveForm (Pipe Mode, 32-bit access)

2-52                                Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Unprotect Page Operation
An Unprotect Page operation will clear the protection for a page addressed on the ADDR input. It
is initiated by setting the UNPROTECTPAGE signal on the interface along with the page address on
ADDR.
If the page is not in the Page Buffer, the Unprotect Page operation will copy the page into the Page
Buffer. The Copy Page operation occurs only if the current page in the Page Buffer is not Page Loss
Protected.
The waveform for an Unprotect Page operation is shown in Figure 2-41.

CLK

UNPROTECTPAGE

ADDR[17:0]     Page

BUSY

STATUS[1:0]                                               Valid

Figure 2-41 FB Unprotected Page Waveform

                  The Unprotect Page operation can incur the following error conditions:

                       1. If the copy of the page to the Page Buffer determines that the page has a single-bit
                           correctable error in the data, it will report a STATUS = '01'.

                       2. If the address on ADDR does not match the address of the Page Buffer, PAGELOSSPROTECT is
                           asserted, and the Page Buffer has been modified, then STATUS = '11' and the addressed
                           page is not loaded into the Page Buffer.

                       3. If the copy of the page to the Page Buffer determines that at least one block in the page has
                           a double-bit uncorrectable error, STATUS = '10' and the Page Buffer will contain the
                           corrupted data.

                Discard Page Operation
                  If the contents of the modified Page Buffer have to be discarded, the DISCARDPAGE signal should
                  be asserted. This command results in the Page Buffer being marked as unmodified.

                  The timing for the operation is shown in Figure 2-42. The BUSY signal will remain asserted until the
                  operation has completed.

                       CLK
         D ISC AR D PAGE

                     BUSY
Figure 2-42 FB Discard Page Waveform

                                        Preliminary v1.7         2 - 53
Device Architecture

                  Flash Memory Block Characteristics

                            CLK
                        RESET
Active Low, Asynchronous

                         BUSY

Figure 2-43 Reset Timing Diagram

Table 2-25 Flash Memory Block Timing
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter                           Description                                     2  1 Std.        Units
                                                                                                         ns
tCLK2RD                          Clock-to-Q in 5-cycle read mode of the Read Data   7.99 9.10 10.70      ns
                                 Clock-to-Q in 6-cycle read mode of the Read Data   5.03 5.73 6.74       ns
                                                                                                         ns
tCLK2BUSY                        Clock-to-Q in 5-cycle read mode of BUSY            4.95 5.63 6.62       ns
                                 Clock-to-Q in 6-cycle read mode of BUSY            4.45 5.07 5.96       ns
                                                                                                         ns
tCLK2STATUS                      Clock-to-Status in 5-cycle read mode               11.24 12.81 15.06    ns
                                 Clock-to-Status in 6-cycle read mode               4.48 5.10 6.00       ns
                                                                                                         ns
tDSUNVM                          Data Input Setup time for the Control Logic        1.92 2.19 2.57       ns
tDHNVM                           Data Input Hold time for the Control Logic         0.00 0.00 0.00       ns
tASUNVM                          Address Input Setup time for the Control Logic     2.76 3.14 3.69       ns
tAHNVM                           Address Input Hold time for the Control Logic      0.00 0.00 0.00       ns
tSUDWNVM                         Data Width Setup time for the Control Logic        1.85 2.11 2.48       ns
tHDDWNVM                         Data Width Hold time for the Control Logic         0.00 0.00 0.00       ns
tSURENNVM                        Read Enable Setup time for the Control Logic       3.85 4.39 5.16       ns
tHDRENNVM                        Read Enable Hold Time for the Control Logic        0.00 0.00 0.00       ns
tSUWENNVM                        Write Enable Setup time for the Control Logic      2.37 2.69 3.17       ns
tHDWENNVM                        Write Enable Hold Time for the Control Logic       0.00 0.00 0.00       ns
tSUPROGNVM                       Program Setup time for the Control Logic           2.16 2.46 2.89       ns
tHDPROGNVM                       Program Hold time for the Control Logic            0.00 0.00 0.00       ns
tSUSPAREPAGE                     SparePage Setup time for the Control Logic         3.74 4.26 5.01       ns
tHDSPAREPAGE                     SparePage Hold time for the Control Logic          0.00 0.00 0.00       ns
tSUAUXBLK                        Auxiliary Block Setup Time for the Control Logic   3.74 4.26 5.00       ns
tHDAUXBLK                        Auxiliary Block Hold Time for the Control Logic    0.00 0.00 0.00       ns
tSURDNEXT                        ReadNext Setup Time for the Control Logic          2.17 2.47 2.90       ns
tHDRDNEXT                        ReadNext Hold Time for the Control Logic           0.00 0.00 0.00       ns
tSUERASEPG                       Erase Page Setup Time for the Control Logic        3.76 4.28 5.03
tHDERASEPG                       Erase Page Hold Time for the Control Logic         0.00 0.00 0.00
tSUUNPROTECTPG                   Unprotect Page Setup Time for the Control Logic    2.01 2.29 2.69
tHDUNPROTECTPG                   Unprotect Page Hold Time for the Control Logic     0.00 0.00 0.00

2-54                                Preliminary v1.7
                                                                                    Actel Fusion Mixed-Signal FPGAs

Table 2-25 Flash Memory Block Timing (continued)
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter                            Description                                    2    1      Std.  Units
                                                                                                 2.52     ns
tSUDISCARDPG    Discard Page Setup Time for the Control Logic                       1.88  2.14   0.00     ns
tHDDISCARDPG                                                                              0.00   2.19     ns
tSUOVERWRPRO    Discard Page Hold Time for the Control Logic                        0.00  1.86   0.00     ns
tHDOVERWRPRO                                                                              0.00   2.27     ns
tSUPGLOSSPRO    Overwrite Protect Setup Time for the Control Logic                  1.64  1.93   0.00     ns
tHDPGLOSSPRO                                                                              0.00   3.33     ns
tSUPGSTAT       Overwrite Protect Hold Time for the Control Logic                   0.00  2.83   0.00     ns
tHDPGSTAT                                                                                 0.00   2.52     ns
tSUOVERWRPG     Page Loss Protect Setup Time for the Control Logic                  1.69  2.14   0.00     ns
tHDOVERWRPG                                                                               0.00   1.16     ns
tSULOCKREQUEST  Page Loss Protect Hold Time for the Control Logic                   0.00  0.99   0.00     ns
tHDLOCKREQUEST                                                                            0.00   1.25    ns
tRECARNVM       Page Status Setup Time for the Control Logic                        2.49  1.07   0.00    ns
tREMARNVM                                                                                 0.00   12.50    ns
tMPWARNVM       Page Status Hold Time for the Control Logic                         0.00  12.50
                                                                                                 5.00     ns
                Over Write Page Setup Time for the Control Logic                    1.88         80.00  MHz

                Over Write Page Hold Time for the Control Logic                     0.00

                Lock Request Setup Time for the Control Logic                       0.87

                Lock Request Hold Time for the Control Logic                        0.00

                Reset Recovery Time                                                 0.94

                Reset Removal Time                                                  0.00

                Asynchronous Reset Minimum Pulse Width for the 10.00
                Control Logic

tMPWCLKNVM      Clock Minimum Pulse Width for the Control Logic                     4.00 5.00
tFMAXCLKNVM
                Maximum Frequency for Clock for the Control Logic 100.00 80.00

                                     Preliminary v1.7                                                   2 - 55
Device Architecture

                FlashROM

                        Fusion devices have 1 kbit of on-chip nonvolatile flash memory that can be read from the FPGA
                        core fabric. The FlashROM is arranged in eight banks of 128 bits during programming. The 128 bits
                        in each bank are addressable as 16 bytes during the read-back of the FlashROM from the FPGA core
                        (Figure 2-44).
                        The FlashROM can only be programmed via the IEEE 1532 JTAG port. It cannot be programmed
                        directly from the FPGA core. When programming, each of the eight 128-bit banks can be selectively
                        reprogrammed. The FlashROM can only be reprogrammed on a bank boundary. Programming
                        involves an automatic, on-chip bank erase prior to reprogramming the bank. The FlashROM
                        supports a synchronous read and can be read on byte boundaries. The upper three bits of the
                        FlashROM address from the FPGA core define the bank that is being accessed. The lower four bits
                        of the FlashROM address from the FPGA core define which of the 16 bytes in the bank is being
                        accessed.
                        The maximum FlashROM access clock is 20 MHz. Figure 2-45 shows the timing behavior of the
                        FlashROM access cycle--the address has to be set up on the rising edge of the clock for DOUT to be
                        valid on the next falling edge of the clock.
                        If the address is unchanged for two cycles:

                              D0 becomes invalid 10 ns after the second rising edge of the clock.
                              D0 becomes valid again 10 ns after the second falling edge.
                        If the address unchanged for three cycles:
                              D0 becomes invalid 10 ns after the second rising edge of the clock.
                              D0 becomes valid again 10 ns after the second falling edge.
                              D0 becomes invalid 10 ns after the third rising edge of the clock.
                              D0 becomes valid again 10 ns after the third falling edge.

                               Byte Number in Bank  4 LSB of ADDR (READ)

                               15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

          Bank Number       7
      3 MSB of ADDR (READ)  6
                            5
                            4
                            3
                            2

                            1
                            0

      Figure 2-44 FlashROM Architecture

2-56                           Preliminary v1.7
                                                         Actel Fusion Mixed-Signal FPGAs

FlashROM Characteristics

       tSU                tSU                       tSU

           tHOLD                      tHOLD            tHOLD
Address           A0                          A1

                            tCK2Q            tCK2Q                                         tCK2Q
                                    D0              D0                                        D1

Figure 2-45 FlashROM Timing Diagram

Table 2-26 FlashROM Access Time
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter         Description                2          1                         Std.   Units
                                                                                             ns
tSU               Address Setup Time         0.53   0.61                            0.71     ns
tHOLD             Address Hold Time          0.00   0.00                            0.00     ns
tCK2Q             Clock to Out               21.42  24.40                           28.68
FMAX              Maximum Clock frequency    15.00  15.00                           15.00  MHz

                          Preliminary v1.7                                                        2 - 57
Device Architecture

                SRAM and FIFO

                        All Fusion devices have SRAM blocks along the north side of the device. Additionally, AFS600 and
                        AFS1500 devices have an SRAM block on the south side of the device. To meet the needs of high-
                        performance designs, the memory blocks operate strictly in synchronous mode for both read and
                        write operations. The read and write clocks are completely independent, and each may operate at
                        any desired frequency less than or equal to 350 MHz. The following configurations are available:

                              4k1, 2k2, 1k4, 5129 (dual-port RAM--two read, two write or one read, one write)

                              5129, 25618 (two-port RAM--one read and one write)
                              Sync write, sync pipelined/nonpipelined read
                        The Fusion SRAM memory block includes dedicated FIFO control logic to generate internal
                        addresses and external flag logic (FULL, EMPTY, AFULL, AEMPTY).
                        During RAM operation, addresses are sourced by the user logic, and the FIFO controller is ignored.
                        In FIFO mode, the internal addresses are generated by the FIFO controller and routed to the RAM
                        array by internal MUXes. Refer to Figure 2-46 for more information about the implementation of
                        the embedded FIFO controller.
                        The Fusion architecture enables the read and write sizes of RAMs to be organized independently,
                        allowing for bus conversion. This is done with the WW (write width) and RW (read width) pins. The
                        different DW configurations are 25618, 5129, 1k4, 2k2, and 4k1. For example, the write size
                        can be set to 25618 and the read size to 5129.

                        Both the write and read widths for the RAM blocks can be specified independently with the WW
                        (write width) and RW (read width) pins. The different DW configurations are 25618, 5129,
                        1k4, 2k2, and 4k1.

                        Refer to the allowable RW and WW values supported for each of the RAM macro types in
                        Table 2-27 on page 2-61.
                        When a width of one, two, or four is selected, the ninth bit is unused. For example, when writing 9-
                        bit values and reading 4-bit values, only the first four bits and the second four bits of each 9-bit
                        value are addressable for read operations. The ninth bit is not accessible.

2-58  Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Conversely, when writing 4-bit values and reading 9-bit values, the ninth bit of a read operation
will be undefined. The RAM blocks employ little-endian byte order for read and write operations.

                                                                         RD[17:0]           RD

          WD                                                  WD[17:0]
        RCLK
        WCLK                                                  RCLK

                                                              WCLK       RAM
                                                              RADD[J:0]

                                                              WADD[J:0]

              FREN  FWEN                                      REN        RPIPE
                                                              WEN              RW[2:0]
                                                                                   WW[2:0]

  RBLK              CNT 12        =                           FULL
   REN               E      AFVAL                             AFULL
ESTOP                                                        AEMPTY
                    CNT 12  SUB 12 AEVAL                      EMPTY
  WBLK               E                         =
   WEN

FSTOP
Reset

Figure 2-46 Fusion RAM Block with Embedded FIFO Controller

                    Preliminary v1.7                                                            2 - 59
Device Architecture                                    RAM4K9
                                              ADDRA11 DOUTA8
                  RAM4K9 Description          ADDRA10 DOUTA7

                        Figure 2-47 RAM4K9  ADDRA0 DOUTA0
                                              DINA8
                                              DINA7

                                              DINA0

                                              WIDTHA1
                                              WIDTHA0
                                              PIPEA
                                              WMODEA
                                              BLKA
                                              WENA
                                              CLKA
                                              ADDRB11 DOUTB8
                                              ADDRB10 DOUTB7

                                              ADDRB0 DOUTB0

                                              DINB8
                                              DINB7

                                              DINB0
                                              WIDTHB1
                                              WIDTHB0
                                              PIPEB
                                              WMODEB
                                              BLKB
                                              WENB
                                              CLKB

                                                        RESET

2-60                                          Preliminary v1.7
                                                              Actel Fusion Mixed-Signal FPGAs

The following signals are used to configure the RAM4K9 memory element:

WIDTHA and WIDTHB
These signals enable the RAM to be configured in one of four allowable aspect ratios (Table 2-27).

Table 2-27 Allowable Aspect Ratio Settings for WIDTHA[1:0]

WIDTHA1, WIDTHA0                        WIDTHB1, WIDTHB0                        DW

00                                      00                                      4k1

01                                      01                                      2k2

10                                      10                                      1k4

11                                      11                                      5129

Note: The aspect ratio settings are constant and cannot be changed on the fly.

BLKA and BLKB
These signals are active low and will enable the respective ports when asserted. When a BLKx signal
is deasserted, the corresponding port's outputs hold the previous value.

WENA and WENB
These signals switch the RAM between read and write mode for the respective ports. A LOW on
these signals indicates a write operation, and a HIGH indicates a read.

CLKA and CLKB
These are the clock signals for the synchronous read and write operations. These can be driven
independently or with the same driver.

PIPEA and PIPEB
These signals are used to specify pipelined read on the output. A LOW on PIPEA or PIPEB indicates
a nonpipelined read, and the data appears on the corresponding output in the same clock cycle. A
HIGH indicates a pipelined, read and data appears on the corresponding output in the next clock
cycle.

WMODEA and WMODEB
These signals are used to configure the behavior of the output when the RAM is in write mode. A
LOW on these signals makes the output retain data from the previous read. A HIGH indicates pass-
through behavior, wherein the data being written will appear immediately on the output. This
signal is overridden when the RAM is being read.

RESET
This active low signal resets the output to zero, disables reads and writes from the SRAM block, and
clears the data hold registers when asserted. It does not reset the contents of the memory.

ADDRA and ADDRB
These are used as read or write addresses, and they are 12 bits wide. When a depth of less than 4 k
is specified, the unused high-order bits must be grounded (Table 2-28).

Table 2-28 Address Pins Unused/Used for Various Supported Bus Widths

                                        ADDRx

DW               Unused                                                Used

4k1              None                                                  [11:0]

2k2              [11]                                                  [10:0]

1k4              [11:10]                                               [9:0]

5129             [11:9]                                                [8:0]

Note: The "x" in ADDRx implies A or B.

                  Preliminary v1.7                                                     2 - 61
Device Architecture

      DINA and DINB
      These are the input data signals, and they are nine bits wide. Not all nine bits are valid in all
      configurations. When a data width less than nine is specified, unused high-order signals must be
      grounded (Table 2-29).

      DOUTA and DOUTB
      These are the nine-bit output data signals. Not all nine bits are valid in all configurations. As with
      DINA and DINB, high-order bits may not be used (Table 2-29). The output data on unused pins is
      undefined.

      Table 2-29 Unused/Used Input and Output Data Pins for Various Supported Bus Widths

                                                       DINx/DOUTx

      DW            Unused                                        Used

      4k1           [8:1]                                         [0]

      2k2           [8:2]                                         [1:0]

      1k4           [8:4]                                         [3:0]

      5129          None                                          [8:0]

      Note: The "x" in DINx and DOUTx implies A or B.

2-62                 Preliminary v1.7
                                                 Actel Fusion Mixed-Signal FPGAs

RAM512X18 Description

                         RAM512X18

                         RADDR8            RD17
                         RADDR7            RD16

                         RADDR0            RD0

                         RW1
                         RW0

                         PIPE

                         REN
                         RCLK
                         WADDR8
                         WADDR7

                         WADDR0
                         WD17
                         WD16

                         WD0
                         WW1
                         WW0

                         WEN
                         WCLK

                                   RESET

Figure 2-48 RAM512X18

                         Preliminary v1.7        2 - 63
Device Architecture

      RAM512X18 exhibits slightly different behavior from RAM4K9, as it has dedicated read and write
      ports.

      WW and RW
      These signals enable the RAM to be configured in one of the two allowable aspect ratios
      (Table 2-30).

      Table 2-30 Aspect Ratio Settings for WW[1:0]

      WW[1:0]        RW[1:0]                              DW

      01                                              01  5129

      10                                              10  25618

      00, 11         00, 11                               Reserved

      WD and RD
      These are the input and output data signals, and they are 18 bits wide. When a 5129 aspect ratio
      is used for write, WD[17:9] are unused and must be grounded. If this aspect ratio is used for read,
      then RD[17:9] are undefined.

      WADDR and RADDR
      These are read and write addresses, and they are nine bits wide. When the 25618 aspect ratio is
      used for write or read, WADDR[8] or RADDR[8] are unused and must be grounded.

      WCLK and RCLK
      These signals are the write and read clocks, respectively. They are both active high.

      WEN and REN
      These signals are the write and read enables, respectively. They are both active low by default.
      These signals can be configured as active high.

      RESET
      This active low signal resets the output to zero, disables reads and/or writes from the SRAM block,
      and clears the data hold registers when asserted. It does not reset the contents of the memory.

      PIPE
      This signal is used to specify pipelined read on the output. A LOW on PIPE indicates a nonpipelined
      read, and the data appears on the output in the same clock cycle. A HIGH indicates a pipelined
      read, and data appears on the output in the next clock cycle.

      Clocking
      The dual-port SRAM blocks are only clocked on the rising edge. SmartGen allows falling-edge-
      triggered clocks by adding inverters to the netlist, hence achieving dual-port SRAM blocks that are
      clocked on either edge (rising or falling). For dual-port SRAM, each port can be clocked on either
      edge or by separate clocks, by port.

      Fusion devices support inversion (bubble pushing) throughout the FPGA architecture, including the
      clock input to the SRAM modules. Inversions added to the SRAM clock pin on the design schematic
      or in the HDL code will be automatically accounted for during design compile without incurring
      additional delay in the clock path.

      The two-port SRAM can be clocked on the rising edge or falling edge of WCLK and RCLK.

      If negative-edge RAM and FIFO clocking is selected for memory macros, clock edge inversion
      management (bubble pushing) is automatically used within the Fusion development tools,
      without performance penalty.

2-64                 Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Modes of Operation
There are two read modes and one write mode:

    Read Nonpipelined (synchronous--1 clock edge): In the standard read mode, new data is
         driven onto the RD bus in the same clock cycle following RA and REN valid. The read address
         is registered on the read port clock active edge, and data appears at RD after the RAM
         access time. Setting PIPE to OFF enables this mode.

    Read Pipelined (synchronous--2 clock edges): The pipelined mode incurs an additional clock
         delay from the address to the data but enables operation at a much higher frequency. The
         read address is registered on the read port active clock edge, and the read data is registered
         and appears at RD after the second read clock edge. Setting PIPE to ON enables this mode.

    Write (synchronous--1 clock edge): On the write clock active edge, the write data is written
         into the SRAM at the write address when WEN is HIGH. The setup times of the write address,
         write enables, and write data are minimal with respect to the write clock. Write and read
         transfers are described with timing requirements in the "SRAM Characteristics" section on
         page 2-66 and the "FIFO Characteristics" section on page 2-77.

RAM Initialization
Each SRAM block can be individually initialized on power-up by means of the JTAG port using the
UJTAG mechanism (refer to the "JTAG IEEE 1532" section on page 2-224 and the Fusion SRAM/FIFO
Blocks application note). The shift register for a target block can be selected and loaded with the
proper bit configuration to enable serial loading. The 4,608 bits of data can be loaded in a single
operation.

Preliminary v1.7  2 - 65
Device Architecture

                  SRAM Characteristics

                     Timing Waveforms

                                        tCYC

                       tCKH                   tCKL

      CLK    tAS tAH
      ADD
      BLK_B        A0                               A1           A2
      WEN_B                                                                 tBKH
      DO     tBKS
                                                                  tENH
             tENS

                                                          tCKQ1

             Dn                                     D0           D1               D2

                                                        tDOH1

      Figure 2-49 RAM Read for Flow-Through Output

                                        tCYC

                       tCKH                   tCKL

      CLK    tAS tAH
      ADD
      BLK_B        A0                               A1           A2
      WEN_B                                                                 tBKH
      DO     tBKS
                                                                   tENH
             tENS

                                                       tCKQ2     D0               D1
                       Dn

                                                                     tDOH2

      Figure 2-50 RAM Read for Pipelined Output

2-66                                    Preliminary v1.7
                                                                 Actel Fusion Mixed-Signal FPGAs

                                   tCYC

                         tCKH            tCKL

CLK    tAS tAH
ADD
BLK_B               A0                         A1                A2
WEN_B                                                                        tBKH
DI     tBKS

       tENS                                          tENH

                                               tDS tDH

                    DI0                        DI1

DO                                             Dn                                  D2

Figure 2-51 RAM Write, Output Retained (WMODE = 0)

                                         tCYC

                                   tCKH        tCKL

        CLK              tAS tAH
       ADD
     BLK_B                     A0                    A1               A2
    WEN_B
                         tBKS
           DI
                                                           tBKH

                        tENS

                                               tDS tDH

                         D0                          DI1              DI2

                DO  Dn                               DI0                   DI1
(flow-through)

       DO                                Dn                      DI0               DI1

    (Pipelined)

Figure 2-52 RAM Write, Output as Write Data (WMODE = 1)

                                   Preliminary v1.7                                2 - 67
Device Architecture

                     CLK1         tAS tAH               A2                             A3
                     ADD1             A0                D2                             D3

                        DI1       tDS tDH                  tAS tAH                             A4
                     CLK2             D0                        A1                           D1
                     ADD2               tWRO                                                 D0

                                               A0

                    DO2                          tCKQ1               D0
      (flow-through)              Dn                                            tCKQ2

                    DO2                     Dn
            (Pipelined)

      Figure 2-53 One Port Write / Other Port Read Same

                         CLK1     tAS tAH               A1                             A3
                                                        D2                             D3
                        ADD1           A0
                            DI1   tDS tDH                   tAS tAH                             A4
                                                                  A0                            D4
                         CLK2          D1                              tCKQ1           D0
                     WEN_B1             tCCKH
                     WEN_B2                                                                          tCKQ2
                                                                                                                      D0
                     ADD2                      A0

                     DI2                       D0

                    DO2                        Dn
      (pass-through)

                     DO2                                Dn

                     (pipelined)

      Figure 2-54 Write Access After Write onto Same Address

2-68                                               Preliminary v1.7
                                                             Actel Fusion Mixed-Signal FPGAs

CLK1

                   tAS tAH

ADD1                   A0               A2                   A3
                                                             D3
                   tDS tDH
                                                                       A4
DI1                    D0               D2                   D1
                                                             D0
                       tWRO

CLK2

WEN_B1

WEN_B2

                                               tAS tAH

ADD2                         A0                A1

                                 tCKQ1

              DO2  Dn                   D0
(pass-through)                                        tCKQ2

DO2                          Dn

(pipelined)

Figure 2-55 Read Access After Write onto Same Address

                             Preliminary v1.7                              2 - 69
Device Architecture

                     CLK1              tAS tAH               A1                      A0
                     ADD1                    A0                                      tCKQ1
                                                                D0
                     WEN_B1            tCKQ1                 tCKQ2                                   D1
                                                                                      D0
                    DO1            Dn                            tAS tAH
      (pass-through)                                                   A1                     A3
                                                                       D2                     D3
                              DO1               Dn
                     (pipelined)       tCCKH

                            CLK2

                     ADD2                        A0

                          DI2                    D1

                     WEN_B2

      Figure 2-56 Write Access After Read onto Same Address

                                                 tCYC

                                       tCKH            tCKL

                     CLK

      RESET_B

                     DO            Dm                                        tRSTBQ
                                                                   Dn

      Figure 2-57 RAM Reset

2-70                                             Preliminary v1.7
                                                                                    Actel Fusion Mixed-Signal FPGAs

           Timing Characteristics

Table 2-31 RAM4K9
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter                              Description                                  2  1 Std. Units

tAS        Address Setup time                                                       0.25 0.28 0.33 ns
tAH
tENS       Address Hold time                                                        0.00 0.00 0.00 ns
tENH
tBKS       REN_B,WEN_B Setup time                                                   0.14 0.16 0.19 ns
tBKH
tDS        REN_B, WEN_B Hold time                                                   0.10 0.11 0.13 ns
tDH
tCKQ1      BLK_B Setup time                                                         0.23 0.27 0.31 ns

           BLK_B Hold time                                                          0.02 0.02 0.02 ns

           Input data (DI) Setup time                                               0.18 0.21 0.25 ns

           Input data (DI) Hold time                                                0.00 0.00 0.00 ns

           Clock High to New Data Valid on DO (output retained, WMODE = 0) 1.79 2.03 2.39 ns

           Clock High to New Data Valid on DO (flow-through, WMODE = 1) 2.36 2.68 3.15 ns

tCKQ2      Clock High to New Data Valid on DO (pipelined)                           0.89 1.02 1.20 ns
tWRO
           Address collision clk-to-clk delay for reliable read access after write TBD TBD TBD ns
           on same address

tCCKH      Address collision clk-to-clk delay for reliable write access after TBD TBD TBD ns
           write/read on same address

tRSTBQ     RESET_B Low to Data Out Low on DO (flow-through)                         0.92 1.05 1.23 ns
           RESET_B Low to Data Out Low on DO (pipelined)                            0.92 1.05 1.23 ns

tREMRSTB RESET_B Removal                                                            0.29 0.33 0.38 ns

tRECRSTB   RESET_B Recovery                                                         1.50 1.71 2.01 ns

tMPWRSTB RESET_B Minimum Pulse Width                                                0.21 0.24 0.29 ns

tCYC       Clock Cycle time                                                         3.23 3.68 4.32 ns

FMAX       Maximum Clock Frequency                                                  310 272 231 MHz

Note: For the derating values at specific junction temperature and voltage-supply levels, refer to Table 3-7 on
          page 3-9.

                                       Preliminary v1.7                                 2 - 71
Device Architecture

Table 2-32 RAM512X18
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter                              Description                                  2 1 Std. Units

tAS        Address Setup time                                                       0.25 0.28 0.33 ns
tAH
tENS       Address Hold time                                                        0.00 0.00 0.00 ns
tENH
tDS        REN_B,WEN_B Setup time                                                   0.09 0.10 0.12 ns
tDH
tCKQ1      REN_B, WEN_B Hold time                                                   0.06 0.07 0.08 ns
tCKQ2
tWRO       Input data (DI) Setup time                                               0.18 0.21 0.25 ns

           Input data (DI) Hold time                                                0.00 0.00 0.00 ns

           Clock High to New Data Valid on DO (output retained, WMODE = 0) 2.16 2.46 2.89 ns

           Clock High to New Data Valid on DO (pipelined)                           0.90 1.02 1.20 ns

           Address collision clk-to-clk delay for reliable read access after write TBD TBD TBD ns
           on same address

tCCKH      Address collision clk-to-clk delay for reliable write access after TBD TBD TBD ns
           write/read on same address

tRSTBQ     RESET_B Low to Data Out Low on DO (flow-through)                         0.92 1.05 1.23 ns
           RESET_B Low to Data Out Low on DO (pipelined)                            0.92 1.05 1.23 ns

tREMRSTB RESET_B Removal                                                            0.29 0.33 0.38 ns

tRECRSTB   RESET_B Recovery                                                         1.50 1.71 2.01 ns

tMPWRSTB RESET_B Minimum Pulse Width                                                0.21 0.24 0.29 ns

tCYC       Clock Cycle time                                                         3.23 3.68 4.32 ns

FMAX       Maximum Clock Frequency                                                  310 272 231 MHz

Note: For the derating values at specific junction temperature and voltage-supply levels, refer to Table 3-7 on
          page 3-9.

2-72                                   Preliminary v1.7
                                                        Actel Fusion Mixed-Signal FPGAs

FIFO4K18 Description

                                 FIFO4K18

                         RW2                     RD17
                         RW1                     RD16
                         RW0
                         WW2                       RD0
                         WW1
                         WW0                      FULL
                         ESTOP                  AFULL
                         FSTOP                 EMPTY
                                             AEMPTY
                         AEVAL11
                         AEVAL10

                         AEVAL0

                         AFVAL11
                         AFVAL10

                         AFVAL0

                         REN
                         RBLK
                         RCLK

                         WD17
                         WD16

                         WD0
                         WEN
                         WBLK
                         WCLK
                         RPIPE

                                      RESET

Figure 2-58 FIFO4KX18

                         Preliminary v1.7               2 - 73
Device Architecture

      The following signals are used to configure the FIFO4K18 memory element:

      WW and RW
      These signals enable the FIFO to be configured in one of the five allowable aspect ratios
      (Table 2-33).

      Table 2-33 Aspect Ratio Settings for WW[2:0]

      WW2, WW1, WW0  RW2, RW1, RW0                                                 DW

      000                                             000                          4k1

      001                                             001                          2k2

      010                                             010                          1k4

      011                                             011                          5129

      100                                             100                          25618

      101, 110, 111                                   101, 110, 111                Reserved

      WBLK and RBLK
      These signals are active low and will enable the respective ports when LOW. When the RBLK signal
      is HIGH, the corresponding port's outputs hold the previous value.

      WEN and REN
      Read and write enables. WEN is active low and REN is active high by default. These signals can be
      configured as active high or low.

      WCLK and RCLK
      These are the clock signals for the synchronous read and write operations. These can be driven
      independently or with the same driver.

      RPIPE
      This signal is used to specify pipelined read on the output. A LOW on RPIPE indicates a
      nonpipelined read, and the data appears on the output in the same clock cycle. A HIGH indicates a
      pipelined read, and data appears on the output in the next clock cycle.

      RESET
      This active low signal resets the output to zero when asserted. It resets the FIFO counters. It also
      sets all the RD pins LOW, the FULL and AFULL pins LOW, and the EMPTY and AEMPTY pins HIGH
      (Table 2-34).

      Table 2-34 Input Data Signal Usage for Different Aspect Ratios

      DW                                                            WD/RD Unused

      4k1                                                 WD[17:1], RD[17:1]

      2k2                                                 WD[17:2], RD[17:2]

      1k4                                                 WD[17:4], RD[17:4]

      5129                                                WD[17:9], RD[17:9]

      25618                                                            

      WD
      This is the input data bus and is 18 bits wide. Not all 18 bits are valid in all configurations. When a
      data width less than 18 is specified, unused higher-order signals must be grounded (Table 2-34).

      RD
      This is the output data bus and is 18 bits wide. Not all 18 bits are valid in all configurations. Like the
      WD bus, high-order bits become unusable if the data width is less than 18. The output data on
      unused pins is undefined (Table 2-34).

2-74                 Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

ESTOP, FSTOP
ESTOP is used to stop the FIFO read counter from further counting once the FIFO is empty (i.e., the
EMPTY flag goes HIGH). A HIGH on this signal inhibits the counting.

FSTOP is used to stop the FIFO write counter from further counting once the FIFO is full (i.e., the
FULL flag goes HIGH). A HIGH on this signal inhibits the counting.

For more information on these signals, refer to the "ESTOP and FSTOP Usage" section on
page 2-76.

FULL, EMPTY
When the FIFO is full and no more data can be written, the FULL flag asserts HIGH. The FULL flag is
synchronous to WCLK to inhibit writing immediately upon detection of a full condition and to
prevent overflows. Since the write address is compared to a resynchronized (and thus time-
delayed) version of the read address, the FULL flag will remain asserted until two WCLK active
edges after a read operation eliminates the full condition.

When the FIFO is empty and no more data can be read, the EMPTY flag asserts HIGH. The EMPTY
flag is synchronous to RCLK to inhibit reading immediately upon detection of an empty condition
and to prevent underflows. Since the read address is compared to a resynchronized (and thus time-
delayed) version of the write address, the EMPTY flag will remain asserted until two RCLK active
edges after a write operation removes the empty condition.

For more information on these signals, refer to the "FIFO Flag Usage Considerations" section on
page 2-76.

AFULL, AEMPTY
These are programmable flags and will be asserted on the threshold specified by AFVAL and
AEVAL, respectively.

When the number of words stored in the FIFO reaches the amount specified by AEVAL while
reading, the AEMPTY output will go HIGH. Likewise, when the number of words stored in the FIFO
reaches the amount specified by AFVAL while writing, the AFULL output will go HIGH.

Preliminary v1.7  2 - 75
Device Architecture

                     AFVAL, AEVAL
                       The AEVAL and AFVAL pins are used to specify the almost-empty and almost-full threshold
                       values, respectively. They are 12-bit signals. For more information on these signals, refer to
                       "FIFO Flag Usage Considerations" section.

                     ESTOP and FSTOP Usage
                        The ESTOP pin is used to stop the read counter from counting any further once the FIFO is empty
                        (i.e., the EMPTY flag goes HIGH). Likewise, the FSTOP pin is used to stop the write counter from
                        counting any further once the FIFO is full (i.e., the FULL flag goes HIGH).

                        The FIFO counters in the Fusion device start the count at 0, reach the maximum depth for the
                        configuration (e.g., 511 for a 5129 configuration), and then restart at 0. An example application
                        for the ESTOP, where the read counter keeps counting, would be writing to the FIFO once and
                        reading the same content over and over without doing another write.

                     FIFO Flag Usage Considerations
                        The AEVAL and AFVAL pins are used to specify the 12-bit AEMPTY and AFULL threshold values,
                        respectively. The FIFO contains separate 12-bit write address (WADDR) and read address (RADDR)
                        counters. WADDR is incremented every time a write operation is performed, and RADDR is
                        incremented every time a read operation is performed. Whenever the difference between WADDR
                        and RADDR is greater than or equal to AFVAL, the AFULL output is asserted. Likewise, whenever
                        the difference between WADDR and RADDR is less than or equal to AEVAL, the AEMPTY output is
                        asserted. To handle different read and write aspect ratios, AFVAL and AEVAL are expressed in terms
                        of total data bits instead of total data words. When users specify AFVAL and AEVAL in terms of
                        read or write words, the SmartGen tool translates them into bit addresses and configures these
                        signals automatically. SmartGen configures the AFULL flag to assert when the write address
                        exceeds the read address by at least a predefined value. In a 2k8 FIFO, for example, a value of
                        1,500 for AFVAL means that the AFULL flag will be asserted after a write when the difference
                        between the write address and the read address reaches 1,500 (there have been at least 1500 more
                        writes than reads). It will stay asserted until the difference between the write and read addresses
                        drops below 1,500.

                        The AEMPTY flag is asserted when the difference between the write address and the read address
                        is less than a predefined value. In the example above, a value of 200 for AEVAL means that the
                        AEMPTY flag will be asserted when a read causes the difference between the write address and the
                        read address to drop to 200. It will stay asserted until that difference rises above 200. Note that the
                        FIFO can be configured with different read and write widths; in this case, the AFVAL setting is
                        based on the number of write data entries and the AEVAL setting is based on the number of read
                        data entries. For aspect ratios of 5129 and 25618, only 4,096 bits can be addressed by the 12 bits
                        of AFVAL and AEVAL. The number of words must be multiplied by 8 and 16, instead of 9 and 18.
                        The SmartGen tool automatically uses the proper values. To avoid halfwords being written or read,
                        which could happen if different read and write aspect ratios are specified, the FIFO will assert FULL
                        or EMPTY as soon as at least a minimum of one word cannot be written or read. For example, if a
                        two-bit word is written and a four-bit word is being read, the FIFO will remain in the empty state
                        when the first word is written. This occurs even if the FIFO is not completely empty, because in this
                        case, a complete word cannot be read. The same is applicable in the full state. If a four-bit word is
                        written and a two-bit word is read, the FIFO is full and one word is read. The FULL flag will remain
                        asserted because a complete word cannot be written at this point.

2-76  Preliminary v1.7
                                                            Actel Fusion Mixed-Signal FPGAs

FIFO Characteristics

Timing Waveforms

                RCLK/                             tMPWRSTB  tRSTCK
                WCLK      tRSTFG
             RESET_B
                                tRSTAF
                      EF  tRSTFG

                   AEF          tRSTAF

                      FF                MATCH (A0)

                    AFF
               WA/RA
(Address Counter)
Figure 2-59 FIFO Reset

RCLK                        tCYC                                           tRCKEF
    EF                                          tCKAF

AEF

               WA/RA        NO MATCH                        Dist = AEF_TH  MATCH (EMPTY)
(Address Counter) NO MATCH

Figure 2-60 FIFO EMPTY Flag and AEMPTY Flag Assertion

                            Preliminary v1.7                                       2 - 77
Device Architecture

      WCLK                               tCYC                                      t WCKFF
           FF                                                tCKAF

         AFF

               WA/RA     NO MATCH        NO MATCH                   Dist = AFF_TH           MATCH (FULL)
(Address Counter)

Figure 2-61 FIFO FULL and AFULL Flag Assertion

      WCLK

               WA/RA MATCH  NO MATCH     NO MATCH                NO MATCH     NO MATCH      Dist = AEF_TH + 1
(Address Counter) (EMPTY)

      RCLK               1st rising      2nd rising
                           edge             edge

                         after 1st        after 1st
                           write            write
                                                         tRCKEF

                     EF

                                                                                        tCKAF

      AEF

Figure 2-62 FIFO EMPTY Flag and AEMPTY Flag Deassertion

      RCLK

               WA/RA                         NO MATCH               NO MATCH  NO MATCH Dist = AFF_TH - 1
(Address Counter) MATCH (FULL) NO MATCH  1st Rising                                              tCKAF

                         1st Rising         Edge
                            Edge         After 2nd

                         After 1st          Read
                            Read                        tWCKF

      WCLK

      FF

      AFF

Figure 2-63 FIFO FULL Flag and AFULL Flag Deassertion

2-78                                     Preliminary v1.7
                                                                                   Actel Fusion Mixed-Signal FPGAs

           Timing Characteristics

Table 2-35 FIFO
                   Worst Commercial-Case Conditions: TJ = 70C, VCC = 1.425 V

Parameter                          Description                                 2  1    Std.  Units

tENS       REN_B, WEN_B Setup time                         1.34                    1.52  1.79  ns
tENH
tBKS       REN_B, WEN_B Hold time                          0.00                    0.00  0.00  ns
tBKH
tDS        BLK_B Setup time                                0.19                    0.22  0.26  ns
tDH
tCKQ1      BLK_B Hold time                                 0.00                    0.00  0.00  ns
tCKQ2
tRCKEF     Input data (DI) Setup time                      0.18                    0.21  0.25  ns
tWCKFF
tCKAF      Input data (DI) Hold time                       0.00                    0.00  0.00  ns
tRSTFG
tRSTAF     Clock High to New Data Valid on DO (flow-through) 2.17                  2.47  2.90  ns
tRSTBQ
           Clock High to New Data Valid on DO (pipelined)  0.94                    1.07  1.26  ns

           RCLK High to Empty Flag Valid                   1.72                    1.96  2.30  ns

           WCLK High to Full Flag Valid                    1.63                    1.86  2.18  ns

           Clock High to Almost Empty/Full Flag Valid      6.19                    7.05  8.29  ns

           RESET_B Low to Empty/Full Flag Valid            1.69                    1.93  2.27  ns

           RESET_B Low to Almost-Empty/Full Flag Valid     6.13                    6.98  8.20  ns

           RESET_B Low to Data out Low on DO (flow-through) 0.92                   1.05  1.23  ns

           RESET_B Low to Data out Low on DO (pipelined)   0.92                    1.05  1.23  ns

tREMRSTB   RESET_B Removal                                 0.29                    0.33  0.38  ns

tRECRSTB   RESET_B Recovery                                1.50                    1.71  2.01  ns

tMPWRSTB   RESET_B Minimum Pulse Width                     0.21                    0.24  0.29  ns

tCYC       Clock Cycle time                                3.23                    3.68  4.32  ns

FMAX       Maximum Frequency for FIFO                      310                     272   231   ns

Note: For specific junction temperature and voltage-supply levels, refer to Table 3-7 on page 3-9 for derating
          values.

                                         Preliminary v1.7                                          2 - 79
Device Architecture

   Analog Block

                        With the Fusion family, Actel has introduced the world's first mixed-mode FPGA solution.
                        Supporting a robust analog peripheral mix, Fusion devices will support a wide variety of
                        applications. It is this Analog Block that separates Fusion from all other FPGA solutions on the
                        market today.

                        By combining both flash and high-speed CMOS processes in a single chip, these devices offer the
                        best of both worlds. The high-performance CMOS is used for building RAM resources. These high-
                        performance structures support device operation up to 350 MHz. Additionally, the advanced Actel
                        0.13 m flash process incorporates high-voltage transistors and a high-isolation, triple-well process.
                        Both of these are suited for the flash-based programmable logic and nonvolatile memory
                        structures.

                        High-voltage transistors support the integration of analog technology in several ways. They aid in
                        noise immunity so that the analog portions of the chip can be better isolated from the digital
                        portions, increasing analog accuracy. Because they support high voltages, Actel flash FPGAs can be
                        connected directly to high-voltage input signals, eliminating the need for external resistor divider
                        networks, reducing component count, and increasing accuracy. By supporting higher internal
                        voltages, the Actel advanced flash process enables high dynamic range on analog circuitry,
                        increasing precision and signalnoise ratio. Actel flash FPGAs also drive high-voltage outputs,
                        eliminating the need for external level shifters and drivers.

                        The unique triple-well process enables the integration of high-performance analog features with
                        increased noise immunity and better isolation. By increasing the efficiency of analog design, the
                        triple-well process also enables a smaller overall design size, reducing die size and cost.

                        The Analog Block consists of the Analog Quad I/O structure, RTC (for details refer to the "Real-Time
                        Counter System" section on page 2-34), ADC, and ACM. All of these elements are combined in the
                        single Analog Block macro, with which the user implements this functionality (Figure 2-64).

                        The Analog Block needs to be reset/reinitialized after the core powers up or the device is
                        programmed. An external reset/initialize signal, which can come from the internal voltage
                        regulator when it powers up, must be applied.

2-80  Preliminary v1.7
                                                                        Actel Fusion Mixed-Signal FPGAs

VAREF                                               DAVOUT0
GNDREF                                              DACOUT0
AV0                                                 DATOUT0
AC0
AT0

AV9                                                 DAVOUT9
AC9                                                 DACOUT9
AT9                                                 DATOUT9
ATRETURN01
                                                            AG0
ATRETURN9                                                   AG1
DENAV0
DENAC0                                                      AG9
DENAT0

DENAV0
DENAC0
DENAT0
CMSTB0

CSMTB9
GDON0

GDON9
TMSTB0

TMSTB9                                                            BUSY
MODE[3:0]                                                 CALIBRATE
TVC[7:0]                                                 DATAVALID
STC[7:0]
CHNUMBER[4:0]                                                 SAMPLE

TMSTINT                                                RESULT[11:0]
ADCSTART                                                  RTCMATCH
VAREFSEL
PWRDWN                                                RTCXTLMODE
ADCRESET                                                  RTCXTLSEL

                                                    RTCPSMMATCH

RTCCLK                                 ACMRDATA[7:0]
SYSCLK                            AB

ACMWEN
ACMRESET
ACMWDATA
ACMADDR
ACMCLK

Figure 2-64 Analog Block Macro

                                  Preliminary v1.7                      2 - 81
Device Architecture

           Table 2-36 describes each pin in the Analog Block. Each function within the Analog Block will be
           explained in detail in the following sections.

Table 2-36 Analog Block Pin Description

Signal Name          Number                                    Function                   Location of
                      of Bits Direction                                                      Details

VAREF                1 Input/Output Voltage reference for ADC                             ADC

GNDREF               1                     Input  External ground reference               ADC

MODE[3:0]            4                     Input  ADC operating mode                      ADC

SYSCLK               1                     Input  External system clock

TVC[7:0]             8                     Input  Clock divide control                    ADC

STC[7:0]             8                     Input  Sample time control                     ADC

ADCSTART             1                     Input  Start of conversion                     ADC

PWRDWN               1                     Input  Comparator power-down if 1              ADC

ADCRESET             1                     Input  ADC resets and disables Analog          ADC

                                                  Quad active high

BUSY                 1                     Output 1 Running conversion                  ADC

CALIBRATE            1                     Output 1 Power-up calibration                ADC

DATAVALID            1                     Output 1 Valid conversion result             ADC

RESULT[11:0]         12                    Output Conversion result                       ADC

TMSTBINT             1                     Input  Internal temp. monitor strobe           ADC

SAMPLE               1                     Output 1 An analog signal is actively being  ADC

                                                  sampled (stays high during signal

                                                  acquisition only)

                                                  0 No analog signal is being
                                                  sampled

VAREFSEL             1                     Input  0 = Output internal voltage             ADC

                                                  reference (2.56 V) to VAREF

                                                  1 = Input external voltage reference
                                                  from VAREF and GNDREF

CHNUMBER[4:0]        5                     Input  Analog input channel select                 Input
                                                                                          multiplexer

ACMCLK               1                     Input  ACM clock                               ACM

ACMWEN               1                     Input  ACM write enable active high          ACM

ACMRESET             1                     Input  ACM reset active low                  ACM

ACMWDATA[7:0]        8                     Input  ACM write data                          ACM

ACMRDATA[7:0]        8                     Output ACM read data                           ACM

ACMADDR[7:0]         8                     Input  ACM address                             ACM

CMSTB0 to CMSTB9     10                    Input  Current monitor strobe 1 per quad, Analog Quad

                                                  active high

GDON0 to GDON9       10                    Input  Control to power MOS 1 per quad Analog Quad

TMSTB0 to TMSTB9     10                    Input  Temperature monitor strobe 1 per Analog Quad

                                                  quad; active high

2-82                                       Preliminary v1.7
                                                                      Actel Fusion Mixed-Signal FPGAs

Table 2-36 Analog Block Pin Description (continued)

Signal Name                Number                                         Function    Location of
                            of Bits Direction          Digital outputs 3 per quad      Details

DAVOUT0, DACOUT0, DATOUT0 30   Output                                                Analog Quad
to
DAVOUT9, DACOUT9, DATOUT9

DENAV0, DENAC0, DENAT0 to  30  Input                   Digital input enables 3 per quad Analog Quad

DENAV9, DENAC9, DENAT9

AV0                        1   Input                   Analog Quad 0                 Analog Quad

AC0                        1   Input                                                 Analog Quad

AG0                        1   Output                                                Analog Quad

AT0                        1   Input                                                 Analog Quad

ATRETURN01                 1   Input                   Temperature monitor return shared Analog Quad
                                                       by Analog Quads 0 and 1

AV1                        1   Input                   Analog Quad 1                 Analog Quad
AC1
AG1                        1   Input                                                 Analog Quad
AT1
AV2                        1   Output                                                Analog Quad
AC2
AG2                        1   Input                                                 Analog Quad
AT2
ATRETURN23                 1   Input                   Analog Quad 2                 Analog Quad

                           1   Input                                                 Analog Quad

                           1   Output                                                Analog Quad

                           1   Input                                                 Analog Quad

                           1   Input                   Temperature monitor return shared Analog Quad
                                                       by Analog Quads 2 and 3

AV3                        1   Input                   Analog Quad 3                 Analog Quad
AC3
AG3                        1   Input                                                 Analog Quad
AT3
AV4                        1   Output                                                Analog Quad
AC4
AG4                        1   Input                                                 Analog Quad
AT4
ATRETURN45                 1   Input                   Analog Quad 4                 Analog Quad

                           1   Input                                                 Analog Quad

                           1   Output                                                Analog Quad

                           1   Input                                                 Analog Quad

                           1   Input                   Temperature monitor return shared Analog Quad
                                                       by Analog Quads 4 and 5

AV5                        1   Input                   Analog Quad 5                 Analog Quad
AC5
AG5                        1   Input                                                 Analog Quad
AT5
AV6                        1   Output                                                Analog Quad
AC6
AG6                        1   Input                                                 Analog Quad
AT6
                           1   Input                   Analog Quad 6                 Analog Quad

                           1   Input                                                 Analog Quad

                           1   Output                                                Analog Quad

                           1   Input                                                 Analog Quad

                               Preliminary v1.7                                      2 - 83
Device Architecture

Table 2-36 Analog Block Pin Description (continued)

Signal Name          Number                                   Function                  Location of
                      of Bits Direction                                                    Details

ATRETURN67           1  Input                          Temperature monitor return shared Analog Quad
                                                       by Analog Quads 6 and 7

AV7                  1  Input                          Analog Quad 7                    Analog Quad
AC7
AG7                  1  Input                                                           Analog Quad
AT7
AV8                  1  Output                                                          Analog Quad
AC8
AG8                  1  Input                                                           Analog Quad
AT8
ATRETURN89           1  Input                          Analog Quad 8                    Analog Quad

                     1  Input                                                           Analog Quad

                     1  Output                                                          Analog Quad

                     1  Input                                                           Analog Quad

                     1  Input                          Temperature monitor return shared Analog Quad
                                                       by Analog Quads 8 and 9

AV9                  1  Input                          Analog Quad 9                    Analog Quad
AC9
AG9                  1  Input                                                           Analog Quad
AT9
RTCMATCH             1  Output                                                          Analog Quad
RTCPSMMATCH
RTCXTLMODE[1:0]      1  Input                                                           Analog Quad
RTCXTLSEL
RTCCLK               1  Output                         MATCH                            RTC

                     1  Output                         MATCH connected to VRPSM         RTC

                     2  Output                         Drives XTLOSC RTCMODE[1:0] pins  RTC

                     1  Output                         Drives XTLOSC MODESEL pin        RTC

                     1  Input                          RTC clock input                  RTC

      Analog Quad

      With the Fusion family, Actel introduces the Analog Quad, shown in Figure 2-65 on page 2-85, as
      the basic analog I/O structure. The Analog Quad is a four-channel system used to precondition a set
      of analog signals before sending it to the ADC for conversion into a digital signal. To maximize the
      usefulness of the Analog Quad, the analog input signals can also be configured as LVTTL digital
      input signals. The Analog Quad is divided into four sections.

      The first section is called the Voltage Monitor Block, and its input pin is named AV. It contains a
      two-channel analog multiplexer that allows an incoming analog signal to be routed directly to the
      ADC or allows the signal to be routed to a prescaler circuit before being sent to the ADC. The
      prescaler can be configured to accept analog signals between 12 V and 0 or between 0 and +12 V.
      The prescaler circuit scales the voltage applied to the ADC input pad such that it is compatible with
      the ADC input voltage range. The AV pin can also be used as a digital input pin.

      The second section of the Analog Quad is called the Current Monitor Block. Its input pin is named
      AC. The Current Monitor Block contains all the same functions as the Voltage Monitor Block with
      one addition, which is a current monitoring function. A small external current sensing resistor
      (typically less than 1 ) is connected between the AV and AC pins and is in series with a power
      source. The Current Monitor Block contains a current monitor circuit that converts the current
      through the external resistor to a voltage that can then be read using the ADC.

      The third part of the Analog Quad is called the Gate Driver Block, and its output pin is named AG.
      This section is used to drive an external FET. There are two modes available: a High Current Drive
      mode and a Current Source Control mode. Both negative and positive voltage polarities are
      available, and in the current source control mode, four different current levels are available.

2-84                    Preliminary v1.7
                                                                                                  Actel Fusion Mixed-Signal FPGAs

          The fourth section of the Analog Quad is called the Temperature Monitor Block, and its input pin
          name is AT. This block is similar to the Voltage Monitor Block, except that it has an additional
          function: it can be used to monitor the temperature of an external diode-connected transistor. It
          has a modified prescaler and is limited to positive voltages only.

          The Analog Quad can be configured during design time by Actel Libero IDE; however, the ACM can
          be used to change the parameters of any of these I/Os during runtime. This type of change is
          referred to as a context switch. The Analog Quad is a modular structure that is replicated to
          generate the analog I/O resources. Each Fusion device supports between 5 and 10 Analog Quads.

          The analog pads are numbered to clearly identify both the type of pad (voltage, current, gate
          driver, or temperature pad) and its corresponding Analog Quad (AV0, AC0, AG0, AT0, AV1, ..., AC9,
          AG9, and AT9). There are three types of input pads (AVx, ACx, and ATx) and one type of analog
          output pad (AGx). Since there can be up to 10 Analog Quads on a device, there can be a maximum
          of 30 analog input pads and 10 analog output pads.

Off-Chip  AV                    AC                                                   AG           AT
   Pads
                     Voltage                   Current                                    Gate               Temperature
On-Chip          Monitor Block            Monitor Block                                  Driver             Monitor Block

          Prescaler                                                     Analog Quad               Prescaler

                                                              Prescaler

          Digital                  Digital                                              Power      Digital
          Input                     Input                                              MOSFET       Input
                                                                                     Gate Driver
                                   Current                                                        Temperature
                                Monitor/Instr                                                        Monitor

                                  Amplifier                                                                        To FPGA
                                                                                                                 (DATOUTx)
                                           To FPGA              To FPGA              From FPGA
                                         (DAVOUTx)            (DACOUTx)               (GDONx)                            To Analog MUX

                                               To Analog MUX  To Analog MUX

Figure 2-65 Analog Quad

                                                              Preliminary v1.7                                             2 - 85
Device Architecture

                  Voltage Monitor

                        The Fusion Analog Quad offers a robust set of voltage-monitoring capabilities unique in the FPGA
                        industry. The Analog Quad comprises three analog input pads-- Analog Voltage (AV), Analog
                        Current (AC), and Analog Temperature (AT)--and a single gate driver output pad, Analog Gate
                        (AG). There are many common characteristics among the analog input pads. Each analog input can
                        be configured to connect directly to the input MUX of the ADC. When configured in this manner
                        (Figure 2-66), there will be no prescaling of the input signal. Care must be taken in this mode not
                        to drive the ADC into saturation by applying an input voltage greater than the reference voltage.
                        The internal reference voltage of the ADC is 2.56 V. Optionally, an external reference can be
                        supplied by the user. The external reference can be a maximum of 3.3 V DC.

Off-Chip  AV                    AC                              AG           AT
   Pads
                     Voltage                   Current               Gate               Temperature
On-Chip          Monitor Block            Monitor Block             Driver             Monitor Block

          Prescaler                                Analog Quad               Prescaler

                                        Prescaler

          Digital                   Digital                        Power      Digital
          Input                     Input                         MOSFET       Input
                                                                Gate Driver
                                    Current                                  Temperature
                                Monitor / Instr                                 Monitor

                                   Amplifier                                                  To FPGA
                                                                                            (DATOUTx)
                     To FPGA                To FPGA             From FPGA
                   (DAVOUTx)              (DACOUTx)              (GDONx)                            To Analog MUX

                         To Analog MUX           To Analog MUX

Figure 2-66 Analog Quad Direct Connect

2-86                                      Preliminary v1.7
                                                                                                             Actel Fusion Mixed-Signal FPGAs

          The Analog Quad offers a wide variety of prescaling options to enable the ADC to resolve the input
          signals. Figure 2-67 shows the path through the Analog Quad for a signal that is to be prescaled
          prior to conversion. The ADC internal reference voltage and the prescaler factors were selected to
          make both prescaling and postscaling of the signals easy binary calculations (refer to Table 2-54 on
          page 2-128 for details). When an analog input pad is configured with a prescaler, there will be a
          1 M resistor to ground. This occurs even when the device is in power-down mode. In low power
          standby or sleep mode (VCC is OFF, VCC33A is ON, VCCI is ON) or when the resource is not used,
          analog inputs are pulled down to ground through a 1 M resistor. The gate driver output is
          floating (or tristated), and there is no extra current on VCC33A.
          These scaling factors hold true whether the particular pad is configured to accept a positive or
          negative voltage. Note that whereas the AV and AC pads support the same prescaling factors, the
          AT pad supports a reduced set of prescaling factors and supports positive voltages only.

          Typical scaling factors are given in Table 2-54 on page 2-128, and the gain error (which contributes
          to the minimum and maximum) is in Table 2-46 on page 2-115.

Off-Chip  AV                    AC                              AG          AT
   Pads
                     Voltage                   Current               Gate              Temperature
On-Chip          Monitor Block            Monitor Block             Driver            Monitor Block

          Prescaler                               Analog Quad               Prescaler

                                        Prescaler

          Digital                   Digital                       Power      Digital
          Input                     Input                        MOSFET       Input
                                                               Gate Driver
                                    Current                                 Temperature
                                Monitor / Instr                                Monitor

                                   Amplifier                                                 To FPGA
                                                                                           (DATOUTx)
                     To FPGA              To FPGA              From FPGA
                   (DAVOUTx)            (DACOUTx)               (GDONx)                            To Analog MUX

                         To Analog MUX           To Analog MUX

Figure 2-67 Analog Quad Prescaler Input Configuration

                                        Preliminary v1.7                                             2 - 87
Device Architecture

      Terminology

          BW Bandwidth
      BW is a range of frequencies that a Channel can handle.

          Channel

      A channel is define as an analog input configured as one of the Prescaler range shown in
      Table 2-54 on page 2-128. The channel includes the Prescaler circuit and the ADC.

          Channel Gain
      Channel Gain is a measured of the deviation of the actual slope from the ideal slope. The slope is
      measured from the 20% and 80% point.

                                                               Gain = G-----a---i-n----a--c--t--u--a--l
                                                                           Gainideal
                                                                                                                                        EQ 2-1

          Channel Gain Error

      Channel Gain Error is a deviation from the ideal slope of the transfer function. The Prescaler Gain
      Error is expressed as the percent difference between the actual and ideal, as shown in EQ 2-2.

                     ErrorGain = (1-Gain) 100%

                                                                                       EQ 2-2

          Channel Input Offset Error

      Channel Offset error is measured as the input voltage that causes the transition from zero to a
      count of one. An Ideal Prescaler will have offset equal to of LSB voltage. Offset error is a positive
      or negative when the first transition point is higher or lower than ideal. Offset error is expressed in
      LSB or input voltage.

          Total Channel Error

      Total Channel Error is defined as the total error measured compared to the ideal value. Total
      Channel Error is the sum of gain error and offset error combined. Figure 2-68 shows how Total
      Channel Error is measured.

      Total Channel Error is defined as the difference between the actual ADC output and ideal ADC
      output. In the example shown in Figure 2-68, the Total Channel Error would be a negative number.

                     ADC Output Code                               C hannel Gain
                                             Ideal Output           Actual Output

                                                         T otal C hannel Error

                     }
                                                 C hannel Input
                                                   Offset Error
                                                         Input V oltage to P rescaler

      Figure 2-68 Total Channel Error Example

2-88                 Preliminary v1.7
                                                                                                             Actel Fusion Mixed-Signal FPGAs

          Direct Digital Input

          The AV, AC, and AT pads can also be configured as high-voltage digital inputs (Figure 2-69). As
          these pads are 12 Vtolerant, the digital input can also be up to 12 V. However, the frequency at
          which these pads can operate is limited to 10 MHz.
          To enable one of these analog input pads to operate as a digital input, its corresponding Digital
          Input Enable (DENAxy) pin on the Analog Block must be pulled HIGH, where x is either V, C, or T
          (for AV, AC, or AT pads, respectively) and y is in the range 0 to 9, corresponding to the appropriate
          Analog Quad.
          When the pad is configured as a digital input, the signal will come out of the Analog Block macro
          on the appropriate DAxOUTy pin, where x represents the pad type (V for AV pad, C for AC pad, or
          T for AT pad) and y represents the appropriate Analog Quad number. Example: If the AT pad in
          Analog Quad 5 is configured as a digital input, it will come out on the DATOUT5 pin of the Analog
          Block macro.

Off-Chip  AV                    AC                              AG           AT
   Pads
                     Voltage                   Current               Gate               Temperature
On-Chip          Monitor Block            Monitor Block             Driver             Monitor Block

          Prescaler                                Analog Quad               Prescaler

                                        Prescaler

          Digital                   Digital                        Power      Digital
          Input                     Input                         MOSFET       Input
                                                                Gate Driver
                                    Current                                  Temperature
                                Monitor / Instr                                 Monitor

                                   Amplifier                                                  To FPGA
                                                                                            (DATOUTx)
                     To FPGA              To FPGA               From FPGA
                   (DAVOUTx)            (DACOUTx)                (GDONx)                            To Analog MUX

                         To Analog MUX           To Analog MUX

Figure 2-69 Analog Quad Direct Digital Input Configuration

                                        Preliminary v1.7                                              2 - 89
Device Architecture

                  Current Monitor

                        The Fusion Analog Quad is an excellent element for voltage- and current-monitoring applications.
                        In addition to supporting the same functionality offered by the AV pad, the AC pad can be
                        configured to monitor current across an external sense resistor (Figure 2-70). To support this
                        current monitor function, a differential amplifier with 10x gain passes the amplified voltage drop
                        between the AV and AC pads to the ADC. The amplifier enables the user to use very small resistor
                        values, thereby limiting any impact on the circuit. This function of the AC pad does not limit AV
                        pad operation. The AV pad can still be configured for use as a direct voltage input or scaled
                        through the AV prescaler independently of it's use as an input to the AC pad's differential
                        amplifier.

                           Power

Off-Chip  AV                    AC                              AG           AT
   Pads
                     Voltage                   Current               Gate               Temperature
On-Chip          Monitor Block            Monitor Block             Driver             Monitor Block

          Prescaler                                Analog Quad               Prescaler

                                        Prescaler

          Digital                   Digital                        Power      Digital
          Input                     Input                         MOSFET       Input
                                                                Gate Driver
                                    Current                                  Temperature
                                Monitor / Instr                                 Monitor

                                   Amplifier                                                  To FPGA
                                                                                            (DATOUTx)
                     To FPGA              To FPGA               From FPGA
                   (DAVOUTx)            (DACOUTx)                (GDONx)                            To Analog MUX

                         To Analog MUX           To Analog MUX

Figure 2-70 Analog Quad Current Monitor Configuration

2-90                                    Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

To initiate a current measurement, the appropriate Current Monitor Strobe (CMSTB) signal on the
AB macro must be asserted low for at least tCMSLO in order to discharge the previous measurement.
Then CMSTB must be asserted high for at least tCMSET prior to asserting the ADCSTART signal. The
CMSTB must remain high until after the SAMPLE signal is de-asserted by the AB macro. Note that
the minimum sample time cannot be less than tCMSHI. Figure 2-71 shows the timing diagram of
CMSTB in relationship with the ADC control signals.

CMSTBx    tCMSLO                  tCMSHI
    VADC
                  tCMSET
                       ADCSTART can be asserted
                       after this point to start ADC
                       sampling.

ADCSTART

Figure 2-71 Timing Diagram for Current Monitor Strobe

Figure 2-72 illustrates positive current monitor operation. The differential voltage between AV and
AC goes into the 10 amplifier and is then converted by the ADC. For example, a current of 1.5 A is
drawn from a 10 V supply and is measured by the voltage drop across a 0.050  sense resistor, The
voltage drop is amplified by ten times by the amplifier and then measured by the ADC. The 1.5 A
current creates a differential voltage across the sense resistor of 75 mV. This becomes 750 mV after
amplification. Thus, the ADC measures a current of 1.5 A as 750 mV. Using an ADC with 8-bit
resolution and VAREF of 2.56 V, the ADC result is decimal 75. EQ 2-3 shows how to compute the
current from the ADC result.

                                            I = (ADC VAREF) / (10 2N Rsense)

                                                                                                                                  EQ 2-3
where

    I is the current flowing through the sense resistor
    ADC is the result from the ADC
    VAREF is the Reference voltage
    N is the number of bits
    Rsense is the resistance of the sense resistor

                  Preliminary v1.7                    2 - 91
Device Architecture

                     0-12 V  RSENSE       I

                     AVx             ACx

                                     CMSTBx

                                             10 X       VADC   to Analog MUX
                                                              (refer Table 2-36
                                                              for MUX channel

                                                                   number)

                     Current Monitor

      Figure 2-72 Positive Current Monitor

      Care must be taken when choosing the right resistor for current measurement application. Note
      that because of the 10 amplification, the maximum measurable difference between the AV and
      AC pads is VAREF / 10. A larger AV-to-AC voltage drop will result in ADC saturation; that is, the
      digital code put out by the ADC will stay fixed at the full scale value. Therefore, the user must
      select the external sense resistor appropriately. Table 2-37 shows recommended resistor values for
      different current measurement ranges. When choosing resistor values for a system, there is a trade-
      off between measurement accuracy and power consumption. Choosing a large resistor will increase
      the voltage drop and hence increase accuracy of the measurement; however the larger voltage
      drop dissipates more power (P = I2 R).

      The Current Monitor is a unipolar system, meaning that the differential voltage swing must be
      from 0 V to VAREF/10. Therefore, the Current Monitor only supports differential voltage where
      |VAV-VAC| is greater than 0 V. This results in the requirement that the potential of the AV pad must
      be larger than the potential of the AC pad. This is straightforward for positive voltage systems. For
      a negative voltage system, it means that the AV pad must be "more negative" than the AC pad.
      This is shown in Figure 2-73.

      In this case, both the AV pad and the AC pad are configured for negative operations and the

      output of the differential amplifier still falls between 0 V and VAREF as required.

2-92                                  Preliminary v1.7
                                                                                   Actel Fusion Mixed-Signal FPGAs

Table 2-37 Recommended Resistor for Different Current Range Measurement

Current Range                                 Recommended Minimum Resistor Value (Ohms)

> 5 mA 10 mA                                                                  10 20

> 10 mA 20 mA                                                                 5 10

> 20 mA 50 mA                                                                 2.5 5

> 50 mA 100 mA                                                                12

> 100 mA 200 mA                                                               0.5 1

> 200 mA 500 mA                                                            0.3 0.5

> 500 mA 1 A                                                               0.1 0.2

>1A2A                                                                       0.05 0.1

>2A4A                                                                    0.025 0.05

>4A8A                                                             0.0125 0.025

> 8 A 12 A                                                       0.00625 0.02

                0 to     RSENSE           I

              10.5 V

                   AVx           ACx

                                 CMSTBx

                                                10 X               VADC to Analog MUX

                                                                              (refer Table 2-36
                                                                             for MUX channel

                                                                                   number)

                      Current Monitor

Figure 2-73 Negative Current Monitor

Terminology

Accuracy

The accuracy of Fusion Current Monitor is 2 mV minimum plus 5% of the differential voltage at

the input. The input accuracy can be translated to error at the ADC output by using EQ 2-4. The

10 V/V gain is the gain of the Current Monitor Circuit, as described in the "Current Monitor"

section on page 2-90. For 8-bit mode, N = 8, VAREF= 2.56 V, zero differential voltage between AV

and AC, the Error (EADC) is equal to 2 LSBs.

                        EADC  =  (2mV  +  0.05  VAV    VAC  )    (10V)  /  V    -----2---N------
                                                                                   VAREF

                                                                                                     EQ 2-4

where

N is the number of bits

VAREF is the Reference voltage
VAV is the voltage at AV pad
VAC is the voltage at AC pad

                                 Preliminary v1.7                                                    2 - 93
Device Architecture

                  Gate Driver

                        The Fusion Analog Quad includes a Gate Driver connected to the Quad's AG pin (Figure 2-74).
                        Designed to work with external p- or n-channel MOSFETs, the Gate driver is a configurable current
                        sink or source and requires an external pull-up or pull-down resistor. The AG supports 4 selectable
                        gate drive levels: 1 A, 3 A, 10 A, and 30 A (Figure 2-75 on page 2-95). The AG also supports a
                        High Current Drive mode in which it can sink 20 mA; in this mode the switching rate is
                        approximately 1.3 MHz with 100 ns turn-on time and 600 ns turn-off time. Modeled on an open-
                        drain-style output, it does not output a voltage level without an appropriate pull-up or pull-down
                        resistor. If 1 V is forced on the drain, the current sinking/sourcing will exceed the ability of the
                        transistor, and the device could be damaged.
                        The AG pad is turned on via the corresponding GDONx pin in the Analog Block macro, where x is
                        the number of the corresponding Analog Quad for the AG pad to be enabled (GDON0 to GDON9).

          Power             Line Side                                                    Load Side

Off-Chip  AV                                                       Rpullup  AG           AT
   Pads
                     Voltage           AC                                        Gate               Temperature
On-Chip          Monitor Block                        Current                   Driver             Monitor Block

                                                 Monitor Block

                 Prescaler                       Analog Quad                             Prescaler

                                        Prescaler

          Digital                          Digital                             Power      Digital
          Input                            Input                              MOSFET       Input
                                                                            Gate Driver
                                           Current                                       Temperature
                                       Monitor / Instr                                      Monitor

                                          Amplifier

                     To FPGA                  To FPGA                       From FPGA     To FPGA
                   (DAVOUTx)                (DACOUTx)                        (GDONx)     (DATOUTx)

                         To Analog MUX                  To Analog MUX                            To Analog MUX

Figure 2-74 Gate Driver

          The gate-to-source voltage (Vgs) of the external MOSFET is limited to the programmable drive
          current times the external pull-up or pull-down resistor value (EQ 2-5).

          Vgs  Ig (Rpullup or Rpulldown)

                                                                                                                  EQ 2-5

          The rate at which the gate voltage of the external MOSFET slews is determined by the current, Ig,
          sourced or sunk by the AG pin and the gate-to-source capacitance, CGS, of the external MOSFET. As
          an approximation, the slew rate is given by EQ 2-6.

          dv/dt = Ig / CGS

                                                                                                                  EQ 2-6

2-94                                        Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

CGS is not a fixed capacitance but, depending on the circuitry connected to its drain terminal, can
vary significantly during the course of a turn-on or turn-off transient. Thus, EQ 2-6 on page 2-94
can only be used for a first-order estimate of the switching speed of the external MOSFET.

    1 A                           3 A 10 A 30 A

AG

                                                       High
                                                     Current

    1 A                           3 A 10 A 30 A

Figure 2-75 Gate Driver Example

                                   Preliminary v1.7           2 - 95
Device Architecture

                Temperature Monitor

                        The final pin in the Analog Quad is the Analog Temperature (AT) pin. The AT pin is used to
                        implement an accurate temperature monitor in conjunction with an external diode-connected
                        bipolar transistor (Figure 2-76). For improved temperature measurement accuracy, it is important
                        to use the ATRTN pin for the return path of the current sourced by the AT pin. Each ATRTN pin is
                        shared between two adjacent Analog Quads. Additionally, if not used for temperature monitoring,
                        the AT pin can provide functionality similar to that of the AV pad. However, in this mode only
                        positive voltages can be applied to the AT pin, and only two prescaler factors are available (16 V
                        and 4 V ranges--refer to Table 2-54 on page 2-128).

                                                                                   Discrete
                                                                                   Bipolar
                                                                                  Transistor

Off-Chip  AV                   AC                                 AG          AT             ATRTN
                                              Current
   Pads              Voltage                                           Gate        Temperature
On-Chip         Monitor Block           Monitor Block                 Driver      Monitor Block

          Prescaler                        Analog Quad                            Prescaler

                                Prescaler

          Digital                  Digital                 Power               Digital
          Input                    Input                  MOSFET                Input
                                                        Gate Driver
                                   Current                                    Temperature
                               Monitor / Instr                                   Monitor

                                  Amplifier

                     To FPGA              To FPGA       From FPGA                  To FPGA
                   (DAVOUTx)            (DACOUTx)        (GDONx)                  (DATOUTx)

                         To Analog MUX          To Analog MUX                                 To Analog MUX

Figure 2-76 Temperature Monitor Quad

                  Fusion uses a remote diode as a temperature sensor. The Fusion Temperature Monitor uses a
                  differential input; the AT pin and ATRTN (AT Return) pin are the differential inputs to the

2-96                                            Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Temperature Monitor. There is one Temperature Monitor in each Quad. A simplified block diagram
is shown in Figure 2-77.

                     VDD33A

10 A    100 A

         TMSTBx

ATx              +   +                                                             VADC  to Analog MUX
                         12.5 X                                                          (refer Table 2-36
                 V
                                                                                       for MUX Channel

                                                                                         Number)

ATRTNxy

Figure 2-77 Block Diagram for Temperature Monitor Circuit

The Fusion approach to measuring temperature is forcing two different currents through the diode
with a ratio of 10:1. The switch that controls the different currents is controlled by the Temperature
Monitor Strobe signal, TMSTB. Setting TMSTB to '1' will initiate a Temperature reading. The TMSTB
should remain '1' until the ADC finishes sampling the voltage from the Temperature Monitor. The
minimum sample time for the Temperature Monitor cannot be less than the minimum strobe high
time minus the setup time. Figure 2-78 shows the timing diagram.

TMSTBx   tTMSLO      tTMSSET                     tTMSHI
   VADC
                                                  ADC should start
                                                  sampling at this point

                 ADCSTART

Figure 2-78 Timing Diagram for the Temperature Monitor Strobe Signal
The diode's voltage is measured at each current level and the temperature is calculated based on
EQ 2-7.

         VTMSLO VTMSHI  =        n  k----T-    ln  I-I-T-T-M-M----SS--L-H-O--I
                                      q        

                 Preliminary v1.7                                                                 EQ 2-7

                                                                                                      2 - 97
Device Architecture

      where

          ITMSLO is the current when the Temperature Strobe is Low, typically 100 A
          ITMSHI is the current when the Temperature Strobe is High, typically 10 A
          VTMSLO is diode voltage while Temperature Strobe is Low
          VTMSHI is diode voltage while Temperature Strobe is High
          n is the non-ideality factor of the diode-connected transistor. It is typically 1.004 for the Actel-
          recommended transistor type 2N3904.
          K = 1.3806 x 10-23 J/K is the Boltzman constant
          Q = 1.602 x 10-19 C is the charge of a proton

      When ITMSLO / ITMSHI = 10, the equation can be simplified as shown in EQ 2-8.
                                                V = VTMSLO VTMSHI = 1.986 104nT

                                                                                                                                        EQ 2-8
      In the Fusion TMB, the ideality factor n for 2N3904 is 1.004 and V is amplified 12.5 times by an
      internal amplifier; hence the voltage before entering the ADC is as given in EQ 2-9.

                     VADC = V 12.5 = 2.5 mV / (K T)

                                                                                                          EQ 2-9

      This means the temperature to voltage relationship is 2.5 mV per degree Kelvin. The unique design
      of Fusion has made the Temperature Monitor System simple for the user. When the 10-bit mode
      ADC is used, each LSB represents 1 degree Kelvin, as shown in EQ 2-10. That is, e. 25C is equal to
      293K and is represented by decimal 293 counts from the ADC.

                     1K  =                  2.5  mV    -----2---1---0-----  =  1 LSB
                                                        2.56 V

                                                                                                                                      EQ 2-10

      If 8-bit mode is used for the ADC resolution, each LSB represents 4 degrees Kelvin; however, the
      resolution remains as 1 degree Kelvin per LSB, even for 12-bit mode, due to the Temperature
      Monitor design. An example of the temperature data format for 10-bit mode is shown in
      Table 2-38.

      Table 2-38 Temperature Data Format

      Temperature    Temperature (K)                                                     Digital Output
                                                                                       (ADC 10-bit mode)

      40C                                 233                                        00 1110 1001

      20C                                 253                                        00 1111 1101

      0C                                   273                                        01 0001 0001

      1C                                   274                                        01 0001 0010

      10 C                                 283                                        01 0001 1011

      25C                                  298                                        01 0010 1010

      50 C                                 323                                        01 0100 0011

      85 C                                 358                                        01 0110 0110

2-98                 Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

Terminology

Resolution
Resolution defines the smallest temperature change Fusion Temperature Monitor can resolve. For
ADC configured as 8-bit mode, each LSB represents 4C, and 1C per LSB for 10-bit mode. With 12-
bit mode, the Temperature Monitor can still only resolve 1C due to Temperature Monitor design.
Offset
The Fusion Temperature Monitor has a systematic offset of +5C, excluding error due board
resistance and ideality factor of the external diode, between the operation range of 40C to
+85C. For instance, 25C will be read by the Temperature Monitor as 30C plus error. The user can
remove any offset error through hardware or software during the calibration routine.

Preliminary v1.7  2 - 99
Device Architecture

                Analog-to-Digital Converter Block

                        At the heart of the Fusion analog system is a programmable Successive Approximation Register
                        (SAR) ADC. The ADC can support 8-, 10-, or 12-bit modes of operation. In 12-bit mode, the ADC can
                        resolve 500 ksps. All results are MSB-justified in the ADC. The input to the ADC is a large 32:1
                        analog input multiplexer. A simplified block diagram of the Analog Quads, analog input
                        multiplexer, and ADC is shown in Figure 2-79. The ADC offers multiple self-calibrating modes to
                        ensure consistent high performance both at power-up and during runtime.

                                 VCC (1.5 V)

               Pads  Analog                   0
              AV0    Quad 0                   1
              AC0
             AG0     Analog                                                              These are hardwired
              AT0    Quad 1                                                                connections within

ATRETURN01           Analog                                                                   Analog Quad.
             AV1     Quad 2
             AC1                              Analog MUX                       12
             AG1     Analog                      (32 to 1)    ADC
             AT1     Quad 3
             AV2                                              Digital Output to FPGA
             AC2     Analog
             AG2     Quad 4
             AT2
                     Analog
ATRETURN23           Quad 5
             AV3
             AC3     Analog
             AG3     Quad 6
             AT3
            AV4      Analog
             AC4     Quad 7
            AG4
             AT4     Analog
                     Quad 8
ATRETURN45
            AV5      Analog
             AC5     Quad 9
            AG5
             AT5
            AV6
             AC6
            AG6
             AT6

ATRETURN67
            AV7
            AC7
            AG7
            AT7
            AV8
            AC8
            AG8
            AT8

ATRETURN89
            AV9
            AC9
            AG9
            AT9

                            Temperature       31
                               Monitor         CHNUMBER[4:0]

                     Internal Diode

Figure 2-79 ADC Block Diagram

2-100                                    Preliminary v1.7
                                              Actel Fusion Mixed-Signal FPGAs

ADC Input Multiplexer

At the input to the Fusion ADC is a 32:1 multiplexer. Of the 32 input channels, up to 30 are user
definable. Two of these channels are hardwired internally. Channel 31 connects to an internal
temperature diode so the temperature of the Fusion device itself can be monitored. Channel 0 is
wired to the FPGA's 1.5 V VCC supply, enabling the Fusion device to monitor its own power supply.
Doing this internally makes it unnecessary to use an analog I/O to support these functions. The
balance of the MUX inputs are connected to Analog Quads (see the "Analog Quad" section on
page 2-84). Table 2-39 defines which Analog Quad inputs are associated with which specific analog
MUX channels. The number of Analog Quads present is device-dependent; refer to the family list in
the "Fusion Family" table on page I of this datasheet for the number of quads per device.
Regardless of the number of quads populated in a device, the internal connections to both VCC and
the internal temperature diode remain on Channels 0 and 31, respectively. To sample the internal
temperature monitor, it must be strobed (similar to the AT pads). The TMSTBINT pin on the Analog
Block macro is the control for strobing the internal temperature measurement diode.

To determine which channel is selected for conversion, there is a five-pin interface on the Analog
Block, CHNUMBER[4:0], defined in Table 2-40 on page 2-102. Table 2-39 shows the correlation
between the analog MUX input channels and the analog input pins.

Table 2-39 Analog MUX Channels

Analog MUX Channel                Signal      Analog Quad Number

0                                 Vcc_analog

1                                     AV0     Analog Quad 0

2                                     AC0

3                                     AT0

4                                     AV1     Analog Quad 1

5                                     AC1

6                                     AT1

7                                     AV2     Analog Quad 2

8                                     AC2

9                                     AT2

10                                    AV3     Analog Quad 3

11                                    AC3

12                                    AT3

13                                    AV4     Analog Quad 4

14                                    AC4

15                                    AT4

16                                    AV5     Analog Quad 5

17                                    AC5

18                                    AT5

19                                    AV6     Analog Quad 6

20                                    AC6

21                                    AT6

                    Preliminary v1.7                         2 -101
Device Architecture

       Table 2-39 Analog MUX Channels (continued)

       Analog MUX Channel                            Signal   Analog Quad Number
                                                                  Analog Quad 7
       22                                                AV7
                                                                  Analog Quad 8
       23                                                AC7
                                                                  Analog Quad 9
       24                                                AT7

       25                                                AV8

       26                                                AC8

       27                                                AT8

       28                                                AV9

       29                                                AC9

       30                                                AT9

       31                              Internal temperature

                                                     monitor

       Table 2-40 Channel Selection                         CHNUMBER[4:0]
        Channel Number                                               00000
        0                                                            00001
        1                                                            00010
        2                                                            00011
        3                                                                .
        .                                                                .
        .                                                                .
        .                                                            11110
        30                                                           11111
        31

2-102                                  Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

ADC Description

The Actel Fusion ADC is a 12-bit SAR ADC. It offers a wide variety of features for different use
models. Figure 2-80 shows a block diagram of the Fusion ADC.

    Configurable resolution: 8-bit, 10-bit, and 12-bit mode
    DNL: 0.6 LSB for 10-bit mode
    INL: 0.4 LSB for 10-bit mode
    No missing code
    Internal VAREF = 2.56 V
    Maximum Sample Rate = 600 ksps
    Power-up calibration and dynamic calibration after every sample to compensate for

         temperature drift over time

                                                                    CALIBRATE
                                                                    SAMPLE
                                                                    BUSY
                                                                    DATAVALID

                   Analog                        VAREF
                    MUX
                                                            STATUS

  Signals from 32                                  SAR ADC          12
Analog Quads                                                                    RESULT

                   CHNUMBER                 STC              MODE

                   SYSCLK                   TVC         ADCCLK

Figure 2-80 ADC Simplified Block Diagram

ADC Configuration Description

The Fusion ADC can be configured to operate in 8-, 10-, or 12-bit modes, power-down after
conversion, and dynamic calibration. This is controlled by MODE[3:0], as defined in Table 2-41.

Table 2-41 Mode Bits Function

Name  Bits                                         Function

MODE  3 0 Internal calibration after every conversion; two ADCCLK cycles are used
               after the conversion.

               1 No calibration after every conversion

MODE  2 0 Power-down after conversion
               1 No Power-down after conversion

MODE  1:0 00 10-bit
                01 12-bit
                10 8-bit
                11 Unused

                                 Preliminary v1.7                                       2 -103
Device Architecture

       The speed of the ADC depends on its internal clock, ADCCLK, which is not accessible to users. The
       ADCCLK is derived from SYSCLK. Input signal TVC[7:0], Time Divider Control, determines the speed
       of the ADCCLK in relationship to SYSCLK, based on EQ 2-11.

                                                      tADCCLK = 4 (1 + TVC) tSYSCLK       EQ 2-11

           TVC: Time Divider Control (0255)
           tADCCLK is the period of ADCCLK, and must be between 0.5 MHz and 10 MHz
           tSYSCLK is the period of SYSCLK
       Table 2-42 TVC Bits Function

       Name                                                  Bits               Function

       TVC                                                   [7:0]    SYSCLK divider control

       The frequency of ADCCLK, fADCCLK, must be within 0.5 Hz to 10 MHz.
       The inputs to the ADC are synchronized to SYSCLK. A conversion is initiated by asserting the
       ADCSTART signal on a rising edge of SYSCLK. Figure 2-82 on page 2-108 and Figure 2-83 on
       page 2-108 show the timing diagram for the ADC.

       A conversion is performed in three phases. In the first phase, the analog input voltage is sampled
       on the input capacitor. This phase is called sample phase. During the sample phase, the output
       signals BUSY and SAMPLE change from '0' to '1', indicating the ADC is busy and sampling the
       analog signal. The sample time can be controlled by input signals STC[7:0]. The sample time can be
       calculated by EQ 2-12. When controlling the sample time for the ADC along with the use of
       Prescaler or Current Monitor or Temperature Monitor, the minimum sample time for each must be
       obeyed. Refer to the corresponding section and Table 2-43 for further information.

                                       tsample = (2 + STC) tADCCLK

                                                                                              EQ 2-12

                     STC: Sample Time Control value (0255)
                     tSAMPLE is the sample time

       Table 2-43 STC Bits Function

       Name          Bits                                             Function

       STC           [7:0]             Sample time control

       Sample time is computed based on the period of ADCCLK.

       The second phase is called the distribution phase. During distribution phase, the ADC computes the
       equivalent digital value from the value stored in the input capacitor. In this phase, the output
       signal SAMPLE goes back to '0', indicating the sample is completed; but the BUSY signal remains
       '1', indicating the ADC is still busy for distribution. The distribution time depends strictly on the
       number of bits. If the ADC is configured as a 10-bit ADC, then 10 ADCCLK cycles are needed. EQ 2-
       13 describes the distribution time.

                                                               tdistrib = N tADCCLK

                                                                                                                                       EQ 2-13

           N: Number of bits

       The last phase is the post-calibration phase. This is an optional phase. The post-calibration phase
       takes two ADCCLK cycles. The output BUSY signal will remain '1' until the post-calibration phase is
       completed. If the post-calibration phase is skipped, then the BUSY signal goes to '0' after
       distribution phase. As soon as BUSY signal goes to '0', the DATAVALID signal goes to '1', indicating
       the digital result is available on the RESULT output signals. DATAVAILD will remain '1' until the next
       ADCSTART is asserted. Actel recommends enabling post-calibration to compensate for drift and
       temperature-dependent effects. This ensures that the ADC remains consistent over time and with

2-104                                  Preliminary v1.7
                                                                           Actel Fusion Mixed-Signal FPGAs

temperature. The post-calibration phase is enabled by bit 3 of the Mode register. EQ 2-14 describes
the post-calibration time.

tpost-cal = MODE[3] (2 tADCCLK)

                                                                                        EQ 2-14

MODE[3]: Bit 3 of the Mode register, described in Table 2-41 on page 2-103.
The calculation for the conversion time for the ADC is summarized in EQ 2-15.

tconv = tsync_read + tsample + tdistrib + tpost-cal + tsync_write

                                                                                                                           EQ 2-15

tconv: conversion time
tsync_read: maximum time for a signal to synchronize with SYSCLK. For calculation purposes, the
worst case is a period of SYSCLK, tSYSCLK.
tsample: Sample time
tdistrib: Distribution time
tpost-cal: Post-calibration time
tsync_write: Maximum time for a signal to synchronize with SYSCLK. For calculation purposes, the
worst case is a period of SYSCLK, tSYSCLK.

    Example

This example shows how to choose the correct settings to achieve the fastest sample time in 10-bit
mode for a system that runs at 66 MHz.

The period of SYSCLK: tSYSCLK = 1/66 MHz = 0.015 s
Choosing TVC between 1 and 33 will meet the maximum and minimum period for the ADCCLK
requirement. A higher TVC leads to a higher ADCCLK period.

The minimum TVC is chosen so that tdistrib and tpost-cal can be run faster. The period of ADCCLK
with a TVC of 1 can be computed by EQ .

tADCCLK = 4 (1 + TVC) tSYSCLK = 4 (1 + 1) 0.015 s = 0.12 s

From Table 2-47 on page 2-118, minimum conversion for 10-bit mode is 1.8 s. To compute STC, the
calculation will first compute the post-calibration time, second the distribution time, and finally the
STC setting.

Since Actel recommends post-calibration for temperature drift over time, post-calibration shall be
enabled and the post-calibration time, tpost-cal, can be computed by EQ 2-16. The post-calibration
time is 0.24 s.

tpost-cal = 2 tADCCLK = 0.24 s

                                                                                        EQ 2-16

The distribution time, tdistrib, is equal to 1.2 s and can be computed using EQ 2-17.

tdistrib = N tADCCLK = 10 0.12 = 1.2 s

                                                                                                                                EQ 2-17

The STC value can now be computed through EQ 2-18. The sample time is equal to 0.32 s. By
rearranging EQ 2-12 on page 2-104 with a tsample of 0.35 s, the STC can be computed.

                                  tsample = tconv tpost-cal tdistrib tsync_read tsync_write
                                 = 1.8 s 0.24 s 1.2 s 0.15 s 0.15 s = 0.32 s

STC = --t--s--a---m---p---l-e-- 2 = 0----.--3---5--------s- 2 = 2.85
tADCCLK  0.12 s

                                                                                        EQ 2-18

Preliminary v1.7                                                                        2 -105
Device Architecture

       And so, STC will be rounded up to 3 to ensure the minimum conversion time is met. The sample
       time, tsample, with an STC of 3, is now equal to 0.36 s.
       The total sample time, using EQ 2-19, can now be summated.

       = tsync_read + tsample + tdistrib + tpost-cal + tsync_write = 0.015 s + 0.36 s + 1.2 s + 0.24 s + 0.015 s = 1.8

                                                                                                                                       EQ 2-19

       The optimal setting for the system running at 66 MHz with an ADC for 10-bit mode chosen is listed
       as follows:

       TVC[7:0] = 1       = 0x01

       STC[7:0] = 3       = 0x03

       MODE[3:0] = b'0100 = 0x4*

       *Note that no power-down after every conversion is chosen in this case; however, if the application
       is power-sensitive, the MODE[2] can be set to '0', as described above, and it will not affect any
       performance.

       Integrated Voltage Reference

       The Fusion device has an integrated on-chip 2.56 V reference voltage for the ADC. The value of this
       reference voltage was chosen to make the prescaling and postscaling factors for the prescaler
       blocks change in a binary fashion. However, if desired, an external reference voltage of up to 3.3 V
       can be connected between the VAREF and GNDREF pins. The VAREFSEL control pin is used to select
       the reference voltage.

       Table 2-44 VAREF Bit Function

       Name          Bit                                  Function

       VAREF         0 Reference voltage selection
                            0 Internal voltage reference selected. VAREF pin outputs 2.56 V.
                            1 Input external voltage reference from VAREF and GNDREF

       ADC Operation Description

       The ADC can be powered down independently of the FPGA core, as an additional control or for
       power-saving considerations, via the PWRDWN pin of the Analog Block. The PWRDWN pin controls
       only the comparators in the ADC.

       Once the ADC has powered up and been released from reset, ADCRESET, the ADC will initiate a
       calibration routine designed to provide optimal ADC performance. The Fusion ADC offers a robust
       calibration scheme to reduce integrated offset and linearity errors. The offset and linearity errors
       of the main capacitor array are compensated for with an 8-bit calibration capacitor array. The
       offset/linearity error calibration is carried out in two ways. First, a power-up calibration is carried
       out when the ADC comes out of reset. This is initiated by the CALIBRATE output of the Analog
       Block macro and is a fixed number of ADC_CLK cycles (3,840 cycles), as shown in Figure 2-81 on
       page 2-107. In this mode, the linearity and offset errors of the capacitors are calibrated.

       To further compensate for drift and temperature-dependent effects, every conversion is followed
       by post-calibration of either the offset or a bit of the main capacitor array. The post-calibration
       ensures that, over time and with temperature, the ADC remains consistent.

       After both calibration and the setting of the appropriate configurations, as explained above, the
       ADC is ready for operation. Setting the ADCSTART signal high for one clock period will initiate the
       sample and conversion of the analog signal on the channel as configured by CHNUMBER[4:0]. The
       status signals SAMPLE and BUSY will show when the ADC is sampling and converting (Figure 2-83
       on page 2-108). Both SAMPLE and BUSY will initially go high. After the ADC has sampled and held
       the analog signal, SAMPLE will go low. After the entire operation has completed and the analog
       signal is converted, BUSY will go low and DATAVALID will go high. This indicates that the digital
       result is available on the RESULT[11:0] pins.

2-106                                   Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

DATAVALID will remain high until a subsequent ADC_START is issued. The DATAVALID goes low on
the rising edge of SYSCLK as shown in Figure 2-82 on page 2-108. The RESULT signals will be kept
constant until the ADC finishes the subsequent sample. The next sampled RESULT will be available
when DATAVALID goes high again. It is ideal to read the RESULT when DATAVALID is '1'. The
RESULT is latched and remains unchanged until the next DATAVLAID rising edge.

Intra-Conversion
Performing a conversion during power-up, calibration is possible but should be avoided, since the
performance is not guaranteed, as shown in Table 2-46 on page 2-115. This is described as intra-
conversion.

Injected Conversion
A conversion can be interrupted by another conversion. Before the current conversion is finished, a
second conversion can be started by issuing a pulse on signal ADCSTART. When a second conversion
is issued before the current conversion is completed, the current conversion would be dropped and
the ADC would start the second conversion on the rising edge of the SYSCLK. This is known as
injected conversion. Since the ADC is synchronous, the minimum time to issue a second conversion
is two clock cycles of SYSCLK after the previous one.

Timing Diagram

                                          tCAL = 3,840 tADCCLK*

     SYSCLK  tRECCLR  tREMCLR
ADCRESET
                      tSUTVC tHDTVC                              tCK2QCAL
   TVC[7:0]                     tCK2QCAL
CALIBRATE

Note: *Refer to EQ 2-11 on page 2-104 for the calculation on the period of ADCCLK, tADCCLK.
Figure 2-81 Power-Up Calibration Status Signal Timing Diagram

                      Preliminary v1.7                                                       2 -107
Device Architecture

                                                     tMINSYSCLK           tMPWSYSCLK
                                tSUADCSTART tHDADCSTART
                   SYSCLK
              ADCSTART              tSUMODE tHDMODE
              MODE[3:0]                tSUTVC tHDTVC
                                       tSUSTC tHDSTC
                  TVC[7:0]
                  STC[7:0]       tSUVAREFSEL tHDVAREFSEL
                                   tSUCHNUM tHDCHNUM
                    VAREF
       CHNUMBER[7:0]

Figure 2-82 Input Setup Time

                                                        tSAMPLE1          tDATA2START 3
                            t t SUADCSTART HDADCSTART
           SYSCLK                                                         tCK2QVAL       tCK2QVAL
       ADCSTART                             tC K 2 QBU SY
                                            tC K 2 QSAM PL E
              BUSY
           SAMPLE                                                 tCONV2
       DATAVALID

       ADC_RESULT[11:0]                                                   tC LK 2R ESU LT

                                                                                 1st Sample Result

                                                                                                    2nd Sample Result

Notes:

1. Refer to EQ 2-12 on page 2-104 for the calculation on the sample time, tSAMPLE.
2. See EQ 2-19 on page 2-106 for calculation on the conversion time, tCONV.
3. Minimum time to issue an ADCSTART after DATAVALID is 1 SYSCLK period
Figure 2-83 Standard Conversion Status Signal Timing Diagram

2-108                           Preliminary v1.7
                                                                                    Actel Fusion Mixed-Signal FPGAs

           ADC Interface Timing

Table 2-45 ADC Interface Timing
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter                        Description                  2                       1    Std.   Units
                                                                                     0.64    0.75     ns
tSUMODE       Mode Pin Setup Time                              0.56                  0.29    0.34    ns
tHDMODE       Mode Pin Hold Time                               0.26                  0.77    0.90     ns
tSUTVC        Clock Divide Control (TVC) Setup Time            0.68                  0.36    0.43     ns
tHDTVC        Clock Divide Control (TVC) Hold Time             0.32                  1.79    2.11     ns
tSUSTC        Sample Time Control (STC) Setup Time             1.58                  1.45    1.71     ns
tHDSTC        Sample Time Control (STC) Hold Time              1.27                  0.00    0.00     ns
tSUVAREFSEL   Voltage Reference Select (VAREFSEL) Setup Time   0.00                  0.76    0.89     ns
tHDVAREFSEL   Voltage Reference Select (VAREFSEL) Hold Time    0.67                  1.03    1.21     ns
tSUCHNUM      Channel Select (CHNUMBER) Setup Time             0.90                  0.00    0.00     ns
tHDCHNUM      Channel Select (CHNUMBER) Hold Time              0.00                  0.85    1.00     ns
tSUADCSTART   Start of Conversion (ADCSTART) Setup Time        0.75                  0.49    0.57     ns
tHDADCSTART   Start of Conversion (ADCSTART) Hold Time         0.43                  1.51    1.78     ns
tCK2QBUSY     Busy Clock-to-Q                                  1.33                  0.71    0.84     ns
tCK2QCAL      Power-Up Calibration Clock-to-Q                  0.63                  3.55    4.17     ns
tCK2QVAL      Valid Conversion Result Clock-to-Q               3.12                  0.25    0.30     ns
tCK2QSAMPLE   Sample Clock-to-Q                                0.22                  2.89    3.39     ns
tCK2QRESULT   Conversion Result Clock-to-Q                     2.53                  2.35    2.76     ns
tCLR2QBUSY    Busy Clear-to-Q                                  2.06                  2.45    2.88     ns
tCLR2QCAL     Power-Up Calibration Clear-to-Q                  2.15                  2.74    3.22     ns
tCLR2QVAL     Valid Conversion Result Clear-to-Q               2.41                  2.48    2.91     ns
tCLR2QSAMPLE  Sample Clear-to-Q                                2.17                  2.56    3.01     ns
tCLR2QRESULT  Conversion result Clear-to-Q                     2.25                  0.00    0.00    ns
tRECCLR       Recovery Time of Clear                           0.00                  0.72    0.84    ns
tREMCLR       Removal Time of Clear                            0.63                  4.00    4.00    ns
tMPWSYSCLK    Clock Minimum Pulse Width for the ADC            4.00                 100.00  100.00
tFMAXSYSCLK   Clock Maximum Frequency for the ADC             100.00                                MHz

                                 Preliminary v1.7                                                   2 -109
Device Architecture

                     Terminology
                             Conversion Time

                        Conversion time is the interval between the release of the hold state (imposed by the input
                        circuitry of a track-and-hold) and the instant at which the voltage on the sampling capacitor settles
                        to within one LSB of a new input value.

                             DNL Differential Non-Linearity
                        For an ideal ADC, the analog-input levels that trigger any two successive output codes should differ
                        by one LSB (DNL = 0). Any deviation from one LSB in defined as DNL (Figure 2-84).

                                          Ideal Output

       ADC Output Code  Error = 0.5 LSB                     Actual Output
                                                        Error = +1 LSB

                                                             Input V oltage to P rescaler

       Figure 2-84 Differential Non-Linearity (DNL)

           ENOB Effective Number of Bits
       ENOB specifies the dynamic performance of an ADC at a specific input frequency and sampling
       rate. An ideal ADC's error consists only of quantization of noise. As the input frequency increases,
       the overall noise (particularly in the distortion components) also increases, thereby reducing the
       ENOB and SINAD (also see "Signal-to-Noise and Distortion Ratio (SINAD)".) ENOB for a full-scale,
       sinusoidal input waveform is computed using EQ 2-20.

                                                             ENOB = S----I--N----A----D----------1----.-7----6-
                                                                               6.02
                                                                                                                                       EQ 2-20

           FS Error Full-Scale Error
       Full-scale error is the difference between the actual value that triggers that transition to full-scale
       and the ideal analog full-scale transition value. Full-scale error equals offset error plus gain error.

2-110                   Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

    Gain Error
The gain error of an ADC indicates how well the slope of an actual transfer function matches the
slope of the ideal transfer function. Gain error is usually expressed in LSB or as a percent of full-
scale (%FSR). Gain error is the full-scale error minus the offset error (Figure 2-85).

                          Gain = 2 LSB

1...11

        Ideal Output

ADC Output Code           Actual Output

                                                                     FS
                                                                         Voltage
                                     0...00

                                                         Input V oltage to P rescaler
Figure 2-85 Gain Error

    Gain Error Drift
Gain-error drift is the variation in gain error due to a change in ambient temperature, typically
expressed in ppm/C.

        Preliminary v1.7                                                          2 -111
Device ArchitectureADC Output Code

                             INL Integral Non-Linearity
                        INL is the deviation of an actual transfer function from a straight line. After nullifying offset and
                        gain errors, the straight line is either a best-fit straight line or a line drawn between the end points
                        of the transfer function (Figure 2-86).

                                                                                                                   IN L = +0.5 LSB

                                                                                                            Ideal Output

                                                                                                                                   Actual Output
                                                                                                                                   IN L = +1 LSB

                                                                             Input V oltage to P rescaler
                        Figure 2-86 Integral Non-Linearity (INL)

                             LSB Least Significant Bit
                        In a binary number, the LSB is the least weighted bit in the group. Typically, the LSB is the furthest
                        right bit. For an ADC, the weight of an LSB equals the full-scale voltage range of the converter
                        divided by 2N, where N is the converter's resolution. For a 10-bit ADC with a unipolar full-scale
                        voltage of 2.56 V, 1 LSB = (2.56 V / 210) = 2.5 mV.

                             No Missing Codes
                        An ADC has no missing codes if it produces all possible digital codes in response to a ramp signal
                        applied to the analog input.

                             Offset Error
                        Offset error indicates how well the actual transfer function matches the ideal transfer function at a
                        single point. For an ideal ADC, the first transition occurs at 0.5 LSB above zero. The offset voltage is
                        measured by applying an analog input such that the ADC outputs all zeroes and increases until the
                        first transition occurs (Figure 2-87).

2-112                   Preliminary v1.7
                                                                Actel Fusion Mixed-Signal FPGAs

ADC Output Code               Ideal Output
                                                               Actual Output

0...01                               Offset Error = 1.5 LSB
0...00
                              Input V oltage to P rescaler

Figure 2-87 Offset Error

    Resolution

ADC resolution is the number of bits used to represent an analog input signal. To more accurately
replicate the analog signal, resolution needs to be increased.

    Sampling Rate

Sampling rate or sample frequency, specified in samples per second (sps), is the rate at which an
ADC acquires (samples) the analog input.

    SNR Signal-to-Noise Ratio

SNR is the ratio of the amplitude of the desired signal to the amplitude of the noise signals at a
given point in time. For a waveform perfectly reconstructed from digital samples, the theoretical
maximum SNR (EQ 2-21) is the ratio of the full-scale analog input (RMS value) to the RMS
quantization error (residual error). The ideal, theoretical minimum ADC noise is caused by
quantization error only and results directly from the ADC's resolution (N bits):

                              SNRdB[MAX] = 6.02dB N + 1.76dB

                                                                              EQ 2-21

    SINAD Signal-to-Noise and Distortion

SINAD is the ratio of the rms amplitude to the mean value of the root-sum-square of the all other
spectral components, including harmonics, but excluding DC. SINAD is a good indication of the
overall dynamic performance of an ADC because it includes all components which make up noise
and distortion.

    Total Harmonic Distortion

THD measures the distortion content of a signal, and is specified in decibels relative to the carrier
(dBc). THD is the ratio of the RMS sum of the selected harmonics of the input signal to the
fundamental itself. Only harmonics within the Nyquist limit are included in the measurement.

TUE Total Unadjusted Error

                              Preliminary v1.7                                2 -113
Device ArchitectureADC Output Code
                        TUE is a comprehensive specification that includes linearity errors, gain error, and offset error. It is
                        the worst-case deviation from the ideal device performance. TUE is a static specification
                        (Figure 2-88).

                                                                                                                    T U E = 0.5 LSB

                                                                                                                    IDEAL OUTPUT

                                                                  Input V oltage to P rescaler

                        Figure 2-88 Total Unadjusted Error (TUE)

2-114                   Preliminary v1.7
                                                                          Actel Fusion Mixed-Signal FPGAs

            Analog System Characteristics

Table 2-46 Analog Channel Specifications
                   All Values at Industrial Operating Conditions (unless noted otherwise)
                   Typical: VCC33A = 3.3 V, VCC = 1.5 V, and TA = 25C

Parameter  Description                       Condition             Minimum Typical Maximum Units

Voltage Monitor using Analog Pads AV, AC and AT (using prescaler)

VINAP      Input Voltage       Refer to Table 3-2 on page 3-3.

           Uncalibrated Gain   Refer to Table 2-48 on
           and Offset Errors   page 2-120.

           Calibrated Gain     Refer to Table 2-49 on
           and Offset Errors   page 2-121.

           Bandwidth                                               100                              kHz

           Input Resistance    Refer to Table 3-3 on page 3-4.

           Scaling Factor      Prescaler modes (Table 2-54 on
                               page 2-128).

           Sampling Time                                           10                               s

Current Monitor using Analog Pads AV and AC1 (potential on the AV pad must be greater than the AC pad)

VRSM 1     Maximum                                                                             VAREF / 10 mV
           Differential Input

           Resolution          See Accuracy specification

           Common Mode         Refer to Table 3-2 on page 3-3 for                              10.5 to V
           Range               maximum voltage limits.                                            +12

CMRR       Common Mode         DC 1 kHz                                                  60       dB
           Rejection Ratio

                               1 kHz 10 kHz                                              50       dB

                               >10 kHz                                                     30       dB

tCMSHI     Strobe              High time                           ADC                         200  s
                                                                   conv.
                                                                   time

tCMSLO                         Low time                            5                                               s
tCMSSET
                               Setting time                        0.02                                            s

           Accuracy            Input differential voltage > 50 mV                              2 (0.05 mV
                                                                                                (AV AC)

                                                                                                     to
                                                                                               2 + (0.05
                                                                                               (AV AC))

Notes:

1. VRSM is the maximum voltage drop across the current sense resistor.
2. Analog inputs used as digital inputs can tolerate the same voltage limits as the corresponding analog pad.

    There is no reliability concern on digital inputs as long as VIND does not exceed these limits.
3. VIND is limited to VCC33A + 0.2 to allow reaching 10 MHz input frequency.
4. Measurement is done by forcing a temperature on an external diode, with the Fusion device at room

    temperature.

5. The temperature offset is a fixed positive value.

6. The high current mode has a maximum power limit of 20 mW. Appropriate current limit resistors must be
    used, based on voltage on the pad.

                                          Preliminary v1.7                                          2 -115
Device Architecture

Table 2-46 Analog Channel Specifications (continued)
                   All Values at Industrial Operating Conditions (unless noted otherwise)
                   Typical: VCC33A = 3.3 V, VCC = 1.5 V, and TA = 25C

Parameter            Description              Condition            Minimum Typical Maximum Units

Temperature Monitor Using Analog Pad AT

External     Resolution           8-bit ADC                                                4         C
Temperature                       10-bit ADC
Monitor4     Offset 5             12-bit ADC                                               1         C
(using       Accuracy
external                                                                                   1         C
diode
2N3904)                                                                                    5         C

                                                                                           3        C

             External Sensor      High level                                               10        A
             Source Current

                                  Low level                                                100       A

Internal     Resolution           8-bit ADC                                                4         C
                                  10-bit ADC
Temperature                       12-bit ADC                                               1         C

Monitor

                                                                                           1         C

             Offset 5                                                                      5         C

             Accuracy                                                                      3        C

tTMSHI       Temperature          High time                        10                           105  s
tTMSLO       Monitor Strobe       Low time
                                  Setting time                     5                                 s

tTMSSET                           Refer to Table 3-2 on page 3-3.  5                                 s

Analog Input as a Digital Input

VIND 2, 3    Input Voltage

VHYSDIN      Hysteresis                                                                    0.3       V

VIHDIN       Input HIGH                                                                    1.2       V

VILDIN       Input LOW                                                                     0.9       V

VMPWDIN      Minimum Pulse                                         50                                ns
             Width

FDIN         Maximum Frequency                                                                  10   MHz
ISTBDIN
             Input Leakage                                                                 2         A
             Current

IDYNDIN      Dynamic Current                                                               20        A

tINDIN       Input Delay                                                                   10        ns

Notes:

1. VRSM is the maximum voltage drop across the current sense resistor.
2. Analog inputs used as digital inputs can tolerate the same voltage limits as the corresponding analog pad.

    There is no reliability concern on digital inputs as long as VIND does not exceed these limits.
3. VIND is limited to VCC33A + 0.2 to allow reaching 10 MHz input frequency.
4. Measurement is done by forcing a temperature on an external diode, with the Fusion device at room

    temperature.

5. The temperature offset is a fixed positive value.

6. The high current mode has a maximum power limit of 20 mW. Appropriate current limit resistors must be
    used, based on voltage on the pad.

2-116                                         Preliminary v1.7
                                                                Actel Fusion Mixed-Signal FPGAs

Table 2-46 Analog Channel Specifications (continued)
                   All Values at Industrial Operating Conditions (unless noted otherwise)
                   Typical: VCC33A = 3.3 V, VCC = 1.5 V, and TA = 25C

Parameter  Description                  Condition               Minimum Typical Maximum Units

Gate Driver Output Using Analog Pad AG

VG         Voltage Range       Refer to Table 3-2 on page 3-3.

IG         Output Current Drive High Current Mode6 at 1.0 V                                     20  mA

                               Low Current Mode 1 A                                   1        A

                               Low Current Mode 3 A                                   3        A

                               Low Current Mode 10 A                                  10       A

                               Low Current Mode 30 A                                  30       A

IOFFG      Maximum        Off                                                              100       nA

           Current

FG         High Current Mode 1 k resistive load                                            1.3       MHz
(maximum   at 1.0 V
                                                                                           3         kHz
switching  Low Current Mode 3,000 k resistive load
           1 A
rate)

           Low Current Mode 1,000 k resistive load                                       7         kHz
           3 A

           Low Current Mode 300 k resistive load                                         25        kHz
           10 A

           Low Current Mode 105 k resistive load                                         78        kHz
           30 A

Notes:

1. VRSM is the maximum voltage drop across the current sense resistor.
2. Analog inputs used as digital inputs can tolerate the same voltage limits as the corresponding analog pad.

    There is no reliability concern on digital inputs as long as VIND does not exceed these limits.
3. VIND is limited to VCC33A + 0.2 to allow reaching 10 MHz input frequency.
4. Measurement is done by forcing a temperature on an external diode, with the Fusion device at room

    temperature.

5. The temperature offset is a fixed positive value.

6. The high current mode has a maximum power limit of 20 mW. Appropriate current limit resistors must be
    used, based on voltage on the pad.

                                        Preliminary v1.7                                             2 -117
Device Architecture

Table 2-47 ADC Characteristics in Direct Input Mode
                   All Values at Industrial Operating Conditions (unless noted otherwise)
                   Typical: VCC33A = 3.3 V, VCC = 1.5 V, and TA = 25C

Parameter            Description            Condition          Minimum Typical             Maximum Units

All Analog Inputs

VINADC     Input Voltage (direct to Refer to Table 3-2 on

           ADC)                   page 3-3.

CINADC     Input Capacitance      Channel not selected                7                              pF
                                                                                                     pF
                                  Channel selected but                8

                                  not sampling

                                  Channel selected and                18                             pF

                                  sampling

ZINADC     Input Impedance        8-bit mode                          2                              k

                                  10-bit mode                         2                              k

                                  12-bit mode                         2                              k

VAREF      Reference Voltage      Internal         reference 2.537    2.56                 2.583     V

                                  Accuracy at 25C

                                  Temperature Drift of                65                             ppm /
                                                                                                        C
                                  Internal Reference
                                                                                                        V
                                  External reference           2.527                       VCC33A +
                                                                                             0.05

DC Accuracy (using external reference)1, 2

TUE        Total Unadjusted Error 8-bit mode                           0.29                           LSB
                                                                        0.72                          LSB
                                  10-bit mode                           1.80                          LSB
                                                                       0.20                           LSB
                                  12-bit mode                          0.32                           LSB
                                                                       1.71                           LSB
INL        Integral Non-Linearity 8-bit mode                           0.20                0.25       LSB
                                                                       0.60                0.43       LSB
                                  10-bit mode                          2.40                1.80       LSB
                                                                       0.01                0.24       LSB
                                  12-bit mode                          0.05                0.65       LSB
                                                                       0.20                2.48       LSB
DNL        Differential           Non- 8-bit mode                     0.0004               0.17       LSB
                                                                      0.002                0.20       LSB
           Linearity              10-bit mode                         0.007                0.40       LSB
           (no missing codes)                                           2.0                0.003     %FSR
                                                                                           0.011
                                  12-bit mode                                              0.044

           Offset Error           8-bit mode

                                  10-bit mode

                                  12-bit mode

           Gain Error             8-bit mode

                                  10-bit mode

                                  12-bit mode

           Gain Error (with internal All modes
           reference)

Notes:
1. Accuracy of the external reference is 2.56 V 4.6 mV.
2. Data is based on characterization.
3. The sample rate is time-shared among active analog inputs.

2-118                                       Preliminary v1.7
                                                                     Actel Fusion Mixed-Signal FPGAs

Table 2-47 ADC Characteristics in Direct Input Mode (continued)
                   All Values at Industrial Operating Conditions (unless noted otherwise)
                   Typical: VCC33A = 3.3 V, VCC = 1.5 V, and TA = 25C

Parameter     Description         Condition                    Minimum Typical             Maximum  Units

Dynamic Accuracy (using external reference, 100 kHz Sine Wave Input, 2.38 VP-P, 500 ksps,            dB
fADCCLK = 10 MHz)1, 2                                                                                dB
                                                                                                     dB
SNR        Signal-to-Noise Ratio  8-bit mode                   48.0  49.5                            dB
                                                                                                     dB
                                  10-bit mode                  58.0  60.0                            dB
                                                                                                    dBc
                                  12-bit mode                  62.9  64.5                           dBc
                                                                                                    dBc
SINAD      Signal-to-Noise and    8-bit mode                   47.6  49.5                           bits
           Distortion             10-bit mode                                                       bits
                                                               57.4  59.8                           bits

                                  12-bit mode                  62.0  64.2                             s
                                                                                                      s
THD        Total Harmonic         8-bit mode                         74.4                 63.0      s
           Distortion             10-bit mode                        78.3                 63.0    ksps
                                                                                                    ksps
                                  12-bit mode                        77.9                 64.4    ksps

ENOB       Effective Number of Bits 8-bit mode                 7.6   7.9

                                  10-bit mode                  9.2   9.6

                                  12-bit mode                  10.0  10.4

Conversion 2

           Conversion Time        8-bit mode                   1.7

                                  10-bit mode                  1.8

                                  12-bit mode                  2.0

           Sample Rate2           8-bit mode                                               600

                                  10-bit mode                                              550

                                  12-bit mode                                              500

Notes:
1. Accuracy of the external reference is 2.56 V 4.6 mV.
2. Data is based on characterization.
3. The sample rate is time-shared among active analog inputs.

                                  Preliminary v1.7                                                  2 -119
Device Architecture

Table 2-48 Uncalibrated Analog Channel Accuracy*
                   Worst-Case Industrial Conditions, TA = 85C

                     Total Channel Channel Input Offset            Channel Input Offset  Channel Gain Error
                                                                          Error (mV)             (%FSR)
                     Error (LSB)  Error (LSB)

Analog Prescaler Neg.  Pos. Neg                                 Pos. Neg.      Pos.

Pad Range (V) Max. Med. Max. Max Med. Max. Max. Med. Max. Min. Typ. Max.

Positive Range                         ADC in 10-Bit Mode

AV, AC  16           22 2 12 11 2 14 169 32 224 3                                     0   3

        8            40 5 17 11 5 21 87 40 166 2                                      0   4

        4            45 9 24 16 11 36 63 43 144 2                                     0   4

        2            70 19 33 33 20 66 66 39 131 2                                    0   4

        1            25 7 5 11 3 26                            11     3  26        3  1  3

        0.5          41 12 8 12 7 38                           6      4  19        3  1  3

        0.25 53 14 19 20 14 40                                 5      3  10        5  0   4

        0.125 89 29 24 40 28 88                                5      4  11        7  0   5

AT      16           3 9 15 4 0                               4  64     5   64        1  0   1

        4            10 2 15 11 2 11                            44     8  44        1  0   1

Negative Range                         ADC in 10-Bit Mode

AV, AC  16           35 10 9 24 6                           9  383 96    148       5  1  6

        8            65 19 12 34 12 9 268 99                             75        5  1  5

        4            86 28 21 64 24 19 254 96                            76        5  1  6

        2            136 53 37 115 42 39 230 83                          78        6  2  7

        1            98 35 8 39 8 15                           39     8  15        10 3 10

        0.5 121 46 7 54 14 18                                  27     7  9         10 4 11

        0.25 149 49 19 72 16 40                                18     4  10        14 4 12

        0.125 188 67 38 112 27 56                              14     3  7         16 5 14

Note: *Channel Accuracy includes prescaler and ADC accuracies. For 12-bit mode, multiply the LSB count by 4.
          For 8-bit mode, divide the LSB count by 4. Gain remains the same.

2-120                             Preliminary v1.7
                                                                             Actel Fusion Mixed-Signal FPGAs

Table 2-49 Calibrated Analog Channel Accuracy 1,2,3                        Total Channel Error (LSB)
                   Worst-Case Industrial Conditions, TA = 85C
                                                                        Negative Max. Median  Positive Max.
                                                             Condition
Analog Pad Prescaler Range (V) Input Voltage4 (V)

        Positive Range                                                       ADC in 10-Bit Mode

AV, AC  16              0.300 to 12.0                                   6   1                          6

        8               0.250 to 8.00                                   6   0                          6

        4               0.200 to 4.00                                   7   1                         7

        2               0.150 to 2.00                                   7   0                          7

        1               0.050 to 1.00                                   6   1                         6

AT      16              0.300 to 16.0                                   5   0                          5

        4               0.100 to 4.00                                   7   1                         7

        Negative Range                                                       ADC in 10-Bit Mode

AV, AC  16              0.400 to 10.5                                 7   1                          9

        8               0.350 to 8.00                                 7   1                         7

        4               0.300 to 4.00                                 7   2                         9

        2               0.250 to 2.00                                 7   2                         7

        1               0.050 to 1.00                                 16  1                         20

Notes:
1. Channel Accuracy includes prescaler and ADC accuracies. For 12-bit mode, multiply the LSB count by 4. For

    8-bit mode, divide the LSB count by 4. Overall accuracy remains the same.
2. Requires enabling Analog Calibration in the Actel tool flow.
3. Calibrated with two-point calibration methodology, using 20% and 80% full-scale points.
4. The lower limit of the input voltage is determined by the prescaler input offset.

                        Preliminary v1.7                                                                    2 -121
Device Architecture

Table 2-50 Analog Channel Accuracy: Monitoring Standard Positive Voltages                           Direct ADC2,3
                   Typical Conditions, TA = 25C                                                          (%FSR)

                                 Calibrated Typical Error per Positive Prescaler Setting1 (%FSR)

Input Voltage                    16 V (12 V) 8 V                    4V  2V                        1V

(V)                  16 V (AT) (AV/AC) (AV/AC) 4 V (AT) (AV/AC) (AV/AC) (AV/AC) VAREF = 2.56 V

15                   1

14                   1

12                   1           1

5                    2           2  1

3.3                  2           2  1                    1          1

2.5                  3           2  1                    1          1                                 1

1.8                  4           4  1                    1          1   1                             1

1.5                  5           5  2                    2          2   1                             1

1.2                  7           6  2                    2          2   1                             1

0.9                  9           9  4                    3          3   1                         1   1

Notes:
1. Requires enabling Analog Calibration in the Actel tool flow.
2. Direct ADC mode using an external VAREF of 2.56V4.6mV, without Analog Calibration macro.
3. For input greater than 2.56 V, the ADC output will saturate. A higher VAREF or prescaler usage is

    recommended.

       Examples

       Calculating Accuracy for an Uncalibrated Analog Channel

           Formula
       For a given prescaler range,

           Output Voltage = (Channel Output Offset in V) + (Input Voltage x Channel Gain)
       where

           Channel Output offset in V = Channel Output offset in LSBs x Equivalent voltage per LSB
           Channel Gain Factor = 1+ (% Channel Gain / 100)

                     Example
                     Input Voltage = 5 V
                     Chosen Prescaler range = 8 V range
                     Refer to Table 2-48 on page 2-120.

                     Max. Output Voltage = (Max Positive output offset) + (Input Voltage x Max Gain Factor)

                     Max. Positive output offset = (8 LSB) x (8mV per LSB in 10-bit mode)
                     Max. Positive output offset = 64 mV
                     Max. Gain = 1 + (2/100)
                     Max. Gain = 1.02
                     Max. Output Voltage = (64 mV) + (5 V x 1.02)
                     Max. Output Voltage = 5.164 V

                     Similarly,

2-122                                             Preliminary v1.7
                                                                                                   Actel Fusion Mixed-Signal FPGAs

    Min. Output Voltage = (Min. Negative output offset) + (Input Voltage x Min. Gain)
    = (136 mV) + (5 V x 0.98) = 4.764 V

Calculating Accuracy for a Calibrated Analog Channel
    Formula

For a given prescaler range,
    Output Voltage = Channel TUE in V + Input Voltage

where
    Channel TUE in V = Channel TUE in LSBs x Equivalent voltage per LSB

    Example
    Input Voltage = 5 V
    Chosen Prescaler range = 8 V range
    Refer to Table 2-49 on page 2-121.

    Max. Output Voltage = Max. Channel TUE in V + Input Voltage
    Max. Channel TUE in V = (6 LSB) (8 mV per LSB in 10-bit mode) = 48 mV
    Max. Output Voltage = 48 mV + 5 V = 5.048 V

    Similarly,
    Min Output Voltage = Min Channel TUE in V + Input Voltage = (-48 mV) + 5 V = 4.952 V
Calculating LSBs from a Given Error Budget
    Formula
For a given prescaler range,
    LSB count = (Input Voltage Required % error) / (Equivalent voltage per LSB)

    Example
    Input Voltage = 5 V
    Required error margin= 1%
    Refer to Table 2-49 on page 2-121.
    Equivalent voltage per LSB = 16 mV for a 16V prescaler, with ADC in 10-bit mode
    LSB Count = (5.0 V 1%) / (0.016)
    LSB Count = 3.125
    Equivalent voltage per LSB = 8 mV for an 8 V prescaler, with ADC in 10-bit mode
    LSB Count = (5.0 V 1%) / (0.008)
    LSB Count = 6.25
    The 8 V prescaler satisfies the calculated LSB count accuracy requirement (see Table 2-49 on
    page 2-121).

Preliminary v1.7  2 -123
Device Architecture

Analog Configuration MUX

       The ACM is the interface between the FPGA, the Analog Block configurations, and the real-time
       counter. Actel Libero IDE will generate IP that will load and configure the Analog Block via the
       ACM. However, users are not limited to using the Libero IDE IP. This section provides a detailed
       description of the ACM's register map, truth tables for proper configuration of the Analog Block
       and RTC, as well as timing waveforms so users can access and control the ACM directly from their
       designs.

       The Analog Block contains four 8-bit latches per Analog Quad that are initialized through the
       ACM. These latches act as configuration bits for Analog Quads. The ACM block runs from the core
       voltage supply (1.5 V).

       Access to the ACM is achieved via 8-bit address and data busses with enables. The pin list is
       provided in Table 2-36 on page 2-82. The ACM clock speed is limited to a maximum of 10 MHz,
       more than sufficient to handle the low-bandwidth requirements of configuring the Analog Block
       and the RTC (sub-block of the Analog Block).

       Table 2-51 decodes the ACM address space and maps it to the corresponding Analog Quad and
       configuration byte for that quad.

       Table 2-51 ACM Address Decode Table for Analog Quad

       ACMADDR [7:0] in  Name                 Description         Associated
       Decimal                                                    Peripheral

       0                                                        Analog Quad

       1                 AQ0                  Byte 0              Analog Quad

       2                 AQ0                  Byte 1              Analog Quad

       3                 AQ0                  Byte 2              Analog Quad

       4                 AQ0                  Byte 3              Analog Quad

       5                 AQ1                  Byte 0              Analog Quad

       .                 .                                    .   Analog Quad

       .                 .                                    .

       .                 .                                    .

       36                AQ8                  Byte 3              Analog Quad

       37                AQ9                  Byte 0              Analog Quad

       38                AQ9                  Byte 1              Analog Quad

       39                AQ9                  Byte 2              Analog Quad

       40                AQ9                  Byte 3              Analog Quad

       41                                     Undefined           Analog Quad

       .                 .                    Undefined           Analog Quad

       .                 .

       .                 .

       63                                     Undefined           RTC

       64                COUNTER0             Counter bits 7:0    RTC

       65                COUNTER1             Counter bits 15:8   RTC

       66                COUNTER2             Counter bits 23:16  RTC

       67                COUNTER3             Counter bits 31:24  RTC

       68                COUNTER4             Counter bits 39:32  RTC

       72                MATCHREG0  Match register bits 7:0       RTC

2-124                       Preliminary v1.7
                                                                                     Actel Fusion Mixed-Signal FPGAs

Table 2-51 ACM Address Decode Table for Analog Quad (continued)

               ACMADDR [7:0] in                 Name              Description                        Associated
               Decimal                                                                               Peripheral

               73                             MATCHREG1   Match register bits 15:8                   RTC

               74                             MATCHREG2   Match register bits 23:16                  RTC

               75                             MATCHREG3   Match register bits 31:24                  RTC

               76                             MATCHREG4   Match register bits 39:32                  RTC

               80                             MATCHBITS0  Individual match bits 7:0                  RTC

               81                             MATCHBITS1  Individual match bits 15:8                 RTC

               82                             MATCHBITS2  Individual match bits 23:16                RTC

               83                             MATCHBITS3  Individual match bits 31:24                RTC

               84                             MATCHBITS4  Individual match bits 39:32                RTC

               88                             CTRL_STAT   Control (write) / Status (read)            RTC

                                                                  register bits 7:0

               89                             TEST_REG            Test register(s)                   RTC

               Note: ACMADDR bytes 1 to 40 pertain to the Analog Quads; bytes 64 to 89 pertain to the RTC.

ACM Characteristics1

       ACMCLK      tSUEACM  tHEACM
      ACMWEN
ACMWDATA          tSUDACM  tHDACM                                D1
ACMADDRESS                  tHAACM                                A1
                       D0
                                                                  A1
                   tSUAACM                                                                      RD1

                       A0

Figure 2-89 ACM Write Waveform

                                    tMPWCLKACM

ACMCLK

ACMADDRESS         A0
   ACMRDATA              tCLKQACM

                                         RD0

Figure 2-90 ACM Read Waveform

                        1. When addressing the RTC addresses (i.e., ACMADDR 64 to 89), there is no timing generator, and the
                           rc_osc, byte_en, and aq_wen signals have no impact.

                                                Preliminary v1.7                                          2 -125
Device Architecture

           Timing Characteristics

Table 2-52 Analog Configuration Multiplexer (ACM) Timing
                   Commercial-Case Conditions: TJ = 70C, Worst-Case VCC = 1.425 V

Parameter            Description                                     2               1    Std.  Units
                                                                                    22.48  26.42    ns
tCLKQACM             Clock-to-Q of the ACM                           19.73          5.00   5.88     ns
tSUDACM              Data Setup time for the ACM                     4.39           0.00   0.00     ns
tHDACM               Data Hold time for the ACM                      0.00           5.38   6.33     ns
tSUAACM              Address Setup time for the ACM                  4.73           0.00   0.00     ns
tHAACM               Address Hold time for the ACM                   0.00           4.48   5.27     ns
tSUEACM              Enable Setup time for the ACM                   3.93           0.00   0.00     ns
tHEACM               Enable Hold time for the ACM                    0.00           10.00  10.00    ns
tMPWARACM            Asynchronous Reset Minimum Pulse Width for the  10.00
                     ACM                                                            14.79  17.38    ns
                                                                                    14.79  17.38    ns
tREMARACM            Asynchronous Reset Removal time for the ACM     12.98          45.00  45.00    ns
tRECARACM            Asynchronous Reset Recovery time for the ACM    12.98          10.00  10.00  MHz
tMPWCLKACM           Clock Minimum Pulse Width for the ACM           45.00
tFMAXCLKACM          lock Maximum Frequency for the ACM              10.00

2-126                              Preliminary v1.7
                                                           Actel Fusion Mixed-Signal FPGAs

        Analog Quad ACM Description

        Table 2-53 maps out the ACM space associated with configuration of the Analog Quads within the
        Analog Block. Table 2-53 shows the byte assignment within each quad and the function of each bit
        within each byte. Subsequent tables will explain each bit setting and how it corresponds to a
        particular configuration. After 3.3 V and 1.5 V are applied to Fusion, Analog Quad configuration
        registers are loaded with default settings until the initialization and configuration state machine
        changes them to user-defined settings.

Table 2-53 Analog Quad ACM Byte Assignment

Byte    Bit  Signal (Bx)                      Function       Default Setting

Byte 0  0    B0[0]        Scaling factor control prescaler Highest voltage range

(AV)    1    B0[1]

        2    B0[2]

        3    B0[3]        Analog MUX select             Prescaler

        4    B0[4]        Current monitor switch        Off

        5    B0[5]        Direct analog input switch    Off

        6    B0[6]        Selects V-pad polarity        Positive

        7    B0[7]        Prescaler op amp mode         Power-down

Byte 1  0    B1[0]        Scaling factor control prescaler Highest voltage range
             B1[1]
(AC)    1

        2    B1[2]

        3    B1[3]        Analog MUX select             Prescaler

        4    B1[4]

        5    B1[5]        Direct analog input switch    Off

        6    B1[6]        Selects C-pad polarity        Positive

        7    B1[7]        Prescaler op amp mode         Power-down

Byte 2  0    B2[0]        Internal chip temperature Off
             B2[1]        monitor
(AG)

        1                 Spare                        

        2    B2[2]        Current drive control         Lowest current

        3    B2[3]

        4    B2[4]        Spare                        

        5    B2[5]        Spare                        

        6    B2[6]        Selects G-pad polarity        Positive

        7    B2[7]        Selects low/high drive        Low drive

Byte 3  0    B3[0]        Scaling factor control prescaler Highest voltage range

(AT)    1    B3[1]

        2    B3[2]

        3    B3[3]        Analog MUX select             Prescaler

        4    B3[4]

        5    B3[5]        Direct analog input switch    Off

        6    B3[6]                                     

        7    B3[7]        Prescaler op amp mode         Power-down

                          Preliminary v1.7                                          2 -127
Device Architecture

       Table 2-54 details the settings available to control the prescaler values of the AV, AC, and AT pins.
       Note that the AT pin has a reduced number of available prescaler values.

Table 2-54 Prescaler Control Truth Table--AV (x = 0), AC (x = 1), and AT (x = 3)

Control Lines        Scaling Factor, LSB for an 8-Bit LSB for a 10-Bit LSB for a 12-Bit   Full-Scale  Range
Bx[2:0]                Pad to ADC Conversion2 Conversion2 Conversion2                      Voltage     Name
                                                                                          16.368 V      16 V
000 1                      Input  (mV)     (mV)              (mV)                          8.184 V
                                                                                           4.092 V      8V
                        0.15625   64       16                4                             2.046 V      4V
                                                                                           1.023 V      2V
001                     0.3125    32       8                 2                            0.5115 V      1V
                                                                                         0.25575 V     0.5 V
010 1                      0.625  16       4                 1                           0.127875 V   0.25 V
                                                                                                      0.125 V
011                        1.25   8        2                 0.5

100                        2.5    4        1                 0.25

101                        5.0    2        0.5               0.125

110                        10.0   1        0.25              0.0625

111                        20.0   0.5      0.125             0.03125

Notes:
1. These are the only valid ranges for the Temperature Monitor Block Prescaler.
2. LSB voltage equivalences assume VAREF = 2.56 V.

       Table 2-55 details the settings available to control the MUX within each of the AV, AC, and AT
       circuits. This MUX determines whether the signal routed to the ADC is the direct analog input,
       prescaled signal, or output of either the Current Monitor Block or the Temperature Monitor Block.

Table 2-55 Analog Multiplexer Truth Table--AV (x = 0), AC (x = 1), and AT (x = 3)

       Control Lines Bx[4]              Control Lines Bx[3]                         ADC Connected To

                     0                  0                    Prescaler

                     0                  1                    Direct input

                     1                  0                    Current amplifier temperature monitor

                     1                  1                    Not valid

       Table 2-56 details the settings available to control the Direct Analog Input switch for the AV, AC,
       and AT pins.

Table 2-56 Direct Analog Input Switch Control Truth Table--AV (x = 0), AC (x = 1), and AT (x = 3)

       Control Lines Bx[5]                                   Direct Input Switch

                        0                                    Off

                        1                                    On

       Table 2-57 details the settings available to control the polarity of the signals coming to the AV, AC,
       and AT pins. Note that the only valid setting for the AT pin is logic 0 to support positive voltages.

Table 2-57 Voltage Polarity Control Truth Table--AV (x = 0), AC (x = 1), and AT (x = 3)*

       Control Lines Bx[6]                                   Input Signal Polarity

                        0                                    Positive

                        1                                    Negative

Note: *The B3[6] signal for the AT pad should be kept at logic 0 to accept only positive voltages.

2-128                                   Preliminary v1.7
                                                                            Actel Fusion Mixed-Signal FPGAs

Table 2-58 details the settings available to either power down or enable the prescaler associated
with the analog inputs AV, AC, and AT.

Table 2-58 Prescaler Op Amp Power-Down Truth Table--AV (x = 0), AC (x = 1), and AT (x = 3)

Control Lines Bx[7]                                            Prescaler Op Amp

      0                                                        Power-down

      1                                                        Operational

Table 2-59 details the settings available to enable the Current Monitor Block associated with the AC
pin.

Table 2-59 Current Monitor Input Switch Control Truth Table--AV (x = 0)

Control Lines B0[4]                                        Current Monitor Input Switch

      0                                                        Off

      1                                                        On

Table 2-60 details the settings available to configure the drive strength of the gate drive when not
in high-drive mode.

Table 2-60 Low-Drive Gate Driver Current Truth Table (AG)

Control Lines B2[3]  Control Lines B2[2]                                             Current (A)

0                                                   0                                    1

0                                                   1                                    3

1                                                   0                                    10

1                                                   1                                    30

Table 2-61 details the settings available to set the polarity of the gate driver (either p-channel- or
n-channel-type devices).

Table 2-61 Gate Driver Polarity Truth Table (AG)

Control Lines B2[6]                                            Gate Driver Polarity

      0                                                        Positive

      1                                                        Negative

Table 2-62 details the settings available to turn on the Gate Driver and set whether high-drive
mode is on or off.

Table 2-62 Gate Driver Control Truth Table (AG)

Control Lines B2[7]  GDON                                                            Gate Driver

0                                                   0                                Off

0                                                   1                            Low drive on

1                                                   0                                Off

1                                                   1                       High drive on

Table 2-63 details the settings available to turn on and off the chip internal temperature monitor.

Table 2-63 Internal Temperature Monitor Control Truth Table

Control Lines B2[0]                                 PDTMB      Chip Internal Temperature Monitor

   0                                                   0                                 Off

   1                                                   1                                 On

                     Preliminary v1.7                                                              2 -129
Device Architecture

   User I/Os

                Introduction

                        Fusion devices feature a flexible I/O structure, supporting a range of mixed voltages (1.5 V, 1.8 V,
                        2.5 V, and 3.3 V) through a bank-selectable voltage. Table 2-65, Table 2-66, Table 2-67, and
                        Table 2-68 on page 2-133 show the voltages and the compatible I/O standards. I/Os provide
                        programmable slew rates, drive strengths, weak pull-up, and weak pull-down circuits. 3.3 V PCI and
                        3.3 V PCI-X are 5 Vtolerant. See the "5 V Input Tolerance" section on page 2-143 for possible
                        implementations of 5 V tolerance.

                        All I/Os are in a known state during power-up, and any power-up sequence is allowed without
                        current impact. Refer to the "I/O Power-Up and Supply Voltage Thresholds for Power-On Reset
                        (Commercial and Industrial)" section on page 3-5 for more information. In low power standby or
                        sleep mode (VCC is OFF, VCC33A is ON, VCCI is ON) or when the resource is not used, digital inputs are
                        tristated, digital outputs are tristated, and digital bibufs (input/output) are tristated.

                        I/O Tile

                        The Fusion I/O tile provides a flexible, programmable structure for implementing a large number of
                        I/O standards. In addition, the registers available in the I/O tile in selected I/O banks can be used to
                        support high-performance register inputs and outputs, with register enable if desired (Figure 2-91
                        on page 2-131). The registers can also be used to support the JESD-79C DDR standard within the I/O
                        structure (see the "Double Data Rate (DDR) Support" section on page 2-137 for more information).

                        As depicted in Figure 2-92 on page 2-136, all I/O registers share one CLR port. The output register
                        and output enable register share one CLK port. Refer to the "I/O Registers" section on page 2-136
                        for more information.

                I/O Banks and I/O Standards Compatibility

                        The digital I/Os are grouped into I/O voltage banks. There are three digital I/O banks on the AFS090
                        and AFS250 devices and four digital I/O banks on the AFS600 and AFS1500 devices. Figure 2-105 on
                        page 2-158 and Figure 2-106 on page 2-158 show the bank configuration by device. The north side
                        of the I/O in the AFS600 and AFS1500 devices comprises two banks of Actel Pro I/Os. The Actel Pro
                        I/Os support a wide number of voltage-referenced I/O standards in addition to the multitude of
                        single-ended and differential I/O standards common throughout all Actel digital I/Os. Each I/O
                        voltage bank has dedicated I/O supply and ground voltages (VCCI/GNDQ for input buffers and
                        VCCI/GND for output buffers). Because of these dedicated supplies, only I/Os with compatible
                        standards can be assigned to the same I/O voltage bank. Table 2-66 and Table 2-67 on page 2-132
                        show the required voltage compatibility values for each of these voltages.

                        For more information about I/O and global assignments to I/O banks, refer to the specific pin table
                        of the device in the "Package Pin Assignments" section on page 4-1 and the "User I/O Naming
                        Convention" section on page 2-157.

                        Each Pro I/O bank is divided into minibanks. Any user I/O in a VREF minibank (a minibank is the
                        region of scope of a VREF pin) can be configured as a VREF pin (Figure 2-91 on page 2-131). Only one
                        VREF pin is needed to control the entire VREF minibank. The location and scope of the VREF
                        minibanks can be determined by the I/O name. For details, see the "User I/O Naming Convention"
                        section on page 2-157.

                        Table 2-67 on page 2-132 shows the I/O standards supported by Fusion devices and the
                        corresponding voltage levels.

                        I/O standards are compatible if the following are true:

                              Their VCCI values are identical.
                              If both of the standards need a VREF, their VREF values must be identical (Pro I/O only).

2-130  Preliminary v1.7
                                                                               Actel Fusion Mixed-Signal FPGAs

                     CCC  Bank 0              CCC                      Bank 1  CCC

                                                      Up to five VREF       Common VREF
                                                     minibanks within     signal for all I/Os

                                                         an I/O bank      in VREF minibanks

                       VREF signal scope is
                     between 8 and 18 I/Os.

                                                                                                             I/O

                                                                                                 I/O
                                                                                           VCCI
                                                                                      GND
                                                                                VCC
                                                                          I/O

                                                               I/O
                                                       I/O

                                            I/O
                                      VCCI
                                GND
                           VCC
                     I/O

          I/O

                          I/O Pad             If needed, the VREF for a given
                                              minibank can be provided by

                                              any I/O within the minibank.

Figure 2-91 Fusion Pro I/O Bank Detail Showing VREF Minibanks (north side of AFS600 and AFS1500)
Table 2-64 I/O Standards Supported by Bank Type

I/O Bank  Single-Ended I/O Standards          Differential I/O                 Voltage-Referenced                 Hot-
                                                 Standards                                                        Swap

Standard I/O LVTTL/LVCMOS 3.3 V, LVCMOS                                                                         Yes

          2.5 V / 1.8 V / 1.5 V, LVCMOS

          2.5/5.0 V

Advanced I/O LVTTL/LVCMOS 3.3 V, LVCMOS LVPECL and LVDS                                                          

          2.5 V / 1.8 V / 1.5 V, LVCMOS

          2.5/5.0 V, 3.3 V PCI / 3.3 V PCI-X

Pro I/O   LVTTL/LVCMOS 3.3 V, LVCMOS LVPECL and LVDS GTL+ 2.5 V / 3.3 V, GTL 2.5 V / 3.3 V, Yes

          2.5 V / 1.8 V / 1.5 V, LVCMOS                                HSTL Class I and II, SSTL2 Class I and

          2.5/5.0 V, 3.3 V PCI / 3.3 V PCI-X                           II, SSTL3 Class I and II

                                              Preliminary v1.7                                                    2 -131
Device Architecture

Table 2-65 I/O Bank Support by Device

I/O Bank                         AFS090               AFS250            AFS600                       AFS1500
                                                          N                                              
Standard I/O                     N
                                                        E, W              E, W                         E, W
Advanced I/O                     E, W                                      N                            N
                                                          S                 S                             S
Pro I/O                                

Analog Quad                            S

Note: E = East side of the device
          W = West side of the device
          N = North side of the device
          S = South side of the device

Table 2-66 Fusion VCCI Voltages and Compatible Standards

VCCI (typical)                                        Compatible Standards

3.3 V                LVTTL/LVCMOS 3.3, PCI 3.3, SSTL3 (Class I and II),* GTL+ 3.3, GTL 3.3,* LVPECL

2.5 V                LVCMOS 2.5, LVCMOS 2.5/5.0, SSTL2 (Class I and II),* GTL+ 2.5,* GTL 2.5,* LVDS, BLVDS, M-LVDS

1.8 V                LVCMOS 1.8

1.5 V                LVCMOS 1.5, HSTL (Class I),* HSTL (Class II)*

Note: *I/O standard supported by Pro I/O banks.

Table 2-67 Fusion VREF Voltages and Compatible Standards*

VREF (typical)                                        Compatible Standards

1.5 V                SSTL3 (Class I and II)

1.25 V               SSTL2 (Class I and II)

1.0 V                GTL+ 2.5, GTL+ 3.3

0.8 V                GTL 2.5, GTL 3.3

0.75 V               HSTL (Class I), HSTL (Class II)

Note: *I/O standards supported by Pro I/O banks.

2-132                                                 Preliminary v1.7
Preliminary v1.7                                                                    3.3 V   I/O Bank Voltage (typical)    Table 2-68 Fusion Standard and Advanced I/O Features
                                                                              0.80 V
                                                                         1.00 V              Minibank Voltage (typical)
                                                                   1.50 V                    LVTTL/LVCMOS 3.3 V
                                                                                             LVCMOS 2.5 V
                                                             2.5 V                          LVCMOS 1.8 V
                                                        0.80 V                               LVCMOS 1.5 V
                                                  1.00 V                                     3.3 V PCI / PCI-X
                                            1.25 V                                           GTL + (3.3 V)
                                                                                             GTL + (2.5 V)
                                      1.8 V                                                 GTL (3.3 V)
                                 1.5 V                                                      GTL (2.5 V)
                                                                                             HSTL Class I and II (1.5 V)
                           0.75 V                                                            SSTL2 Class I and II (2.5 V)
                     Note: White box: Allowable I/O standard combinations                    SSTL3 Class I and II (3.3 V)
                                                                                             LVDS (2.5 V 5%)
                  Gray box: Illegal I/O standard combinations                                LVPECL (3.3 V)

2 -133                                                                                                                                                                             Actel Fusion Mixed-Signal FPGAs
Device Architecture

          Features Supported on Pro I/Os

          Table 2-69 lists all features supported by transmitter/receiver for single-ended and differential
          I/Os.

Table 2-69 Fusion Pro I/O Features

Feature                                                       Description

Single-ended and voltage-         Hot insertion in every mode except PCI or 5 V input tolerant (these modes
                                   use clamp diodes and do not allow hot insertion)
referenced transmitter
                                   Activation of hot insertion (disabling the clamp diode) is selectable by I/Os.
features                        

                                 Weak pull-up and pull-down

                                 Two slew rates

                                 Skew between output buffer enable/disable time: 2 ns delay (rising edge)
                                    and 0 ns delay (falling edge); see "Selectable Skew between Output Buffer
                                    Enable/Disable Time" on page 2-148 for more information

                                 Five drive strengths

                                 5 Vtolerant receiver ("5 V Input Tolerance" section on page 2-143)

                                 LVTTL/LVCMOS 3.3 V outputs compatible with 5 V TTL inputs ("5 V Output
                                    Tolerance" section on page 2-146)

                                 High performance (Table 2-73 on page 2-141)

Single-ended receiver features Schmitt trigger option

                                 ESD protection

                                 Programmable delay: 0 ns if bypassed, 0.625 ns with '000' setting, 6.575 ns
                                    with '111' setting, 0.85-ns intermediate delay increments (at 25C, 1.5 V)

                                 High performance (Table 2-73 on page 2-141)

                                 Separate ground planes, GND/GNDQ, for input buffers only to avoid
                                    output-induced noise in the input circuitry

Voltage-referenced               Programmable Delay: 0 ns if bypassed, 0.625 ns with '000' setting, 6.575 ns

differential receiver features     with '111' setting, 0.85-ns intermediate delay increments (at 25C, 1.5 V)

                                 High performance (Table 2-73 on page 2-141)

                                 Separate ground planes, GND/GNDQ, for input buffers only to avoid
                                    output-induced noise in the input circuitry

CMOS-style LVDS,        BLVDS, Two I/Os and external resistors are used to provide a CMOS-style LVDS,
M-LVDS, or LVPECL                       BLVDS, M-LVDS, or LVPECL transmitter solution.
transmitter
                                    Activation of hot insertion (disabling the clamp diode) is selectable by I/Os.

                                 Weak pull-up and pull-down

                                 Fast slew rate

LVDS/LVPECL differential         ESD protection
receiver features                High performance (Table 2-73 on page 2-141)

                                 Programmable delay: 0.625 ns with '000' setting, 6.575 ns with '111'
                                    setting, 0.85-ns intermediate delay increments (at 25C, 1.5 V)

                                 Separate input buffer ground and power planes to avoid output-induced
                                    noise in the input circuitry

2-134                                 Preliminary v1.7
                                      Actel Fusion Mixed-Signal FPGAs

Table 2-70 Maximum I/O Frequency for Single-Ended, Voltage-Referenced, and Differential I/Os;
                   All I/O Bank Types (maximum drive strength and high slew selected)

Specification                         Performance Up To

LVTTL/LVCMOS 3.3 V                    200 MHz

LVCMOS 2.5 V                          250 MHz

LVCMOS 1.8 V                          200 MHz

LVCMOS 1.5 V                          130 MHz

PCI                                   200 MHz

PCI-X                                 200 MHz

HSTL-I                                300 MHz

HSTL-II                               300 MHz

SSTL2-I                               300 MHz

SSTL2-II                              300 MHz

SSTL3-I                               300 MHz

SSTL3-II                              300 MHz

GTL+ 3.3 V                            300 MHz

GTL+ 2.5 V                            300 MHz

GTL 3.3 V                             300 MHz

GTL 2.5 V                             300 MHz

LVDS                                  350 MHz

LVPECL                                300 MHz

                    Preliminary v1.7                                                             2 -135
Device Architecture

                I/O Registers

                        Each I/O module contains several input, output, and enable registers. Refer to Figure 2-92 for a
                        simplified representation of the I/O block.
                        The number of input registers is selected by a set of switches (not shown in Figure 2-92) between
                        registers to implement single or differential data transmission to and from the FPGA core. The
                        Designer software sets these switches for the user.
                        A common CLR/PRE signal is employed by all I/O registers when I/O register combining is used.
                        Input register 2 does not have a CLR/PRE pin, as this register is used for DDR implementation. The
                        I/O register combining must satisfy some rules.

                              I/O / Q0           1                     2
                                              Input                  Input
                                               Reg
                                                                      Reg

                To FPGA Core                  CLR/PRE                                   Y Pull-Up/Down
                                                                                                Resistor Control
                              I/O / Q1                  3
                                                      Input              &n