Last updated for Altera Complete Design Suite: 15.0
Subscribe
Send Feedback
UG-01152
2015.05.04
101 Innovation Drive
San Jose, CA 95134
www.altera.com
TOC-2
About the Altera Hybrid Memory Cube Controller IP Core
Contents
About the Altera Hybrid Memory Cube Controller IP Core.............................1-1
Getting Started with the HMC Controller IP Core............................................2-1
HMC Controller IP Core Supported Features.........................................................................................1-2
HMC Controller IP Core Supported HMC Transaction Types............................................................1-3
Device Family Support................................................................................................................................1-4
IP Core Verification.....................................................................................................................................1-4
Signals on the Interface to the I2C Master................................................................................................4-9
Control and Status Interface Signals.......................................................................................................4-10
Status and Debug Signals..........................................................................................................................4-11
Clock and Reset Signals.............................................................................................................................4-12
Signals on the Interface to the External PLLs........................................................................................ 4-15
HMC Controller IP Core Register Map..............................................................5-1
CONTROL Register.....................................................................................................................................5-2
Interrupt Related Registers.........................................................................................................................5-5
Error and Retry Statistics Registers........................................................................................................... 5-9
HMC Controller IP Core Example Design.........................................................6-1
HMC Controller IP Core User Guide Revision History....................................................................... A-1
How to Contact Altera............................................................................................................................... A-1
The Hybrid Memory Cube (HMC) specification defines a new type of memory device that provides a
significant increase in bandwidth and power efficiency over existing memory architectures. The HMC
specification targets high performance computers and next-generation networking equipment and
provides scalability for a wide range of applications.
The Altera® HMC Controller MegaCore® IP core enables easy access to external HMC devices. HMC
devices provide high bandwidth, reliable access to large amounts of memory with a small form factor, and
provide significant system cost savings in high performance, memory intensive applications. The HMC
Controller IP core provides a simple user interface through which you can communicate with an external
HMC device to incorporate these bandwidth and performance gains in your design.
2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX 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/common/legal.html. 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.
ISO
9001:2008
Registered
1-2
HMC Controller IP Core Supported Features
Related Information
HMC Specification 1.1
The HMC specification is available for download from the Hybrid Memory Cube Consortium web page.
HMC Controller IP Core Supported Features
The Altera HMC Controller IP core offers the following features:
• Communicates through Altera high-speed transceivers with an external HMC device compliant with
the HMC Specification 1.1.
• Communicates with the HMC device at per-lane rates of 10 Gbps or 12.5 Gbps.
• Features Avalon® Memory-Mapped (Avalon-MM) interface to access control and status registers.
• Supports selection of a full-width variation that connects to 16 lanes of an HMC device, or a half-width
variation that connects to 8 lanes of an HMC device.
• Full-width IP core variations feature a simple 512-bit client data interface, and support memory
READ and WRITE transactions with payloads of 16, 32, 64, and 128 bytes.
• Half-width IP core variations feature a simple 256-bit client data interface, and support memory
READ and WRITE transactions with payloads of 16, 32, 48, 64, 80, 96, 112, and 128 bytes.
• Supports posted and non-posted versions of ATOMIC transactions, BIT WRITE transactions, and
WRITE transactions.
• Supports MODE READ and MODE WRITE transactions.
• Supports Response Open Loop Mode for receive (RX) flow control to decrease device resource
requirements.
• Supports reordering of transceiver lanes for board-design flexibility.
• Supports link training sequence and provides word alignment, lane alignment, and transceiver status
information in real time.
• Provides fast simulation support.
• Provides real-time error statistics.
• Provides hardware reset control.
• Optionally supports ADME direct access to transceiver registers through the Quartus II System
Console.
• Provides option to include ECC support in all M20K memory blocks configured in the IP core.
UG-01152
2015.05.04
To support multi-link connection to the HMC device in your design, you can configure multiple HMC
Controllers to communicate with the same HMC device through separate HMC links.
For the detailed HMC specification refer to the HMC Specification 1.1.
Related Information
Hybrid Memory Cube Consortium
The HMC Specification 1.1 is available on the Hybrid Memory Cube Consortium website.
Altera Corporation
About the Altera Hybrid Memory Cube Controller IP Core
Send Feedback
UG-01152
2015.05.04
HMC Controller IP Core Supported HMC Transaction Types
HMC Controller IP Core Supported HMC Transaction Types
The Altera HMC Controller IP core supports all HMC transactions. The full-width variations require that
you specify READ transactions and posted and non-posted WRITE transactions with a payload size of 16,
32, 64, or 128 bytes. Half-width variations support all payload sizes described in the HMC Specification
v1.1.
HMC Controller To HMC Device Packet Types
The HMC Controller IP core generates the following packet types on the link to the HMC device:
• NULL FLIT
• PRET (single FLIT packet)
• IRTRY (single FLIT packet)
• READ request (single FLIT packet)
• 16-byte WRITE or Posted WRITE request (2-FLIT packet)
• 32-byte WRITE or Posted WRITE request (3-FLIT packet)
• 48-byte WRITE or Posted WRITE request (4-FLIT packet) (half-width IP core only)
• 64-byte WRITE or Posted WRITE request (5-FLIT packet)
• 80-byte WRITE or Posted WRITE request (6-FLIT packet) (half-width IP core only)
• 96-byte WRITE or Posted WRITE request (7-FLIT packet) (half-width IP core only)
• 112-byte WRITE or Posted WRITE request (8-FLIT packet) (half-width IP core only)
• 128-byte WRITE or Posted WRITE request (9-FLIT packet)
• BIT WRITE or Posted BIT WRITE request (2-FLIT packet)
• Single 16-byte ADD IMMEDIATE or Posted Single 16-byte ADD IMMEDIATE request (2-FLIT
packet)
1-3
The HMC Controller IP core operates in the Response Open Loop Mode and therefore does not generate
TRET packets.
HMC Device to HMC Controller Packet Types
The HMC Controller IP core can process the following packet types generated by the HMC device:
• NULL FLIT
• PRET (single FLIT packet)
• TRET (single FLIT packet)
• IRTRY (single FLIT packet)
• ERROR response (single FLIT packet)
• WRITE response (single FLIT packet)
• 16-byte READ response (2-FLIT packet)
• 32-byte READ response (3-FLIT packet)
• 48-byte READ response (4-FLIT packet) (half-width IP core only)
• 64-byte READ response (5-FLIT packet)
• 80-byte READ response (6-FLIT packet) (half-width IP core only)
• 96-byte READ response (7-FLIT packet) (half-width IP core only)
• 112-byte READ response (8-FLIT packet) (half-width IP core only)
About the Altera Hybrid Memory Cube Controller IP Core
Altera Corporation
Send Feedback
1-4
Device Family Support
• 128-byte READ response (9-FLIT packet)
• MODE READ response (2-FLIT packet)
• MODE WRITE response (single FLIT packet)
The HMC Controller IP core does not process other packet types. Reception of any other packet type
might cause the IP core to fail.
Device Family Support
The following table lists the device support level definitions for Altera IP cores.
Table 1-1: Altera IP Core Device Support Levels
FPGA Device Families
Preliminary support — The core is verified with preliminary timing models for this device family. The IP
core meets all functional requirements, but might still be undergoing timing analysis for the device family. It
can be used in production designs with caution.
Final support — The IP core is verified with final timing models for this device family. The IP core meets all
functional and timing requirements for the device family and can be used in production designs.
UG-01152
2015.05.04
The following table shows the level of support offered by the HMC Controller IP core for each Altera
device family.
Table 1-2: HMC Controller IP Core Device Family Support
Device FamilySupport
Arria 10Preliminary
All other device familiesNo support
IP Core Verification
Before releasing a version of the HMC Controller IP core, Altera runs comprehensive regression tests in
the current version of the Quartus® II software. The HMC Controller IP Core is tested in simulation and
hardware to confirm functionality.
Related Information
Knowledge Base Errata for HMC Controller IP core
Exceptions to functional correctness are documented in the HMC Controller IP core errata.
Altera IP Release Notes
Changes to the HMC Controller IP core are noted in the Altera IP Release Notes starting from the
Quartus II software v15.0.
Altera Corporation
About the Altera Hybrid Memory Cube Controller IP Core
Send Feedback
UG-01152
2015.05.04
Simulation
Altera performs the following tests on the HMC Controller IP core in simulation, using the Micron HMC
BFM:
• Constrained random tests that cover randomized legal payload sizes and contents
• Assertion based tests to confirm proper behavior of the IP core with respect to the specification
• Extensive coverage of packet retry functionality
Constrained random techniques generate appropriate stimulus for the functional verification of the IP
core. Altera monitors line, expression, and assertion coverage metrics to ensure that all important features
are verified.
Hardware Testing
Altera performs hardware testing of the key functions of the HMC Controller IP core. The Altera
hardware tests of the HMC Controller IP core also ensure reliable solution coverage for hardware related
areas such as performance, link initialization, and reset recovery.
Altera performs hardware testing on the Arria 10 GX FPGA Development Kit with an HMC mezannine
card. A Micron HMC 15G-SR device on the mezzannine card is connected to the development board
through FMC connectors.
Simulation
1-5
Performance and Resource Utilization
Table 1-3: HMC Controller IP Core FPGA Resource Utilization
Typical resource utilization for an HMC Controller IP core configured with a data rate of 10 Gbps, using the
Quartus II software v15.0, targetting a 10AX115S3F45I2SGE2 device, with IP core features ADME support and
M20K ECC support both turned off.
The numbers of ALMs and logic registers are rounded up to the nearest 100. The numbers of ALMs, before
rounding, are the ALMs needed numbers from the Quartus II Fitter Report.
Resource Utilization
IP Core Variation
Half-width
Full-width197004090050
Related Information
• Fitter Resources Reports in the Quartus II Help
Information about Quartus II resource utilization reporting, including ALMs needed.
• Quartus II Handbook, Volume 1: Design and Synthesis
ALMs NeededDedicated Logic
Registers
115002360037
M20K Blocks
About the Altera Hybrid Memory Cube Controller IP Core
Send Feedback
Altera Corporation
1-6
Device Speed Grade Support
2015.05.04
Device Speed Grade Support
Table 1-4: Minimum Recommended Device Family Speed Grades
Altera recommends that you configure the HMC Controller IP core only in the device speed grades listed in the
table, or any faster (lower numbered) device speed grades that are available.
Altera does not support configuration of this IP core in slower (higher numbered) device speed grades.
IP Core Variation: Lane Rate
Device Family
10 Gbps12.5 Gbps
Arria 10E1, I1, E2, I2E1, I1
Release Information
Table 1-5: HMC Controller IP Core Current Release Information
UG-01152
ItemValue
Version15.0
Release DateMay 2014
Ordering CodeFull-width: IP-HMCSR15FW
Half-width: IP-HMCSR15HW
Vendor ID6AF7
Product IDFull-width: 0122
Half-width: 0128
Altera Corporation
About the Altera Hybrid Memory Cube Controller IP Core
Send Feedback
Getting Started with the HMC Controller IP
www.altera.com
101 Innovation Drive, San Jose, CA 95134
Core
2015.05.04
UG-01152
Subscribe
The following information explains how to install, parameterize, and simulate the Altera Hybrid Memory
Cube Controller IP core.
Installing and Licensing IP Cores on page 2-2
The HMC Controller IP core is available with the Quartus II software in the Altera IP Library.
Specifying IP Core Parameters and Options on page 2-2
The HMC Controller IP core supports the standard customization and generation process. This IP core is
not supported in Qsys.
HMC Controller IP Core Parameters on page 2-3
The HMC Controller parameter editor provides the parameters you can set to configure the HMC
Controller IP core and simulation testbenches.
Files Generated for Altera IP Cores on page 2-8
The Quartus II software generates multiple files during generation of your IP core variation.
Integrating Your IP Core in Your Design on page 2-9
To ensure the HMC Controller IP core functions correctly in hardware, you must connect additional
blocks to your IP core and assign device pins in order.
Send Feedback
2
Simulating Altera IP Cores in other EDA Tools on page 2-16
The Quartus II software supports RTL and gate-level design simulation of Altera IP cores in supported
EDA simulators. Simulation involves setting up your simulator working environment, compiling
simulation model libraries, and running your simulation.
Understanding the Testbench on page 2-18
Altera provides a testbench with the HMC Controller IP core.
Generating and Running the Testbench on page 2-18
Related Information
• HMC Controller IP Core Example Design on page 6-1
The HMC Controller example design provides an example of how to connect your IP core with an
external I2C master module and an external TX PLL.
• Introduction to Altera IP Cores
Provides more information about generating an Altera IP core and integrating it in your Quartus II
project.
2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX 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/common/legal.html. 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.
ISO
9001:2008
Registered
acds
quartus - Contains the Quartus II software
ip - Contains the Altera IP Library and third-party IP cores
altera - Contains the Altera IP Library source code
<IP core name> - Contains the IP core source files
2-2
Installing and Licensing IP Cores
Installing and Licensing IP Cores
The Altera IP Library provides many useful IP core functions for your production use without purchasing
an additional license. Some Altera MegaCore IP functions require that you purchase a separate license for
production use. However, the OpenCore® feature allows evaluation of any Altera IP core in simulation
and compilation in the Quartus® II software. After you are satisfied with functionality and perfformance,
visit the Self Service Licensing Center to obtain a license number for any Altera product.
Figure 2-1: IP Core Installation Path
Note: The default IP installation directory on Windows is <drive>:\altera\<version number>; on Linux it is
<home directory>/altera/ <version number>.
UG-01152
2015.05.04
Related Information
• Altera Licensing Site
• Altera Software Installation and Licensing Manual
OpenCore Plus IP Evaluation
Altera's free OpenCore Plus feature allows you to evaluate licensed MegaCore IP cores in simulation and
hardware before purchase. You need only purchase a license for MegaCore IP cores if you decide to take
your design to production. OpenCore Plus supports the following evaluations:
• Simulate the behavior of a licensed IP core in your system.
• Verify the functionality, size, and speed of the IP core quickly and easily.
• Generate time-limited device programming files for designs that include IP cores.
• Program a device with your IP core and verify your design in hardware.
OpenCore Plus evaluation supports the following two operation modes:
• Untethered—run the design containing the licensed IP for a limited time.
• Tethered—run the design containing the licensed IP for a longer time or indefinitely. This requires a
connection between your board and the host computer.
All IP cores that use OpenCore Plus time out simultaneously when any IP core in the design times
Note:
out.
Specifying IP Core Parameters and Options
The HMC Controller parameter editor allows you to quickly configure your custom IP variation. Use the
following steps to specify IP core options and parameters in the Quartus II software.
Altera Corporation
Getting Started with the HMC Controller IP Core
Send Feedback
UG-01152
2015.05.04
HMC Controller IP Core Parameters
2-3
1. In the IP Catalog (Tools > IP Catalog), locate and double-click the name of the IP core to customize.
The parameter editor appears.
2. Specify a top-level name for your custom IP variation. The parameter editor saves the IP variation
settings in a file named <your_ip>.qsys. Click OK.
3. Specify the parameters and options for your IP variation in the parameter editor, including one or
more of the following. Refer to the Parameters section for information about specific IP core
parameters.
• Optionally select preset parameter values if provided for your IP core. Presets specify initial
parameter values for specific applications.
• Specify parameters defining the IP core functionality, port configurations, and device-specific
features.
• Specify options for processing the IP core files in other EDA tools.
4. Click Generate HDL, the Generation dialog box appears.
5. Specify output file generation options, and then click Generate. The IP variation files generate
according to your specifications.
6. To generate an HDL instantiation template that you can copy and paste into your text editor, click
Generate > HDL Example.
7. Click Finish. The parameter editor adds the top-level .qsys file to the current project automatically. Ifyou are prompted to manually add the .qsys file to the project, click Project > Add/Remove Files in
Project to add the file.
8. After generating and instantiating your IP variation, make appropriate pin assignments to connect
ports.
HMC Controller IP Core Parameters
The HMC Controller parameter editor provides the parameters you can set to configure the HMC
Controller IP core and simulation testbenches.
Table 2-1: HMC Controller IP Core Parameters
Parameters for customizing the HMC Controller IP core in the HMC Controller parameter editor.
for the RX CDR PLL. You must
drive the rx_cdr_refclk0 input
signal at the frequency you
specify for this parameter.
In addition, your design must
derive this clock, the external
transceiver TX PLL reference
clock, and the REFCLKP and
REFCLKN input signals of the
external HMC device from the
same clock source.
0xFEDCBA9876543210
Selects the RX lane mapping.
Use caution in modifying this
parameter. Refer to RX and TXMapping Parameters.
0xFEDCBA9876543210
Selects the TX lane mapping.
Use caution in modifying this
parameter. Refer to RX and TX
Mapping Parameters.
Enable
Altera
Debug
Master
Endpoint
(ADME)
Boolean
• True
• False
FalseSpecifies whether the IP core
turns on the ADME feature in
the embedded Arria 10 Native
PHY IP core that configures the
transceivers.
The ADME feature enables
Native PHY register program‐
ming with the Altera System
Console. For more information,
refer to the Arria 10 TransceiverPHY User Guide.
Provides information about the Arria 10 ADME feature.
• Embedded Memory Blocks in Arria 10 Devices
Provides information about the Arria 10 M20K block ECC feature.
Specifies whether the IP core
supports the ECC feature in the
Arria 10 M20K memory blocks
that are configured as part of the
IP core.
You can turn on this parameter
to enhance data reliability by
enabling single-error correct,
double-adjacent-error correct,
and triple-adjacent-error detect
ECC functionality in the M20K
memory blocks configured in
your IP core. You can turn off
this parameter to decrease
latency and resource utilization.
RX Mapping and TX Mapping Parameters
The HMC Controller IP core provides the RX mapping and TX mapping parameters for flexibility in
board design.
The default values of these parameters specify the correct IP core behavior when the HMC device
LxTX[<i>] output signal connects to the HMC Controller IP core hmc_lxrx[<i>] input port, and the
LxRX[<i>] input signal connects to the HMC Controller IP core hmc_lxtx[<i>] output port, for each
<i>.
However, if your design constraints prevent you from connecting these signals as expected, you can
instead modify one or both HMC Controller IP core mapping parameters to accommodate the nonstandard connection.
The Quartus II Fitter prevents you from mapping the HMC Controller IP core lanes to Arria 10
Note:
device transceiver channels out of order. Therefore, these two parameters only compensate for outof-order connections on the board between the Arria 10 transceiver pins and the HMC device
ports.
Getting Started with the HMC Controller IP Core
Send Feedback
Altera Corporation
FPG A
HMC Controller
Hybrid Memory Cube
hmc_lxtx[0]LxRX[0]
LxTX[0]hmc_lxrx[0]
hmc_lxtx[1]LxRX[1]
LxTX[1]hmc_lxrx[1]
hmc_lxtx[2]LxRX[2]
LxTX[2]hmc_lxrx[2]
hmc_lxtx[3]LxRX[3]
LxTX[3]hmc_lxrx[3]
hmc_lxtx[F]LxRX[F]
LxTX[F]hmc_lxrx[F]
hmc_lxtx[E]LxRX[E]
LxTX[E]hmc_lxrx[E]
hmc_lxtx[D]LxRX[D]
LxTX[D]hmc_lxrx[D]
hmc_lxtx[C]LxRX[C]
LxTX[C]hmc_lxrx[C]
. . .. . .. . .
RX mapping value 0xFEDCBA9876543210
TX mapping value 0xFEDCBA9876543210
2-6
RX Mapping and TX Mapping Parameters
Figure 2-2: Default RX and TX Mapping Parameter Values
UG-01152
2015.05.04
If the HMC device LxTX[<i>] output signal connects to the HMC Controller IP core hmc_lxrx[<k>]
input port, the value in bits [(4<i>+3):(4<i>)] (nibble <i>) of the RX mapping parameter is 4'h<k>.
Therefore, the default value of the RX mapping parameter is 0xFEDCBA9876543210, indicating that
LxTX[F] connects to hmc_lxrx[F], LxTX[E] connects to hmc_lxrx[E], and so on.
If the HMC device LxRX[<i>] input signal connects to the HMC Controller IP core hmc_lxtx[<k>] input
port, the value in bits [(4<i>+3):(4<i>)] (nibble <i>) of the TX mapping parameter is 4'h<k>. Therefore,
the default value of the TX mapping parameter is 0xFEDCBA9876543210, indicating that LxRX[F]
connects to hmc_lxtx[F], LxRX[E] connects to hmc_lxtx[E], and so on.
RX mapping value 0xFEDCBA9876543021
TX mapping value 0xFEDCBA9876543210
UG-01152
2015.05.04
RX Mapping and TX Mapping Parameters
Figure 2-3: Non-Default RX Mapping Parameter Value Example
If you connect the IP core hmc_lxrx[2:0] input signals according to the table, and connect all other IP
core hmc_lxrx[<i>] input ports to the corresponding HMC device LxTX[<i>] output ports, you would
set the value of the RX mapping parameter to 0xFEDCBA9876543021 to compensate for the nonstandard connection.
Note: The RX mapping parameter specifies the HMC device lane by position and the IP core lane by
value. The figure illustrates a mapping parameter value of 0xFED.......43021 and not a value of
RX mapping value 0xFEDCBA9876543210
TX mapping value 0xFEDCBA9876543021
2-8
Files Generated for Altera IP Cores
Figure 2-4: Non-Default TX Mapping Parameter Value Example
If you connect the HMC Controller IP core hmc_lxtx[2:0] output signals according to the table, and
connect all other IP core hmc_lxtx[<i>] output ports to the corresponding HMC device LxRX[<i>]
input ports, you would set the value of the TX mapping parameter to 0xFEDCBA9876543021 to
compensate for the non-standard connection.
Note: The TX mapping parameter specifies the HMC device lane by position and the IP core lane by
value. The figure illustrates a mapping parameter value of 0xFED.......43021 and not a value of
0xFED....43102.
UG-01152
2015.05.04
Use caution in modifying these parameters. In loopback configurations, you must ensure the RX
mapping and TX mapping parameters specify reversed mappings. Otherwise, the IP core downstream of
the RX lane swapper appears to receive data on the wrong lanes.
Files Generated for Altera IP Cores
The Quartus II software generates multiple files during generation of your IP core variation.
Altera Corporation
Getting Started with the HMC Controller IP Core
Send Feedback
<your_ip >.cmp - VHDL component declaration file
<your_ip >.ppf - XML I/O pin information file
<your_ip >.qip - Lists IP synthesis files
<your_ip >.sip - Lists files for simulation
<your_ip >.v or .vhd
Top-level IP synthesis file
<your_ip >.v or .vhd
Top-level simulation file
<simulator_setup_scripts >
<your_ip >.qsys - System or IP integration file
<your_ip >_bb.v - Verilog HDL black box EDA synthesis file
<your_ip >_inst.v or .vhd - Sample instantiation template
<your_ip >_generation.rpt - IP generation report
<your_ip >.debuginfo - Contains post-generation information
<your_ip >.html - Connection and memor y map data
<your_ip >.bsf - Block symbol schematic
<your_ip >.spd - Combines individual simulation scripts
To ensure the HMC Controller IP core functions correctly in hardware, you must connect additional
blocks to your IP core and assign device pins in order.
Pin Constraints
Getting Started with the HMC Controller IP Core
Send Feedback
Altera Corporation
2-10
Required External Blocks
UG-01152
2015.05.04
When you integrate your HMC Controller IP core instance in your design, you must make appropriate
pin assignments. You can create a virtual pin to avoid making specific pin assignments for top-level
signals while you are simulating and not ready to map the design to hardware.
When you are ready to map the design to hardware, you must enforce the following constraints:
• Adjacent HMC Controller lanes must map to adjacent Altera device pins. You cannot swap the lane
order by mapping lanes to other Altera device pins. Instead, use the RX mapping and TX mapping
parameters to compensate for board design issues.
• The lanes of an HMC Controller IP core must be configured in no more than three transceiver blocks.
To enforce this constraint, you must configure IP core lanes in transceiver channels with the following
restrictions:
• Lane 0 of a full-width HMC Controller IP core must map to channel 0, 1, or 2 of a transceiver
block.
• If Lane 0 maps to channel 0, then HMC Controller Lane 1 must map to channel 1 of the same
transceiver block (transceiver block N), and Lane 15 maps to channel 3 of the transceiver block
N+2.
• If Lane 0 maps to channel 1, then HMC Controller Lane 1 must map to channel 2 of the same
transceiver block (transceiver block N), and Lane 15 maps to channel 4 of the transceiver block
N+2.
• If Lane 0 maps to channel 2, then HMC Controller Lane 1 must map to channel 3 of the same
transceiver block (transceiver block N), and Lane 15 maps to channel 5 of the transceiver block
N+2.
• Lane 0 of a half-width HMC Controller IP core can map to any channel. If it maps to any of
channels 0, 1, 2, 3, or 4, the IP core lanes are configured in two transceiver blocks.
Required External Blocks
The HMC Controller IP core requires that you define and instantiate the following additional modules:
• One or more external PLL IP cores to configure transceiver TX PLLs for all of the HMC lanes.
Although the hardware these IP cores configure might physically be part of the device transceiver, you
must instantiate them in software separately from the HMC Controller IP core. This requirement
supports the configuration of multiple Altera IP cores using the same transceiver block in the device.
• An external I2C master module in your design. Your design must include this module to initialize the
HMC device to which your IP core connects.
Altera Corporation
Getting Started with the HMC Controller IP Core
Send Feedback
HMC Controller IP Core
FPGA
TX
FIFO
TX
RX
Control and
Status Interface
InitializationInitialization
State Machine State Machine
Arria 10
Transceiver
Reconfiguration
Interface
Avalon-MM
Application
Interface
TX Lane
Swapper
RX Lane
Swapper
Avalon-MM
I C Master
Transceiver
x8
or
x16
TX PLLs
HMC Device
2
UG-01152
2015.05.04
Adding the External PLL
Figure 2-6: Required External Blocks
The required external blocks appear darker than the other blocks in the figure. The external TX PLL IP
core configures an ATX PLL in the device transceiver or an fPLL in Transceiver mode.
2-11
Adding the External PLL
The HMC Controller IP core requires that you generate and connect external transceiver PLL IP cores.
You must generate the number of PLL IP cores required to clock the transceiver channels that are
configured as HMC Controller IP core lanes. Each ATX PLL IP core configures the transceiver PLL in the
transceiver in hardware, but you must generate the transceiver PLL IP core separately from the HMC
Getting Started with the HMC Controller IP Core
Controller IP core in software. You can also configure an fPLL in transceiver mode. If you do not generate
and connect the transceiver PLL IP core or cores, the HMC Controller IP core does not function correctly
in hardware.
You can use the IP Catalog to generate each external PLL IP core that configures a transceiver PLL on the
device. In the IP Catalog, select Arria 10 Transceiver ATX PLL or Arria 10 fPLL.
Send Feedback
Altera Corporation
2-12
Adding the External PLL
UG-01152
2015.05.04
In the transceiver PLL parameter editor, you must follow the instructions in the Arria 10 Transceiver PHY
User Guide to configure the PLL IP core in the xN bonding configuration or in the PLL feedback
compensation bonding configuration. In addition, you must set the following parameter values:
• PLL output frequency to one half of the per-lane data rate of the IP core variation. The transceiver
performs dual edge clocking, using both the rising and falling edges of the input clock from the PLL.
Therefore, this PLL output frequency setting drives the transceiver with the correct clock for the lanes
that connect to the HMC device.
• PMA interface width to 32.
• PLL integer reference clock frequency (ATX PLL) or Desired reference clock frequency (fPLL)
depends on the bonding scheme.
• In the xN bonding scheme, Altera recommends that you specify one of 125 MHz, 156.25 MHz, or
166.67 MHz. You can theoretically specify any reference clock frequency from which the PLL can
generate the required output clock frequency. However, you must drive this TX PLL and the RX
CDR PLL (rx_cdr_refclk0 input signal to the HMC Controller IP core) and the HMC device
reference clock input signals (REFCLKP and REFCLKN) from the same clock source.
• In the PLL feedback compensation bonding scheme, you must specify the lane rate divided by 32.
In this mode, the PLL is configured to bypass the reference clock divider. Therefore, if you select
this bonding scheme, the reference clock frequency must be the lane rate divided by the PMA
width, which is 32.
Note: You must drive the external PLL reference clock input signal at the frequency you specify for
this parameter.
Table 2-4: Required PLL Reference Clock Frequency with PLL Feedback Compensation Bonding
Lane RateRequired PLL Reference Clock Frequency
10 Gbps312.5 MHz
12.5 Gbps390.625 MHz
The number of external PLLs you must define depends on the bonding mode you specify. In xN bonding
mode, a single PLL is sufficient to drive the channels in the configured transceiver blocks. Recall that your
HMC link TX serial lanes must be configured in order in adjacent physical transceiver channels so that
these lanes configure a maximum of three transceiver blocks. You can view I/O constraints that enforce
these requirements in the example design Quartus Settings File hmcc_example.qsf provided with the HMC
Controller IP core.
You set the bonding mode in the PLL parameter editor. In PLL Feedback Compensation mode, each PLL
output connects to the x6 network for its transceiver block through the transceiver block's Master Clock
Generation Block. In xN bonding mode, the PLL output connects directly to the x6 network for its
transceiver block and drives additional transceiver blocks through the xN clock network.
Altera Corporation
Getting Started with the HMC Controller IP Core
Send Feedback
Loading...
+ 48 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.