如何通过RTL分析、SDC约束和综合向导以更快的速度推出更出色的FPGA设计
大多数FPGA设计人员都充满热情地开展专业化问题解决和创造性工作,当然,他们工作压力也相当大,工作流程也非常单调乏味。幸运的是,EDA公司和FPGA厂商不断开发新的工具和方法,推进繁琐任务的自动化,帮助设计团队集中精力做好创造性工作。下面我们就来看看FPGA工具流程的演进发展,了解一下现代FPGA团队是如何利用RTL分析、约束生成和综合导向来减少设计迭代的。
如果您已经是一名FPGA设计专业人士,那么将拥有辉煌的职业发展前景,因为越来越多原需ASIC实现的设计现已改用FPGA。随着新一代芯片工艺技术的推出,设计ASIC的成本正呈几何级增加。与此同时,FPGA厂商则能利用最新工艺技术实现新一代产品,且不会让客户承担过重的成本负担。
但不容乐观的是,FPGA设计相当复杂,需要跟ASIC流程一样复杂的工具流程,这往往需要整个设计团队的共同努力才能完成,而不能光靠一名设计人员。因此,FPGA设计团队在着手ECO或新项目之前应认真分析现有的工具套件。让人高兴的是,新一代EDA工具如雨后春笋般涌出,可助他们一臂之力。设计人员可选择采用标准数据格式且易于安装和使用的工具,简化流程集成工作,而且能够在选定的平台(不管是Windows还是Linux)上实现本机运行。
FPGA工具流程的发展演进
这些年来,FPGA设计日趋复杂,工具流程也随之发展,而且越来越像ASIC流程。上世纪90年代,FPGA流程(如图1的流程A)跟当时的简易ASIC流程一样,最初以RTL为基础,并采用综合及布局布线工具。随着设计变得进一步复杂化,FPGA团队在流程中增加了时序分析功能,帮助客户确保设计能按指定的频率运行。今天的FPGA已经发展为庞大的系统平台,设计团队通常要通过RTL分析来最小化设计迭代,并确保设计能够实现相应的性能目标。
简而言之,由于今天的FPGA设计项目非常庞大复杂,所以设计人员需要想尽一切办法更好地了解设计的规模和复杂性,以便更好地控制流程中的工具,加速设计上市进程。现代FPGA设计团队正在采用一种新型方法,那就是在整个设计流程中贯穿约束机制。我们不妨看看当下最流行的、现已得到赛灵思最新Vivado流程支持的一种约束方法——Synopsys设计约束(SDC)格式,以及了解如何通过SDC让设计项目受益