English
Language : 

82596CA Datasheet, PDF (26/76 Pages) Intel Corporation – HIGH-PERFORMANCE 32-BIT LOCAL AREA NETWORK COPROCESSOR
82596CA
COMMAND UNIT (CU)
The Command Unit is the logical unit that executes Action Commands from a list of commands very similar to
a CPU program A Command Block is associated with each Action Command The CU is modeled as a logical
machine that takes at any given time one of the following states
 Idle The CU is not executing a command and is not associated with a CB on the list This is the initial state
 Suspended The CU is not executing a command however it is associated with a CB on the list
 Active The CU is executing an Action Command and pointing to its CB
The CPU can affect CU operation in two ways by issuing a CU Control Command or by setting bits in the
Command word of the Action Command
When programming the 82596 CU it is important to consider the asynchronous way the 82596 processes
commands If a command is issued to the 82596 CU it may be busy processing other commands In order to
avoid asynchronous race conditions the following guidelines are recommended to the 82596 programmer
 If the CU is already in the Active state and another command needs to be executed it is unwise to
immediately issue another CU Start command If a new command (or list of commands) needs to be
started first issue a CU Suspend command wait for the CU to become Suspended then issue the new CU
Start This will insure that all commands are processed correctly
 In general it is a good idea to make sure any CU command has been accepted and executed before
issuing a new control command to the CU
RECEIVE UNIT (RU)
The Receive Unit is the logical unit that receives frames and stores them in memory The RU is modeled as a
logical machine that takes at any given time one of the following states
 Idle The RU has no memory resources and is discarding incoming frames This is the initial state
 No Resources The RU has no memory resources and is discarding incoming frames This state differs
from Idle in that the RU accumulates statistics on the number of discarded frames
 Suspended The RU has memory available for storing frames but is discarding them The suspend state
can only be reached if the CPU forces this through the SCB or sets the suspend bit in the RFD
 Ready The RU has memory available and is storing incoming frames
The CPU can affect RU operation in three ways by issuing an RU Control Command by setting bits in the
Frame Descriptor Command word of the frame being received or by setting the EL bit of the current buffer’s
Buffer Descriptor
When programming the 82596 RU it is important to consider the asynchronous way the 82596 processes
receive frames If an RU Start is issued to the 82596 RU it may be busy processing other incoming packets In
order to avoid asynchronous race conditions the following guidelines are recommended to the 82596 pro-
grammer
 If the RU is already in the Ready state and a new RFA is required to be started it is unwise to immediately
issue another RU Start command If the new RFA needs to be started first issue an RU Suspend com-
mand wait for the RU to become Suspended then issue the new RU Start This will insure that all incoming
frames are received correctly
 In general it is a good idea to make sure any RU command has been accepted and executed before
issuing a new control command to the RU
26