面向高速通信接口的低功耗缓冲装置的制作方法

文档序号:6340056阅读:106来源:国知局
专利名称:面向高速通信接口的低功耗缓冲装置的制作方法
技术领域
本发明涉及具有不同时钟频率的端口之间的数据传递。
背景技术
随着电子产品的日益发展,芯片的集成度越来越高,越来越多的高速通信接口被集成到同一芯片中,例如USB、PCI-E、SD等,这极大的方便了使用者,但由于过多的模块集成在一起带来的功耗问题越来越突出。例如,电池供电的便携产品中,除了功能和性能,电池的使用时间也是影响产品竞争力的重要因素。在IC卡领域,由于读卡设备所能提供的能量是有限的,也要求芯片要降低功耗。因此,低功耗设计也是现在芯片设计中很重要的一个领域,设计者需要从电源管理、时钟管理等各个方面考虑降低芯片的功耗,作为芯片中常备的高速通信接口,我们也需要降低其功耗以提升产品性能。USB、PCI_E、SD等是最常见的高速通信接口,由于通信接口的时钟频率和处理器的时钟频率通常不一致,因此通信接口模块中需要使用缓冲装置来完成两个异步时钟域间数据的传递。通常会使用双口 RAM作为缓冲装置,使用双口 RAM匹配不同的时钟频率简单方便,但双口 RAM功耗很大,占通信接口模块总功耗很大的比例。为了降低通信接口的功耗, 可以自己定制低功耗的双口 RAM,但如果没有这种技术能力,或者项目时间紧迫没有时间去设计,我们就需要考虑其他的降低通信接口功耗的方法。鉴于半导体工艺厂商提供的单口 RAM的功耗要比同等容量的双口 RAM的功耗小很多,因此我们提出了一种使用单口 RAM作为高速通信接口的缓冲装置降低芯片功耗的方法。

发明内容
本发明的目的在于解决上述问题中的一个或多个。本发明在一个方面提供一种用于具有不同时钟频率的端口之间的数据传递的缓冲单元,包括端口仲裁电路,端口选择电路,时钟切换及控制电路,以及
单口 RAM,其中所述端口仲裁电路用于仲裁来自所述具有不同时钟频率的端口的访问请求,所述端口选择电路用于根据所述端口仲裁电路的仲裁结果将获得授权端口的数据及控制信号传递给单口 RAM,所述时钟切换及控制电路用于根据所述端口仲裁电路的仲裁结果把获得授权端口的时钟信号传递给单口 RAM。根据本发明另一方面,缓冲单元还包括门控电路,用于控制传递给单口 RAM的时钟信号,使得仅在有端口访问单口 RAM时才给单口 RAM传递时钟信号。根据本发明另一方面,时钟切换及控制电路是无毛刺电路。根据本发明另一方面,缓冲单元连接在处理器总线接口处理模块和高速通信接口处理模块之间。根据本发明另一方面,单口 RAM作为所述端口之间数据传递的数据缓冲装置。本发明在另一方面提供一种使用单口 RAM在具有不同时钟频率的端口之间传递数据的方法,包括仲裁来自所述具有不同时钟频率的端口的访问请求, 根据仲裁结果将获得授权的端口的数据及控制信号传递给单口 RAM, 根据仲裁结果把获得授权的端口的时钟信号传递给单口 RAM, 获得授权的端口访问所述单口 RAM。根据本发明另一方面,把获得授权的端口的时钟信号传递给单口 RAM包括对所述时钟进行去毛刺处理。根据本发明另一方面,把获得授权的端口的时钟信号传递给单口 RAM包括控制传递给单口 RAM的时钟信号,使得仅在有端口访问单口 RAM时才给单口 RAM传递时钟信号。根据本发明,两个异步时钟域采用单口 RAM作为交换数据的缓冲装置。当通信接口或处理器需要传输数据即访问缓冲装置时,首先需要向端口仲裁电路提出读写请求,如果当前没有端口正在访问RAM,则请求端口可直接获得访问RAM的授权;如果当前访问RAM 的端口和请求的端口相同,则保持授权不变;如果当前正在访问RAM的端口和请求端口不一致,端口仲裁电路等正在访问RAM的端口访问结束后,重新仲裁,根据请求的优先级重新分配端口的授权。在端口仲裁电路完成仲裁后,端口选择电路将单口 RAM的信号端口,例如读写, 地址,数据等信号连接到获得授权的时钟域的端口上。由于时钟切换时产生的毛刺可能会对单口 RAM造成不可预知的影响,因此本发明在一个实施例中使用无毛刺时钟切换和控制电路。由于单口 RAM—直给时钟会产生比较大的动态功耗,还需要加入时钟门控电路保证仅在有端口访问单口 RAM时才打开,其他时刻关闭。这两个电路可以集成在一起。端口访问RAM结束后,读写,地址,数据等信号维持原值,减少信号翻转带来的翻转功耗。使用本发明可以充分利用单口 RAM功耗低的优点,在保证通信接口功能性能的前提下,降低芯片的功耗,减小芯片的面积。


图1是根据本发明一个实施例的位于处理器总线接口处理模块和高速通信接口处理模块之间的缓冲单元的结构图2是根据本发明一个实施例的无毛刺电路;
图3是根据本发明一个实施例缓冲单元工作的时序图4是根据本发明一个实施例SIE与MCU同时写EP的时序图5是根据本发明一个实施例SIE写EP与MCU读EP同时发生的时序图。
具体实施例方式以下结合附图,对本发明的具体实施例进行详细的说明。如图1所示,处理器总线接口模块2接到处理器总线1,以与所述处理器总线进行数据交互。高速通信接口处理模块4连接到高速通信接口 3,以与高速通信接口进行数据交互。在处理器总线接口模块和高速通信接口处理模块之间的是缓冲单元,缓冲单元包括端口仲裁电路5、端口选择电路6、时钟切换和控制电路7及单口 RAM 8。由缓冲单元连接的两个端口属于异步的时钟域,例如通信接口时钟域和处理器总线时钟域,两时钟域间需要完成数据的交互。端口仲裁电路5可工作在两时钟域中频率较快的一侧,处理来自另一时钟域的异步请求信号时则经过同步处理,例如使用双触发器采样同步。端口仲裁电路5接收来自处理器的访问请求和来自高速通信接口的访问请求,并进行仲裁。具体地,当端口需要访问单口 RAM时向端口仲裁电路5发出访问请求,如果没有端口正在访问单口 RAM,则端口仲裁电路5直接将授权给请求端口 ;如果请求端口和当前访问RAM的端口相同,则端口仲裁电路5 保持授权不变;如果两个端口同时请求访问单口 RAM,则端口仲裁电路5根据两个端口的优先级给予授权。端口选择电路6根据端口仲裁电路5的授权产生端口选择信号,把被选中的端口连接到单口 RAM,从而传递数据及控制信号,其中控制信号与数据的时序满足单口 RAM的时序要求。时钟切换及控制电路7根据端口仲裁电路的仲裁结果把获得授权端口的时钟信号传递给单口 RAM8。根据本发明的一个实施例,时钟切换和控制电路7包括如图2所示的无毛刺时钟切换和控制电路,无毛刺时钟切换和控制电路能够防止当两个端口连续访问单口 RAM 8时,时钟上出现毛刺。图2的无毛刺时钟切换和控制电路中,11、14、16以及19是与门,12、13、17和18
是D触发器,15是非门,20是或门。其中端口选择信号提供给与门11,端口选择信号还通过非门15提供给与门16,D触发器12接收端口 1的时钟信号,D触发器17接收端口 2的时钟信号,或门20输出时钟信号给单口 RAM 8。为了降低单口 RAM8的动态功耗,只有当有端口需要访问RAM时,才给单口 RAM传递时钟信号。因此,缓冲单元还包括门控电路,用于控制传递给单口 RAM的时钟信号,使得仅在有端口访问单口 RAM时才给单口 RAM传递时钟信号。为了降低信号的翻转功耗,控制和数据信号在没有新的请求到来之前保持不变。图3是根据本发明实施例缓冲单元工作的时序图。实例
下面将以一款使用AHB总线的USB1. 1从设备控制器为具体实例说明如何使用单口 RAM 代替双口 RAM应用。控制器中的RAM用于缓冲微处理器MCU (即CPU)和USB主机间的数据,RAM —侧为USB的时钟域(时钟频率为12MHz),另一侧为MCU (AHB总线)的时钟域(时钟频率为25MHz),RAM的大小为U8X32,USB中的所有EP(EndPoint)共享同一个RAM。在 SMICO. 18um工艺上,12^(32双口 RAM的功耗约为IOmA (折算成电流),同等容量的单口 RAM 的功耗约为5mA,相差近一倍,在低功耗应用领域,降低5mA的电流能显著提高有源设备电池的使用时间或无源设备的使用距离。图4和图5说明USB1. 1从设备控制器中单口 RAM的时序,以及在两个时钟域需要同时操作RAM时的仲裁顺序。如图4所示,当SIE (USB串行接口引擎,和USB PHY之间相连)与MCU同时写EP 缓冲器(EP buffer)时,SIE享有最高优先权,MCU写EP缓冲器时,拉低hready_0,直到采样到操作成功mcu_ack,释放hready_o。在hready_o为低期间,AHB接口模块输出的mcu_ epbuf_wr, mcu_epbuf_addr值保持不变,当SIE与MCU同时写EP缓冲器时,当SIE写EP缓冲器操作完成后,执行MCU写EP缓冲器操作,在usb_clk时钟域,当采样到mcUjpbUf_ wr 一次同步有效时,产生操作RAM选通及写信号mcujpbuf_wr_sync,在操作成功mcu_ack 有效后失效mcujpbuf_Wr_Sync。当在hclk时钟域采样到mcu_ack信号后,做两次同步后释放hready_o及mcujpbuf_wr.对mcu_ack同步两拍后输出握手信号对握手信号在usb_ elk时钟域内同步两拍后作为控制条件清除mcu_ack及mcujpbuf_wr在usb_clk时钟域内同步产生的所有信号。这里,hclk hsel haddr以及hready_0等都是标准的AHB总线接口,rd是读,cs是芯片选择,sync是同步,wr是写,add是地址,ram开头的是标准的RAM 接口。如图5所示,MCU读EP缓冲器操作时,同样当采样到htrans为1时,拉低hready_ ο信号,当hclk采样到mcu_ack时释放hready_0;在usb_clk时钟域,当采样到一次同步后的MCU读信号有效时产生读操作RAM选通信号mcu_rdbuf_cs信号,当采样到MCU有操作请求且SIE没有操作buf请求时产生操作确认信号mCu_req_aCk信号,失效RAM选通信号mcu_rdbuf_cs,对mcu_req_ack延迟一拍产生mcu_ack输出给MCU,此处延迟一拍的原因是当mCu_req_aCk有效时,产生mCujpbuf_rd_SynC信号,为保证在MCU读到数据之前数据保持不变,对RAM输入的数据进行锁存,如图中印buf_mcu_data所示,对mcu_req_ack延迟一拍产生mcu_ack输出时,输出数据已稳定;MCU采样到mcu_ack且对其同步两拍后释放 hready_o,在此必须对mcu_ack做两拍同步处理是由于要确保在hready_0为高时,MCU读到的数据已在MCU时钟域内稳定,不存在setup不满足的问题。输出对mcu_ack同步两拍后的的信号在usb_clk时钟域内同步两拍后作为控制条件清除mCu_req_aCk及mcujpbuf_ rd的所有同步信号。当MCU读与SIE操作同时发生时,SIE享有优先权。SIE读操作与MCU读写操作同时发生时,其时序与以上时序相同。由于加入了额外的控制电路,引入了 ImA左右的功耗,但是还是比使用双口 RAM节省了 4mA左右的功耗,优点是明显的。应当理解的是,上述针对具体实施方式
的描述较为具体,只是为了更好的将本发明的公开进行阐述,并不能因此而认为是对本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。
权利要求
1.一种用于具有不同时钟频率的端口之间的数据传递的缓冲单元,包括 端口仲裁电路,端口选择电路, 时钟切换及控制电路,以及单口 RAM, 其中所述端口仲裁电路用于仲裁来自所述具有不同时钟频率的端口的访问请求, 所述端口选择电路用于根据所述端口仲裁电路的仲裁结果将获得授权端口连接到单口 RAM,从而传递数据及控制信号,所述时钟切换及控制电路用于根据所述端口仲裁电路的仲裁结果把获得授权端口的时钟信号传递给单口 RAM。
2.根据权利要求1所述的缓冲单元,还包括门控电路,用于控制传递给单口RAM的时钟信号,使得仅在有端口访问单口 RAM时才给单口 RAM传递时钟信号。
3.根据权利要求1所述的缓冲单元,其中所述时钟切换及控制电路是无毛刺电路。
4.根据权利要求1所述的缓冲单元,其中所述缓冲单元连接在处理器总线接口处理模块和高速通信接口处理模块之间。
5.根据权利要求1所述的缓冲单元,其中单口RAM作为所述端口之间数据传递的数据缓冲装置。
6.一种使用单口 RAM在具有不同时钟频率的端口之间传递数据的方法,包括 仲裁来自所述具有不同时钟频率的端口的访问请求,根据仲裁结果将获得授权的端口的数据及控制信号传递给单口 RAM, 根据仲裁结果把获得授权的端口的时钟信号传递给单口 RAM, 获得授权的端口访问所述单口 RAM。
7.根据权利要求6所述的实现方法,其中所述单口RAM作为所述端口之间数据传递的数据缓冲装置。
8.根据权利要求6所述的实现方法,其中把获得授权的端口的时钟信号传递给单口 RAM包括对所述时钟进行去毛刺处理。
9.根据权利要求6所述的实现方法,其中把获得授权的端口的时钟信号传递给单口 RAM包括控制传递给单口 RAM的时钟信号,使得仅在有端口访问单口 RAM时才给单口 RAM传递时钟信号。
10.根据权利要求6所述的实现方法,其中获得授权的端口访问所述单口RAM后,保持所述控制和数据信号不变。
全文摘要
面向高速通信接口的低功耗缓冲装置。本发明涉及用于具有不同时钟频率的端口之间的数据传递的缓冲单元和相应的方法,缓冲单元包括端口仲裁电路,端口选择电路,时钟切换及控制电路,以及单口RAM,其中所述端口仲裁电路用于仲裁来自所述具有不同时钟频率的端口的访问请求,所述端口选择电路用于根据所述端口仲裁电路的仲裁结果将获得授权端口连接到单口RAM,从而传递数据及控制信号,所述时钟切换及控制电路用于根据所述端口仲裁电路的仲裁结果把获得授权端口的时钟信号传递给单口RAM。
文档编号G06F13/362GK102567259SQ20101060721
公开日2012年7月11日 申请日期2010年12月27日 优先权日2010年12月27日
发明者陈涛 申请人:北京国睿中数科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1