荷尔蒙是什么| 军国主义是什么意思| 孕妇可以喝什么汤| 鸡冠油是什么| 淋巴结增大是什么原因严重吗| 为什么会干呕| 头晕是什么病的征兆| 尿胆原阴性是什么意思| 那敢情好是什么意思| 起酥油是什么油| 月经期能吃什么水果| 沈字五行属什么| 吃什么补肾| 牛皮和牛皮革有什么区别| 花代表什么数字| 你算什么东西| 药引子是什么意思| 冲奶粉用什么水比较好| 肌无力有什么症状| 得艾滋病有什么症状| 胎儿右侧脉络丛囊肿是什么意思| 女人的逼是什么意思| 大便一粒一粒的是什么原因| 严重失眠吃什么药管用| 坐位体前屈是什么意思| 为什么会做梦| 水平是什么意思| 拔牙之后能吃什么| 鸦雀无声是什么意思| 核糖体由什么组成| 什么样的手相最有福气| 肠胃炎吃什么食物| 瓜怂是什么意思| 肟是什么意思| 茯苓的作用是什么| lv的全称是什么| 乳酸偏高是什么意思| 柠檬加蜂蜜泡水喝有什么功效| 肚脐眼是什么穴位| 鸡为什么吃自己下的蛋| 咳嗽白痰吃什么好得快| 5月7日什么星座| 妈妈姐姐的女儿叫什么| 大人退烧吃什么药| 心里发慌什么原因| 怂包是什么意思| 高丽参适合什么人吃| siri什么意思| 脑出血什么症状| 怎么看自己五行属什么| 梦见什么是受孕成功了| 山药和淮山有什么区别| 警察为什么叫条子| 长寿花什么时候扦插| dl是什么单位| 化疗和放疗什么区别| 9月15号是什么日子| 白玫瑰代表什么| 太阳穴长痘痘什么原因| 舌尖疼吃什么药| 身体动不动就出汗是什么原因| 2025年是什么命| 一什么眉毛| 梦见小猫崽是什么意思| 降结肠疼是什么原因| 圆脸适合什么发型男| 免疫组化是什么| 腹胀吃什么药| qrs波代表什么| 7月1号什么节| 规培结束后是什么医生| 舌头起泡是什么原因引起的| 男性尿频尿急吃什么药| 走路对身体有什么好处| 什么是独角兽企业| 孕妇吃什么会流产| 龟头有点痒擦什么药| 流明是什么意思| 不明原因腹痛挂什么科| 梅花代表什么象征意义| 耳闷耳堵是什么原因引起的| 雪人是什么生肖| 洗白是什么意思| 舌头痛吃什么药好| 长脸适合什么刘海| 什么什么不见| 天德月德是什么意思| 吃什么补维生素| 漏斗胸是什么病| 列文虎克发现了什么| 喝什么可以排便通畅| 三十六计第一计是什么| 胃胀吃什么中成药| 西洋参什么季节吃最好| 五险一金指什么| 腿麻是什么原因| 后背痒是什么原因| 老树盘根是什么意思| 什么是虫草| jps是什么意思| 多喝白开水有什么好处| 什么桥下没有水| tab是什么意思| 什么是直接胆红素| b票能开什么车| 2019是什么生肖| 掂过碌蔗是什么意思| 心脏支架不能吃什么| 什么是包容| 什么是戒断反应| 健脾祛湿吃什么中成药| dha是补什么的| 咳痰带血是什么原因| 夜尿频多吃什么药效果好| 同房有什么好处| 女人什么眉毛最有福气| 黄芪长什么样子的图片| 晚上适合做什么运动| 红艳煞什么意思| 三五成群是什么生肖| 梦见死人复活是什么意思| 过三关 是什么意思| 腹部ct平扫能检查出什么| 阴道瘙痒用什么药| 身上带什么可以辟邪| 什么是单核细胞百分比| 冰箱什么牌子好| 手麻脚麻是什么原因| 关节炎吃什么药最好| 刘强东属什么生肖| play是什么牌子| 2026年是什么生肖年| 往来账是什么意思| 女人大姨妈来了吃什么最好| 翩翩起舞是什么意思| 乳腺检查挂什么科| 寸头适合什么脸型| 二是什么意思| 茄子把有什么功效| 查艾滋挂什么科| 干燥综合症是什么病| 虎父无犬子什么意思| 夕火念什么| 五行黑色属什么| 雪梨百合炖冰糖有什么功效| 荔枝为什么上火| 进贡是什么意思| 什么细节能感动摩羯男| 人彘是什么意思| 嗓子突然哑了是什么原因引起的| 吴亦凡什么学历| 身份证尾号代表什么| 一度房室传导阻滞是什么意思| 一个彭一个瓦念什么| 咸湿佬是什么意思| 羊水透声欠佳什么意思| 手心红是什么原因| 夏天用什么带饭不馊| 左腹部疼是什么原因| 重字五行属什么| 咳嗽有白痰吃什么药最好| kipper什么意思| 小葱拌豆腐的下一句是什么| 未央是什么意思| 6月18号是什么星座| 老叹气是什么原因| 什么是精神分裂| 亚健康是什么意思| 五味子不适合什么人喝| 怀孕一个月吃什么对宝宝发育好| 翻车鱼为什么叫翻车鱼| im是什么| 什么是粒子植入治疗| 体癣是什么原因引起的| 脑供血不足吃点什么药| 女性外阴痒用什么药| 病毒性感冒什么症状| hpv感染用什么药| 菠菜和豆腐为什么不能一起吃| cyan是什么颜色| 闭日是什么意思| 黄豆酱做什么菜好吃| 咽喉炎有什么症状| 菲拉格慕属于什么档次| 什么时间运动减肥效果最好| 唇系带短有什么影响| 中午饭吃什么| 甲醇和乙醇有什么区别| 地瓜什么时候成熟| 为什么青蛙跳的比树高| 秋天是什么样子的| 眼角膜脱落有什么症状| 胸口正中间疼是什么病| 产妇月子吃什么下奶多| 本是什么生肖| 油漆用什么能洗掉| 幽门螺杆菌感染有什么症状| 凤尾鱼为什么突然就死| 肝火旺会出现什么症状| 全身瘙痒是什么原因| 人脱水了会有什么表现| 大红袍属于什么档次| 习俗是什么意思| 雷尼替丁主要治什么胃病| 天天睡觉做梦是什么原因| 减胎对另一个胎儿有什么影响| 感冒了吃什么水果| 什么东西解酒最好最快| 什么是大三阳和小三阳| 怀孕前3个月需要注意什么| 诠释的意思是什么| cr什么意思| 什么是树莓| 八月初十是什么星座| 大修基金什么时候缴纳| 知柏地黄丸治什么病| 取模是什么意思| 吃什么能快速减肥| 大张伟的真名叫什么| 检查hpv挂什么科| 8月8号是什么日子| 加特纳菌阳性是什么病| 牛字旁与什么有关| 男性更年期吃什么药| 尿毒症小便什么颜色| Valentino什么牌子| 阴茎溃疡用什么药| 小白脸是什么意思| 3680是什么罩杯| 道和集团是干什么的| 03年是什么命| 清心寡欲是什么意思| 血常规挂什么科| 什么水果是钙中之王| 女性尿液发黄是什么原因| 什么是胰腺| 膜性肾病什么意思| 什么是规培生| 尿道流脓吃什么药| 亡羊补牢的寓意是什么| 早上吃什么早餐最好| 当兵有什么要求| 皮重是什么意思| 梦见很多人是什么意思| 摆摊卖什么好| 低血压是什么原因引起的| 什么是潮喷| 脾是起什么作用的| 维生素什么牌子好| 吃什么皮肤白的最快| 男士长脸适合什么发型| 微尘是什么意思| 炎性增殖灶是什么意思| 四物汤是什么| 未见明显血流信号是什么意思| 桑葚什么季节成熟| 晚上尿床是什么原因| 发烧吃什么食物| 尿道炎症吃什么药好| 葡萄糖是什么糖| 飞短流长是什么意思| 鹅蛋脸适合戴什么眼镜| 经常手淫对身体有什么危害| 口干口臭口苦吃什么药| 百度

新闻中心

EEPW首页 > 消费电子 > 设计应用 > 高端路由器设计需要考虑的数据缓冲器问题

桃江四中78名患结核学生报名高考 能否顺利体检?

——
作者:IDT 公司 Michael Olsen 时间:2025-08-05 来源:电子设计应用 收藏
百度 面对高速增长的会员业务,腾讯视频将持续加大对优质内容的投入,不断优化会员服务体系。

迅速增加的数据、语音和量进入(MAN)后,服务于这些应用的必须能将多路的1 Gbps数据流汇聚成高达40 Gbps带宽的数据流.为了保持线速性能,系统必须在出口端提供等于或高于进入传输速率的信息包处理能力,或者对信息包进行备份,这时缓冲就变得至关重要。
这些数据缓存的性能和效率对的性能至关重要。性能的主要威胁来自数据的重发。因此,城域边缘的必须能够汇聚多个较低速率的接入线路,并将其转发至高速核心连接而不致欠载。路由器也必须保证从更高速的核心网到边缘网的数据分发操作不会超时。在任何情况下超过了数据缓存的最大能力,发送到 MAN 的任何额外数据都必须重传。
因此,最大限度地降低系统延迟和确保系统最大吞吐量的关键是为具体应用选择合适的数据缓存。如果缓存过大,就会大幅度增加系统成本。如果过小,就会溢出缓存并重发数据,导致性能下降。

这种考虑涉及三个主要因素:输入数据的速率(入口线路)、输出数据的速率(出口线路)及内部处理时间需求。只要来自网络的入口数据速率与回到网络的出口数据速率相等,而且具有最小的处理需求,数据缓存即可保持相对较小。因为内部处理只增加很小的延迟,流量也比较稳定,所以几乎不需要存储数据。不过,随着系统执行更高级别的处理,就必须增大缓存来消除处理功能带来的延迟。突发流量对数据缓存的设计也有显著的影响。如果入口数据速率随着时间显著变化并偶尔超过信息包处理器的能力,就必须适当地改变入口的尺寸,以解决与这些处理功能相关的延迟问题。

可编程逻辑器件的优势

在为这些应用构建缓冲子系统时,工程师倾向于首先考虑采用FPGA,而不是现成的分立存储器件。由于工程教育机构日益依赖于 FPGA 来教授电路设计的基础知识。因此,大部分工程师都熟悉这种技术。FPGA 有助于设计师随时对他们的设计进行重新配置,提供高度灵活性,并在短期内完成硬件的测试。此外,由于这些工具常常是人们熟悉的,可以迅速转变成最终解决方案。
现在,FPGA 可提供数百万的逻辑门和兆比特级的片上存储器,设计师可将多个 FIFO集成到一个芯片上(见图 1)。然而,在数据缓存需求比较高的城域边缘网领域,设计师必须仔细评估他们所有的设计选择。在某些情况下,设计师会发现可编程逻辑器件在给定性能或成本方面存在固有的局限性,而分立器件可提供更具吸引力的解决方案。


图1 可集成多个FIFO的FPGA

例如,许多工程师没有意识到,基于 FPGA 的解决方案的性能会随着满足应用需求的数据缓存大小的改变而变化。虽然现在的FPGA 可以更高的时钟速率运行,当设计师把越来越多的 FIFO 映射到 FPGA 时,他们面临重大的性能局限性。设计师会使用来自 FPGA 供应商的工具,自动地将多个 FIFO 映射到单个物理存储器块中,并创建在不同的FIFO之间时域复用所需的逻辑。然而,采用这种复用方法,会使每个FIFO端口的工作频率与映射到设计中的 FIFO 数量成反比。这是因为当每个 FIFO 独立运行时,整个存储带宽是共享的。当 FIFO 器件的读写操作开始时,时序电路会在快速的 TDM 时钟域中访问物理存储器。为了完成每次存储器的存取,时序器必须将信息传回到FIFO端口的时钟域。随着 FPGA 中FIFO 数量的增加,时序电路的速度和时钟域传输的数量将会严重限制 FIFO 的性能。因此,一些FPGA供应商建议设计师把器件采用的 FIFO 的数量控制在10个之内。
 
高性能城域边缘网路由器设计的存储器密度也会影响 FPGA 的性能。为了充分发挥性能,设计师很自然地优先选择内嵌的数据。所以,许多设计师选择采用更高密度的 FPGA 来满足大型数据的存储需求。

然而,采用这种策略也会产生一些问题。当设计师在 FPGA 中使用大量存储器时,一些存储器将会进一步远离I/O和逻辑门。这种存储资源在芯片内的分散将导致内部写脉冲随线长而变化,并延长建立时间。在一些应用中,FPGA 中大型存储阵列的使用可降低高达40%的芯片内部速度。

解决该问题的一种方法是选择更小和成本更低的 FPGA实现控制逻辑,并采用外部分立存储器来支持。设计师会采用外部SRAM来增强 FPGA 的存储能力。FPGA供应商可提供预定义模块,设计师可将其集成到 FPGA 中,用以进行外部存储器管理。这种方法有助于设计师使用更小和更便宜的 FPGA。
但是,由于FPGA架构固有的 I/O 局限性,这种方法为设计带来了延时。在采用 FPGA 和外部存储器的设计中,数据通过 FPGA 中比较慢的可编程门进入缓冲器,然后子系统必须为控制器分配一个地址,并将数据转移到外部存储器。接下来,系统必须分配一个地址并把数据拖到外部存储器中。这两个操作必须通过 FPGA 中比较慢的可编程 I/O门进行。最后,数据必须从 FPGA 发送到系统中,并再次经过 FPGA 可编程门。假设在 FPGA 和外部存储器中进行大量的存取,该子系统需要 8 个时钟周期来处理每个数据字节。

理想的选择

在这些应用中,一种更为可行的方法是采用现成的分立 FIFO 来设计数据缓冲器(见图 2)。目前,供应商可提供密度高达 18 Mb、运行速度高达 250 MHz 的FIFO器件。这些器件的输入和输出端口可进行独立配置,同时以单倍数据速率(SDR)和双倍数据速率(DDR)运行,并可支持高达 20 Gbps的数据速率。


图2  采用分立FIFO的数据缓冲器

如果需要更高密度的缓冲器,一些 FIFO 可以进行级联,在多芯片配置模式下实现更高的密度。不同的时钟运行模式有助于设计者在级联配置中优化缓冲器设计。在标准模式中,写入一个空 FIFO 中的第一个字被存储在内部存储器中,除非进行特定的读操作,该字不会在数据输出线上出现。第二种(首字直接通过)模式是通过将一个 FIFO 的数据输出连接到下一个 FIFO 的数据输入来支持深度扩展。这使缓冲器可自动地将进入缓冲器的第一个字以流水线方式送到第一个 FIFO  中,并利用第二个FIFO实现反压。

分立缓冲器件制造商可以提供多达128个队列以全线速区分并对数据进行优先级排序的FIFO。这些器件可提供高达 10 Mb的存储密度,并利用高达 166 MHz 的 DDR 支持超过 10 Gbps的运行速度。这些产品配置了 x40 位数据总线,可提供13.3 Gbps的高数据吞吐量,并可支持下一代高吞吐量平台的服务质量(QoS)需求。

比较FPGA 和其他替代解决方案,简单对比数据手册已经不能得到满意的答案。FPGA 的易于编程特性有助于模块化数据手册,每段的数据通道部分都需要进行确认、评估和添加,以确定合成电路的时序。为了实现这一点,FPGA 制造商可为 FPGA 的设计和编程提供软件。这种设计软件可鉴别设计并评估电路,提供性能时序参数。供应商丰富的经验和他们各自的软件包可提供非常精确的模型。在评估这些解决方案的过程中,工程师可使用 Xilinx ISE 和 Altera Quartus II 设计软件。他们可以使用这些软件工具对 FPGA 进行配置,以执行 FIFO 存储功能,并利用设计软件提供的合成模型来模拟实际电路。使用 Xilinx 的 LogicCore 和 Altera 的 MegaWizard 可产生 FIFO 单元。这些工具可提供优化性能的设计实现。该实验可在各种尺寸的器件和存储器配置上进行。性能测试结果基于后布局和走线时序。

在决定采用现成的 FIFO 或可编程逻辑器件建立一个数据缓冲器子系统之前,工程师应该考虑到该决定对其设计复杂性的影响。低密度的情况下,把 FIFO 和控制逻辑集成到一个 IC中,可提供一种更为简单的电路板设计。随着缓冲器尺寸超过256K的密度,而且成本促使其采用外部SRAM来补充 FPGA,标准的 FIFO 可提供更为简单的方法。随着设计者对系统的升级转向更高的存储密度,这种方法也具有优势。例如,大多数 FIFO 都是引脚兼容的产品,密度范围在 0.5 Mb~18 Mb 之间。使设计师简单更换一个元件,即可迅速而容易地增强其系统能力。在基于 FPGA 的配置中,设计师通常需要花费时间和精力重新编译器件,或对一个新的、更高密度的 FPGA 进行设计和编程。
异步设计中的时钟同步也是一个应该考虑的问题。在大多数路由器环境中,进入系统的传输线路与主系统时钟会在不同的时钟域中运行。设计师必须连接不同宽度的总线。路由器设计师面临的一个常见的挑战就是如何使用数据缓冲器使这些全异时钟同步,并复用16 位和 32 位或 32 位和 64 位之间的数据,以确保整个系统中数据的完整性。

设计师使用基于FPGA的方法调整他们的逻辑以实现上述目标。然而在一般情况下,该工作需要丰富的电路设计专业知识以及模拟和测试这些电路的时间。相比之下,许多高性能 FIFO 提供的嵌入式总线匹配能力可自动解决这个问题。这些器件可提供多总线宽度和端口可选的总线宽度匹配,有助于出口线路和入口线路之间的无缝连接。这些器件也具备独立的读写时钟,可使设计者实现不同时钟域之间的频率匹配。

面积和成本

在设计缓冲器时,器件成本和板卡空间也是要考虑的因素。通过分析FIFO和FPGA 中存储器相关的单位比特成本,可以看出两种技术中的存储器成本在达到256K之前保持在非常相似的水平(见图3)。然而,FIFO 中的单位比特成本是随着密度的增加而稳定下降的,但是 FPGA 中存储器成本的增速很快。密度为 1 Mb 以上的 FPGA 存储器就变得过于昂贵了。


图3  FPGA和分立FIFO方案的成本对比

这种成本差异是非常令人吃惊的。当设计师被迫在 FPGA 设计中添加更多数量的存储器时,他们必须支付额外的存储器和嵌入到更高密度器件中的额外逻辑的成本。采用分立的 FIFO则可以稳定地增加密度。

封装面积和引脚也是需要考虑的重要内容。在低密度情况下,把缓冲器集成到单个 FPGA中可以实现更紧凑的引脚布局。然而,随着 FPGA密度和引脚数量的增加,这种折衷的效果并不明显。用大型的 8 M 门 FPGA 实现数据缓冲器需要设计师在电路板上焊接一个 1152 引脚 的 BGA,另一方面,不论存储器密度如何,采用比较简单的 256 引脚 BGA封装的FIFO即可达到相同的效果。

结语

随着数据速率的持续上升,数据缓冲器设计将在优化网络性能方面扮演重要的角色。通过分析所有的设计选择,并利用现成的分立器件和可编程逻辑器件的独特性能,设计师可以用尽可能低的成本构建高性能的解决方案。■



评论


相关推荐

技术专区

关闭
秦始皇什么星座 下面痛是什么原因 豆角不能和什么一起吃 诸葛亮是什么生肖 什么叫阵雨
收官什么意思 一只脚心疼是什么原因 工字五行属什么 暑假让孩子学点什么好 x光是检查什么的
师长是什么意思 抑郁症为什么会想死 肺结节吃什么药散结节最快 上面一个处下面一个日是什么字 说是什么意思
精液是什么 代入感是什么意思 眼袋是什么原因引起的 fhr是什么意思 慌张的反义词是什么
胸部什么时候停止发育qingzhougame.com 水瓶男和什么座最配chuanglingweilai.com 汗多是什么原因hcv8jop9ns4r.cn 龟头炎用什么药hcv8jop7ns6r.cn 转氨酶高吃什么药hcv9jop8ns3r.cn
蹦蹦跳跳的动物是什么生肖hcv8jop9ns7r.cn robot什么意思hcv8jop9ns8r.cn 退步是什么意思hcv7jop5ns1r.cn 维生素a是什么hcv8jop0ns7r.cn 面部痉挛吃什么药hcv8jop2ns1r.cn
夏季有什么水果hcv9jop1ns1r.cn 伤口发炎化脓用什么药hcv8jop8ns0r.cn 什么是高hcv8jop8ns3r.cn 颈椎ct能检查出什么hcv9jop2ns4r.cn 范畴的意思是什么hcv8jop5ns8r.cn
乳酸高是什么原因hcv9jop8ns1r.cn 耳朵里发炎用什么药好hcv9jop0ns5r.cn 舌头中间疼是什么原因hkuteam.com 羔羊是什么意思xianpinbao.com 窍是什么意思hcv8jop2ns2r.cn
百度