设计约束条件的管理

来源:EDN电子设计技术 作者: 时间:2002-09-17 21:52

     竞争的加剧必然会导致产品设计周期的缩短,因此任何有助于提高工程团队生产效率的行为都是非常有价值的。
    
      当产品销售经理把一份技术规范交给一位工程师时,他(她)就确定了一套约束条件与特性。尽管“约束条件”一词含有限制的意思,但在工程领域里,约束条件和特性是指必须实现并得到验证的一种设计的特性。工程艺术涉及到既要解释市场指令,又要制定一套有助于生产最终产品的设计规则。约束条件有各种不同的类型。产品规范总是包括功能约束条件,用以描述一个产品应具备什么功能或者在某些情况下不应有什么样的功能。事实上,销售人员经常把该文件称为功能规范。随着IC和印制电路板制造技术的不断完善,性能要求、环境标准和可制造性指令变得越来越重要了,因此必须在设计周期内尽快地予以确定。
    
      遗憾的是,确定一种新产品的特性或者对现有产品的改进仍然靠手工操作来进行,这种手工操作是以电脑不容易分析的一种语言和格式编写成的文档为基础的。物理约束条件包括参数的名称及其预期值或参数值范围;在大多数情况下,你可以采用类似电子数据表的形式来定义物理约束条件。熟悉电子数据表和计算机程序的销售人员就能对文件进行分析,因此这种电子数据表可能成为产品规范不可分割的一部分。但是随着产品推出的速度越来越快,体积越来越小,这种方法必须不断演进,以处理设计师们面对的日益增加的复杂性。把特性和约束条件变为适合多种工具的输入参数时发生的差错是很难被发现的,,而且会带来巨额的设计和修补费用。差错未被发现的时间越长,费用就会增加得越多。
    
      工程师必须能同时对付跨越分层边界的诸多问题。产品特性不仅源于市场方面的要求文件,而且还源于制造方面的规范,甚至来源于EDA厂商,因为设计师必须考虑工具的局限性和工作特性。设计小组必须使功能特性与目标实现技术的实际要求和局限性相一致。工程师必须同时对付时序分析、信号完整性、串扰、配电和节电等问题。虽然你可以找到解决其中每一个问题的EDA工具,但是就其中一个问题所做的决定又可能会影响到另一个问题。现在再也不可能仅仅通过综合指令来满足所有的定时要求,或者把这些制造问题推迟到布局和布线阶段来解决。约束条件管理系统必须既支持自顶向下的分析,又支持自底向上的验证工具,并能跨越设计层次。
    
      一项设计的实现就是一个分解过程。工程师要优化在较高抽象层次上表达的各种结构和特性。这个过程必须以一种允许工程师将某一特性与其母结构相关联的方式来保留功能约束条件和物理约束条件。设计过程中的的每一步,你都必须整合任何一种约束条件管理系统,以迎接当今的各种挑战。这种系统必须能使工程师通过依据设计的现状显示特性状况的实时显示器来访问各种特性。设计师还必须能够捕获、管理和验证与特定工具无关的特性。否则,设计公司就失去了为给定的功能选择最好单点工具的自由,从而成为一家特定EDA厂商的俘虏。
    
      在描述一种能提供设计过程概况的工具时,EDA业界的大多数人都避免使用“设计框架”,而爱用“设计环境”或“设计舵舱”。框架是最好的术语,因为它会在你的脑海里描绘出Falcon Framework的景象。Falcon Framework是一种形成并支持设计过程的架构。EDA行业不应当害怕15年前进行的这种不幸的实验,而应该回过头来使用更合适的术语来描述这类工具。在Falcon Framework之后的这段时期内,数据库技术得到了明显的改善,设计师们对设计项目和分级开发方法之间的关系也有了充分的认识。
      
     遗憾的是,现有环境过多地以工具为中心,从而迫使设计师们把注意力集中到他们目前正在使用的工具上,而不是集中到他们正在开发的设计上。一个好的约束条件管理系统同时也是一个良好的设计管理系统。它以数据为中心,并独立于工具,从而使设计师们能把精力集中到设计的内容和要求上,而不是集中到工具和对工具的要求上。例如,你虽然可以使用一种工具来为你的产品制造并验证一个电源网络,但是必须了解你在设计决策时所使用的约束条件和规则。这样,处理配电决策对串扰或信号完整性等所造成的影响就更容易了。
    [page]  
     有了一个以数据为中心的设计环境,就意味着工程师不必担心设计约束条件或规则的格式。在这种情况下,各种标准就大有用处(附文“适用于约束条件管理的标准”)。如果每一种工具都以自己的方式来处理设计特性,那么把一种工具集成到设计环境中就会变得很复杂,有时会因为费用太高而不可行。如果在整个开发过程中,用户都能用标准的格式来表达工程数据,他们就可以很容易地把合适的工具集成在一起。这一步骤不仅可以提高设计工程师的生产效率,而且还可以促进EDA厂商之间正当的竞争。
      
     功能要求
      
     无论你的公司如何解释功能要求,但最重要的还是如何让设计工程师们能够容易地理解其内容。物理要求更容易被选取并应用于设计流程中的合适的部分。决定哪一种EDA工具使用某个给定的物理要求这一过程通常是很容易被理解的。工程师们可运用有关设计过程和使用现有EDA工具的经验来做出这种决定。行为约束很难成为设计过程的要素。一种新的学科——ESL(电子系统级)设计有助于定义产品的行为特性,并已初步被设计工程师们所接受。Dataquest公司(一个主要的EDA市场分析机构)看好这一行业的潜力,并预测在1998年到2005年期间,该行业收入的复合年增长率将达到36%。但是迄今为止,增长率却不太高,尽管该行业在缩短产品开发时间和提高产品质量方面具有巨大的潜力。人们接受ESL设计的速度缓慢的因素有两个:其一是缺乏一种用来定义约束和特性的标准语言;其二是各家EDA公司起初都把重点放在行为综合上。缺乏标准意味着适用于ESL设计的EDA工具各自为政,不易共同发挥作用。因为约束条件可能应用于一种以上的工具,所以标准的缺乏就会阻碍约束条件的生成和普及。
    
      像10年前的形式验证一样,行为综合也遇到了麻烦,因为结果不是最好的,而且工具亦很难被恰当地使用。当大多数的工程师设计的硬件比EDA 工具能生成的硬件效率更高时,EDA工具在市场上就会失宠。工程师们不再购买或使用EDA工具,甚至不再考虑购买同类的工具。就像所有开创性的工具一样,Synopsys公司的Behavioral Compiler也有它自己的问题。不幸的是,Synopsys公司是一家受人尊崇的综合公司,它仓促推出的这种产品使工程师们相信行为综合在大多数的情况下是不可能的,或者是没用的。你可能会争辩说,设计师们能对一种设计所进行的RTL(寄存器传输级)描述比用EDA工具做的描述更好。一个顶尖工程师的知识和经验是很难在软件程序中再现的。但是更快地得到相当的结果也是很宝贵的,况且RTL 综合已经取得了巨大成功。
    [page]
      Get2Chip公司是另一家用其Volare产品解决行为综合的EDA厂家,Volare产品的目标是在不同的抽象层次上提供综合。进行ESL设计的这部分工具,允许用户通过在模块、信号传输等待时间、RAM端口数、最佳操作定位、模块之间状态机、总线宽度、流水程度等之间进行各种组合,来探索这方面的设计。你可能会认为,这些操作与其说是综合,不如说是体系结构优化。因为Volare只接受用Verilog语言或Co-Design公司的Superlog语言编写的设计,所以它被市场接受的程度不大。Verilog在体系结构级并不是很有用,而Superlog又太新了,仍在演进之中。鉴于混合HDL(硬件描述语言)仿真程序被广泛地使用,EDA厂商没有支持针对体系结构设计的VHDL,而是为RTL产生了Verilog,这就让人吃惊了。
    
      为了综合一项设计,工程师们要确定约束条件,并要重新考虑行为综合的目的。因此,这类产品也许会同样经历形式验证正在经历的复苏。一个抽象层次很高的设计的语义学是很难理解的,因为设计意图是故意含糊不清的。如果行为综合致力于优化功能块、接口、约束条件和特性,并建立一种框架来维持基本体系结构特性和各个层次设计实现方法之间的关系,这样会更好一些。
    
      在过去的两年里,该行业关于C语言及其派生语言用于硬件设计写了许多文章,并进行了广泛的争论。就硬件设计而言,C语言和C++语言与Verilog和VHDL相比,并没有任何语义学或语法学上的改进。以C语言为基础的设计的引人入胜之处,只不过是用C语言实现的仿真速度比较快和能获得免费的C编译程序。令设计师感到遗憾的是,一旦设计用C语言来验证,你对于把表述转变为一种你能制造的产品的工具的选择范围就很窄,而且这种选择还依赖于厂商。所有用C语言作为输入语言的现有综合产品都需要这种语言的某种方言,而这种方言具有类似于HDL的那些硬件描述能力。
    
      因为HDL(如Verilog和VHDL)已很普及,所以大多数工程师都首先用RTL进行设计。VHDL能通过其断言结构和包结构来定义约束条件。
    
      Verilog的最新版本也把断言包含在该语言中,但是目前只有少数工具能支持它。设计的很多功能约束条件仍嵌入RTL代码中。为了在不进行费时的仿真情况下来检查功能约束条件的存在和实现方法的符合度,工程师们都使用形式验证工具,例如0-In、Real Intent和Verplex等公司提供的工具。这些工具允许用户静态地验证设计是否满足一定的约束条件。所以,如果你能把在原始产品规范中的约束条件自动地转换成形式验证工具所要求的断言,那将是很有用的。
    [page]
      印刷电路板设计的约束条件
    
      虽然Innoveda公司正在印刷电路板设计中率先使用HDL,但大多数工程师仍使用原理图输入法来开始印刷电路板的设计。IC的设计紧跟光学和制造技术的发展,并遵循摩尔定律;与此相反,印刷电路板设计涉及的技术领域要广泛得多。因此,设计师所面对的约束条件的类型就大不相同。对于大多数印刷电路板的设计师而言,约束条件可分为性能类和可制造性类。与性能有关的约束条件有信号传播延迟、时钟频率和功耗。制造约束条件包括印制连线、元件布局和元件类型。正在开发更先进印刷电路板的工程师们还必须处理许多电磁干扰问题。
      
     Ansoft公司提供了一种处理信号完整性的套件。当你考虑依赖于频率的寄生电气特性时,

相关文章

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子