智能流程简化可编程系统芯片设计
同时保留那些决定最终系统能否满足设计要求的功能。对于PSC流程,模拟功能的电气特征参数(如:信号完整性、A/D转换功能和耦合效应)均可在产品技术资料表中查到,并基于实际半导体器件的特征数据。基本的模拟开关行为包括输入预定标、微分增益、迟滞、A/D控制功能和输出行为等,都被抽象成粗略的数字行为模型,适合在数字仿真器中描述系统级的行为特征。
设计实例化
跟有些人猜测的一样,对复杂精细的系统进行设计实例化需要非常灵活且具备足够智能的“设计生成”环境,让设计人员快速入手和实施。基本上,这个设计环境将容许所需的资源导入设计环境中,以达到目标器件逻辑资源所允许的最大限度。由本身的图形配置器提供支持,这些非常灵活的资源可以被捕捉、配置,以及设计实例化,而所有操作均为简单的鼠标点击,无需直接编写HDL代码。与此同时,这种工具链创建了主干总线,将所需资源的互连及自动创建必要的控制机制。这些工序将由以图形化用户界面为基础的智能工具在背后完成,无需用户直接引导。这些工具专注于简便的使用及提供快速设计的开发能力。当然,它们不会排斥传统的HDL代码编程——对于那些习惯使用HDL的用户,以及需要最大限度地优化设计或需要大量设计定制的用户,HDL编程功能是不可或缺的。
验证
传统的混合信号ASIC开发遵从自下向上的方法。这种开发方法涉及两个独立的团队;一个开发数字部分,即编写RTL代码;另一个在晶体管层面实现模拟电路。对于验证而言,设计人员为了验证各种系统级行为如功能、性能和延时等,一般都使用基于Verilog-AMS或VHDL-AMS语言的高层全芯片仿真,这种方法需要很好地关联最终电路的模拟行为模型。然而,晶体管层面的仿真仍然需要,以便验证某些接口层问题、时序、信号完整性和功率。这也有助于避免模型和电路间的偏差及错误。最近几年,一类全新的开发工具应运而生,可让混合信号协同仿真环境验证给定SoC芯片中的混合信号部件。
在PSC开发流程中,并不需要混合信号仿真。器件中模拟功能的处理方式,非常相似于现成的分立组件。产品的资料表已提供了大量的模拟功能电气特性参数,并基于实际半导体的特征数据,象分立组件供应商提供的资料一样。由于在最终模型中抽出了细节性的模拟行为,这种模型完全能在全数字仿真器(如ModelSim)中完成系统级验证。在这种仿真测试平台上,模拟输入表示成一些实数值或数位向量值,通常由测试平台工具(如Synapticad WaveFormer)来生成。
基于这个抽象层面,用于混合信号FPGA的基本验证方法在本质上就与标准数字FPGA产品的验证方法相同。简言之,PSC设计人员在设计过程中一般需要完成如下步骤:
a) 在Libero工具中生成和集成系统构件;
b) 通过Synplify或Synplify PRO综合设计;
c) 使用ModelSim验证设计;
d) 使用Libero Designer将设计编译到Actel Fusion PSC中,以便进行后端实现;
e) 在ModelSim中运行时序反标注(back-annotated timing)功能来重新验证。
这个基本流程能让Fusion客户使用公认的方法,验证其混合信号PSC的系统级行为,并可在设计的任何阶段如综合前、综合后和布局后进行,而且与验证全数字芯片一样简单。熟悉Libero流程的设计人员不会看到任何重大变化,而呈现在新客户面前的是简单易懂的流程,可让他们快速简便地完成 Fusion技术到其系统的“融入设计”(design in)。这个流程将会执行仿真系统级行为所需的充分工作,并在给定的客户设计中以一组给定的仿真输入与数字系统中剩余部分的相互作用为基础。
结语
从概念上来说,SoC开发本身就需要多种专门技术,包括模拟设计、数字逻辑设计和系统/架构定义。不用说,随着集成度的提高,这种开发很快就变得非常复杂,而且,在FPGA开发中经常都会有一些逻辑/FPGA设计工程师并没有这方面深入的专门知识。FPGA的可编程性大大增强了系统的可用性,但同时也增加了另一个层面的复杂性。因此,需要使用智能化的系统级集成和验证工具来实现PSC。在适当的抽象层面进行系统级验证已经证明能够改善设计质量和提升设计团队的整体生产力。随着新的开发工具出现以支持这个流程,设计质量和生产力可望进一步提高。
- 基于DSP的宽带雷达多片流水分段脉压处理平台设计(08-02)
- 基于μCLinux的USB芯片FT245BL驱动程序实现(11-27)
- 全新英特尔至强处理器为主流用户带来关键任务应用平台(03-03)
- 基于DSP芯片的MELP声码器的算法实现 (03-26)
- TMS320F206外围电路典型设计 (04-17)
- 嵌入式系统的知识体系、学习误区及学习建议(04-25)