位置:51电子网 » 技术资料 » 通信网络

千兆以太网交换芯片BCM5690及其在交换整机中的应用

发布时间:2008/5/29 0:00:00 访问次数:1211

摘要:bcm5690是broadcom公司推出的集成有12个千兆端口和1个万兆端口的多层交换芯片。文章比较全面地介绍了该芯片的结构和功能特性,给出了它的访问控制方式和数据流程,同时给出了用bcm5690设计交换整机的硬件结构和软件实现方法。

关键词:千兆以太网;bcm5690;堆叠;数据流程

目前,万兆芯片技术不断取得新的发展,尤其在“真”万兆的问题上,只有拥有更先进的芯片,设备厂商才能够在芯片功能与特性的基础上开发自身的交换机体系架构。虽然broadcom、intel、marvell、美国国家半导体(ns)、英飞凌(infineon)和意法半导体(stmicro electronics)都推出了最新的千兆以太网芯片产品。但万兆芯片的发展无疑会从硬件与架构层面来加快万兆产品的发展速度。

为此, broadcom公司开发了bcm5690(12+1)单芯片交换方案。该集成电路芯片集成了12个千兆端口和1个万兆端口,是一款功能比较强大和全面的三层千兆以太网交换芯片。文中将详细介绍bcm5690芯片的功能特性以及基于该芯片的交换机实现方法。

1 bcm5690芯片简介

1.1 bcm5690芯片结构

bcm5690是芯片提供有12个ge接口(千兆端口)和1个higig接口(内联端口),并具有堆叠功能。器件的端口采用pci接口进行管理。其结构框图如图1所示。

由图1可以看出:bcm5690芯片由以下一些主要功能模块组成:

(1)giga接口控制器gpic:用于提供ge口与交换逻辑之间的接口。

(2)内联端口(higig)控制器ipic:主要提供higig口与内部交换逻辑之间的接口,有时也被用于多片bcm5690之间的堆叠操作。

(3) cpu管理接口cmic:主要提供cpu与bcm5690设备不同功能块之间的接口,同时也用于诸如miim、i2c和灯的处理等功能。该模块通过pci接口与cpu相联,可使cpu访问和控制bcm5690,而dma引擎则支持数据从cpu传向bcm5690或从bcm5690传向cpu。

(4) 地址解析逻辑arl:该逻辑功能模块可在数据包的基础上确定该数据包的转发策略。它利用二层表(l2_table)、二层组播表l2mc table、三层表(l3_table)、三层最长前缀匹配表(def_ip_hi和def_ip_lo)、三层接口表l3-intf、ip组播表(l3_ipmc)、vlan表(vlan)以及spanning tree group表(vlan_stag)来决定如何转发数据包。

(5) 公共缓冲池cbpcbp实际上是1mb共享的包缓冲区。cbp由8192(8k)个单元组成,每个单元128字节。设备里的每个数据包消耗一至多个单元。

(6)内存管理单元mmu:bcm5690有一个单独的内存管理单元。每个mmu与设备的功能块(gpic、ipic等)相关联。mmu负责数据包的缓冲和调度。它首先接收数据包,然后再将数据包缓冲,并在发送时加以调度,同时它还管理交换单元的流控特性。概括来说,就是缓冲逻辑、调度逻辑、流控逻辑。缓冲逻辑从cp-bus接收包并存放在cbp,同样也从cbp获取包并将它们发送到cp-bus上去。包的发送顺序由调度逻辑根据包的优先级别确定。流控逻辑包括head-of-linehol阻塞预防和backpressure两种方式。

这些功能模块之间可通过两条内部总线联系起来:cp-bus(图1粗黑线所示)、s-channel bus图1细黑线所示。其中cp-bus用于芯片内数据包的高速传输,它支持所有端口的同时线速转发。而s-channel bus则有两个作用:第一是用于mmu到其它功能块的流控;第二是通过cmic利用软件控制来访问内部寄存器和表。

1.2 bcm5690芯片特性及功能介绍

摘要:bcm5690是broadcom公司推出的集成有12个千兆端口和1个万兆端口的多层交换芯片。文章比较全面地介绍了该芯片的结构和功能特性,给出了它的访问控制方式和数据流程,同时给出了用bcm5690设计交换整机的硬件结构和软件实现方法。

关键词:千兆以太网;bcm5690;堆叠;数据流程

目前,万兆芯片技术不断取得新的发展,尤其在“真”万兆的问题上,只有拥有更先进的芯片,设备厂商才能够在芯片功能与特性的基础上开发自身的交换机体系架构。虽然broadcom、intel、marvell、美国国家半导体(ns)、英飞凌(infineon)和意法半导体(stmicro electronics)都推出了最新的千兆以太网芯片产品。但万兆芯片的发展无疑会从硬件与架构层面来加快万兆产品的发展速度。

为此, broadcom公司开发了bcm5690(12+1)单芯片交换方案。该集成电路芯片集成了12个千兆端口和1个万兆端口,是一款功能比较强大和全面的三层千兆以太网交换芯片。文中将详细介绍bcm5690芯片的功能特性以及基于该芯片的交换机实现方法。

1 bcm5690芯片简介

1.1 bcm5690芯片结构

bcm5690是芯片提供有12个ge接口(千兆端口)和1个higig接口(内联端口),并具有堆叠功能。器件的端口采用pci接口进行管理。其结构框图如图1所示。

由图1可以看出:bcm5690芯片由以下一些主要功能模块组成:

(1)giga接口控制器gpic:用于提供ge口与交换逻辑之间的接口。

(2)内联端口(higig)控制器ipic:主要提供higig口与内部交换逻辑之间的接口,有时也被用于多片bcm5690之间的堆叠操作。

(3) cpu管理接口cmic:主要提供cpu与bcm5690设备不同功能块之间的接口,同时也用于诸如miim、i2c和灯的处理等功能。该模块通过pci接口与cpu相联,可使cpu访问和控制bcm5690,而dma引擎则支持数据从cpu传向bcm5690或从bcm5690传向cpu。

(4) 地址解析逻辑arl:该逻辑功能模块可在数据包的基础上确定该数据包的转发策略。它利用二层表(l2_table)、二层组播表l2mc table、三层表(l3_table)、三层最长前缀匹配表(def_ip_hi和def_ip_lo)、三层接口表l3-intf、ip组播表(l3_ipmc)、vlan表(vlan)以及spanning tree group表(vlan_stag)来决定如何转发数据包。

(5) 公共缓冲池cbpcbp实际上是1mb共享的包缓冲区。cbp由8192(8k)个单元组成,每个单元128字节。设备里的每个数据包消耗一至多个单元。

(6)内存管理单元mmu:bcm5690有一个单独的内存管理单元。每个mmu与设备的功能块(gpic、ipic等)相关联。mmu负责数据包的缓冲和调度。它首先接收数据包,然后再将数据包缓冲,并在发送时加以调度,同时它还管理交换单元的流控特性。概括来说,就是缓冲逻辑、调度逻辑、流控逻辑。缓冲逻辑从cp-bus接收包并存放在cbp,同样也从cbp获取包并将它们发送到cp-bus上去。包的发送顺序由调度逻辑根据包的优先级别确定。流控逻辑包括head-of-linehol阻塞预防和backpressure两种方式。

这些功能模块之间可通过两条内部总线联系起来:cp-bus(图1粗黑线所示)、s-channel bus图1细黑线所示。其中cp-bus用于芯片内数据包的高速传输,它支持所有端口的同时线速转发。而s-channel bus则有两个作用:第一是用于mmu到其它功能块的流控;第二是通过cmic利用软件控制来访问内部寄存器和表。

1.2 bcm5690芯片特性及功能介绍

-->
相关IC型号
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!