Altera SDI II MegaCore User Manual
Page 62

Table 4-3: Sampling Process
The submodule executes the sampling process in the following manner.
Step
Process
Description
1
Detect transitions in the incoming
data.
The first part of the code detects the transitions in the
incoming data. This detection is done by comparing
adjacent bits in the incoming data word. This process
generates a word that indicates the position of the
transitions in the data
Example:
Data in = 1100000111
Transition = 0100001000
2
Generate a
sample_now
data by using
the transition data.
The submodule generates a
sample_now
bus from the
transition bus and the
sample_mask
. Since the data is not
sampled at the transition point, the submodule applies an
offset to which bit it selects using the sample mask. The
sample mask gives the position of the desired sample
relative to the transition point.
Example:
Data in = 1100000111
Transition = 0100001000
Sample now = 0000100001
3
Select and place the data bits in the
shift register.
If a bit in the
sample_now
bus is set, the corresponding bit
in the data input word is selected and placed into a shift
register. For instance, if
sample_now[4]
is set, the
submodule places the value of
din[4]
into the shift register.
Example:
Data in = 1100000111
Transition = 0100001000
Sample now = 0000100001
Data to shift reg = xxxx0xxxx1
4
Remove the data bits from the shift
register and construct a parallel
word.
The submodule removes samples from the shift register one
at a time and places them into consecutive bits in the output
word.
5
Assert
dout_valid
bit.
The submodule asserts this bit to indicate that the word is
complete and ready for the downstream system to process.
4-20
RX Sample
UG-01125
2015.05.04
Altera Corporation
SDI II IP Core Functional Description