微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 填补网络 SoC 设计前端与后端验证的差距

填补网络 SoC 设计前端与后端验证的差距

时间:09-19 来源:3721RD 点击:

消除复杂网络 SoC 开发风险不再是遥远的目标;如今,所有设计团队都可以实现。

最近,笔者一直在写关于在芯片流片成功之前使用硬件加速仿真来验证网络片上系统 (SoC) 设计的益处的系列文章。在本专栏中,将介绍一种可填补相同网络设计中的前端与后端验证之间差距的新方法。

在开始详细介绍前,让我们先看下这一竞争激烈的细分市场趋势。由于云计算、大数据中心和移动应用等新市场的不断涌现,使得软件驱动的网络 (SDN) 架构得以大量采用。图 1 绘制了 SDN 市场趋势的年收入,预计在未来两年将增长 135%。

图 1.由于云计算、大数据中心和移动应用等新市场的出现,SDN 的采用持续高涨(信息来源:Lauro Rizzatti)

SDN 转而也大幅提高了设计复杂性、扩大了设计规模以及增加了端口数量。图 2 绘制了部分关键细分市场中的设计规模增长。

图 2.复杂性和门数量已随着新 SDN 应用而增加(信息来源:Lauro Rizzatti)

开发这些巨型 SoC 的设计团队早已不堪重负,而这种势不可挡的设计规模的剧增更为其带来诸多挑战。按重要性递减的顺序,这些挑战包括:

1.测试所有端口配置。

2.测量并符合性能和带宽预期。

3.演示设计支持各种规格的所有以太网 OSI 层协议

4.调试在硬件仿真中找出的硬件问题和实验室中的后端问题。

5.确保设计按预期通过软件重新配置/执行。

6.提供编译、下载和运行的快速周转时间。

7.最大程度地降低部署验证环境的成本/时间。

8.评估功耗并将其降至最低。

9.减小芯片的封装。

这些挑战已无法通过传统软件仿真工具或者形式验证工具解决。这并非意味着这些工具已经变得毫无用处。恰恰相反,它们是验证工具箱中的基本工具,但其部署只限于知识产权 (IP) 模块和子系统模块级别的验证范围内,这在现代的复杂 SoC 设计早期开发周期中是必不可少的,包括网络芯片。

在十亿门级的竞争舞台,只有硬件驱动的验证引擎可以应对这些挑战任务,符合紧凑的时间表,在高速发展的网络市场中,避免芯片发布延期所带来的潜在收益损失。

笔者之前的文章已多次提到过,在基于硬件的验证引擎中,硬件加速仿真已成为前端验证的最佳工具。现代硬件加速器拥有近乎无限的容量,可仿真最大型的设计,并且无需仪表/编译即可提供整体设计可见性和访问/控制,同时还支持高吞吐量以及快速、可预测的编译和调用时间。它可以通过对资源的最优化利用来容纳多个并发用户。它能以多个操作模式进行部署,从而执行多种验证任务,包括内电路仿真 (ICE) 和虚拟测试、低功耗验证、功耗估计、性能特征提取以及可测试性设计 (DFT)。

当使用多个端口验证网络 SoC 设计时 -- 比如 64 或更多 -- ICE 价值定位相比前十年已显著降低。ICE 环境需用速度适配器这样的外部硬件,作为快速真实的网络流量(数百兆赫)和相对低速的硬件加速仿真设计(一兆赫或几兆赫)的接口。随即会增加设置复杂性,提高功耗,且会降低可靠性。如此一来,设置的重新配置变得繁琐,并且部署起来很慢,把加速器的使用权限制于本地安装的单个用户,因而排除了远程访问。更糟的是,它让设计调试的再现性和重复性变得不确定,导致调试计划难以执行。

相反,设计团队正在从 ICE 设置中迁移到虚拟测试环境,从而消除任一硬件 -- 乃至 -- 所有硬件的依赖性,包括噪声、功耗、电缆、可靠性和相关成本。在实际硬件可用之前,可以通过使用软件和可综合的硬件模型的组合创建虚拟器件,以便通过该软件轻松进行重新配置。它们以硬件加速仿真速度运行,支持多个用户和多个项目,可远程访问,并且能在数据中心进行部署。

DAC 2016 专家组的 Guy Hutchison(Cavium 的助理副总裁,也是一名硬件工程师)说道:"对于我们的设计,我们仅采用虚拟技术。部分原因在于我们的设计本质 -- 对我们而言,并没有真正具有代表性的、能达到 100 千兆流量的目标。内电路仿真器方法对我们来说毫无价值,因此我们对所有的仿真均采用完全虚拟的方法。"

但是,虚拟模式需要创建虚拟测试环境,这是一项非凡的任务。就这方面而言,Mentor Graphics 公司已走在前列,开发了全面的复杂虚拟环境 VirtuaLAB,可以支持应用程序特定 SoC 设计的前端测试。在网络设计的情况下,VirtuaLAB 包括以太网数据包生成器和监视器 (EPGM),可生成、传输并监控被测设计 (DUT) 的以太网数据包。它能够配置 25GMII、50GMII、200GMII 和 400GMII。

每个 VirtuaLAB 支持多达 32 个端口。可以将多个 VirtuaLAB 系统进行组合,从而使得端口数扩展至 1,000 个以上。图 3 就测试

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top