Skip to content

DisplayPort AUX Channel Pin Mapping

Tim Ansell edited this page May 10, 2016 · 1 revision

The AUX channels are kind of peculiar. There are two sets of differential pairs driving the same line because of the bi-directional nature.

You need to do something like this;

NET "RX_AUXI_P"          LOC =    "R11"       |IOSTANDARD =         LVDS_33 | DIFF_TERM = "TRUE";
NET "RX_AUXI_N"          LOC =    "T11"       |IOSTANDARD =         LVDS_33 | DIFF_TERM = "TRUE";

NET "RX_AUXO_P"          LOC =    "T10"       |IOSTANDARD =         LVDS_33;
NET "RX_AUXO_N"          LOC =    "U10"       |IOSTANDARD =         LVDS_33;

NET "TX_AUXI_P"          LOC =    "T15"       |IOSTANDARD =         LVDS_33 | DIFF_TERM = "TRUE";
NET "TX_AUXI_N"          LOC =    "U15"       |IOSTANDARD =         LVDS_33 | DIFF_TERM = "TRUE";

NET "TX_AUXO_P"          LOC =    "U16"       |IOSTANDARD =         LVDS_33;
NET "TX_AUXO_N"          LOC =    "V15"       |IOSTANDARD =         LVDS_33;

and

  input RX_AUXI_P,
  input RX_AUXI_N,
  output RX_AUXO_P,
  output RX_AUXO_P,

  input TX_AUXI_P,
  input TX_AUXI_N,
  output TX_AUXO_P,
  output TX_AUXO_P
  );

  wire tx_aux_r;
  wire tx_aux_w;
  wire tx_aux_oe;
  OBUFTDS tx_auxi_ibufds (
    .O(tx_aux_r),
    .I(TX_AUXI_P),
    .IB(TX_AUXI_N)
  );
  OBUFTDS tx_auxo_obufds (
    .I(tx_aux_w),
    .O(TX_AUXO_P),
    .OB(TX_AUXO_N),
    .T(tx_aux_oe)
  );
  
  wire rx_aux_r;
  wire rx_aux_w;
  wire rx_aux_oe;
  OBUFTDS rx_auxi_ibufds (
    .O(rx_aux_r),
    .I(RX_AUXI_P),
    .IB(RX_AUXI_N)
  );
  OBUFTDS rx_auxo_obufds (
    .I(rx_aux_w),
    .O(RX_AUXO_P),
    .OB(RX_AUXO_N),
    .T(rx_aux_oe)
  );
Clone this wiki locally