A method, comprising: receiving an input data stream (INx) having first and second states; generating a first pulse train type for the first state; generating a second pulse train type for the second state, wherein the first and second pulse train types comprise different characteristics; transmitting the first and second pulse train types across a voltage barrier of a digital signal isolator; receiving pulses for the transmitted first and second pulse train types from the voltage barrier; demodulating the first and second pulse trains types to recover the input data stream (INx) in an output data stream; and setting a signal integrity timeout to detect a lack of pulses received or transmitted for the first and second pulse train types corresponding to a fault condition, wherein: the first pulse train type includes asynchronous pulses corresponding to rising edges of the input data stream (INx) and synchronous refresh pulses; the second pulse train type includes asynchronous pulses corresponding to falling edges of the input data stream (INx) and synchronous refresh pulses, wherein the second pulse train type has an opposite polarity to the first pulse train type; the refresh pulses for the first state comprise a first repetition rate and refresh pulses for the second state comprise a second repetition rate which is slower than the first repetition rate; and the second state represents a default state of the output data stream when a fault condition is detected, such that if a transmission pulse is not received within a timeout window, the output will go to the default state, wherein the timeout window is set slightly longer than a repetition interval of the first pulse train type. receiving an input data stream (INx) having first and second states; generating a first pulse train type for the first state; generating a second pulse train type for the second state, wherein the first and second pulse train types comprise different characteristics; transmitting the first and second pulse train types across a voltage barrier of a digital signal isolator; receiving pulses for the transmitted first and second pulse train types from the voltage barrier; demodulating the first and second pulse trains types to recover the input data stream (INx) in an output data stream; and setting a signal integrity timeout to detect a lack of pulses received or transmitted for the first and second pulse train types corresponding to a fault condition, wherein: the first pulse train type includes asynchronous pulses corresponding to rising edges of the input data stream (INx) and synchronous refresh pulses; the second pulse train type includes asynchronous pulses corresponding to falling edges of the input data stream (INx) and synchronous refresh pulses, wherein the second pulse train type has an opposite polarity to the first pulse train type; the refresh pulses for the first state comprise a first repetition rate and refresh pulses for the second state comprise a second repetition rate which is slower than the first repetition rate; and the second state represents a default state of the output data stream when a fault condition is detected, such that if a transmission pulse is not received within a timeout window, the output will go to the default state, wherein the timeout window is set slightly longer than a repetition interval of the first pulse train type. the first pulse train type includes asynchronous pulses corresponding to rising edges of the input data stream (INx) and synchronous refresh pulses; the second pulse train type includes asynchronous pulses corresponding to falling edges of the input data stream (INx) and synchronous refresh pulses, wherein the second pulse train type has an opposite polarity to the first pulse train type; the refresh pulses for the first state comprise a first repetition rate and refresh pulses for the second state comprise a second repetition rate which is slower than the first repetition rate; and the second state represents a default state of the output data stream when a fault condition is detected, such that if a transmission pulse is not received within a timeout window, the output will go to the default state, wherein the timeout window is set slightly longer than a repetition interval of the first pulse train type.