Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
18 years ago

Why my alt2gxb get into "electrically idle" ?

I have problem with ArriaGX alt2gxb megafunction. The megafunction is

configured as PIPE, non-bonding mode. A port consists of 2 channels

(tx0, rx0 and tx1, rx1), each has 16-bit/125MHz interface to the PLD

side. A reference clock is supplied from an external pin to tx0, and

its tx_clkout is distributed to both tx_coreclk(1 downto 0) and

rx_coreclk(1 downto 0).

The problem is that the pipeelecidle port outputs '1' forever for both

channels, and rx_syncstatus never goes to high. I guess this means

that the transmitter is in idle state for some unknown reason.

When the device is powered on, both pll_locked and rx_pll_locked are

asserted, and the core clock seems to be running. As for CRU locking,

first I tried auto locking mode. But in that mode the resceiver cannot

switch from locktorefclk to locktodata state. So I am now using manual

locking mode.

The following sequence goes on as power-up sequence:

1. gxb_powerdown is asserted for 1ms, and then deasserted.

tx_digitalreset, rx_analogreset and rx_digitalreset

are also asserted.

2. tx_digitalreset and rx_analogreset are deasserted 1 clk after

pll_locked is asserted.

3. rx_digitalreset is deasserted 1 clk after rx_pll_locked is asserted.

4. send K28.5 until rx_syncstatus is asserted (but actually it never get

asserted, and pipeelecidle never get deasserted).

Am I forgetting something critical, may be?
No RepliesBe the first to reply