Part Number Hot Search : 
00TTS 04MU06MU ACS764 BAS85T XC9248 PT22002 RLPBF MD7002
Product Description
Full Text Search
 

To Download EP2AGX125DF25C5NES Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  101 innovation drive san jose, ca 95134 www.altera.com arria ii gx device handbook volume 1 aiigx5v1-1.1
copyright ? 2009 altera corporation. all rights reserved. altera, the programmable solutions company, the stylized altera logo, specific device designations, and all other words and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of altera corporation in the u.s. and other countries. all other product or service names are the property of their respective holders. altera products are protected under numerous u.s. and foreign patents and pending ap- plications, maskwork rights, and copyrights. altera warrants performance of its semiconductor products to current specification s in accordance with altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. altera assumes no responsibilit y or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by altera corporation. altera cu stomers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services .
? march 2009 altera corporation arria ii gx device handbook volume 1 contents chapter revision dates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi section i. device core revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i-1 chapter 1. arria ii gx device family overview introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 highlights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 arria ii gx device architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 high-speed transceiver features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 pci express (pipe) hard ip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 logic array block and adaptive logic modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7 embedded memory blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7 dsp resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 i/o features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 high-speed lvds i/o with dpa and soft cdr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 clock management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9 auto-calibrating external memory interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9 nios ii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10 configuration features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10 seu mitigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10 jtag boundary scan testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 reference and ordering information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 chapter 2. logic array blocks and adaptive logic modules in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 logic array blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 lab interconnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 lab control signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4 adaptive logic modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4 alm operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 normal mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 extended lut mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 arithmetic mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 shared arithmetic mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 lut-register mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11 register chain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12 alm interconnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13 clear and preset logic control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13 chapter 3. memory blocks in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
iv contents arria ii gx device handbook volume 1 ? march 2009 altera corporation memory features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 memory block types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 parity bit support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 byte enable support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 packed mode support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 address clock enable support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 mixed width support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 asynchronous clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 memory modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 single-port ram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 simple dual-port mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 true dual-port mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 shift-register mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12 rom mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 fifo mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 clocking modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 independent clock mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 input and output clock mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 read and write clock mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 single clock mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 design considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 memory block selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 conflict resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 read-during-write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 same-port read-during-write mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16 mixed-port read-during-write mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17 power-up conditions and memory initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 power management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19 chapter 4. dsp blocks in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 dsp block overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 simplified dsp operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 operational modes overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5 dsp block resource descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6 input registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7 multiplier and first-stage adder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10 pipeline register stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11 second-stage adder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11 round and saturation stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12 second adder and output registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
contents v ? march 2009 altera corporation arria ii gx device handbook volume 1 operational mode descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13 independent multiplier modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13 9-, 12-, and 18-bit multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13 36-bit multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-17 double multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18 two-multiplier adder sum mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20 18 18 complex multiply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21 four-multiplier adder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22 high-precision multiplier adder mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23 multiply accumulate mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-25 shift modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26 rounding and saturation mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28 dsp block control signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30 software support for arria ii gx devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32 chapter 5. clock networks and p lls in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 clock networks in arria ii gx devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 global clock networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 regional clock networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 periphery clock networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3 clocking regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4 clock network sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 dedicated clock inputs pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 logic array blocks (labs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 pll clock outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 clock input connections to plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 clock output connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 clock control block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8 clock enable signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-12 clock source control for plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13 cascading plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13
vi contents arria ii gx device handbook volume 1 ? march 2009 altera corporation plls in arria ii gx devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14 arria ii gx pll hardware overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15 pll clock i/o pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15 pll control signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16 pfdena . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 areset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 locked . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 clock feedback modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 source synchronous mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18 source-synchronous mode for lvds compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19 no-compensation mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19 normal mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-20 zero-delay buffer mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-21 clock multiplication and division . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-21 post-scale counter cascading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-22 programmable duty cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23 programmable phase-shift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23 programmable bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24 spread-spectrum tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-25 clock switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-25 automatic clock switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26 manual clock switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-28 guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-29 pll reconfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-30 pll reconfiguration hardware implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-30 post-scale counters (c0 to c6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-32 scan chain description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-33 charge pump and loop filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-34 bypassing pll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-35 dynamic phase-shifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-36 pll specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-38 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-38 section ii. i/o interfaces revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii-1 chapter 6. i/o features in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 arria ii gx i/o standards support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2 arria ii gx i/o banks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3 modular i/o banks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 arria ii gx i/o structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 3.3-v i/o interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 external memory interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7 high-speed differential i/o with dpa support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7 programmable current strength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 programmable slew rate control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 open-drain output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 bus hold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 programmable pull-up resistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 programmable pre-emphasis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 programmable differential output voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 multivolt i/o interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10
contents vii ? march 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx oct support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 on-chip series (r s ) termination without calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 on-chip series termination with calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-12 lvds input on-chip termination (r d ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13 arria ii gx oct calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 oct calibration block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 arria ii gx termination schemes for i/o standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 single-ended i/o standards termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 differential i/o standards termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 lvds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17 differential lvpecl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18 rsds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19 mini-lvds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20 arria ii gx design considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21 i/o termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21 single-ended i/o standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21 differential i/o standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21 i/o bank restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 non-voltage-referenced standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 voltage-referenced standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 mixing voltage-referenced and non-voltage-referenced standards . . . . . . . . . . . . . . . . . . . . . 6-22 i/o placement guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 3.3-v, 3.0-v, and 2.5-v lvttl/lvcmos tolerance guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 pin placement guideline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23 chapter 7. external memory interfaces in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 arria ii gx memory interfaces pin support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3 arria ii gx external memory interface features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15 dqs phase-shift circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15 dll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-17 phase offset control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20 dqs logic block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-21 dqs delay chain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-22 update enable circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-23 dqs postamble circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-23 i/o element registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-25 revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-26 chapter 8. high-speed differential i/o interfaces and dpa in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1 lvds channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 lvds serdes and dpa block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 differential transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6 serializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6
viii contents arria ii gx device handbook volume 1 ? march 2009 altera corporation differential receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8 dynamic phase alignment (dpa) block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-9 synchronizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10 data realignment block (bit slip) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10 deserializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11 receiver data path modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12 non-dpa mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12 dpa mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-13 soft-cdr mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14 programmable pre-emphasis and programmable v od . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-15 differential i/o termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17 plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17 lvds and dpa clock networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17 source-synchronous timing budget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-18 differential data orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-19 differential i/o bit position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-19 receiver skew margin for non-dpa mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-20 differential pin placement guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-21 dpa-enabled channels and single-ended i/os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22 guidelines for dpa-enabled differential channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22 dpa-enabled channel driving distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22 using center and corner plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22 using both center plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-23 using both corner plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-25 guidelines for dpa-disabled differential channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-27 dpa-disabled channel driving distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-27 using corner and center plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-27 using both center plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-29 using both corner plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-31 setting up an lvds transmitter or receiver channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-31 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-31 section iii. system integration revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii-1 chapter 9. configuration, design security, and remote system upgrades in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1 configuration devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 configuration features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 power-on reset circuit and configuration pins power supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 power-on reset circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 v ccio pins for i/o banks 3c and 8c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 v ccpd pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 configuration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 power up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5 configuration error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5 initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5 user mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6 configuration schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6 msel pin settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6 raw binary file size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7
contents ix ? march 2009 altera corporation arria ii gx device handbook volume 1 fast passive parallel configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8 fpp configuration using an external host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8 fpp configuration timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12 active serial configuration (serial configuration devices) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15 estimating active serial configuration time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-19 programming serial configuration devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-20 passive serial configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-22 ps configuration using an external host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-22 ps configuration timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-25 ps configuration using a download cable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-26 jtag configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-28 jam stapl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34 device configuration pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34 configuration data decompression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-40 remote system upgrades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-42 functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-43 enabling remote update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-44 configuration image types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-45 remote system upgrade mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-46 overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-46 remote update mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-46 dedicated remote system upgrade circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-48 remote system upgrade registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-49 remote system upgrade control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-50 remote system upgrade status register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-51 remote system upgrade state machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52 user watchdog timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52 quartus ii software support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-53 altremote_update megafunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-54 design security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-54 arria ii gx security protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-55 security against copying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-55 security against reverse engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-55 security against tampering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-55 aes decryption block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-56 flexible security key storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-56 arria ii gx design security solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-57 security modes available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-58 volatile key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-58 non-volatile key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-58 volatile key with tamper protection bit set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-58 non-volatile key with tamper protection bit set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9- 58 volatile or non-volatile key with jtag anti-tamper protection bit set . . . . . . . . . . . . . . . . . . 9-58 no key operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-59 supported configuration schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-59 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-61 chapter 10. seu mitigation in arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 error detection fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 configuration error detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2 user mode error detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2 automated single event upset detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
x contents arria ii gx device handbook volume 1 ? march 2009 altera corporation error detection pin description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 crc_error pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 error detection block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 error detection registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-7 error detection timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-8 software support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-10 recovering from crc errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11 chapter 11. jtag boundary-scan testing introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 ieee std. 1149.6 boundary-scan register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 bst operation control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-3 extest_pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4 extest_train . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4 i/o voltage support in a jtag chain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-5 boundary-scan description language support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6 revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6 chapter 12. power requirements for arria ii gx devices introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 external power supply requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 power-on reset circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2 hot socketing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2 devices can be driven before power up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 i/o pins remain tri-stated during power up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 insertion or removal of an arria ii gx device from a powered-up system . . . . . . . . . . . . . . . . . . 12-3 hot socketing feature implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-4 additional information about this handbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1 how to contact altera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1 typographic conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1
? march 2009 altera corporation arria ii gx device handbook volume 1 chapter revision dates the chapters in this book, arria ii gx device handbook volume 1 , were revised on the following dates. where chapters or groups of chapters are available separately, part numbers are listed. chapter 1 arria ii gx device family overview revised: february 2009 part number: aiigx51001-1.0 chapter 2 logic array blocks and adaptive logic modules in arria ii gx devices revised: february 2009 part number: aiigx51002-1.0 chapter 3 memory blocks in arria ii gx devices revised: february 2009 part number: aiigx51003-1.0 chapter 4 dsp blocks in arria ii gx devices revised: february 2009 part number: aiigx51004-1.0 chapter 5 clock networks and plls in arria ii gx devices revised: february 2009 part number: aiigx51005-1.0 chapter 6 i/o features in arria ii gx devices revised: february 2009 part number: aiigx51006-1.0 chapter 7 external memory interfaces in arria ii gx devices revised: march 2009 part number: aiigx51007-1.1 chapter 8 high-speed differential i/o interfaces and dpa in arria ii gx devices revised: february 2009 part number: aiigx51008-1.0 chapter 9 configuration, design security, and remote system upgrades in arria ii gx devices revised: february 2009 part number: aiigx51009-1.0 chapter 10 seu mitigation in arria ii gx devices revised: february 2009 part number: aiigx51010-1.0 chapter 11 jtag boundary-scan testing revised: february 2009 part number: aiigx51011-1.0
xii chapter revision dates arria ii gx device handbook volume 1 ? march 2009 altera corporation chapter 12 power requirements for arria ii gx devices revised: february 2009 part number: aiigx51012-1.0
? february 2009 altera corporation arria ii gx device handbook volume 1 section i. device core this section provides a complete overview of all features relating to the arria ? ii gx device family, the industry?s first cost-optimized 40 nm fpga family. this section includes the following chapters: revision history refer to each chapter for its own specific revision history. for information on when each chapter was updated, refer to the chapter revision dates section, which appears in this volume.
i?2 section i: device core arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 1. arria ii gx device family overview introduction the arria ? ii gx device family is designed specifically for ease-of-use. the cost-optimized, 40-nm device family architecture features a low-power, programmable logic engine, and streamlined transceivers and i/os. common interfaces, such as the pci express (pipe), ethernet, and ddr-2 memory is easily implemented in your design with the quartus ? ii software, sopc builder design software, altera?s broad library of hard-ip and soft-ip solutions. the arria ii gx device family makes designing for applications requiring transceivers operating at up to 3.75 gbps fast and easy. this chapter contains the following sections: highlights the arria ii gx device features consist of the following highlights:
1?2 chapter 1: arria ii gx device family overview highlights arria ii gx device handbook volume 1 ? february 2009 altera corporation  optimized for high-bandwidth system interfaces  up to 612 user i/o pins arranged in up to 12 modular i/o banks that support a wide range of single-ended and differential i/o standards  high-speed lvds i/o support with serializer/deserializer (serdes) and dynamic phase alignment (dpa) circuitry at data rates from 150 mbps to 1gbps  low power  patented architectural power reduction techniques  per-channel transceiver power consumption is approximately 100 mw under typical conditions at 3.125 gbps  power optimizations integrated into the quartus ii development software  advanced usability and security features  parallel and serial configuration options  on-chip series and differential i/o termination  256-bit advanced encryption standard (aes) programming file encryption for design security with volatile and non-volatile key storage options  robust portfolio of ip for processing, serial protocols, and memory interfaces  low cost, easy-to-use development kits featuring high-speed mezzanine connectors (hsmc) table 1?1 shows arria ii gx device features. tab le 1 ?1 . arria ii gx device features (part 1 of 2) feature ep2agx20 ep2agx30 ep2agx45 ep2agx65 ep2agx95 ep2agx125 ep2agx190 ep2agx260 alms 6,380 10,800 18,050 25,300 37,470 49,640 76,120 102,600 les 15,950 27,000 45,125 63,250 93,675 124,100 190,300 256,500 pci express hard ip blocks 111111 1 1 m9k blocks 87 144 319 495 612 730 840 950 total embedded memory in m9k blocks (kbits) 783 1296 2871 4455 5508 6570 7560 8550 total on-chip memory (m9k + mlabs) (kbits) 982 1,634 3,435 5,246 6,679 8,121 9,939 11,756 embedded multipliers (18 18) 56 128 232 312 448 576 656 736 general purpose plls 444466 6 6 transceiver tx plls (2) 2 2 2 or 4 (1) 2 or 4 (1) 4 or 6 (1) 4 or 6 (1) 6 or 8 (1) 6 or 8 (1)
chapter 1: arria ii gx device family overview 1?3 highlights ? february 2009 altera corporation arria ii gx device handbook volume 1 table 1?2 lists arria ii gx device package options and user i/o pin counts, high-speed lvds channel counts, and transceiver channel counts for micro bga and fineline bga devices. arria ii gx devices are available in up to three speed grades: ?4 (fastest), ?5, and ?6 (slowest). table 1?3 shows arria ii gx devices speed grades. user i/o banks 6666881212 notes to ta bl e 1? 1 : (1) the number of plls de pends on package. transceiver tx pll c ount = (number of transceiver blocks) 2. (2) the fpga fabric can use these plls if they are not being used by the transceiver. tab le 1 ?1 . arria ii gx device features (part 2 of 2) feature ep2agx20 ep2agx30 ep2agx45 ep2agx65 ep2agx95 ep2agx125 ep2agx190 ep2agx260 tab le 1 ?2 . arria ii gx device package options and i/o information (note 1) , (2) device 358-pin flip chip ubga 17 mm 17 mm 572-pin flip chip fbga 25 mm 25 mm 780-pin flip chip fbga 29 mm 29 mm 1152-pin flip chip fbga 35 mm 35 mm i/o lvds (3) xcvrs i/o lvds (3) xcvrs i/o lvds (3) xcvrs i/o lvds (3) xcvrs ep2agx20 156 33rx + 32tx 4 252 57rx + 56tx 4?? ??? ? ep2agx30 156 33rx + 32tx 4 252 57rx + 56tx 4?? ??? ? ep2agx45 156 33rx + 32tx 4 252 57rx + 56tx 8 364 85rx + 84tx 8?? ? ep2agx65 156 33rx + 32tx 4 252 57rx + 56tx 8 364 85rx + 84tx 8?? ? ep2agx95 ? ? ? 260 57rx + 56tx 8 372 85rx + 84tx 12 452 105rx + 104tx 12 ep2agx125 ? ? ? 260 57rx + 56tx 8 372 85rx + 84tx 12 452 105rx + 104tx 12 ep2agx190 ? ? ? ? ? ? 372 85rx + 84tx 12 612 145rx + 144tx 16 ep2agx260 ? ? ? ? ? ? 372 85rx + 84tx 12 612 145rx + 144tx 16 notes to ta bl e 1? 2 : (1) the user i/o counts include clock pins. (2) the arrows indicate packages vertical migration capability. vertical migration allows you to migrate to devices whose dedica ted pins, configuration pins, and power pins are the same for a given package across device densities. (3) rx denotes lvds input with oct rd support or pseudo lvds output. tx denotes lvds i/o without oct rd support or pseudo lvds output. tab le 1 ?3 . arria ii gx fpga devices speed grades (part 1 of 2) device 358-pin flip chip ubga 572-pin flip chip fbga 780-pin flip chip fbga 1152-pin flip chip fbga ep2agx20 c4, c5, c6, i5 c4, c5, c6, i5 ? ? ep2agx30 c4, c5, c6, i5 c4, c5, c6, i5 ? ? ep2agx45 c4, c5, c6, i5 c4, c5, c6, i5 c4, c5, c6, i5 ? ep2agx65 c4, c5, c6, i5 c4, c5, c6, i5 c4, c5, c6, i5 ?
1?4 chapter 1: arria ii gx device family overview arria ii gx device architecture arria ii gx device handbook volume 1 ? february 2009 altera corporation arria ii gx device architecture arria ii gx fpgas include a customer-defined feature set optimized for cost-sensitive applications and offer a wide range of density, memory, embedded multiplier, i/o, and packaging options. arria ii gx fpgas support external memory interfaces and i/o protocols required by wireless, wireline, broadcast, computer, storage, and military markets. they inherit the 8-input advanced logic module, m9k embedded ram block, and high-performance dsp blocks from the stratix ? iv device family with a cost-optimized i/o cell and a transceiver optimized for 3.75 gbps speeds. figure 1?1 shows an overview of the arria ii gx device architecture. ep2agx95 ? c4, c5, c6, i5 c4, c5, c6, i5 c4, c5, c6, i5 ep2agx125 ? c4, c5, c6, i5 c4, c5, c6, i5 c4, c5, c6, i5 ep2agx190 ? ? c4, c5, c6, i5 c4, c5, c6, i5 ep2agx260 ? ? c4, c5, c6, i5 c4, c5, c6, i5 tab le 1 ?3 . arria ii gx fpga devices speed grades (part 2 of 2) device 358-pin flip chip ubga 572-pin flip chip fbga 780-pin flip chip fbga 1152-pin flip chip fbga figure 1?1. arria ii gx device architecture overview fpga fabric (logic elements, dsp, embedded memory, clock networks) all the blocks in this graphic are for the largest density in the arria ii gx family. the number of blocks can vary based on the density of the device. pll pll pll pll dll dll pll pll transceiver blocks plug and play pcie hard ip x1, x4, and x8 high-speed differential i/o, general purpose i/o, and memory interface high-speed differential i/o, general purpose i/o, and memory interface high-speed differential i/o, general purpose i/o, and memory interface high-speed differential i/o with dpa, general purpose i/o, and memory interface high-speed differential i/o with dpa, general purpose i/o, and memory interface high-speed differential i/o, general purpose i/o, and memory interface
chapter 1: arria ii gx device family overview 1?5 arria ii gx device architecture ? february 2009 altera corporation arria ii gx device handbook volume 1 high-speed transceiver features arria ii gx devices integrate up to 16 transceivers on a single device. the transceiver block is optimized for cost and power consumption. arria ii gx transceivers support the following features:
1?6 chapter 1: arria ii gx device family overview arria ii gx device architecture arria ii gx device handbook volume 1 ? february 2009 altera corporation table 1?4 shows some common protocols and the arria ii gx dedicated circuitry and features for implementing these protocols. 1 r r rc r rr vc c r rfr arria ii gx transceiver architecture chapter in volume 2 of the arria ii gx device handbook . the following sections provide an overview of the various features of the arria ii gx fpga. pci express (pipe) hard ip every arria ii gx device includes an integrated hard ip block which implements pci express (pipe) phy-mac, data link, and transaction layers. this pci express hard ip block is highly configurable to meet the requirements of the majority of pci express applications. pci express (pipe) hard ip makes implementing a pci express (pipe) gen 1 solution in your arria ii gx design simple and easy. tab le 1 ?4 . sample of supported protocols and feature descriptions supported protocols feature descriptions pci express (pipe) complete pci express (pipe) gen1 protocol stack solution compliant to pci express base specification 1.1 that includes phy-mac, data link, and transaction layer circuitry embedded in pci express hard ip blocks 1, 4, and 8 lane configurations built-in circuitry for electrical idle generation and detection, receiver detect, power state transitions, lane reversal, and polarity inversion 8b/10b encoder and decoder, receiver synchronization state machine, and 300 parts per million (ppm) clock compensation circuitry options to use: hard ip data link layer and transaction layer hard ip data link layer and custom soft ip transaction layer xaui/higig/higig+ compliant to ieee p802.3ae specification embedded state machine circuitry to convert xgmii idle code groups (||i||) to and from idle ordered sets (||a||, ||k||, ||r||) at the transmitter and receiver, respectively 8b/10b encoder and decoder, receiver synchronization state machine, lane deskew, and 100 ppm clock compensation circuitry gige compliant to ieee 802.3 specification automatic idle ordered set (/i1/, /i2/) generation at the transmitter, depending on the current running disparity 8b/10b encoder and decoder, receiver synchronization state machine, and 100 ppm clock compensation circuitry cpri/obsai reverse bit slipper eliminates latency uncertainty to comply with cpri/obsai specifications optimized for power and cost for remote radio heads and rf modules
chapter 1: arria ii gx device family overview 1?7 arria ii gx device architecture ? february 2009 altera corporation arria ii gx device handbook volume 1 pci express hard ip is instantiated using the pci compiler megawizard tm plug-in manager, similar to soft ip functions, but does not consume core fpga resources or require placement, routing, and timing analysis to insure correct operation of the core. the arria ii gx hard ip for pci express (pipe) includes support for: logic array block and adaptive logic modules embedded memory blocks tab le 1 ?5 . arria ii gx memory modes port mode port width configuration single port 1, 2, 4, 8, 9, 16, 18, 32, and 36 simple dual port 1, 2, 4, 8, 9, 16, 18, 32, and 36 true dual port 1, 2, 4, 8, 9, 16, and 18
1?8 chapter 1: arria ii gx device family overview arria ii gx device architecture arria ii gx device handbook volume 1 ? february 2009 altera corporation dsp resources  fulfills the digital signal processing requirements of 3g and lte wireless infrastructure applications, video processing applications, and voice processing applications  dsp block input registers efficiently implement shift registers for finite impulse response (fir) filter applications  quartus ii software includes megafunctions that are used to control the mode of operation of the dsp blocks based on user-parameter settings  multipliers can also be inferred directly from vhdl or verilog hdl source code i/o features  contains up to 12 modular i/o banks  all i/o banks support a wide range of single-ended and differential i/o standards, as listed in table 1?6  supports programmable bus hold, programmable weak pull-up resistors, and programmable slew rate control  calibrates oct or driver impedance matching for single-ended i/o standards with one oct calibration block on the top-left, top-right, and bottom-left corners of the device  dedicated configuration banks at bank 3c and 8c which support dedicated configuration pins and dual-function pins with a configuration scheme at 1.8, 2.5, 3.0, and 3.3 v  dedicated v ref pin per i/o bank to allow voltage-referenced i/o standards. each i/o bank can operate at independent v ccio and v ref levels high-speed lvds i/o with dpa and soft cdr  dedicated circuitry for implementing lvds interfaces at speeds from 150 mbps to 1gbps  on-chip differential termination for high-speed lvds interfacing  dpa circuitry and soft-cdr circuitry at the receiver automatically compensates for channel-to-channel and channel-to-clock skew in source-synchronous interfaces and allows for implementation of asynchronous serial interfaces with embedded clocks at data rates from 150 mbps to 1 gbps tab le 1 ?6 . arria ii gx fpga i/o standards support type i/o standard single-ended i/o lvttl, lvcmos, sstl, hstl, pci, and pci-x differential i/o sstl, hstl, lvpecl, lvds, mini-lvds, and rsds
chapter 1: arria ii gx device family overview 1?9 arria ii gx device architecture ? february 2009 altera corporation arria ii gx device handbook volume 1 clock management  provides dedicated global clock networ ks (gclks), regional clock networks (rclks), and periphery clock networks (pclks) that are organized into a hierarchical structure that provides up to 148 unique clock domains  up to six plls with seven outputs per pll to provide robust clock management and synthesis  independently programmable pll outputs, creating a unique and customizable clock frequency with no fixed relation to any other clock  inherent jitter filtration and fine granularity control over multiply and divide ratios  supports spread-spectrum input clocking and counter cascading with pll input clock frequencies ranging from 5 to 500 mhz to support both low-cost and high-end clock performance  unused transceiver plls can be used by the fpga fabric to provide more flexibility auto-calibrating external memory interfaces  i/o structure enhanced to provide flexible and cost-effective support for different types of memory interfaces  contains features such as on-chip termination and dqs/dq pin groupings to enable rapid and robust implementation of different memory standards  an auto-calibrating megafunction is available in the quartus ii software for ddr sdram, ddr2 sdram, and ddr3 sdram memory interface phys; the megafunction takes advantage of the pll dynamic reconfiguration feature to calibrate based on the changes of process, voltage, and temperature table 1?7 lists preliminary external memory support. memory maximum performance is pending device characterization. 1 arria ii gx devices feature i/o capable of electrical support for qdrii sram, but altera does not currently supply a controller or phy megafunction for qdrii sram interfaces. f for more information regarding the external memory interfaces support, refer to the external memory interfaces in arria ii gx devices chapter in volume 1 in the arria ii gx device handbook . tab le 1 ?7 . arria ii gx device external memory interface maximum performance memory type maximum performance ddr sdram 200 mhz ddr2 sdram 300 mhz ddr3 sdram 300 mhz qdrii sram 250 mhz
1?10 chapter 1: arria ii gx device family overview arria ii gx device architecture arria ii gx device handbook volume 1 ? february 2009 altera corporation nios ii  arria ii gx devices support all variants of the nios ii processor  nios ii processors are supported by an array of software tools from altera and leading embedded partners and are used by more designers than any other configurable processor configuration features  configuration  meets the 200 ms wake-up time requirement for pci express (pipe)  design security  supports programming file encryption using 256-bit volatile and non-volatile security keys to protect designs from copying, reverse engineering, and tampering in fast passive parallel (fpp) configuration mode with an external host (such as a max ? ii device or microprocessor), or when using fast active serial (as) or passive serial (ps) configuration scheme  decrypts an encrypted configuration bitstream using the aes algorithm, an industry standard encryption algorithm that is fips-197 certified and requires a 256-bit security key  remote system upgrade  allows error-free deployment of system upgrades from a remote location securely and reliably without an external controller  soft logic (either the nios ii embedded processor or user logic) implementation in the device helps download a new configuration image from a remote location, store it in configuration memory, and direct the dedicated remote system upgrade circuitry to start a reconfiguration cycle  dedicated circuitry in the remote system upgrade helps to avoid system down time by performing error detection during and after the configuration process, and recover from an error condition by reverting back to a safe configuration image, and provides error status information seu mitigation  offers built-in error detection circuitry to detect data corruption due to soft errors in the configuration random access memory (cram) cells  allows all cram contents to be read and verified to match a configuration-computed cyclical redundancy check (crc) value  the bit location and the type of soft error can be identified and read-out through the joint test action group (jtag) or the core interface
chapter 1: arria ii gx device family overview 1?11 reference and ordering information ? february 2009 altera corporation arria ii gx device handbook volume 1 jtag boundary scan testing  supports jtag ieee std. 1149.1 and ieee std. 1149.6 specifications  ieee std. 1149.6 supports high-speed serial interface (hssi) transceivers and performs boundary scan on alternating current (ac)-coupled transceiver channels  boundary-scan test (bst) architecture offers the capability to test pin connections without using physical test probes and capture functional data while a device is operating normally reference and ordering information figure 1?2 describes the ordering codes for arria ii gx devices. document revision history table 1?8 shows the revision history for this document. figure 1?2. arria ii gx device packaging ordering information device density package type 4, 5, or 6, with 4 b eing the fastest corresponds to pin count 17 = 358 pins 25 = 572 pins 29 = 780 pins 35 = 1152 pins f: fineline bga (fbga) u: micro bga (ufbga) 20, 30, 45, 65, 95 125, 190, 260 optional suffix fam i l y s i g n a t u r e operating temperature sp e e d gr ad e ball array dimension 4 ep2agx 30 c 17 f n indicates specific device shipment method n: lead-free devices es: engineering sample ep2agx c transceiver count c: 4 d: 8 e: 12 f:16 c: commercial temperature (t j = 0c to 85c) i: industrial temperature (t j = -40c to 100c) tab le 1 ?8 . document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
1?12 chapter 1: arria ii gx device family overview document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 2. logic array blocks and adaptive logic modules in arria ii gx devices introduction this chapter describes the features of the logic array block (lab) in the arria ? ii gx core fabric. the logic array block is composed of basic building blocks known as adaptive logic modules (alms) that you can configure to implement logic functions, arithmetic functions, and register functions. this chapter contains the following sections: logic array blocks figure 2?1 shows the arria ii gx lab structure and the lab interconnects. figure 2?1. arria ii gx lab structure direct link interconnect from adjacent block direct link interconnect to adjacent block row interconnects of variable speed & length column interconnects of variable speed & length local interconnect is driven from either side by column interconnect & labs, & from above by row interconnect local interconnect lab direct link interconnect from adjacent block direct link interconnect to adjacent block alms mlab c4 c12 r20 r4 aiigx51002-1.0
2?2 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices logic array blocks arria ii gx device handbook volume 1 ? february 2009 altera corporation half of the available labs in arria ii gx devices can be used as a memory lab (mlab). the mlab supports a maximum of 640 bits of simple dual-port static random access memory (sram). you can configure each alm in an mlab as either a 64 1 or 32 2 block, resulting in a configuration of 64 10 or 32 20 simple dual-port sram blocks. mlab and lab blocks always coexist as pairs in all arria ii gx device families. mlab is a superset of the lab and includes all lab features. figure 2?2 shows an overview of lab and mlab topology. f cr memory blocks in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . lab interconnects the lab local interconnect is used to drive alms in the same lab. each lab can drive 30 alms through fast local and direct link interconnects. ten alms are in any given lab and ten alms are in each of the adjacent labs. figure 2?2. arria ii gx lab and mlab structure note to figure 2?2 : (1) you can use an mlab alm as a regular lab alm or configure it as a dual-port sram, as shown. mlab lab lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram lut-based-64 x 1 simple dual port sram (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) alm alm alm alm alm alm alm alm alm alm lab control block lab control block
chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices 2?3 logic array blocks ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 2?3 shows the direct link connection, which connects adjacent labs, memory blocks, dsp blocks, or i/o element (ioe) outputs. figure 2?3. direct link connection alms direct link interconnect to right direct link interconnect from right lab, memory block, dsp block, or ioe output direct link interconnect from left lab, memory block, dsp block, or ioe output local interconnect lab alms direct link interconnect to left mlab
2?4 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices adaptive logic modules arria ii gx device handbook volume 1 ? february 2009 altera corporation lab control signals each lab contains dedicated logic for driving control signals to its alms, and has two unique clock sources and three clock enable signals, as shown in figure 2?4 . the lab control block can generate up to three clocks using the two clock sources and three clock enable signals. each lab?s clock and clock enable signals are linked. de-asserting the clock enable signal turns off the corresponding lab-wide clock. adaptive logic modules the alm is the basic building block of logic in the arria ii gx architecture, providing advanced features with efficient logic utilization. one alm can implement any function of up to six inputs and certain seven-input functions. each alm drives all types of interconnects: local, row, column, carry chain, shared arithmetic chain, register chain, and direct link interconnects. figure 2?5 shows a high-level block diagram of the arria ii gx alm. figure 2?4. lab-wide control signals dedicated row lab clocks local interconnect local interconnect local interconnect local interconnect local interconnect local interconnect labclk2 syncload labclkena0 or asyncload or labpreset labclk0 labclk1 labclr1 labclkena1 labclkena2 labclr0 synclr 6 6 6 there are two unique clock signals per lab.
chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices 2?5 adaptive logic modules ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 2?5. high-level block diagram of the arria ii gx alm dq to general or local routing reg0 to general or local routing datae0 dataf0 reg_chain_in reg_chain_out adder0 dataa datab datac datad datae1 dataf1 dq to general or local routing reg1 to general or local routing adder1 carry_in carry_out combinational/memory alut0 6-input lut 6-input lut shared_arith_out shared_arith_in combinational/memory alut1 labclk
2?6 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices adaptive logic modules arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 2?6 shows a detailed view of all the connections in an alm. the clock and clear control signals of an alm?s register can be driven by global signals, general-purpose i/o pins, or any internal logic. general-purpose i/o pins or internal logic can drive the clock enable. for combinational functions, the register is bypassed and the output of the look-up table (lut) drives directly to the outputs of an alm. figure 2?6. arria ii gx alm details d q + reg_chain_in aclr[1:0] sclr syncload clk[2:0] carry_in dataf0 datae0 dataa datab datad datae1 dataf1 shared_arith_out carry_out clr d q clr shared_arith_in local interconnect row, column direct link routing row, column direct link routing local interconnect 4-input lut 4-input lut 3-input lut 3-input lut 3-input lut 3-input lut + datac v cc gnd row, column direct link routing row, column direct link routing
chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices 2?7 adaptive logic modules ? february 2009 altera corporation arria ii gx device handbook volume 1 each alm has two sets of outputs that drive the local, row, and column routing resources. the lut, adder, or register output can drive these outputs (refer to figure 2?6 ). for each set of output drivers, two alm outputs can drive column, row, or direct link routing connections, and one of these alm outputs can also drive local interconnect resources. this allows the lut or adder to drive one output while the register drives another output. this feature, called register packing, improves device utilization by allowing the device to use the register and combinational logic for unrelated functions. another mechanism to improve fitting is to allow the register output to feed back into the lut of the same alm so that the register is packed with its own fan-out lut. the alm can also drive out registered and unregistered versions of the lut or adder output. the quartus ? ii software automatically configures the alms for optimized performance. alm operating modes the arria ii gx alm can operate in any of the following modes: normal mode normal mode is suitable for general logic applications and combinational functions. in this mode, up to eight data inputs from the lab local interconnect are inputs to the combinational logic. normal mode allows two functions to be implemented in one arria ii gx alm, or an alm to implement a single function of up to six inputs. the alm can support certain combinations of completely independent functions and various combinations of functions that have common inputs. the quartus ii compiler automatically searches for functions of common inputs or completely independent functions to be placed into one alm and to make efficient use of the device resources. extended lut mode use extended lut mode to implement a specific set of seven-input functions. the set must be a 2-to-1 multiplexer fed by two arbitrary five-input functions sharing four inputs. figure 2?7 shows the template of supported seven-input functions utilizing extended lut mode. in this mode, if the seven-input function is unregistered, the unused eighth input is available for register packing. functions that fit into the template shown in figure 2?7 often appear in designs as ?if-else? statements in verilog hdl or vhdl code.
2?8 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices adaptive logic modules arria ii gx device handbook volume 1 ? february 2009 altera corporation arithmetic mode arithmetic mode is ideal for implementing adders, counters, accumulators, wide parity functions, and comparators. the alm in arithmetic mode uses two sets of 2 four-input luts along with two dedicated full adders. the dedicated adders allow the luts to be available to perform pre-adder logic; therefore, each adder can add the output of 2 four-input functions. figure 2?8 shows an alm in arithmetic mode. figure 2?7. template for supported seven-input functions in extended lut mode note to figure 2?7 : (1) if the seven-input function is unregistered, the unused eighth input is available for register packing. the second register, reg1 , is not available. datae0 combout0 5-input lut 5-input lut datac dataa datab datad dataf0 datae1 dataf1 dq to general or local routing to general or local routing reg0 this input is available for register packing. (1) figure 2?8. alm in arithmetic mode datae0 carry_in carry_out dataa datab datac datad datae1 dq dq to general or local routing to general or local routing reg0 reg1 to general or local routing to general or local routing 4-input lut 4-input lut 4-input lut 4-input lut adder1 adder0 dataf0 dataf1
chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices 2?9 adaptive logic modules ? february 2009 altera corporation arria ii gx device handbook volume 1 in arithmetic mode, the alm support simultaneous use of the adder ?s carry output along with combinational logic outputs. in this operation, the adder output is ignored. this usage of the adder with the combinational logic output provides resource savings of up to 50%. arithmetic mode also offers clock enable, counter enable, synchronous up and down control, add and subtract control, synchronous clear, and synchronous load. the lab local interconnect data inputs generate the clock enable, counter enable, synchronous up and down, and add and subtract control signals. these control signals are good candidates for the inputs that are shared between the four luts in the alm. the synchronous clear and synchronous load options are lab-wide signals that affect all registers in the lab. these signals can also be individually disabled or enabled per register. the quartus ii software automatically places any registers that are not used by the counter into other labs. carry chain the carry chain provides a fast carry function between the dedicated adders in arithmetic or shared arithmetic mode. the two-bit carry select feature in arria ii gx devices halves the propagation delay of carry chains within the alm. carry chains can begin in either the first alm or the fifth alm in a lab. the final carry-out signal is routed to an alm, where it is fed to local, row, or column interconnects. the quartus ii compiler automatically creates carry chain logic during design processing, or you can create it manually during design entry. parameterized functions such as library of parameterized modules (lpm) automatically take advantage of carry chains for the appropriate functions. the quartus ii compiler creates carry chains longer than 20 alms (10 alms in arithmetic or shared arithmetic mode) by linking labs together automatically. for enhanced fitting, a long carry chain runs vertically, allowing fast horizontal connections to trimatrix memory and dsp blocks. a carry chain can continue as far as a full column. to avoid routing congestion in one small area of the device when a high fan-in arithmetic function is implemented, the lab can support carry chains that only use either the top half or bottom half of the lab before connecting to the next lab. this leaves the other half of the alms in the lab available for implementing narrower fan-in functions in normal mode. carry chains that use the top five alms in the first lab carry into the top half of the alms in the next lab in the column. carry chains that use the bottom five alms in the first lab carry into the bottom half of the alms in the next lab within the column. in every alternate lab column, the top half can be bypassed; in the other mlab columns, the bottom half can be bypassed. 1 r r fr crr c rcc rfr rcc 1
2?10 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices adaptive logic modules arria ii gx device handbook volume 1 ? february 2009 altera corporation shared arithmetic mode in shared arithmetic mode, the alm can implement a three-input add in an alm. in this mode, the alm is configured with 4 four-input luts. each lut either computes the sum of three inputs or the carry of three inputs. the output of the carry computation is fed to the next adder using a dedicated connection called the shared arithmetic chain. this shared arithmetic chain can significantly improve the performance of an adder tree by reducing the number of summation stages required to implement an adder tree. figure 2?9 shows the alm using this feature. shared arithmetic chain the shared arithmetic chain available in enhanced arithmetic mode allows the alm to implement a three-input add. this significantly reduces the resources necessary to implement large adder trees or correlator functions. the shared arithmetic chains can begin in either the first or sixth alm in an lab. the quartus ii compiler creates shared arithmetic chains longer than 20 alms (10 alms in arithmetic or shared arithmetic mode) by linking labs together automatically. for enhanced fitting, a long shared arithmetic chain runs vertically, allowing fast horizontal connections to memory and dsp blocks. a shared arithmetic chain can continue as far as a full column. similar to the carry chains, the top and bottom half of shared arithmetic chains in alternate lab columns can be bypassed. this capability allows the shared arithmetic chain to cascade through half of the alms in an lab while leaving the other half available for narrower fan-in functionality. every other lab column is top-half bypassable, while the other lab columns are bottom-half bypassable. figure 2?9. alm in shared arithmetic mode datae0 carry_in shared_arith_in shared_arith_out carry_out dataa datab datac datad datae1 dq dq to general or local routing to general or local routing reg0 reg1 to general or local routing to general or local routing 4-input lut 4-input lut 4-input lut 4-input lut labclk
chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices 2?11 adaptive logic modules ? february 2009 altera corporation arria ii gx device handbook volume 1 1 for more information on shared arithmetic chain interconnect, refer to ?alm interconnects? on page 2?13 . lut-register mode lut-register mode allows third register capability in an alm. two internal feedback loops allow combinational alut1 to implement the master latch and combinational alut0 to implement the slave latch needed for the third register. the lut register shares its clock, clock enable, and asynchronous clear sources with the top dedicated register. figure 2?10 shows the register constructed using two combinational blocks in the alm. figure 2?11 shows the alm in lut-register mode. figure 2?10. lut register from two combinational blocks 4-input lut 5-input lut clk aclr datain(datac) sclr sumout master latch slave latch combout lut regout sumout combout figure 2?11. alm in lut-register mode with 3-register capability datain aclr sclr regout latchout datain sdata regout aclr datain sdata regout aclr dc1 e0 f1 e1 f0 clk [2:0] aclr [1:0] reg_chain_in lelocal 0 leout 0 a leout 0 b reg_chain_out lelocal 1 leout 1 a leout 1 b third register
2?12 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices adaptive logic modules arria ii gx device handbook volume 1 ? february 2009 altera corporation register chain in addition to general routing outputs, the alms in any given lab have register chain outputs. this allows registers in the same lab to be cascaded together. the register chain interconnect allows a lab to use luts for a single combinational function and the registers to be used for an unrelated shift register implementation. these resources speed up connections between alms while saving local interconnect resources (refer to figure 2?12 ). the quartus ii compiler automatically takes advantage of these resources to improve utilization and performance. 1 r r fr rr c rcc rfr rcc 1 figure 2?12. register chain in an lab (note 1) note to figure 2?12 : (1) you can use the combinational or adder logic to implement an unrelated, un-registered function. dq to general or local routing reg0 to general or local routing reg_chain_in adder0 dq to general or local routing reg1 to general or local routing adder1 dq to general or local routing reg0 to general or local routing reg_chain_out adder0 dq to general or local routing reg1 to general or local routing adder1 from previous alm in the lab to next alm in the lab combinational logic combinational logic labclk
chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices 2?13 document revision history ? february 2009 altera corporation arria ii gx device handbook volume 1 alm interconnects there are three dedicated paths between alms: register cascade, carry-chain, and shared arithmetic chain. arria ii gx devices include an enhanced interconnect structure in labs for routing shared arithmetic chains and carry chains for efficient arithmetic functions. the register chain connection allows the register output of one alm to connect directly to the register input of the next alm in the lab for fast shift registers. these alm-to-alm connections bypass the local interconnect. figure 2?13 shows the shared arithmetic chain, carry chain, and register chain interconnects. clear and preset logic control the alm directly supports an asynchronous clear function. you can achieve the register preset through the quartus ii software?s not-gate push-back logic option. each lab supports up to two clears. arria ii gx devices provide a device-wide reset pin ( dev_clrn ) that resets all registers in the device. an option set before compilation in the quartus ii software enables this pin. this device-wide reset overrides all other control signals. document revision history table 2?1 shows the revision history for this document. figure 2?13. shared arithmetic chain, carry chain, and register chain interconnects alm 1 alm 2 alm 3 carry chain & shared arithmetic chain routing to adjacent alm local interconnect register chain routing to adjacent alm's register input local interconnect routing among alms in the lab alm 10 ... ... tab le 2 ?1 . document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
2?14 chapter 2: logic array blocks and adaptive logic modules in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 3. memory blocks in arria ii gx devices introduction arria ? ii gx memory blocks include 640-bit memory logic array blocks (mlabs) and 9-kbit m9k blocks. you can configure each embedded memory block independently to be a single- or dual-port ram, fifo, rom, or shift register using the quartus ? ii megawizard tm plug-in manager. you can stitch together multiple blocks of the same type to produce larger memories with minimal timing penalty. this chapter describes memory blocks, modes, features, and design considerations. this chapter contains the following sections: memory features table 3?1 summarizes the features supported by the memory blocks. tab le 3 ?1 . summary of memory features (part 1 of 2) feature mlabs m9k blocks maximum performance 360 mhz (1) 390 mhz (1) total ram bits (including parity bits) 640 9,216 configurations (depth width) 64 8 64 9 64 10 32 16 32 18 32 20 8k 1 4k 2 2k 4 1k 8 1k 9 512 16 512 18 256 32 256 36 parity bits vv byte enable vv packed mode ? v address clock enable vv single-port memory vv simple dual-port memory vv true dual-port memory ? v aiigx51003-1.0
3?2 chapter 3: memory blocks in arria ii gx devices memory features arria ii gx device handbook volume 1 ? february 2009 altera corporation table 3?2 shows the capacity and distribution of the memory blocks in each arria ii gx family member. memory block types m9k memory blocks are dedicated resource; mlabs are dual-purpose blocks. they can be configured as regular labs or as mlabs. ten alms make up one mlab. you can configure each alm in an mlab as either a 64 1 or a 32 2 block, resulting in a 64 10 or 32 20 simple dual-port sram block in a single mlab. embedded shift register vv rom vv fifo buffer vv simple dual-port mixed width support ? v true dual-port mixed width support ? v memory initialization file ( .mif ) vv mixed-clock mode vv power-up condition outputs cleared if registered, otherwise reads memory contents. outputs cleared register clears output registers output registers write/read operation triggering write: falling clock edges read: rising clock edges write and read: rising clock edges same-port read-during-write outputs set to old data or don?t care outputs set to old data, new data, or don?t care mixed-port read-during-write outputs set to old data or don?t care outputs set to old data or don?t care ecc support soft ip support using quartus ii software soft ip support using quartus ii software note to tab l e 3 ?1 : (1) these numbers are preliminary until characterization is final. tab le 3 ?2 . memory capacity and distribution in arria ii gx devices device mlabs m9k blocks total ram bits (including mlabs) (kbits) ep2agx20 319 87 982 ep2agx30 540 144 1,634 ep2agx45 903 319 3,435 ep2agx65 1,265 495 5,246 ep2agx95 1,874 612 6,679 ep2agx125 2,482 730 8,121 ep2agx190 3,806 840 9,939 ep2agx260 5,130 950 11,756 tab le 3 ?1 . summary of memory features (part 2 of 2) feature mlabs m9k blocks
chapter 3: memory blocks in arria ii gx devices 3?3 memory features ? february 2009 altera corporation arria ii gx device handbook volume 1 parity bit support all memory blocks have built-in parity bit support. the ninth bit associated with each byte can store a parity bit or serve as an additional data bit. no parity function is actually performed on the ninth bit. byte enable support all memory blocks support byte enables that mask the input data so that only specific bytes of data are written. the unwritten bytes retain the previous written value. the write enable ( wren ) signals, along with the byte enable ( byteena ) signals, control the ram blocks? write operations. the default value for the byte enable signals is high (enabled), in which case writing is controlled only by the write enable signals. the byte enable registers have no clear port. when using parity bits on the m9k blocks, the byte enable controls all nine bits (eight bits of data plus one parity bit). when using parity bits on the mlab, the byte-enable controls all 10 bits in the widest mode. byte enables operate in a one-hot fashion, with the lsb of the byteena signal corresponding to the lsb of the data bus. for example, if using a ram block in 18 mode, byteena = 01 , data[8..0] is enabled and data[17..9] is disabled. similarly, if byteena = 11 , both data[8..0] and data[17..9] are enabled. byte enables are active high. figure 3?1 shows how the write enable ( wren ) and byte enable ( byteena ) signals control the operations of the ram. when a byte-enable bit is de-asserted during a write cycle, the corresponding data byte output can appear as either a ?don?t care? value or the current data at that location. the output value for the masked byte is controllable using the quartus ii software. when a byte-enable bit is asserted during a write cycle, the corresponding data byte output also depends on the setting chosen in the quartus ii software.
3?4 chapter 3: memory blocks in arria ii gx devices memory features arria ii gx device handbook volume 1 ? february 2009 altera corporation packed mode support arria ii gx m9k blocks support packed mode. the packed mode feature packs two independent single-port rams into one memory block. the quartus ii software automatically implements packed mode where appropriate by placing the physical ram block into true dual-port mode and using the msb of the address to distinguish between the two logical rams. the size of each independent single-port ram must not exceed half of the target block size. address clock enable support all arria ii gx memory blocks support address clock enable, which holds the previous address value for as long as the signal is enabled ( addressstall = 1 ). when you configure the memory blocks in dual-port mode, each port has its own independent address clock enable. the default value for the address clock enable signals is low (disabled). figure 3?1. arria ii gx byte enable functional waveform inclock wren address data don't care: q (asynch) byteena xxxx abcd xxxx xx 10 01 11 xx an a0 a1 a2 a0 a1 a2 abcd ffff ffff abff ffff ffcd contents at a0 contents at a1 contents at a2 doutn abxx xxcd abcd abff ffcd abcd doutn abff ffcd abcd abff ffcd abcd current data: q (asynch)
chapter 3: memory blocks in arria ii gx devices 3?5 memory features ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 3?2 shows an address clock enable block diagram. the address clock enable is referred to by the port name addressstall. figure 3?3 shows the address clock enable waveform during the read cycle. figure 3?2. arria ii gx address clock enable block diagram address[0] address[n] addressstall clock 1 0 address[0] register address[n] register address[n] address[0] 1 0 figure 3?3. arria ii gx address clock enable during read cycle waveform inclock rden rdaddress q (synch) a0 a1 a2 a3 a4 a5 a6 q (asynch) an a0 a4 a5 latched address (inside memory) dout0 dout1 dout4 dout4 dout5 addressstall a1 doutn-1 doutn doutn dout0 dout1
3?6 chapter 3: memory blocks in arria ii gx devices memory features arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 3?4 shows the address clock enable waveform during write cycle. mixed width support m9k memory blocks support mixed data widths inherently. mlabs can support mixed data widths through emulation using the quartus ii software. when using simple dual-port, true dual-port, or fifo modes, mixed width support allows you to read and write different data widths to a memory block. for more information about the different widths supported per memory mode, refer to ?memory modes? on page 3?7 . asynchronous clear arria ii gx memory blocks support asynchronous clears on the output latches and output registers. therefore, if your ram is not using output registers, you can still clear the ram outputs using the output latch asynchronous clear. figure 3?5 shows a functional waveform showing this functionality. figure 3?4. arria ii gx address clock enable during write cycle waveform inclock wren wraddress a0 a1 a2 a3 a4 a5 a6 an a0 a4 a5 latched address (inside memory) addressstall a1 data 00 01 02 03 04 05 06 contents at a0 contents at a1 contents at a2 contents at a3 contents at a4 contents at a5 xx 04 xx 00 03 01 xx 02 xx xx xx 05 figure 3?5. output latch asynchronous clear waveform aclr aclr at latch q outclk
chapter 3: memory blocks in arria ii gx devices 3?7 memory modes ? february 2009 altera corporation arria ii gx device handbook volume 1 you can selectively enable asynchronous clears per logical memory using the quartus ii ram megawizard plug-in manager. f r r fr r r rfr ram megafunction user guide . memory modes arria ii gx memory blocks allow you to implement fully synchronous sram memory in multiple modes of operation. m9k blocks do not support asynchronous memory (unregistered inputs). mlabs support asynchronous (flow-through) read operations. depending on which memory block you target, you can use the following modes: 1 c r rrwr vr rrwr vr r new data , old data , or don't care in the ram megawizard plug-in manager in the quartus ii software. for more information about this behavior, refer to ?read-during-write? on page 3?15 . 1 r c r r r r r c crr r c f v r f r c rr r wr r single-port ram all memory blocks support single-port mode. single-port mode allows you to do either one-read or one-write operation at a time. simultaneous reads and writes are not supported in single-port mode. figure 3?6 shows the single-port ram configuration.
3?8 chapter 3: memory blocks in arria ii gx devices memory modes arria ii gx device handbook volume 1 ? february 2009 altera corporation during a write operation, behavior of the ram outputs is configurable. if you use the read-enable signal and perform a write operation with the read enable de-activated, the ram outputs retain the values they held during the most recent active read enable. if you activate read enable during a write operation, or if you are not using the read-enable signal at all, the ram outputs either show the new data being written, the old data at that address, or a don?t care value. table 3?3 shows the possible port width configurations for memory blocks in single-port mode. figure 3?6. single-port memory (note 1) note to figure 3?6 : (1) you can implement two single-port memory blocks in a single m9k block. for more information, refer to ?packed mode support? on page 3?4 . tab le 3 ?3 . arria ii gx port width configurations for mlabs and m9k blocks mlabs m9k blocks port width configurations 64 8 64 9 64 10 32 16 32 18 32 20 8k 1 4k 2 2k 4 1k 8 1k 9 51216 51218 25632 25636 data[ ] address[ ] wren byteena[] addressstall inclock clockena rden aclr outclock q[]
chapter 3: memory blocks in arria ii gx devices 3?9 memory modes ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 3?7 shows timing waveforms for read and write operations in single-port mode with unregistered outputs. registering the ram?s outputs would simply delay the q output by one clock cycle. simple dual-port mode all memory blocks support simple dual-port mode. simple dual-port mode allows you to perform one-read and one-write operation to different locations at the same time. figure 3?8 shows a simple dual-port configuration. simple dual-port mode supports different read and write data widths (mixed width support). table 3?4 shows the mixed width configurations for the m9k blocks in simple dual-port mode. mlabs do not have native support for mixed width operation. the quartus ii software can implement mixed width memories in mlabs with more than one mlab. figure 3?7. timing waveform for read-write operations (single-port mode) clk_a wrena address_a data_a rdena q_a (asynch) a0 a1 ab c d ef a0(old data) a1(old data) ab d e figure 3?8. arria ii gx simple dual-port memory (note 1) note to figure 3?8 : (1) simple dual-port ram supports input and output clock mode in addition to the read and write clock mode shown. data[ ] wraddress[ ] wren byteena[] wr_addressstall wrclock wrclocken aclr rdaddress[ ] rden q[ ] rd_addressstall rdclock rdclocken tab le 3 ?4 . arria ii gx m9k block mixed-width configurations (part 1 of 2) read port write port 8k1 4k2 2k4 1k8 51216 25632 1k9 51218 25636 8k1 vvvv v v ?? ? 4k2 vvvv v v ?? ?
3?10 chapter 3: memory blocks in arria ii gx devices memory modes arria ii gx device handbook volume 1 ? february 2009 altera corporation in simple dual-port mode, m9k blocks support separate write-enable and read-enable signals. read-during-write operations to the same address can either output a don?t care value or old data. mlabs only support a write-enable signal. read-during-write behavior for the mlabs can be either don?t care, new data, or old data. the available choices depend on the configuration of the mlab. figure 3?9 shows timing waveforms for read and write operations in simple dual-port mode with unregistered outputs. registering the ram?s outputs would simply delay the q output by one clock cycle. true dual-port mode arria ii gx m9k blocks support true dual-port mode. sometimes called bi-directional dual-port, this mode allows you to perform any combination of two port operations: two reads, two writes, or one read and one write at two different clock frequencies. figure 3?10 shows the true dual-port ram configuration. 2k4 vvvv v v ?? ? 1k8 vvvv v v ?? ? 51216 vvvv v v ?? ? 25632 vvvv v v ?? ? 1k9 ? ? ? ? ? ? vv v 51218 ? ? ? ? ? ? vv v 25636 ? ? ? ? ? ? vv v tab le 3 ?4 . arria ii gx m9k block mixed-width configurations (part 2 of 2) read port write port 8k1 4k2 2k4 1k8 51216 25632 1k9 51218 25636 figure 3?9. arria ii gx simple dual-port timing waveforms wrclock wren wraddress rdclock an-1 an a0 a1 a2 a3 a4 a5 a6 q (asynch) rden rdaddress bn b0 b1 b2 b3 doutn-1 doutn dout0 din-1 din din4 din5 din6 data
chapter 3: memory blocks in arria ii gx devices 3?11 memory modes ? february 2009 altera corporation arria ii gx device handbook volume 1 the widest bit configuration of the m9k blocks in true dual-port mode is 512 16-bit (18-bit with parity). wider configurations are unavailable because the number of output drivers is equivalent to the maximum bit width of the respective memory block. because true dual-port ram has outputs on two ports, its maximum width equals half of the total number of output drivers. table 3?5 lists the possible m9k block mixed-port width configurations in true dual-port mode. in true dual-port mode, m9k blocks support separate write-enable and read-enable signals. read-during-write operations to the same address can either output new data at that location or old data. in true dual-port mode, you can access any memory location at any time from either port. when accessing the same memory location from both ports, you must avoid possible write conflicts. a write conflict happens when you attempt to write to the same address location from both ports at the same time. this results in unknown data being stored to that address location. no conflict resolution circuitry is built into the arria ii gx memory blocks. you must handle address conflicts external to the ram block. figure 3?11 shows true dual-port timing waveforms for the write operation at port a and read operation at port b with the read-during-write behavior set to new data . registering the ram?s outputs would simply delay the q outputs by one clock cycle. figure 3?10. arria ii gx true dual-port memory (note 1) note to figure 3?10 : (1) true dual-port memory supports input and output clock mode in addition to the independent clock mode shown. tab le 3 ?5 . arria ii gx m9k block mixed-width configuration read port write port 8k1 4k2 2k4 1k8 51216 1k9 51218 8k1 vvvvv ?? 4k2 vvvvv ?? 2k4 vvvvv ?? 1k8 vvvvv ?? 51216 vvvvv ?? 1k9 ????? vv 51218 ????? vv data_a[ ] address_a[ ] wren_a byteena_a[] addressstall_a clock_a rden_a aclr_a q_a[] data_b[ ] address_b[] wren_b byteena_b[] addressstall_b clock_b rden_b aclr_b q_b[]
3?12 chapter 3: memory blocks in arria ii gx devices memory modes arria ii gx device handbook volume 1 ? february 2009 altera corporation shift-register mode all arria ii gx memory blocks support shift register mode. embedded memory block configurations can implement shift registers for digital signal processing (dsp) applications, such as finite impulse response (fir) filters, pseudo-random number generators, multi-channel filtering, and auto- and cross-correlation functions. these and other dsp applications require local data storage, traditionally implemented with standard flipflops that quickly exhaust many logic cells for large shift registers. a more efficient alternative is to use embedded memory as a shift-register block, which saves logic cell and routing resources. the size of a shift register ( w m n ) is determined by the input data width ( w ), the length of the taps ( m ), and the number of taps ( n ). you can cascade memory blocks to implement larger shift registers. figure 3?11. arria ii gx true dual-port timing waveform clk_a wren_a address_a clk_b an-1 an a0 a1 a2 a3 a4 a5 a6 q_b (asynch) wren_b address_b bn b0 b1 b2 b3 doutn-1 doutn dout0 q_a (asynch) din-1 din din4 din5 din6 data_a din-1 din dout0 dout1 dout2 dout3 din4 din5 dout2 dout1
chapter 3: memory blocks in arria ii gx devices 3?13 memory modes ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 3?12 shows the memory block in shift-register mode. rom mode all arria ii gx memory blocks support rom mode. a memory initialization file ( .mif ) initializes the rom contents of these blocks. the address lines of the rom are registered on m9k blocks, but can be unregistered on mlabs. the outputs can be registered or unregistered. output registers can be asynchronously cleared. the rom read operation is identical to the read operation in the single-port ram configuration. fifo mode all memory blocks support fifo mode. mlabs are ideal for designs with many small, shallow fifo buffers. to implement fifo buffers in your design, you can use the fifo megawizard plug-in manager in the quartus ii software. both single- and dual-clock (asynchronous) fifos are supported. f r r fr ffr rfr single- and dual-clock fifo megafunctions user guide . figure 3?12. arria ii gx shift-register memory configuration w w m n shift register m-bit shift register m-bit shift register m-bit shift register m-bit shift register w w w w w w w n number of tap s
3?14 chapter 3: memory blocks in arria ii gx devices clocking modes arria ii gx device handbook volume 1 ? february 2009 altera corporation clocking modes arria ii gx memory blocks support the following clocking modes: 1 r r c r rr c crr r c r wr r w cc vr r r r independent clock mode arria ii gx memory blocks can implement independent clock mode for true dual-port memories. in this mode, a separate clock is available for each port (a and b). clock a controls all registers on the port a side, while clock b controls all registers on the port b side. each port also supports independent clock enables for port a and port b registers. asynchronous clears are supported only for output latches and output registers on both ports. input and output clock mode arria ii gx memory blocks can implement input and output clock mode for true and simple dual-port memories. in this mode, an input clock controls all registers related to the data input to the memory block including data, address, byte enables, read enables, and write enables. an output clock controls the data output registers. asynchronous clears are available on output latches and output registers only. read and write clock mode arria ii gx memory blocks can implement read and write clock mode for simple dual-port memories. in this mode, a write clock controls the data-input, write-address, and write-enable registers. similarly, a read clock controls the data-output, read-address, and read-enable registers. the memory blocks support independent clock enables for both the read and write clocks. asynchronous clears are available on data output latches and registers only. tab le 3 ?6 . arria ii gx memory clock modes clocking mode true dual-port mode simple dual-port mode single-port mode rom mode fifo mode independent v ?? v ? input and output vvvv ? read and write ? v ?? v single clock vvvvv
chapter 3: memory blocks in arria ii gx devices 3?15 design considerations ? february 2009 altera corporation arria ii gx device handbook volume 1 single clock mode arria ii gx memory blocks can implement single-clock mode for true dual-port, simple dual-port, and single-port memories. in this mode, a single clock, together with a clock enable, is used to control all registers of the memory block. asynchronous clears are available on output latches and output registers only. design considerations this section describes guidelines for designing with memory blocks. memory block selection the quartus ii software automatically partitions user-defined memory into embedded memory blocks by taking into account both speed and size constraints placed on your design. for example, the quartus ii software may spread out memory across multiple memory blocks when resources are available to increase the performance of your design. you can manually assign memory to a specific block size using the ram megawizard plug-in manager. mlabs can implement single-port sram through emulation using the quartus ii software. emulation results in minimal additional logic resources being used. because of the dual-purpose architecture of the mlab, it only has data input registers and output registers in the block. mlabs gain input address registers and additional optional data output registers from adjacent alms with register packing. f r r fr rr c rfr logic array blocks and adaptive logic modules in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . conflict resolution when using the memory blocks in true dual-port mode, it is possible to attempt two write operations to the same memory location (address). because there is no conflict resolution circuitry built into the memory blocks, this results in unknown data being written to that location. therefore, you must implement conflict resolution logic external to the memory block to avoid address conflicts. read-during-write you can customize the read-during-write behavior of the arria ii gx memory blocks to suit your design needs. two types of read-during-write operations are available: same port and mixed port. figure 3?13 shows the difference between the two types.
3?16 chapter 3: memory blocks in arria ii gx devices design considerations arria ii gx device handbook volume 1 ? february 2009 altera corporation same-port read-during-write mode this mode applies to either a single-port ram or the same port of a true dual-port ram. in same-port read-during-write mode, three output choices are available: new data mode (or flow-through), old data mode, or don?t care mode. in new data mode, the new data is available on the rising edge of the same clock cycle on which it was written. in old data mode, the ram outputs reflect the old data at that address before the write operation proceeds. in don?t care mode, the ram outputs don?t care values for a read-during-write operation. figure 3?14 shows sample functional waveforms of same-port read-during-write behavior in new data mode. figure 3?13. arria ii gx read-during-write data flow port a data in port b data in port a data out port b data out mixed-port data flow same-port data flow figure 3?14. same port read-during write: new data mode clk_a wrena address_a data_a rdena q_a (asynch) a0 a1 ab c d ef ab c d e f
chapter 3: memory blocks in arria ii gx devices 3?17 design considerations ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 3?15 shows sample functional waveforms of same-port read-during-write behavior in old data mode. mixed-port read-during-write mode this mode applies to a ram in simple or true dual-port mode which has one port reading and the other port writing to the same address location with the same clock. in this mode, you also have two output choices: old data or don?t care. in old data mode, a read-during-write operation to different ports causes the ram outputs to reflect the old data at that address location. in don?t care mode, the same operation results in a ?don?t care? or ?unknown? value on the ram outputs. 1 rwr vr cr r r r r fr w r vr rfr ram megafunction user guide . figure 3?15. same port read-during-write: old data mode clk_a wrena address_a data_a rdena q_a (asynch) a0 a1 ab c d ef a0(old data) a1(old data) ab d e
3?18 chapter 3: memory blocks in arria ii gx devices design considerations arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 3?16 shows a sample functional waveform of mixed-port read-during-write behavior in old data mode. in don?t care mode, the old data shown in the figure is simply replaced with ?don?t care?. mixed-port read-during-write is not supported when two different clocks are used in a dual-port ram. the output value is unknown during a dual-clock mixed-port read-during-write operation. power-up conditions and memory initialization m9k memory block outputs power up to zero (cleared), regardless of whether the output registers are used or bypassed. mlabs power up to zero if output registers are used and power up reading the memory contents if output registers are not used. the quartus ii software initializes the ram cells to zero unless there is an mif file ( .mif ) specified. all memory blocks support initialization using a .mif file. you can create .mif files in the quartus ii software and specify their use with the ram megawizard plug-in manager when instantiating a memory in your design. even if a memory is pre-initialized (for example, using a .mif file), it still powers up with its outputs cleared. f r r fr .mif files, refer to the ram megafunction user guide and the quartus ii handbook . power management arria ii gx memory block clock-enables allow you to control clocking of each memory block to reduce ac-power consumption. use the read-enable signal to ensure that read operations only occur when you need them to. if your design does not require read-during-write, you can reduce your power consumption by de-asserting the read-enable signal during write operations or any period when no memory operations occur. figure 3?16. mixed port read during write: old data mode ab a (old data) b (old data) clk_a&b wrena address_a q_b (asynch) rdena ab address_b data_a ab c d ef a b de
chapter 3: memory blocks in arria ii gx devices 3?19 document revision history ? february 2009 altera corporation arria ii gx device handbook volume 1 the quartus ii software automatically places any unused memory blocks in low power mode to reduce static power. document revision history table 3?7 shows the revision history for this chapter. tab le 3 ?7 . document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
3?20 chapter 3: memory blocks in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 4. dsp blocks in arria ii gx devices introduction the arria ? dsp block overview each arria ii gx device has two to four columns of dsp blocks that implement multiplication, multiply-add, multiply-accumulate (mac), and dynamic shift functions. architectural highlights of the arria ii gx dsp block include: aiigx51004-1.0
4?2 chapter 4: dsp blocks in arria ii gx devices dsp block overview arria ii gx device handbook volume 1 ? february 2009 altera corporation  rich and flexible arithmetic rounding and saturation units  efficient barrel shifter support  loopback capability to support adaptive filtering table 4?1 shows the number of dsp blocks in arria ii gx devices. each dsp block occupies four logic array blocks (labs) in height and can be divided further into two half-blocks that share some common clocks. figure 4?1 shows the layout of each block. tab le 4 ?1 . number of dsp blocks in arria ii gx devices device dsp blocks independent input and output multiplication operators high precision multiplier adder mode four multiplier adder mode 9 x 9 multipliers 12 x 12 multipliers 18 x 18 multipliers 18 x 18 complex 36 x 36 multipliers 18 x 36 18 x 18 2agx2075642281414 28 56 2agx30 16 128 96 64 32 32 64 128 2agx45 29 232 174 116 58 58 116 232 2agx65 39 312 234 156 78 78 156 312 2agx95 56 448 336 224 112 112 224 448 2agx125 72 576 432 288 144 144 288 576 2agx190 82 656 492 328 164 164 328 656 2agx260 92 736 552 368 184 184 368 736 figure 4?1. overview of dsp block signals 34 144 144 288 72 72 half-dsp block half-dsp block output data output data full dsp block control input data
chapter 4: dsp blocks in arria ii gx devices 4?3 simplified dsp operation ? february 2009 altera corporation arria ii gx device handbook volume 1 simplified dsp operation the fundamental building block of arria ii gx devices is a pair of 18 18-bit multipliers followed by a first-stage 37-bit addition/subtraction unit, as shown in equation 4?1 and figure 4?2 . for all signed numbers, input and output data is represented in 2?s complement format only. the structure shown in figure 4?2 is useful for building more complex structures, such as complex multipliers and 36 36 multipliers, as described in later sections. each arria ii gx dsp block contains four two-multiplier adder units (2 two-multiplier adder units per half-block). therefore, there are eight 18 18 multiplier functionalities per dsp block. for a detailed diagram of the dsp block, refer to figure 4?4 on page 4?7 . following the two-multiplier adder units are the pipeline registers, the second-stage adders, and an output register stage. you can configure the second-stage adders to provide the alternative functions shown in equation 4?1 and equation 4?2 per half-block. equation 4?1. multiplier equation p[36..0] = a 0 [17..0] b 0 [17..0] a 1 [17..0] b 1 [17..0] figure 4?2. basic two-multiplier adder building block dq dq a0[17..0] a1[17..0] b1[17..0] b0[17..0] p[36..0] +/? equation 4?2. four-multiplier adder equation z[37..0] = p 0 [36..0] + p 1 [36..0]
4?4 chapter 4: dsp blocks in arria ii gx devices simplified dsp operation arria ii gx device handbook volume 1 ? february 2009 altera corporation in these equations, n denotes sample time and p[36..0] are the results from the two-multiplier adder units. equation 4?2 provides a sum of four 18 18-bit multiplication operations (four-multiplier adder), and equation 4?3 provides a four 18 18-bit multiplication operation, but with a maximum of a 44-bit accumulation capability by feeding the output from the output register bank back to the adder/accumulator block. for the output register bank and adder/accumulator block, refer to figure 4?3 . you can bypass all register stages depending on which mode you select. to support finite impulse response (fir)-like structures efficiently, a major addition to the dsp block in arria ii gx devices is the ability to propagate the result of one half-block to the next half-block completely in the dsp block without additional soft logic overhead. this is achieved by the inclusion of a dedicated addition unit and routing that adds the 44-bit result of a previous half-block with the 44-bit result of the current block. the 44-bit result is either fed to the next half-block or out of the dsp block using the output register stage. this is shown in figure 4?3 . detailed examples are described in later sections. to support single-channel type fir filters efficiently, you can configure one of the multiplier input?s registers to form a tap delay line input, saving resources and providing higher system performance. equation 4?3. four-multiplier adder equation (44-bit accumulation) w n [43..0] = w n-1 [43..0] z n [37..0]
chapter 4: dsp blocks in arria ii gx devices 4?5 operational modes overview ? february 2009 altera corporation arria ii gx device handbook volume 1 operational modes overview you can use each arria ii gx dsp block in one of five basic operational modes. table 4?2 shows the five basic operational modes and the number of multipliers that you can implement in a single dsp block, depending on the mode. figure 4?3. output cascading feature for fir structures + + 144 44 44 from previous half-block dsp to n ex t half-block dsp input data input register bank pipeline register bank adder/ accumulator + round/saturate output register bank 44 half dsp block result[] tab le 4 ?2 . arria ii gx dsp block operation modes (part 1 of 2) mode multiplier in width number of multiplier # per block signed or unsigned rnd, sat in shift register chainout adder 1st stage add/sub 2nd stage add/acc independent multiplier 9-bits 1 8 both no no no ? ? 12-bits1 6bothnonono?? 18-bits 1 4 both yes yes no ? ? 36-bits1 2bothnonono?? double 1 2 both no no no ? ? two-multiplier adder (1) 18-bits 2 4 signed (4) yes no n o bo th ? four-multiplier adder 18-bits 4 2 both yes yes yes both add only multiply accumulate 18-bits 4 2 both yes yes yes both both
4?6 chapter 4: dsp blocks in arria ii gx devices dsp block resource descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation the dsp block consists of two identical halves: top-half and bottom-half. each half has four 18 18 multipliers. arria ii gx dsp blocks can operate in different modes simultaneously. each half-block is fully independent except for the sharing of the four clock, ena , and the aclr signals. for example, you can break down a single dsp block to operate a 9 9 multiplier in one half-block and an 18 18 two-multiplier adder in the other half-block. this increases dsp block resource efficiency and allows you to implement more multipliers in an arria ii gx device. the quartus ii software automatically places multipliers that can share the same dsp block resources in the same block. dsp block resource descriptions the dsp block consists of the following elements: shift (2) 36-bits (3) 1 2 bothnono??? high precision multiplier adder 18x362 2 bothnonono?add only notes to ta bl e 4? 2 : (1) this mode also supports loopback mode. in loopback mode, the num ber of loopback multipliers per dsp block is two. you can us e the remaining multipliers in regular two-multiplier adder mode. (2) dynamic shift mode supports arithmetic shift left, arithmetic shift right, logical shift left, logical shift right, and rota tion operation. (3) dynamic shift mode operates on a 32-bit input vector but the multiplier width is configured as 36 bits. (4) unsigned value is also supported but you must ensure that the result can be contained in 36 bits. tab le 4 ?2 . arria ii gx dsp block operation modes (part 2 of 2) mode multiplier in width number of multiplier # per block signed or unsigned rnd, sat in shift register chainout adder 1st stage add/sub 2nd stage add/acc
chapter 4: dsp blocks in arria ii gx devices 4?7 dsp block resource descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 input registers all dsp block registers are triggered by the positive edge of the clock signal and are cleared upon power up. each multiplier operand can feed an input register or feed directly to the multiplier, bypassing the input registers. the following dsp block signals control the input registers in the dsp block: clock[3..0] ena[3..0] aclr[3..0] figure 4?4. half-dsp block architecture notes to figure 4?4 : (1) block output for accumulator overflow and saturate overflow. (2) block output for saturation overflow of chainout . (3) when the chainout adder is not in use, the second adder register banks are known as output register banks. chainin[ ] scanina[ ] dataa_0[ ] datab_0[ ] dataa_1[ ] datab_1[ ] dataa_2[ ] datab_2[ ] dataa_3[ ] scanouta chainout datab_3[ ] input register bank first stage adder first stage adder pipeline register bank second stage adder/accum ulator first round/satu rate second adder register bank chainout adder second round/satu rate output register bank shift/rotate result[ ] clock[3..0] ena[3..0] alcr[3..0] zero_loop b ack accum_sload zero_chaino ut chainout_round chainout_satu rate signa signb output_round output_satu rate rotate shift_right o v erflo w (1) chainout_sat_o v erflo w (2 ) half-dsp block loopb ack mu ltiplexer
4?8 chapter 4: dsp blocks in arria ii gx devices dsp block resource descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation every dsp block has nine 18-bit data input register banks per half dsp block. every half dsp block has the option to use the eight data register banks as inputs to the four multipliers. the special ninth register bank is a delay register required by modes that use both the cascade and chainout features of the dsp block for balancing the latency requirements. a feature of the input register bank is to support a tap delay line. therefore, the top leg of the multiplier input (a) can be driven from general routing or from the cascade chain, as shown in figure 4?5 . table 4?9 on page 4?30 shows a list of dsp block dynamic signals.
chapter 4: dsp blocks in arria ii gx devices 4?9 dsp block resource descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 4?5. input register of half-dsp block (note 1) note to figure 4?5 : (1) the scanina signal originates from the previous dsp block, while the scanouta signal goes to the next dsp block. +/? +/? signa signb clock[3..0] ena[3..0] aclr[3..0] scanina[17..0] dataa_0[17..0] loopback datab_0[17..0] dataa_1[17..0] datab_1[17..0] dataa_2[17..0] datab_2[17..0] dataa_3[17..0] datab_3[17..0] scanouta delay register
4?10 chapter 4: dsp blocks in arria ii gx devices dsp block resource descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation you must select the incoming data for multiplier input (a) from either general routing or from the cascade chain at compile time. in cascade mode, the dedicated shift outputs from one multiplier block directly feeds input registers of the adjacent multiplier below it (in the same half dsp block) or the first multiplier in the next half dsp block, to form an 8-tap shift register chain per dsp block. the dsp block can increase the length of the shift register chain by cascading to the lower dsp blocks. the dedicated shift register chain spans a single column, but you can implement longer shift register chains requiring multiple columns using the regular fpga routing resources. shift registers are useful in dsp functions such as fir filters. when implementing 18 18 or smaller width multipliers, you do not require external logic to create the shift register chain because the input shift registers are internal to the dsp block. this implementation significantly reduces the logical element (le) resources required, avoids routing congestion, and results in predictable timing. the first multiplier in every half dsp block (top- and bottom-half) in arria ii gx devices has a multiplexer for the first multiplier b-input (lower-leg input) register to select between general routing and loopback, as shown in figure 4?4 on page 4?7 . in loopback mode, the most significant 18-bit registered outputs are connected as feedback to the multiplier input of the first top multiplier in each half dsp block. loopback modes are used by recursive filters where the previous output is required to compute the current output. loopback mode is described in detail in ?two-multiplier adder sum mode? on page 4?20 . table 4?3 shows the summary of input register modes for the dsp block. multiplier and first-stage adder the multiplier stage supports 9 9, 12 12, 18 18, or 36 36 multipliers. other wordlengths are padded up to the nearest appropriate native wordlength; for example, 16 16 would be padded up to use 18 18. for more information, refer to ?independent multiplier modes? on page 4?13 . depending on the data width of the multiplier, a single dsp block can perform many multiplications in parallel. each multiplier operand can be a unique signed or unsigned number. two dynamic signals, signa and signb , control the representation of each operand, respectively. a logic 1 value on the signa/signb signal indicates that data a/data b is a signed number; a logic 0 value indicates an unsigned number. table 4?4 shows the sign of the multiplication result for the various operand sign representations. the result of the multiplication is signed if any one of the operands is a signed value. tab le 4 ?3 . input register modes register input mode (1) 99 1212 1818 3636 double parallel input vvvvv shift register input (2) ?? v ?? loopback input (3) ?? v ?? notes to ta bl e 4? 3 : (1) the multiplier operand input wordlengths are statically configured at compile time. (2) available only on the a-operand. (3) only one loopback input is allowed per half-block. for details, refer to figure 4?12 on page 4?21 .
chapter 4: dsp blocks in arria ii gx devices 4?11 dsp block resource descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 each half-block has its own signa and signb signal. therefore, all data a inputs feeding the same dsp half-block must have the same sign representation. similarly, all data b inputs feeding the same dsp half-block must have the same sign representation. the multiplier offers full precision regardless of the sign representation in all operational modes except for full precision 18 x 18 loopback and two-multiplier adder modes. for more information, refer to ?two-multiplier adder sum mode? on page 4?20 . 1 signa and signb are unused, the quartus ii software sets the multiplier to perform unsigned multiplication by default. the outputs of the multipliers are the only outputs that can feed into the first-stage adder, as shown in figure 4?4 on page 4?7 . there are four first-stage adders in a dsp block (two adders per half dsp block). the first-stage adder block has the ability to perform addition and subtraction. the control signal for addition or subtraction is static and has to be configured upon compile time. the first-stage adders are used by the sum modes to compute the sum of two multipliers, 18 18-complex multipliers, and to perform the first stage of a 36 36 multiply and shift operation. depending on your specifications, the output of the first-stage adder has the option to feed into the pipeline registers, second-stage adder, round and saturation unit, or the output registers. pipeline register stage the output from the first-stage adder can either feed or bypass the pipeline registers, as shown in figure 4?4 on page 4?7 . pipeline registers increase the dsp block?s maximum performance (at the expense of extra cycles of latency), especially when using the subsequent dsp block stages. pipeline registers split up the long signal path between the input-registers/multiplier/first-stage adder and the second-stage adder/round-and-saturation/output-registers, creating two shorter paths. second-stage adder there are four individual 44-bit second-stage adders per dsp block (two adders per half dsp block). you can configure the second-stage adders as follows: tab le 4 ?4 . multiplier sign representation data a (signa value) data b (signb value) result unsigned (logic 0) unsigned (logic 0) unsigned unsigned (logic 0) signed (logic 1) signed signed (logic 1) unsigned (logic 0) signed signed (logic 1) signed (logic 1) signed
4?12 chapter 4: dsp blocks in arria ii gx devices dsp block resource descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation 1 you can use the chained-output adder at the same time as a second-level adder in chained output summation mode. the output of the second-stage adder has the option to go into the round and saturation logic unit or the output register. 1 you cannot use the second-stage adder independently from the multiplier and first-stage adder. round and saturation stage round and saturation logic units are located at the output of the 44-bit second-stage adder (the round logic unit followed by the saturation logic unit). there are two round and saturation logic units per half dsp block. the input to the round and saturation logic unit can come from one of the following stages: output of the multiplier (independent multiply mode in 18 18) output of the first-stage adder (two-multiplier adder) output of the pipeline registers output of the second-stage adder (four-multiplier adder, multiply-accumulate mode in 18 18) these stages are described in detail in ?operational mode descriptions? on page 4?13 . the round and saturation logic unit is controlled by the dynamic round and saturate signals, respectively. a logic 1 value on the round and/or saturate enables the round and/or saturate logic unit, respectively. 1 you can use the round and saturation logic units together or independently. second adder and output registers the second adder register and output register banks are two banks of 44-bit registers that can also be combined to form larger 72-bit banks to support 36 36 output results. the outputs of the different stages in the arria ii gx devices are routed to the output registers through an output selection unit. depending on the operational mode of the dsp block, the output selection unit selects whether the outputs of the dsp blocks comes from the outputs of the multiplier block, first-stage adder, pipeline registers, second-stage adder, or the round and saturation logic unit. the output selection unit is set automatically by the software, based on the dsp block operational mode you specified, and has the option to either drive or bypass the output registers. the exception is when the block is used in shift mode, in which case you dynamically controls the output-select multiplexer directly.
chapter 4: dsp blocks in arria ii gx devices 4?13 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 when the dsp block is configured in chained cascaded output mode, both of the second-stage adders are used. the first adder is used for performing four-multiplier adder and the second is used for the chainout adder. the outputs of the four-multiplier adder are routed to the second-stage adder registers before it enters the chainout adder. the output of the chainout adder goes to the regular output register bank. depending on the configuration, the chainout results can be routed to the input of the next half-block?s chainout adder input or to the general fabric (functioning as regular output registers). the second-stage and output registers are triggered by the positive edge of the clock signal and are cleared on power up. the following dsp block signals control the output registers in the dsp block: clock[3..0] ena[3..0] aclr[3..0] operational mode descriptions this section describes the operation modes of arria ii gx devices. independent multiplier modes in independent input and output multiplier mode, the dsp block performs individual multiplication operations for general-purpose multipliers. 9-, 12-, and 18-bit multiplier you can configure each dsp block multiplier for 9-, 12-, or 18-bit multiplication. a single dsp block can support up to eight individual 9 9 multipliers, six 12 12 multipliers, or up to four individual 18 18 multipliers. for operand widths up to 9-bits, a 9 9 multiplier is implemented. for operand widths from 10 to 12 bits, a 12 12 multiplier is implemented and for operand widths from 13 to 18 bits, an 18 18 multiplier is implemented. this is done by the quartus ii software by zero-padding the lsbs. figure 4?6 , figure 4?7 , and figure 4?8 show the dsp block in the independent multiplier operation mode. a list of dsp block dynamic signals is shown in table 4?9 on page 4?30 .
4?14 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 4?6. 18-bit independent multiplier mode shown for half-dsp block note to figure 4?6 : (1) block output for accumulator overflow and saturate overflow. clock[3..0] ena[3..0] aclr[3..0] signa signb output_round output_saturate overflow (1) 36 36 dataa_0[17..0] datab_0[17..0] dataa_1[17..0] datab_1[17..0] half-dsp block input register bank pipeline register bank round/saturate round/saturate output register bank 18 18 18 18 result_0[ ] result_1[ ]
chapter 4: dsp blocks in arria ii gx devices 4?15 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 4?7. 12-bit independent multiplier mode shown for half-dsp block 24 12 12 12 12 12 12 24 24 input register bank pipeline register bank output register bank clock[3..0] ena[3..0] aclr[3..0] signa signb half-dsp block dataa_0[11..0] datab_0[11..0] dataa_1[11..0] datab_1[11..0] dataa_2[11..0] datab_2[11..0] result_0[ ] result_1[ ] result_2[ ]
4?16 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation the multiplier operands can accept signed integers, unsigned integers, or a combination of both. you can change the signa and signb signals dynamically and can be registered in the dsp block. additionally, the multiplier inputs and result can be registered independently. you can use the pipeline registers in the dsp block to pipeline the multiplier result, increasing the performance of the dsp block. 1 r r c r fr 1 r figure 4?8. 9-bit independent multiplier mode shown for half-block 18 9 9 9 9 18 9 9 18 9 9 18 input register bank pipeline register bank output register bank dataa_0[8..0] datab_0[8..0] dataa_1[8..0] datab_1[8..0] dataa_2[8..0] datab_2[8..0] dataa_3[8..0] datab_3[8..0] half-dsp block clock[3..0] ena[3..0] aclr[3..0] signa signb result_0[ ] result_1[ ] result_2[ ] result_3[ ]
chapter 4: dsp blocks in arria ii gx devices 4?17 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 36-bit multiplier you can construct a 36 36 multiplier using four 18 18 multipliers. this simplification fits into one half-dsp block and is implemented in the dsp block automatically by selecting 36 36 mode. the 36-bit multiplier is also under the independent multiplier mode but uses the entire half dsp block, including the dedicated hardware logic after the pipeline registers to implement the 36 36-bit multiplication operation, as shown in figure 4?9 . the 36-bit multiplier is useful for applications requiring more than 18-bit precision; for example, for the mantissa multiplication portion of single precision and extended single precision floating-point arithmetic applications. figure 4?9. 36-bit independent multiplier mode shown for half-dsp block pipeline register bank input register bank output register bank half-dsp block dataa_0[35..18] datab_0[35..18] dataa_0[17..0] datab_0[35..18] dataa_0[35..18] datab_0[17..0] dataa_0[17..0] datab_0[17..0] 72 clock[3..0] ena[3..0] aclr[3..0] signa signb + + + result[ ]
4?18 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation double multiplier you can configure the arria ii gx dsp block to support an unsigned 54 54-bit multiplier that is required to compute the mantissa portion of an ieee double precision floating point multiplication. you can build a 54 54-bit multiplier using basic 18 18 multipliers, shifters, and adders. to efficiently use the arria ii gx dsp block?s built in shifters and adders, a special double mode (partial 54 54 multiplier) is available that is a slight modification to the basic 36 36 multiplier mode. figure 4?10 shows a 54 54-bit multiplier which include the special double mode multiplier.
chapter 4: dsp blocks in arria ii gx devices 4?19 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 4?10. unsigned 54 54-bit multiplier shifters and adders double mode shifters and adders 36 x 36 mode + two multiplier adder mode final adder (implemented with alut logic) 36 55 72 108 result[ ] unsigned 54 x 54 multiplier "0" "0" dataa[53..36] dataa[53..36] dataa[53..36] datab[53..36] dataa[35..18] datab[53..36] dataa[17..0] datab[53..36] datab[35..18] datab[17..0] clock[3..0] ena[3..0] aclr[3..0] signa signb dataa[35..18] dataa[35..18] datab[35..18] datab[17..0] datab[17..0] dataa[17..0] datab[35..18] dataa[17..0]
4?20 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation two-multiplier adder sum mode in the two-multiplier adder configuration, the dsp block can implement four 18-bit two-multiplier adders (2 two-multiplier adders per half dsp block). you can configure the adders to take the sum or difference of two multiplier outputs. summation or subtraction has to be selected at compile time. the two-multiplier adder function is useful for applications such as ffts, complex fir, and iir filters. figure 4?11 shows the dsp block configured in the two-multiplier adder mode. the loopback mode is a sub-feature of the two-multiplier adder mode. figure 4?12 shows the dsp block configured in the loopback mode. this mode takes the 36-bit summation result of the two multipliers and feeds back the most significant 18-bits to the input. the lower 18-bits are discarded. you have the option to disable or zero-out the loopback data with the dynamic zero_loopback signal. a logic 1 value on the zero_loopback signal selects the zeroed data or disables the looped back data, while a logic 0 selects the looped back data. 1 c r r wr r c c figure 4?11. two-multiplier adder mode shown for half-dsp block (note 2) notes to figure 4?11 : (1) block output for accumulator overflow and saturate overflow. (2) in a half-dsp block, you can implement 2 two-multiplier adders. input register bank pipeline register bank round/saturate output register bank clock[3..0] ena[3..0] aclr[3..0] signa signb output_round output_saturate overflow (1) result[ ] + dataa_0[17..0] datab_0[17..0] dataa_1[17..0] datab_1[17..0] half-dsp block
chapter 4: dsp blocks in arria ii gx devices 4?21 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 for two-multiplier adder mode, if all the inputs are full 18-bit and unsigned, the result requires 37 bits. as the output data width in two-multiplier adder mode is limited to 36 bits, this 37-bit output requirement is not allowed. any other combination that does not violate the 36-bit maximum result is permitted; for example, two 16 16 signed two-multiplier adders is valid. 1 wr r r r r c c rr rr c rr r cr rfrc f c 18 18 complex multiply you can configure the dsp block to implement complex multipliers using the two-multiplier adder mode. a single-half dsp block can implement one 18-bit complex multiplier. a complex multiplication can be written as shown in equation 4?4 . figure 4?12. loopback mode for half-dsp block note to figure 4?12 : (1) block output for accumulator overflow and saturate overflow. input register bank pipeline register bank round/saturate output register bank dataa_0[17..0] datab_0[17..0] dataa_1[17..0] datab_1[17..0] zero_loopback clock[3..0] ena[3..0] aclr[3..0] signa signb output_round output_saturate overflow (1) result[ ] + loopback half-dsp block
4?22 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation to implement this complex multiplication in the dsp block, the real part ((a c) ? (b d)) is implemented using two multipliers feeding one subtractor block while the imaginary part ((a d) + (b c)) is implemented using another two multipliers feeding an adder block. this mode automatically assumes all inputs are using signed numbers. four-multiplier adder in the four-multiplier adder configuration shown in figure 4?13 , the dsp block can implement 2 four-multiplier adders (1 four-multiplier adder per half dsp block). these modes are useful for implementing one-dimensional and two-dimensional filtering applications. the four-multiplier adder is performed in two addition stages. the outputs of two of the four multipliers are initially summed in the two first-stage adder blocks. the results of these two adder blocks are then summed in the second-stage adder block to produce the final four-multiplier adder result, as shown in equation 4?2 on page 4?3 and equation 4?3 on page 4?4 . equation 4?4. complex multiplication equation (a + jb) (c + jd) = ((a c)) ? (b d)) + j((a d) + (b c))
chapter 4: dsp blocks in arria ii gx devices 4?23 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 high-precision multiplier adder mode in the high-precision multiplier adder, the dsp block can implement 2 two-multiplier adders, with multiplier precision of 18 36 (one two-multiplier adder per dsp half block). this mode is useful in filtering or fast fourier transform (fft) applications where a data path greater than 18 bits is required, yet 18 bits is sufficient for coefficient precision. this can occur in cases where that data has a high dynamic range. if the coefficients are fixed, as in fft and most filter applications, the precision of 18 bits provides a dynamic range over 100 db, if the largest coefficient is normalized to the maximum 18-bit representation. figure 4?13. four-multiplier adder mode shown for half-dsp block note to figure 4?13 : (1) block output for accumulator overflow and saturate overflow. clock[3..0] ena[3..0] aclr[3..0] signa signb output_round output_saturate overflow (1) input register bank pipeline register bank round/saturate output register bank dataa_0[ ] datab_0[ ] dataa_1[ ] datab_1[ ] dataa_2[ ] datab_2[ ] dataa_3[ ] datab_3[ ] half-dsp block + + + result[ ]
4?24 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation in these situations, the data path can be up to 36 bits, allowing sufficient capacity for bit growth or gain changes in the signal source without loss of precision, which is useful in single precision block floating point applications. as shown in figure 4?14 , the high-precision multiplier is performed in two stages. the sum of the results of the two adders produce the final result: z[54..0] = p 0 [53..0] + p 1 [53..0] where: p 0 = a[17..0] b[35..0] and p 1 = c[17..0] d[35..0] figure 4?14. high-precision multiplier adder configuration for half-dsp block note to figure 4?14 : (1) block output for accumulator overflow and saturate overflow. clock[3..0] ena[3..0] aclr[3..0] signa signb o v erflo w (1) input register bank pipeline register bank output register bank dataa[0:17] p 0 p 1 dataa[0:17] datac[0:17] datac[0:17] datad[0:17] datad[18:35] datab[0:17] <<18 <<18 datab[18:35] half-dsp block + + result[ ] +
chapter 4: dsp blocks in arria ii gx devices 4?25 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 multiply accumulate mode in multiply accumulate mode, the second-stage adder is configured as a 44-bit accumulator or subtractor. the output of the dsp block is looped back to the second-stage adder and added or subtracted with the two outputs of the first-stage adder block according to equation 4?3 on page 4?4 . figure 4?15 shows the dsp block configured to operate in multiply accumulate mode. a single dsp block can implement up to two independent 44-bit accumulators. figure 4?15. multiply accumulate mode shown for half-dsp block note to figure 4?15 : (1) block output for saturation overflow of chainout. clock[3..0] ena[3..0] aclr[3..0] signa signb output_round output_saturate chainout_sat_overflow (1) input register bank pipeline register bank round/saturate output register bank dataa_0[ ] datab_0[ ] dataa_1[ ] datab_1[ ] dataa_2[ ] datab_2[ ] dataa_3[ ] datab_3[ ] half-dsp block + + + result[ ] accum_sload 44 second register bank
4?26 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation the dynamic accum_sload control signal is used to clear the accumulation. a logic 1 value on the accum_sload signal synchronously loads the accumulator with the multiplier result only, while a logic 0 enables accumulation by adding or subtracting the output of the dsp block (accumulator feedback) to the output of the multiplier and first-stage adder. 1 cr fr ccr rcr c rfr cfr c r r r c cfr 1 r ccr shift modes arria ii gx devices support the following shift modes for 32-bit input only: asl[n] asr[32-n] lsl[n] lsr[32-n] rot[n] 1 c wc f w c r f cr f rr vc c f rcr c rcr rfr c f r r r 1 w f cfr f f v r c r rc f f r r r r c cfr r rfr f r rc f r rr vcr r rc f r f f vcr c f r vcr r c f r r r fc f vcr r rr fr vcr r fc wr w cr rotate and shift_right , together with the signa and signb signals, determine the shifting operation. examples of shift operations are shown in table 4?5 .
chapter 4: dsp blocks in arria ii gx devices 4?27 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 4?16. shift operation mode shown for half-dsp block clock[3..0] ena[3..0] aclr[3..0] signa signb rotate shift_right input register bank pipeline register bank output register bank dataa_0[35..18] datab_0[35..18] dataa_0[17..0] datab_0[35..18] dataa_0[35..18] datab_0[17..0] dataa_0[17..0] datab_0[17..0] half-dsp block + + + / tab le 4 ?5 . examples of shift operations example signa signb shift rotate a-input b-input result logical shift left lsl[n] unsigned unsigned 0 0 0aabbccdd 00000100 0bbccdd00 logical shift right lsr[32-n] unsigned unsigned 1 0 0aabbccdd 00000100 0000000aa arithmetic shift left asl[n] signed unsigned 0 0 0aabbccdd 00000100 0bbccdd00 arithmetic shift right asr[32-n] signed unsigned 1 0 0aabbccdd 00000100 0ffffffaa rotation rot[n] unsigned unsigned 0 1 0aabbccdd 00000100 0bbccddaa
4?28 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation rounding and saturation mode round and saturation functions are often required in dsp arithmetic. rounding is used to limit bit growth and its side effects; saturation is used to reduce overflow and underflow side effects. two rounding modes are supported in arria ii gx devices: tab le 4 ?6 . example of round-to-nearest-even mode 6- to 4-bits rounding odd/even (integer) fractional add to integer result 010111 > 0.5 (11) 1 0110 001101 < 0.5 (01) 0 0011 001010 even (0010) = 0.5 (10) 0 0010 001110 odd (0011) = 0.5 (10) 1 0100 110111 > 0.5 (11) 1 1110 101101 < 0.5 (01) 0 1011 110110 odd (1101) = 0.5 (10) 1 1110 110010 even (1100) = 0.5 (10) 0 1100 tab le 4 ?7 . comparison of round-to-nearest-integer and round-to-nearest-even round-to-nearest-integer round-to-nearest-even 010111 ? 0110 010111 ? 0110 001101 ? 0011 001101 ? 0011 001010 ? 0011 001010 ? 0010 001110 ? 0100 001110 ? 0100 110111 ? 1110 110111 ? 1110 101101 ? 1011 101101 ? 1011 110110 ? 1110 110110 ? 1110 110010 ? 1101 110010 ? 1100
chapter 4: dsp blocks in arria ii gx devices 4?29 operational mode descriptions ? february 2009 altera corporation arria ii gx device handbook volume 1 two saturation modes are supported in arria ii gx devices: 7fffffff, min = 0 80000000 7fffffff, min = 0 80000001 table 4?8 shows how the saturation works. in this example, a 44-bit input is saturated to 36-bits. arria ii gx devices have up to 16 configurable bit positions out of the 44-bit bus ( [43:0] ) for the round and saturate logic unit providing higher flexibility. you must select the 16 configurable bit positions at compile time. these 16-bit positions are located at bits [21:6] for rounding and [43:28] for saturation, as shown in figure 4?17 . 1 r rc r r wr fr r c tab le 4 ?8 . examples of saturation 44 to 36 bits saturation symmetric sat result asymmetric sat result 5926ac01342h 7ffffffffh 7ffffffffh ada38d2210h 800000001h 800000000h figure 4?17. round and saturation locations 43 42 29 28 1 0 43 42 21 20 7 6 0 16 user defined sat positions (bit 43-28) 16 user defined rnd positions (bit 21-6)
4?30 chapter 4: dsp blocks in arria ii gx devices operational mode descriptions arria ii gx device handbook volume 1 ? february 2009 altera corporation you can use the rounding and saturation function as described in regular supported multiplication operations shown in table 4?2 on page 4?5 . however, for accumulation type operations, the following convention is used. the functionality of the round logic unit is in the format of: result = rnd[ dsp block control signals the arria ii gx dsp block is configured using a set of static and dynamic signals. at run time, you can configure the dsp block dynamic signals to toggled or not. table 4?9 and table 4?10 show a list of dynamic signals for the dsp block. tab le 4 ?9 . dsp block dynamic signals per half-dsp block (part 1 of 2) signal name function count signa signb signed/unsigned control for all multipliers and adders. signa for ?multiplicand? input bus to dataa[17:0] each multiplier. signb for ?multiplier? input bus datab[17:0] to each multiplier. signa = 1, signb = 1 for signed-signed multiplication signa = 1, signb = 0 for signed-unsigned multiplication signa = 0, signb = 1 for unsigned-signed multiplication signa = 0, signb = 0 for unsigned-unsigned multiplication 2 output_round round control for first stage round/saturation block. output_round = 1 for rounding on multiply output output_round = 0 for normal multiply output 1 chainout_round round control for second stage round/saturation block. chainout_round = 1 for rounding on multiply output chainout_round = 0 for normal multiply output 1 output_saturate saturation control for first stage round/saturation block for q-format multiply. if both rounding and saturation is enabled, saturation is done on the rounded result. output_saturate = 1 for saturation support output_saturate = 0 for no saturation support 1 chainout_saturate saturation control for second stage round/saturation block for q-format multiply. if both rounding and saturation?s enabled, saturation is done on the rounded result. chainout_saturate = 1 for saturation support chainout_saturate = 0 for no saturation support 1
chapter 4: dsp blocks in arria ii gx devices 4?31 software support for arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 software support for arria ii gx devices altera provides two distinct methods for implementing various modes of the dsp block in a design: instantiation and inference. both methods use the following quartus ii megafunctions: accum_sload dynamically specifies whether the accumulator value is zero. accum_sload = 0, accumulation input is from the output registers accum_sload = 1, accumulation input is set to be zero 1 zero_chainout dynamically specifies whether the chainout value is zero. 1 zero_loopback dynamically specifies whether the loopback value is zero. 1 rotate rotation = 1, rotation feature is enabled 1 shift_right shift_right = 1, shift right feature is enabled 1 ? total signals per half-block 11 tab le 4 ?9 . dsp block dynamic signals per half-dsp block (part 2 of 2) signal name function count table 4?10. dsp block dynamic signals per full-dsp block signal name function count clock0 clock1 clock2 clock3 dsp-block-wide clock signals 4 ena0 ena1 ena2 ena3 input and pipeline register enable signals 4 aclr0 aclr1 aclr2 aclr3 dsp block-wide asynchronous clear signals (active low). 4 ? total count per full block 34
4?32 chapter 4: dsp blocks in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation f refer to the quartus ii software help for instructions about using the megafunctions and the megawizard plug-in manager. f for more information, refer to section iii: synthesis in volume 1 of the quartus ii handbook . document revision history table 4?11 shows the revision history for this chapter. table 4?11. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
? february 2009 altera corporation arria ii gx device handbook volume 1 5. clock networks and plls in arria ii gx devices introduction arria ? ii gx devices provide a hierarchical clock structure and multiple plls with advanced features. arria ii gx devices provide dedicated global clock networks (gclks), regional clock networks (rclks), and periphery clock networks (pclks). this chapter contains the following sections: clock networks in arria ii gx devices the gclks, rclks, and pclks available in arria ii gx devices are organized into hierarchical clock structures that provide up to 148 unique clock domains (16 gclk + 48 rclk + 84 pclk) in the arria ii gx device and allows up to 52 unique gclk, rclk, and pclk clock sources (16 gclk + 12 rclk + 24 pclk) per device quadrant. table 5?1 shows the clock resources available in arria ii gx devices. arria ii gx devices have up to 12 dedicated single-ended clock pins or 6 dedicated differential clock pins ( diffclk_[0..5]p and diffclk_[0..5]n ) that can drive either the gclk or rclk networks. these clock pins are arranged on the three sides (top, bottom, and right sides) of the arria ii gx device, as shown in figure 5?1 and figure 5?2 . tab le 5 ?1 . clock resources in arria ii gx devices clock resource number of resources available source of clock resource clock input pins 12 single-ended (6 differential) clk[4..15] diffclk_[0..5]p/n pins global clock networks 16 clk[4..15] pins, pll clock outputs, pld-transceiver interface clocks, and logic array regional clock networks 48 clk[4..15] pins, pll clock outputs, pld-transceiver interface clocks, and logic array periphery clock networks 84 (24 per device quadrant) (1) dpa clock outputs, pld-transceiver interface clocks, horizontal i/o pins, and logic array gclks/rclks per quadrant 28 16 gclks + 12 rclks gclks/rclks per device 64 16 gclks + 48 rclks note to tab l e 5 ?1 : (1) there are 33 pclks in the ep2agx20 and ep2agx30 devices, where 9 are on the left side and 24 on the right side. there are 50 pclks in the ep2agx45 and ep2agx65 devices, where 18 are on the left side and 32 on the right side. there are 59 pclks in the ep2agx95 and e p2agx125 device, where 27 are on the left side and 32 on the right side. there are 84 pclks in the ep2agx190 and ep2agx260 devices, wher e 36 are on the left side and 48 on the right side. aiigx51005-1.0
5?2 chapter 5: clock networks and plls in arria ii gx devices clock networks in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation global clock networks arria ii gx devices provide up to 16 gclks that can drive throughout the entire device, serving as low-skew clock sources for functional blocks like adaptive logic modules (alms), digital signal processing (dsp) blocks, embedded memory blocks, and plls. arria ii gx i/o elements (ioes) and internal logic can also drive gclks to create internally generated global clocks and other high fan-out control signals; for example, synchronous or asynchronous clears and clock enables. figure 5?1 shows clk pins and plls that can drive gclk networks in arria ii gx devices. regional clock networks the regional clock (rclk) networks only pertain to the quadrant they drive into. arria ii gx devices contain 48 rclk networks that provide the lowest clock delay and skew for logic contained in a single device quadrant. arria ii gx i/o elements and internal logic in a given quadrant can also drive rclks to create internally generated regional clocks and other high fan-out control signals; for example, synchronous or asynchronous clears and clock enables. figure 5?2 shows clk pins and plls that can drive rclk networks in arria ii gx devices. figure 5?1. global clock networks notes to figure 5?1 : (1) pll_5 and pll_6 are only available in ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices. (2) because there are no dedicated clock pins on the left side of an arria ii gx device, gclk[0..3] are not driven by any clock pins. gclk[0..3] ( 2 ) gclk[4..7] clk[4..7] gclk[8..11] clk[8..11] clk[12..15] center plls top right pll top left pll bottom left pll bottom right pll gclk[12..15] pll_1 pll_2 (1) (1) pll_3 pll_5 pll_6 pll_4
chapter 5: clock networks and plls in arria ii gx devices 5?3 clock networks in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 periphery clock networks periphery clock (pclk) networks are a collection of individual clock networks driven from the periphery of the arria ii gx device. clock outputs from the dpa block, pld-transceiver interface clocks, horizontal i/o pins, and internal logic can drive the pclk networks. the ep2agx20 and ep2agx30 devices contain 33 pclks; the ep2agx45 and ep2agx65 devices contain 50 pclks; the ep2agx95 and ep2agx125 devices contain 59 pclks; the ep2agx190 and ep2agx260 devices contain 84 pclks. these pclks have higher skew compared to gclk and rclk networks and can be used instead of general purpose routing to drive signals into the arria ii gx device. 1 cc rc fr wr r cc fr c rcvr rfc cc r r c figure 5?2. regional clock networks in arria ii gx devices notes to figure 5?2 : (1) pll_5 and pll_6 are only available in ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices. (2) rclk[0..11] is not driven by any clock pins because there are no dedicated clock pins on the left side of the arria ii gx devices. rclk[0..5] rclk[30..35] rclk[6..11] rclk[24..29] rclk[42..47] clk[12..15] top left pll bottom left pll bottom right pll top right pll center plls clk[8..11] clk[4..7] rclk[36..41] rclk[12..17] rclk[18..23] q1 q2 q4 q3 pll_2 pll_6 pll_5 (2) (2) (1) (1) pll_4 pll_3 pll_1
5?4 chapter 5: clock networks and plls in arria ii gx devices clock networks in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation clocking regions arria ii gx devices provide up to 64 distinct clock domains (16 gclks + 48 rclks) in the entire device. you can use these clock resources to form the following four different types of clock regions: figure 5?3. arria ii gx device dual-regional clock region clock pins or pll outputs can drive half of the device to create side-wide clocking regions for improved inter face timing. regional clock m u ltiplexers pll_1 pll_4 pll_3 pll_2
chapter 5: clock networks and plls in arria ii gx devices 5?5 clock networks in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 the sub-regional clock scheme allows the formation of independent sub-regional clock regions for optimal and efficient use of global and regional clock resources. you can partition the device into a maximum of 16 sub-regional clock regions. each region is driven by a global or regional clock or by an adjacent alm. this technique allows the formation of optimally sized synchronous clock regions for the best utilization of clock network resources. figure 5?4 , figure 5?5 , and figure 5?6 show that you can divide the device into 16, 8, or 12 independent sub-regions. figure 5?4. sixteen independent sub-regional clock regions (note 1) note to figure 5?4 : (1) the sub-regional clock region is only appl icable to the ep2agx190 and ep2agx260 devices. figure 5?5. eight independent sub-regional + one dual-regional clock region (note 1) note to figure 5?5 : (1) the sub-regional clock region is only appl icable to the ep2agx190 and ep2agx260 devices. figure 5?6. twelve independent sub-regional + one regional clock region (note 1) note to figure 5?6 : (1) the sub-regional clock region is only appl icable to the ep2agx190 and ep2agx260 devices.
5?6 chapter 5: clock networks and plls in arria ii gx devices clock networks in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation clock network sources in arria ii gx devices, clock input pins, internal logic, transceiver clocks, and pll outputs can drive the global and regional clock networks. see table 5?2 to table 5?3 for the connectivity between dedicated clk[4..15] pins and the global and regional clock networks. dedicated clock inputs pins the clk pins can either be differential clocks or single-ended clocks. arria ii gx devices supports 6 differential clock inputs or 12 single-ended clock inputs. you can also use the dedicated clock input pins clk[4..15] for high fan-out control signals such as asynchronous clears, presets, and clock enables for protocol signals such as trdy and irdy for pci through global or regional clock networks. logic array blocks (labs) you can drive up to four signals into each global and regional clock network using lab-routing to enable internal logic to drive a high fan-out, low-skew signal. 1 rr c rv r r r cc c fr c cc r f r pll clock outputs arria ii gx plls can drive both gclk and rclk networks, as shown in table 5?5 and table 5?6 . table 5?2 shows the connection between the dedicated clock input pins and gclks. tab le 5 ?2 . clock input pin connectivity to global clock networks clock resources clk (pins) 456789101112131415 gclk[0..3] (1) ???????????? gclk[4..7] v v v v ???????? gclk[8..11] ???? v v v v ???? gclk[12..15] ???????? v v v v note to tab l e 5 ?2 : (1) gclk[0..3] is not driven by any clock pins because there are no dedicated clock pins on the left side of the arria ii gx devices.
chapter 5: clock networks and plls in arria ii gx devices 5?7 clock networks in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 table 5?3 shows the connectivity between the dedicated clock input pins and rclks in devices. a given clock input pin can drive two adjacent regional clock networks to create a dual-regional clock network. clock input connections to plls dedicated clock input pin connectivity to arria ii gx plls is shown in table 5?4 . clock output connections plls in arria ii gx devices can drive up to 24 regional clock networks and 8 global clock networks. refer to table 5?5 for arria ii gx pll connectivity to gclk networks. the quartus ii? software automatically assigns pll clock outputs to regional or global clock networks. tab le 5 ?3 . clock input pin connectivity to regional clock networks clock resource clk (pins) 456789101112131415 rclk [12, 14, 16, 18, 20, 22] v ? v ????? ??? rclk [13, 15, 17, 19, 21, 23] ? v ? v ???????? rclk [24..35] ???? vvvv ? ??? rclk [36, 38, 40, 42, 44, 46] ???????? v ? v ? rclk [37, 39, 41, 43, 45, 47] ????????? v ? v tab le 5 ?4 . arria ii gx device plls and pll clock pin drivers (note 1) dedicated clock input pin (clk pins) pll number 123456 clk[4..7] ?? v v ?? clk[8..11] ? v v ? v v clk[12..15] v v ??? ? note to tab l e 5 ?4 : (1) pll_5 and pll_6 are connected directly to clk[8..11] . pll_1 , pll_2 , pll_3 and pll_4 are driven by the clock input pins through a 4:1 multiplexer.
5?8 chapter 5: clock networks and plls in arria ii gx devices clock networks in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation table 5?5 shows how the pll clock outputs connect to gclk networks. table 5?6 shows how the pll clock outputs connect to rclk networks. clock control block every global and regional clock network has its own clock control block. the control block provides the following features: c0 or c1 ), or a combination of clock pins or pll outputs. tab le 5 ?5 . arria ii gx pll connectivity to gclks clock network pll number 123456 gclk[0..3] v ?? v ?? gclk[4..7] ?? v v ?? gclk[8..11] ? v v ? v v gclk[12..15] v v ???? tab le 5 ?6 . arria ii gx regional clock outputs from plls clock resource pll number 1 2 3456 rclk[0..11] v ?? v ?? rclk[12..23] ?? v v ?? rclk[24..35] ? v v ? v v rclk[36..47] v v ????
chapter 5: clock networks and plls in arria ii gx devices 5?9 clock networks in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 the mapping between input clock pins, pll counter outputs, and clock control block inputs is shown in table 5?7 . 1 c cc cc cr c r cc rc r f vc f r inclk sources for each global and regional clock network, refer to table 5?2 on page 5?6 through table 5?6 on page 5?8 . figure 5?7. arria ii gx global clock control block notes to figure 5?7 : (1) these clock select signals can only be dynamically contro lled through internal logic when the device is operating in user mode. (2) these clock select signals can only be set through a configuration file ( .sof or .pof ) and cannot be dynamically controlled during user mode operation. (3) the left side of the arria ii gx device only allows pll counter outputs as the dynamic clock source selection to the global clock network. (4) this is only available on the left side of the arria ii gx device. tab le 5 ?7 . mapping between input clock pins, pll counter outputs, and clock control block inputs clock control block inputs description inclk[0] , inclk[1] (1) can be fed by any of the 4 dedicated clock pins on the same side inclk[2] can be fed by pll counters c0 and c2 from the two corner plls on the same side of the arria ii gx device inclk[3] can be fed by pll counters c1 and c3 from the two corner plls on the same side of the arria ii gx device note to tab l e 5 ?7 : (1) the left side of the arria ii gx device only allows pll counter outputs as the dynamic clock source selection to the global clock network. hence, inclk[0] can be fed by pll counters c4 or c6 while inclk[1] can only be fed by pll counter c5. pll counter outputs (3) internal logic static clock select (2) clkselect[1..0] this multiplexer supports user -controllable dynamic switching inter -t ransceiver block clock line s (4) (1) 2 2 2 clk pin enab le/ disab le gclk internal logic clk pin
5?10 chapter 5: clock networks and plls in arria ii gx devices clock networks in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation the clock source selection for the regional clock select block can only be controlled statically using configuration bit settings in the configuration file ( .sof or .pof ) generated by the quartus ii software. the arria ii gx clock networks can be powered down by both static and dynamic approaches. when a clock net is powered down, all the logic fed by the clock net is in an off-state, thereby reducing the overall power consumption of the device. the unused global and regional clock networks are automatically powered down through configuration bit settings in the configuration file ( .sof or .pof ) generated by the quartus ii software. the dynamic clock enable or disable feature allows the internal logic to control power-up or power-down synchronously on gclk and rclk networks, including dual-regional clock regions. this function is independent of the pll and is applied directly on the clock network, as shown in figure 5?7 and figure 5?8 . you can set the input clock sources and the clkena signals for the global and regional clock network multiplexers through the quartus ii software using the altclkctrl megafunction. you can also enable or disable the dedicated external clock output pins using the altclkctrl megafunction. figure 5?9 shows the external pll output clock control block. 1 fc c cc rc c rr vc fr cc c fr f f vc f inclk[0..1] ports of the multiplexer, while the pll outputs feed the inclk[2..3] ports. you can choose from among these inputs using the clkselect[1..0] signal. refer to table 5?7 for the connections between the pll counter outputs to the clock control block on the left side of the arria ii gx device. figure 5?8. regional clock control block note to figure 5?8 : (1) this clock select signal can only be statically controlled through a configuration file ( .sof or .pof ) and cannot be dynamically controlled during user mode operation. clk pin pll counter outputs internal logic enab le/ disab le rclk internal logic static clock select (1 ) 2
chapter 5: clock networks and plls in arria ii gx devices 5?11 clock networks in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 5?9. arria ii gx external pll output clock control block notes to figure 5?9 : (1) this clock select signal can only be set through a configuration file ( .sof or .pof ) and cannot be dynamically controlled during user mode operation. (2) the clock control block feeds to a multiplexer in the pll<#>_clkout pin's ioe. the pll<#>_clkout pin is a dual-purpose pin. therefore, this multiplexer selects either an internal signal or the output of the clock control block. pll counter outputs and m counter enab le/ disab le pll<#>_clkout pin internal logic static clock select ioe (1 ) static clock select (1) internal logic (2) 8
5?12 chapter 5: clock networks and plls in arria ii gx devices clock networks in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation clock enable signals figure 5?10 shows how the clock enable/disable circuit of the clock control block is implemented in arria ii gx devices. in arria ii gx devices, the clkena signals are supported at the clock network level instead of at the pll output counter level. this allows you to gate off the clock even when a pll is not being used. you can also use the clkena signals to control the dedicated external clocks from the plls. figure 5?11 shows the waveform example for a clock output enable. the clkena signal is synchronous to the falling edge of the clock output. arria ii gx devices also have an additional metastability register that aids in asynchronous enable/disable of the gclk/rclk networks. this register can be optionally bypassed in the quartus ii software. figure 5?10. clkena implementation notes to figure 5?10 : (1) the r1 and r2 bypass paths are not available for pll external clock outputs. (2) the select line is statically controlled by a bit setting in the configuration file ( .sof or .pof ). clkena gclk/ rclk/ pll_<#>_clkout (1 ) outpu t of clock select m u ltiplexer (2) r1 r2 (1) (1) d q d q figure 5?11. clkena signals note to figure 5?11 : (1) you can use the clkena signals to enable or disable the global and regional networks or the pll<#>_clkout pins. clkena output of and gate with r2 b ypassed output of clock select m u ltiplexer output of and gate with r2 not b ypassed
chapter 5: clock networks and plls in arria ii gx devices 5?13 clock networks in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 the pll can remain locked independent of the clkena signals because the loop-related counters are not affected. this feature is useful for applications that require a low power or sleep mode. the clkena signal can also disable clock outputs if the system is not tolerant of frequency over-shoot during resynchronization. clock source control for plls the clock input to arria ii gx plls comes from clock input multiplexers. the clock multiplexer inputs come from dedicated clock input pins, plls through the gclk and rclk networks, or from dedicated connections between adjacent corner and center plls. the clock input sources to corner ( pll_1, pll_2, pll_3, pll_4 ) and center plls ( pll_5 and pll _6 ) are shown in figure 5?12. the multiplexer select lines are set in the configuration file (sram object file [ .sof ] or programmer object file [ .pof ]) only. once configured, this block cannot be changed without loading a new .sof or .pof . the quartus ii software automatically sets the multiplexer select signals depending on the clock sources selected in your design. f r r fr cc cr c r fr r fwr rfr altclkctrl megafunction user guide . cascading plls the corner and center plls can be cascaded through the gclk/rclk networks. in addition, where two plls exist next to each other, there is a direct connection between them that does not require the gclk/rclk network. using this path reduces clock jitter when cascading plls. the direct pll cascading feature is available in pll_5 and pll_6 on the right side of the ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices. arria ii gx devices allow cascading of pll_1 and pll_4 to transceiver plls (cmu plls and receiver cdrs). figure 5?12. clock input multiplexer logic for arria ii gx plls notes to figure 5?12 : (1) the input clock multiplexing is controlled through a configuration file ( .sof or .pof ) only and cannot be dynamically controlled in user mode operation. (2) dedicated clock input pins to plls. n=4 for pll_4 ; n=4 or 8 for pll_3 ; and n=8 or 12 for pll_2 ; and n=12 for pll_1 . (3) the global (gclk) or regional (rclk) clock input can be driven by an output from another pll, a pin-driven global or regional clock, or through a clock control block provided the clock control block is fed by an output from another pll or a pin-driven dedicated global or regional clock. an internally generated global signal or general purpose i/o pin cannot drive the pll. 4 4 (1) (1) inclk0 inclk1 to the clock switchover block clk[n+3..n] (2) gclk / rclk input (3) adjacent pll output
5?14 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation f for more information, refer to the ?fpga fabric plls -transceiver plls cascading? section in the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . plls in arria ii gx devices arria ii gx devices offer up to 6 plls per device and 7 outputs per pll that provide robust clock management and synthesis for device clock management, external system clock management, and high-speed i/o interfaces. the nomenclature for the plls follows their geographical location in the device floor plan. refer to figure 5?1 and figure 5?2 for the location and number of plls in arria ii gx devices. 1 depending on package, arria ii gx devices offer up to 8 transceiver tx plls per device that can be used by the fpga fabric if they are not being used by the transceiver. f for more details on the number of general-purpose and transceiver tx plls in each device density, refer to the arria ii gx device family overview chapter in volume 1 of the arria ii gx device handbook . for more information on the usage of the transceiver tx plls in the transceiver block, refer to the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . all arria ii gx plls have the same core analog structure and support features. table 5?8 highlights the features of plls in arria ii gx devices. tab le 5 ?8 . arria ii gx pll features (part 1 of 2) feature arria ii gx plls c (output) counters 7 m , n , c counter sizes 1 to 512 dedicated clock outputs (1) 1 single-ended or 1 differential pair 3 single-ended or 3 differential pairs (2) clock input pins 4 single-ended or 2 differential pin pairs external feedback input pin no spread-spectrum input clock tracking yes (3) pll cascading through gclk and rclk and dedicated path between adjacent plls. cascading between the general-purpose pll and transceiver pll is supported in pll_1 and pll_4 . compensation modes all except external feedback mode when using differential i/os pll drives diffclk and loaden ye s vco output drives dpa clock yes phase shift resolution down to 96.125 ps (4) programmable duty cycle yes output counter cascading yes
chapter 5: clock networks and plls in arria ii gx devices 5?15 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx pll hardware overview figure 5?13 shows a simplified block diagram of the major components of the arria ii gx pll. 1 r r cc c rv fr r rv r r cc r r cc cr c rv cc cr c f fr r r rv c r r cc r r r r r c rv pll clock i/o pins each pll supports one of the following clock i/o pin configurations: pll_1 and pll_3 of the ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices). input clock switchover yes notes to ta bl e 5? 8 : (1) pll_5 and pll_6 do not have dedicated clock outputs. (2) the same pll clock output drives 3 single-ended or 3 differential i/o pairs. this is only supported in pll_1 and pll_3 of the ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices. (3) this is applicable only if input clock jitter is in input jitter tolerance specifications. (4) the smallest phase shift is determined by the voltage-controlled oscillator (vco) period divided by eight. for degree increments, the arria ii gx device can shift all output frequencies in increments of at least 45. smaller degree increments are possible depending on the frequency and c counter value. tab le 5 ?8 . arria ii gx pll features (part 2 of 2) feature arria ii gx plls figure 5?13. arria ii gx pll block diagram notes to figure 5?13 : (1) there are 7 pll output counters in arria ii gx devices. (2) this is the vco post-scale counter k . clock switchover block inclk0 inclk1 dedicated clock inputs cascade input from adjacent pll pfdena clkswitch clkbad0 clkbad1 activeclock pfd lock circuit locked n cp lf vco 2 (2) gclk/rclk 8 4 external clock outputs diffclk network gclk/rclk network no compensation mode zdb mode lvds compensation mode source synchronous, normal modes c0 c1 c2 c3 cn m (1) pll output multiplexer casade output to adjacent pll gclks rclks external clock outputs diffclk from right plls load_en from right plls external memory interface dll 8 8 to dpa block on left/right plls /2, /4
5?16 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 5?14 shows the clock i/o pins associated with arria ii gx plls. any of the output counters ( c[6..0] or the m counter can feed the dedicated external clock outputs, as shown in figure 5?15 . therefore, one counter or frequency can drive all output pins available from a given pll. each pin of a single-ended output pair can either be in-phase or 180-degrees out-of-phase. the quartus ii software places the not gate in your design into the ioe to implement 180 phase with respect to the other pin in the pair. the clock output pin pairs support the same i/o standards as standard output pins, as well as lvds, lvpecl, differential hstl, and differential sstl. f r wc r r r cc rfr i/o features in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . arria ii gx plls can also drive out to any regular i/o pin through the global or regional clock network. you can also use the external clock output pins as user i/o pins if external pll clocking is not needed. pll control signals you can use the three signals, pfdena, areset , and locked , to observe and control the pll operation and resynchronization. figure 5?14. external clock outputs for arria ii gx plls notes to figure 5?14 : (1) these clock output pins can be fed by any one of the c[6..0], m counters. (2) the pll<#>_clkout<#>p and pll<#>_clkout<#>n pins can be either single-ended or differential clock outputs. the arria ii gx pll only routes single-ended i/os to pll<#>clkout<#>p pins, while pll<#>_clkout<#>n pins can be used as user i/os. (3) these external clock enable signals are available only when using the altclkctrl megafunction. arria ii gx plls c2 c3 c4 c6 c5 c0 c1 internal logic pll<#>_clkout<#> (1), (2) clkena0 (3) m
chapter 5: clock networks and plls in arria ii gx devices 5?17 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 pfdena use the pfdena signal to maintain the most recent locked frequency to enable your system to store its current settings before shutting down. the pfdena signal controls the pfd output with a programmable gate. if you disable the pfd, the vco operates at its most recent set value of control voltage and frequency with some long-term drift to a lower frequency. areset the areset signal is the reset or resynchronization input for each pll. the device input pins or internal logic can drive these input signals. when areset is driven high, the pll counters reset, clearing the pll output and placing the pll out-of-lock. the vco is then set back to its nominal setting. when areset is driven low again, the pll resynchronizes to its input as it re-locks. you should include the areset signal in designs if any of the following conditions are true: 1 f cc r wr r areset signal after the input clock is stable and in specifications. locked the locked output of the pll indicates that the pll has locked onto the reference clock and the pll clock outputs are operating at the desired phase and frequency set in the quartus ii software megawizard tm plug-in manager. 1 r rc areset and locked signals in your designs to control and observe the status of your pll. f r r fr cr rfr altpll megafunction user guide . clock feedback modes arria ii gx plls support up to five different clock feedback modes. each mode allows clock multiplication and division, phase shifting, and programmable duty cycle. table 5?9 shows the clock feedback modes supported by arria ii gx plls. tab le 5 ?9 . clock feedback mode availability (part 1 of 2) clock feedback mode availability in arria ii gx devices source-synchronous mode yes no-compensation mode yes normal mode yes zero-delay buffer (zdb) mode (1) ye s
5?18 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation 1 the input and output delays are fully compensated by a pll only when using the dedicated clock input pins associated with a given pll as the clock sources. for example, when using pll_1 in normal mode, the clock delays from the input pin to the pll clock output-to-destination register are fully compensated, provided the clock input pin is one of the following four pins: clk12, clk13, clk14 , or clk15. when an rclk or gclk network drives the pll, the input and output delays may not be fully compensated in the quartus ii software. another example is when pll_1 is configured in zero delay buffer mode and the pll input is driven by a dedicated clock input pin, a fully compensated clock path results in zero delay between the clock input and one of the output clocks from the pll. if the pll input is instead fed by a non-dedicated input (using the gclk network), then the output clock may not be perfectly aligned with the input clock. source synchronous mode if data and clock arrive at the same time on the input pins, the same phase relationship is maintained at the clock and data ports of any ioe input register. figure 5?15 shows an example waveform of the clock and data in this mode. this mode is recommended for source-synchronous data transfers. data and clock signals at the ioe experience similar buffer delays as long as you use the same i/o standard. the source-synchronous mode compensates for the delay of the clock network used plus any difference in the delay between these two paths: data pin to ioe register input clock input pin to the pll pfd input lvds compensation yes (2) notes to ta bl e 5? 9 : (1) the zdb mode is using 8 ns delay for compensation in arria ii gx devices. (2) lvds compensation mode is only supported on the pll_2 , pll_3 , pll_5 , and pll_6 . tab le 5 ?9 . clock feedback mode availability (part 2 of 2) clock feedback mode availability in arria ii gx devices figure 5?15. phase relationship between clock and data in source-synchronous mode data pin pll reference clock at input pin data at register clock at register
chapter 5: clock networks and plls in arria ii gx devices 5?19 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 you can use the pll compensation assignment in the quartus ii software assignment editor to select which input pins will be used as the pll compensation targets. you can include your entire data bus, provided the input registers are clocked by the same output of a source-synchronous compensated pll. in order for the clock delay to be properly compensated, all input pins need to be on the same side of the device. the pll will compensate for the input pin with the longest pad-to-register delay among all input pins in the compensated bus. if you do not assign the pll compensation assignment, the quartus ii software will automatically select all pins driven by the compensated output of the pll as the compensation target. source-synchronous mode for lvds compensation the goal of this mode is to maintain the same data and clock timing relationship seen at the pins at the internal serdes capture register, except that the clock is inverted (180 phase shift), as shown in figure 5?16 . thus, this mode ideally compensates for the delay of the lvds clock network plus any difference in delay between these two paths: no-compensation mode in the no-compensation mode, the pll does not compensate for any clock networks. this mode provides better jitter performance because the clock feedback into the pfd passes through less circuitry. both the pll internal- and external-clock outputs are phase-shifted with respect to the pll clock input. figure 5?17 shows an example waveform of the pll clocks' phase relationship in this mode. figure 5?16. source-synchronous mode for lvds compensation data pin pll reference clock at input pin data at register clock at register
5?20 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation normal mode an internal clock in normal mode is phase-aligned to the input clock pin. the external clock-output pin has a phase delay relative to the clock input pin if connected in this mode. the quartus ii software timing analyzer reports any phase difference between the two. in normal mode, the delay introduced by the gclk or rclk network is fully compensated. figure 5?18 shows an example waveform of the pll clocks' phase relationship in this mode. figure 5?17. phase relationship between pll clocks in no compensation mode note to figure 5?17 : (1) the pll clock outputs will lag the p ll input clocks depending on routine delays. figure 5?18. phase relationship between pll clocks in normal mode note to figure 5?18 : (1) the external clock output can lead or lag the pll internal clock signals. pll reference clock at the input pin pll clock at the register clock port (1) external pll clock outputs (1) phase aligned pll clock at the register clock port dedicated pll clock outputs (1) phase aligned pll reference clock at the input pin
chapter 5: clock networks and plls in arria ii gx devices 5?21 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 zero-delay buffer mode in zero-delay buffer (zdb) mode, the external clock output pin is phase-aligned with the clock input pin for zero delay through the device. when using this mode, you must use the same i/o standard on the input clocks and output clocks to guarantee clock alignment at the input and output pins. this mode is supported on all arria ii gx plls. figure 5?19 shows an example waveform of the pll clocks' phase relationship in zdb mode. clock multiplication and division each arria ii gx pll provides clock synthesis for pll output ports using m /(n* post-scale counter) scaling factors. the input clock is divided by a pre-scale factor, n, and is then multiplied by the m feedback factor. the control loop drives the vco to match f in ( m / n ). each output port has a unique post-scale counter that divides down the high-frequency vco. for multiple pll outputs with different frequencies, the vco is set to the least common multiple of the output frequencies that meets its frequency specifications. for example, if output frequencies required from one pll are 33 and 66 mhz, then the quartus ii software sets the vco to 660 mhz (the least common multiple of 33 and 66 mhz in the vco range). then the post-scale counters scale down the vco frequency for each output port. the vco frequency reported by the quartus ii software is the value after the post-scale counter divider, k. figure 5?19. phase relationship between pll clocks in zero delay buffer mode note to figure 5?19 : (1) the internal pll clock output can lead or lag the external pll clock outputs. pll clock at the register clock port dedicated pll clock outputs (1) phase aligned pll reference clock at the input pin
5?22 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation each pll has one pre-scale counter, n , and one multiply counter, m , with a range of 1 to 512 for both m and n . the n counter does not use duty-cycle control because the only purpose of this counter is to calculate frequency division. there are seven generic post-scale counters in each pll that can feed gclks, rclks, or external clock outputs. these post-scale counters range from 1 to 512 with a 50% duty cycle setting. the high- and low-count values for each counter range from 1 to 256. the sum of the high- and low-count values chosen for a design selects the divide value for a given counter. the quartus ii software automatically chooses the appropriate scaling factors according to the input frequency, multiplication, and division values entered into the altpll megafunction. post-scale counter cascading the arria ii gx plls support post-scale counter cascading to create counters larger than 512. this is automatically implemented in the quartus ii software by feeding the output of one c counter into the input of the next c counter as shown in figure 5?20 . when cascading post-scale counters to implement a larger division of the high-frequency vco clock, the cascaded counters behave as one counter with the product of the individual counter settings. for example, if c0 = 40 and c1 = 20, then the cascaded value is c0*c1 = 800. 1 c cr cc cfr f c rcfr figure 5?20. counter cascading note to figure 5?20 : (1) n = 6 c0 c1 c2 cn c3 c4 vco output vco output vco output vco output vco output vco output (1) from preceding post-scale counter
chapter 5: clock networks and plls in arria ii gx devices 5?23 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 programmable duty cycle the programmable duty cycle allows plls to generate clock outputs with a variable duty cycle. this feature is supported on the pll post-scale counters. the duty-cycle setting is achieved by a low and high time-count setting for the post-scale counters. the quartus ii software uses the frequency input and the required multiply or divide rate to determine the duty cycle choices. the post-scale counter value determines the precision of the duty cycle. the precision is defined by 50% divided by the post-scale counter value. for example, if the c0 counter is 10, then steps of 5% are possible for duty-cycle choices between 5% to 90%. combining the programmable duty cycle with programmable phase shift allows the generation of precise non-overlapping clocks. programmable phase-shift phase shift is used to implement a robust solution for clock delays in arria ii gx devices. phase shift is implemented with a combination of the vco phase output and the counter starting time. the vco phase output and counter starting time is the most accurate method of inserting delays, because it is purely based on counter settings, which are independent of process, voltage, and temperature. you can phase-shift the output clocks from the arria ii gx plls in either of these two resolutions: c[n..0]) or the m counter to use any of the eight phases of the vco as the reference clock. this allows you to adjust the delay time with a fine resolution. the minimum delay time that you can insert using this method is defined by: where f ref is the input reference clock frequency. for example, if f ref is 100 mhz, n is 1, and m is 8, then f vco is 800 mhz and equation 5?1. fine-resolution phase shifts equation 5?2. coarse-resolution phase shifts fine = t vco = = 1 8 1 8f vco n 8mf ref coarse = = c ? 1 f (c ? 1)n mf ref v co
5?24 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation where c is the count value set for the counter delay time, (this is the initial setting in the pll usage section of the compilation report in the quartus ii software). if the initial value is 1, c ? 1 = 0 phase shift. figure 5?21 shows an example of phase-shift insertion with the fine resolution using the vco phase taps method. the eight phases from the vco are shown and labeled for reference. for this example, clk0 is based off the 0phase from the vco and has the c value for the counter set to one. the clk1 signal is divided by four, two vco clocks for high time and two vco clocks for low time. clk1 is based off the 135 phase tap from the vco and also has the c value for the counter set to one. the clk1 signal is also divided by 4. in this case, the two clocks are offset by 3 clk2 is based off the 0phase from the vco but has the c value for the counter set to three. this arrangement creates a delay of 2 scanclk cycle, allowing you to implement large phase shifts quickly. programmable bandwidth pll bandwidth is the measure of the pll's ability to track the input clock and its associated jitter. arria ii gx plls provide advanced control of the pll bandwidth using the pll loop's programmable characteristics, including loop filter and charge pump. the closed-loop gain 3-db frequency in the pll determines the pll bandwidth. the bandwidth is approximately the unity gain point for open loop pll response. figure 5?21. delay insertion using vco phase output and counter delay time t d0-1 t d0-2 1/8 t vco t vco 0 90 135 180 225 270 315 clk0 clk1 clk2 45
chapter 5: clock networks and plls in arria ii gx devices 5?25 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 spread-spectrum tracking arria ii gx devices can accept a spread-spectrum input with typical modulation frequencies. however, the device cannot automatically detect that the input is a spread-spectrum signal. instead, the input signal looks like deterministic jitter at the input of pll. arria ii gx plls can track a spread-spectrum input clock as long as the input jitter is in the pll input jitter tolerance specification. arria ii gx devices cannot internally generate spread-spectrum clocks. clock switchover the clock switchover feature allows the pll to switch between two reference input clocks. use this feature for clock redundancy or for a dual-clock domain application such as in a system that turns on the redundant clock if the previous clock stops running. your design can perform clock switchover automatically, when the clock is no longer toggling or based on a user control signal, clkswitch. the following clock switchover modes are supported in arria ii gx plls: inclk0 or inclk1. clkswitch signal in this mode. when the clkswitch signal goes from logic low to logic high, and stays high for at least three clock cycles, the reference clock to the pll is switched from inclk0 to inclk1 , or vice-versa. clkswitch signal goes high, it overrides automatic clock switchover mode. arria ii gx plls support a fully configurable clock switchover capability. figure 5?22 shows the block diagram of the switchover circuit built into the pll. when the current reference clock is not present, the clock sense block automatically switches to the backup clock for pll reference. the clock switchover circuit also sends out three status signals? clkbad[0], clkbad[1] , and activeclock ?from the pll to implement a custom switchover circuit in the logic array. you can select a clock source as the backup clock by connecting it to the inclk1 port of the pll in your design.
5?26 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation automatic clock switchover use the switchover circuitry to automatically switch between inclk0 and inclk1 when the current reference clock to the pll stops toggling. for example, in applications that require a redundant clock with the same frequency as the reference clock, the switchover state machine generates a signal ( clksw ) that controls the multiplexer select input as shown in figure 5?22 . in this case, inclk1 becomes the reference clock for the pll. when using the automatic switchover mode, you can switch back and forth between the inclk0 and inclk1 clocks any number of times, when one of the two clocks fails and the other clock is available. when using the automatic clock switchover mode, the following requirements need to be satisfied: clkbad[0:1] signals will not be valid. also, if both clock inputs are not the same frequency, but their period difference is in 100%, the clock sense block will detect when a clock stops toggling, but the pll may lose lock after the switchover is completed and need time to relock. 1 r rc r areset signal to maintain the phase relationships between the pll input and output clocks when using clock switchover. when using automatic switchover mode, the clkbad[0] and clkbad[1] signals indicate the status of the two clock inputs. when they are asserted, the clock sense block has detected that the corresponding clock input has stopped toggling. these two signals are not valid if the frequency difference between inclk0 and inclk1 is greater than 20%. figure 5?22. automatic clock switchover circuit block diagram switchover state machine clock sense n counter pfd clkswitch activeclock clkbad1 clkbad0 muxout inclk0 inclk1 refclk fbclk clksw clock switch control logic
chapter 5: clock networks and plls in arria ii gx devices 5?27 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 the activeclock signal indicates which of the two clock inputs ( inclk0 or inclk1 ) is being selected as the reference clock to the pll. when the frequency difference between the two clock inputs is more than 20%, the activeclock signal is the only valid status signal. figure 5?23 shows an example waveform of the switchover feature when using the automatic switchover mode. in this example, the inclk0 signal is stuck low. after the inclk0 signal is stuck at low for approximately two clock cycles, the clock sense circuitry drives the clkbad[0] signal high. also, because the reference clock signal is not toggling, the switchover state machine controls the multiplexer through the clksw signal to switch to the backup clock, inclk1. manual override in the automatic switchover with manual override mode, you can use the clkswitch input for user- or system-controlled switch conditions. you can use this mode for same-frequency switchover or to switch between inputs of different frequencies. for example, if inclk0 is 66 mhz and inclk1 is 200 mhz, you must control the switchover using clkswitch because the automatic clock-sense circuitry cannot monitor clock input ( inclk0, inclk1 ) frequencies with a frequency difference of more than 100% (2). this feature is useful when the clock sources originate from multiple cards on the backplane, requiring a system-controlled switchover between the frequencies of operation. you should choose the backup clock frequency and set the m, n, c , and k counters accordingly so the vco operates in the recommended operating frequency range of 600 to 1,300 mhz. the altpll megawizard plug-in manager notifies you if a given combination of inclk0 and inclk1 frequencies cannot meet this requirement. figure 5?23. automatic switchover upon loss of clock detection note to figure 5?23 : (1) switchover is enabled on the falling edge of inclk0 or inclk1 , depending on which clock is available. in this figure, switchover is enabled on the falling edge of inclk1 . inclk0 inclk1 muxout clkbad0 clkbad1 (1) activeclock
5?28 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 5?24 shows an example of a waveform illustrating the switchover feature when controlled by clkswitch . in this case, both clock sources are functional and inclk0 is selected as the reference clock. the clkswitch signal goes high, which starts the switchover sequence. on the falling edge of inclk0 , the counter's reference clock, muxout , is gated off to prevent any clock glitching. on the falling edge of inclk1 , the reference clock multiplexer switches from inclk0 to inclk1 as the pll reference, and the activeclock signal changes to indicate which clock is currently feeding the pll. in this mode, the activeclock signal mirrors the clkswitch signal. as both clocks are still functional during the manual switch, neither clkbad signal goes high. because the switchover circuit is positive-edge sensitive, the falling edge of the clkswitch signal does not cause the circuit to switch back from inclk1 to inclk0. when the clkswitch signal goes high again, the process repeats. the clkswitch signal and automatic switch only work if the clock being switched to is available. if the clock is not available, the state machine waits until the clock is available. manual clock switchover in manual clock switchover mode, the clkswitch signal controls whether inclk0 or inclk1 is selected as the input clock to the pll. by default, inclk0 is selected. a low-to-high transition on clkswitch and clkswitch being held high for at least three inclk cycles begins a clock switchover event. you must bring clkswitch back low again to perform another switchover event in the future. if you do not require another switchover event in the future, you can leave clkswitch in a logic high state after the initial switch. pulsing clkswitch high for at least three inclk cycles performs another switchover event. if inclk0 and inclk1 are different frequencies and are always running, the clkswitch minimum high time must be greater than or equal to three of the slower frequency inclk0/ inclk1 cycles. figure 5?25 shows the block diagram of the manual switchover circuit. figure 5?24. clock switchover using the clkswitch (manual) control (note 1) note to figure 5?24 : (1) both inckl0 and inclk1 must be running when the clkswitch signal goes high to start a manual clock switchover event. inclk0 inclk1 muxout clkswitch activeclock clkbad0 clkbad1
chapter 5: clock networks and plls in arria ii gx devices 5?29 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 f for more information about pll software support in the quartus ii software, refer to the altpll megafunction user guide . guidelines use the following guidelines when implementing clock switchover in arria ii gx plls. automatic clock switchover requires that the inclk0 and inclk1 frequencies be in 100% (2) of each other. failing to meet this requirement causes the clkbad[0] and clkbad[1] signals to not function properly. when using manual clock switchover, the difference between inclk0 and inclk1 can be more than 100% (2). however, differences in frequency and/or phase of the two clock sources will likely cause the pll to lose lock. resetting the pll ensures that the correct phase relationships are maintained between the input and output clocks. 1 both inclk0 and inclk1 must be running when the clkswitch signal goes high to start the manual clock switchover event. failing to meet this requirement causes the clock switchover to not function properly. applications that require a clock switchover feature and a small frequency drift should use a low-bandwidth pll. the low bandwidth pll reacts more slowly than a high-bandwidth pll to reference input clock changes. when the switchover happens, a low bandwidth pll propagates the stopping of the clock to the output more slowly than a high-bandwidth pll. however, be aware that the low-bandwidth pll also increases lock time. after a switchover occurs, there may be a finite resynchronization period for the pll to lock onto a new clock. the exact amount of time it takes for the pll to re-lock depends on the pll configuration. if the phase relationship between the input clock to the pll and the output clock from the pll is important in your design, assert areset for at least 10 ns after performing a clock switchover. to prevent clock glitches from propagating through your design during pll resynchronization or after areset is applied, use the clock enable feature of the clock control block to disable the clock network. wait for the locked signal to assert and be stable before re-enabling the output clocks from the pll at the clock control block. figure 5?25. manual clock switchover circuitry in arria ii gx plls n counter pfd fbclk clkswitch inclk0 inclk1 muxout refclk clock switch control logic
5?30 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation  figure 5?26 shows how the vco frequency gradually decreases when the current clock is lost and then increases as the vco locks on to the backup clock.  disable the system during clock switchover if it is not tolerant of frequency variations during the pll resynchronization period. you can use the clkbad[0] and clkbad[1] status signals to turn off the pfd ( pfdena = 0 ) so the vco maintains its most recent frequency. you can also use the state machine to switch over to the secondary clock. when the pfd is re-enabled, output clock-enable signals ( clkena ) can disable clock outputs during the switchover and resynchronization period. once the lock indication is stable, the system can re-enable the output clocks. pll reconfiguration phase-locked loops (plls) use several divide counters and different voltage-controlled oscillator (vco) phase taps to perform frequency synthesis and phase shifts. in arria ii gx plls, you can reconfigure both the counter settings and phase-shift the pll output clock in real time. you can also change the charge pump and loop-filter components, which dynamically affect the pll bandwidth. you can use these pll components to update the output-clock frequency and the pll bandwidth and to phase-shift in real time, without reconfiguring the entire arria ii gx device. the ability to reconfigure the pll in real time is useful in applications that operate at multiple frequencies. it is also useful in prototyping environments, allowing you to sweep pll output frequencies and adjust the output-clock phase dynamically. for instance, a system generating test patterns is required to generate and transmit patterns at 75 or 150 mhz, depending on the requirements of the device under test. reconfiguring the pll components in real time allows you to switch between two such output frequencies in a few microseconds. you can also use this feature to adjust clock-to-out (t co ) delays in real time by changing the pll output clock phase shift. this approach eliminates the need to regenerate a configuration file with the new pll settings. pll reconfiguration hardware implementation the following pll components are reconfigurable in real time:  pre-scale counter ( n)  feedback counter ( m)  post-scale output counters ( c0 - c6) figure 5?26. vco switchover operating frequency f vco primary clock stops running switchover occurs vco tracks secondary clock
chapter 5: clock networks and plls in arria ii gx devices 5?31 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1  post vco divider ( k)  dynamically adjust the charge-pump current ( icp ) and loop-filter components ( r, c ) to facilitate reconfiguration of the pll bandwidth figure 5?27 shows how pll counter settings can be dynamically adjusted by shifting their new settings into a serial shift-register chain or scan chain. serial data is input to the scan chain using the scandataport and shift registers are clocked by scanclk. the maximum scanclk frequency is 100 mhz. serial data is shifted through the scan chain as long as the scanclkena signal stays asserted. after the last bit of data is clocked, asserting the configupdate signal for at least one scanclk clock cycle causes the pll configuration bits to be synchronously updated with the data in the scan registers. f for more information about the pll reconfiguration port signals, refer to the altpll_reconfig megafunction user guide . 1 the counter settings are updated synchronously to the clock frequency of the individual counters. therefore, all counters are not updated simultaneously. the procedure to reconfigure the pll counters is shown below: 1. the scanclkena signal is asserted at least one scanclk cycle prior to shifting in the first bit of scandata ( dn). 2. serial data ( scandata ) is shifted into the scan chain on the 2nd rising edge of scanclk. 3. after all 180 bits are scanned into the scan chain, the scanclkena signal is de- asserted to prevent inadvertent shifting of bits in the scan chain. figure 5?27. pll reconfiguration scan chain notes to figure 5?27 : (1) the arria ii gx plls support c0 - c6 counters. (2) i = 6 (3) this figure shows the corresponding scan register for the k count er in between the scan registers for the charge pump and lo op filter. the k counter is physically located after the vco. /ci (2) /ci-1 /c2 /c1 /c0 /m /n scanclk scandone scandata lf/k/cp (3) configupdate inclk pfd vco scanclkena scandataout from m counter from n counter
5?32 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation 4. the configupdate signal is asserted for one scanclk cycle to update the pll counters with the contents of the scan chain. 5. the scandone signal goes high indicating the pll is being reconfigured. a falling edge indicates the pll counters are updated with new settings. 6. reset the pll using the areset signal if you make any changes to the m or n counters or the icp, r, or c settings. 7. steps 1-5 can be repeated to reconfigure the pll any number of times. figure 5?28 shows a functional simulation of the pll reconfiguration feature. 1 rcfr cr cc frc c rcfr crr cr f rfc rcfr f r c f rcfr rfc f rcfr cr frc w r f fr cc rcfr f fr rcfr cr cc frc post-scale counters (c0 to c6) the multiply or divide values and duty cycle of post-scale counters can be reconfigured in real time. each counter has an 8-bit high-time setting and an 8-bit low-time setting. the duty cycle is the ratio of output high- or low-time to the total cycle time, which is the sum of the two. additionally, these counters have two control bits, rbypass , for bypassing the counter, and rselodd , to select the output clock duty cycle. when the rbypass bit is set to 1, it bypasses the counter, resulting in a divide by 1. when this bit is set to 0, the high- and low-time counters are added to compute the effective division of the vco output frequency. for example, if the post-scale divide factor is 10, the high- and low-count values could be set to 5 and 5, respectively, to achieve a 50-50% duty cycle. the pll implements this duty cycle by transitioning the output clock from high to low on the rising edge of the vco output clock. however, a 4 and 6 setting for the high- and low-count values, respectively, would produce an output clock with a 40-60% duty cycle. figure 5?28. pll reconfiguration waveform scandata scanclk scanclkena scandataout configupdate scandone areset dn_old d0_old dn d0 dn
chapter 5: clock networks and plls in arria ii gx devices 5?33 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 the rselodd bit indicates an odd divide factor for the vco output frequency along with a 50% duty cycle. for example, if the post-scale divide factor is 3, the high- and low-time count values could be set to 2 and 1, respectively, to achieve this division. this implies a 67%-33% duty cycle. if you need a 50%-50% duty cycle, you can set the rselodd control bit to 1 to achieve this duty cycle despite an odd division factor. the pll implements this duty cycle by transitioning the output clock from high to low on a falling edge of the vco output clock. when you set rselodd = 1, you subtract 0.5 cycles from the high time and you add 0.5 cycles to the low time. for example: rselodd = 1 effectively equals: scan chain description arria ii gx plls have a 180-bit scan chain. table 5?10 shows the number of bits for each component of an arria ii gx pll. table 5?10. arria ii gx pll reprogramming bits block name number of bits total counter other (1) c6 (2) 16 2 18 c5 16 2 18 c4 16 2 18 c3 16 2 18 c2 16 2 18 c1 16 2 18 c0 16 2 18 m1 6 2 1 8 n1 6 2 1 8 charge pump current 0 3 3 vco post-scale divider (k) 1 0 1 loop filter capacitor (3) 022 loop filter resistor 0 5 5 unused cp/lf 0 7 7 total number of bits ? ? 180 notes to ta bl e 5? 10 : (1) includes two control bits, rbypass , for bypassing the counter, and rselodd , to select the output clock duty cycle. (2) lsb bit for c6 low-count value is the first bit shifted into the scan chain for left/right plls. (3) msb bit for loop filter is the last bit shifted into the scan chain.
5?34 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 5?29 shows the scan chain order of arria ii gx pll components which have 7 post-scale counters. the reconfiguration bits start with the c6 post-scale counter. figure 5?30 shows the scan-chain bit-order sequence for post-scale counters in all arria ii gx plls. charge pump and loop filter you can reconfigure the charge-pump and loop-filter settings to update the pll bandwidth in real time. table 5?11 through table 5?13 show the possible settings for charge pump current ( icp ), loop-filter resistor (r ), and capacitor ( c ) values for arria ii gx plls. figure 5?29. scan-chain order of pll components for arria ii gx plls datain msb lf k cp lsb n m c0 c1 c2 c3 c4 c5 c6 dataout figure 5?30. scan-chain bit-order sequence for post-scale counters in arria ii gx plls datain rbypass hb 7 hb 6 hb 5 hb 4 hb 3 hb 2 hb 1 hb 0 rselodd lb 7 lb 6 lb 5 lb 4 lb 3 lb 2 lb 1 lb 0 dataout table 5?11. charge_pump_current bit settings cp[2] cp[1] cp[0] decimal value for setting 000 0 001 1 011 3 111 7 table 5?12. loop_filter_r bit settings (part 1 of 2) lfr[4] lfr[3] lfr[2] lfr[1] lfr[0] decimal value for setting 00000 0 00011 3 00100 4
chapter 5: clock networks and plls in arria ii gx devices 5?35 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 bypassing pll bypassing a pll counter results in a multiply ( m counter) or a divide ( n and c0 to c6 counters) factor of one. table 5?14 shows the settings for bypassing the counters in arria ii gx plls. f r r fr w c c rfr altpll_reconfig megafunction user guide . 1 f cr 1 c v r r c cr k ), set the corresponding bit to 0. 01000 8 10000 16 10011 19 10100 20 11000 24 11011 27 11100 28 11110 30 table 5?13. loop_filter_c bit settings lfc[1] lfc[0] decimal value for setting 000 011 113 table 5?14. pll counter settings pll scan chain bits [0..8] settings lsb (2) msb (1) description 0 xxxxxxx1 (3) pll counter bypassed x xxxxxxx0 (3) pll counter not bypassed because bit 8 ( msb ) is set to 0 notes to ta bl e 5? 14 : (1) most significant bit (msb) (2) least significant bit (lsb). (3) counter-bypass bit. table 5?12. loop_filter_r bit settings (part 2 of 2) lfr[4] lfr[3] lfr[2] lfr[1] lfr[0] decimal value for setting
5?36 chapter 5: clock networks and plls in arria ii gx devices plls in arria ii gx devices arria ii gx device handbook volume 1 ? february 2009 altera corporation dynamic phase-shifting the dynamic phase-shifting feature allows the output phases of individual pll outputs to be dynamically adjusted relative to each other and to the reference clock without the need to send serial data through the scan chain of the corresponding pll. this feature simplifies the interface and allows you to quickly adjust clock-to-out (t co ) delays by changing the output clock phase-shift in real time. this adjustment is achieved by incrementing or decrementing the vco phase-tap selection to a given c counter or to the m counter. the phase is shifted by 1/8 of the vco frequency at a time. the output clocks are active during this phase-reconfiguration process. table 5?15 shows the control signals that are used for dynamic phase-shifting. table 5?16 shows the pll counter selection based on the corresponding phasecounterselect setting. table 5?15. dynamic phase-shifting control signals signal name description source destination phasecounter select[3:0] counter select. four bits decoded to select either the m or one of the c counters for phase adjustment. one address maps to select all c counters. this signal is registered in the pll on the rising edge of scanclk . logic array or i/o pins pll reconfiguration circuit phaseupdown selects dynamic phase shift direction; 1= up; 0= down. signal is registered in the pll on the rising edge of scanclk . logic array or i/o pin pll reconfiguration circuit phasestep logic high enables dynamic phase shifting. logic array or i/o pin pll reconfiguration circuit scanclk free running clock from core used in combination with phasestep to enable/disable dynamic phase shifting. shared with scanclk for dynamic reconfiguration. gclk/rclk or i/o pin pll reconfiguration circuit phasedone when asserted, it indicates to core-logic that the phase adjustment is complete and pll is ready to act on a possible second adjustment pulse. asserts based on internal pll timing. de-asserts on rising edge of scanclk . pll reconfiguration circuit logic array or i/o pins table 5?16. phase counter select mapping phasecounterselect[3] [2] [1] [0] selects 0 0 0 0 all output counters 00 0 1 m counter 00 1 0 c0 counter 00 1 1 c1 counter 01 0 0 c2 counter 01 0 1 c3 counter 01 1 0 c4 counter 01 1 1 c5 counter 10 0 0 c6 counter
chapter 5: clock networks and plls in arria ii gx devices 5?37 plls in arria ii gx devices ? february 2009 altera corporation arria ii gx device handbook volume 1 the procedure to perform one dynamic phase-shift step is as follows: 1. set phaseupdown and phasecounterselect as required. 2. assert phasestep for at least two scanclk cycles. each phasestep pulse enables one phase shift. 3. de-assert phasestep. 4. wait for phasedone to go high. 5. repeat steps 1-4 as many times as required to perform multiple phase-shifts. all signals are synchronous to scanclk and must meet tsu/th requirements with respect to scanclk edges. they are latched on scanclk edges and must meet tsu/th requirements with respect to scanclk edges. 1 c f c r f r wr frc 1 cc frc 1 rfr c f c 1 f r f cc 1 r wr f f phasestep signal is latched on the negative edge of scanclk . in figure 5?31 , this is shown by the second scanclk falling edge. phasestep must stay high for at least two scanclk cycles. on the second scanclk rising edge after phasestep is latched (the fourth scanclk rising edge in figure 5?31 ), the values of phaseupdown and phasecounterselect are latched and the pll starts dynamic phase-shifting for the specified counters and in the indicated direction. on the fourth scanclk rising edge, phasedone goes high to low and remains low until the pll finishes dynamic phase-shifting. you can perform another dynamic phase-shift after the phasedone signal goes from low to high. figure 5?31. dynamic phase shifting waveform scanclk phasestep phaseupdown phasecounterselect phasedone phasedone goes low synchronous with scanclk ab cd
5?38 chapter 5: clock networks and plls in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation depending on the vco and scanclk frequencies, phasedone low time may be greater than or less than one scanclk cycle. f r wr r rfr altpll_reconfig megafunction user guide . pll specifications f fr arria ii gx device data sheet chapter in volume 3 of the arria ii gx device handbook for information about pll timing specifications. document revision history table 5?17 shows the revision history for this document. table 5?17. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
? march 2009 altera corporation arria ii gx device handbook volume 1 section ii. i/o interfaces this section provides information on arria ? ii gx device i/o features, external memory interfaces, and high-speed differential interfaces with dpa. this section includes the following chapters: revision history refer to each chapter for its own specific revision history. for information on when each chapter was updated, refer to the chapter revision dates section, which appears in this volume.
ii?2 section ii: i/o interfaces arria ii gx device handbook volume 1 ? march 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 6. i/o features in arria ii gx devices this chapter provides guidelines for using industry i/o standards in arria ? ii gx devices, including i/o features, i/o standards and structure, i/o banks, and design considerations. this chapter includes the following sections: introduction this chapter contains feature definitions of arria ii gx i/o elements (ioes). it provides details about how an ioe works and its features. arria ii gx i/os support a wide range of features: aiigx51006-1.0
6?2 chapter 6: i/o features in arria ii gx devices arria ii gx i/o standards support arria ii gx device handbook volume 1 ? february 2009 altera corporation  programmable pre-emphasis  programmable voltage output differential (v od ) arria ii gx i/o standards support table 6?1 shows the supported i/o standards for arria ii gx devices and the typical values for input and output v ccio , v ccpd , v ref , and board v tt . f for detailed electrical characteristics of each i/o standard, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook . tab le 6 ?1 . arria ii gx i/o standards and voltage levels (note 1) , (2) i/o standard standard support v cc io (v) v ccpd (v) v ref (v) v tt (v) input operation output operation 3.3-v lvttl/3.3-v lvcmos jesd8-b 3.3/3.0/2.5 3.3 3.3 ? ? 3.0-v lvttl/3.0-v lvcmos jesd8-b 3.3/3.0/2.5 3.0 3.0 ? ? 2.5-v lvttl/lvcmos jesd8-5 3.3/3.0/2.5 2.5 2.5 ? ? 1.8-v lvttl/lvcmos jesd8-7 1.8/1.5 1.8 2.5 ? ? 1.5-v lvcmos jesd8-11 1.8/1.5 1.5 2.5 ? ? 1.2-v lvcmos jesd8-12 1.2 1.2 2.5 ? ? 3.0-v pci pci rev 2.2 3.0 3.0 3.0 ? ? 3.0-v pci-x (1) pci-x rev 1.0 3.0 3.0 3.0 ? ? sstl-2 class i and class ii jesd8-9b (2) 2.5 2.5 1.25 1.25 sstl-18 class i and class ii jesd8-15 (2) 1.8 2.5 0.90 0.90 sstl-15 class i ? (2) 1.5 2.5 0.75 0.75 hstl-18 class i and class ii jesd8-6 (2) 1.8 2.5 0.90 0.90 hstl-15 class i and class ii jesd8-6 (2) 1.5 2.5 0.75 0.75 hstl-12 class i and class ii jesd8-16a (2) 1.2 2.5 0.6 0.6 differential sstl-2 jesd8-9b (2) , (3) 2.5 2.5 ? 1.25 differential sstl-18 jesd8-15 (2) , (3) 1.8 2.5 ? 0.90 differential sstl-15 ? (2) , (3) 1.5 2.5 ? 0.75 differential hstl-18 jesd8-6 (2) , (3) 1.8 2.5 ? 0.90 differential hstl-15 jesd8-6 (2) , (3) 1.5 2.5 ? 0.75 differential hstl-12 jesd8-16a (2) , (3) 1.2 2.5 ? 0.60 lvds ansi/tia/ eia-644 (2) 2.5 2.5 ? ? rsds and mini-lvds ? ? 2.5 2.5 ? ? lvpecl ? 2.5 ? 2.5 ? ? blvds ? 2.5 2.5 2.5 ? ? notes to ta bl e 6? 1 : (1) pci-x does not meet the pci-x iv curve requirement at the linear region. (2) single-ended sstl/hstl, differential sstl/hstl, and lvds input buffers are powered by v ccpd . (3) differential sstl/hstl inputs use lvds differential input buffers without on-chip r d support.
chapter 6: i/o features in arria ii gx devices 6?3 arria ii gx i/o banks ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx i/o banks arria ii gx devices contain up to 16 i/o banks, as shown in figure 6?1 . the left side i/o banks contain high-speed transceiver banks, with dedicated configuration banks at banks 3c and 8c. the rest of the banks are user i/o banks. all user i/o banks support all single-ended and differential i/o standards. figure 6?1. arria ii gx devices i/0 banks (note 1) , (2) , (3) , (4) , (5) , (6) notes to figure 6?1 : (1) banks gxb0, gxb1, gxb2, and gxb3 are dedicated banks for high-speed transceiver i/os. (2) banks 3c and 8c are dedicated configuration banks and do not have user i/o pins. (3) lvds with dpa is supported at banks 5a, 5b, 6a, and 6b. (4) differential hstl and sstl inputs use lvds differential input buffers without differential oct support. (5) differential hstl and sstl outputs are not true differential outputs. they use two single-ended outputs with the second output programmed as inverted. (6) figure 6?1 is a top view of the silicon die that corresponds to a reverse view for flip chip packages. it is a graphical representation o nly. gxb3 gxb2 gxb1 gxb0 bank 3c bank 3b bank 4b bank 4a bank 3a bank 6b bank 6a bank 5a bank 5b bank 8c bank 8b bank 7b bank 7a bank 8a these i/o banks support: 3.3-v lvttl/lvcmos, 3.0-v lvttl/lvcmos, 2.5-v lvttl/lvcmos, 1.8-v lvttl/lvcmos, 1.5-v lvcmos, 1.2-v lvcmos, dedicated lvds, pseudo lvds, rsds, mini-lvds, sstl-2, sstl-18, sstl-15, hstl-18, hstl-15, hstl-12, differential sstl-2, differenital sstl-18, differential sstl-15, differential hstl-18, differential hstl-15, and differential hstl-12
6?4 chapter 6: i/o features in arria ii gx devices arria ii gx i/o banks arria ii gx device handbook volume 1 ? february 2009 altera corporation modular i/o banks the i/o pins in arria ii gx devices are arranged in groups called modular i/o banks. depending on device densities, the number of i/o banks range from 6 to 12, while the number of transceiver banks range from 1 to 4. table 6?2 shows the number of i/o pins available in each i/o bank. in arria ii gx devices, the maximum number of i/o banks per side is four, excluding the configuration banks. all arria ii gx devices support migration across device density and package. when migrating between devices with a different number of i/o banks per side, it is the "b" bank which is removed or inserted. for example, when moving from a 12-bank device to an 8-bank device, the banks that are dropped are "b" banks, namely: 3b, 5b, 6b, and 8b. similarly, when moving from an 8-bank device to a 12-bank device, the banks that are added are "b" banks, namely: 3b, 5b, 6b, and 8b. during migration from a smaller device to a larger device, the bank size increases or remains the same but never decreases. figure 6?3 shows pin migration across device densities and packages. tab le 6 ?2 . arria ii gx available i/o pins in each i/o bank (note 1) package device bank tot al 3a 3b 4a 4b 5a 5b 6a 6b 7a 7b 8a 8b 358-pin flip chip ubga 2agx20 22 ? 38 ? 18 ? 18 ? 38 ? 22 ? 156 2agx30 22 ? 38 ? 18 ? 18 ? 38 ? 22 ? 156 2agx45 22 ? 38 ? 18 ? 18 ? 38 ? 22 ? 156 2agx65 22 ? 38 ? 18 ? 18 ? 38 ? 22 ? 156 572-pin flip chip fbga 2agx20 38 ? 38 ? 50 ? 50 ? 38 ? 38 ? 252 2agx30 38 ? 38 ? 50 ? 50 ? 38 ? 38 ? 252 2agx45 38 ? 38 ? 50 ? 50 ? 38 ? 38 ? 252 2agx65 38 ? 38 ? 50 ? 50 ? 38 ? 38 ? 252 2agx95 38 ? 42 ? 50 ? 50 ? 38 ? 42 ? 260 2agx125 38 ? 42 ? 50 ? 50 ? 38 ? 42 ? 260 780-pin flip chip fbga 2agx45 54 ? 70 ? 66 ? 50 ? 70 ? 54 ? 364 2agx65 54 ? 70 ? 66 ? 50 ? 70 ? 54 ? 364 2agx95 54 ? 74 ? 66 ? 50 ? 70 ? 58 ? 372 2agx125 54 ? 74 ? 66 ? 50 ? 70 ? 58 ? 372 2agx190 54 ? 74 ? 66 ? 50 ? 70 ? 58 ? 372 2agx260 54 ? 74 ? 66 ? 50 ? 70 ? 58 ? 372 1152-pin flip chip fbga 2agx95 70 ? 74 16 66 ? 66 ? 70 16 74 ? 452 2agx125 70 ? 74 16 66 ? 66 ? 70 16 74 ? 452 2agx190703274326632663270327432 612 2agx260703274326632663270327432 612 note to tab l e 6 ?2 : (1) the number of i/o pins do not include transceiver pins.
chapter 6: i/o features in arria ii gx devices 6?5 arria ii gx i/o structure ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx i/o structure the i/o element in arria ii gx devices contains a bidirectional i/o buffer and i/o registers to support a completely embedded bidirectional sdr or ddr transfer. the ioes are located in i/o blocks around the periphery of the arria ii gx device. there are up to four ioes per row i/o block and four ioes per column i/o block. the arria ii gx bidirectional ioe supports these features: tab le 6 ?3 . arria ii gx pin migration across densities package pin type device 2agx20 2agx30 2agx45 2agx65 2agx95 2agx125 2agx190 2agx260 358-pin flip chip ubga i/o 144 144 144 144 ???? clock12121212???? xcvr channel 4444 ???? 572-pin flip chip fbga i/o 240 240 240 240 248 248 ?? clock121212121212?? xcvr channel 4 48888 ?? 780-pin flip chip fbga i/o ?? 352 352 360 360 360 360 clock??121212121212 xcvr channel ?? 8 8 12 12 12 12 1152-pin flip chip fbga i/o ???? 440 440 600 600 clock????12121212 xcvr channel ???? 12 12 16 16 note to tab l e 6 ?3 : (1) each transceiver channel consists of two tx pins, two rx pins and a transceiver clock pin.
6?6 chapter 6: i/o features in arria ii gx devices arria ii gx i/o structure arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 6?2 shows the arria ii gx ioe structure. f r r fr rr w r fr r c rfr external memory interfaces in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . 3.3-v i/o interface arria ii gx i/o buffers are fully compatible with 3.3-v i/o standards. you can use them as transmitters or receivers in your system. the output high voltage (v oh ), output low voltage (v ol ), input high voltage (v ih ), and input low voltage (v il ) levels meet the 3.3-v i/o standard specifications defined by eia/jedec standard jesd8-b with margin when the arria ii gx v ccio voltage is powered by 3.3 v or 3.0 v. figure 6?2. arria ii gx ioe structure oe from core open drain on-chip termination bus-hold circuit programmable current strength and slew rate control pci clamp v ccio v ccio programmable pull-up resistor write data from core synchronization registers prn dq prn dq prn dq prn dq prn dq oe register oe register output register output register clkout to core to core input register prn d q input register prn d q input register clkin read data to core from oct calibration block output buffer input buffer dqs cqn
chapter 6: i/o features in arria ii gx devices 6?7 arria ii gx i/o structure ? february 2009 altera corporation arria ii gx device handbook volume 1 to ensure device reliability and proper op eration when interfacing with a 3.3-v i/o system using arria ii gx devices, it is important to ensure that the absolute maximum ratings are not violated. altera recommends performing ibis simulation to determine that the overshoot and undershoot voltages are in the guidelines. there are several techniques that you can use to limit overshoot and undershoot voltages, though none are required. when using the arria ii gx device as a transmitter, techniques to limit overshoot and undershoot at the i/o pins include using slow slew rate and series termination. transmission line effects that cause large voltage deviations at the receiver are associated with an impedance mismatch between the driver and transmission line. by matching the impedance of the driver to the characteristic impedance of the transmission line, you can significantly reduce overshoot voltage. you can use a series termination resistor placed physically close to the driver to match the total driver impedance to transmission line impedance. other than 3.3-v lvttl and 3.3-v lvcmos i/o standards, arria ii gx devices support series on-chip termination for all lvttl/lvcmos i/o standards in all i/o banks. when using the arria ii gx device as a receiver, a technique you can use to limit overshoot, though not required, is using a clamping diode (on-chip or off-chip termination). arria ii gx devices provide an optional on-chip pci clamp diode for i/o pins. you can use this diode to protect i/o pins against overshoot voltage. another method for limiting overshoot is reducing the bank supply voltage (v ccio ) to 3.0 v. in this method, the clamp diode (on-chip or off-chip termination), though not required, can sufficiently clamp overshoot voltage to in the dc- and ac-input voltage specification. the clamped voltage can be expressed as the sum of the supply voltage (v ccio ) and the diode forward voltage. by lowering v ccio to 3.0 v, you can reduce overshoot and undershoot for all i/o standards, including 3.3-v lvttl/lvcmos, 3.0-v lvttl/lvcmos, and 3.0-v pci/pci-x. additionally, lowering v ccio to 3.0 v reduces power consumption. f r r fr r w vr r r rfr device data sheet chapter in volume 3 of the arria ii gx device handbook . external memory interfaces in addition to i/o registers in each ioe, arria ii gx devices also have dedicated registers and phase-shift circuitry on all i/o banks for interfacing with external memory interfaces. f r r fr r r rfc rfr external memory interfaces in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook. high-speed differential i/o with dpa support arria ii gx devices have the following dedicated circuitry for high-speed differential i/o support:
6?8 chapter 6: i/o features in arria ii gx devices arria ii gx i/o structure arria ii gx device handbook volume 1 ? february 2009 altera corporation  data realignment circuitry  dynamic phase aligner (dpa)  synchronizer (fifo buffer)  phase-locked loops (plls) f for more information about dpa support, refer to the high-speed differential i/o interfaces with dpa in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . programmable current strength the output buffer for each arria ii gx device i/o pin has a programmable current-strength control for certain i/o standards. you can use programmable current strength to mitigate the effects of high signal attenuation due to a long transmission line or a legacy backplane. the lvttl, lvcmos, sstl, and hstl standards have several levels of current strength that you can control. table 6?4 lists the programmable current strength settings. tab le 6 ?4 . programmable current strength settings (note 1) i/o standard i ol / i oh current strength setting (ma) for top, bottom, and right i/o pins 3.3-v lvttl (2) 12, [8], 4 3.3-v lvcmos (2) [2] 3.0-v lvttl 16, 12, 8, 4 3.0-v lvcmos 16, 12, 8, 4 2.5-v lvttl/lvcmos 16, 12, 8, 4 1.8-v lvttl/lvcmos 16, 12, 10, 8, 6, 4, 2 1.5-v lvcmos 16, 12, 10, 8, 6, 4, 2 1.2-v lvcmos 12, 10, 8, 6, 4, 2 sstl-2 class i 12, 8 sstl-2 class ii 16 sstl-18 class i 12, 10, 8 sstl-18 class ii 16, 12 sstl-15 class i 12, 10, 8 hstl-18 class i 12, 10, 8 hstl-18 class ii 16 hstl-15 class i 12, 10, 8 hstl-15 class ii 16 hstl-12 class i 12, 10, 8 hstl-12 class ii 16 notes to ta bl e 6? 4 : (1) the default current strength setting in the quartus ? ii software is 50- oct r s without calibration for all non-voltage reference and hstl/sstl class i i/o standards. the default setting is 25- oct r s without calibration for hstl/sstl class ii i/o standards. (2) the default current strength setting in the quartus ii software is the current strength, shown in brackets [].
chapter 6: i/o features in arria ii gx devices 6?9 arria ii gx i/o structure ? february 2009 altera corporation arria ii gx device handbook volume 1 1 altera recommends performing ibis or spice simulations to determine the right current strength setting for your specific application. programmable slew rate control the output buffer for each arria ii gx device regular- and dual-function i/o pin has a programmable output slew rate control that you can configure for low-noise or high-speed performance. a faster slew rate provides high-speed transitions for high-performance systems. a slow slew rate can help reduce system noise, but adds a nominal delay to the rising and falling edges. each i/o pin has an individual slew rate control, allowing you to specify the slew rate on a pin-by-pin basis. 1 you cannot use the programmable slew rate feature when using oct r s . the quartus ii software allows two settings for programmable slew rate control: fast and slow. in the quartus ii assignment editor, setting 2 = fast, and 0 = slow. programmable slew rate is available for 8 ma current strength and above. you can use faster slew rates to improve the available timing margin in memory-interface applications or when the output pin has high-capacitive loading. altera recommends performing ibis or spice simulations to determine the right slew rate setting for your specific application. open-drain output arria ii gx devices provide an optional open-drain output (equivalent to an open collector output) for each i/o pin. when configured as open drain, the logic value of the output is either high-z or 0. typically, an external pull-up resistor is needed to provide logic high. bus hold each arria ii gx device i/o pin provides an optional bus-hold feature. bus-hold circuitry can weakly hold the signal on an i/o pin at its last-driven state. because the bus-hold feature holds the last-driven state of the pin until the next input signal is present, you do not need an external pull-up or pull-down resistor to hold a signal level when the bus is tri-stated. bus-hold circuitry also pulls non-driven pins away from the input threshold voltage where noise can cause unintended high-frequency switching. you can select this feature individually for each i/o pin. the bus-hold output drives no higher than v ccio to prevent over-driving signals. if you enable the bus-hold feature, you cannot use the programmable pull-up option. the bus-hold feature is disabled if the i/o pin is configured for differential signals. bus-hold circuitry uses a resistor with a nominal resistance to weakly pull the last-driven state. bus-hold circuitry is active only after configuration. when going into user mode, the bus-hold circuit captures the value on the pin present at the end of configuration.
6?10 chapter 6: i/o features in arria ii gx devices arria ii gx i/o structure arria ii gx device handbook volume 1 ? february 2009 altera corporation programmable pull-up resistor each arria ii gx device i/o pin provides an optional programmable pull-up resistor during user mode. if you enable this feature for an i/o pin, the pull-up resistor weakly holds the i/o to the v ccio level. programmable pull-up resistors are only supported on user i/o pins and are not supported on dedicated configuration pins, jtag pins, or dedicated clock pins. if you enable the programmable pull-up option, you cannot use the bus-hold feature. programmable pre-emphasis arria ii gx iv lvds transmitters support programmable pre-emphasis to compensate the frequency dependent attenuation of the transmission line. the quartus ii software allows two settings for programmable pre-emphasis control?0 and 1?where 0 is pre-emphasis off and 1 is pre-emphasis on. the default setting is 1. f r r fr rr r rfr high-speed differential i/o interfaces with dpa in the arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . programmable differential output voltage arria ii gx lvds transmitters support programmable v od . programmable v od settings allow you to adjust output eye height to optimize trace length and power consumption. a higher v od swing improves voltage margins at the receiver end, while a smaller v od swing reduces power consumption. the quartus ii software allows three settings for programmable v od : low, medium, and high. f r r fr rr rfr high-speed differential i/o interfaces with dpa in the arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . multivolt i/o interface arria ii gx architecture supports the multivolt i/o interface feature that allows arria ii gx devices in all packages to interface with systems of different supply voltages. you can connect the vccio pins to a 1.2-, 1.5-, 1.8-, 2.5-, 3.0-, or 3.3-v power supply, depending on the output requirements. the output levels are compatible with systems of the same voltage as the power supply. (for example, when vccio pins are connected to a 1.5-v power supply, the output levels are compatible with 1.5-v systems). arria ii gx vccpd power pins must be connected to a 2.5-, 3.0-, or 3.3-v power supply. using these power pins to supply pre-driver power to the output buffers increases the performance of the output pins. table 6?5 summarizes arria ii gx multivolt i/o support.
chapter 6: i/o features in arria ii gx devices 6?11 arria ii gx oct support ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx oct support arria ii gx devices feature series on-chip termination to provide i/o impedance matching and termination capabilities. on-chip termination maintains signal quality, saves board space, and reduces external component costs. arria ii gx devices support on-chip series (r s ) with or without calibration and on-chip differential termination (r d ) for differential lvds i/o standards. arria ii gx devices support oct in all user i/o banks by selecting one of the oct i/o standards. arria ii gx devices support oct r s in the same i/o bank with different i/o standards if they use the same v ccio supply voltage. you can independently configure each i/o in an i/o bank to support oct r s or programmable current strength. 1 c cfr rr crr r fr ffr r f r v v fr r cr r r rcv w wr r c r r fc rr f cr crc fr cr r cc r rcv r r on-chip series (r s ) termination without calibration arria ii gx devices support driver-impedance matching to provide the i/o driver with controlled output impedance that closely matches the impedance of the transmission line. as a result, you can significantly reduce reflections. arria ii gx devices support on-chip series termination for single-ended i/o standards (see figure 6?3 ). the r s shown in figure 6?3 is the intrinsic impedance of output transistors. the typical r s values are 25 tab le 6 ?5 . arria ii gx multivolt i/o support (note 1) , (2) vccio (v) input signal (v) output signal (v) 1.2 1.5 1.8 2.5 3.0 3.3 1.2 1.5 1.8 2.5 3.0 3.3 1.2 v ?? ??? v ????? 1.5 ? vv ?? ? ? v ???? 1.8 ? vv ?? ? ? ? v ??? 2.5 ? ? ? vv ???? v ?? 3.0 ? ? ? vv ????? v ? 3.3 ? ? ? vv v ????? v notes to ta bl e 6? 5 : (1) the pin current may be slightly higher than the default value. you must verify that the driving device?s v ol maximum and v oh minimum voltages do not violate the applicable arria ii gx v il maximum and v ih minimum voltage specifications. (2) altera recommends that you use an external clamp diode on the column i/o pins when the input signal is 3.0 v or 3.3 v.
6?12 chapter 6: i/o features in arria ii gx devices arria ii gx oct support arria ii gx device handbook volume 1 ? february 2009 altera corporation to use on-chip termination for: 50- on-chip series termination setting, thus eliminating the external 25- 5- on-chip series termination setting (to match the 50- on-chip series termination with calibration arria ii gx devices support on-chip series termination with calibration in all banks. the on-chip series termination calibration circuit compares the total impedance of the i/o buffer to the external 25- r up and r dn pins, and dynamically enables or disables the transistors until they match. the r s shown in figure 6?4 is the intrinsic impedance of transistors. calibration occurs at the end of device configuration. when the calibration circuit finds the correct impedance, it powers down and stops changing the characteristics of the drivers. table 6?6 lists the i/o standards that support on-chip series termination with calibration. figure 6?3. arria ii gx on-chip series termination without calibration figure 6?4. arria ii gx on-chip series termination with calibration arria ii gx driver series termination receiving device v ccio r s r s gnd = 50 z o arria ii gx driver series termination receiving device v ccio r s r s gnd = 50 z o
chapter 6: i/o features in arria ii gx devices 6?13 arria ii gx oct support ? february 2009 altera corporation arria ii gx device handbook volume 1 lvds input on-chip termination (r d ) all i/o banks in arria ii gx devices support input differential on-chip termination r d with a nominal resistance value of 100 tab le 6 ?6 . selectable i/o standards with on-chip series termination with calibration i/o standard on-chip series termination setting right i/o top and bottom i/o unit 3.0-v lvttl/lvcmos 50 50 25 25 2.5-v lvttl/lvcmos 50 50 25 25 1.8-v lvttl/lvcmos 50 50 25 25 1.5-v lvcmos 50 50 25 25 1.2-v lvcmos 50 50 25 25 sstl-2 class i 50 50 sstl-2 class ii 25 25 sstl-18 class i 50 50 sstl-18 class ii 25 25 sstl-15 class i 50 50 hstl-18 class i 50 50 hstl-18 class ii 25 25 hstl-15 class i 50 50 hstl-15 class ii 25 25 hstl-12 class i 50 50 hstl-12 class ii 25 25 figure 6?5. differential input on-chip termination transmitter receiver 100 = 50 z o = 50 z o
6?14 chapter 6: i/o features in arria ii gx devices arria ii gx oct calibration arria ii gx device handbook volume 1 ? february 2009 altera corporation f for more information about differential on-chip termination, refer to the high-speed differential i/o interfaces with dpa in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook. arria ii gx oct calibration arria ii gx devices support calibrated on-chip series termination (r s ) on all i/o pins. you can calibrate the arria ii gx i/o bank with any of the three oct calibration blocks (cb) available in the devices. oct calibration block the three oct calibration blocks reside in the top-left, top-right, and bottom-left corners of the device. an oct calibration block has the same v ccio as the i/o bank that contains the block. oct r s calibration is supported on all user i/o banks with different v ccio voltage standards, up to the number of available oct calibration blocks. you can configure i/o banks to receive calibrated codes from any oct calibration block with the same v ccio . all i/o banks with the same v ccio can share one oct calibration block, even if that particular i/o bank has an oct calibration block. arria ii gx termination schemes for i/o standards the following section describes the different termination schemes for i/o standards used in arria ii gx devices. single-ended i/o standards termination voltage-referenced i/o standards require both an input reference voltage, v ref , and a termination voltage, v tt . the reference voltage of the receiving device tracks the termination voltage of the transmitting device. figure 6?6 shows the details of sstl i/o termination on arria ii gx devices.
chapter 6: i/o features in arria ii gx devices 6?15 arria ii gx termination schemes for i/o standards ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 6?7 shows the details of hstl i/o termination on arria ii gx devices. figure 6?6. arria ii gx sstl i/o standard termination sstl class i sstl class ii external on-board termination oct transmit v tt 50 25 50 v tt 50 25 50 v tt 50 transmitter transmitter receiver receiver v tt 50 50 transmitter receiver arria ii gx series oct 50 v tt 50 50 v tt 50 transmitter receiver 25 arria ii gx series oct v ref v ref v ref v ref termination arria ii gx arria ii gx figure 6?7. arria ii gx hstl i/o standard termination hstl class i hstl class ii external on-board termination oct transmit v tt 50 50 v tt 50 50 v tt 50 transmitter transmitter receiver receiver v tt 50 50 transmitter receiver v tt 50 50 v tt 50 transmitter receiver arria ii gx series oct 50 arria ii gx series oct 25 v ref v ref v ref v ref termination arria ii gx arria ii gx
6?16 chapter 6: i/o features in arria ii gx devices arria ii gx termination schemes for i/o standards arria ii gx device handbook volume 1 ? february 2009 altera corporation differential i/o standards termination arria ii gx devices support differential sstl-2 and sstl-18, differential hstl-18, hstl-15, hstl-12, lvds, lvpecl, rsds, and mini-lvds. figure 6?8 through figure 6?14 show the details of various differential i/o terminations on arria ii gx devices. figure 6?8 shows the details of differential sstl i/o standard termination on arria ii gx devices. figure 6?8. arria ii gx differential sstl i/o standard termination differential sstl class i differential sstl class ii external on-board termination oct transmitter receiver 50 50 50 50 v tt v tt 25 25 transmitter receiver 50 50 50 50 v tt v tt 25 25 50 50 v tt v tt 50 50 termination transmitter receiver z 0 = 50 z 0 = 50 25 arria ii gx series oct v tt v tt differential sstl class ii transmitter receiver z 0 = 50 z 0 = 50 50 arria ii gx series oct differential sstl class i 50 v tt 50 v tt arria ii gx arria ii gx
chapter 6: i/o features in arria ii gx devices 6?17 arria ii gx termination schemes for i/o standards ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 6?9 shows the details of differential hstl i/o standard termination on arria ii gx devices. lvds the lvds i/o standard is a differential high-speed, low-voltage swing, low-power, general-purpose i/o interface standard. in arria ii gx devices, the lvds i/o standard requires a 2.5-v v ccio level. the lvds input buffer requires 2.5-v v ccpd . lvds requires a 100- ffr r rr vc c ffr r rrr fr r f figure 6?9. arria ii gx differential hstl i/o standard termination differential hstl class i differential hstl class ii external on-board termination oct transmitter receiver 50 50 50 50 v tt v tt transmitter receiver 50 50 50 50 v tt v tt 50 50 v tt v tt termination transmitter receiver z 0 = 50 z 0 = 50 50 arria ii gx series oct differential hstl class i 50 50 transmitter receiver z 0 = 50 z 0 = 50 25 arria ii gx series oct v tt v tt differential hstl class ii 50 50 v tt v tt arria ii gx arria ii gx
6?18 chapter 6: i/o features in arria ii gx devices arria ii gx termination schemes for i/o standards arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 6?10 shows the details of lvds termination in arria ii gx devices. differential lvpecl arria ii gx devices support the lvpecl i/o standard on input clock pins only. lvpecl output operation is not supported. lvds input buffers are used to support lvpecl input operation. ac-coupling is required when the lvpecl common mode voltage of the output buffer is higher than arria ii gx lvpecl input common mode voltage. figure 6?11 shows the ac-coupled termination scheme. the 50- figure 6?10. arria ii gx lvds i/o standard termination (note 1) note to figure 6?10 : (1) r p =170 differential outputs differential inputs 100 single-ended outputs differential inputs 100 rp external resistor rs rs arria ii gx oct arria ii gx oct differential outputs differential inputs 100 external on-board termination oct receive (dedicated lvds output) termination lvds 50 50 50 50 50 50 oct receive (single-ended lvds output with three resistor network, lvds_e_3r) (1) figure 6?11. lvpecl ac-coupled termination lvpecl output buffer arria ii gx lvpecl input buffer 50 = 50 = 50 0.1 f 0.1 f 50 v icm z o z o
chapter 6: i/o features in arria ii gx devices 6?19 arria ii gx termination schemes for i/o standards ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx devices support dc-coupled lvpecl if the lvpecl output common mode voltage is in the arria ii gx lvpecl input buffer specification (see figure 6?12 ). rsds arria ii gx devices support the rsds output standard with a data rate of up to 360 mbps using lvds output buffer types. arria ii gx devices supports dedicated rsds, rsds with a one-resistor network, and rsds with a three-resistor network. two single-ended output buffers are used for external one- or three-resistor networks, as shown in figure 6?13 . a resistor network is required to attenuate the lvds output-voltage swing to meet rsds specifications. you can modify the three-resistor network values to reduce power or improve the noise margin. the resistor values chosen should satisfy the equation shown in equation 6?1 . figure 6?12. lvpecl dc-coupled termination lvpecl output buffer arria ii gx lvpecl input buffer 100 = 50 z o = 50 z o figure 6?13. arria ii gx rsds i/o standard termination (note 1) note to figure 6?13 : (1) the r s and r p values are pending characterization. 50 50 r s r s r p transmitter receiver 1 inch 50 50 r p transmitter 1 inch 50 50 100 r p transmitter receiver 1 inch 50 50 r s r s r p transmitter receiver 1 inch termination external on-board termination oct one-resistor network (rsds_e_1r) three-resistor network (rsds_e_3r) arria ii gx oct 100 receiver arria ii gx oct 100 100
6?20 chapter 6: i/o features in arria ii gx devices arria ii gx termination schemes for i/o standards arria ii gx device handbook volume 1 ? february 2009 altera corporation 1 altera recommends that you perform additional simulations using ibis models to validate that custom resistor values meet the rsds requirements. f for more information about the rsds i/o standard, refer to the rsds specification from the national semiconductor website at www.national.com . mini-lvds arria ii gx devices support the mini-lvds output standard with a data rate up to 400 mbps using lvds-type output buffers. arria ii gx devices support dedicated rsds as well as rsds with a one-resistor network or a three-resistor network. two single-ended output buffers are used for external one- or three-resistor networks, as shown in figure 6?14 . a resistor network is required to attenuate the lvds output voltage swing to meet mini-lvds specifications. you can modify the three-resistor network values to reduce power or improve noise margin. the resistor values chosen should satisfy the equation shown in equation 6?2 . equation 6?1. r 2 r p s x = 50 r 2 r p s + figure 6?14. arria ii gx mini-lvds i/o standard termination (note 1) note to figure 6?14 : (1) the r s and r p values are pending characterization. 50 50 r s r s r p transmitter receiver 1 inch 50 r p transmitter receiver 1 inch 50 50 r p transmitter receiver 1 inch 50 50 r s r s r p transmitter receiver 1 inch termination external on-board termination oct one-resistor network (mini-lvds_e_1r) three-resistor network (mini-lvds_e_3r) 50 100 arria ii gx oct arria ii gx oct 100 100 100 equation 6?2. r 2 r p s x = 50 r 2 r p s +
chapter 6: i/o features in arria ii gx devices 6?21 arria ii gx design considerations ? february 2009 altera corporation arria ii gx device handbook volume 1 1 altera recommends that you perform additional simulations using ibis models to validate that custom resistor values meet the rsds requirements. f for more information about the mini-lvds i/o standard, see the mini-lvds specification from the texas instruments website at www.ti.com . arria ii gx design considerations while arria ii gx devices feature various i/o capabilities for high-performance and high-speed system designs, the following items require attention to ensure the success of these designs: ?i/o termination? on page 6?21 ?i/o bank restrictions? on page 6?22 ?i/o placement guidelines? on page 6?22 i/o termination this section describes i/o termination requirements for single-ended and differential i/o standards. single-ended i/o standards although single-ended, non-voltage-referenced i/o standards do not require termination, impedance matching is necessary to reduce reflections and improve signal integrity. voltage-referenced i/o standards require both an input reference voltage, v ref and a termination voltage, v tt . the reference voltage of the receiving device tracks the termination voltage of the transmitting device. each voltage-referenced i/o standard requires a specific termination setup. for example, a proper resistive signal termination scheme is critical in sstl2 standards to produce a reliable ddr memory system with superior noise margin. arria ii gx on-chip series termination provides the convenience of no external components. when optimizing oct for use in typical transmission line environments, the r s impedance must be equal to or less than the transmission line impedance for optimal performance. in ideal applications, setting the oct impedance to match the transmission line impedance avoids reflections. alternatively, you can use external pull-up resistors to terminate the voltage-referenced i/o standards such as sstl and hstl. differential i/o standards differential i/o standards typically require a termination resistor between the two signals at the receiver. the termination resistor must match the differential load impedance of the signal line. arria ii gx devices provide an optional differential on-chip resistor when using lvds. f for pcb layout guidelines, refer to an 224: high-speed board layout guidelines and an 315: guidelines for designing high speed fpga pcbs .
6?22 chapter 6: i/o features in arria ii gx devices arria ii gx design considerations arria ii gx device handbook volume 1 ? february 2009 altera corporation i/o bank restrictions each i/o bank can simultaneously support multiple i/o standards. the following sections provide guidelines for mixing non-voltage-referenced and voltage-referenced i/o standards in arria ii gx devices. non-voltage-referenced standards each arria ii gx device i/o bank has its own vccio pins and supports only one v ccio , either 1.2, 1.5, 1.8, 2.5, 3.0, or 3.3 v. an i/o bank can simultaneously support any number of input signals with different i/o standard assignments, as shown in table 6?1 on page 6?2 . for output signals, a single i/o bank supports non-voltage-referenced output signals that drive at the same voltage as v ccio . because an i/o bank can only have one v ccio value, it can only drive out the value for non-voltage-referenced signals. for example, an i/o bank with a 2.5-v v ccio setting can support 2.5-v standard inputs and outputs and 3.0-v lvcmos inputs (but not output or bidirectional pins). voltage-referenced standards to accommodate voltage-referenced i/o standards, each arria ii gx device?s user i/o bank has a dedicated v ref pin. each bank can only have a single v ccio voltage level and a single v ref voltage level at a given time. an i/o bank featuring single-ended or differential standards can support voltage-referenced standards as long as all voltage-referenced standards use the same v ref setting. voltage-referenced bidirectional and output signals must be the same as the i/o bank?s v ccio voltage. for example, you can only place sstl-2 output pins in an i/o bank with a 2.5-v v ccio . mixing voltage-referenced and non-voltage-referenced standards an i/o bank can support both non-voltage-referenced and voltage-referenced pins by applying each of the rule sets individually. for example, an i/o bank can support sstl-18 inputs and 1.8-v inputs and outputs with a 1.8-v v ccio and a 0.9-v v ref . similarly, an i/o bank can support 1.5-v standards, 1.8-v inputs (but not outputs), and hstl and hstl-15 i/o standards with a 1.5-v v ccio and 0.75-v v ref . i/o placement guidelines this section provides i/o placement guidelines for the programmable i/o standards supported by arria ii gx devices and includes essential information for designing systems using an arria ii gx device?s selectable i/o capabilities. 3.3-v, 3.0-v, and 2.5-v lvttl/lvcmos tolerance guidelines altera recommends the following techniques when you use 3.3-, 3.0-, and 2.5-v i/o standards to limit overshoot and undershoot at i/o pins:
chapter 6: i/o features in arria ii gx devices 6?23 document revision history ? february 2009 altera corporation arria ii gx device handbook volume 1  output slew rate?arria ii gx devices have two levels of slew rate control for single-ended output buffers. slow slew rate can significantly reduce the overshoot and undershoot in the system at the cost of slightly slower performance.  input clamping diodes?arria ii gx i/os have on-chip clamping diodes.  when you use clamping diodes, the floating well of the i/o is clamped to v ccn . as a result, the arria ii gx device might draw extra input leakage current from the external input driver. this may violate the hot-socket dc- and ac-current specification and increase power consumption. with the clamping diode enabled, the arria ii gx device supports a maximum dc current of 8 ma. pin placement guideline you are advised to create a quartus ii design, enter your device i/o assignments, and compile your design to validate your pin placement. the quartus ii software checks your pin connections with respect to i/o assignment and placement rules to ensure proper device operation. these rules are dependent on device density, package, i/o assignments, voltage assignments, and other factors that are not described in this chapter. f for information about pin placement with respect to v ref , lvds, mini-lvds, and rsds, refer to the i/o management chapter in volume 2 of the quartus ii development software handbook . document revision history table 6?7 shows the revision history for this document. tab le 6 ?7 . document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
6?24 chapter 6: i/o features in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? march 2009 altera corporation arria ii gx device handbook volume 1 7. external memory interfaces in arria ii gx devices introduction altera?s arria ? ii gx fpgas provide an efficient architecture to quickly and easily fit wide external memory interfaces with their small modular i/o bank structure. the i/os are designed to provide flexible and high-performance support for existing and emerging external double data rate (ddr) memory standards, such as ddr3, ddr2, ddr sdram, and qdrii sram. the arria ii gx fpga supports ddr external memory on the top, bottom, and right i/o banks. the high-performance memory interface solution includes a self-calibrating megafunction (altmemphy), optimized to take advantage of the arria ii gx i/o structure and the quartus ? ii timequest timing analyzer. the altmemphy megafunction provides the total solution for the highest reliable frequency of operation across process, voltage, and temperature (pvt) variations. this chapter includes the following sections: tab le 7 ?1 . arria ii gx maximum clock rate support for external memory interfaces with half-rate phy (note 1) , (2) memory standards c4 speed grade (mhz) c5 speed grade (mhz) c6 speed grade (mhz) row/column i/os hybrid mode row/column i/os hybrid mode row/column i/os hybrid mode ddr3 sdram (3) 3 0 0 ? ???? ddr2 sdram (4) 300 (5) 267 (6) 267 (7) 200 200 200 ddr sdram (4) 200 200 200 200 200 167 qdrii sram ( 8 ) , (9) 250 200 250 200 200 200 notes to ta bl e 7? 1 : (1) these numbers are preliminary until characterization is final. the supported operating frequencies listed here are memory in terface maximums for the fpga device family. your design?s actual achievable performance is based on design- and system-specific factors, as well as static timing analysis of the completed design. (2) the maximum clock rates are applicable to class i termination. the maximum clock rates are lower for class ii termination. (3) arria ii gx devices support ddr3 sdram components only as read and write leveling capability is not available in arria ii gx devices, hence ddr3 dimms cannot be supported. interface with multiple ddr3 sd ram components requires component arrangement according to the ddr2 dimm tree topology. (4) this applies to interfaces with both components and single-rank, unbuffered modules. (5) the 300-mhz ddr2 interface requires the use of 400-mhz ddr2 sdram modules or components. (6) the 267-mhz ddr2 hybrid mode interface requires the use of 400-mhz ddr2 sdram m odules or components. (7) the 267-mhz ddr2 interface requires the use of 333-mhz ddr2 sdram modules or components. (8) qdrii sram supports 1.8-v and 1.5-v hstl i/o standards. however, altera recommends using the 1.8-v hstl i/o standard for maximum performance because of the higher i/o drive strength. (9) arria ii gx devices feature i/os capable of electrical support for qdrii. however, altera does not currently supply a contro ller or phy megafunction for qdrii interfaces. aiigx51007-1.1
7?2 chapter 7: external memory interfaces in arria ii gx devices introduction arria ii gx device handbook volume 1 ? march 2009 altera corporation figure 7?1 shows a memory interface data path overview. this chapter describes the hardware features in arria ii gx devices that facilitate high-speed memory interfacing for the ddr memory standard including delay-locked loops (dlls). memory interfaces also use i/o features such as on-chip termination (oct), programmable input delay chains, programmable output delay, slew rate adjustment, and programmable drive strength. f r r fr f v fr rfr i/o features in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . the altmemphy megafunction instantiates a phase-locked loop (pll) and pll reconfiguration logic to adjust the phase shift based on vt variation. f r r fr r fr rr vc rfr external memory phy interface megafunction user guide (altmemphy) . f r r fr rr rfr clock networks and plls in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . figure 7?1. external memory interface data path overview (note 1) , (2) notes to figure 7?1 : (1) you can bypass each register block. (2) shaded blocks are implemented in the i/o element (ioe). (3) the memory blocks used for each memory interface may differ slightly. the alignment register is implemented in the core logi c. (4) these signals may be bidirectional or unidirectional, depending on the memory standard. when bidirectional, the signal is ac tive during both read and write operations. ddr output and output enab le registers memory arria ii gx fpga dll ddr input registers synchronization registers clock management & reset 2n n n 2n alignment registers & dpram (3) dq (read) (4) dq (w rite) (4) dqs logic block dqs (read) (4) 2n 2 dqs (w rite) (4) dqs w rite clock resynchronization clock dq w rite clock dqs enab le circuit postam b le control circuit postam b le enab le postam b le clock ddr output and output enab le registers
chapter 7: external memory interfaces in arria ii gx devices 7?3 arria ii gx memory interfaces pin support ? march 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx memory interfaces pin support a typical memory interface requires data (d, q, or dq), data strobe (dqs/cq and dqsn/cqn), address, command, and clock pins. some memory interfaces use data mask (dm or bwsn) pins to enable write masking. this section describes how arria ii gx devices support all these pins. table 7?2 summarizes the pin connections between an arria ii gx device and an external memory device. ddr3, ddr2, and ddr sdram devices use ck and ck# signals to capture the address and command signals. generate these signals to mimic the write-data strobe using arria ii gx ddr i/o registers (ddios) to ensure that timing relationships between ck/ck# and dqs signals ( tdqss, tdss , and tdsh in ddr3, ddr2, and ddr sdram devices) are met. qdrii sram devices use the same clock (k/k#) to capture the write data, address, and command signals. tab le 7 ?2 . arria ii gx memory interfaces pin utilization pin description memory standard arria ii gx pin utilization read data all dq write data all dq (1) parity, dm, bwsn, ecc all dq (1) , (2) read data strobes/clocks ddr3 sdram ddr2 sdram (with differential dqs signaling) (3) differential dqs/dqsn (also used as write data clock) ddr2 sdram (with single-ended dqs signaling) (3) ddr sdram single-ended dqs (also used as write data clock) qdrii sram complementary cq/cqn write data clocks qdrii sram (4) any dqs and dqsn pin pairs associated with the dq groups used for the write data pins (1) memory clocks (for address and commands) (5) ddr3 sdram ddr2 sdram ddr sdram any unused dq or dqs pins with diffio_rx or diffin capability for the mem_clk[n:0] and mem_clk_n[n:0] signals. notes to ta bl e 7? 2 : (1) if the write data signals are unidirectional, connect them, including the data mask pins, to a separate dqs/dq group other t han the read dqs/dq group. connect the write clock to the dqs and dqsn pin-pair associated with that dqs/dq group. do not use the cq and cqn pin-pa ir as write clocks. (2) the bwsn and dm pins need to be part of the write dqs/dq group, while parity and ecc pins need to be part of the read dqs/dq group. (3) ddr2 sdram supports either single-ended or differential dqs signaling. (4) qdrii sram devices use the k/k# clock pin-pair to latch write data, address, and command signals. the clocks must be part of the dqs/dq group and follow the write data clock rules in this case. (5) altmemphy megafunction implementation for a ddr3, ddr2, or ddr sdram interface requires that you place all memory clock pin- pairs in a single dq group of adequate width to minimize skew. for example, dimms requiring three memory clock pin-pairs need to use a 4 dqs/dq group.
7?4 chapter 7: external memory interfaces in arria ii gx devices arria ii gx memory interfaces pin support arria ii gx device handbook volume 1 ? march 2009 altera corporation memory clock pins in arria ii gx devices are generated using a ddio register going to differential output pins (see figure 7?2 ). the arria ii gx pins marked with diffin or diffio_rx prefixes in the pin table support the differential output function as well, therefore they can be used as memory clock pins, as mentioned in table 7?2 on page 7?3 . arria ii gx devices offer differential input buffers for differential read-data strobe and clock operations. in addition, arria ii gx devices also provide an independent dqs logic block for each cqn pin for complementary read-data strobe and clock operations. in the arria ii gx pin tables, the differential dqs pin pairs are denoted as dqs and dqsn pins, while the complementary cq signals are denoted as cq and cqn pins. dqsn and cqn pins are marked separately in the pin table. each cqn pin connects to a dqs logic block and the shifted cqn signals go to the negative-edge input registers in the dq i/o element registers. dq pins can be bidirectional signals, as in ddr3, ddr2, and ddr sdram, or unidirectional signals, as in qdrii sram devices. connect the unidirectional read-data signals to arria ii gx dq pins and the unidirectional write-data signals to a different dqs/dq group than the read dqs/dq group. furthermore, the write clocks must be assigned to the dqs/dqsn pins associated to this write dqs/dq group. do not use the cq/cqn pin-pair for write clocks. 1 r fr wr w w vrc r c r f r rfc crcr v vr rr r rcvr r rfc r r rr r vc figure 7?2. memory clock generation (note 1) , (2) , (3) notes to figure 7?2 : (1) refer to table 7?2 on page 7?3 for the pin location requirements for these pins. (2) the mem_clk[0] and mem_clk_n[0] pins for ddr3, ddr2, and ddr sdram interfaces use the i/o input buffer for feedback; therefore, bidirectional i/o buffers are used for these pins. for memory interfaces using a differential dqs input, the input feedback buf fer is configured as differential input; for memory interfaces using a single-ended dq s input, the input buffer is configured as a single-ended inpu t. using a single-ended input feedback buffer requires that the i/o standard?s v ref voltage is provided to that i/o bank?s v ref pins . (3) global or regional clock networks are required for memory output clock generation to minimize jitter. mem_clk (2) qd qd system clock (3) fpga les i/o elements v cc mem_clk_n (2) 1 0
chapter 7: external memory interfaces in arria ii gx devices 7?5 arria ii gx memory interfaces pin support ? march 2009 altera corporation arria ii gx device handbook volume 1 the arria ii gx device supports dqs and dq signals with dq bus modes of 4, 8/9, 16/18, or 32/36. the ddr, ddr2, and ddr3 interfaces use one dqs pin for each x8 group; for example, an interface with a 72 ddr2 dimm needs nine dqs pins. when any of these pins are not used for memory interfacing, you can use them as user i/os. in addition, you can use any dqsn or cqn pins not used for clocking as dq (data) pins. table 7?3 lists pin support per dqs/dq bus mode, including the dqs/cq and dqsn/cqn pin pair. figure 7?4 through figure 7?9 show the maximum number of dqs/dq groups per side of the arria ii gx device. these figures represent the die-top view of the arria ii gx device. table 7?4 shows the number of i/o modules and dqs/dq groups per side of the arria ii gx device. tab le 7 ?3 . arria ii gx dqs/dq bus mode pins mode dqsn support cqn support parity or dm (optional) typical number of data pins per group maximum number of data pins per group (1) 4 yes no no (5) 45 8/9 (2) yes yes yes 8 or 9 11 16/18 (3) yes yes yes 16 or 18 23 32/36 (4) yes yes yes 32 or 36 47 notes to ta bl e 7? 3 : (1) this represents the maximum number of dq pins (including parity and data mask pins) connected to the dqs bus network with si ngle-ended dqs signaling. when you use differential or complementary dq s signaling, the maximum number of data-per-group decreases by one. this number may vary per dqs/dq group in a particular device. for the dd r, ddr2, and ddr3 interface, the number of pins is further r educed for interfaces larger than 8 due to the need of one dqs pin for each 8 group. check with the pin table for the accurate number pe r group. (2) two 4 dqs/dq groups are stitched together to make a 8/9 group, so there are a total of 12 pins in this group. (3) four 4 dqs/dq groups are stitched together to make a 16/18 group. (4) eight 4 dqs/dq groups are stitched together to make a 32/36 group. (5) the dm pin can be supported if the differential dqs is not used and the group does not have additional signals. tab le 7 ?4 . number of dqs/dq groups and i/o modules in arria ii gx devices per side (part 1 of 2) device package side i/o module (1) dqs/dq groups 4 8/9 16/18 32/36 ep2agx20 ep2agx30 ep2agx45 ep2agx65 358-pin ultra fineline bga t o p / b o t t o m36310 r i g h t24220 ep2agx20 ep2agx30 ep2agx45 ep2agx65 ep2agx95 ep2agx125 572-pin fineline bga t o p / b o t t o m48420 right 6 12 6 2 0
7?6 chapter 7: external memory interfaces in arria ii gx devices arria ii gx memory interfaces pin support arria ii gx device handbook volume 1 ? march 2009 altera corporation ep2agx45 ep2agx65 ep2agx95 ep2agx125 ep2agx190 ep2agx260 780-pin fineline bga top/bottom/ right 71 47 3 1 ep2agx95 ep2agx125 1152-pin fineline bga t o p / b o t t o m91 89 4 2 right 8 16 8 4 2 ep2agx190 ep2agx260 1152-pin fineline bga top/bottom/ right 12 24 12 6 2 note to tab l e 7 ?4 : (1) each i/o module consists of 16 i/o pins. twelve of the 16 pins are dq/dsq pins. tab le 7 ?4 . number of dqs/dq groups and i/o modules in arria ii gx devices per side (part 2 of 2) device package side i/o module (1) dqs/dq groups 4 8/9 16/18 32/36
chapter 7: external memory interfaces in arria ii gx devices 7?7 arria ii gx memory interfaces pin support ? march 2009 altera corporation arria ii gx device handbook volume 1 figure 7?3 shows the number of dqs/dq groups per bank in ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices in the 358-pin ultra fineline bga package. figure 7?3. number of dqs/dq groups per bank in ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices in the 358-pin ultra fineline bga package (note 1) , (2) , (3) , (4) notes to figure 7?3 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. (4) arria ii gx devices in the 358-pin ultra fineline bga package do not support x36 qdrii sram interface because x36 emulation mode (combining two x18 dqs/dq groups to form a single x36 dqs/dq group) is not supported. i/o bank 8a 22 user i/os x4=2 x8/x9=1 x16/x18=0 x32/x36=0 i/o bank 7a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 6a 18 user i/os x4=2 x8/x9=1 x16/x18=0 x32/x36=0 i/o bank 5a 18 user i/os x4=2 x8/x9=1 x16/x18=0 x32/x36=0 i/o bank 4a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 3a 22 user i/os x4=2 x8/x9=1 x16/x18=0 x32/x36=0 ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices in the 358-pin ultra fineline bga
7?8 chapter 7: external memory interfaces in arria ii gx devices arria ii gx memory interfaces pin support arria ii gx device handbook volume 1 ? march 2009 altera corporation figure 7?4 shows the number of dqs/dq groups per bank in arria ii gx ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices in the 572-pin fineline bga package. figure 7?4. number of dqs/dq groups per bank in ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices in the 572-pin fineline bga package (note 1) , (2) , (3) , (4) notes to figure 7?4 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. (4) arria ii gx devices in the 572-pin fineline bga package do not support x36 qdrii sram interface because x36 emulation mode ( combining two x18 dqs/dq groups to form a single x36 dqs/dq group) is not supported. i/o bank 8a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 7a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 6a 50 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 5a 50 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 4a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 3a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices in the 572-pin fineline bga
chapter 7: external memory interfaces in arria ii gx devices 7?9 arria ii gx memory interfaces pin support ? march 2009 altera corporation arria ii gx device handbook volume 1 figure 7?5 shows the number of dqs/dq groups per bank in arria ii gx ep2agx95 and ep2agx125 devices in the 572-pin fineline bga package. figure 7?5. number of dqs/dq groups per bank in ep2agx95 and ep2agx125 devices in the 572-pin fineline bga package (note 1) , (2) , (3) , (4) notes to figure 7?5 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. (4) arria ii gx devices in the 572-pin fineline bga package do not support x36 qdrii sram interface because x36 emulation mode ( combining two x18 dqs/dq groups to form a single x36 dqs/dq group) is not supporte i/o bank 8a 42 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 7a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 6a 50 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 5a 50 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 4a 42 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 3a 38 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 ep2agx95 and ep2agx125 devices in the 572-pin fineline bga
7?10 chapter 7: external memory interfaces in arria ii gx devices arria ii gx memory interfaces pin support arria ii gx device handbook volume 1 ? march 2009 altera corporation figure 7?6 shows the number of dqs/dq groups per bank in arria ii gx ep2agx45 and ep2agx65 devices in the 780-pin fineline bga package. figure 7?6. number of dqs/dq groups per bank in ep2agx45 and ep2agx65 devices in the 780-pin fineline bga package (note 1) , (2) , (3) notes to figure 7?6 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. i/o bank 8a 54 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 7a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 6a 50 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 5a 66 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 4a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 3a 54 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 ep2agx45 and ep2agx65 devices in the 780-pin fineline bga
chapter 7: external memory interfaces in arria ii gx devices 7?11 arria ii gx memory interfaces pin support ? march 2009 altera corporation arria ii gx device handbook volume 1 figure 7?7 shows the number of dqs/dq groups per bank in arria ii gx ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices in the 780-pin fineline bga package. figure 7?7. number of dqs/dq groups per bank in ep2agx95, ep2agx125, ep2agx190 and ep2agx260 devices in the 780-pin fineline bga package (note 1) , (2) , (3) notes to figure 7?7 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. i/o bank 8a 58 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 7a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 6a 50 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 i/o bank 5a 66 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 4a 74 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 3a 54 user i/os x4=6 x8/x9=3 x16/x18=1 x32/x36=0 ep2agx95, ep2agx125, ep2agx190, and ep2agx260 devices in the 780-pin fineline bga
7?12 chapter 7: external memory interfaces in arria ii gx devices arria ii gx memory interfaces pin support arria ii gx device handbook volume 1 ? march 2009 altera corporation figure 7?8 shows the number of dqs/dq groups per bank in arria ii gx ep2agx95 and ep2agx125 devices in the 1152-pin fineline bga package. figure 7?8. number of dqs/dq groups per bank in ep2agx95 and ep2agx125 devices in the 1152-pin fineline bga package (note 1) , (2) , (3) notes to figure 7?8 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. i/o bank 7a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 7b 16 user i/os x4=2 x8/x9=1 x16/x18=0 x32/x36=0 i/o bank 6a 66 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 5a 66 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 4b 16 user i/os x4=2 x8/x9=1 x16/x18=0 x32/x36=0 i/o bank 4a 74 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 ep2agx95 and ep2agx125 devices in the 1152-pin fineline bga i/o bank 3a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 8a 74 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1
chapter 7: external memory interfaces in arria ii gx devices 7?13 arria ii gx memory interfaces pin support ? march 2009 altera corporation arria ii gx device handbook volume 1 figure 7?9 shows the number of dqs/dq groups per bank in arria ii gx ep2agx190 and ep2agx260 devices in the 1152-pin fineline bga package. the dqs and dqsn pins are listed in the arria ii gx pin tables as dqsxy and dqsnxy , respectively, where x denotes the dqs/dq grouping number and y denotes whether the group is located on the top (t), bottom (b), or right (r) side of the device. the dqs/dq pin numbering is based on 4 mode. figure 7?9. number of dqs/dq groups per bank in ep2agx190 and ep2agx260 devices in the 1152-pin fineline bga package (note 1) , (2) , (3) notes to figure 7?9 : (1) these numbers are preliminary until the devices are available. (2) all i/o pin counts include 12 dedicated clock inputs ( clk4 to clk15 ) that you can use for data inputs. (3) several configuration pins in bank 6a are shared with dqs/dq pins. you cannot use a x4 dqs/dq group with any of its pin memb ers used for configuration purposes. ensure that the dqs/dq groups y ou have chosen are not also used for configuration. i/o bank 7a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 7b 32 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 6b 32 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 6a 66 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 4b 32 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 4a 74 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 ep2agx190 and ep2agx260 devices in the 1152-pin fineline bga i/o bank 3a 70 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 8a 74 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 8b 32 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 3b 32 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0 i/o bank 5a 66 user i/os x4=8 x8/x9=4 x16/x18=2 x32/x36=1 i/o bank 5b 32 user i/os x4=4 x8/x9=2 x16/x18=1 x32/x36=0
7?14 chapter 7: external memory interfaces in arria ii gx devices arria ii gx memory interfaces pin support arria ii gx device handbook volume 1 ? march 2009 altera corporation the corresponding dq pins are marked as dqxy , where x indicates to which dqs group the pins belong to and y indicates whether the group is located on the top (t), bottom (b), or right (r) side of the device. for example, dqs3b indicates a dqs pin that is located on the bottom side of the device. the dq pins belonging to that group are shown as dq3b in the pin table. see figure 7?10 for illustrations. 1 r r w r c r fr f f vc ccw vw r 1 w w r r r vw f r rr vc figure 7?10. dqs pins in arria ii gx i/o banks for ep2agx260 with the f1152 package dll1 8b 8a 7a 7b dqs1t 3b 3a 4a 4b 5b 5a 6a 6b pll5 pll6 pll1 dqs24t dqs1r dqs24r dqs24b dqs1b pll2 pll3 dll2 arria ii gx device pll4
chapter 7: external memory interfaces in arria ii gx devices 7?15 arria ii gx external memory interface features ? march 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx external memory interface features arria ii gx devices are rich with features that allow robust high-performance external memory interfacing. the altmemphy megafunction allows you to use these external memory interface features and helps set up the physical interface (phy) best suited for your system. this section describes each arria ii gx device feature that is used in external memory interfaces from the dqs phase-shift circuitry and dqs logic block. 1 r r crr r fc fc fr w r fcr r fr rr r r rfc dqs phase-shift circuitry arria ii gx phase-shift circuitry provides phase shift to the dqs/cq and cqn pins on read transactions when the dqs/cq and cqn pins are acting as input clocks or strobes to the fpga. dqs phase-shift circuitry consists of dlls that are shared between multiple dqs pins and the phase-offset control module to further fine-tune the dqs phase shift for different sides of the device. figure 7?11 shows how the dqs phase-shift circuitry is connected to the dqs/cq and cqn pins in the device where memory interfaces are supported on the top, bottom, and right sides of the arria ii gx device. tab le 7 ?5 . megafunction/megacore support for the arria ii gx external memory interface memory standards megafunction/ip support high-performance controller full data rate high-performance controller half data rate altmemphy full data rate altmemphy half data rate altdll and altdq_dqs megafunctions ddr sdram vvvvv ddr2 sdram vvvvv ddr3 sdram ? v ? vv qdrii sram ? ? ? ? v
7?16 chapter 7: external memory interfaces in arria ii gx devices arria ii gx external memory interface features arria ii gx device handbook volume 1 ? march 2009 altera corporation dqs phase-shift circuitry is connected to dqs logic blocks that control each dqs/cq or cqn pin. the dqs logic blocks allow the dqs delay settings to be updated concurrently at every dqs/cq or cqn pin. figure 7?11. dqs/cq and cqn pins and dqs phase-shift circuitry (note 1) notes to figure 7?11 : (1) refer to table 7?6 on page 7?18 for possible reference input clock pins for each dll. (2) you can configure each dqs/cq and cqn pin with a phase shift based on one of two possible dll output settings. dll reference clock (2) dqs phase-shift circu itry dqs/cq pin cqn pin dqs/cq pin cqn pin to ioe to ioe to ioe t t t to ioe t dqs logic blocks dqs/cq pin cqn pin cqn pin dqs/cq pin to ioe to ioe to ioe to ioe t t t t dqs/cq pin cqn pin dqs/cq pin cqn pin t t t t dqs logic blocks dll reference clock (2) dqs phase-shift circu itry to ioe to ioe to ioe to ioe 6 6 6 6
chapter 7: external memory interfaces in arria ii gx devices 7?17 arria ii gx external memory interface features ? march 2009 altera corporation arria ii gx device handbook volume 1 dll dqs phase-shift circuitry uses a dll to dynamically control the clock delay needed by the dqs/cq and cqn pins. the dll, in turn, uses a frequency reference to dynamically generate control signals for the delay chains in each of the dqs/cq and cqn pins, allowing it to compensate for pvt variations. the dqs delay settings are gray-coded to reduce jitter when the dll updates the settings. phase-shift circuitry needs a maximum of 1280 clock cycles to lock and calculate the correct input clock period. do not send data during these clock cycles because there is no guarantee that it will be captured properly. as the settings from the dll may not be stable until this lock period has elapsed, be aware that anything using these settings may be unstable during this period. 1 c f crcr fr r rfc r r 1 wvr f vr 1 w f c cr v ww ffc r fr r r r r w rr vc c f r crr f vc w c r f w frc w c r frc c c v w w ffr ff wc w rr vc v fr ffr f c c cc r f vc c cc w v r f cr frc rfc fr ffr f vc 1 rfc w f vc r rc fr rfrc r rfc c wvr rr vc r rfc w r wr vr c rw fr c f vc rfc w r fr r r c c fr r r r dqs1r can get its phase-shift settings from dll1, while dqs2r can get its phase-shift settings from dll2. the reference clock for each dll might come from pll output clocks or dedicated clock input pins, as specified in table 7?6 . 1 v c r rfrc cc no compensation or the quartus ii software changes it automatically. because the pll does not use any other outputs, it does not need to compensate for any clock paths. 1 rr vc r cc cc c c r fr c w w f r cc wr c cr r cc cr fr
7?18 chapter 7: external memory interfaces in arria ii gx devices arria ii gx external memory interface features arria ii gx device handbook volume 1 ? march 2009 altera corporation 1 when using the altmemphy megafunction, use the dedicated pll input pin for the pll reference clock. figure 7?12 shows a simple block diagram of the dqs phase-shift circuitry. the input reference clock goes into the dll to a chain of up to 16 delay elements. the phase comparator compares the signal coming out of the end of the delay chain block to the input reference clock. the phase comparator then issues the upndn signal to the gray- coded counter. this signal increments or decrements a 6-bit delay setting (dqs delay settings) that increases or decreases the delay through the delay element chain to bring the input reference clock and the signals coming out of the delay element chain in phase. tab le 7 ?6 . dll reference clock input (note 1) dll clkin (top/bottom) clkin (right) pll dll1 clk12 clk13 clk14 clk15 not available pll1 dll2 clk4 clk5 clk6 clk7 clk8 clk9 clk10 clk11 pll3 note to tab l e 7 ?6 : (1) clk4 to clk7 are located on the bottom side, clk8 to clk11 are located on the right side, and clk12 to clk15 are located on the top side of the device.
chapter 7: external memory interfaces in arria ii gx devices 7?19 arria ii gx external memory interface features ? march 2009 altera corporation arria ii gx device handbook volume 1 you can reset the dll from either the logic array or a user i/o pin. each time the dll is reset, you must wait for 1280 clock cycles for the dll to lock before you can capture the data properly. depending on the dll frequency mode, the dll can shift the incoming dqs signals by 0, 22.5, 30, 36, 45, 60, 67.5, 72, 90, 108, 120, 135, 144, or 180. the shifted dqs signal is then used as the clock for the dq ioe input registers. all dqs/cq and cqn pins, referenced to the same dll, can have their input signal phase shifted by a different degree amount but all must be referenced at one particular frequency. for example, you can have a 90 phase shift on dqs1t and a 60 phase shift on dqs2t , referenced from a 200-mhz clock. not all phase-shift combinations are supported. the phase shifts on the dqs pins referenced by the same dll must all be a multiple of 22.5 (up to 90), 30 (up to 120), 36 (up to 144), or 45 (up to 180). there are six different frequency modes for the arria ii gx dll, as shown in table 7?7 . each frequency mode provides different phase-shift selections. in frequency mode 0, 1, 2, and 3, the 6-bit dqs delay settings vary with pvt to implement the phase-shift delay. in frequency modes 4 and 5, only 5 bits of the dqs delay settings vary with pvt to implement the phase-shift delay; the most significant bit of the dqs delay setting is set to 0. figure 7?12. simplified diagram of the dqs phase-shift circuitry (note 1) notes to figure 7?12 : (1) all features of the dqs phase-shift circuitry are accessible from the altmemphy megafunction in the quartus ii software. (2) the input reference clock for the dqs phase-shift circuitry can come from a pll output clock or an input clock pin. refer to table 7?6 and table 7?7 for the exact pll and input clock pin. (3) phase offset settings can only go to the dqs logic blocks. (4) dqs delay settings can go to the logic array and dqs logic block. 6 6 6 phase offset control 6 phase offset settings from the logic array dll1 phase offset settings to top and right side, dll2 phase offset settings to bottom side of the de vice (3) dqs delay settings (4) inpu t reference clock (2) upndn clock ena b le dll 6 addnsub_a phase comparator delay chains up/do wn counter 6 phase offset control phase offset settings from the logic array dll1 phase offset settings to b ottom side, dll2 phase offset settings to right and top side of the de vice (3) 6 addnsub_b
7?20 chapter 7: external memory interfaces in arria ii gx devices arria ii gx external memory interface features arria ii gx device handbook volume 1 ? march 2009 altera corporation f for the frequency range of each mode, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook . for 0 shift, the dqs/cq signal bypasses both the dll and dqs logic blocks. the quartus ii software automatically sets the dq input delay chains so that the skew between the dq and dqs/cq pin at the dq ioe registers is negligible when the 0 shift is implemented. you can feed the dqs delay settings to the dqs logic block and the logic array. the shifted dqs/cq signal goes to the dqs bus to clock the ioe input registers of the dq pins. the signal can also go into the logic array for resynchronization if you are not using the ioe resynchronization registers. the shifted cqn signal can go to the negative-edge input register in the dq ioe or the logic array and is only used for qdrii sram interfaces. phase offset control each dll has two phase offset modules and can provide two separate dqs delay settings with independent offset; one offset goes clockwise half-way around the chip and the other goes counter-clockwise half-way around the chip. even though you have independent phase offset control, the frequency of the interface using the same dll has to be the same. use the phase offset control module for making small shifts to the input signal and use the dqs phase-shift circuitry for larger signal shifts. for example, if the dll only offers a multiple of 30 phase shift, but your interface needs a 67.5 phase shift on the dqs signal, you can use two delay chains in the dqs logic blocks to give you 60 phase shift and use the phase offset control feature to implement the extra 7.5 phase shift. you can either use a static phase offset or a dynamic phase offset to implement the additional phase shift. the available additional phase shift is implemented in 2s: complement in gray-code between settings ?64 to +63 for frequency mode 0, 1, 2, and 3, and between settings ?32 to +31 for frequency modes 4, 5, and 6. an additional bit indicates whether the setting has a positive or negative value. the settings are linear, each phase offset setting adds a delay amount. f for more information about the specified phase-shift settings, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook . tab le 7 ?7 . arria ii gx dll frequency modes frequency mode available phase shift number of delay chains 0 22.5, 45, 67.5, 90 16 1 30, 60, 90, 120 12 2 36, 72, 108, 144 10 3 45, 90, 135, 180 8 4 30, 60, 90, 120 12 5 36, 72, 108, 144 10
chapter 7: external memory interfaces in arria ii gx devices 7?21 arria ii gx external memory interface features ? march 2009 altera corporation arria ii gx device handbook volume 1 the dqs phase shift is the sum of the dll delay settings and the user-selected phase offset settings whose top setting is 64 for frequency modes 0, 1, 2, and 3; and 32 for frequency modes 4, 5, and 6. therefore, the actual physical offset setting range is 64 or 32 subtracted by the dqs delay settings from the dll. 1 fr r w w ff c rc r rc r f r f r cv f frc 1 c rc ff c ff cv wvr f f cv f frc c r c ff c ff fr rc r c frc f r r fr v fr c rfr device data sheet chapter in volume 3 of the arria ii gx device handbook . dqs logic block each dqs/cq and cqn pin is connected to a separate dqs logic block, which consists of dqs delay chains, update enable circuitry, and dqs postamble circuitry (see figure 7?13 ).
7?22 chapter 7: external memory interfaces in arria ii gx devices arria ii gx external memory interface features arria ii gx device handbook volume 1 ? march 2009 altera corporation dqs delay chain dqs delay chains consist of a set of variable delay elements to allow the input dqs/cq and cqn signals to be shifted by the amount specified by the dqs phase-shift circuitry or the logic array. there are four delay elements in the dqs delay chain; the first delay chain closest to the dqs/cq or cqn pin can either be shifted by the dqs delay settings or by the sum of the dqs/cq delay setting and the phase-offset setting. the number of delay chains required is transparent because the altmemphy megafunction automatically sets it when you choose the operating frequency. the dqs delay settings can come from the dqs phase-shift circuitry on either end of the i/o banks or from the logic array. the delay elements in the dqs logic block have the same characteristics as the delay elements in the dll. when the dll is not used to control the dqs delay chains, you can input your own gray-coded 6-bit or 5-bit settings using the dqs_delayctrlin[5..0] signals available in the altmemphy megafunction. these settings control 1, 2, 3, or all 4 delay elements in the dqs delay chains. the altmemphy megafunction can also dynamically choose the number of dqs delay chains needed for the system. the amount of delay is equal to the sum of the delay element?s intrinsic delay and the product of the number of delay steps and the value of the delay steps. you can also bypass the dqs delay chain to achieve 0 phase shift. figure 7?13. arria ii gx dqs logic block notes to figure 7?13 : (1) the input reference clock for the dqs phase-shift circuitry can come from a pll output clock or an input clock pin. refer to table 7?6 and table 7?7 for the exact pll and input clock pin. (2) the dqsenable signal can also come from the arria ii gx fpga fabric. dq dq update enab le circu itry 6 6 6 6 6 6 dqs delay settings from the dqs phase-shift circu itry dqs/cq or cqn pin inpu t reference clock (1) dqs delay chain bypass phase offset settings from dqs phase-shift circu itry 6 6 dqs enab le gated_dqs control dqs bus prn clr q dff reset a b v cc dqs' d postam b le enab le postam b le control clock dqsenab le (2) d d q q
chapter 7: external memory interfaces in arria ii gx devices 7?23 arria ii gx external memory interface features ? march 2009 altera corporation arria ii gx device handbook volume 1 update enable circuitry both the dqs delay settings and the phase-offset settings pass through a register before going into the dqs delay chains. the registers are controlled by the update enable circuitry to allow enough time for any changes in the dqs delay setting bits to arrive at all the delay elements. this allows them to be adjusted at the same time. the update enable circuitry enables the registers to allow enough time for the dqs delay settings to travel from the dqs phase-shift circuitry or core logic to all the dqs logic blocks before the next change. it uses the input reference clock or a user clock from the core to generate the update enable output. the altmemphy megafunction uses this circuit by default. figure 7?14 shows an example waveform of the update enable circuitry output. dqs postamble circuitry for external memory interfaces that use a bidirectional read strobe such as in ddr3, ddr2, and ddr sdram, the dqs signal is low before going to or coming from a high-impedance state. the state in which dqs is low, just after a high-impedance state, is called the preamble; the state in which dqs is low, just before it returns to a high-impedance state, is called the postamble. there are preamble and postamble specifications for both read and write operations in ddr3, ddr2, and ddr sdram. the dqs postamble circuitry, featured in figure 7?15 , ensures that data is not lost if there is noise on the dqs line at the end of a read postamble time. arria ii gx devices have dedicated postamble registers that can be controlled to ground the shifted dqs signal used to clock the dq input registers at the end of a read operation. this ensures that any glitches on the dqs input signals at the end of the read postamble time do not affect the dq ioe registers. figure 7?14. dqs update enable waveform update enable circuitry output system clock dqs delay settings (updated every 8 cycles) dll counter update (every 8 cycles) 6 bit dll counter update (every 8 cycles)
7?24 chapter 7: external memory interfaces in arria ii gx devices arria ii gx external memory interface features arria ii gx device handbook volume 1 ? march 2009 altera corporation there is an and gate after the postamble register outputs that is used to avoid postamble glitches from a previous read burst on a non-consecutive read burst. this scheme allows a half-a-clock cycle latency for dqsenable assertion and zero latency for dqsenable de-assertion, as shown in figure 7?16 . figure 7?15. arria ii gx dqs postamble circuitry (note 1) notes to figure 7?15 : (1) the postamble clock can come from any of the delayed resynchronization clock taps although it is not necessarily of the same phase as the resynchronization clock. (2) the dqsenable signal can also come from the arria ii gx fpga fabric. dqs enable gated_dqs control dqs bus reset a b v cc dqs' postamble enable postamble control clock d d q q dqsenable (2 ) dff prn d q clr figure 7?16. avoiding glitch on a non-consecutive read burst waveform delayed by 1/2t logic preamble postamble postamble glitch dqs postamble enable dqsenable
chapter 7: external memory interfaces in arria ii gx devices 7?25 arria ii gx external memory interface features ? march 2009 altera corporation arria ii gx device handbook volume 1 i/o element registers ioe registers are expanded to allow source-synchronous systems to have faster register-to-register transfers and resynchronization. both top, bottom, and right ioes have the same capability. right ioes have extra features to support lvds data transfer. figure 7?17 shows the registers available in the arria ii gx input path. the input path consists of ddr input registers and resynchronization registers. you can bypass each block of the input path. there are three registers in the ddr input registers block. two registers capture data on the positive and negative edges of the clock, while the third register aligns the captured data. you can choose to use the same clock for the positive edge and negative edge registers, or two complementary clocks (dqs/cq for positive-edge register and dqsn/cqn for negative-edge register). the third register that aligns the captured data uses the same clock as the positive edge registers. the resynchronization registers resynchronize the data to the resynchronization clock domain. these registers are clocked by the resynchronization clock that is generated by the pll. the outputs of the resynchronization registers go straight to the core. figure 7?17. arria ii gx ioe input registers (note 1) notes to figure 7?17 : (1) you can bypass each register block in this path. (2) the input clock can be from the dqs logic block (whether the postamble circuitry is bypassed or not) or from a global clock line. (3) this input clock comes from the cqn logic block. dff i dff input reg a input reg b neg_reg_out i dq dq dqs (2) dq input reg c i dff dq double data rate input registers dqsn differential input buffer 1 0 cqn (3) synchronization registers dff dq dq dff to core (rdata0) to core (rdata1) resynchronization clock (resync_clk_2x) (3)
7?26 chapter 7: external memory interfaces in arria ii gx devices revision history arria ii gx device handbook volume 1 ? march 2009 altera corporation figure 7?18 shows the registers available in the arria ii gx output and output-enable paths. the device can bypass each block of the output and output-enable path. the output path is designed to route combinatorial or registered sdr outputs and ddr outputs from the fpga core. the output-enable path has a structure similar to the output path. you can have a combinatorial or registered output in sdr applications. revision history table 7?8 shows the revision history for this chapter. figure 7?18. arria ii gx ioe output and output-enable path registers (note 1) notes to figure 7?18 : (1) you can bypass each register block of the output and output-enable paths. (2) the write clock comes from the pll. the dq write clock and dqs write clock have a 90 offset between them. dq dff dq dff 0 1 output reg ao output reg bo dq dff dq dff or2 tri oe reg b oe oe reg a oe 0 1 double data rate output-enable registers double data rate output registers dq or dqs write clock (2) from core from core (wdata0) from core (wdata1) tab le 7 ?8 . document revision history date and document version changes made summary of changes march 2009, v1.1 updated tab le 7 ?1 and table 7?2 .? february 2009, v1.0 initial release. ?
? february 2009 altera corporation arria ii gx device handbook volume 1 8. high-speed differential i/o interfaces and dpa in arria ii gx devices introduction this chapter describes the high-speed differential i/o features and resources, and the functionality of the serializer/deserializer (serdes) and dynamic phase alignment (dpa) circuitry in arria ? ii gx devices. the new modular i/o architecture in arria ii gx devices allows for high-speed lvds interface on the top, bottom, and right sides of the device. the left side of the device is occupied by high-speed transceiver blocks. dedicated serdes and dpa circuitry are implemented on the right side of the device to further enhance lvds interface performance in the device. this chapter contains the following sections: aiigx51008-1.0
8?2 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices lvds channels arria ii gx device handbook volume 1 ? february 2009 altera corporation the arria ii gx family supports the following differential i/o standards: 1 c r r r fr cc ffr 1 w r r r f r cfc fr f ffr r r rr vc rfr i/o features in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . f r cfc f ffr r r rr vc rfr device data sheet chapter in volume 3 of the arria ii gx device handbook . lvds channels in arria ii gx devices, there are dedicated lvds input buffers and lvds i/o buffers at the top, bottom, and right side of the device. the lvds input buffers have 100- f r r fr rfr i/o features in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . tab le 8 ?1 . supported data rate range (note 1) i/o standards lvds mini-lvds rsds data rate range (mbps) 150-1000 (2) 150-400 150-360 note to tab l e 8 ?1 : (1) the maximum data rate supported subject to silicon characterization. (2) dedicated serdes and dpa circuitry on the right side of the device are required to achieve lvds data rate at 1000 mbps.
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?3 lvds channels ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 8?1. high-speed differential i/os with dpa locations in an arria ii gx device (note 1) , (2) , (3) notes to figure 8?1 : (1) this is a top view of the silicon die, which corresponds to a reverse view for flip chip packages. it is a graphical representation only. (2) applicable to ep2agx95, ep2agx 125, ep2agx190, and ep2agx260 devices. (3) there are no center plls on the right i/o banks for ep2agx20, ep2agx30, ep2agx45, and ep2agx65 devices. high-speed differential i/o, general purpose i/o, and memory interface high-speed differential i/o, general purpose i/o, and memory interface transceiver blocks high-speed differential i/o, general purpose i/o, and memory interface high-speed differential i/o, general purpose i/o, and memory interface pll pll pll fpga fabric (logic elements, dsp, embedded memory, and clock networks) pll pll high-speed differential i/o with dpa, general purpose i/o, and memory interface high-speed differential i/o with dpa, general purpose i/o, and memory interface pll
8?4 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices lvds channels arria ii gx device handbook volume 1 ? february 2009 altera corporation table 8?2 and table 8?3 show the maximum number of row and column lvds i/os supported in arria ii gx devices. you can design the lvds i/os as dedicated lvds input, output buffers or pseudo-lvds output buffers, as long as the combination does not exceed the maximum count. for example, there are a total of 56 lvds pairs of i/os in 780-pin ep2agx45 device row (refer to table 8?2 ). you can design up to a maximum of: tab le 8 ?2 . lvds channels supported in arria ii gx device row i/o banks (note 1) , (2) , (3) , (4) device 358-pin flipchip ubga 572-pin flipchip fbga 780-pin flipchip fbga 1152-pin flipchip fbga ep2agx20 8rx or ptx + 8tx or ptx 24rx or ptx + 24tx or ptx ? ? ep2agx30 8rx or ptx + 8tx or ptx 24rx or ptx + 24tx or ptx ? ? ep2agx45 8rx or ptx + 8tx or ptx 24rx or ptx + 24tx or ptx 28rx or ptx + 28tx or ptx ? ep2agx65 8rx or ptx + 8tx or ptx 24rx or ptx + 24tx or ptx 28rx or ptx + 28tx or ptx ? ep2agx95 ? 24rx or ptx + 24tx or ptx 28rx or ptx + 28tx or ptx 32rx or ptx + 32tx or ptx ep2agx125 ? 24rx or ptx + 24tx or ptx 28rx or ptx + 28tx or ptx 32rx or ptx + 32tx or ptx ep2agx190 ? ? 28rx or ptx + 28tx or ptx 48rx or ptx + 48tx or ptx ep2agx260 ? ? 28rx or ptx + 28tx or ptx 48rx or ptx + 48tx or ptx notes to ta bl e 8? 2 : (1) rx = dedicated lvds input buffers with oct r d support. (2) tx = dedicated lvds output buffers or lvds input buffers without oct r d support. (3) ptx = pseudo-lvds output buffers, either lvds_e_3r or lvds_e_1r. (4) the lvds channel count does not include dedicated clock input pins and pll clock output pins. tab le 8 ?3 . lvds channels supported in arria ii gx device column i/o banks (note 1) , (2) , (3), (4) device 358-pin flipchip ubga 572-pin flipchip fbga 780-pin flipchip fbga 1152-pin flipchip fbga ep2agx20 25rx or ptx + 24tx or ptx 33rx or ptx + 32tx or ptx ? ? ep2agx30 25rx or ptx + 24tx or ptx 33rx or ptx + 32tx or ptx ? ? ep2agx45 25rx or ptx + 24tx or ptx 33rx or ptx + 32tx or ptx 57rx or ptx + 56tx or ptx ? ep2agx65 25rx or ptx + 24tx or ptx 33rx or ptx + 32tx or ptx 57rx or ptx + 56tx or ptx ? ep2agx95 ? 33rx or ptx + 32tx or ptx 57rx or ptx + 56tx or ptx 73rx or ptx + 72tx or ptx ep2agx125 ? 33rx or ptx + 32tx or ptx 57rx or ptx + 56tx or ptx 73rx or ptx + 72tx or ptx ep2agx190 ? ? 57rx or ptx + 56tx or ptx 97rx or ptx + 96tx or ptx ep2agx260 ? ? 57rx or ptx + 56tx or ptx 97rx or ptx + 96tx or ptx notes to ta bl e 8? 3 : (1) rx = dedicated lvds input buffers with oct r d support. (2) tx = dedicated lvds output buffers or lvds input buffers without oct r d support. (3) ptx = pseudo-lvds output buffers, either lvds_e_3r or lvds_e_1r. (4) the lvds channel count does not include dedicated clock input pins and pll clock output pins.
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?5 lvds serdes and dpa block diagram ? february 2009 altera corporation arria ii gx device handbook volume 1 lvds serdes and dpa block diagram the arria ii gx device family has dedicated serdes and dpa circuitry for lvds transmitters and receivers on the right side of the device. figure 8?2 shows the lvds serdes and dpa block diagram. this diagram shows the interface signals for the transmitter and receiver data paths. for more information, refer to ?differential transmitter? on page 8?6 and ?differential receiver? on page 8?8 . figure 8?2. lvds serdes and dpa block diagram (note 1) , (2) , (3) notes to figure 8?2 : (1) this diagram shows a shared pll between the transmitter and receiver. if the transmitter and receiver are not sharing the sa me pll, two plls on the right side of the device are required. (2) in sdr and ddr mode, the data width is 1 and 2, respectively. (3) the tx_in and rx_out ports have a maximum data width of 10. + - + - ioe tx_in 10 serializer 2 ioe ioe supports sdr, ddr, or non-registered datapath din dout lvds transmitter lvds receiver tx_coreclock tx_out rx_in dpa circuitry synchronizer din retimed data dpa clock din dout din dout din dout deserializer bit slip 2 3 (lvds_load_en, diffioclk, tx_coreclock) ioe supports sdr, ddr, or non-registered datapath fpga fabric 10 rx_out (load_en, diffioclk) 2 diffioclk clock multiplexer rx_divfwdclk rx_outclock center/corner pll rx_inclock/tx_inclock (lvds_load_en, lvds_diffioclk, rx_outclock 3 lvds_diffioclk dpa_diffioclk 3 (dpa_load_en, dpa_diffioclk, rx_divfwdclk) 8 serial lvds clock phases lvds clock domain dpa clock domain
8?6 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential transmitter arria ii gx device handbook volume 1 ? february 2009 altera corporation differential transmitter the serializer takes parallel data up to 10-bits wide from the fpga fabric and converts the parallel data to serial data before sending the serial data to the differential output buffer. the differential output buffer supports programmable pre-emphasis and programmable v od controls, and can drive out mini-lvds and rsds signaling levels. figure 8?3 is a block diagram of the lvds transmitter. serializer the serializer takes parallel data from the fpga fabric, clocks it into the parallel load registers, and serializes it using the shift registers before sending the data to the differential output buffer. the msb of the parallel data is transmitted first. the parallel load and shift registers are clocked by the high-speed clock running at the serial data rate ( diffioclk ) and controlled by the load enable signal ( lvds_load_en ) generated from the pll. you can statically set the serialization factor to 4, 6, 7, 8, or 10 using the altlvds megafunction. the load enable signal is derived from the serialization factor setting. the serializer can be bypassed to support ddr (2) and sdr (1) operations to achieve a serialization factor of 2 and 1, respectively. the i/o element (ioe) contains two data output registers that can each operate in either ddr or sdr mode. figure 8?4 shows the serializer bypass path. figure 8?3. arria ii gx lvds transmitter block diagram (note 1) , (2) notes to figure 8?3 : (1) in sdr and ddr mode, the data width is 1 and 2, respectively. (2) the tx_in port has a maximum data width of 10. + - tx_coreclock fpga fabric tx_in 10 serializer 2 ioe din dout lvds transmitter ioe supports sdr, ddr, or non-registered datapath tx_out center/corner pll tx_inclock (lvds_load_en, diffioclk, tx_coreclock) 3 lvds clock domain
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?7 differential transmitter ? february 2009 altera corporation arria ii gx device handbook volume 1 differential applications often require specific clock-to-data alignments or specific data rate to clock rate factors. you can configure any arria ii gx lvds transmitter to generate a source-synchronous transmitter clock output. this flexibility allows the placement of the output clock near the data outputs to simplify board layout and reduce clock-to-data skew. the output clock can also be divided by a factor of 1, 2, 4, 6, 8, or 10, depending on the serialization factor. the phase of the clock in relation to the data can be set at 0 or 180 (edge or center aligned). the center and corner plls provide additional support for other phase shifts in 45 increments. figure 8?5 shows the arria ii gx lvds transmitter in clock output mode. in clock output mode, you can use an lvds data channel as a clock output channel. figure 8?4. arria ii gx serializer bypass (note 1) , (2) , (3) notes to figure 8?4 : (1) all disabled blocks and signals are grayed out. (2) in ddr mode, tx_inclock clocks the ioe register. in sdr mode, data is directly passed through the ioe. (3) in sdr and ddr mode, the data width to the ioe is 1 and 2, respectively. + - tx_coreclock fpga fabric tx_in 10 serializer 2 ioe din dout lvds transmitter ioe supports sdr, ddr, or non-registered datapath tx_out center/corner pll tx_inclock (lvds_load_en, diffioclk, tx_coreclock) 3 lvds clock domain figure 8?5. arria ii gx lvds transmitter in clock output mode transmitter circ uit diffioclk l v ds_load_en txclko ut? txclko ut+ parallel series fpga fa b ric center/ corner pll
8?8 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential receiver arria ii gx device handbook volume 1 ? february 2009 altera corporation differential receiver figure 8?6 shows a block diagram of an lvds receiver in the right i/o bank. the center/corner pll receives the external reference clock input ( rx_inclock ) and generates eight different phases of the same clock. the dpa block chooses one of the eight clock phases from the center/corner pll and aligns to the incoming data to maximize receiver skew margin. the synchronizer circuit is a 1-bit wide by 6-bit deep fifo buffer that compensates for any phase difference between the dpa block and the deserializer. if necessary, the user-controlled data realignment circuitry inserts a single bit of latency in the serial bit stream to align to the word boundary. the deserializer converts the serial data to parallel data, and sends the parallel data to the fpga fabric. the physical medium connecting the lvds transmitter and the receiver channels may introduce skew between the serial data and the source synchronous clock. the instantaneous skew between each lvds channel and the clock also varies with the jitter on the data and clock signals, as seen by the receiver. figure 8?6. lvds receiver block diagram (note 1) , (2) notes to ta bl e 8? 6 : (1) in sdr and ddr mode, the data width from the ioe is 1 and 2, respectively. (2) the rx_out port has a maximum data width of 10. ioe 2 deserializer bit slip synchronizer dpa circuitry 2 clock multiplexer 8 serial lvds clock phases center/corner pll rx_inclock lvds clock domain dpa clock domain 10 dout din dout din dout din din retimed data dpa clock lvds_diffiioclk dpa_diffioclk 3 (dpa_load_en, dpa_diffioclk, rx_divfwdclk) (lvds_load_en, lvds_diffioclk, rx_outclk) 3 (load_en, diffioclk) diffioclk rx_out rx_divfwdclk rx_outclock rx_in + fpga fabric lvds receiver ioe supports sdr, ddr, or non-registered datapath
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?9 differential receiver ? february 2009 altera corporation arria ii gx device handbook volume 1 the arria ii gx family supports the following receiver modes to overcome skew between the source-synchronous or reference clock and the received serial data: 1 c crcr r f vc r wc rr rr r cr c dynamic phase alignment (dpa) block the dpa block takes in high-speed serial data from the differential input buffer and selects the optimal phase from one of the eight clock phases generated by the center/corner pll to sample the data. the eight phases of the clock are equally divided, giving a 45 resolution. the maximum phase offset between the received data and the selected phase is 1/8 unit interval (ui), which is the maximum quantization error of the dpa. the optimal clock phase selected by the dpa block ( dpa_diffioclk ) is also used to write data into the fifo buffer or to clock the serdes for soft-cdr operation. figure 8?7 shows the possible phase relationships between the dpa clocks and the incoming serial data. the dpa block requires a training pattern and a training sequence of at least 256 repetitions. the training pattern is not fixed, so you can use any training pattern with at least one transition. an optional user controlled signal ( rx_dpll_hold ) freezes the dpa on its current phase when asserted. this is useful if you do not want the dpa to continuously adjust phase after initial phase selection. figure 8?7. dpa clock phase to serial data timing relationship (note 1) note to figure 8?7 : (1) t vco is defined as the pll serial clock period. 45? 90? 135? 180? 225? 270? 315? 0.125t vco t vco 0? rx_in d0 d1 d2 d3 d4 dn
8?10 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential receiver arria ii gx device handbook volume 1 ? february 2009 altera corporation the dpa loses lock when it switches phases to maintain an optimal sampling phase. once locked, the dpa can lose lock under either of the following conditions: rx_reset ) is routed from the fpga fabric to reset the dpa circuitry in user mode. the dpa circuitry must be retrained after reset. synchronizer the synchronizer is a 1-bit wide and 6-bit deep fifo buffer that compensates for the phase difference between the dpa_diffioclk and the high-speed clock ( lvds_diffioclk ) produced by the center/corner pll. because every dpa channel might have a different phase selected to sample the data, the fifo buffer is needed to synchronize the data to the high-speed lvds clock domain. the synchronizer can only compensate for phase differences, not frequency differences between the data and the receiver?s input reference clock, and is automatically reset when the dpa first locks to the incoming data. an optional signal ( rx_fifo_reset ) is available to the fpga fabric to reset the synchronizer. altera ? recommends using rx_fifo_reset to reset the synchronizer when the dpa signal is in a loss-of-lock condition and data checker indicates corrupted received data. data realignment block (bit slip) skew in the transmitted data along with skew added by the link causes channel-to-channel skew on the received serial data streams. if dpa is enabled, the received data is captured with different clock phases on each channel. this might cause the received data to be misaligned from channel to channel. to compensate for this channel-to-channel skew and establish the correct received word boundary at each channel, each receiver channel has a dedicated data realignment circuit that realigns the data by inserting bit latencies into the serial stream. an optional signal ( rx_channel_data_align ) controls the bit insertion of each receiver independently controlled from the internal logic. the data slips one bit on the rising edge of rx_channel_data_align . the following are requirements for the rx_channel_data_align signal: rx_channel_data_align does not result in extra slips rx_channel_data_align signal
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?11 differential receiver ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 8?8 shows receiver output after one bit-slip pulse with the deserialization factor set to 4. the data realignment circuit can have up to 11 bit-times of insertion before a rollover occurs. the programmable bit rollover point can be from 1 to 11 bit-times, independent of the deserialization factor. the programmable bit rollover point needs to be set to equal to or greater than the deserialization factor, allowing enough depth in the word alignment circuit to slip through a full word. you can set the value of the bit rollover point using the altlvds megafunction. an optional status signal ( rx_cda_max ) is available to the fpga fabric from each channel to indicate when the preset rollover point is reached. figure 8?9 shows a preset value of four-bit times before rollover occurs. the rx_cda_max signal pulses for one rx_outclock cycle to indicate that the rollover has occurred. deserializer the deserializer, which includes shift registers and parallel load registers, converts the serial data from the bit slip to parallel data before sending the data to the fpga fabric. the deserialization factor supported is 4, 6, 7, 8, or 10. the deserializer can be bypassed to support ddr (2) and sdr (1) operations, as shown in figure 8?10 . the dpa and data realignment circuit cannot be used when the deserializer is bypassed. the ioe contains two data input registers that can operate in ddr or sdr mode. figure 8?8. data realignment timing rx_in rx_outclock rx_channel_data_align rx_out rx_inclock 3 3210 321x xx21 0321 2 1 0 3 2 1 0 3 2 1 0 figure 8?9. receiver data re-alignment rollover rx_outclock rx_channel_data_align rx_cda_max rx_inclock
8?12 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential receiver arria ii gx device handbook volume 1 ? february 2009 altera corporation receiver data path modes the arria ii gx device family supports three receiver datapath modes: non-dpa mode non-dpa mode allows you to statically select the optimal phase between the source-synchronous reference clock and the input serial data to compensate for any skew between the two signals. the reference clock must be a differential signal. figure 8?11 shows the non-dpa datapath block diagram. input serial data is registered at the rising or falling edge of the lvds_diffioclk clock produced by the center/corner pll. you can select the rising/falling edge option using the altlvds megafunction. both data realignment and deserializer blocks are clocked by the lvds_diffioclk clock. 1 rfr r rc w c r v figure 8?10. arria ii gx deserializer bypass (note 1) , (2) , (3) notes to figure 8?10 : (1) all disabled blocks and signals are grayed out. (2) in ddr mode, rx_inclock clocks the ioe register. in sdr mode, data is directly passed through the ioe. (3) in sdr and ddr mode, the data width from the ioe is 1 and 2, respectively. ioe 2 deserializer dese r deser ia li z ializ e r er bit slip synchroniz er d p a circuitr p p y 2 c loc k m u l t ipl exer p 8 s e r ial l vds l l c loc k phases center/corner pll center/corner pll 2 dout din dout din do u t din din r etimed da t a dp a cloc p p k l vds_diffiioclk l l d p a_diffioclk p p 3 (dp a_lo p p a d_en , dp a_diffioclk, p p rx_divfwdclk ) (l vds_lo l l ad_en, l vds_diffioclk, l l rx_outclk ) 3 ( load_en, diffioclk ) di ff iocl k rx_out r x _ div f wdclk rx_outc l oc k rx_in + fpga fabric lvds receiver ioe supports sdr, ddr, or non-registered datapath
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?13 differential receiver ? february 2009 altera corporation arria ii gx device handbook volume 1 dpa mode in dpa mode, the dpa circuitry automatically chooses the optimal phase between the source synchronous reference clock and the input serial data to compensate for the skew between the two signals. the reference clock must be a differential signal. figure 8?12 shows the dpa mode receiver datapath block diagram. the dpa_diffioclk clock is used to write serial data into the synchronizer. the lvds_diffioclk clock is used to read the serial data from the synchronizer. the same lvds_diffioclk clock is used in the data realignment and deserializer blocks. figure 8?11. receiver datapath in non-dpa mode (note 1) , (2), (3) notes to figure 8?11 : (1) all disabled blocks and signals are grayed out. (2) in sdr and ddr mode, the data width from the ioe is 1 and 2, respectively. (3) the rx_out port has a maximum data width of 10. 2 deserializer bit slip synchroniz er d p a circuitr p p y 2 clock multiplexer 8 s e r ial l vds l l c loc k phases center/corner pll rx_inclock lvds clock domain 10 dout din dout din do u t din n din r etimed d ata dp a cloc p p k l vds_diffiioclk l l d p a_diffioclk p p 3 (dp a_lo p p a d_en , dp a_diffioclk, p p rx_divfwdclk ) (lvds_load_en, lvds_diffioclk, rx_outclk) 3 (load_en, diffioclk) diffioclk rx_out r x _ div f wdclk rx_outclock rx_in + fpga fabric lvds receiver i o e s uppo r t s s dr, ddr, or non-registered datapat h i o e
8?14 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential receiver arria ii gx device handbook volume 1 ? february 2009 altera corporation soft-cdr mode figure 8?13 shows the soft-cdr mode datapath block diagram. in soft-cdr mode, the pll uses the local clock source as the reference clock. the reference clock must be a differential signal. the dpa continuously changes its phase to track the parts-per- million (ppm) difference between the upstream transmitter and the local receiver reference input clocks. the dpa_diffioclk clock is used for bit-slip operation and deserialization. the dpa_diffioclk clock is divided by the deserialization factor to produce the rx_divfwdclk clock, which is then forwarded to the fpga fabric. the receiver output data ( rx_out ) to the fpga fabric is synchronized to this clock. the parallel clock rx_outclock , generated by the center/corner pll, is also forwarded to the fpga fabric. figure 8?12. receiver datapath in dpa mode (note 1) , (2) , (3) notes to figure 8?12 : (1) all disabled blocks and signals are grayed out. (2) in sdr and ddr mode, the data width from the ioe is 1 and 2, respectively. (3) the rx_out port has a maximum data width of 10. 2 deserializer bit slip synchronizer dpa circuitry 2 clock multiplier 8 serial lvds clock phases center/corner pll rx_inclock lvds clock domain dpa clock domain 10 dout din dout din dout din din retimed data dpa clock lvds_diffiioclk dpa_diffioclk 3 (dpa_load_en, dpa_diffioclk, rx_divfwdclk) (lvds_load_en, lvds_diffioclk, rx_outclk) 3 (load_en, diffioclk) diffioclk rx_out rx_divfwdcl k rx_outclock rx_in + fpga fabric lvds receiver i o e s u pp o r t s s dr, ddr, or non-re g istered datapat h io e
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?15 programmable pre-emphasis and programmable v od . ? february 2009 altera corporation arria ii gx device handbook volume 1 programmable pre-emphasis and programmable v od . pre-emphasis increases the amplitude of the high frequency component of the output signal and thus helps to compensate for the frequency-dependent attenuation along the transmission line. figure 8?14 shows the lvds output single-ended waveform with and without pre-emphasis. the definition of v od is also shown. figure 8?13. receiver datapath in soft-cdr mode (note 1) , (2) , (3) notes to figure 8?13 : (1) all disabled blocks and signals are grayed out. (2) in sdr and ddr mode, the data width from the ioe is 1 and 2, respectively. (3) the rx_out port has a maximum data width of 10. 2 deserializer bit slip synchronizer dpa circuitry 2 clock multiplexer 8 serial lvds clock phases center/corner pll rx_inclock lvds clock domain dpa clock domain 10 dout din dout din dout din din retimed data dpa clock lvds_diffiioclk dpa_diffioclk 3 (dpa_load_en, dpa_diffioclk, rx_divfwdclk) (lvds_load_en, lvds_diffioclk, rx_outclk) 3 (load_en, diffioclk) diffioclk rx_out rx_divfwdclk rx_outclock rx_in + fpga fabric lvds receiver i o e s u pp or t s s dr, ddr, or non-re g istered datapat h io e
8?16 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices programmable pre-emphasis and programmable v od . arria ii gx device handbook volume 1 ? february 2009 altera corporation pre-emphasis is an important feature for high-speed transmission. without pre-emphasis, the output current is limited by the v od setting and the output impedance of the driver. at high frequency, the slew rate may not be fast enough to reach the full v od before the next edge, producing a pattern-dependent jitter. with pre-emphasis, the output current is boosted momentarily during switching to increase the output slew rate. the overshoot introduced by the extra current happens only during switching and does not ring, unlike the overshoot caused by signal reflection. this overshoot should not be included in the v od voltage. there are two pre-emphasis settings for each lvds output buffer: no pre-emphasis and medium. the default setting is medium. table 8?4 shows the assignment name and its possible values for programmable pre-emphasis in the quartus ii software assignment editor. the setting of no pre-emphasis is 1 and the setting of medium is 0. there is one v od setting for each lvds output buffer. table 8?5 shows the assignment name and the value for programmable v od in the quartus ii software assignment editor. figure 8?14. lvds output single-ended waveform with and without programmable pre-emphasis (note 1) note to figure 8?14 : (1) v p ? voltage boost from pre-emphasis. out out out out without programmable pre-emphasis with programmable pre-emphasis v od v od v p v p tab le 8 ?4 . programmable pre-emphasis settings in quartus ii software assignment editor assignment name programmable pre-emphasis allowed values 0, 1 tab le 8 ?5 . programmable v od settings in quartus ii software assignment editor assignment name programmable differential output voltage (v od ) allowed values 2
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?17 differential i/o termination ? february 2009 altera corporation arria ii gx device handbook volume 1 differential i/o termination the arria ii gx device family provides 100- clk[4..15]) do not support oct. table 8?6 shows the assignment name and its value for on-chip differential input termination in the quartus ii software assignment editor. plls the arria ii gx device family contains up to six plls with up to four center and corner plls located on the right side of the device. the center/corner pll on the right side of the device is used to generate parallel clocks ( rx_outclock and tx_outclock ) and high-speed clocks ( diffioclk ) for the serdes and dpa circuitry. figure 8?1 on page 8?3 shows the locations of the plls for arria ii gx devices. clock switchover and dynamic reconfiguration are allowed using the center/corner plls in high-speed differential i/o support mode. f r r fr rfr clock network and plls in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . lvds and dpa clock networks the arria ii gx device family only has lvds and dpa clock networks on the right side of the device. the center/corner plls feed into the differential transmitter and receiver channels through the lvds and dpa clock networks. figure 8?16 and figure 8?17 show the lvds clock tree for family members without center plls and with center plls, respectively. the center plls can drive the lvds clock tree above and below them. in arria ii gx devices with or without center plls, the corner plls can drive both top and bottom lvds clock tree. figure 8?15. lvds input buffer on-chip differential i/o termination tab le 8 ?6 . on-chip differential input termination in quartus ii software assignment editor assignment name input termination (accepts wildcards/groups) allowed values differential lv d s transmitter arria ii gx differential receiver with on-chip 100 termination r d z 0 = 50 z 0 = 50
8?18 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices source-synchronous timing budget arria ii gx device handbook volume 1 ? february 2009 altera corporation source-synchronous timing budget this section describes the timing budget, waveforms, and specifications for source-synchronous signaling in the arria ii gx device family. timing analysis for the differential block is different from traditional synchronous timing analysis techniques. therefore, it is important to understand how to analyze timing for high-speed differential signals. this section defines the source-synchronous differential data orientation timing parameters, timing budget definitions, and how to use these timing parameters to determine your design?s maximum performance. figure 8?16. lvds and dpa clock networks in the arria ii gx family without center plls 4 qu adrant qu adrant qu adrant qu adrant 8 4 4 l vds clock corner pll dpa clock 4 corner pll no lvds and dpa clock networks on the left side of the device figure 8?17. lvds and dpa clock networks in the arria ii gx family with center plls 4 4 qu adrant qu adrant qu adrant qu adrant 8 4 4 4 8 4 l vds clock center pll center pll dpa clock l vds clock dpa clock corner pll corner pll no lvds and dpa clock networks on the left side of the device
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?19 source-synchronous timing budget ? february 2009 altera corporation arria ii gx device handbook volume 1 differential data orientation there is a set relationship between an external clock and the incoming data. for operation at 1 gbps and a serialization factor of 10, the external clock is multiplied by 10. you can set the phase-alignment in the pll to coincide with the sampling window of each data bit. the data is sampled on the falling edge of the multiplied clock. figure 8?18 shows the data bit orientation of the 10 mode. differential i/o bit position data synchronization is necessary for successful data transmission at high frequencies. figure 8?19 shows data bit orientation for a channel operation. these figures are based on the following: figure 8?18. bit orientation 9 8 7 6 5 4 3 2 1 0 10 lvds bits msb lsb inclock/o u tclock data in figure 8?19. bit order and word boundary for one differential channel (note 1) note to figure 8?19 : (1) these are only functional waveforms and are not intended to convey timing information. previous cycle 76543210 msb lsb tx_outclock tx_out xxxxxxxx xxx xxxxx current cycle next cycle transmitter channel operation (x8 mode) x xxxxxxxx rx_inclock rx_in 76543210 xxx xxxxxxx xxxx x receiver channel operation (x8 mode) rx_outclock rx_out [7..0] x x x x x x x x x x x x x x x x x x x x 7 6 5 4 3 2 1 0 x x x x
8?20 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices source-synchronous timing budget arria ii gx device handbook volume 1 ? february 2009 altera corporation table 8?7 shows the conventions for differential bit naming for 18 differential channels. the msb and lsb positions increase with the number of channels used in a system. receiver skew margin for non-dpa mode changes in system environment, such as temperature, media (cable, connector, or pcb), and loading, effect the receiver ?s setup and hold times; internal skew affects the sampling ability of the receiver. different modes of lvds receivers use different specifications, which can help in deciding the ability to sample the received serial data correctly. in dpa mode, use dpa jitter tolerance instead of receiver skew margin (rskm). in non-dpa mode, rskm, transmitter channel-to-channel skew (tccs), and sampling window (sw) specifications are used for high-speed source-synchronous differential signals in the receiver data path. the relationship between rskm, tccs, and sw can be expressed by the rskm equation shown in equation 8?1 : tab le 8 ?7 . differential bit naming receiver channel data number internal 8-bit parallel data msb position lsb position 170 21 58 32 31 6 43 12 4 53 93 2 64 74 0 75 54 8 86 35 6 97 16 4 10 79 72 11 87 80 12 95 88 13 103 96 14 111 104 15 119 112 16 127 120 17 135 128 18 143 136 equation 8?1. rskm = (tui - sw - tccs)/2
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?21 differential pin placement guidelines ? february 2009 altera corporation arria ii gx device handbook volume 1 where: report_rskm command in the timequest timing analyzer. you can find the rskm report in the quartus ii compilation report under timequest timing analyzer section. 1 v rr rcvr r r cr differential pin placement guidelines to ensure proper high-speed operation, differential pin placement guidelines are established. the quartus ii compiler automatically checks that these guidelines are followed and issues an error message if they are not adhered to. this section is divided into pin placement guidelines with and without dpa usage. 1 ffr c rfr r f c rfr figure 8?20. differential high-speed timing diagram and timing budget for non-dpa sampling window (sw) time unit interval (tui) rskm tccs rskm tccs internal clock external input clock receiver input data
8?22 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential pin placement guidelines arria ii gx device handbook volume 1 ? february 2009 altera corporation dpa- enabled channels and single-ended i/os when single-ended i/os and lvds i/os share the same i/o bank, the placement of single-ended i/o pins with respect to lvds i/o pins is restricted. the constraints on single-ended i/os placement with respect to dpa-enabled or dpa-disabled lvds i/os are the same. f r r fr c w rc rfr i/o management chapter in volume 2 of the quartus ii development software handbook . guidelines for dpa-enabled differential channels when you use dpa-enabled channels, you must adhere to the guidelines listed in the following sections. dpa-enabled channel driving distance if the number of dpa-enabled channels driven by each center or corner pll exceeds 25 logic array blocks (lab) rows, altera recommends implementing data realignment (bit slip) circuitry for all the dpa channels. using center and corner plls
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?23 differential pin placement guidelines ? february 2009 altera corporation arria ii gx device handbook volume 1 using both center plls  you can use both center plls to drive dpa-enabled channels simultaneously, as long as they drive these channels in their adjacent banks only, as shown in figure 8?21 .  if one of the center plls drives the dpa-enabled channels in the upper and lower i/o banks, the other center pll cannot be used for dpa, as shown in figure 8?22 . figure 8?21. center and corner plls driving dpa-enabled differential i/os in the same bank center pll corner pll diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa -enabled diff i/o dpa- enabled diff i/o channels driven by corner pll channels driven by center pll dpa -enabled diff i/o dpa - enabled diff i/o dpa - enabled diff i/o dpa - enabled diff i/o dpa - enabled diff i/o reference reference clk clk
8?24 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential pin placement guidelines arria ii gx device handbook volume 1 ? february 2009 altera corporation  if the upper center pll drives dpa-enabled channels in the lower i/o bank, the lower center pll cannot drive dpa enabled channels in the upper i/o bank, and vice versa. in other words, the center plls cannot drive cross-banks simultaneously, as shown in figure 8?23 . figure 8?22. center plls driving dpa-enabled differential i/os reference clk dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o center pll center pll center pll center pll unused pll reference clk reference clk reference clk dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o dpa-enabled diff i/o
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?25 differential pin placement guidelines ? february 2009 altera corporation arria ii gx device handbook volume 1 using both corner plls  you can use both corner plls to drive dpa-enabled channels simultaneously, as long as they drive the channels in their adjacent banks only. there must be at least one row of separation between the two groups of dpa-enabled channels.  if one of the corner plls drives dpa-enabled channels in the upper and lower i/o banks, the center plls cannot be used. the other corner pll can be used to drive dpa-enabled channels in their adjacent bank only. there must be at least one row of separation between the two groups of dpa-enabled channels. see figure 8?24 . figure 8?23. invalid placement of dpa-disabled differential i/os driven by both center plls dpa-disabled diff i/o center pll dpa-disabled diff i/o dpa-disabled diff i/o reference clk reference clk dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o center pll
8?26 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential pin placement guidelines arria ii gx device handbook volume 1 ? february 2009 altera corporation  if the upper corner pll drives dpa-enabled channels in the lower i/o bank, the lower corner pll cannot drive dpa-enabled channels in the upper i/o bank, and vice versa. in other words, the corner plls cannot drive cross-banks simultaneously, as shown in figure 8?24 . figure 8?24. corner plls driving dpa-enabled differential i/os upper corner pll diff i/o dpa-enabled diff i/o dpa -enabled diff i/o dpa- enabled diff i/o reference clk upper i/o bank lower i/o bank unused plls dpa -enabled diff i/o dpa - enabled diff i/o dpa - enabled diff i/o dpa - enabled diff i/o reference clk center pll center pll lower corner pll
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?27 differential pin placement guidelines ? february 2009 altera corporation arria ii gx device handbook volume 1 guidelines for dpa-disabled differential channels when you use dpa-disabled channels, you must adhere to the guidelines in the following sections. dpa-disabled channel driving distance each pll can drive all the dpa-disabled channels in the entire bank. using corner and center plls
8?28 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential pin placement guidelines arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 8?25. corner and center plls driving dpa-disabled differential i/os in the same bank diff rx corner pll diff tx diff rx diff rx diff tx diff tx diff tx diff tx diff tx diff tx diff rx diff rx diff tx diff rx diff rx diff tx diff rx diff rx diff rx diff tx corner pll dpa-disabled diff i/o channels dri v en b y corner pll channels dri v en b y center pl n o separation bu ffer needed reference clk reference clk reference clk reference clk dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o center pll center pll
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?29 differential pin placement guidelines ? february 2009 altera corporation arria ii gx device handbook volume 1 using both center plls you can use both center plls simultaneously to drive dpa disabled channels on upper and lower i/o banks. unlike dpa-enabled channels, the center plls can drive dpa-disabled channels cross-banks. for example, the upper center pll can drive the lower i/o bank at the same time the lower center pll is driving the upper i/o bank, and vice versa, as shown in figure 8?27 . figure 8?26. invalid placement of dpa-disabled differential i/os due to interleaving of channels driven by the corner and center plls dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o corner pll reference clk dpa-disabled diff i/o dpa-disabled diff i/o reference clk center pll
8?30 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices differential pin placement guidelines arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 8?27. both center plls driving cross-bank dpa-disabled channels simultaneously dpa-disabled diff i/o center pll dpa-disabled diff i/o dpa-disabled diff i/o reference clk reference clk dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o dpa-disabled diff i/o center pll
chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices 8?31 setting up an lvds transmitter or receiver channel ? february 2009 altera corporation arria ii gx device handbook volume 1 using both corner plls you can use both corner plls to drive dpa disabled channels simultaneously. both corner plls can drive cross-banks. you can use a corner pll to drive all the transmitter channels and you can use the other corner pll to drive all dpa-disabled receiver channels in the same i/o bank. both corner plls can drive duplex channels in the same i/o bank, as long as the channels driven by each pll are not interleaved. no separation is necessary between the group of channels driven by both corner plls. setting up an lvds transmitter or receiver channel altera?s altlvds megafunction offers you the ease of setting up an lvds transmitter or receiver channel. you can control the settings of serdes and dpa circuitry in the altlvds megafunction. when you instantiate an altlvds megafunction, the pll is instantiated automatically and you can set the parameters of the pll. this simplifies the clocking setup for the lvds transmitter or receiver channels. however, the drawback is reduced flexibility in pll utilization. the altlvds megafunction provides an option for implementing the lvds transmitter or receiver interfaces with external plls. with this option enabled, you can control the pll settings, such as dynamically reconfiguring the plls to support different data rates, dynamic phase shift, and other settings. you also must instantiate an altpll megafunction to generate the various clock and load enable signals. f for more information about how to control the pll, serdes, and dpa settings, and detail descriptions of the lvds transmitter and receiver interface signals, refer to the altlvds megafunction user guide . f for more information about the altpll megafunction, refer to the altpll megafunction user guide . document revision history table 8?8 shows the revision history for this document. tab le 8 ?8 . document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
8?32 chapter 8: high-speed differential i/o interfaces and dpa in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 section iii. system integration this section provides information about arria ? ii gx device configuration, design security, remote system upgrades, seu mitigation, jtag, and power requirements. this section includes the following chapters: chapter 9, configuration, design security, and remote system upgrades in arria ii gx devices chapter 10, seu mitigation in arria ii gx devices chapter 11, jtag boundary-scan testing chapter 12, power requirements for arria ii gx devices revision history refer to each chapter for its own specific revision history. for information on when each chapter was updated, refer to the chapter revision dates section, which appears in this volume.
iii?2 section iii: system integration arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 9. configuration, design security, and remote system upgrades in arria ii gx devices introduction this chapter contains information about the arria ? ii gx supported configuration schemes, instructions about how to execute the required configuration schemes, and all the necessary option pin settings. this chapter includes the following sections: ?configuration features? on page 9?2 ?power-on reset circuit and configuration pins power supply? on page 9?3 ?configuration process? on page 9?4 ?configuration schemes? on page 9?6 ?fast passive parallel configuration? on page 9?8 ?active serial configuration (serial configuration devices)? on page 9?15 ?passive serial configuration? on page 9?22 ?jtag configuration? on page 9?28 ?device configuration pins? on page 9?34 ?configuration data decompression? on page 9?40 ?remote system upgrades? on page 9?42 ?remote system upgrade mode? on page 9?46 ?dedicated remote system upgrade circuitry? on page 9?48 ?quartus ii software support? on page 9?53 ?design security? on page 9?54 arria ii gx devices use sram cells to store configuration data. as sram memory is volatile, you must download configuration data to the arria ii gx device each time the device powers up. you can configure arria ii gx devices using one of four configuration schemes: fast passive parallel (fpp) fast active serial (as) passive serial (ps) joint test action group (jtag) all configuration schemes use either an external controller (for example, a max ? ii device or microprocessor), a configuration device, or a download cable. for more information about the configuration features, refer to ?configuration features? on page 9?2 . aiigx51009-1.0
9?2 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices configuration features arria ii gx device handbook volume 1 ? february 2009 altera corporation configuration devices altera ? serial configuration devices support single-device and multi-device configuration solutions for arria ii gx devices and are used by the fast as configuration scheme. serial configuration devices offer a low-cost, low pin-count configuration solution. f for information about serial configuration devices, refer to the serial configuration devices (epcs1, epcs4, epcs16, epcs64, and epcs128) data sheet in volume 2 of the configuration handbook . 1 all minimum timing information in this chapter covers the entire arria ii gx device family. some devices may work at less than the minimum timing stated in this chapter due to process variations table 9?3 on page 9?7 shows the uncompressed raw binary file ( .rbf ) configuration file sizes for arria ii gx devices. configuration features arria ii gx devices offer decompression, design security, and remote system upgrade features. arria ii gx devices can receive a compressed configuration bitstream and decompress this data in real-time, reducing storage requirements and configuration time. design security using configuration bitstream encryption is available in arria ii gx devices, which protects your designs. you can make real-time system upgrades of your arria ii gx designs from remote locations with the remote system upgrade feature. table 9?1 summarizes which configuration features you can use in each configuration scheme. tab le 9 ?1 . arria ii gx configuration features configuration scheme configuration method decompression design security remote system upgrade fpp max ii device or a microprocessor with flash memory v (1) v (1) ? fast as serial configuration device vvv (2) ps max ii device or a microprocessor with flash memory vv ? download cable vv ? jtag max ii device or a microprocessor with flash memory ??? d o w n l o a d c a b l e ??? notes to ta bl e 9? 1 : (1) in these modes, the host system must send a dclk that is 4 the data rate. (2) remote system upgrade is only available in the fast as configuration scheme. only remote update mode is supported when using the fast as configuration scheme. local update mode is not supported.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?3 power-on reset circuit and c onfiguration pins power supply ? february 2009 altera corporation arria ii gx device handbook volume 1 you can also refer to the following: for more information about the configuration data decompression feature, refer to ?configuration data decompression? on page 9?40 . for more information about the remote system upgrade feature, refer to ?remote system upgrades? on page 9?42 . for more information about the design security feature, refer to the ?design security? on page 9?54 . for more information about the parallel flash loader (pfl), refer to an 386: using the max ii parallel flash loader with the quartus ii software . if your system already contains a common flash interface (cfi) flash memory device, you can use it for the arria ii gx device configuration storage as well. the pfl feature in max ii devices provides an efficient method to program cfi flash memory devices through the jtag interface and logic to control configuration from the flash memory device to the arria ii gx device. both ps and fpp configuration modes are supported using the pfl feature. for more information about programming altera serial configuration devices, refer to ?programming serial configuration devices? on page 9?20 . power-on reset circuit and configuration pins power supply the following section describes the power-on reset (por) circuit and the power supply for the configuration pins. power-on reset circuit the por circuit keeps the entire system in reset mode until the power supply voltage levels have stabilized on power-up. upon power-up, the device does not release nstatus until v cccb , v cca_pll , v cc , v ccpd , and v ccio for i/o banks 3c or 8c are above the device?s por trip point. on power down, brown-out occurs if v cc ramps down below the por trip point and any of the v cc , v ccpd , or v ccio for i/o banks 3c or 8c drops below the threshold level of the hot-socket circuitry. in arria ii gx devices, you can select between a fast por time or a standard por time, depending on the msel pin settings. the fast por time is typically 4 ms for fast configuration time. the standard por time is typically 100 ms, which has a lower power-ramp rate. v ccio pins for i/o banks 3c and 8c in arria ii gx devices, all the dedicated configuration pins and some of the dual function pins are supplied by the v ccio for i/o banks 3c and 8c in which they reside. the supported configuration voltages are 1.8, 2.5, 3.0, and 3.3 v. arria ii gx devices do not support the 1.5-v configuration. you must use v ccio for i/o banks 3c and 8c to power all dedicated configuration inputs, dedicated configuration outputs, dedicated configuration bidirectional pins, and some of the dual functional pins that you use for configuration. with v ccio for i/o banks 3c and 8c, configuration input buffers do not have to share power lines with the regular i/o buffer.
9?4 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices configuration process arria ii gx device handbook volume 1 ? february 2009 altera corporation the operating voltage for the configuration input pin is independent of the i/o bank?s power supply v ccio during configuration. therefore, no configuration voltage constraints on v ccio are needed in arria ii gx devices. v ccpd pins arria ii gx devices have a dedicated programming power supply, v ccpd , which must be connected to 3.3 v, 3.0 v, or 2.5 v to power the i/o pre-drivers, the jtag output pin ( tdo ), and the msel[3..0] pins. 1 v ccpd and v ccio for i/o banks 3c and 8c must ramp up from 0 v to the desired voltage level in 100 ms when you select standard por time or 4 ms when you select fast por time. if these supplies are not ramped up in this specified time, your arria ii gx device will not configure successfully. if your system cannot ramp up the power supplies in 100 ms or 4 ms, you must hold nconfig low until all the power supplies are stable. 1 yo u m u st c o nn e ct v ccpd according to the i/o standard used in the same bank: for 3.3-v i/o standards, connect v ccpd to 3.3 v for 3.0-v i/o standards, connect v ccpd to 3.0 v for 2.5-v and below i/o standards, connect v ccpd to 2.5 v for more information about configuration pins power supply, refer to ?device configuration pins? on page 9?34 . configuration process the following sections describe the general configuration process for fpp, fast as, and ps schemes. power up to begin the configuration process, you must fully power v cc , v cccb , v cca_pll , v ccpd , and v ccio (including i/o banks 3c and 8c where the configuration and jtag pins reside) to the appropriate voltage levels. 1 for fpp configuration, pins data[7..1] will be used and they are supplied by the v ccio for i/o bank 6a. this bank needs to be powered up when fpp configuration is used. reset upon power-up, the arria ii gx device goes through a por. the por delay is dependent on the msel pin settings. during por, the device resets, holds nstatus low, clears configuration ram bits, and tri-states all user i/o pins. once the device successfully exits por, all user i/o pins continue to be tri-stated. while nconfig is low, the device is in reset. when the device comes out of reset, nconfig must be at a logic-high level in order for the device to release the open-drain nstatus pin. after nstatus is released, it is pulled high by a pull-up resistor and the device is ready to receive configuration data.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?5 configuration process ? february 2009 altera corporation arria ii gx device handbook volume 1 before and during configuration, all user i/o pins are tri-stated. if nio_pullup is driven low during power up and configuration, the user i/o pins and dual-purpose i/o pins have weak pull-up resistors, which are on (after por) before and during configuration. if nio_pullup is driven high, the weak pull-up resistors are disabled. configuration nconfig and nstatus must be at a logic-high level in order for the configuration stage to begin. the device receives configuration data on its data pins and (for synchronous configuration schemes) the clock source on the dclk pin. configuration data is latched into the fpga on the rising edge of dclk . after the fpga has received all the configuration data successfully, it releases the conf_done pin, which is pulled high by a pull-up resistor. a low-to-high transition on conf_done indicates configuration is complete and initialization of the device can begin. to en s u re dclk and data0 are not left floating at the end of configuration, they must be driven either high or low, whichever is convenient on your board. data[0] is a dedicated pin that is used for both passive and active configuration modes. it is not available as a user i/o pin after configuration. for fpp and ps configuration schemes, the configuration clock ( dclk ) speed must be below the specified frequency to ensure correct configuration. no maximum dclk period exists, which means you can pause the configuration by halting dclk for an indefinite amount of time. a reconfiguration is initiated by toggling the nconfig pin from high to low and then back to high with a minimum t cfg low-pulse width either in the configuration, configuration error, initialization, or user mode stage. when nconfig is pulled low, nstatus and conf_done are also pulled low and all i/o pins are tri-stated. once nconfig and nstatus return to a logic-high level, configuration begins. configuration error if an error occurs during configuration, arria ii gx devices assert the nstatus signal low, indicating a data frame error; the conf_done signal stays low. if the auto-restart configuration after error option (available in the quartus ii software from the general tab of the device and pin options dialog box) is turned on, the arria ii gx device resets the configuration device and retries the configuration. if this option is turned off, the system must monitor nstatus for errors and then pulse nconfig low to restart the configuration. initialization in arria ii gx devices, the initialization clock source is either the internal oscillator or the optional clkusr pin. by default, the internal oscillator is the clock source for initialization. if you use the internal oscillator, the arria ii gx device provides itself with enough clock cycles for proper initialization. therefore, if the internal oscillator is the initialization clock source, sending the entire configuration file to the device is sufficient to configure and initialize the device. driving dclk to the device after configuration is complete does not affect device operation.
9?6 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices configuration schemes arria ii gx device handbook volume 1 ? february 2009 altera corporation you also have the flexibility to synchronize initialization of multiple devices or to delay initialization with the clkusr option. you can turn on the enable user-supplied start-up clock (clkusr) option in the quartus ii software from the general tab of the device and pin options dialog box. if you supply a clock on clkusr , it will not affect the configuration process. after all the configuration data is accepted and conf_done goes high, clkusr is enabled after the time specified as t cd2cu . after this time period elapses, arria ii gx devices require a minimum number of clock cycles to initialize properly and enter user mode as specified in the t cd2umc parameter. user mode an optional init_done pin is available, which signals the end of initialization and the start of user-mode with a low-to-high transition. the enable init_done output option is available in the quartus ii software from the general tab of the device and pin options dialog box. if you use the init_done pin, it is high due to an external 10-k pull-up resistor when nconfig is low and during the beginning of configuration. once the option bit to enable init_done is programmed into the device (during the first frame of configuration data), the init_done pin goes low. when initialization is complete, the init_done pin is released and pulled high. when initialization is complete, the device enters user mode. in user-mode, the user i/o pins no longer have weak pull-up resistors and function as assigned in your design. configuration schemes the following sections describe configuration schemes for arria ii gx devices. msel pin settings select the configuration scheme by driving the arria ii gx device msel pins either high or low, as shown in table 9?2 . the msel input buffers are powered by the v ccpd power supply. altera recommends you hardwire the msel[] pins to v ccpd or gnd. the msel[3..0] pins have 5-k internal pull-down resistors that are always active. during por and during reconfiguration, the msel pins must be at lvttl v il and v ih levels to be considered logic low and logic high, respectively. 1 to avoid problems with detecting an incorrect configuration scheme, hardwire the msel[] pins to v cc p d or gnd without pull-up or pull-down resistors. do not drive the msel[] pins by a microprocessor or another device. tab le 9 ?2 . arria ii gx configuration schemes (part 1 of 2) configuration scheme msel3 msel2 msel2 msel0 por delay configuration voltage standard (v) (1) fast passive parallel (fpp) 0 0 0 0 fast 3.3, 3.0/2.5 0111fast 1.8 fpp with design security feature and/or decompression enabled (2) 0 0 0 1 fast 3.3, 3.0/2.5 1000fast 1.8
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?7 configuration schemes ? february 2009 altera corporation arria ii gx device handbook volume 1 raw binary file size table 9?3 shows the uncompressed raw binary file ( .rbf ) configuration file sizes for arria ii gx devices. passive serial (ps) 0 0 1 0 fast 3.3, 3.0/2.5 1001fast 1.8 1 0 1 0 standard 3.3, 3.0/2.5 1011standard1.8 active serial (as) with or without remote system upgrade (3) 0011fast 3.3 1 1 0 1 fast 3.0/2.5 1110standard3.3 1 1 1 1 standard 3.0/2.5 jtag-based configuration (4) (5) (5) (5) (5) ?? notes to ta bl e 9? 2 : (1) configuration voltage standard applied to the v ccio supply in which the configuration pins reside. (2) these modes are only supported when using a max ii device or a microprocessor with flash memory for configuration. in these modes, the host system must output a dclk that is 4 the data rate. (3) epcs16, epcs64, and epcs128 support up to a 40 mhz dclk and are supported in arria ii gx devices. existing batches of e pcs4 manufactured on 0.15 m process geometry s upport up to a 40 mhz dclk and are supported in arria ii gx devices. for information about product traceability and transition date to differentiate between the 0.15 m process geometry and the 0.18 m process geometry epcs1 and epcs4, refer to pcn 0514 manufacturing changes on epcs family pro cess change notification on the altera website at www.altera.com . (4) jtag-based configuration takes precedence over other configuration schemes, which means msel pin settings are ignored. jtag- based configuration does not support the design security or decompression features. (5) do not leave msel pins floating. connect them to v ccpd or gnd. these pins support the non-jtag configuration scheme used in production. if you only use the jtag configuration, altera recommends that you connect the msel pins to gnd. tab le 9 ?2 . arria ii gx configuration schemes (part 2 of 2) configuration scheme msel3 msel2 msel2 msel0 por delay configuration voltage standard (v) (1) tab le 9 ?3 . arria ii gx uncompressed raw binary file ( .rbf ) sizes (note 1) device data size (mbits) data size (mbytes) ep2agx20 ? ? ep2agx30 ? ? ep2agx45 ? ? ep2agx65 ? ? ep2agx95 ? ? ep2agx125 ? ? ep2agx190 ? ? ep2agx260 ? ? note to tab l e 9 ?3 : (1) these values are not available until the quartus ii software can generate the finalized raw binary file ( .rbf ).
9?8 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices fast passive parallel configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation use the data in table 9?3 to estimate the file size before design compilation. different configuration file formats, such as a hexidecimal ( .hex ) or tabular text file ( .ttf ) format, have different file sizes. refer to the quartus ii software for the different types of configuration file and file sizes. however, for any specific version of the quartus ii software, any design targeted for the same device will have the same uncompressed configuration file size. if you are using compression, the file size can vary after each compilation because the compression ratio is dependent on your design. f for more information about setting device configuration options or creating configuration files, refer to the device configuration options and configuration file formats chapters in volume 2 of the configuration handbook . fast passive parallel configuration fast passive parallel (fpp) configuration in arria ii gx devices is designed to meet the continuously increasing demand for faster configuration times. arria ii gx devices are designed with the capability of receiving byte-wide configuration data per clock cycle. you can perform fpp configuration of arria ii gx devices using an intelligent host such as a max ii device or microprocessor. fpp configuration using an external host fpp configuration using compression and an external host provides the fastest method to configure arria ii gx devices. in this configuration scheme, you can use a max ii device or microprocessor as an intelligent host that controls the transfer of configuration data from a storage device, such as flash memory, to the target arria ii gx device. you can store configuration data in .rbf , .hex, or .ttf format. when using the max ii device or microprocessor as an intelligent host, a design that controls the configuration process, such as fetching the data from flash memory and sending it to the device, must be stored in the max ii device or microprocessor. 1 if you are using the arria ii gx decompression and/or design security features, the external host must be able to send a dclk frequency that is 4 the data rate. the 4 dclk signal does not require an additional pin and is sent on the dclk pin. the maximum dclk frequency is 125 mhz, which results in a maximum data rate of 250 mbps. if you are not using the arria ii gx decompression or design security features, the data rate is 8 dclk frequency.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?9 fast passive parallel configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?1 shows the configuration interface connections between the arria ii gx device and a max ii device for single device configuration. 1 arria ii gx devices receive configuration data on the data[7..0] pins and the clock is received on the dclk pin. data is latched into the device on the rising edge of dclk. if you are using the arria ii gx decompression and/or design security features, configuration data is latched on the rising edge of every fourth dclk cycle. after the configuration data is latched in, it is processed during the following three dclk cycles. therefore, you can only stop dclk after three clock cycles after the last data is latched into the arria ii gx devices. figure 9?1. single device fpp configuration using an external host notes to figure 9?1 : (1) connect the resistor to a supply that provides an acceptable input signal for the arria ii gx device. v ccio needs to be high enough to meet the v ih specification of the i/o on both the device and external host. altera recommends that you power up the configuration system's i/os with v ccio for i/o bank 3c. (2) the nceo pin can be left unconnected or used as a user i/o pin when it does not feed other device's nce pin. (3) the msel pin settings vary for different configuration voltage standards and por delay. to connect msel[3..0] , refer to table 9?2 . external host (max ii device or microprocessor) conf_done nstatus nce data[7..0] nconfig arria ii gx device memory addr data[7..0] gnd msel[3..0] v ccio (1) v ccio (1) dclk nceo n.c. (2 ) 10 k 10 k (3)
9?10 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices fast passive parallel configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 9?2 shows how to configure multiple devices using a max ii device. this circuit is similar to the fpp configuration circuit for a single device, except the arria ii gx devices are cascaded for multi-device configuration. after the first device completes configuration in a multi-device configuration chain, its nceo pin drives low to activate the second device?s nce pin, which prompts the second device to begin configuration. the second device in the chain begins configuration in one clock cycle; therefore, the transfer of data destinations is transparent to the max ii device or microprocessor. all other configuration pins ( nconfig, nstatus, dclk, data[7..0] , and conf_done ) are connected to every device in the chain. the configuration signals may require buffering to ensure signal integrity and prevent clock skew problems. ensure that the dclk and data lines are buffered for every fourth device. because all device conf_done pins are tied together, all devices initialize and enter user mode at the same time. all nstatus and conf_done pins are tied together and if any device detects an error, configuration stops for the entire chain and you must reconfigure the entire chain. for example, if the first device flags an error on nstatus , it resets the chain by pulling its nstatus pin low. this behavior is similar to a single device detecting an error. if a system has multiple devices that contain the same configuration data, tie all device nce inputs to gnd and leave the nceo pins floating. all other configuration pins ( nconfig, nstatus , dclk, data[7..0] , and conf_done ) are connected to every device in the chain. configuration signals may require buffering to ensure signal integrity and prevent clock skew problems. ensure that the dclk and data lines are buffered for every fourth device. devices must be the same density and package. all devices start and complete configuration at the same time. figure 9?2. multi-device fpp configuration using an external host notes to figure 9?2 : (1) connect the pull-up resistor to a supply that provides an acceptable input signal for all arria ii gx devices in the chain. v ccio needs to be high enough to meet the v ih specification of the i/o standard on the device and external host. altera recommends you power up the configuration system's i/os with v ccio for i/o bank 3c. (2) the msel pin settings vary for different configuration voltage standards and por delay. to connect msel[3..0] , refer to table 9?2 . conf_done nstatus nce data[7..0] nconfig arria ii gx device 1 arria ii gx device 2 memory addr data[7..0] gnd v ccio (1) v ccio (1) dclk nceo conf_done nstatus nce data[7..0] nconfig dclk nceo n.c. 10 k 10 k external host (max ii device or microprocessor) msel[3..0] msel[3..0] (2) (2) v ccio (1) 10 k
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?11 fast passive parallel configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?3 shows a multi-device fpp configuration when both arria ii gx devices are receiving the same configuration data. you can use a single configuration chain to configure arria ii gx devices with other altera devices that support fpp configuration. to ensure that all devices in the chain complete configuration at the same time, or that an error flagged by one device initiates reconfiguration in all devices, tie all device conf_done and nstatus pins together. f for more information about configuring multiple altera devices in the same configuration chain, refer to the configuring mixed altera fpga chains chapter in volume 2 of the configuration handbook. figure 9?3. multiple-device fpp configuration using an external host when both devices receive the same data notes to figure 9?3 : (1) connect the pull-up resistor to a supply that provides an acceptable input signal for all arria ii gx devices in the chain. v ccio needs to be high enough to meet the v ih specification of the i/o standard on the device and external host. altera recommends you power up all configuration system's i/os with v ccio for i/o banks 3c and 8c. (2) the msel pin settings vary for different configuration voltage standards and por delay. to configure msel[3..0] , refer to table 9?2 . conf_done nstatus nce data[7..0] nconfig arria ii gx device 1 arria ii gx device 2 memory addr data[7..0] v ccio (1) v ccio (1) dclk nceo n.c. conf_done nstatus nce data[7..0] nconfig gnd dclk nceo n.c. 10 k 10 k external host (max ii device or microprocessor) gnd msel[3..0] msel[3..0] (2) (2)
9?12 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices fast passive parallel configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation fpp configuration timing figure 9?4 shows the timing waveform for fpp configuration when using a max ii device as an external host. this waveform shows timing when the decompression and design security features are not enabled. table 9?4 defines the timing parameters for arria ii gx devices for fpp configuration when the decompression and design security features are not enabled. figure 9?4. fpp configuration timing waveform with decompression and design security not enabled (note 1) , (2) notes to figure 9?4 : (1) use this timing waveform when decompression and design security features are not used. (2) the beginning of this waveform shows the device in user mode. in user mode, nconfig , nstatus , and conf_done are at logic-high levels. when nconfig is pulled low, a reconfiguration cycle begins. (3) upon power-up, the arria ii gx device holds nstatus low for the time of the por delay. (4) upon power-up, before and during configuration, conf_done is low. (5) do not leave dclk floating after configuration. you can drive it high or low, whichever is more convenient. (6) data[7..1] are available as user i/o pins after configuration. the state of these pins depends on the dual-purpose pin settings. data[0] is a dedicated pin that is used for both the passive and active configuration modes and is not available as a user i/o pin after configuration. nconfig nstatus (3) conf_done (4) dclk data[7..0] user i/o init_done byte 0 byte 1 byte 2 byte 3 t cd2um t cf2st1 t cf2cd t cfg t ch t cl t dh t dsu t cf2ck t status t clk t cf2st0 t st2ck high-z user mode (6) (5) user mode byte n-2 byte n-1 byte n tab le 9 ?4 . fpp timing parameters for arria ii gx devices with decompression and design security not enabled (note 1) , (2) (part 1 of 2) symbol parameter minimum maximum units t cf2cd nconfig low to conf_done low ? 800 ns t cf2st0 nconfig low to nstatus low ? 800 ns t cfg nconfig low pulse width 2 ? s t status nstatus low pulse width 10 500 (3) s t cf2st1 nconfig high to nstatus high ? 500 (3) s t cf2ck nconfig high to first rising edge on dclk 500 ? s t st2ck nstatus high to first rising edge of dclk 2? s t dsu data setup time before rising edge on dclk 4?ns t dh data hold time after rising edge on dclk 0?n s t ch dclk high time 3.2 ? ns t cl dclk low time 3.2 ? ns
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?13 fast passive parallel configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 t clk dclk period 8 ? ns f max dclk frequency ? 125 mhz t r input rise time ? 40 ns t input fall time ? 40 ns t cd2um conf_done high to user mode (4) 55 150 s t cd2cu conf_done high to clkusr enabled 4 maximum dclk period ?? t cd2umc conf_done high to user mode with clkusr option on t cd2cu + (8532 clkusr period) ?? notes to ta bl e 9? 4 : (1) this information is preliminary. (2) use these timing parameters when the decompression and design security features are not used. (3) this value is obtainable if you do not delay configuration by extending the nconfig or nstatus low pulse width. (4) the minimum and maximum numbers apply only if you chose the internal oscillator as the clock source for starting up the devi ce. tab le 9 ?4 . fpp timing parameters for arria ii gx devices with decompression and design security not enabled (note 1) , (2) (part 2 of 2) symbol parameter minimum maximum units
9?14 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices fast passive parallel configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 9?5 shows the timing waveform for fpp configuration when using a max ii device or microprocessor as an external host. this waveform shows timing when the decompression and/or design security features are enabled. table 9?5 defines the timing parameters for arria ii gx devices for fpp configuration when the decompression and/or the design security features are enabled. figure 9?5. fpp configuration timing waveform with decompression or design security enabled (note 1) , (2) notes to figure 9?5 : (1) use this timing waveform when the decompression and/or design security features are used. (2) the beginning of this waveform shows the device in user-mode. in user-mode, nconfig , nstatus , and conf_done are at logic-high levels. when nconfig is pulled low, a reconfiguration cycle begins. (3) upon power-up, the arria ii gx device holds nstatus low for the time of the por delay. (4) upon power-up, before and during configuration, conf_done is low. (5) do not leave dclk floating after configuration. you can drive it high or low, whichever is more convenient. (6) data[7..1] are available as user i/o pins after configuration. the state of these pins depends on the dual-purpose pin settings. data[0] is a dedicated pin that is used for both the passive and active configuration modes and is not available as a user i/o pin after configuration. (7) if needed, you can pause dclk by holding it low. when dclk restarts, the external host must provide data on the data[7..0] pins prior to sending the first dclk rising edge. nconfig nstatus (3) conf_done (4) dclk data[7..0] user i/o init_done t cd2um t cf2st1 t cf2cd t cfg t cf2ck t t cf2st0 t st2ck high-z user mode 12341234 1 byte 0 byte 1 byte 2 4 t dsu t dh status t dh t ch t cl t clk byte ( n-1) (7) (5) (6) user mode 3 byte n tab le 9 ?5 . fpp timing parameters for arria ii gx devices with the decompression or design security features enabled (note 1) , (2) (part 1 of 2) symbol parameter minimum maximum units t cf2cd nconfig low to conf_done low ? 800 ns t cf2st0 nconfig low to nstatus low ? 800 ns t cfg nconfig low pulse width 2 ? s t status nstatus low pulse width 10 500 (3) s t cf2st1 nconfig high to nstatus high ? 500 (3) s t cf2ck nconfig high to first rising edge on dclk 500 ? s t st2ck nstatus high to first rising edge of dclk 2? s t dsu data setup time before rising edge on dclk 4?ns t dh data hold time after rising edge on dclk 24 ? ns t ch dclk high time 3.2 ? ns
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?15 active serial configuration (serial configuration devices) ? february 2009 altera corporation arria ii gx device handbook volume 1 f for more information about setting device configuration options or creating configuration files, refer to the device configuration options and configuration file formats chapters in volume 2 of the configuration handbook . active serial configuration (serial configuration devices) in the fast as configuration scheme, arria ii gx devices are configured using a serial configuration device. these configuration devices are low-cost devices with non-volatile memory that feature a simple four-pin interface and a small form factor. these features make serial configuration devices an ideal low-cost configuration solution. f for more information about serial configuration devices, refer to the serial configuration devices (epcs1, epcs4, epcs16, epcs64, and epcs128) data sheet chapter in volume 2 of the configuration handbook . serial configuration devices provide a serial interface to access configuration data. during device configuration, arria ii gx devices read configuration data using the serial interface, decompress data if necessary, and configure their sram cells. this scheme is referred to as the as configuration scheme because the arria ii gx device controls the configuration interface. this scheme contrasts with the ps configuration scheme, where the configuration device controls the interface. 1 the arria ii gx decompression and design security features are fully available when configuring your arria ii gx device using as mode. t cl dclk low time 3.2 ? ns t clk dclk period 8 ? ns f max dclk frequency ? 125 mhz t data data rate ? 250 mbps t r input rise time ? 40 ns t input fall time ? 40 ns t cd2um conf_done high to user mode (4) 55 150 s t cd2cu conf_done high to clkusr enabled 4 maximum dclk period ?? t cd2umc conf_done high to user mode with clkusr option on t cd2cu + (8532 clkusr period) ?? notes to ta bl e 9? 5 : (1) this information is preliminary. (2) use these timing parameters when the decompression and design security features are used. (3) this value is obtainable if you do not delay configuration by extending the nconfig or nstatus low pulse width. (4) the minimum and maximum numbers apply only if you choose the internal oscillator as the clock source for starting up the dev ice. tab le 9 ?5 . fpp timing parameters for arria ii gx devices with the decompression or design security features enabled (note 1) , (2) (part 2 of 2) symbol parameter minimum maximum units
9?16 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices active serial configuration (serial configuration devices) arria ii gx device handbook volume 1 ? february 2009 altera corporation serial configuration devices have a four-pin interface: serial clock input ( dclk ), serial data output ( data ), as data input ( asdi ), and active-low chip select ( ncs ). this four-pin interface connects to the arria ii gx device pins, as shown in figure 9?6 . the serial clock ( dclk ) generated by the arria ii gx device controls the entire configuration cycle and provides timing for the serial interface. arria ii gx devices use an internal oscillator or an external clock source to generate dclk . you can select to use a slow clock (20 mhz maximum) or a fast clock (40 mhz maximum) from the internal oscillator. arria ii gx devices have an option to select clkusr (40 mhz maximum) as the external clock source for dclk. in as configuration schemes, arria ii gx devices drive out control signals on the falling edge of dclk . the serial configuration device responds to the instructions by driving out configuration data on the falling edge of dclk . then the data is latched into the arria ii gx device on the following falling edge of dclk. in configuration mode, arria ii gx devices enable the serial configuration device by driving the ncso output pin low, which connects to the chip select ( ncs ) pin of the configuration device. the arria ii gx device uses the serial clock ( dclk ) and serial data output ( asdo ) pins to send operation commands and/or read address signals to the serial configuration device. the configuration device provides data on its serial data output ( data ) pin, which connects to the data0 input of the arria ii gx devices. figure 9?6. single device fast as configuration notes to figure 9?6 : (1) connect the pull-up resistors to the v ccio supply of bank 3c. (2) arria ii gx devices use the asdo-to-asdi path to control the configuration device. (3) these are dual-purpose i/o pins. the flash_nce pin functions as the ncso pin in the as configuration scheme. the data[1] pin functions as the asdo pin in the as configuration scheme. (4) the msel pin settings vary for different configuration voltage standards and por delay. to configure msel[3..0] , refer to table 9?2 . (5) arria ii gx devices have an option to select clkusr (40mhz maximum) as the external clock source for dclk . data dclk ncs asdi data0 dclk ncso (3) asdo (3) serial configuration device arria ii gx fpga 10 kw 10 kw 10 kw v ccio (1) gnd nceo nce nstatus nconfig conf_done (2) msel [3..0] n .c. v ccio (1) v ccio (1) (4) clkusr (5)
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?17 active serial configuration (serial configuration devices) ? february 2009 altera corporation arria ii gx device handbook volume 1 you can configure multiple arria ii gx devices using a single serial configuration device. you can cascade multiple arria ii gx devices using the chip-enable ( nce ) and chip-enable-out ( nceo ) pins. the first device in the chain must have its nce pin connected to gnd. you must connect its nceo pin to the nce pin of the next device in the chain. when the first device captures all its configuration data from the bitstream, it drives the nceo pin low, enabling the next device in the chain. you must leave the nceo pin of the last device unconnected. the nconfig, nstatus , conf_done, dclk , and data0 pins of each device in the chain are connected (refer to figure 9?7 ). the first arria ii gx device in the chain is the configuration master and controls configuration of the entire chain. you must connect its msel pins to select the as configuration scheme. the remaining arria ii gx devices are configuration slaves. you must connect their msel pins to select the ps configuration scheme. any other altera device that supports ps configuration can also be part of the chain as a configuration slave. figure 9?7 shows the pin connections for the multi-device as configuration. figure 9?7. multi-device as configuration notes to figure 9?7 : (1) connect the pull-up resistors to the v ccio supply of the i/o bank 3c. (2) the msel pin settings vary for different configuration voltage standards and por delay. to connect msel[3..0] , refer to table 9?2 . (3) connect the repeater buffers between the arria ii gx master and slave devices for data[0] and dclk . this is to prevent any potential signal integrity and clock skew problems. (4) arria ii gx devices have an option to select clkusr (40mhz maximum) as the external clock source for dclk . data dclk ncs asdi data[0] dclk ncso asdo serial configuration device arria ii gx fpga master arria ii gx fpga slave 10 k 10 k gnd nceo nce nstatus conf_done data[0] dclk nceo nce nstatus conf_done 10 k nconfig nconfig n .c. msel [3..0] v ccio (1) v ccio (1) v ccio (1) bu ffers (3) (2) (2) msel [3..0] 10 k v ccio (1) clkusr (4)
9?18 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices active serial configuration (serial configuration devices) arria ii gx device handbook volume 1 ? february 2009 altera corporation as shown in figure 9?7 , the nstatus and conf_done pins on all target devices are connected together with external pull-up resistors. these pins are open-drain bidirectional pins on the devices. when the first device asserts nceo (after receiving all its configuration data), it releases its conf_done pin. but the subsequent devices in the chain keep this shared conf_done line low until they have received their configuration data. when all target devices in the chain have received their configuration data and have released conf_done , the pull-up resistor drives a high level on this line and all devices simultaneously enter initialization mode. 1 while you can cascade arria ii gx devices, you cannot cascade or chain together serial configuration devices. if the configuration bitstream size exceeds the capacity of a serial configuration device, you must select a larger configuration device and/or enable the compression feature. when configuring multiple devices, the size of the bitstream is the sum of the individual devices? configuration bitstreams. a system may have multiple devices that contain the same configuration data. in active serial chains, you can implement this by storing one copy of the sram object file ( .sof ) in the serial configuration device. the same copy of the .sof file configures the master arria ii gx device and all remaining slave devices concurrently. all arria ii gx devices must be the same density and package. to configure four identical arria ii gx devices with the same .sof file, you can set up the chain similar to the example shown in figure 9?8 . the first device is the master device and its msel pins need to be set to select as configuration. the other three slave devices are set up for concurrent configuration and their msel pins need to be set to select ps configuration. the nce input pins from the master and slave are connected to gnd, and the data and dclk pins connect in parallel to all four devices. during the configuration cycle, the master device reads its configuration data from the serial configuration device and transmits the configuration data to all three slave devices, configuring all of them simultaneously.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?19 active serial configuration (serial configuration devices) ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?8 shows the multi-device as configuration when the devices receive the same data using a single .sof file. estimating active serial configuration time active serial configuration time is dominated by the time it takes to transfer data from the serial configuration device to the arria ii gx device. this serial interface is clocked by the arria ii gx dclk output (generated from an internal oscillator or an option to select clkusr as external clock source). arria ii gx devices support dclk up to 40 mhz (25 ns). therefore, the minimum configuration time can be estimated as the following: rbf size (minimum dclk period / 1 bit per dclk cycle) = estimated minimum configuration time figure 9?8. multi-device as configuration when the devices receive the same data using a single .sof file notes to figure 9?8 : (1) connect the pull-up resistors to the v ccio supply of i/o bank 3c. (2) the msel pin settings vary for different configuration voltage standards and por delay. to connect msel[3..0] , refer to table 9?2 . (3) connect the repeater buffers between the arria ii gx master and slave devices for data[0] and dclk . this is to prevent any potential signal integrity and clock skew problems. (4) arria ii gx devices have an option to select clkusr (40mhz maximum) as the external clock source for dclk . data dclk ncs asdi data0 dclk ncso asdo serial configuration device arria ii gx fpga master 10 k 10 k gnd nceo nce nstatus conf_done data[0] dclk nceo nce nstatus conf_done 10 k nconfig nconfig n .c. msel[3..0] msel[3..0] data[0] dclk arria ii gx fpga slave arria ii gx fpga slave arria ii gx fpga slave nceo nce nstatus conf_done nconfig n .c. msel[3..0] data[0] dclk nceo nce nstatus conf_done nconfig n .c. msel[3..0] v ccio (1) v ccio (1) v ccio (1) bu ffers (3) gnd n .c. (2) (2) (2) (2) clkusr (4)
9?20 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices active serial configuration (serial configuration devices) arria ii gx device handbook volume 1 ? february 2009 altera corporation enabling compression reduces the amount of configuration data that is transmitted to the arria ii gx device, which also reduces configuration time. on average, compression reduces configuration time, depending on your design. programming serial configuration devices serial configuration devices are non-volatile, flash-memory-based devices. you can program these devices in-system using an usb-blaster?, ethernetblaster, or byteblaster? ii download cable. alternatively, you can program them using the altera programming unit (apu), supported third-party programmers, or a microprocessor with the srunner software driver. you can perform in-system programming of serial configuration devices using the conventional as programming interface or jtag interface solution. because serial configuration devices do not support the jtag interface, the conventional method to program them is using the as programming interface. the configuration data used to program serial configuration devices is downloaded using programming hardware. during in-system programming, the download cable disables device access to the as interface by driving the nce pin high. arria ii gx devices are also held in reset mode by a low level on nconfig . after programming is complete, the download cable releases nce and nconfig , allowing the pull-down and pull-up resistors to drive gnd and v ccio , respectively. altera has developed serial flashloader (sfl); an in-system programming solution for serial configuration devices using the jtag interface. this solution requires the arria ii gx device to be a bridge between the jtag interface and the serial configuration device. f for more information about sfl, refer to an 370: using the serial flashloader with quartus ii software . f for more information about the usb-blaster download cable, refer to the usb-blaster download cable user guide . for more information about the byteblaster ii cable, refer to the byteblaster ii download cable user guide . for more information about the ethernetblaster download cable, refer to the ethernetblaster communications cable user guide .
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?21 active serial configuration (serial configuration devices) ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?9 shows the download cable connections to the serial configuration device. you can program serial configuration devices with the quartus ii software using the altera programming hardware and the appropriate configuration device programming adapter. in production environments, you can program serial configuration devices using multiple methods. you can use altera programming hardware or other third-party programming hardware to program blank serial configuration devices before they are mounted onto pcbs. alternatively, you can use an on-board microprocessor to program the serial configuration device in-system using c-based software drivers provided by altera. you can program a serial configuration device in-system by an external microprocessor using srunner. srunner is a software driver developed for embedded serial configuration device programming, which can be easily customized to fit in different embedded systems. srunner is able to read a raw programming data (. rpd ) file and write to serial configuration devices. the serial configuration device programming time using srunner is comparable to the programming time with the quartus ii software. figure 9?9. in-system programming of serial configuration devices notes to figure 9?9 : (1) connect the pull-up resistors to the v ccio supply of the i/o bank 3c. (2) power up the usb-byteblaster, byteblaster ii, or ethernetblaster cable?s v cc ( trgt ) with 3.3 v. (3) the msel pin settings vary for different configuration voltage standards and por delay. to connect msel[3..0] , refer to table 9?2 . (4) arria ii gx devices have an option to select clkusr (40 mhz maximum) as the external clock source for dclk . data dclk ncs asdi data0 dclk ncso nce nconfig nstatus nceo conf_done asdo 3.3 v 10 k 10 k 10 k 10 k arria ii gx fpga serial configuration device pin 1 usb-blaster or byteblaser ii (as mode) 10-pin male header n .c. (2) msel[3..0] v ccio (1) v ccio (1) v ccio (1) (3) clkusr (4)
9?22 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices passive serial configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation f for more information about srunner, refer to an 418: srunner: an embedded solution for epcs programming and the source code on the altera website at www.altera.com . f for more information about programming serial configuration devices, refer to the serial configuration devices (epcs1, epcs4, epcs16, epcs64, and epcs128) data sheet chapter in volume 2 of the configuration handbook . passive serial configuration you can program ps configuration of arria ii gx devices using an intelligent host, such as a max ii device or microprocessor with flash memory, or a download cable. in the ps scheme, an external host (a max ii device, embedded processor, or host pc) controls configuration. configuration data is clocked into the target arria ii gx device using the data0 pin at each rising edge of dclk. 1 the arria ii gx decompression and design security features are fully available when configuring your arria ii gx device using ps mode. ps configuration using an external host in this configuration scheme, you can use a max ii device as an intelligent host that controls the transfer of configuration data from a storage device, such as flash memory, to the target arria ii gx device. you can store configuration data in .rbf , .hex , or .ttf format. figure 9?10 shows the configuration interface connections between an arria ii gx device and a max ii device for single device configuration. figure 9?10. single device ps configuration using an external host note to figure 9?10 : (1) connect the resistor to a supply that provides an acceptable input signal for the arria ii gx device. v ccio needs to be high enough to meet the v ih specification of the i/o on the device and the external host. altera recommends that you power up the configuration system's i/os with v ccio for i/o bank 3c. (2) the nceo pin can be left unconnected or used as a user i/o pin when it does not feed other device?s nce pin. (3) the msel pin settings vary for different configuration voltage standards and por delays. to connect msel[3..0] , refer to table 9?2 . external host (max ii device or microprocessor) conf_done nstatus nce data[0] nconfig arria ii gx device memory addr gnd 10 k 10 k dclk nceo n.c. msel[3..0] v ccio(1) v ccio (1) (3) (2 ) data[0]
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?23 passive serial configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 the arria ii gx device receives configuration data on the data0 pin and the clock is received on the dclk pin. data is latched into the device on the rising edge of dclk . if you are using configuration data in .rbf , .hex , or . ttf format, you must send the lsb of each data byte first. for example, if the .rbf file contains the byte sequence 02 1b ee 01 fa, the serial bitstream you should transmit to the device is 0100-0000 1101-1000 0111-0111 1000-0000 0101-1111. figure 9?11 shows how to configure multiple devices using an external host. this circuit is similar to the ps configuration circuit for a single device, except arria ii gx devices are cascaded for multi-device configuration. after the first device completes configuration in a multi-device configuration chain, its nceo pin drives low to activate the second device?s nce pin, which prompts the second device to begin configuration. the second device in the chain begins configuration in one clock cycle. therefore, the transfer of data destinations is transparent to the max ii device or microprocessor. all other configuration pins ( nconfig, nstatus, dclk, data0 , and conf_done ) are connected to every device in the chain. configuration signals can require buffering to ensure signal integrity and prevent clock skew problems. ensure that the dclk and data lines are buffered for every fourth device. because all device conf_done pins are tied together, all devices initialize and enter user mode at the same time. because all nstatus and conf_done pins are tied together, if any device detects an error, configuration stops for the entire chain and you must reconfigure the entire chain. for example, if the first device flags an error on nstatus , it resets the chain by pulling its nstatus pin low. this behavior is similar to a single device detecting an error. figure 9?11. multi-device ps configuration using an external host notes to figure 9?11 : (1) connect the pull-up resistor to a supply that provides an acceptable input signal for all arria ii gx devices in the chain. v ccio needs to be high enough to meet the v ih specification of the i/o standard on the device and the external host. altera recommends you power up the configuration system's i/os with v ccio for i/o bank 3c. (2) the msel pin settings vary for different configuration voltage standards and por delay. to connect msel[3..0] , refer to table 9?2 . conf_done nstatus nce nconfig arria ii gx device 1 arria ii gx device 2 memory addr gnd 10 k 10 k dclk conf_done nstatus nce nconfig dclk nceo nceo n.c. external host (max ii device or microprocessor) msel[3..0] v ccio (1) v ccio (1) data[0] data[0] data[0] (2) msel[3..0] (2) 10 k v ccio (1)
9?24 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices passive serial configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation in your system, you can have multiple devices that contain the same configuration data. to support this configuration scheme, all device nce inputs are tied to gnd, while nceo pins are left floating. all other configuration pins ( nconfig, nstatus, dclk, data0 , and conf_done ) are connected to every device in the chain. configuration signals can require buffering to ensure signal integrity and prevent clock skew problems. ensure that the dclk and data lines are buffered for every fourth device. devices must be the same density and package. all devices will start and complete configuration at the same time. figure 9?12 shows multi-device ps configuration when both arria ii gx devices are receiving the same configuration data. figure 9?12. multiple-device ps configuration when both devices receive the same data notes to figure 9?12 : (1) connect the pull-up resistor to a supply that provides an acceptable input signal for all arria ii gx devices in the chain. v ccio needs to be high enough to meet the v ih specification of the i/o standard on the device and the external host. altera recommends you power up all configuration systems i/os with v ccio for i/o bank 3c and 8c. (2) the msel pin settings vary for different configur ation voltage standards and por delays. to connect msel[3..0] , refer to table 9?2 . conf_done nstatus nce nconfig arria ii gx device arria ii gx device memory addr gnd 10 k 10 k dclk conf_done nstatus nce nconfig dclk nceo nceo n.c. external host (max ii device or microprocessor) msel[3..0] n.c. gnd (2) v ccio (1) v ccio (1) data[0] data[0] msel[3..0] (2 ) data[0]
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?25 passive serial configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 ps configuration timing figure 9?13 shows the timing waveform for ps configuration when using a max ii device or microprocessor as an external host. table 9?6 defines the timing parameters for arria ii gx devices for ps configuration. figure 9?13. ps configuration timing waveform (note 1) notes to figure 9?13 : (1) the beginning of this waveform shows the device in user mode. in user mode, nconfig , nstatus , and conf_done are at logic high levels. when nconfig is pulled low, a reconfiguration cycle begins. (2) upon power-up, the arria ii gx device holds nstatus low for the time of the por delay. (3) upon power-up, before and during configuration, conf_done is low. (4) do not leave dclk floating after configuration. you can drive it high or low, whichever is more convenient. (5) data[0] is available as a user i/o pin after configuration. the state of this pin depends on the dual-purpose pin settings. nconfig nstatus (2) conf_done (3) dclk data user i/o init_done bit 0 bit 1 bit 2 bit 3 bit n t cd2um t cf2st1 t cf2cd t cfg t ch t cl t dh t dsu t cf2ck t status t clk t cf2st0 t st2ck high-z user mode (5) (4) tab le 9 ?6 . ps timing parameters for arria ii gx devices (note 1) (part 1 of 2) symbol parameter minimum maximum units t cf2cd nconfig low to conf_done low ? 800 ns t cf2st0 nconfig low to nstatus low ? 800 (2) ns t cfg nconfig low pulse width 2 ? s t status nstatus low pulse width 10 500 (2) s t cf2st1 nconfig high to nstatus high ? 500 s t cf2ck nconfig high to first rising edge on dclk 500 ? s t st2ck nstatus high to first rising edge of dclk 2? s t dsu data setup time before rising edge on dclk 4?ns t dh data hold time after rising edge on dclk 0?ns t ch dclk high time 3.2 ? ns t cl dclk low time 3.2 ? ns t clk dclk period 8 ? ns f max dclk frequency ? 125 mhz t r input rise time ? 40 ns
9?26 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices passive serial configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation f for more information about device configuration options and how to create configuration files, refer to the device configuration options and configuration file formats chapters in volume 2 of the configuration handbook . ps configuration using a download cable 1 in this section, the generic term ?download cable? includes the altera usb-blaster universal serial bus (usb) port download cable, byteblaster ii parallel port download cable, byteblastermv tm parallel port download cable, and ethernetblaster download cable. in a ps configuration with a download cable, an intelligent host (such as a pc) transfers data from a storage device to the arria ii gx device using the download cable. during configuration, the programming hardware or download cable places the configuration data one bit at a time on the device?s data0 pin. the configuration data is clocked into the target device until conf_done goes high. when using a download cable, setting the auto-restart configuration after error option does not affect the configuration cycle because you must manually restart the configuration in the quartus ii software when an error occurs. additionally, the enable user-supplied start-up clock ( clkusr ) option has no affect on the device initialization because this option is disabled in the .sof file when programming the device using the quartus ii programmer and download cable. therefore, if you turn on the clkusr option, you do not need to provide a clock on clkusr when you are configuring the device with the quartus ii programmer and a download cable. t input fall time ? 40 ns t cd2um conf_done high to user mode (3) 55 150 s t cd2cu conf_done high to clkusr enabled 4 maximum dclk period ?? t cd2umc conf_done high to user mode with clkusr option on t cd2cu + (8532 clkusr period) ?? notes to ta bl e 9? 6 : (1) this information is preliminary. (2) this value is applicable if you do not delay configuration by extending the nconfig or nstatus low pulse width. (3) the minimum and maximum numbers apply only if you choose the internal oscillator as the clock source for starting the device . tab le 9 ?6 . ps timing parameters for arria ii gx devices (note 1) (part 2 of 2) symbol parameter minimum maximum units
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?27 passive serial configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?14 shows ps configuration for arria ii gx devices using a usb-blaster, byteblaster ii, byteblastermv, or ethernet blaster cable. you can use a download cable to configure multiple arria ii gx devices by connecting each device?s nceo pin to the subsequent device?s nce pin. the first device?s nce pin is connected to gnd while its nceo pin is connected to the nce of the next device in the chain. the last device?s nce input comes from the previous device, while its nceo pin is left floating. all other configuration pins ( nconfig, nstatus, dclk, data0 , and conf_done ) are connected to every device in the chain. because all conf_done pins are tied together, all devices in the chain initialize and enter user mode at the same time. in addition, because the nstatus pins are tied together, the entire chain halts configuration if any device detects an error. the auto-restart configuration after error option does not affect the configuration cycle because you must manually restart configuration in the quartus ii software when an error occurs. figure 9?14. ps configuration using a usb-blaster, ethernetblaster, masterblaster, byteblaster ii, or byteblastermv cable notes to figure 9?14 : (1) connect the pull-up resistor to the same supply voltage (v ccio ) as the usb-blaster, byteblaster ii, byteblastermv, or ethernetblaster cable. (2) you only need the pull-up resistors on data0 and dclk if the download cable is the only configuration scheme used on your board. this ensures that data0 and dclk are not left floating after configuration. for example, if you are also using a configuration device, you do not need the pull-up resistors on data0 and dclk . (3) in the byteblastermv cable, pin 6 is a no connect. in the usb-blaster and byteblaster ii cables, this pin is connected to nce when it is used for active serial programming; otherwise, it is a no connect. (4) the msel pin settings vary for different configur ation voltage standards and por delays. to connect msel[3..0] , refer to table 9?2 . download cable 10-pin male header (ps mode) v ccio (1) arria ii gx device dclk nconfig conf_done shield gnd 10 k 10 k 10 k 10 k 10 k nstatus data0 pin 1 nce gnd gnd v io (3) (2) (2) nceo n.c. msel[3..0] v ccio (1) v ccio (1) v ccio (1) v ccio (1) v ccio (1) (4)
9?28 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices jtag configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 9?15 shows how to configure multiple arria ii gx devices with a download cable. f for more information about how to use the usb-blaster, byteblaster ii, byteblastermv, or ethernetblaster cables, refer to the following user guides: usb-blaster download cable user guide byteblaster ii download cable user guide byteblastermv download cable user guide ethernet blaster communications cable user guide jtag configuration the jtag has developed a specification for boundary-scan testing. this boundary-scan test (bst) architecture offers the capability to efficiently test components on pcbs with tight lead spacing. the bst architecture can test pin connections without using physical test probes and capture functional data while a device is operating normally. you can also use jtag circuitry to shift configuration data into the device. the quartus ii software automatically generates .sof files that you can use for jtag configuration with a download cable in the quartus ii software programmer. figure 9?15. multi-device ps configuration using a usb-blaster, byteblaster ii, byteblastermv, or ethernetblaster cable notes to figure 9?15 : (1) connect the pull-up resistor to the same supply voltage (v ccio ) as the usb-blaster, byteblaster ii, byteblastermv, or ethernetblaster cable. (2) you only need the pull-up resistors on data0 and dclk if the download cable is the only configuration scheme used on your board. this ensures that data0 and dclk are not left floating after configuration. for example, if you are also using a configuration device, you do not need the pull-up resistors on data0 and dclk . (3) in the byteblastermv cable, pin 6 is a no connect. in the usb-blaster and byteblaster ii cables, this pin is connected to nce when it is used for active serial programming; otherwise, it is a no connect. (4) the msel pin settings vary for different configur ation voltage standards and por delays. to connect msel[3..0] , refer to table 9?2 . arria ii gx device 1 arria ii gx device 2 nce nconfig conf_done dclk nce nconfig conf_done dclk nceo gnd (ps mode) v ccio (1) nstatus nstatus data0 data0 gnd 10 k 10 k 10 k 10 k 10 k pin 1 download cable 10-pin male header nceo n.c. gnd v io (3) (2) (2) msel[3..0] msel[3..0] v ccio (1) v ccio (1) v ccio (1) v ccio (1) v ccio (1) (4) (4) 10 k v ccio (1)
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?29 jtag configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 f for more information about jtag boundary-scan testing and commands available using arria ii gx devices, refer to the following documents: jtag boundary scan testing chapter in volume 1 of the arria ii gx device handbook programming support for jam stapl language arria ii gx devices are designed such that jtag instructions have precedence over any device configuration modes. therefore, jtag configuration can take place without waiting for other configuration modes to complete. for example, if you attempt jtag configuration of arria ii gx devices during ps configuration, ps configuration is terminated and jtag configuration begins. 1 you cannot use the arria ii gx decompression or design security features if you are configuring your arria ii gx device using jtag-based configuration. 1 a device operating in jtag mode uses four required pins, tdi, tdo, tms , and tck. the tck pin has an internal weak pull-down resistor, while the tdi and tms pins have weak internal pull-up resistors (typically 25 k ). all jtag input pins are powered by the v ccio supply of i/o bank 8c. the tdo pin is powered up by the v ccio and v ccpd power supply of i/o bank 8c. all the jtag pins support only the lvttl i/o standard. all user i/o pins are tri-stated during jtag configuration. table 9?7 explains each jtag pin?s function. f for recommendations about how to connect a jtag chain with multiple voltages across the devices in the chain, refer to the jtag boundary scan testing chapter in volume 1 of the arria ii gx device handbook. during jtag configuration, you can download data to the device on the pcb through the usb-blaster, byteblaster ii, byteblastermv, or ethernetblaster download cable. tab le 9 ?7 . dedicated jtag pins pin name pin type description tdi test data input serial input pin for instructions as well as test and programming data. data is shifted in on the rising edge of tck . if the jtag interface is not required on the board, you can disable the jtag circuitry by connecting this pin to logic high. tdo test data output serial data output pin for instructions as well as test and programming data. data is shifted out on the falling edge of tck . the pin is tri-stated if data is not being shifted out of the device. if the jtag interface is not required on the board, you can disable the jtag circuitry by leaving this pin unconnected. tms test mode select input pin that provides the control signal to determine the transitions of the tap controller state machine. tms is evaluated on the rising edge of tck . therefore, you must set up tms before the rising edge of tck . transitions in the state machine occur on the falling edge of tck after the signal is applied to tms . if the jtag interface is not required on the board, you can disable the jtag circuitry by connecting this pin to logic high. tck test clock input clock input to the bst circuitry. some operations occur at the rising edge while others occur at the falling edge. if the jtag interface is not required on the board, you can disable the jtag circuitry by connecting this pin to gnd.
9?30 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices jtag configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 9?16 shows the jtag configuration of a single arria ii gx device. to configure a single device in a jtag chain, the programming software places all other devices in bypass mode. in bypass mode, devices pass programming data from the tdi pin to the tdo pin through a single bypass register without being affected internally. this scheme enables the programming software to program or verify the target device. configuration data driven into the device appears on the tdo pin one clock cycle later. the quartus ii software verifies successful jtag configuration upon completion. at the end of configuration, the software checks the state of conf_done through the jtag port. when the quartus ii software generates a jam tm file (. jam) for a multi-device chain, it contains instructions so that all the devices in the chain are initialized at the same time. if conf_done is not high, the quartus ii software indicates that configuration has failed. if conf_done is high, the software indicates that configuration was successful. after the configuration bitstream is transmitted serially using the jtag tdi port, the tck port is clocked an additional 1,094 cycles to perform device initialization. figure 9?16. jtag configuration of a single device using a download cable notes to figure 9?16 : (1) connect the pull-up resistors to the v ccio supply of i/o bank 3c. (2) connect the pull-up resistor to the same supply voltage as the usb-blaster, byteblaster ii, byteblastermv, or ethernetblaste r cable. the voltage supply can be connected to the v ccio supply of i/o bank 8c of the device. (3) connect the nconfig and msel[3..0] pins to support a non-jtag configuration scheme. if you only use the jtag configuration, connect nconfig to v ccio , and msel[3..0] to gnd. pull dclk either high or low, whichever is convenient on your board. (4) in the usb-blaster, byteblaster ii, and byteblastermv cables, this pin is a no connect. (5) you must connect nce to gnd or drive it low for successful jtag configuration. nce (5) msel[3..0] nconfig conf_done v ccio (2) gnd gnd (3) (3) v ccio (2) 10 kw 10 k 10 k 10 k nstatus pin 1 download cable 10-pin male header (jtag mode) (top view) gnd tck tdo tms tdi 1 k gnd v io (4) arria ii gx de vice nce0 n .c. dclk (3) v ccio v ccio v ccio (2) (1) (1)
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?31 jtag configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx devices have dedicated jtag pins that always function as jtag pins. not only can you perform jtag testing on arria ii gx devices before and after, but also during configuration. while other device families do not support jtag testing during configuration, arria ii gx devices support the bypass, id code, and sample instructions during configuration without interrupting configuration. all other jtag instructions may only be issued by first interrupting configuration and reprogramming i/o pins using the config_io instruction. the config_io instruction allows i/o buffers to be configured using the jtag port and when issued, interrupts configuration. this instruction allows you to perform board-level testing prior to configuring the arria ii gx device or waiting for a configuration device to complete configur ation. once configuration is interrupted and jtag testing is complete, you must reconfigure the part using jtag ( pulse_config instruction) or by pulsing nconfig low. the chip-wide reset ( dev_clrn ) and chip-wide output enable ( dev_oe ) pins on arria ii gx devices do not affect jtag boundary-scan or programming operations. toggling these pins does not affect jtag operations (other than the usual boundary-scan operation). when designing a board for jtag configuration of arria ii gx devices, consider the dedicated configuration pins. table 9?8 shows how these pins must be connected during jtag configuration. tab le 9 ?8 . dedicated configuration pin connections during jtag configuration signal description nce on all arria ii gx devices in the chain, nce must be driven low by connecting it to ground, pulling it low using a resistor, or driving it by some control circuitry. for devices that are also in multi-device fpp, as, or ps configuration chains, the nce pins must be connected to gnd during jtag configuration, or jtag must be configured in the same order as the configuration chain. nceo on all arria ii gx devices in the chain, you can leave nceo floating or connected to nce of the next device. msel these pins must not be left floating. these pins support whichever non-jtag configuration is used in production. if you only use jtag configuration, tie these pins to gnd. nconfig driven high by connecting to the v ccio supply of the bank in which the pin resides, pulling up using a resistor, or driven high by some control circuitry. nstatus pull to the v ccio supply of the bank in which the pin resides using a 10-k resistor. when configuring multiple devices in the same jtag chain, each nstatus pin must be pulled up to v ccio individually. conf_done pull to the v ccio supply of the bank in which the pin resides using a 10- k resistor. when configuring multiple devices in the same jtag chain, each conf_done pin must be pulled up to the v ccio supply of the bank in which the pin resides individually. conf_done going high at the end of jtag configuration indicates successful configuration. dclk do not leave floating. drive low or high, whichever is more convenient on your board.
9?32 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices jtag configuration arria ii gx device handbook volume 1 ? february 2009 altera corporation when programming a jtag device chain, one jtag-compatible header is connected to several devices. the number of devices in the jtag chain is limited only by the drive capability of the download cable. when four or more devices are connected in a jtag chain, altera recommends buffering the tck, tdi , and tms pins with an on-board buffer. jtag-chain device programming is ideal when the system contains multiple devices or when testing your system using jtag bst circuitry. figure 9?17 shows a multi-device jtag configuration. you must connect the nce pin to gnd or drive it low during jtag configuration. in multi-device fpp, as, and ps configuration chains, the first device?s nce pin is connected to gnd while its nceo pin is connected to nce of the next device in the chain. the last device?s nce input comes from the previous device, while its nceo pin is left floating. in addition, the conf_done and nstatus signals are all shared in multi-device fpp, as, or ps configuration chains so the devices can enter user mode at the same time after configuration is complete. when the conf_done and nstatus signals are shared among all the devices, you must configure every device when jtag configuration is performed. 1 if you only use jtag configuration, altera recommends that you connect the circuitry as shown in figure 9?17 , where each of the conf_done and nstatus signals are isolated to enable each device to enter user mode individually. figure 9?17. jtag configuration of multiple devices using a download cable notes to figure 9?17 : (1) connect the pull-up resistors to the v ccio supply of i/o bank 3c. (2) you must connect the pull-up resistor to the same supply voltage as the usb-blaster, byteblaster ii, byteblastermv, or ether netblaster cable. you can connect the voltage supply to the v ccio supply of i/o bank 8c of the device. (3) in the usb-blaster, byteblaster ii, and byteblastermv cables, pin 6 is a no connect. (4) you must connect nce to gnd or drive it low for successful jtag configuration. (5) you must connect the nconfig and msel[3..0] pins to support a non-jtag configuration scheme. if you only use jtag configuration, connect nconfig to the v ccio supply of the bank in which the pin resides and msel[3..0] to gnd. pull dclk either high or low, whichever is convenient on your board. tms tck download cable 10-pin male header (jtag mode) tdi tdo v ccio v ccio (2) pin 1 nstatus nconfig msel[3..0] nce (4) v ccio (1) conf_done tms tck tdi tdo nstatus nconfig msel[3..0] nce (4) conf_done tms tck tdi tdo nstatus nconfig msel[3..0] nce (4) conf_done (2) (5) (5) v io (3) arria ii gx de vice arria ii gx de vice stratix ii or stratix ii gx de vice 10 k 10 k 10 k 10 k 10 k 10 k 10 k 1 k 10 k dclk dclk dclk (5) arria ii gx de vice v ccio (2) v ccio (1) v ccio (1) v ccio (1) v ccio (1) v ccio (1) (5) (5) (5) (5) (5) (5)
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?33 jtag configuration ? february 2009 altera corporation arria ii gx device handbook volume 1 after the first device completes configuration in a multi-device configuration chain, its nceo pin drives low to activate the second device?s nce pin, which prompts the second device to begin configuration. therefore, if these devices are also in a jtag chain, make sure the nce pins are connected to gnd during jtag configuration or that the devices are jtag configured in the same order as the configuration chain. as long as the devices are jtag configured in the same order as the multi-device configuration chain, the nceo of the previous device drives the nce of the next device low when it has successfully been jtag configured. you can place other altera devices that have jtag support in the same jtag chain for device programming and configuration. 1 jtag configuration support is enhanced and allows more than 17 arria ii gx devices to be cascaded in a jtag chain. f for more information about configuring multiple altera devices in the same configuration chain, refer to the configuring mixed altera device chains chapter in volume 2 of the configuration handbook . you can configure arria ii gx devices using multiple configuration schemes on the same board. combining jtag configuration with passive serial or active serial configuration on your board is useful in the prototyping environment because it allows multiple methods to configure your fpga. f for more information about combining jtag configuration with other configuration schemes, refer to the combining different configuration schemes chapter in volume 2 of the configuration handbook . figure 9?18 shows a jtag configuration of an arria ii gx device using a microprocessor. figure 9?18. jtag configuration of a single device using a microprocessor notes to figure 9?18 : (1) connect the pull-up resistor to a supply that provides an acceptable input signal for all arria ii gx devices in the chain. the v ccio supply of the bank in which the pin resides needs to be high enough to meet the v ih specification of the i/o on the device. (2) connect the nconfig and msel[3..0] pins to support a non-jtag configuration scheme. if you use only the jtag configuration, connect nconfig to the v ccio supply of the bank in which the pin resides and msel[3..0] to gnd. pull dclk either high or low, whichever is convenient on your board. (3) you must connect nce to gnd or drive it low for successful jtag configuration. (4) the microprocessor needs to use the same i/o standard as v ccio to drive the jtag pins. tdi (4) tck (4) tms (4) tdo (4) microprocessor memory addr data arria ii gx de vice nstatus conf_done v ccio (1) 10 k 10 k nce nconfig n.c. gnd (2) (2) nceo msel[3..0] dclk (2) v ccio (1)
9?34 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices device configuration pins arria ii gx device handbook volume 1 ? february 2009 altera corporation jam stapl jam stapl, jedec standard jesd-71, is a standard file format for in-system programmability (isp) purposes. jam stapl supports programming or configuration of programmable devices and testing of electronic systems, using the ieee 1149.1 jtag interface. it is a freely licensed open standard. the jam player provides an interface for manipulating the ieee std. 1149.1 jtag tap state machine. f for more information about jtag and jam stapl in embedded environments, refer to the an 425: using command-line jam stapl solution for device programming . to download the jam player, visit the altera website at www.altera.com . device configuration pins the following tables describe the connections and functionality of all the configuration-related pins on the arria ii gx devices. table 9?9 summarizes the arria ii gx configuration pins and their power supply. tab le 9 ?9 . arria ii gx configuration pin summary description input/output dedicated powered by configuration mode tdi input yes v ccio jtag tms input yes v ccio jtag tck input yes v ccio jtag tdo output yes v ccio and v ccpd (2) jtag crc_error output ? pull-up optional, all modes data0 input ? v ccio all modes except jtag data[7..1] input ? v ccio fpp init_done output ? pull-up optional, all modes clkusr input ? v ccio optional nstatus bidirectional yes pull-up all modes nce input yes v ccio all modes conf_done bidirectional yes pull-up all modes nconfig input yes v ccio all modes asdo output yes v ccio as ncso output yes v ccio as dclk input yes v ccio ps, fpp output yes v ccio as nio_pullup input yes v cc (1) all modes nceo output yes pull-up all modes msel[3..0] input yes v ccpd all modes notes to ta bl e 9? 9 : (1) although the nio_pullup is powered up by v cc , altera recommends you connect these pins to v ccio or gnd directly without using a pull- up or pull-down resistor. (2) the tdo pin is powered up by the v ccio and v ccpd power supply of i/o bank 8c.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?35 device configuration pins ? february 2009 altera corporation arria ii gx device handbook volume 1 table 9?10 describes the dedicated configuration pins. you must connect these pins properly on your board for successful configuration. some of these pins may not be required for your configuration schemes. table 9?10. dedicated configuration pins on the arria ii gx device (part 1 of 4) pin name user mode configuratio n scheme pin type description vccpd n/a all power dedicated power pin. use this pin to power the i/o pre-drivers, the jtag output pin ( tdo ), and the msel[3..0 ]. you must connect v ccpd according to the i/o standard used in the same bank: for 3.3-v i/o standards, connect v ccpd to 3.3 v for 3.0-v i/o standards, connect v ccpd to 3.0 v for 2.5-v and below i/o standards, connect v cc pd to 2.5 v v ccpd must ramp-up from 0 v to 2.5 v, 3.0 v, or 3.3 v in 100 ms for standard por or 4 ms for fast por. if v ccpd is not ramped up in this specified time, your arria ii gx device will not configure successfully. if your system does not allow for a v ccpd to ramp-up time in 100 ms or 4 ms, you must hold nconfig low until all power supplies are stable. nio_pullup n/a all input dedicated input that chooses whether the internal pull-up resistors on the user i/o pins and dual-purpose i/o pins ( ncso , nasdo , data[7..0] , clkusr , init_done ) are on or off before and during configuration. a logic high turns off the weak internal pull-up resistors, while a logic low turns them on. the nio-pullup input buffer is powered by v cc and has an internal 5-k pull-down resistor that is always active. you can tie the nio-pullup directly to the v ccio supply of the bank in which the pin resides or gnd. msel[3..0] n/a all input four-bit configuration input that sets the arria ii gx device configuration scheme. refer to table 9?2 on page 9?6 for the appropriate connections. you must hardwire these pins to the v ccpd or gnd. the msel[3..0] pins have internal 5-k pull-down resistors that are always active. nconfig n/a all input configuration control input. pulling this pin low during user-mode causes the device to lose its configuration data, enter a reset state, and tri-state all i/o pins. returning this pin to a logic-high level starts a reconfiguration. configuration is possible only if this pin is high, except in jtag programming mode, when nconfig is ignored.
9?36 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices device configuration pins arria ii gx device handbook volume 1 ? february 2009 altera corporation nstatus n/a all bi- directional open-drain the device drives nstatus low immediately after power-up and releases it after the por time. during user mode and regular configuration, this pin is pulled high by an external 10-k resistor. this pin, when driven low by the arria ii gx device, indicates that the device has encountered an error during configuration. status output. if an error occurs during configuration, nstatus is pulled low by the target device. status input. if an external source drives the nstatus pin low during configuration or initialization, the target device enters an error state. driving nstatus low after configuration and initialization does not affect the configured device. if you use a configuration device, driving nstatus low causes the configuration device to attempt to configure the device, but because the device ignores transitions on nstatus in user mode, the device does not reconfigure. to begin a reconfiguration, nconfig must be pulled low. if the v ccio supply of the bank in which the nstatus pin resides is not fully powered up, the following could occur: v ccio is powered high enough for the nstatus buffer to function properly and nstatus is driven low. when v ccio is ramped up, por trips and nstatus is released after por expires. v ccio is not powered high enough for the nstatus buffer to function properly. in this situation, nstatus might appear logic high, triggering a configuration attempt that would fail because por did not yet trip. when v ccpd is powered up, nstatus is pulled low because por did not yet trip. when por trips after v ccio is powered up, nstatus is released and pulled high. at that point, reconfiguration is triggered and the device is configured. conf_done n/a all bi- directional open-drain status output. the target device drives the conf_done pin low before and during configuration. once all configuration data is received without error and the initialization cycle starts, the target device releases conf_done . status input. after all data is received and conf_done goes high, the target device initializes and enters user mode. the conf_done pin must have an external 10-k pull-up resistor for the device to initialize. driving conf_done low after configuration and initialization does not affect the configured device. table 9?10. dedicated configuration pins on the arria ii gx device (part 2 of 4) pin name user mode configuratio n scheme pin type description
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?37 device configuration pins ? february 2009 altera corporation arria ii gx device handbook volume 1 nce n/a all input active-low chip enable. the nce pin activates the device with a low signal to allow configuration. the nce pin must be held low during configuration, initialization, and user mode. in single device configuration, it must be tied low. in multi- device configuration, nce of the first device is tied low while its nceo pin is connected to nce of the next device in the chain. the nce pin must also be held low for successful jtag programming of the device. nceo i/o all output output that drives low when device configuration is complete. in single-device configuration, this pin is left floating. in multi-device configuration, this pin feeds the next device?s nce pin. the nceo of the last device in the chain is left floating. the nceo pin is powered by the v ccio supply of the bank in which the nceo pin resides. after configuration, nceo is available as user i/o pins. the state of the nceo pin depends on the dual-purpose pin settings. asdo n/a as output control signal from the arria ii gx device to the serial configuration device in as mode used to read out configuration data. in as mode, asdo has an internal pull-up resistor that is always active. ncso n/a as output output control signal from the arria ii gx device to the serial configuration device in as mode that enables the configuration device. in as mode, ncso has an internal pull-up resistor that is always active. dclk n/a synchronous configuration schemes (ps, fpp, as) input (ps, fpp) output (as) in ps and fpp configuration, dclk is the clock input used to clock data from an external source into the target device. data is latched into the device on the rising edge of dclk . in as mode, dclk is an output from the arria ii gx device that provides timing for the configuration interface. in as mode, dclk has an internal pull-up resistor (typically 25 k ) that is always active. after configuration, this pin is tri-stated. in schemes that use a configuration device, dclk is driven low after configuration is done. in schemes that use a control host, dclk must be driven either high or low, whichever is more convenient. toggling this pin after configuration does not affect the configured device. table 9?10. dedicated configuration pins on the arria ii gx device (part 3 of 4) pin name user mode configuratio n scheme pin type description
9?38 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices device configuration pins arria ii gx device handbook volume 1 ? february 2009 altera corporation table 9?11 describes the optional configuration pins. if these optional configuration pins are not enabled in the quartus ii software, they are available as general-purpose user i/o pins. therefore, during configuration, these pins function as user i/o pins and are tri-stated with weak pull-up resistors. data0 n/a ps, fpp, as input data input. in serial configuration modes, bit-wide configuration data is presented to the target device on the data0 pin. in as mode, data0 has an internal pull-up resistor that is always active. the data[0] is a dedicated pin that is used for both passive and active configuration modes and it is not available as a user i/o pin after configuration. data[7..1] i/o parallel configuration schemes (fpp) inputs data inputs. byte-wide configuration data is presented to the target device on data[7..0] . in serial configuration schemes, they function as user i/o pins during configuration, which means they are tri-stated. after fpp configuration, data[7..1] are available as user i/o pins and the state of these pin depends on the dual- purpose pin settings. table 9?10. dedicated configuration pins on the arria ii gx device (part 4 of 4) pin name user mode configuratio n scheme pin type description table 9?11. optional configuration pins (part 1 of 2) pin name user mode pin type description clkusr n/a if option is on. i/o if option is off. input optional user-supplied clock input synchronizes the initialization of one or more devices. enable this pin by turning on the enable user-supplied start-up clock ( clkusr ) option in the quartus ii software. init_done n/a if option is on. i/o if option is off. output open-drain use as status pin to indicate when the device has initialized and is in user mode. when nconfig is low and during the beginning of configuration, the init_done pin is tri-stated and pulled high due to an external 10-k pull-up resistor. once the option bit to enable init_done is programmed into the device (during the first frame of configuration data), the init_done pin goes low. when initialization is complete, the init_done pin is released and pulled high and the device enters user mode. thus, the monitoring circuitry must be able to detect a low-to-high transition. this pin is enabled by turning on the enable init_done output option in the quartus ii software.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?39 device configuration pins ? february 2009 altera corporation arria ii gx device handbook volume 1 table 9?12 describes the dedicated jtag pins. jtag pins must be kept stable before and during configuration to prevent accidental loading of jtag instructions. tdi and tms have weak internal pull-up resistors while tck has a weak internal pull-down resistor (typically 25 k ). if you plan to use the signaltap ? embedded logic array analyzer, you must connect the jtag pins of the arria ii gx device to a jtag header on your board. dev_oe n/a if option is on. i/o if option is off. input optional pin that allows you to override all tri-states on the device. when this pin is driven low, all i/o pins are tri-stated. when this pin is driven high, all i/o pins behave as programmed. enable this pin by turning on the enable device-wide output enable ( dev_oe ) option in the quartus ii software. dev_clrn n/a if option is on. i/o if option is off. input optional pin that allows you to override all clears on all device registers. when this pin is driven low, all registers are cleared. when this pin is driven high, all registers behave as programmed. this pin is enabled by turning on the enable device-wide reset ( dev_clrn ) option in the quartus ii software. table 9?11. optional configuration pins (part 2 of 2) pin name user mode pin type description table 9?12. dedicated jtag pins pin name user mode pin type description tdi n/a input serial input pin for instructions as well as test and programming data. data is shifted on the rising edge of tck . the tdi pin is powered by the v ccio supply of i/o bank 8c. if the jtag interface is not required on the board, you can disable the jtag circuitry by connecting this pin to logic high. tdo n/a output serial data output pin for instructions as well as test and programming data. data is shifted out on the falling edge of tck . the pin is tri-stated if data is not being shifted out of the device. the tdo pin is powered up by the v ccio and v ccpd power supply of i/o bank 8c. for recommendations about connecting a jtag chain with multiple voltages across the devices in the chain, refer to the jtag boundary scan testing chapter in volume 1 of the arria ii gx device handbook . if the jtag interface is not required on the board, you can disable the jtag circuitry by leaving this pin unconnected. tms n/a input input pin that provides the control signal to determine the transitions of the tap controller state machine. tms is evaluated on the rising edge of tck . therefore, you must set up tms before the rising edge of tck . transitions in the state machine occur on the falling edge of tck after the signal is applied to tms . the tms pin is powered by the v ccio supply of i/o bank 8c. if the jtag interface is not required on the board, you can disable the jtag circuitry by connecting this pin to logic high. tck n/a input the clock input to the bst circuitry. some operations occur at the rising edge, while others occur at the falling edge. the tck pin is powered by the v ccio supply of i/o bank 8c. it is expected that the clock input waveform have a nominal 50% duty cycle. if the jtag interface is not required on the board, you can disable the jtag circuitry by connecting tck to gnd.
9?40 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices configuration data decompression arria ii gx device handbook volume 1 ? february 2009 altera corporation configuration data decompression arria ii gx devices support configuration data decompression, which saves configuration memory space and time. this feature allows you to store compressed configuration data in configuration or other memory devices and transmit this compressed bitstream to arria ii gx devices. during configuration, the arria ii gx device decompresses the bitstream in real time and programs its sram cells. 1 preliminary data indicates that compression typically reduces the configuration bitstream size by 35 to 55% based on the designs used. arria ii gx devices support decompression in the fpp (when using a max ii device or microprocessor + flash), as, and ps configuration schemes. the arria ii gx decompression feature is not available in the jtag configuration scheme. 1 when using fpp mode, the intelligent host must provide a dclk that is 4 the data rate. therefore, the configuration data must be valid for four dclk cycles. in ps mode, use the arria ii gx decompression feature, because sending compressed configuration data reduces configuration time. when you enable compression, the quartus ii software generates configuration files with compressed configuration data. this compressed file reduces the storage requirements in the configuration device or flash memory, and decreases the time needed to transmit the bitstream to the arria ii gx device. the time required by a arria ii gx device to decompress a configuration file is less than the time needed to transmit the configuration data to the device. there are two ways to enable compression for arria ii gx bitstreams: before design compilation (in the compiler settings menu) and after design compilation (in the convert programming files window). to enable compression in the project?s compiler settings menu, perform the following steps: 1. on the assignments menu, click device to bring up the settings dialog box. 2. after selecting your arria ii gx device, open the device and pin options window. 3. in the configuration settings tab, enable the check box for generate compressed bitstreams (as shown in figure 9?19 ).
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?41 configuration data decompression ? february 2009 altera corporation arria ii gx device handbook volume 1 you can also enable compression when creating programming files from the convert programming files window. to do this, perform the following steps: 1. on the file menu, click convert programming files . 2. select the programming file type ( .pof , .sram , .hex, .rbf , or .ttf ). 3. for pof output files, select a configuration device. 4. in the input files to convert box, select sof data . 5. select add file and add a arria ii gx device .sof files. 6. select the name of the file you added to the sof data area and click properties . 7. check the compression check box. when multiple arria ii gx devices are cascaded, you can selectively enable the compression feature for each device in the chain if you are using a serial configuration scheme. figure 9?20 depicts a chain of two arria ii gx devices. the first arria ii gx device has compression enabled and therefore receives a compressed bitstream from the configuration device. the second arria ii gx device has the compression feature disabled and receives uncompressed data. figure 9?19. enabling compression for arria ii gx bitstreams in compiler settings
9?42 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices remote system upgrades arria ii gx device handbook volume 1 ? february 2009 altera corporation in a multi-device fpp configuration chain (with a max ii device or microprocessor + flash), all arria ii gx devices in the chain must either enable or disable the decompression feature. you cannot selectively enable the compression feature for each device in the chain because of the data and dclk relationship. you can generate programming files for this setup by clicking convert programming files on the file menu in the quartus ii software. remote system upgrades this section describes the functionality and implementation of the dedicated remote system upgrade circuitry. it also defines several concepts related to remote system upgrades, including factory configuration, application configuration, remote update mode, and user watchdog timer. additionally, this section provides design guidelines for implementing remote system upgrades with the supported configuration schemes. system designers sometimes face challenges such as shortened design cycles, evolving standards, and system deployments in remote locations. arria ii gx devices help overcome these challenges with their inherent reprogrammability and dedicated circuitry to perform remote system upgrades. remote system upgrades help deliver feature enhancements and bug fixes without costly recalls, reduce time-to-market, extend product life, and help to avoid system downtime. arria ii gx devices feature dedicated remote system upgrade circuitry. soft logic (either the nios ? ii embedded processor or user logic) implemented in an arria ii gx device can download a new configuration image from a remote location, store it in configuration memory, and direct the dedicated remote system upgrade circuitry to start a reconfiguration cycle. the dedicated circuitry performs error detection during and after the configuration process, recovers from any error condition by reverting back to a safe configuration image, and provides error status information. figure 9?20. compressed and uncompressed serial configuration data in the same configuration file nce gnd nceo decompression controller arria ii gx fpga nce nceo n.c. serial configuration data compressed uncompressed configuration data configuration data serial configuration device arria ii gx fpga
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?43 remote system upgrades ? february 2009 altera corporation arria ii gx device handbook volume 1 remote system upgrades are supported in fast active serial (as) arria ii gx configuration schemes. you can also implement remote system upgrades in conjunction with advanced arria ii gx features such as real-time decompression of configuration data and design security using the advanced encryption standard (aes) for secure and efficient field upgrades. the largest serial configuration device currently supports 128 mbits of configuration bitstream. functional description the dedicated remote system upgrade circuitry in arria ii gx devices manages remote configuration and provides error detection, recovery, and status information. user logic or a nios ii processor implemented in the arria ii gx device logic array provides access to the remote configuration data source and an interface to the system?s configuration memory. arria ii gx devices have remote system upgrade processes that involve the following steps: 1. a nios ii processor (or user logic) implemented in the arria ii gx device logic array receives new configuration data from a remote location. the connection to the remote source uses a communication protocol such as transmission control protocol/internet protocol (tcp/ip), peri pheral component interconnect (pci), user datagram protocol (udp), universal asynchronous receiver/transmitter (uart), or a proprietary interface. 2. the nios ii processor (or user logic) stores this new configuration data in non-volatile configuration memory. 3. the nios ii processor (or user logic) starts a reconfiguration cycle with the new or updated configuration data. 4. the dedicated remote system upgrade circuitry detects and recovers from any errors that might occur during or after the reconfiguration cycle and provides error status information to the user design.
9?44 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices remote system upgrades arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 9?21 shows the steps required for performing remote configuration updates. (the numbers in figure 9?21 coincide with the steps just mentioned.) 1 arria ii gx devices only support remote system upgrade in the single device as configuration scheme. figure 9?22 shows a block diagram for implementing a remote system upgrade with the arria ii gx as configuration scheme. you must set the mode select pins ( msel[3..0] ) to as mode to use the remote system upgrade in your system. 1 the msel pin settings vary for different configuration voltage standards and por delays. to connect msel[3..0] , refer to table 9?2 on page 9?6 . 1 when using fast as mode, you must select remote update mode in the quartus ii software and insert the altremote_update megafunction to access the circuitry. for more information, refer to ?altremote_update megafunction? on page 9?54 . enabling remote update you can enable remote update for arria ii gx devices in the quartus ii software before design compilation (in the compiler settings menu). in remote update mode, the auto-restart configuration after error option is always enabled. to enable remote update in the project?s compiler settings, perform the following steps in the quartus ii software: 1. on the assignment menu, click device . the settings dialog box appears. figure 9?21. functional diagram of arria ii gx remote system upgrade development location memory arria ii gx configuration arria ii gx device control module data data data configuration 1 2 3 figure 9?22. remote system upgrade block diagram for arria ii gx as configuration scheme arria ii gx device serial configuration device nios ii processor or user logic
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?45 remote system upgrades ? february 2009 altera corporation arria ii gx device handbook volume 1 2. click device and pin options . the device and pin options dialog box appears. 3. click the configuration tab. 4. from the configuration scheme list, select active serial (you can also use configuration device ) ( figure 9?23 ). 5. from the configuration mode list, select remote ( figure 9?23 ). 6. click ok . 7. in the settings dialog box, click ok . configuration image types when performing a remote system upgrade, arria ii gx device configuration bitstreams are classified as factory configuration images or application configuration images. an image, also referred to as a configuration, is a design loaded into the arria ii gx device that performs certain user-defined functions. each arria ii gx device in your system requires one factory image or the addition of one or more application images. the factory image is a user-defined fall-back, or safe configuration, and is responsible for administering remote updates in conjunction with the dedicated circuitry. application images implement user-defined functionality in the target arria ii gx device. you may include the default application image functionality in the factory image. figure 9?23. enabling remote update for arria ii gx devices in the compiler settings menu
9?46 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices remote system upgrade mode arria ii gx device handbook volume 1 ? february 2009 altera corporation a remote system upgrade involves storing a new application configuration image or updating an existing one using the remote communication interface. after an application configuration image is stored or updated remotely, the user design in the arria ii gx device starts a reconfiguration cycle with the new image. any errors during or after this cycle are detected by the dedicated remote system upgrade circuitry and cause the device to automatically revert to the factory image. the factory image then performs error processing and recovery. the factory configuration is written to the serial configuration device only once by the system manufacturer and should not be remotely updated. on the other hand, application configurations may be remotely updated in the system. both images can begin system reconfiguration. remote system upgrade mode remote system upgrade has only one mode of operation: remote update mode. remote update mode allows you to determine the functionality of your system upon power-up and offers different features. overview in remote update mode, arria ii gx devices load the factory configuration image upon power up. the user-defined factory configuration determines which application configuration is to be loaded and triggers a reconfiguration cycle. the factory configuration may also contain application logic. when used with serial configuration devices, remote update mode allows an application configuration to start at any flash sector boundary. for example, this translates to a maximum of 256 pages in the epcs128 device and 64 pages in the epcs32 device, where the minimum size of each page is 512 kbits. altera does not recommend using the same page in the serial configuration device for two images. additionally, remote update mode features a user watchdog timer that determines the validity of an application configuration. remote update mode when an arria ii gx device is first powered up in remote update mode, it loads the factory configuration located at page zero (page registers pgm[23:0] = 24'b0 ). always store the factory configuration image for your system at page address zero. this corresponds to the start address location 0000000 in the serial configuration device. the factory image is user-designed and contains soft logic to: process any errors based on status information from the dedicated remote system upgrade circuitry communicate with the remote host and receive new application configurations and store this new configuration data in the local non-volatile memory device determine which application configuration is to be loaded into the arria ii gx device enable or disable the user watchdog timer and load its time-out value (optional) instruct the dedicated remote system upgrade circuitry to start a reconfiguration cycle
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?47 remote system upgrade mode ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?24 shows the transitions between the factory and application configurations in remote update mode. after power up or a configuration error, the factory configuration logic is loaded automatically. the factory configuration also needs to specify whether to enable the user watchdog timer for the application configuration and if enabled, to include the timer setting information as well. the user watchdog timer ensures that the application configuration is valid and functional. the timer must be continually reset in a specific amount of time during user mode operation of an application configuration. only valid application configurations contain the logic to reset the timer in user mode. this timer reset logic needs to be part of a user-designed hardware and/or software health monitoring signal that indicates error-free system operation. if the timer is not reset in a specific amount of time; for example, the user application configuration detects a functional problem or if the system hangs, the dedicated circuitry updates the remote system upgrade status register, triggering the loading of the factory configuration. 1 the user watchdog timer is automatically disabled for factory configurations. for more information about the user watchdog timer, refer to ?user watchdog timer? on page 9?52 . if there is an error while loading the application configuration, the cause of the reconfiguration is written by the dedicated circuitry to the remote system upgrade status register. actions that cause the remote system upgrade status register to be written are: nstatus driven low externally internal crc error figure 9?24. transitions between configurations in remote update mode set control register and reconfigure set control register and reconfigure reload a different application application n configuration application 1 configuration factory configuration (page 0) configuration error configuration error power up configuration error reload a different application
9?48 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices dedicated remote system upgrade circuitry arria ii gx device handbook volume 1 ? february 2009 altera corporation user watchdog timer time-out a configuration reset (logic array nconfig signal or external nconfig pin assertion to low) arria ii gx devices automatically load the factory configuration located at page address zero. this user-designed factory configuration can read the remote system upgrade status register to determine the reason for the reconfiguration. the factory configuration then takes appropriate error recovery steps and writes to the remote system upgrade control register to determine the next application configuration to be loaded. when arria ii gx devices successfully load the application configuration, they enter into user mode. in user mode, the soft logic (nios ii processor or state machine and the remote communication interface) assists the arria ii gx device in determining when a remote system update is arriving. when a remote system update arrives, the soft logic receives the incoming data, writes it to the configuration memory device, and triggers the device to load the factory configuration. the factory configuration reads the remote system upgrade status register and control register, determines the valid application configuration to load, writes the remote system upgrade control register accordingly, and initiates system reconfiguration. dedicated remote system upgrade circuitry this section describes the implementation of the arria ii gx dedicated remote system upgrade circuitry. the remote system upgrade circuitry is implemented in hard logic. this dedicated circuitry interfaces with the user-defined factory and application configurations implemented in the arria ii gx device logic array to provide the complete remote configuration solution. the remote system upgrade circuitry contains the remote system upgrade registers, a watchdog timer, and a state machine that controls those components.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?49 dedicated remote system upgrade circuitry ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 9?25 shows the remote system upgrade block?s data path. remote system upgrade registers the remote system upgrade block contains a series of registers that store the page addresses, watchdog timer settings, and status information. these registers are detailed in table 9?13 . figure 9?25. remote system upgrade circuit data path (note 1) note to figure 9?25 : (1) the ru_dout , ru_shiftnld , ru_captnupdt , ru_clk, ru_din , ru_nconfig , and ru_nrstimer signals are internally controlled by the altremote_update megafunction. logic array shift register status register (sr) [4..0] control register [37..0] din capture dout bit [4..0] logic array clkout ru_shiftnld ru_captnupdt ru_clk ru_din ru_nconfig ru_nrstimer user watchdog timer ru_dout capture clkin update logic array capture din bit [37..0] dout update update register [37..0] time-out rsu state machine internal oscillator table 9?13. remote system upgrade registers (part 1 of 2) register description shift register this register is accessible by the logic array and allows the update, status, and control registers to be written and sampled by user logic. control register this register contains the current page address, user watchdog timer settings, and one bit specifying whether the current configuration is a factory configuration or an application configuration. during a read operation in an application configuration, this register is read into the shift register. when a reconfiguration cycle is initiated, the contents of the update register are written into the control register.
9?50 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices dedicated remote system upgrade circuitry arria ii gx device handbook volume 1 ? february 2009 altera corporation the remote system upgrade control and status registers are clocked by the 10-mhz internal oscillator (the same oscillator that controls the user watchdog timer). however, the remote system upgrade shift and update registers are clocked by the user clock input ( ru_clk). remote system upgrade control register the remote system upgrade control register stores the application configuration page address and user watchdog timer settings. the control register functionality depends on the remote system upgrade mode selection. in remote update mode, the control register page address bits are set to all zeros ( 24'b0 = 0000000 ) at power up to load the factory configuration. a factory configuration in remote update mode has write access to this register. the control register bit positions are shown in figure 9?26 and defined in table 9?14 . in the figure, the numbers show the bit position of a setting in a register. for example, bit number 25 is the enable bit for the watchdog timer. the application-not-factory ( anf ) bit indicates whether the current configuration loaded in the arria ii gx device is the factory configuration or an application configuration. this bit is set low by the remote system upgrade circuitry when an error condition causes a fall-back to the factory configuration. when the anf bit is high, the control register access is limited to read operations. when the anf bit is low, the register allows write operations and disables the watchdog timer. in remote update mode, the factory configuration design sets this bit high (1'b1) when updating the contents of the update register with the application page address and watchdog timer settings. update register this register contains data similar to that in the control register. however, it can only be updated by the factory configuration by shifting data into the shift register and issuing an update operation. when a reconfiguration cycle is triggered by the factory configuration, the control register is updated with the contents of the update register. during a capture in a factory configuration, this register is read into the shift register. status register this register is written to by the remote system upgrade circuitry on every reconfiguration to record the cause of the reconfiguration. this information is used by the factory configuration to determine the appropriate action following a reconfiguration. during a capture cycle, this register is read into the shift register. table 9?13. remote system upgrade registers (part 2 of 2) register description figure 9?26. remote system upgrade control register wd_timer[11..0] wd_en pgm[23..0] anf 37 36 35 34 33 32 31 30 29 2 8 27 26 25 24 23 22 .. 3 2 1 0
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?51 dedicated remote system upgrade circuitry ? february 2009 altera corporation arria ii gx device handbook volume 1 table 9?14 shows the remote system upgrade control register contents. remote system upgrade status register the remote system upgrade status register specifies the reconfiguration trigger condition. the various trigger and error conditions include: cyclical redundancy check (crc) error during application configuration nstatus assertion by an external device due to an error arria ii gx device logic array triggered a reconfiguration cycle, possibly after downloading a new application configuration image external configuration reset ( nconfig ) assertion user watchdog timer time-out figure 9?27 specifies the contents of the status register. the numbers in the figure show the bit positions in a 5-bit register. table 9?15 lists the status register contents for remote system upgrade. table 9?14. remote system upgrade control register contents control register bit remote system upgrade mode value (2) definition anf (1) remote update 1'b0 application not factory pgm[23..0] remote update 24'b0000000 as configuration start address ( stadd[23..0] ) wd_en remote update 1'b0 user watchdog timer enable bit wd_timer[11..0] remote update 12'b000000000000 user watchdog time-out value (most significant 12 bits of 29-bit count value: {wd_timer[11..0], 17'b0} ) notes to ta bl e 9? 14 : (1) in remote update mode, the remote configuration block does not update the anf bit automatically (you can update it manually). (2) this is the default value of the control register bit. figure 9?27. remote system upgrade status register table 9?15. remote system upgrade status register contents (part 1 of 2) status register bit definition por reset value crc (from configuration) crc error caused reconfiguration 1 bit '0' nstatus nstatus caused reconfiguration 1 bit '0' core_nconfig (1) device logic array caused reconfiguration 1 bit '0' nconfig nconfig caused reconfiguration 1 bit '0' wd 4 crc 0 nconfig 3 nstatus 1 core_nconfig 2
9?52 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices dedicated remote system upgrade circuitry arria ii gx device handbook volume 1 ? february 2009 altera corporation remote system upgrade state machine the remote system upgrade control and update registers have identical bit definitions, but serve different roles (refer to figure 9?26 on page 9?50 ). while both registers can only be updated when the device is loaded with a factory configuration image, the update register writes are controlled by the user logic; the control register writes are controlled by the remote system upgrade state machine. in factory configurations, the user logic sends the anf bit (set high), page address, and watchdog timer settings for the next application configuration bit to the update register. when the logic array configuration reset ( ru_nconfig ) goes low, the remote system upgrade state machine updates the control register with the contents of the update register and starts system reconfiguration from the new application page. if there is an error or reconfiguration trigger condition, the remote system upgrade state machine directs the system to load a factory or application configuration (page zero or page one, based on the mode and error condition) by setting the control register accordingly. table 9?16 lists the contents of the control register after such an event occurs for all possible error or trigger conditions. the remote system upgrade status register is updated by the dedicated error monitoring circuitry after an error condition but before the factory configuration is loaded. capture operations during factory configuration access the contents of the update register. this feature is used by the user logic to verify that the page address and watchdog timer settings were written correctly. read operations in application configurations access the contents of the control register. this information is used by the user logic in the application configuration. user watchdog timer the user watchdog timer prevents a faulty application configuration from stalling the device indefinitely. the system uses the timer to detect functional errors after an application configuration is successfully loaded into the arria ii gx device. wd watchdog timer caused reconfiguration 1 bit '0' note to tab l e 9 ?1 5 : (1) logic array reconfiguration forces the system to load the application configuration data into the arria ii gx device. this occurs after the factory configuration specifies the appropriate application configuration page address by updating the update register. table 9?15. remote system upgrade status register contents (part 2 of 2) status register bit definition por reset value table 9?16. control register contents after an error or reconfiguration trigger condition reconfiguration error/trigger control register setting remote update nconfig reset all bits are 0 nstatus error all bits are 0 core triggered reconfiguration update register crc error all bits are 0 wd time out all bits are 0
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?53 quartus ii software support ? february 2009 altera corporation arria ii gx device handbook volume 1 the user watchdog timer is a counter that counts down from the initial value loaded into the remote system upgrade control register by the factory configuration. the counter is 29-bits wide and has a maximum count value of 2 29 . when specifying the user watchdog timer value, specify only the most significant 12 bits. the granularity of the timer setting is 2 15 cycles. the cycle time is based on the frequency of the 10-mhz internal oscillator. table 9?17 specifies the operating range of the 10-mhz internal oscillator. the user watchdog timer begins counting once the application configuration enters device user mode. this timer must be periodically reloaded or reset by the application configuration before the timer expires by asserting ru_nrstimer . if the application configuration does not reload the user watchdog timer before the count expires, a time-out signal is generated by the remote system upgrade dedicated circuitry. the time-out signal tells the remote system upgrade circuitry to set the user watchdog timer status bit ( wd ) in the remote system upgrade status register and reconfigures the device by loading the factory configuration. the user watchdog timer is not enabled during the configuration cycle of the device. errors during configuration are detected by the crc engine. also, the timer is disabled for factory configurations. functional errors should not exist in the factory configuration because it is stored and validated during production and is never updated remotely. 1 the user watchdog timer is disabled in factory configurations and during the configuration cycle of the application configuration. it is enabled after the application configuration enters user mode. quartus ii software support the quartus ii software provides the flexibility to include the remote system upgrade interface between the arria ii gx device logic array and the dedicated circuitry, generates configuration files for production, and allows remote programming of the system configuration memory. the altremote_update megafunction is the implementation option in the quartus ii software that is used for the interface between the remote system upgrade circuitry and the device logic array interface. using the megafunction block instead of creating your own logic saves design time and offers more efficient logic synthesis and device implementation. table 9?17. 10-mhz internal oscillator specifications (note 1) minimum typical maximum units 4.3 5.3 10 mhz note to tab l e 9 ?1 7 : (1) these values are preliminary.
9?54 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices design security arria ii gx device handbook volume 1 ? february 2009 altera corporation altremote_update megafunction the altremote_update megafunction provides a memory-like interface to the remote system upgrade circuitry and handles the shift register read and write protocol in the arria ii gx device logic. this implementation is suitable for designs that implement the factory configuration functions using a nios ii processor or user logic in the device. figure 9?28 shows the interface signals between the altremote_update megafunction and nios ii processor or user logic. f for more information about the altremote_update megafunction and the description of ports listed in figure 9?28 , refer to the altremote_update megafunction user guide . design security this section provides an overview of the design security features and their implementation on arria ii gx devices using advanced encryption standard (aes). it also describes the security modes available in arria ii gx devices that allow you to use these new features in your designs. as arria ii gx devices start to play roles in larger and more critical designs in competitive commercial and military environments, it is increasingly important to protect your designs from copying, reverse engineering, and tampering. arria ii gx devices address these concerns with both volatile and non-volatile security feature support. arria ii gx devices have the ability to decrypt configuration bitstreams using the aes algorithm, an industry-standard encryption algorithm that is fips-197 certified. arria ii gx devices have a design security feature which uses a 256-bit security key. figure 9?28. interface signals between the altremote_update megafunction and the nios ii processor nios ii processor or user logic read_param write_param param[2..0] data_in[23..0] reconfig reset_timer clock reset busy data_out[23..0] altremote_update
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?55 design security ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx devices store configuration data in sram configuration cells during device operation. because sram memory is volatile, the sram cells must be loaded with configuration data each time the device powers up. it is possible to intercept configuration data when it is being transmitted from the memory source (flash memory or a configuration device) to the device. the intercepted configuration data could then be used to configure another device. when using the arria ii gx design security feature, the security key is stored in the arria ii gx device. depending on the security mode, you can configure the arria ii gx device using a configuration file that is encrypted with the same key, or for board testing, configured with a normal configuration file. the design security feature is available when configuring arria ii gx devices using the fast passive parallel configuration mode with an external host (such as a max ii device or microprocessor), or when using active serial (as) or passive serial (ps) configuration schemes. the design security feature is also available in remote update mode with as configuration. the design security feature is not available when you are configuring your arria ii gx device using joint test action group (jtag)-based configuration. for more details, refer to ?supported configuration schemes? on page 9?59 . 1 when using a serial configuration scheme such as ps or fast as, configuration time is the same whether or not the design security feature is enabled. if the fpp scheme is used with the design security or decompression feature, a 4 dclk is required. this results in a slower configuration time when compared to the configuration time of an arria ii gx device that has neither the design security nor the decompression feature enabled. arria ii gx security protection arria ii gx device designs are protected from copying, reverse engineering, and tampering using configuration bitstream encryption. security against copying the security key is securely stored in the arria ii gx device and cannot be read out through any interface. in addition, as configuration file read-back is not supported in arria ii gx devices, your design information cannot be copied. security against reverse engineering reverse engineering from an encrypted configuration file is very difficult and time consuming because the arria ii gx configuration file formats are proprietary and the file contains millions of bits which require specific decryption. reverse engineering the arria ii gx device is just as difficult because the device is manufactured on the most advanced 40-nm process technology. security against tampering once the tamper protection bit is set in the key programming file generated by the quartus ii software, the arria ii gx device can only be configured with configuration files encrypted with the same key. tampering is prevented using both volatile and non-volatile keys.
9?56 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices design security arria ii gx device handbook volume 1 ? february 2009 altera corporation aes decryption block the main purpose of the aes decryption block is to decrypt the configuration bitstream prior to entering data decompression or configuration. prior to receiving encrypted data, you must enter and store the 256-bit security key in the device. you can choose between a non-volatile security key and a volatile security key with battery backup. the security key is scrambled prior to storing it in the key storage to make it more difficult for anyone to retrieve the stored key using de-capsulation of the device. flexible security key storage arria ii gx devices support two types of security key programming: volatile and non-volatile. table 9?18 shows the differences between volatile keys and non-volatile keys. you can program the non-volatile key to the arria ii gx device without an external battery. also, there are no additional requirements of any of the arria ii gx power supply inputs. v ccbat is a dedicated power supply for volatile key storage and not shared with other on-chip power supplies, such as v ccio or v cc . v ccbat continuously supplies power to the volatile register regardless of the on-chip supply condition. 1 after power-up, wait 100 ms (standard por delay) or 4 ms (fast por delay) before beginning the key programming to ensure that v ccbat is at its full rail. 1 as an example, the following are lithium coin-cell type batteries used for volatile key storage purposes: br1220 (-30 to +80c) and br2477a (-40c to +125c). f for more information about battery specifications, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook . f for more information about the vccbat pin connection recommendations, refer to arria ii gx device family pin connection guidelines . table 9?18. security key options options volatile key non-volatile key key programmability reprogrammable and erasable one-time programmable external battery required not required key programming method (1) on-board on and off board design protection secure against copying and reverse engineering. tamper resistant if volatile tamper protection bit is set. secure against copying and reverse engineering. tamper resistant if tamper protection bit is set. note to tab l e 9 ?1 8 : (1) key programming is carried out using the jtag interface.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?57 design security ? february 2009 altera corporation arria ii gx device handbook volume 1 arria ii gx design security solution arria ii gx devices are sram-based devices. to provide design security, arria ii gx devices require a 256-bit security key for configuration bitstream encryption. you can carry out secure configuration in the following three steps, as shown in figure 9?29 : 1. program the security key into the arria ii gx device. program the user-defined 256-bit aes keys to the arria ii gx device through the jtag interface. 2. encrypt the configuration file and store it in the external memory. encrypt the configuration file with the same 256-bit keys used to program the arria ii gx device. encryption of the configuration file is done using the quartus ii software. the encrypted configuration file is then loaded into the external memory, such as a configuration or flash device. 3. configure the arria ii gx device. at system power-up, the external memory device sends the encrypted configuration file to the arria ii gx device. figure 9?29. design security (note 1) note to figure 9?29 : (1) step 1, step 2, and step 3 correspond to the procedure detailed in ?design security? on page 9?54 . user-defined aes key key storage encrypted configuration file memory or configuration device arria ii gx fpga aes decryption step 1 step 2 step 3
9?58 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices design security arria ii gx device handbook volume 1 ? february 2009 altera corporation security modes available the following security modes are available on arria ii gx devices: volatile key secure operation with volatile key programmed and required external battery?this mode accepts both encrypted and unencrypted configuration bitstreams. use the unencrypted configuration bitstream support for board-level testing only. non-volatile key secure operation with one-time-programmable (otp) security key programmed? this mode accepts both encrypted and unencrypted configuration bitstreams. use the unencrypted configuration bitstream support for board level testing only. volatile key with tamper protection bit set secure operation in tamper resistant mode with volatile security key programmed? only encrypted configuration bitstreams are allowed to configure the device. tamper protection disables jtag configuration with unencrypted configuration bitstream. 1 enabling the tamper protection bit disables the test mode in arria ii gx devices. this process is irreversible and prevents altera from carry-out failure analysis. contact altera technical support to enable the tamper protection bit. non-volatile key with tamper protection bit set secure operation in tamper resistant mode with otp security key programmed?only encrypted configuration bitstreams are allowed to configure the device. tamper protection disables jtag configuration with unencrypted configuration bitstream. 1 enabling the tamper protection bit disables the test mode in arria ii gx devices. this process is irreversible and prevents altera from carry out failure analysis. contact altera technical support to enable the tamper protection bit. volatile or non-volatile key with jtag anti-tamper protection bit set all the jtag instructions except pulse_nconfig, bypass, key_verify , key_clr_vreg , and key_prog_vol are disabled. 1 enabling the jtag anti-tamper protection bit disables the boundary-scan test (bst) features in arria ii gx devices.
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?59 design security ? february 2009 altera corporation arria ii gx device handbook volume 1 no key operation only unencrypted configuration bitstreams are allowed to configure the device. table 9?19 summarizes the different security modes and configuration bitstream supported for each mode. supported configuration schemes the arria ii gx device supports only selected configuration schemes, depending on the security mode you select when you encrypt the arria ii gx device. figure 9?30 shows the restrictions of each security mode when encrypting arria ii gx devices. table 9?19. security modes supported mode (1) function configuration file volatile key secure encrypted board-level testing unencrypted non-volatile key secure encrypted board-level testing unencrypted volatile key with tamper protection bit set secure (tamper resistant) (2) encrypted non-volatile key with tamper protection bit set secure (tamper resistant) (2) encrypted volatile or non-volatile key with jtag anti-tamper protection bit set jtag tamper resistant (3) notes to ta bl e 9? 19 : (1) in no key operation, only the unencrypt ed configuration file is supported. (2) the tamper protection bit setting does not prevent the device from being reconfigured. (3) it does not control the decryption data path. figure 9?30. arria ii gx security modes?sequence and restrictions volatile key unencrypted or encrypted configuration file no key non-volatile key unencrypted or encrypted configuration file non-volatile key with tamper-protection bit set encrypted configuration file volatile key with tamper-protection bit set encrypted configuration file unencrypted configuration file
9?60 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices design security arria ii gx device handbook volume 1 ? february 2009 altera corporation table 9?20 shows the configuration modes allowed in each of the security modes. 1 the design security feature is available in all configuration methods except jtag. therefore, you can use the design security feature in fpp mode (when using an external controller, such as a max ii device or a microprocessor and flash memory), or in fast as and ps configuration schemes. table 9?21 summarizes the configuration schemes that support the design security feature both for volatile key and non-volatile key programming. table 9?20. allowed configuration modes for various security modes (note 1) security mode configuration file allowed configuration modes no key unencrypted all configuration modes that do not engage the design security feature. secure with volatile key encrypted passive serial with aes (and/or with decompression) fast passive parallel with aes (and/or with decompression) remote update fast as with aes (and/or with decompression) as (and/or with decompression) board-level testing with volatile key unencrypted all configuration modes that do not engage the design security feature. secure with non-volatile key encrypted passive serial with aes (and/or with decompression) fast passive parallel with aes (and/or with decompression) remote update fast as with aes (and/or with decompression) as (and/or with decompression) board-level testing with non- volatile key unencrypted all configuration modes that do not engage the design security feature. secure in tamper resistant mode using volatile or non-volatile key with tamper protection set encrypted passive serial with aes (and/or with decompression) fast passive parallel with aes (and/or with decompression) remote update fast as with aes (and/or with decompression) as (and/or with decompression) note to tab l e 9 ?2 0 : (1) there is no impact to the configuration time required compared to unencrypted configuration modes except when using fpp with aes (and/or decompression), which requires dclk that is 4 the data rate. table 9?21. design security configuration schemes availability (part 1 of 2) configuration scheme configuration method design security fpp max ii device or microprocessor and flash memory v (1) enhanced configuration device ? fast as serial configuration device v ps max ii device or microprocessor and flash memory v download cable v
chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices 9?61 document revision history ? february 2009 altera corporation arria ii gx device handbook volume 1 you can use the design security feature with other configuration features, such as compression and remote system upgrade features. when you use compression with the design security feature, the configuration file is first compressed and then encrypted using the quartus ii software. during configuration, the arria ii gx device first decrypts and then decompresses the configuration file. document revision history table 9?22 shows the revision history for this document. jtag (2) max ii device or microprocessor and flash memory ? download cable ? notes to ta bl e 9? 21 : (1) in this mode, the host system must send a dclk that is 4 the data rate. (2) jtag configuration supports only unencrypted configuration file. table 9?21. design security configuration schemes availability (part 2 of 2) configuration scheme configuration method design security table 9?22. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
9?62 chapter 9: configuration, design security, and remote system upgrades in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 10. seu mitigation in arria ii gx devices introduction in critical applications such as avionics, telecommunications, system control, and military applications, it is important to be able to do the following: confirm that the configuration data stored in an arria ? ii gx device is correct. alert the system to the occurrence of a configuration error. the error detection feature is enhanced in the arria ii gx device family. this section describes how to activate and use the error detection cyclical redundancy check (crc) feature when your arria ii gx device is in user mode and describes how to recover from configuration errors caused by crc errors. 1 for arria ii gx devices, the error detection crc feature is provided in the quartus ? ii software starting with version 9.0. using the error detection crc feature for the arria ii gx device family has no impact on fitting or performance. this chapter contains the following sections: ?error detection fundamentals? on page 10?1 ?configuration error detection? on page 10?2 ?user mode error detection? on page 10?2 ?error detection pin description? on page 10?5 ?error detection block? on page 10?5 ?error detection timing? on page 10?8 ?recovering from crc errors? on page 10?11 f for more information about crc, refer to an 357: error detection using crc in altera fpga devices . error detection fundamentals error detection determines if the data received through a medium is corrupted during transmission. to accomplish this, the transmitter uses a function to calculate a checksum value for the data and appends the checksum to the original data frame. the receiver uses the same calculation methodology to generate a checksum for the received data frame and compares the received checksum to the transmitted checksum. if the two checksum values are equal, the received data frame is correct and no data corruption occurred during transmission or storage. the error detection crc feature uses the same concept. when arria ii gx devices are successfully configured and are in user mode, the error detection crc feature ensures the integrity of the configuration data. aiigx51010-1.0
10?2 chapter 10: seu mitigation in arria ii gx devices configuration error detection arria ii gx device handbook volume 1 ? february 2009 altera corporation configuration error detection in configuration mode, a frame-based crc is stored in the configuration data and contains the crc value for each data frame. during configuration, the arria ii gx device calculates the crc value based on the frame of data that is received and compares it against the frame crc value in the data stream. configuration continues until either the device detects an error or configuration is complete. in arria ii gx devices, the crc value is calculated during the configuration stage. a parallel crc engine generates 16 crc check bits per frame and then stores them into the configuration random access memory (cram). the cram chain used for storing crc check bits is 16-bits wide; its length is equal to the number of frames in the device. user mode error detection arria ii gx devices have built-in error detection circuitry to detect data corruption by soft errors in the cram cells. this feature allows all cram contents to be read and verified to match a configuration-computed crc value. soft errors are changes in a cram?s bit state due to an ionizing particle. the error detection capability continuously computes the crc of the configured cram bits and compares it with the pre-calculated crc. if the crcs match, there is no error in the current configuration cram bits. the process of error detection continues until the device is reset (by setting nconfig low). when the device transitions into user mode, the error detection process is enabled if you enabled the crc error detection option in the quartus ii software. a single 16-bit crc calculation is done on a per-frame basis. once it has finished the crc calculation for a frame, the resulting 16-bit signature is hex 0000 if there are no detected cram bit errors in a frame by the error detection circuitry and the output signal crc_error is 0. if a cram bit error is detected by the circuitry in a frame in the device, the resulting signature is non-zero. this causes the crc engine to start searching the error bit location. the error detection logic in arria ii gx devices calculates crc check bits for each frame and pulls the crc_error pin high when it detects bit errors in the chip. within a frame, it can detect all single-bit, double-bit, and three-bit errors. the probability of more than three cram bits being flipped by an single event upset (seu) is very low. in general, the probability of detection for all error patterns is 99.998%. the crc engine reports the bit location and determines the type of error for all single-bit errors and over 99.641% of double -adjacent errors. the probability of other error patterns is very low and report of location of bit flips is not guaranteed by the crc engine. you can also read-out the error bit location through the joint test action group (jtag) and the core interface. you must shift these bits out from the error message register through either the jtag instruction, shift_ederror_reg , or the core interface, before the crc detects the next error in another frame. the crc circuit continues to run, and if an error is detected, you need to decide whether to complete a reconfiguration or to ignore the crc error.
chapter 10: seu mitigation in arria ii gx devices 10?3 user mode error detection ? february 2009 altera corporation arria ii gx device handbook volume 1 1 for more information about the timing requirement to shift out error information from the error message register, refer to ?error detection timing? on page 10?8 . the error detection logic continues to calculate the crc_error and 16-bit signatures for the next frame of data regardless of whether an error has occurred in the current frame or not. you need to monitor these signals and take the appropriate actions if a soft error occurs. the error detection circuitry in arria ii gx devices uses a 16-bit crc-ansi standard (16-bit polynomial) as the crc generator. the computed 16-bit crc signature for each frame is stored in the cram. the total storage size is 16 (number of bits per frame) the number of frames. the arria ii gx device error detection crc feature does not check memory blocks and i/o buffers. thus, the crc_error signal may stay solid high or low, depending on the error status of the previously checked cram frame. the i/o buffers are not verified during error detection because these bits use flipflops as storage elements that are more resistant to soft errors compared to cram cells. mlab and m9k memory blocks support parity bits that are used to check the contents of memory blocks for any error. f for more information about error detection in arria ii gx memory blocks, refer to the embedded memory blocks in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook. to provide testing capability of the error detection block, a jtag instruction, ederror_inject , is provided. this instruction is able to change the content of the 21-bit jtag fault injection register, used for error injection in arria ii gx devices, thereby enabling testing of the error detection block. 1 you can only execute the ederror_inject jtag instruction when the device is in user mode. table 10?1 describes the ederror_inject jtag instruction. you can create a jam? file ( .jam ) to automate the testing and verification process. this allows you to verify the crc functionality in-system and on-the-fly, without having to reconfigure the device. you can then switch to the crc circuit to check for real errors induced by an seu. you can introduce a single error or double errors adjacent to each other to the configuration memory. this provides an extra way to facilitate design verification and system fault tolerance characterization. use the jtag fault injection register with ederror_inject instruction to flip the readback bits. the arria ii gx device is then forced into error test mode. altera recommends you reconfigure the device after the test completes. table 10?1. ederror_inject jtag instruction jtag instruction instruction code description ederror_inject 00 0001 0101 this instruction controls the 21-bit jtag fault injection register, which is used for error injection.
10?4 chapter 10: seu mitigation in arria ii gx devices user mode error detection arria ii gx device handbook volume 1 ? february 2009 altera corporation the content of the jtag fault injection register is not loaded into the fault injection register during the processing of the last frame and the first frame. it is only loaded at the end of this period. 1 you can only introduce error injection in the first data frame, but you can monitor the error information at any time. for more information about the jtag fault injection register and fault injection register, refer to ?error detection registers? on page 10?7 . table 10?2 shows how the fault injection register is implemented and describes error injection. automated single event upset detection arria ii gx devices offer on-chip circuitry for automated checking of single event upset detection. some applications that require the device to operate error-free in high-neutron flux environments require periodic checks to ensure continued data integrity. the error detection crc feature ensures data reliability and is one of the best options for mitigating seu. you can implement the error detection crc feature with existing circuitry in arria ii gx devices, eliminating the need for external logic. the crc_error pin reports a soft error when configuration cram data is corrupted; you must decide whether to reconfigure the device or to ignore the error. table 10?2. fault injection register bit bit[20..19] bit[18..8] bit[7..0] description error type byte location of the injected error error byte value content error type (1) error injection type depicts the location of the injected error in the first data frame. depicts the location of the bit error and corresponds to the error injection type selection. bit[20] bit[19] 0 1 single byte error injection 1 0 double-adjacent byte error injection 0 0 no error injection note to tab l e 1 0? 2 : (1) bit[20] and bit[19] cannot both be set to 1, as this is not a valid selection. the error detection circuitry decodes this as no error injection.
chapter 10: seu mitigation in arria ii gx devices 10?5 error detection pin description ? february 2009 altera corporation arria ii gx device handbook volume 1 error detection pin description the following sections describe the crc_error pin. crc_error pin table 10?3 describes the crc_error pin. 1 wysiwyg is an optimization technique that performs optimization on the verilog quartus mapping (vqm) netlist within the quartus ii software. error detection block the error detection block contains the logic necessary to calculate the 16-bit crc signature for the configuration cram bits in the arria ii gx device. the crc circuit continues running even if an error occurs. when a soft error occurs, the device sets the crc_error pin high. the two types of crc detection that check the configuration bits are shown in table 10?4 . table 10?3. crc_error pin description pin name pin type description crc_error i/o, output open-drain active high signal that indicates that the error detection circuit has detected errors in the configuration cram bits. this is an optional pin and is used when the error detection crc circuit is enabled. when the error detection crc circuit is disabled, it is a user i/o pin. the crc error output, when using the wysiwyg function, is a dedicated path to the crc_error pin. to use the crc_error pin, tie this pin to vccpgm through a 10-k resistor. alternatively, depending on the input voltage specification of the system receiving the signal, tie this pin to a different pull-up voltage.
10?6 chapter 10: seu mitigation in arria ii gx devices error detection block arria ii gx device handbook volume 1 ? february 2009 altera corporation 1 the ?error detection block? section focuses on the first type, the 16-bit crc only, when the device is in user mode. table 10?4. two types of crc detection first type of crc detection second type of crc detection this is the cram error checking ability (16-bit crc) during user mode for use by the crc_error pin. for each frame of data, the pre-calculated 16-bit crc enters the crc circuit at the end of the frame data and determines whether there is an error or not. if an error occurs, the search engine finds the location of the error. the error messages can be shifted out through the jtag instruction or core interface logics while the error detection block continues running. the jtag interface reads out the 16-bit crc result for the first frame and also shifts the 16-bit crc bits to the 16-bit crc storage registers for test purposes. single error, double errors, or double errors adjacent to each other can be deliberately introduced to configuration memory for testing and design verification. this is the 16-bit crc that is embedded in every configuration data frame. during configuration, after a frame of data is loaded into the arria ii gx device, the pre-computed crc is shifted into the crc circuitry. at the same time, the crc value for the data frame shifted-in is calculated. if the pre-computed crc and calculated crc values do not match, nstatus is set low. every data frame has a 16-bit crc; therefore, there are many 16-bit crc values for the whole configuration bitstream. every device has different lengths of the configuration data frame.
chapter 10: seu mitigation in arria ii gx devices 10?7 error detection block ? february 2009 altera corporation arria ii gx device handbook volume 1 error detection registers there is one set of 16-bit registers in the error detection circuitry that stores the computed crc signature. a non-zero value on the syndrome register causes the crc_error pin to be set high. figure 10?1 shows the block diagram of the error detection circuitry, syndrome registers, and error injection block. table 10?5 defines the registers shown in figure 10?1 . figure 10?1. error detection circuitry, syndrome registers, and error injection block error detection state machine fault injection register jtag fault injection register error injection block control signals 16-bit crc calculation and error search engine readback bitstream with expected crc included syndrome register 8 16 crc_error jtag update register user update register error message register 46 30 jtag shift register user shift register general routing jtag tdo table 10?5. error detection registers (part 1 of 2) register description syndrome register this register contains the crc signature of the current frame through the error detection verification cycle. the crc_error signal is derived from the contents of this register. error message register this 46-bit register contains information on the error type, location of the error, and the actual syndrome. the types of errors and location reported are single- and double-adjacent bit errors. the location bits for other types of errors are not identified by the error message register. the content of the register is shifted out through the jtag shift_ederror_reg instruction or to the core through the core interface.
10?8 chapter 10: seu mitigation in arria ii gx devices error detection timing arria ii gx device handbook volume 1 ? february 2009 altera corporation error detection timing when the error detection crc feature is enabled through the quartus ii software, the device automatically activates the crc process upon entering user mode, after configuration, and after initialization is complete. if an error is detected within a frame, crc_error is driven high at the end of the error location search after the error message register is updated. at the end of this cycle, the crc_error pin is pulled low for a minimum of 32 clock cycles. if the next frame contains an error, crc_error is driven high again after the error message register is overwritten by the new value. you can start to unload the error message on each rising edge of the crc_error pin. error detection runs until the device is reset. the error detection circuitry runs off an internal configuration oscillator with a divisor that sets the maximum frequency. table 10?6 shows the minimum and maximum error detection frequencies. jtag update register this register is automatically updated with the contents of the error message register one cycle after the 46-bit register content is validated. it includes a clock enable, which must be asserted prior to being sampled into the jtag shift register. this requirement ensures that the jtag update register is not being written into by the contents of the error message register at exactly the same time that the jtag shift register is reading its contents. user update register this register is automatically updated with the contents of the error message register one cycle after the 46-bit register content is validated. it includes a clock enable, which must be asserted prior to being sampled into the user shift register. this requirement ensures that the user update register is not being written into by the contents of the error message register at exactly the same time that the user shift register is reading its contents. jtag shift register this register is accessible by the jtag interface and allows the contents of the jtag update register to be sampled and read out by jtag instruction shift_ederror_reg . user shift register this register is accessible by the core logic and allows the contents of the user update register to be sampled and read by user logic. jtag fault injection register this 21-bit register is fully controlled by the jtag instruction ederror_inject . this register holds the information of the error injection that you want in the bitstream. fault injection register the content of the jtag fault injection register is loaded into this 21-bit register when it is being updated. table 10?5. error detection registers (part 2 of 2) register description table 10?6. minimum and maximum error detection frequencies device type error detection frequency maximum error detection frequency minimum error detection frequency valid divisors (n) arria ii gx 100 mhz / 2 n 50 mhz 390 khz 1, 2, 3, 4, 5, 6, 7, 8
chapter 10: seu mitigation in arria ii gx devices 10?9 error detection timing ? february 2009 altera corporation arria ii gx device handbook volume 1 you can set a lower clock frequency by specifying a division factor in the quartus ii software (refer to ?software support? on page 10?10 ). the divisor is a power of two (2), where n is between 1 and 8. the divisor ranges from 2 through 256. see the following equation: 1 the error detection frequency reflects the frequency of the error detection process for a frame because the crc calculation in arria ii gx devices is done on a per-frame basis. the error message register is updated whenever an error or errors occur. if the error location and message are not shifted out before the next error location is found, the previous error location and message is overwritten by the new information. to avoid this, you must shift these bits out within one frame crc verification. the minimum interval time between each update for the error message register depends on the device and the error detection clock frequency. however, slowing down the error detection clock frequency slows down the error recovery time for the seu event. table 10?7 shows the estimated minimum interval time between each update for the error message register for arria ii gx devices. equation 10?1. table 10?7. minimum update interval for error message register (note 1) device timing interval ( s) ep2agx20 8.12 ep2agx30 8.12 ep2agx45 12.24 ep2agx65 12.24 ep2agx95 16.08 ep2agx125 16.08 ep2agx190 20.84 ep2agx260 20.84 note to tab l e 1 0? 7 : (1) these timing numbers are preliminary. error detection frequency 100 mhz 2 n ------------------- - =
10?10 chapter 10: seu mitigation in arria ii gx devices error detection timing arria ii gx device handbook volume 1 ? february 2009 altera corporation crc calculation time for the error detection circuitry to check from the first until the last frame depends on the device and the error detection clock frequency. table 10?8 shows the estimated time for each crc calculation with minimum and maximum clock frequencies for arria ii gx devices. the minimum crc calculation time is calculated with the maximum error detection frequency with divisor factor 1 while the maximum crc calculation time is calculated with the minimum error detection frequency with divisor factor 8. software support the quartus ii software, starting with version 8.1, supports the error detection crc feature for arria ii gx devices. enabling this feature in the device and pin options dialog box generates the crc_error output to the optional dual purpose crc_error pin. enable the error detection feature using crc by performing the following steps: 1. open the quartus ii software and load a project using an arria ii gx device. 2. on the assignments menu, click settings . the settings dialog box appears. 3. in the category list, select device . the device screen appears. 4. click device and pin options . the device and pin options dialog box appears (see figure 10?2 ). 5. in the device and pin options dialog box, click the error detection crc tab. 6. turn on enable error detection crc ( figure 10?2 ). table 10?8. crc calculation time device minimum time (ms) maximum time (s) ep2agx20 18.06 5.15 ep2agx30 18.06 5.15 ep2agx45 44.00 12.20 ep2agx65 44.00 12.20 ep2agx95 82.40 22.82 ep2agx125 82.40 22.82 ep2agx190 160.00 44.36 ep2agx260 160.00 44.36
chapter 10: seu mitigation in arria ii gx devices 10?11 recovering from crc errors ? february 2009 altera corporation arria ii gx device handbook volume 1 7. in the divide error check frequency by box, enter a valid divisor as documented in table 10?6 on page 10?8 . 8. click ok . recovering from crc errors the system that the arria ii gx device resides in must control device reconfiguration. after detecting an error on the crc_error pin, strobing the nconfig signal low directs the system to perform the reconfiguration at a time when it is safe. when the data bit is rewritten with the correct value by reconfiguring the device, the device functions correctly. while soft errors are uncommon in altera devices, certain high-reliability applications may require a design to account for these errors. document revision history table 10?9 shows the revision history for this chapter. figure 10?2. enabling the error detection crc feature in the quartus ii software table 10?9. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
10?12 chapter 10: seu mitigation in arria ii gx devices document revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 1 11. jtag boundary-scan testing introduction this chapter describes the boundary-scan test (bst) features that are supported in arria ? ii gx devices. the features are similar to arria gx devices, unless stated in this document. arria ii gx devices support ieee std. 1149.1 and i eee std. 1 149.6. the i eee std. 1149.6 is only supported on the high-speed serial interface (hssi) transceivers in arria ii gx devices. the purpose of ieee std. 1149.6 is to enable board-level connectivity checking between transmitters and receivers that are ac coupled (connected with a capacitor in series between the source and destination). this chapter includes the following sections: ?ieee std. 1149.6 boundary-scan register? on page 11?1 ?bst operation control? on page 11?3 ?i/o voltage support in a jtag chain? on page 11?5 ?boundary-scan description language support? on page 11?6 f for information about the following topics, refer to the ieee 1149.1 (jtag) boundary-scan testing for arria gx devices chapter in volume 2 of the arria gx device handbook : ieee std. 1149.1 bst architecture and circuitry tap controller state-machine ieee std. 1149.1 jtag instructions jtag instructions code with descriptions ieee std. 1149.1 bst guidelines ieee std. 1149.6 boundary-scan register the boundary-scan cell (bsc) for hssi transmitters ( gxb_tx[p,n] ) and receivers/input clock buffer ( gxb_rx[p,n] )/( refclk[0..7] ) in arria ii gx devices are different from the bscs for i/o pins. aiigx51011-1.0
11?2 chapter 11: jtag boundary-scan testing ieee std. 1149.6 boundary-scan register arria ii gx device handbook volume 1 ? february 2009 altera corporation figure 11?1 shows the arria ii gx hssi transmitter boundary-scan cell. figure 11?1. arria ii gx hssi transmitter bsc with ieee std. 1149.6 bst circuitry mem_init sdin shift 0 1 0 1 dq dq clk sdout update mode ac_test capture update registers bstx1 pad pad tx output buffer 0 1 dq dq dq dq highz bscan pma 0 1 0 1 0 1 bs0eb m0 rhz oe logic bstx0 oe oe noe mission (dataout) ac jtag output buffer ac jtag output buffer ac_mode
chapter 11: jtag boundary-scan testing 11?3 bst operation control ? february 2009 altera corporation arria ii gx device handbook volume 1 figure 11?2 shows the arria ii gx hssi receiver/input clock buffer bsc. f for information about arria ii gx user i/o boundary-scan cells, refer to the ieee 1149.1 (jtag) boundary-scan testing for arria gx devices chapter in volume 2 of the arria gx device handbook . bst operation control table 11?1 shows the boundary-scan register length for arria ii gx devices. figure 11?2. arria ii gx hssi receiver/input clock buffer bsc with ieee std. 1149.6 bst circuitry highz scin shift 0 1 0 1 dq dq clk sdout update mode ac_test capture update registers bsrx1 bsout1 bsrx0 bsout0 mem_init ac_mode hysteretic memory ac jtag test receiver mission (datain) optional intest/runbist not supported pad pad rx input buffer ac jtag test receiver hysteretic memory bscan pma table 11?1. arria ii gx boundary-scan register length device boundary-scan register length ep2agx20 819 ep2agx30 819 ep2agx45 1227 ep2agx65 1227 ep2agx95 1467 ep2agx125 1467 ep2agx190 1971 ep2agx260 1971
11?4 chapter 11: jtag boundary-scan testing bst operation control arria ii gx device handbook volume 1 ? february 2009 altera corporation table 11?2 shows the idcode information for arria ii gx devices. 1 to read idcode correctly, issue the idcode instruction after initialization, which is signaled by nstatus going high. ieee std.1149.6 mandates the addition of two new instructions: extest_pulse and extest_train . these two instructions enable edge-detecting behavior on the signal path containing the ac pins. 1 when jtag anti tamper mode is enabled, boundary scan test is disabled. extest_pulse the instruction code for extest_pulse is 001000 1111. the extest_pulse instruction generates three output transitions: driver drives data on the falling edge of tck in update_ir/dr. driver drives inverted data on the falling edge of tck after entering the run_test/idle state. driver drives data on the falling edge of tck after leaving the run_test/idle state. extest_train the instruction code for extest_train is 000100 1111. the extest_train instruction behaves the same as the extest_pulse instruction with one exception. the output continues to toggle on the tck falling edge as long as the tap controller is in the run_test/idle state. table 11?2. 32-bit arria ii gx device idcode device idcode (32 bits) (1) version (4 bits) part number (16 bits) manufacturer identity (11 bits) lsb (1 bit) (2) ep2agx20 0000 0010010100010001 000 0110 1110 1 ep2agx30 0000 0010010100000001 000 0110 1110 1 ep2agx45 0000 0010010100010010 000 0110 1110 1 ep2agx65 0000 0010010100000010 000 0110 1110 1 ep2agx95 0000 0010010100010011 000 0110 1110 1 ep2agx125 0000 0010010100000011 000 0110 1110 1 ep2agx190 0000 0010010100010100 000 0110 1110 1 ep2agx260 0000 0010010100000100 000 0110 1110 1 notes to ta bl e 11 ?2 : (1) the msb is on the left. (2) the idcode lsb is always 1.
chapter 11: jtag boundary-scan testing 11?5 i/o voltage support in a jtag chain ? february 2009 altera corporation arria ii gx device handbook volume 1 i/o voltage support in a jtag chain an arria ii gx device operating in bst mode uses four required pins: tdi, tdo, tms, and tck . all jtag input pins are powered by the v ccio power supply. the tdo pin is powered up by the v ccio and v ccpd power supply of i/o bank 8c. you must connect v ccpd according to the i/o standard used in the same bank: for 3.3-v i/o standards, connect v ccpd to 3.3 v for 3.0-v i/o standards, connect v ccpd to 3.0 v for 2.5-v and below i/o standards, connect v ccpd to 2.5 v the jtag chain supports several devices. however, use caution if the chain contains devices that have different v ccio levels. table 11?3 shows board design recommendations to ensure proper jtag chain operation. f for more information about i/o voltage support in the jtag chain, refer to the ieee 1149.1 (jtag) boundary-scan testing for arria gx devices chapter in volume 2 of the arria gx device handbook . table 11?3. supported tdo/tdi voltage combinations device tdi input buffer power arria ii gx tdo v c cpd and v ccio voltage level in i/o bank 8c v cc io = 3.3 v v ccio = 3.0 v v cc io = 2.5 v v ccio = 1.8 v v cc io = 1.5 v arria ii gx v ccio = 3.3 v v (1) v (1) v (2) v (3) level shifter required v ccio = 3.0 v v (1) v (1) v (2) v (3) level shifter required v ccio = 2.5 v v (1) v (1) v (2) v (3) level shifter required v ccio = 1.8 v v (1) v (1) v (2) v (3) level shifter required v ccio = 1.5 v v (1) v (1) v (2) v (3) v non-arria ii gx v cc = 3.3 v v (1) v (1) v (2) v (3) level shifter required v cc = 2.5 v v (1) , (4) v (1) , (4) v (2) v (3) level shifter required v cc = 1.8 v v (1) , (4) v (1) , (4) v (2) , (5) v level shifter required v cc = 1.5 v v (1) , (4) v (1) , (4) v (2) , (5) v (6) v notes to ta bl e 11 ?3 : (1) the tdo output buffer meets v oh (min.) = 2.4 v. (2) the tdo output buffer meets v oh (min.) = 2.0 v. (3) an external 250- pull-up resistor is not required; however, they are recommended if signal levels on the board are not optimal. (4) the input buffer must be 3.0-v tolerant. (5) the input buffer must be 2.5-v tolerant. (6) the input buffer must be 1.8-v tolerant.
11?6 chapter 11: jtag boundary-scan testing boundary-scan description language support arria ii gx device handbook volume 1 ? february 2009 altera corporation boundary-scan description language support the boundary-scan description language (bsdl), a subset of vhdl, provides a syntax that allows you to describe the features of an ieee std. 1149.6 bst-capable device that can be tested. you can test software development systems then use the bsdl files for test generation, analysis, and failure diagnostics. f for more information about bsdl files for ieee std. 1149.6-compliant arria ii gx devices, visit the altera ? website at www.altera.com . f you can also generate bsdl files (pre-configuration and post-configuration) for ieee std. 1149.6-compliant arria ii gx devices with the quartus ? ii software version 9.1 and later. for the procedure for generating bsdl files using the quartus ii software, visit the altera website at www.altera.com . revision history table 11?4 shows the revision history for this document. table 11?4. document revision history date and document version changes made summary of changes february 2009, v 1.0 initial release. ?
? february 2009 altera corporation arria ii gx device handbook volume 1 12. power requirements for arria ii gx devices introduction the total power of an altera ? arria ? ii gx fpga includes static power and dynamic power. static power is the power consumed by the fpga when it is configured, but no clocks are operating. dynamic power is composed of switching power when the device is configured and running. the quartus ? ii software optimizes all designs with arria ii gx power technology to ensure performance is met at the lowest power consumption. this automatic process allows you to concentrate on the functionality of your design instead of the power consumption of your design. this chapter includes the following sections: ?external power supply requirements? on page 12?1 ?power-on reset circuitry? on page 12?2 ?hot socketing? on page 12?2 f for more information about using the powerplay power analyzer in the quartus ii software, refer to the power estimation and power analysis section in volume 3 of the quartus ii handbook . external power supply requirements this section describes the different external power supplies needed to power arria ii gx devices. table 12?1 lists the external power supply pins for arria ii gx devices. you can supply some of the power supply pins with the same external power supply, provided they need the same voltage level. f for each altera recommended power supply?s operating conditions, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook . f for power supply pin connection guidelines and power regulator sharing, refer to the arria ii gx device family pin connection guidelines . table 12?1. arria ii gx power supply requirements (part 1 of 2) power supply pin nominal voltage level (v) description vcc 0.9 v supplies power to the core, periphery, i/o registers, pcie hip block, and transceiver pcs vccd_pll 0.9 v supplies power to the digital portions of the pll vcca_pll (1) 2.5 v supplies power to the analog portions of the pll and device-wide power management circuitry vcccb 1.5 v supplies power to the configuration ram bits vccpd 2.5 v, 3.0 v, 3.3 v supplies power to the i/o pre-drivers, differential input buffers, and msel circuitry aiigx51012-1.0
12?2 chapter 12: power requirements for arria ii gx devices power-on reset circuitry arria ii gx device handbook volume 1 ? february 2009 altera corporation power-on reset circuitry the arria ii gx power-on reset (por) circuitry generates a por signal to keep the device in reset state until the power supplies voltage levels have stabilized during power-up. the por circuitry monitors v cc , v cca_pll , v cccb , v ccpd , and v ccio for i/o banks 3c and 8c, where the configuration pins are located. the por circuitry tri- states all user i/o pins until the power supplies reach the recommended operating levels. these power supplies are required to monotonically reach their full-rail values without plateaus and within the maximum power supply ramp time, t ramp . the por circuitry de-asserts the por signal after the power supplies reach their full-rail values to release the device from reset state. por circuitry is important to ensure that all the circuits in the arria ii gx device are at certain known states during power up. you can select the por signal pulse width between fast por time or standard por time using the msel pin settings. for fast por time, the por signal pulse width is set to 4 ms for the power supplies to ramp up to full rail. for standard por time, the por signal pulse width is set to 100 ms for the power supplies to ramp up to full rail. in both cases, you can extend the por time with an external component to assert the nstatus pin low. f for more information about the por specification, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook . f for more information about msel pin settings, refer to the configuration, design security, and remote system upgrades in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . hot socketing arria ii gx device i/o pins are hot-socketing compliant without the need for external components or special design requirements. hot-socketing support in arria ii gx devices has the following advantages: you can drive the device before power up without damaging it. vccio 1.2 v, 1.5 v, 1.8 v, 2.5 v, 3.0 v, 3.3 v supplies power to the i/o banks vref 0.6 v, 0.75 v, 0.9 v, 1.25 v reference voltage for the voltage-referenced i/o standards vccbat 1.2 v?3.3 v battery back-up power supply for the design security volatile key register vcca 2.5 v supplies power to the transceiver pma regulator vcch_gxb 1.5 v supplies power to the transceiver pma output (tx) buffer vccl_gxb 1.1 v supplies power to the transceiver pma tx, pma rx, and clocking gnd 0 v ground note to tab l e 1 2? 1 : (1) vcca_pll must be powered up even if the pll is not used. table 12?1. arria ii gx power supply requirements (part 2 of 2) power supply pin nominal voltage level (v) description
chapter 12: power requirements for arria ii gx devices 12?3 hot socketing ? february 2009 altera corporation arria ii gx device handbook volume 1 i/o pins remain tri-stated during power up. the device does not drive out before or during power up, thereby not affecting other buses in operation. you can insert or remove an arria ii gx device from a powered-up system board without damaging or interfering with normal system and board operation. devices can be driven before power up you can drive signals into regular and transceiver arria ii gx i/o pins before or during power up or power down without damaging the device. arria ii gx devices also support power up or power down of the power supplies in any sequence to simplify system-level design. i/o pins remain tri-stated during power up a device that does not support hot socketing may interrupt system operation or cause contention by driving out before or during power up. in a hot-socketing situation, the arria ii gx device output buffers are turned off during system power up or power down. also, the arria ii gx device does not drive out until the device is configured and working within recommended operating conditions. insertion or removal of an arria ii gx device from a powered-up system devices that do not support hot socketing can short power supplies when powered up through the device signal pins. this irregular power up can damage both the driving and driven devices and can disrupt card power up. an arria ii gx device may be inserted into (or removed from) a powered up system board without damaging or interfering with system-board operation. you can power up or power down the v ccio , v cc , and v ccpd supplies in any sequence and at any time between them. the power supply ramp rates can range from 50 s to 100 ms. f for more information about the hot-socketing specification, refer to the device data sheet chapter in volume 3 of the arria ii gx device handbook and the hot-socketing and power-sequencing feature and testing for altera devices white paper. hot socketing feature implementation arria ii gx devices are immune to latch-up when hot socketing. the hot-socketing feature turns off the output buffer during power up and power down of the v cc , v ccio , or v ccpd power supplies. hot-socketing circuitry generates an internal hotsckt signal when the v cc , v ccio , or v ccpd power supplies are below the threshold voltage. hot-socketing circuitry is designed to prevent excess i/o leakage during power up. when the voltage ramps up very slowly, it is still relatively low, even after the por signal is released and the configuration is completed. the conf_done, nceo , and nstatus pins fail to respond, as the output buffer cannot flip from the state set by the hot-socketing circuit at this low voltage. therefore, the hot-socketing circuit is removed on these configuration pins to ensure that they are able to operate during configuration. thus, it is expected behavior for these pins to drive out during power-up and power-down sequences.
12?4 chapter 12: power requirements for arria ii gx devices revision history arria ii gx device handbook volume 1 ? february 2009 altera corporation revision history table 12?2 shows the revision history for this document. table 12?2. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
? february 2009 altera corporation arria ii gx device handbook volume 1 additional information about this handbook this handbook provides comprehensive information about the altera ? arria ? ii gx family of devices. how to contact altera for the most up-to-date information about altera products, see the following table. typographic conventions the following table shows the typographic conventions that this document uses. contact (note 1) contact method address technical support website www.altera.com/support technical training website www.altera.com/training email custrain@altera.com altera literature services email literature@altera.com non-technical support (general) email nacomp@altera.com (software licensing) email authorization@altera.com note: (1) you can also contact your local altera sales office or sales representative. visual cue meaning bold type with initial capital letters indicates command names and dialog box titles. for example, save as dialog box. bold type indicates directory names, project names, disk drive names, file names, file name extensions, dialog box options, software utility names, and other gui labels. for example, \qdesigns directory, d: drive, and chiptrip.gdf file. italic type with initial capital letters indicates document titles. for example, an 519: stratix iv design guidelines. italic type indicates variables. for example, n + 1. variable names are enclosed in angle brackets (< >). for example, and .pof file. initial capital letters indicates keyboard keys and menu names. for example, delete key and the options menu. ?subheading title? quotation marks indicate references to sections within a document and titles of quartus ii help topics. for example, ?typographic conventions.?
info?2 additional information arria ii gx device handbook volume 1 ? february 2009 altera corporation courier type indicates signal, port, register, bit, block, and primitive names. for example, data1 , tdi , and input . active-low signals are denoted by suffix n . for example, resetn . indicates command line commands and anything that must be typed exactly as it appears. for example, c:\qdesigns\tutorial\chiptrip.gdf . also indicates sections of an actual file, such as a report file, references to parts of files (for example, the ahdl keyword subdesign ), and logic function names (for example, tri ). 1., 2., 3., and a., b., c., and so on. numbered steps indicate a list of items when the sequence of the items is important, such as the steps listed in a procedure. bullets indicate a list of items when the sequence of the items is not important. 1 the hand points to information that requires special attention. c a caution calls attention to a condition or possible situation that can damage or destroy the product or your work. w a warning calls attention to a condition or possible situation that can cause you injury. r the angled arrow instructs you to press enter . f the feet direct you to more information about a particular topic. visual cue meaning
101 innovation drive san jose, ca 95134 www.altera.com arria ii gx device handbook volume 2 aiigx5v2-1.1
copyright ? 2009 altera corporation. all rights reserved. altera, the programmable solutions company, the stylized altera logo, specific device designations, and all other words and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of altera corporation in the u.s. and other countries. all other product or service names are the property of their respective holders. altera products are protected under numerous u.s. and foreign patents and pending ap- plications, maskwork rights, and copyrights. altera warrants performance of its semiconductor products to current specification s in accordance with altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. altera assumes no responsibilit y or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by altera corporation. altera cu stomers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services .
? march 2009 altera corporation arria ii gx device handbook volume 2 contents chapter revision dates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix section i. transceiver architecture revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i-1 chapter 1. arria ii gx transceiver architecture introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 transceiver channel locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 transceiver block architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 dynamic reconfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 dynamic reconfiguration controller architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7 dynamic reconfiguration modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 pma controls reconfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 receiver offset cancellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 transceiver channel reconfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9 transceiver port list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9 cmu blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20 cmu0 block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21 cmu0 pll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22 power down cmu0 pll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24 cmu0 clock divider block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24 cmu1 block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25 power down cmu1 pll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25 transceiver channel architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26 transmitter channel datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28 tx phase compensation fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28 input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29 output data destination block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29 tx phase compensation fifo status signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30 byte serializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30 single-width mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30 8b/10b encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31 single-width mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31 controlling running disparity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33 transmitter polarity inversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-34 transmitter bit reversal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-35 serializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-36 transmitter output buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-38 transmitter termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-38 programmable output differential voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-39 programmable pre-emphasis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-39 transmitter output buffer power (v cch ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-40 common mode voltage (v cm ) settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-40 pci express (pipe) receiver detect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-40 pci express (pipe) electrical idle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-41 transmitter local clock divider block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-41
iv contents arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver channel datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-41 receiver input buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-42 differential on-chip termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-43 programmable common mode voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 -44 link coupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-44 programmable equalization and dc gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-50 signal threshold detection circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-51 clock and data recovery unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-51 lock-to-reference mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-52 lock-to-data mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-53 ltr/ltd controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-54 deserializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-56 word aligner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-57 word aligner in single-width mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-58 manual alignment mode word aligner in 8-bit pma-pcs interface modes . . . . . . . . . . . . . . . 1-58 bit-slip mode word aligner in 8-bit pma-pcs interface modes . . . . . . . . . . . . . . . . . . . . . . . . . 1-60 automatic synchronization state machine mode word aligner in 10-bit pma-pcs interface mode 1-61 manual alignment mode word aligner in 10-bit pma-pcs interface mode . . . . . . . . . . . . . . . 1-62 bit-slip mode word aligner in 10-bit pma-pcs interface mode . . . . . . . . . . . . . . . . . . . . . . . . . 1-64 programmable run length violation detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 4 receiver polarity inversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-65 receiver bit reversal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-65 deskew fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-66 rate match (clock rate compensation) fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-68 rate match fifo in pci express (pipe) mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 -69 rate match fifo in xaui mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-71 rate match fifo in gige mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-73 rate match fifo in basic single-width mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 -74 8b/10b decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-76 8b/10b decoder in single-width mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-77 byte deserializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-79 byte deserializer in single-width mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-79 byte ordering block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-80 byte ordering block in single-width modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-80 word-alignment-based byte ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-81 user-controlled byte ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-82 receiver phase compensation fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-82 receiver phase compensation fifo error flag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1- 84 offset cancellation in the receiver buffer and receiver cdr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-84
contents v ? march 2009 altera corporation arria ii gx device handbook volume 2 functional modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-84 basic functional mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-85 low latency pcs datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-85 basic single-width mode configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-86 basic double-width mode configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-88 pci express (pipe) mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-89 pci express (pipe) mode configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-89 pci express (pipe) mode datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-91 pci express (pipe) interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-92 fast recovery mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-98 electrical idle inference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-99 pci express cold reset requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-100 xaui mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-102 xaui mode datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-107 xgmii-to-pcs code conversion at the transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-107 pcs-to-xgmii code conversion at the receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-109 word aligner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-110 deskew fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-111 rate match fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-113 gige mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-114 gige mode datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-117 8b/10b encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-117 word aligner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-119 rate match fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-121 sonet/sdh mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-122 sonet/sdh frame structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-122 sonet/sdh oc-12 datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-124 sonet/sdh oc-48 datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-124 sonet/sdh transmission bit order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-125 word alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-125 oc-48 byte serializer and deserializer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-125 oc-48 byte ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-126 sdi mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-126 sdi mode datapath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-129 serial rapidio mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-130 synchronization state machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-131 loopback modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-133 serial loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-134 reverse serial loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-134 reverse serial pre-cdr loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-135 pci express (pipe) reverse parallel loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-136 calibration blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-137 calibration block location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-137 calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-139 input signals to the calibration block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-139 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-140 chapter 2. arria ii gx transceiver clocking introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 cmu pll and receiver cdr input reference clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 refclk0 and refclk1 pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 inter-transceiver block (itb) clock lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5 dedicated clk input pins on the fpga global clock network . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 clock output from left plls in the fpga fabric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 -6
vi contents arria ii gx device handbook volume 2 ? march 2009 altera corporation transceiver channel datapath clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 transmitter channel datapath clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 non-bonded channel configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 bonded channel configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 receiver channel datapath clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16 non-bonded channel configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16 bonded channel configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-21 fpga fabric-transceiver interface clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-27 input reference clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-27 phase compensation fifo clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-28 other transceiver clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-28 fpga fabric-transmitter interface clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-29 quartus ii software-selected transmitter phase compensation fifo write clock . . . . . . . . . . 2-29 user-selected transmitter phase compensation fifo write clock . . . . . . . . . . . . . . . . . . . . . . . 2-37 fpga fabric-receiver interface clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-42 quartus ii software-selected receiver phase compensation fifo read clock . . . . . . . . . . . . . 2-42 user-selected receiver phase compensation fifo read clock . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-51 fpga fabric plls-transceiver plls cascading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-56 dedicated left pll cascade lines network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-57 fpga fabric plls-transceiver plls cascading rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-62 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-65 chapter 3. configuring multiple protocols and data rates introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 transceiver pll configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 creating transceiver channel instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 general requirements to combine channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 control signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 calibration clock and power down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 sharing cmu plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 multiple channels sharing a cmu pll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 example 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 multiple channels sharing two cmu plls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 example 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 combining receiver only channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 combining transmitter channel and receiver channel instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 multiple transmitter channel and receiver channel instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 example 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 combining channels configured in protocol functional modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 basic x4 mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 combining channels using the pci express hard ip block with other channels . . . . . . . . . . . . . 3-12 combining transceiver instances using pll cascade clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12 combining transceiver instances in multiple transceiver blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 example 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16 chapter 4. reset control and power down introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 user reset and power-down signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 blocks affected by reset and power down signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
contents vii ? march 2009 altera corporation arria ii gx device handbook volume 2 transceiver reset sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4 all supported functional modes except pci express (pipe) functional mode . . . . . . . . . . . . . . . . 4-6 bonded channel configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6 non-bonded channel configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10 pci express (pipe) functional mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-15 pci express (pipe) reset sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-15 dynamic reconfiguration reset sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-17 reset sequence when using dynamic reconfiguration with data rate division in the tx option . . . 4-17 reset sequence when using dynamic reconfiguration with the channel and tx pll select/reconfig option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18 power down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20 simulation requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21 additional information about this handbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1 how to contact altera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1 typographic conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1
viii contents arria ii gx device handbook volume 2 ? march 2009 altera corporation
? march 2009 altera corporation arria ii gx device handbook volume 2 chapter revision dates the chapters in this book, arria ii gx device handbook volume 2 , were revised on the following dates. where chapters or groups of chapters are available separately, part numbers are listed. chapter 1 arria ii gx transceiver architecture revised: march 2009 part number: aiigx52001-1.1 chapter 2 arria ii gx transceiver clocking revised: february 2009 part number: aiigx52002-1.0 chapter 3 configuring multiple protocols and data rates revised: february 2009 part number: aiigx52003-1.0 chapter 4 reset control and power down revised: march 2009 part number: aiigx52004-1.1
x chapter revision dates arria ii gx device handbook volume 2 ? march 2009 altera corporation
? march 2009 altera corporation arria ii gx device handbook volume 2 section i. transceiver architecture this section provides information about arria ? ii gx transceiver architecture and clocking. it also describes configuring multiple protocols, data rates, and reset control and power down in the arria ii gx device family. this section includes the following chapters: chapter 1, arria ii gx transceiver architecture chapter 2, arria ii gx transceiver clocking chapter 3, configuring multiple protocols and data rates chapter 4, reset control and power down revision history refer to each chapter for its own specific revision history. for information about when each chapter was updated, refer to the chapter revision dates section, which appears in this volume.
i?2 section i. transceiver architecture arria ii gx device handbook volume 2 ? march 2009 altera corporation
? march 2009 altera corporation arria ii gx device handbook volume 2 1. arria ii gx transceiver architecture introduction this chapter describes the arria ? ii gx transceiver architecture. arria ii gx fpgas deliver a breakthrough level of system bandwidth for mainstream applications. arria ii gx devices provide up to 16 full-duplex cdr-based transceivers with physical coding sublayer (pcs) and physical medium attachment (pma), at serial data rates between 600 mbps and 3.75 gbps. this chapter includes the following sections: ?transceiver channel locations? on page 1?2 ?transceiver block architecture overview? on page 1?5 ?dynamic reconfiguration? on page 1?6 ?transceiver port list? on page 1?9 ?cmu blocks? on page 1?20 ?transceiver channel architecture? on page 1?26 ?transmitter channel datapath? on page 1?28 ?transmitter local clock divider block? on page 1?41 ?receiver channel datapath? on page 1?41 ?functional modes? on page 1?84 ?loopback modes? on page 1?133 ?calibration blocks? on page 1?137 transceiver channels are designed to support the following serial protocols: pci express (pipe) gen1 (2.5 gbps) serial rapidio (1.25 gbps, 2.5 gbps, 3.125 gbps) serial ata (sata)/serial attached scsi (sas) sata i (1.5 gbps) sata ii (3.0 gbps) sas (1.5 gbps, 3.0 gbps) serial digital interface (sdi) hd-sdi (1.485 gbps, 1.4835 gbps) 3g-sdi (2.97 gbps, 2.967 gbps) asi (270 mbps) cpri (614.4 mbps, 1228.8 mbps, 2457.6 mbps, 3072 mbps) obsai (768 mbps, 1536 mbps, 3072 mbps) aiigx52001-1.1
1?2 chapter 1: arria ii gx transceiver architecture transceiver channel locations arria ii gx device handbook volume 2 ? march 2009 altera corporation gigabit ethernet (gige) (1.25 gbps) xaui (3.125 gbps to 3.75 gbps for higig/higig+ support) sonet/sdh oc-3 (155 mbps) oc-12 (622 mbps) oc-48 (2.488 gbps) gpon (1.244 uplink, 2.488 downlink) seriallite ii (0.6 to 3.75 gbps) transceiver channels also support the following highly flexible functional mode to implement proprietary protocols: basic single-width (600 mbps to 3.75 gbps) transceiver channel locations arria ii gx transceivers are structured into full-duplex (transmitter and receiver) four-channel groups called transceiver blocks. the total number of transceiver channels and the location of transceiver blocks varies among different device members of the arria ii gx family. table 1?1 summarizes the total number of transceiver channels and transceiver block locations in each arria ii gx device. tab le 1 ?1 . number of transceiver channels and transceiver block locations in arria ii gx devices (part 1 of 2) device member to tal n umb er o f transceiver channels transceiver channel arrangement (1) ep2agx20cu17 ep2agx30cu17 ep2agx45cu17 ep2agx65cu17 ep2agx20cf25 ep2agx30cf25 4 four transceiver channels located in one transceiver block; gxbl0 on the left side of the device. ep2agx45df25 ep2agx65df25 ep2agx95df25 ep2agx125df25 ep2agx45df29 ep2agx65df29 8 eight transceiver channels located in two transceiver blocks; gxbl0 and gxbl1, on the left side of the device, with gxbl0 at the bottom of the device progressing up to gxbl1.
chapter 1: arria ii gx transceiver architecture 1?3 transceiver channel locations ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?1 shows a die-top view of the four transceiver channel locations in arria ii gx devices. ep2agx95ef29 ep2agx125ef29 ep2agx190ef29 ep2agx260ef29 ep2agx95ef35 ep2agx125ef35 12 twelve transceiver channels located in three transceiver blocks; gxbl0, gxbl1, and gxbl2, on the left side of the device, with gxbl0 at the bottom of the device progressing up to gxbl2. ep2agx190ff35 ep2sgx260ff35 16 sixteen transceiver channels located in four transceiver blocks; gxbl0, gxbl1, gxbl2, and gxbl3, on the left side of the device, with gxbl0 at the bottom of the device progressing up to gxbl3. note to tab l e 1 ?1 : (1) arrangement of the transceivers is shown in figure 1?1 through figure 1?4 . tab le 1 ?1 . number of transceiver channels and transceiver block locations in arria ii gx devices (part 2 of 2) device member to tal n umb er o f transceiver channels transceiver channel arrangement (1) figure 1?1. arria ii gx devices with four transceiver channels ep2agx20cu17 ep2agx30cu17 ep2agx45cu17 ep2agx65cu17 ep2agx20cf25 ep2agx30cf25 transceiver block gxbl0 channel3 channel2 channel1 channel0
1?4 chapter 1: arria ii gx transceiver architecture transceiver channel locations arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?2 shows a die-top view of the eight transceiver channel locations in arria ii gx devices. figure 1?3 shows a die-top view of the twelve transceiver channel locations in arria ii gx devices. figure 1?2. arria ii gx devices with eight transceiver channels figure 1?3. arria ii gx devices with twelve transceiver channels transceiver block gxbl1 channel3 channel2 channel1 channel0 transceiver block gxbl0 channel3 channel2 channel1 channel0 ep2agx45df25 ep2agx65df25 ep2agx95df25 ep2agx125df25 ep2agx45df29 ep2agx65df29 transceiver block gxbl2 channel3 channel2 channel1 channel0 transceiver block gxbl1 channel3 channel2 channel1 channel0 transceiver block gxbl0 channel3 channel2 channel1 channel0 ep2agx95ef29 ep2agx125ef29 ep2agx190ef29 ep2agx260ef29 ep2agx95ef35 ep2agx125ef35
chapter 1: arria ii gx transceiver architecture 1?5 transceiver block architecture overview ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?4 shows a die-top view of the sixteen transceiver channel locations in arria ii gx devices. transceiver block architecture overview each transceiver block has: two clock multiplier units (cmu)?cmu0 and cmu1 provide the high-speed serial and low-speed parallel clocks to the transceiver channels four full-duplex (transmitter and receiver) transceiver channels that support serial data rates from 600 mbps to 3.75 gbps central control unit (ccu) that implements a xaui state machine for xgmii-to-pcs code group conversion, xaui deskew state machine, shared control signal generation block, and reset control logic the shared control signal generation block provides control signals to the transceiver channels in bonded functional modes such as xaui, pci express (pipe), and basic 4 figure 1?4. arria ii gx device with sixteen transceiver channels transceiver block gxbl3 channel3 channel2 channel1 channel0 transceiver block gxbl2 channel3 channel2 channel1 channel0 transceiver block gxbl1 transceiver block gxbl0 channel3 channel2 channel1 channel0 channel3 channel2 channel1 channel0 ep2agx190ff35 ep4sgx260ff35
1?6 chapter 1: arria ii gx transceiver architecture dynamic reconfiguration arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?5 shows a block diagram of transceiver block architecture. 1 for architecture details of cmu blocks and transceiver channels, refer to ?cmu blocks? on page 1?20 and ?transceiver channel architecture? on page 1?26 . dynamic reconfiguration dynamic reconfiguration is a unique feature that enables your end system?s high-speed i/o frequency to be reconfigured in your system without reconfiguring the fpga. for hot pluggable or open standard systems, this feature allows you to support multiple data rates or standards without reconfiguring the system. for all systems, it allows you to make changes to the bit error rate to compensate in-system for the effects of process and temperature. each transceiver channel has multiple physical medium attachment controls that you can program to achieve the desired bit error ratio (ber) for your system. when you enable the dynamic reconfiguration feature, you can reconfigure dynamically without powering down other transceiver channels or the fpga fabric of the device: transmit and receive analog settings transmit data rate in multiples of 1, 2, and 4 one channel at a time channel and clock multiplier unit pll cmu pll only figure 1?5. top-level view of a transceiver block transceiver block gxbl1 transceiver channel 3 transceiver channel 2 transceiver channel 1 transceiver channel 0 transceiver block transceiver block gxbl0 channel3 channel2 channel1 channel0 channel3 channel2 channel1 channel0 cmu1 block cmu0 block central control unit (ccu)
chapter 1: arria ii gx transceiver architecture 1?7 dynamic reconfiguration ? march 2009 altera corporation arria ii gx device handbook volume 2 dynamic reconfiguration controller architecture the dynamic reconfiguration controller is a soft ip which uses fpga-fabric resources. you can use only one controller per transceiver block. you cannot use the dynamic reconfiguration controller to control multiple arria ii gx devices or any off-chip interfaces. figure 1?6 shows the conceptual view of the dynamic reconfiguration controller architecture. the dynamic reconfiguration controller is comprised of the following control logic modules: pma controls reconfiguration control logic channel reconfiguration with tx pll select/reconfig control logic cmu pll reconfiguration control logic channel and cmu pll reconfiguration control logic channel reconfiguration with tx pll select control logic data rate division control logic to the tx local divider offset cancellation control logic for receiver channels figure 1?6. block diagram of the dynamic reconfiguration controller note to figure 1?6 : (1) the pma control ports consist of the v od controls, pre-emphasis controls, dc gain controls, and manual equalization controls. offset cancellation control logic addr data busy error read (1) cmu pll reconfig control logic channel and cmu pll reconfiguration control logic dynamic rate switch rate_switch_ctrl[1:0] reconfig_address_out reconfig_address_en channel_reconfig_done channel and cmu pll reconfiguration control logic logical_tx_pll_sel logical_tx_pll_sel_en rate_switch_out reconfig_clk write_all reconfig_fromgxb[] pma controls reconfig inputs reconfig_data[15:0] reset_reconfig_address altgx_reconfig megawizard plug-in manager instance reconfig_togxb[3:0] data v alid parallel to serial con v erter address translation pma controls reconfiguration logic rx_tx_duplex_sel[] logical_channel_address[] reconfig_mode_sel[2:0]
1?8 chapter 1: arria ii gx transceiver architecture dynamic reconfiguration arria ii gx device handbook volume 2 ? march 2009 altera corporation the dynamic reconfiguration controller reads from its control inputs or from a memory initialization file ( .mif ) file. for pma controls reconfiguration and data rate division using control logic, the input to the controller is translated to address and data bus within. the address and data bus are then converted into serial data and forwarded to the selected transceiver channel. when a .mif file is used for reconfiguration, the dynamic reconfiguration controller receives 16-bit words from the .mif that you generate and sends this information to the transceiver channel selected. 1 for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices . dynamic reconfiguration modes the different modes of dynamic reconfiguration are: pma controls reconfiguration receiver offset cancellation transceiver channel reconfiguration pma controls reconfiguration you can dynamically reconfigure the following pma controls: pre-emphasis settings equalization settings dc gain settings voltage output differential (v od ) settings receiver offset cancellation variations in process create offsets in analog circuit voltages, pushing them outside the expected range. the arria ii gx device provides an offset cancellation circuit per receiver channel to counter the offset variations due to process. calibration of the offset cancellation circuit is done at power-up. the receiver buffer and receiver clock data recovery (cdr) require offset calibration. offset cancellation is automatically executed once every time the device is powered on. the control logic for offset cancellation is integrated into the dynamic reconfiguration controller. the offset cancellation for receiver channels option is automatically enabled in both the altgx and altgx_reconfig megawizard ? plug-in managers for receiver and transmitter and receiver only configurations. it is not available for transmitter only configurations. for receiver and transmitter and receiver only configurations, you must connect the altgx_reconfig instance to the altgx instances with receiver channels in your design. you must connect the reconfig_fromgxb, reconfig_togxb , and necessary clock signals to both the altgx_reconfig and altgx (with receiver channels) instances. 1 for proper device operation, you must always connect the altgx_reconfig and altgx (with receiver channels) instances.
chapter 1: arria ii gx transceiver architecture 1?9 transceiver port list ? march 2009 altera corporation arria ii gx device handbook volume 2 f due to the offset cancellation process, the transceiver reset sequence has changed. for more information, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook . transceiver channel reconfiguration for transceiver channels, dynamic reconfiguration involves the reconfiguration of the following: data rate reconfiguration. this can be achieved by: switching between two tx plls set to different data rates and reconfiguring the rx plls reconfiguring the local dividers in the transmit side reconfiguring the cmu pll functional mode reconfiguration when reconfiguring data rates, ensure that the functional mode of the transceiver channel supports the reconfigured data rate. when reconfiguring the functional mode, ensure that the various clocks involved support the transition. f for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices . transceiver port list you instantiate the arria ii gx transceivers using the altgx megafunction instance in the quartus ? ii megawizard plug-in manager. the altgx megafunction instance allows you to configure the transceivers for your intended protocol and select optional control and status ports to and from the instantiated transceiver channels. table 1?2 provides a description of all the altgx megafunction ports. tab le 1 ?2 . arria ii gx altgx megafunction ports (part 1 of 12) port name input/output description scope clock multiplier unit (cmu) pll_inclk input input reference clock for the cmu phase-locked loop (pll). transceiver block pll_locked output cmu pll lock indicator. a high level indicates that the cmu pll is locked to the input reference clock; a low level indicates that the cmu pll is not locked to the input reference clock. asynchronous signal. transceiver block pll_powerdown input cmu pll power down. when asserted high, the cmu pll is powered down. when de-asserted low, the cmu pll is active and locks to the input reference clock. note: assertion of the pll_powerdown signal does not power down the refclk buffers. asynchronous signal. the minimum pulse-width is 1 s (pending characterization). transceiver block
1?10 chapter 1: arria ii gx transceiver architecture transceiver port list arria ii gx device handbook volume 2 ? march 2009 altera corporation coreclkout output fpga fabric-transceiver interface clock. generated by the cmu0 clock divider in the transceiver block in 4 bonded channel configurations. generated by the cmu0 clock divider in the master transceiver block in 8 bonded channel configurations. not available in non-bonded channel configurations. this clock is used to clock the write port of the transmitter phase compensation fifos in all bonded channels. use this clock signal to clock parallel data tx_datain from the fpga fabric into the transmitter phase compensation fifo of all bonded channels. this clock is used to clock the read port of the receiver phase compensation fifos in all bonded channels with rate match fifo enabled. use this signal to clock parallel data rx_dataout from the receiver phase compensation fifos of all bonded channels (with rate match fifo enabled) into the fpga fabric. transceiver block receiver physical coding sublayer (pcs) ports word aligner rx_enapatternalign input manual word alignment enable control. enables word aligner configured in manual alignment mode to align to the word alignment pattern. in single-width modes (except sonet/sdh oc12 and oc48), this signal is level-sensitive. when high, the word aligner re-aligns if the word alignment pattern appears in a new word boundary. asynchronous signal. the minimum pulse-width is 2 recovered clock cycles. channel rx_patterndetect output word alignment pattern detect indicator. a high level indicates that the word alignment pattern is found on the current word boundary. the width of this signal depends on the channel width shown below: channel width rx_patterndetect width 8/10 1 16/20 2 channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 2 of 12) port name input/output description scope
chapter 1: arria ii gx transceiver architecture 1?11 transceiver port list ? march 2009 altera corporation arria ii gx device handbook volume 2 rx_syncstatus output word alignment synchronization status indicator. for word aligner in automatic synchronization state machine mode. this signal is driven high if the conditions required to remain in synchronization are met. it is driven low if the conditions required to lose synchronization are met. for word aligner in manual alignment mode, the behavior of this signal depends on whether the transceiver is configured in single-width mode. for more information, refer to ?word aligner in single- width mode? on page 1?58 . this signal is not available for word aligner in bit-slip mode. the width of this signal depends on the channel width shown below: channel width rx_syncstatus width 8/10 1 16/20 2 channel rx_bitslip input bit-slip control for word aligner configured in bit-slip mode. at every rising edge of this signal, word aligner slips one bit into the received data stream, effectively shifting the word boundary by 1 bit. asynchronous signal. the minimum pulse-width is 2 recovered clock cycles. channel rx_ bitslipboundary selectout output indicates number of bits slipped in the word aligner when word aligner is configured in manual mode. asynchronous signal. channel rx_ala2size input available only in sonet oc-12 and oc-48 modes to select between one of the following two word alignment options: 0 - 16-bit a1a2 1 - 32-bit a1a1a2a2 channel rx_rlv output run-length violation indicator. a high pulse is driven when the number of consecutive 1s or 0s in the received data stream exceeds the programmed run length violation threshold. asynchronous signal. driven for a minimum of 2 recovered clock cycles in configurations without byte serializer and a minimum of 3 recovered clock cycles in configurations with byte serializer. channel rx_invpolarity input generic receiver polarity inversion control. useful feature for correcting situations where the positive and negative signals of the differential serial link are accidentally swapped during board layout. when asserted high the polarity of every bit of the 8-bit or 10-bit input data word to the word aligner gets inverted. asynchronous signal. channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 3 of 12) port name input/output description scope
1?12 chapter 1: arria ii gx transceiver architecture transceiver port list arria ii gx device handbook volume 2 ? march 2009 altera corporation rx_revbitorderwa input receiver bit reversal control. available only in basic single-width mode with word aligner configured in bit-slip mode. useful feature where the link transmission order is msb to lsb. when asserted high in basic single-width mode, the 8- bit or 10-bit data d[7:0] or d[9:0] at the output of the word aligner gets rewired to d[0:7] or d[0:9] , respectively. asynchronous signal. channel deskew fifo rx_channelaligned output 10-gigabit attachment unit interface (xaui) deskew fifo channel aligned indicator. available only in xaui mode. a high level indicates that the xaui deskew state machine is either in align_acquired_1, align_acquired_2, align_acquired_3, or align_acquired_4 state, as specified in the pcs deskew state diagram in ieee p802.3ae specification. a low level indicates that the xaui deskew state machine is either in loss_of_alignment, align_detect_1, align_detect_2, or align_detect_3 state, as specified in the pcs deskew state diagram in ieee p802.3ae specification. transceiver block rate match (clock rate compensation) fifo rx_rmfifodata inserted output rate match fifo insertion status indicator. a high level indicates that the rate match pattern byte was inserted to compensate for the parts-per-million (ppm) difference in reference clock frequencies between the upstream transmitter and the local receiver. channel rx_rmfifodata deleted output rate match fifo deletion status indicator. a high level indicates that the rate match pattern byte was deleted to compensate for the ppm difference in reference clock frequencies between the upstream transmitter and the local receiver. channel rx_rmfifofull output rate match fifo full status indicator. a high level indicates that the rate match fifo is full. asynchronous signal. driven for a minimum of 2 recovered clock cycles in configurations without byte serializer and a minimum of 3 recovered clock cycles in configurations with byte serializer. channel rx_rmfifoempty output rate match fifo empty status indicator. a high level indicates that the rate match fifo is empty. asynchronous signal. driven for a minimum of 2 recovered clock cycles in configurations without byte serializer and a minimum of 3 recovered clock cycles in configurations with byte serializer. channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 4 of 12) port name input/output description scope
chapter 1: arria ii gx transceiver architecture 1?13 transceiver port list ? march 2009 altera corporation arria ii gx device handbook volume 2 8b/10b decoder rx_ctrldetect output receiver control code indicator. available in configurations with 8b/10b decoder. a high level indicates that the associated received code group is a control (/kx.y/) code group. a low level indicates that the associated received code group is a data (/dx.y/) code group. the width of this signal depends on the channel width shown below: channel width rx_ctrldetect width 8 1 16 2 channel rx_errdetect output 8b/10b code group violation or disparity error indicator. available in configurations with 8b/10b decoder. a high level indicates that a code group violation or disparity error was detected on the associated received code group. use with the rx_disperr signal to differentiate between a code group violation and/or a disparity error as follows: [rx_errdetect: rx_disperr ] 2?b00 - no error 2?b10 - code group violation 2?b11 - disparity error or both the width of this signal depends on the channel width shown below: channel width rx_errdetect width 8 1 16 2 channel rx_disperr output 8b/10b disparity error indicator port. available in configurations with 8b/10b decoder. a high level indicates that a disparity error was detected on the associated received code group. the width of this signal depends on the channel width shown below: channel width rx_disperr width 8 1 16 2 channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 5 of 12) port name input/output description scope
1?14 chapter 1: arria ii gx transceiver architecture transceiver port list arria ii gx device handbook volume 2 ? march 2009 altera corporation rx_runningdisp output 8b/10b running disparity indicator. available in configurations with the 8b/10b decoder. a high level indicates that data on the rx_dataout port was received with a negative running disparity. a low level indicates that data on the rx_dataout port was received with a positive running disparity. the width of this signal depends on the channel width shown below: channel width rx_runningdisp width 8 1 16 2 channel byte ordering block rx_enabyteord input enable byte ordering control. available in configurations with byte ordering block enabled. the byte ordering block is rising-edge sensitive to this signal. a low-to-high transition triggers the byte ordering block to restart the byte ordering operation. asynchronous signal. channel rx_ byteorderalign status output byte ordering status indicator. available in configurations with byte ordering block enabled. a high level indicates that the byte ordering block has detected the programmed byte ordering pattern in the lsbyte of the received data from the byte deserializer. channel receiver phase compensation fifo rx_dataout output parallel data output from the receiver to the fpga fabric. the bus width depends on the channel width multiplied by the number of channels per instance. rx_clkout output recovered clock from the receiver channel. available only when the rate match fifo is not used in the receiver datapath. channel rx_coreclk input optional read clock port for the receiver phase compensation fifo. if not selected, the quartus ii software automatically selects rx_clkout/tx_clkout/coreclkout as the read clock for the receiver phase compensation fifo. if selected, you must drive this port with a clock that has 0 ppm difference with respect to rx_clkout/tx_clkout/ coreclkout . channel rx_phase_comp_fifo_ error output receiver phase compensation fifo full or empty indicator. a high level indicates that the receiver phase compensation fifo is either full or empty. channel receiver physical media attachment (pma) rx_datain input receiver serial data input port. channel rx_cruclk input input reference clock for the receiver clock and data recovery (cdr). channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 6 of 12) port name input/output description scope
chapter 1: arria ii gx transceiver architecture 1?15 transceiver port list ? march 2009 altera corporation arria ii gx device handbook volume 2 rx_pll_locked output receiver cdr lock-to-reference (ltr) indicator. a high level indicates that the receiver cdr is locked to the input reference clock. a low level indicates that the receiver cdr is not locked to the input reference clock. asynchronous signal. channel rx_freqlocked output receiver cdr lock mode indicator. a high level indicates that the receiver cdr is in lock-to-data (ltd) mode. a low level indicates that the receiver cdr is in lock-to- reference mode. asynchronous signal. channel rx_locktodata input receiver cdr lock-to-data mode control signal. when asserted high, the receiver cdr is forced to lock-to-data mode. when de-asserted low, the receiver cdr lock mode depends on the rx_locktorefclk signal level. channel rx_locktorefclk input receiver cdr lock-to-reference mode control signal. the rx_locktorefclk signal along with rx_locktodata signal controls whether the receiver cdr is in lock-to-reference or lock-to-data mode, as follows: rx_locktodata/ rx_locktorefclk 0/0 - receiver cdr is in automatic mode 0/1 - receiver cdr is in ltr mode 1/x - receiver cdr is in ltd mode asynchronous signal. channel rx_signaldetect output signal threshold detect indicator. available only in pci express (pipe) mode. a high level indicates that the signal present at the receiver input buffer is above the programmed signal detection threshold value. if the electrical idle inference block is disabled in pci express (pipe) mode, the rx_signaldetect signal is inverted and driven on the pipeelecidle port. asynchronous signal. channel rx_seriallpbken input serial loopback control port. 0 - normal data path, no serial loopback 1 - serial loopback channel transmitter physical coding sublayer ports transmitter phase compensation fifo tx_datain input parallel data input from the fpga fabric to the transmitter. the bus width depends on the channel width multiplied by the number of channels per instance. channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 7 of 12) port name input/output description scope
1?16 chapter 1: arria ii gx transceiver architecture transceiver port list arria ii gx device handbook volume 2 ? march 2009 altera corporation tx_clkout output fpga fabric-transceiver interface clock. each channel has a tx_clkout signal in non-bonded channel configurations. use this clock signal to clock the parallel data tx_datain from the fpga fabric into the transmitter. this signal is not available in bonded channel configurations. channel tx_coreclk input optional write clock port for the transmitter phase compensation fifo. if not selected, the quartus ii software automatically selects tx_clkout/coreclkout as the write clock for the transmitter phase compensation fifo. if selected, you must drive this port with a clock that is frequency locked to tx_clkout/coreclkout . channel tx_phase_comp_fifo_ error output transmitter phase compensation fifo full or empty indicator. a high level indicates that the transmitter phase compensation fifo is either full or empty. channel 8b/10b encoder tx_ctrlenable input 8b/10b encoder /kx.y/ or /dx.y/ control. when asserted high, the 8b/10b encoder encodes the data on the tx_datain port as a /kx.y/ control code group. when de-asserted low, it encodes the data on the tx_datain port as a /dx.y/ data code group. the width of this signal depends on the channel width shown below: channel width tx_ctrlenable 8 1 16 2 channel tx_forcedisp input 8b/10b encoder force disparity control. when asserted high, it forces the 8b/10b encoder to encode the data on the tx_datain port with a positive or negative disparity, depending on the tx_dispval signal level. when de-asserted low, the 8b/10b encoder encodes the data on the tx_datain port according to the 8b/10b running disparity rules. the width of this signal depends on the channel width shown below: channel width tx_forcedisp 8 1 16 2 channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 8 of 12) port name input/output description scope
chapter 1: arria ii gx transceiver architecture 1?17 transceiver port list ? march 2009 altera corporation arria ii gx device handbook volume 2 tx_dispval input 8b/10b encoder force disparity value. a high level on the tx_dispval signal when the tx_forcedisp signal is asserted high forces the 8b/10b encoder to encode the data on the tx_datain port with a negative starting running disparity. a low level on the tx_dispval signal when the tx_forcedisp signal is asserted high forces the 8b/10b encoder to encode the data on the tx_datain port with a positive starting running disparity. the width of this signal depends on the channel width shown below: channel width tx_dispval 8 1 16 2 channel tx_invpolarity input transmitter polarity inversion control. useful feature for correcting situations where the positive and negative signals of the differential serial link are accidentally swapped during board layout. when asserted high the polarity of every bit of the 8-bit or 10-bit input data to the serializer gets inverted. asynchronous signal. channel tx_ bitslipboundary select input indicates the number of bits to slip at the transmitter for word alignment at the receiver. channel transmitter physical media attachment tx_dataout output transmitter serial data output port. channel fixedclk input 125-mhz clock for receiver detect and offset cancellation in pci express (pipe) mode. channel reconfiguration block reconfig_fromgxb input the width of this signal is determined by the value you set in the what is the number of channels controlled by the reconfig controller? option in the reconfiguration settings screen. for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices . device reconfig_togxb[3:0] output the width of this signal is fixed to four bits. it is independent of the value you set in the what is the number of channels controlled by the reconfig controller? option in the reconfiguration settings screen. for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices . device tab le 1 ?2 . arria ii gx altgx megafunction ports (part 9 of 12) port name input/output description scope
1?18 chapter 1: arria ii gx transceiver architecture transceiver port list arria ii gx device handbook volume 2 ? march 2009 altera corporation reconfig_clk input dynamic reconfiguration clock. this clock is also used for offset cancellation in all modes except pci express (pipe) mode. the frequency range of this clock is 2.5 mhz to 50 mhz when the transceiver channel is configured in transmitter only mode. the frequency range of this clock is 37.5 mhz to 50 mhz when the transciever channel is configured in receiver only or receiver and tranmitter mode . channel pipe interface (available only in pci express [pipe] functional mode) powerdn input pci express (pipe) power state control. functionally equivalent to the powerdown[1:0] signal defined in pipe specification revision 2.00. the width of this signal is 2 bits and is encoded as follows: 2'b00: p0 - normal operation 2'b01: p0s - low recovery time latency, low power state 2'b10: p1 - longer recovery time latency, lower power state 2'b11: p2 - lowest power state channel tx_ forcedispcompliance input force 8b/10b encoder to encode with a negative running disparity. functionally equivalent to the txcompliance signal defined in pipe specification revision 2.00. must be asserted high only when transmitting the first byte of the pci express compliance pattern to force the 8b/10b encode with a negative running disparity, as required by the pci express (pipe) protocol. channel tx_forceelecidle input force transmitter buffer to pci express (pipe) electrical idle signal levels. functionally equivalent to the txelecidle signal defined in pipe specification revision 2.00. channel pipe8b10binv polarity input pci express (pipe) polarity inversion control. functionally equivalent to the rxpolarity signal defined in pipe specification revision 2.00. available only in pci express (pipe) mode. when asserted high, the polarity of every bit of the 10-bit input data to the 8b/10b decoder gets inverted. channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 10 of 12) port name input/output description scope
chapter 1: arria ii gx transceiver architecture 1?19 transceiver port list ? march 2009 altera corporation arria ii gx device handbook volume 2 tx_detectrxloopback input receiver detect or pci express (pipe) loopback control. functionally equivalent to the txdetectrx/loopback signal defined in pipe specification revision 2.00. when asserted high in p1 power state with the tx_forceelecidle signal asserted, the transmitter buffer begins the receiver detection operation. once the receiver detect completion is indicated on the pipephydonestatus port, this signal must be de-asserted. when asserted high in p0 power state with the tx_forceelecidle signal de-asserted, the transceiver datapath gets dynamically configured to support parallel loopback as described in ?pci express (pipe) reverse parallel loopback? on page 1?136 . channel pipestatus output pci express (pipe) receiver status port. functionally equivalent to the rxstatus[2:0] signal defined in pipe specification revision 2.00. the width of this signal is 3 bits per channel. the encoding of receiver status on the pipestatus port is as follows: 000 - received data ok 001 - 1 skip added 010 - 1 skip removed 011 - receiver detected 100 - 8b/10b decoder error 101 - elastic buffer overflow 110 - elastic buffer underflow 111 - received disparity error. channel pipephydonestatus output phy function completion indicator. functionally equivalent to the phystatus signal defined in pipe specification revision 2.00. asserted high for one parallel clock cycle to communicate completion of several phy functions, such as power state transition and receiver detection. channel rx_pipedatavalid output valid data and control on the rx_dataout and rx_ctrldetect ports indicator. functionally equivalent to the rxvalid signal defined in pipe specification revision 2.00. channel pipeelecidle output electrical idle detected or inferred at the receiver indicator. functionally equivalent to the rxelecidle signal defined in pipe specification revision 2.00. if the electrical idle inference block is enabled, it drives this signal high when it infers an electrical idle condition, as described in ?electrical idle inference? on page 1?99 . otherwise, it drives this signal low. if the electrical idle inference block is disabled, the rx_signaldetect signal from the signal detect circuitry in the receiver buffer is inverted and driven on this port. asynchronous signal. channel tab le 1 ?2 . arria ii gx altgx megafunction ports (part 11 of 12) port name input/output description scope
1?20 chapter 1: arria ii gx transceiver architecture cmu blocks arria ii gx device handbook volume 2 ? march 2009 altera corporation cmu blocks each transceiver block contains two cmu blocks?cmu0 and cmu1. each cmu block contains a cmu pll that provides clocks to all the transmitter channels in the same transceiver block. the cmu0 block has additional capabilities to support bonded protocol functional modes such as basic 4, xaui, and pci express (pipe). you can select these functional modes from the altgx megawizard plug-in manager. you can enable basic 4 functional mode in the altgx megawizard plug- in manager by selecting the 4 option in basic mode. reset and power down gxb_powerdown input transceiver block power down. when asserted high, all digital and analog circuitry in the pcs, pma, cmu channels, and the ccu of the transceiver block gets powered down. note that asserting the gxb_powerdown signal does not power down the refclk buffers. asynchronous signal. the minimum pulse width is 1 us (pending characterization). transceiver block rx_digitalreset input receiver pcs reset. when asserted high, the receiver pcs blocks get reset. the minimum pulse width is 2 parallel clock cycles. refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook for more details. channel rx_analogreset input receiver pma reset. when asserted high, analog circuitry in the receiver pma gets reset. the minimum pulse width is 2 parallel clock cycles. refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook for more details. channel tx_digitalreset input transmitter pcs reset. when asserted high, the transmitter pcs blocks get reset. the minimum pulse width is 2 parallel clock cycles. refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook for more details. channel calibration block cal_blk_clk input clock for transceiver calibration blocks. device cal_blk_powerdown input calibration block power down control. device tab le 1 ?2 . arria ii gx altgx megafunction ports (part 12 of 12) port name input/output description scope
chapter 1: arria ii gx transceiver architecture 1?21 cmu blocks ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?7 shows a top-level block diagram of the cmu channels in a transceiver block. cmu0 block the cmu0 block, shown in figure 1?8 , contains the following blocks: cmu0 pll cmu0 clock divider figure 1?7. top-level diagram of cmu channels in a transceiver block notes to figure 1?7 : (1) clocks provided to support bonded channel f unctional mode. (2) for more information, refer to the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . arria ii gx transceiver block local clock divider block high-speed serial clock low -speed parallel clock transmitter channel 2 transmitter channel 3 to transmitter pma to transmitter pcs cmu1 pll high-speed clock cmu0 pll high-speed clock high-speed serial clock (1) low-speed parallel clock (1) local clock divider block high-speed serial clock low -speed parallel clock transmitter channel 0 transmitter channel 1 to transmitter pma to transmitter pcs cmu1 block cmu0 block input reference clocks (2) input reference clocks (2)
1?22 chapter 1: arria ii gx transceiver architecture cmu blocks arria ii gx device handbook volume 2 ? march 2009 altera corporation cmu0 pll figure 1?9 shows the block diagram of the cmu0 pll. f for more information about input reference clocks, refer to the ?cmu pll and receiver cdr input reference clocks? section of the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . figure 1?8. diagram of cmu0 block notes to figure 1?8 : (1) in non-bonded functional modes (for example, gige functional mode), the transmitter channel uses the transmitter local clock divider to divide this high-speed clock output to provide clocks for its pma and pcs blo cks. (2) used in xaui, basic 4, and pci express (pipe) 4 functional m odes. in pci express (pipe) 8 functional mode, only the cmu0 channel of the master transceiver block provides clock output to all eight transceiver channels configured in pci express (pipe) functional mo de. 6 pll_powerdown pll cascade clock global clock line dedicated refclk0 dedicated refclk1 itb clock lines cmu0 pll input reference clock cmu0 pll cmu0 pll high-speed clock (1) cmu0 block cmu1 pll high-speed clock cmu0 clock divider high-speed serial clock for bonded modes (2) low-speed parallel clock for bonded modes pll_powerdown pll_locked figure 1?9. diagram of the cmu0 pll note to figure 1?9 : (1) the itb clock lines shown are the maximum value. the actual number of itb lines in your device depends on the number of tran sceiver blocks on one side of the device. pfd 6 cmu0 pll pll cascade clock global clock line dedicated refclk0 dedicated refclk1 itb clock lines (1) cmu0 pll input reference clock /m charge pump + loop filter vco /l cmu0 high-speed clock /1, /2, /4, /8
chapter 1: arria ii gx transceiver architecture 1?23 cmu blocks ? march 2009 altera corporation arria ii gx device handbook volume 2 you can select the input reference clock to the cmu0 pll from multiple clock sources. the various clock sources are: pll cascade clock?the pll cascade clock is the output from the general purpose plls in the fpga fabric global clock line?the input reference clock from the dedicated clk pins are connected to the global clock line refclk0 ?dedicated refclk in the transceiver block refclk1 ?dedicated refclk in the transceiver block inter transceiver block (itb) lines?the itb lines connect the refclk0 and refclk1 of all other transceiver blocks on the same side of the device. the cmu0 pll generates the high-speed clock from the input reference clock. the phase frequency detector (pfd) tracks the voltage-controlled oscillator (vco) output with the input reference clock. the input frequency range of the pfd is 50 to 325 mhz. f for more information about transceiver input reference clocks, refer to the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook. the vco in the cmu0 pll is half rate and runs at half the serial data rate. the cmu0 pll uses two multiplier blocks (/m and /l) in the feedback path (shown in figure 1?9 ) to generate the high-speed clock needed to support a native data rate range of 600 mbps to 3.75 gbps. table 1?3 lists the available /m and /l settings. 1 the quartus ii software automatically selects the /m and /l settings based on the input reference clock frequency and serial data rate. f each cmu pll (cmu0 pll and cmu1 pll) has a dedicated pll_locked signal that gets asserted to indicate that the cmu pll is locked to the input reference clock. you can use the pll_locked signal in your transceiver reset sequence as described in the reset control and power down chapter in volume 2 of the arria ii gx device handbook . pll bandwidth setting you can program the pll bandwidth setting using the altgx megawizard plug-in manager. the bandwidth of a pll is the measure of its ability to track input clock and jitter. it is determined by the ?3 db frequency of the closed-loop gain of the pll. there are three bandwidth settings: high, medium, and low. the high bandwidth setting filters out internal noise from the vco because it tracks the input clock above the frequency of the internal vco noise. tab le 1 ?3 . multiplier block settings in the cmu0 pll multiplier block available values /m 1, 4, 5, 8, 10,16, 20, 25 /l 1, 2, 4
1?24 chapter 1: arria ii gx transceiver architecture cmu blocks arria ii gx device handbook volume 2 ? march 2009 altera corporation with the low bandwidth setting, if the noise on the input reference clock is greater than the internal noise of the vco, the pll filters out the noise above the ?3 db frequency of the closed-loop gain of the pll. the medium bandwidth setting is a compromise between the high and low settings. the ?3 db frequencies for these settings can vary because of the non-linear nature and frequency dependencies of the circuit. power down cmu0 pll you can power down the cmu0 pll by asserting the pll_powerdown signal. f for more information about recommended reset sequences, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook . cmu0 clock divider block the high-speed clock output from the cmu0 pll is forwarded to two clock divider blocks: the cmu0 clock divider block and the transmitter channel local clock divider block. the cmu0 clock divider block is used only in bonded channel functional modes. in all non-bonded functional modes (example gige functional mode), the local clock divider block divides the high-speed clock to provide clocks for its pcs and pma blocks. this section only discusses the cmu0 clock divider block. f for more information about the local clock divider block, refer to the ?transceiver channel datapath clocking? section in the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . you can configure the cmu0 clock divider block, shown in figure 1?10 , to select the high-speed clock output from the cmu0 pll or cmu1 pll. high-speed serial clock generation the /n divider receives the high-speed clock output from one of the cmu plls and produces a high-speed serial clock. this high-speed serial clock is used for bonded functional modes such as basic 4, xaui, and pci express (pipe) 4 configurations. in xaui, pci express (pipe) 4 mode, and basic 4 modes, the high-speed serial clock is provided to all the transmitter channels in the transceiver block. in pci express (pipe) 8 mode, only the cmu0 clock divider of the master transceiver block provides the high-speed serial clock to all eight channels. figure 1?10. diagram of the cmu0 clock divider block cmu0 high-speed clock output cmu1 high-speed clock output cmu0 clock divider block /n (1, 2, 4) /s (4, 5, 8, 10) coreclkout to fpga fabric (for bonded modes) high-speed serial clock (for bonded modes) low-speed parallel clock for transmitter channel pcs (for bonded modes) /2
chapter 1: arria ii gx transceiver architecture 1?25 cmu blocks ? march 2009 altera corporation arria ii gx device handbook volume 2 in pci express (pipe) 1 mode, the cmu0 clock divider does not provide high-speed serial clock. instead, the local clock divider block in the transmitter channel receives the cmu0 pll or cmu1 pll high-speed clock output and generates the high-speed serial clock to its serializer. low-speed parallel clock generation the /s divider receives the clock output from the /n divider and generates the low-speed parallel clock for the pcs block of all transmitter channels and coreclkout for the fpga fabric. if the byte serializer block is enabled in the bonded channel modes, the /s divider output is divided by the /2 divider and sent out as coreclkout to the fpga fabric. the quartus ii software automatically selects the /s values based on the deserialization width setting (single-width mode) that you select in the altgx megawizard plug-in manager. 1 the quartus ii software automatically selects all the divider settings based on the input clock frequency, data rate, deserialization width, and channel width settings. the deserialization default width setting for arria ii gx devices is single-width mode and cannot be changed. cmu1 block the cmu1 block shown in figure 1?11 contains the cmu1 pll that provides the high-speed clock to the transmitter channels in the transceiver block. the cmu1 pll is similar to the cmu0 pll. the functionality of the cmu0 pll is discussed in ?cmu0 pll? on page 1?22 . the cmu1 pll generates the high-speed clock that is only used in non-bonded functional modes. in non-bonded functional modes, the transmitter channels in the transceiver block can receive high-speed clock from either of the two cmu plls and use local dividers to provide clocks to its pcs and pma blocks. f for more information about using two cmu plls to configure transmitter channels, refer to the configuring multiple protocols and data rates chapter in volume 2 of arria ii gx device handbook . power down cmu1 pll you can power down the cmu1 pll by asserting the pll_powerdown signal. figure 1?11. cmu1 block (grayed area shows the inactive block) 6 pll cascade clock global clock line dedicated refclk0 dedicated refclk1 itb clock lines cmu1 pll input reference clock cmu1 pll cmu1 block cmu1 pll high-speed clock cmu1 clock divider pll_powerdown pll_locked
1?26 chapter 1: arria ii gx transceiver architecture transceiver channel architecture arria ii gx device handbook volume 2 ? march 2009 altera corporation f for more information about using the pll_powerdown signal, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook . transceiver channel architecture figure 1?12 shows the arria ii gx transceiver channel datapath. each transceiver channel consists of: transmitter channel, further divided into transmitter channel pcs transmitter channel pma receiver channel, further divided into receiver channel pcs receiver channel pma each transceiver channel interfaces to either the pci express hard ip block (pci express hard ip?transceiver interface) or directly to the fpga fabric (fpga fabric?transceiver interface). the transceiver channel interfaces to the pci express hard ip block if the hard ip block is used to implement the pci express phy mac, data link layer, and transaction layer. otherwise, the transceiver channel interfaces directly to the fpga fabric. 1 the pci express hard ip?transceiver interface is out of the scope of this chapter. this chapter focuses on the fpga fabric?transceiver interface. figure 1?12. arria ii gx transceiver datapath serializer transmitter channel pcs transmitter channel pma cdr receiver channel pcs receiver channel pma fpga fabric pipe interface pci express hardip tx phase compensation fifo byte serializer 8b/10b encoder tx_dataout rx_datain de- serializer w ord aligner deskew fifo rate match fifo 8b/10 decoder byte de- serializer byte ordering rx phase compensation fifo
chapter 1: arria ii gx transceiver architecture 1?27 transceiver channel architecture ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?13 shows the fpga fabric?transceiver interface and the transceiver pma-pcs interface. the transceiver channel datapath is described by the single-width mode based on the fpga fabric, transceiver interface width (channel width), and transceiver channel pma-pcs width (serialization factor). table 1?4 shows the fpga fabric?transceiver interface widths (channel width) and transceiver pma-pcs widths (serialization factor) allowed in single-width mode. figure 1?13. fpga fabric?transceiver interface and the transceiver pma-pcs interface serializer transmitter channel pcs transmitter channel pma cdr receiver channel pcs receiver channel pma fpga fabric tx phase compensation fifo byte serializer 8b/10b encoder tx_dataout rx_datain de- serializer word aligner deskew fifo rate match fifo 8b/10 decoder byte de- serializer byte ordering rx phase compensation fifo fpga fabric-transceiver interface pma-pcs interface pci express hardip pipe interface tab le 1 ?4 . fpga fabric?transceiver interface width and transceiver pma-pcs widths (note 1) name width/functional mode/data rate pma-pcs interface widths 8/10 bit fpga fabric?transceiver interface width 8/10 bit 16/20 bit supported functional modes pci express (pipe) gen1 xaui gige serial rapidio sonet/sdh oc12 and oc48 sdi basic single width data rate range in basic functional mode 0.6 gbps - 3.75 gbps note to tab l e 1 ?4 : (1) in low-latency pcs mode in basic single-width configuration, the data rate range is 0.6 gbps to 3.75 gbps.
1?28 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation transmitter channel datapath the transmitter channel datapath, shown in figure 1?14 , consists of the following blocks: tx phase compensation fifo byte serializer 8b/10b encoder transmitter output buffer the arria ii gx transceiver provides the enable low latency pcs mode option in the altgx megawizard plug-in manager. if you select this option, the 8b/10b encoder in the data path is disabled. tx phase compensation fifo the tx phase compensation fifo interfaces the transmitter channel pcs and the fpga fabric pipe interface. it compensates for the phase difference between the low-speed parallel clock and the fpga fabric interface clock. the two modes in which the tx phase compensation fifo operates are low-latency and high-latency mode. figure 1?15 shows the datapath and clocking of the tx phase compensation fifo. figure 1?14. transmitter channel datapath serializer transmitter channel pcs transmitter channel pma fpga fabric pci express hardip pipe interface tx phase compensation fifo byte serializer 8b/10b encoder figure 1?15. tx phase compensation fifo data path from the fpga fabric or pipe interface tx_coreclk tx_clkout coreclkout data path to the byte serialize r or the 8b/10b encoder or serializer tx phase compensation fifo wr_clk rd_clk
chapter 1: arria ii gx transceiver architecture 1?29 transmitter channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 tx phase compensation fifo: in low-latency mode, the fifo is four words deep. the latency through the fifo is two to three fpga fabric parallel clock cycles (pending characterization). low-latency mode is chosen automatically in every mode except pci express (pipe) mode. in high-latency mode, the fifo is eight words deep. the latency through the fifo is approximately four to five fpga parallel cycles (pending characterization). high-latency mode is automatically used for pci express (pipe) mode. in non-bonded functional modes such as gige, the read port of the phase compensation fifo is clocked by the low-speed parallel clock. the write clock is fed by the tx_clkout port of the associated channel. in bonded functional modes such as xaui, the write clock of the fifo is clocked by coreclkout provided by the cmu0 clock divider block . you can clock the write side by using tx_coreclk provided from the fpga fabric by enabling the tx_coreclk port in the altgx megawizard plug-in manager. if you use this port, ensure that there is 0 ppm difference in frequency between the write and read side. the quartus ii software requires that you provide a 0 ppm assignment in the assignment editor. f for more information about the tx phase compensation fifo, refer to the ?limitation of the quartus ii software selected transmitter phase compensation fifo clocks? section in the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . input data in pci express (pipe) functional mode, the input data comes from the pipe interface. in all other functional modes, the input data comes directly from the fpga fabric. output data destination block the output from the tx phase compensation fifo is used by the byte serializer block, 8b/10b encoder, or serializer block. table 1?5 lists the conditions under which the tx phase compensation fifo outputs are provided to these blocks. tab le 1 ?5 . output data destination block for tx phase compensation fifo output data byte serializer 8b/10b encoder serializer if you select: single-width mode and channel width = 16 or 20 if you select: single-width mode and channel width = 8 and 8b/10b encoder enabled if you select: low latency pcs bypass mode enabled or single-width mode and channel width = 8 or 10
1?30 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation tx phase compensation fifo status signal an optional tx_phase_comp_fifo_error port is available in all functional modes to indicate a receiver phase compensation fifo overflow or under run condition. the tx_phase_comp_fifo_error signal is asserted high when the tx phase compensation fifo either overflows or under runs due to any frequency ppm difference between the fifo read and write clocks. if the tx_phase_comp_fifo_error flag gets asserted, verify the fpga fabric?transceiver interface clocking to ensure that there is 0 ppm difference between the tx phase compensation fifo read and write clocks. byte serializer the byte serializer divides the input datapath by two. this allows you to run the transceiver channel at higher data rates while keeping the fpga fabric interface frequency within the maximum limit of 200 mhz. in single-width mode, it converts the two-byte wide datapath to a one-byte wide datapath. for example, if you would like to run the transceiver channel at 3.125 gbps, without the byte serializer, in single-width mode, the fpga fabric interface clock frequency must be 312.5 mhz (3.125 g/10). this violates the fpga fabric interface frequency limit. when you use the byte serializer, the fpga fabric interface frequency is 156.25 mhz (3.125 g/20). 1 the byte deserializer is required in configurations that exceed the fpga fabric?transceiver interface clock upper frequency limit. it is optional in configurations that does not exceed the fpga fabric?transceiver interface clock upper frequency limit. single-width mode figure 1?16 shows the byte serializer datapath in single-width mode. figure 1?16. byte serializer datapath in single-width mode (note 1) , (2) notes to figure 1?16 : (1) refer to table 1?6 for the datain[] and dataout[] port width. (2) the datain signal is the input from the fpga fabric that has already passed through the tx phase compensation fifo. /2 datain[] byte serializer dataout[] low-speed parallel clock
chapter 1: arria ii gx transceiver architecture 1?31 transmitter channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 the byte serializer forwards the lsb first, followed by the msb. the input data width to the byte serializer depends on the channel width option that you selected in the altgx megawizard plug-in manager. for example, in single-width mode, assuming a channel width of 20, the byte serializer sends out the least significant word datain[9:0] of the parallel data from the fpga fabric, followed by datain[19:10]. ta b l e 1 ?6 shows the input and output data widths of the byte serializer in single-width mode. asserting the tx_digitalreset signal resets the byte serializer block. for channel widths of 8 or 16 bits, if you select the 8b/10b encoder option in the altgx megawizard plug-in manager, the 8b/10b encoder uses the output from the byte serializer. otherwise, the byte serializer output is forwarded to the serializer. 8b/10b encoder the 8b/10b encoder generates 10-bit code groups from the 8-bit data and 1-bit control identifier. in single-width mode, the 8b/10b encoder generates a 10-bit code group from the 8-bit data and 1-bit control identifier. single-width mode figure 1?17 shows the inputs and outputs of the 8b/10b encoder. in single-width mode, the 8b/10b encoder translates the 8-bit data to a 10-bit code group (control word or data word) with proper disparity. if the control_code input is high, the 8b/10b encoder translates the input data[7:0] to a 10-bit control word. if the control_code input is low, the 8b/10b encoder translates the input data[7:0] to a 10-bit data word. you can use the tx_forcedisp and tx_dispval ports to control the running disparity of the generated output data. for more information, see ?controlling running disparity? on page 1?33 . tab le 1 ?6 . input and output data width of the byte serializer in single-width mode deserialization width input data width to the byte serializer output data width from the byte serializer single-width mode 16 8 20 (1) 10 (1) note to tab l e 1 ?6 : (1) the 8b/10b encoder is automatically bypassed by the quartus ii software for channel width of 10 or 20 bits. figure 1?17. 8b/10b encoder in single-width mode from the byte serializer datain[7:0] control_code tx_forcedisp tx_dispval 8b/10b encoder dataout[9:0] to the serializer
1?32 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?18 shows the conversion format. the lsb is transmitted first. control code encoding the altgx megawizard plug-in manager provides the tx_ctrlenable port to indicate whether the 8-bit data at the tx_datain port should be encoded as a control word (kx.y). when tx_ctrlenable is low, the 8b/10b encoder block encodes the byte at the tx_datain port (the user-input port) as data (dx.y). when tx_ctrlenable is high, the 8b/10b encoder encodes the input data as a kx.y code group. the waveform in figure 1?19 shows the second 0 bc encoded as a control word (k28.5). the rest of the tx_datain bytes are encoded as a data word (dx.y). the ieee 802.3 8b/10b encoder specification identifies only a set of 8-bit characters for which tx_ctrlenable should be asserted. if you assert tx_ctrlenable for any other set of bytes, the 8b/10b encoder might encode the output 10-bit code as an invalid code (it does not map to a valid dx.y or kx.y code), or an unintended valid dx.y code, depending on the value entered. it is possible for a downstream 8b/10b decoder to decode an invalid control word into a valid dx.y code without asserting any code error flags. figure 1?18. 8b/10b conversion format figure 1?19. control word and data word transmission 7 6 5 4 3 2 1 0 hgf edcba 7 6 5 4 3 2 1 0 9 8 gf iedc b a jh lsb msb control_code 8b/10b conversion clock tx_datain[7:0] tx_ctrlenable code group 83 78 bc bc 0f 00 bf 3c d3.4 d24.3 d28.5 k28.5 d15.0 d0.0 d31.5 d28.1
chapter 1: arria ii gx transceiver architecture 1?33 transmitter channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 1 for example, depending on the current running disparity, the invalid code k24.1 ( tx_datain = 8'h38 + tx_ctrl = 1'b1) can be encoded to 10'b0110001100 (0 18c), which is equivalent to a d24.6+ (8'hd8 from the rd+ column). altera recommends that you do not assert tx_ctrlenable for unsupported 8-bit characters. reset condition the tx_digitalreset signal resets the 8b/10b encoder. during reset, the running disparity and data registers are cleared. also, the 8b/10b encoder outputs a k28.5 pattern from the rd- column continuously until tx_digitalreset is de-asserted. the input data and control code from the fpga fabric is ignored during the reset state. once out of reset, the 8b/10b encoder starts with a negative disparity (rd-) and transmits three k28.5 code groups for synchronization before it starts encoding and transmitting data on its output. 1 while tx_digitalreset is asserted, the downstream 8b/10b decoder that receives the data might observe synchronization or disparity errors. figure 1?20 shows the reset behavior of the 8b/10b encoder. when in reset ( tx_digitalreset is high), a k28.5- (k28.5 10-bit code group from the rd- column) is sent continuously until tx_digitalreset is low. due to some pipelining of the transmitter channel pcs, some ?don?t cares? (10'hxxx) are sent before the three synchronizing k28.5 code groups. user data follows the third k28.5 code group. controlling running disparity upon power on or reset, the 8b/10b encoder has a negative disparity and chooses the 10-bit code from the rd- column (refer to the 8b/10b encoder specification for the rd+ and rd- column values). the altgx megawizard plug-in manager provides the tx_forcedisp and tx_dispval ports to control the running disparity of the output from the 8b/10b encoder. these ports are available only in basic single-width mode. a high value on the tx_forcedisp port is the control signal to the disparity value of the output data. the disparity value (rd+ or rd-) is indicated by the value on the tx_dispval port. if the tx_forcedisp port is low, tx_dispval is ignored and the current running disparity is not altered. forcing disparity can either maintain the current running disparity calculations if the forced disparity value (on the tx_dispval bit) happens to match the current running disparity, or flip the current running disparity calculations if it does not. if the forced disparity flips the current running disparity, the downstream 8b/10b decoder might detect a disparity error. figure 1?20. 8b/10b encoder output during tx_digitalreset assertion clock tx_digitalreset dataout[9:0] k28.5- k28.5- k28.5- xxx ... k28.5- xxx k28.5- k28.5+ dx.y+
1?34 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation table 1?7 shows the tx_forcedisp and tx_dispval port values. figure 1?21 shows the current running disparity being altered in basic single-width mode by forcing a positive disparity k28.5 when it was supposed to be a negative disparity k28.5. in this example, a series of k28.5 code groups are continuously being sent. the stream alternates between a positive running disparity (rd+) k28.5 and a negative running disparity (rd-) k28.5 to maintain a neutral overall disparity. the current running disparity at time n + 3 indicates that the k28.5 in time n + 4 should be encoded with a negative disparity. because tx_forcedisp is high at time n + 4, and tx_dispval is also high, the k28.5 at time n + 4 is encoded as a positive disparity code group. transmitter polarity inversion the positive and negative signals of a serial differential link might accidentally be swapped during board layout. solutions like a board re-spin or major updates to the logic in the fpga fabric can be expensive. the transmitter polarity inversion feature is provided to correct this situation. an optional tx_invpolarity port is available in all functional modes to dynamically enable the transmitter polarity inversion feature. in single-width mode, a high value on the tx_invpolarity port inverts the polarity of every bit of the 8-bit or 10-bit input data word to the serializer in the transmitter datapath. because inverting the polarity of each bit has the same effect as swapping the positive and negative signals of the differential link, correct data is seen by the receiver. the tx_invpolarity signal is dynamic and might cause initial disparity errors at the receiver of an 8b/10b encoded link. the downstream system must be able to tolerate these disparity errors. figure 1?22 shows the transmitter polarity inversion feature in a single-width 10-bit wide datapath configuration. tab le 1 ?7 . tx_forcedisp and tx_dispval port values tx_forcedisp tx_dispval disparity value 0 x current running disparity has no change 1 0 encoded data has positive disparity 1 1 encoded data has negative disparity figure 1?21. 8b/10b encoder force running disparity operation in single-width mode c u rrent r unning disparity clock tx_in[7:0] tx_forcedisp bc bc bc bc bc bc bc tx_ctrlena b le bc dataout[9:0] 17c 283 17c 283 283 283 17c 17c rd- rd+ rd+ rd- rd+ rd- rd+ rd- n n + 1 n + 2 n + 3 n + 4 n + 5 n + 6 n + 7 tx_dispval
chapter 1: arria ii gx transceiver architecture 1?35 transmitter channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 transmitter bit reversal by default, the arria ii gx transmit bit order is lsbit to msbit. in single-width mode, the lsb of the 8- or 10-bit data word is transmitted first, followed by the msb. the transmitter bit reversal feature allows reversing the transmit bit order as msb to lsb before it is forwarded to the serializer. if you enable the transmitter bit reversal feature in basic single-width mode, the 8-bit d[7:0] or 10-bit d[9:0] data at the input of the serializer gets rewired to d[0:7] or d[0:9] , respectively. figure 1?22. transmitter polarity inversion in single-width mode 0 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 1 1 o u tp u t from transmitter pcs converted data outpu t to the transmitter serializer tx _invpolarity = high lsb msb msb lsb
1?36 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?23 shows the transmitter bit reversal feature in basic single-width for a 10-bit wide datapath configuration. serializer the serializer converts the incoming low-speed parallel signal from the transceiver pcs to high-speed serial data and sends it to the transmitter buffer. the serializer supports an 8-bit or 10-bit serialization factor in single-width mode. the serializer block drives the serial data to the output buffer, as shown in figure 1?24 . the serializer block sends out the lsb of the input data. figure 1?25 shows the serial bit order of the serializer block output. in this example, a constant 8'h6a (01101010) value is serialized and the serial data is transmitted from lsbit to msbit. figure 1?23. transmitter bit reversal operation in basic single-width mode o u tp u t from transmitter pcs converted data output to the transmitter serializer tx bit reversal option enabled in the altgx megawizard d[9] d[8] d[7] d[6] d[5] d[4] d[3] d[2] d[1] d[0] d[0] d[1] d[2] d[3] d[4] d[5] d[6] d[7] d[8] d[9]
chapter 1: arria ii gx transceiver architecture 1?37 transmitter channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?24. serializer block in an 8-bit pcs-pma interface note to figure 1?24 : (1) the cmu0 clock divider of the master transceiver block provides the clocks. it is used only in pci express (pipe) 8 mode. figure 1?25. serializer bit order (note 1) note to figure 1?25 : (1) this figure assumes that the input data to the serializer is 8 bits (channel width = 8 bits wi th the 8b/10b encoder disabled ). d7 d6 d5 d4 d3 d2 d1 d0 8 d7 d6 d5 d4 d3 d2 d1 d0 to output buffer low-speed parallel clock high-speed serial clock parallel clock from local divider block parallel clock from cmu0 clock divider parallel clock from master transceiver block (1) serial clock from local divider block serial clock from cmu0 clock divider serial clock from master transceiver block (1) lo w -speed parallel clock 01101010 01 0 0 0 11 1 00000000 high-speed serial clock tx_datain[7..0] tx_dataout[0]
1?38 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation transmitter output buffer the arria ii gx transmitter buffers support 1.5-v pseudo current mode logic (pcml) and can drive 40 inches of fr4 trace across two connectors. the transmitter buffer voltage level is (v cch ) set to 1.5 v by the altgx megawizard plug-in manager. with the 1.5 v (available in quartus ii software version 8.1 or later) setting, you can run the transmitter channel from 600 mbps to 3.75 gbps. the transmitter buffer power supply only provides voltage to the transmitter output buffers in the transceiver channels. the transmitter output buffer, as shown in figure 1?26 , has additional circuitry to improve signal integrity, such as v od , programmable pre-emphasis circuit, internal termination circuitry, and receiver detect capability to support pci express (pipe) functional mode. transmitter termination the arria ii gx transmitter buffer includes on-chip differential termination of 100 . the resistance is adjusted by the on-chip calibration circuit in the calibration block (for more information, refer to ?calibration blocks? on page 1?137 ), which compensates for temperature, voltage, and process changes. the arria ii gx transmitter buffers in the transceiver are current-mode drivers. therefore, the resultant v od is a function of the transmitter termination value. for more information about resultant v od values, refer to ?programmable output differential voltage? on page 1?39 . you can disable on-chip termination (oct) and use external termination. if you select external termination, the transmitter common mode is tri-stated. you can set transmitter termination in the altgx megawizard plug-in manager. you can also set oct through the assignment editor. set the assignment shown in table 1?8 to the transmitter serial output pin. figure 1?26. transmitter output buffer tab le 1 ?8 . arria ii gx oct assignment settings assign to transmitter serial output data pin assignment name: output termination available values: oct 100 50 transmitter o u tp u t pins programmable pre-emphasis and v od +vtt- receiver detect 50
chapter 1: arria ii gx transceiver architecture 1?39 transmitter channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 programmable output differential voltage the arria ii gx device allows you to customize the differential output voltage to handle different trace lengths, various backplanes, and various receiver requirements, as shown in figure 1?27 . table 1?9 shows the v od values for 100 termination resistor setting. 1 you can set the above v od values in the altgx megawizard plug-in manager. programmable pre-emphasis the programmable pre-emphasis module in each transmit buffer boosts high frequencies in the transmit data signal, which might be attenuated in the transmission media. using pre-emphasis can maximize the data eye opening at the far-end receiver. the transmission line?s transfer function can be represented in the frequency domain as a low-pass filter. any frequency components below the ?3db frequency can pass through with minimal loss. frequency components greater than ?3db frequency are attenuated. this variation in frequency response yields data-dependent jitter and other intersymbol interference (isi) effects. by applying pre-emphasis, the high-frequency components are boosted; that is, pre-emphasized. pre-emphasis figure 1?27. v od (differential) signal level tab le 1 ?9 . programmable v od differential peak-to-peak (note 1) v od for 100 termination setting unit 400 mv 600 mv 800 mv 900 mv 1000 mv 1200 mv note to tab l e 1 ?9 : (1) these values are preliminary. single-ended waveform differential waveform v a v b +v od +v od -v od v od 0-v differential +700 -700 - v od (differential) = v a ? v b
1?40 chapter 1: arria ii gx transceiver architecture transmitter channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation equalizes the frequency response at the receiver so the differences between the low-frequency and high-frequency components are reduced, which minimizes the isi effects from the transmission medium. pre-emphasis requirements increase as data rates through legacy backplanes increase. set the pre-emphasis settings in the altgx megawizard plug-in manager. transmitter output buffer power (v cch ) arria ii gx transmitter buffer power is set to 1.5 v by the altgx megawizard plug-in manager. common mode voltage (v cm ) settings the arria ii gx devices provide a v cm of 650 mv. pci express (pipe) receiver detect the arria ii gx transmitter buffer has a built-in receiver detection circuit for use in the pci express (pipe) mode for gen1 data rates. this circuit detects if there is a receiver downstream by sending out a pulse on the common mode of the transmitter and monitoring the reflection. this mode requires the transmitter buffer to be tri-stated (in electrical idle mode), oct utilization, and the 125 mhz fixedclk signal. you can enable this feature in pci express (pipe) mode by setting the tx_forceelecidle and tx_detectrxloopback ports to 1'b1 . receiver detect circuitry is active only in the p1 power state (refer to the pipe 2.00 specification for more information about power states). in the p1 power state, the transmitter output buffer is tri-stated because the transmitter output buffer is in electrical idle. a high on the tx_detectrxloopback port triggers the receiver detect circuitry to alter the transmitter output buffer common mode voltage. the sudden change in common mode voltage effectively appears as a step voltage at the tri-stated transmitter buffer output. if a receiver (that complies with pci express [pipe] input impedance requirements) is present at the far end, the time constant of the step voltage is higher. if a receiver is not present or is powered down, the time constant of the step voltage is lower. the receiver detect circuitry snoops the transmitter buffer output for the time constant of the step voltage to detect the presence of the receiver at the far end. a high pulse is driven on the pipephydonestatus port and 3'b011 is driven on the pipestatus port to indicate that a receiver has been detected. there is some latency after asserting the tx_detectrxloopback signal, before the receiver detection is indicated on the pipephydonestatus port. for the signal timing to perform the receiver detect operation, refer to figure 1?75 on page 1?94 . 1 the tx_forceelecidle port must be asserted at least 10 parallel clock cycles prior to the tx_detectrxloopback port to ensure that the transmitter buffer is tri-stated.
chapter 1: arria ii gx transceiver architecture 1?41 transmitter local clock divider block ? march 2009 altera corporation arria ii gx device handbook volume 2 pci express (pipe) electrical idle the arria ii gx transmitter output buffer supports transmission of pci express electrical idle (or individual transmitter tri-state). this feature is only active in pci express (pipe) mode. the tx_forceelecidle port puts the transmitter buffer in electrical idle mode. this port has a specific functionality in each power state. refer to pipe specification 2.00 for use of the tx_forceelecidle signal under different power states. for the signal timing to perform the electrical idle transmission in pci express (pipe) mode, refer to figure 1?74 on page 1?93 . transmitter local clock divider block each transmitter channel contains a local clock divider block. it receives the high-speed clock from cmu0 pll or cmu1 pll and generates the high-speed serial clock for the serializer and the low-speed parallel clock for the transmitter pcs data path. the low-speed parallel clock is also forwarded to the fpga fabric ( tx_clkout ). the local clock divider block allows each transmitter channel to run at /1, /2, or /4 of the cmu pll data rate. note that the local clock divider block is used only in non-bonded functional modes (for example, gige, sonet/sdh, and sdi mode). the quartus ii software automatically selects the local clock divider block in non-bonded functional modes. figure 1?28 shows the transmitter local clock divider block. receiver channel datapath figure 1?29 shows the receiver channel datapath in arria ii gx devices. figure 1?28. transmitter local clock divider block 4, 5, 8, or 10 high-speed serial cloc k lo w-speed parallel clock cmu0 pll high-speed clock cmu1 pll high-speed clock 1, 2, or 4 n figure 1?29. receiver channel datapath receiver channel pcs receiver channel pma fpga fa b ric pci express hardip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder deskew fifo rate match fifo de- serializer cdr input reference clock serial input data rx_datain word aligner
1?42 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation the receiver channel pma datapath consists of the following blocks: receiver input buffer clock and data recovery (cdr) unit deserializer the receiver channel pcs datapath consists of the following blocks: word aligner deskew fifo rate match (clock rate compensation) fifo 8b/10b decoder byte deserializer byte ordering receiver phase compensation fifo pipe interface the receiver datapath is very flexible and allows multiple configurations, depending on the selected functional mode. you can configure the receiver datapath using the altgx megawizard plug-in manager. this section discusses arria ii gx receiver channel datapath architecture. the sub-blocks in the receiver datapath are described in order from the serial receiver input buffer to the receiver phase compensation fifo buffer at the fpga fabric?transceiver interface. receiver input buffer the receiver input buffer receives serial data from the rx_datain port and feeds it to the cdr unit. in the reverse serial loopback (pre-cdr) configuration, it also feeds the received serial data to the transmitter output buffer. figure 1?30 shows the receiver input buffer.
chapter 1: arria ii gx transceiver architecture 1?43 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 table 1?10 shows the electrical features supported by the receiver input buffer. the arria ii gx receiver buffer supports the following features: programmable differential oct programmable common mode voltage ac and dc coupling programmable equalization and dc gain signal threshold detection circuitry differential on-chip termination the arria ii gx receiver buffers support optional differential on-chip termination of 100 . on-chip termination can be set using the quartus ii software assignment editor, as shown in table 1?11 . figure 1?30. receiver input buffer rx vcm to cdr receiver input buffer signal detect from serial data input pins (rx_datain) 100 0.82/1.1 v equalization and dc gain circuitry signal threshold detection circuitry to the transmitter output bu ffer in the reverse serial loopb ack (pre-cdr) configuration table 1?10. electrical features supported by the receiver input buffer data rate (gbps) i/o standard differential on-chip termination with calibration ( ) common mode voltage (v) coupling 0.6 ? 3.75 1.4 v pcml 100 0.82 ac, dc 1.5 v pcml 100 0.82 ac, dc 2.5 v pcml 100 0.82 ac lvpecl 100 0.82 ac lvds 10 0 1 .1 a c, dc
1?44 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation 1 the arria ii gx receiver oct resistors have calibration support to compensate for process, voltage, and temperature variations. for more information about oct calibration support, refer to ?calibration blocks? on page 1?137 . programmable common mode voltage the arria ii gx receiver buffers have on-chip biasing circuitry to establish the required common mode voltage at the receiver input. it supports two common mode voltage settings of 0.82 v and 1.1 v that you can select in the altgx megawizard plug-in manager. you must select 0.82 v as the receiver buffer common mode voltage for the following receiver input buffer i/o standards: 1.4-v pcml 1.5-v pcml 2.5-v pcml lv p e c l you must select 1.1 v as the receiver buffer common mode voltage for the following receiver input buffer i/o standard: lv ds 1 on-chip biasing circuitry is effective only if you select on-chip receiver termination. if you select external termination, you must implement off-chip biasing circuitry to establish the common mode voltage at the receiver input buffer. link coupling a high-speed serial link can either be ac-coupled or dc-coupled, depending on the serial protocol being implemented. while most of the serial protocols require links to be ac-coupled, protocols similar to sonet optionally allow dc coupling. ac-coupled links in an ac-coupled link, the ac-coupling capacitor blocks the transmitter dc common mode voltage. the on-chip receiver termination and biasing circuitry automatically restores the selected common mode voltage. figure 1?31 shows an ac-coupled link. table 1?11. arria ii gx receiver on-chip termination assignment settings assign to rx_datain (receiver input data pins) assignment name: input termination available values: oct 100 , off
chapter 1: arria ii gx transceiver architecture 1?45 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 the following protocols supported by arria ii gx devices mandate ac-coupled links: pci express (pipe) gigabit ethernet serial rapidio xaui sdi dc-coupled links in a dc-coupled link, the transmitter dc common mode voltage is seen unblocked at the receiver buffer. the link common mode voltage depends on the transmitter common mode voltage and the receiver common mode voltage. the on-chip or off-chip receiver termination and biasing circuitry must ensure compatibility between the transmitter and the receiver common mode voltage. figure 1?32 shows a dc-coupled link. figure 1?31. ac-coupled link transmitter receiver tx v cm rx v cm tx termination rx termination transmission medium ac coupling capacitor ac coupling capacitor transmission medium
1?46 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation you might choose to use the dc-coupled high-speed link for basic single-width mode only. the following sections discuss dc-coupling requirements for a high-speed link with an arria ii gx device used as the transmitter, receiver, or both. specifically, the following link configurations are discussed: arria ii gx transmitter (pcml) to arria ii gx receiver (pcml) stratix ii gx transmitter (pcml) to arria ii gx receiver (pcml) arria ii gx transmitter (pcml) to stratix ii gx receiver (pcml) lvds transmitter to arria ii gx receiver (pcml) figure 1?32. dc-coupled link transmission medium transmitter receiver tx v cm rx v cm tx termination rx termination transmission medium
chapter 1: arria ii gx transceiver architecture 1?47 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?33 shows a typical arria ii gx transmitter (pcml) to arria ii gx receiver (pcml) dc-coupled link. table 1?12 shows the allowed transmitter and receiver settings in an arria ii gx transmitter (pcml) to arria ii gx receiver (pcml) dc coupled link. figure 1?33. arria ii gx transmitter (pcml) to arria ii gx receiver (pcml) dc-coupled link transmission medium arria ii gx receiver tx v cm rx v cm v cch = 1.5 v arria ii gx transmitter 50- tx termination 0.65 v 0.82 v r s 50- tx termination 50- tx termination 50- rx termination 50- rx termination transmission medium table 1?12. settings for an arria ii gx transmitter (pcml) to arria ii gx receiver (pcml) dc-coupled link transmitter (arria ii gx) settings receiver (arria ii gx) settings data rate vcch (1) tx vcm differential termination data rate rx vcm differential te rmin ati on 600-3750 mbps 1.5 v 0.65 v 100 600-3750 mbps 0.82 v 100- note to tab l e 1 ?1 2 : (1) v cch = 1.5 v can support data rates from 600 mbps to 3750 mbps.
1?48 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?34 shows the stratix ii gx transmitter (pcml) to arria ii gx receiver (pcml) dc-coupled link. table 1?13 shows the allowed transmitter and receiver settings in a stratix ii gx to arria ii gx coupled link. figure 1?34. stratix ii gx transmitter (pcml) to arria ii gx receiver (pcml) dc-coupled link transmission medium arria ii gx receiver tx v cm rx v cm v cch = 1.5 v stratix ii gx transmitter 50- tx termination 0.6 v/0.7 v 0.82 v r s 50- tx termination 50- rx termination 50- rx termination transmission medium table 1?13. settings for a stratix ii gx to arria ii gx dc-coupled link transmitter (stratix ii gx) settings receiver (arria ii gx) settings data rate vcch (1) tx vcm (1) differential termination data rate rx vcm differential ter mi na tio n 600-3750 mbps 1.5 v (1.5 v pcml) 0.6 v/0.7 v 100 600-3750 mbps 0.82 v 100- note to tab l e 1 ?1 3 : (1) v cch = 1.5 v with tx vcm = 0.7 v can support data rates from 600 mbps to 3125 mbps. v cch = 1.5 v with tx vcm = 0.6 v can support data rates from 600 mbps to 6375 mbps.
chapter 1: arria ii gx transceiver architecture 1?49 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?35 shows the arria ii gx transmitter (pcml) to stratix ii gx receiver (pcml) dc-coupled link. table 1?14 shows the allowed transmitter and receiver settings in an arria ii gx transmitter (pcml) to stratix ii gx receiver (pcml) dc-coupled link. figure 1?35. arria ii gx transmitter (pcml) to stratix ii gx receiver (pcml) dc-coupled link transmission medium stratix ii gx receiver tx v cm rx v cm v cch = 1.5 v arria ii gx transmitter 50- tx termination 0.65 v 0.85 v r s 50- tx termination 50- rx termination 50- rx termination transmission medium table 1?14. settings for an arria ii gx to stratix ii gx dc-coupled link transmitter (arria ii gx) settings receiver (stratix ii gx) settings data rate vcch (1) tx vcm differential termination data rate i/o standard rx vcm differential termination 600-3750 mbps 1.5 v 0.65 v 100 600-3750 mbps 1.5 v pcml 0.85 v 100- note to tab l e 1 ?1 4 : (1) v cch = 1.5 v can support data rates from 600 mbps to 3750 mbps.
1?50 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?36 shows the lvds transmitter to arria ii gx receiver (pcml) dc-coupled link. table 1?15 shows the allowed transmitter and receiver settings in a lvds transmitter to arria ii gx receiver dc-coupled link. programmable equalization and dc gain the transfer function of the physical medium can be represented as a low-pass filter in the frequency domain. frequency components below ?3 db frequency pass through with minimal loss. frequency components greater than ?3 db frequency get attenuated as a function of frequency due to skin-effect and dielectric losses. this variation in frequency response yields data-dependant jitter and other isi effects, which can cause incorrect sampling of the input data. each arria ii gx receiver buffer has independently programmable equalization circuitry that boosts the high-frequency gain of the incoming signal, thereby compensating for the low-pass filter effects of the physical medium. the amount of high-frequency gain required depends on the loss characteristics of the physical medium. arria ii gx equalization circuitry supports equalization settings that provide up to 7 db of high-frequency boost. you can select the appropriate equalization setting in the altgx megawizard plug-in manager. figure 1?36. lvds transmitter to arria ii gx receiver (pcml) dc-coupled link table 1?15. settings for a lvds transmitter to arria ii gx receiver dc-coupled link (note 1) receiver (arria ii gx) settings rx vcm differential termination rs 1.1 v 100 (2) notes to ta bl e 1? 15 : (1) when dc coupling an lvds transmitter to the arria ii gx receiver, use rx vcm = 1.1 v and series resistance value rs to verify compliance to the lvds specification. (2) pending characterization. transmission medi um arria ii gx receiver rx v cm lvds transmitter 50- rx termination 1.1 v r s 50- rx termination transmission medi um
chapter 1: arria ii gx transceiver architecture 1?51 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 the arria ii gx receiver buffer also supports programmable dc gain circuitry. unlike equalization circuitry, dc gain circuitry provides equal boost to the incoming signal across the frequency spectrum. the receiver buffer supports dc gain settings of 0 db, 3 db, and 6 db. you can select the appropriate dc gain setting in the altgx megawizard plug-in manager. signal threshold detection circuitry in pci express (pipe) mode, you can enable the optional signal threshold detection circuitry by not selecting the force signal detection option in the altgx megawizard plug-in manager. if enabled, this option senses whether the signal level present at the receiver input buffer is above the signal detect threshold voltage that you specified in the what is the signal detect and signal loss threshold? option in the altgx megawizard plug-in manager. 1 the appropriate signal detect threshold level that complies with the pci express (pipe) compliance parameter vrx-idle-detdiffp-p is pending characterization. signal threshold detection circuitry has a hysteresis response that filters out any high-frequency ringing caused by inter-symbol interference or high-frequency losses in the transmission medium. if the signal threshold detection circuitry senses the signal level present at the receiver input buffer to be higher than the signal detect threshold, it asserts the rx_signaldetect signal high. otherwise, the signal threshold detection circuitry de-asserts the rx_signaldetect signal low. if you select the force signal detection option in the altgx megawizard plug-in manager, rx_signaldetect is always asserted high, irrespective of the signal level on the receiver input buffer. the rx_signaldetect signal is also used by the lock-to-reference/lock-to-data (ltr/ltd) controller in the receiver cdr to switch between ltr and ltd lock modes. when the signal threshold detection circuitry de-asserts the rx_signaldetect signal, the ltr/ltd controller switches the receiver cdr from ltd to ltr lock mode. for more information, refer to ?ltr/ltd controller? on page 1?54 . clock and data recovery unit each arria ii gx receiver channel has an independent cdr unit to recover the clock from the incoming serial data stream. the high-speed and low-speed recovered clocks are used to clock the receiver pma and pcs blocks. figure 1?37 shows the cdr block diagram.
1?52 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation the cdr operates either in ltr mode or ltd mode. in ltr mode, the cdr tracks the input reference clock. in ltd mode, the cdr tracks the incoming serial data. after the receiver power-up and reset cycle, the cdr must be kept in ltr mode until it locks to the input reference clock. once locked to the input reference clock, the cdr output clock is trained to the configured data rate. the cdr can now switch to ltd mode to recover the clock from incoming data. the ltr/ltd controller controls the switch between ltr and ltd modes. lock-to-reference mode in ltr mode, the phase frequency detector in the cdr tracks the receiver input reference clock, rx_cruclk. the pfd controls the charge pump that tunes the vco in the cdr. depending on the data rate and the selected input reference clock frequency, the quartus ii software automatically selects the appropriate /m and /l divider values such that the cdr output clock frequency is half the data rate. an active high, the rx_pll_locked status signal is asserted to indicate that the cdr has locked to phase and frequency of the receiver input reference clock. figure 1?38 shows active blocks when cdr is in ltr mode. 1 the phase detector (pd) is inactive in ltr mode. figure 1?37. cdr unit clock and data recovery (cdr) unit up do w n up do w n rx_locktorefclk rx_locktodata signal detect rx_freqlocked rx_datain rx_cruclk ltr/ltd controller phase detector (pd) phase frequency detector (pfd) /1, /2, /4 /2 charge pump + loop filter v co /l /m rx_pll_locked low-speed recovered clock high-speed recovered clock
chapter 1: arria ii gx transceiver architecture 1?53 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 you can drive the receiver input reference clock with the following clock sources: dedicated refclk pins ( refclk0 and refclk1 ) of the associated transceiver block inter-transceiver block clock lines from other transceiver blocks on the same side of the device (up to six itb clock lines, two from each transceiver block) global pld clock driven by a dedicated clock input pin clock output from the left plls in the fpga fabric table 1?16 shows cdr specifications in ltr mode. for input reference clock frequencies greater than 325 mhz, the quartus ii software automatically selects the appropriate /1, /2, or /4 pre-divider to meet the pfd input frequency limitation of 325 mhz. lock-to-data mode the cdr must be in ltd mode to recover clock from the incoming serial data during normal operation. in ltd mode, the phase detector in the cdr tracks the incoming serial data at the receiver buffer. depending on the phase difference between the incoming data and the cdr output clock, the pd controls the cdr charge pump that tunes the vco. figure 1?39 shows active blocks when the cdr is in ltd mode. figure 1?38. cdr in lock-to-reference mode up do w n up do w n rx_locktorefclk rx_locktodata signal detect rx_freqlocked rx_cruclk ltr/ltd controller phase detector (pd) phase frequency detector (pfd) /1, /2, /4 /2 charge pump + loop filter v co /l /m rx_pll_locked low-speed recovered clock high-speed recovered clock active blocks inactive blocks rx_datain clock and data recover (cdr) unit clock output tracks the input reference clock table 1?16. cdr specification in lock-to-reference mode parameter value input reference clock frequency 50 mhz ? 637.5 mhz pfd input frequency 50 mhz ? 325 mhz /m divider 4, 5, 8, 10, 16, 20, 25 /l divider 1, 2, 4, 8
1?54 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation 1 the pfd is inactive in ltd mode. the rx_pll_locked signal toggles randomly and has no significance in ltd mode. after switching to ltd mode, it can take a maximum of 1 ms for the cdr to get locked to the incoming data and produce a stable recovered clock. the actual lock time depends on the transition density of the incoming data and the ppm difference between the receiver input reference clock and the upstream transmitter reference clock. the receiver pcs logic must be held in reset until the cdr produces a stable recovered clock. f for more information about receiver reset recommendations, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook . ltr/ltd cont roller the ltr/ltd controller controls whether the cdr is in ltr or ltd mode. two optional input ports ( rx_locktorefclk and rx_locktodata ) allow you to configure the ltr/ltd controller in either automatic lock mode or manual lock mode. table 1?17 shows the relationship between these optional input ports and the ltr/ltd controller lock mode. figure 1?39. cdr in lock-to-data mode up do w n up do w n rx_locktorefclk rx_locktodata signal detect rx_freqlocked rx_datain rx_cruclk ltr/ltd controller phase detector (pd) phase frequency detector (pfd) /1, /2, /4 /2 charge pump + loop filter v co /l /m rx_pll_locked low-speed recovered clock high-speed recovered clock active blocks inactive blocks clock and data recovery (cdr) unit table 1?17. optional input ports and ltr/ltd controller lock mode rx_locktorefclk rx_locktodata ltr/ltd controller lock mode 1 0 manual ? ltr mode x 1 manual ? ltd mode 0 0 automatic lock mode
chapter 1: arria ii gx transceiver architecture 1?55 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 1 if you do not instantiate the optional rx_locktorefclk and rx_locktodata signals, the quartus ii software automatically configures the ltr/ltd controller in automatic lock mode. automatic lock mode in automatic lock mode, the ltr/ltd controller initially sets the cdr to lock to the input reference clock (ltr mode). after the cdr locks to the input reference clock, the ltr/ltd controller automatically sets it to lock to the incoming serial data (ltd mode) when the following three conditions are met: signal threshold detection circuitry indicates the presence of valid signal levels at the receiver input buffer cdr output clock is within the configured ppm frequency threshold setting with respect to the input reference clock (frequency locked) cdr output clock and input reference clock are phase matched within approximately 0.08 ui (phase locked) the switch from ltr to ltd mode is indicated by the assertion of the rx_freqlocked signal. in ltd mode, the cdr uses a phase detector to keep the recovered clock phase-matched to the data. if the cdr does not stay locked-to-data due to frequency drift or severe amplitude attenuation, the ltr/ltd controller switches the cdr back to ltr mode to lock to the input reference clock. in automatic lock mode, the ltr/ltd controller switches the cdr from ltd to ltr mode when the following conditions are met: signal threshold detection circuitry indicates the absence of valid signal levels at the receiver input buffer cdr output clock is not in the configured ppm frequency threshold setting with respect to the input reference clock the switch from ltd to ltr mode is indicated by the de-assertion of the rx_freqlocked signal . manual lock mode in automatic lock mode, the ltr/ltd controller relies on the ppm detector and the phase relationship detector to set the cdr in ltr or ltd mode. the ppm detector and phase relationship detector reaction times can be too long for some applications that require faster cdr lock time. you can manually control the cdr to reduce its lock time by using the rx_locktorefclk and rx_locktodata ports. in manual lock mode, the ltr/ltd controller sets the cdr in ltr or ltd mode, depending on the logic level on the rx_locktorefclk and rx_locktodata signals. when the rx_locktorefclk signal is asserted high, the ltr/ltd controller forces the cdr to lock to the reference clock. when the rx_locktodata signal is asserted high , it forces the cdr to lock to data. when both signals are asserted, the rx_locktodata signal takes precedence over the rx_locktorefclk signal, forcing the cdr to lock to data.
1?56 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation when the rx_locktorefclk signal is asserted high, the rx_freqlocked signal does not have any significance and is always driven low, indicating that the cdr is in ltr mode. when the rx_locktodata signal is asserted high, the rx_freqlocked signal is always driven high, indicating that the cdr is in ltd mode. if both signals are de-asserted, the cdr is in automatic lock mode. 1 the altera-recommended transceiver reset sequence varies depending on the cdr lock mode. f for more information about reset sequence recommendations, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook. deserializer the deserializer block clocks in serial input data from the receiver buffer using the high-speed serial recovered clock and deserializes it using the low-speed parallel recovered clock. it forwards the deserialized data to the receiver pcs channel. in single-width mode, the deserializer supports 8-bit and 10-bit deserialization factors. figure 1?40 shows the deserializer operation in single-width mode with a 10- bit deserialization factor. figure 1?41 shows the serial bit order of the deserializer block input and the parallel data output of the deserializer block in single-width mode with 10-bit deserialization factor. the serial stream (0101111100) is deserialized to a value 10'h17c. the serial data is assumed to be received lsb to msb. figure 1?40. 10-bit deserializer operation in single-width mode d9 d8 d7 d6 d5 d4 d3 d2 d1 d0 d9 d8 d7 d6 d5 d4 d3 d2 d1 d0 10 high-speed serial recovered clock low-speed parallel recovered clock clock recovery unit received data to word aligner
chapter 1: arria ii gx transceiver architecture 1?57 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 word aligner because the data is serialized before transmission and then deserialized at the receiver, it loses the word boundary of the upstream transmitter upon deserialization. the word aligner receives parallel data from the deserializer and restores the word boundary based on a pre-defined alignment pattern that must be received during link synchronization. serial protocols like pci express (pipe), xaui, gigabit ethernet, serial rapidio, and sonet/sdh, specify a standard word alignment pattern. for proprietary protocols, the arria ii gx transceiver architecture allows you to select a custom word alignment pattern specific to your implementation. in addition to restoring the word boundary, the word aligner also implements the following features: synchronization state machine in functional modes like pci express (pipe), xaui, gige, serial rapidio, and basic single-width programmable run length violation detection in all functional modes receiver polarity inversion in all functional modes except pci express (pipe) receiver bit reversal in basic single-width mode depending on the configured functional mode, the word aligner operates in one of the following three modes: manual alignment mode automatic synchronization state machine mode bit-slip mode figure 1?41. 10-bit deserializer bit order in single-width mode 0101111100 1010000011 0 1 1 1 1 1 0 1 0 1 1 0 0 0 0 0 1 0 1 0 low-speed parallel clock high-speed serial clock datain dataout
1?58 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?42 shows the word aligner operation in all supported configurations. word aligner in single-width mode in single-width mode, the pma-pcs interface is either 8-bit or 10-bit wide. in 8-bit wide pma-pcs interface modes, the word aligner receives 8-bit wide data from the deserializer. in 10-bit wide pma-pcs interface modes, the word aligner receives 10-bit wide data from the deserializer. depending on the configured functional mode, you can configure the word aligner in manual alignment mode, automatic synchronization state machine mode, or bit-slip mode. word aligner in single-width mode with 8-bit pma-pcs interface modes the following functional modes support the 8-bit pma-pcs interface: sonet/sdh oc-12 sonet/sdh oc-48 basic single-width table 1?18 shows the word aligner configurations allowed in functional modes with an 8-bit wide pma-pcs interface. manual alignment mode word aligner in 8-bit pma-pcs interface modes in manual alignment mode, word aligner operation is controlled by the input signal rx_enapatternalign . word aligner operation is edge-sensitive to the rx_enapatternalign signal. after de-assertion of rx_digitalreset, a rising edge on the rx_enapatternalign signal triggers the word aligner to look for the word alignment pattern in the received data stream. in sonet/sdh oc-12 and figure 1?42. word aligner in all supported configurations table 1?18. word aligner configurations with an 8-bit wide pma-pcs interface functional mode allowed word configurations allowed word alignment pattern length sonet/sdh oc-12 manual alignment 16 bits sonet/sdh oc-48 manual alignment 16 bits basic single-width manual alignment, bit-slip 16 bits pma-pcs interface single width 8-bit wide 10-bit wide man ual alignment (oc-12, oc-48, basic single- width) bit-slip (basic single-width) man ual alignment (basic single-width) a utomatic synchronization state machine (pci express [pipe] xaui, gige, basic single- width, serial rapidio) bit-slip (basic single- width, sdi)
chapter 1: arria ii gx transceiver architecture 1?59 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 oc-48 modes, the word aligner looks for 16'hf628 (a1a2) or 32'hf6f62828 (a1a1a2a2), depending on whether the input signal rx_a1a2size is driven low or high, respectively. in basic single-width mode, the word aligner looks for the 16-bit word alignment pattern programmed in the altgx megawizard plug-in manager. the word aligner aligns the 8-bit word boundary to the first word alignment pattern received after the rising edge on the rx_enapatternalign signal. two status signals, rx_syncstatus and rx_patterndetect, with the same latency as the datapath, are forwarded to the fpga fabric to indicate word aligner status. on receiving the first word alignment pattern after the rising edge on the rx_enapatternalign signal, both the rx_syncstatus and rx_patterndetect signals are driven high for one parallel clock cycle synchronous to the msbyte of the word alignment pattern. any word alignment pattern received thereafter in the same word boundary causes only the rx_patterndetect signal to go high for one clock cycle. any word alignment pattern received thereafter in a different word boundary causes only the rx_syncstatus signal to go high for one clock cycle. 1 in order for the word aligner to re-synchronize to a new word boundary, you must de-assert rx_enapatternalign and re-assert it again to create a rising edge. figure 1?43 shows word aligner behavior in sonet/sdh oc-12 functional mode. the lsbyte (8'hf6) and the msbyte (8'h28) of the 16-bit word alignment pattern are received in parallel clock cycles n and n + 1, respectively. the rx_syncstatus and rx_patterndetect signals are both driven high for one parallel clock cycle synchronous to the msbyte (8'h28) of the word alignment pattern. after initial word alignment, the 16-bit word alignment pattern is again received across the word boundary in clock cycles m, m + 1, and m + 2. because the word alignment pattern is received in a different word boundary, only the rx_syncstatus signal is driven high for one clock cycle. if you create a rising edge on the rx_enapatternalign signal before the word alignment pattern received across clock cycles m, m + 1, and m + 2, the word aligner re-aligns to the new word boundary. figure 1?43. bit-slip mode in 8-bit pma-pcs interface mode 11110110 00101000 10001111 28 rx_dataout[7:0] rx_enapatternalign rx_patterndetect rx_syncstatus 0110xxxx xxxx0010 f6 6x 8f x2 n n + 1 m m + 1 m + 2
1?60 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation bit-slip mode word aligner in 8-bit pma-pcs interface modes basic single-width mode with 8-bit pma-pcs interface width allows the word aligner to be configured in bit-slip mode. word aligner operation is controlled by the input signal rx_bitslip in bit-slip mode. at every rising edge of the rx_bitslip signal, the bit-slip circuitry slips one bit into the received data stream, effectively shifting the word boundary by one bit. in bit-slip mode, the word aligner status signal rx_patterndetect is driven high for one parallel clock cycle when the received data after bit-slipping matches the 16-bit word alignment pattern programmed in the altgx megawizard plug-in manager. you can implement a bit-slip controller in the fpga fabric that monitors either the rx_dataout signal and/or the rx_patterndetect signal and controls the rx_bitslip signal to achieve word alignment. figure 1?44 shows an example of word aligner configured in bit-slip mode. for this example, consider that: 8'b11110000 is received back-to-back 16'b0000 111100011110 is specified as the word alignment pattern a rising edge on the rx_bitslip signal at time n + 3 slips a single bit 0 at the msb position, forcing the rx_dataout to 8'b01111000. another rising edge on the rx_bitslip signal at time n + 5 forces rx_dataout to 8'b00111100. another rising edge on the rx_bitslip signal at time n + 9 forces rx_dataout to 8'b00011110. another rising edge on the rx_bitslip signal at time n + 13 forces the rx_dataout to 8'b0000 1111. at this instance, rx_dataout in cycles n + 12 and n + 13 are 8'b00011110 and 8'b0000 1111, respectively, which matches the specified 16-bit alignment pattern 16'b0000 111100011110. this results in the assertion of the rx_patterndetect signal. figure 1?44. example of word aligner configured in bit-slip mode 01111000 n 11110000 00111100 00011110 00001111 rx_clkout rx_datain rx_dataout[7:0] rx_bitslip rx_patterndetect 11110000 n + 1 n + 2 n + 3 n + 4 n + 5 n + 6 n + 7 n + 8 n + 9 n + 10 n + 11 n + 12 n + 13 n + 14
chapter 1: arria ii gx transceiver architecture 1?61 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 word aligner in single-width mode with 10-bit pma-pcs interface modes the following functional modes support the 10-bit pma-pcs interface: pci express (pipe) gen1 serial rapidio xaui gige sdi basic single-width mode this section covers the following word aligner 10-bit pma-pcs interface modes: automatic synchronization state machine mode in 10-bit pma-pcs interface mode manual alignment mode in 10-bit pma-pcs interface mode bit-slip mode in 10-bit pma-pcs interface mode table 1?19 shows the word aligner configurations allowed in functional modes with a 10-bit wide pma-pcs interface. automatic synchronization state machine mode word aligner in 10-bit pma-pcs interface mode protocols like pci express (pipe), xaui, gigabit ethernet, and serial rapidio require the receiver pcs logic to implement a synchronization state machine to provide hysteresis during link synchronization. each of these protocols defines a specific number of synchronization code groups that the link must receive in order to acquire synchronization and a specific number of erroneous code groups that it must receive to fall out of synchronization. table 1?19. word aligner configurations in a 10-bit wide pma-pcs interface functional mode allowed word aligner configurations allowed word alignment pattern length pci express (pipe) automatic synchronization state machine 10 bits serial rapidio automatic synchronization state machine 10 bits xaui automatic synchronization state machine 10 bits gige automatic synchronization state machine 10 bits sdi bit-slip n/a basic single-width mode manual alignment, automatic synchronization state machine, bit-slip 7 bits, 10 bits
1?62 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation in pci express (pipe), xaui, gigabit ethernet, and serial rapidio functional modes, the quartus ii software configures the word aligner in automatic synchronization state machine mode. it automatically selects the word alignment pattern length and pattern as specified by each protocol. in each of these functional modes, the protocol-compliant synchronization state machine is implemented in the word aligner. in basic single-width functional mode with a 10-bit pma-pcs interface, you can configure the word aligner in automatic synchronization state machine mode by selecting the use the built-in synchronization state machine option in the altgx megawizard plug-in manager. it also allows you to program a custom 7-bit or 10-bit word alignment pattern that the word aligner uses for synchronization. 1 the 10-bit input data to the word aligner configured in automatic synchronization state machine mode must be 8b/10b encoded. table 1?20 shows the synchronization state machine parameters that the quartus ii software allows in supported functional modes. the synchronization state machine parameters are fixed for pci express (pipe), xaui, gige, and serial rapidio modes as specified by the respective protocol. for basic single-width mode, you can program these parameters as suited to your proprietary protocol implementation. after de-assertion of the rx_digitalreset signal in automatic synchronization state machine mode, the word aligner starts looking for the word alignment pattern or synchronization code groups in the received data stream. when the programmed number of valid synchronization code groups or ordered sets is received, the rx_syncstatus signal is driven high to indicate that synchronization is acquired. the rx_syncstatus signal is constantly driven high until the programmed number of erroneous code groups is received without receiving intermediate good groups; after which rx_syncstatus is driven low. the word aligner indicates loss of synchronization ( rx_syncstatus remains low) until the programmed number of valid synchronization code groups are received again. manual alignment mode word aligner in 10-bit pma-pcs interface mode in basic single-width mode with a 10-bit pma-pcs interface, you can configure the word aligner in manual alignment mode by selecting the use manual word alignment mode option in the altgx megawizard plug-in manager. table 1?20. synchronization state machine functional modes functional mode pci express (pipe) xaui gige serial rapidio basic single- width mode number of valid synchronization code groups or ordered sets received to achieve synchronization 4 4 3 127 1?256 number of erroneous code groups received to lose synchronization 17 4 4 3 1?64 number of continuous good code groups received to reduce the error count by one 16 4 4 255 1?256
chapter 1: arria ii gx transceiver architecture 1?63 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 in manual alignment mode, word aligner operation is controlled by the input signal rx_enapatternalign . word aligner operation is level-sensitive to the rx_enapatternalign signal. if the rx_enapatternalign signal is held high, the word aligner looks for the programmed 7-bit or 10-bit word alignment pattern in the received data stream. it updates the word boundary if it finds the word alignment pattern in a new word boundary. if the rx_enapatternalign signal is de-asserted low, the word aligner maintains the current word boundary even when it sees the word alignment pattern in a new word boundary. two status signals, rx_syncstatus and rx_patterndetect, both with the same latency as the datapath, are forwarded to the fpga fabric to indicate word aligner status. on receiving the first word alignment pattern after the rx_enapatternalign signal is asserted high, both the rx_syncstatus and rx_patterndetect signals are driven high for one parallel clock cycle. any word alignment pattern received thereafter in the same word boundary causes only the rx_patterndetect signal to go high for one clock cycle. any word alignment pattern received thereafter in a different word boundary causes the word aligner to update the word boundary and the rx_syncstatus signal to go high for one clock cycle. figure 1?45 shows the manual alignment mode word aligner operation in 10-bit pma-pcs interface mode. in this example, /k28.5/ (10'b010 1111 100) is specified as the word alignment pattern. the word aligner aligns to the /k28.5/ alignment pattern in cycle n because the rx_enapatternalign signal is asserted high. the rx_syncstatus signal goes high for one clock cycle, indicating alignment to a new word boundary. the rx_patterndetect signal also goes high for one clock cycle to indicate initial word alignment. at time n + 1, the rx_enapatternalign signal is de-asserted to instruct the word aligner to lock the current word boundary. the alignment pattern is detected again in a new word boundary across cycles n + 2 and n + 3. the rx_patterndetect signal remains low and rx_syncstatus goes high for one clock cycle in cycle n + 3 to indicate that the word alignment pattern is found in a new word boundary. the word aligner does not align to this new word boundary because the rx_enapatternalign signal is held low. figure 1?45. word aligner in 10-bit pma-pcs manual alignment mode rx_clko u t rx_enapatternalign rx_patterndetect rx_syncstat u s rx_dataou t[10..0] 111110000 0101111100 111110000 111110000 1000000101 0101111100 1111001010 n n + 1 n + 2 n + 3 n + 4 n + 5
1?64 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation 1 if the word alignment pattern is known to be unique and does not appear between word boundaries, you can constantly hold the rx_enapatternalign signal high because there is no possibility of false word alignment. if there is a possibility of the word alignment pattern occurring across word boundaries, you must control the rx_enapatternalign signal to lock the word boundary after the desired word alignment is achieved to avoid re-alignment to an incorrect word boundary. bit-slip mode word aligner in 10-bit pma-pcs interface mode in some basic single-width configurations with 10-bit pma-pcs interface mode, you can configure the word aligner in bit-slip mode by selecting the use manual bit slipping mode option in the altgx megawizard plug-in manager. the word aligner operation for basic single-width with 10-bit pma-pcs interface mode is similar to the word aligner operation in basic single-width mode with 8-bit pma-pcs interface mode. for word aligner operation in bit-slip mode, refer to ?manual alignment mode word aligner in 8-bit pma-pcs interface modes? on page 1?58 . the only difference is that the bit-slip word aligner in 10-bit pma-pcs interface mode allows 7-bit and 10-bit word alignment patterns, whereas the bit-slip word aligner in 8-bit pma-pcs interface mode allows only 16-bit word alignment pattern. programmable run length violation detection the programmable run length violation circuit resides in the word aligner block and detects consecutive 1s or 0s in the data. if the data stream exceeds the preset maximum number of consecutive 1s or 0s, the violation is signified by the assertion of the rx_rlv signal. the run length violation status signal on the rx_rlv port has lower latency compared to the parallel data on the rx_dataout port. the rx_rlv signal in each channel is clocked by its parallel recovered clock. the fpga fabric clock might have phase difference, ppm difference (in asynchronous systems), or both, with respect to the recovered clock. to ensure that the fpga fabric clock can latch the rx_rlv signal reliably, the run length violation circuitry asserts the rx_rlv signal for a minimum of two recovered clock cycles in single-width mode. the rx_rlv signal can be asserted longer, depending on the run length of the received data. in single-width mode, the run length violation circuit detects up to a run length of 128 (for an 8-bit deserialization factor) or 160 (for a 10-bit deserialization factor). the settings are in increments of 4 or 5 for the 8-bit or 10-bit deserialization factors, respectively. table 1?21 summarizes the detection capabilities of the run length violation circuit. table 1?21. detection capabilities of the run length violation circuit mode pma-pcs interface width run length violation detector range minimum maximum single-width mode 8-bit 4 128 10-bit 5 160
chapter 1: arria ii gx transceiver architecture 1?65 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 receiver polarity inversion the positive and negative signals of a serial differential link are often erroneously swapped during board layout. solutions like board re-spin or major updates to the pld logic can be expensive. the receiver polarity inversion feature is provided to correct this situation. an optional rx_invpolarity port is available in all single-width modes except pci express (pipe) to dynamically enable the receiver polarity inversion feature. in single-width modes, a high value on the rx_invpolarity port inverts the polarity of every bit of the 8-bit or 10-bit input data word to the word aligner in the receiver data path. because inverting the polarity of each bit has the same effect as swapping the positive and negative signals of the differential link, correct data is seen by the receiver. the rx_invpolarity signal is dynamic and can cause initial disparity errors in an 8b/10b encoded link. the downstream system must be able to tolerate these disparity errors. the generic receiver polarity inversion feature is different from the pci express (pipe) 8b/10b polarity inversion feature. the generic receiver polarity inversion feature inverts the polarity of the data bits at the input of the word aligner and is not available in pci express (pipe) mode. the pci express (pipe) 8b/10b polarity inversion feature inverts the polarity of the data bits at the input of the 8b/10b decoder and is available only in pci express (pipe) mode. figure 1?46 shows the receiver polarity inversion feature in single-width 10-bit wide data path configurations. receiver bit reversal by default, the arria ii gx receiver assumes a lsbit-to-msbit transmission. if the transmission order is msbit-to-lsbit, the receiver forwards the bit-flipped version of the parallel data to the fpga fabric on the rx_dataout port. the receiver bit reversal feature is available to correct this situation. figure 1?46. 10-bit receiver polarity inversion in single-width mode 0 1 0 1 1 1 1 1 0 0 1 0 1 0 0 0 0 0 1 1 o u tp u t from deserializer inp u t to w ord aligner to w ord aligner rx _ invpolarity = high
1?66 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation the receiver bit reversal feature is available through the rx_revbitordwa port only in basic single-width mode with the word aligner configured in bit-slip mode. when the rx_revbitordwa signal is driven high in basic single-width mode, the 8-bit or 10-bit data d[7:0] or d[9:0] at the output of the word aligner gets rewired to d[0:7] or d[0:9] , respectively. flipping the parallel data using this feature allows the receiver to forward the correct bit-ordered data to the fpga fabric on the rx_dataout port in the case of msbit-to-lsbit transmission. figure 1?47 shows the receiver bit reversal feature in basic single-width 10-bit wide data path configurations. deskew fifo code groups received across four lanes in a xaui link can be misaligned with respect to one another because of skew in the physical medium or differences between the independent clock recoveries per lane. the xaui protocol allows a maximum skew of 40 ui (12.8 ns) as seen at the receiver of the four lanes. the xaui protocol requires the physical layer device to implement deskew circuitry to align all four channels. to enable the deskew circuitry at the receiver to align the four channels, the transmitter sends a /a/ (/k28.3/) code group simultaneously on all four channels during inter-packet gap (ipg). the skew introduced in the physical medium and the receiver channels can cause the /a/ code groups to be received misaligned with respect to each other. figure 1?47. 10-bit receiver bit reversal in single-width mode d [ 9 ] d[8] d[7] d[6] d[5] d[4] d[3] d[2] d[1] d[0] d[0] d[1] d[2] d[3] d[4] d[5] d[6] d[7] d[8] d[9] o u tp u t of w ord aligner b efore rx b it reversal o u tp u t of w ord aligner after rx b it reversal rx_revbitordwa = high
chapter 1: arria ii gx transceiver architecture 1?67 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 deskew operation is performed by the deskew circuitry in xaui functional mode. deskew circuitry consists of: a 16-word deep deskew fifo in each of the four channels control logic in the cmu0 channel of the transceiver block that controls the deskew fifo write and read operations in each channel 1 deskew circuitry is only available in xaui mode. the deskew fifo in each channel receives data from its word aligner. the deskew operation begins only after link synchronization is achieved on all four channels as indicated by a high level on the rx_syncstatus signal from the word aligner in each channel. until the first /a/ code group is received, the deskew fifo read and write pointers in each channel are not incremented. after the first /a/ code group is received, the write pointer starts incrementing for each word received but the read pointer is frozen. if the /a/ code group is received on each of the four channels in 10 recovered clock cycles of each other, the read pointer of all four deskew fifos is released simultaneously, aligning all four channels. figure 1?48 shows lane skew at the receiver input and how the deskew fifo uses the /a/ code group to align the channels. after alignment of the first ||a|| column, if three additional aligned ||a|| columns are observed at the output of the deskew fifos of the four channels, the rx_channelaligned signal is asserted high, indicating channel alignment is acquired. after acquiring channel alignment, if four misaligned ||a|| columns are seen at the output of the deskew fifos in all four channels with no aligned ||a|| columns in between, the rx_channelaligned signal is de-asserted low, indicating loss of channel alignment. deskew operation in xaui functional mode is compliant to the pcs deskew state machine diagram specified in clause 48 of the ieee p802.3ae, as shown in figure 1?49 . figure 1?48. deskew fifo?lane skew at the receiver input lanes are deske w ed b y lining up the "align"/a/, code groups lanes ske w at receiver inp ut a lane 0 k k r a k r r k k k rr lane 1 k k r a k r r k k k rr lane 0 k k r k r r k k k rr lane 1 k k r a k r r k k k rr lane 2 k k r a k r r k k k rr lane 3 k k r a k r r k k k rr lane 2 k k r a k r r k k k rr lane 3 k k r a k r r k k k rr
1?68 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation rate match (clock rate compensation) fifo in asynchronous systems, the upstream transmitter and local receiver can be clocked with independent reference clocks. frequency differences in the order of a few hundred ppm can corrupt the data when latching from the recovered clock domain (the same clock domain as the upstream transmitter reference clock) to the local receiver reference clock domain. the rate match fifo compensates for small clock frequency differences between the upstream transmitter and the local receiver clocks by inserting or removing skp symbols or ordered-sets from the ipg or idle streams. it deletes skp symbols or ordered-sets when the upstream transmitter reference clock frequency is higher than the local receiver reference clock frequency. it inserts skp symbols or ordered-sets when the local receiver reference clock frequency is higher than the upstream transmitter reference clock frequency. figure 1?49. deskew fifo operation in xaui functional mode (note 1) note to figure 1?49 : (1) source: ieee p802.3ae ? -2002, ieee standard for information technology - telecomm unications and information exchange between systems - local and metropolitan area networks - specific requirements part 3: carrier sense multiple access wi th collision detection (cs ma/cd) access method and physical layer specifications. reset + (sync_statu s=fail * sudi) sync_status ok * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) sudi(![/||a||/]) sudi(![/||a||/]) sudi(![/||a||/]) deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi sudi(![/||a||/]) loss_of_alignment align_status ? fail enab le_deske w ? true audi align_detect_1 enab le_deske w ? false audi align_detect_2 audi align_detect_3 audi 3 !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) sudi(![/||a||/]) align _acquired_1 enab le_deske w ? false audi align _acquired_2 audi align _acquired_3 audi 1 2 3 !deske w_error * sudi(![/||a||/]) sudi(![/||a||/]) align _acquired_4 audi 2 sudi(![/||a||/]) 1 sudi(![/||a||/])
chapter 1: arria ii gx transceiver architecture 1?69 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 rate match fifo consists of a 20-word deep fifo and necessary logic that controls insertion and deletion of a skp character or ordered-set, depending on the ppm difference. rate match fifo is mandatory and cannot be bypassed in the following functional modes: pci express (pipe) xaui gige rate match fifo is optional in the following functional modes: basic single-width rate match fifo receives data from the word aligner (non-xaui functional modes) or deskew fifo (xaui functional mode) in the receiver datapath. it provides the following status signals forwarded to the fpga fabric: rx_rmfifodatainserted ?indicates insertion of a skip character or ordered-set rx_rmfifodatadeleted ?indicates deletion of a skip character or ordered-set rx_rmfifofull ?indicates rate match fifo full condition rx_rmfifoempty ?indicates rate match fifo empty condition 1 rate match fifo status signals are not available in pci express (pipe) mode. these signals are encoded on the pipestatus[2:0] signal in pci express (pipe) mode, as specified in the pipe specification. rate match fifo in pci express (pipe) mode in pci express (pipe) mode, the rate match fifo is capable of compensating up to 300 ppm (total 600 ppm) difference between the upstream transmitter and the local receiver. the pci express (pipe) protocol requires the transmitter to send skp ordered sets during ipgs, adhering to rules listed in the base specification. the skp ordered set is defined as a /k28.5/ com symbol followed by three consecutive /k28.0/ skp symbol groups. the pci express (pipe) protocol requires the receiver to recognize a skp ordered set as a /k28.5/ com symbol followed by one-to-five consecutive /k28.0/ skp symbols. rate match fifo operation is compliant to pci express base specification 1.1. the rate match operation begins after the synchronization state machine in the word aligner indicates synchronization is acquired by driving the rx_syncstatus signal high. the rate match fifo looks for the skp ordered set and deletes or inserts skp symbols as necessary to prevent the rate match fifo from overflowing or under running. the rate match fifo inserts or deletes only one skp symbol per skp ordered set received. rate match fifo insertion and deletion events are communicated to the fpga fabric on the pipestatus[2:0] port from each channel. the pipestatus[2:0] signal is driven to 3'b001 for one clock cycle synchronous to the /k28.5/ com symbol of the skp ordered set in which the /k28.0/ skp symbol is inserted. the pipestatus[2:0] signal is driven to 3'b010 for one clock cycle synchronous to the /k28.5/ com symbol of the skp ordered set from which the /k28.0/ skp symbol is deleted.
1?70 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?50 shows an example of rate match deletion in the case where two /k28.0/ skp symbols are required to be deleted. only one /k28.0/ skp symbol is deleted per skp ordered set received. figure 1?51 shows an example of rate match insertion in the case where two skp symbols are required to be inserted. only one /k28.0/ skp symbol is inserted per skp ordered set received. rate match fifo full and empty conditions are communicated to the fpga fabric on the pipestatus[2:0] port from each channel. rate match fifo in pci express (pipe) mode automatically deletes the data byte that causes the fifo to go full and drives pipestatus[2:0] = 3'b101 synchronous to the subsequent data byte. figure 1?52 shows the rate match fifo full condition in pci express (pipe) mode. the rate match fifo becomes full after receiving data byte d4. the rate match fifo automatically inserts /k30.7/ (9'h1fe) after the data byte that causes the fifo to go empty and drives the pipestatus[2:0] = 3?b110 flag synchronous to the inserted /k30.7/ (9'h1fe). figure 1?50. example of rate match deletion in pci express (pipe) mode datain datao u t pipestatus[2:0] first skip ordered set k28.5 k28.0 k28.0 dx.y k28.5 k28.0 dx.y k28.5 k28.5 k28.0 k28.0 k28.0 k28.0 second skip ordered set skip symbol deleted 3'b010 xxx xxx xxx 3'b010 xxx figure 1?51. example of rate match insertion in pci express (pipe) mode datain datao u t pipestatus[2:0] first skip ordered set k28.0 k28.0 dx.y k28.5 k28.5 k28.0 k28.0 k28.0 second skip ordered set skip symbol inserted k28.5 k28.0 dx.y k28.5 k28.0 k28.0 k28.0 k28.0 k28.0 k28.0 xxx xxx 3'b001 xxx xxx 3'b001 xxx xxx xxx xxx figure 1?52. example of rate match fifo full condition in pci express (pipe) mode d1 d2 d1 d2 d7 datain dataout d4 d4 d5 d6 d7 d8 d3 d3 d6 xx d8 xx xx xxx xxx xxx 3'b101 xxx xxx xxx xxx pipestatus[2:0]
chapter 1: arria ii gx transceiver architecture 1?71 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?53 shows rate match fifo empty condition in pci express (pipe) mode. the rate match fifo becomes empty after reading out data byte d3. 1 you can configure the rate match fifo in low-latency mode by turning off the enable rate match fifo option in the altgx megawizard plug-in manager. rate match fifo in xaui mode in xaui mode, the rate match fifo is capable of compensating up to 100 ppm (total 200 ppm total) difference between the upstream transmitter and the local receiver reference clock. the xaui protocol requires the transmitter to send /r/ (/k28.0/) code groups simultaneously on all four lanes (denoted as ||r|| column) during inter-packet gaps, adhering to rules listed in the ieee p802.3ae specification. rate match fifo operation in xaui mode is compliant to the ieee p 802.3ae specification. rate match operation begins after: the synchronization state machine in the word aligner of all four channels indicates synchronization was acquired by driving its rx_syncstatus signal high the deskew fifo block indicates alignment was acquired by driving the rx_channelaligned signal high rate match fifo looks for the ||r|| column (simultaneous /r/ code group on all four channels) and deletes or inserts ||r|| column to prevent the rate match fifo from overflowing or under running. it can insert or delete as many ||r|| columns as necessary to perform the rate match operation. two flags, rx_rmfifodatadeleted and rx_rmfifodatainserted , that indicate rate match fifo deletion and insertion events, respectively, are forwarded to the fpga fabric. if an ||r|| column is deleted, the rx_rmfifodeleted flag from each of the four channels goes high for one clock cycle per deleted ||r|| column. if an ||r|| column is inserted, the rx_rmfifoinserted flag from each of the four channels goes high for one clock cycle per inserted ||r|| column. figure 1?53. example of rate match fifo empty condition in pci express (pipe) mode d1 d2 d1 d2 d5 datain dataout /k30.7/ d4 d5 d6 d3 d3 d4 pipestatus[2:0] 3'b110 xxx xxx xxx xxx xxx
1?72 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?54 shows an example of rate match deletion in the case where three ||r|| columns are required to be deleted. figure 1?55 shows an example of rate match insertion in the case where two ||r|| columns are required to be inserted. figure 1?54. example of rate match deletion in xaui mode datain[3] rx_rmfifodatadeleted k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 first ||r|| column second ||r|| column third ||r|| column fourth ||r|| column k28.5 datain[2] k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 k28.5 datain[1] k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 k28.5 datain[0] k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 k28.5 datao ut[3] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 datao ut[2] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 datao ut[1] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 datao ut[0] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 figure 1?55. example of rate match insertion in xaui mode datao ut[3] rx_rmfifodatainserted k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 first ||r|| column second ||r|| column k28.5 datao ut[2] k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 k28.5 datao ut[1] k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 k28.5 datao ut[0] k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 k28.5 datain[3] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5 datain[2] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5 datain[1] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5 datain[0] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5
chapter 1: arria ii gx transceiver architecture 1?73 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 two flags, rx_rmfifofull and rx_rmfifoempty , are forwarded to the fpga fabric to indicate rate match fifo full and empty conditions. in xaui mode, the rate match fifo does not automatically insert or delete code groups to overcome fifo empty and full conditions, respectively. it asserts the rx_rmfifofull and rx_rmfifoempty flags for at least three recovered clock cycles to indicate rate match fifo full and empty conditions, respectively. 1 in case of rate match fifo full and empty conditions, you must assert the rx_digitalreset signal to reset the receiver pcs blocks. rate match fifo in gige mode in gige mode, the rate match fifo is capable of compensating up to 100 ppm (total 200 ppm total) difference between the upstream transmitter and the local receiver reference clock. the gige protocol requires the transmitter to send idle ordered sets /i1/ (/k28.5/d5.6/) and /i2/ (/k28.5/d16.2/) during inter-packet gaps, adhering to rules listed in the ieee 802.3 specification. rate match operation begins after the synchronization state machine in the word aligner indicates synchronization is acquired by driving the rx_syncstatus signal high. the rate match fifo is capable of deleting or inserting the /i2/ (/k28.5/d16.2/) ordered set to prevent the rate match fifo from overflowing or under running during normal packet transmission. the rate match fifo is also capable of deleting or inserting the first two bytes of the /c2/ ordered set (/k28.5/d2.2/dx.y/dx.y/) to prevent the rate match fifo from overflowing or under running during the auto negotiation phase. rate match fifo can insert or delete as many /i2/ or /c2/ (first two bytes) as necessary to perform the rate match operation. two flags, rx_rmfifodatadeleted and rx_rmfifodatainserted , that indicate rate match fifo deletion and insertion events, respectively, are forwarded to the fpga fabric. both the rx_rmfifodatadeleted and rx_rmfifodatainserted flags are asserted for two clock cycles for each deleted and inserted /i2/ ordered-set, respectively. figure 1?56 shows an example of rate match fifo deletion in the case where three symbols are required to be deleted. because the rate match fifo can only delete /i2/ ordered-set, it deletes two /i2/ ordered-sets (four symbols deleted). figure 1?56. example of rate match deletion in gige mode datain datao u t rx_rmfifodatadeleted first /i2/ ordered set dx.y k28.5 k28.5 second /i2/ ordered set /i2/ ordered-set deleted d16.2 d16.2 k28.5 d16.2 dx.y third /i2/ ordered set dx.y k28.5 d16.2 dx.y
1?74 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?57 shows an example of rate match fifo insertion in the case where one symbol is required to be inserted. because the rate match fifo can only delete /i2/ ordered-set, it inserts one /i2/ ordered-sets (two symbols inserted). two flags, rx_rmfifofull and rx_rmfifoempty , are forwarded to the fpga fabric to indicate rate match fifo full and empty conditions. in gige mode, the rate match fifo does not insert or delete code groups automatically to overcome fifo empty and full conditions, respectively. it asserts the rx_rmfifofull and rx_rmfifoempty flags for at least two recovered clock cycles to indicate rate match fifo full and empty conditions, respectively. 1 in case of rate match fifo full and empty conditions, you must assert the rx_digitalreset signal to reset the receiver pcs blocks. rate match fifo in basic single-width mode in basic single-width mode, the rate match fifo is capable of compensating up to 300 ppm (total 600 ppm total) difference between the upstream transmitter and the local receiver reference clock. 1 to enable the rate match fifo in basic single-width mode, the transceiver channel must have both the transmitter and receiver channels instantiated. you must select the receiver and transmitter option in the what is the operation mode? field in the altgx megawizard plug-in manager. you must also enable the 8b/10b encoder/decoder in basic single-width mode with rate match fifo enabled. depending on your proprietary protocol implementation, you can select two 20-bit rate match patterns in the altgx megawizard plug-in manager under the what is the rate match pattern1 and what is the rate match pattern2 fields. each of the two programmed 20-bit rate match patterns consists of a 10-bit skip pattern and a 10-bit control pattern. you must choose 10-bit code groups that have a neutral disparity as the skip patterns. the rate match fifo operation begins after the word aligner synchronization status rx_syncstatus goes high. when the rate matcher receives either of the two 10-bit control patterns followed by the respective 10-bit skip pattern, it inserts or deletes the 10-bit skip pattern as necessary to avoid the rate match fifo from overflowing or under running. figure 1?57. example of rate match insertion in gige mode datain datao u t rx_rmfifodatainserted first /i2/ ordered set dx.y k28.5 k28.5 second /i2/ ordered set d16.2 d16.2 dx.y k28.5 d16.2 d16.2 dx.y k28.5 d16.2 k28.5
chapter 1: arria ii gx transceiver architecture 1?75 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 rate match fifo can delete a maximum of four skip patterns from a cluster, provided there is one skip pattern left in the cluster after deletion. the rate match fifo can insert a maximum of four skip patterns in a cluster, provided there are no more than five skip patterns in the cluster after insertion. two flags, rx_rmfifodatadeleted and rx_rmfifodatainserted , indicating rate match fifo deletion and insertion events, respectively, are forwarded to the fpga fabric. figure 1?58 shows an example of rate match fifo deletion in the case where three skip patterns are required to be deleted. in this example, /k28.5/ is the control pattern and neutral disparity /k28.0/ is the skip pattern. the first skip cluster has a /k28.5/ control pattern followed by two /k28.0/ skip patterns. the second skip cluster has a /k28.5/ control pattern followed by four /k28.0/ skip patterns. the rate match fifo deletes only one /k28.0/ skip pattern from the first skip cluster to maintain at least one skip pattern in the cluster after deletion. two /k28.0/ skip patterns are deleted from the second cluster for a total of three skip patterns deleted. figure 1?59 shows an example of rate match fifo insertion in the case where three skip patterns are required to be inserted. in this example, /k28.5/ is the control pattern and neutral disparity /k28.0/ is the skip pattern. the first skip cluster has a /k28.5/ control pattern followed by three /k28.0/ skip patterns. the second skip cluster has a /k28.5/ control pattern followed by one /k28.0/ skip pattern. the rate match fifo inserts only two /k28.0/ skip patterns into the first skip cluster to maintain a maximum of five skip patterns in the cluster after insertion. one /k28.0/ skip pattern is inserted into the second cluster for a total of three skip patterns inserted. figure 1?58. example of rate match deletion in basic single-width mode datain datao u t rx_rmfifodatadeleted first skip cluster k28.5 k28.5 second skip cluster three skip patterns deleted k28.0 k28.0 k28.0 k28.0 k28.0 k28.0 k28.5 k28.0 k28.5 k28.0 k28.0 k28.0 figure 1?59. example of rate match insertion in basic single-width mode datain datao u t rx_rmfifoinserted first skip cl uster k28.0 k28.5 second skip cluster three skip patterns inserted k28.0 k28.0 k28.5 k28.0 dx.y k28.5 k28.0 k28.0 k28.0 k28.0 k28.0 k28.0 k28.5 k28.0 dx.y k28.0 k28.0
1?76 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation two flags, rx_rmfifofull and rx_rmfifoempty , are forwarded to the fpga fabric to indicate rate match fifo full and empty conditions. the rate match fifo in basic single-width mode automatically deletes the data byte that causes the fifo to go full and asserts the rx_rmfifofull flag synchronous to the subsequent data byte. figure 1?60 shows the rate match fifo full condition in basic single-width mode. the rate match fifo becomes full after receiving data byte d4. the rate match fifo automatically inserts /k30.7/ (9'h1fe) after the data byte that causes the fifo to go empty and asserts the rx_fifoempty flag synchronous to the inserted /k30.7/ (9'h1fe). figure 1?61 shows rate match fifo empty condition in basic single-width mode. the rate match fifo becomes empty after reading out data byte d3. 8b/10b decoder protocols like pci express (pipe), xaui, gige, and serial rapidio require the serial data sent over the link to be 8b/10b encoded to maintain the dc balance in the serial data transmitted. these protocols require the receiver pcs logic to implement an 8b/10b decoder to decode the data before forwarding it to the upper layers for packet processing. the arria ii gx receiver channel pcs datapath implements the 8b/10b decoder after the rate matcher. in functional modes with rate matcher enabled, the 8b/10b decoder receives data from the rate matcher. in functional modes with rate matcher disabled, the 8b/10b decoder receives data from the word aligner. the arria ii gx 8b/10b decoder operates in single-width mode only. figure 1?60. rate match fifo full condition in basic single-width mode d1 d2 d1 d2 d7 datain dataout d4 d4 d5 d6 d7 d8 d3 d3 d6 rx_rmfifofull xx d8 xx xx figure 1?61. rate match fifo empty condition in basic single-width mode d1 d2 d1 d2 d5 datain dataout /k30.7/ d4 d5 d6 d3 d3 d4 rx_rmfifoempty
chapter 1: arria ii gx transceiver architecture 1?77 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 8b/10b decoder in single-width mode figure 1?62 shows the block diagram of the 8b/10b decoder in single-width mode. in single-width mode, the 8b/10b decoder receives 10-bit data from the rate matcher or word aligner (when rate matcher is disabled) and decodes it into an 8-bit data + 1-bit control identifier. the decoded data is fed to the byte deserializer or the receiver phase compensation fifo (if byte deserializer is disabled). 1 the 8b/10b decoder is compliant to clause 36 in the ieee802.3 specification. the 8b/10b decoder operates in single-width mode in the following functional modes: pci express (pipe) xaui gige serial rapidio basic single-width for pci express (pipe), xaui, gige, and serial rapidio functional modes, the altgx megawizard plug-in manager forces selection of the 8b/10b decoder in the receiver datapath. in basic single-width mode, it allows you to enable or disable the 8b/10b decoder depending on your pr oprietary protocol implementation. figure 1?62. 8b/10b decoder in single-width mode 8b/10b decoder datain[9:0] rx_dataout[7:0] rx_ctrldetect[0] rx_errdetect[0] rx_disperr[0] recovered clock or tx_clkout[0]
1?78 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?63 shows a 10-bit code group decoded into an 8-bit data and a 1-bit control identifier by the 8b/10b decoder in single-width mode. control code group detection the 8b/10b decoder indicates whether the decoded 8-bit code group is a data or control code group on the rx_ctrldetect port. if the received 10-bit code group is one of the 12 control code groups (/kx.y/) specified in the ieee802.3 specification, the rx_ctrldetect signal is driven high. if the received 10-bit code group is a data code group (/dx.y/), the rx_ctrldetect signal is driven low. figure 1?64 illustrates the 8b/10b decoder decoding the received 10-bit /k28.5/ control code group into an 8-bit data code group (8'hbc) driven on the rx_dataout port. rx_ctrldetect is asserted high synchronous with 8'hbc on the rx_dataout port, indicating that it is a control code group. the rest of the codes received are data code groups /dx.y/. control code group detection figure 1?65 shows 8b/10b decoding of the received 10-bit /k28.5/ control code group into 8-bit data code group (8'hbc) driven on the rx_dataout port. the rx_ctrldetect is asserted high synchronous with 8'hbc on the rx_dataout port, indicating that it is a control code group. the rest of the codes received are data code groups /dx.y/. figure 1?63. 8b/10b decoder in single-width mode 9876543210 8b/10b conversion jhgfiedc b a msb received last lsb received first 76543210 hgfed cb a ctrl parallel data figure 1?64. 8b/10b decoder in control code group detection d3.4 d24.3 d28.5 d28.5 d15.0 d0.0 d31.5 d28.1 clock rx_ctrldetect datain[9..0 ] rx_dataout[7..0] 83 78 bc bc 0f 00 bf 3c
chapter 1: arria ii gx transceiver architecture 1?79 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 byte deserializer the fpga fabric-transceiver interface frequency has an upper limit of 200 mhz. in functional modes that have a receiver pcs frequency greater than 200 mhz, the parallel received data and status signals cannot be forwarded directly to the fpga fabric because it violates the upper limit of the 200 mhz fpga fabric?transceiver interface frequency. in such configurations, the byte deserializer is required to reduce the fpga fabric?transceiver interface frequency to half while doubling the parallel data width. for example, at 3.2 gbps data rate with a deserialization factor of 10, the receiver pcs datapath runs at 320 mhz. the 10-bit parallel received data and status signals at 320 mhz cannot be forwarded to the fpga fabric because it violates the upper limit of 200 mhz. the byte serializer converts the 10-bit parallel received data at 320 mhz into 20-bit parallel data at 160 mhz before forwarding to the fpga fabric. 1 the byte deserializer is required in configurations that exceed the fpga fabric?transceiver interface clock upper frequency limit. it is optional in configurations that do not exceed the fpga fabric?transceiver interface clock upper frequency limit. the arria ii gx byte deserializer operates in single-width mode only. byte deserializer in single-width mode in single-width mode, the byte deserializer receives 8-bit wide data from the 8b/10b decoder or 10-bit wide data from the word aligner (if the 8b/10b decoder is disabled) and deserializes it into 16-bit or 20-bit wide data at half the speed. figure 1?66 shows the block diagram of the byte deserializer in single-width mode. figure 1?65. 8b/10b decoder 10-bit control code group 00 01 00 clock datain[19:10] datain[9:0] rx_ctrldetect[1:0] rx_dataout[15:0] d3.4 d28.5 d15.0 d3.4 d28.5 d15.0 d3.4 d24.3 16'h8378 16'hbcbc 16'h0f0f 16'h8383 figure 1?66. byte deserializer in single-width mode or /2 byte deserializer receiver pcs clock dataout[15:0] dataout[19:0] d1 d2 d3 d4 d1 d2 d3 d4 or datain[7:0] datain[9:0]
1?80 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation byte ordering block in single-width modes with the 16-bit or 20-bit fpga fabric?transceiver interface, the byte deserializer receives one data byte (8- or 10-bit) and deserializes it into two data bytes (16- or 20-bit). depending on when the receiver pcs logic comes out of reset, the byte ordering at the output of the byte deserializer may or may not match the original byte ordering of the transmitted data. the byte misalignment resulting from byte deserialization is unpredictable because it depends on which byte is being received by the byte deserializer when it comes out of reset. figure 1?67 shows a scenario in which the msbyte and lsbyte of the two-byte transmitter data appears straddled across two word boundaries after getting byte deserialized at the receiver. arria ii gx transceivers have an optional byte ordering block in the receiver data path that you can use to restore proper byte ordering before forwarding the data to the fpga fabric. the byte ordering block looks for the user-programmed byte ordering pattern in the byte-deserialized data. you must select a byte ordering pattern that you know appears at the lsbyte/lsbytes position of the parallel transmitter data. if the byte ordering block finds the programmed byte ordering pattern in the msbyte/msbytes position of the byte-deserialized data, it inserts the appropriate number of user-programmed pad bytes to push the byte ordering pattern to the lsbyte/lsbytes position, thereby restoring proper byte ordering. byte ordering block in single-width modes the byte ordering block is available in the following single-width functional modes: sonet/sdh oc-48 basic single-width mode with: 16-bit fpga fabric?transceiver interface no 8b/10b decoder (8-bit pma-pcs interface) word aligner in manual alignment mode basic single-width mode with: 16-bit fpga fabric?transceiver interface 8b/10b decoder word aligner in automatic synchronization state machine mode figure 1?67. msbyte and lsbyte of the two-byte transmitter data straddled across two word boundaries transmitter receiver tx_datain[15:8] (msbyte) tx_datain[7:0] (lsbyte) d2 d4 d6 d5 d3 d1 byte serializer xx d1 d2 d3 d4 d5 d6 xx byte deserializer d1 d3 d5 xx xx d2 d4 d6 rx_dataout[15:8] (msbyte) rx_dataout[7:0] (lsbyte)
chapter 1: arria ii gx transceiver architecture 1?81 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 1 for more information about configurations that allow the byte ordering block in the receiver datapath, refer to ?basic single-width mode configurations? on page 1?86 . the quartus ii software automatically configures the byte ordering pattern and byte ordering pad pattern for sonet/sdh oc-48 functional mode. for more information, refer to ?oc-48 byte ordering? on page 1?126 . in basic single-width mode, you can program a custom byte ordering pattern and byte ordering pad pattern in the altgx megawizard plug-in manager. table 1?22 shows the byte ordering pattern length allowed in basic single-width mode. the byte ordering block modes of operation in single-width mode: word-alignment-based byte ordering user-controlled byte ordering word-alignment-based byte ordering in word-alignment-based byte ordering, the byte ordering block starts looking for the byte ordering pattern in the byte-deserialized data every time it sees a rising edge on the rx_syncstatus signal. after a rising edge on the rx_syncstatus signal, if the byte ordering block finds the first data byte that matches the programmed byte ordering pattern in the msbyte position of the byte-deserialized data, it inserts one programmed pad pattern to push the byte ordering pattern into the lsbyte position. if the byte ordering blocks finds the first data byte that matches the programmed byte ordering pattern in the lsbyte position of the byte-deserialized data, it considers the data to be byte ordered and does not insert any pad pattern. in either case, the byte ordering block asserts the rx_byteorderalignstatus signal. 1 you can choose word-alignment-based byte ordering by selecting the sync status signal from the word aligner option in the what do you want the byte ordering to be based on? field in the altgx megawizard plug-in manager. table 1?22. byte ordering pattern length in basic single-width mode functional mode byte ordering pattern length byte ordering pad pattern length basic single-width mode with: 16-bit fpga fabric-transceiver interface no 8b/10b decoder word aligner in manual alignment mode 8-bit 8-bit basic single-width mode with: 16-bit fpga fabric-transceiver interface 8b/10b decoder word aligner in automatic synchronization state machine mode 9-bit (1) 9-bit note to tab l e 1 ?2 2 : (1) if a /kx.y/ control code group is selected as the byte ordering pattern, the msb of the 9-bit byte ordering pattern must be 1'b1. if a /dx.y/ data code group is selected as the byte ordering pattern, the msb of the 9-bit byte ordering pattern must be 1'b0. the least significant 8 bits must be the 8b/10b decoded version of the code group used for byte ordering.
1?82 chapter 1: arria ii gx transceiver architecture receiver channel datapath arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?68 shows an example of the byte ordering operation in single-width modes. in this example, a is the programmed byte ordering pattern and pad is the programmed pad pattern. the byte deserialized data places the byte ordering pattern a in the msbyte position resulting in incorrect byte ordering. assuming that a rising edge on the rx_syncstatus signal had occurred before the byte ordering block sees the byte ordering pattern a in the msbyte position, the byte ordering block inserts a pad byte and pushes the byte ordering pattern a into the lsbyte position. the data at the output of the byte ordering block has correct byte ordering as reflected on the rx_byteorderalignstatus signal. if the byte ordering block sees another rising edge on the rx_syncstatus signal from the word aligner, it de-asserts the rx_byteorderalignstatus signal and repeats the byte ordering operation as previously discussed. user-controlled byte ordering unlike word-alignment-based byte ordering, user-controlled byte ordering provides control to the user logic to restore correct byte ordering at the receiver. when enabled, an rx_enabyteord port is available that you can use to trigger the byte ordering operation. a rising edge on the rx_enabyteord port triggers the byte ordering block. after a rising edge on the rx_enabyteord signal, if the byte ordering block finds the first data byte that matches the programmed byte ordering pattern in the msbyte position of the byte-deserialized data, it inserts one programmed pad pattern to push the byte ordering pattern into the lsbyte position. if the byte ordering blocks find the first data byte that matches the programmed byte ordering pattern in the lsbyte position of the byte-deserialized data, it considers the data to be byte ordered and does not insert any pad byte. in either case, the byte ordering block asserts the rx_byteorderalignstatus signal. receiver phase compensation fifo the receiver phase compensation fifo in each channel ensures reliable transfer of data and status signals between the receiver channel and the fpga fabric. the receiver phase compensation fifo compensates for the phase difference between the parallel receiver pcs clock (fifo write clock) and the fpga fabric clock (fifo read clock). figure 1?68. example of byte ordering in single-width modes a transmitter receiver xx a xx pad a channel tx_datain[15:8] tx_datain[7:0] d2 d3 d5 d4 d1 byte serializer byte deserializer d1 d4 d3 d2 byte ordering rx_byteorderalignstatus d1 d3 d5 d4 d2 rx_dataout[15:8] rx_dataout[7:0]
chapter 1: arria ii gx transceiver architecture 1?83 receiver channel datapath ? march 2009 altera corporation arria ii gx device handbook volume 2 the receiver phase compensation fifo operates in one of the following two modes: low latency mode?the quartus ii software automatically configures the receiver phase compensation fifo in low latency mode in all functional modes except pci express (pipe). in this mode, the fifo is four words deep and the latency through the fifo is 2-to-3 parallel clock cycles (pending characterization). high latency mode?the quartus ii software automatically configures the receiver phase compensation fifo in high latency mode in pci express (pipe) functional mode. in this mode, the fifo is eight words deep and the latency through the fifo is 4-to-5 parallel clock cycles (pending characterization). registered mode ?the quartus ii software configures the receiver phase compensation fifo in registered mode if the selection is made in the altgx megawizard plug-in manager. in this mode, latency uncertainty through the receiver phase compensation fifo is 0 cycles. this mode is available for cpri data rates in basic functional mode. for more information, refer to ?basic functional mode? on page 1?85 . the receiver phase compensation fifo write clock source varies with the receiver channel configuration. table 1?23 shows the receiver phase compensation fifo write clock source in different configurations. the receiver phase compensation fifo read clock source varies depending on whether or not you instantiate the rx_coreclk port in the altgx megawizard plug-in manager. table 1?24 shows the receiver phase compensation fifo read clock source in different configurations. table 1?23. receiver phase compensation fifo write clock source configuration receiver phase compensation fifo write clock without byte serializer with byte serializer non-bonded channel configuration with rate matcher parallel transmitter pcs clock from the local clock divider in the associated channel ( tx_clkout ) divide-by-two version of the parallel transmitter pcs clock from the local clock divider in the associated channel ( tx_clkout ) non-bonded channel configuration without rate matcher parallel recovered clock from the receiver pma in the associated channel ( rx_clkout ) divide-by-two version of the parallel recovered clock from the receiver pma in the associated channel ( rx_clkout ) 4 bonded channel configuration parallel transmitter pcs clock from the central clock divider in the cmu0 of the associated transceiver block ( coreclkout ) divide-by-two version of the parallel transmitter pcs clock from the central clock divider in cmu0 of the associated transceiver block ( coreclkout ) 8 bonded channel configuration parallel transmitter pcs clock from the central clock divider in cmu0 of the master transceiver block ( coreclkout from master transceiver block) divide-by-two version of the parallel transmitter pcs clock from the central clock divider in cmu0 of the master transceiver block ( coreclkout from master transceiver block)
1?84 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver phase compensation fifo error flag an optional rx_phase_comp_fifo_error port is available in all functional modes to indicate a receiver phase compensation fifo overrun or underflow condition. the rx_phase_comp_fifo_error signal is asserted high when the phase compensation fifo gets either full or empty. this feature is useful to verify a phase compensation fifo overrun or underflow condition as a probable cause of link errors. offset cancellation in the receiver buffer and receiver cdr as silicon progresses towards smaller process nodes, the performance of circuits at these smaller nodes depends more on process variations. these process variations result in analog voltages that can be offset from required ranges. offset cancellation logic corrects these offsets. the receiver buffer and receiver cdr require offset cancellation. f for more information, refer to ?receiver offset cancellation? on page 1?8 and to an 558: implementing dynamic reconfiguration in arria ii gx devices . f due to the offset cancellation process, the transceiver reset sequence has changed. for more information, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook . functional modes you can configure arria ii gx transceivers in one of the following functional modes using the altgx megawizard plug-in manager: basic single-width at 600 mbps to 3.75 gbps pci express (pipe) (gen1 at 2.5 gbps) xaui (3.125 gbps up to higig/higig+ at 3.75 gbps) gige (1.25 gbps) table 1?24. receiver phase compensation fifo read clock source configuration receiver phase compensation fifo read clock rx_coreclk port not instantiated rx_coreclk port instantiated (1) non-bonded channel configuration with rate matcher fpga fabric clock driven by the clock signal on the tx_clkout port fpga fabric clock driven by the clock signal on the rx_coreclk port non-bonded channel configuration without rate matcher fpga fabric clock driven by the clock signal on the rx_clkout port fpga fabric clock driven by the clock signal on the rx_coreclk port 4 bonded channel configuration fpga fabric clock driven by the clock signal on the coreclkout port fpga fabric clock driven by the clock signal on the rx_coreclk port 8 bonded channel configuration fpga fabric clock driven by the clock signal on the coreclkout port fpga fabric clock driven by the clock signal on the rx_coreclk port note to tab l e 1 ?2 4 : (1) the clock signal driven on the rx_coreclk port must have 0 ppm frequency difference with respect to the receiver phase compensation fifo write clock.
chapter 1: arria ii gx transceiver architecture 1?85 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 serial rapidio (1.25 gbps, 2.5 gbps, 3.125 gbps) sonet/sdh (oc-12, oc-48) sdi (hd at 1.485/1.4835 gbps, 3g at 2.97/2.967 gbps) basic functional mode the arria ii gx transceiver datapath is extremely flexible in basic functional mode. to configure the transceiver in basic functional mode, you must select basic in the which protocol will you be using? option of the altgx megawizard plug-in manager. the basic functional mode runs in basic single-width mode. table 1?25 shows the pcs-pma interface widths and data rates supported in basic single-width mode. low latency pcs datapath the altgx megawizard plug-in manager provides an enable low latency pcs mode option when configured in basic single-width mode. if you select this option, the following transmitter and receiver channel pcs blocks are truly bypassed to yield a low latency pcs datapath: 8b/10b encoder and decoder word aligner deskew fifo rate match (clock rate compensation) fifo byte ordering in low latency pcs modes, the transmitter and receiver phase compensation fifos are always enabled. depending on the targeted data rate, the byte serializer and deserializer blocks can be optionally bypassed. for more information, refer to ?basic single-width mode configurations? on page 1?86 . the pcs latency in basic single-width mode with and without the low latency pcs mode option is pending characterization. table 1?25. pcs-pma interface widths and data rates in basic single-width mode basic functional mode supported data rate range (1) pma-pcs interface width basic single-width mode 600 mbps to 3.75 gbps 8-bit 10-bit note to tab l e 1 ?2 5 : (1) the data rate range supported in basic single-width mode varies depending on whether or not you use the byte serializer/deserializer. for more information, refer to ?basic single-width mode configurations? on page 1?86 .
1?86 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation basic single-width mode configurations figure 1?69 shows arria ii gx transceiver configurations allowed in basic single-width functional mode with an 8-bit wide pma-pcs interface. figure 1?69. transceiver configurations in basic single-width mode with an 8-bit wide pma-pcs interface disabled disa b led disa b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single w idth protocol pipe xaui gige srio sonet /sdh sdi 8- bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit ena b led disa b led disa b led disa b led ena b led disa b led ena b led disa b led disa b led disa b led disa b led disa b led ena b led disa b led ena b led disa b led disa b led fpga fabric - transceiver interface frequency disa b led disa b led functional modes pma-pcs interface width functional mode data rate (gbps) channel bonding low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder data rate (gbps) fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 75 - 200 37.5 - 187.5 37.5 - 187.5 75 - 200 37.5 - 187.5 8-bit 8-bit 16-bit 16-bit 16-bit 0.6 - 1.6 0.6 - 3.0 0.6 - 1.6 0.6 - 3.0 manual alignment (16-bit) bit-slip (16-bit) basic single-width 8-bit pma-pcs interface width 0.6 - 3.125 x1, x4, x8 0.6 - 1.6 0.6 - 3.0 8-bit 16-bit 75 - 200 37.5 - 187.5
chapter 1: arria ii gx transceiver architecture 1?87 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?70 shows arria ii gx transceiver configurations allowed in basic single-width functional mode with a 10-bit wide pma-pcs interface. the receiver phase compensation fifo can be configured in registered mode in single-width basic mode to reduce latency uncertainty through the pcs for cpri and obsai modes, as shown in the two right-most branches of figure 1?70 . figure 1?70. transceiver configurations in basic single-width mode with a 10-bit wide pma-pcs interface disa b led disa b led disa b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single width protocol pipe xaui gige srio sonet /sdh sdi 8-bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit ena b led disa b led disa b led disa b led disa b led disa b led channel bonding fpga fabric - transceiver interface frequency ena b led disa b led ena b led disa b led ena b led disa b led disa b led disa b led disa b led disa b led ena b led ena b led disa b led ena b led disa b led ena b led disa b led ena b led disa b led disa b led disa b led disa b led disa b led disa b led disa b led disa b led ena b led disa b led ena b led disa b led ena b led disa b led disa b led disa b led disa b led ena b led disa b led disa b led disa b led ena b led disa b led disa b led functional modes pma-pcs interface width functional mode data rate (gbps) low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder data rate (gbps) fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 30 - 187.5 30 - 187.5 30 - 187.5 30 - 187.5 30 - 187.5 30 - 187.5 30 - 187.5 30 - 187.5 60 - 200 60 - 200 60 - 200 60 - 200 60 - 200 60 - 200 60 - 200 10-bit 10-bit 10-bit 16-bit 16-bit 16-bit 16-bit 16-bit 8-bit 8-bit 8-bit 8-bit 20-bit 20-bit 20-bit 0.6 - 2.0 0.6 - 2.0 0.6 - 2.0 0.6 - 2.0 0.6 - 2.0 0.6 - 2.0 0.6 - 2.0 0.6 - 3.75 0.6 - 3.75 0.6 - 3.75 0.6 - 3.75 0.6 - 3.75 0.6 - 3.75 0.6 - 3.75 automatic synchronization state machine (7-bit, 10-bit) bit-slip (7-bit, 10-bit) manual alignment (7-bit, 10-bit) x1, x4, x8 0.6 - 3.75 basic single-width 10-bit pma-pcs interface width 0.6 - 2.0 0.6 - 3.75 10-bit 20-bit 60 - 200 30 - 187.5 disab led enabled disa b led disa b led disa b led 8-bit 0.6 - 2 (cpri/obsai) 60 - 200 x1 man ual alignment (10-bit) disa b led disa b led disa b led 10-bit 60 - 200 disa b led 0.6 - 2.0 0.6 - 2.0
1?88 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation basic double-width mode configurations figure 1?71 shows arria ii gx transceiver configurations allowed in basic double-width functional mode with a 20-bit wide pma-pcs interface. the receiver phase compensation fifo is configured in registered mode in double-width basic mode to reduce latency uncertainty through the pcs for cpri and obsai modes. basic double-width mode is supported only for cpri/obsai reduced latency configurations for arria ii gx devices. figure 1?71. transceiver configurations in basic double-width mode with a 20-bit wide pma-pcs interface rate match fifo byte serdes byte ordering arria ii gx config u rations basic double width protocol pipe xaui gige srio sonet /sdh sdi 20-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit channel bonding fpga fabric - transceiver interface frequency functional modes pma-pcs interface width pma-pcs interface width data rate (gbps) low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder data rate (gbps) fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 1.0 - 3.072 (cpri/obsai) basic double-width 20-bit pma-pcs interface width disab led enabled disa b led disa b led disa b led 1.0 - 3.072 16-bit 50 - 153.6 single width x1 man ual alignment (10-bit, 20-bit) disabled disa b led disa b led disa b led 20-bit 1.0 - 3.072 50 - 153.6
chapter 1: arria ii gx transceiver architecture 1?89 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 pci express (pipe) mode intel corporation has developed a phy interface for the pci express architecture (pipe) specification to enable implementation of a pci express-compliant physical layer device. the pipe specification also defines a standard interface between the physical layer device and the media access control layer (mac). version 2.00 of the pipe specification provides implementation details for a pci express-compliant physical layer device at gen1 (2.5 gt/s) signaling rate. to implement a version 2.00 pipe-compliant phy, you must configure the arria ii gx transceivers in pci express (pipe) functional mode. arria ii gx devices have built-in pci express hard ip blocks that you can use to implement the phy-mac layer, data link layer, and transaction layer of the pci express protocol stack. you can also bypass the pci express hard ip blocks and implement the phy-mac layer, data link layer, and transaction layer in the fgpa fabric using a soft ip. if you enable the pci express hard ip blocks, the arria ii gx transceivers interface with these hard ip blocks. otherwise, the arria ii gx transceivers interface with the fpga fabric. you can configure arria ii gx transceivers in pci express (pipe) functional mode using one of the following two methods: altgx megawizard plug-in manager if you do not use the pci express hard ip block pci express compiler if you use the pci express hard ip block 1 descriptions of pci express hard ip architecture and pci express (pipe) mode configurations allowed when using pci express hard ip block are out of the scope of this chapter. for more information about the pci express hard ip block, refer to the pci express compiler user guide. pci express (pipe) mode configurations arria ii gx transceivers support gen1 (2.5 gbps) data rates in pci express (pipe) functional mode. arria ii gx transceivers support 1, 4, and 8 lane configurations in pipe functional mode at 2.5 gbps data rates. in pci express (pipe) 1 configuration, the pcs and pma blocks of each channel are clocked and reset independently. pci express (pipe) 4 and 8 configurations support channel bonding for four-lane and eight-lane pci express (pipe) links. in these bonded channel configurations, the pcs and pma blocks of all bonded channels share common clock and reset signals.
1?90 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?72 shows the arria ii gx transceiver configurations allowed in pci express (pipe) functional mode. figure 1?72. arria ii gx transceivers in pci express (pipe) functional mode channel bonding rate match fifo f u nctional mode data rate disa b led byte serdes enabled ena b led pipe 2.5 gbps (gen1) x1, x4, x8 10-bit automatic synchronization state machine (/k28.5+/,/k28.5-/) enabled enabled enabled 16-bit 16-bit 125 mhz 125 mhz pma-pcs interface width word aligner (pattern) 8b/10b encoder/ decoder pci express hardip pcs-hardip or pcs-fpga fabric interface width pcs-hardip or pcs-fpga fabric interface frequency arria ii gx configurations basic single width functional modes pipe xaui gige srio sonet /sdh sdi 8-bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit pma-pcs interface width disabled 8-bit 250 mhz protocol
chapter 1: arria ii gx transceiver architecture 1?91 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 pci express (pipe) mode datapath figure 1?73 shows the arria ii gx transceiver datapath when configured in pci express (pipe) functional mode. table 1?26 shows the transceiver datapath clock frequencies in pci express (pipe) functional mode configured using the altgx megawizard plug-in manager. the transceiver datapath clocking varies between non-bonded (1) and bonded (4 and 8) configurations in pci express (pipe) mode. f for more information about transceiver datapath clocking in different pci express (pipe) configurations, refer to the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . the transmitter datapath in pci express (pipe) mode consists of: pipe interface transmitter phase compensation fifo optional byte serializer (enabled for 16-bit and disabled for 8-bit fpga fabric-transceiver interface) 8b/10b encoder figure 1?73. arria ii gx transceiver datapath in pci express (pipe) mode tx phase compensation fifo byte serializer 8b/10b encoder serializer transmitter channel pcs transmitter channel pma /2 w rclk w rclk rdclk rdclk low -speed parallel clock high-speed serial clock tx_coreclk[0] rx phase compensation fifo byte de- serializer 8b/10b decoder rate match fifo w ord aligner de- serializer cdr /2 tx_clkout[0] parallel recovered clock low -speed parallel clock rx_coreclk[0] receiver channel pcs receiver channel pma fpga fa b ric-transceiver interface clock pci express hardip pci express hardip pipe interface pipe interface fpga fabric table 1?26. arria ii gx transceiver datapath clock frequencies in pci express (pipe) mode functional mode data rate high-speed serial clock frequency parallel recovered clock and low-speed parallel clock frequency fpga fabric-transceiver interface clock frequency with byte serializer/ deserializer (16-bit wide) pci express (pipe) 1, 4, 8 (gen1) 2.5 gbps 1.25 ghz 250 mhz 125 mhz
1?92 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation 10:1 serializer transmitter buffer with receiver detect circuitry the receiver datapath in pci express (pipe) mode consists of: receiver buffer with signal detect circuitry 1:10 deserializer word aligner that implements pci express-compliant synchronization state machine optional rate match fifo (clock rate compensation) that can tolerate up to 600 ppm frequency difference 8b/10b decoder optional byte deserializer (enabled for 16-bit and disabled for 8-bit fpga fabric-transceiver interface) receiver phase compensation fifo pipe interface table 1?27 shows features supported in pci express (pipe) functional mode for 2.5 gbps data rate configurations. pci express (pipe) interface in pci express (pipe) mode, each channel has a pipe interface block that transfers data, control, and status signals between the phy-mac layer and the transceiver channel pcs and pma blocks. the pipe interface block is compliant to version 2.00 of the pci express (pipe) specification. if you use the pci express hard ip block, the phy-mac layer is implemented in the hard ip block. otherwise, the phy-mac layer may be implemented using soft ip in the fpga fabric. 1 the pipe interface block is only used in pci express (pipe) mode and cannot be bypassed. table 1?27. supported features in pci express (pipe) mode feature 2.5 gbps (gen1) 1, 4, 8 link configurations v pci express-compliant synchronization state machine v 300 ppm (total 600 ppm) clock rate compensation v 8-bit fpga fabric-transceiver interface v 16-bit fpga fabric-transceiver interface v transmitter buffer electrical idle v receiver detection v 8b/10b encoder disparity control when transmitting compliance pattern v power state management v receiver status encoding v
chapter 1: arria ii gx transceiver architecture 1?93 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 besides transferring data, control, and status signals between the phy-mac layer and the transceiver, the pipe interface block implements the following functions required in a pipe-compliant physical layer device: force the transmitter buffer in electrical idle state initiate receiver detect sequence 8b/10b encoder disparity control when transmitting compliance pattern manage pipe power states indicate completion of various phy functions like receiver detection and power state transitions on the pipephydonestatus signal encode receiver status and error conditions on the pipestatus[2:0] signal as specified in the pipe specification transmitter buffer electrical idle when the input signal tx_forceelecidle is asserted high, the pipe interface block puts the transmitter buffer in that channel in electrical idle state. during electrical idle, the transmitter buffer differential and common mode output voltage levels are compliant to the pci express base specification 1.1 for pci express gen1 data rate. figure 1?74 shows the relationship between assertion of the tx_forceelecidle signal and the transmitter buffer output on the tx_dataout port. time t1 taken from the assertion of the tx_forceelecidle signal to the transmitter buffer reaching electrical idle voltage levels is pending characterization. once in electrical idle state, the pci express (pipe) protocol requires the transmitter buffer to stay in electrical idle for a minimum of 20 ns for gen1 data rate. 1 the minimum period of time for which the tx_forceelecidle signal must be asserted high such that the transmitter buffer stays in electrical idle state for at least 20 ns is pending characterization. the pci express (pipe) specification requires the transmitter buffer to be in electrical idle in certain power states. refer to table 1?26 on page 1?91 for more information on the tx_forceelecidle signal levels required in different pci express (pipe) power states. figure 1?74. transmitter buffer electrical idle state tx_forcelecidle tx_dataout t1 >20 ns
1?94 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver detection during the detect substate of the long-term sample storage module (ltssm) state machine, the pci express (pipe) protocol requires the transmitter channel to perform a receiver detect sequence to detect if a receiver is present at the far end of each lane. the pci express (pipe) specification requires that a receiver detect operation be performed during the p1 power state. the pipe interface block in arria ii gx transceivers provides an input signal tx_detectrxloopback for the receiver detect operation. when the input signal tx_detectrxloopback is asserted high in the p1 power state, the pipe interface block sends a command signal to the transmitter buffer in that channel to initiate a receiver detect sequence. in the p1 power state, the transmitter buffer must always be in electrical idle state. on receiving this command signal, the receiver detect circuitry creates a step voltage at the output of the transmitter buffer. if an active receiver (that complies to the pci express [pipe] input impedance requirements) is present at the far end, the time constant of the step voltage on the trace is higher compared to when the receiver is not present. the receiver detect circuitry monitors the time constant of the step signal seen on the trace to decide if a receiver was detected or not. the receiver detect circuitry monitor needs a 125-mhz clock for operation that you must drive on the fixedclk port. 1 for the receiver detect circuitry to function reliably, the ac-coupling capacitor on the serial link and the receiver termination values used in your system must be compliant to the pci express (pipe) base specification 1.1. receiver detect circuitry communicates the status of the receiver detect operation to the pipe interface block. if a far-end receiver is successfully detected, the pipe interface block asserts pipephydonestatus for one clock cycle and synchronously drives the pipestatus[2:0] signal to 3'b011. if a far-end receiver is not detected, the pipe interface block asserts pipephydonestatus for one clock cycle and synchronously drives the pipestatus[2:0] signal to 3'b000. figure 1?75 and figure 1?76 show the receiver detect operation where a receiver was successfully detected and where a receiver was not detected, respectively. figure 1?75. receiver detect, successfully detected powerdown[1:0] tx_detectrxloopback pipephydonestatus pipestatus[2:0] 3'b000 2'b10(p1) 3'b011
chapter 1: arria ii gx transceiver architecture 1?95 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 compliance pattern transmission support the ltssm state machine can enter the ?polling.compliance? substate where the transmitter is required to transmit a compliance pattern as specified in the pci express (pipe) base specification 1.1. the ?p olling.compliance? substate is intended to assess if the transmitter is electrically compliant with the pci express (pipe) voltage and timing specifications. the compliance pattern is a repeating sequence of the following four code groups: /k28.5/ /d21.5/ /k28.5/ /d10.2/ pci express (pipe) protocol requires the first /k28.5/ code group of the compliance pattern to be encoded with negative current disparity. to satisfy this requirement, the pipe interface block provides an input signal, tx_forcedispcompliance. a high level on tx_forcedispcompliance forces the associated parallel transmitter data on the tx_datain port to transmit with negative current running disparity. for 8-bit transceiver channel width configurations, you must drive tx_forcedispcompliance high in the same parallel clock cycle as the first /k28.5/ of the compliance pattern on the tx_datain port. for 16-bit transceiver channel width configurations, you must drive only the lsb of tx_forcedispcompliance[1:0] high in the same parallel clock cycle as /k28.5/d21.5/ of the compliance pattern on the tx_datain port. figure 1?77 and figure 1?78 show the required level on the tx_forcedispcompliance signal while transmitting the compliance pattern in 8-bit and 16-bit channel width configurations, respectively. figure 1?76. receiver detect, unsuccessful powerdown[1:0] tx_detectrxloopback pipephydonestatus pipestatus[2:0] 3'b000 2'b10 (p1)
1?96 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation power state management the pci express (pipe) specification defines four power states, namely p0, p0s, p1, and p2, that the physical layer device must support to minimize power consumption. p0 is the normal operation state during which packet data is transferred on the pci express (pipe) link. p0s, p1, and p2 are low-power states into which the physical layer must transition as directed by the phy-mac layer to minimize power consumption. the pci express (pipe) specification provides the mapping of these power states to the ltssm states specified in the pci express (pipe) base specification 1.1. the phy-mac layer is responsible for implementing the mapping logic between the ltssm states and the four power states in the pci express (pipe)-compliant phy. the pipe interface in arria ii gx transceivers provides an input port, powerdn[1:0] , for each transceiver channel configured in pci express (pipe) mode. table 1?30 shows mapping between the logic levels driven on the powerdn[1:0] port and the resulting power state that the pipe interface block puts the transceiver channel into. figure 1?77. compliance pattern transmission support, 8-bit wide channel configurations figure 1?78. compliance pattern transmission support, 16-bit wide channel configurations bc bc bc bc tx_datain[7:0] tx_ctrldetect tx_forcedispcompliance b5 4a b5 4a k28.5 d21.5 k28.5 d10.2 k28.5 d21.5 k28.5 d10.2 01 00 01 tx_datain[15:0] tx_ctrldetect[1:0] tx_forcedispcompliance[1:0] b5bc /k28.5/d21.5/ /k28.5/d10.2/ bc4a b5bc /k28.5/d21.5/ bc4a /k28.5/d10.2/ table 1?28. powerdn[1:0] port power state functions and descriptions (part 1 of 2) power state powerdn function description p0 2?b00 transmits normal data, transmits electrical idle, or enters into loopback mode normal operation mode p0s 2?b01 only transmits electrical idle low recovery time saving state
chapter 1: arria ii gx transceiver architecture 1?97 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 1 when transitioning from the p0 power state to lower power states (p0s, p1, and p2), the pci express (pipe) specification requires the physical layer device to implement power saving measures. arria ii gx transceivers do not implement these power saving measures except when putting the transmitter buffer in electrical idle in the lower power states. the pipe interface block indicates successful power state transition by asserting the pipephydonestatus signal for one parallel clock cycle as specified in the pci express (pipe) specification. the phy-mac layer must not request any further power state transition until the pipephydonestatus signal has indicated the completion of the current power state transition request. figure 1?79 shows an example waveform for a transition from p0 to p2 power state. the pci express (pipe) specification allows the pipe interface to perform protocol functions like receiver detect, loopback, and beacon transmission in specified power states only. this requires the phy-mac layer to drive the tx_detectrxloopback and tx_forceelecidle signals appropriately in each power state to perform these functions. table 1?29 summarizes the logic levels that the phy-mac layer must drive on the tx_detectrxloopback and tx_forceelecidle signals in each power state. p1 2?b10 transmitter buffer is powered down and can do a receiver detect while in this state high recovery time power saving state p2 2?b11 transmits electrical idle or a beacon to wake up the downstream receiver lowest power saving state table 1?28. powerdn[1:0] port power state functions and descriptions (part 2 of 2) power state powerdn function description figure 1?79. example of power state transition from p0 to p2 table 1?29. logic levels for the phy-mac layer (part 1 of 2) power state tx_detectrxloopback tx_forceelecidle p0 0: normal mode 1: data path in loopback mode 0: must be deasserted 1: illegal mode p0s don?t care 0: illegal mode 1: must be asserted in this state parallel clock powerdn[1:0] pipephydonestatus 2'b00 (p0) 2'b11 (p2)
1?98 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver status the pci express (pipe) specification requires the phy to encode the receiver status on a 3-bit rxstatus[2:0] signal. this status signal is used by the phy-mac layer for its operation. the pipe interface block receives status signals from the transceiver channel pcs and pma blocks and encodes the status on the 3-bit output signal pipestatus[2:0] to the fpga fabric. the encoding of the status signals on pipestatus[2:0] is compliant with the pci express (pipe) specification and listed in table 1?30 . two or more of the error conditions, for example, 8b/10b decode error (code group violation), rate match fifo overflow or underflow, or receiver disparity error, can occur simultaneously. the pipe interface follows the priority listed in table 1?30 while encoding the receiver status on the pipestatus[2:0] port. for example, if the pipe interface receives an 8b/10b decode error and disparity error for the same symbol, it drives 3'b100 on the pipestatus[2:0] signal. fast recovery mode the pci express base specification fast training sequences (fts) are used for bit and byte synchronization to transition from l0s to l0 (pipe p0s to p0) power states. the pci express base specification requires the physical layer device to acquire bit and byte synchronization after transitioning from l0s to l0 state within 16 ns to 4 s. if the arria ii gx receiver cdr is configured in automatic lock mode, the receiver cannot meet the pci express specification of acquiring bit and byte synchronization within 4 s due to the signal detect and ppm detector time. to meet this specification, each arria ii gx transceiver has a built-in fast recovery circuitry that you can optionally enable. p1 0: electrical idle 1: receiver detect 0: illegal mode 1: must be asserted in this state p2 don?t care deasserted in this state for sending beacon. otherwise asserted. table 1?30. encoding of the status signals on pipestatus[2:0] pipestatus[2:0] description error condition priority 3'b000 received data ok n/a 3'b001 one skp symbol added 5 3'b010 one skp symbol deleted 6 3'b011 receiver detected n/a 3'b100 8b/10b decode error 1 3'b101 elastic buffer (rate match fifo) overflow 2 3'b110 elastic buffer (rate match fifo) underflow 3 3'b111 received disparity error 4 table 1?29. logic levels for the phy-mac layer (part 2 of 2) power state tx_detectrxloopback tx_forceelecidle
chapter 1: arria ii gx transceiver architecture 1?99 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 1 to enable the fast recovery circuitry, select the enable fast recovery mode option in the altgx megawizard plug-in manager. if enabled, the fast recovery circuitry controls the receiver cdr rx_locktorefclk and rx_locktodata signals to force the receiver cdr in ltr or ltd modes. it relies on the electrical idle ordered sets (eios), nfts sequences received in l0 power state, and the signal detect signal from the receiver input buffer to control the receiver cdr lock mode. 1 the fast recovery circuitry is self-operational and does not require control inputs from you. when enabled, the rx_locktorefclk and rx_locktodata ports are not available in the altgx megawizard plug-in manager. electrical idle inference the pci express (pipe) protocol allows inferring the electrical idle condition at the receiver instead of detecting the electrical idle condition using analog circuitry. clause 4.2.4.3 in pci express (pipe) base specification 1.1 specifies conditions to infer electrical idle at the receiver in various sub-states of the ltssm state machine. in all pci express (pipe) modes (1, 4, and 8), each receiver channel pcs has an optional electrical idle inference module designed to implement the electrical idle inference conditions specified in the pci express (pipe) base specification 1.1. you can enable the electrical idle inference module by selecting the enable electrical idle inference functionality option in the altgx megawizard plug-in manager. if enabled, this module infers electrical idle depending on the logic level driven on the rx_elecidleinfersel[2:0] input signal. the electrical idle inference module in each receiver channel indicates whether the electrical idle condition is inferred or not on the pipeelecidle signal of that channel. the electrical idle interface module drives the pipeelecidle signal high if it infers an electrical idle condition; otherwise, it drives it low. table 1?31 shows electrical idle inference conditions specified in the pci express (pipe) base specification 1.1 and implemented in the electrical idle inference module to infer electrical idle in various substates of the ltssm state machine. for the electrical idle inference module to correctly infer an electrical idle condition in each ltssm substate, you must drive the rx_elecidleinfersel[2:0] signal appropriately, as shown in table 1?31 . table 1?31. electrical idle inference conditions (part 1 of 2) ltssm state gen1 (2.5 gbps) rx_elecidleinfersel[2:0] l0 absence of update fc or alternatively skip ordered set in 128 s window 3'b100 recovery.rcvrcfg absence of ts1 or ts2 ordered set in 1280 ui interval 3'b101 recovery.speed when successful speed negotiation = 1'b1 absence of ts1 or ts2 ordered set in 1280 ui interval 3'b101
1?100 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation in the ?recovery.speed? substate of the ltssm state machine with unsuccessful speed negotiation ( rx_elecidleinfersel[2:0] =3'b110 ), the pci express (pipe) base specification requires the receiver to infer an electrical idle condition ( pipeelecidle = high) if absence of an exit from electrical idle is detected in a 2000 ui interval for gen1 data rate. the electrical idle inference module detects an absence of exit from electrical idle if four /k28.5/ com code groups are not received in the specified interval. in other words, when configured for gen1 data rate and rx_elecidleinfersel[2:0] = 3'b110, the electrical idle inference module asserts pipeelecidle high if it does not receive four /k28.5/ com code groups in a 2000 ui interval. when configured for gen1 data rate and rx_elecidleinfersel[2:0] = 3'b111 in loopback.active substate of the ltssm state machine, the electrical idle inference module asserts pipeelecidle high if it does not receive four /k28.5/ com code groups in a 128 s interval. 1 the electrical idle inference module does not have the capability to detect electrical idle exit condition based on reception of the electrical idle exit ordered set (eieos), as specified in the pci express (pipe) base specification. if you select the enable electrical idle inference functionality option in the altgx megawizard plug-in manager and drive rx_elecidleinfersel[2:0] = 3'b0xx , the electrical idle inference block uses eios detection from the fast recovery circuitry to drive the pipeelecidle signal if you do not select the enable electrical idle inference functionality option in the altgx megawizard plug-in manager, the electrical idle inference module is disabled. in this case, the rx_signaldetect signal from the signal detect circuitry in the receiver buffer is inverted and driven as the pipeelecidle signal. pci express cold reset requirements the pci express base specification 1.1 defines the following three types of conventional resets to the pci express system components: cold reset?fundamental reset after power up warm reset?fundamental reset without removal and re-application of power hot reset?in-band conventional reset initiated by higher layer by setting the hot reset bit in the ts1 or ts2 training sequences recovery.speed when successful speed negotiation = 1'b0 absence of an exit from electrical idle in 2000 ui interval 3'b110 loopback.active (as slave) absence of an exit from electrical idle in 128 s window 3'b111 table 1?31. electrical idle inference conditions (part 2 of 2) ltssm state gen1 (2.5 gbps) rx_elecidleinfersel[2:0]
chapter 1: arria ii gx transceiver architecture 1?101 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 fundamental reset is provided by the system to the component or adapter card using the auxiliary signal perst# . the pci express base specification 1.1 requires that perst# must be kept asserted for a minimum of 100 ms (tpvperl) after the system power becomes stable in a cold reset situation. additionally, all system components must enter the ltssm detect state within 20 ms and the link must become active within 100 ms after de-assertion of the perst# signal. this implies that each pci express system component must become active within 200 ms after the power becomes stable. 1 the link being active is interpreted as the physical layer device coming out of electrical idle in l0 state of the ltssm state machine. figure 1?80 shows the pci express cold reset timing requirements. time taken by a pci express port implemented using the arria ii gx device to go from power up to link active state is stated below: power on reset?begins after power rails become stable. typically takes 12 ms fpga configuration/programming?begins after power on reset. configuration time depends on the fpga density time taken from de-assertion of perst# to link active?typically takes 40 ms (pending characterization and verification of the pci express soft ip and hard ip) to meet the pci express specification of 200 ms from power on to link active, the arria ii gx device configuration time must be less than 148 ms (200 ms - 12 ms for power on reset - 40 ms for link to become active after perst# de-assertion). figure 1?80. pci express cold reset requirements 12 4 3 po w er rail perst# t pvperl 100 ms t 2-3 d" 20 ms t 2-4 d" 100 ms marker 1: power becomes stab le marker 2: perst# gets de-asserted marker 3: maximum time for marker 2 fo r the ltssm to enter the detect state marker 4: maximum time for marker 2 fo r the link to become active
1?102 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation table 1?32 shows typical configuration times for arria ii gx devices when updated using the fast passive parallel (fpp) configuration scheme at 125 mhz. f for more information about fpp configuration scheme, refer to the configuration, design security, remote system upgrades with arria ii gx devices chapter in volume 1 in the arria ii gx device handbook. 1 most flash memories available in the market can run up to 100 mhz. to configure the arria ii gx devices at 125 mhz, altera recommends using a max ii device to convert the 16-bit flash memory output at 62.5 mhz to 8-bit configuration data input to the arria ii gx devices at 125 mhz. xaui mode the xaui is an optional, self-managed interface that you can insert between the reconciliation sublayer and the phy layer to transparently extend the physical reach of the xgmii. xaui addresses several physical limitations of the xgmii. xgmii signaling is based on the hstl class 1 single-ended i/o standard, which has an electrical distance limitation of approximately 7 cm. because xaui uses a low-voltage differential signaling method, the electrical distance limitation is increased to approximately 50 cm. another advantage of xaui is simplification of backplane and board trace routing. xgmii is composed of 32 transmit channels, 32 receive channels, 1 transmit clock, 1 receive clock, 4 transmitter control characters, and 4 receive control characters for a 74-pin wide interface in total. xaui, on the other hand, only consists of 4 differential transmitter channels and 4 differential receiver channels for a 16-pin wide interface in total. this reduction in pin count significantly simplifies the routing process in the layout design. table 1?32. typical configuration times for arria ii gx devices configured with fast passive parallel device time (ms) (1) ep2agx20 24 ep2agx30 24 ep2agx45 24 ep2agx65 35 ep2agx95 35 ep2agx125 48 ep2agx190 48 ep2agx260 79 note to tab l e 1 ?3 2 : (1) pending characterization.
chapter 1: arria ii gx transceiver architecture 1?103 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?81 shows the relationships between the xgmii and xaui layers. the xgmii interface consists of four lanes of 8 bits. at the transmit side of the xaui interface, the data and control characters are converted within the xgmii extender sublayer (xgxs) into an 8b/10b encoded data stream. each data stream is then transmitted across a single differential pair running at 3.125 gbps (3.75 gbps for higig/higig+). at the xaui receiver, the incoming data is decoded and mapped back to the 32-bit xgmii format. this provides a transparent extension of the physical reach of the xgmii and also reduces the interface pin count. xaui functions as a self-managed interface because code group synchronization, channel deskew, and clock domain decoupling is handled with no upper layer support requirements. this functionality is based on the pcs code groups that are used during the ipg time and idle periods. pcs code groups are mapped by the xgxs to xgmii characters specified in table 1?33 . figure 1?81. xaui and xgmii layers osi reference model layers application presentation session transport network data link physical pma pmd medium 10 gb/s optional xgmii extender physical layer device mac control (optional) logical link control (llc) lan carrier sense multiple access/collision detect (csma/cd) layers higher layers reconciliation media access control (mac) pcs 10 gigab it media independent interface xgmii extender sublayer xgmii extender sublayer 10 gigab it attachment unit interface 10 gigab it media independent interface medium dependent interface table 1?33. xgmii character to pcs code-group mapping (part 1 of 2) xgmii txc xgmii txd (1) pcd code group description 0 00 through ff dxx,y normal data transmission 1 07 k28.0 or k28.3 or k28.5 idle in ||i|| 1 07 k28.5 idle in ||t|| 1 9c k28.4 sequence
1?104 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?82 shows an example of mapping between xgmii characters and the pcs code groups that are used in xaui. the idle characters are mapped to a pseudo-random sequence of /a/, /r/, and /k/ code groups. the pcs code groups are sent using pcs ordered sets. pcs ordered sets consist of combinations of special and data code groups defined as a column of code groups. these ordered sets are composed of four code groups beginning in lane 0. table 1?34 lists the defined idle ordered sets (||i||) that are used for the self-managed properties of xaui. 1f bk 2 7 . 7s t a r t 1f dk 2 9 . 7t e r m i n a t e 1f ek 3 0 . 7e r r o r 1 any other value k30.7 invalid xgmii character note to tab l e 1 ?3 3 : (1) the values in the xgmii txd column are in hexadecimal. table 1?33. xgmii character to pcs code-group mapping (part 2 of 2) xgmii txc xgmii txd (1) pcd code group description figure 1?82. example of mapping xgmii characters to pcs code groups dp t/rxd<7..0> |s ddd - - - - - - - - - - - - d dp t/rxd<15..8> |dp ddd t dp t/rxd<23..16> |dp ddd | dp t/rxd<31..24> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dp ddd ddd ddd ddd ddd | lane 0 k r s ak rr lane 1 k r dp ak rr lane 2 k r k a k rr lane 3 k r k a k k k k k r r r r rr dp ddd - - - - - - - - - - - - d dp ddd t dpdp dd dpdp d d dd ddd ddd ddd ddd xgmii pcs table 1?34. defined idle ordered set code ordered set number of code groups encoding ||i|| idle substitute for xgmii idle ||k|| synchronization column 4 /k28.5/k28.5/k28.5/k28.5/ ||r|| skip column 4 /k28.0/k28.0/k28.0/k28.0/ ||a|| align column 4 /k28.3/k28.3/k28.3/k28.3/
chapter 1: arria ii gx transceiver architecture 1?105 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 arria ii gx transceivers configured in xaui mode provide the following protocol features: xgmii-to-pcs code conversion at the transmitter pcs-to-xgmii code conversion at the receiver 8b/10b encoding and decoding ieee p802.3ae-compliant synchronization state machine 100 ppm clock rate compensation channel deskew of four lanes of the xaui link
1?106 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?83 shows the xaui mode configuration supported in arria ii gx devices. figure 1?83. arria ii gx xaui mode configuration xaui disa b led ena b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single width f u nctional modes protocol pipe xaui gige srio sonet /sdh sdi 8-bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit ena b led ena b led channel bonding disa b led deskew fifo ena b led pma-pcs interface width functional mode data rate (gbps) low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 156.25- 187.5 16-bit automatic synchronization state machine (10-bit/k28.5/) x4 3.125 - 3.75
chapter 1: arria ii gx transceiver architecture 1?107 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 xaui m ode datapath figure 1?84 shows the altgx megafunction transceiver datapath when configured in xaui mode. xgmii-to-pcs code conversion at the transmitter in xaui mode, the 8b/10b encoder in the arria ii gx transmitter datapath is controlled by a transmitter state machine that maps various 8-bit xgmii codes to 10-bit pcs code groups. this state machine complies with the ieee p 802.3ae pcs transmit source state diagram shown in figure 1?85 . figure 1?84. transceiver datapath in xaui mode rx phase compensation fifo byte de- serializer de- serializer cdr /2 ch0 parallel recovered clock low -speed parallel clock from cmu 0 clock divider receiver channel pma receiver channel pcs fpga fabric tx_coreclk[3:2] /2 ch0 parallel recovered clock ch2 parallel recovered clock low -speed parallel clock from cmu 0 clock divider rx_coreclk[3:2] rx_coreclk[1:0] /2 coreclko u t cmu1_pll cmu0_pll cmu1_channel cmu0_channel cmu0 clock divider low -speed parallel clock inp u t reference clock fpga fa b ric-transceiver interface clock receiver channel pma cmu1 clock divider serializer transmitter channel pcs transmitter channel pma /2 w rclk w rclk rdclk rdclk low -speed parallel clock from cmu 0 click divider receiver channel pcs tx_coreclk[1:0] tx phase compensation fifo byte serializer 8b/10b encoder serializer transmitter channel pcs transmitter channel pma /2 w rclk w rclk rdclk rdclk low -speed parallel clock from cmu 0 clock divider high-speed serial clock channel 0 channel 1 channel 2 channel 3 channel 2 channel 3 channel 0 channel 1 ch2 parallel recovered clock word aligner channel aligner rate match fifo 8b/10b decoder input reference clock rx phase compensation fifo byte de- serializer 8b/10b decoder rate match fifo deskew fifo word aligner de- serializer cdr 8b/10b encoder byte serializer tx phase compensation fifo
1?108 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?85. xgmii-to-pcs code conversion in xaui mode (note 1) note to figure 1?85 : (1) source: ieee p802.3ae ? -2002, ieee standard for information technology - telecomm unications and information exchange between systems - local and metropolitan area networks - specific requirements part 3: carrier sense multiple access wi th collision detection (cs ma/cd) access method and physical layer specifications. send_random_k tx_code_gro up<39:0> ? ||k|| send_random_r tx_code_gro up<39:0> ? ||r|| send_random_a tx_code_gro up<39:0> ? ||a|| a_cnt 0 * cod_sel=1 a_cnt 0 * cod_sel=1 a_cnt 0 * cod_sel=1 a_cnt=0 a_cnt=0 a_cnt 0 * cod_sel=1 !q_det * cod_sel=1 q_det q_det !q_det !q_det * cod_set=1 a b b b a a b a cod_set=1 cod_set=1 b a pudr send_k tx_code_gro up<39:0> ? ||k|| next_ifg ? a (next_ifg + a_c nt 0) next_ifg = a_c nt 0 pudr send_a tx_code_gro up<39:0> ? ||a|| next_ifg ? k send_q tx_code_gro up<39:0> ? tqmsg q_det ? k pudr pudr send_q if tx=||t|| the n cvtx_terminate tx_code_gro up<39:0> ? encode(tx) !reset !(tx=||idle|| + tx=||q|| pudr pudr send_random_q tx_code_gro up<39:0> ? tqmsg q_det ? false pudr reset uct uct
chapter 1: arria ii gx transceiver architecture 1?109 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 table 1?35 lists the xgmii-to-pcs code group conversion in xaui functional mode. the xgmii txc control signal is equivalent to the tx_ctrlenable signal; the xgmii txd control signal is equivalent to the tx_datain[7:0] signal. pcs-to-xgmii code conversion at the receiver in xaui mode, the 8b/10b decoder in the arria ii gx receiver datapath is controlled by a xaui receiver state machine that converts received pcs code groups into specific 8-bit xgmii codes. table 1?36 lists the pcs-to-xgmii code group conversion in xaui functional mode. the xgmii rxc control signal is equivalent to the rx_ctrldetect signal; the xgmii rxd control signal is equivalent to the rx_dataout[7:0] signal. table 1?35. xgmii character to pcs code-group mapping xgmii txc xgmii txd (1) pcd code group description 0 00 through ff dxx,y normal data transmission 1 07 k28.0 or k28.3 or k28.5 idle in ||i|| 1 07 k28.5 idle in ||t|| 1 9c k28.4 sequence 1f bk 2 7 . 7s t a r t 1f dk 2 9 . 7t e r m i n a t e 1f ek 3 0 . 7e r r o r 1 any other value k30.7 invalid xgmii character note to tab l e 1 ?3 5 : (1) the values in the xgmii txd column are in hexadecimal. table 1?36. pcs code group to xgmii character mapping xgmii rxc xgmii rxd (1) pcd code group description 0 00 through ff dxx,y normal data transmission 1 07 k28.0 or k28.3 or k28.5 idle in ||i|| 1 07 k28.5 idle in ||t|| 1 9c k28.4 sequence 1f bk 2 7 . 7s t a r t 1f dk 2 9 . 7t e r m i n a t e 1f ek 3 0 . 7e r r o r 1 fe invalid code group received code group note to tab l e 1 ?3 6 : (1) the values in the xgmii rxd column are in hexadecimal.
1?110 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation word aligner the word aligner in xaui functional mode is configured in automatic synchronization state machine mode. the quartus ii software automatically configures the synchronization state machine to indicate synchronization when the receiver acquires four /k28.5/ comma code groups without intermediate invalid code groups. the synchronization state machine implemented in xaui mode is compliant to the pcs synchronization state diagram specified in clause 48 of the ieee p802.3ae specification and is shown in figure 1?86 . figure 1?86. ieee 802.3ae pcs synchronization state diagram (note 1) note to figure 1?86 : (1) source: ieee p802.3ae ? -2002, ieee standard for information technology - telecomm unications and information exchange between systems - local and metropolitan area networks - specific requirements part 3: carrier sense multiple access wi th collision detection (cs ma/cd) access method and physical layer specifications. po w er_on=true+mr_main_rest=true + (signal_detectchan ge=true + mr_loopb ack=false +pudi) (signal_detect=ok+mr_loop b ack=true)* * pudi([/comma/] pudi([/|dv|/] rx_even=false+pudi([/comma/] pudi(![/comma/] *?[/in valid/] pudi([/|dv|/] cggood *good_cgs = 3 cggood *good_cgs = 3 cggood *good_cgs = 3 cggood *good_cgs = 3 cggood cggood pudi(![/|dv|/] pudi(![/|dv|/] [pudi * signal_detect=fail + mr_loopb ack=false] + pudi(![/comma/]) loss_of_sync sync_status ? fail rx_even ? ! rx_even sudi comma_detect_1 rx_even ? true sudi syn c_acquired_2 rx_even ? ! rx_even sudi good_cgs ? 0 syn c_acquired_3 syn c_acquired_4 cgbad cgbad cggood cgbad cgbad cggood cgbad cgbad cgbad syn c_acquired_2a syn c_acquired_3a syn c_acquired_4a acquire_sy nc_1 sudi comma_detect_2 sudi 2 cggood *good_cgs = 3 cggood *good_cgs = 3 3 3 2 pudi(![/comma/] *?[/in valid/] rx_even ? true rx_even=false+pudi([/comma/] cgbad cgbad acquire_sy nc_2 sudi rx_even ? ! rx_even pudi(![/|dv|/] comma_detect_3 sudi rx_even ? true pudi([/|dv|/] syn c_acquired_1 sudi sync_status ? ok rx_even ? ! rx_even rx_even ? ! rx_even rx_even ? ! rx_even sudi good_cgs ? good_cgs + 1 rx_even ? ! rx_even sudi good_cgs ? 0 rx_even ? ! rx_even sudi good_cgs ? good_cgs + 1 rx_even ? ! rx_even sudi good_cgs ? 0 rx_even ? ! rx_even sudi good_cgs ? good_cgs + 1
chapter 1: arria ii gx transceiver architecture 1?111 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 receiver synchronization is indicated on the rx_syncstatus port of each channel. a high on the rx_syncstatus port indicates that the lane is synchronized; a low on the rx_syncstatus port indicates that it has fallen out of synchronization. the receiver loses synchronization when it detects four invalid code groups separated by less than four valid code groups, or when it is reset. deskew fifo code groups received across four lanes in a xaui link can be misaligned with respect to one another because of skew in the physical medium or differences between the independent clock recoveries per lane. the xaui protocol allows a maximum skew of 40 ui (12.8 ns) as seen at the receiver of the four lanes. the xaui protocol requires the physical layer device to implement a deskew circuitry to align all four channels. to enable the deskew circuitry at the receiver to align the four channels, the transmitter sends a /a/ (/k28.3/) code group simultaneously on all four channels during inter-packet gap. the skew introduced in the physical medium and the receiver channels can be /a/ code groups to be received misaligned with respect to each other. the deskew operation is performed by the deskew fifo in xaui functional mode. the deskew fifo in each channel receives data from its word aligner. the deskew operation begins only after link synchronization is achieved on all four channels, as indicated by a high on the rx_syncstatus signal from the word aligner in each channel. until the first /a/ code group is received, the deskew fifo read and write pointers in each channel are not incremented. after the first /a/ code group is received, the write pointer starts incrementing for each word received but the read pointer is frozen. if the /a/ code group is received on each of the four channels within 10 recovered clock cycles of each other, the read pointer of all four deskew fifos is released simultaneously, aligning all four channels. figure 1?87 shows lane skew at the receiver input and how the deskew fifo uses the /a/ code group to align the channels. figure 1?87. receiver input lane skew in xaui mode lanes are deske w ed b y lining up the "align"/a/, code groups lanes ske w at receiver inp ut a lane 0 k k r a k r r k k k rr lane 1 k k r a k r r k k k rr lane 0 k k r k r r k k k rr lane 1 k k r a k r r k k k rr lane 2 k k r a k r r k k k rr lane 3 k k r a k r r k k k rr lane 2 k k r a k r r k k k rr lane 3 k k r a k r r k k k rr
1?112 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation after alignment of the first ||a|| column, if three additional aligned ||a|| columns are observed at the output of the deskew fifos of the four channels, the rx_channelaligned signal is asserted high, indicating channel alignment is acquired. after acquiring channel alignment, if four misaligned ||a|| columns are seen at the output of the deskew fifos in all four channels with no aligned ||a|| columns in between, the rx_channelaligned signal is deasserted low, indicating loss of channel alignment. the deskew fifo operation in xaui functional mode is compliant to the pcs deskew state machine diagram specified in clause 48 of the ieee p802.3ae, as shown in figure 1?88 . figure 1?88. deskew fifo in xaui mode (note 1) note to figure 1?88 : (1) source: ieee p802.3ae ? -2002, ieee standard for information technology - telecomm unications and information exchange between systems - local and metropolitan area networks - specific requirements part 3: carrier sense multiple access wi th collision detection (cs ma/cd) access method and physical layer specifications. reset + (sync_statu s=fail * sudi) sync_status ok * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) sudi(![/||a||/]) sudi(![/||a||/]) sudi(![/||a||/]) deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi deske w_error * sudi sudi(![/||a||/]) loss_of_alignment align_status ? fail enab le_deske w ? true audi align_detect_1 enab le_deske w ? false audi align_detect_2 audi align_detect_3 audi c !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) !deske w_error * sudi(![/||a||/]) sudi(![/||a||/]) align _acquired_1 enab le_deske w ? false audi align _acquired_2 audi align _acquired_3 audi a b c !deske w_error * sudi(![/||a||/]) sudi(![/||a||/]) align _acquired_4 audi b sudi(![/||a||/]) a sudi(![/||a||/])
chapter 1: arria ii gx transceiver architecture 1?113 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 rate match fifo in xaui mode, the rate match fifo is capable of compensating up to 100 ppm (total 200 ppm total) difference between the upstream transmitter and the local receiver reference clock. the xaui protocol requires the transmitter to send /r/ (/k28.0/) code groups simultaneously on all four lanes (denoted as ||r|| column) during inter-packet gaps, adhering to rules listed in the ieee p802.3ae specification. the rate match fifo operation in xaui mode is compliant to the ieee p 802.3ae specification. the rate match operation begins after: the synchronization state machine in the word aligner of all four channels indicates synchronization acquired by driving its rx_syncstatus signal high the deskew fifo indicates alignment acquired by driving the rx_channelaligned signal high the rate match fifo looks for the ||r|| column (simultaneous /r/ code groups on all four channels) and deletes or inserts ||r|| columns to prevent the rate match fifo from overflowing or under running. the rate match fifo can insert or delete as many ||r|| columns as necessary to perform the rate match operation. two flags, rx_rmfifodatadeleted and rx_rmfifodatainserted , that indicate rate match fifo deletion and insertion events, respectively, are forwarded to the fpga fabric. if an ||r|| column is deleted, the rx_rmfifodeleted flag from each of the four channels goes high for one clock cycle per deleted ||r|| column. if an ||r|| column is inserted, the rx_rmfifoinserted flag from each of the four channels goes high for one clock cycle per inserted ||r|| column. figure 1?89 shows an example of rate match deletion in the case where three ||r|| columns are required to be deleted. figure 1?89. example of rate match deletion in xaui mode datain[3] rx_rmfifodatadeleted k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 first ||r|| column second ||r|| column third ||r|| column fourth ||r|| column k28.5 datain[2] k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 k28.5 datain[1] k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 k28.5 datain[0] k28.0 k28.3 k28.5 k28.5 k28.0 k28.0 k28.0 k28.5 k28.5 datao ut[3] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 datao ut[2] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 datao ut[1] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5 datao ut[0] k28.5 k28.3 k28.5 k28.0 k28.5 k28.5
1?114 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?90 shows an example of rate match insertion in the case where two ||r|| columns are required to be inserted. gige mode ieee 802.3 defines the 1000 base-x phy as an intermediate, or transition, layer that interfaces various physical media with the media access control (mac) in a gigabit ethernet system. it shields the mac layer from the specific nature of the underlying medium. the 1000 base-x phy is divided into three sublayers: the physical coding sublayer the physical media attachment the physical medium dependent (pmd) the pcs sublayer interfaces with the mac through the gigabit medium independent interface (gmii). the 1000 base-x phy defines a physical interface data rate of 1.25 gbps. figure 1?90. example of rate match insertion in xaui mode datain[3] rx_rmfifodatadeleted k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 first ||r|| column second ||r|| column k28.5 datain[2] k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 k28.5 datain[1] k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 k28.5 datain[0] k28.0 k28.3 k28.5 k28.0 k28.0 k28.5 k28.0 k28.5 datao ut[3] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5 datao ut[2] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5 datao ut[1] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5 datao ut[0] k28.0 k28.3 k28.5 k28.5 k28.0 k28.5
chapter 1: arria ii gx transceiver architecture 1?115 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?91 shows the 1000 base-x phy position in a gigabit ethernet osi reference model. arria ii gx transceivers, when configured in gige functional mode, have built-in circuitry to support the following pcs and pma functions defined in the ieee 802.3 specification: 8b/10b encoding and decoding synchronization upstream transmitter and local receiver clock frequency compensation (rate matching) clock recovery from the encoded data forwarded by the receiver pmd serialization and deserialization 1 arria ii gx transceivers do not have built-in support for other pcs functions; for example, auto-negotiation state machine, collision-detect, and carrier-sense. if required, you must implement these functions in a pld logic array or external circuits. figure 1?91. 1000 base-x phy in a gigabit ethernet osi reference model osi reference model layers application presentation session transport network data link physical medium gmii 1000 base-x phy mac (optional) llc lan csma/cd layers higher layers reconciliation mac pcs pma pmd
1?116 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?92 shows the gige mode configuration supported in arria ii gx devices. figure 1?92. gige mode gige disabled ena b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single width f u nctional modes protocol pipe xaui gige srio sonet /sdh () sdi 8-bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit f u nctional mode ena b led disa b led channel bonding disa b led 125 pma-pcs interface width data rate (gbps) low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 8-bit 1.25 x1 automatic synchronization state machine (7-bit comma, 10-bit /k28.5/)
chapter 1: arria ii gx transceiver architecture 1?117 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 gige mode datapath figure 1?93 shows the transceiver datapath when configured in gige functional mode. table 1?37 shows the transceiver datapath clock frequencies in gige functional mode. 8b/10b encoder in gige mode, the 8b/10b encoder clocks in 8-bit data and a 1-bit control identifier from the transmitter phase compensation fifo and generates 10-bit encoded data. the 10-bit encoded data is fed to the serializer. refer to ?8b/10b encoder? on page 1?31 for more information about 8b/10b encoder functionality. gige protocol?ordered sets and special code groups table 1?38 lists ordered sets and special code groups specified in the ieee802.3 specification. figure 1?93. gige mode datapath tx phase compensation fifo 8b/10b encoder 8b/10b decoder serializer de- serializer transmitter channel pcs transmitter channel pma w rclk rdclk low -speed parallel clock high-sp eed serial cloc k tx_coreclk[0] rx phase compensation fifo rate match fifo word aligner cdr tx_clko u t[0] parallel recovered clock low -speed parallel clock rx_coreclk[0] receiver channel pcs receiver channel pma fpga fa b ric-transceiver interface clock fpga fabric local clock divider table 1?37. transceiver datapath clock frequencies in gige mode functional mode data rate high-speed serial clock frequency parallel recovered clock and low-speed parallel clock frequency fpga fabric-transceiver interface clock frequency gige 1.25 gbps 625 mhz 125 mhz 125 mhz table 1?38. gige ordered sets (part 1 of 2) code ordered set number of code groups encoding /c/ configuration ? alternating /c1/ and /c2/ /c1/ configuration 1 4 /k28.5/d21.5/ config_reg (1) /c2/ configuration 2 4 /k28.5/d2.2/ config_reg (1)
1?118 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation idle ordered-set generation the ieee 802.3 specification requires the gige phy to transmit idle ordered sets (/i/) continuously and repetitively whenever the gmii is idle. this ensures that the receiver maintains bit and word synchronization whenever there is no active data to be transmitted. in gige functional mode, any /dx.y/ following a /k28.5/ comma is replaced by the transmitter with either a /d5.6/ (/i1/ ordered set) or a /d16.2/ (/i2/ ordered set), depending on the current running disparity. the exception is when the data following the /k28.5/ is /d21.5/ (/c1/ ordered set) or /d2.2/ (/c2/) ordered set. if the running disparity before the /k28.5/ is positive, an /i1/ ordered set is generated. if the running disparity is negative, a /i2/ ordered set is generated. the disparity at the end of a /i1/ is the opposite of that at the beginning of the /i1/. the disparity at the end of a /i2/ is the same as the beginning running disparity (right before the idle code). this ensures a negative running disparity at the end of an idle ordered set. a /kx.y/ following a /k28.5/ is not replaced. 1 note that /d14.3/, /d24.0/, and /d15.8/ are replaced by /d5.6/ or /d16.2/ (for /i1/, /i2/ ordered sets). /d21.5/ (part of the /c1/ order set) is not replaced. figure 1?94 shows the automatic idle ordered set generation. /i/ idle ? correcting /i1/, preserving /i2/ /i1/ idle 1 2 /k28.5/d5.6 /i2/ idle 2 2 /k28.5/d16.2 encapsulation ? ? /r/ carrier_extend 1/ k 2 3 . 7 / /s/ start_of_packet 1/ k 2 7 . 7 / /t/ end_of_packet 1/ k 2 9 . 7 / /v/ error_propagation 1/ k 3 0 . 7 / note to tab l e 1 ?3 8 : (1) two data code groups represent the config_reg value. table 1?38. gige ordered sets (part 2 of 2) code ordered set number of code groups encoding figure 1?94. example of automatic ordered set generation k28.5 d14.3 k28.5 d24.0 k28.5 d15.8 k28.5 d21.5 tx_datain [ ] clock dx.y dx.y k28.5 d5.6 k28.5 d16.2 k28.5 d16.2 k28.5 tx_datao ut ordered set d21.5 /i1/ /i2/ /i2/ /c2/
chapter 1: arria ii gx transceiver architecture 1?119 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 reset condition after de-assertion of tx_digitalreset , the gige transmitter automatically transmits three /k28.5/ comma code groups before transmitting user data on the tx_datain port. this could affect the synchronization state machine behavior at the receiver. depending on when you start transmitting the synchronization sequence, there could be an even or odd number of /dx.y/ code groups transmitted between the last of the three automatically sent /k28.5/ code groups and the first /k28.5/ code group of the synchronization sequence. if there is an even number of /dx.y/ code groups received between these two /k28.5/ code groups, the first /k28.5/ code group of the synchronization sequence begins at an odd code group boundary ( rx_even = false). an ieee802.3-compliant gige synchronization state machine treats this as an error condition and goes into loss of sync state. figure 1?95 shows an example of even numbers of /dx.y/ between the last automatically sent /k28.5/ and the first user-sent /k28.5/. the first user-sent /k28.5/ code group received at an odd code group boundary in cycle n + 3 takes the receiver synchronization state machine in loss of sync state. the first synchronization ordered-set /k28.5/dx.y/ in cycles n + 3 and n + 4 is discounted and three additional ordered sets are required for successful synchronization. word aligner the word aligner in gige functional mode is configured in automatic synchronization state machine mode. the quartus ii software automatically configures the synchronization state machine to indicate synchronization when the receiver acquires three consecutive synchronization ordered sets. a synchronization ordered set is a /k28.5/ code group followed by an odd number of valid /dx.y/ code groups. the fastest way for the receiver to achieve synchronization is to receive three continuous {/k28.5/, /dx.y/} ordered set. receiver synchronization is indicated on the rx_syncstatus port of each channel. a high on the rx_syncstatus port indicates that the lane is synchronized; a low on the rx_syncstatus port indicates that the lane has fallen out of synchronization. the receiver loses synchronization when it detects four invalid code groups separated by less than three valid code groups, or when it is reset. figure 1?95. example of reset condition in gige mode clock tx_dataout tx_digitalreset k28.5 k28.5 k28.5 k28.5 xxx dx.y dx.y k28.5 k28.5 k28.5 dx.y dx.y dx.y n n + 1 n + 2 n + 3 n + 4
1?120 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation table 1?39 lists the synchronization state machine parameters when configured in gige mode. figure 1?96 shows the synchronization state machine implemented in gige mode. table 1?39. synchronization state machine parameters in gige functional mode synchronization state machine parameters setting number of valid {/k28.5/, /dx,y/} ordered-sets received to achieve synchronization 3 number of errors received to lose synchronization 4 number of continuous good code groups received to reduce the error count by 1 4 figure 1?96. synchronization state machine in gige mode (note 1) note to figure 1?96 : (1) source: ieee p802.3ae ? -2002, ieee standard for information technology - telecomm unications and information exchange between systems - local and metropolitan area networks - specific requirements part 3: carrier sense multiple access wi th collision detection (cs ma/cd) access method and physical layer specifications. po w er_on=true+mr_main_rest=true + (signal_detectcha n ge=true + mr_loop b ack=false +pudi) (signal_detect=ok+mr_loop b ack=true)* * pudi([/comma/] pudi([/|dv|/] rx_even=false+pudi([/comma/] pudi(![/comma/] *?[/in valid/] pudi([/|dv|/] cggood *good_cgs = 3 cggood *good_cgs = 3 cggood *good_cgs = 3 cggood *good_cgs = 3 cggood cggood pudi(![/|dv|/] pudi(![/|dv|/] [pudi * signal_detect=fail + mr_loopb ack=false] + pudi(![/comma/]) loss_of_sync sync_status ? fail rx_even ? ! rx_even sudi comma_detect_1 rx_even ? true sudi syn c_acquired_2 rx_even ? ! rx_even sudi good_cgs ? 0 syn c_acquired_3 syn c_acquired_4 cgbad cgbad cggood cgbad cgbad cggood cgbad cgbad cgbad syn c_acquired_2a syn c_acquired_3a syn c_acquired_4a acquire_sy nc_1 sudi comma_detect_2 sudi 2 cggood *good_cgs = 3 cggood *good_cgs = 3 3 3 2 pudi(![/comma/] *?[/in valid/] rx_even ? true rx_even=false+pudi([/comma/] cgbad cgbad acquire_sy nc_2 sudi rx_even ? ! rx_even pudi(![/|dv|/] comma_detect_3 sudi rx_even ? true pudi([/|dv|/] syn c_acquired_1 sudi sync_status ? ok rx_even ? ! rx_even rx_even ? ! rx_even rx_even ? ! rx_even sudi good_cgs ? good_cgs + 1 rx_even ? ! rx_even sudi good_cgs ? 0 rx_even ? ! rx_even sudi good_cgs ? good_cgs + 1 rx_even ? ! rx_even sudi good_cgs ? 0 rx_even ? ! rx_even sudi good_cgs ? good_cgs + 1
chapter 1: arria ii gx transceiver architecture 1?121 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 rate match fifo in gige mode, the rate match fifo is capable of compensating up to 100 ppm (total 200 ppm total) difference between the upstream transmitter and the local receiver reference clock. the gige protocol requires the transmitter to send idle ordered sets /i1/ (/k28.5/d5.6/) and /i2/ (/k28.5/d16.2/) during inter-packet gaps, adhering to the rules listed in the ieee 802.3 specification. the rate match operation begins after the synchronization state machine in the word aligner indicates synchronization is acquired by driving the rx_syncstatus signal high. the rate matcher deletes or inserts both symbols (/k28.5/ and /d16.2/) of the /i2/ ordered sets, even if it requires deleting only one symbol to prevent the rate match fifo from overflowing or under running. it can insert or delete as many /i2/ ordered sets as necessary to perform the rate match operation. two flags, rx_rmfifodatadeleted and rx_rmfifodatainserted , indicating rate match fifo deletion and insertion events, respectively, are forwarded to the fpga fabric. both the rx_rmfifodatadeleted and rx_rmfifodatainserted flags are asserted for two clock cycles for each deleted and inserted /i2/ ordered-set, respectively. figure 1?97 shows an example of rate match fifo deletion in the case where three symbols are required to be deleted. because the rate match fifo can only delete /i2/ ordered set, it deletes two /i2/ ordered sets (four symbols deleted). figure 1?98 shows an example of rate match fifo insertion in the case where one symbol is required to be inserted. because the rate match fifo can only delete /i2/ ordered set, it inserts one /i2/ ordered sets (two symbols inserted). figure 1?97. example of rate match deletion in gige mode datain datao u t rx_rmfifodatadeleted first /i2/ skip ordered set dx.y k28.5 k28.5 second /i2/ skip ordered set /i2/ skip symbol deleted d16.2 d16.2 k28.5 d16.2 dx.y third /i2/ skip ordered set dx.y k28.5 d16.2 dx.y figure 1?98. example of rate match insertion in gige mode datain datao u t rx_rmfifodatainserted first /i2/ ordered set dx.y k28.5 k28.5 second /i2/ ordered set d16.2 d16.2 dx.y k28.5 d16.2 d16.2 dx.y k28.5 d16.2 k28.5
1?122 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation sonet/sdh mode sonet/sdh is one of the most common serial-interconnect protocols used in backplanes deployed in communications and telecom applications. sonet/sdh defines various optical carrier (oc) subprotocols for carrying signals of different capacities through a synchronous optical hierarchy. sonet/sdh frame structure base oc-1 frames are byte-interleaved to form sonet/sdh frames. for example, 12 oc-1 frames are byte-interleaved to form 1 oc-12 frame; 48 oc-1 frames are byte- interleaved to form 1 oc-48 frame and so on. sonet/sdh frame sizes are constant, with a frame transfer rate of 125 s. figure 1?99 shows the sonet/sdh frame structure. transport overhead bytes a1 and a2 are used for restoring frame boundary from the serial data stream. frame sizes are fixed, so the a1 and a2 bytes appear within the serial data stream every 125 s . in an oc-12 system, 12 a1 bytes are followed by 12 a2 bytes. similarly, in an oc-48 system, 48 a1 bytes are followed by 48 a2 bytes. in sonet/sdh systems, byte values of a1 and a2 are fixed as follows: a1 = 11110110 or 8'hf6 a2 = 00101000 or 8'h28 you can employ arria ii gx transceivers as physical layer devices in a sonet/sdh system. these transceivers provide support for sonet/sdh protocol-specific functions and electrical features; for example, alignment to a1a2 or a1a1a2a2 pattern. arria ii gx transceivers are designed to support the following three sonet/sdh subprotocols: oc-12 at 622 mbps with 8-bit channel width oc-48 at 2488.32 mbps with 16-bit channel width figure 1?99. sonet/sdh mode nxa1 nxa2 nxj0/z0 9 ro ws nx3 bytes transport overhead nx3 bytes payload
chapter 1: arria ii gx transceiver architecture 1?123 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?100 shows sonet/sdh mode configurations supported in arria ii gx devices. figure 1?100. sonet/sdh mode configurations in arria ii gx devices disa b led disa b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single width f u nctional modes protocol pipe xaui gige srio sonet /sdh sdi 8-bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit f u nctional mode disa b led disa b led disa b led disa b led disa b led ena b led disa b led ena b led pma-pcs interface width data rate (gbps) channel bonding low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 8-bit 16-bit 77.75 155.5 manual alignment (16-bit a1a2, 32-bit a1a1a2a2) manual alignment (16-bit a1a2, 32-bit a1a1a2a2) x1 x1 0.622 (oc-12) 2.488 (oc-48) sonet/ sdh
1?124 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation sonet/sdh oc-12 datapath figure 1?101 shows the transceiver datapath when configured in sonet/sdh oc-12 mode. sonet/sdh oc-48 datapath figure 1?102 shows the transceiver datapath when configured in sonet/sdh oc-48 mode. figure 1?101. sonet/sdh oc-12 datapath tx phase compensation fifo serializer transmitter channel pcs transmitter channel pma w rclk rdclk low -speed parallel clock high-speed serial clock tx_coreclk rx phase compensation fifo w ord aligner de- serializer cdr tx_clkout parallel recovered clock rx_coreclk receiver channel pcs receiver channel pma fpga fa b ric-transmitter interface clock fpga fabric local clock divider fpga fa b ric-receiver interface clock rx_clko ut figure 1?102. sonet/sdh oc-48 datapath tx phase compensation fifo byte serializer serializer transmitter channel pcs transmitter channel pma /2 w rclk rdclk low -speed parallel clock high-speed serial clock tx_coreclk rx phase compensation fifo byte de- serializer w ord aligner de- serializer cdr w rclk rdclk /2 tx_clkout parallel recovered clock rx_coreclk byte ordering receiver channel pcs receiver channel pma fpga fa b ric-transmitter interface clock fpga fabric fpga fa b ric-receiver interface clock rx_clko ut local clock divider
chapter 1: arria ii gx transceiver architecture 1?125 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 sonet/sdh transmission bit order unlike ethernet, where the lsb of the parallel data byte is transferred first, sonet/sdh requires the msb to be transferred first and the lsb to be transferred last. to facilitate the msb-to-lsb transfer, you must enable the following options in the altgx megawizard plug-in manager: flip transmitter input data bits flip receiver output data bits depending on whether data bytes are transferred msb-to-lsb or lsb-to-msb, you must select the appropriate word aligner settings in the altgx megawizard plug-in manager. table 1?40 lists the correct word aligner settings for each bit transmission order. word alignment the word aligner in sonet/sdh oc-12 and oc-48 modes is configured in manual alignment mode as described in ?word aligner in single-width mode with 8-bit pma-pcs interface modes? on page 1?58 . in oc-12 and oc-48 configurations, you can configure the word aligner to either align to a 16-bit a1a2 pattern or a 32-bit a1a1a2a2 pattern. this is controlled by the rx_a1a2size input port to the transceiver. a low level on the rx_a1a2size port configures the word aligner to align to a 16-bit a1a2 pattern; a high level on the rx_a1a2size port configures the word aligner to align to a 32-bit a1a1a2a2 pattern. you can configure the word aligner to flip the alignment pattern bits programmed in the wizard and compare them with the incoming data for alignment. this feature offers flexibility to the sonet backplane system for either a msbit-to-lsbit or lsbit-to-msbit data transfer. table 1?40 lists word alignment patterns that you must program in the altgx megawizard plug-in manager based on the bit-transmission order and the word aligner bit-flip option. the behavior of the sonet/sdh word aligner control and status signals along with an operational timing diagram are explained in ?word aligner in single-width mode with 8-bit pma-pcs interface modes? on page 1?58 . oc-48 byte serializer and deserializer the oc-48 transceiver datapath includes the byte serializer and deserializer to allow the pld interface to run at a lower speed. the oc-12 configuration does not use the byte serializer and deserializer blocks. the byte serializer and deserializer blocks are explained in ?byte serializer? on page 1?30 and ?byte deserializer? on page 1?79 , respectively. table 1?40. word aligner settings serial bit transmission order word alignment bit flip word alignment pattern msbit-to-lsbit on 1111011000101000 (16'hf628) msbit-to-lsbit off 0001010001101111 (16'h146f) lsbit-to-msbit off 0010100011110110 (16'h28f6)
1?126 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation the oc-48 byte serializer converts 16-bit data words from the fpga fabric and translates the 16-bit data words into two 8-bit data bytes at twice the rate. the oc-48 byte deserializer takes in two consecutive 8-bit data bytes and translates them into a 16-bit data word to the fpga fabric at half the rate. oc-48 byte ordering because of byte deserialization, the most significant byte of a word might appear at the rx_dataout port along with the least significant byte of the next word. in an oc-48 configuration, the byte ordering block is built into the datapath and can be used to perform byte ordering. byte ordering in an oc-48 configuration is automatic, as explained in ?word-alignment-based byte ordering? on page 1?81 . in automatic mode, the byte ordering block is triggered by the rising edge of the rx_syncstatus signal. as soon as the byte ordering block sees the rising edge of the rx_syncstatus signal, it compares the least significant byte coming out of the byte deserializer with the a2 byte of the a1a2 alignment pattern. if the least significant byte coming out of the byte deserializer does not match the a2 byte set in the altgx megawizard plug-in manager, the byte ordering block inserts a pad character, as seen in figure 1?103 . insertion of this pad character enables the byte ordering block to restore the correct byte order. 1 the pad character is defaulted to the a1 byte of the a1a2 alignment pattern. sdi mode the society of motion picture and television engineers (smpte) defines various sdi standards for transmission of uncompressed video. the following three smpte standards are popular in video broadcasting applications: smpte 259m standard?more popularly known as the standard-definition (sd) sdi, is defined to carry video data at 270 mbps. smpte 292m standard?more popularly known as the high-definition (hd) sdi, is defined to carry video data at either 1485 mbps or 1483.5 mbps. figure 1?103. oc-48 byte ordering in automatic mode x x pad from byte deserializer rx_dataout (msb) rx_dataout (lsb) rx_clkout rx_syncstatus a1 a1 a1 a1 a2 a2 a2 a2 d0 d2 d1 byte ordering block rx_syncstatus rx_byteorderalignstat us to pld core a1 a1 a1 a2 a1 a2 d1 d2 d0 d3
chapter 1: arria ii gx transceiver architecture 1?127 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 smpte 424m standard?more popularly known as the third-generation (3g) sdi, is defined to carry video data at either 2970 mbps or 2967 mbps. you can configure arria ii gx transceivers in hd-sdi or 3g-sdi configuration using the altgx megawizard plug-in manager. table 1?41 shows altgx configurations supported by the arria ii gx transceivers in sdi mode. table 1?41. altgx configurations in sdi mode configuration data rate (mbps) refclk frequencies (mhz) fpga fabric-transceiver interface width hd 1485 74.25, 148.5 10-bit, 20-bit 1483.5 74.175, 148.35 10-bit, 20-bit 3g 2970 148.5, 297 only 20-bit interface allowed in 3g 2967 148.35, 296.7 only 20-bit interface allowed in 3g
1?128 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?104 shows sdi mode configurations supported in arria ii gx devices. figure 1?104. sdi mode sdi disa b led disa b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single width f u nctional modes protocol pipe xaui gige srio sonet /sdh sdi 8-bit 10-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit f u nctional mode disa b led disa b led disa b led disa b led disa b led ena b led channel bonding disa b led disa b led ena b led disa b led pma-pcs interface width data rate (gbps) low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 148.5/ 148.35 74.25/ 74.175 10-bit 20-bit bit-slip x1 hd-sdi (1.485/1.4835) x1 3g-sdi (2.97/2.967) bit-slip 20-bit 148.5/ 148.35
chapter 1: arria ii gx transceiver architecture 1?129 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 sdi mode datapath figure 1?105 shows the transceiver datapath when configured in sdi mode. transmitter datapath the transmitter datapath, in hd-sdi configuration with 10-bit wide fpga fabric-transceiver interface, consists of the transmitter phase compensation fifo and the 10:1 serializer. the transmitter datapath, in hd-sdi and 3g-sdi configurations with 20-bit wide fpga fabric-transceiver interface, also includes the byte serializer. 1 in sdi mode, the transmitter is purely a parallel-to-serial converter. sdi transmitter functions, such as scrambling and cyclical redundancy check (crc) code generation, must be implemented in the fpga logic array. receiver datapath in the 10-bit channel width sdi configuration, the receiver datapath consists of the clock recovery unit (cru), 1:10 deserializer, word aligner in bit-slip mode, and receiver phase compensation fifo. in the 20-bit channel width sdi configuration, the receiver datapath also includes the byte deserializer. 1 sdi receiver functions, such as de-scrambling, framing, and crc checker, must be implemented in the fpga logic array. receiver word alignment and framing in sdi systems, the word aligner in the receiver datapath is not useful because word alignment and framing happens after de-scrambling. altera recommends driving the altgxb megafunction rx_bitslip signal low to avoid the word aligner from inserting bits in the received data stream. figure 1?105. sdi mode datapath tx phase compensation fifo byte serializer serializer transmitter channel pcs transmitter channel pma low-speed parallel clock high-speed serial clock tx_coreclk rx phase compensation fifo byte de- serializer w ord aligner de- serializer cdr tx_clkout w rclk rdclk w rclk rdclk parallel recovered clock rx_coreclk receiver channel pcs receiver channel pma fpga fa b ric-transmitter interface clock fpga fabric fpga fa b ric-receiver interface clock rx_clko ut local clock divider /2 /2
1?130 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation serial rapidio mode the rapidio trade association defines a high-performance, packet-switched interconnect standard to pass data and control information between microprocessors, digital signal, communications, and network processors, system memories, and peripheral devices. serial rapidio physical layer specification defines three line rates: 1.25 gbps 2.5 gbps 3.125 gbps it also defines two link widths?single-lane (1) and bonded four-lane (4) at each line rate. arria ii gx transceivers support only single-lane (1) configuration at all three line rates. four 1 channels configured in serial rapidio mode can be instantiated to achieve a 4 serial rapidio link. the four transmitter channels in this 4 serial rapidio link are not bonded. the four receiver channels in this 4 serial rapidio link do not have lane alignment or deskew capability. figure 1?106 shows the altgx transceiver data path when configured in serial rapidio mode. arria ii gx transceivers, when configured in serial rapidio functional mode, provide the following pcs and pma functions: 8b/10b encoding/decoding word alignment lane synchronization state machine clock recovery from the encoded data serialization/deserialization figure 1?106. serial rapidio mode datapath tx phase compensation fifo 8b/10b encoder 8b/10b decoder serializer de- serializer transmitter channel pcs transmitter channel pma w rclk rdclk low -speed parallel clock high-sp eed serial cloc k tx_coreclk[0] rx phase compensation fifo rate match fifo word aligner cdr tx_clko u t[0] parallel recovered clock low -speed parallel clock rx_coreclk[0] receiver channel pcs receiver channel pma fpga fa b ric-transceiver interface clock fpga fabric local clock divider byte serializer /2 /2 byte de- serializer /2
chapter 1: arria ii gx transceiver architecture 1?131 functional modes ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?107 shows the serial rapidio mode configuration supported in arria ii gx devices. 1 arria ii gx transceivers do not have built-in support for other pcs functions; for example, pseudo-random idle sequence generation and lane alignment in 4 mode. depending on your system requirements, you must implement these functions in the logic array or external circuits. synchronization state machine in serial rapidio mode, the altgx megawizard plug-in manager defaults the word alignment pattern to k28.5. the word aligner has a synchronization state machine that handles the receiver lane synchronization. figure 1?107. serial rapidio mode serial rapidio disabled ena b led rate match fifo byte serdes byte ordering arria ii gx config u rations basic single width f u nctional modes protocol pipe xaui gige sonet /sdh () sdi 88-bit 10-bit 10-bit 10-bit 10-bit 8-bit 10-bit f u nctional mode ena b led ena b led channel bonding disa b led 62.5 pma-pcs interface width data rate (gbps) low-latency pcs word aligner (pattern length) 8b/10b encoder/decoder fpga fabric-transceiver interface width fpga fabric-transceiver interface frequency (mhz) 16-bit 1.25 x1 automatic synchronization state machine (10-bit /k28.5/) srio 10-bit disabled disa b led 62.5 16-bit serial rapidio disabled ena b led ena b led ena b led disa b led 125 16-bit 2.5 x1 automatic synchronization state machine (10-bit /k28.5/) disabled disa b led 125 16-bit serial rapidio disabled ena b led ena b led ena b led disa b led 156.25 16-bit 3.125 x1 automatic synchronization state machine (10-bit /k28.5/) disabled disa b led 16-bit 156.25 ena b led ena b led ena b led
1?132 chapter 1: arria ii gx transceiver architecture functional modes arria ii gx device handbook volume 2 ? march 2009 altera corporation the altgx megawizard plug-in manager automatically defaults the synchronization state machine to indicate synchronization when the receiver acquires 127 k28.5 (10'b010 1111 100 or 10'b1010000011) synchronization code groups without receiving an intermediate invalid code group. once synchronized, the state machine indicates loss of synchronization when it detects three invalid code groups separated by less than 255 valid code groups, or when it is reset. receiver synchronization is indicated on the rx_syncstatus port of each channel. a high on the rx_syncstatus port indicates that the lane is synchronized and a low indicates that it has fallen out of synchronization. table 1?42 lists the altgx megafunction synchronization state machine parameters when configured in serial rapidio mode. table 1?42. synchronization state machine parameters in serial rapidio mode parameters number number of valid k28.5 code groups received to achieve synchronization. 127 number of errors received to lose synchronization. 3 number of continuous good code groups received to reduce the error count by one. 255
chapter 1: arria ii gx transceiver architecture 1?133 loopback modes ? march 2009 altera corporation arria ii gx device handbook volume 2 figure 1?108 gives a conceptual view of the synchronization state machine implemented in serial rapidio functional mode. loopback modes arria ii gx devices provide various loopback options that allow you to verify the working of different functional blocks in the transceiver channel. the available loopback options are: serial loopback?available in all functional modes except pci express (pipe) mode reverse serial loopback?available in basic mode only reverse serial pre-cdr loopback?available in basic mode only pci express (pipe) reverse parallel loopback?supported in pci express (pipe) protocol only figure 1?108. synchronization state machine in serial rapidio mode loss of sync data = comma comma detect if data == comma kcntr++ else kcntr=kcntr synchronized data = valid; kcntr < 3 kcntr = 127 synchronized error detect if data == !valid ecntr++ gcntr=0 else if gcntr==255 ecntr-- gcntr=0 else gcntr++ data = !valid data=valid ecntr = 0 ecntr = 3 data = !valid
1?134 chapter 1: arria ii gx transceiver architecture loopback modes arria ii gx device handbook volume 2 ? march 2009 altera corporation serial loopback the serial loopback option is available for all functional modes except pci express (pipe) mode. figure 1?109 shows the datapath for serial loopback. the data from the fpga fabric passes through the transmitter channel and gets looped back to the receiver channel, bypassing the receiver buffer. the received data is available to the fpga logic for verification. using this option, you can check the working for all enabled pcs and pma functional blocks in the transmitter and receiver channels. when you enable the serial loopback option, the altgx megawizard plug-in manager provides the rx_seriallpbken port to dynamically enable serial loopback on a channel-by-channel basis. set the rx_seriallpbken signal to logic high to enable serial loopback. when serial loopback is enabled, the transmitter channel sends the data to both the tx_dataout output port and the receiver channel. the differential output voltage on the tx_dataout ports is based on the selected v od settings. the looped back data is received by the receiver cdr and is retimed through different clock domains. you must provide an alignment pattern for the word aligner to enable the receiver channel to retrieve the byte boundary. reverse serial loopback reverse serial loopback is available as a subprotocol under basic functional mode. in reverse serial loopback mode, the data is received through the rx_datain port, retimed through the receiver cdr, and sent out to the tx_dataout port. the received data is also available to the fpga logic. figure 1?110 shows the transceiver channel datapath for reverse serial loopback mode. note that the active block of the transmitter channel is only the transmitter buffer. you can change the output differential voltage on the transmitter buffer through the altgx megawizard plug- in manager. you cannot alter the pre-emphasis settings for the transmitter buffer. reverse serial loopback is often implemented when using a bit error rate tester (bert) on the upstream transmitter. figure 1?109. serial loopback datapath serializer receiver channel pcs transmitter channel pcs transmitter channel pma receiver channel pma fpga fabric tx phase compen- sation fifo byte serializer 8b/10b encoder serial loopback receiver cdr de- serializer word aligner deskew fifo rate match fifo byte de- serializer byte ordering rx phase compen- sation fifo 8b/10b decoder
chapter 1: arria ii gx transceiver architecture 1?135 loopback modes ? march 2009 altera corporation arria ii gx device handbook volume 2 reverse serial pre-cdr loopback the reverse serial pre-cdr loopback is available as a subprotocol under basic functional mode. in reverse serial pre-cdr loopback, the data received through the rx_datain port is looped back to the tx_dataout port before the receiver cdr. the received data is also available to the fpga logic. figure 1?111 shows the transceiver channel datapath for reverse serial pre-cdr loopback mode. note that the active block of the transmitter channel is only the transmitter buffer. you can change the output differential voltage on the transmitter buffer through the altgx megawizard plug-in manager. you cannot change the pre-emphasis settings for the transmitter buffer. figure 1?110. reverse serial loopback datapath (grayed-out blocks are not active in this mode) receiver channel pcs transmitter channel pcs transmitter channel pma receiver channel pma fpga fabric tx phase compen- sation fifo byte serialzier 8b/10b encoder serializer reverse serial loopback receiver cdr de- serialzier word aligner 8b/10b decoder byte de- serializer byte ordering rx phase compen- sation fifo
1?136 chapter 1: arria ii gx transceiver architecture loopback modes arria ii gx device handbook volume 2 ? march 2009 altera corporation pci express (pipe) reverse parallel loopback pci express (pipe) reverse parallel loopback is only available in pci express (pipe) functional mode for gen1 data rate. as shown in figure 1?112 , the received serial data passes through the receiver cdr, deserializer, word aligner, and rate matching fifo buffer. it is then looped back to the transmitter serializer and transmitted out through the tx_dataout port. the received data is also available to the fpga fabric through the rx_dataout port. this loopback mode is compliant with the pci express (pipe) specification 2.0. to enable this loopback mode, assert the tx_detectrxloopback port. 1 this is the only loopback option supported in pci express (pipe) functional mode. figure 1?111. reverse serial pre-cdr loopback datapath receiver channel pcs transmitter channel pcs transmitter channel pma receiver channel pma fpga fabric serializer reverse serial pre-cdr loopback receiver cdr de- serializer word aligner 8b/10b decoder byte de- serializer byte ordering rx phase compen- sation fifo
chapter 1: arria ii gx transceiver architecture 1?137 calibration blocks ? march 2009 altera corporation arria ii gx device handbook volume 2 in figure 1?112 , the grayed areas show the inactive paths when the pci express (pipe) reverse parallel loop back mode is enabled. calibration blocks arria ii gx devices contain calibration circuits that calibrate the oct resistors and the analog portions of the transceiver blocks to ensure that the functionality is independent of process, voltage, or temperature variations. calibration block location figure 1?113 shows the location and number of calibration blocks available for different transceiver block device families. 1 in figure 1?113 through figure 1?115 , the calibration block l0 refers to the calibration blocks on the left side. figure 1?112. pci express (pipe) reverse parallel loopback mode datapath transmitter channel pcs transmitter channel pma cdr receiver channel pcs receiver channel pma fpga fabric pci express hardip pipe interface pci express hardip pipe interface tx phase compensation fifo byte serializer 8b/10b encoder serializer reverse parallel loopback path de- serializer word aligner rate match fifo 8b/10b decoder byte de- serializer rx phase compen- sation fifo figure 1?113. calibration blocks arria ii gx device gxbl0 calibration block l0 2k
1?138 chapter 1: arria ii gx transceiver architecture calibration blocks arria ii gx device handbook volume 2 ? march 2009 altera corporation figure 1?114 shows arria ii gx device families that have three transceiver blocks on the left side. figure 1?115 shows arria ii gx device families that have four transceiver blocks on the left side. the quartus ii software automatically selects the appropriate calibration block based on the assignment of the transceiver tx_dataout and rx_datain pins. figure 1?114. calibration three-transceiver blocks figure 1?115. calibration four-transceiver blocks arria ii gx device calibration block l1 gxbl2 gxbl1 gxbl0 calibration block l0 2k 2k arria ii gx device calibration block l1 gxbl3 gxbl2 gxbl1 gxbl0 calibration block l0 2k 2k
chapter 1: arria ii gx transceiver architecture 1?139 calibration blocks ? march 2009 altera corporation arria ii gx device handbook volume 2 calibration the calibration block internally generates a constant internal reference voltage, independent of process, voltage, or temperature variations. it uses the internal reference voltage and external reference resistor (you must connect the resistor to the rref pin) to generate constant reference currents. these reference currents are used by the analog block calibration circuit to calibrate the transceiver blocks. the oct calibration circuit calibrates the oct resistors present in the transceiver channels. you can enable the oct resistors in the transceiver channels through the altgx megawizard plug-in manager. you must connect a separate 2 k (tolerance max 1%) external resistor on each rref pin in the arria ii gx device to ground. to ensure proper operation of the calibration block, the rref resistor connection in the board must be free from any external noise. input signals to the calibration block figure 1?116 shows the required inputs to the calibration block. the altgx megawizard plug-in manager provides the cal_blk_clk and cal_blk_powerdown ports to control the calibration block. cal_blk_clk ?you must use the cal_blk_clk port to provide input clock to the calibration clock. the frequency of cal_blk_clk must be in the range of 10 mhz to 125 mhz (this range is preliminary. final values will be available upon characterization). you can use dedicated clock routes such as the global or regional clock. if you do not have a suitable input reference clock or dedicated clock routing resources available, use divide-down logic from the fpga fabric to generate a slow clock and use local clocking routing. drive the cal_blk_clk port of all altgx instances that are associated with the same calibration block from the same input pin or logic. figure 1?116. input signals to the calibration blocks (note 1) note to figure 1?116 : (1) the rref pin must be connected through a 2k resistor to ground. the re sistor value is preliminary. final values will be available upon characterization. cali b ration block rref pin cal_blk_clk cal_blk_powerdown internal reference voltage generator reference signal oct calibration circuit analog block calibration circuit oct calibration control analog block calibration control
1?140 chapter 1: arria ii gx transceiver architecture document revision history arria ii gx device handbook volume 2 ? march 2009 altera corporation cal_blk_powerdown ?you can perform calibration multiple times with the cal_blk_powerdown port available through the altgx megawizard plug-in manager. assert this signal for approximately 500 ns (this is preliminary, final values will be available upon characterization). following de-assertion of cal_blk_powerdown , the calibration block restarts the calibration process. drive the cal_blk_powerdown port of all altgx instances that are associated with the same calibration block from the same input pin or logic. document revision history table 1?43 shows the revision history for this chapter. table 1?43. document revision history date and document version changes made summary of changes march 2009, v1.1 updated: ?dynamic reconfiguration controller architecture? all ? an 558: implementing dynamic reconfiguraiton in arria ii gx devices ? references ?transceiver channel reconfiguration? ta bl e 1? 2 and table 1?4 figure 1?69 and figure 1?70 added: ?offset cancellation in the receiver buffer and receiver cdr? ?basic double-width mode configurations? ? february 2009, v1.0 initial release. ?
? february 2009 altera corporation arria ii gx device handbook volume 2 2. arria ii gx transceiver clocking introduction this chapter provides detailed information about arria ? ii gx transceiver clocking architecture; namely, input reference clocking, transceiver channel datapath clocking, fpga fabric-transceiver interface clocking, and fpga fabric plls-transceiver plls cascading. this chapter includes the following sections: ?cmu pll and receiver cdr input reference clocking? on page 2?1 ?transceiver channel datapath clocking? on page 2?6 ?fpga fabric-transceiver interface clocking? on page 2?27 ?fpga fabric plls-transceiver plls cascading? on page 2?56 cmu pll and receiver cdr input reference clocking each transceiver block has: two clock multiplier unit (cmu) phase-locked loops (plls) ( cmu0 pll and cmu1 pll ), one in each clock multiplier unit channel (cmu channel) four clock data recovery (cdr) units, one in each receiver channel the cmu plls and receiver cdrs require an input reference clock for their operation. the cmu pll synthesizes the input reference clock to generate the high-speed serial clock used in the transmitter pma. the receiver cdr uses the input reference clock as a training clock when it is in lock-to-reference (ltr) mode. the cmu plls and receiver cdrs in each transceiver block can derive input reference from one of the following sources: refclk0 and refclk1 pins of the same transceiver block refclk0 and refclk1 pins of other transceiver blocks on the same side of the device using the inter-transceiver block (itb) clock network dedicated clk input pins on the fpga global clock network clock output pins from the left plls in the fpga fabric aiigx52002-1.0
2?2 chapter 2: arria ii gx transceiver clocking cmu pll and receiver cdr input reference clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?1 shows the input reference clock sources for cmu plls and receiver cdrs within a transceiver block. figure 2?1. input reference clock sources in a transceiver block note to figure 2?1 : (1) one global clock line is available for each cmu pll and receiver cdr in a transceiver block. this configuration allows each cmu pll and receiver cdr to derive its input reference clock from a separate fpga clk input pin. refclk0 refclk1 itb clock lines glob al clock line (1) pll cascade clock cdr cdr cmu0 pll cmu1 pll cdr 6 cdr transceiver block channel 3 channel 2 cmu1 block cmu0 block channel 1 channel 0 2 2 itb clock lines glob al clock line (1) pll cascade clock 6 itb clock lines glob al clock line (1) pll cascade clock 6 itb clock lines glob al clock line (1) pll cascade clock 6 itb clock lines glob al clock line (1) pll cascade clock 6 itb clock lines glob al clock line (1) pll cascade clock 6
chapter 2: arria ii gx transceiver clocking 2?3 cmu pll and receiver cdr input reference clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 2?2 shows the input reference clock sources for cmu plls and receiver cdrs in four transceiver blocks on the left side of the ep2agx260ff35 device. refclk0 and refclk1 pins each transceiver block has two dedicated refclk pins that you can use to drive the cmu pll, receiver cdr, input reference clocks, or all three. each of the two cmu plls and four receiver cdrs within a transceiver block can derive its input reference clock from either the refclk0 or refclk1 pin. figure 2?2. input reference clock sources across transceiver blocks /2 refclk0 refclk1 refclk0 refclk1 refclk0 refclk1 refclk0 refclk1 itb clock lines glob al clock line itb clock lines glob al clock line itb clock lines glob al clock line itb clock lines glob al clock line transceiver block gxbl3 t w o cmu plls and fo u r rx cdrs 6 6 transceiver block gxbl2 t w o cmu plls and fo u r rx cdrs 6 transceiver block gxbl1 t w o cmu plls and fo u r rx cdrs 6 transceiver block gxbl0 t w o cmu plls and fo u r rx cdrs 6 6 6 6 pll cascade clock pll cascade clock pll cascade clock pll cascade clock /2 /2 /2 /2 /2 /2 /2
2?4 chapter 2: arria ii gx transceiver clocking cmu pll and receiver cdr input reference clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation 1 the refclk pins provide the cleanest input reference clock path to the cmu plls. altera recommends using the refclk pins to drive the cmu pll input reference clock for improved transmitter output jitter performance. table 2?17 shows the electrical specifications for the input reference clock signal driven on the refclk pins. figure 2?3 shows an example termination scheme for a reference clock signal when configured as hcsl. tab le 2 ?1 . electrical specifications for the input reference clock protocol i/o standard coupling termination gige xaui serial rapidio sonet/sdh sdi basic 1.2-v pcml 1.5-v pcml 2.5-v pcml differential lvpecl lv ds ac on-chip pci express (pipe) (1) , (2) 1.2-v pcml 1.5-v pcml 2.5-v pcml differential lvpecl lv ds ac on-chip hcsl dc off-chip notes to ta bl e 2? 17 : (1) in pci express (pipe) mode, you have the option of selecting the hcsl standard for the reference clock if compliance to the pci express (pipe) protocol is required. the quartus ? ii software automatically selects dc coupling with external termination for the refclk pins signal if configured as hcsl. (2) refer to figure 2?3 for an example termination scheme. figure 2?3. termination scheme for a reference clock signal when configured as hcsl (note 1) , (2) notes to figure 2?3 : (1) no biasing is required if the reference clock signals are generated from a clock source that conforms to the pci express (pipe) specification. (2) select resistor values as recommended by the pci express (pipe) clock source vendor. pci express (hcsl) refclk source refclk + refclk - arria ii gx rs rs rp = 50 rp = 50 (2) (2)
chapter 2: arria ii gx transceiver clocking 2?5 cmu pll and receiver cdr input reference clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 inter-transceiver block (itb) clock lines the itb clock lines provide an input reference clock path from the refclk pins of one transceiver block to the cmu plls and receiver cdrs of other transceiver blocks. in designs that have channels located in different transceiver blocks, the itb clock lines eliminate the need to connect the on-board reference clock crystal oscillator to the refclk pin of each transceiver block. the itb clock lines also drive the clock signal on the refclk pins to clock logic in the fpga fabric. each refclk pin drives one itb clock line for a total of up to eight itb clock lines on the left side of the device, as shown in figure 2?4 . figure 2?4. inter-transceiver block clock lines (note 1) note to figure 2?4 : (1) this figure shows the itb clock lines on the left side of the ep2agx60ff35 device. the number of itb clock lines available in any arria ii gx device is equal to the number of refclk pins available in that device. to fpga fa b ric itb[7:0] 8 6 6 refclk0 refclk0 refclk1 2 2 refclk1 2 refclk0 refclk1 6 refclk0 6 refclk1 glob al clock line pll cascade clock transceiver block gxbl3 t w o cmu plls and fo ur rx cdrs 6 transceiver block gxbl2 t w o cmu plls and fo ur rx cdrs glob al clock line pll cascade clock 6 transceiver block gxbl1 t w o cmu plls and fo ur rx cdrs glob al clock line pll cascade clock 6 transceiver block gxbl0 t w o cmu plls and fo ur rx cdrs glob al clock line pll cascade clock 6 2 2 2 2 2 refclk1 refclk1
2?6 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation dedicated clk input pins on the fpga global clock network arria ii gx devices provide six differential clk[5:0] input pins located in non-transceiver i/o banks that you can use to provide the input reference clock to the transceiver blocks. the quartus ii software automatically chooses the global clock (gclk) network to route the input reference clock signal from the clk pins to the transceiver blocks. f for more information, refer to the ?dedicated clock input pins? section in the clock networks and plls in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook . one global clock resource is available for each cmu pll and receiver cdr within a transceiver block. this configuration allows each cmu pll and receiver cdr to derive its input reference clock from a separate fpga clk input pin. clock output from left plls in the fpga fabric use the synthesized clock output from one of the left plls in the fpga fabric to provide the input reference clock to the cmu plls and receiver cdrs. these devices provide a dedicated clock path from the left plls (pll_1 and pll_4) in the fpga fabric to the pll cascade network in the transceiver blocks located on the left side of the device. the additional clock multiplication factors available in the left plls allow more options for on-board crystal oscillator frequencies. for more information, refer to ?fpga fabric plls-transceiver plls cascading? on page 2?56 . transceiver channel datapath clocking the following sections describe transmitter and receiver channel datapath clocking in various configurations. datapath clocking varies with physical coding sublayer (pcs) configurations in different functional modes as well as channel bonding options. transmitter channel datapath clocking this section describes transmitter channel pma and pcs datapath clocking in non-bonded and bonded channel configurations. transmitter datapath clocking in bonded channel configurations is set up to provide low channel-to-channel skew when compared to non-bonded channel configurations. the following factors contribute to transmitter channel-to-channel skew: high-speed serial clock and low-speed parallel clock skew between channels unequal latency in the transmitter phase compensation fifo in non-bonded channel configurations, the high-speed serial clock and low-speed parallel clock in each channel are generated independently by its local clock divider, as shown in figure 2?5 on page 2?8 . this results in higher channel-to-channel clock skew. the transmitter phase compensation fifo in each non-bonded channel has its own pointers and control logic that can result in unequal latency in the transmitter phase compensation fifo of each channel. the higher transceiver clock skew and unequal latency in the transmitter phase compensation fifo in each channel can result in higher channel-to-channel skew in non-bonded channel configurations.
chapter 2: arria ii gx transceiver clocking 2?7 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 in bonded channel configurations, the high-speed serial clock and low-speed parallel clock for all bonded channels are generated by the same cmu0 clock divider block (see figure 2?6 on page 2?11 ), resulting in lower channel-to-channel clock skew. the transmitter phase compensation fifo in all bonded channels share common pointers and control logic generated in the cmu0 channel, resulting in equal latency in the transmitter phase compensation fifo of all bonded channels. the lower transceiver clock skew and equal latency in the transmitter phase compensation fifos in all channels provides lower channel-to-channel skew in bonded channel configurations. non-bonded channel configurations the following functional modes support non-bonded transmitter channel configuration: pci express (pipe) 1 gigabit ethernet (gige) serial rapidio (srio) sonet/sdh sdi basic (except basic 4 mode)
2?8 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?5 shows the transmitter channel datapath clocking in a non-bonded configuration. in non-bonded channel configurations, each channel can derive its clock independently from either cmu0 pll or cmu1 pll within the same transceiver block. the cmu pll synthesizes the input reference clock to generate a clock that runs at a frequency of half the configured data rate. this half rate clock from the cmu pll is fed to the local clock divider block in each channel. depending on the configured functional mode, the local clock divider block in each channel generates figure 2?5. transmitter datapath clocking in a non-bonded configuration fpga fa b ric transmitter channel pcs transmitter channel pma transmitter channel pcs transmitter channel pma / 2 w rclk w rclk rdclk rdclk transmitter channel pcs transmitter channel pma w rclk w rclk rdclk rdclk serializer transmitter channel pcs transmitter channel pma / 2 w rclk w rclk rdclk rdclk pci express hard ip pipe interface tx phase compensation fifo wrclk rdclk byte serializer wrclk rdclk channel 3 serializer high-speed serial clock local clock divider block low-speed parallel clock tx_clkout[3] fpga fabric-transceiver interface clock tx_coreclk[3] pci express hard ip pipe interface tx phase compensation fifo byte serializer channel 2 serializer high-speed serial clock local clock divider block low-speed parallel clock tx_clkout[2] fpga fabric-transceiver interface clock tx_coreclk[2] pci express hard ip pipe interface input reference clock cmu1 pll cmu1 clock divider cmu1 block cmu0 block cmu0 clock divider cmu0 pll input reference clock tx phase compensation fifo byte serializer channel 1 serializer high-speed serial clock local clock divider block low-speed parallel clock tx_clkout[1] fpga fabric-transceiver interface clock tx_coreclk[1] pci express hard ip pipe interface tx phase compensation fifo byte serializer channel 0 8b/10b encoder high-speed serial clock local clock divider block low-speed parallel clock tx_clkout[0] fpga fabric-transceiver interface clock tx_coreclk[0] 8b/10b encoder 8b/10b encoder 8b/10b encoder 2 / / 2
chapter 2: arria ii gx transceiver clocking 2?9 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 the low-speed parallel clock and high-speed serial clock. the serializer in the transmitter channel pma uses both the low-speed parallel clock and high-speed serial clock for its parallel-in, serial-out operation. the low-speed parallel clock clocks both the 8b/10b encoder (if enabled) and the read port of the byte serializer (if enabled) in the transmitter channel pcs. if the configured functional mode does not use the byte serializer, the low-speed parallel clock provides clock to the read port of the transmitter phase compensation fifo. the low-speed parallel clock is also driven directly on the tx_clkout port as the fpga fabric-transceiver interface clock. you can use the tx_clkout port to clock transmitter data and control logic in the fpga fabric. if the configured functional mode uses a byte serializer to reduce the fpga fabric-transceiver interface speed, the low-speed parallel clock is divided by two. this divide-by-two version of the low-speed parallel clock provides clock to the write port of the byte serializer and the read port of the transmitter phase compensation fifo. it is also driven on the tx_clkout port as the fpga fabric-transceiver interface clock. you can use tx_clkout to regulate transmitter data and control logic in the fpga fabric. table 2?2 shows the transmitter channel datapath clock frequencies in non-bonded functional modes that have a fixed data rate. tab le 2 ?2 . transmitter channel datapath clock frequencies in non-bonded functional modes functional mode data rate high-speed serial clock frequency low-speed parallel clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer pci express (pipe) 1 (gen 1) 2.5 gbps 1.25 ghz 250 mhz n/a (1) 125 mhz gige 1.25 gbps 625 mhz 125 mhz 125 mhz n/a serial rapidio 1.25 gbps 625 mhz 125 mhz n/a 62.5 mhz 2.5 gbps 1.25 ghz 250 mhz n/a 125 mhz 3.125 gbps 1.5625 ghz 312.5 mhz n/a 156.25 mhz sonet/sdh oc12 622 mbps 311 mhz 77.75 mhz 77.75 mhz n/a sonet/sdh oc48 2.488 gbps 1.244 ghz 311 mhz n/a 155.5 mhz hd-sdi 1.485 gbps 742.5 mhz 148.5 mhz 148.5 mhz 74.25 mhz 1.4835 gbps 741.75 mhz 148.35 mhz 148.35 mhz 74.175 mhz 3g-sdi 2.97 gbps 1.485 ghz 297 mhz n/a 148.5 mhz 2.967 gbps 1.4835 ghz 296.7 mhz n/a 148.35 mhz note to tab l e 2 ?2 : (1) 250 mhz when pci express hard ip is enabled.
2?10 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation bonded channel configurations arria ii gx devices support bonded channel configurations. arria ii gx devices support 4 pcs and pma channel bonding that allows bonding of four channels within the same transceiver block. these devices also support 8 channel bonding in pci express (pipe) mode that allows bonding of eight pcs and pma channels across two transceiver blocks on the same side of the device. arria ii gx devices with at least two transceiver blocks support 8 bonding. 4 bonded channel configuration the following functional modes support 4 bonded transmitter channel configuration: pci express (pipe) 4 xaui basic 4 figure 2?6 shows the transmitter channel datapath clocking in 4 channel bonding configurations. 1 the quartus ii compilation generates an error if you do not assign: tx_dataout[0] of the 4 bonded link (xaui or pci express [pipe] 4) to physical channel 0 of the transceiver block tx_dataout[1] to physical channel 1 of the transceiver block tx_dataout[2] to physical channel 2 of the transceiver block tx_dataout[3] to physical channel 3 of the transceiver block
chapter 2: arria ii gx transceiver clocking 2?11 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 in 4 bonded channel configurations, cmu0 pll or cmu1 pll synthesizes the input reference clock to generate a clock that runs at a frequency of half the configured data rate. the half-rate clock from either of the cmu plls is fed to the cmu0 clock divider in the cmu0 channel . depending on the configured functional mode, the cmu0 clock divider block generates the high-speed serial clock and the low-speed parallel clock. the serializer in the transmitter channel pma of the four bonded channels uses the same low-speed parallel clock and high-speed serial clock from the cmu0 block for their parallel-in, serial-out operation. the low-speed parallel clock provides clock to the 8b/10b encoder and the read port of the byte serializer (if enabled) in the transmitter channel pcs. figure 2?6. transmitter datapath clocking in 4 bonded configurations serializer transmitter channel pcs transmitter channel pma / 2 w rclk w rclk rdclk rdclk serializer transmitter channel pcs transmitter channel pma / 2 w rclk w rclk rdclk rdclk serializer transmitter channel pcs transmitter channel pma w rclk w rclk rdclk rdclk serializer transmitter channel pcs transmitter channel pma w rclk w rclk rdclk rdclk channel 1 pci express hard ip pipe interface tx phase compensation fifo byte serializer channel 3 high-speed serial clock low-speed parallel clock tx_coreclk[3] pci express hard ip pipe interface tx phase compensation fifo byte serializer channel 2 high-speed serial clock low-speed parallel clock tx_coreclk[2] coreclkout fpga fabric-transceiver interface clock input reference clock cmu1 pll cmu1 block cmu0 block low-speed parallel clock high-speed serial clock cmu0 clock divider cmu0 pll input reference clock fpga fabric pci express hard ip pipe interface tx phase compensation fifo byte serializer high-speed serial clock high-speed serial clock low-speed parallel clock byte serializer tx phase compensation fifo pipe interface pci express hard ip tx_coreclk[0] tx_coreclk[1] low-speed parallel clock channel 0 8b/10b encoder 8b/10b encoder 8b/10b encoder 8b/10b encoder / 2 / 2 / 2
2?12 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation if the configured functional mode does not use the byte serializer, the low-speed parallel clock from the cmu0 clock divider block clocks the read port of the transmitter phase compensation fifo in all four bonded channels. this low-speed parallel clock is also driven directly on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to clock transmitter data and control logic in the fpga fabric for all four bonded channels. if the configured functional mode uses the byte serializer, the low-speed parallel clock from the cmu0 clock divider is divided by two. this divide-by-two version of the low-speed parallel clock provides clock to the write port of the byte serializer and the read port of the transmitter phase compensation fifo in all four bonded channels. it is also driven on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to clock transmitter data and control logic in the fpga fabric for all four bonded channels. in 4 bonded channel configurations, the transmitter phase compensation fifos in all four bonded channels share common read and write pointers and enable signals generated in the cmu0 block channel of the transceiver block. this ensures equal transmitter phase compensation fifo latency across all four bonded channels, resulting in low transmitter channel-to-channel skew. table 2?3 shows the transmitter datapath clock frequencies in 4 bonded functional modes that have a fixed data rate. 8 bonded channel configuration the pci express (pipe) 8 functional mode supports 8 bonded channel configuration in arria ii gx devices with at least two transceiver blocks. the eight bonded channels are located in two transceiver blocks, referred to as the master transceiver block and slave transceiver block, with four channels each. the cmu0 clock divider in the cmu0 block of the master transceiver block provides the serial pma clock and parallel pcs clock to all eight bonded channels. the serializer in the transmitter channel pma of the eight bonded channels uses the same low-speed parallel clock and high-speed serial clock from the cmu0 channel of the master transceiver block for their parallel-in, serial-out operation. the low-speed parallel clock from the cmu0 channel of the master transceiver block clocks the 8b/10b encoder and read port of the byte serializer (if enabled) in the transmitter channel pcs of all eight channels. tab le 2 ?3 . transmitter datapath clock frequencies in 4 bonded functional modes functional mode data rate high-speed serial clock frequency low-speed parallel clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer pci express (pipe) 4 (gen 1) 2.5 gbps 1.25 ghz 250 mhz n/a (1) 125 mhz xaui 3.125 gbps 1.5625 ghz 312.5 mhz n/a 156.25 mhz note to tab l e 2 ?3 : (1) 250 mhz when pci express hard ip is enabled.
chapter 2: arria ii gx transceiver clocking 2?13 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 for an 8-bit fpga fabric-transceiver channel interface that does not use the byte serializer, the low-speed parallel clock from the cmu0 clock divider block in the master transceiver block clocks the read port of the transmitter phase compensation fifo in all eight bonded channels. this low-speed parallel clock is also driven directly on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to clock the transmitter data and control logic in the fpga fabric for all eight bonded channels. for a 16-bit fpga fabric-transceiver channel interface that uses the byte serializer, the low-speed parallel clock from the cmu0 clock divider block in the master transceiver block is divided by two. this divide-by-two version of the low-speed parallel clock provides clock to the write port of the byte serializer and the read port of the transmitter phase compensation fifo in all eight bonded channels. it is also driven on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to clock the transmitter data and control logic in the fpga fabric for all eight bonded channels. in the pci express (pipe) 8 bonded channel configuration, the transmitter phase compensation fifos in all eight bonded channels share common read and write pointers and enable signals generated in the cmu0 block of the master transceiver block. this ensures equal transmitter phase compensation fifo latency across all eight bonded channels, resulting in low transmitter channel-to-channel skew.
2?14 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?7 shows transmitter datapath clocking in pci express (pipe) 8 channel bonding configurations. figure 2?8 through figure 2?10 show allowed master and slave transceiver block locations and pci express (pipe) logical lane-to-physical transceiver channel mapping in all arria ii gx devices. 1 the quartus ii compilation generates an error if you do not map the pci express (pipe) logical lanes to the physical transceiver channels, as shown in figure 2?8 through figure 2?10 . figure 2?7. transmitter datapath clocking in a 8 bonded configuration pipe interface transmitter channel pcs w rclk w rclk rdclk rdclk low - speed parallel clock from cmu0 of master transceiver block cmu0 clock divider transmitter channel pcs transmitter channel pma w rclk w rclk rdclk rdclk master transceiver block slave transceiver block pci express hard ip pipe interface tx phase compensation fifo byte serializer serializer low-speed parallel clock from cmu0 of the master transceiver block tx_coreclk[7:4] cmu1 pll cmu1 clock divider cmu1 block cmu0 block cmu0 clock divider cmu0 pll fpga fabric pci express hard ip tx phase compensation fifo byte serializer serializer tx_coreclk[3:0] coreclkout fpga fabric-transceiver interface clock input reference clock cmu1 pll cmu1 block cmu0 block cmu1 clock divider low-speed parallel clock high-speed serial clock cmu0 pll input reference clock transmitter channel pma 8b/10b encoder 8b/10b encoder / 2 / 2 / 2
chapter 2: arria ii gx transceiver clocking 2?15 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 2?8 shows the pci express (pipe) 8 link in two transceiver block devices. figure 2?9 shows the pci express (pipe) 8 link in three transceiver block devices. figure 2?8. one pci express (pipe) 8 link in two transceiver block devices figure 2?9. two pci express (pipe) 8 link in three transceiver block devices (note 1) note to figure 2?9 : (1) arria ii gx devices with three transceiver blocks allow a maximum of one pci express (pipe) 8 link occupying two transceiver blocks. you can configure the other transceiver block to implement other functional modes. ep2agx45df25 ep2agx65df25 ep2agx95df25 ep2agx125df25 ep2agx45df29 ep2agx65df29 transceiver block gxbl1 (slave) transceiver block gxbl0 (master) channel3 channel2 channel1 channel0 channel3 channel2 channel1 channel0 pci express lane 7 pci express lane 6 pci express lane 5 pci express lane 4 pci express lane 3 pci express lane 2 pci express lane 1 pci express lane 0 ep2agx95ef29 ep2agx125ef29 ep2agx190ef29 ep2agx260ef29 ep2agx95ef35 ep2agx125ef35 transceiver block gxbl2 channel3 channel2 channel1 channel0 transceiver block gxbl1 (slave) channel3 channel2 channel1 channel0 first pci express (pipe) x8 link transceiver block gxbl0(master) channel3 channel2 channel1 channel0 pci express lane 7 pci express lane 6 pci express lane 5 pci express lane 4 pci express lane 3 pci express lane 2 pci express lane 1 pci express lane 0
2?16 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?10 shows the pci express (pipe) 8 link in four transceiver block devices. receiver channel datapath clocking this section describes receiver pma and pcs datapath clocking in supported configurations. the receiver datapath clocking varies between non-bonded and bonded channel configurations. it also varies with the use of pcs blocks; for example, deskew fifo and rate matcher. non-bonded channel configurations in non-bonded channel configurations, receiver pcs blocks of each channel are clocked independently. each non-bonded channel also has separate rx_analogreset and rx_digitalreset signals that allow independent reset of the receiver pcs logic in each channel. figure 2?10. two pci express (pipe) 8 link in four transceiver block devices note to figure 2?10 : (1) the second 8 link does not have pci express hard ip support. use soft ip support for the second 8 link. pci express lane 7 pci express lane 6 pci express lane 5 pci express lane 4 pci express lane 3 pci express lane 2 pci express lane 1 pci express lane 0 transceiver block gxbl3 (slave) channel3 channel2 channel1 channel0 transceiver block gxbl2 (master) second pci express (pipe) x8 link (1) channel3 channel2 channel1 channel0 pci express lane 7 pci express lane 6 pci express lane 5 pci express lane 4 pci express lane 3 pci express lane 2 pci express lane 1 pci express lane 0 transceiver block gxbl1 (slave) channel3 channel2 channel1 channel0 transceiver block gxbl0 (master) first pci express (pipe) x8 link channel3 channel2 channel1 channel0 ep2agx190ff35 ep2agx260ff35
chapter 2: arria ii gx transceiver clocking 2?17 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 f for more information about transceiver reset and power down signals, refer to the reset control and power down chapter in volume 2 of the arria ii gx device handbook . in addition, in non-bonded channel configurations, receiver pcs clocking varies, depending on whether the configured functional mode uses the rate matcher block or not. non-bonded receiver clocking without rate matcher the following functional modes have non-bonded receiver channel configuration without rate-matcher: serial rapidio sonet/sdh sdi basic without rate matcher
2?18 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?11 shows receiver datapath clocking in non-bonded channel configurations without rate matcher. in non-bonded configurations without rate matcher, the cdr in each receiver channel recovers the serial clock from the received data. also, the serial recovered clock frequency is half the configured data rate due to the half-rate cdr architecture. the serial recovered clock is divided within the receiver pma to generate the parallel recovered clock. the deserializer uses the serial recovered clock in the receiver pma. the parallel recovered clock and deserialized data is forwarded to the receiver pcs. the parallel recovered clock in each channel clocks the word aligner and 8b/10b decoder (if enabled). figure 2?11. receiver datapath clocking in non-bonded configurations without rate matcher receiver channel pcs receiver channel pma receiver channel pcs receiver channel pcs receiver channel pcs receiver channel pma receiver channel pma rx_coreclk[3] pci express hard ip pipe interface rx phase compensation fifo rx_clkout[3] fpga fabric-transceiver interface clock byte ordering byte de-serializer channel 3 ch3 parallel recovered clock de- serializer cdr channel 2 receiver channel pma de- serializer cdr word aligner 8b/10b decoder ch2 parallel recovered clock byte de-serializer byte ordering rx phase compensation fifo pipe interface pci express hard ip rx_clkout[2] fpga fabric-transceiver interface clock rx_coreclk[2] fpga fabric pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de-serializer ch1 parallel recovered clock channel 1 cdr de- serializer rx_clkout[1] fpga fabric-transceiver interface clock rx_coreclk[1] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de-serializer de- serializer cdr channel 0 ch0 parallel recovered clock rx_clkout[0] fpga fabric-transceiver interface clock rx_coreclk[0] word aligner 8b/10b decoder word aligner 8b/10b decoder word aligner 8b/10b decoder input reference clock input reference clock input reference clock input reference clock serial recovered clock serial recovered clock serial recovered clock serial recovered clock / 2 / 2 / 2 / 2
chapter 2: arria ii gx transceiver clocking 2?19 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 if the configured functional mode does not use the byte deserializer, the parallel recovered clock also clocks the write side of the receiver phase compensation fifo. it is also driven on the rx_clkout port as the fpga fabric-transceiver interface clock. you can use the rx_clkout signal to latch the receiver data and status signals in the fpga fabric. if the configured functional mode uses the byte deserializer, the parallel recovered clock is divided by two. this divide-by-two version of the parallel recovered clock clocks the read side of the byte deserializer, the byte ordering block (if enabled), and the write side of the receiver phase compensation fifo. it is also driven on the rx_clkout port as the fpga fabric-transceiver interface clock. you can use the rx_clkout signal to latch the receiver data and status signals in the fpga fabric. table 2?4 shows receiver datapath clock frequencies in non-bonded functional modes without rate matcher. non-bonded receiver clocking with rate matcher the following functional modes have non-bonded receiver channel configurations with rate-matcher: pci express (pipe) 1 gige serial rapidio basic with rate matcher tab le 2 ?4 . receiver datapath clock frequencies in non-bonded functional modes without rate matcher functional mode data rate high-speed serial clock frequency low-speed parallel clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer serial rapidio 1.25 gbps 625 mhz 125 mhz n/a 62.5 mhz 2.5 gbps 1.25 ghz 250 mhz n/a 125 mhz 3.125 gbps 1.5625 ghz 312.5 mhz n/a 156.25 mhz sonet/sdh oc12 622 mbps 311 mhz 77.75 mhz 77.75 mhz n/a sonet/sdh oc48 2.488 gbps 1.244 ghz 311 mhz n/a 155.5 mhz hd sdi 1.485 gbps 742.5 mhz 148.5 mhz 148.5 mhz 74.25 mhz 1.4835 gbps 741.75 mhz 148.35 mhz 148.35 mhz 74.175 mhz 3g-sdi 2.97 gbps 1.485 ghz 297 mhz n/a 148.5 mhz 2.967 gbps 1.4835 ghz 296.7 mhz n/a 148.35 mhz
2?20 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?12 shows receiver datapath clocking in non-bonded channel configurations with rate matcher. in non-bonded configurations with rate matcher, the cdr in each receiver channel recovers the serial clock from the received data. also, the serial recovered clock frequency is half the configured data rate due to the half rate cdr architecture. the serial recovered clock is divided within the receiver pma to generate the parallel recovered clock. the deserializer uses the serial recovered clock in the receiver pma. the parallel recovered clock and deserialized data is forwarded to the receiver pcs. figure 2?12. receiver datapath clocking in non-bonded configurations with rate matcher receiver channel pcs receiver channel pma transmitter channel pma /2 receiver channel pcs receiver channel pcs receiver channel pcs receiver channel pma receiver channel pma transmitter channel pma transmitter channel pma rx_coreclk[3] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder channel 3 word aligner rate match fifo ch3 parallel recovered clock de- serializer cdr local clock divider from cmu0 pll from cmu1 pll channel 2 receiver channel pma transmitter channel pma de- serializer cdr local clock divider from cmu0 pll from cmu1 pll ch2 parallel recovered clock word aligner rate match fifo 8b/10b decoder low-speed parallel clock low-speed parallel clock byte de- serializer byte ordering rx phase compensation fifo pipe interface tx_clkout[3] tx_clkout[2] fpga fabric_transceiver interface clock fpga fabric_transceiver interface clock rx_coreclk[2] pci express hard ip fpga fabric pci express hard ip pipe interface fpga fabric_transceiver interface clock tx_clkout[1] rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo word aligner ch1 parallel recovered clock low-speed parallel clock channel 1 de- serializer cdr local clock divider from cmu0 pll from cmu1 pll channel 0 cdr de- serializer local clock divider from cmu0 pll from cmu1 pll ch0 parallel recovered clock low-speed parallel clock word aligner rate match fifo 8b/10b decoder byte de- serializer byte ordering rx phase compensation fifo pipe interface pci express hard ip tx_clkout[0] fpga fabric_transceiver interface clock rx_coreclk[1] rx_coreclk[0] serial recovered clock serial recovered clock serial recovered clock serial recovered clock input reference clock input reference clock input reference clock input reference clock /2 /2 /2
chapter 2: arria ii gx transceiver clocking 2?21 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 the parallel recovered clock from the receiver pma in each channel clocks the word aligner and the write port of the rate match fifo. the low-speed parallel clock from the transmitter local clock divider block in each channel clocks the read port of the rate match fifo, 8b/10b decoder, and the write port of the byte deserializer (if enabled). the parallel transmitter pcs clock or its divide-by-two version (if byte deserializer is enabled) clocks the write port of the receiver phase compensation fifo. it is also driven on the tx_clkout port as the fpga fabric-transceiver interface clock. you can use the tx_clkout signal to latch the receiver data and status signals in the fpga fabric. table 2?5 shows the receiver datapath clock frequencies in non-bonded functional modes with rate matcher. bonded channel configurations the arria ii gx device supports 4 channel bonding that allows bonding of four channels within the same transceiver block. it also supports 8 channel bonding that allows bonding of eight channels across two transceiver blocks in pci express (pipe) mode. 4 bonded channel configuration the following functional modes support 4 receiver channel bonded configuration: pci express (pipe) 4 xaui in 4 bonded channel configurations, the receiver datapath clocking varies, depending on whether the configured functional mode uses the deskew fifo or not. 4 bonded channel configuration with deskew fifo xaui functional mode has 4 bonded channel configuration with deskew fifo. tab le 2 ?5 . receiver datapath clock frequencies in non-bonded functional modes with rate matcher functional mode data rate serial recovered clock frequency parallel recovered clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer pci express (pipe) 1 (gen 1) 2.5 gbps 1.25 ghz 250 mhz n/a (1) 125 mhz gige 1.25 625 mhz 125 mhz 125 mhz n/a serial rapidio 1.25 gbps 625 mhz 125 mhz n/a 62.5 mhz 2.5 gbps 1.25 ghz 250 mhz n/a 125 mhz 3.125 gbps 1.5625 ghz 312.5 mhz n/a 156.25 mhz note to tab l e 2 ?5 : (1) 250 mhz when pci express hard ip is enabled.
2?22 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?13 shows receiver datapath clocking in 4 channel bonding configurations with deskew fifo. figure 2?13. receiver datapath clocking in 4 bonded channel configuration with deskew fifo fpga fabric receiver channel pcs receiver channel pma receiver channel pcs receiver channel pcs receiver channel pcs receiver channel pma receiver channel pma receiver channel pma rx_coreclk[3] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo w ord aligner channel 3 channel 2 de- serializer cdr ch3 parallel recovered clock ch0 parallel recovered clock low-speed parallel clock from cmu0 clock divider rx_coreclk[2] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo w ord aligner de- serializer cdr ch2 parallel recovered clock ch0 parallel recovered clock low-speed parallel clock from cmu0 clock divider coreclkout fpga fabric-transceiver interface clock input reference clock input reference clock cmu1 block cmu0 block cmu0 clock divider cmu1 clock divider low-speed parallel clock rx_coreclk[1] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo channel 1 w ord aligner de- serializer cdr ch1 parallel recovered clock low-speed parallel clock from cmu0 clock divider ch0 parallel recovered clock rx_coreclk[0] pci express hard ip pipe interface rx phase compensation fifo byte de- serializer byte ordering 8b/10b decoder rate match fifo deske w fifo w ord aligner low-speed parallel clock from cmu0 clock divider channel 0 de- serializer cdr ch0 parallel recovered clock cmu1 pll cmu0 pll input reference clock input reference clock input reference clock input reference clock serial recovered clock serial recovered clock serial recovered clock serial recovered clock deske w fifo deske w fifo deske w fifo /2 /2 /2 /2 /2
chapter 2: arria ii gx transceiver clocking 2?23 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 in 4 bonded channel configurations with deskew fifo, the cdr in each receiver channel recovers the serial clock from the received data. also, the serial recovered clock frequency is half the configured data rate due to the half-rate cdr architecture. the serial recovered clock is divided within each channel?s receiver pma to generate the parallel recovered clock. the deserializer uses the serial recovered clock in the receiver pma. the parallel recovered clock and deserialized data is forwarded to the receiver pcs in each channel. the parallel recovered clock from the receiver pma in each channel clocks the word aligner in that channel. the parallel recovered clock from channel 0 clocks the deskew fifo and the write port of the rate match fifo in all four bonded channels. the low-speed parallel clock from the cmu0 clock divider block clocks the read port of the rate match fifo, 8b/10b decoder, and the write port of the byte deserializer (if enabled) in all four bonded channels. the low-speed parallel clock or its divide-by-two version (if byte deserializer is enabled) clocks the write port of the receiver phase compensation fifo. it is also driven on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to latch the receiver data and status signals in the fpga fabric for all four bonded channels. in 4 bonded channel configurations, the receiver phase compensation fifos in all four bonded channels share common read and write pointers and enable signals generated in the cmu0 block of the transceiver block. table 2?6 shows receiver datapath clock frequencies in 4 bonded functional modes with deskew fifo. tab le 2 ?6 . receiver datapath clock frequencies in 4 bonded functional modes with deskew fifo functional mode data rate serial recovered clock frequency parallel recovered clock and parallel tr an smitt er p cs clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer pci express (pipe) 4 (gen 1) 2.5 gbps 1.25 ghz 250 mhz n/a (1) 125 mhz xaui 3.125 gbps 1.5625 ghz 312.5 mhz n/a 156.25 mhz note to tab l e 2 ?6 : (1) 250 mhz when pci express hard ip is enabled.
2?24 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation x4 bonded channel configurations without deskew fifo pci express (pipe) 4 functional modes have 4 bonded channel configurations without deskew fifo. figure 2?14 shows receiver datapath clocking in 4 channel bonding configurations without deskew fifo. figure 2?14. receiver datapath clocking in 4 bonded channel configurations without deskew fifo receiver channel pcs receiver channel pma receiver channel pcs receiver channel pcs receiver channel pcs receiver channel pma receiver channel pma receiver channel pma rx_coreclk[3] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo word aligner channel 3 de- serializer cdr ch3 parallel recovered clock low-speed parallel clock from cmu0 clock divider rx_coreclk[2] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo word aligner channel 2 de- serializer cdr ch2 parallel recovered clock low-speed parallel clock from cmu0 clock divider coreclkout fpga fabric_transceiver interface clock input reference clock input reference clock cmu0 clock divider cmu0 block cmu1 block cmu1 clock divider low-speed parallel clock channel 1 fpga fabric rx_coreclk[1] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo ch1 parallel recovered clock low-speed parallel clock from cmu0 clock divider word aligner de- serializer cdr rx_coreclk[0] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo word aligner channel 0 de- serializer cdr ch0 parallel recovered clock low-speed parallel clock from cmu0 clock divider cmu1 pll cmu0 pll serial recovered clock input reference clock serial recovered clock input reference clock serial recovered clock input reference clock serial recovered clock input reference clock /2 /2 /2 /2 /2
chapter 2: arria ii gx transceiver clocking 2?25 transceiver channel datapath clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 in 4 bonded channel configurations without deskew fifo, the cdr in each receiver channel recovers the serial clock from the received data. the serial recovered clock frequency is half the configured data rate due to the half-rate cdr architecture. the serial recovered clock is divided within each channel?s receiver pma to generate the parallel recovered clock. the deserializer uses the serial recovered clock in the receiver pma. the parallel recovered clock and deserialized data is forwarded to the receiver pcs in each channel. the parallel recovered clock from the receiver pma in each channel clocks the word aligner and write side of the rate match fifo in that channel. the low-speed parallel clock from the cmu0 clock divider block in cmu0 channel clocks the read port of the rate match fifo, 8b/10b decoder, and the write port of the byte deserializer (if enabled). the low-speed parallel clock or its divide-by-two version (if byte deserializer is enabled) clocks the receiver phase compensation fifo. it is also driven on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to latch the receiver data and status signals in the fpga fabric for all four bonded channels. in 4 bonded channel configurations, the receiver phase compensation fifos in all four bonded channels share common read and write pointers and enable signals generated in the cmu0 channel of the transceiver block. table 2?7 shows receiver datapath clock frequencies in 4 bonded functional modes without deskew fifo. 8 bonded channel configuration pci express (pipe) 8 functional mode supports 8 receiver channel bonding configuration. the eight bonded channels are located in two transceiver blocks, referred to as the master transceiver block and slave transceiver block, with four channels each. tab le 2 ?7 . receiver datapath clock frequencies in 4 bonded functional modes without deskew fifo functional mode data rate serial recovered clock frequency parallel recovered clock and parallel tr an smitt er p cs clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer pci express (pipe) 4 (gen 1) 2.5 gbps 1.25 ghz 250 mhz n/a (1) 125 mhz note to tab l e 2 ?7 : (1) 250 mhz when pci express hard ip is enabled.
2?26 chapter 2: arria ii gx transceiver clocking transceiver channel datapath clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?15 shows receiver datapath clocking in pci express (pipe) 8 bonded channel configuration. the cdr in each of the eight receiver channels recovers the serial clock from the received data on that channel. the serial recovered clock frequency is half the configured data rate. the serial recovered clock is divided within each channel?s receiver pma to generate the parallel recovered clock. the deserializer uses the serial recovered clock in the receiver pma. the parallel recovered clock and deserialized data from the receiver pma in each channel is forwarded to the receiver pcs in that channel. figure 2?15. receiver datapath clocking in 8 bonded channel configuration master transceiver block slave transceiver block receiver channel pcs receiver channel pcs receiver channel pma rx_coreclk[7:4] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo word aligner receiver channel pma de- serializer cdr parallel recovered clock low-speed parallel clock from cmu0 clock divider fpga fabric cmu1 block cmu0 block cmu1 pll cmu0 pll cmu1 clock divider cmu0 clock divider rx_coreclk[3:0] pci express hard ip pipe interface rx phase compensation fifo byte ordering byte de- serializer 8b/10b decoder rate match fifo word aligner de- serializer cdr parallel recovered clock low-speed parallel clock from cmu0 clock divider coreclkout fpga fabric_transceiver interface clock input reference clock input reference clock cmu1 block cmu0 block cmu0 clock divider cmu1 clock divider cmu1 pll cmu0 pll serial recovered clock input reference clock serial recovered clock input reference clock /2 /2 /2
chapter 2: arria ii gx transceiver clocking 2?27 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 the parallel recovered clock from the receiver pma in each channel clocks the word aligner and write side of the rate match fifo in that channel. the low-speed parallel clock from the cmu0 clock divider of the master transceiver block clocks the read port of the rate match fifo, 8b/10b decoder, and the write port of the byte deserializer (if enabled) in all eight channels. the low-speed parallel clock or its divide-by-two version (if byte-deserializer is enabled) clocks the write port of the receiver phase compensation fifo in all eight channels. it is also driven on the coreclkout port as the fpga fabric-transceiver interface clock. you can use the coreclkout signal to latch the receiver data and status signals in the fpga fabric for all eight bonded channels. both the receiver phase compensation fifo pointers and the control circuitry from channel 0 in the master transceiver block are shared by the receiver phase compensation fifos across all eight channels in pci express (pipe) 8 mode. table 2?8 shows the receiver datapath clock frequencies in pci express (pipe) 8 functional mode. fpga fabric-transceiver interface clocking the fpga fabric-transceiver interface clocks consist of clock signals from the fpga fabric to the transceiver blocks and clock signals from the transceiver blocks to the fpga fabric. the fpga fabric-transceiver interface clocks are subdivided into the following three categories: ?input reference clocks? on page 2?27 ?phase compensation fifo clocks? on page 2?28 ?other transceiver clocks? on page 2?28 input reference clocks the cmu plls and receiver cdrs in each transceiver block derive the input reference from one of the following sources: refclk0 and refclk1 pins of the same transceiver block refclk0 and refclk1 pins of other transceiver blocks on the same side of the device using the inter-transceiver block (itb) clock network tab le 2 ?8 . receiver datapath clock frequencies in pci express (pipe) 8 functional modes functional mode data rate serial recovered clock frequency parallel recovered clock and parallel tr an smitt er p cs clock frequency fpga fabric-transceiver interface clock frequency without byte serializer with byte serializer pci express (pipe) 8 (gen 1) 2.5 gbps 1.25 ghz 250 mhz n/a (1) 125 mhz note to tab l e 2 ?8 : (1) 250 mhz when pci express hard ip is enabled.
2?28 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation clk input pins on the fpga global clock (gclk) network clock output pins from the left plls in the fpga fabric the input reference clock follows these guidelines: if the input reference clock to the cmu pll or receiver cdr is provided through the fpga clk input pins or the clock output from the left plls in the fpga fabric, the input reference clock becomes a part of the fpga fabric-transceiver interface clocks. if the input reference clock is provided through the fpga clk input pins, the quartus ii software automatically routes the input reference clock on the fpga fabric global clock (gclk) network. if the input reference clock is provided through the output clock from a left pll, the quartus ii software routes the input reference clock on a dedicated clock path from the left pll to the cmu pll or receiver cdr. phase compensation fifo clocks the transmitter and receiver phase compensation fifos in each channel ensure reliable transfer of data, control, and status signals between the fpga fabric and the transceiver channels. the transceiver channel forwards the tx_clkout signal (in non-bonded modes) or the coreclkout signal (in bonded channel modes) to the fpga fabric to clock the data and control signals into the transmitter phase compensation fifo. the transceiver channel also forwards the recovered clock rx_clkout (in configurations without rate matcher) or tx_clkout/coreclkout (in configurations with rate matcher) to the fpga fabric to clock the data and status signals from the receiver phase compensation fifo into the fpga fabric. the phase compensation fifo clocks form a part of the fpga fabric-transceiver interface clocks and are routed on either a global clock resource (gclk), regional clock resource (rclk), or periphery clock (pclk) resource in the fpga fabric. other transceiver clocks the following transceiver clocks form a part of the fpga fabric-transceiver interface clocks: cal_blk_clk ?calibration block clock fixed_clk ?125 mhz fixed-rate clock used in pci express (pipe) receiver detect circuitry the quartus ii software automatically routes fixed_clk on the fpga fabric global clock (gclk) or regional clock (rclk) network.
chapter 2: arria ii gx transceiver clocking 2?29 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 table 2?9 summarizes fpga fabric-transceiver interface clocks. ?fpga fabric-transmitter interface clocking? (below) and ?fpga fabric-receiver interface clocking? on page 2?42 describe the criteria and methodology to share transmitter and receiver phase compensation fifo clocks in order to reduce the gclk, rclk, and pclk resource utilization in your design. fpga fabric-transmitter interface clocking the transmitter phase compensation fifo compensates for the phase difference between the fpga fabric clock (phase compensation fifo write clock) and the parallel transmitter pcs clock (phase compensation fifo read clock). the transmitter phase compensation fifo write clock forms the fpga fabric-transmitter interface clock. the phase compensation fifo write and read clocks must have exactly the same frequency, in other words, 0 ppm frequency difference. arria ii gx transceivers provide the following two options for selecting the transmitter phase compensation fifo write clock: quartus ii software-selected transmitter phase compensation fifo write clock user-selected transmitter phase compensation fifo write clock quartus ii software-selected transmitter phase compensation fifo write clock if you do not select the tx_coreclk port in the altgx megawizard ? plug-in manager, the quartus ii software automatically selects the transmitter phase compensation fifo write clock for each channel in that altgx instance. the quartus ii software selects the fifo write clock depending on the channel configuration. non-bonded channel configuration in the non-bonded channel configuration, the transmitter channels may or may not be identical. identical transmitter channels are defined as channels that have exactly the same cmu pll input reference clock source, have exactly the same cmu pll configuration, and have exactly the same transmitter pma and pcs configuration. tab le 2 ?9 . fpga fabric-transceiver interface clocks clock name clock description interface direction fpga fabric clock resource utilization (1) pll_inclk cmu pll input reference clock when driven from an fpga clk input pin fpga fabric-to-transceiver gclk rx_cruclk receiver cdr input reference clock when driven from an fpga clk input pin fpga fabric-to-transceiver gclk tx_clkout phase compensation fifo clock transceiver-to-fpga fabric gclk, rclk, pclk coreclkout phase compensation fifo clock transceiver-to-fpga fabric gclk, rclk, pclk rx_clkout phase compensation fifo clock transceiver-to-fpga fabric gclk, rclk, pclk fixed_clk pci express receiver detect clock fpga fabric-to-transceiver gclk, rclk note to tab l e 2 ?9 : (1) for more information about gclk, rclk, and pclk resources available in each device, refer to the clock networks and plls in arria ii gx devices chapter in volume 1 of the arria ii gx device handbook .
2?30 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation 1 identical transmitter channels may have different transmitter voltage output differential (vod) or pre-emphasis settings. example 1: four identical channels in a transceiver block if all four channels within a transceiver block are identical, the quartus ii software automatically drives the write port of the transmitter phase compensation fifo in all four channels with tx_clkout[0] , as shown in figure 2?16 . use the tx_clkout[0] signal to clock the transmitter data and control logic for all four channels in the fpga fabric. 1 this configuration uses only one fpga gclk, rclk, or pclk resource for tx_clkout[0].
chapter 2: arria ii gx transceiver clocking 2?31 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 example 2: two groups of two identical channels in a transceiver block example 2 assumes channels 0 and 1, driven by cmu0 pll in a transceiver block, are identical. also, channels 2 and 3, driven by cmu1 pll in the same transceiver block, are identical. in this case, the quartus ii software automatically drives the write port of the transmitter phase compensation fifo in channels 0 and 1 with the tx_clkout[0] signal. it also drives the write port of the transmitter phase compensation fifo in channels 2 and 3 with the tx_clkout[2] signal. use the tx_clkout[0] signal to clock the transmitter data and control logic for channels 0 and 1 in the fpga fabric. use the tx_clkout[2] signal to clock the transmitter data and control logic for channels 2 and 3 in the fpga fabric. figure 2?16. four identical channels in a transceiver block for example 1 w rclk rdclk transmitter channel pcs transmitter channel pma w rclk rdclk w rclk rdclk wrclk rdclk transmitter channel pcs transmitter channel pma transmitter channel pcs transmitter channel pma transmitter channel pcs transmitter channel pma tx_coreclk[3] channel 3 tx data and control logic tx phase compensation fifo channel 3 channel 2 low-speed parallel clock local clock divider block local clock divider block low-speed parallel clock tx phase compensation fifo channel 2 tx data and control logic tx_coreclk[2] fgpa fabric input reference clock cmu1 pll cmu0 pll cmu1 clock divider cmu0 clock divider cmu1 block cmu0 block high-speed serial clock channel 1 local clock divider block low-speed parallel clock tx phase compensation fifo channel 1 tx data and control logic channel 0 tx data and control logic tx_coreclk[1] tx_coreclk[0] tx_clkout[0] tx phase compensation fifo low-speed parallel clock channel 0 local clock divider block /2 /2 /2 /2
2?32 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation 1 this configuration uses two fpga clock resources (global, regional, or both), one for the tx_clkout[0] signal and one for the tx_clkout[2] signal. figure 2?17 shows fpga fabric-transmitter interface clocking for example 2. figure 2?17. fpga fabric-transmitter interface clocking for example 2 wrclk rdclk transmitter channel pcs transmitter channel pma wrclk rdclk wrclk rdclk wrclk rdclk transmitter channel pcs transmitter channel pma transmitter channel pcs transmitter channel pma transmitter channel pma transmitter channel pcs channel 3 tx data and control logic tx_coreclk[3] channel 2 tx data and control logic tx phase compensation fifo tx phase compensation fifo channel 3 channel 2 low-speed parallel clock low-speed parallel clock local clock divider block local clock divider block tx_clkout[2] tx_coreclk[2] fpga fabric input reference clock input reference clock cmu1 pll cmu0 pll cmu1 clock divider cmu0 clock divider cmu1 block cmu0 block channel 1 channel 1 tx data and control logic tx_coreclk[1] tx phase compensation fifo low-speed parallel clock local clock divider block channel 0 local clock divider block low-speed parallel clock tx phase compensation fifo channel 0 tx data and control logic tx_coreclk[0] tx_clkout[0] /2 /2 /2 /2
chapter 2: arria ii gx transceiver clocking 2?33 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 bonded channel configuration in the 4 bonded channel configuration, all four channels within the transceiver block are identical. the quartus ii software automatically drives the write port of the transmitter phase compensation fifo in all four channels with the coreclkout signal. use the coreclkout signal to clock the transmitter data and control logic for all four channels in the fpga fabric. in the 8 bonded channel configuration, all eight channels across two transceiver blocks are identical. the quartus ii software automatically drives the write port of the transmitter phase compensation fifo in all eight channels with the coreclkout signal from the master transceiver block. use the coreclkout signal to clock the transmitter data and control logic for all eight channels in the fpga fabric.
2?34 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?18 shows fpga fabric-transmitter interface clocking in an 4 bonded channel configuration. figure 2?18. fpga fabric-transmitter interface clocking in an 4 bonded channel configuration wrclk rdclk transmitter channel pcs wrclk rdclk wrclk rdclk parallel pcs clock wrclk rdclk transmitter channel pcs transmitter channel pcs transmitter channel pcs channel 3 tx data and control logic tx_coreclk[3] tx phase compensation fifo channel 3 channel 2 parallel pcs clock parallel pcs clock tx phase compensation fifo channel 2 tx data and control logic tx_coreclk[2] coreclkout fpga fabric input reference clock cmu1 pll cmu0 pll cmu0 clock divider cmu1 block cmu0 block channel 1 channel 0 parallel pcs clock tx phase compensation fifo tx phase compensation fifo channel 1 tx data and control logic channel 0 tx data and control logic tx_coreclk[1] tx_coreclk[0] /2 /2 /2 / 2 /2
chapter 2: arria ii gx transceiver clocking 2?35 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 limitations of the quartus ii software-selected transmitter phase compensation fifo write clock the quartus ii software uses a single tx_clkout signal to clock the transmitter phase compensation fifo write port of all identical channels within a transceiver block. this results in one global or regional clock resource being used for each group of identical channels within a transceiver block. for identical channels located across transceiver blocks, the quartus ii software does not use a single tx_clkout signal to clock the write port of the transmitter phase compensation fifos for all channels. instead, it uses one tx_clkout signal for each group of identical channels per transceiver block. this results in higher clock resource utilization. example 3: sixteen identical channels across four transceiver blocks consider 16 identical transmitter channels located across four transceiver blocks, as shown in figure 2?19 . the quartus ii software uses tx_clkout from channel 0 in each transceiver block to clock the write port of the transmitter phase compensation fifo in all four channels of that transceiver block. this results in four clocks resources (global, regional, or both) being used, one for each transceiver block.
2?36 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation because all 16 channels are identical, using a single tx_clkout to clock the transmitter phase compensation fifo in all 16 channels results in only one global or regional clock resource being used instead of four. to achieve this, you must choose the transmitter phase compensation fifo write clocks instead of the quartus ii software automatic selection, as described in ?user-selected transmitter phase compensation fifo write clock? on page 2?37 . figure 2?19. sixteen identical channels across four transceiver blocks for example 3 channel [15:12] tx data and control logic tx_coreclk[15:12] tx_clkout[12] transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl2 tx_clkout[8] tx_coreclk[11:8] channel [11:8] tx data and control logic fpga fabric channel [7:4] tx data and control logic tx_coreclk[7:4] channel 3 channel 2 channel 1 channel 0 transceiver block gxbl1 tx_clkout[4] transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0 tx_clkout[0] tx_coreclk[3:0] channel [3:0] tx data and control logic
chapter 2: arria ii gx transceiver clocking 2?37 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 user-selected transmitter phase compensation fifo write clock the altgx megawizard plug-in manager provides an optional port named tx_coreclk for each instantiated transmitter channel. if you enable this port, the quartus ii software does not automatically select the transmitter phase compensation fifo write clock source. instead, the signal that you drive on the tx_coreclk port of the channel clocks the write side of its transmitter phase compensation fifo. use the flexibility of selecting the transmitter phase compensation fifo write clock to reduce clock resource utilization (global, regional, or both). you can connect the tx_coreclk ports of all identical channels in your design and drive them using a common clock driver that has 0 ppm frequency difference with respect to the fifo read clocks of all your channels. use the common clock driver to clock the transmitter data and control logic in the fpga fabric for all identical channels. this fpga fabric-transceiver interface clocking scheme utilizes only one global or regional clock resource for all identical channels in your design. example 4: sixteen identical channels across four transceiver blocks figure 2?20 shows 16 identical transmitter channels located across four transceiver blocks. the tx_coreclk ports of all 16 transmitter channels are connected together and driven by a common clock driver. this common clock driver also drives the transmitter data and control logic of all 16 transmitter channels in the fpga fabric. only one global or regional clock resource is used with this clocking scheme, compared to four clock resources (global, regional, or both) needed without the tx_coreclk ports (the quartus ii software-selected transmitter phase compensation fifo write clock).
2?38 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation common clock driver selection rules the common clock driver driving the tx_coreclk ports of all identical channels must have 0 ppm frequency difference with respect to the transmitter phase compensation fifo read clocks of these channels. if there is any frequency difference between the fifo write clock ( tx_coreclk ) and the fifo read clock, the fifo overflows or under runs, resulting in corrupted data transfer between the fpga fabric and the transmitter. figure 2?20. sixteen identical channels across four transceiver blocks for example 4 common clock driver channel [15:12] tx data and control logic tx_coreclk[15:12] tx_clkout[15:12] transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl2 tx_clkout[11:8] tx_coreclk[11:8] channel [11:8] tx data and control logic fpga fabric channel [7:4] tx data and control logic transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 tx_clkout[7:4] tx_coreclk[7:4] channel [3:0] tx data and control logic tx_coreclk[3:0] tx_clkout[3:0] transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0
chapter 2: arria ii gx transceiver clocking 2?39 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 table 2?10 shows the transmitter phase compensation fifo read clocks that the quartus ii software selects in various configurations. to ensure that you understand the 0 ppm clock driver rule, the quartus ii software expects the following set of user assignments whenever the tx_coreclk port is used to drive the transmitter phase compensation fifo write clock: gxb 0 ppm core clock setting 1 failure to make this assignment when using the tx_coreclk port results in a quartus ii compilation error. gxb 0 ppm core clock setting the gxb 0 ppm core clock setting is intended for advanced users who know the clocking configuration of the entire system and want to reduce the fpga fabric global and regional clock resource utilization. the gxb 0 ppm core clock setting allows the following clock drivers to drive the tx_coreclk ports: tx_clkout in non-bonded channel configurations coreclkout in bonded channel configurations fpga clk input pins tr a n sc e iv er refclk pins clock output from the left corner plls (pll_1 and pll_4) 1 the quartus ii software does not allow gated clocks or clocks generated in fpga logic to drive the tx_coreclk ports. because the gxb 0 ppm core clock setting allows fpga clk input pins and transceiver refclk pins as the clock driver, the quartus ii compiler cannot determine if there is a 0 ppm difference between the fifo write clock and read clock for each channel. table 2?10. transmitter phase compensation fifo read clocks configuration transmitter phase compensation fifo read clock without byte serializer with byte serializer non-bonded channel configuration parallel transmitter pcs clock from the local clock divider in the associated channel ( tx_clkout ) divide-by-two version of the parallel transmitter pcs clock from the local clock divider in the associated channel ( tx_clkout ) 4 bonded channel configuration low-speed parallel clock from the cmu0 clock divider of the associated transceiver block ( coreclkout ) divide-by-two version of the low-speed parallel clock from the cmu0 clock divider of the associated transceiver block ( coreclkout ) 8 bonded channel configuration low-speed parallel clock from the cmu0 clock divider of the master transceiver block ( coreclkout from master transceiver block) divide-by-two version of the low-speed parallel clock from the cmu0 clock divider of the master transceiver block ( coreclkout from master transceiver block)
2?40 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation 1 you must ensure that the clock driver for all connected tx_coreclk ports has a 0 ppm difference with respect to the fifo read clock in those channels. figure 2?20 shows the quartus ii assignments that you must make in the assignment editor. example 5: sixteen identical channels across four transceiver blocks figure 2?21 shows 16 identical transmitter channels located across four transceiver blocks. the tx_coreclk ports of all 16 transmitter channels are connected together and driven by the tx_clkout[4] signal from channel 0 in transceiver block gxbl1 . the tx_clkout[4] signal also drives the transmitter data and control logic of all 16 transmitter channels in the fpga fabric. only one global clock resource is used by the tx_clkout[4] signal with this clocking scheme. table 2?11. quartus ii assignments assignment description from: full design hierarchy name of one of the following clock drivers that you choose to drive the tx_coreclk ports of all identical channels (1) : tx_clkout coreclkout fpga clk input pins transceiver refclk pins clock output from left corner plls to: tx_dataout pins of all identical channels whose tx_coreclk ports are connected together and driven by the 0 ppm clock driver. assignment name: gxb 0 ppm core clock setting value: on note to tab l e 2 ?1 1 : (1) you can find the full hierarchy name of the 0 ppm clock driver using the node finder feature in the quartus ii assignment editor.
chapter 2: arria ii gx transceiver clocking 2?41 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 2?21. sixteen identical channels across four transceiver blocks for example 5 channel [15:12] tx data and control logic tx_coreclk[15:12] tx_clkout[15:12] transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl 2 channel 3 channel 2 channel 1 channel 0 tx_coreclk[11:8] channel [11:8] tx data and control logic fpga fabric channel [7:4] tx data and control logic tx_coreclk[7:4] tx_clkout[7:4] transceiver block gxbl 1 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl 0 channel 3 channel 2 channel 1 channel 0 tx_clkout[3:0] tx_coreclk[3:0] channel [3:0] tx data and control logic tx_clkout[11:8] tx_clko ut[4]
2?42 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation table 2?11 shows the quartus ii assignments that you must make for the clocking scheme shown in figure 2?21 . fpga fabric-receiver interface clocking the receiver phase compensation fifo compensates for the phase difference between the parallel receiver pcs clock (fifo write clock) and the fpga fabric clock (fifo read clock). the receiver phase compensation fifo read clock forms the fpga fabric-receiver interface clock. the fifo write and read clocks must have exactly the same frequency, in other words, 0 ppm frequency difference. arria ii gx transceivers provide the following two options for selecting the receiver phase compensation fifo read clock: quartus ii software-selected receiver phase compensation fifo read clock user-selected receiver phase compensation fifo read clock quartus ii software-selected receiver phase compensation fifo read clock if you do not select the rx_coreclk port in the altgx megawizard plug-in manager, the quartus ii software automatically selects the receiver phase compensation fifo read clock for each channel in that altgx instance. the quartus ii software selects the fifo read clock depending on the channel configuration. non-bonded channel configuration with rate matcher in the non-bonded channel configuration, the transceiver channels may or may not be identical. identical transceiver channels are defined as channels that have the same cmu pll and receiver cdr input reference clock source, have exactly the same cmu pll and receiver cdr configuration, and have exactly the same pma and pcs configuration. example 6: four identical channels in a transceiver block if all four channels within a transceiver block are identical, the quartus ii software automatically drives the read port of the receiver phase compensation fifo in all four channels with tx_clkout[0] , as shown in figure 2?22 . use the tx_clkout[0] signal to latch the receiver data and status signals from all four channels in the fpga fabric. table 2?12. quartus ii assignments assignment description from: top_level/top_xcvr_instance1/altgx_component/tx_ clkout[4] (1) to: tx_dataout[15..0] assignment name: gxb 0 ppm core clock setting value: on note to tab l e 2 ?1 2 : (1) this is an example design hierarchy path for the tx_clkout[4] signal.
chapter 2: arria ii gx transceiver clocking 2?43 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 1 this configuration uses only one fpga global or regional clock resource for tx_clkout[0]. figure 2?22. four identical channels in a transceiver block for example 6 rdclk w rclk receiver channel pcs transmitter channel pma /2 rdclk wrclk rdclk wrclk rdclk wrclk receiver channel pma receiver channel pcs receiver channel pma receiver channel pcs receiver channel pma receiver channel pcs receiver channel pma transmitter channel pma transmitter channel pma transmitter channel pma channel 3 rx data and status logic tx_coreclk[3] rx phase compensation fifo channel 3 local clock divider block low-speed parallel clock channel 2 local clock divider block low-speed parallel clock rx phase compensation fifo tx_coreclk[2] channel 2 rx data and status logic fpga fabric input reference clock cmu1 pll cmu0 pll cmu0 clock divider cmu1 clock divider cmu1 block cmu0 block channel 1 channel 0 low-speed parallel clock local clock divider block local clock divider block low-speed parallel clock rx phase compensation fifo rx phase compensation fifo tx_coreclk[1] channel 1 rx data and status logic channel 0 rx data and status logic tx_coreclk[0] tx_clkout[0] parallel data parallel data parallel data parallel data /2 /2 /2
2?44 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation example 7: two groups of two identical channels in a transceiver block example 7 assumes channels 0 and 1, driven by cmu0 pll in a transceiver block, are identical. also, channels 2 and 3, driven by cmu1 pll in the same transceiver block, are identical. in this case, the quartus ii software automatically drives the read port of the receiver phase compensation fifo in channels 0 and 1 with the tx_clkout[0] signal. it also drives the read port of the receiver phase compensation fifo in channels 2 and 3 with the tx_clkout[2] signal. use the tx_clkout[0] signal to latch the receiver data and status signals from channels 0 and 1 in the fpga fabric. use the tx_clkout[2] signal to latch the receiver data and status signals from channels 2 and 3 in the fpga fabric. 1 this configuration uses two fpga clock resources (global, regional, or both), one for the tx_clkout[0] signal and one for the tx_clkout[2] signal.
chapter 2: arria ii gx transceiver clocking 2?45 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 2?23 shows fpga fabric-receiver interface clocking for example 7. figure 2?23. fpga fabric-receiver interface clocking for example 7 rdclk wrclk receiver channel pcs transmitter channel pma rdclk wrclk receiver channel pcs rdclk wrclk receiver channel pcs rdclk wrclk channel 0 receiver channel pcs cmu1 pll cmu0 pll receiver channel pma transmitter channel pma receiver channel pma transmitter channel pma receiver channel pma transmitter channel pma receiver channel pma channel 3 rx data and status logic rx_coreclk[3] rx phase compensation fifo low-speed parallel clock channel 3 local clock divider block channel 2 local clock divider block low-speed parallel clock rx phase compensation fifo channel 2 rx data and status logic rx_coreclk[2] tx_clkout[2] fpga fabric reference clock reference clock cmu1 block cmu0 block channel 1 low-speed parallel clock rx phase compensation fifo channel 1 rx data and status logic rx_coreclk[1] tx_clkout[0] channel 0 rx data and status logic low-speed parallel clock local clock divider block local clock divider block rx_coreclk[0] parallel data parallel data parallel data parallel data /2 /2 /2 /2 rx phase compensation fifo
2?46 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation non-bonded channel configuration without rate matcher in non-bonded channel configuration without rate matcher, the quartus ii software cannot determine if the incoming serial data in all channels have a 0 ppm frequency difference. the quartus ii software automatically drives the read port of the receiver phase compensation fifo in each channel with the recovered clock driven on the rx_clkout port of that channel. use the rx_clkout signal from each channel to latch its receiver data and status signals in the fpga fabric. 1 this configuration uses one fpga clock resource (global, regional, or both) per channel for the rx_clkout signal. figure 2?24 shows the fpga fabric-receiver interface clocking for non-bonded channel configurations without rate matcher. figure 2?24. fpga fabric-receiver interface clocking for non-bonded channel configurations without rate matcher rdclk wrclk parallel recovered clock receiver channel pcs receiver channel pma rdclk wrclk receiver channel pcs rdclk wrclk receiver channel pcs rdclk wrclk receiver channel pcs receiver pma receiver channel pma receiver pma receiver channel pma receiver pma cdr receiver channel pma channel 3 rx data and status logic rx_coreclk[3] rx phase compensation fifo rx_clkout[3] channel 3 cdr rx_datain[3] channel 2 rx data and status logic rx_coreclk[2] rx phase compensation fifo parallel recovered clock channel 2 cdr rx_datain[2] channel 1 rx_datain[1] cdr parallel recovered clock rx phase compensation fifo fpga fabric channel 1 rx data and status logic rx_coreclk[1] rx_clkout[2] rx_clkout[1] channel 0 rx data and status logic rx_coreclk[0] rx phase compensation fifo rx_clkout[0] channel 0 parallel recovered clock rx_datain[0] input reference clock input reference clock input reference clock parallel data parallel data parallel data parallel data / 2 / 2 / 2 / 2
chapter 2: arria ii gx transceiver clocking 2?47 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 bonded channel configuration all bonded transceiver channel configurations have a rate matcher in the receiver data path. in the 4 bonded channel configurations, the quartus ii software automatically drives the read port of the receiver phase compensation fifo in all four channels with the coreclkout signal. use the coreclkout signal to latch the receiver data and status signals from all four channels in the fpga fabric. in 8 bonded channel configurations, the quartus ii software automatically drives the read port of the receiver phase compensation fifo in all eight channels with the coreclkout signal from the master transceiver block. use the coreclkout signal to latch the receiver data and status signals from all eight channels in the fpga fabric. 1 this configuration uses one fpga global or regional clock resource per bonded link for the coreclkout signal.
2?48 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?25 shows fpga fabric-receiver interface clocking in an 4 bonded channel configuration. figure 2?25. fgpa fabric-receiver interface clocking in an 4 bonded channel configuration rdclk wrclk receiver channel pcs rdclk wrclk receiver channel pcs rdclk wrclk receiver channel pcs rdclk wrclk channel 3 rx data and status logic rx_coreclk[3] rx phase compensation fifo channel 3 channel 2 rx phase compensation fifo channel 2 rx data and status logic rx_coreclk[2] fpga fabric coreclkout reference clock cmu1 pll cmu0 pll cmu0 clock divider cmu1 block cmu0 block channel 1 channel 0 receiver channel pcs rx phase compensation fifo rx phase compensation fifo channel 1 rx data and status logic channel 0 rx data and status logic rx_coreclk[1] rx_coreclk[0] low-speed parallel clock from cmu0 clock divider low-speed parallel clock from cmu0 clock divider low-speed parallel clock from cmu0 clock divider low-speed parallel clock from cmu0 clock divider parallel data parallel data parallel data parallel data / 2 / 2 / 2 / 2 / 2
chapter 2: arria ii gx transceiver clocking 2?49 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 limitations of quartus ii software-selected receiver phase compensation fifo read clock in non-bonded channel configurations without rate matcher, the quartus ii software cannot determine if the incoming serial data in all channels has a 0 ppm frequency difference. the quartus ii software uses the recovered clock rx_clkout signal from each channel to clock the read port of its receiver phase compensation fifo. this results in one clock resource (global, regional, or both) being used per channel for the rx_clkout signal. example 8: sixteen channels across four transceiver blocks consider 16 non-bonded receiver channels without rate matcher located across four transceiver blocks, as shown in figure 2?26 . the incoming serial data for all 16 channels has a 0 ppm frequency difference with respect to each other. the quartus ii software uses rx_clkout from each channel to clock the read port of its receiver phase compensation fifo. this results in 16 clocks resources (global, regional, or both) being used, one for each channel.
2?50 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation since the recovered clock rx_clkout signals from all 16 channels have a 0 ppm frequency difference, you can use a single rx_clkout to clock the receiver phase compensation fifo in all 16 channels. this results in only one global or regional clock resource being used instead of 16. to achieve this, you must select the receiver phase compensation fifo read clocks instead of the quartus ii software automatic selection, as described in ?user-selected receiver phase compensation fifo read clock? on page 2?51 . figure 2?26. sixteen non-bonded receiver channels without rate matcher for example 8 channel [15:12] rx data and status logic rx_coreclk[15] rx_coreclk[14] rx_coreclk[13] rx_coreclk[12] rx_clkout[15] rx_clkout[14] rx_clkout[13] rx_clkout[12] transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 channel [11:8] rx data and status logic rx_clkout[11] rx_clkout[10] rx_clkout[9] rx_clkout[8] rx_coreclk[11] rx_coreclk[10] rx_coreclk[9] rx_coreclk[8] transceiver block gxbl2 channel 3 channel 2 channel 1 channel 0 fpga fabric channel [7:4] rx data and status logic rx_coreclk[7] rx_coreclk[6] rx_coreclk[5] rx_coreclk[4] rx_clkout[7] rx_clkout[6] rx_clkout[5] rx_clkout[4] transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl0 channel [3:0] rx data and status logic rx_coreclk[3] rx_coreclk[2] rx_coreclk[1] rx_coreclk[0] rx_clkout[3] rx_clkout[2] rx_clkout[1] rx_clkout[0]
chapter 2: arria ii gx transceiver clocking 2?51 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 user-selected receiver phase compensation fifo read clock the altgx megawizard plug-in manager provides an optional port named rx_coreclk for each instantiated receiver channel. if you enable this port, the quartus ii software does not automatically select the receiver phase compensation fifo read clock source. instead, the signal that you drive on the rx_coreclk port of the channel clocks the read side of its receiver phase compensation fifo. you can use the flexibility of selecting the receiver phase compensation fifo read clock to reduce clock resource utilization (global, regional, or both). you can connect the rx_coreclk ports of all receiver channels in your design and drive them using a common clock driver that has a 0 ppm frequency difference with respect to the fifo write clocks of these channels. use this common clock driver to latch the receiver data and status signals in the fpga fabric for these channels. this fpga fabric transceiver interface clocking scheme utilizes only one global or regional clock resource for all channels. example 9: sixteen identical channels across four transceiver blocks figure 2?27 shows 16 channels located across four transceiver blocks. the incoming serial data to all 16 channels has a 0 ppm frequency difference with respect to each other. the rx_coreclk ports of all 16 channels are connected together and driven by a common clock driver. this common clock driver also latches the receiver data and status logic of all 16 receiver channels in the fpga fabric. only one clock resource (global, regional, or both) is used with this clocking scheme, compared to 16 clock resources (global, regional, or both) needed without the rx_coreclk ports (the quartus ii software-selected receiver phase compensation fifo read clock).
2?52 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation common clock driver selection rules the common clock driver driving the rx_coreclk ports of all channels must have a 0 ppm frequency difference with respect to the receiver phase compensation fifo write clocks of these channels. if there is any frequency difference between the fifo read clock ( rx_coreclk ) and the fifo write clock, the fifo overflows or under runs, resulting in corrupted data transfer between the fpga fabric and the receiver. figure 2?27. sixteen identical channels across four transceiver blocks for example 9 channel [15:12] rx data and status logic rx_coreclk[15:12] transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl2 channel 3 channel 2 channel 1 channel 0 rx_clkout[11:8] rx_coreclk[11:8] channel [11:8] rx data and status logic fpga fabric channel [7:4] rx data and status logic rx_coreclk[7:4] rx_clkout[7:4] transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0 rx_clkout[3:0] rx_coreclk[3:0] channel [3:0] rx data and status logic rx_clkout[15:12] common clock driver
chapter 2: arria ii gx transceiver clocking 2?53 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 table 2?13 shows receiver phase compensation fifo write clocks that the quartus ii software selects in various configurations. to ensure that you understand the 0 ppm clock driver rule, the quartus ii software expects the following set of user assignments whenever the rx_coreclk port is used to drive the receiver phase compensation fifo read clock: gxb 0 ppm core clock setting 1 failing to make this assignment correctly when using the rx_coreclk port results in a quartus ii compilation error. gxb 0 ppm core clock setting the gxb 0 ppm core clock setting is intended for advanced users who know the clocking configuration of the entire system and want to reduce the fpga fabric global and regional clock resource utilization. the gxb 0 ppm core clock setting allows the following clock drivers to drive the rx_coreclk ports: tx_clkout in non-bonded channel configurations with rate matcher tx_clkout and rx_clkout in non-bonded configurations without rate matcher coreclkout in bonded channel configurations fpga clk input pins tr a n sc e iv er refclk pins clock output from the left corner plls (pll_1 and pll_4) 1 the quartus ii software does not allow gated clocks or clocks generated in fpga logic to drive the tx_coreclk ports. table 2?13. receiver phase compensation fifo write clocks configuration receiver phase compensation fifo write clock without byte de-serializer with byte de-serializer non-bonded channel configuration with rate matcher low-speed parallel clock from the local clock divider in the associated channel ( tx_clkout ) divide-by-two version of the low-speed parallel clock from the local clock divider in the associated channel ( tx_clkout ) non-bonded channel configuration without rate matcher parallel recovered clock from the receiver pma in the associated channel ( rx_clkout ) divide-by-two version of the parallel recovered clock from the receiver pma in the associated channel ( rx_clkout ) 4 bonded channel configuration low-speed parallel clock from the cmu0 clock divider of the associated transceiver block ( coreclkout ) divide-by-two version of the low-speed parallel clock from the cmu0 clock divider of the associated transceiver block ( coreclkout ) 8 bonded channel configuration low-speed parallel clock from the cmu0 clock divider of the master transceiver block ( coreclkout from the master transceiver block) divide-by-two version of the low-speed parallel clock from the cmu0 clock divider of the master transceiver block ( coreclkout from the master transceiver block)
2?54 chapter 2: arria ii gx transceiver clocking fpga fabric-transceiver interface clocking arria ii gx device handbook volume 2 ? february 2009 altera corporation since the 0 ppm clock group assignment allows fpga clk input pins and transceiver refclk pins as clock drivers, the quartus ii compiler cannot determine if there is a 0 ppm difference between the fifo write clock and read clock for each channel. 1 you must ensure that the clock driver for all connected rx_coreclk ports has a 0 ppm difference with respect to the fifo write clock in those channels. table 2?14 shows the quartus ii assignments that you must make for the clocking scheme shown in figure 2?27 . example 10: sixteen channels across four transceiver blocks figure 2?28 shows 16 non-bonded channels without rate matcher located across four transceiver blocks. the incoming serial data to all 16 channels have a 0 ppm frequency difference with respect to each other. the rx_coreclk ports of all 16 channels are connected together and driven by rx_clkout[9] in transceiver block gxbl2 . the rx_clkout[9] also clocks the receiver data and status signals of all 16 channels in the fpga fabric. only one global or regional clock resource is used by rx_clkout[9] with this clocking scheme. table 2?14. quartus ii assignments assignment description from: full design hierarchy name of one of the following clock drivers that you choose to drive the rx_coreclk ports of all identical channels (1) : tx_clkout rx_clkout coreclkout fpga clk input pins transceiver refclk pins clock output from left and right or top and bottom plls to: rx_datain pins of all channels whose rx_coreclk ports are connected together and driven by the 0 ppm clock driver. assignment name: gxb 0 ppm core clock setting value: on note to tab l e 2 ?1 4 : (1) you can find the full hierarchy name of the 0 ppm clock driver using the node finder feature in the quartus ii assignment editor.
chapter 2: arria ii gx transceiver clocking 2?55 fpga fabric-transceiver interface clocking ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 2?28. sixteen channels across four transceiver blocks for example 10 channel [15:12] rx data and status logic rx_coreclk[15:12] rx_clkout[15:12] transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl 2 channel 3 channel 2 channel 1 channel 0 rx_coreclk[11:8] channel [11:8] rx data and status logic fpga fabric channel [7:4] rx data and status logic rx_coreclk[7:4] rx_clkout[7:4] transceiver block gxbl 1 channel 3 channel 2 channel 1 channel 0 transceiver block gxbl 0 channel 3 channel 2 channel 1 channel 0 rx_clkout[3:0] rx_coreclk[3:0] channel [3:0] rx data and status logic rx_clkout[11:8] rx_clko ut[9]
2?56 chapter 2: arria ii gx transceiver clocking fpga fabric plls-transceiver plls cascading arria ii gx device handbook volume 2 ? february 2009 altera corporation table 2?15 shows the quartus ii assignments that you must make for the clocking scheme shown in figure 2?28 . fpga fabric plls-transceiver plls cascading the cmu pll synthesizes the input reference clock to generate the high-speed serial clock used in the transmitter pma. the receiver cdr synthesizes the input reference clock in lock-to-reference mode to generate the high-speed serial clock. this high-speed serial clock output from the cmu pll and receiver cdr runs at a frequency that is half the configured data rate. the cmu plls and receiver cdrs only support multiplication factors (m) of 2, 4, 5, 8, 10, 16, 20, and 25. if you use an on-board crystal oscillator to provide the input reference clock through the dedicated refclk pins or itb lines, the allowed crystal frequencies are limited by the cmu pll and receiver cdr multiplication factors. the input reference clock frequencies are also limited by the allowed phase frequency detector (pfd) frequency range between 50 mhz and 325 mhz. example 11: channel configuration for 3 gbps data rate consider a channel configured for 3 gbps data rate. the high-speed serial clock output from the cmu pll and receiver cdr must run at 1.5 gbps. table 2?16 shows the allowed input reference clock frequencies for example 11. table 2?15. quartus ii assignments for example 10 assignment description from: top_level/top_xcvr_instance1/altgx_component/rx_ clkout[9] (1) to: rx_datain[15..0] assignment name: gxb 0 ppm core clock setting value: on note to tab l e 2 ?1 5 : (1) this is an example design hierarchy path for the rx_clkout[9] signal. table 2?16. allowed input reference clock frequencies for example 11 (part 1 of 2) multiplication factor (m) on-board crystal reference clock frequency (mhz) allowed with /n = 1 with /n = 2 2 750 1500 no. violates the pfd frequency limit of 325 mhz. 4 375 750 no. violates the pfd frequency limit of 325 mhz. 5 300 600 yes. 8 187.5 375 yes. 10 150 300 yes. 16 93.75 187.5 yes.
chapter 2: arria ii gx transceiver clocking 2?57 fpga fabric plls-transceiver plls cascading ? february 2009 altera corporation arria ii gx device handbook volume 2 for a 3-gbps data rate, the quartus ii software only allows an input reference clock frequency of 60, 75, 93.75, 150, 187.5, 300, 375, and 750 mhz. to overcome this limitation, arria ii gx devices allow the synthesized clock output from left corner plls in the fpga fabric to drive the cmu pll and receiver cdr input reference clock. the additional clock multiplication factors available in the left corner plls allow more options for on-board crystal oscillator frequencies. dedicated left pll cascade lines network arria ii gx devices have a dedicated pll cascade network on the left side of the device that connects to the input reference clock selection circuitry of the cmu plls and receiver cdrs. the dedicated pll cascade network on the left side of the device connects to the input reference clock selection circuitry of the cmu plls and receiver cdrs in transceiver blocks located on the left side of the device. the dedicated pll cascade networks are segmented by bidirectional tri-state buffers located along the clock line. segmentation of the dedicated pll cascade network allows two left plls to drive the cascade clock line simultaneously to provide the input reference clock to the cmu plls and receiver cdrs in different transceiver blocks. the following sections describe the dedicated pll cascade networks available in the arria ii gx device family. 20 75 150 yes. 25 60 120 yes. table 2?16. allowed input reference clock frequencies for example 11 (part 2 of 2) multiplication factor (m) on-board crystal reference clock frequency (mhz) allowed with /n = 1 with /n = 2
2?58 chapter 2: arria ii gx transceiver clocking fpga fabric plls-transceiver plls cascading arria ii gx device handbook volume 2 ? february 2009 altera corporation the following are the fpga fabric plls-transceiver plls cascading option available for arria ii gx devices with four channels: ep2agx20cu17 ep2agx20cf25 ep2agx30cu17 ep2agx30cf25 ep2agx45cu17 ep2agx65cu17 figure 2?29 shows the fpga fabric plls-transceiver plls cascading option allowed in the ep2agx20cu17, ep2agx20cf25, ep2agx30cf25, ep2agx45cu17, and ep2agx65cu17 devices. the following are the fpga fabric plls-transceiver plls cascading option available for arria ii gx devices with eight channels: ep2agx45df25 ep2agx45df29 ep2agx65df25 ep2agx45df29 figure 2?29. fpga fabric plls-transceiver plls cascading option allowed in the ep2agx20cu17, ep2agx20cf25, ep2agx30cf25, ep2agx45cu17, and ep2agx65cu17 devices pll cascade network pll_1 transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll ep2agx20cu17 ep2agx20cf25 ep2agx30cu17 ep2agx30cf25 ep2agx45cu17 ep2agx65cu17 pll_4
chapter 2: arria ii gx transceiver clocking 2?59 fpga fabric plls-transceiver plls cascading ? february 2009 altera corporation arria ii gx device handbook volume 2 ep2agx95df25 ep2agx125df25 figure 2?30 shows the fpga fabric plls-transceiver plls cascading option allowed in the ep2agx45df25, ep2agx45df29, ep2agx65df25, ep2agx45df29, ep2agx95df25, and ep2agx125df25 devices. the following are the fpga fabric plls-transceiver plls cascading option available for arria ii gx devices with twelve channels: ep2agx95ef29 ep2agx95ef35 ep2agx125ef29 ep2agx125ef35 ep2agx190ef29 ep2agx260ef29 figure 2?30. fpga fabric plls-transceiver plls cascading option allowed in the ep2agx45df25, ep2agx45df29, ep2agx65df25, ep2agx45df29, ep2agx95df25, and ep2agx125df25 devices pll cascade network pll_1 transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll ep2agx45df25 ep2agx45df29 ep2agx65df25 ep2agx45df29 ep2agx95df25 ep2agx125df25 transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll pll_4
2?60 chapter 2: arria ii gx transceiver clocking fpga fabric plls-transceiver plls cascading arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 2?31 shows the fpga fabric plls-transceiver plls cascading option allowed in the ep2agx95ef29, ep2agx95ef35, ep2agx125ef29, ep2agx125ef35, ep2agx190ef29, and ep2agx260ef29 devices. figure 2?31. fpga fabric plls transceiver plls cascading option allowed in the ep2agx95ef29, ep2agx95ef35, ep2agx125ef29, ep2agx125ef35, ep2agx190ef29, and ep2agx260ef29 devices pll cascade network pll_1 transceiver block gxbl2 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll ep2agx95ef29 ep2agx95ef35 ep2agx125ef29 ep2agx125ef35 ep2agx190ef29 ep2agx260ef29 transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll pll_4 transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll
chapter 2: arria ii gx transceiver clocking 2?61 fpga fabric plls-transceiver plls cascading ? february 2009 altera corporation arria ii gx device handbook volume 2 the following are the fpga fabric plls-transceiver plls cascading option available for arria ii gx devices with sixteen channels: ep2agx190ff35 ep2agx260ff35 figure 2?32 shows the fpga fabric plls-transceiver plls cascading option allowed in the ep2agx190ff35 and ep2agx260ff35 devices. figure 2?32. fpga fabric plls-transceiver plls cascading option allowed in the ep2agx190ff35 and ep2agx260ff35 devices pll cascade network pll_1 transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll ep2agx190ff35 ep2agx260ff35 transceiver block gxbl0 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll pll_4 transceiver block gxbl2 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 cdr cdr cdr cdr cmu1 pll cmu0 pll
2?62 chapter 2: arria ii gx transceiver clocking fpga fabric plls-transceiver plls cascading arria ii gx device handbook volume 2 ? february 2009 altera corporation fpga fabric plls-transceiver plls cascading rules pll cascade networks are single clock lines segmented by bidirectional tri-state buffers located along the clock line. segmentation of the pll cascade network allows two left plls to drive the cascade clock line simultaneously to provide two input reference clocks to the cmu plls and receiver cdrs in different transceiver blocks. when cascading two or more fpga fabric plls to the cmu plls and receiver cdrs, there must be no crossover in the cascaded clock paths on the pll cascade network. example 12: design target-ep2agx190ff35 device consider a design targeting the ep2agx190ff35 device and requiring input reference clocks to the following cmu plls and receiver cdrs from two left plls in the fpga fabric: cmu0 pll in transceiver block gxbl1 receiver cdrs in channel 2 and channel 3 in transceiver block gxbl1 case 1: pll_4 is used to provide the input reference clock to the receiver cdrs in channel 2 and channel 3 (shown in green). pll_1 is used to provide the input reference clock to the cmu0 pll (shown in blue) in transceiver block gxbl1.
chapter 2: arria ii gx transceiver clocking 2?63 fpga fabric plls-transceiver plls cascading ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 2?33 shows that this fpga fabric-transceiver pll cascading configuration is illegal due to crossover (shown in red) of cascade clock paths on the pll cascade network. figure 2?33. illegal fpga fabric-transceiver pll cascading configuration cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr ep2agx190ff35 pll cascade network pll_1 transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 cmu1 pll cmu0 pll transceiver block gxbl2 channel 3 channel 2 cmu1 pll cmu0 pll channel 1 channel 0 transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 cmu1 pll cmu0 pll transceiver block gxbl0 channel 3 channel 2 cmu1 pll cmu0 pll channel 1 channel 0 pll_4
2?64 chapter 2: arria ii gx transceiver clocking fpga fabric plls-transceiver plls cascading arria ii gx device handbook volume 2 ? february 2009 altera corporation case 2: pll_1 is used to provide the input reference clock to the receiver cdrs in channel 2 and channel 3 (shown in blue). pll_4 is used to provide the input reference clock to the cmu0 pll (shown in green) in transceiver block gxbl1 . figure 2?34 shows that this fpga fabric-transceiver pll cascading configuration is legal because there is no crossover of the cascade clock paths on the pll cascade network. figure 2?34. legal fpga fabric-transceiver pll cascading configuration cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr cdr ep2agx190ff35 pll cascade network pll_1 transceiver block gxbl3 channel 3 channel 2 channel 1 channel 0 cmu1 pll cmu0 pll transceiver block gxbl2 channel 3 channel 2 cmu1 pll cmu0 pll channel 1 channel 0 transceiver block gxbl1 channel 3 channel 2 channel 1 channel 0 cmu1 pll cmu0 pll transceiver block gxbl0 channel 3 channel 2 cmu1 pll cmu0 pll channel 1 channel 0 pll_4
chapter 2: arria ii gx transceiver clocking 2?65 document revision history ? february 2009 altera corporation arria ii gx device handbook volume 2 document revision history table 2?17 shows the revision history for this chapter. table 2?17. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
2?66 chapter 2: arria ii gx transceiver clocking document revision history arria ii gx device handbook volume 2 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 2 3. configuring multiple protocols and data rates introduction this chapter describes the multiple protocols and data rates for arria ? ii gx devices. each transceiver channel in an arria ii gx device can run at an independent data rate or protocol mode. within each transceiver channel, the transmitter and receiver channel can run at different data rates. each transceiver block consists of two clock multiplier unit (cmu) phase-locked loops (plls) that provide clocks to all the transmitter channels within the transceiver block. each receiver channel contains a dedicated clock data recovery (cdr). this chapter includes the following sections: ?transceiver pll configurations? on page 3?1 ?creating transceiver channel instances? on page 3?2 ?general requirements to combine channels? on page 3?2 ?sharing cmu plls? on page 3?3 ?combining receiver only channels? on page 3?8 ?combining transmitter channel and receiver channel instances? on page 3?9 ?combining channels configured in protocol functional modes? on page 3?10 ?combining transceiver instances using pll cascade clocks? on page 3?12 ?combining transceiver instances in multiple transceiver blocks? on page 3?13 ?summary? on page 3?15 transceiver pll configurations you can configure each transmitter channel to use one of the two cmu plls in the transceiver block. in addition, each transmitter channel has a local divider (/1, /2, or /4) that divides the high-clock output of the cmu pll to provide high-speed serial and low-speed parallel clocks for its physical coding sublayer (pcs) and physical medium attachment (pma) functional blocks. you can configure the rx cdr present in the receiver channel to a distinct data rate and provide separate input reference clocks. each receiver channel also contains a local divider that divides the high-speed clock output of the rx cdr and provides clocks for its pcs and pma functional blocks. to enable transceiver channel settings, the quartus ? ii software provides the altgx megawizard ? plug-in manager interface. the altgx megawizard plug-in manager allows you to instantiate a single transceiver channel or multiple transceiver channels in receiver and transmitter , receiver only , and transmitter only configurations. aiigx52003-1.0
3?2 chapter 3: configuring multiple protocols and data rates creating transceiver channel instances arria ii gx device handbook volume 2 ? february 2009 altera corporation creating transceiver channel instances you can instantiate multiple transceiver channels in the general screen of the altgx megawizard plug-in manager in the following ways: for the what is the number of channels? option, select the required value. this method creates the transceiver channels with identical configurations. for examples, refer to ?combining transceiver instances in multiple transceiver blocks? on page 3?13 . for the what is the number of channels? option, select 1 and create a single channel transceiver instance. to instantiate additional transceiver channels with an identical configuration, stamp the created altgx instance multiple times. if you need additional transceiver channels with different configurations, create separate altgx megafunction instances with different settings and use them in your design. when you create instances using the above methods, you can force the placement of up to four transceiver channels within the same transceiver block. this is done by assigning the tx_dataout and rx_datain ports of the channel instances to a single transceiver bank. if you do not assign pins to the tx_dataout and rx_datain ports, the quartus ii software chooses default pin assignments. when you compile the design, the quartus ii software combines multiple channel instances within the same transceiver block if the instances meet specific requirements. the following sections explain these requirements for different transceiver configurations. general requirements to combine channels when you create multiple altgx instances, the quartus ii software requires that you set identical values on the following parameters and signals to combine the altgx instances within the same transceiver block or in the transceiver blocks on the same side of the device. the following sections describe these requirements. control signals the gxb_powerdown port is an optional port that you can enable in the altgx megawizard plug-in manager. if enabled, you must drive the gxb_powerdown port in the altgx instances from the same logic or the same input pin to enable the quartus ii software to assign them in the same transceiver block. if the gxb_powerdown port is disabled, the quartus ii software ties the port to ground. calibration clock and power down each calibration block in an arria ii gx device is shared by multiple transceiver blocks. if your design uses multiple transceiver blocks, depending on the transceiver banks selected, you must connect the cal_blk_clk and cal_blk_powerdown ports of all channel instances to the same input pin or logic. f for more information about the calibration block and transceiver banks that are connected to a specific calibration block, refer to the ?calibration block? section in the arria ii gx transceiver architecture chapter in volume 2 of the arria ii gx device handbook .
chapter 3: configuring multiple protocols and data rates 3?3 sharing cmu plls ? february 2009 altera corporation arria ii gx device handbook volume 2 1 asserting the cal_blk_powerdown port affects the calibration circuit on all transceiver channels connected to the calibration block. sharing cmu plls 1 each arria ii gx transceiver block contains two cmu plls. when you create multiple transceiver channel instances and intend to combine them in the same transceiver block, the quartus ii software checks whether a single cmu pll can be used to provide clock outputs for the transmitter side of the channel instances. if a single cmu pll is not sufficient, the quartus ii software attempts to combine the channel instances using two cmu plls. otherwise, the quartus ii software issues a fitter error. the following two sections describe the altgx instance requirements to enable the quartus ii software to share the cmu pll. 1 only channels combined within the same transceiver block can share the two cmu plls available in a transceiver block. multiple channels sharing a cmu pll to enable the quartus ii software to share the same cmu pll for multiple channels, the following parameters in the channel instantiations must be identical: base data rate (the cmu pll is configured for this data rate) cmu pll bandwidth setting reference clock frequency input reference clock pin pll_powerdown port of the altgx instances must be driven from the same logic each channel instance can have a different local divider setting. this is a useful option when you intend to run each channel within the transceiver block at different data rates that are derived from the same base data rate using the local divider values /1, /2, and /4. this is shown in example 1 . example 1 consider an example design with four instances in a receiver and transmitter configuration in the same transceiver block at the following serial data rates. assume that each instance contains a channel, is driven from the same clock source, and has the same cmu pll bandwidth settings.
3?4 chapter 3: configuring multiple protocols and data rates sharing cmu plls arria ii gx device handbook volume 2 ? february 2009 altera corporation table 3?1 shows the configuration for example 1. for example 1, you can share a single cmu pll for all four channels: one cmu pll can be configured to run at 3.75 gbps. each channel can divide the cmu pll clock output using the local divider and achieve the required data rates of 3.75 gbps, 1.875 gbps, and 0.9375 gbps. because each receiver channel has a dedicated cdr, the receiver side in each instance can be set up for these three data rates without restrictions. the following steps show you how to achieve the configuration. to enable the quartus ii software to share a single cmu pll for all four channels, set the following values in the general screen of the altgx megawizard plug-in manager. for inst0: set what is the effective data rate? to 3.75 gbps set specify base data rate to 3.75 gbps for inst1: set what is the effective data rate? to 1.875 gbps set specify base data rate to 3.75 gbps for inst2: set what is the effective data rate? to 0.9375 gbps set specify base data rate to 3.75 gbps for inst3: set what is the effective data rate? to 3.75 gbps set specify base data rate to 3.75 gbps 1 the specify base data rate option is 3.75 gbps for all four instances. because the cmu pll bandwidth setting and input reference clock are the same and the pll_powerdown ports are driven from the same logic or pin, the quartus ii software shares a single cmu pll that runs at 3.75 gbps. you can force the placement of transceiver channels to a specific transceiver block by assigning pins to tx_dataout and rx_datain . otherwise, the quartus ii software selects a transceiver block. tab le 3 ?1 . configuration for example 1 user-created instance name altgx megawizard plug-in manager settings number of channels configuration effective data rate inst0 1 receiver and transmitter 3.75 gbps inst1 1 receiver and transmitter 0.9375 gbps inst2 1 receiver and transmitter 1.875 gbps inst3 1 receiver and transmitter 3.75 gbps
chapter 3: configuring multiple protocols and data rates 3?5 sharing cmu plls ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 3?1 shows the scenario before and after the quartus ii software combines the transceiver channel instances. because the rx cdr is not shared between channels, only the cmu pll is shown. 1 each altgx instance has a pll_powerdown port. you must drive the pll_powerdown ports of all instances from the same logic to allow the quartus ii software to share the same cmu pll. if you drive the pll_powerdown ports of the altgx instance using different logic, the quartus ii software does not use the same cmu pll even if all the other required parameters of all the altgx instances are identical. figure 3?1. altgx instances before and after compilation for example 1 altgx effective data rate: 3.75 g bps cmu pll base data rate: 3.75 gbps inst 0 altgx effective data rate: 1.875 g bps cmu pll base data rate: 3.75 gbps inst 1 altgx effective data rate: 0.9375 g bps cmu pll base data rate: 3.75 gbps inst 2 altgx effective data rate: 3.75 g bps cmu pll base data rate: 3.75 gbps inst 3 transceiver block inst 0 effective data rate: 3.75 g bps tx loc div: /1 inst 1 inst 2 inst 3 effective data rate: 1.875 g bps tx loc div: /2 effective data rate: 0.9375 g bps tx loc div: /4 effective data rate: 3.75 g bps tx loc div: /1 cmu pll base data rate: 3.75 gbps before compilation example 1 after compilation example 1
3?6 chapter 3: configuring multiple protocols and data rates sharing cmu plls arria ii gx device handbook volume 2 ? february 2009 altera corporation multiple channels sharing two cmu plls in some cases, a single cmu pll is not sufficient to run the transmitter channels within a transceiver block at the desired data rates. using a second cmu pll is useful if you want to combine channels that require different configurations, such as: quartus ii software-defined protocols (for example, basic, gigabit ethernet [gige], sonet/synchronous digital hierarchy [sdh], serial digital interface [sdi], or pci express [pipe] modes) cmu pll bandwidth settings different input reference clocks example 2 consider a design that requires four channels set up in a receiver and transmitter configuration in the same transceiver block at the serial data rates shown in table 3?2 . assume that instance 0, 1, and 2 are driven from the same clock source and have the same cmu pll bandwidth settings. in this case, you can use one cmu pll for instance 0, 1, and 2. refer to ?example 1? on page 3?3 for the altgx megawizard plug-in manager settings that enable the quartus ii software to share the same cmu pll. a second cmu pll is required for instance 3. you can force the placement of transceiver channels to a specific transceiver block by assigning pins to the tx_dataout and rx_datain pins of the four altgx instances. otherwise, the quartus ii software selects a transceiver block. figure 3?2 shows the transceiver configuration before and after the quartus ii software combines the transceiver channels within the same transceiver block. because the rx cdr is not shared between channels, only the cmu plls are shown. 1 you must connect the pll_powerdown port of instance 0, 1, and 2 to the same logic output to share the same cmu pll for these instances. tab le 3 ?2 . configuration for example 2 user-created instance name altgx megawizard plug-in manager settings number of channels configuration effective data rate inst0 1 receiver and transmitter 3.75 gbps inst1 1 receiver and transmitter 1.875 gbps inst2 1 receiver and transmitter 0.9375 gbps inst3 1 receiver and transmitter 2 gbps
chapter 3: configuring multiple protocols and data rates 3?7 sharing cmu plls ? february 2009 altera corporation arria ii gx device handbook volume 2 figure 3?2. altgx transceiver channel instances before and after compilation for example 2 altgx effective data rate: 3.75 g bps cmu pll base data rate: 3.75 gbps inst 0 altgx effective data rate: 1.875 g bps cmu pll base data rate: 3.75 gbps inst 1 altgx effective data rate: 0.9375 g bps cmu pll base data rate: 3.75 gbps inst 2 altgx effective data rate: 2 g bps cmu pll base data rate: 2 gbps inst 3 before compilation example 2 transceiver block inst 0 effective data rate: 3.75 g bps tx loc div: /1 inst 1 inst 2 inst 3 effective data rate: 1.875 g bps tx loc div: /2 effective data rate: 0.9375 g bps tx loc div: /4 effective data rate: 2 g bps tx loc div: /1 cmu pll base data rate: 3.75 gbps cmu pll base data rate: 2 gbps after compilation example 2
3?8 chapter 3: configuring multiple protocols and data rates combining receiver only channels arria ii gx device handbook volume 2 ? february 2009 altera corporation in cases where you have two instances with the same serial data rate but with different cmu pll data rates, the quartus ii software creates a separate cmu pll for the two instances. for example, consider the configuration shown in table 3?3 . 1 even though the effective data rate of inst1 is 1.5 gbps (3 gbps/2 = 1.5 gbps), the same as inst0, when you compile the design, the quartus ii software requires two cmu plls to provide clocks for the transmitter side of the two instances because their base data rates are different. in this example, you have the third instance, inst2, that requires a third cmu pll. therefore, the quartus ii software cannot combine the above three instances within the same transceiver block. combining receiver only channels you can selectively use the receiver in the transceiver channel by selecting the receiver only configuration in the what is the operating mode? option on the general screen of the altgx megawizard plug-in manager. you can combine receiver only channel instances of different configurations and data rates into the same transceiver block. since each receiver channel contains its own dedicated cdr, each receiver only instance (assuming one receiver channel per instance) can have different data rates. 1 for the quartus ii software to combine the receiver only instances within the same transceiver block, you must connect gxb_powerdown (if used) of all the channel instances from the same logic or input pin. for more information, refer to ?general requirements to combine channels? on page 3?2 . it is possible to have up to four receiver channels that can run at different data rates by using separate input reference clocks if there are enough clock routing resources available. if you instantiate the receiver only configuration, the altgx megawizard plug-in manager does not allow you to enable the rate matching fifo (clock rate compensation fifo) in the receiver channel pcs because tx_clkout is not available in a receiver only instance to clock the read side of the rate matching fifo. if you need to perform clock rate compensation, implement the rate matching fifo in the fpga fabric. 1 if you create a receiver only instance and do not use the transmitter channel that is present in the same physical transceiver channel, the quartus ii software automatically powers down the unused transmitter channel. tab le 3 ?3 . sample configuration where instances cannot be combined in a single transceiver block user-created instance name altgx megawizard plug-in manager settings number of channels configuration effective data rate base data rate inst0 1 receiver and transmitter 1.5 gbps 1.5 gbps inst1 1 receiver and transmitter 1.5 gbps 3.0 gbps inst2 1 receiver and transmitter 1 gbps 1 gbps
chapter 3: configuring multiple protocols and data rates 3?9 combining transmitter channel and receiver channel instances ? february 2009 altera corporation arria ii gx device handbook volume 2 combining transmitter channel and receiver channel instances you can create a separate transmitter channel instance and a separate receiver channel instance and assign the tx_dataout and rx_datain pins of the transmitter and receiver instance, respectively, in the same physical transceiver channel. this configuration is useful in cases where you intend to run the transmitter and receiver channel at different serial data rates. to create a transmitter channel instance and a receiver channel instance, select the transmitter only and receiver only options in the operating mode ( general screen) of the altgx megawizard plug-in manager. multiple transmitter channel and receiver channel instances the quartus ii software allows you to combine multiple transmitter only channel and receiver only channel instances within the same transceiver block. based on the pin assignments, the quartus ii software combines the corresponding transmitter only and receiver only channels in the same physical channel. to enable the quartus ii software to combine the transmitter channel and receiver channel instances in the same transceiver block, follow the rules and requirements outlined in the following sections: ?general requirements to combine channels? on page 3?2 ?multiple channels sharing a cmu pll? on page 3?3 ?multiple channels sharing two cmu plls? on page 3?6 ?combining receiver only channels? on page 3?8 example 3 consider that you create four altgx instances, as shown in table 3?4 . after you create the above instances, if you force the placement of the instances shown in table 3?5 , the quartus ii software combines inst0 and inst1 into physical channel 0 and inst2 and inst3 into physical channel 1. tab le 3 ?4 . four altgx instances for example 3 instance name configuration effective data rate input reference clock frequency inst0 transmitter only 3.125 gbps 156.25 mhz inst1 receiver only 2.5 gbps 156.25 mhz inst2 transmitter only 1.25 gbps 125 mhz inst3 receiver only 2 gbps 125 mhz tab le 3 ?5 . forced placement of the instances for example 3 instance name physical channel pin assignments in the same transceiver block inst0 tx pin of channel 0 inst1 rx pin of channel 0 inst2 tx pin of channel 1 inst3 rx pin of channel 1
3?10 chapter 3: configuring multiple protocols and data rates combining channels configured in protocol functional modes arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 3?3 shows the transceiver channel instances before and after compilation. combining channels configured in protocol functional modes the following sections describe combining channels that are configured in protocol functional modes. basic x4 mode the altgx megawizard plug-in manager provides a basic mode with a 4 option in the which sub-protocol will you be using? option on the general screen. if you select this option, all the transmitter channels within the transceiver block receive the high-speed serial and low-speed parallel clock from the cmu0 clock divider block (present in the cmu0 channel). each receiver channel within the transceiver block is clocked independently by the recovered clock from its receiver cdr. figure 3?3. altgx transceiver channel instances before and after compilation for example 3 altgx effective data rate: 3.125 g bps cmu pll base data rate: 3.125 gbps inst 0 altgx rx cdr base data rate: 2.5 gbps inst 1 altgx effective data rate: 1.25 g bps cmu pll base data rate: 1.25 gbps inst 2 altgx rx cdr base data rate: 2 gbps inst 3 before compilation example 3 transceiver block inst 0 effective data rate: 3.25 g bps tx loc div: /1 inst 1 effective data rate: 2.5 g bps cmu pll base data rate: 3.125 gbps cmu pll base data rate: 1.25 gbps transceiver channel0 inst 2 tx channel effective data rate: 1.25 g bps tx loc div: /1 inst 3 effective data rate: 2 g bps transceiver channel1 tx channel rx channel rx channel after compilation example 3
chapter 3: configuring multiple protocols and data rates 3?11 combining channels configured in protocol functional modes ? february 2009 altera corporation arria ii gx device handbook volume 2 when you use this mode, the altgx megawizard plug-in manager allows you to select one or more channels from the what is the number of channels? option on the general screen. 1 if you select the number of channels to be less than four, the remaining transmitter channels within the transceiver block cannot be used. therefore, if you have more than one instance configured in transmit only or receiver and transmitter mode with the 4 option enabled, the quartus ii software cannot combine the instances within the same transceiver block. only the transmitter channels share a common clock. the receiver channels are clocked independently. therefore, you can configure the unused receiver channels within a transceiver block in any allowed configuration. for example, assume that you configure the altgx megawizard plug-in manager with the options shown in table 3?6 . if you create the instance with the above selection, you cannot use the remaining two transmitter channels in the transceiver block. however, you can use the remaining two receiver channels in a different configuration. figure 3?4 shows examples of supported and unsupported configurations. tab le 3 ?6 . general screen options in basic 4 mode option value what protocol will you be using? basic mode which subprotocol will you be using? 4 what is the operating mode? receiver and transmitter what is the number of channels? 2 figure 3?4. examples of supported and unsupported configurations to combine instances in basic 4 mode transceiver block transceiver block transceiver block instance 0 2 channels receiver and transmitter basic mode and 4 sub-protocol instance 1 2 channels receiver only basic mode (any config u ration) su pported configu ration instance 0 2 channels receiver and transmitter basic mode and 4 sub-protocol instance 1 2 channels transmitter only basic mode (any configuration) unsupported configuration instance 0 2 channels receiver and transmitter basic mode and 4 sub-protocol instance 1 2 channels receiver and transmitter basic mode and 4 sub-protocol unsupported configuration
3?12 chapter 3: configuring multiple protocols and data rates combining transceiver instances using pll cascade clocks arria ii gx device handbook volume 2 ? february 2009 altera corporation combining channels using the pci express hard ip block with other channels the arria ii gx device contains an embedded pci express hard ip block that performs the phymac, datalink, and transaction layer functionality specified by pci express base specification 2.0. each pci express hard ip block is shared by two transceiver blocks. the pci express compiler wizard provides you the options to configure the pci express hard ip block. when enabled, the transceiver channels associated with this block are enabled. there are restrictions on combining transceiver channels with different functional and/or protocol modes (for example, basic mode) within two contiguous transceiver blocks with the channels that use pci express hard ip block. the restrictions depend on the number of channels used (1 or 4) and the number of virtual channels (vc) selected in the pci express compiler megawizard plug-in manager. table 3?7 shows the restrictions. f for more information about the pci express compiler megacore functions and hard ip implementation, refer to the pci express compiler user guide . combining transceiver instances using pll cascade clocks the arria ii gx device provides multiple input reference clock sources to clock the cmu plls and rx cdrs in each transceiver block. the following are the input reference clock sources that can clock the cmu plls and rx cdrs: refclks from the same transceiver block global clock lines refclks from transceiver blocks on the same side of the device using the inter-transceiver block (itb) lines pll cascade clock (this is the cascaded clock output from the plls in the fpga fabric) tab le 3 ?7 . pci express hard ip block restrictions when combining transceiver channels with different functional and/or protocol modes (note 1) , (2) pci express configuration (pci express hard ip options enabled in the pcie compiler wizard) transceiver block 0 (3) transceiver block 1 (4) link width lane (data interface width) virtual channel (vc) ch0 (5) ch1 ch2 ch3 ch4 ch5 ch6 ch7 1 64 bit 1 pcie 1 avail. avail. avail. avail. avail. avail. avail. 4 64 bit 1 pcie 4 n/a n/a n/a avail. avail. avail. avail. 8 128 bit 1 pcie 8 n/a n/a n/a n/a n/a n/a n/a notes to ta bl e 3? 7 : (1) avail.?the channels can be used in other configurations. (2) n/a?the channels are not available for use. (3) transceiver block 0?the master transceiver block that provides high-speed serial and low-speed parallel clocks in a pci express (pipe) 4 or 8 configuration. (4) transceiver block 1?the adjacent transceiver block that shares the same pci express hard ip block with transceiver block 0. (5) the physical channel 0 in the transceiver block. for more in formation about physical-to-logical channel mapping in pci expre ss (pipe) functional mode, refer to the ?8 channel configuration? section in the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook .
chapter 3: configuring multiple protocols and data rates 3?13 combining transceiver instances in multiple transceiver blocks ? february 2009 altera corporation arria ii gx device handbook volume 2 if you use the pll cascade clock to provide input reference clocks to the cmu plls or rx cdrs, there are requirements for combining transceiver channels (as described in the following sections). the arria ii gx transceiver has the ability to cascade the output of the general purpose plls to the cmu plls and receiver cdrs. the left side of the arria ii gx device contains a pll cascade clock network?a single line network that connects the pll cascade clock to the transceiver block. this clock line is segmented to allow different pll cascade clocks to drive the transceiver cmu plls and rx cdrs. the segmentation locations differ based on the device family. therefore, there are restrictions when you want to combine transceiver channels that use different pll cascade clocks as input reference clocks. f for more information about using the pll cascade clock and segmentation, refer to the ?pll cascading? section in the arria ii gx transceiver clocking chapter in volume 2 of the arria ii gx device handbook . combining transceiver instances in multiple transceiver blocks ?creating transceiver channel instances? on page 3?2 describes the method to instantiate multiple transceiver channels using a single altgx instance. the following section describes the method to instantiate multiple transceiver channels using multiple transceiver blocks. when you create a transceiver instance that has more than four transceiver channels, the quartus ii software attempts to combine the transceiver channels in multiple transceiver blocks. this is shown in example 4 . example 4 consider that you create two altgx instances with the configuration shown in table 3?8 . in this case, assuming that all the required parameters specified in ?multiple channels sharing a cmu pll? on page 3?3 are identical in inst0 and inst1, the quartus ii software fits inst0 and inst1 in two transceiver blocks. tab le 3 ?8 . two altgx instances for example 4 instance name number of transceiver channels configuration effective data rate input reference clock inst0 7 receiver and transmitter 3.125 gbps 156.25 gbps inst1 1 receiver and transmitter 3.125 gbps 156.25 gbps
3?14 chapter 3: configuring multiple protocols and data rates combining transceiver instances in multiple transceiver blocks arria ii gx device handbook volume 2 ? february 2009 altera corporation figure 3?5 shows the transceiver instances before compilation for example 4. figure 3?6 shows the transceiver instances after compilation for example 4. 1 you can force the placement of the transceiver channels in specific transceiver banks by assigning pins to the tx_dataout and rx_datain ports of inst0 and inst1. figure 3?5. transceiver channel instances before compilation for example 4 figure 3?6. combined transceiver instances after compilation for example 4 inst0 effective data rate: 3.125 g bps inpu t clock frequ ency: 156.125 mhz numb er of channels: 7 inst1 effective data rate: 3.125 g bps inpu t clock frequ ency: 156.25 mhz numb er of channels: 1 transceiver block 0 ch3 of inst0 effective data rate: 3.125 g bps ch2 of inst0 effective data rate: 3.125 g bps cmu pll base data rate: 3.125 gbps effective data rate: 3.125 g bps ch1 of inst0 ch0 of inst0 effective data rate: 3.125 g bps transceiver block 1 effective data rate: 3.125 g bps ch0 of inst1 effective data rate: 3.125 g bps ch6 of inst0 cmu pll base data rate: 3.125 gbps effective data rate: 3.125 g bps ch5 of inst0 effective data rate: 3.125 g bps ch4 of inst0
chapter 3: configuring multiple protocols and data rates 3?15 summary ? february 2009 altera corporation arria ii gx device handbook volume 2 1 even though inst0 instantiates seven transceiver channels, the altgx megawizard plug-in manager provides only one bit for the pll_inclk port for inst0. in your design, provide only one clock input for the pll_inclk port. the quartus ii software uses two transceiver blocks to fit the seven channels and internally connects the input reference clock (connected to the pll_inclk port in your design) to the cmu plls of two transceiver blocks. 1 for inst1, the altgx megawizard plug-in manager provides a pll_inclk port. in this example, it is assumed that a single reference clock is provided for inst0 and inst1. therefore, connect the pll_inclk port of inst0 and inst1 to the same input reference clock pin. this enables the quartus ii software to share a single cmu pll in transceiver block1 that has three channels of inst0 and one channel of inst1 (shown as ch5, ch6, and ch7 in transceiver block 1) in figure 3?6 . for the rx cdrs in inst0, the altgx megawizard plug-in manager provides seven bits for the rx_cruclk port (if you do not select the train receiver cdr from pll_inclk option in the pll/ports screen). this allows separate input reference clocks to the rx cdrs of each channel. summary the following summarizes how to configure multiple protocols and data rates in a transceiver block: you can run each transceiver channel at independent data rates or protocol functional modes. each transceiver block consists of two cmu plls that provide clocks to run the transmitter channels within the transceiver block. to enable the quartus ii software to combine multiple instances of transceiver channels within a transceiver block, follow the rules specified in ?general requirements to combine channels? on page 3?2 and ?sharing cmu plls? on page 3?3 . you can reset each cmu pll within a transceiver block using a pll_powerdown signal. for each transceiver instance, the altgx megawizard plug-in manager provides an option to select the pll_powerdown port. if you want to share the same cmu pll between multiple transceiver channels, connect the pll_powerdown ports of the instances and drive the signal from the same logic. if you enable the pci express hard ip block using the pci express compiler, the quartus ii software has certain requirements about using the remaining transceiver channels within the transceiver block in other configurations. for more information, refer to ?combining channels using the pci express hard ip block with other channels? on page 3?12 .
3?16 chapter 3: configuring multiple protocols and data rates document revision history arria ii gx device handbook volume 2 ? february 2009 altera corporation document revision history table 3?9 shows the revision history for this chapter. tab le 3 ?9 . document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
? march 2009 altera corporation arria ii gx device handbook volume 2 4. reset control and power down introduction arria ? ii gx devices offer multiple reset signals to control transceiver channels and clock multiplier unit (cmu) phase-locked loops (plls) independently. the altgx transceiver megawizard ? plug-in manager provides individual reset signals for each channel instantiated in the design. it also provides one power-down signal for each transceiver block. this chapter includes the following sections: ?user reset and power-down signals? on page 4?1 ?transceiver reset sequences? on page 4?4 ?dynamic reconfiguration reset sequences? on page 4?17 ?power down? on page 4?20 ?simulation requirements? on page 4?20 figure 4?1 shows the reset control and power-down block for an arria ii gx device. user reset and power-down signals each transceiver channel in the arria ii gx device has individual reset signals to reset its physical coding sublayer (pcs) and physical medium attachment (pma) blocks. each cmu pll in the transceiver block has a dedicated reset signal. the transceiver block also has a power-down signal that affects all the channels and cmu plls in the transceiver block. 1 all reset and power-down signals are asynchronous. figure 4?1. reset control and power-down block reset controller tx_digitalreset rx_digitalreset rx_analogreset pll_powerdown gxb_powerdown aiigx52004-1.1
4?2 chapter 4: reset control and power down user reset and power-down signals arria ii gx device handbook volume 2 ? march 2009 altera corporation the following reset signals are available for each transceiver channel: tx_digitalreset ?provides asynchronous reset to all digital logic in the transmitter pcs, including the xaui transmit state machine, the built-in self test (bist) pseudo-random binary sequence (prbs) generator, and the bist pattern generator. this signal is available in the altgx megawizard plug-in manager in transmitter only and receiver and transmitter configurations. the minimum pulse width for this signal is two parallel clock cycles. rx_digitalreset ?resets all digital logic in the receiver pcs, including the xaui and gige receiver state machine, the xaui channel alignment state machine, the bist-prbs verifier, and the bist-incremental verifier. this signal is available in the altgx megawizard plug-in manager in receiver only and receiver and transmitter configurations. the minimum pulse width for this signal is two parallel clock cycles. 1 the tx_digitalreset and rx_digitalreset signals must be asserted until the clocks out of the transmitter pll and receiver cdr are stabilized. stable parallel clocks are essential for proper operation of transmitter and receiver phase compensation fifos in the pcs. rx_analogreset ?resets the receiver cdr present in the receiver channel. this signal is available in the altgx megawizard plug-in manager in receiver only and receiver and transmitter configurations. the minimum pulse width is two parallel clock cycles. the following power-down signal is available for each cmu pll in the transceiver block: pll_powerdown ?each transceiver block has two cmu plls. each cmu pll has a dedicated power-down signal called pll_powerdown . the pll_powerdown signal powers down the cmu plls that provide high-speed serial and low-speed parallel clocks to the transceiver channels. the following power-down signal is common to the transceiver block: gxb_powerdown ?powers down the entire transceiver block. when this signal is asserted, the pcs and pma in all the transceiver channels and the cmu plls are powered down. this signal operates independently from the other reset signals. 1 the refclk ( refclk0 or refclk1 ) buffer is not powered down by any of the above signals. the following status signals are available: pll_locked ?indicates the status of the transmitter pll. a high on this signal shows that the transmitter pll is locked to the incoming reference clock frequency. rx_pll_locked ?a high on this signal shows that the receiver cdr is locked to the incoming reference clock frequency.
chapter 4: reset control and power down 4?3 user reset and power-down signals ? march 2009 altera corporation arria ii gx device handbook volume 2 rx_freqlocked ?indicates the status of the receiver cdr lock mode. a high level indicates that the receiver is in lock-to-data mode. a low level indicates that the receiver cdr is in lock-to-reference mode. busy ?indicates the status of the dynamic reconfiguration controller. the busy signal remains low for the first reconfig_clk clock cycle after power up. it then gets asserted from the second reconfig_clk clock cycle. assertion on this signal indicates that the offset cancellation process is being executed on the receiver buffer as well as the receiver cdr. when this signal is de-asserted, it indicates that the offset cancellation is complete. f for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices. this application note will be available in march, 2009. to review this document when it is available, go to the literature page of the altera website ( www.altera.com ). 1 if none of the channels is instantiated in a transceiver block, the quartus ? ii software automatically powers down the entire transceiver block. blocks affected by reset and power down signals table 4?1 shows the blocks that are affected by specific reset and power-down signals. tab le 4 ?1 . blocks affected by reset and power-down signals transceiver block rx_digitalreset rx_analogreset tx_digitalreset pll_powerdown gxb_powerdown cmu plls vv transmitter phase compensation fifo vv byte serializer vv 8b/10b encoder vv serializer vv transmitter buffer v transmitter xaui state machine vv receiver buffer v receiver cdr vv receiver deserializer v receiver word aligner vv receiver deskew fifo vv receiver clock rate compensation fifo vv receiver 8b/10b decoder vv receiver byte deserializer vv receiver byte ordering vv receiver phase compensation fifo vv receiver xaui state machine vv
4?4 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation transceiver reset sequences you can configure transceiver channels in arria ii gx devices in various configurations. in all functional modes except xaui functional mode, transceiver channels can be either bonded or non-bonded. in xaui functional mode, transceiver channels must be bonded. in pci express (pipe) functional mode, transceiver channels can be either bonded or non-bonded and need to follow a specific reset sequence. the two categories of reset sequences for arria ii gx devices described in this chapter are: ?all supported functional modes except pci express (pipe) functional mode? on page 4?6 ?describes the reset sequences in bonded and non-bonded configurations. ?pci express (pipe) functional mode? on page 4?15 ?describes the reset sequence for the initialization/compliance phase and normal operation phase in pci express (pipe) functional modes. 1 the busy signal remains low for the first reconfig_clk clock cycle. it then gets asserted from the second reconfig_clk clock cycle. subsequent de-assertion of the busy signal indicates the completion of the offset cancellation process. this busy signal is required in transceiver reset sequences except for transmitter only channel configurations. refer to the reset sequences shown in figure 4?2 and the associated references listed in the notes.
chapter 4: reset control and power down 4?5 transceiver reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 1 altera strongly recommends adhering to these reset sequences for proper operation of the arria ii gx transceiver. figure 4?2. transceiver reset sequences chart note to figure 4?2 : (1) refer to the timing diagram in figure 4?10 . (2) refer to the timing diagram in figure 4?3 . (3) refer to the timing diagram in figure 4?4 . (4) refer to the timing diagram in figure 4?5 . (5) refer to the timing diagram in figure 4?6 . (6) refer to the timing diagram in figure 4?7 . (7) refer to the timing diagram in figure 4?8 . (8) refer to the timing diagram in figure 4?9 . reset seq u ence all supported functional modes except pci express (pipe) pci express (pipe) initialization and compliance and normal operation phases (1) bonded non-bonded "transmitter only" channel (2) "receiver and transmitter" channel receiver cdr in automatic lock mode (3) receiver cdr in manual lock mode (4) "transmitter only" channel (2) "receiver only" channel "receiver and transmitter" channel receiver cdr in automatic lock mode (5) receiver cdr in manual lock mode (6) receiver cdr in automatic lock mode (7) receiver cdr in manual lock mode (8)
4?6 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation all supported functional modes except pci express (pipe) functional mode this section describes the reset sequences for transceiver channels in bonded and non-bonded configurations. timing diagrams of some typical configurations are shown to facilitate proper reset sequence implementation. in these functional modes, you can set the receiver cdr either in automatic lock or manual lock mode. 1 in manual lock mode, the receiver cdr locks to the reference clock (lock-to-reference) or the incoming serial data (lock-to-data), depending on the logic levels on the rx_locktorefclk and rx_locktodata signals. with the receiver cdr in manual lock mode, you can either configure the transceiver channels in the arria ii gx device in a non-bonded configuration or a bonded configuration. in a bonded configuration, such as xaui mode, four channels are bonded together. table 4?2 shows the lock-to-reference (ltr) and lock-to-data (ltd) controller lock modes for the rx_locktorefclk and rx_locktodata signals. bonded channel configuration in a bonded channel configuration, you can reset all the bonded channels simultaneously. examples of bonded channel configurations are xaui, pci express (pipe), and basic 4 functional modes. in basic 4 functional mode, you can bond transmitter only channels together. in xaui mode, the receiver and transmitter channels are bonded. each of the receiver channels in this mode has its own output status signals, rx_pll_locked and rx_freqlocked . the timing of these signals is considered in the reset sequence. the following timing diagrams describe the reset and power-down sequences for bonded configurations under the following set-ups: transmitter only channel set-up?applicable to basic 4 functional mode receiver and transmitter channel set-up?receiver cdr in automatic lock mode; applicable to xaui functional mode receiver and transmitter channel set-up?receiver cdr in manual lock mode; applicable to xaui functional mode tab le 4 ?2 . lock-to-reference and lock-to-data modes rx_locktorefclk rx_locktodata ltr/ltd controller lock mode 1 0 manual, ltr mode ? 1 manual, ltd mode 0 0 automatic lock mode
chapter 4: reset control and power down 4?7 transceiver reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 transmitter only channel this configuration contains only a transmitter channel. if you create a transmitter only instance in the altgx megawizard plug-in manager in basic 4 functional mode, use the reset sequence shown in figure 4?3 . as shown in figure 4?3 , perform the following reset sequence steps for the transmitter only channel configuration: 1. after power up, assert pll_powerdown for a minimum period of 1 s (the time between markers 1 and 2). 2. keep the tx_digitalreset signal asserted during this time period. after you de-assert the pll_powerdown signal, the transmitter pll starts locking to the transmitter input reference clock. 3. after the transmitter pll locks, as indicated by the pll_locked signal going high (marker 3), de-assert the tx_digitalreset signal (marker 4). the transmitter is ready for transmitting data. figure 4?3. sample reset sequence for four transmitter only channels note to figure 4?3 : (1) to be characterized. reset and po wer-dow n signals 12 4 o u p u t stat u s signals 3 pll_powerdown tx_digitalreset pll_locked 1 s (1)
4?8 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver and transmitter channel?receiver cdr in automatic lock mode this configuration contains both a transmitter and receiver channel. for xaui functional mode, with the receiver cdr in automatic lock mode, use the reset sequence shown in figure 4?4 . as shown in figure 4?4 , perform the following reset sequence steps for the receiver cdr in automatic lock mode configuration: 1. after power up, assert pll_powerdown for a minimum period of 1 s (the time between markers 1 and 2). 2. keep the tx_digitalreset, rx_analogreset , and rx_digitalreset signals asserted during this time period. after you de-assert the pll_powerdown signal, the transmitter pll starts locking to the transmitter input reference clock. 3. after the transmitter pll locks, as indicated by the pll_locked signal going high, de-assert the tx_digitalreset signal. at this point, the transmitter is ready for data traffic. 4. for the receiver operation, after de-assertion of the busy signal, wait for two parallel clock cycles to de-assert the rx_analogreset signal. after rx_analogreset is de-asserted, the receiver cdr of each channel starts locking to the receiver input reference clock. figure 4?4. sample reset sequence for four receiver and transmitter channels?receiver cdr in automatic lock mode note to figure 4?4 : (1) to be characterized. reset signals output status signals (0) 12 3 4 7 4 s (1) (3) 7 6 8 1 s (1) busy 5 two parallel clock cycles pll_powerdown tx_digitalreset rx_analogreset rx_digitalreset pll_locked rx_freq locked rx_freq locked
chapter 4: reset control and power down 4?9 transceiver reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 5. wait for the rx_freqlocked signal from each channel to go high. the rx_freqlocked signal of each channel may go high at different times (indicated by the slashed pattern at marker 7). 6. in a bonded channel group, when the rx_freqlocked signals of all the channels have gone high, from that point onwards wait for at least 4 s for the receiver parallel clock to be stable, then de-assert the rx_digitalreset signal (marker 8). at this point, all the receivers are ready for data traffic. receiver and transmitter channel?receiver cdr in manual lock mode this configuration contains both a transmitter and receiver channel. for xaui functional mode, with the receiver cdr in manual lock mode, use the reset sequence shown in figure 4?5 . figure 4?5. sample reset sequence of four receiver and transmitter channels?receiver cdr in manual lock mode note to figure 4?5 : (1) to be characterized. reset signals output status signals (0) (0) 1 2 3 4 7 8 9 4 s (1) cdr control signals (3) 15 s (1) 8 6 (3) 7 (3) 8 (0) 8 1 s (1) busy 5 two parallel clock cycles pll_powerdown tx_digitalreset rx_analogreset rx_digitalreset rx_locktorefclk rx_locktorefclk rx_locktodata rx_locktodata pll_locked rx_pll_locked rx_pll_locked
4?10 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation as shown in figure 4?5 , perform the following reset sequence steps for the receiver cdr in manual lock mode configuration: 1. after power up, assert pll_powerdown for a minimum period of 1 s (the time between markers 1 and 2). 2. keep the tx_digitalreset, rx_analogreset, rx_digitalreset , and rx_locktorefclk signals asserted and the rx_locktodata signal de-asserted during this time period. after you de-assert the pll_powerdown signal, the transmitter pll starts locking to the transmitter input reference clock. 3. after the transmitter pll locks, as indicated by the pll_locked signal going high (marker 3), de-assert the tx_digitalreset signal (marker 4). for the receiver operation, after de-assertion of the busy signal, wait for two parallel clock cycles to de-assert the rx_analogreset signal. after the rx_analogreset signal is de-asserted, the receiver cdr of each channel starts locking to the receiver input reference clock because rx_locktorefclk is asserted. 4. wait for the rx_pll_locked signal from each channel to go high. the rx_pll_locked signal of each channel may go high at different times with respect to each other (indicated by the slashed pattern at the marker 7). 5. in a bonded channel group, when the last rx_pll_locked signal goes high, from that point onwards, wait at least 15 s and then de-assert rx_locktorefclk and assert rx_locktodata (marker 8). at this point, the receiver cdr enters lock-to-data mode and the receiver pll starts locking to the received data. 6. de-assert rx_digitalreset at least 4 s (the time between markers 8 and 9) after asserting the rx_locktodata signal. non-bonded channel configuration in non-bonded channels, each channel in the altgx megafunction instance contains its own tx_digitalreset, rx_analogreset, rx_digitalreset , rx_pll_locked , and rx_freqlocked signals. you can reset each channel independently. for example, if there are four non-bonded channels, the altgx megawizard plug-in manager provides five signals: tx_digitalreset, rx_analogreset, rx_digitalreset, rx_pll_locked , and rx_freqlocked. the following timing diagrams describe the reset and power-down sequences for one channel in a non-bonded configuration, under five different set-ups: transmitter only channel set-up receiver only channel set-up?receiver cdr in automatic lock mode receiver only channel set-up?receiver cdr in manual lock mode receiver and transmitter channel set-up?receiver cdr in automatic lock mode receiver and transmitter channel set-up?receiver cdr in manual lock mode 1 follow the same reset sequence for all the other channels in the non-bonded configuration.
chapter 4: reset control and power down 4?11 transceiver reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 transmitter only channel this configuration contains only a transmitter channel. if you create a transmitter only instance in the altgx megawizard plug-in manager, use the same reset sequence as shown in figure 4?2 . receiver only channel?receiver cdr in automatic lock mode this configuration contains only a receiver channel. if you create a receiver only instance in the altgx megawizard plug-in manager with the receiver cdr in automatic lock mode, use the reset sequence shown in figure 4?6 . as shown in figure 4?6 , perform the following reset sequence steps for the receiver cdr in automatic lock mode configuration: 1. after power up, wait for the busy signal to be de-asserted (marker 1). 2. de-assert the rx_analogreset signal (marker 2). 3. keep the rx_digitalreset signal asserted during this time period. after you de-assert the rx_analogreset signal, the receiver pll starts locking to the receiver input reference clock. 4. wait for the rx_freqlocked signal to go high (marker 3). 5. after rx_freqlocked goes high, wait at least 4 s and then de-assert the rx_digitalreset signal (marker 4). at this point, the receiver is ready to receive data. figure 4?6. sample reset sequence of receiver-only channel?receiver cdr in automatic lock mode note to figure 4?6 : (1) to be characterized. reset signals 2 output status signals 3 4 4 s (1) busy 1 two parallel clock cycles rx_analogreset rx_digitalreset rx_freq locked
4?12 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver only channel?receiver cdr in manual lock mode this configuration contains only a receiver channel. if you create a receiver only instance in the altgx megawizard plug-in manager with the receiver cdr in manual lock mode, use the reset sequence shown in figure 4?7 . as shown in figure 4?7 , perform the following reset sequence steps for the receiver cdr in manual lock mode: 1. after power up, assert rx_analogreset for a minimum period of two parallel clock cycles (the time between markers 1 and 2). 2. keep the rx_digitalreset and rx_locktorefclk signals asserted and the rx_locktodata signal de-asserted during this time period. 3. after de-assertion of the busy signal, de-assert the rx_analogreset signal, after which the receiver cdr starts locking to the receiver input reference clock because the rx_locktorefclk signal is asserted. 4. wait at least 15 s (the time between markers 3 and 4) after the rx_pll_locked signal goes high and then de-assert the rx_locktorefclk signal. at the same time, assert the rx_locktodata signal (marker 4). at this point, the receiver cdr enters lock-to-data mode and the receiver pll starts locking to the received data. 5. de-assert rx_digitalreset at least 4 s (the time between markers 4 and 5) after asserting the rx_locktodata signal. figure 4?7. sample reset sequence of receiver-only channel?receiver cdr in manual lock mode note to figure 4?7 : (1) to be characterized. reset signals output status signals 2 4 5 4 s (1) cdr control signals 15 s (1) 3 4 busy 1 two parallel clock cycles rx_analogreset rx_digitalreset rx_locktorefclk rx_locktodata rx_pll_locked
chapter 4: reset control and power down 4?13 transceiver reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 receiver and transmitter channel?receiver cdr in automatic lock mode this configuration contains both a transmitter and receiver channel. if you create a receiver and transmitter instance in the altgx megawizard plug-in manager with the receiver cdr in automatic lock mode, use the reset sequence shown in figure 4?8 . as shown in figure 4?8 , perform the following reset sequence steps for the receiver cdr in automatic lock mode: 1. after power up, assert pll_powerdown for a minimum period of 1 s (the time between markers 1 and 2). 2. keep the tx_digitalreset, rx_analogreset , and rx_digitalreset signals asserted during this time period. after you de-assert the pll_powerdown signal, the transmitter pll starts locking to the transmitter input reference clock. 3. after the transmitter pll locks, as indicated by the pll_locked signal going high (marker 3), de-assert tx_digitalreset . for receiver operation, wait for the busy signal to be de-asserted, after which rx_analogreset is de-asserted. after you de-assert rx_analogreset , the receiver cdr starts locking to the receiver input reference clock. 4. wait for the rx_freqlocked signal to go high (marker 7). 5. after the rx_freqlocked signal goes high, wait at least 4 s and then de-assert the rx_digitalreset signal (marker 8). the transmitter and receiver are ready for data traffic. figure 4?8. sample reset sequence of receiver and transmitter channel?receiver cdr in automatic lock mode note to figure 4?8 : (1) to be characterized. reset signals output status signals 12 3 4 6 4 s (1) 7 8 1 s (1) busy 5 two parallel clock cycles pll_powerdown tx_digitalreset rx_analogreset rx_digitalreset pll_locked rx_freq locked
4?14 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation receiver and transmitter channel?receiver cdr in manual lock mode this configuration contains both a transmitter and receiver channel. if you create a receiver and transmitter instance in the altgx megawizard plug-in manager with the receiver cdr in manual lock mode, use the reset sequence shown in figure 4?9 . figure 4?9. sample reset sequence of receiver and transmitter channel?receiver cdr in manual lock mode note to figure 4?9 : (1) to be characterized. reset signals output status signals 12 3 4 6 7 8 9 4 s (1) cdr control signals 15 s (1) 8 1 s (1) busy 5 two parallel clock cycles pll_powerdown tx_digitalreset rx_analogreset rx_digitalreset rx_locktorefclk rx_locktodata pll_locked rx_pll_locked
chapter 4: reset control and power down 4?15 transceiver reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 as shown in figure 4?9 , perform the following reset sequence steps for the receiver in manual lock mode: 1. after power up, assert pll_powerdown for a minimum period of 1 s (the time between markers 1 and 2). 2. keep the tx_digitalreset, rx_analogreset, rx_digitalreset , and rx_locktorefclk signals asserted and the rx_locktodata signal de-asserted during this time period. after you de-assert the pll_powerdown signal, the transmitter pll starts locking to the transmitter input reference clock. 3. after the transmitter pll locks, as indicated by the pll_locked signal going high (marker 3), de-assert tx_digitalreset . for receiver operation, wait for the busy signal to be de-asserted. at this point, rx_analogreset is de-asserted. after rx_analogreset is de-asserted, the receiver cdr starts locking to the receiver input reference clock because rx_locktorefclk is asserted. 4. wait for at least 15 s (the time between markers 7 and 8) after the rx_pll_locked signal goes high, then de-assert the rx_locktorefclk signal. at the same time, assert the rx_locktodata signal (marker 8). at this point, the receiver cdr enters lock-to-data mode and the receiver cdr starts locking to the received data. 5. de-assert rx_digitalreset at least 4 s (the time between markers 8 and 9) after asserting the rx_locktodata signal. pci express (pipe) functional mode you can configure pci express (pipe) functional mode with or without the receiver clock rate compensation fifo in the arria ii gx device. the reset sequence remains the same of whether or not you use the receiver clock rate compensation fifo. pci express (pipe) reset sequence pci express (pipe) protocol consists of initialization/compliance phase and normal operation phase. the reset sequences for these two phases are discussed based on the timing diagram in figure 4?10 .
4?16 chapter 4: reset control and power down transceiver reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation pci express (pipe) initialization/compliance phase after the device is powered up, a pci express (pipe)-compliant device goes through the compliance phase during initialization. the rx_digitalreset signal must be de-asserted during this compliance phase to achieve transitions on the pipephydonestatus signal, as expected by the link layer. the rx_digitalreset signal is de-asserted based on the assertion of the rx_freqlocked signal. during the initialization/compliance phase, do not use the rx_freqlocked signal to trigger a de-assertion of the rx_digitalreset signal. instead, perform the following reset sequence: 1. after power up, assert pll_powerdown for a minimum period of 1 s (the time between markers 1 and 2). keep the tx_digitalreset, rx_analogreset , and rx_digitalreset signals asserted during this time period. after you de-assert the pll_powerdown signal, the transmitter pll starts locking to the transmitter input reference clock. figure 4?10. reset sequence of pci express (pipe) functional mode notes to figure 4?10 : (1) to be characterized. (2) the minimum t1 and t2 period is 4 s. (3) the minimum t3 period is two parallel clock cycles. output status signals 12 3 4 6 7 8 t1 (2) 9 normal operation phase t2 (2) ignore receive data 10 11 12 13 t3 (3) 5 1 s (1) two parallel clock cycles reset/power down signals initialization/compliance phase pll_powerdown tx_digitalreset rx_analogreset rx_digitalreset busy pll_locked rx_pll_locked rx_freq locked
chapter 4: reset control and power down 4?17 dynamic reconfiguration reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 2. after the transmitter pll locks, as indicated by the pll_locked signal going high (marker 3), de-assert tx_digitalreset . for receiver operation, wait for the busy signal to be de-asserted and for rx_analogreset to be de-asserted. after rx_analogreset is de-asserted, the receiver cdr starts locking to the receiver input reference clock. 3. when the receiver cdr locks to the input reference clock, as indicated by the rx_pll_locked signal going high at marker 7 in figure 4?10 , de-assert the rx_digitalreset signal (marker 8). after de-asserting rx_digitalreset , the pipephydonestatus signal transitions from the transceiver channel to indicate the status to the link layer. depending on its status, pipephydonestatus helps with the continuation of the compliance phase. after successful completion of this phase, the device enters into the normal operation phase. pci express (pipe) normal phase 1. after completion of the initialization/compliance phase when the rx_freqlocked signal is de-asserted, (marker 10 in figure 4?10 ), wait for the rx_pll_locked signal assertion signifying the lock-to-reference clock. 2. next, wait for the rx_freqlocked signal to go high again. in this phase, the received data is valid (not electrical idle) and the receiver cdr locks to the incoming data. 3. proceed with the reset sequence after assertion of the rx_freqlocked signal. 4. after the rx_freqlocked signal goes high, wait for at least 4 s before asserting rx_digitalreset (marker 12 in figure 4?10 ) for two parallel receive clock cycles so that the receiver phase compensation fifo is initialized. data from the transceiver block is not valid from the time the rx_freqlocked signal goes low (marker 10 in figure 4?10 ) to the time the rx_digitalreset is de-asserted (marker 13 in figure 4?10 ). the pld logic ignores the data during this period (between markers 10 and 13 in figure 4?10 ). 1 you can configure the arria ii gx device in 1, 2, 4, and 8 pipe lane configurations. the reset sequence described in ?pci express (pipe) reset sequence? on page 4?15 applies to all these multi-lane configurations. dynamic reconfiguration reset sequences when using dynamic reconfiguration in data rate divisions in tx or channel and tx cmu pll select/reconfig modes, use the following reset sequences. reset sequence when using dynamic reconfiguration with data rate division in the tx option use the example reset sequence shown in figure 4?11 when you are using the dynamic reconfiguration controller to change the data rate of the transceiver channel. in this example, dynamic reconfiguration is used to dynamically reconfigure the data rate of the transceiver channel configured in basic 1 mode with the receiver cdr in automatic lock mode.
4?18 chapter 4: reset control and power down dynamic reconfiguration reset sequences arria ii gx device handbook volume 2 ? march 2009 altera corporation as shown in figure 4?11 , perform the following reset procedure when using the dynamic reconfig controller to change the configuration of the transmitter channel: 1. after power up and properly establishing that the transmitter is operating as desired, write the desired new value for the data rate in the appropriate register (in this example, rate_switch_ctrl[1:0] ) and subsequently assert the write_all signal (marker 1) to initiate the dynamic reconfiguration. f for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices . 2. assert the tx_digitalreset signal. 3. as soon as write_all is asserted, the dynamic reconfiguration controller starts to execute its operation. this is indicated by the assertion of the busy signal (marker 2). 4. after the completion of dynamic reconfiguration, the busy signal is de-asserted (marker 3). 5. lastly, tx_digitalreset can be de-asserted to continue with the transmitter operation (marker 4). reset sequence when using dynamic reconfiguration with the channel and tx pll select/reconfig option use the example reset sequence shown in figure 4?12 when you are using the dynamic reconfig controller to change the tx pll settings of the transceiver channel. in this example, the dynamic reconfiguration is used to dynamically reconfigure the data rate of the transceiver channel configured in basic 1 mode with the receiver cdr in automatic lock mode. figure 4?11. reset sequence in basic 1 mode with the receiver cdr in automatic lock mode (tx option) reset and control signals tx_digitalreset 1 4 rate_switch_ctrl[1:0] new v alue write_all 1 output status signals busy 23
chapter 4: reset control and power down 4?19 dynamic reconfiguration reset sequences ? march 2009 altera corporation arria ii gx device handbook volume 2 as shown in figure 4?12 , perform the following reset procedure when using the dynamic reconfig controller to change the configuration of the transceiver channel: 1. after power up and establishing that the transceiver is operating as desired, write the desired new value in the appropriate registers (including reconfig_mode_sel[2:0] ) and subsequently assert the write_all signal (marker 1) to initiate the dynamic reconfiguration. f for more information, refer to an 558: implementing dynamic reconfiguration in arria ii gx devices . 2. assert the tx_digitalreset, rx_analogreset , and rx_digitalreset signals. 3. as soon as write_all is asserted, the dynamic reconfiguration controller starts to execute its operation. this is indicated by the assertion of the busy signal (marker 2). 4. wait for the assertion of the channel_reconfig_done signal (marker 4), which indicates the completion of dynamic reconfiguration in this mode. 5. after assertion of the channel_reconfig_done signal, de-assert tx_digitalreset (marker 5) and wait for at least five parallel clock cycles to de-assert the rx_analogreset signal (marker 6). 6. lastly, wait for the rx_freqlocked signal to go high. after rx_freqlocked goes high (marker 7), wait for 4 s to de-assert the rx_digitalreset signal (marker 8). at this point, the receiver is ready for data traffic. figure 4?12. reset sequence in basic 1 mode with receiver cdr in automatic lock mode (channel and tx pll select/reconfig option) reset and control signals tx_digitalreset output status signals busy 1 5 rx_analogreset 1 6 rx_digitalreset 1 8 reconfig_mode_sel[2:0] new v alue write_all 2 3 channel_reconfig_done 4 rx_1req locked 7 4 s five parallel clock cycles
4?20 chapter 4: reset control and power down power down arria ii gx device handbook volume 2 ? march 2009 altera corporation power down the quartus ii software automatically selects the power down channel feature, which takes effect when you configure the arria ii gx device. all unused transceiver channels and blocks are powered down to reduce overall power consumption. the gxb_powerdown signal is an optional transceiver block signal. it powers down all the blocks in the transceiver block. the minimum pulse width for this signal is 1 s. after power up, if you use the gxb_powerdown signal, wait for de-assertion of the busy signal, then assert the gxb_powerdown signal for a minimum of 1 s. to finish, follow the sequence in figure 4?13 . simulation requirements the following are simulation requirements: the gxb_powerdown port is optional. in simulation, if the gxb_powerdown port is not instantiated, you must assert the tx_digitalreset, rx_digitalreset, and rx_analogreset signals appropriately for correct simulation behavior. if the gxb_powerdown port is instantiated, and the other reset signals are not used, you must assert the gxb_powerdown signal for at least one parallel clock cycle for correct simulation behavior. figure 4?13. sample reset sequence of four receiver and transmitter channels?receiver cdr in automatic lock mode with optional gxb_powerdown signal note to figure 4?13 : (1) to be characterized. output status signals 4 5 6 4 s (1) 7 8 3 2 1 s (1) busy 1 reset/power down signals gxb_powerdown pll_powerdown tx_digitalreset rx_analogreset rx_digitalreset pll_locked rx_freq locked
chapter 4: reset control and power down 4?21 document revision history ? march 2009 altera corporation arria ii gx device handbook volume 2 you can de-assert the rx_digitalreset signal immediately after the rx_freqlocked signal goes high to reduce the simulation run time. it is not necessary to wait 4 s (as suggested in the actual reset sequence). the busy signal is de-asserted after about 20 parallel reconfig_clk clock cycles in order to reduce the simulation run time. for silicon behavior in hardware, follow the reset sequences described in this chapter. in pci express (pipe) mode simulation, you must assert the tx_forceelecidle signal for at least one parallel clock cycle before transmitting normal data for correct simulation behavior. document revision history table 4?3 shows the revision history for this chapter. tab le 4 ?3 . document revision history date and document version changes made summary of changes march 2009, v1.1 added the ?dynamic reconfiguration reset sequences? section. ? february 2009, v1.0 initial release. ?
4?22 chapter 4: reset control and power down document revision history arria ii gx device handbook volume 2 ? march 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 2 additional information about this handbook this handbook provides comprehensive information about the altera ? arria ? ii gx family of devices. how to contact altera for the most up-to-date information about altera products, see the following table. typographic conventions the following table shows the typographic conventions that this document uses. contact (note 1) contact method address technical support website www.altera.com/support technical training website www.altera.com/training email custrain@altera.com altera literature services email literature@altera.com non-technical support (general) email nacomp@altera.com (software licensing) email authorization@altera.com note: (1) you can also contact your local altera sales office or sales representative. visual cue meaning bold type with initial capital letters indicates command names and dialog box titles. for example, save as dialog box. bold type indicates directory names, project names, disk drive names, file names, file name extensions, dialog box options, software utility names, and other gui labels. for example, \qdesigns directory, d: drive, and chiptrip.gdf file. italic type with initial capital letters indicates document titles. for example, an 519: stratix iv design guidelines. italic type indicates variables. for example, n + 1. variable names are enclosed in angle brackets (< >). for example, and .pof file. initial capital letters indicates keyboard keys and menu names. for example, delete key and the options menu. ?subheading title? quotation marks indicate references to sections within a document and titles of quartus ii help topics. for example, ?typographic conventions.?
info?2 additional information arria ii gx device handbook volume 2 ? february 2009 altera corporation courier type indicates signal, port, register, bit, block, and primitive names. for example, data1 , tdi , and input . active-low signals are denoted by suffix n . for example, resetn . indicates command line commands and anything that must be typed exactly as it appears. for example, c:\qdesigns\tutorial\chiptrip.gdf . also indicates sections of an actual file, such as a report file, references to parts of files (for example, the ahdl keyword subdesign ), and logic function names (for example, tri ). 1., 2., 3., and a., b., c., and so on. numbered steps indicate a list of items when the sequence of the items is important, such as the steps listed in a procedure. bullets indicate a list of items when the sequence of the items is not important. 1 the hand points to information that requires special attention. c a caution calls attention to a condition or possible situation that can damage or destroy the product or your work. w a warning calls attention to a condition or possible situation that can cause you injury. r the angled arrow instructs you to press enter . f the feet direct you to more information about a particular topic. visual cue meaning
101 innovation drive san jose, ca 95134 www.altera.com arria ii gx device handbook volume 3 aiigx5v3-1.0
copyright ? 2009 altera corporation. all rights reserved. altera, the programmable solutions company, the stylized altera logo, specific device designations, and all other words and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of altera corporation in the u.s. and other countries. all other product or service names are the property of their respective holders. altera products are protected under numerous u.s. and foreign patents and pending ap- plications, maskwork rights, and copyrights. altera warrants performance of its semiconductor products to current specification s in accordance with altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. altera assumes no responsibilit y or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by altera corporation. altera cu stomers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services .
? february 2009 altera corporation arria ii gx device handbook volume 3 contents chapter revision dates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v section i. arria ii gx device data sheet revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i-1 chapter 1. arria ii gx device data sheet introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 maximum allowed i/o operating frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 recommended operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 dc characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 schmitt trigger input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7 i/o standard specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 power consumption for arria ii gx devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 switching characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 transceiver performance specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 core performance specifications for arria ii gx devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1- 23 clock tree specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23 pll specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24 dsp block specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25 embedded memory block specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25 configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26 periphery performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27 high-speed i/o specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27 external memory interface specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28 duty cycle distortion (dcd) specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29 glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30 document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33 additional information about this handbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1 how to contact altera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1 typographic conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . info-1
iv contents arria ii gx device handbook volume 3 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 3 chapter revision dates the chapters in this book, arria ii gx device handbook volume 3 , were revised on the following dates. where chapters or groups of chapters are available separately, part numbers are listed. chapter 1 arria ii gx device data sheet revised: february 2009 part number: aiigx53001-1.0
vi chapter revision dates arria ii gx device handbook volume 3 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 3 section i. arria ii gx device data sheet this section provides information about the arria ? ii gx device data sheet. this section includes the following chapters: chapter 1, arria ii gx device data sheet revision history refer to each chapter for its own specific revision history. for information on when each chapter was updated, refer to the chapter revision dates section, which appears in this volume.
i?2 section i. arria ii gx device data sheet arria ii gx device handbook volume 3 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 3 1. arria ii gx device data sheet introduction this chapter describes the electrical and switching characteristics of the arria ? ii gx device family. this chapter contains the following sections: ?electrical characteristics? on page 1?1 ?switching characteristics? on page 1?11 ?glossary? on page 1?30 electrical characteristics the following sections describe the electrical characteristics. operating conditions when arria ii gx devices are implemented in a system, they are rated according to a set of defined parameters. to maintain the highest possible performance and reliability of arria ii gx devices, system designers must consider the following operating requirements: arria ii gx devices are offered in both commercial and industrial grades. commercial devices are offered in ?4 (fastest), ?5, and ?6 (slowest) speed grades. industrial device is only offered in ?5 speed grade. 1 in this chapter, a prefix associated with the operating temperature range is attached to the speed grades; commercial with the "c" prefix, and industrial with the ?i? prefix. commercial devices are therefore indicated as c4, c5, and c6 speed grade respectively, while the industrial device is indicated as i5. absolute maximum ratings absolute maximum ratings define the maximum operating conditions for arria ii gx devices. the values are based on experiments conducted with the device and theoretical modeling of breakdown and damage mechanisms. the functional operation of the device is not implied under these conditions. 1 conditions beyond those listed in table 1?1 may cause permanent damage to the device. additionally, device operation at the absolute maximum ratings for extended periods of time may have adverse effects on the device. aiigx53001-1.0
1?2 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation maximum allowed overshoot and undershoot voltage during transitions, input signals may overshoot to the voltage shown in table 1?2 and undershoot to -2.0 v for magnitude of currents less than 100 ma and periods shorter than 20 ns. table 1?2 lists the maximum allowed input overshoot voltage and the duration of the overshoot voltage as a percentage over the device lifetime. the maximum allowed overshoot duration is specified as a percentage of high-time over the lifetime of the device. a dc signal is equivalent to 100% duty cycle. for example, a signal that overshoots to 4.3 v can only be at 4.3 v for 5.41% over the lifetime of the device: for a device lifetime of 10 years, this amounts to 5.41/10ths of a year. tab le 1 ?1 . arria ii gx device absolute maximum ratings symbol description minimum maximum unit v cc supplies power to the core, periphery, i/o registers, pcie hip block, and transceiver pcs -0.5 1.35 v v cccb supplies power to the configuration ram bits -0.5 1.65 v v ccbat battery back-up power supply for design security volatile key register -0.5 3.75 v v ccpd supplies power to the i/o pre-drivers, differential input buffers, and msel circuitry -0.5 3.75 v v ccio supplies power to the i/o banks -0.5 3.9 v v ccd_pll supplies power to the digital portions of the pll -0.5 1.35 v v cca_pll supplies power to the analog portions of the pll and device-wide power management circuitry -0.5 3.75 v v i dc input voltage -0.5 4.0 v v cca supplies power to the transceiver pma regulator ? 2.625 v v ccl_gxb supplies power to the transceiver pma tx, pma rx, and clocking ? 1.21 v v cch_gxb supplies power to the transceiver pma output (tx) buffer ? 1.54 v t j operating junction temperature -40 100 c t stg storage temperature (no bias) -65 150 c
chapter 1: arria ii gx device data sheet 1?3 electrical characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 maximum allowed i/o operating frequency table 1?3 defines the maximum allowed i/o operating frequency for i/os using the specified i/o standards to ensure device reliability. recommended operating conditions this section lists the functional operation limits for ac and dc parameters for arria ii gx devices. the steady-state voltage and current values expected from arria ii gx devices are provided in table 1?4 . all supplies are required to monotonically reach their full-rail values without plateaus within t ramp . tab le 1 ?2 . maximum allowed overshoot during transitions symbol description condition overshoot duration as % of high time unit v i (ac) ac input voltage 4.0 v 100.000 % 4.05 v 79.330 % 4.1 v 46.270 % 4.15 v 27.030 % 4.2 v 15.800 % 4.25 v 9.240 % 4.3 v 5.410 % 4.35 v 3.160 % 4.4 v 1.850 % 4.45 v 1.080 % 4.5 v 0.630 % 4.55 v 0.370 % 4.6 v 0.220 % tab le 1 ?3 . maximum allowed i/o operating frequency i/o standard i/o frequency (mhz) sstl-18, sstl -15 hstl-18, hstl-15 300 3.3-v and 3.0-v lvttl 3.3-v, 3.0-v, 2.5-v, 1.8-v, 1.5-v lvcmos pci and pci-x sstl-2 250 1.2-v lvcmos hstl-12 200
1?4 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation table 1?4 shows the recommended operating conditions for arria ii gx device. dc characteristics this section lists the supply current, i/o pin leakage current, on-chip termination (oct) accuracy and variation, input pin capacitance, internal weak pull-up and pull-down resistance, hot socketing, and schmitt trigger input specifications. tab le 1 ?4 . arria ii gx device recommended operating conditions symbol description condition minimum typical maximum unit v cc supplies power to the core, periphery, i/o registers, pcie hip block, and transceiver pcs ? 0.87 0.90 0.93 v v cccb supplies power to the configuration ram bits ? 1.425 1.50 1.575 v v ccbat (2) battery back-up power supply for design security volatile key registers ? 1.2 ? 3.3 v v ccpd supplies power to the i/o pre-drivers, differential input buffers, and msel circuitry ? 3.135 3.3 3.465 v ? 2.85 3.0 3.15 v ? 2.375 2.5 2.625 v v ccio supplies power to the i/o banks (1) ? 3.135 3.3 3.465 v ? 2.85 3.0 3.15 v ? 2.375 2.5 2.625 v ? 1.71 1.8 1.89 v ? 1.425 1.5 1.575 v ? 1.14 1.2 1.26 v v ccd_pll supplies power to the digital portions of the pll ? 0.87 0.90 0.93 v v cca_pll supplies power to the analog portions of the pll and device-wide power management circuitry ? 2.375 2.5 2.625 v v i dc input voltage ? ?0.5 ? 3.6 v v o output voltage ? 0 ? v ccio v v cca supplies power to the transceiver pma regulator ? 2.375 2.5 2.625 v v ccl_gxb supplies power to the transceiver pma tx, pma rx, and clocking ? 1.045 1.1 1.155 v v cch_gxb supplies power to the transceiver pma output (tx) buffer ? 1.425 1.5 1.575 v t j operating junction temperature commercial 0 ? 85 c industrial ?40 ? 100 c t ramp power supply ramp time normal por 0.05 ? 100 ms fast por 0.05 ? 4 ms note to tab l e 1 ?4 : (1) v ccio for 3c and 8c i/o banks where the configuration pins reside only supports 3.3-, 3.0-, 2.5-, or 1.8-v voltage levels. (2) altera recommends a 3.0-v nominal battery voltage when connecting v cc bat to a battery for volatile key backup. if you do not use the volatile security key, you may connect the v cc bat to either gnd or a 3.0-v power supply.
chapter 1: arria ii gx device data sheet 1?5 electrical characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 supply current standby current is the current the device draws after the device is configured with no inputs or outputs toggling and no activity in the device. since these currents vary largely with resources used, use the excel-based early power estimator (epe) to get supply current estimates for your design. i/o pin leakage current table 1?5 defines the arria ii gx i/o pin leakage current specifications. oct specifications table 1?6 lists the arria ii gx series oct with and without calibration accuracy. oct calibration is automatically performed at power-up for oct-enabled i/os. when voltage and temperature conditions change after calibration, the resistance may change. use equation 1?1 to determine the oct variation when voltage and temperature vary after power-up calibration. tab le 1 ?5 . arria ii gx i/o pin leakage current symbol description conditions min typ max unit i i input pin v i = 0 v to v cciom ax ?10 ? 10 a i oz tri-stated i/o pin v o = 0 v to v cciomax ?10 ? 10 a tab le 1 ?6 . oct with and without calibration specification for i/os (note 1) symbol description conditions calibration accuracy unit commercial 25- r s 3.0/2.5 25- series oct without calibration v ccio = 3.0/2.5 v 30 % 50- r s 3.0/2.5 50- series cot without calibration v ccio = 3.0/2.5 v 30 % 25- r s 1.8 25- series oct without calibration v cc io = 1.8 v 40 % 50- r s 1.8 50- series oct without calibration v cc io = 1.8 v 40 % 25- r s 1.5/1.2 25- series oct without calibration v ccio = 1.5/1.2 v 50 % 50- r s 1.5/1.2 50- series oct without calibration v ccio = 1.5/1.2 v 50 % 25- r s 3.0/2.5/1.8/ 1.5/1.2 25- series oct with calibration v cc io = 3.0/2.5/1.8/ 1.5/1.2 v 10 % 50- r s 3.0/2.5/1.8/ 1.5/1.2 50- series oct with calibration v cc io = 3.0/2.5/1.8/ 1.5/1.2 v 10 % note to tab l e 1 ?6 : (1) oct with calibration accuracy is valid at the time of calibration only.
1?6 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation table 1?7 lists oct variation with temperature and voltage after power-up calibration. pin capacitance table 1?8 shows the arria ii gx device family pin capacitance. internal weak pull-up and weak pull-down resistors table 1?9 lists the arria ii gx devices weak pull-up and pull-down resistor values. equation 1?1. oct variation (note 1) note to equation 1?1 : (1) r cal is calibrated oct at power up. t and v are variations in temperature and voltage with respect to temperature and v ccio values, respectively, at power up. tab le 1 ?7 . oct variation after power-up calibration nominal voltage dr/dt (% ? /c) dr/dt(% ? /mv) 3.0 0.262 ?0.026 2.5 0.234 ?0.039 1.8 0.219 ?0.086 1.5 0.199 ?0.136 1.2 0.161 ?0.288 r oct r cal 1 dr dt ------ - t dr dv ------ - v + + ?? ?? = tab le 1 ?8 . arria ii gx device capacitance symbol description typical unit c iodiff input capacitance on dual-purpose differential i/o pins 7.5 pf c ioclk input capacitance on dual-purpose clock output/feedback pins and dedicated clock input pins 7p f c iooct input capacitance on dual-purpose r up and r dn pins 7 pf tab le 1 ?9 . arria ii gx internal weak pull-up and weak pull-down resistors (part 1 of 2) (note 1) symbol description conditions min. typ. max. unit r pu value of i/o pin pull-up resistor before and during configuration, as well as user mode if the programmable pull-up resistor option is enabled. v cc io = 3.3 v 5% (2) , (3) 72541k v cc io = 3.0 v 5% (2) , (3) 72847k v cc io = 2.5 v 5% (2) , (3) 83561k v cc io = 1.8 v 5% (2) , (3) 10 57 108 k v cc io = 1.5 v 5% (2) , (3) 13 82 163 k v cc io = 1.2 v 5% (2) , (3) 19 143 351 k
chapter 1: arria ii gx device data sheet 1?7 electrical characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 hot socketing table 1?10 defines the hot socketing specification for arria ii gx devices. schmitt trigger input the arria ii gx device supports schmitt trigger input on tdi, tms, tck, nstatus, nconfig, nce, conf_done , and dclk pins. a schmitt trigger introduces hysteresis to the input signal for improved noise immunity, especially for signals with slow edge rates. table 1?11 lists the hysteresis specifications across the supported v ccio range for schmitt trigger inputs in arria ii gx devices. r pd value of tck pin pull-down resistor v ccio = 3.3 v 5% (4) 61929k v ccio = 3.0 v 5% (4) 62232k v ccio = 2.5 v 5% (4) 62542k v ccio = 1.8 v 5% (4) 73570k v ccio = 1.5 v 5% (4) 850112k notes to ta bl e 1? 9 : (1) all i/o pins have an option to enable weak pull-up except configuration, test, and jtag pins. the weak pull-down feature is only available for jtag tck . (2) pin pull-up resistance values may be lower if an external source drives the pin higher than v ccio . (3) r pu = (v ccio - v i )/i r pu . minimum condition: -40c; v ccio = vcc + 5%, v i = vcc + 5% - 50 mv. ty pical condition: 25c; v ccio = vcc, v i =0v. maximum condition: 100c; v ccio = vcc - 5%, v i = 0 v; in which v i refers to the voltage input at the i/o pin. (4) r pd = v i /i rpd . minimum condition: -40c; v ccio = vcc + 5%, v i = 50 mv. typical condition: 25c; v ccio = vcc, v i = vcc - 5%. maximum condition: 100c; v ccio = vcc - 5%, v i = vcc - 5%; in which v i refers to the voltage input at the i/o pin. tab le 1 ?9 . arria ii gx internal weak pull-up and weak pull-down resistors (part 2 of 2) (note 1) symbol description conditions min. typ. max. unit table 1?10. arria ii gx hot socketing specifications symbol description maximum i iiopin(dc) dc current per i/o pin 300 a i iopin(ac) ac current per i/o pin 8 ma (1) i xcvrtx(dc) dc current per transceiver tx pin 100 ma i xcvrrx(dc) dc current per transceiver rx pin 50 ma notes to ta bl e 1? 10 : (1) the i/o ramp rate is 10 ns or more. for ramp rates faster than 10 ns, |iiopin| = c dv/dt, in which ?c? is i/o pin capacitance and ?dv/dt? is slew rate. table 1?11. arria ii gx schmitt trigger input hysteresis specifications symbol description condition minimum unit v schmitt hysteresis for schmitt trigger input v ccio = 3.3 v 220 mv v ccio = 2.5 v 180 mv v ccio = 1.8 v 110 mv v ccio = 1.5 v 70 mv
1?8 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation i/o standard specifications table 1?12 through table 1?17 list input voltage (v ih and v il ), output voltage (v oh and v ol ), and current drive characteristics (i oh and i ol ) for various i/o standards supported by arria ii gx devices. they also show the arria ii gx device family i/o standard specifications. v ol and v oh values are valid at the corresponding i oh and i ol , respectively. 1 for an explanation of terms used in table 1?12 through table 1?17 , refer to ?glossary? on page 1?30 . table 1?12 lists the arria ii gx single-ended i/o standards. table 1?13 lists the arria ii gx single-ended sstl and hstl i/o reference voltage specifications. table 1?12. single-ended i/o standards i/o standard v ccio (v) v il (v) v ih (v) v ol (v) v oh (v) i ol (ma) i oh (ma) min typ max min max min max max min 3.3 v lvttl 3.135 3.3 3.465 -0.3 0.8 1.7 v ccio + 0.3 0.4 2.4 2 -2 3.3 v lvcmos 3.135 3.3 3.465 -0.3 0.8 1.7 v ccio + 0.3 0.2 v ccio - 0.2 0.1 -0.1 3.0 v lvttl 2.85 3 3.15 -0.3 0.8 1.7 v ccio + 0.3 0.4 2.4 2 -2 3.0 v lvcmos 2.85 3 3.15 -0.3 0.8 1.7 v ccio + 0.3 0.2 v ccio - 0.2 0.1 -0.1 2.5 v lvcmos 2.375 2.5 2.625 -0.3 0.7 1.7 v ccio + 0.3 0.4 2 1 -1 1.8 v lvcmos 1.71 1.8 1.89 -0.3 0.35 v cc io 0.65 v cc io v cc io + 0.3 0.45 v cc io - 0.45 2 -2 1.5 v lvcmos 1.425 1.5 1.575 -0.3 0.35 v cc io 0.65 v cc io v cc io + 0.3 0.25 * v cc io 0.75 v ccio 2-2 1.2 v lvcmos 1.14 1.2 1.26 -0.3 0.35 v cc io 0.65 v cc io v cc io + 0.3 0.25 * v cc io 0.75 v ccio 2-2 3.0-v pci 2.85 3 3.15 ? 0.3 v cc io 0.5 v cc io 3.6 0.1 v cc io 0.9 v cc io 1.5 -0.5 3.0-v pci-x 2.85 3 3.15 ? 0.35 v cc io 0.5 v cc io ? 0.1 v cc io 0.9 v cc io 1.5 -0.5 table 1?13. single-ended sstl and hstl i/o reference voltage specifications (part 1 of 2) i/o standard v cc io (v) v ref (v) v tt (v) min typ max min typ max min typ max sstl-2 class i, ii 2.375 2.5 2.625 0.49 v ccio 0.5 v ccio 0.51 v cc io v ref - 0.04 v ref v ref + 0.04 sstl-18 class i, ii 1.71 1.8 1.89 0.49 v ccio 0.5 v ccio 0.51 v cc io v ref - 0.04 v ref v ref + 0.04
chapter 1: arria ii gx device data sheet 1?9 electrical characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 table 1?14 lists the arria ii gx single-ended sstl and hstl i/o standard signal specifications. sstl-15 class i, ii 1.425 1.5 1.575 0.49 v ccio 0.5 v ccio 0.51 v cc io v ref - 0.04 v ref v ref + 0.04 hstl-18 class i, ii 1.71 1.8 1.89 0.85 0.9 0.95 ? v ccio /2 ? hstl-15 class i, ii 1.425 1.5 1.575 0.68 0.75 0.9 ? v ccio /2 ? hstl-12 class i, ii 1.14 1.2 1.26 0.48 v ccio 0.5 v ccio 0.52 v cc io ?v ccio /2 ? table 1?13. single-ended sstl and hstl i/o reference voltage specifications (part 2 of 2) i/o standard v cc io (v) v ref (v) v tt (v) min typ max min typ max min typ max table 1?14. single-ended sstl and hstl i/o standard signal specifications i/o standard v il(dc) (v) v ih(dc) (v) v il (a c) (v) v ih (a c) (v) v ol (v) v oh (v) i ol (ma) i oh (ma) min max min max max min max min sstl-2 class i -0.3 v ref - 0.15 v ref + 0.15 v cc io + 0.3 v ref - 0.31 v ref + 0.31 v tt - 0.57 v tt + 0.57 8.1 -8.1 sstl-2 class ii -0.3 v ref - 0.15 v ref + 0.15 v cc io + 0.3 v ref - 0.31 v ref + 0.31 v tt - 0.76 v tt + 0.76 16.2 -16.2 sstl-18 class i -0.3 v ref - 0.125 v ref + 0.125 v cc io + 0.3 v ref -0.25 v ref + 0.25 v tt - 0.475 v tt + 0.475 6.7 -6.7 sstl-18 class ii -0.3 v ref - 0.125 v ref + 0.125 v cc io + 0.3 v ref -0.25 v ref + 0.25 0.28 v cc io - 0.28 13.4 -13.4 sstl-15 class i -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref - 0.175 v ref + 0.175 0.2 v ccio 0.8 v ccio 8-8 sstl-15 class ii -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref - 0.175 v ref + 0.175 0.2 v ccio 0.8 v ccio 16 -16 hstl-18 class i -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 8-8 hstl-18 class ii -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 16 -16 hstl-15 class i -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 8-8 hstl-15 class ii -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 16 -16 hstl-12 class i -0.15 v ref - 0.08 v ref + 0.08 v cc io + 0.15 v ref -0.15 v ref + 0.15 0.25 v ccio 0.75 v ccio 8-8 hstl-12 class ii -0.15 v ref - 0.08 v ref + 0.08 v cc io + 0.15 v ref -0.15 v ref + 0.15 0.25 v ccio 0.75 v ccio 16 -16
1?10 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation table 1?15 lists the arria ii gx differential sstl i/o standards. table 1?16 lists the arria ii gx hstl i/o standards. table 1?17 lists the arria ii gx differential i/o standard specifications. table 1?15. differential sstl i/o standards i/o standard v cc io (v) v swin g(dc ) (v) v x(a c) (v) v swing(ac) (v) v ox (a c) (v) min typ max min max min typ max min max min typ max sstl-2 class i, ii 2.375 2.5 2.625 0.36 v ccio v cc io /2 - 0.2 ?v ccio /2 + 0.2 0.7 v cc io (1) ? (1) sstl-18 class i, ii 1.71 1.8 1.89 0.25 v ccio v cc io /2 - 0.175 ?v ccio /2 + 0.175 0.5 v cc io (1) ? (1) sstl-15 class i, ii 1.425 1.5 1.575 0.2 ? (1) ? (1) 0.35 ? (1) ? (1) note to tab l e 1 ?1 5 : (1) pending silicon characterization. table 1?16. differential hstl i/o standards i/o standard v cc io (v) v dif(dc) (v) v x(ac) (v) v cm(dc) (v) v dif(a c) (v) min typ max min max min typ max min typ max min max hstl-18 class i 1.71 1.8 1.89 0.2 ? 0.85 ? 0.95 0.88 ? 0.95 0.4 ? hstl-15 class i, ii 1.425 1.5 1.575 0.2 ? 0.71 ? 0.79 0.71 ? 0.79 0.4 ? hstl-12 class i, ii 1.14 1.2 1.26 0.16 ? ? 0.5 v ccio ?0.48 v cc io 0.5 v ccio 0.52 v ccio 0.3 ? table 1?17. differential i/o standard specifications i/o standard v ccio (v) v th (mv) v icm (v) (4) v od (v) (1) v os (v) min typ max min cond. max min cond. max min typ max min typ max 2.5v lvds 2.375 2.5 2.625 100 v cm = 1.25 v ?0.05 d max <= 700 mbps 1.80 0.247 ? 0.6 1.125 1.25 1.375 ?1.05 d max > 700 mbps 1.55 rsds (3) 2.375 2.5 2.625 ? ? ? ? ? ? 0.1 0.2 0.6 0.5 1.2 1.4 mini- lvds (3) 2.375 2.5 2.625 ? ? ? ? ? ? 0.25 ? 0.6 1 1.2 1.4 lvpecl (2) 2.375 2.5 2.625 300 ? ? 0.6 d max <= 700 mbps 1.8 ??? ??? 1.0 d max > 700 mbps 1.6 notes to ta bl e 1? 17 : (1) r l range: 90 <= rl <= 110 . (2) lvpecl input standard is supported at the dedicated clock input pins ( gclk ) only. (3) rsds and mini-lvds i/o standards are only supported for differential outputs. (4) v in range: 0 <= v in <= 1.85 v.
chapter 1: arria ii gx device data sheet 1?11 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 power consumption for arria ii gx devices altera ? offers two ways to estimate power for a design: the excel-based early power estimator and the quartus ? ii powerplay power analyzer feature. the interactive excel-based early power estimator is typically used prior to designing the fpga in order to get a magnitude estimate of the device power. the quartus ii powerplay power analyzer provides better quality estimates based on the specifics of the design after place-and-route is complete. the powerplay power analyzer can apply a combination of user-entered, simulation-derived, and estimated signal activities which, when combined with detailed circuit models, can yield very accurate power estimates. f for more information about power estimation tools, refer to the early power estimator user guide and the powerplay power analysis chapter in the quartus ii handbook . switching characteristics this section provides performance characteristics of the arria ii gx core and periphery blocks for commercial grade devices. these characteristics can be designated as preliminary and final. preliminary characteristics are created using simulation results, process data, and other known parameters. final characteristics are based on actual silicon characterization and testing. these numbers reflect the actual performance of the device under worst-case silicon process, voltage, and junction temperature conditions. 1 the table title shows the designations as ?preliminary? or ?final? for each table. transceiver performance specifications table 1?18 lists the arria ii gx transceiver specifications. table 1?18. arria ii gx transceiver specification?preliminary (part 1 of 4) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max reference clock input frequency from refclk input pins ? 50 ? 622.08 50 ? 622.08 50 ? 622.08 mhz input frequency from pld input ? 50? 200 50?20050?200mhz absolute v max for a refclk pin ? ? ? 2.2 ? ? 2.2 ? ? 2.2 v absolute v min for a refclk pin ? -0.3 ? ? -0.3 ? ? -0.3 ? ? v rise/fall time ? ? ? 0.2 ? ? 0.2 ? ? 0.2 ui duty cycle ? 45 ? 55 45 ? 55 45 ? 55 % peak-to-peak differential input voltage ? 200 ? 2000 200 ? 2000 200 ? 2000 mv
1?12 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation spread-spectrum modulating clock frequency pci express 30 ? 33 30 ? 33 30 ? 33 khz spread-spectrum downspread pci express ? 0 to -0.5% ??0 to -0.5% ??0 to -0.5% ? on-chip termination resistors ? ? 100 ? ? 100 ? ? 100 ? v icm (ac coupled) ? ? 1200 ? ? 1200 ? ? 1200 ? mv v icm (dc coupled) hcsl i/o standard for pci express reference clock 250 ? 550 250 ? 550 250 ? 550 mv r ref ? ? ? 2000 1% ? ? 2000 1% ? ? 2000 1% ? transceiver clocks calibration block clock frequency ? 10? 125 10?12510?125mhz fixedclk clock frequency pci express receiver detect ?125 ? ?125 ? ?125 ?mhz transceiver block minimum power-down pulse width ??1??1??1?s receiver data rate ? 600 ? 3750 600 ? 3125 600 ? 3125 mbps absolute v max for a receiver pin (1) ? ? ? 1.5 ? ? 1.5 ? ? 1.5 v absolute v min for a receiver pin ? -0.4 ? ? -0.4 ? ? -0.4 ? ? v maximum peak-to-peak differential input voltage v id (diff p-p) v icm = 0.82 v setting ?? 2.7 ??2.7?? 2.7 v v icm =1.1 v setting (7) ?? 1.6 ??1.6?? 1.6 v minimum peak-to-peak differential input voltage v id (diff p-p) data rate = 600 mbps to 3.75 gbps. 100 ? ? 100 ? ? 100 ? ? mv v icm v icm = 0.82 v setting ?820 ? ?820 ? ?820 ? mv v icm =1.1 v setting (7) ?1100 ? ?1100 ? ?1100 ? mv table 1?18. arria ii gx transceiver specification?preliminary (part 2 of 4) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?13 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 spread-spectrum modulating clock frequency pci express 30 ? 33 30 ? 33 30 ? 33 khz spread-spectrum downspread pci express ? 0 to -0.5% ??0 to -0.5% ??0 to -0.5% ? on-chip termination resistors ? ? 100 ? ? 100 ? ? 100 ? v icm (ac coupled) ? ? 1200 ? ? 1200 ? ? 1200 ? mv v icm (dc coupled) hcsl i/o standard for pci express reference clock 250 ? 550 250 ? 550 250 ? 550 mv r ref ? ? ? 2000 1% ? ? 2000 1% ? ? 2000 1% ? transceiver clocks calibration block clock frequency ? 10? 125 10?12510?125mhz fixedclk clock frequency pci express receiver detect ?125 ? ?125 ? ?125 ?mhz transceiver block minimum power-down pulse width ??1??1??1?s receiver data rate ? 600 ? 3750 600 ? 3125 600 ? 3125 mbps absolute v max for a receiver pin (1) ? ? ? 1.5 ? ? 1.5 ? ? 1.5 v absolute v min for a receiver pin ? -0.4 ? ? -0.4 ? ? -0.4 ? ? v maximum peak-to-peak differential input voltage v id (diff p-p) v icm = 0.82 v setting ?? 2.7 ??2.7?? 2.7 v v icm =1.1 v setting (7) ?? 1.6 ??1.6?? 1.6 v minimum peak-to-peak differential input voltage v id (diff p-p) data rate = 600 mbps to 3.75 gbps. 100 ? ? 100 ? ? 100 ? ? mv v icm v icm = 0.82 v setting ?820 ? ?820 ? ?820 ? mv v icm =1.1 v setting (7) ?1100 ? ?1100 ? ?1100 ? mv table 1?18. arria ii gx transceiver specification?preliminary (part 2 of 4) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?14 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation differential on-chip termination resistors 100 ? setting ? 100 ? ? 100 ? ? 100 ? return loss differential mode pci express 50 mhz to 1.25 ghz: -10db xaui 100 mhz to 2.5 ghz: -10db return loss common mode pci express 50 mhz to 1.25 ghz: -6db xaui 100 mhz to 2.5 ghz: -6db programmable ppm detector (2) ? 62.5, 100, 125, 200, 250, 300, 500, 1000 ppm run length ? ? 80 ? ? 80 ? ? 80 ? ui programmable equalization ???7??7??7db signal detect/loss threshold pci express (pipe) mode 65 ? 175 65 ? 175 65 ? 175 mv cdr ltr time (3) ???75??75??75s cdr minimum t1b (4) ? 15? 15? ? 15? ? s ltd loc k time (5) ? 0 100 4000 0 100 4000 0 100 4000 ns data lock time from rx_freqlocked (6) ? ? ? 4000 ? ? 4000 ? ? 4000 ns programmable dc gain dc gain setting = 0 ?0 ? ?0 ??0 ?db dc gain setting = 1 ?3 ? ?3 ??3 ?db dc gain setting = 2 ?6 ? ?6 ??6 ?db transmitter data rate ? ? ? ? ? ? ? ? ? mbps v ocm 0.65 v setting ?650 ? ?650 ? ?650 ? mv differential on-chip termination resistors 100 ? setting ? 100 ? ? 100 ? ? 100 ? return loss differential mode pci express 50 mhz to 1.25 ghz: -10db xaui 312 mhz to 625 mhz: -10db 625 mhz to 3.125 ghz: -10db/decade slope return loss common mode pci express 50 mhz to 1.25 ghz: -6db rise time ? 50? 200 50?20050?200ps fall time ? 50? 200 50?20050?200ps intra-differential pair skew ???15??15??15ps table 1?18. arria ii gx transceiver specification?preliminary (part 3 of 4) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?15 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 intra-transceiver block skew pci express (pipe) 4 ?? 120 ??120?? 120ps inter-transceiver block skew pci express (pipe) 8 ?? 300 ??300?? 300ps cmu pll0 and cmu pll1 cmu pll lock time from cmupll_reset deassertion ? ? ? 100 ? ? 100 ? ? 100 s pld-transceiver interface interface speed ? 25 ? 200 25 ? 160 25 ? 130 mhz digital reset pulse width ? minimum is 2 parallel clock cycles notes to ta bl e 1? 18 : (1) the device cannot tolerate prolonged operation at this absolute maximum. (2) the rate matcher supports only up to +/-300 parts per million (ppm). (3) time taken to rx_pll_locked goes high from rx_analogreset deassertion. refer to figure 1?1 . (4) time for which the cdr must be kept in lock-to-reference mode after rx_pll_locked goes high and before rx_locktodata is asserted in manual mode. refer to figure 1?1 . (5) time taken to recover valid data after the rx_locktodata signal is asserted in manual mode. refer to figure 1?1 . (6) time taken to recover valid data after the rx_freqlocked signal goes high in automatic mode. refer to figure 1?2 . (7) the 1.1-v rx v ic m setting must be used if the input serial data standard is lvds and the link is dc-coupled. table 1?18. arria ii gx transceiver specification?preliminary (part 4 of 4) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?16 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation figure 1?1 shows the lock time parameters in manual mode. 1 ltd = lock-to-data. ltr = lock-to-reference. figure 1?2 shows the lock time parameters in automatic mode. figure 1?1. lock time parameters for manual mode ltr ltd invalid data valid data r x_locktodata ltd lock time cdr status r x_dataout r x_ pl l_ locked r x_analogreset cdr ltr time cdr minimum t1b figure 1?2. lock time parameters for automatic mode ltr ltd invalid data valid data r x_freqlocked data lock time from rx_freqlocked r x_dataout cdr status
chapter 1: arria ii gx device data sheet 1?17 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 figure 1?3 shows the differential receiver input waveform. figure 1?4 shows the transmitter output waveform. table 1?19 shows the typical v od for tx term that equals 100 .. figure 1?3. receiver input waveform single-ended waveform differential waveform v id (diff peak-peak) = 2 x v id (single-ended) positive channel (p) negative channel (n) ground v id v id v id p ? n = 0 v v cm figure 1?4. transmitter output waveform?preliminary single-ended waveform differential waveform v od (diff peak-peak) = 2 x v od (single-ended) positive channel (p) negative channel (n) ground v od v od v od p ? n = 0 v v cm table 1?19. typical v od setting, tx term = 100 ?preliminary symbol v od setting (mv) 200 400 600 700 800 900 1000 1200 v od typical (mv) 200 400 600 700 800 900 1000 1200
1?18 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation table 1?20 shows the typical v od for tx term that equals 150 .. table 1?21 shows the arria ii gx transceiver block ac specifications. table 1?20. typical v od setting, tx term = 150 ?preliminary symbol v od setting (mv) 300 600 900 1050 1200 v od typical (mv) 300 600 900 1050 1200 table 1?21. arria ii gx transceiver block ac specification?preliminary (note 1) , (2) (part 1 of 6) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max sonet/sdh receiver jitter tolerance jitter tolerance at 622.08 mbps jitter frequency = 0.03 khz pattern = prbs23 > 15 > 15 > 15 ui jitter frequency = 25 khz pattern = prbs23 > 1.5 > 1.5 > 1.5 ui jitter frequency = 250 khz pattern = prbs23 > 0.15 > 0.15 > 0.15 ui jitter tolerance at 2488.32 mbps jitter frequency = 0.06 khz pattern = prbs23 > 15 > 15 > 15 ui jitter frequency = 100 khz pattern = prbs23 > 1.5 > 1.5 > 1.5 ui jitter frequency = 1mhz pattern = prbs23 > 0.15 > 0.15 > 0.15 ui jitter frequency = 10 mhz pattern = prbs23 > 0.15 > 0.15 > 0.15 ui fibre channel transmit jitter generation (3) , (10) total jitter fc-1 pattern = crpat ? ? 0.23 ? ? 0.23 ? ? 0.23 ui deterministic jitter fc-1 pattern = crpat ? ? 0.11 ? ? 0.11 ? ? 0.11 ui total jitter fc-2 pattern = crpat ? ? 0.33 ? ? 0.33 ? ? 0.33 ui deterministic jitter fc-2 pattern = crpat ? ? 0.2 ? ? 0.2 ? ? 0.2 ui fibre channel receiver jitter tolerance (3) , (11) deterministic jitter fc-1 pattern = cjtpat > 0.37 > 0.37 > 0.37 ui random jitter fc-1 pattern = cjtpat > 0.31 > 0.31 > 0.31 ui
chapter 1: arria ii gx device data sheet 1?19 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 sinusoidal jitter fc-1 fc/25000 > 1.5 > 1.5 > 1.5 ui fc/1667 > 0.1 > 0.1 > 0.1 ui deterministic jitter fc-2 pattern = cjtpat > 0.33 > 0.33 > 0.33 ui random jitter fc-2 pattern = cjtpat > 0.29 > 0.29 > 0.29 ui sinusoidal jitter fc-2 fc/25000 > 1.5 > 1.5 > 1.5 ui fc/1667 > 0.1 > 0.1 > 0.1 ui xaui transmit jitter generation (4) total jitter at 3.125 gbps pattern = cjpat ? ? 0.3 ? ? 0.3 ? ? 0.3 ui deterministic jitter at 3.125 gbps pattern = cjpat ? ? 0.17 ? ? 0.17 ? ? 0.17 ui xaui receiver jitter tolerance (4) total jitter > 0.65 > 0.65 > 0.65 ui deterministic jitter > 0.37 > 0.37 > 0.37 ui peak-to-peak jitter jitter frequency = 22.1 khz > 8.5 > 8.5 > 8.5 ui peak-to-peak jitter jitter frequency = 1.875 mhz > 0.1 > 0.1 > 0.1 ui peak-to-peak jitter jitter frequency = 20 mhz > 0.1 > 0.1 > 0.1 ui pci express transmit jitter generation (5) total jitter at 2.5 gbps (gen1) compliance pattern ? ?0.25 ? ? 0.25 ??0.25 ui pci express receiver jitter tolerance (5) total jitter at 2.5 gbps (gen1) compliance pattern > 0.6 > 0.6 > 0.6 ui serial rapidio transmit jitter generation (6) deterministic jitter (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat ? ? 0.17 ? ? 0.17 ? ? 0.17 ui total jitter (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat ? ? 0.35 ? ? 0.35 ? ? 0.35 ui serial rapidio receiver jitter tolerance (6) deterministic jitter tolerance (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.37 > 0.37 > 0.37 ui combined deterministic and random jitter tolerance (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.55 > 0.55 > 0.55 ui table 1?21. arria ii gx transceiver block ac specification?preliminary (note 1) , (2) (part 2 of 6) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?20 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 22.1 khz data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 8.5 > 8.5 > 8.5 ui jitter frequency = 1.875 mhz data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.1 > 0.1 > 0.1 ui jitter frequency = 20 mhz data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.1 > 0.1 > 0.1 ui gige transmit jitter generation (7) deterministic jitter (peak-to-peak) pattern = crpat ? ? 0.14 ? ? 0.14 ? ? 0.14 ui total jitter (peak-to-peak) pattern = crpat ? ? 0.279 ? ? 0.279 ? ? 0.279 ui gige receiver jitter tolerance (7) deterministic jitter tolerance (peak-to-peak) pattern = cjpat > 0.4 > 0.4 > 0.4 ui combined deterministic and random jitter tolerance (peak-to-peak) pattern = cjpat > 0.66 > 0.66 > 0.66 ui higig transmit jitter generation (8) deterministic jitter (peak-to-peak) data rate = 3.75 gbps pattern = cjpat ? ? 0.17 ? ? ? ? ? ? ui total jitter (peak-to-peak) data rate = 3.75 gbps pattern = cjpat ? ? 0.35 ? ? ? ? ? ? ui higig receiver jitter tolerance (8) deterministic jitter tolerance (peak-to-peak) data rate = 3.75 gbps pattern = cjpat > 0.37 ? ? ? ? ? ? ui combined deterministic and random jitter tolerance (peak-to-peak) data rate = 3.75 gbps pattern = cjpat > 0.65 ? ? ? ? ? ? ui table 1?21. arria ii gx transceiver block ac specification?preliminary (note 1) , (2) (part 3 of 6) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?21 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 22.1 khz data rate = 3.75 gbps pattern = cjpat > 8.5 ? ? ? ? ? ? ui jitter frequency = 1.875mhz data rate = 3.75 gbps pattern = cjpat > 0.1 ? ? ? ? ? ? ui jitter frequency = 20 mhz data rate = 3.75 gbps pattern = cjpat > 0.1 ? ? ? ? ? ? ui sdi transmitter jitter generation (9) alignment jitter (peak-to-peak) data rate = 1.485 gbps (hd) pattern = color bar low-frequency roll-off = 100 khz 0.2 ? ? 0.2 ? ? 0.2 ? ? ui data rate = 2.97 gbps (3g) pattern = color bar low-frequency roll-off = 100 khz 0.3 ? ? 0.3 ? ? 0.3 ? ? ui table 1?21. arria ii gx transceiver block ac specification?preliminary (note 1) , (2) (part 4 of 6) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?22 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation sdi receiver jitter tolerance (9) sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 15 khz data rate = 2.97 gbps (3g) pattern = single line scramble color bar > 2 > 2 > 2 ui jitter frequency = 100 khz data rate = 2.97 gbps (3g) pattern = single line scramble color bar > 0.3 > 0.3 > 0.3 ui jitter frequency = 148.5 mhz data rate = 2.97 gbps (3g) pattern = single line scramble color bar > 0.3 > 0.3 > 0.3 ui table 1?21. arria ii gx transceiver block ac specification?preliminary (note 1) , (2) (part 5 of 6) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?23 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 core performance specifications for arria ii gx devices this section describes the clock tree, phase-locked loop (pll), digital signal processing (dsp), embedded memory, configuration, and jtag specifications. clock tree specifications table 1?22 lists the clock tree specifications for arria ii gx devices. sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 20 khz data rate = 1.485 gbps (hd) pattern = 75% color bar > 1 > 1 > 1 ui jitter frequency = 100 khz data rate = 1.485 gbps (hd) pattern = 75% color bar > 0.2 > 0.2 > 0.2 ui jitter frequency = 148.5 mhz data rate = 1.485 gbps (hd) pattern =75% color bar > 0.2 > 0.2 > 0.2 ui notes to ta bl e 1? 21 : (1) dedicated refclk pins were used to drive the input reference clocks. (2) the jitter numbers specified are valid for the stated conditions only. (3) the jitter numbers for fibre channel are compliant to the fc-pi-4 specification revision 6.10. (4) the jitter numbers for xaui are compliant to the ieee802.3ae-2002 specification. (5) the jitter numbers for pci express (pipe) are compliant to the pcie base specification 2.0. (6) the jitter numbers for serial rapidio are compliant to the rapidio specification 1.3. (7) the jitter numbers for gige are compliant to the ieee802.3-2002 specification. (8) the jitter numbers for higig are compliant to the ieee802.3ae-2002 specification. (9) the hd-sdi and 3g-sdi jitter numbers are compliant to the smpte292m and smpte424m specifications. (10) the fibre channel transmitter jitter generation numbers are compliant to the specification at t inter operability point. (11) the fibre channel receiver jitter tolerance numbers are compliant to the specification at r interpretability point. table 1?21. arria ii gx transceiver block ac specification?preliminary (note 1) , (2) (part 6 of 6) symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max table 1?22. arria ii gx clock tree performance?preliminary (part 1 of 2) device performance (1) unit c4 c5 c6 ep2agx20 500 500 400 mhz ep2agx30 500 500 400 mhz ep2agx45 500 500 400 mhz ep2agx65 500 500 400 mhz
1?24 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation pll specifications table 1?23 describes the pll specifications for arria ii gx devices. ep2agx95 500 500 400 mhz ep2agx125 500 500 400 mhz ep2agx190 500 500 400 mhz ep2agx260 500 500 400 mhz note to tab l e 1 ?2 2 : (1) the performance specifications are applicable to gclk and rclk networks. table 1?22. arria ii gx clock tree performance?preliminary (part 2 of 2) device performance (1) unit c4 c5 c6 table 1?23. arria ii gx pll specifications?preliminary (part 1 of 2) symbol description min typ max unit f in input clock frequency (from clock input pins residing in top/bottom banks) 5 ? 472.5 (1) mhz input clock frequency (from clock input pins residing in right banks) 5? 500 mhz f inpfd input frequency to the pfd 5 ? 325 mhz f vc o pll vco operating range (2) 600 ? 1300 mhz f induty input clock duty cycle 40 ? 60 % f einduty external feedback clock input duty cycle 40 ? 60 % t inccj input clock cycle to cycle jitter ? ? (4) ps f out output frequency for internal global or regional clock ? ? 472.5 mhz f out_ext output frequency for external clock output ? ? 472.5 (3) mhz t outduty duty cycle for external clock output (when set to 50%) 45 50 55 % t outpj_dc dedicated clock output period jitter ? ? (4) ps t outpj_io regular i/o clock output period jitter ? ? (4) ps t fc omp external feedback clock compensation time ? ? 10 ns t configpll time required to reconfigure pll scan chains ? (4) ? scanclk cycles t conf igphas e time required to reconfigure phase shift 1 ? 1 scanclk cycles f sc anc lk scanclk frequency ? ? 100 mhz t lock time required to lock from end of device configuration ? ? (4) ms t dlock time required to lock dynamically (after switchover or reconfiguring any non-post-scale counters/delays) ?? (4) ms f cl b w pll closed-loop low bandwidth range ? (4) ?mhz pll closed-loop medium bandwidth range ? (4) ?mhz pll closed-loop high bandwidth range ? (4) ?mhz t pll_pserr accuracy of pll phase shift ? (4) ?ps
chapter 1: arria ii gx device data sheet 1?25 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 dsp block specifications table 1?24 describes the arria ii gx dsp block performance specifications. embedded memory block specifications table 1?25 describes the arria ii gx embedded memory block specifications. t areset minimum pulse width on areset signal 10 ? ? ns notes to ta bl e 1? 23 : (1) f in is limited by i/o f ma x . (2) the vco frequency reported by the quartus ii software in the pll summary section of the compilation report takes into consid eration the vco post-scale counter k value. therefore, if the counter k has a value of 2, the frequency reported can be lower than the f vco specification. (3) this specification is limited by the lower of the two: i/o f ma x or f ou t of the pll. (4) pending silicon characterization. table 1?23. arria ii gx pll specifications?preliminary (part 2 of 2) symbol description min typ max unit table 1?24. arria ii gx dsp block performance specifications?preliminary (note 1) mode resources used performance unit number of multipliers c4 c5 c6 9 x 9-bit multiplier 1 315 245 200 mhz 12 x 12-bit multiplier 1 315 245 200 mhz 18 x 18-bit multiplier 1 350 275 225 mhz 36 x 36-bit multiplier 1 285 220 180 mhz 18 x 18-bit multiply accumulator 4 315 245 200 mhz 18 18-bit multiply adder 4 315 245 200 mhz 18 18-bit multiply adder-signed full precision 2 315 245 200 mhz 18 18-bit multiply adder with loopback (2) 2 250 195 160 mhz 36-bit shift (32-bit data) 1 285 220 180 mhz double mode 1 285 220 180 mhz notes to ta bl e 1? 24 : (1) maximum is for fully-pipelined block with round and saturation disabled. (2) maximum is for non-pipelined block with loopback input registers disabled and round and saturation disabled. table 1?25. arria ii gx embedded memory block performance specifications?preliminary (part 1 of 2) memory mode resources used performance unit aluts embedded memory c4 c5 c6 memory logic array block (mlab) single port 64 10 0 1 500 500 400 mhz simple dual-port 32 20 single clock 0 1 500 500 400 mhz simple dual-port 64 10 single clock 0 1 500 500 400 mhz
1?26 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation configuration table 1?26 lists the arria ii gx configuration mode specifications. jtag specifications table 1?27 lists the jtag timing parameters and values for arria ii gx devices. m9k block single-port 256 36 0 1 390 350 295 mhz single-port 256 36, with the read-during-write option set to old data 0 1 250 225 190 mhz simple dual-port 256 36 single clk 0 1 390 350 295 mhz single-port 256 36 single clk, with the read-during-write option set to old data 0 1 250 225 190 mhz true dual port 512 18 single clk 0 1 390 350 295 mhz true dual-port 512 18 single clk, with the read-during-write option set to old data 0 1 250 225 190 mhz table 1?25. arria ii gx embedded memory block performance specifications?preliminary (part 2 of 2) memory mode resources used performance unit aluts embedded memory c4 c5 c6 table 1?26. arria ii gx configuration mode specifications?preliminary programming mode dclk f max unit passive serial 125 mhz fast passive parallel 125 mhz fast active serial 40 mhz remote update only in fast as mode 10 mhz table 1?27. arria ii gx jtag timing parameters and values?preliminary symbol description min max unit t jc p tck clock period 30 ? ns t jc h tck clock high time 14 ? ns t jc l tck clock low time 14 ? ns t jp su (tdi) tdi jtag port setup time 1 ? ns t jp su (tms ) tms jtag port setup time 3 ? ns t jp h jtag port hold time 5 ? ns t jp co jtag port clock to output ? 11 (1) ns t jp zx jtag port high impedance to valid output ? 14 (1) ns t jp xz jtag port valid output to high impedance ? 14 (1) ns note to tab l e 1 ?2 7 : (1) a 1-ns adder is required for each v cc io voltage step down from 3.3 v. for example, t jp co = 12 ns if v cc io of the tdo i/o bank = 2.5 v, or 13 ns if it equals to 1.8 v.
chapter 1: arria ii gx device data sheet 1?27 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 periphery performance this section describes periphery performance, including high-speed i/o and external memory interface. i/o performance supports several system interfacing, for example the high-speed i/o interface, external memory interface, and the pci/pci-x bus interface. i/o using sstl-18 class i termination standard can achieve up to the stated ddr2 sdram interfacing speed as indicated in table 1?30 with typical ddr2 sdram memory interface setup. i/o using general-purpose i/o standards such as 3.0, 2.5, 1.8, or 1.5 lvttl/lvcmos are capable of typical 200 mhz interfacing frequency with 10pf load. 1 actual achievable frequency depends on design- and system-specific factors. you should perform hspice/ibis simulations based on your specific design and system setup to determine the maximum achievable frequency in your system. high-speed i/o specification table 1?28 lists the high-speed i/o timing for arria ii gx devices. table 1?28. high-speed i/o specifications symbol conditions c4 c5 c6 unit min max min max min max clock f inclk (input clock frequency) clock boost factor, w = 1 to 40 (1) 5 500 5 472.5 5 472.5 mhz transmitter f hsdr_tx (true differential output data rate) serdes factor, j = 3 to 10 150 1000 (2) 150 840 150 740 mbps f hsdr_tx_e3r (emulated differential 3r output data rate) serdes factor, j = 3 to 10 (3) 640 (3) (4) (3) (4) mbps receiver f hsdr_rx dpa mode (5) 150 1000 150 840 150 740 mbps non-dpa mode (3) 945 (6) (3) 740 (3) 640 mbps notes to ta bl e 1? 28 : (1) f inclk = f hsdr / w. use w to determine the supported selection of input reference clock frequencies for the desired data rate. (2) this applies to interfacing with dpa receivers. for interfacing with non-dpa receivers, maximum supported data rate is 945 mb ps. beyond 840 mbps, pcb tr ace compensation is required. pcb trace compensation refers to the adjustment of pcb tr ace length for lvds channels to improve channel-to-channel skews, and is optional when interfacing with dpa receivers. (3) the minimum specification is dependent on the clock source (for example, pll and clock pin) and the clock routing resource y ou use (global, regional, or local). the i/o differential buffer and input register do not have a minimum toggle rate. (4) pending silicon characterization. (5) dedicated serdes and dpa features are only available on right banks. (6) pcb trace compensation refers to the adjustment of pcb tr ace length for lvds channels to improve channel-to-channel skews, and is required to support data rate beyond 840 mbps.
1?28 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? february 2009 altera corporation table 1?29 shows dpa lock time specifications for arria ii gx devices. external memory interface specifications table 1?30 lists the maximum clock rate support for external memory interfaces with the half-rate controller for the arria ii gx device family. 1 use table 1?30 for memory interface timing analysis. table 1?29. dpa lock time specifications?preliminary standard training pattern transition density min unit spi-4 00000000001111111111 10% 256 number of repetitions parallel rapid i/o 00001111 25% 256 number of repetitions 10010000 50% 256 number of repetitions miscellaneous 10101010 100% 256 number of repetitions 01010101 ? 256 number of repetitions table 1?30. arria ii gx maximum clock rate support for external memory interfaces with half-rate controller?preliminary (note 1) , (2) memory standards c4 (mhz) c5 (mhz) c6 (mhz) ddr3 sdram (3) 300 n/a n/a ddr2 sdram (4) 300 (5) 267 (6) 200 ddr sdram (4) 200 200 200 qdrii sram (7) , (8) 250 250 200 notes to ta bl e 1? 30 : (1) these numbers are preliminary until characterization is final. the supported operating frequencies listed here are memory interface maximums for the fpga device family. your design's actual achievable performance is based on design- and system-specific factors, as well as static timing analysis of the completed design. (2) the maximum clock rates are applicable to class i termination for interfaces using either row i/os or column i/os. the maximum clock rates can be lower for class ii termination or interfaces using a combination of row and column i/os. (3) arria ii gx devices support ddr3 sdram components only if no levelling support is required for ddr3 dimms. interfaces with multiple ddr3 sdram components requi re component arrangement according to ddr2 dimm tree topology. (4) this applies to interfaces with both components and single rank unbuffered modules. (5) the 300-mhz ddr2 interface requires the use of 400-mhz ddr2 sdram modules or components. (6) the 267-mhz ddr2 interface requires the use of 333-mhz ddr2 sdram modules or components. (7) qdrii sram supports 1.8-v and 1.5- v hstl i/o standards. however, altera recommends using the 1.8-v hstl i/o standard for maximum performance because of the higher i/o drive strength. (8) arria ii gx devices feature i/os capable of electrical support for qdrii. however, altera does not currently supply a controller or phy megafunction for qdrii interfaces.
chapter 1: arria ii gx device data sheet 1?29 switching characteristics ? february 2009 altera corporation arria ii gx device handbook volume 3 dll and dqs logic block specifications table 1?31 lists dll frequency range specifications for arria ii gx devices. table 1?32 lists the dqs phase offset delay per stage for arria ii gx devices. duty cycle distortion (dcd) specifications table 1?33 lists the worst-case dcd for arria ii gx devices. table 1?31. arria ii gx dll frequency range specifications?preliminary frequency mode frequency range (mhz) resolution () c4 c5 c6 0 90 ? 150 90 ? 140 90 ? 120 22.5 1 120 ? 200 120 ? 190 120 ? 170 30 2 150 ? 240 150 ? 230 150 ? 200 36 3 180 ? 300 180 ? 290 180 ? 250 45 4 240 ? 370 240 ? 350 240 ? 310 30 5 290 ? 450 290 ? 420 290 ? 370 36 table 1?32. dqs phase offset delay per setting?preliminary (note 1) , (2) , (3) speed grade min max unit c4 7.0 13.0 ps c5 (4) (4) ps c6 8.5 15.5 ps notes to ta bl e 1? 32 : (1) the valid settings for phase offset are -64 to +63 for frequency modes 0 to 3 and -32 to +31 for frequency modes 4 to 5. (2) the typical value equals the average of the minimum and maximum values. (3) delay settings are linear. (4) pending silicon characterization. table 1?33. duty cycle distortion on arria ii gx i/o pins?preliminary (note 1) symbol c4 c5 c6 unit min max min max min max output duty cycle 45 55 45 55 45 55 % note to tab l e 1 ?3 3 : (1) preliminary dcd specification applies to clock outputs from plls, global clock tree, and i/o elements (ioe) driving dedicated and general purpose i/o pins.
1?30 chapter 1: arria ii gx device data sheet glossary arria ii gx device handbook volume 3 ? february 2009 altera corporation glossary table 1?34 shows the glossary for this chapter. table 1?34. glossary letter subject definitions a ?? b ?? c ?? d differential i/o standards receiver input waveforms transmitter output waveforms e ?? f f hsclk left/right pll input clock frequency. f hsdr high-speed i/o block: maximum/minimum lvds data transfer rate (f hsdr = 1/tui), non-dpa. f hsdrdpa high-speed i/o block: maximum/minimum lvds data transfer rate (f hsdrdpa = 1/tui), dpa. single-ended waveform differential waveform positive channel (p) = v oh negative channel (n) = v ol ground v od v od v od p ? n = 0 v v cm single-ended waveform differential waveform positive channel (p) = v ih negative channel (n) = v il ground v id v id v id p ? n = 0 v v cm
chapter 1: arria ii gx device data sheet 1?31 glossary ? february 2009 altera corporation arria ii gx device handbook volume 3 g ?? h ?? i ?? j j high-speed i/o block: deserialization factor (width of parallel data bus). jtag timing specifications jtag timing specifications are in the following figure: k ?? l ?? m ?? n ?? o ?? p pll specifications the block diagram shown in the following figure highlights the pll specification parameters: diagram of pll specifications (1) note: (1) coreclock can only be fed by dedicated clock input pins or pll outputs. q ?? r r l receiver differential input discrete resistor (external to the arria ii gx device). table 1?34. glossary (continued) letter subject definitions tdo tck t jpzx t jpco t jph t jpxz t jcp t jpsu t jcl t jch tdi tms core clock external feedback reconfigurable in user mode key clk n m pfd switchover vco cp lf clkout pins gclk rclk f inpfd f in f vco f out f out_ext k counters c0..c9
1?32 chapter 1: arria ii gx device data sheet glossary arria ii gx device handbook volume 3 ? february 2009 altera corporation s sw (sampling window) the period of time during which the data must be valid in order to capture it correctly. the setup and hold times determine the ideal strobe position within the sampling window: timing diagram single-ended voltage referenced i/o standard the jedec standard for sstl and hstl i/o standards define both the ac and dc input signal values. the ac values indicate the voltage levels at which the receiver must meet its timing specifications. the dc values indicate the voltage levels at which the final logic state of the receiver is unambiguously defined. once the receiver input has crossed the ac value, the receiver changes to the new logic state. the new logic state is then maintained as long as the input stays beyond the ac threshold. this approach is intended to provide predictable receiver timing in the presence of input waveform ringing: single-ended voltage referenced i/o standard t t c high-speed receiver and transmitter input and output clock period. tccs (channel-to- channel- skew) the timing difference between the fastest and slowest output edges, including t co variation and clock skew, across channels driven by the same pll. the clock is included in the tccs measurement (refer to the timing diagram figure under s in this table). t duty high-speed i/o block: duty cycle on high-speed transmitter output clock. timing unit interval (tui) the timing budget allowed for skew, propagation delays, and data sampling window. (tui = 1/(receiver input clock frequency multiplication factor) = t c / w ) t fall signal high-to-low transition time (80-20%) t in c cj cycle-to-cycle jitter tolerance on pll clock input t outpj_io period jitter on general purpose i/o driven by a pll t outpj_dc period jitter on dedicated clock output driven by a pll t rise signal low-to-high transition time (20-80%) u ?? table 1?34. glossary (continued) letter subject definitions bit time 0.5 x tccs rskm sampling window (sw) rskm 0.5 x tccs v ih ( ac ) v ih(dc) v ref v il(dc) v il(ac ) v oh v ol v ccio v ss
chapter 1: arria ii gx device data sheet 1?33 document revision history ? february 2009 altera corporation arria ii gx device handbook volume 3 document revision history table 1?35 shows the revision history for this chapter. vv cm (dc ) dc common mode input voltage. v icm input common mode voltage: the common mode of the differential signal at the receiver. v id input differential voltage swing: the difference in voltage between the positive and complementary conductors of a differential transmission at the receiver. v dif(ac) ac differential input voltage: minimum ac input differential voltage required for switching. v dif(dc) dc differential input voltage: minimum dc input differential voltage required for switching. v ih voltage input high: the minimum positive voltage applied to the input which will be accepted by the device as a logic high. v ih(ac) high-level ac input voltage v ih(dc) high-level dc input voltage v il voltage input low: the maximum positive voltage applied to the input which will be accepted by the device as a logic low. v il(ac) low-level ac input voltage v il(dc) low-level dc input voltage v ocm output common mode voltage: the common mode of the differential signal at the transmitter. v od output differential voltage swing: the difference in voltage between the positive and complementary conductors of a differential transmission at the transmitter. w w high-speed i/o block: clock boost factor x ?? y ?? z ?? table 1?34. glossary (continued) letter subject definitions table 1?35. document revision history date and document version changes made summary of changes february 2009, v1.0 initial release. ?
1?34 chapter 1: arria ii gx device data sheet document revision history arria ii gx device handbook volume 3 ? february 2009 altera corporation
? february 2009 altera corporation arria ii gx device handbook volume 3 additional information about this handbook this handbook provides comprehensive information about the altera arria ii gx family of devices. how to contact altera for the most up-to-date information about altera products, see the following table. typographic conventions the following table shows the typographic conventions that this document uses. contact (note 1) contact method address technical support website www.altera.com/support technical training website www.altera.com/training email custrain@altera.com altera literature services email literature@altera.com non-technical support (general) email nacomp@altera.com (software licensing) email authorization@altera.com note: (1) you can also contact your local altera sales office or sales representative. visual cue meaning bold type with initial capital letters indicates command names and dialog box titles. for example, save as dialog box. bold type indicates directory names, project names, disk drive names, file names, file name extensions, dialog box options, software utility names, and other gui labels. for example, \qdesigns directory, d: drive, and chiptrip.gdf file. italic type with initial capital letters indicates document titles. for example, an 519: stratix iv design guidelines. italic type indicates variables. for example, n + 1. variable names are enclosed in angle brackets (< >). for example, and .pof file. initial capital letters indicates keyboard keys and menu names. for example, delete key and the options menu. ?subheading title? quotation marks indicate references to sections within a document and titles of quartus ii help topics. for example, ?typographic conventions.?
info?2 additional information arria ii gx device handbook volume 3 ? february 2009 altera corporation courier type indicates signal, port, register, bit, block, and primitive names. for example, data1 , tdi , and input . active-low signals are denoted by suffix n . for example, resetn . indicates command line commands and anything that must be typed exactly as it appears. for example, c:\qdesigns\tutorial\chiptrip.gdf . also indicates sections of an actual file, such as a report file, references to parts of files (for example, the ahdl keyword subdesign ), and logic function names (for example, tri ). 1., 2., 3., and a., b., c., and so on. numbered steps indicate a list of items when the sequence of the items is important, such as the steps listed in a procedure. bullets indicate a list of items when the sequence of the items is not important. 1 the hand points to information that requires special attention. c a caution calls attention to a condition or possible situation that can damage or destroy the product or your work. w a warning calls attention to a condition or possible situation that can cause you injury. r the angled arrow instructs you to press enter . f the feet direct you to more information about a particular topic. visual cue meaning
? march 2009 altera corporation arria ii gx device handbook volume 3 section i. arria ii gx device data sheet this section provides information about the arria ? ii gx device data sheet. this section includes the following chapters: chapter 1, arria ii gx device data sheet revision history refer to each chapter for its own specific revision history. for information on when each chapter was updated, refer to the chapter revision dates section, which appears in this volume.
i?2 section i. arria ii gx device data sheet arria ii gx device handbook volume 3 ? march 2009 altera corporation
? march 2009 altera corporation arria ii gx device handbook volume 3 1. arria ii gx device data sheet introduction this chapter describes the electrical and switching characteristics of the arria ? ii gx device family. this chapter contains the following sections: ?electrical characteristics? on page 1?1 ?switching characteristics? on page 1?11 ?glossary? on page 1?30 electrical characteristics the following sections describe the electrical characteristics. operating conditions when arria ii gx devices are implemented in a system, they are rated according to a set of defined parameters. to maintain the highest possible performance and reliability of arria ii gx devices, system designers must consider the following operating requirements: arria ii gx devices are offered in both commercial and industrial grades. commercial devices are offered in ?4 (fastest), ?5, and ?6 (slowest) speed grades. industrial device is only offered in ?5 speed grade. 1 in this chapter, a prefix associated with the operating temperature range is attached to the speed grades; commercial with the "c" prefix, and industrial with the ?i? prefix. commercial devices are therefore indicated as c4, c5, and c6 speed grade respectively, while the industrial device is indicated as i5. absolute maximum ratings absolute maximum ratings define the maximum operating conditions for arria ii gx devices. the values are based on experiments conducted with the device and theoretical modeling of breakdown and damage mechanisms. the functional operation of the device is not implied under these conditions. 1 conditions beyond those listed in table 1?1 may cause permanent damage to the device. additionally, device operation at the absolute maximum ratings for extended periods of time may have adverse effects on the device. aiigx53001-1.1
1?2 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation maximum allowed overshoot and undershoot voltage during transitions, input signals may overshoot to the voltage shown in table 1?2 and undershoot to -2.0 v for magnitude of currents less than 100 ma and periods shorter than 20 ns. table 1?2 lists the maximum allowed input overshoot voltage and the duration of the overshoot voltage as a percentage over the device lifetime. the maximum allowed overshoot duration is specified as a percentage of high-time over the lifetime of the device. a dc signal is equivalent to 100% duty cycle. for example, a signal that overshoots to 4.3 v can only be at 4.3 v for 5.41% over the lifetime of the device: for a device lifetime of 10 years, this amounts to 5.41/10ths of a year. tab le 1 ?1 . arria ii gx device absolute maximum ratings symbol description minimum maximum unit v cc supplies power to the core, periphery, i/o registers, pcie hip block, and transceiver pcs -0.5 1.35 v v cccb supplies power to the configuration ram bits -0.5 1.65 v v ccbat battery back-up power supply for design security volatile key register -0.5 3.75 v v ccpd supplies power to the i/o pre-drivers, differential input buffers, and msel circuitry -0.5 3.75 v v ccio supplies power to the i/o banks -0.5 3.9 v v ccd_pll supplies power to the digital portions of the pll -0.5 1.35 v v cca_pll supplies power to the analog portions of the pll and device-wide power management circuitry -0.5 3.75 v v i dc input voltage -0.5 4.0 v v cca supplies power to the transceiver pma regulator ? 2.625 v v ccl_gxb supplies power to the transceiver pma tx, pma rx, and clocking ? 1.21 v v cch_gxb supplies power to the transceiver pma output (tx) buffer ? 1.54 v t j operating junction temperature -40 100 c t stg storage temperature (no bias) -65 150 c
chapter 1: arria ii gx device data sheet 1?3 electrical characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 maximum allowed i/o operating frequency table 1?3 defines the maximum allowed i/o operating frequency for i/os using the specified i/o standards to ensure device reliability. recommended operating conditions this section lists the functional operation limits for ac and dc parameters for arria ii gx devices. the steady-state voltage and current values expected from arria ii gx devices are provided in table 1?4 . all supplies are required to monotonically reach their full-rail values without plateaus within t ramp . tab le 1 ?2 . maximum allowed overshoot during transitions symbol description condition overshoot duration as % of high time unit v i (ac) ac input voltage 4.0 v 100.000 % 4.05 v 79.330 % 4.1 v 46.270 % 4.15 v 27.030 % 4.2 v 15.800 % 4.25 v 9.240 % 4.3 v 5.410 % 4.35 v 3.160 % 4.4 v 1.850 % 4.45 v 1.080 % 4.5 v 0.630 % 4.55 v 0.370 % 4.6 v 0.220 % tab le 1 ?3 . maximum allowed i/o operating frequency i/o standard i/o frequency (mhz) sstl-18, sstl -15 hstl-18, hstl-15 300 3.3-v and 3.0-v lvttl 3.3-v, 3.0-v, 2.5-v, 1.8-v, 1.5-v lvcmos pci and pci-x sstl-2 250 1.2-v lvcmos hstl-12 200
1?4 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation table 1?4 shows the recommended operating conditions for arria ii gx device. dc characteristics this section lists the supply current, i/o pin leakage current, on-chip termination (oct) accuracy and variation, input pin capacitance, internal weak pull-up and pull-down resistance, hot socketing, and schmitt trigger input specifications. tab le 1 ?4 . arria ii gx device recommended operating conditions symbol description condition minimum typical maximum unit v cc supplies power to the core, periphery, i/o registers, pcie hip block, and transceiver pcs ? 0.87 0.90 0.93 v v cccb supplies power to the configuration ram bits ? 1.425 1.50 1.575 v v ccbat (2) battery back-up power supply for design security volatile key registers ? 1.2 ? 3.3 v v ccpd supplies power to the i/o pre-drivers, differential input buffers, and msel circuitry ? 3.135 3.3 3.465 v ? 2.85 3.0 3.15 v ? 2.375 2.5 2.625 v v ccio supplies power to the i/o banks (1) ? 3.135 3.3 3.465 v ? 2.85 3.0 3.15 v ? 2.375 2.5 2.625 v ? 1.71 1.8 1.89 v ? 1.425 1.5 1.575 v ? 1.14 1.2 1.26 v v ccd_pll supplies power to the digital portions of the pll ? 0.87 0.90 0.93 v v cca_pll supplies power to the analog portions of the pll and device-wide power management circuitry ? 2.375 2.5 2.625 v v i dc input voltage ? ?0.5 ? 3.6 v v o output voltage ? 0 ? v ccio v v cca supplies power to the transceiver pma regulator ? 2.375 2.5 2.625 v v ccl_gxb supplies power to the transceiver pma tx, pma rx, and clocking ? 1.045 1.1 1.155 v v cch_gxb supplies power to the transceiver pma output (tx) buffer ? 1.425 1.5 1.575 v t j operating junction temperature commercial 0 ? 85 c industrial ?40 ? 100 c t ramp power supply ramp time normal por 0.05 ? 100 ms fast por 0.05 ? 4 ms notes to ta bl e 1? 4 : (1) v ccio for 3c and 8c i/o banks where the configuration pins reside only supports 3.3-, 3.0-, 2.5-, or 1.8-v voltage levels. (2) altera recommends a 3.0-v nominal battery voltage when connecting v cc bat to a battery for volatile key backup. if you do not use the volatile security key, you may connect the v cc bat to either gnd or a 3.0-v power supply.
chapter 1: arria ii gx device data sheet 1?5 electrical characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 supply current standby current is the current the device draws after the device is configured with no inputs or outputs toggling and no activity in the device. since these currents vary largely with resources used, use the excel-based early power estimator (epe) to get supply current estimates for your design. i/o pin leakage current table 1?5 defines the arria ii gx i/o pin leakage current specifications. oct specifications table 1?6 lists the arria ii gx series oct with and without calibration accuracy. oct calibration is automatically performed at power-up for oct-enabled i/os. when voltage and temperature conditions change after calibration, the resistance may change. use equation 1?1 to determine the oct variation when voltage and temperature vary after power-up calibration. tab le 1 ?5 . arria ii gx i/o pin leakage current symbol description conditions min typ max unit i i input pin v i = 0 v to v cciom ax ?10 ? 10 a i oz tri-stated i/o pin v o = 0 v to v cciomax ?10 ? 10 a tab le 1 ?6 . oct with and without calibration specification for i/os (note 1) symbol description conditions calibration accuracy unit commercial 25- r s 3.0/2.5 25- series oct without calibration v ccio = 3.0/2.5 v 30 % 50- r s 3.0/2.5 50- series cot without calibration v ccio = 3.0/2.5 v 30 % 25- r s 1.8 25- series oct without calibration v cc io = 1.8 v 40 % 50- r s 1.8 50- series oct without calibration v cc io = 1.8 v 40 % 25- r s 1.5/1.2 25- series oct without calibration v ccio = 1.5/1.2 v 50 % 50- r s 1.5/1.2 50- series oct without calibration v ccio = 1.5/1.2 v 50 % 25- r s 3.0/2.5/1.8/ 1.5/1.2 25- series oct with calibration v cc io = 3.0/2.5/1.8/ 1.5/1.2 v 10 % 50- r s 3.0/2.5/1.8/ 1.5/1.2 50- series oct with calibration v cc io = 3.0/2.5/1.8/ 1.5/1.2 v 10 % note to tab l e 1 ?6 : (1) oct with calibration accuracy is valid at the time of calibration only.
1?6 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation table 1?7 lists oct variation with temperature and voltage after power-up calibration. pin capacitance table 1?8 shows the arria ii gx device family pin capacitance. internal weak pull-up and weak pull-down resistors table 1?9 lists the arria ii gx devices weak pull-up and pull-down resistor values. equation 1?1. oct variation (note 1) note to equation 1?1 : (1) r cal is calibrated oct at power up. t and v are variations in temperature and voltage with respect to temperature and v ccio values, respectively, at power up. tab le 1 ?7 . oct variation after power-up calibration nominal voltage dr/dt (% ? /c) dr/dt(% ? /mv) 3.0 0.262 ?0.026 2.5 0.234 ?0.039 1.8 0.219 ?0.086 1.5 0.199 ?0.136 1.2 0.161 ?0.288 r oct r cal 1 dr dt ------ - t dr dv ------ - v + + ?? ?? = tab le 1 ?8 . arria ii gx device capacitance symbol description typical unit c iodiff input capacitance on dual-purpose differential i/o pins 7.5 pf c ioclk input capacitance on dual-purpose clock output/feedback pins and dedicated clock input pins 7pf c iooct input capacitance on dual-purpose r up and r dn pins 7 pf tab le 1 ?9 . arria ii gx internal weak pull-up and weak pull-down resistors (part 1 of 2) (note 1) symbol description conditions min. typ. max. unit r pu value of i/o pin pull-up resistor before and during configuration, as well as user mode if the programmable pull-up resistor option is enabled. v cc io = 3.3 v 5% (2) , (3) 7 2541k v cc io = 3.0 v 5% (2) , (3) 7 2847k v cc io = 2.5 v 5% (2) , (3) 8 3561k v cc io = 1.8 v 5% (2) , (3) 10 57 108 k v cc io = 1.5 v 5% (2) , (3) 13 82 163 k v cc io = 1.2 v 5% (2) , (3) 19 143 351 k
chapter 1: arria ii gx device data sheet 1?7 electrical characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 hot socketing table 1?10 defines the hot socketing specification for arria ii gx devices. schmitt trigger input the arria ii gx device supports schmitt trigger input on tdi , tms , tck , nstatus , nconfig , nce , conf_done , and dclk pins. a schmitt trigger introduces hysteresis to the input signal for improved noise immunity, especially for signals with slow edge rates. table 1?11 lists the hysteresis specifications across the supported v ccio range for schmitt trigger inputs in arria ii gx devices. r pd value of tck pin pull-down resistor v ccio = 3.3 v 5% (4) 6 1929k v ccio = 3.0 v 5% (4) 6 2232k v ccio = 2.5 v 5% (4) 6 2542k v ccio = 1.8 v 5% (4) 7 3570k v ccio = 1.5 v 5% (4) 850112k notes to ta bl e 1? 9 : (1) all i/o pins have an option to enable weak pull-up except configuration, test, and jtag pins. the weak pull-down feature is only available for jtag tck . (2) pin pull-up resistance values may be lower if an external source drives the pin higher than v ccio . (3) r pu = (v ccio - v i )/i r pu . minimum condition: -40c; v ccio = vcc + 5%, v i = vcc + 5% - 50 mv. ty pical condition: 25c; v ccio = vcc, v i =0v. maximum condition: 100c; v ccio = vcc - 5%, v i = 0 v; in which v i refers to the voltage input at the i/o pin. (4) r pd = v i /i rpd . minimum condition: -40c; v ccio = vcc + 5%, v i = 50 mv. typical condition: 25c; v ccio = vcc, v i = vcc - 5%. maximum condition: 100c; v ccio = vcc - 5%, v i = vcc - 5%; in which v i refers to the voltage input at the i/o pin. tab le 1 ?9 . arria ii gx internal weak pull-up and weak pull-down resistors (part 2 of 2) (note 1) symbol description conditions min. typ. max. unit table 1?10. arria ii gx hot socketing specifications symbol description maximum i iiopin(dc) dc current per i/o pin 300 a i iopin(ac) ac current per i/o pin 8 ma (1) i xcvrtx(dc) dc current per transceiver tx pin 100 ma i xcvrrx(dc) dc current per transceiver rx pin 50 ma note to tab l e 1 ?1 0 : (1) the i/o ramp rate is 10 ns or more. for ramp rates faster than 10 ns, |iiopin| = c dv/dt, in which ?c? is i/o pin capacitance and ?dv/dt? is slew rate. table 1?11. arria ii gx schmitt trigger input hysteresis specifications symbol description condition minimum unit v schmitt hysteresis for schmitt trigger input v ccio = 3.3 v 220 mv v ccio = 2.5 v 180 mv v ccio = 1.8 v 110 mv v ccio = 1.5 v 70 mv
1?8 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation i/o standard specifications table 1?12 through table 1?17 list input voltage (v ih and v il ), output voltage (v oh and v ol ), and current drive characteristics (i oh and i ol ) for various i/o standards supported by arria ii gx devices. they also show the arria ii gx device family i/o standard specifications. v ol and v oh values are valid at the corresponding i oh and i ol , respectively. 1 for an explanation of terms used in table 1?12 through table 1?17 , refer to ?glossary? on page 1?30 . table 1?12 lists the arria ii gx single-ended i/o standards. table 1?13 lists the arria ii gx single-ended sstl and hstl i/o reference voltage specifications. table 1?12. single-ended i/o standards i/o standard v ccio (v) v il (v) v ih (v) v ol (v) v oh (v) i ol (ma) i oh (ma) min typ max min max min max max min 3.3 v lvttl 3.135 3.3 3.465 -0.3 0.8 1.7 v ccio + 0.3 0.4 2.4 2 -2 3.3 v lvcmos 3.135 3.3 3.465 -0.3 0.8 1.7 v ccio + 0.3 0.2 v ccio - 0.2 0.1 -0.1 3.0 v lvttl 2.85 3 3.15 -0.3 0.8 1.7 v ccio + 0.3 0.4 2.4 2 -2 3.0 v lvcmos 2.85 3 3.15 -0.3 0.8 1.7 v ccio + 0.3 0.2 v ccio - 0.2 0.1 -0.1 2.5 v lvcmos 2.375 2.5 2.625 -0.3 0.7 1.7 v ccio + 0.3 0.4 2 1 -1 1.8 v lvcmos 1.71 1.8 1.89 -0.3 0.35 v cc io 0.65 v cc io v cc io + 0.3 0.45 v cc io - 0.45 2 -2 1.5 v lvcmos 1.425 1.5 1.575 -0.3 0.35 v cc io 0.65 v cc io v cc io + 0.3 0.25 * v cc io 0.75 v ccio 2-2 1.2 v lvcmos 1.14 1.2 1.26 -0.3 0.35 v cc io 0.65 v cc io v cc io + 0.3 0.25 * v cc io 0.75 v ccio 2-2 3.0-v pci 2.85 3 3.15 ? 0.3 v cc io 0.5 v cc io 3.6 0.1 v cc io 0.9 v cc io 1.5 -0.5 3.0-v pci-x 2.85 3 3.15 ? 0.35 v cc io 0.5 v cc io ? 0.1 v cc io 0.9 v cc io 1.5 -0.5 table 1?13. single-ended sstl and hstl i/o reference voltage specifications (part 1 of 2) i/o standard v cc io (v) v ref (v) v tt (v) min typ max min typ max min typ max sstl-2 class i, ii 2.375 2.5 2.625 0.49 v ccio 0.5 v ccio 0.51 v cc io v ref - 0.04 v ref v ref + 0.04 sstl-18 class i, ii 1.71 1.8 1.89 0.49 v ccio 0.5 v ccio 0.51 v cc io v ref - 0.04 v ref v ref + 0.04
chapter 1: arria ii gx device data sheet 1?9 electrical characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 table 1?14 lists the arria ii gx single-ended sstl and hstl i/o standard signal specifications. sstl-15 class i, ii 1.425 1.5 1.575 0.49 v ccio 0.5 v ccio 0.51 v cc io v ref - 0.04 v ref v ref + 0.04 hstl-18 class i, ii 1.71 1.8 1.89 0.85 0.9 0.95 ? v ccio /2 ? hstl-15 class i, ii 1.425 1.5 1.575 0.68 0.75 0.9 ? v ccio /2 ? hstl-12 class i, ii 1.14 1.2 1.26 0.48 v ccio 0.5 v ccio 0.52 v cc io ?v ccio /2 ? table 1?13. single-ended sstl and hstl i/o reference voltage specifications (part 2 of 2) i/o standard v cc io (v) v ref (v) v tt (v) min typ max min typ max min typ max table 1?14. single-ended sstl and hstl i/o standard signal specifications i/o standard v il(dc) (v) v ih(dc) (v) v il (a c) (v) v ih (a c) (v) v ol (v) v oh (v) i ol (ma) i oh (ma) min max min max max min max min sstl-2 class i -0.3 v ref - 0.15 v ref + 0.15 v cc io + 0.3 v ref - 0.31 v ref + 0.31 v tt - 0.57 v tt + 0.57 8.1 -8.1 sstl-2 class ii -0.3 v ref - 0.15 v ref + 0.15 v cc io + 0.3 v ref - 0.31 v ref + 0.31 v tt - 0.76 v tt + 0.76 16.2 -16.2 sstl-18 class i -0.3 v ref - 0.125 v ref + 0.125 v cc io + 0.3 v ref -0.25 v ref + 0.25 v tt - 0.475 v tt + 0.475 6.7 -6.7 sstl-18 class ii -0.3 v ref - 0.125 v ref + 0.125 v cc io + 0.3 v ref -0.25 v ref + 0.25 0.28 v cc io - 0.28 13.4 -13.4 sstl-15 class i -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref - 0.175 v ref + 0.175 0.2 v ccio 0.8 v ccio 8-8 sstl-15 class ii -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref - 0.175 v ref + 0.175 0.2 v ccio 0.8 v ccio 16 -16 hstl-18 class i -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 8-8 hstl-18 class ii -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 16 -16 hstl-15 class i -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 8-8 hstl-15 class ii -0.3 v ref - 0.1 v ref + 0.1 v cc io + 0.3 v ref -0.2 v ref + 0.2 0.4 v cc io - 0.4 16 -16 hstl-12 class i -0.15 v ref - 0.08 v ref + 0.08 v cc io + 0.15 v ref -0.15 v ref + 0.15 0.25 v ccio 0.75 v ccio 8-8 hstl-12 class ii -0.15 v ref - 0.08 v ref + 0.08 v cc io + 0.15 v ref -0.15 v ref + 0.15 0.25 v ccio 0.75 v ccio 16 -16
1?10 chapter 1: arria ii gx device data sheet electrical characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation table 1?15 lists the arria ii gx differential sstl i/o standards. table 1?16 lists the arria ii gx hstl i/o standards. table 1?17 lists the arria ii gx differential i/o standard specifications. table 1?15. differential sstl i/o standards i/o standard v cc io (v) v swin g(dc ) (v) v x(a c) (v) v swing(ac) (v) v ox (a c) (v) min typ max min max min typ max min max min typ max sstl-2 class i, ii 2.375 2.5 2.625 0.36 v ccio v cc io /2 - 0.2 ? v ccio /2 + 0.2 0.7 v cc io (1) ? (1) sstl-18 class i, ii 1.71 1.8 1.89 0.25 v ccio v cc io /2 - 0.175 ? v ccio /2 + 0.175 0.5 v cc io (1) ? (1) sstl-15 class i, ii 1.425 1.5 1.575 0.2 ? (1) ? (1) 0.35 ? (1) ? (1) note to tab l e 1 ?1 5 : (1) pending silicon characterization. table 1?16. differential hstl i/o standards i/o standard v cc io (v) v dif(dc) (v) v x(ac) (v) v cm(dc) (v) v dif(a c) (v) min typ max min max min typ max min typ max min max hstl-18 class i 1.71 1.8 1.89 0.2 ? 0.85 ? 0.95 0.88 ? 0.95 0.4 ? hstl-15 class i, ii 1.425 1.5 1.575 0.2 ? 0.71 ? 0.79 0.71 ? 0.79 0.4 ? hstl-12 class i, ii 1.14 1.2 1.26 0.16 ? ? 0.5 v ccio ? 0.48 v cc io 0.5 v ccio 0.52 v ccio 0.3 ? table 1?17. differential i/o standard specifications i/o standard v ccio (v) v th (mv) v icm (v) (4) v od (v) (1) v os (v) min typ max min cond. max min cond. max min typ max min typ max 2.5v lvds 2.375 2.5 2.625 100 v cm = 1.25 v ?0.05 d max <= 700 mbps 1.80 0.247 ? 0.6 1.125 1.25 1.375 ?1.05 d max > 700 mbps 1.55 rsds (3) 2.375 2.5 2.625 ? ? ? ? ? ? 0.1 0.2 0.6 0.5 1.2 1.4 mini- lvds (3) 2.375 2.5 2.625 ? ? ? ? ? ? 0.25 ? 0.6 1 1.2 1.4 lvpecl (2) 2.375 2.5 2.625 300 ? ? 0.6 d max <= 700 mbps 1.8 ??? ??? 1.0 d max > 700 mbps 1.6 notes to ta bl e 1? 17 : (1) r l range: 90 <= rl <= 110 . (2) lvpecl input standard is supported at the dedicated clock input pins ( gclk ) only. (3) rsds and mini-lvds i/o standards are only supported for differential outputs. (4) v in range: 0 <= v in <= 1.85 v.
chapter 1: arria ii gx device data sheet 1?11 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 power consumption for arria ii gx devices altera ? offers two ways to estimate power for a design: the excel-based early power estimator and the quartus ? ii powerplay power analyzer feature. the interactive excel-based early power estimator is typically used prior to designing the fpga in order to get a magnitude estimate of the device power. the quartus ii powerplay power analyzer provides better quality estimates based on the specifics of the design after place-and-route is complete. the powerplay power analyzer can apply a combination of user-entered, simulation-derived, and estimated signal activities which, when combined with detailed circuit models, can yield very accurate power estimates. f for more information about power estimation tools, refer to the early power estimator user guide and the powerplay power analysis chapter in the quartus ii handbook . switching characteristics this section provides performance characteristics of the arria ii gx core and periphery blocks for commercial grade devices. these characteristics can be designated as preliminary or final. preliminary characteristics are created using simulation results, process data, and other known parameters. final characteristics are based on actual silicon characterization and testing. these numbers reflect the actual performance of the device under worst-case silicon process, voltage, and junction temperature conditions. 1 the table title shows the designations as ?preliminary? for each table with preliminary characteristics. transceiver performance specifications table 1?18 lists the arria ii gx transceiver specifications. table 1?18. arria ii gx transceiver specification (part 1 of 4)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max reference clock input frequency from refclk input pins ? 50 ? 622.08 50 ? 622.08 50 ? 622.08 mhz input frequency from pld input ? 50? 200 50?20050?200mhz absolute v max for a refclk pin ? ? ? 2.2 ? ? 2.2 ? ? 2.2 v absolute v min for a refclk pin ? -0.3 ? ? -0.3 ? ? -0.3 ? ? v rise/fall time ? ? ? 0.2 ? ? 0.2 ? ? 0.2 ui duty cycle ? 45 ? 55 45 ? 55 45 ? 55 %
1?12 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation peak-to-peak differential input voltage ? 200 ? 2000 200 ? 2000 200 ? 2000 mv spread-spectrum modulating clock frequency pci express 30 ? 33 30 ? 33 30 ? 33 khz spread-spectrum downspread pci express ? 0 to -0.5% ?? 0 to -0.5% ?? 0 to -0.5% ? on-chip termination resistors ? ? 100 ? ? 100 ? ? 100 ? v icm (ac coupled) ? ? 1200 ? ? 1200 ? ? 1200 ? mv v icm (dc coupled) hcsl i/o standard for pci express reference clock 250 ? 550 250 ? 550 250 ? 550 mv r ref ??? 2000 1% ?? 2000 1% ?? 2000 1% ? transceiver clocks calibration block clock frequency ? 10? 125 10?12510?125mhz fixedclk clock frequency pci express receiver detect ?125 ? ?125 ? ?125 ?mhz transceiver block minimum power-down pulse width ??1??1??1?s receiver data rate ? 600 ? 3750 600 ? 3125 600 ? 3125 mbps absolute v max for a receiver pin (1) ? ? ? 1.5 ? ? 1.5 ? ? 1.5 v absolute v min for a receiver pin ? -0.4 ? ? -0.4 ? ? -0.4 ? ? v maximum peak-to-peak differential input voltage v id (diff p-p) v icm = 0.82 v setting ?? 2.7 ??2.7?? 2.7 v v icm =1.1 v setting (7) ?? 1.6 ??1.6?? 1.6 v minimum peak-to-peak differential input voltage v id (diff p-p) data rate = 600 mbps to 3.75 gbps. 100 ? ? 100 ? ? 100 ? ? mv table 1?18. arria ii gx transceiver specification (part 2 of 4)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?13 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 v icm v icm = 0.82 v setting ?820 ? ?820 ? ?820 ? mv v icm =1.1 v setting (7) ?1100 ? ?1100 ? ?1100 ? mv differential on-chip termination resistors 100 ? setting ? 100 ? ? 100 ? ? 100 ? return loss differential mode pci express 50 mhz to 1.25 ghz: -10db xaui 100 mhz to 2.5 ghz: -10db return loss common mode pci express 50 mhz to 1.25 ghz: -6db xaui 100 mhz to 2.5 ghz: -6db programmable ppm detector (2) ? 62.5, 100, 125, 200, 250, 300, 500, 1000 ppm run length ? ? 80 ? ? 80 ? ? 80 ? ui programmable equalization ???7??7??7db signal detect/loss threshold pci express (pipe) mode 65 ? 175 65 ? 175 65 ? 175 mv cdr ltr time (3) ???75??75??75s cdr minimum t1b (4) ? 15? 15? ? 15? ? s ltd loc k time (5) ? 0 100 4000 0 100 4000 0 100 4000 ns data lock time from rx_freqlocked (6) ? ? ? 4000 ? ? 4000 ? ? 4000 ns programmable dc gain dc gain setting = 0 ?0 ? ?0 ??0 ?db dc gain setting = 1 ?3 ? ?3 ??3 ?db dc gain setting = 2 ?6 ? ?6 ??6 ?db transmitter data rate ? ? ? ? ? ? ? ? ? mbps v ocm 0.65 v setting ?650 ? ?650 ? ?650 ? mv differential on-chip termination resistors 100 ? setting ? 100 ? ? 100 ? ? 100 ? return loss differential mode pci express 50 mhz to 1.25 ghz: -10db xaui 312 mhz to 625 mhz: -10db 625 mhz to 3.125 ghz: -10db/decade slope return loss common mode pci express 50 mhz to 1.25 ghz: -6db rise time ? 50? 200 50?20050?200ps table 1?18. arria ii gx transceiver specification (part 3 of 4)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?14 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation fall time ? 50? 200 50?20050?200ps intra-differential pair skew ???15??15??15ps intra-transceiver block skew pci express (pipe) 4 ?? 120 ??120?? 120ps inter-transceiver block skew pci express (pipe) 8 ?? 300 ??300?? 300ps cmu pll0 and cmu pll1 cmu pll lock time from cmupll_reset deassertion ? ? ? 100 ? ? 100 ? ? 100 s pld-transceiver interface interface speed ? 25 ? 200 25 ? 160 25 ? 130 mhz digital reset pulse width ? minimum is 2 parallel clock cycles notes to ta bl e 1? 18 : (1) the device cannot tolerate prolonged operation at this absolute maximum. (2) the rate matcher supports only up to +/-300 parts per million (ppm). (3) time taken to rx_pll_locked goes high from rx_analogreset deassertion. refer to figure 1?1 . (4) time for which the cdr must be kept in lock-to-reference mode after rx_pll_locked goes high and before rx_locktodata is asserted in manual mode. refer to figure 1?1 . (5) time taken to recover valid data after the rx_locktodata signal is asserted in manual mode. refer to figure 1?1 . (6) time taken to recover valid data after the rx_freqlocked signal goes high in automatic mode. refer to figure 1?2 . (7) the 1.1-v rx v ic m setting must be used if the input serial data standard is lvds and the link is dc-coupled. table 1?18. arria ii gx transceiver specification (part 4 of 4)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?15 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 figure 1?1 shows the lock time parameters in manual mode. 1 ltd = lock-to-data. ltr = lock-to-reference. figure 1?2 shows the lock time parameters in automatic mode. figure 1?1. lock time parameters for manual mode ltr ltd invalid data valid data r x_locktodata ltd lock time cdr status r x_dataout r x_ p l l_ l o c k e d r x_analogreset cdr ltr time cdr minimum t1b figure 1?2. lock time parameters for automatic mode ltr ltd invalid data valid data r x_freqlocked data lock time from rx_freqlocked r x_dataout cdr status
1?16 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation figure 1?3 shows the differential receiver input waveform. figure 1?4 shows the transmitter output waveform. table 1?19 shows the typical v od for tx term that equals 100 .. figure 1?3. receiver input waveform single-ended waveform differential waveform v id (diff peak-peak) = 2 x v id (single-ended) positive channel (p) negative channel (n) ground v id v id v id p ? n = 0 v v cm figure 1?4. transmitter output waveform?preliminary single-ended waveform differential waveform v od (diff peak-peak) = 2 x v od (single-ended) positive channel (p) negative channel (n) ground v od v od v od p ? n = 0 v v cm table 1?19. typical v od setting, tx term = 100 ?preliminary symbol v od setting (mv) 200 400 600 700 800 900 1000 1200 v od typical (mv) 200 400 600 700 800 900 1000 1200
chapter 1: arria ii gx device data sheet 1?17 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 table 1?20 shows the typical v od for tx term that equals 150 . table 1?21 shows the arria ii gx transceiver block ac specifications. table 1?20. typical v od setting, tx term = 150 ?preliminary symbol v od setting (mv) 300 600 900 1050 1200 v od typical (mv) 300 600 900 1050 1200 table 1?21. arria ii gx transceiver block ac specification (note 1) , (2) (part 1 of 6)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max sonet/sdh receiver jitter tolerance jitter tolerance at 622.08 mbps jitter frequency = 0.03 khz pattern = prbs23 > 15 > 15 > 15 ui jitter frequency = 25 khz pattern = prbs23 > 1.5 > 1.5 > 1.5 ui jitter frequency = 250 khz pattern = prbs23 > 0.15 > 0.15 > 0.15 ui jitter tolerance at 2488.32 mbps jitter frequency = 0.06 khz pattern = prbs23 > 15 > 15 > 15 ui jitter frequency = 100 khz pattern = prbs23 > 1.5 > 1.5 > 1.5 ui jitter frequency = 1mhz pattern = prbs23 > 0.15 > 0.15 > 0.15 ui jitter frequency = 10 mhz pattern = prbs23 > 0.15 > 0.15 > 0.15 ui fibre channel transmit jitter generation (3) , (10) total jitter fc-1 pattern = crpat ? ? 0.23 ? ? 0.23 ? ? 0.23 ui deterministic jitter fc-1 pattern = crpat ? ? 0.11 ? ? 0.11 ? ? 0.11 ui total jitter fc-2 pattern = crpat ? ? 0.33 ? ? 0.33 ? ? 0.33 ui deterministic jitter fc-2 pattern = crpat ? ? 0.2 ? ? 0.2 ? ? 0.2 ui fibre channel receiver jitter tolerance (3) , (11) deterministic jitter fc-1 pattern = cjtpat > 0.37 > 0.37 > 0.37 ui random jitter fc-1 pattern = cjtpat > 0.31 > 0.31 > 0.31 ui
1?18 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation sinusoidal jitter fc-1 fc/25000 > 1.5 > 1.5 > 1.5 ui fc/1667 > 0.1 > 0.1 > 0.1 ui deterministic jitter fc-2 pattern = cjtpat > 0.33 > 0.33 > 0.33 ui random jitter fc-2 pattern = cjtpat > 0.29 > 0.29 > 0.29 ui sinusoidal jitter fc-2 fc/25000 > 1.5 > 1.5 > 1.5 ui fc/1667 > 0.1 > 0.1 > 0.1 ui xaui transmit jitter generation (4) total jitter at 3.125 gbps pattern = cjpat ? ? 0.3 ? ? 0.3 ? ? 0.3 ui deterministic jitter at 3.125 gbps pattern = cjpat ? ? 0.17 ? ? 0.17 ? ? 0.17 ui xaui receiver jitter tolerance (4) total jitter > 0.65 > 0.65 > 0.65 ui deterministic jitter > 0.37 > 0.37 > 0.37 ui peak-to-peak jitter jitter frequency = 22.1 khz > 8.5 > 8.5 > 8.5 ui peak-to-peak jitter jitter frequency = 1.875 mhz > 0.1 > 0.1 > 0.1 ui peak-to-peak jitter jitter frequency = 20 mhz > 0.1 > 0.1 > 0.1 ui pci express transmit jitter generation (5) total jitter at 2.5 gbps (gen1) compliance pattern ? ?0.25 ? ? 0.25 ??0.25ui pci express receiver jitter tolerance (5) total jitter at 2.5 gbps (gen1) compliance pattern > 0.6 > 0.6 > 0.6 ui serial rapidio transmit jitter generation (6) deterministic jitter (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat ? ? 0.17 ? ? 0.17 ? ? 0.17 ui total jitter (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat ? ? 0.35 ? ? 0.35 ? ? 0.35 ui serial rapidio receiver jitter tolerance (6) deterministic jitter tolerance (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.37 > 0.37 > 0.37 ui combined deterministic and random jitter tolerance (peak-to-peak) data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.55 > 0.55 > 0.55 ui table 1?21. arria ii gx transceiver block ac specification (note 1) , (2) (part 2 of 6)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?19 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 22.1 khz data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 8.5 > 8.5 > 8.5 ui jitter frequency = 1.875 mhz data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.1 > 0.1 > 0.1 ui jitter frequency = 20 mhz data rate = 1.25, 2.5, 3.125 gbps pattern = cjpat > 0.1 > 0.1 > 0.1 ui gige transmit jitter generation (7) deterministic jitter (peak-to-peak) pattern = crpat ? ? 0.14 ? ? 0.14 ? ? 0.14 ui total jitter (peak-to-peak) pattern = crpat ? ? 0.279 ? ? 0.279 ? ? 0.279 ui gige receiver jitter tolerance (7) deterministic jitter tolerance (peak-to-peak) pattern = cjpat > 0.4 > 0.4 > 0.4 ui combined deterministic and random jitter tolerance (peak-to-peak) pattern = cjpat > 0.66 > 0.66 > 0.66 ui higig transmit jitter generation (8) deterministic jitter (peak-to-peak) data rate = 3.75 gbps pattern = cjpat ? ? 0.17 ? ? ? ? ? ? ui total jitter (peak-to-peak) data rate = 3.75 gbps pattern = cjpat ? ? 0.35 ? ? ? ? ? ? ui higig receiver jitter tolerance (8) deterministic jitter tolerance (peak-to-peak) data rate = 3.75 gbps pattern = cjpat > 0.37 ? ? ? ? ? ? ui combined deterministic and random jitter tolerance (peak-to-peak) data rate = 3.75 gbps pattern = cjpat > 0.65 ? ? ? ? ? ? ui table 1?21. arria ii gx transceiver block ac specification (note 1) , (2) (part 3 of 6)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?20 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 22.1 khz data rate = 3.75 gbps pattern = cjpat > 8.5 ? ? ? ? ? ? ui jitter frequency = 1.875mhz data rate = 3.75 gbps pattern = cjpat > 0.1 ? ? ? ? ? ? ui jitter frequency = 20 mhz data rate = 3.75 gbps pattern = cjpat > 0.1 ? ? ? ? ? ? ui sdi transmitter jitter generation (9) alignment jitter (peak-to-peak) data rate = 1.485 gbps (hd) pattern = color bar low-frequency roll-off = 100 khz 0.2 ? ? 0.2 ? ? 0.2 ? ? ui data rate = 2.97 gbps (3g) pattern = color bar low-frequency roll-off = 100 khz 0.3 ? ? 0.3 ? ? 0.3 ? ? ui table 1?21. arria ii gx transceiver block ac specification (note 1) , (2) (part 4 of 6)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
chapter 1: arria ii gx device data sheet 1?21 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 sdi receiver jitter tolerance (9) sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 15 khz data rate = 2.97 gbps (3g) pattern = single line scramble color bar > 2 > 2 > 2 ui jitter frequency = 100 khz data rate = 2.97 gbps (3g) pattern = single line scramble color bar > 0.3 > 0.3 > 0.3 ui jitter frequency = 148.5 mhz data rate = 2.97 gbps (3g) pattern = single line scramble color bar > 0.3 > 0.3 > 0.3 ui table 1?21. arria ii gx transceiver block ac specification (note 1) , (2) (part 5 of 6)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max
1?22 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation core performance specifications for arria ii gx devices this section describes the clock tree, phase-locked loop (pll), digital signal processing (dsp), embedded memory, configuration, and jtag specifications. clock tree specifications table 1?22 lists the clock tree specifications for arria ii gx devices. sinusoidal jitter tolerance (peak-to-peak) jitter frequency = 20 khz data rate = 1.485 gbps (hd) pattern = 75% color bar > 1 > 1 > 1 ui jitter frequency = 100 khz data rate = 1.485 gbps (hd) pattern = 75% color bar > 0.2 > 0.2 > 0.2 ui jitter frequency = 148.5 mhz data rate = 1.485 gbps (hd) pattern =75% color bar > 0.2 > 0.2 > 0.2 ui notes to ta bl e 1? 21 : (1) dedicated refclk pins were used to drive the input reference clocks. (2) the jitter numbers specified are valid for the stated conditions only. (3) the jitter numbers for fibre channel are compliant to the fc-pi-4 specification revision 6.10. (4) the jitter numbers for xaui are compliant to the ieee802.3ae-2002 specification. (5) the jitter numbers for pci express (pipe) are compliant to the pcie base specification 2.0. (6) the jitter numbers for serial rapidio are compliant to the rapidio specification 1.3. (7) the jitter numbers for gige are compliant to the ieee802.3-2002 specification. (8) the jitter numbers for higig are compliant to the ieee802.3ae-2002 specification. (9) the hd-sdi and 3g-sdi jitter numbers are compliant to the smpte292m and smpte424m specifications. (10) the fibre channel transmitter jitter generation numbers are compliant to the specification at t inter operability point. (11) the fibre channel receiver jitter tolerance numbers are compliant to the specification at r interpretability point. table 1?21. arria ii gx transceiver block ac specification (note 1) , (2) (part 6 of 6)?preliminary symbol/ description conditions c4 c5 c6 unit min typ max min typ max min typ max table 1?22. arria ii gx clock tree performance (part 1 of 2)?preliminary device performance (1) unit c4 c5 c6 ep2agx20 500 500 400 mhz ep2agx30 500 500 400 mhz ep2agx45 500 500 400 mhz ep2agx65 500 500 400 mhz
chapter 1: arria ii gx device data sheet 1?23 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 pll specifications table 1?23 describes the pll specifications for arria ii gx devices. ep2agx95 500 500 400 mhz ep2agx125 500 500 400 mhz ep2agx190 500 500 400 mhz ep2agx260 500 500 400 mhz note to tab l e 1 ?2 2 : (1) the performance specifications are applicable to gclk and rclk networks. table 1?22. arria ii gx clock tree performance (part 2 of 2)?preliminary device performance (1) unit c4 c5 c6 table 1?23. arria ii gx pll specifications (part 1 of 2)?preliminary symbol description min typ max unit f in input clock frequency (from clock input pins residing in top/bottom banks) 5 ? 472.5 (1) mhz input clock frequency (from clock input pins residing in right banks) 5? 500 mhz f inpfd input frequency to the pfd 5 ? 325 mhz f vc o pll vco operating range (2) 600 ? 1300 mhz f induty input clock duty cycle 40 ? 60 % f einduty external feedback clock input duty cycle 40 ? 60 % t inccj input clock cycle to cycle jitter ? ? (4) ps f out output frequency for internal global or regional clock ? ? 472.5 mhz f out_ext output frequency for external clock output ? ? 472.5 (3) mhz t outduty duty cycle for external clock output (when set to 50%) 45 50 55 % t outpj_dc dedicated clock output period jitter ? ? (4) ps t outpj_io regular i/o clock output period jitter ? ? (4) ps t fc omp external feedback clock compensation time ? ? 10 ns t configpll time required to reconfigure pll scan chains ? (4) ? scanclk cycles t conf igphas e time required to reconfigure phase shift 1 ? 1 scanclk cycles f sc anc lk scanclk frequency ? ? 100 mhz t lock time required to lock from end of device configuration ? ? (4) ms t dlock time required to lock dynamically (after switchover or reconfiguring any non-post-scale counters/delays) ?? (4) ms f cl b w pll closed-loop low bandwidth range ? (4) ?mhz pll closed-loop medium bandwidth range ? (4) ?mhz pll closed-loop high bandwidth range ? (4) ?mhz t pll_pserr accuracy of pll phase shift ? (4) ?ps
1?24 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation dsp block specifications table 1?24 describes the arria ii gx dsp block performance specifications. embedded memory block specifications table 1?25 describes the arria ii gx embedded memory block specifications. t areset minimum pulse width on areset signal 10 ? ? ns notes to ta bl e 1? 23 : (1) f in is limited by i/o f ma x . (2) the vco frequency reported by the quartus ii software in the pll summary section of the compilation report takes into consid eration the vco post-scale counter k value. therefore, if the counter k has a value of 2, the frequency reported can be lower than the f vco specification. (3) this specification is limited by the lower of the two: i/o f ma x or f ou t of the pll. (4) pending silicon characterization. table 1?23. arria ii gx pll specifications (part 2 of 2)?preliminary symbol description min typ max unit table 1?24. arria ii gx dsp block performance specifications (note 1) ?preliminary mode resources used performance unit number of multipliers c4 c5 c6 9 x 9-bit multiplier 1 315 245 200 mhz 12 x 12-bit multiplier 1 315 245 200 mhz 18 x 18-bit multiplier 1 350 275 225 mhz 36 x 36-bit multiplier 1 285 220 180 mhz 18 x 18-bit multiply accumulator 4 315 245 200 mhz 18 18-bit multiply adder 4 315 245 200 mhz 18 18-bit multiply adder-signed full precision 2 315 245 200 mhz 18 18-bit multiply adder with loopback (2) 2 250 195 160 mhz 36-bit shift (32-bit data) 1 285 220 180 mhz double mode 1 285 220 180 mhz notes to ta bl e 1? 24 : (1) maximum is for fully-pipelined block with round and saturation disabled. (2) maximum is for non-pipelined block with loopback input registers disabled and round and saturation disabled. table 1?25. arria ii gx embedded memory block performance specifications (part 1 of 2)?preliminary memory mode resources used performance unit aluts embedded memory c4 c5 c6 memory logic array block (mlab) single port 64 10 0 1 500 500 400 mhz simple dual-port 32 20 single clock 0 1 500 500 400 mhz simple dual-port 64 10 single clock 0 1 500 500 400 mhz
chapter 1: arria ii gx device data sheet 1?25 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 configuration table 1?26 lists the arria ii gx configuration mode specifications. jtag specifications table 1?27 lists the jtag timing parameters and values for arria ii gx devices. m9k block single-port 256 36 0 1 390 350 295 mhz single-port 256 36, with the read-during-write option set to old data 0 1 250 225 190 mhz simple dual-port 256 36 single clk 0 1 390 350 295 mhz single-port 256 36 single clk, with the read-during-write option set to old data 0 1 250 225 190 mhz true dual port 512 18 single clk 0 1 390 350 295 mhz true dual-port 512 18 single clk, with the read-during-write option set to old data 0 1 250 225 190 mhz table 1?25. arria ii gx embedded memory block performance specifications (part 2 of 2)?preliminary memory mode resources used performance unit aluts embedded memory c4 c5 c6 table 1?26. arria ii gx configuration mode specifications?preliminary programming mode dclk f max unit passive serial 125 mhz fast passive parallel 125 mhz fast active serial 40 mhz remote update only in fast as mode 10 mhz table 1?27. arria ii gx jtag timing parameters and values?preliminary symbol description min max unit t jc p tck clock period 30 ? ns t jc h tck clock high time 14 ? ns t jc l tck clock low time 14 ? ns t jp su (tdi) tdi jtag port setup time 1 ? ns t jp su (tms ) tms jtag port setup time 3 ? ns t jp h jtag port hold time 5 ? ns t jp co jtag port clock to output ? 11 (1) ns t jp zx jtag port high impedance to valid output ? 14 (1) ns t jp xz jtag port valid output to high impedance ? 14 (1) ns note to tab l e 1 ?2 7 : (1) a 1-ns adder is required for each v cc io voltage step down from 3.3 v. for example, t jp co = 12 ns if v cc io of the tdo i/o bank = 2.5 v, or 13 ns if it equals to 1.8 v.
1?26 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation periphery performance this section describes periphery performance, including high-speed i/o and external memory interface. i/o performance supports several system interfacing, for example the high-speed i/o interface, external memory interface, and the pci/pci-x bus interface. i/o using sstl-18 class i termination standard can achieve up to the stated ddr2 sdram interfacing speed as indicated in table 1?30 with typical ddr2 sdram memory interface setup. i/o using general-purpose i/o standards such as 3.0, 2.5, 1.8, or 1.5 lvttl/lvcmos are capable of typical 200 mhz interfacing frequency with 10pf load. 1 actual achievable frequency depends on design- and system-specific factors. you should perform hspice/ibis simulations based on your specific design and system setup to determine the maximum achievable frequency in your system. high-speed i/o specification table 1?28 lists the high-speed i/o timing for arria ii gx devices. table 1?28. high-speed i/o specifications symbol conditions c4 c5 c6 unit min max min max min max clock f inclk (input clock frequency) clock boost factor, w = 1 to 40 (1) 5 500 5 472.5 5 472.5 mhz transmitter f hsdr_tx (true differential output data rate) serdes factor, j = 3 to 10 150 1000 (2) 150 840 150 740 mbps f hsdr_tx_e3r (emulated differential 3r output data rate) serdes factor, j = 3 to 10 (3) 640 (3) (4) (3) (4) mbps receiver f hsdr_rx dpa mode (5) 150 1000 150 840 150 740 mbps non-dpa mode (3) 945 (6) (3) 740 (3) 640 mbps notes to ta bl e 1? 28 : (1) f inclk = f hsdr / w. use w to determine the supported selection of input reference clock frequencies for the desired data rate. (2) this applies to interfacing with dpa receivers. for interfacing with non-dpa receivers, maximum supported data rate is 945 mb ps. beyond 840 mbps, pcb tr ace compensation is required. pcb trace compensation refers to the adjustment of pcb tr ace length for lvds channels to improve channel-to-channel skews, and is optional when interfacing with dpa receivers. (3) the minimum specification is dependent on the clock source (for example, pll and clock pin) and the clock routing resource y ou use (global, regional, or local). the i/o differential buffer and input register do not have a minimum toggle rate. (4) pending silicon characterization. (5) dedicated serdes and dpa features are only available on right banks. (6) pcb trace compensation refers to the adjustment of pcb tr ace length for lvds channels to improve channel-to-channel skews, and is required to support data rate beyond 840 mbps.
chapter 1: arria ii gx device data sheet 1?27 switching characteristics ? march 2009 altera corporation arria ii gx device handbook volume 3 table 1?29 shows dpa lock time specifications for arria ii gx devices. external memory interface specifications table 1?30 lists the maximum clock rate support for external memory interfaces with the half-rate controller for the arria ii gx device family. 1 use table 1?30 for memory interface timing analysis. table 1?29. dpa lock time specifications?preliminary standard training pattern transition density min unit spi-4 00000000001111111111 10% 256 number of repetitions parallel rapid i/o 00001111 25% 256 number of repetitions 10010000 50% 256 number of repetitions miscellaneous 10101010 100% 256 number of repetitions 01010101 ? 256 number of repetitions table 1?30. arria ii gx maximum clock rate support for external memory interfaces with half-rate controller (note 1) , (2) ?preliminary memory standards c4 (mhz) c5 (mhz) c6 (mhz) ddr3 sdram (3) 300 n/a n/a ddr2 sdram (4) 300 (5) 267 (6) 200 ddr sdram (4) 200 200 200 qdrii sram (7) , (8) 250 250 200 notes to ta bl e 1? 30 : (1) these numbers are preliminary until characterization is final. the supported operating frequencies listed here are memory interface maximums for the fpga device family. your design's actual achievable performance is based on design- and system-specific factors, as well as static timing analysis of the completed design. (2) the maximum clock rates are applicable to class i termination for interfaces using either row i/os or column i/os. the maximum clock rates can be lower for class ii termination or interfaces using a combination of row and column i/os. (3) arria ii gx devices support ddr3 sdram components only if no levelling support is required for ddr3 dimms. interfaces with multiple ddr3 sdram components requi re component arrangement according to ddr2 dimm tree topology. (4) this applies to interfaces with both components and single rank unbuffered modules. (5) the 300-mhz ddr2 interface requires the use of 400-mhz ddr2 sdram modules or components. (6) the 267-mhz ddr2 interface requires the use of 333-mhz ddr2 sdram modules or components. (7) qdrii sram supports 1.8-v and 1.5- v hstl i/o standards. however, altera recommends using the 1.8-v hstl i/o standard for maximum performance because of the higher i/o drive strength. (8) arria ii gx devices feature i/os capable of electrical support for qdrii. however, altera does not currently supply a controller or phy megafunction for qdrii interfaces.
1?28 chapter 1: arria ii gx device data sheet switching characteristics arria ii gx device handbook volume 3 ? march 2009 altera corporation dll and dqs logic block specifications table 1?31 lists dll frequency range specifications for arria ii gx devices. table 1?32 lists the dqs phase offset delay per stage for arria ii gx devices. duty cycle distortion (dcd) specifications table 1?33 lists the worst-case dcd for arria ii gx devices. table 1?31. arria ii gx dll frequency range specifications?preliminary frequency mode frequency range (mhz) resolution () c4 c5 c6 0 90 ? 150 90 ? 140 90 ? 120 22.5 1 120 ? 200 120 ? 190 120 ? 170 30 2 150 ? 240 150 ? 230 150 ? 200 36 3 180 ? 300 180 ? 290 180 ? 250 45 4 240 ? 370 240 ? 350 240 ? 310 30 5 290 ? 450 290 ? 420 290 ? 370 36 table 1?32. dqs phase offset delay per setting (note 1) , (2) , (3) ?preliminary speed grade min max unit c4 7.0 13.0 ps c5 (4) (4) ps c6 8.5 15.5 ps notes to ta bl e 1? 32 : (1) the valid settings for phase offset are -64 to +63 for frequency modes 0 to 3 and -32 to +31 for frequency modes 4 to 5. (2) the typical value equals the average of the minimum and maximum values. (3) delay settings are linear. (4) pending silicon characterization. table 1?33. duty cycle distortion on arria ii gx i/o pins (note 1) ?preliminary symbol c4 c5 c6 unit min max min max min max output duty cycle 45 55 45 55 45 55 % note to tab l e 1 ?3 3 : (1) preliminary dcd specification applies to clock outputs from plls, global clock tree, and i/o elements (ioe) driving dedicated and general purpose i/o pins.
chapter 1: arria ii gx device data sheet 1?29 i/o timing ? march 2009 altera corporation arria ii gx device handbook volume 3 i/o timing altera offers two ways to determine i/o timing: the excel-based i/o timing and the quartus ii timing analyzer. the excel-based i/o timing provides pin timing performance for each device density and speed grade. the data is typically used prior to designing the fpga to get an estimate of the timing budget as part of the link timing analysis. the quartus ii timing analyzer provides a more accurate and precise i/o timing data based on the specifics of the design after place-and-route is complete. f the excel-based i/o timing spreadsheet is downloadable from arria ii gx devices literature webpage.
1?30 chapter 1: arria ii gx device data sheet glossary arria ii gx device handbook volume 3 ? march 2009 altera corporation glossary table 1?34 shows the glossary for this chapter. table 1?34. glossary (part 1 of 4) letter subject definitions a ?? b ?? c ?? d differential i/o standards receiver input waveforms transmitter output waveforms e ?? f f hsclk left/right pll input clock frequency. f hsdr high-speed i/o block: maximum/minimum lvds data transfer rate (f hsdr = 1/tui), non-dpa. f hsdrdpa high-speed i/o block: maximum/minimum lvds data transfer rate (f hsdrdpa = 1/tui), dpa. single-ended waveform differential waveform positive channel (p) = v oh negative channel (n) = v ol ground v od v od v od p ? n = 0 v v cm single-ended waveform differential waveform positive channel (p) = v ih negative channel (n) = v il ground v id v id v id p ? n = 0 v v cm
chapter 1: arria ii gx device data sheet 1?31 glossary ? march 2009 altera corporation arria ii gx device handbook volume 3 g ?? h ?? i ?? j j high-speed i/o block: deserialization factor (width of parallel data bus). jtag timing specifications jtag timing specifications are in the following figure: k ?? l ?? m ?? n ?? o ?? p pll specifications the block diagram shown in the following figure highlights the pll specification parameters: diagram of pll specifications (1) note: (1) coreclock can only be fed by dedicated clock input pins or pll outputs. q ?? r r l receiver differential input discrete resistor (external to the arria ii gx device). table 1?34. glossary (part 2 of 4) letter subject definitions tdo tck t jpzx t jpco t jph t jpxz t jcp t jpsu t jcl t jch tdi tms core clock external feedback reconfigurable in user mode key clk n m pfd switchover vco cp lf clkout pins gclk rclk f inpfd f in f vco f out f out_ext k counters c0..c9
1?32 chapter 1: arria ii gx device data sheet glossary arria ii gx device handbook volume 3 ? march 2009 altera corporation s sw (sampling window) the period of time during which the data must be valid in order to capture it correctly. the setup and hold times determine the ideal strobe position within the sampling window: timing diagram single-ended voltage referenced i/o standard the jedec standard for sstl and hstl i/o standards define both the ac and dc input signal values. the ac values indicate the voltage levels at which the receiver must meet its timing specifications. the dc values indicate the voltage levels at which the final logic state of the receiver is unambiguously defined. once the receiver input has crossed the ac value, the receiver changes to the new logic state. the new logic state is then maintained as long as the input stays beyond the ac threshold. this approach is intended to provide predictable receiver timing in the presence of input waveform ringing: single-ended voltage referenced i/o standard t t c high-speed receiver and transmitter input and output clock period. tccs (channel-to- channel- skew) the timing difference between the fastest and slowest output edges, including t co variation and clock skew, across channels driven by the same pll. the clock is included in the tccs measurement (refer to the timing diagram figure under s in this table). t duty high-speed i/o block: duty cycle on high-speed transmitter output clock. timing unit interval (tui) the timing budget allowed for skew, propagation delays, and data sampling window. (tui = 1/(receiver input clock frequency multiplication factor) = t c / w ) t fall signal high-to-low transition time (80-20%) t in c cj cycle-to-cycle jitter tolerance on pll clock input t outpj_io period jitter on general purpose i/o driven by a pll t outpj_dc period jitter on dedicated clock output driven by a pll t rise signal low-to-high transition time (20-80%) u ?? table 1?34. glossary (part 3 of 4) letter subject definitions bit time 0.5 x tccs rskm sampling window (sw) rskm 0.5 x tccs v ih ( ac ) v ih(dc) v ref v il(dc) v il(ac ) v oh v ol v ccio v ss
chapter 1: arria ii gx device data sheet 1?33 document revision history ? march 2009 altera corporation arria ii gx device handbook volume 3 document revision history table 1?35 shows the revision history for this chapter. v v cm (dc ) dc common mode input voltage. v icm input common mode voltage: the common mode of the differential signal at the receiver. v id input differential voltage swing: the difference in voltage between the positive and complementary conductors of a differential transmission at the receiver. v dif(ac) ac differential input voltage: minimum ac input differential voltage required for switching. v dif(dc) dc differential input voltage: minimum dc input differential voltage required for switching. v ih voltage input high: the minimum positive voltage applied to the input which will be accepted by the device as a logic high. v ih(ac) high-level ac input voltage v ih(dc) high-level dc input voltage v il voltage input low: the maximum positive voltage applied to the input which will be accepted by the device as a logic low. v il(ac) low-level ac input voltage v il(dc) low-level dc input voltage v ocm output common mode voltage: the common mode of the differential signal at the transmitter. v od output differential voltage swing: the difference in voltage between the positive and complementary conductors of a differential transmission at the transmitter. w w high-speed i/o block: clock boost factor x ?? y ?? z ?? table 1?34. glossary (part 4 of 4) letter subject definitions table 1?35. document revision history date and document version changes made summary of changes march 2009, v1.1 added ?i/o timing? section. ? february 2009, v1.0 initial release. ?
1?34 chapter 1: arria ii gx device data sheet document revision history arria ii gx device handbook volume 3 ? march 2009 altera corporation
? march 2009 altera corporation arria ii gx device handbook volume 3 additional information about this handbook this handbook provides comprehensive information about the altera arria ii gx family of devices. how to contact altera for the most up-to-date information about altera products, see the following table. typographic conventions the following table shows the typographic conventions that this document uses. contact (note 1) contact method address technical support website www.altera.com/support technical training website www.altera.com/training email custrain@altera.com altera literature services email literature@altera.com non-technical support (general) email nacomp@altera.com (software licensing) email authorization@altera.com note: (1) you can also contact your local altera sales office or sales representative. visual cue meaning bold type with initial capital letters indicates command names and dialog box titles. for example, save as dialog box. bold type indicates directory names, project names, disk drive names, file names, file name extensions, dialog box options, software utility names, and other gui labels. for example, \qdesigns directory, d: drive, and chiptrip.gdf file. italic type with initial capital letters indicates document titles. for example, an 519: stratix iv design guidelines. italic type indicates variables. for example, n + 1. variable names are enclosed in angle brackets (< >). for example, and .pof file. initial capital letters indicates keyboard keys and menu names. for example, delete key and the options menu. ?subheading title? quotation marks indicate references to sections within a document and titles of quartus ii help topics. for example, ?typographic conventions.?
info?2 additional information arria ii gx device handbook volume 3 ? march 2009 altera corporation courier type indicates signal, port, register, bit, block, and primitive names. for example, data1 , tdi , and input . active-low signals are denoted by suffix n . for example, resetn . indicates command line commands and anything that must be typed exactly as it appears. for example, c:\qdesigns\tutorial\chiptrip.gdf . also indicates sections of an actual file, such as a report file, references to parts of files (for example, the ahdl keyword subdesign ), and logic function names (for example, tri ). 1., 2., 3., and a., b., c., and so on. numbered steps indicate a list of items when the sequence of the items is important, such as the steps listed in a procedure. bullets indicate a list of items when the sequence of the items is not important. 1 the hand points to information that requires special attention. c a caution calls attention to a condition or possible situation that can damage or destroy the product or your work. w a warning calls attention to a condition or possible situation that can cause you injury. r the angled arrow instructs you to press enter . f the feet direct you to more information about a particular topic. visual cue meaning


▲Up To Search▲   

 
Price & Availability of EP2AGX125DF25C5NES

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X