加速百万门级FPGA设计的策略
为了尽量提高百万门级FPGA及更复杂的SoC设计的效率,加快产品投入市场的速度,本文介绍改善HDL设计的几种设计策略及其扩展设计流程,包括加快整体仿真、验证、综合及实现速度的混合设计工具和IP内核复用的方法。
Michael O'Brien
产品销售经理
Aldec Inc.
近几年来,FPGA器件的规模迅速增长,单个FPGA芯片上实现的设计已超过一百万门。如此庞大的设计需要改善整个设计和验证过程,以避免放过设计中存在的潜在问题。
现在,百万门级设计一般采用硬件描述语言(HDL)设计方法。基于HDL的标准流程包括HDL设计、综合以及实现这几个步骤,这就要求在较小的器件(通常不大于1000门)上开始进行设计。当设计规模超过1000门的时候,除了仿真工具以外,还要采用其它一些工具,如设计输入、测试文档开发工具、代码覆盖工具,以及在某些情况下,需要硬件嵌入式仿真加速工具等。
提高百万门级FPGA开发速度的设计策略
为了提高设计效率,基于HDL的标准设计方法要在以下几个方面加以改善:
1.采用设计输入,及具有多种仿真模型的IP可复用方法(VHDL、Verilog、EDIF);
2.通过增量原型(incremental prototyping)和硬件嵌入式仿真(HESTM)技术提高仿真速度;
3.硬件和软件协同仿真以及采用编程语言接口(PLI);
4.验证和测试过程的自动生成;
5.包括设计输入、验证、综合及实现工具间接口的集成工具包;
6.设计小组的版本管理;
7.结合本地网络服务器和因特网服务器,完成长时间仿真、综合及实现,最后生成元件。
设计输入可增强成为具有复杂的HDL编辑器、电路块图形编辑器和状态机编辑器。这些工具自动将框图和状态机的描述转换成HDL代码,有助于开发源代码以提升设计速度
此外,HDL代码中EDIF元件具备的可直接示例和仿真等特点,也有助于缩短开发时间,进而有助于对IP内核与用EDIF网表描述的已完成的设计进行仿真。该方法解决了IP行为级模型仿真的问题,此时,设计者必须将IP内核的源文件加入设计中,并进行编译和示例说明,减少了许多与IP内核复用有关的问题。
许多数字应用系统包含硬件和软件两部分。这就要求在系统级仿真时必须测试硬件和软件之间的协同特性。这种类型的验证可采用Verilog PLI完成,此接口可连接DLL库中已编译的C代码,并直接在Verilog代码中使用其功能,以实现硬件和软件的协同仿真。由于硬件模型和软件程序进行仿真需要大量的计算,所以系统级仿真速度可能较慢。这种情况下,硬件加速验证显得十分必要。
加速验证可通过增量原型技术、硬件嵌入式仿真及测试文档自动生成来实现。生成的测试文档在仿真时可立即将实际结果和期望结果进行比较,并且可复用于后综合验证和时序验证。利用这些类型的测试和仿真器宏语言,综合和实现以后的验证可完全自动地由脚本实现。
硬件嵌入式仿真可极大地加速整个验证过程。这一技术便于FPGA和ASIC器件的增量设计验证,可将选定模块下载到FPGA中,在硬件和软件中进行部分仿真。设计模块完成行为级验证后,经过综合、实现,最终下载到加速器板上的FPGA中。HESTM技术支持安装在一台PC上的四个加速器板,它们都是PCI板卡。在HDL软件仿真器和HESTM(PCI)卡组成的HESTM环境中可以进行整个设计的仿真,这一环境能确保硅片上的模块与软件中仿真的模块之间的正确通讯。
功能仿真完成后,即使所有的测试都通过,设计者并不能确定设计的功能就完全正确,因为在对设计进行测试的时候,某项功能或功能组合可能未用到。为了确定测试进展的程度,可采用代码覆盖软件。代码覆盖测试可计算出测试过程执行的所有代码行,它还可检查设计代码中语句执行顺序的所有可能方式,以及检查表达式的执行情况。
网络资源有助于更有效地利用EDA工具进行一些远程工作。若要进行长时间的仿真,可将设计者的本地机连接到网络上的一台功能更强的计算机上,运行仿真程序。文件可采用FTP协议传输到任何终端。设计者可通过基于任务管理系统的HTML浏览器,远程监视运行进程。设计者还可通过电子邮件了解完成任务的情况。这种方法可为几个设计者远程运行同样的工具,这使软件许可证的利用率更高。所有的任务可像网络打印机那样进行排队。
如今,不同EDA工具供应商提供的工具包越来越大,但许多工具只提供上述功能中的一部分,目前尚无一种可以提供所有功能的工具,所以如何将它们集成到一起是一个难题。工具包的集成可通过Tcl/Tk脚本来实现,设计者易于进行接口,但需要对这些工具十分熟悉,能采用脚本语言开发一种集成的无缝设计环境。
HDL设计的扩展流程 图1与图2比较了基于HDL设计方法的标准流程和扩展流程。要在第一阶段即设计输入阶段有所改善,最有力的工具是替代结构化HDL代码的图形编辑器。通常设计者画出设计的结构和互连情况,然后再用结构化的VHDL或Verilog描述编写代码。通过图形编辑器,设计者无需绘图,可以直接在编辑器中描述,而且这种工具可自动产生结构化的HDL代码。
这类工具的工作与原理图输入工具十分类似。它能够以图形的方式实现元件(符号)之间的连接,直接在图上插入HDL语句和说明。大部分图形设计输入工具可采用自底向上和自顶向下的设计法,在构造元件时处理符号。现有元件或模块的符号可通过接口描述所表示的I/O来自动生成。
缩短产品上市时间的集成设计工具 Active-HDL4.1具有另外一种Code2 Graphics功能,可从已有的结构化描述中产生相应的图形。这一功能可用于检查连接和存档。
设计开发过程中,新的模块不断增加。每个模块分别进行测试和仿真,功能正确后,与其它模块相连接以集成入更大的系统,然后对整个系统进行测试和仿真。每当一个新的模块加入到系统中,必须对整个系统进行仿真,但是仿真的重点集中在新模块上。尽管其余部分已正常工作,但仿真器必须对设计整体仿真,从而延长了仿真过程。
采用HESTM技术时,也必须对整个设计进行仿真,但是RTL级验证过的设计部分已被导入FPGA,因此软件仿真器只对新模块进行仿真。由于已嵌入基板中的设计部分的仿真速度与设计规模无关,因而整体仿真时间大为减少。HESTM技术还可用来替代后综合仿真。与功能分析有关的设计均可在HESTM环境中得到验证。
通过采用HESTM技术,可将经过综合的很小一部分设计导入硅片。你只需对将放置到硅片的那个模块进行综合,并启动HESTM Wizard来配置HESTM环境。现在,不必采用由多芯片组成的独立硬件系统,就可用软件和HESTM来实现设计。图3说明了增量验证过程,以及对设计的某些部分进行硬件加速可节省的时间。
设计输入、仿真、综合和实现阶段之间的集成,极大地简化了整个过程。设计者无需运行不同的工具进行设计的仿真、综合和实现。Active-HDL仿真器就具备内建设计输入工具,且具有综合、实现工具的可配置接口。设计综合的无缝接口要求对设计过程所使用的综合工具进行配置。设计者可采用两种方法运行综合工具:1. 通过GUI调用综合;2. 通过由Aldec提供的Tcl脚本以批处理的模式执行。为了运行该工具,用户必须点击流程中的综合按扭。
Synopsys FPGA Express产生的综合结果,可通过后综合VHDL或Verilog网表进行验证。同样,可利用增量综合来加速综合过程的运行,开始时,必须从Aldec的GUI上调用综合工具,在FPGA Express中创建新的工程文件,接着,设计者可在FPGA Express中综合其设计并为模块级增量综合(BLIS)选择模块。在Active-HDL中修改文件时,综合工具将直接从Windows环境启动并自动打开最新的设计项目。综合工具仅仅重新综合修改过的模块,并不涉及未作修改的模块。
实现工具也要在流程管理器中指定。Active-HDL环境为不同的FPGA生产商提供不同的设计流程,某些生产商采用的流程必须在打开设计项目文件之前选定,合适的流程选定之后,设计者就可在流程设置中选择实现工具。
用户运行实现工具的方法与综合工具完全相同,即利用实现工具的GUI或批处理模式。仿真的最终输出格式可在实现的选项中选择。所生成的用于时序仿真的文件附加在设计浏览器的其他时序文件夹中。设计者可将后综合仿真中采用的测试基准用于时序验证。
FPGA设计中IP的选择策略使用IP内核是当今一种颇有价值的设计形式。利用现有设计概念对EDA供应商来说越来越重要。当然,IP内核需要升级,为采用新方法的设计工具做准备,以适应不同的仿真格式和标准。
这项要求成为选择适当工具的关键问题。设计者必须确定仿真的方法,还要处理许多不同的IP内核格式多样的问题,解决方法是进行混合仿真与综合,它能使设计者的设计项目文件以不同的格式来表示,如VHDL、Verilog和EDIF网表。这种新的方法可极大地加速设计过程,同时更加易于管理。
IP内核是用软件功能描述的硬件功能模块,它由面向对象的软件设计而成。数字硬件设计内核可通过因特网在公共网站上获得,或从IP内核设计企业购得。Alatek和Memec等公司均提供了高质量的IP内核,它们专为超大规模FPGA和ASIC设计提供功能构建模块。这些内核通常以EDIF文件格式提供,可方便地与设计者的Verilog和VHDL设计一起仿真,以合理的设计完成一百万门以上的SoC设计。
目前,因特网逐渐成为设计者获取EDA工具的有效途径,“租用设计工具”的方式正在兴起,像Synopsys这样的公司以“计时租用”方式运作,在EDA设计过程中的特定阶段,可为工程师提供可选工具。该服务避免了传统的现金或其它支付方式购买工具许可证的做法。在某些情况下设计者可能会选择这种服务。
本文结论为加速数字设计过程,工具及技术的集成可通过Active-HDL环境来实现。Active-HDL工具提供了设计输入、仿真和自动验证过程的完整无缝集成方案。自动产生的测试文档,在经过综合及实现后,可使仿真完全自动地进行。Aldec仿真器包含了图形化波形编辑器和测试文档自动生成器,可极大地加速验证过程。Tcl脚本可提供从Active-HDL的GUI连接到外部综合及实现工具的接口,从而使用户无需退出工具就可进行综合与实现。通过这一接口,设计者自动将必须的文件传递到这些工具中,从而节省设计时间。在长时间仿真的情况下,通过采用可直接与Active-HDL工具连接的“硬件嵌入式仿真”功能进行加速来提高仿真速度。Active-HDL使工程师能够在一个设计环境中完成复杂的混合设计。通过其EDIF网表仿真功能,设计者可在综合之前验证混合设计。
[此贴子已经被作者于2005-11-16 14:02:46编辑过]
[此贴子已经被作者于2005-11-16 14:05:37编辑过]
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |