EEJournal

专题文章
现在就订阅

UVVM:世界上#1的VHDL验证方法

我很高兴(尽管有些困惑)告诉你,在验证FPGA、ASIC和片上系统(SoC)设计方面,情况似乎越来越好。我之所以这么说,是因为上次我把注意力转向这个领域时,人们说一个复杂设备的设计和验证阶段分别消耗了总开发时间的30%和70%。相比之下,最近有人告诉我,这些数字现在更接近50%和50%,这意味着我们要么在验证方面做得更好,要么在设计方面做得更差。

您可能还记得,大约六周前,当我写下这些文字时,我在挪威的FPGA论坛上做了主题演讲(参见没发生什么,还是真的发生了?所有的改变!当超级计算机遇到啤酒Pong).当我在那里的时候,我参加了各种各样的演讲,其中一个是我的老朋友做的埃斯Tallaksen他是微软公司FPGA和空间技术的首席执行官、联合创始人兼总监EmLogic(如果你想知道,它代表的是“嵌入式逻辑”)

EmLogic是一个独立的嵌入式系统设计中心,特别是fpga。虽然EmLogic是一个相对较新的公司,于2021年1月1日成立,但它已经成为挪威和斯堪的纳维亚地区领先的FPGA设计中心。EmLogic还在FPGA设计和验证方面成为领先的培训提供商,在全球各地的公共教室、现场或在线开设课程。

除了设计咨询和服务,EmLogic还是一个验证IP和方法的提供商UVVM(通用VHDL验证方法),这是一个用于验证fpga和asic / soc的开源库和方法GitHub.此外,除了是FPGA论坛的发起人和主席,Espen也是UVVM的最初作者和架构师。

当Espen开始他的演讲时,他用一张包含了一些引用的幻灯片开场,包括“软件设计师用恐怖的眼光看待其他代码”和“RTL设定了糟糕的新标准”以及“大多数设计对另一个设计师来说几乎是无法理解的”。我必须承认,我同意所有这些引用,这是偶然的,因为原来Espen引用了我的书fpga设计战士指南

Espen说,很明显,我们必须进行大量的验证,但当涉及到创建验证套件、定义测试工作台和调试设计时,我们可以更加高效。

说句题外话,当我在2012年参加的第一届FPGA论坛上第一次见到Espen时,有一件事让我感到困惑,那就是他有苏格兰口音。我在最近的一次访问中想起了这一点。起初,我以为这可能是挪威人说英语时的发音方式。然而,事实证明Espen在格拉斯哥大学学习,所以这是一件让我担心的事情,但我们离题了……

当涉及到验证FPGA或ASIC/SoC设计时,您将围绕被测设计(DUT)拥有某种验证基础设施——将数据写入DUT的东西,从DUT读取响应的东西,以及控制不同测试和报告任何结果的东西。您希望从验证环境和解决方案中获得的关键方面是可读性、可理解性、可修改性、可维护性、可扩展性、可调试性和可重用性。

UVVM提高了质量和效率(来源:EmLogic)

我必须承认,当今超级复杂的FPGA和ASIC/SoC设计的验证不是我的专业领域,但我会试图传达一点关于这一切的暗示。我们将以Utility Library的形式从基础/入口级开始。

假设设计包括一个简单的中断控制器(IRQC)模块,如下所示。让我们假设这个控制器有一个时钟输入,一个异步复位,一个简单的总线接口(SBI)用于外部CPU到达它的内部寄存器,n个不同的中断源,结果中断到CPU。

测试排序器代码和记录日志的示例(来源:EmLogic)

UVVM实用程序库包含一堆函数和过程,可以用来构建一个测试平台来练习这个IRQC模块。我们从一个时钟生成器开始,它可以通过从Utility Library(灰色框中的语句)调用一个过程来实例化。接下来,我们创建测试排序器,它由一组过程调用(橙色框中的语句)组成。当测试序列运行时,结果显示在记录日志中(蓝色方框)。(请注意,这是一个简化的转录-还可以设置/显示前缀、消息id和范围。)

能够使用这些预定义的函数和过程构建测试平台,极大地简化了设计IRQC模块的人员的工作,并允许他们比必须自己创建测试函数和过程更快地验证模块。

请记住,这只是UVVM入口级的一个示例。接下来,我们有一个丰富的总线功能模型(BFMs),伴随着大量支持的接口(axis -light, axis - Stream, Avalon MM, Avalon Stream, UART, SPI, GPIO, I2C, SBI, GMII, RGMII,以太网……)这些软件也是开源的,免费的。

除了评估功能覆盖和规范覆盖之外,UVVM还拥有复杂的约束随机功能,包括向随机值添加权重的能力。

我担心我们只是触及了这个话题的表面,但我们已经达到了我可以有知识地谈论的边界。只需说明,您还可以设置检查DUT的同时活动,这意味着系统可以同时在多个接口上启动事务(或根据需要倾斜它们),以根除任何有问题的角落情况。

Espen大约在15或16年前开始研究UVVM。它在2015年首次以开源的形式发布,从那时起,它的使用就突飞猛进。

Mentor Graphics(现在的西门子EDA)使用了一家名为威尔逊研究每两年对ASIC/SoC和FPGA的发展进行一次调查。威尔逊研究公司的人会考虑很多不同的方面,比如有多少人在使用不同的语言,以及他们发现的错误类别。他们关注的一件事是有多少人在使用各种验证系统。在2020年的调查中,UVVM在VHDL验证方法中名列前茅。

FPGA验证方法,全世界,所有语言(来源:EmLogic)

2020年的调查结果显示,UVVM是全球VHDL验证的#1。Espen开玩笑说,大约20年前,有人告诉他VHDL正在消亡,他应该开始使用SystemC。如今,根据威尔逊研究公司(Wilson Research)的数据,全球超过50%的设计师使用VHDL。Espen说,在欧洲,这一数字在80%到90%之间。即使在Verilog和SystemVerilog的堡垒美国,VHDL也通常用于军事和航天项目。此外,UVVM是独立于语言的增长最快的验证方法,在2018年至2020年调查之间的两年里,其使用量激增了100%。

我在验证空间(没有人能听到你的尖叫)的英雄之一是布莱恩•贝利.我不认为说布莱恩是世界上最重要的核查权威之一是夸张的。事实上,我参加了一个关于SCAN设计的培训课程,这是Brian在大约40年前提出的(在那里时间流逝了吗?)我还没有机会和Brian谈论UVVM(我相信他知道这一切),但我会在最早的机会这样做。与此同时,我很想听听你对这一切的看法。

留下回复

有特色的博客
2022年12月14日
随着每一个新的工艺节点的出现,都需要更复杂的要求来确保硅的工作。……
2022年12月14日
快到新年了,像往常一样,CES(以前被称为消费电子展,但现在只叫它的首字母)将于1月5日至8日周四举行。Cadence将于1月5日至7日在那里。星期四的营业时间是上午10点到下午6点,上午9点到下午6点。
2022年12月13日
我们将分享数字化存储芯片设计和验证节省时间的四种方法,并探索先进存储设备的关键芯片设计和验证工具。数字技术可以加速内存设计和验证的4种方法首先出现在从…
2022年12月8日
这个世界准备好迎接下一个封装的变形了吗?

有特色的视频

通过端到端解决方案实现内存设计和开发的新范式

Synopsys对此

为了满足高性能计算、人工智能和汽车应用的需求,对高度定制的高性能存储芯片的需求正在推动对新的设计范式的需求,如DTCO、左移设计、数字化和可靠性设计。

了解有关内存解决方案的更多信息

特色粉笔谈话亚博里的电子竞技

NEUTRIK®FIBERFOX

逮老鼠的电子产品Neutrik

光纤技术在过去几年中呈指数级增长。如今,光纤技术在世界范围内越来越多的应用中占有一席之地。在本集Chalk Talk中,来自NE亚博里的电子竞技UTRIK®的Amelia Dalton和David Kuklinski探索了一种革命性的新型光纤技术,称为FIBERFOX。我们仔细研究了FIBERFOX带来的好处,为什么FIBERFOX的扩展光束技术使其不同于当今市场上的任何其他光纤技术,以及如何在您的下一个设计中使用FIBERFOX。

点击这里了解更多关于NEUTRIK FIBERFOX扩展光束光纤连接器的信息

Baidu