集成电路设计方法

文档序号:7111265阅读:288来源:国知局
专利名称:集成电路设计方法
技术领域
本发明涉及用于设计集成电路的方法,方法包括第一步骤,选择多个构建模块(building block)用于将希望的功能映射到集成电路设计上;第二步骤,在多个构建模块的第一和第二构建模块之间建立连接,以使得能够在第一和第二构建模块之间通信;和显示从执行第一步骤和第二步骤得到的集成电路设计的步骤。
正在进行的半导体尺寸的缩减已经并且仍将带来集成在集成电路(IC)的可用区域上的构建模块数目的增加。这增加了这种IC所需的设计工作,不仅因为需要向IC加入更多的功能,而且更重要地是因为集成构建模块数目的增加典型地也与互连密度的增加关联。后者会引入IC设计中的性能危害,因为IC设计中构建模块之间存在较长的互连将在信号传播和功耗上产生有害的影响。这正日益变得难以解决,因为增加的构建模块密度使得更难以经较短的互连相互连接各构建模块。未来IC技术例如深亚微米技术中引线时延将变为主要性能因子的事实将增大该设计复杂性的影响。
开始段落的设计方法可以说成是前端设计处理,例如其中设计希望的IC功能性态的处理。在该前端设计处理中,IC的功能通过设计语言例如C++中的算法规范来规定。结果,该规范作为合成工具的输入,合成工具通过选择构建模块和执行算法所需的构建模块之间的互连将所需的功能映射在硬件模板上。这种合成工具的例子由Adelante技术的电子设计自动(EDA)工具A|RT设计器提供,如在其网页http//www.adelantetech.com上作的广告,它是对设计超长指令字(VLIW)结构的数据路径特别有用的工具。在工具已经创建了这种模板以后,它通过在结构图中示意地描述模板来向设计者提供反馈;构建模块放置在一行中,并且互连环绕构建模块的行。虽然互连的实际长度没有在结构图中表示,但是该反馈允许设计者手工定义构建模块和为资源指定操作,因此是这种合成工具中的有用特征。
在已经完成前端设计以后,进入后端设计处理,这涉及IC布局。包括最小化硅实际状态和减少当前互连长度来优化IC的数据通信性能,例如通过平面规划算法。但是,后一任务完全不是无关紧要,其正随IC上集成的构建模块数目的增加日益变得困难。实际上,很可能在可预知的将来,该耗时的后端优化任务对于巨大数量的超大规模集成(VLSI)IC设计将不能优化地完成,就是因为优化问题变得过于复杂。此时,IC需在前端设计处理中重新设计,这导致IC及时上市时间(time-to-market)的不必要的大幅增加。
主要地,本发明的目的是提供一种在开始段落中描述的那种IC设计方法,能够减少设计后端中无法解决的优化问题的发生机会。
现在,实现发明的目的在于方法进一步包括,提供有关第一和第二构建模块之间互连长度的信息的步骤。该信息的有用性向IC设计者提供了前述设计结构图中IC设计的重要设计特性。如果存在构建模块之间的长互连,设计者能够得出后端处理将可能无法提供可接受的优化IC设计的结论,并且能够根据提供的有关互连长度的信息决定进行其它设计选择,例如在合成工具结构图中。这在VLIW IC设计领域中特别有用,因为经常要在指令级并行性级别,例如要在设计中集成的构建模块数,和复杂性,例如存在长的块到块互连之间进行折衷,其中长连接固有地连接达到IC设计中的并行高度。例如,如果对于设计者来说,显然选定算法的实施和相关平行性级别不能避免不能接受的长互连线的存在,那么设计者可以进行选择来降低平行性级别,例如通过合并或去除构建模块,或决定选择不同的算法实施,以便从设计中去除长互连。
在本发明的实施例中,提供互连信息的步骤包括以列出连接长度估计的表格形式提供信息。在该表格中,设计者能够容易地检测设计中是否存在不能接受的长互连,并且能够根据表格中提供的信息选择改变设计。
在本发明的另一实施例中,提供互连信息的步骤包括,通过以包括互连连接相对长度的显示的二维表示形式显示集成电路设计来提供信息。在该表示中,例如在已经发生后端优化以前,优选地在合成工具的结构图中向设计者提供了直观化的初步布局,这能够提供关于后端优化失败可能性的有价值的信息。
如果方法包括构建模块从二维表示中第一位置到二维表示中第二位置的设计者控制的重新分配步骤是有利的。该功能允许设计者重新分配具有与其它构建模块不希望的长连接的构建模块,其为设计工具实施的设计方法提供了重新设计的灵活性。例如,构建模块可以放置在另一构建模块的顶部,这可以被设计方法例如合成工具解释为IC设计中下一周期的设计约束。
如果通过拖放算法(drag-and-drop)提供设计者控制的重新分配的步骤则更有利。该方法本身是公知的,它允许设计者仅通过将构建模块从一个位置拖放到另一位置来改变IC的设计,使得IC的重新设计非常简单。
如果第一位置的构建模块在二维表示中和第二位置的构建模块互换则更有利。两个构建模块的交换保证了IC设计中所有互连都保持存在,并且实现了设计者驱动的IC布局优化。设计者能够斟酌构建模块的排列以便避免或减少IC设计中太长互连的存在。
如果方法包括通过构建模块和另一构建模块之间互连的设计者控制的选择为下一设计周期引入设计约束的步骤则也是有利的。不必要的互连的选择,通过手工、基于文本输入或通过从表格或从IC设计的二维表示来选择互连,能够通过完全禁止互连的存在或将互连限制到最大长度,用于在合成重新设计步骤中排除该互连的存在。
现在,发明的另一目的通过权利要求8所述的集成电路设计工具来实现,本发明的设计方法在设计工具中的结合使得IC设计者能够避免设计处理后端中的优化问题,这意味着该设计工具的使用将帮助设计者尽快获得可接受的IC设计。这是非常有利的,因为IC的及时上市在半导体市场中成为日益重要的参数。
参考相应附图更详细地并通过非限制示例来描述发明,其中

图1描述了现有设计方法的结构图;和图2描述了按照本发明的设计方法的结构图。
图1示意性示出了IC设计工具——A|RT设计者中IC设计的结构图100。构建模块121-129经其各自的输出连接互连线131-139。互连线131-139围绕构建模块121-129,并经分布寄存器队列140的寄存器反馈到构建模块121-129的构建模块的输入或外部连接,如指示输入/输出连接的缩写I/O表示的。显然,结构图100提供了有关构建模块121-129经互连线131-139互连的方式的有用信息,但是它没有提供有关互连线131-139长度的任何信息。现在,按照本发明,这可以通过用IC布局级别上的互连线131-139长度估计的正文表示扩展结构图100来改正,例如以弹出或下拉窗、表格的形式或其它表示形式。这允许设计者识别结构图100中潜在的性能危险,使得设计者因此能够改变设计,例如通过改变构建模块121-129执行的算法和其由内连接线131-139实现的互连结构。
往回参考图1示出了图2。相应的参考标号具有相同的意思,除非另外明确说明。在图2中描述了本发明的优选实施例。如图1所述的IC设计现在按照本发明表示在结构图200中。在结构图200中,构建模块121-129和其互连线131-139显示在模仿实际IC布局中构建模块121-129和互连线131-139的位置的二维表示中。要强调的是该表示不必完全对应IC的二维布局;只要结构图200的二维表示近似实际布局,视图200就能向设计者提供有关互连线131-139长度的有用信息。
结果,设计者能够选择根据结构图200提供的信息来改变IC设计。例如,通过将构建模块放置到构建模块121-129的第二构建模块顶部,可以用允许设计者移动构建模块121-129的构建模块并将其从第一位置移动到第二位置的功能来扩展结构图200。优选地,该功能通过拖放算法实施,虽然输入驱动的重新分配也是可行的。后者在二维表示用坐标系统来扩展时特别可行。这两个构建模块的位置可以立即互换,但这不是必须的。
这样,设计者可以象摆弄拼板玩具一样对待IC设计,可以交换构建模块以便减少互连线131-139的互连线长度。如果设计者没能成功地减少该长度,通过引入合并构建模块的流水线级、通过重写指定IC功能的算法或通过向IC设计合成加入约束,例如要求两个构建模块之间互连线的最大长度或完全禁止这些构建模块之间互连线的存在,他可以决定重新设计IC。可以通过文本驱动输入或通过将结构图中的互连线131-139表示为可选择的例如可点击的对象而图形选择结构图200中的互连来加入该约束。
要强调的是本发明的应用在VLIW处理器数据路径设计领域中特别有利,因为在该领域中,设计者在通过改变数据路径宽度例如指令级并行性量和通过改变数据路径中的构建模块来选择希望的IC算法功能的实现中典型地遇到很大程度的灵活性。本发明将帮助设计者选择不一定会造成IC设计后端中布局问题的数据路径的实现,这将减少在设计后端中前述布局问题会发生的机会。
应当注意,上述实施例说明而不是限制了发明,并且本领域技术人员将能够设计许多替代实施例而不脱离所附权利要求的范围。在权利要求中,任何置于括号之间的参考符号将不解释为对权利要求的限制。单词“包括”不排除权利要求中列出的以外的部件或步骤的存在。部件之前的单词“一个”不排除多个这种部件的存在。发明能够通过包括几个不同部件的硬件和通过适当编程的计算机来实施。在列举几个装置的装置权利要求中,这些装置中的几个可以包含在同一个硬件中。仅仅一定措施在相互不同的从属权利要求中叙述的事实不表示使用这些测量的合并是不利的。
权利要求
1.一种用于设计集成电路的方法,方法包括第一步骤,选择多个构建模块用于将希望的算法功能映射到集成电路设计上;第二步骤,在多个构建模块的第一和第二构建模块之间建立连接,以使得能够在第一和第二构建模块之间通信;和显示从执行第一步骤和第二步骤得到的集成电路设计的步骤,其特征在于该方法进一步包括提供有关第一和第二构建模块之间互连长度的互连信息的步骤。
2.如权利要求1所述的方法,其特征在于提供互连信息的步骤包括以列出连接长度估计的表格形式提供互连信息。
3.如权利要求1所述的方法,其特征在于提供互连信息的步骤包括通过以包括互连连接相对长度的显示的二维表示形式显示集成电路设计来提供信息。
4.如权利要求3所述的方法,其特征在于该方法包括构建模块从二维表示中第一位置到二维表示中第二位置的设计者控制的重新分配步骤。
5.如权利要求4所述的方法,其特征在于设计者控制的重新分配步骤是通过拖放算法实现的。
6.如权利要求4或5所述的方法,其特征在于第一位置的构建模块在二维表示中和第二位置的构建模块互换。
7.如权利要求1或4所述的方法,特征在于该方法包括通过构建模块和另一构建模块之间互连的设计者控制的选择为下一设计周期引入设计约束的步骤。
8.一种集成电路设计工具,工具包括第一装置,选择多个构建模块用于将希望的算法功能映射到集成电路设计上;第二装置,在多个构建模块的第一和第二构建模块之间建立连接,以使得能够在第一和第二构建模块之间通信;和显示装置,显示从第一装置和第二装置得到的集成电路设计,其特征在于设计工具进一步包括装置,用于提供有关第一和第二构建模块之间互连长度的互连信息。
全文摘要
提出了一种设计集成电路(IC)的设计方法和相应的集成电路设计工具。具有由多个互连线(131-139)互连的多个构建模块(121-129)的IC设计由模仿实际IC布局中的构建模块(121-129)和互连(131-139)的位置的二维表示(200)来表示。二维表示允许IC设计者估计互连线(131-139)的长度,这使得IC设计者能够在进入IC设计后端例如IC区域优化之前改变IC设计,从而得到更有效的IC设计方法。
文档编号H01L21/82GK1656486SQ03811573
公开日2005年8月17日 申请日期2003年4月25日 优先权日2002年5月23日
发明者B·德奥里维拉卡斯特鲁普佩 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1