CoreU1LL UTOPIA Level 1 Link-Layer Interface Product Summary • Intended Use • Standard UTOPIA Level 1 Interface to any ATM PHY-Layer Device • IDE and Industry Standard Synthesis and Simulation Tools RTL Version – VHDL Source Code – Core Synthesis and Simulation Scripts Actel-Developed Testbench (VHDL) Fully Supported by Industry-Standard Simulation Tools Key Features • • • • Design Tools Support Standard 8-Bit, 25 MHz UTOPIA Level 1 Link-Layer (Master) Interface Complies with the ATM Forum UTOPIA Specification, Level 1 Version 2.01 (af-phy0017.000) Separate Tx and Rx Clocks and Interface Pins Supports Cell-Level Handshake for 53- or 54-byte ATM Cells with Automatic Add/Drop of the UDF2 Field in the ATM Header in 53-byte Mode 16-Bit (54-byte) User Interfaces can be Used Directly or Bolt-Up to One of Actel's ATM Cell Buffer Blocks: ATMBUFx • • Contents General Description ................................................... Device Requirements ................................................. UTOPIA Interface ....................................................... User Interface ............................................................. Ordering Information ................................................ List of Changes ........................................................... Datasheet Categories ................................................. Supported Families • Fusion • ProASIC3/E • ProASICPLUS® • Axcelerator® Core Deliverables • Simulation: VITAL-Compliant VHDL and OVICompliant Verilog Simulators Synthesis: LeonardoSpectrumTM, Synplify®, Design Compiler®, FPGA CompilerTM, and FPGA ExpressTM 1 2 2 3 6 7 7 General Description Netlist Version – Compiled RTL Simulation Model Fully Supported in the Actel Libero® Integrated Design Environment (IDE) – Structural VHDL and Verilog Netlists (with and without I/O Pads) Compatible with Actel Libero CoreU1LL is a UTOPIA Level 1 Link-Layer (Master) interface core that connects directly to any ATM PHYLayer (Slave) device and user logic (or optional ATM cell buffer blocks) to provide an interface between the PHYLayer device and a non-standard Link-Layer device or user logic (Figure 1). RX Utopia Level 1 PHY-Layer Device CoreATMBUF3 TX User Logic CoreU1LL Other Device CoreATMBUF3 Figure 1 • Block Diagram December 2005 © 2005 Actel Corporation v 4 .0 1 CoreU1LL UTOPIA Level 1 Link-Layer Interface Device Requirements CoreU1LL can be implemented in either ProASICPLUS or Axcelerator device families. Table 1 indicates the number of core logic cells required in each technology. Table 1 • Device Utilization and Performance Cells or Tiles Family Total Utilization Sequential Combinatorial Device Percentage Performance 51 66 AFS060 7.8% >25 MHz 51 66 A3P060 7.8% >25 MHz ProASIC 51 79 APA075 4.2% >25 MHz Axcelerator 53 64 AX125 6.0% >25 MHz Fusion ProASIC3/E PLUS UTOPIA Interface sends 53 bytes (or 54 bytes) and does not monitor u1_tx_clav during cell transfers. CoreU1LL implements a standard 8-bit point-to-point PHY-Layer interface that supports cell lengths of either 53 or 54 bytes. If the cell_size bit is low, a 53-byte cell is transferred and the UDF2 byte is inserted on ingress to, and dropped on egress from, the user interface; otherwise, 54 bytes are transferred. The UTOPIA interface signals are summarized in Table 2. Table 2 • UTOPIA Interface Signals Signal u1_tx_clk u1_tx_clav u1_tx_en u1_tx_soc H1 H2 u1_tx_data Type Description u1_tx_clk In Tx interface clock u1_tx_clav In Active high cell buffer space available u1_tx_en Out Active low data transfer enable u1_tx_soc Out Active high start-of-cell indication u1_tx_data Out 8-bit egress data u1_rx_clk In Rx interface clock u1_rx_clav In Active high cell buffer space available u1_rx_en Out u1_rx_soc In Active high start-of-cell indication u1_rx_data In 8-bit ingress data Figure 2 • Tx Start of Cell If the user interface indicates that there are no more cells to send, or if polling during the current cell transfer indicates that the PHY-Layer device is not ready to accept another cell, the CoreU1LL deselects the physical interface by deasserting u1_tx_en after the last word of the transfer (Figure 3). u1_tx_clk Active low data transfer enable u1_tx_clav u1_tx_en u1_tx_soc Tx Interface (Egress) u1_tx_data The process of transferring a cell on the UTOPIA level 1 Tx interface begins with r_avail. User logic asserts r_avail high whenever it has a cell available to send. The CoreU1LL waits until the PHY-Layer device indicates that it is ready to receive a cell by asserting u1-tx_clav high. To begin sending cells on the Tx interface, the CoreU1LL asserts u1_tx_en low (Figure 2). CoreU1LL simultaneously asserts u1_tx_soc and u1_tx_data (Figure 2). The core 2 v4.0 P51 P52 P53 P54 XX Figure 3 • Tx Transfer Complete If the user interface has another cell to send to the PHYLayer device, and if polling during the current cell indicates that the PHY-Layer device can accept another CoreU1LL UTOPIA Level 1 Link-Layer Interface cell, the CoreU1LL PHY-Layer device sends cells back-toback (Figure 4 on page 3). If the user interface continues to assert w_avail during the last two bytes of the current cell transfer, and one or more complete ATM cells are ready to be transferred (u1_rx_clav is high), the CoreU1LL accepts back-to-back cells, as shown in Figure 7. U1_tx_clk U1_tx_clav U1_tx_en U1_rx_clk U1_tx_soc U1_rx_clav U1_tx_data P51 P52 P53 P54 H1 H2 H3 H4 H5 U1_rx_en H6 U1_rx_soc Figure 4 • Tx Back-to-Back Transfer U1_rx_data Rx Interface (Ingress) P51 P52 P53 P54 H1 H2 H3 H4 H5 Figure 7 • Rx Back-to-Back Transfer The Rx interface operates in a similar manner to the Tx interface. The PHY-Layer device indicates that it has a cell ready to transfer by asserting u1_rx_clav high. Then, the user interface is ready to accept a cell (w_avail high). The CoreU1LL will initiate a transfer on the Rx interface by asserting u1_rx_en low (Figure 5). User Interface u1_rx_en The user interface can connect directly to Actel's CoreATMBUF3 cell buffer, an intellectual property core that provides buffering for up to three, 54-byte ATM cells in each direction (Figure 1 on page 1). Alternatively, the designer may connect his/her own cell buffer or user logic function directly to the user interface. The signals associated with the user interface are summarized in Table 3. u1_rx_soc Table 3 • User Interface Signals u1_rx_clk u1_rx_clav u1_rx_data Signal H1 H2 Figure 5 • Rx Start of Cell Transfer The PHY-Layer device then asserts u1_rx_soc high, indicating that the first word of the cell transfer is active on the bus. Once a transfer has begun, all 53 or 54 bytes of the cell are transferred without interruption. If polling during the current transfer indicates that there are no more cells available, or if the CoreU1LL is unable to accept another cell from the PHY-Layer device, the CoreU1LL deselects the physical interface by deasserting u1_rx_en after receiving the last byte of the current cell, as illustrated in Figure 6. u1_rx_clk reset In Active high – resets all registers xlate In 53- / 54-byte cell size control w_avail In Active high – user ready to receive w_phy_act Out Active high physical selected w_enable Out Active high data enable w_adr Out 5-bit word count w_data Out 16-bit data bus r_avail In Active high – user ready to send r_buf_en Out Active high read enable r_adr Out 5-bit word count r_data In 16-bit data bus When reset is asserted high, all registers in the CoreU1LL are cleared. They will remain in this state as long as reset is asserted. u1_rx_clav u1_rx_en u1_rx_soc u1_rx_data Type Description P51 P52 P53 P54 If the xlate input is low, the CoreU1LL transfers data to/ from the PHY-Layer device as 53-byte ATM cells. On ingress (Rx), the CoreU1LL will duplicate the fifth byte of the ATM header and insert it as the sixth byte (UDF2) in order to create a standard 54-byte ATM cell on the user XX Figure 6 • Rx End of Transfer v4.0 3 CoreU1LL UTOPIA Level 1 Link-Layer Interface "write" interface. Conversely, the CoreU1LL accepts a standard 54-byte cell at the user "read" interface and drops the sixth byte during the transfer to the egress (Tx) interface. If xlate is high, no translation is performed; 54byte cells are transferred on all interfaces. The user interface is divided into write (Rx) and read (Tx) interfaces. The control signals and data for the write interface are associated with the u1_rx_clk, while control signals and data for the read interface are associated with the u1_tx_clk. Each interface is controlled from the user logic by the w_avail and r_avail signals, respectively. When the cell buffer or user logic is ready to receive or send a cell on either interface, the user must assert x_avail high. In turn, this causes the CoreU1LL to assert u1_x_en to the PHY-Layer device provided that u1_x_clav is asserted (high). Write Interface (u1_rx_clav is high) and user logic is able to accept another cell (w_avail remains high), the w_phy_act signal remains active (high), and the CoreU1LL block accepts a back-to-back cell from the PHY-Layer device. The CoreU1LL will wait for the PHY-Layer to assert u1_rx_soc and then begins asserting w_enable during each valid data word and incrementing w_adr (Figure 8). Read Interface (Egress) When r_avail is asserted high at the user interface and the u1_tx_en signal is asserted low by the CoreU1LL, the CoreU1LL begins accepting data on the user interface. Once a cell transfer has begun, the CoreU1LL transfers 27 words of data regardless of the state of r_avail. The CoreU1LL asserts r_buf_en high, expecting to accept data at the r_data inputs on the next rising-edge of u1_tx_clk, as illustrated in Figure 9 on page 4. u1_tx_cl Whenever the CoreU1LL asserts u1_rx_en low, the w_phy_act signal is asserted high to indicate that the ingress user interface is active. The w_enable signal will remain low until the link-layer begins to transfer a cell. Since the CoreU1LL translates from 8-bit data at the UTOPIA interface to 16-bit data at the user interface, w_enable is asserted for one clock cycle while a data word is valid. W_adr is incremented on the next risingedge of u1_rx_clk, and then w_enable is deasserted for one clock cycle (except during insertion of the UDF2 byte, as shown in Figure 8). W_adr increments from 00 to 1B hex (27 words). u1_tx_cla u1_tx_en u1_tx_soc u1_tx_data XX H1 H2 H3 H4 H5 P1 P2 r_buf_en r_adr 00 01 02 03 04 r_data XX H1H2 H3H4 H5H6 P1P2 Figure 9 • Read Interface Cell Transfer The CoreU1LL provides r_adr as a word count (00 to 1B hex) and increments whenever the core accepts data at the r_data pins. Since the CoreU1LL translates from 16bit data at the user interface to 8-bit data at the UTOPIA interface, r_buf_en is asserted for one clock cycle. Data is accepted on the following rising edge of u1_tx_clk, and the r_adr is incremented. u1_rx_clk u1_rx_clav u1_rx_en u1_rx_soc u1_rx_data XX H1 H2 H3 H4 H5 P1 P2 P3 w_phy_act Then r_buf_en is deasserted for one clock cycle, except after the third data word when xlate is low (53-byte mode), or when a back-to-back read operation is needed in order to get the first payload byte in time. w_enable w_adr w_data 00 XX H1H2 01 XX 02 H3H4 H5H5 03 XX P1P2 Figure 8 • Write Interface Cell Transfer Once a complete 54-byte cell has been written to the user interface (w_adr = 1B hex and w_enable high), w_adr will reset to 00 hex, and w_enable will be deasserted. If either u1_rx_clav or w_avail are deasserted (low), then the CoreU1LL deselects the PHY-Layer device and w_phy_act returns low (inactive). On the other hand, if the PHY-Layer device is prepared to send another cell 4 v4.0 The cycle is repeated until r_adr reaches 1B hex and the last two bytes of the ATM cell are sent. At this point r_adr is reset to 00 hex. If r_avail indicates that another cell is immediately available, and u1_tx_clav remains high, the CoreU1LL will immediately begin sending the next cell (Figure 10 on page 5). Otherwise r_buf_en remains low until the CoreU1LL begins to transmit another cell. CoreU1LL UTOPIA Level 1 Link-Layer Interface U1_tx_cl U1_tx_clav U1_tx_en U1_tx_soc U1_tx_data P47 P48 H1 H2 H3 H4 H5 P1 P2 R_avail r_buf_en r_adr r_data 1B 00 XX 01 02 03 04 H1H2 H3H4 H5H6 P1P2 Figure 10 • Back-to-Back Read Cell Transfer v4.0 5 CoreU1LL UTOPIA Level 1 Link-Layer Interface Ordering Information Order CoreU1LL through your local Actel sales representative. Use the following numbering convention when ordering: CoreU1LL-XX, where XX is listed in Table 4. All four options include both VHDL and Verilog netlists, testbench source files, and simulation models targeting both ProASICPLUS and Axcelerator device families. CoreU1LL-XX, where XX is: Table 4 • Ordering Codes 6 XX Description EV Evaluation Version SN Netlist for single-use on Actel Devices AN Netlist for unlimited use on Actel devices SR RTL for single-use on Actel Devices AR RTL for unlimited use on Actel devices UR RTL for unlimited use and not restricted to Actel devices v4.0 CoreU1LL UTOPIA Level 1 Link-Layer Interface List of Changes The following table lists critical changes that were made in the current version of the document. Previous Version Changes in Current Version (v 4. 0 ) v3.0 v2.0 Page The "Supported Families" section was updated to include Fusion. 1 Table 1 was updated to include Fusion data. 2 The "Supported Families" section was updated to include ProASIC3/E. 1 Table 1 was updated to include ProASIC3/E data. 2 Datasheet Categories In order to provide the latest information to designers, some datasheets are published before data has been fully characterized. Datasheets are designated as "Product Brief," "Advanced," and "Production." The definitions of these categories are as follows: Product Brief The product brief is a summarized version of an advanced or production datasheet containing general product information. This brief summarizes specific device and family information for unreleased products. Advanced This datasheet version contains initial estimated information based on simulation, other products, devices, or speed grades. This information can be used as estimates, but not for production. Unmarked (production) This datasheet version contains information that is considered to be final. v4.0 7 Actel and the Actel logo are registered trademarks of Actel Corporation. All other trademarks are the property of their owners. www.actel.com Actel Corporation Actel Europe Ltd. Actel Japan www.jp.actel.com Actel Hong Kong www.actel.com.cn 2061 Stierlin Court Mountain View, CA 94043-4655 USA Phone 650.318.4200 Fax 650.318.4600 Dunlop House, Riverside Way Camberley, Surrey GU15 3YL United Kingdom Phone +44 (0) 1276 401 450 Fax +44 (0) 1276 401 490 EXOS Ebisu Bldg. 4F 1-24-14 Ebisu Shibuya-ku Tokyo 150 Japan Phone +81.03.3445.7671 Fax +81.03.3445.7668 Suite 2114, Two Pacific Place 88 Queensway, Admiralty Hong Kong Phone +852 2185 6460 Fax +852 2185 6488 5172176-2/12.05