Close

Interfacing: the links

A project log for miniPHY

the thing you need to plug to a miniMAC

yann-guidon-ygdesYann Guidon / YGDES 03/03/2026 at 22:530 Comments

The QSDE state machine is replaced by QSLD :

Still 4 simple states, still 2 bits.

b1b0
Q00
S01
L10
D11

The interesting part is that this pair of bits is both a state and a command, so it's present at the input and output of the units (MAC, PHY ...)

(insert state machine diagram)

Errors go back to Synching, and Locked is used when no data is present but the link remains active (sort of Idle but not to be confused with Quiet).

MAC-PHY link

Due to the usual high cost/limitation of pins, the link uses dual-edged clock and keeps the meta/control information to the minimum. All the communication use the QSLD state, which uses only one wire in DDR.

For the PHY-MAC link, we get 5 wires :

Notable feature : the QSLD wire toggles only in Sync or Locked states. If tied to 0 it's quiet/disabled, if 1 then data is flowing (the desired state).

3 cycles are required to transmit 18 bits. There is no clear start (no room for a framing bit) so it is implied by going from the Locked state to the Data state. This resets a free-running 3-state counter, incremented for each new Data cycle. Going back from D to L when the counter is not 0 is an error and the peer will reply with Sync.

When in states Q, S or L, the data bits are "don't care" though they could be used to send configuration or auxiliary data, one day.

.

MAC-host link

Same constraints so a DDR interface is used as well. But due to the larger and slower bus, the data path is 8 bits. An extra bit works as Control/Data flag during one phase but is not used in the other phase (for now).

Total: 11 wires

A whole word is transmitted every cycle. There is no counter to care of. The QSLD state is per-word.

Since everything is "clock sourced" and each device in the chain has their own local oscillator, the overall system is considered asynchronous.

Normally the transmitter should do its best to keep the link in Data mode, resorting to the Control type words to fill the bandwidth with padding control words. The Locked state may bypass the scrambler and prolonged L state would affect EMI & BLW. But for now, let's consider we link two MAC together without going through a PHY (which is actually the current situation).

.

The "parallel" interface amounts to 9 bits per word, the "nibble" interface to 3 bits, so there is a 3× speed difference. The circuits need (double-)buffering, probably a "Hold" signal...

.

Discussions