Skip to content

jsl/protocols/displayport

Package name: jsl/protocols/displayport

DisplayPort Protocol

DisplayPort is a serial protocol supporting high speed links for video+audio

References

  • https://en.wikipedia.org/wiki/DisplayPort

The functions and definitions in this file support defining DisplayPort connections between sources and receivers on a printed circuit board.

DisplayPort Blocking Capacitors

The DisplayPort specification calls for AC coupling for the data lanes. This is typically achieved using a blocking capacitor.

The best way to achieve this is to use the jsl/si/constraints/constrain-topology mechanism.

Summary

Data Types

DPVersion

DisplayPort Generation enums This is a fixed list of possible generation definitions for DisplayPort

Functions

Function Description
displayport-get-skew-loss-vals Curated values for skew and loss of DisplayPort Channel
displayport-get-inter-skew Get inter-pair skew values for DisplayPort Channel
DisplayPort-Constraint Constructor for DisplayPort Constraint

DisplayPort-Constraint

SI Constraint For DisplayPort

Constructors

Function Description
DisplayPort-Constraint Constructor for defstruct DisplayPort-Constraint

Functions

Function Description
DisplayPort-Constraint Constructor for DisplayPort Constraint

General Definitions

Function Description
displayport-get-trace-impedance Differential impedance specified by the DisplayPort standard
displayport-connector Display Port Bundle for Connectors
displayport DisplayPort Bundle
Variable Description
DISPLAYPORT_NUM_LANES
DISPLAYPORT_NUM_CONFIGS

Definitions

DPVersion

DisplayPort Generation enums This is a fixed list of possible generation definitions for DisplayPort

public defenum DPVersion <: Equalable & Hashable & JITXValue

Functions

displayport-get-skew-loss-vals

Curated values for skew and loss of DisplayPort Channel This is a helper function that returns the bounds on the intra-pair skew timing and maximum loss as expected by the particular standard targeted by the user.The values returned are a toleranced value with upper/lower limits for the intra-pair skew and the maximum loss as a double representing dB.

Calculating the intra-pair skew distance to time correspondence depends on the material. tpd 147 ps/in 170 ps/in -> 147 fs/mil to 170 fs/mil @ 5 mils spec'ed that is a intra-pair skew of 750 fs to 850 fs @ 10 mils spec'ed that is a intra-pair skew of 1.50 ps to 1.70 ps

public defn displayport-get-skew-loss-vals (gen:DPVersion) -> [Toleranced, Double]

  • Returns [Toleranced, Double]

displayport-get-inter-skew

Get inter-pair skew values for DisplayPort Channel This function returns the allowable inter-pair skew timing for DisplayPort lanes as expected by the particular standard targeted by the user. The returned value is a Toleranced value with upper/lower limits for the inter-pair skew.

Inter-pair skew refers to the timing difference between different differential pairs in the DisplayPort interface, which is critical for maintaining signal integrity across multiple high-speed lanes.

public defn displayport-get-inter-skew (gen:DPVersion) -> Toleranced

  • gen: DPVersion - The DisplayPort generation (version) to get the inter-pair skew for
  • Returns Toleranced - Allowable inter-pair skew as a Toleranced value in seconds

DisplayPort-Constraint

Constructor for DisplayPort Constraint

public defn DisplayPort-Constraint ( -- route-struct:DifferentialRoutingStructure, gen:DPVersion = ?) -> DisplayPort-Constraint

  • route-struct: DifferentialRoutingStructure - Differential Pair routing structure to be applied to each of the data lanes.
  • gen: DPVersion - Version Identifier. This value will be used to consult what specific skew, timing, etc tolerances to use for this topology.
  • Returns DisplayPort-Constraint

DisplayPort-Constraint

SI Constraint For DisplayPort

public defstruct DisplayPort-Constraint <: DiffPair-Constraint
    inter-skew: Toleranced

  • inter-skew: Toleranced - Inter-pair Timing Skew Constraint in Seconds.

This constraint assumes the endpoints are displayport bundles. The code will construct the necessary skew and loss constraints for this bundle according to the DisplayPort specifications.

When used with constrain-topology, the src and dst must be bundles of type displayport.

Constructors

DisplayPort-Constraint

Constructor for defstruct DisplayPort-Constraint

public defn DisplayPort-Constraint ( -- skew:Toleranced, loss:Double, route-struct:DifferentialRoutingStructure, inter-skew:Toleranced)

Functions

DisplayPort-Constraint

Constructor for DisplayPort Constraint

public defn DisplayPort-Constraint ( -- route-struct:DifferentialRoutingStructure, gen:DPVersion = ?) -> DisplayPort-Constraint

  • route-struct: DifferentialRoutingStructure - Differential Pair routing structure to be applied to each of the data lanes.
  • gen: DPVersion - Version Identifier. This value will be used to consult what specific skew, timing, etc tolerances to use for this topology.
  • Returns DisplayPort-Constraint

General Definitions

displayport-get-trace-impedance

Differential impedance specified by the DisplayPort standard This is a helper function that returns the expected differential trace impedance for the specified generation of the DisplayPort standard.

public defn displayport-get-trace-impedance () -> Toleranced

  • Returns Toleranced - Upper/lower limits for the impedance.

displayport-connector

Display Port Bundle for Connectors

public pcb-bundle displayport-connector

  • dp - DisplayPort bundle for data communication

  • gnd - ground connection

  • dp_pwr - power bundle for DisplayPort

  • config - signals for configuration pins (DISPLAYPORT_NUM_CONFIGS)

This bundle is applicable for connector connections where more than the data lanes are needed.

displayport

DisplayPort Bundle The Data Bundle consists of 4 lane pairs (1 RX or TX pair set = 1 lane) The bundle also constrains an AUX channel (differential pair) and a HPD pin

public pcb-bundle displayport

  • aux - Differential pair for the auxiliary channel

  • lane - Four differential pairs for data transfer

  • hpd - Hot plug detect

DISPLAYPORT_NUM_LANES

public val DISPLAYPORT_NUM_LANES

DISPLAYPORT_NUM_CONFIGS

public val DISPLAYPORT_NUM_CONFIGS

Related Packages

Forwarded by package: jsl/protocols