This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Use a Ethernet PHY to send and receive data without ethernet frame

We have a project, where we want to use an Ethernet PHY, like the TLK 100 or a DP83…, as a physical interface, controlled over RMII.

But now, we will send our own datagram, with our own frame and not like in general a datagram with an Ethernet frame.

Is it possible to use the component in such a way or does it always need the Ethernet frame or parts of it, to send or receive a datagram?

What is the PHY doing with our data? Only code (4B/5B, MLT-3) the data or check it, if there is any Ethernet frame?

In the datasheet, we didn’t find anything to this topic. The only thing we have found is that the 4B/5B Encoder/Decoder needs the first 8 bits of the preamble to build the J/K code-group.

The other question is, if it is possible to do it in our own way, do we have to keep a minimal length of the datagram?

Thank you for help!

  • I am afraid it is not possible to use the device in the manner you suggest.  The TLK1xx and DP83xxx devices are designed specifically to transmit and receive Ethernet data. The internal framing of data, the coding, the timers, etc. are all specific to Ethernet. If the Ethernet data format is not maintained, the device will not be able to transmit and receive correctly. 

    Patrick

  • Here, once again our exactly problem

     

    Our project:

     

    Topology: Point-to-point, full duplex (Ethernet PHY to Ethernet PHY)

    Distance: Up to 100 meter

     

    Standard Ethernet frame:

     

    P      |              SFD|   T-MAC                 |      S-MAC   |       Length |           Data    |Check                   Gap

     

    Preamble:                              7 Byte

    Start Frame Delimiter:           1 Byte

    Target address:                      6 Byte

    Source address:                     6 Byte

    Length/Type:                          2 Byte

    Data:                                      46 – 1500 Byte

    Frame Check:                                   4 Byte

     

    min. length:                            72 Byte

     

    Additional normal Inter-Frame-Spacing 

    -> roughly time behavior: 1 packet / 10 microseconds

     

     

    What we want:

     

    We want send a packet every microsecond. So we thought about something like this:

     

    P    |    Data      |Check          min. gap                  P    |     Data    |Check

     

    Preamble/ Start Frame Delimiter:                 1 Byte (to build the J/K)

    Data:                                                              4 – 6 Byte

    Frame Check (if necessary for PHY):          4 Byte

     

    max length:                                                    11 Byte

     

    Additional a short Inter-Frame-Spacing

    -> roughly time behavior: 1 packet / 1 microsecond

     

     

    Questions:

     

    1. Which frame data is absolutely necessary to run the PHY?
    2. How long is the minimal Inter-Frame-Space? How fast can we send packet after packet?
    3. What is the minimal length of a datagram we can send over the PHY?