专利名称:一种支持局部复位的总线桥装置的制作方法
技术领域:
本实用新型涉及一种支持局部复位的装置。
背景技术:
理想情况下,同步电路中所有的触发器都是用同一个时钟,此时的时序问题非常方便解决。然而,现实通信领域的设计中,多时钟的 情况普遍存在,尤其是在嵌入式系统中,出于低功耗的考量,引入IP ((Intellectual Property),定制、半定制ASIC (ApplicationSpecific Integrated Circuit,专用集成电路),使得在通信系统中的时钟数量还有不断上升的趋势。时钟域可以这样来定义,指由同一个时钟控制的一组时序单元,该时钟必须来自同一个时钟树。在一个多时钟域的系统中,多个模块工作在不同的时钟频率下,每个模块会受全局复位信号和局部复位信号的控制。每个时钟域都会将全局复位信号同步到本时钟域中,这会造成系统中多个模块之间复位信号不同时释放。时钟频率高的模块已经进入了开始正常的状态,而时钟频率低的模块还处于复位状态,这种情况在一个包含高速系统总线和低速局部总线的系统中最为常见。在这样的条件下,会存在两个方面的问题。一个方面的问题是,这种情况会给软件调试带来一定的困难;另一个方面的问题是系统在等待低速模块就绪的过程中会有较大的功耗损失。关于一个方面的问题,比如当系统复位释放时,高速模块和低速模块都将系统复位信号同步到自己的模块中,但因不同时钟域的模块间时钟频率不同,高速模块的复位信号将先于低速模块的复位信号得到释放,此时当已经从复位模式进入工作模式的高速模块访问还处于复位模式的低速模块时,将不会得到正确响应,软件调试会进入“卡死”状态。对于另一个方面的问题,则如同短板效应,当系统复位信号释放时,整个系统不同频率的模块根据各自的时钟频率陆续将系统复位信号的释放过程同步到自己模块中,继而从复位模式进入工作模式。因系统内部各模块之间存在各种信息传递,则系统能够正常工作的时间取决于时钟频率最慢的模块恢复到工作模式的时间。在等待最慢模块复位释放进入工作模式期间,系统内的其他模块因处于工作状态将会有寄存器翻转的动作而造成一定的功耗损失。以上描述表明,系统或者说上层应当准确地知道功能模块或者说底层模块是否处于局部复位状态,尤其是在嵌入式系统中,如SoC (System on Chip,片上系统)集成有许多不同的IP时,若不能准确知道功能模块的状态,系统总线可能因某个IP局部复位而挂死。
发明内容本实用新型的目的在于提供一种支持局部复位的总线桥装置,从而,避免系统总线不会因某个IP局部复位而挂死。依据本实用新型的一个方面,一种支持局部复位的总线桥装置,包括用于匹配连接系统总线的系统总线接口和用于匹配连接局部总线的局部总线接口,以及互联在系统总线接口与局部总线接口间的数据缓存模块,还包括一挂接在系统总线上的同步模块,以把系统复位信号同步到所述局部总线接口相匹配的时钟域;一复位管理模块受控于同步后的所述系统复位信号依据所属的时钟域运算后而输出一个局部复位信号至所述局部总线接口,局部总线接口则在局部复位信号有效的情况下,将局部总线读数据端口数据置为一预定值,从而,若系统总线访问以所述局部总线接口为接口的局部模块而读取的数据为所述预定值时,即获知所述局部模块处于局部复位状态;同时,局部复位信号有效时将清空数据缓存模块读缓存。上述支持局部复位的总线桥装置,所述复位管理模块输入端还设有一用于引入DFT的复位信号的引脚。上述支持局部复位的总线桥装置,所述同步模块设有用于兼容DFT的testjnode,scan_en 和 ext_rst_n 端 P。依据本实用新型,将从模块或者说局部总线挂接的局部模块的复位状态通过一个预定的复位标识反映到系统总线上,使得系统或者上层设备能够准确的知晓从模块的局部复位状态,这样,上层设备或者主机就可以避免对相关从模块的某些操作。从而,如在SoC上集成有许多不同的IP时,系统总线不会因为某个IP局部复位而挂死。而对数据缓存模块的清空操作还可以保证在IP重新启用时的系统的稳定性。
图I为依据本实用新型的一种总线桥装置的结构原理框图。图2为一种同步模块的电路原理图。
具体实施方式
参照说明书附图I所示的一种总线桥装置,他有五个主要的单元,分别是同步模块、复位管理模块、系统总线接口( slave接口,即从设备接口)、数据缓存模块和局部总线接口(master接口,即主机接口)。其中,系统总线接口属于系统时钟域,而局部总线接口和复位管理模块则属于局部时钟域,这里涉及跨时钟域的同步问题,当然,跨时钟域的同步问题在本领域已经是比较成熟的技术,在此不再赘述,时钟不同域之间数据传递同步的操作要用于到所述数据缓存模块,也为本领域所公知。同步模块和系统总线接口挂在系统总线上,其中,同步模块用来接收系统复位信号,并将系统复位信号从系统时钟域同步到局部时钟域,并保证局部复位信号是异步复位而同步置位的。同步模块用来保证系统内部模块使用的复位信号都是异步复位,同步置位的。其具体电路图在说明书附图2中。异步复位它是指无论时钟沿是否到来,只要复位信号有效,就对系统进行复位。另一个相对的复位方式是同步复位,表示为同步复位就是指复位信号只有在时钟上升沿到来时,才能有效。否则,无法完成对系统的复位工作。这两种复位方式各有优缺点,例如同步复位,其优点是、有利于仿真器的仿真;可以使所设计的系统成为100%的同步时序电路,这便大大有利于时序分析,而且综合出来的fmax (最高时钟频率)一般较高;因为他只有在时钟有效电平到来时才有效,所以可以滤除高于时钟频率的毛刺。但他的缺点也有不少,主要有以下几条复位信号的有效时长必须大于时钟周期,才能真正被系统识别并完成复位任务。同时还要考虑,诸如clk skew,组合逻辑路径延时,复位延时等因素;由于大多数的逻辑器件的目标库内的DFF都只有异步复位端口,所以,倘若采用同步复位的话,综合器就会在寄存器的数据输入端口插入组合逻辑,这样就会耗费较多的逻辑资源。同步复位与异步复位的优缺点是相对的,通过异步复位同步置位的方式可以两全其美,即使用异步复位,同步释放的方式,而且复位信号低电平有效。从而在逻辑设计中可以很好的提高复位的可靠性,从而保证电路工作的稳定可靠性。同步模块同时应兼容DFT (Design for Test,可测性设计),匹配有test_mode,scan_en, ext_rst_n端口,并且最好选用支持多位并行的复位信号的同步。随着电子电路集成度的提高,电路愈加复杂,要完成一个电路的测试所需要的人力和时间也变得非常巨大。为了节省测试时间,除了采用先进的测试方法外,另外一个方法就是提高设计本身的可测试性。其中,可测试性包括两个方面一个是可控制性,即为了能够检测出目的故障(fault)或缺陷(defect),可否方便的施加测试向量;另外一个是可观测性,指的是对电路系统的测试结果是否容易被观测到。在集成电路(Integrated Circuit,简称IC)进入超大规模集成电路时代,DFT是电路和芯片设计的重要环节,它通过在芯片原始设计中插入各种用于提高芯片可测试性(包括可控制性和可观测性)的硬件逻辑,从而使芯片变得容易测试,大幅度节省芯片测试的成本。通过兼容DFT设计的端口,可以引入软件调试机制,那么进一步的选择是,复位管理模块引入其他复位信号,主要指DFT的复位信号,这是一个在软件测试模式下的有外部复位引脚引入的复位信号,从而,复位管理模块就可以同过与被同步的系统复位信号进行一个逻辑运算,输出一个局部复位信号。那么,关于复位管理模块,也称复位控制模块,是相对成熟的技术,主要通过寄存器,如复位控制寄存器(RCR)和复位状态寄存器(RSR)对被输出控制的IP或者其他模块进行复位控制,触发复位或者置位的管脚主要有RSTI引脚、上电复位引脚、PLL丢失时钟引脚、软件复位(如所述DFT信号)引脚等。因系统内有些IP不需要工作时可以将其复位以降低功耗,复位管理模块用于IP的复位管理。同时,系统复位信号可以通过RSTI引脚接入,通过寄存器的一些逻辑,实现局部复位信号的输出。当然,由于被复位的对象可能是其中的某个IP,因此,局部复位信号可以表现为通过软件复位或者系统复位信号根据系统的工作状态及需要选择输出发送给系统不同的局部模块的复位信号,形成局部复位信号。关于局部总线接口,将数据缓存模块中的数据写到局部总线从设备端或者将局部总线从设备端的数据读取到数据缓存。那么,其配置匹配相应局部总线接口逻辑根据局部总线规范操作,局部总线接口逻辑根据不同的设计要求有不同的时序。例如,读信号变高的下一个时钟周期得到读数据,而写信号和写数据在同一个时钟周期出现在局部总线上。关于数据缓存模块,通常包括写缓存模块、读缓存模块和存放控制逻辑的单元(简称控制逻辑)或者逻辑电路,本方案选择逻辑电路,响应速度快。其中,控制逻辑,根据外部的读写信号调整读写缓存模块的地址指针,以及根据局部复位信号复位地址指针。他们的连接关系是控制逻辑分别连接写缓存和读缓存模块,而读、写缓存模块互相独立。依据数据缓存模块,将系统总线的写数据存入写缓存或者将局部总线的读数据存入读缓存。关于系统总线接口,用于将系统总线的写数据存入数据缓存模块或者将数据缓存模块的数据送到系统总线上。其根据系统总线的规范操作,如果系统总线是AMBA总线,则按照AMBA总线的接口时序要求设计。那么依据该系统总线接口可以执行某些操作,如上位机软件需要读数据,则数据从局部模块经过局部总线master接口到达数据缓存模块,然后由数据缓存模块到达系统总线slave接口。假设上位机软件需要写数据,则是相反的流程。依据被配置的总线桥装置的局部 复位控制方法,从系统总线发来的系统复位信号被同步到该总线桥装置局部总线接口的时钟域,依据系统复位信号生成局部复位信号,并传输给局部总线接口;在所述局部复位信号有效的情况下,局部总线接口返回一个表示局部复位信号有效的信号给所述系统总线接口,并清空总线桥装置内的读缓存。在这样的一个过程中,一个实施例具有如下步骤I.复位管理模块将同步后的系统复位信号和其他复位信号进行逻辑运算,作为局部复位信号输出给局部总线接口和数据缓存模块;2.在局部复位信号有效的情况下,局部总线接口数据线上返回badObadO送给系统总线slave接口,badObadO表示局部复位有效。3.在局部复位信号有效的情况下,数据缓存模块将读缓存清空,若此时有来自系统总线接口的写操作,数据缓存模块丢弃写数据,以防止这些数据影响复位后的操作。4.上层软件可以从系统总线接口读取到数据badObadO,从而知道模块处于局部复位状态,即帮助软件调试,软件读取到badObadO无效时才往下运行。从而,上述实现将从模块的复位状态反映到系统总线上,使得系统能够知道从模块是否处于局部复位状态。尤其当SoC系统上集成有许多不同IP时,系统总线不会因某个IP局部复位而挂死。对数据缓存模块的清空操作还可以保证在IP重新启用时的系统的稳定性。依据上述实现还有效地简化了软件调试,同时有利于降低系统功耗。
权利要求1.一种支持局部复位的总线桥装置,包括用于匹配连接系统总线的系统总线接口和用于匹配连接局部总线的局部总线接口,以及互联在系统总线接口与局部总线接口间的数据缓存模块,其特征在于,还包括一挂接在系统总线上的同步模块,以把系统复位信号同步到所述局部总线接口相匹配的时钟域; 一复位管理模块受控于同步后的所述系统复位信号依据所属的时钟域运算后而输出一个局部复位信号至所述局部总线接口,局部总线接口则在局部复位信号有效的情况下,将局部总线读数据端口数据置为一预定值,从而,若系统总线访问以所述局部总线接口为接口的局部模块而读取的数据为所述预定值时,即获知所述局部模块处于局部复位状态;同时,局部复位信号有效时将清空数据缓存模块读缓存。
2.根据权利要求I所述的支持局部复位的总线桥装置,其特征在于,所述复位管理模块输入端还设有一用于引入DFT的复位信号的引脚。
3.根据权利要求2所述的支持局部复位的总线桥装置,其特征在于,所述同步模块设有用于兼容 DFT 的 test—mode,scan—en 和 ext—rst—n 端口
专利摘要本实用新型公开了一种支持局部复位的总线桥装置,包括用于匹配连接系统总线的系统总线接口和用于匹配连接局部总线的局部总线接口,以及互联在系统总线接口与局部总线接口间的数据缓存模块,还包括一挂接在系统总线上的同步模块,以把系统复位信号同步到所述局部总线接口相匹配的时钟域;一复位管理模块受控于同步后的所述系统复位信号依据所属的时钟域运算后而输出一个局部复位信号至所述局部总线接口。依据本实用新型的支持局部复位的总线桥装置避免系统总线不会因某个IP局部复位而挂死。
文档编号G06F13/40GK202584117SQ20122019853
公开日2012年12月5日 申请日期2012年5月7日 优先权日2012年5月7日
发明者王运哲, 陆崇心, 孙晓宁, 赵阳 申请人:山东华芯半导体有限公司