当有人找我谈论Arasan的一款新产品时,我遇到了来自任意定义局(Bureau of Arbitrary Definitions)的我最喜欢的困惑来源:我以为这是一个验证故事,而实际上它是一个验证故事。
如果你认为这两者听起来差不多,我总是喜欢通过定义来加强这种混淆验证作为证明你的设计是一个有效的实现设计规范,同时验证是一个行为验证您的设计在所需的设置下正常工作。(困惑吗?你是受欢迎的。)
我们在这些页面中讨论的大部分内容都是验证——确保与设计规范没有任何实现偏差。我们花在验证上的时间要少得多,即将设计放入其本机操作环境中,以查看它是否按预期工作。这通常是模拟器的领域,您可以在其中连接真实的系统组件或快速驱动真实的数据流量,以查看事情是如何工作的。
Arasan指出,这正成为协议栈在千兆比特(或更高)串行链路上通信的一个问题——模拟器无法跟上。它们可能能够处理物理层(例如,如果模拟器中有fpga,它们可能可以处理串行数据),但即使如此,协议堆栈的更高级别部分将被模拟,这意味着它们不能以高速运行。
他们说,对此的标准解决方案是在模拟器和用于验证设计的任何设备之间放置一个速率匹配单元。但是因为模拟器很慢,你最终要等很长时间——它当然不能反映真实的流量模式。此外,显然不是所有协议都有速率匹配的解决方案:例如,MIPI不能以这种方式处理。
因此,Arasan发布了一个本质上是一个小型测试器,它可以连接到高速原型板上,在没有中间速率匹配器的情况下测试设计。它有一个处理器,处理协议栈的顶层;然后被传送到一个FPGA,它处理堆栈的底部4层,并直接驱动到你正在测试的设计。
它们有不同的连接板,可以替换为不同的协议。是的,理论上你可以把它们结合起来,但是他们说很少有设计团队需要验证一个以上的协议:一个特定的连接只会在一个协议上运行。
你可以在他们的网站上找到更多信息新闻稿...