半导体集成电路及其设计方法

文档序号:7936208阅读:739来源:国知局

专利名称::半导体集成电路及其设计方法
技术领域
:本发明涉及对在半导体集成电路的异步时钟域之间的数据传输(交接)中发生的电路工作异常进行检测并救济的技术。
背景技术
:半导体集成电路由以相位和频率不同的各种时钟进行工作的多个同步电路构成,将以共用时钟进行工作的电路部分称作时钟域。需要在不同的时钟域之间进行数据传输,以往,异步时钟域之间的数据传输是采用直接连接以不同的时钟工作的数据发送方触发器和数据接收方触发器的构造来进行数据传输的。在这种构造的情况下,有时引起被称作"亚稳定(metastable),,的问题。亚稳定是在接收方触发器的时钟转变的同时改变数据值的情况下产生的,接收方触发器的输出进行有限时间振荡,其间该值是不确定的。当该数据传送到后级的逻辑电路时,引起错误或不可靠的工作。作为其对策,采取在接收方触发器的后级追加触发器而成为双緩沖的对策。由此,即使在接收方触发器中数据不确定,也能够防止向后级的逻辑电路传送不确定的数据。亚稳定状态一般设为到下一个时钟沿之前是稳定的,所追加的触发器的输出将已稳定的数据输出。另外,在触发器的时钟转变的同时改变数据值的情况下,存在与亚稳定问题不同的、输出不表示正常值的问题。这是由于在建立保持时间(setupholdtime)中存在接收数据的变化点时不知道取得变化前数据和变化后数据中的哪一个而发生的。该问题用上述的双緩沖对策是不能应对的。对于该课题,通过采用控制数据的变换定时的数据变换电路和使用了数据緩冲装置的信号交换电路,不会在6建立保持时间中存在接收数据变化点这样的情况下产生"数据的错误锁存",实施了可靠地进行数据传输的对策。例如,专利文献1涉及数据变换电路,公开了如下这样的数据变换电路,即当在异步时钟间进行数据的变换时,通过控制数据的变换定时,使变换时不发生数据错误。另外,专利文献2公开了经由数据緩冲装置在异步时钟域间传输数据的传送方法及装置。专利文献1:日本特开平8-237232号公报专利文献2:国际公开第03/039061号
发明内容但是,在异步数据传输中,除了上述问题之外,还存在应取得的数据在发送到接收方之前发生变化而用接收方的触发器不能取得数据的"数据丢失"的问题。关于这个问题,数据原本未发送到是问题所在,其是与以往解决的课题不同的课题。如果使用数据变换电路和信号交换电路,则能够比较安全地进行异步数据的传输。但是,难以根据由电路资源的再利用而产生的时钟域之间数据传输标准的限制和异步传输位置的多少来进行电路修正等,因此有很多不能采用这种数据传输电路构造的情况。根据以上的理由,异步传输通常几乎是具有直接连接发送方触发器和接收方触发器这样的构造的情况。这种异步传输构造依赖于时钟之间的定时,不会保证准确地传输数据,所以具有上述"亚稳定"、"数据的错误锁存"、"数据丟失,,的问题,在开发中进行验证是必须的。该验证在RTL设计阶段通过逻辑模拟和电路数据的构造验证来实施,在掩膜订购前发现所有的电路工作异常,且完成对所有的电路工作异常的电路修正,以此为前提推进开发。但是,在设计阶段,很难彻底地预测最终商品上可产生的相位偏差,当前不能实施设想了多种时钟相位关系的验证。其结果,在芯片评价时或商品设置(set)评价时发现电路工作异常,产生掩膜的重新制作,结果,导致产生掩膜修正费用,这已成为课题。本发明用于解决上述课题,其目的在于提供一种电路构造,即使在芯片评价时、或设置商品开发时也能够监视在异步时钟域之间的数据传输中是否发生电路工作异常,在发现电路工作异常的情况下能够救济电路工作异常而不会进行掩膜的重新制作。为了达成上述目的,本发明的半导体集成电路是在以不同的时钟工作的异步时钟域之间进行数据传输的半导体集成电路,其特征在于,例如具有如下那样的异步异常检测电路和异步异常救济电路。即,异步异常检测电路具有将彼此为异步的时钟信号和与数据传输相关联的信号作为输入信号并判断是否满足所希望的信号条件的异步异常判断部。另外,异步异常救济电路具有用于在不满足能够正常地进行数据传送的条件时修正异步传输位置的信号状态以使满足所希望的信号条件的异步异常救济部。根据本发明,即使在难以进行完整验证的异步传输部中,在设计阶段不能进行异步传输位置的充分验证,在开发芯片内残留有异步异常的情况下,也能够利用异步异常检测电路在评价芯片时、商品设置时容易地检测异步异常。而且,即使在评价芯片时、商品设置评价时发现电路异常的情况下,也能够通过使异步异常救济电路变为有效来修复异常位置(异常之处),而不进行电路数据的修正和掩膜的重新制作图1是表示本发明的异步传输部中的基本电路结构的图。图2是表示异步异常检测电路的基本内部结构的图。图3是表示异步异常救济电路的基本内部结构的图。图4是表示异步数据传送电路的图。图5是图4的数据传送工作正常时的时序图。图6是图4的数据传送工作异常时的时序图。图7是表示判断是否满足抽样定理的异步异常检测电路的结构8例的图。图8是表示使用了控制信号的异步数据传送电路的图。图9是图8的数据传送工作正常时的时序图。图IO是图8的数据传送工作异常时的时序图。图11是表示进行数据变化点校验的异步异常检测电路的图。图12是表示利用触发器延长发送数据长度的异步异常救济电路的图。图13是表示图12的异步异常救济电路变为有效时的时序图。图14是表示利用数据存储电路延长发送数据长度的异步异常救济电路的图。图15是图14的异步异常救济电路变为有效时的时序图。图16是表示检测并救济亚稳定异常的异步数据传送电路的图。图17是表示图16中的亚稳定异常检测电路的结构例的图。图18是表示图16中的亚稳定异常救济电路的结构例的图。图19是表示由扫描链构成图2中的输出部时的结构例的图。图20是表示具有历史存储功能的异步异常救济电路的图。图21是表示控制异步异常检测电路和异步异常救济电路的系统结构例的图。图22是表示安装有异步异常检测电路和异步异常救济电路的半导体集成电路的初始启动例程(routine)的例子的图。图23导体集成电路的设计环境例的图到半导体集成电路中的设计流程例的图才示号^兌明101异步异常检测电路102异步异常救济电路201异步异常判断部202输出部301异步异常救济部302救济切换部303救济电路控制部401数据发送方触发器402数据接收方触发器701发送数据变化检测电路702接收时钟计数器电路703发送数据存储电路704比较器801数据发送方触发器802数据接收方触发器1101发送数据存储电路1102比较器1204~1209数据延迟触发器1402数据存储电路1601数据发送方触发器1602、1603数据接收方触发器1604亚稳定异常检测电^各1605亚稳定异常救济电路1701发送数据变化检测电路1702发送数据存储电路1703接收时钟计数器电路1704比较器1801异步异常救济部1802救济电路控制部1803救济切换部1804~1806亚稳定应对触发器1901~1904扫描触发器1905数据输出控制电路2001异步相关信号历史存储部2100半导体集成电路2101、2102时钟域电路2103微型控制器单元(MCU)具体实施例方式以下,根据附图详细说明涉及半导体集成电路的电路验证方法的本发明的实施方式。《实施方式1》图1表示本发明的半导体集成电路内的异步传输部的基本电路结构。101是检测异步传输的电路异常的异步异常检测电路,102是救济异步异常的异步异常救济电路。异步异常检测电路101采用将发送数据、时钟以及控制信号等异步传输相关信号组Asyn—SIG—II作为输入,并输出异步异常信息ERROR—SIG—I和ERROR-SIG-0的结构。异步异常信息ERROR-SIG—I是在半导体集成电路的内部使用的信息,异步异常信息ERROR—SIG—是被输入到半导体集成电路的外部的信息。异步异常救济电路102采用将发送数据、时钟、控制信号等异步传输相关信号组Asyn—SIG—12和上述异步异常信息ERROR—SIG—I作为输入,并输出救济处置后的异步传输相关信号组Asyn—SIG—O的结构。异步传输相关信号组Asyn—SIG—II和Asyn—SIG图2是表示异步异常检测电路101的基本内部结构的图。其包括针对预先定义的为正常传输数据而应满足的信号条件来判断输入信号是否满足所希望的信号条件的异步异常判断部201;和在不满足信号条件的情况下将异步异常信息输出到外部的输出部202。ERROR—SIG—X是从异步异常判断部201发送到输出部202的异步异常信息。ii图3是表示异步异常救济电路102的基本内部结构的图。其包括用于在各信号状态不满足能够以异步传输正常地进行数据传送的条件时修正异步传输位置的信号状态以满足所希望的信号条件的异步异常救济部301;使该异步异常救济部301对电路异常位置为有效、无效的救济切换部302;以及生成并输出通过管理并掌握救济状态来控制救济电路的控制信号的救济电路控制部303。首先,异步异常检测电路101利用判断部201来判断在异步传输中是否满足应满足的信号条件。在信号状态不符合应满足的信号条件的情况下,异步异常检测电路101利用输出部202输出异步异常信息ERROR—SIG—O和ERROR—SIG—I。所输出的异步异常信息ERROR一SIG一I被输入到异步异常救济电路102。在接收到异步异常信息的救济电路102中,由救济电路控制部303生成控制信号,由救济切换部302使异步异常救济部301为有效。由此,能够进行异步异常的修正。《实施方式2》对以下结构进行说明在实施方式1所示的异步异常检测电路101中检测各异步相关信号是否满足用于在接收方触发器接收数据之前发送数据不会丢失,而由接收方触发器可靠地接收数据的发送时钟、接收时钟以及发送数据应满足的条件。图4表示从高速时钟域向低速时钟域的异步数据传送电路,401是数据发送方的触发器,402是数据接收方的触发器。另外,CLK-A是发送时钟,DATA—A是发送数据,CLK—B是接收时钟,DATA—B是接收数据。两个触发器401,402以异步的时钟进行工作,两个触发器401,402之间异步地传输数据。图5表示图4的数据传送工作为正常时的时序图。另外,图6表示图4的数据传送工作为异常时的时序图。可知在图5中,发送数据DATA—A在足够长的期间被保持,所以数据正常地被传送到数据接收方的触发器402,而在图6中直到接收时钟CLK-B的上升沿为止发送数据DATA—A发生了变化,所以数据没有正常地被传送到数据接收方的触发器402。在异步数据传输中,为了可靠地接收发送方数据,必须是发送数据宽度>接收时钟周期的关系,当在上述关系中将收发的各时钟周期和时钟周期数作为参数来表现发送数据宽度的条件,将各时钟周期和时钟周期数变形时,需要满足如下关系式发送数据的周期数^(接收时钟周期+发送时钟周期)/发送时钟周期…(式1)如果周期比为1:1.2(发送接收)时,则发送数据的周期数为2.2以上,发送数据的值在3个发送周期内不能变化。在本发明中,将(式1)的条件称作"抽样定理"。图7表示检测是否满足上述关系的电路结构例。图7的异步异常检测电路101包括检测发送数据的变化点的发送数据变化检测电路701;对接收方触发器的时钟进行计数的接收时钟计数器电路702;暂时保持数据变化时刻的发送数据DATA—A—Pl的发送数据存储电路703;以及将发送时钟CLK—A、接收时钟计数值CNT-B、存储在发送数据存储电路703中的数据变化时的发送数据DATA一A—P2以及最新的发送数据DATA—A作为输入的比较器704。发送数据DATA-A、发送时钟CLK—A以及接收时钟CLK—B相当于图1中的Asyn—SIG—II。当发送数据变化检测电路701检测出发送数据DATA—A变化时,利用复位信号RST使接收时钟计数器电路702复位。接收时钟计数器电路702的计数值CNT—B是以发送周期为单位示出保持有发送数据DATA—A的期间。接收数据变化检测电路701使接收时钟计数器电路702复位时,将此时刻的发送数据DATA—A—PI暂时存储到发送数据存储电路703。存储在发送数据存储电路703的数据DATA—A—P2被保持到下一次校验开始为止。比较器704是在从发送数据DATA—A发生变化时刻到存储到发送数据存储电路703中的发送数据DATA—A—P2和发送数据DATA—A满足(式1)的条件的发送时钟周期期间,比较数据变化时的发送数据DATA—A—P2与最新的发送数据DATA—A的值是否一致。如果数据不一致时,判断为发生异常,输出包括错误信息和不足的时钟周期数的信息的异步异常信息ERROR—SIG-I和ERROR—SIG-O。《实施方式3》对以下结构进行说明在实施方式1所示的异步异常检测电路101中检测各信号是否满足用于在带控制信号的触发器之间的异步数据传送中由接收方触发器可靠地接收数据的条件。图8表示使用控制信号时从高速时钟域向低速时钟域的数据传送电路,801是数据发送方的触发器,802是数据接收方的触发器。两个触发器801、802以异步的时钟进行工作,表示数据的有效性的控制信号CNTL—B被断言(assert)时,接收方触发器802在接收时钟CLK—B的上升沿定时将从发送方触发器801传送来的数据进行锁存。图9表示图8的数据传送工作为正常时的时序图。另外,图10表示图8的数据传送工作为异常时的时序图。在图9的例子中,以控制信号CNTL—B被断言的下一个接收时钟CLK—B的上升沿为基准,在接收方时钟周期内前后1周期的期间,发送数据DATA—A未发生变化。因此,可知数据正常地被传送到接收方触发器802。但是,在图10的例子中,以控制信号CNTL—B被断言的下一个接收时钟CLK—B的上升沿为基准,在接收方时钟周期的前后1周期的期间,发送数据DATA—A发生变化。在这种情况下,在实际电路中由于信号的物理延迟和时钟波动,有时数据没有基于定时正常地被传送到接收方触发器802。为了使用这种控制信号CNTL—B在异步时钟域之间可靠地接收发送方的数据,必须是以接收方控制信号CNTL—B发生变化的下一个接收时钟CLK-B的上升沿为基准,在接收时钟前后1周期期间发送数据DATA—A未发生变化。在本发明中,将是否满足该条件的确认称为"数据变化点校验"。图11表示检测是否满足上述关系的异步异常检测电路101。接收时钟CLK—B、控制信号CNTL-B、发送数据DATA—A相当于图1中的Asyn—SIG-Il。图11的异步异常检测电路101包括预先存储接收时钟1周期前的发送数据的发送数据存储电路1101;和将最新的发送数据DATA-A、保持在发送数据存储电路1101中的发送数据DATA—A—R以及控制信号CNTL—B作为输入、在接收时钟CLK—B的上升沿的定时进行发送数据DATA—A与接收时钟1周期前的发送数据DATA—A-R的比较的比较器1102。比较器1102是在控制信号CNTL—B变为有效时,在下一个接收方时钟沿的检测后进行保持在发送数据存储电路1101的发送数据DATA—A—R与最新的发送数据DATA—A的比较。然后,如果数据一致,则进而在下一个时钟沿再与发送数据存储电路1101所保持的发送数据进行比较。此时,同时还确认控制信号CNTL-B是否仍然有效。如果数据不一致时、或者在比较时控制信号CNTL—B变为无效时,为发生异常,输出包括异常发生的定时的异步异常信息ERROR—SIG—I和ERROR—SIG—0。比较器1102在控制信号CNTL—B变为无效时结束比较。《实施方式4》对在实施方式1所示的异步异常救济电路102中通过延长数据信号长度来救济异步异常的结构进行说明。如实施方式2所说明的那样,在发送数据没有在足够的期间被保持的情况下,有时数据没有正常地被传送。为了防止该情况,需要延长发送数据长度。图12表示使用了数据延迟触发器的延长发送数据长度的异步异常救济电路102的例子,其包括串联连接有多级的以发送时钟CLK—A进行工作的数据延迟触发器1204~1209的异步异常救济部301;在异步异常救济时,生成并输出数据线切换控制信号SEL的救济电路控制部303,该数据线切换控制信号SEL将向接收方触发器输入的输入数据线DATA—A2的连接从发送方触发器的输出数据线DATA-A切换到数据延迟触发器的输出数据线DATA—AF1~DATA—AF6中的任意一个;以及由选择器构成的救济切换部302,该选择器以发送方触发器的输出数据线DATA—A和数据延迟触发器的输出数据线DATA—AF1~DATA—AF6为输入,并将数据线切换控制信号SEL作为控制信号来选择接收方触发器的输入数据线DATA_A2。在异步异常救济部301中,数据延迟触发器1级能够以发送时钟周期使数据延迟1个周期。如图12那样,串联连接有6级时,能够以发送周期使数据延迟6个周期。在图12中,作为例子,示出了连接有6级的数据延迟触发器1204-1209的情况,但连接级数设为针对要延长的数据长度任意设定的级数。能够通过将数据延迟触发器1204~1209的输出信号中某一个作为接收方触发器的输入数据来延长发送数据。救济电路控制部303将从异步异常检测电路101输出的异步异常信息ERROR—SIG—I作为输入、并根据该信息生成用于选择数据延迟触发器1204~1209的输出的数据线切换控制信号SEL。另外,救济电路控制部303将发送方触发器的输出数据线DATA—A作为输入,观察DATA—A,若为空闲状态,则提供用于数据延迟触发器1204~1209复位的信号RST。发送方触发器的输出数据线DATA—A相当于图1中的Asyn—SIG—12,DATA—A2相当于图1中的Asyn—SIG-O。图13表示检测异步异常、图12所述的异步异常救济电路102变为有效时的时序图。如实施方式2中说明的那样,当所发送的数据DATA—A到下一个接收时钟CLK—B的上升沿之前发生变化时,数据没有正常地被传送到数据接收方的触发器。检测该状态的异步异常检测电路101输出异步异常信息ERROR-SIG—I。该异步异常信息ERROR-SIG-I比0大时表示异常,其值表示正常地传送数据所要求的发送数据的延长周期数。接收到ERROR-SIG—I的救济电已延长的数据长度与所要求的延长周期数相加后的值,将该值作为数据线切换控制信号SEL而输出。在图13中,所要求的数据延长周期为1周期,过去已延长的数据长度为0,数据线切换控制信号SEL选择DATA-AF1。由此,如DATA—A2所示那样,以发送时钟CLK—A延迟1周期后的DATA—AF1的输出被输入到接收方触发器,数据被延长了1个周期。该异步异常救济电路102不仅是应用于实施方式2,还可作为与实施方式3组合的救济电^各来应用。《实施方式5》对以下情况的结构进行说明在实施方式4所示的通过延长数据信号长度来救济异步异常的异步异常救济电路102中,与串联连接有多级数据延迟触发器的结构不同,使用一个数据存储电路来延长数据信号长度并救济。图14表示使用一个数据存储电路1402来延长发送数据长度的异步异常救济电路102的例子,其包括由数据存储电路1402构成的异步异常救济部301,该数据存储电路1402在发送数据丢失时为向接收方补充数据,与发送时钟CLK—A同步而预先暂时存储发送数据DATA—A;救济电路控制部303,在救济时生成并输出将接收方触发器的输入数据切换为数据存储电路1402的输出数据线的控制信号SEL,而且在进行发送数据的救济时对发送方时钟域电路进行传达,使得在发送数据的救济中暂时停止下一个数据发送;以及在发送数据的救济时切换路径以使得将存储在数据存储电路1402的数据DATA—AMI输入到接收方触发器的救济切换部302。图15表示检测异步异常、图14所述的异步异常救济电路102变为有效时的时序图。如实施方式4中说明的那样,当所发送的数据DATA—A在下一个接收时钟CLK—B的上升沿之前发生变化时,数据没有正常地被传送到数据发送方的触发器。检测到该状态的异步异常检测电路101输出异步异常信息ERROR—SIGJ。该异步异常信息ERRORSIGI比0大时表示异常,该值表示正常传送数据所要17求的发送数据的延长周期数。图15的情况表示不足2周期的情况。当接收异步异常信息ERROR-SIG—I时,救济电路控制部303生成在发送周期为2周期期间选择存储于数据存储电路1402的发送数据的控制信号SEL。另外,同时在发送周期2周期期间生成控制信号STOP,该控制信号STOP对发送方时钟域电路进行传达使得在发送数据的救济中暂时停止下一个数据的发送。由此,发送数据能够正常地被传送到接收方触发器。《实施方式6》对以下结构进行说明在实施方式1中,检测当接收方触发器的时钟转变的同时数据值发生变化时,接收方触发器的输出进行有限时间振荡,其间该值变得不确定的"亚稳定"的异步异常的异步异常检测电路和异步异常救济电路。图16表示在异步数据传送电路中检测并救济亚稳定异常的电路结构,其包括发送方触发器1601;接收方第一级触发器1602;为应对亚稳定而连接的接收方第二级触发器1603;将发送数据DATA—A、接收时钟CLK—B、接收方第二级触发器的输出DATA—B作为输入、并输出亚稳定异常信息ERROR-SIG-I的亚稳定异常检测电路1604;以及将亚稳定异常信息ERROR—SIG—I作为输入、并救济亚稳定异常的亚稳定异常救济电路1605。DATA—B2是救济处理后的接收数据。亚稳定异常检测电路1604监视在异步数据传送中是否发生由亚稳定引起的数据传送异常,在发生亚稳定异常时输出亚稳定异常信息ERROR—SIG—I和ERROR—SIG-O。另外,亚稳定异常救济电路1605将亚稳定异常信息ERROR—SIG—I作为输入,当发生亚稳定异常时救济亚稳定异常。图17是进一步详细说明亚稳定异常检测电路1604的结构例的图。其包括检测发送数据DATA-A的变化的发送数据变化检测电路1701;预先暂时存储发送数据DATA—A发生变化时的数据的发送数据存储电路1702;从发送数据变化时开始对接收时钟CLK-B进行计数的接收时钟计数器电路1703;以及比较接收方第二级触发器的输出DATA—B和存储在发送数据存储电路1702的数据变化时的发送数据DATA—A—Y的值的比较器1704。发送数据变化检测电路1701在检测发送数据DATA—A的变化时,使该发送数据DATA—A存储到发送数据存储电路1702。与此同时,利用复位信号RST使接收时钟计数器电路1703的计数进行复位。由此,同时,接收时钟计数器电路1703开始对接收时钟CLK一B进行计数。比较器1704将最新的接收数据DATA—B、从发送数据存储电路1702输出的发送数据DATA-A—Y以及从接收时钟计数器电路1703输出的计数值CNT作为输入。比较器1704预先在内部保持用于应对亚稳定而连接的触发器插入级数的值,当该插入级数与1相加后的周期数和计数值CNT—致时,比较最新的接收数据DATA-B和从发送数据存储电路1702输出的发送数据DATA—A—Y,确认一致的情况。如果数据不一致,则认为已发生亚稳定异常,输出异步异常信息ERROR—SIG—I和ERROR—SIG—0。图18表示救济亚稳定异常的亚稳定异常救济电路1605的结构例,其包括串联连接有多级的亚稳定应对触发器1804~1806的异步异常救济部1801;输出控制信号SEL的救济电路控制部1802,该控制信号SEL将要输出到图16的救济处理后的接收数据DATA—B2的信号从接收方触发器的输出数据DATA—B切换为通过亚稳定应对触发器1804~1806输出的数据线DATA—AG1~DATA—AG3;以及按照该控制信号SEL通过选择要输出到接收数据线DATA一B2的数据的选择器来实现的救济切换部1803。救济电路控制部1802在接收异步异常信息ERROR—SIG—I时,生成控制信号SEL,将从DATA—B到DATA—B2的输出路径切换为从DATA—B经由DATA一AG1~DATA-AG3中某一个的路径。《实施方式7》说明实施方式1(图2)中的将异步异常信息输出到外部的输出部202的一例。图19是表示由扫描链构成了将异步异常信息输出到外部的输出部202时的结构例的图。图19的异步异常检测电路101包括针对为正常地传输数据而应满足的预先定义的信号条件来判断输入信号是否满足所希望的信号条件的异步异常判断部201;和将异步异常信息输出到外部的输出部202。输出部202包括与扫描线SCAN-LINE连接的扫描触发器1901-1904、和控制数据输出的数据输出控制电路1905。当由异步异常判断部201检测异步异常时,数据输出控制电路1905使半导体集成电路的工作中止并生成切换到测试模式的控制信号STOP—RUN。当半导体集成电路切换到测试模式时,数据输出控制电路1905将从异步异常判断部201输入的异步异常信息ERROR—SIG—X分成ERROR—SIG—01ERROR—SIG—ON的位,在扫描触发器1901-1904中进行设定。接着,为了将扫描触发器19011904中所设定的异步异常信息ERROR—SIG—01-ERROR—SIG—ON输出到外部,生成设定为扫描模式的控制信号SCAN—ON。由此,扫描链进行工作,通过该扫描链将异步异常信息输出到外部。《实施方式8》对以下结构进行说明在实施方式1的异步异常检测电路101中还具有用于为调试而在某一定期间存储异步传输相关信号组Asyn—SIG—II和Asyn—SIG—12的信号状态的历史(履历)的存储单元。图20是表示还具有存储元件的异步异常检测电路101的结构例的图。变成在图2的异步异常检测电路101的结构中追加了异步相关信号历史存储部2001的结构。异步相关信号历史存储部2001由存储元件构成,在异步异常检测的同时,在一定期间保存异步传输相关信号组Asyn—SIG—II的信号历史。成为如果超出存储容量时,则对旧历史进行改写更新来保存信号历史的结构。从异步相关信号历史存储部2001输出的异步相关信号历史信息DEBUG—SIG-X被输入到输出部202,能够经由输出部202作为调试信息DEBUG-SIG-O输出到外部。《实施方式9》对实施方式1中说明的、安装有异步异常检测电路101和异步异常救济电路102的半导体集成电路的控制方法进行说明。图21是表示在安装有异步异常检测电路101和异步异常救济电路102的半导体集成电路2100中控制异步异常检测电路101和异步异常救济电路102的系统结构例的图,由异步异常检测电路101、异步异常救济电路102、第一时钟域电路2101、第二时钟域电路2102、控制整个系统的微型控制器单元(MCU)2103构成。MCU2103能够利用软件通过控制线D—CONT对异步异常检测电路101进行任意控制,通过另一控制线R—CONT对异步异常救济电路102进行任意控制。图22表示使用MCU2103执行的、安装有异步异常检测电路101和异步异常救济电路102的半导体集成电路2100的初始启动例程的例子,其包括使异步异常检测电路101为有效的检测电路有效化工序2201、进行初始测试的初始测试处理工序2202、在存在异步异常时使异步异常救济电路102为有效的救济电路有效化工序2203、以及在初始测试处理结束后使异步异常检测电路101为无效的检测电路无效化工序2204。《实施方式10》对实施方式1中说明的用于将异步异常检测电路101和异步异常救济电路102组装在半导体集成电路的设计流程例进行说明。图23是表示用于设计半导体集成电路的设计环境例的图。设计环境包括设计用终端2301、存储器程序库2302、标准单元程序库2303、电路IP2304、异步程序库2305、以及设计数据库2306。通常不包括异步程序库2305,但为了组装本发明的异步异常检测电路IOI和异步异常救济电路102而新追加了异步程序库2305。图24是表示用于将异步异常检测电路101和异步异常救济电路102组装到半导体集成电路的设计流程例的图。其包括用硬件描述语言来描述要求功能规格的RTL设计'描述工序2401、异步检测'救济电路组装工序2402、验证RTL描述的HDL校验RTL模拟工序2403、逻辑合成RTL描述的逻辑合成工序2404、插入测试电路的测试电路插入工序2405、进行芯片布局的布置方案的布置方案工序2406、以及在布局方案上配置布线连线表的门极、存储器的配置布线工序2407,为了组装本发明的异步异常检测电路101和异步异常救济电路102,新追加了异步检测.救济电路组装工序2402。在异步检测救济电路组装工序2402中,使用包含异步异常检测电路101和异步异常救济电路102的异步程序库2305来组装到RTL数据中。组装在RTL数据的异步异常检测电路101和异步异常救济电路102利用逻辑合成工序2404、配置布线工序2407自动变换为单元程序库,被配置在实际芯片上。产业上的可利用性根据以上的说明,本发明的半导体集成电路及其设计方法具有以下的效果即使在难以进行完整验证的异步传输部中,在设计阶段不能进行异步传输位置的充分验证而在开发芯片内残留有异步异常的情况下,也能够利用异步异常检测电路在评价芯片时或商品设置时容易地检测出异步异常,而且,即使在评价芯片时或商品设置评价时发现电路异常的情况下,也能够通过使异步异常救济电路有效来修复异常位置,而不进行电路数据的修正或掩膜的重新制作,作为异步时钟域之间的数据传输等是有用的。权利要求1.一种半导体集成电路,在以不同的时钟进行工作的异步时钟域之间进行数据传输,其特征在于,其包括异步异常检测电路,该异步异常检测电路具有将彼此为异步的时钟信号和与数据传输相关联的信号作为输入信号并判断是否满足所希望的信号条件的异步异常判断部。2.根据权利要求1所述的半导体集成电路,其特征在于,上述异步异常检测电路还包括在不满足所希望的信号条件时将电路异常信息向外部输出的输出部。3.根据权利要求1所述的半导体集成电路,其特征在于,还包括异步异常救济电路,该异步异常救济电路具有用于在不满足能正常进行数据传送的条件时修正异步传输位置的信号状态以满足所希望的信号条件的异步异常救济部。4.根据权利要求3所述的半导体集成电路,其特征在于,上述异步异常救济电路还包括使上述异步异常救济部对电路异常位置为有效或无效的救济切换部;和生成并输出通过管理、掌握救济状态来控制救济电路的控制信号的救济电路控制部。5.根据权利要求1所述的半导体集成电路,其特征在于,上述异步异常检测电路将接收方时钟、发送方时钟和发送数据作为输入,当接收方时钟的频率低于发送方时钟时,检测发送数据的数据变化,并从此时刻开始监视在接收方的一定时钟周期期间发送数据不发生变化的情况,在相反的情况下输出电路异常信息。6.根据权利要求1所述的半导体集成电路,其特征在于,上述异步异常检测电路将接收时钟、发送数据和表示发送数据为有效的控制信号作为输入,监视在上述控制信号变化前后发送数据在一定期间不发生变化的情况,在相反的情况下输出电路异常信白、'"、o7.根据权利要求3所述的半导体集成电路,其特征在于,上述异步异常救济电路在发送数据的长度短而不能将发送数据正常地传输到接收方的情况下补充在传输到接收方之前所丢失的发送数据。8.根据权利要求7所述的半导体集成电路,其特征在于,上述异步异常救济电路包括异步异常救济部,其通过串联连接多级的以发送方时钟进行工作的数据延迟触发器来延长发送数据长度;救济电路控制部,其生成并输出用于在救济时将向接收方触发器输入的输入数据切换到上述数据延迟触发器的输出数据线上的控制信号;以及救济切换部,其由选择器构成,该选择器将发送方触发器的输出数据线和上述数据延迟触发器的输出数据线作为输入,并将上述数据线切换控制信号作为控制信号来选择要输入到接收方触发器的婆t据线9.根据权利要求7所述的半导体集成电路,其特征在于,上述异步异常救济电路包括异步异常救济部,其由数据存储电路构成,该数据存储电路为时存储发送数据;救济电路控制部,其生成并输出用于在救济时将向接收方触发器输入的输入数据切换到上述数据存储电路的输出数据线上的控制在发送数据的救济中暂时停止下一数据的发送;以及救济切换部,其在发送数据的救济时切换路径,使得将存储在上述数据存储电路中的数据输入到接收方触发器。10.根据权利要求1所述的半导体集成电路,其特征在于,上述异步异常检测电路包括亚稳定异常检测电路,该亚稳定异常检测电路监视发送方触发器输出的发送数据和对接收方触发器串数据发生变化的时间为基准,当以接收时钟周期作为时间单位时在将上述亚稳定应对触发器的插入级数作为周期数的下一周期相一致情况,在相反的情况下输出电路异常信息。11.根据权利要求IO所述的半导体集成电路,其特征在于,上述亚稳定异常检测电路包括发送数据变化检测电路,其将发送方触发器的发送数据作为输入,在检测到该发送数据发生变化时输出发送数据变化信息;发送数据存储电路,其在发送方触发器的发送数据发生变化时暂时存储发送数据;接收时钟计数器电路,其将接收时钟和发送数据变化信息作为输入,在检测到数据变化时被复位;以及比较器,其将存储在上述发送数据存储电路中的发送数据、亚稳定应对触发器的接收数据、以及上述接收时钟计数器电路的计数值作为输入,比较当上述计数值表示所希望的计数值时存储在上述发送数据存储电路中的发送数据与上述亚稳定应对触发器的接收数据是否一致。12.根据权利要求2所述的半导体集成电路,其特征在于,上述输出部包括对信号状态信息进行简单编码的编码单元;使整个系统停止,且将利用上述编码单元编码后的位信息存储到配置在异步位置附近的扫描链上的触发器中的单元;将系统切换为测试模式的单元;以及将扫描路径上的信号信息向外部传送的单元。13.根据权利要求l所述的半导体集成电路,其特征在于,上述异步异常检测电路还具有由用于在某一定期间存储异步相关信号的历史的存储装置构成的异步相关信号历史存储部。14.根据权利要求3所述的半导体集成电路,其特征在于,还包括控制上述半导体集成电路的整个系统的控制装置,上述控制装置包括在系统启动时的自初始测试时使上述异步异常检测电路为有效的检测电路有效化单元;在上述异步异常检测电路检测到异步异常时针对异常位置使上述异步异常救济电路为有效的救济电路有效化单元;以及在通常工作模式时停止上述异步异常检测电路的工作的检测电路无效化单元。15.—种半导体集成电路的设计方法,其特征在于,使权利要求3所述的半导体集成电路中的上述异步异常检测电路和上述异步异常救济电路程序库化并对其进行再利用。全文摘要本发明提供一种半导体集成电路及其设计方法。该半导体集成电路设置有将发送数据和时钟、控制信号等异步传输相关信号组作为输入、判断是否满足所希望的信号条件后输出异步异常信息的异步异常检测电路(101);和将发送数据、时钟、控制信号等异步传输相关信号组以及上述异步异常信息作为输入、并输出救济处置后的异步传输相关信号组的异步异常救济电路(102)。利用这些电路,能够救济已芯片化的半导体集成电路的异步异常而不进行掩膜的重新制作。文档编号H04L7/00GK101601220SQ20088000159公开日2009年12月9日申请日期2008年7月7日优先权日2007年12月27日发明者槌矢浩则,水野雅信,竹田津弘州申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1