Entridia Corporation Phone: (949) 823-3600
131 Theory, Suite 150 Fax: (949) 752-1462
Irvine, CA 92612 E-mail: info@entridia.com
USA http://www.entridia.com
Product Brief - 3/01, ver 1.4 1999-2001 Entridia Corporation. All rights reserved.
Chorus (ENT3003) Product Brief
Wire-Speed Packet Forwarding ASIC for Access Aggregation Routers
or algorithmic processors may also be used.
Each flow table entry can specify a source and destina-
tion IP subnet, source and destination port (TCP, UDP
or other Layer 4 port) along with an action to take if any
or all of these fields match those of the packet being fil-
tered. The action can specify one of the following:
•Forward: Accept the packet, and forward it
normally.
•Priority Forward: Accept the packet, and forward
it with priority over normal packets.
•Drop: Discard the packet.
•Examine: Accept the packet and notify the Control
Plane Processor of the match and the starting
address of the packet data in the Packet Data Buffer
memory. This enables additional filtering software
running on the Control Plane Processor to further
process the packet.
Route Table
The Chorus chip has a built-in 512 entry route table with
full support for longest prefix match look up, essential
for Classless Interdomain Routing (CIDR). As route
lookup can be performed in three cycles using this
approach, Chorus can guarantee wire-speed processing
with deterministic latency. The Chorus chip route table
also supports using the IP DiffServ Code Point (DSCP)
field in making Quality of Service (QoS) policy-based
destination route selection. Refer to Table 2.
The on-chip 512 entry CIDR route table can be replaced
to support 128K routes/flows at full line rate by using
Entridia’s Crescendo Forwarding Table Controller
(ENT2003) device to interface to external CAMs via the
OptiStream expansion bus. Alternatively, third party
lookup engines or algorithmic processors may also be
used.
Traffic Shaper
The OC-3c port has 8 levels of priority and the Ethernet
ports have 2 levels of priority. Additional scheduling
can be added via the Entridia OptiStream bus. The prior-
ity output queues can be selected based on the DSCP,
source or destination IP addresses, and TCP, UDP or
other Layer 4 ports, or a valid combination of the above
parameters, making it highly flexible for system design-
ers to implement policy-based wire-speed routing rules
for the OC-3c port. Chorus has a built-in weighted
round-robin scheduler with user programmable weights.
OptiStream Interface
The OptiStream feature of the Chorus chip is an
enhanced glueless GTL+ (Gunning Transceiver Logic)
interface which can operate at frequencies up to 100
MHz. The OptiStream expansion bus has a 64-bit wide
data path that supports a sustained throughput of 6.4
Gbps. The OptiStream bus allows system designers to
cascade up to four Chorus devices, forming a 16-port
10/100 Mbps, 4-port OC-3c PoS, wire-speed IP router
and the attachment of an external forwarding table
device such as the Entridia ENT2003 Crescendo device.
Control Plane Processor Interface for
Exception Processing
The Control Plane Processor interface couples an exter-
nal microprocessor (Control Plane Processor), running
at 25 to 50 MHz, with internal Chorus logic and control
registers. It consists of a 32-bit data bus and a 16-bit
address bus.
This bus presents Chorus as a memory-like device to the
Control Plane Processor. An extensive register map
enables software running on the Control Plane Proces-
sor to initialize and dynamically re-configure the Cho-
rus chip.
The CPP interface also includes an interrupt line, which
is used to notify the Control Plane Processor of excep-
tion conditions and periodic events. Notification of spe-
cific conditions can be masked or enabled by
programming appropriate interrupt control registers.
Configuration software running on the Control Plane
Processor can install static routes (including a default
gateway entry) and periodically age and rebuild other
entries dynamically as a result of routing protocol mes-
sages (such as OSPF and BGP4). Also, the Control
Plane Processor can maintain very large route tables in
system memory and use the on-chip 512 entry table as a
cache for frequently used routes.
Software Interface
Entridia provides complete software drivers and a Ser-
vice Application Programming Interface (ServAPI) to
enable system designers to quickly migrate their exist-
ing software to the Chorus platform.
The software drivers are targeted to the Wind River Sys-
tems' VxWorks real-time operating system (RTOS).
However, the drivers use a hardware abstraction model
that makes it very easy to port to other RTOSs.
To enable quick integration with existing software in
routers, the Entridia driver presents the Chorus network
interface as five independent network devices. The
router software that deals with Network Layer commu-
nications can treat each of the interfaces as a dedicated
Data Link Layer device and interoperate with them
Features and Architecture
•Packet filtering rules: The Chorus chip forwards
or discards packets based on rules in the flow table.
•Packet Data Buffer management: The Chorus
chip allocates and reclaims space for the packets in
the packet data buffer memory.
•IP Multicast: The Chorus chip manages
transmission of multicast packets to all the
recipient ports without unnecessary data copying.
•IP-based QoS: Priority Scheduling; weighted
round-robin.
Memory Requirements
The Chorus device is designed to work with pipelined
external ZBT SRAM for the Packet Data Buffer and the
Status Buffer. Chorus supports a maximum addressable
SRAM capacity of 16 MB Packet Data and 4 MB for
Status Buffer.
Packaging
Body Size: 40 X 40 mm
Ball pitch: 1.27 mm
Ball count: 520-pin HPBGA package (see diagram)
Power Requirements
Typical Power Dissipation: 7W
0.25 um 2.5V CMOS process, 3.3V I/O
without modification. In addition, the ServAPI is a
library of C functions that simplify access to the more
advanced features of the device such as filtering rules
and traffic shaping parameters.
System Integration
The Chorus chip is designed to integrate into Access/
Service Provider edge routing systems without signifi-
cant modification to the software currently running on
those systems, while accelerating their performance and
increasing functionality.
Chorus handles the following functions, which are cur-
rently handled by a microprocessor/discrete program-
mable logic, without any software intervention:
•Packet buffering/Memory management: The
Chorus chip transfers all packet data into and out of
the packet data buffer memory.
•ARP table management: The Chorus chip learns
the IP to MAC address mapping, and ages and
refreshes the entries at periodic intervals specified
in programmable registers.
•ARP protocol handling: A register-programmable
Proxy ARP mode enables the Chorus chip to
respond automatically to ARP requests with
appropriate ARP response packets to implement
transparent subnet gateways.
•Route look up: The Chorus chip searches for the
longest prefix match for a destination IP address in
the route table.
Table 2. Discrete Mode Route Table Entry Detail
49-bit Classification Key
DestIP
32-bit DiffServ Code Points (DSCP)
8-bit Physical Interface ID
7-bit Control Bits
2-bit
72-bit Response Data
Next Hop IP
32-bit Network ID
8-bit Egress Tag
32-bit
Table 1. Discrete Mode Flow Table Entry Detail and Layer 3/4 Parameters
123-bit Classification Key
DestIP
32-bit SrcIP
32-bit Dest Port Number
16-bit Src Port Number
16-bit DiffServ Code
Points (DSCP)
8-bit
Protocol
8-bits Physical Interface
ID
7-bit
Control Bits
4-bit
40-bit Response Data
Priority
6-bit Egress Tag
32-bit Action
2-bit