OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet

Similar documents
OTU2 I.4 FEC IP Core (IP-OTU2EFECI4Z) Data Sheet

EFEC20 IP Core. Features

Nios II Performance Benchmarks

Implementing 9.8G CPRI in Arria V GT and ST FPGAs

4. TriMatrix Embedded Memory Blocks in HardCopy IV Devices

10. Introduction to UniPHY IP

2.5G Reed-Solomon II MegaCore Function Reference Design

8. Introduction to UniPHY IP

PCI Express Multi-Channel DMA Interface

Interlaken IP Core (2nd Generation) Design Example User Guide

3. ALTGX_RECONFIG IP Core User Guide for Stratix IV Devices

11. SEU Mitigation in Stratix IV Devices

SerialLite III Streaming IP Core Design Example User Guide for Intel Stratix 10 Devices

DDR & DDR2 SDRAM Controller Compiler

AN 610: Implementing Deterministic Latency for CPRI and OBSAI Protocols in Altera Devices

DDR and DDR2 SDRAM Controller Compiler User Guide

9. SEU Mitigation in Cyclone IV Devices

Recommended Protocol Configurations for Stratix IV GX FPGAs

Simulating the ASMI Block in Your Design

Table 1 shows the issues that affect the FIR Compiler v7.1.

100G Interlaken MegaCore Function User Guide

SDI II Intel FPGA IP User Guide

SerialLite III Streaming IP Core Design Example User Guide for Intel Arria 10 Devices

Cyclone II FPGA Family

FFT MegaCore Function User Guide

Intel Stratix 10 H-tile Hard IP for Ethernet Design Example User Guide

AN 839: Design Block Reuse Tutorial

Low Latency 40G Ethernet Example Design User Guide

MAX 10 User Flash Memory User Guide

Arria 10 Transceiver PHY User Guide

7. External Memory Interfaces in Cyclone IV Devices

25G Ethernet Intel Stratix 10 FPGA IP Design Example User Guide

Intel Stratix 10 Logic Array Blocks and Adaptive Logic Modules User Guide

9. Functional Description Example Designs

Intel Stratix 10 Low Latency 40G Ethernet Design Example User Guide

Intel Xeon with FPGA IP Asynchronous Core Cache Interface (CCI-P) Shim

DDR & DDR2 SDRAM Controller Compiler

Low Latency 100G Ethernet Intel Stratix 10 FPGA IP Design Example User Guide

H-tile Hard IP for Ethernet Intel Stratix 10 FPGA IP Design Example User Guide

DDR & DDR2 SDRAM Controller Compiler

Stratix II FPGA Family

Arria II GX FPGA Development Kit HSMC Loopback Tests Rev 0.1

White Paper. Floating-Point FFT Processor (IEEE 754 Single Precision) Radix 2 Core. Introduction. Parameters & Ports

White Paper Using the MAX II altufm Megafunction I 2 C Interface

Intel MAX 10 User Flash Memory User Guide

Altera I/O Phase-Locked Loop (Altera IOPLL) IP Core User Guide

Low Latency 100G Ethernet Design Example User Guide

9. Hot Socketing and Power-On Reset in Stratix IV Devices

Errata Sheet for Cyclone V Devices

High Bandwidth Memory (HBM2) Interface Intel FPGA IP Design Example User Guide

Stratix FPGA Family. Table 1 shows these issues and which Stratix devices each issue affects. Table 1. Stratix Family Issues (Part 1 of 2)

Quartus II Software Version 10.0 SP1 Device Support

SERDES Transmitter/Receiver (ALTLVDS) Megafunction User Guide

RapidIO Physical Layer MegaCore Function

AN 464: DFT/IDFT Reference Design

AN 756: Altera GPIO to Altera PHYLite Design Implementation Guidelines

Real-Time ISP and ISP Clamp for Altera CPLDs

Intel FPGA Temperature Sensor IP Core User Guide

7. External Memory Interfaces in Stratix IV Devices

White Paper AHB to Avalon & Avalon to AHB Bridges

Errata Sheet for Cyclone IV Devices

Error Correction Code (ALTECC_ENCODER and ALTECC_DECODER) Megafunctions User Guide

Intel Arria 10 Native Floating- Point DSP Intel FPGA IP User Guide

PowerPlay Early Power Estimator User Guide

QDR II SRAM Board Design Guidelines

AN 558: Implementing Dynamic Reconfiguration in Arria II Devices

Using the SDRAM on Altera s DE1 Board with Verilog Designs. 1 Introduction. For Quartus II 13.0

DDR & DDR2 SDRAM Controller

Video and Image Processing Suite

AN 558: Implementing Dynamic Reconfiguration in Arria II Devices

I.6 40G LDPC Encoder/Decoder IP Core Specifccaton

POS-PHY Level 4 MegaCore Function

Quartus II Software Version 12.0 Device Support Release Notes

Dynamic Reconfiguration of PMA Controls in Stratix V Devices

Using the Transceiver Reconfiguration Controller for Dynamic Reconfiguration in Arria V and Cyclone V Devices

DDR & DDR2 SDRAM Controller

Intel Quartus Prime Pro Edition Software and Device Support Release Notes

Nios II Embedded Design Suite 6.1 Release Notes

Intel Stratix 10 Analog to Digital Converter User Guide

Altera I/O Phase-Locked Loop (Altera IOPLL) IP Core User Guide

UTOPIA Level 2 Slave MegaCore Function

ALTDQ_DQS2 Megafunction User Guide

2. Mentor Graphics ModelSim and QuestaSim Support

Embedded Memory Blocks in Arria V Devices

13. Power Management in Stratix IV Devices

Nios II Embedded Design Suite 7.1 Release Notes

System Debugging Tools Overview

Generic Serial Flash Interface Intel FPGA IP Core User Guide

Active Serial Memory Interface

AN 836: RapidIO II Reference Design for Avalon-ST Pass-Through Interface

Intel Quartus Prime Standard Edition Software and Device Support Release Notes

Introduction to the Altera SOPC Builder Using Verilog Design

AIRbus Interface. Features Fixed width (8-, 16-, or 32-bit) data transfers (dependent on the width. Functional Description. General Arrangement

Estimating Nios Resource Usage & Performance

16. Design Debugging Using In-System Sources and Probes

24K FFT for 3GPP LTE RACH Detection

Table 1 shows the issues that affect the FIR Compiler, v6.1. Table 1. FIR Compiler, v6.1 Issues.

RapidIO MegaCore Function

Board Update Portal based on Nios II Processor with EPCQ (Arria 10 GX FPGA Development Kit)

100G Interlaken MegaCore Function User Guide

Transcription:

OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet Revision 0.02 Release Date 2015-02-11 Document number

. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and ARRIA words and logos are trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as trademarks or service marks are the property of their respective holders as described at www.altera.com/legal. Altera warrants performance of its semiconductor products to current specifications 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 responsibility 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. Altera customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 2

Table of Contents 1 Introduction... 4 2 Architecture... 5 3 Performance and Resource Utilization... 6 4 Functional Overview... 7 4.1 Encoder... 7 4.2 Decoder... 8 5 Synthesis constraints... 9 5.1 Encoder... 9 5.1.1 Parameters... 9 5.1.2 QSF settings... 9 5.1.3 SDC settings... 9 5.2 Decoder... 9 5.2.1 Parameters... 9 5.2.2 QSF settings... 9 5.2.3 SDC settings... 10 6 References... 11 7 Revision history... 12 OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 3

1 Introduction 1 Introduction The Altera G.975 I.9, IP-OTU2EFECI9 IP core implements two interleaved BCH (1020, 988) super FEC code from the appendix I.9 of the ITU-T G.975.1 standard, [1]. The main features are: Net electrical coding gain (NECG) of ~8.5 db 7% overhead Latency of 144 μsec (includes both encoder + decoder latency) 64 bit data path width Error statistics monitoring: o Counts of corrected errors o Counts of uncorrectable component codes o Counts of corrected zeros relative to corrected ones OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 4

2 Architecture 2 Architecture Figure 1 illustrates the system architecture of the IP-OTU2EFECI9 IP core. The FEC encoder receives OTU2 data including frame alignment signal (FAS) and multi-frame alignment signal (MFAS) from the device core. The OTU2 data is encoded with redundant FEC data. The resulting FEC encoded OTU2 must subsequently be scrambled before it is transmitted across the OTN network In the other direction the frame start of the OTU2 received from the OTN network must be recovered in order to forward the descrambled OTU2 data to the FEC decoder. The redundant FEC data is decoded and identified errors are corrected before the data is forwarded to the device core. Customer or Altera IP Altera IP Core Customer or Altera IP FAS/MFAS insertion OTN FEC Encoder Scrambler OTU2 Tx data Device core Multi-frame alignment (MFAS) OTN FEC Decoder Descrambler Frame alignment (FAS) OTU2 Rx data Figure 1: G.975 I.9 EFEC System Architecture OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 5

3 Performance and Resource Utilization 3 Performance and Resource Utilization Arria V devices use combinational adaptive look-up tables (ALUTs) and logic registers. Table 1 shows the typical performance and resource usage for the 10 Gbit/s G.975 I.9 EFEC on a Arria V GX C3 device, commercial temperature range with speed grade 3, as reported by the Quartus II software. The resource figures will vary slightly depending on the Quartus version used, synthesis seed numbers etc. The latencies through the encoder and decoder do not vary from frame to frame: they are a fixed number of clock cycles. Table 1: Performance - 10 Gbit/s G.975.1 I.9 EFEC on Arria V GX Block ALMs Logic Registers Memory (M20Ks) fmax (MHz) Latency (Cycles) Latency (µs @175 MHz) Encoder 16,873 11,533 32 >200 ~8160 ~48 Decoder 12,317 7,419 135 >250 ~16320 ~96 Top 29,109 18,952 167 >200 ~24480 ~144 OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 6

4 Functional Overview 4 Functional Overview 4.1 Encoder The encoder expects an OTU frame including the FEC field (which will be overwritten, and the input value is thus ignored) on its input, and generates an OTU frame with the parity information added on its output. The data to be encoded shall be delivered on i_data one complete frame at a time, in 2040 consecutive cycles. The data format is MSB first, with the first bit on the line being the MSB of the word delivered to the encoder while otn_row[1:0] and otn_col[8:0] are both 0. The row number otn_row[1:0] ranges from 0 to 3, and the column number otn_col[8:0] ranges from 0 to 509. The latter is incremented every clock cycle. The output of the encoder uses the same format, and is generated a fixed number of cycles after the input. This latency does not vary from frame to frame. Table 2 lists the encoder input and output ports for connecting to the OTU2 G.975 I.9 EFEC IP core. Table 2: Encoder I/O Port Listing I/O port Name Port Width (Bits) Description in sys_clk 1 Clock port. in otn_row 2 OTU2 row number; range 0-3. in otn_col 9 OTU2 column number; each column includes 8 bytes; range 0-509. in i_data 64 Data words to be encoded. in i_bypass 1 Bypass encoding. out o_otn_row 1 OTU2 row number. out otn_col 9 OTU2 column number; each column includes 8 bytes. out o_data 64 Block output. OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 7

4 Functional Overview 4.2 Decoder The decoder expects a complete I.9 OTU2 frame on its input, and from this it generates 4 OTU2 rows on its output. The output sequence mimics the way data is typically output by a GFEC decoder. E.g. 4 rows each with 3824 bytes of data and 256 bytes to discard. The block uses one clock (sys_clk) which must be OTU2/64. The decoder output is delivered a fixed number of cycles after the input. This latency does not vary from frame to frame. Table 3 lists the decoder input and output ports for connecting to the OTU2 G.975 I.9 EFEC IP core. Table 3: Decoder I/O Port Listing I/O port Name Port Width (Bits) Description in sys_clk 1 Clock port. in sys_clk_rst 1 Sync reset. in otn_row 2 OTU2 row number. in otn_col 9 OTU2 column number; each column includes 8 bytes. in i_data 64 Data words to be decoded. in i_bypass 1 Bypass decoding. in i_scr_en 1 A value of 1 indicate that the input data is scrambled. out o_otn_row 1 OTU2 row number. out otn_col 9 OTU2 column number; each column includes 8 bytes. out o_data 64 Decoded output data word. out uncorrectable_code_errors 2 Number of BCH codes that could not be corrected in the 10 th iteration. The decoder decodes 2 codes per clock cycle, so that this output is 0, 1 or 2. It is updated in every clock cycle in the 10 th iteration. out correctable_code_errors 4 Number of BCH codes that is correctable in the first iteration. It is updated in very clock cycle of the first iteration. out ones_errors 7 Number of bits corrected 1 -> 0. Max = 64 if all the bits are corrected 1->0 in a word. out zeros_errors 7 Number of bits corrected 0 -> 1. Max = 64 if all the bits are corrected 0->1 in a word. OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 8

5 Synthesis constraints 5 Synthesis constraints 5.1 Encoder The encoder top level name is: alt_i9_encoder and the corresponding verilog file is named alt_i9_encoder.sv. The following sections describe the settings needed to be used in a high level synthesis flow when the encoder is to be used in a larger design. 5.1.1 Parameters DEVICE_FAMILY: Altera device family. E.g. Arria V 5.1.2 QSF settings The following qsf settings are required in a higher chip level synthesis when the decoder is instantiated set_global_assignment -name "REMOVE_DUPLICATE_LOGIC" "ON" set_global_assignment -name "REMOVE_DUPLICATE_REGISTERS" "OFF" set_global_assignment -name "AUTO_ROM_RECOGNITION" "ON"; set_global_assignment -name "AUTO_RAM_RECOGNITION" "OFF"; set_global_assignment -name "AUTO_SHIFT_REGISTER_RECOGNITION" "OFF"; If this conflicts with chip level preferences then these setting must be applied to the entity level instead. 5.1.3 SDC settings The encoder entity has one clock: sys_clk, and these must be driven from the same PLL. All remaining inputs and outputs to the encoder are synchronous with respect to sys_clk and they are all single cycle timed. 5.2 Decoder The decoder top level name is: alt_i9_decoder and the corresponding verilog file is named alt_i9_decoder.sv. The following sections describe the settings needed to be used in a high level synthesis flow when the decoder is to be used in a larger design. 5.2.1 Parameters NUM_DATA_BANK: Number of banks the data RAM is split into. NUM_CODE_PER_CYCLE: Number of BCH codes it decodes in one clock cycle. DEVICE_FAMILY: Altera device family. E.g. Arria V 5.2.2 QSF settings The following qsf settings are required in a higher chip level synthesis when the decoder is instantiated set_global_assignment -name "REMOVE_DUPLICATE_LOGIC" "ON" set_global_assignment -name "REMOVE_DUPLICATE_REGISTERS" "OFF" OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 9

5 Synthesis constraints set_global_assignment -name "AUTO_ROM_RECOGNITION" "ON"; set_global_assignment -name "AUTO_RAM_RECOGNITION" "OFF"; set_global_assignment -name "AUTO_SHIFT_REGISTER_RECOGNITION" "OFF"; If this conflicts with chip level preferences then these setting must be applied to the entity level instead. 5.2.3 SDC settings The encoder entity has one clock: sys_clk, and these must be driven from the same PLL. All remaining inputs and outputs to the encoder are synchronous with respect to sys_clk and they are all single cycle timed. OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 10

6 References 6 References [1] ITU-T Recommendation G.975.1, Forward error correction for high bit-rate DWDM submarine systems, ITU-T, Geneva, February 2004. OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 11

7 Revision history 7 Revision history Date Revision Description of changes 2015-02-05 0.01 Initial version. 2015-02-11 0.02 Editorial changes. OTU2 I.9 FEC IP Core (IP-OTU2EFECI9) Data Sheet 0.02 12