EMAC Functional Architecture

www.ti.com

2.7.3Divide-by-N State Machine (DSM)

The divide-by-N state machine fully implements the functionality of the count-based interrupt pacing. The CNT_CFG bit field of the TPCFG and RPCFG registers (described in Section 3) is set to 0 on reset and immediately generates a pulse (basically means a zero delay), when the TIME_CFG is also set to 0 (i.e., timed-delay SM is disabled). When the TIME_CFG is set to non-zero, it then disables the divide-by-N state machine. When the CNT_CFG is set to non-zero, the CNT_CFG number of events are counted before an output pulse is generated. The counter resets (and reloads) every time when a divide-by-N pulse is generated.

The state machine has three states, WAITING, COUNT, and OUTPUT. Upon reset, the state machine is placed in the WAITING state. The state machine makes transitions between the states as shown in Figure 17. Note that states that are grayed out are transitional states, in the sense that the SM does not stay in the grayed state. While in the transitional state, it typically does an operation, like setting the counter to a certain value.

Figure 17. DSM State Transition Diagram

EVT_PULSE=0￿(or)￿EVT_PULSE=1￿&&

CNT >=￿CNT_CFG￿&& TIME_CFG￿I=0

 

 

 

 

 

 

>=

 

 

 

 

 

 

 

&&

CNT CFG==0

 

PULSE=0

CR=1

 

 

 

 

 

_

 

 

PULSE=1

TIME

 

_

&&

 

 

 

 

&&

 

 

 

EVT

 

 

 

CFG

 

 

 

 

 

 

 

 

 

 

 

 

 

EVT

_

 

 

 

 

 

 

 

 

_

 

 

 

 

 

 

 

CNT

 

 

 

 

EVT_PULSE=0

&&￿CR=0

 

 

 

 

 

Waiting

 

 

PULSE=1

&&

&&

Increment

 

 

CFG

 

 

 

CNT

 

 

 

 

 

 

 

EVT

_

 

 

CNT

 

 

 

 

 

<

CR=0

 

 

CNT

 

 

 

 

 

 

 

 

EVT

 

 

 

 

CNT

 

EVT

 

 

 

_

 

 

 

 

>=

 

CNT

 

 

 

PULSE=0

_

 

 

CFG

 

PULSE=1

<

 

 

CNT

 

CNT

 

_

(or)

 

 

 

 

_

&&

 

 

 

 

 

 

 

CFG

 

 

CNT=1

EVT_PULSE=1￿&&

CR=1￿&&￿CNT <

CNT_CFG

CNT=1

Count

CNT=1

PULSE=1&&￿ ￿<CNTCFG

CNT >=￿CNT_CFG

 

 

 

&&￿EVT_PULSE=1

 

 

NEXT_

 

EVT_ CNT

DIV=1

 

 

 

 

Output

NEXT_

 

 

DIV=1

 

 

44

C6472/TCI6486 EMAC/MDIO

SPRUEF8F –March 2006 –Revised November 2010

 

 

Submit Documentation Feedback

Copyright © 2006–2010, Texas Instruments Incorporated

Page 44
Image 44
Texas Instruments TMS320TCI6486 manual Divide-by-N State Machine DSM, DSM State Transition Diagram