This post is to clarify how to specify terminations to a reference voltage in XJTAG. There are two special classes of passive device in XJTAG which represent termination resistors.
DIFF_TERM represents a simple termination resistor placed between two differential nets and is covered in a separate blog entry, whereas BIAS_TERM represents a termination to a reference voltage. BIAS_TERM was introduced into XJTAG in version 3.1 and is often used for both single-ended and differential signals with referenced termination, for example around DDR memory devices.
When you mark a resistor as a referenced termination resistor (BIAS_TERM) you are telling XJTAG that it represents a termination resistor to a net which has a nominally fixed voltage but very limited current-driving ability (ie it is not a power net). Often this voltage is mid-rail for the logic to which it is attached. This resistor is not so low in impedance that all the nets terminated to the reference will always read the same value (that would be a CONNECT resistor/link) but low enough that if a net is driven, or several nets attached to the same termination reference are driven at once, it may be reflected in the value read from any undriven nets attached to the same reference. You are also telling XJTAG that it is acceptable to drive the two nets to opposite values in either Connection Test or XJEase tests (which XJTAG would not allow if the two nets were CONNECTed).
This connection type is useful in multiple scenarios:
- We often see situations such as pins on DDR memory, where we have multiple pins terminated to a low-current reference voltage, where we do not want to mark the resistors as CONNECT, because that would tell XJTAG to treat all the pins as being on the same net, but where we cannot mark the termination as IGNORE without the connection test noticing the link between nets attached to the same reference, potentially leading to spurious short-circuits being detected. Marking the termination resistor as BIAS_TERM prevents Connection Test from detecting spurious short-circuits between the pins (and inserts extra testing to ensure that real short-circuits are found), but also means that XJEase can drive the terminated pins to opposite values during memory testing.
- In 1149.6 scenarios the high-speed nets involved usually have to be terminated, and BIAS_TERM gives a way to represent terminations with a centre reference placed between the +ve and -ve legs of differential signals.