Intel IXP1200 manual Figures

Page 6

IXP1200 Network Processor Family ATM OC-3/12/Ethernet IP Router Example Design

Figures

1

IP over ATM Encapsulation Format

9

2

Frame and PDU Length vs. IP Packet Length

10

3

Expected Ethernet Transmit Bandwidth

11

4

Developer’s Workbench - ATM Data Stream Dialog Box

12

5

Developer’s Workbench - IX Bus Device Status Window

13

6

System Programming Model

14

7

IXP1240 1xATM OC-12 and 8xEthernet 100Mbps Microengine Partitioning

15

8

IXP1240 OC-3 4xATM and 8xEthernet 100Mbps Microengine Partitioning

16

9

IXP1200 2xATM OC-3Software-CRC and 4xEthernet 100Mbps Microengine Par-

 

titioning

17

10

ATM to Ethernet Processing Steps

18

11

Ethernet to ATM Processing Steps

19

12

ATM Receive High Level Algorithm

21

13

ATM Transmit High Level Algorithm

22

14

IP Router High Level Algorithm

23

15

Ethernet Receive High Level Algorithm

24

16

First Cell of a PDU in RFIFO and in DRAM

26

17

Two-Cell PDU in DRAM

26

18

Transmit cell as seen in DRAM

27

19

Transmit cell seen in TFIFO

27

20

CRC-32 High Level Algorithm

29

21

Hashed VC Table Structure

31

22

VC Table Index

32

23

VC Lookup Entry Table (VC_TABLE_HASHED)

32

24

VC Lookup Table Entry (VC_TABLE_LINEAR)

33

25

IP Route Table Entry - ATM Destination

38

26

IP Route Table Entry - Ethernet Destination

38

27

SRAM Descriptor to DRAM Buffer Mapping

39

28

Buffer Descriptor Format for ATM Transmit Destination Port

39

29

Buffer Descriptor Format for Ethernet Transmit Destination Port

40

30

DRAM Data Buffer Format - 12 Byte Offset (Received by ATM)

40

31

DRAM Data Buffer Format - 6 Byte Offset (Received by ATM, Transmitted by

 

 

Ethernet)

40

32

DRAM Data Buffer Format - 6 Byte Offset (Received by Ethernet, Transmitted by

 

ATM)

40

33

DRAM Data Buffer Received by Ethernet

40

34

Buffer Descriptor Queue API

46

35

Buffer Descriptor Queue Descriptor Structure (Resides in SRAM)

46

36

Buffer Descriptor Queue Structure (Only Relevant Part Shown)

46

37

Illustration of Array of 32-bit Words

57

38

Illustration of Byte Sequence

57

39

Definitions

57

vi

Application Note

Image 6
Contents IXP1200 Network Processor Family Application Note Contents Virtual Circuit Lookup Table Cache Limitations Figures Introduction Purpose of ATM Example DesignScope of Example Design Supported / Not Implemented Functions Configuration DescriptionBackground Ethernet, IP and AAL5 Protocol ProcessingFrame and PDU Length vs. IP Packet Length SARExpected Ethernet Transmit Bandwidth Frame and PDU Length vs. IP Packet LengthExecution Environment SoftwareDeveloper’s Workbench ATM Data Stream Dialog Box System Overview System Programming ModelHardware StrongARM Core Software System Programming ModelSoftware Partitioning ATM TXLookup Tables Data Flow ATM to Ethernet Data FlowVC Lookup IP Lookup Table ATM to Ethernet Processing StepsStrongARM Core Initialization Ethernet to ATM Data FlowATM Receive Microengine Microengine Functional BlocksMicroengine Initialization StructureHigh Level Algorithm OC-12 Port OC-3 PortsATM Transmit Microengine ATM Transmit High Level AlgorithmIP-Router Microengine Ethernet Receive MicroengineEthernet Transmit Microengine Ethernet Receive StructureEthernet Receive High Level Algorithm CRC-32 Calculations using IXP1240/1250 Hardware Ethernet Transmit StructureCRC-32 Hardware Checking on Receive Bytes Big Endian Diagram First Cell of a PDU in Rfifo and in DramCRC-32 Hardware Generation on Transmit Transmit AlignmentCRC-32 Checker and Generator Microengines Soft-CRC Functional Differences between Checker and GeneratorCRC-32 Checker and Generator High Level Algorithm Software Subsystems & Data StructuresVirtual Circuit Lookup Table atmvctable.uc CRC-32 ComputationVctablehashed Structure Vctablelinear Structure Primary VC TableVC Table Management API atmutils.c VC Table EntryEntry Description Buffer Offset Buffer IndexCell data11 Entry Description Virtual Circuit Lookup Table Cache VC Cache Function 1.1 OC-12 Configuration1.2 OC-3 Configuration VC Cache StructureIP Table Function IP Lookup TableVC Cache API IP Table StructureMtuchange IP Table Management APIRoutetableinit AtmrouteaddRoutedelete EnetrouteaddRtentinfo RthelpSram Buffer Descriptors and Dram Data Buffers 2 3 4 5 6 7 8Sram Buffer Descriptor Format Next BD Last Quad Queue IndexATM Header Entry Description 2 3 4 Dram Data Buffer Format2 3 4 5 6 7 8 Bytes Enet SrcAdrSequencehandle Usage Sequence Numbers sequence.ucSystem Limit on Packet Buffers API Call DescriptionExample Message Queues msgq.ucUsage Model Step Sequence Operation Bakery Line AnalogyMsgqinitregs Msgqhandle ParametersMsgqinitqueue MsgqsendMsgqreceive RamoptionBuffer Descriptor Queues bdq.uc 1.1 FeaturesFeature Description BDQ Management MacrosCounters CountCounter Base Address Global ParametersUse of the Counter Subsystem Counter Index#define Statement Description Global Counter Enable and FlagsCounter Flags Counter Group DescriptionCounters.uc Counterreset CounterincPortcounterinc Portcounterinc Algorithm IntotaldiscardsCounters.c Countersinit CountersprintGlobal $transfer Register Name Manager xfer.uc AtmtxcrcbadbdMutexvectorenter Mutex VectorsMutexvectorinit MutexvectorexitProject Configuration / Modifying the Example Design Inter-Thread SignallingProjectconfig.h Testing Environments Systemconfig.hSwitching Between Hardware Configurations Simulation Support Scripts, etc LimitationsExtending the Example Design Byte Document ConventionsAcronyms & Definitions 10 11 12 13 14 15 16 ... BytesRelated Documents Title Description