e-works数字化企业网  »  文章频道  »  产品创新数字化(PLM)  »  EDA

基于同步EDA工具的异步电路设计流程(下篇)

2013/5/12    来源:万方数据    作者:王友瑞  石伟  王志英  陆洪毅  苏博      
关键字:异步电路  设计流程  EDA工具  延迟匹配  
随着VLSI技术的迅猛发展与应用需求的不断提高,微处理器中的功耗、时钟偏移等问题越来越严重,异步电路及其设计方法受到广泛关注,异步电路设计缺乏通用商业EDA工具的支持,现有的基于同步EDA工具的异步电路设计方法存在复杂度高等问题,提出了一种新的异步电路设计流程。该流程充分利用现有同步EDA工具,通过采用多路虚拟时钟综合方法对电路进行逻辑综合,以及在后端实现时对异步控制通路进行定量延迟分析和精确延迟匹配,可以得到更加优化的电路。

基于同步EDA工具的异步电路设计流程(上篇)

2 设计实例

    为了验证本文流程的正确性和有效性,我们在UMC 0.18 μm工艺下设计实现了一款异步TTA(transport triggered architecture)微处理器内核,整个流程均利用现有同步EDA工具进行。

    2.1 异步TTA内核

    异步TTA内核是在同步TTA内核基础上进行设计的.它们具有相同的功能单元和指令集,异步TTA内核除了将同步TTA内核进行异步化设计外,还使用了一种数据源选择(data source selecting,DSS)技术来解决异步内核中数据相关及分布式的控制策略引起的执行错误问题。在同步TTA内核中,数据相关和冲突检测是由编译器负责的,硬件只需要直接运行调度好的代码.异步TTA内核流水线结构如图4所示,整个内核流水线由取指(IF)、译码(ID)、传输(MV)以及执行(EXE)4个阶段组成,以全流水方式工作.其中,EXE段包含多个功能单元,每个功能单元的流水线级数不尽相同。

异步TTA内核流水线结构

    图4 异步TTA内核流水线结构

    2.2 综合优化

    本节利用提出的多路虚拟时钟综合方法对异步TTA内核流水线进行综合,并与同步封装综合方法进行比较.综合主要针对异步数据通路。这里选取异步TTA内核流水线的IF,ID,MV以及EXE段的ALU单元来进行说明。ALU单元采用组合逻辑设计,占一级流水段,在进行综合时,设定各级流水段的综合目标变量初始值均为2.5ns。如果对某一级流水段进行综合得到的“slack”为负值,则将相应的综合目标变量增加0.5ns。

    图5(a)给出了虚拟时钟周期T分别设定为2.5ns,3ns,3.5ns和4ns的情况下,采用同步封装综合得到的各级流水段的延迟信息,从图中可以看出每级流水段的延迟各不相同,并且只有在T≥3.5ns时进行综合才能满足各级的时序要求,对于IF段,T设定为2.5ns和3 ns时的时序约束太紧,得到的“slack”为负值;而对于ID段、MV段和EXE段,T设定为3.5ns时的时序约束又太松,这种在每级流水段上施加相同的时序约束进行综合的方法显然不能使电路得到充分的优化。因此,本文在对异步内核流水线进行综合时,为每一级流水段设定自己的虚拟时钟约束,并利用脚本有选择地修改各级流水段的约束信息再次进行综合,直到每级流水段都满足时序要求,这样可以使得到的电路性能更优,采用多路虚拟时钟综合得到IF,ID,MV和EXE ALU)段的延迟分别为3.21ns,2.21ns,2.84ns,2.95ns,如图5(b)所示,为说明这种综合方法对电路性能和面积的影响,本文对采用两种综合方法得到的异步内核(不包含控制通路)的面积和延迟(最长流水线的延迟)进行了比较,结果如图5(c)所示,从图中可以看出,采用多路虚拟时钟综合得到的内核面积增加了1.5%,但其延迟减少13%左右。

逻辑综合结果

    图5 逻辑综合结果

责任编辑:程玥
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐