Mpc5200 fec ethernet – Motorola MPC5200 User Manual

Page 26

Advertising
background image

M5200E-4

KADAK

MPC5200 FEC Device Driver

MPC5200 FEC Ethernet

Device Driver Data Sheet

(continued)

Parameters (

continued

)

The driver's private receive and transmit data buffers are allocated using
the standard

KwikNet

memory allocation services. Each buffer will be at

least 1520 bytes in size, rounded up if necessary to meet your alignment
and cache line requirements. Your

KwikNet

memory allocation method

(see the

OS

property page in Chapter 2.3 of the

KwikNet

TCP/IP Stack

User's Guide) must provide enough memory to meet the storage
requirements that you have specified.

The BestComm microcode requires 4-byte alignment of receive and
transmit buffers. Unfortunately, since Ethernet headers are 14 bytes long,
the data in each received Ethernet frame will be halfword aligned, leading
to serious data processing inefficiencies. All receive and transmit buffers
must be aligned on an

n

-byte boundary where

n

is defined by symbols

DD_RCVALIGN

and

DD_TXALIGN

in header file

M5200E.H

to be 4.

To avoid data caching issues, the driver also ensures that its receive and
transmit buffers are cache line aligned. The driver must always copy the
entire received Ethernet frame from its private receive buffer to a

KwikNet

packet buffer to ensure proper long alignment of the data for processing by

KwikNet

. The driver must also copy the entire outgoing Ethernet frame

from a

KwikNet

packet buffer to a private transmit buffer to ensure proper

alignment of the frame for processing by the BestComm microcode.

Warning

KwikNet

packet buffers must be aligned to meet or exceed this

driver's receive alignment requirement. Hence, you must ensure that
the "

Receive buffer alignment

" specified on the

Ethernet

property page

of your

KwikNet

Network Parameter File is a multiple of the value

assigned to

DD_RCVALIGN

in header file

M5200E.H

.

Advertising