Download I/O Buffer (ALTIOBUF) Megafunction User Guide

Transcript
3–4
Chapter 3: Functional Description
Design Example 1: Dynamically Changing Delay Chains in Output Buffer of Stratix III Devices
When dynamic delay chains are enabled, two key primitives are used together with
the IO_OBUF primitive (output buffer). They are the IO_CONFIG primitive and the
DELAY_CHAIN primitive. The IO_CONFIG primitive functions to control the
configuration of the necessary delay settings. The necessary delay settings are set into
the respective DELAY_CHAIN primitive that delays the data that passes through the
delay chain based on the delay settings before going through the IO_OBUF primitive
(output buffer).
The design uses the output and output enable (oe) path of the dynamic delay chain,
where both share the same IO_CONFIG settings.
Each of the output and oe delay chains is built from two cascaded output delay cells.
In this case, xxx_dyn_delay_chain1a_0, the first output delay cell’s dataout is
connected to xxx_dyn_delay_chain2a_0, the second output delay cell’s datain, where
xxx represents either the output path or oe path. This is because the parameters
chosen during the megafunction creation are use_out_dynamic_delay_chain1 and
use_out_dynamic_delay_chain2). Note the cascaded nature of the delays.
xxx_dyn_delay_chain1a_0, the first output delay cell’s delayctrlin inputs are 4 bits.
This actually signifies the possible delay settings (taps value) available for this
DELAY_CHAIN primitive, which are 0 to 15 taps. Each taps represents 50 ps of delay.
This allows a total delay value between 50 ps (1 * 50) to 750 ps (15 * 50).
For xxx_dyn_delay_chain2a_0, the second output delay cell’s delayctrlin inputs are
4 bits, but the MSB is tied to 0. This signifies the possible delay settings (taps value)
available for this DELAY_CHAIN primitive, which are 0 to 7 taps. Each taps represents 50
ps of delay. This allows a total delay value between 50 ps (1 * 50) to 350 ps (7 * 50).
Because of the cascaded nature of the two delay chains, the effective delay is the sum
of both DELAY_CHAIN primitives. This is reflected more clearly in the simulation results
later in this chapter.
For xxx_dyn_delay_chain2a_0, the second output delay cell’s dataout, is connected to
the obufa_0 output buffer’s input port for the output path and to the obufa_0 output
buffer’s oe port for the oe path. Note that the output path and the oe path have their
own cascaded delay chains.
Functional Results—Analyzing the Functional Behavior of the Design in
ModelSim-Altera Software
This user guide assumes that you are familiar with using the ModelSim-Altera
software before trying out the design example. If you are unfamiliar with the
ModelSim-Altera software, refer to
www.altera.com/support/software/products/modelsim/mod-modelsim.html.
There are links to topics such as installation, usage, and troubleshooting.
To set up the ModelSim-Altera software, follow these steps:
1. Unzip the ALTIOBUF_ex1_msim.zip file to any working directory on your PC.
2. Start ModelSim-Altera software.
3. On the File menu, click Change Directory.
4. Select the folder in which you unzipped the files.
5. Click OK.
I/O Buffer (ALTIOBUF) Megafunction
User Guide
February 2012 Altera Corporation