Altera_Forum
Honored Contributor
14 years agoALTGX Serializer test fails some bit sequences
I am using a Cyclone IV Gx DE board to implement a 2Gbps Serializer for a 128bit sequences. The ALTGX macro is defined with Basic protocol, 16bit word, 2Gbps Data rate and uses a 125MHz LVDS reference clock. The TX_clock out is used to increment the on-chip Rom address to pull off a set of 8 16bit words cyclically. A serial loopback is used so that the Rx channel can monitor the serial data from the Tx. I use SignalTap to monitor the Tx bits vs Rx bits - mMost of the sequences fail to reproduce at the Rx parallel outputs!
Here are some examples TX <set> 128 bits followed by Rx data 256 bits long to allow for skew or delay: TX 000h - 00111111111100000000000111111111110000000000111111111110000000000011111111110000000000011111111111000000000011111111111000000000 RX fail - 0011000000000011001111111000000011001111111111001100000001111111001100000000001100111111100000001100111111111100110000000111111100110000000000110011111110000000110011111111110011000000011111110011000000000011001111111000000011001111111111001100000001111111 TX 008h - 00001011111111100000000011111111100010000001111111010000010001111111010000000001111111110000000001110111111000000010111110111000 RX fail - 1110001000000111011101000001000100111101000000000011111111000000000111011111100010001011111011101100001011111111110000000011111111100010000001110111010000010001001111010000000000111111110000000001110111111000100010111110111011000010111111111100000000111111 TX 010h - 10000000011111111000000001111111100000000111111110000000011111111000000001111111100000000111111110000000011111111000000001111111 RX ok - 1110000000011111111000000001111111100000000111111110000000011111111000000001111111100000000111111110000000011111111000000001111111100000000111111110000000011111111000000001111111100000000111111110000000011111111000000001111111100000000111111110000000011111 ^ TX 018h - 11111000010011111110000000011111100000001111111000010001111111000000011110110000000111111110000001111111000000011110111000000011 RX fail - 0010000000111111000001000111111100000001111011000100011111111000110111111100000011111011100000001111111000010011101110000000011100100000001111110000010001111111000000011110110001000111111110001101111111000000111110111000000011111110000100111011100000000111 TX 020h - 01111111000000111111000000011111100000001111110000001111111000000111111100000011111100000001111110000000111111000000111111100000 RX fail - 0010000000111111110000111111100011011111110000000011110000000111001000000011111111000011111110001101111111000000001111000000011100100000001111111100001111111000110111111100000000111100000001110010000000111111110000111111100011011111110000000011110000000111 TX 028h - 00001111110001001111100000011111110000111111100000011111001000111111000000111011000001111110000000111100000001111110000011011100 RX fail - 1111000011111110110001111100100000111100000011101100000111111000000011110000000100111000001101111100001111110001001111100000011111110000111111101100011111001000001111000000111011000001111110000000111100000001001110000011011111000011111100010011111000000111 TX 030h - 10000011111100000111110000001111100000111111000001111100000011111000001111110000011111000000111110000011111100000111110000001111 RX ok - 1110000011111100000111110000001111100000111111000001111100000011111000001111110000011111000000111110000011111100000111110000001111100000111111000001111100000011111000001111110000011111000000111110000011111100000111110000001111100000111111000001111100000011 ^ TX 038h - 11101000111110000001101000001111100000111110101011110000001111100001011100000111111001011111000001111100000101010000111111000001 RX fail - 1010000011111010111111000000111100000101110000010111100101111100010111110000010100000011111100001111101000111110100001101000001110100000111110101111110000001111000001011100000101111001011111000101111100000101000000111111000011111010001111101000011010000011 The "RX ok" indicates a correctly reproduced sequence. I tried this with and without the "Deterministic Latency" option with the same results. I do not understand how it can be that some sequences (14 out of 48) reproduce correctly and many do not. Any suggestions would be welcome !!