This website uses cookies. By using this site, you consent to the use of cookies. For more information, please take a look at our Privacy Policy.
Home > FPGA Technical Tutorials > FPGAs: World Class Designs > FPGA vs. ASIC Designs > CLOCK CONSIDERATIONS

TABLE OF CONTENTS

Xilinx FPGA FPGA Forum

CLOCK CONSIDERATIONS

FONT SIZE : AAA

Clock Domains   

ASIC designs can feature a huge number of clocks (one hears of designs with  more than 300 different clock domains). In the case of an FPGA, however,  there are a limited number of dedicated global clock resources in any particular  device. It is highly recommended that designers budget their clock systems to  stay within the dedicated clock resources (as opposed to using general-p urpose  inputs as user-defined clocks).   Some FPGAs allow their clock trees to be fragmented into clock segments.  If the target technology does support this feature, it should be identified and  accounted for while mapping external or internal clocks.  

Clock Balancing  

In the case of ASIC designs, special techniques must be used to balance clock  delays throughout the device. By comparison, FPGAs feature device-wide, low-skew clock routing resources. This makes clock balancing unnecessary by  the design engineer because the FPGA vendor has already taken care of it.

Clock Gating versus Clock Enabling   

ASIC designs often use the technique of gated clocks to help reduce power  dissipation, as shown in Figure 4-4a . However, these tend to give the design  asynchronous characteristics and make it sensitive to glitches caused by inputs  switching too closely together on the gating logic.   By comparison, FPGA designers tend to use the technique of enabling  clocks. Originally this was performed by means of an external multiplexer as  illustrated in Figure 4-4b ; today, however, almost all FPGA architectures have  a dedicated clock enable pin on the register itself, as shown in Figure 4-4c .  

PLLs and Clock Conditioning Circuitry   

FPGAs typically include PLL or DLL functions—one for each dedicated global  clock (see also the discussions in Chapter 2). If these resources are used for  on-chip clock generation, then the design should also include some mechanism  for disabling or bypassing them to facilitate chip testing and debugging.

Reliable Data Transfer across Multiclock Domains  

In reality, this topic is true for both ASIC and FPGA designs, the point being  that the exchange of data between two independent clock domains must be  performed very carefully to avoid losing or corrupting data. Bad synchronization may lead to metastability issues and tricky timing analysis problems.  In order to achieve reliable transfers across domains, it is recommended to  employ handshaking, double flopping, or asynchronous FIFO techniques.


  • XC18V256SC

    Manufacturer:Xilinx

  • Xilinx SOP-20
  • Product Categories:

    Lifecycle:Active Active

    RoHS: -

  • XC18V256VQ44I

    Manufacturer:Xilinx

  • Configuration EEPROM
  • Product Categories: Memory - Configuration Proms for FPGA's

    Lifecycle:Active Active

    RoHS: -

  • XC3S200AN-4FT256C

    Manufacturer:Xilinx

  • FPGA Spartan-3AN Family 200K Gates 4032 Cells 667MHz 90nm Technology 1.2V Automotive Medical 256-Pin FTBGA
  • Product Categories: FPGAs

    Lifecycle:Active Active

    RoHS: No RoHS

  • XC18V512SOG20C

    Manufacturer:Xilinx

  • PROM Parallel/Serial 512K-bit 2.5V/3.3V 20-Pin SOIC
  • Product Categories: Memory - Configuration Proms for FPGA's

    Lifecycle:Active Active

    RoHS:

  • XC18V512VQG44C

    Manufacturer:Xilinx

  • PROM Parallel/Serial 512K-bit 2.5V/3.3V 44-Pin VQFP
  • Product Categories: Memory - Configuration Proms for FPGA's

    Lifecycle:Active Active

    RoHS:

Need Help?

Support

If you have any questions about the product and related issues, Please contact us.