数字芯片设计验证经验分享(第三部分):将ASICIP核移植到FPGA上——如何确保性能与时序

FPGA开发圈 2024-08-16 12:03

作者

Philipp Jacobsohn,SmartDV首席应用工程师

Sunil Kumar,SmartDV FPGA设计总



本系列文章从数字芯片设计项目技术总监的角度出发,介绍了如何将芯片的产品定义与设计和验证规划进行结合,详细讲述了在FPGA上使用IP核来开发ASIC原型项目时,必须认真考虑的一些问题。文章从介绍使用预先定制功能即IP核的必要性开始,通过阐述开发ASIC原型设计时需要考虑到的IP核相关因素,用八个重要主题详细分享了利用ASIC IP来在FPGA上开发原型验证系统设计时需要考量的因素。




在上篇文章中,我们分享了第二到第四主题,介绍了使用FPGA进行原型设计时需要立即想到哪些基本概念、在将专为ASIC技术而设计的IP核移植到FPGA架构上时通常会遇到的困难,以及为了支持基于FPGA的原型,通常会对ASIC IP核进行的一些更改。本篇文章是SmartDV数字芯片设计经验分享系列文章的第三篇,将继续分享第五、第六主题,包括确保在FPGA上实现所需的性能和时钟两个方面的考量因素。

作为全球领先的验证解决方案和设计IP提供商,SmartDV的产品研发及工程应用团队具有丰富的设计和验证经验。在国产大容量FPGA芯片和IP新品不断面市的今天,SmartDV及其中国全资子公司“智权半导体”愿意与国内FPGA芯片开发商、RISC-V IP和其他IP提供商、集成电路设计中心(ICC)合作,共同为国内数字芯片设计公司开发基于本地FPGA的验证与设计平台等创新技术与产品。




主题5:我们如何确保在FPGA上实现所需的性能?

当已经在ASIC上实现的IP核被移植到FPGA中时,解决性能问题至关重要。在具有高时钟频率的ASIC上运行的电路,在原型上可能必须进行调整,以达到运行所需的时钟频率。甚至可能需要以较低的时钟频率或降低复杂性来运行电路。这里以PCIe接口为例,这样的接口在物理上是用ASIC中的几个通道(lane)来实现的,但在FPGA中可能必须限制为单个通道。

另一种解决方案是使用被称为“降速桥(speed bridge)”的电路。这种电路能够降低以高时钟速度输入数据流的频率,然后馈送至FPGA中以较低时钟速度运行的IP核进行读取。这时在IP核的输出端需要另一个电路,因为输出数据流必须重新相应地提高时钟。否则,输入和输出的数据将不会与电路设计的其余部分同步。

这样的解决方案在技术上非常复杂,并且通常只在硬件模拟器或专用ASIC原型设计平台中提供。两者的成本都是极高的,因此遵循前面描述的电路改变路径通常更有意义:实现适合FPGA的IP核,例如使用单通道PCI接口而不是在ASIC中通常使用的四通道。当然,这意味着IP核制造商在将ASIC的功能移植到FPGA的目标架构上时需要付出额外的努力;但结果是,FPGA的复杂性和资源占用程度都降低了,并且可以期望实现更高的时钟频率。

通常还需要使RTL代码适应FPGA特定的结构。相关的例子有乘法器、移位寄存器和存储器。FPGA具有所谓的“硬宏(hard macro)”,可以有效地实现复杂的电路。如果去构造一个由逻辑单元和寄存器组合而成的功能等效电路,而不是提供硬连线乘法器,这将导致一种带有许多“逻辑级别”上的实现,并且只能在FPGA上低效地映射。这反过来又导致可实现的时钟频率大大降低。ASIC是不会提供这种预先定义结构,因此必须调整RTL代码以使FPGA逻辑综合工具有机会去识别将要实现的功能。否则,有关该函数标识的信息(例如,乘法器、移位寄存器或存储器)可能会丢失。

同样,重要的是要确保主IP输入和输出的时钟是干净的。这是确保通过使用FPGA上提供的寄存器对物理输入和输出进行寻址的唯一方法。如果做不到这一点,它就不太可能满足时钟到输出规则的时序(tCO约束)要求。使用寄存的输入和输出通常是一种良好的设计实践,但必须注意要确保引入了良好电路设计这一要求。

图4:对于可靠的器件运行,诸如遵循时钟域交叉规则等良好的设计实践至关重要。

良好的设计实践是至关重要的。遵循时钟域交叉规则(CDC)可以支持可靠的器件运行,并避免发生时序违规。作为IP核的制造商,您有义务根据电路实现的通用规则开发您的产品。在具有一个以上时钟域的电路中,应特别注意避免亚稳态(metastable state)。从一个时钟域干干净净地过渡到另一个时钟域至关重要。为了实现这一点,必须在每种情况下选择最合适的变量。这可以是上面展示的通过寄存器级的简单同步,也可以根据需要通过更复杂的电路实现。一种可靠方法的案例是使用FIFO存储器。


主题6:在时钟方面必须加以考量的因素有哪些?

将IP核从ASIC移植到FPGA上时的另一个要点是时钟分布。这是指IP核中包含的时钟结构,如果电路有多个内部使用的时钟域,并且在IP核中生成所需的时钟,则该时钟结构的实现必须兼容FPGA。为了能够在FPGA上无故障地运行电路,同步时钟分布是必不可少的。事实上,这是避免过多的时钟偏移(clock skew)和不可预测的时钟延迟的唯一方法。这意味着内部生成的时钟既不是波纹时钟(从FF时钟分频器产生的时钟信号),也不是门控时钟(从组合逻辑门中派生的时钟,如多路复用器)。这种结构并不可靠,因为在时钟分布中会出现不可预测的延迟。

FPGA具有专门的时钟网络来分配时钟信号,以确保在整个芯粒(die)上没有明显的偏移。如果因为使用派生时钟而不使用这些时钟网络,这不仅会导致时序问题,还会导致故障。一方面,不能保证在寄存器逻辑上可以保持已设置时间,这是因为时钟信号在分配到所有寄存器中后难以计算的延迟。另一方面,不能保证时钟信号到达寄存器时钟输入端时的速度,会比数据信号到达用于电路实现的顺序单元的“D输入”端更快,这反过来又会导致在保持时间方面出现违规行为。

与ASIC设计相反,FPGA存在一个根本问题。在ASIC库中,为所有组件都定义了最短和最长时长。另一方面在FPGA中,时序分析只计算“情况最坏的时间”——即最大延迟。正因为如此,数据信号也可以用比时序分析中的估计值更短的时间分配:因此,数据信号可以比时钟信号更早出现在寄存器中。为了解决这个问题,在可编程逻辑模块中经常使用一种兼容FPGA的时钟分布。不是使用许多不同的、彼此之间有明确联系的时钟信号,而是使用一个单一的时钟信号,并从其派生出使能信号(而不是分频时钟)。然后使用这些使能信号来实现所需的时钟域,结果是时钟域之间都是物理同步。

IP核内时钟分配的另一种可能性是使用锁相环/延迟锁相环(PLL/DLL),FPGA都有相应单元供开发者使用,他们也可被用于时钟生成。有必要使电路去适应目标架构,从而确保一个兼容的(同步)时钟分布。FPGA中的时钟分配要求与ASIC中的时钟分配要求不同。为了可靠地运行电路,可能需要更改IP核的RTL代码。理解这一点是重要的,即使完全相同的功能已经在ASIC上成功实现,情况亦是如此。此外,还需要提供特别用于FPGA的逻辑综合和P&R约束。

例如:如果使能信号被用于提供不同的时钟域,则所有的时钟控制单元(如FF、存储器)都要连接到一个主时钟上。这个时钟通常具有系统中最高的时钟频率。对于运行速度稍微比主时钟慢的时钟域来说,必须定义所谓的多周期约束。否则可能导致整个系统无法达到所需的时钟频率。在没有提供适当约束的情况下,时序估计假设所有时钟域都必须达到主时钟定义的系统时钟频率。当然,现实中并非如此;一大部分电路根本不需要达到这个频率,因为它们是通过使能逻辑控制的。反过来,缺少约束将导致时序违规。因此,在创建打算映射到FPGA中的电路时,就应该特别注意提供合适的逻辑综合和P&R约束。

即使在IP核具有多个时钟域的情况下,必须注意确保时钟比率是被明确地进行定义;在FPGA的启动阶段中,其设计是确保电路功能在定义的时间点覆盖所有的时钟域,并且通过使用一个合适的时钟生成器和适当的时序约束来避免时钟之间的偏移。

图5:PLL/DLL可用于在多时钟设计中创建一个已定义的启动序列。(图片来源:SmartDV)

PLL/DLL的用途并不局限于调偏、频率合成和时钟操作。另一个应用是以这种方式去设计FPGA的启动序列,电路功能在所有时钟域的规定时间内都能得到保证。PLL上电后自动锁定;无需额外重置。只有当时钟稳定时,复位才会解除。这在具有多个时钟域的电路中是必不可少的。

当然,这种预防措施只有在时钟彼此同步的情况下才有必要。在这种情况下,就需要通过相应的逻辑综合约束来定义相关时钟域的确切比例。这不仅需要提供带有相应设置脚本的RTL代码,还需要提供将IP核集成到电路中的所有必要的时钟约束和时序特例,如多周期路径和假路径约束。

需要注意的是,如果一个电路包含多个时钟,不仅要特别注意时钟结构,还要特别注意复位分布。如果没有特别注意到同步复位域,就不会以违反时序要求而终止运行,但可能导致电路故障。

图6:如果一个电路包含多个时钟,必须同时特别注意到时钟和复位分配。

为了无故障地使用IP核,时钟域的同步是必不可少的。在分配复位信号时,需要对复位域交叉采取适当的预防措施。


接下来:


本系列文章的目标是全面分享经验,帮助读者利用ASIC IP来实现完美的FPGA验证原型,在前两篇文章中讲述了了解ASIC IP与FPGA验证原型的区别并提前做相应规划和调整之后,本篇文章介绍了我们如何确保在FPGA上实现所需的性能,以及在时钟方面必须加以考量的因素。接下来将介绍剩下的两大主题:如果目标技术是FPGA而不是ASIC,那么需要如何测试IP核的功能?设计团队还应该牢记什么?欢迎关注SmartDV全资子公司“智权半导体”微信公众号继续阅读。

最后,SmartDV在利用8个主题进行相关介绍和分析之后,还将提供实际案例:用基于FPGA的方法来验证USB 3.2 Gen2x1 Device IP,包括:

USB 3.2 Gen2x1 Device IP:实现、验证和物理验证

USB 3.2 Gen2x1 Device IP的实现挑战


未完待续

了解更多关于SmartDV和智权半导体的信息,请浏览:www.smart-ip.cn,或发邮件到:chinasales@smart-ip.cn

如希望立即阅读全文英文版,或者尽快了解结论“如何做到鱼与熊掌兼得?”,请点击“阅读原文”跳转到SmartDV网站。也可发邮件到以下电子邮箱索取:chinasales@smart-ip.cn


作者简历:Philipp Jacobsohn

Philipp Jacobsohn是SmartDV的首席应用工程师,他为北美、欧洲和日本地区的客户提供设计IP和验证IP方面的支持。除了使SmartDV的客户实现芯片设计成功这项工作,Philipp还是一个狂热的技术作家,乐于分享他在半导体行业积累的丰富知识。在2023年加入SmartDV团队之前,Philipp在J. Haugg、Synopsys、Synplicity、Epson Europe Electronics、Lattice Semiconductors、EBV Elektronik和SEI-Elbatex等担任过多个管理和现场应用职位。Philipp在瑞士工作。


作者简历:Sunil Kumar

Sunil Kumar是SmartDV的FPGA设计总监。作为一名经验丰富的超大规模集成电路(VLSI)设计专业人士,Sunil在基于FPGA的ASIC原型设计(包括FPGA设计、逻辑综合、静态时序分析和时序收敛)和高速电路板设计(包括PCB布局和布线、信号完整性分析、电路板启动和测试)等方面拥有丰富的专业知识。在2022年加入SmartDV团队之前,Sunil在L&T Technology Services Limited担任过项目经理和项目负责人职位。Sunil在印度工作。




关于智权半导体

智权半导体科技(厦门)有限公司是SmartDV Technologies™在华设立的全资子公司,其目标是利用SmartDV全球领先的硅知识产权(IP)技术和产品,以及在地化的支持服务来赋能中国集成电路行业和电子信息产业。目前,SmartDV在全球已有300家客户,其中包括十大半导体公司中的七家和四大消费电子公司。

SmartDV于2007年由经验丰富的ASIC设计专业人员迪帕克·库马尔·塔拉、杜尔加·拉克什米·塔拉和卡维塔·塔拉·哈里多斯在印度创办。自成立以来,SmartDV一直专注于IP领域并不断推出广受市场欢迎的IP产品,这得益于我们在集成电路IP领域内发展出来的独具创新的技术与方法。

通过将专有的SmartCompiler™技术与数百位专家工程师的知识相结合,SmartDV可以快速、经济、可靠地定制IP,以实现您独特的设计目标。因此,无论您是为下一代SoC、ASIC或FPGA寻找基于标准的设计IP,还是寻求验证解决方案(VIP)来测试您的芯片设计,您都会发现SmartDV的IP非常容易集成,并在性能上可力助您的芯片设计实现差异化。

了解更多关于SmartDV和智权半导体的信息,请浏览:www.smart-ip.cn



FPGA开发圈 这里介绍、交流、有关FPGA开发资料(文档下载,技术解答等),提升FPGA应用能力。
评论
  • PLC组态方式主要有三种,每种都有其独特的特点和适用场景。下面来简单说说: 1. 硬件组态   定义:硬件组态指的是选择适合的PLC型号、I/O模块、通信模块等硬件组件,并按照实际需求进行连接和配置。    灵活性:这种方式允许用户根据项目需求自由搭配硬件组件,具有较高的灵活性。    成本:可能需要额外的硬件购买成本,适用于对系统性能和扩展性有较高要求的场合。 2. 软件组态   定义:软件组态主要是通过PLC
    丙丁先生 2025-01-06 09:23 29浏览
  •     为控制片内设备并且查询其工作状态,MCU内部总是有一组特殊功能寄存器(SFR,Special Function Register)。    使用Eclipse环境调试MCU程序时,可以利用 Peripheral Registers Viewer来查看SFR。这个小工具是怎样知道某个型号的MCU有怎样的寄存器定义呢?它使用一种描述性的文本文件——SVD文件。这个文件存储在下面红色字体的路径下。    例:南京沁恒  &n
    电子知识打边炉 2025-01-04 20:04 23浏览
  • 自动化已成为现代制造业的基石,而驱动隔离器作为关键组件,在提升效率、精度和可靠性方面起到了不可或缺的作用。随着工业技术不断革新,驱动隔离器正助力自动化生产设备适应新兴趋势,并推动行业未来的发展。本文将探讨自动化的核心趋势及驱动隔离器在其中的重要角色。自动化领域的新兴趋势智能工厂的崛起智能工厂已成为自动化生产的新标杆。通过结合物联网(IoT)、人工智能(AI)和机器学习(ML),智能工厂实现了实时监控和动态决策。驱动隔离器在其中至关重要,它确保了传感器、执行器和控制单元之间的信号完整性,同时提供高
    腾恩科技-彭工 2025-01-03 16:28 161浏览
  • 影像质量应用于多个不同领域,无论是在娱乐、医疗或工业应用中,高质量的影像都是决策的关键基础。清晰的影像不仅能提升观看体验,还能保证关键细节的准确传达,例如:在医学影像中,它对诊断结果有着直接的影响!不仅如此,影像质量还影响了:▶ 压缩技术▶ 存储需求▶ 传输效率随着技术进步,影像质量的标准不断提高,对于研究与开发领域,理解并提升影像质量已成为不可忽视的重要课题。在图像处理的过程中,硬件与软件除了各自扮演着不可或缺的基础角色,有效地协作能够确保图像处理过程既高效又具有优异的质量。软硬件各扮演了什么
    百佳泰测试实验室 2025-01-03 10:39 139浏览
  • 在测试XTS时会遇到修改产品属性、SElinux权限、等一些内容,修改源码再编译很费时。今天为大家介绍一个便捷的方法,让OpenHarmony通过挂载镜像来修改镜像内容!触觉智能Purple Pi OH鸿蒙开发板演示。搭载了瑞芯微RK3566四核处理器,树莓派卡片电脑设计,支持开源鸿蒙OpenHarmony3.2-5.0系统,适合鸿蒙开发入门学习。挂载镜像首先,将要修改内容的镜像传入虚拟机当中,并创建一个要挂载镜像的文件夹,如下图:之后通过挂载命令将system.img镜像挂载到sys
    Industio_触觉智能 2025-01-03 11:39 113浏览
  • 物联网(IoT)的快速发展彻底改变了从智能家居到工业自动化等各个行业。由于物联网系统需要高效、可靠且紧凑的组件来处理众多传感器、执行器和通信设备,国产固态继电器(SSR)已成为满足中国这些需求的关键解决方案。本文探讨了国产SSR如何满足物联网应用的需求,重点介绍了它们的优势、技术能力以及在现实场景中的应用。了解物联网中的固态继电器固态继电器是一种电子开关设备,它使用半导体而不是机械触点来控制负载。与传统的机械继电器不同,固态继电器具有以下优势:快速切换:确保精确快速的响应,这对于实时物联网系统至
    克里雅半导体科技 2025-01-03 16:11 165浏览
  • 本文介绍Linux系统更换开机logo方法教程,通用RK3566、RK3568、RK3588、RK3576等开发板,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。制作图片开机logo图片制作注意事项(1)图片必须为bmp格式;(2)图片大小不能大于4MB;(3)BMP位深最大是32,建议设置为8;(4)图片名称为logo.bmp和logo_kernel.bmp;开机
    Industio_触觉智能 2025-01-06 10:43 21浏览
  • 随着市场需求不断的变化,各行各业对CPU的要求越来越高,特别是近几年流行的 AIOT,为了有更好的用户体验,CPU的算力就要求更高了。今天为大家推荐由米尔基于瑞芯微RK3576处理器推出的MYC-LR3576核心板及开发板。关于RK3576处理器国产CPU,是这些年的骄傲,华为手机全国产化,国人一片呼声,再也不用卡脖子了。RK3576处理器,就是一款由国产是厂商瑞芯微,今年第二季推出的全新通用型的高性能SOC芯片,这款CPU到底有多么的高性能,下面看看它的几个特性:8核心6 TOPS超强算力双千
    米尔电子嵌入式 2025-01-03 17:04 16浏览
  • 光耦合器,也称为光隔离器,是一种利用光在两个隔离电路之间传输电信号的组件。在医疗领域,确保患者安全和设备可靠性至关重要。在众多有助于医疗设备安全性和效率的组件中,光耦合器起着至关重要的作用。这些紧凑型设备经常被忽视,但对于隔离高压和防止敏感医疗设备中的电气危害却是必不可少的。本文深入探讨了光耦合器的功能、其在医疗应用中的重要性以及其实际使用示例。什么是光耦合器?它通常由以下部分组成:LED(发光二极管):将电信号转换为光。光电探测器(例如光电晶体管):检测光并将其转换回电信号。这种布置确保输入和
    腾恩科技-彭工 2025-01-03 16:27 158浏览
  • 本文继续介绍Linux系统查看硬件配置及常用调试命令,方便开发者快速了解开发板硬件信息及进行相关调试。触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。查看系统版本信息查看操作系统版本信息root@ido:/# cat /etc/*releaseDISTRIB_ID=UbuntuDISTRIB_RELEASE=20.04DISTRIB_CODENAME=focalDIS
    Industio_触觉智能 2025-01-03 11:37 138浏览
  • 根据Global Info Research项目团队最新调研,预计2030年全球封闭式电机产值达到1425百万美元,2024-2030年期间年复合增长率CAGR为3.4%。 封闭式电机是一种电动机,其外壳设计为密闭结构,通常用于要求较高的防护等级的应用场合。封闭式电机可以有效防止外部灰尘、水分和其他污染物进入内部,从而保护电机的内部组件,延长其使用寿命。 环洋市场咨询机构出版的调研分析报告【全球封闭式电机行业总体规模、主要厂商及IPO上市调研报告,2025-2031】研究全球封闭式电机总体规
    GIRtina 2025-01-06 11:10 26浏览
  • 车身域是指负责管理和控制汽车车身相关功能的一个功能域,在汽车域控系统中起着至关重要的作用。它涵盖了车门、车窗、车灯、雨刮器等各种与车身相关的功能模块。与汽车电子电气架构升级相一致,车身域发展亦可以划分为三个阶段,功能集成愈加丰富:第一阶段为分布式架构:对应BCM车身控制模块,包含灯光、雨刮、门窗等传统车身控制功能。第二阶段为域集中架构:对应BDC/CEM域控制器,在BCM基础上集成网关、PEPS等。第三阶段为SOA理念下的中央集中架构:VIU/ZCU区域控制器,在BDC/CEM基础上集成VCU、
    北汇信息 2025-01-03 16:01 173浏览
  • 在快速发展的能源领域,发电厂是发电的支柱,效率和安全性至关重要。在这种背景下,国产数字隔离器已成为现代化和优化发电厂运营的重要组成部分。本文探讨了这些设备在提高性能方面的重要性,同时展示了中国在生产可靠且具有成本效益的数字隔离器方面的进步。什么是数字隔离器?数字隔离器充当屏障,在电气上将系统的不同部分隔离开来,同时允许无缝数据传输。在发电厂中,它们保护敏感的控制电路免受高压尖峰的影响,确保准确的信号处理,并在恶劣条件下保持系统完整性。中国国产数字隔离器经历了重大创新,在许多方面达到甚至超过了全球
    克里雅半导体科技 2025-01-03 16:10 121浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦