动态电源管理环境的数据路径时钟偏移管理的制作方法

文档序号:2602863阅读:157来源:国知局
专利名称:动态电源管理环境的数据路径时钟偏移管理的制作方法
技术领域
本发明总的说涉及计算机系统,较具体说涉及通过使用时钟门控电路进行计算机电源管理。
本发明技术背景随着半导体和计算机技术的进步,计算机系统在体积变得更小的同时速度变得更快。现在,桌面计算机甚至膝上计算机系统的处理速度相当于以往占据一个小房间的主机的速度。即使是手持式计算机系统,例如变得越来越通用的个人数字助理(PDA),功能也越来越强大。随着计算机系统变得越来越小型化和低廉化,人们对其要求也越来越多。比如,人们要求它能执行涉及图形和视频处理之类的更花费时间的复杂任务。
同时,随着计算机系统变得越来越强大和小型化,电源消耗也面临需要克服的挑战。由于较小的体积,手持式计算机系统的电源采用操作时间有限的电池。由于更高的速度和更强大的处理器需要更多的能源,因此人们需要采用革新性措施来节省电源藉此增长电池的操作期限。
在每个计算机系统中,设计有许多集成电路执行不同的功能,比如内存控制器,硬盘控制器,图形/视频控制器,通信控制器,以及其它外设控制器。众所周知,每个种类集成电路都被供给有一个时钟信号用于集成电路同步操中作为定时基准。一般而言,集成电路时钟增加电源消耗。
集成电路周期性的处于在系统功能上的空闲状态。在其它时间内,当集成电路中执行数据处理和传播功能的子电路(比如组合逻辑和数据路径)处于运行状态时,集成电路中其它子电路处于空闲状态。因为这些电路继续接收时钟信号,它们各自的内部电路就继续被推动而消耗相当多的能源,即使它们保持空闲状态。因此,为了节约能源,可以通过使用时钟门控电路禁止达到空闲电路的时钟信号。
参考

图1,该图示出了现有技术的时钟门控电路。在图1中,集成电路100由二组合逻辑电路101和102组成,其中每个组合逻辑电路表示一个数据处理子电路,比如视频和图形电路。组合逻辑电路101和102的输出最终经过组合逻辑电路103(比如混合器)组合形成单一的数据路径。集成电路100的时钟门控电路包含“与”门107和锁存器104-106。“与”门107接收使能信号EN和时钟信号CLK作为输入信号。“与”门107的输出信号用于触发锁存器104-106。来自外部信号源的数据被提供为组合逻辑电路101和102的数据输入。通过处理其输入,组合逻辑电路101和102分别提供输出到锁存器104和105。锁存器104和105提供输出到组合逻辑电路103,后者组合并处理输入数据。组合逻辑电路103提供输出到锁存器106。操作中,使能信号EN结合“与”门103来使能或禁止整个集成电路100。“与”门103和锁存器104-106组合作为集成电路100的门控电路动作。
在这种现有技术的时钟门控技术中,整个集成电路必须是要么被使能要么被禁止。尽管这样使用时钟门控电路能够不太复杂的实现,但是这种方法不灵活,也不是最高效的电源管理技术,因为不能单独禁止某个子电路。
参考图2,该图描述了另一种现有技术的时钟门控电路。如图2所示,集成电路200由两个组合逻辑电路201和202组成,其中每个组合逻辑电路代表一个数据处理子电路,比如视频和图形电路。组合逻辑电路201和202的输出最终经过组合逻辑电路203(比如混合器)组合形成单一的数据路径。集成电路200的时钟门控电路包含“与”门204-206和锁存器207-209。“与”门204-206分别接收使能信号EN1-EN3和作为输入信号和时钟信号CLK。“与”门204-206的输出信号用于触发锁存器207-209。来自外部信号源的数据被提供为组合逻辑电路201和202的数据输入。在对它们的输入作处理后,组合逻辑201和202分别提供他们的输出到锁存器207和208。锁存器207和208提供输出到组合逻辑电路203,后者组合并处理输入数据。然后组合逻辑电路203提供其输出到锁存器209。操作中,使能信号EN1-EN3结合“与”门204-206来使能或禁止单个子电路或整个集成电路200。“与”门204-206和锁存器207-209结合起来作为集成电路200的门控电路操作。
在这一现有技术的时钟门控技术中,对集成电路的每个子电路都实现时钟门控电路来按照要求禁止被选择的子电路或整个集成电路的时钟信号。但是,禁止部分集成电路的时钟信号可能在带有时钟门控电路的两个子电路之间以及带有时钟门控电路的子电路和不带时钟门控电路的子电路之间导致时钟偏移(即不同步)。众所周知,时钟偏移会导致锁存无效或错误数据。可以采用延迟或反相电路矫正时钟偏移来确保带时钟门控电路的子电路和原始时钟信号同步。比如,延迟211-212可以分别放置在“与”门204-205的输出端。这些延迟可以最大限度解决时钟偏移问题。另一种方法是放置反相器210到“与”门206的输出端。使用反相器210导致处理时间减少大约半个时钟,这引入了临界的通路。但是,使用延迟或反相电路210-212意味着在制造集成电路时增加硬件成本。而且,使用延迟电路比如延迟211-212还可能在集成电路的设计中带来代价巨大的延误,因为时钟偏移的大小通常要到对集成电路进行配置和路由操作之后才能确定。
因此,现在需要一种高效低成本的时钟门控电源管理系统、装置、和方法。
本发明是以一连接到多个互相耦合的数据路径的时钟门控电路来满足上述需要的。此数据路径用于处理数据以使所有数据按第一方向传播。时钟门控装置本身由以串联方式相互连接的时钟门控电路组成,使得时钟信号按与第一方向相反的第二方向传播。每个时钟门控电路耦合到对应的一个数据路径,以允许时钟门控电路按要求使能或禁止对应的数据路径。
在一个实施例中,这些数据路径是最终混合成单一数据路径的并行数据路径。另外,在此实施例中,数据可以在任何给定时间沿不止一条并行数据路径被处理和传播。在另一实施例中,数据路径从一个公共节点分离。相应地,数据在任何给定时间只能沿一条分支数据路径被处理和传播。
每个时钟门控电路进一步包括锁存电路和逻辑门。锁存电路连接到对应的数据路径。锁存电路的输出按第一方向连接到后续数据路径。逻辑门接收串联的时钟信号以及一个使能或禁止信号作为输入。逻辑门以第二方向提供输出来钟控锁存电路及后续时钟门控电路。
本发明的所有特征和优点由下面结合附图描述的优选实施例的详细说明将更为显见。
图2示出了另一现有技术的时钟门控实现。
图3的高层方框图描述了实现本发明的典型计算机系统。
图4的方框图进一步描述图3所示图形/显示控制器307的细节。
图5的方框图进一步描述图4所示硬件光标模块401的细节。
图6的方框图进一步描述图4所示图形模块402的细节。
图7的方框图进一步描述图4所示视频模块403的细节。
图8A-8D作为举例,描述图形模块402相关组件的时序图。
图9的方框图进一步描述图3所示控制台面界面313的细节。
图10的方框图进一步描述图9所示薄膜晶体管(TFT)LCD模块901的细节。
图11的方框图进一步描述图9所示扭曲排列向列(STN)LCD模块902的细节。
图12A-12C作为举例,描述通过TFT模块906的数据路径的时序图。
本发明详述在下面关于本发明的详细描述中,给出了大量特定的细节以便提供对本发明的彻底理解。但是,对业界技术人员而言,很明显的可以看出本发明在没有这些特定细节时照样可以实现。在其它实例中,没有详细描述众所周知的方法、过程、组件、和电路,因为没有必要因此模糊对本发明的描述。尽管下面的细节描述了本发明在涉及图形/显示控制器和控制台面界面领域的应用,但应理解本发明对任何涉及多个数据路径的应用都可行,比如通信,内核逻辑,中央处理单元(CPU)以及其它电路。
按照本发明的第一个实施例,借助实现一其传播信号的方向与所有的最终在一个公共节点汇合的数据路径和子路径传播数据的方向相反的串联时钟门控电路,而能按需要选择禁止或使能各个别的数据路径和子路径。在本实施例中,一个或多个数据路径可以在任意给定时间相互并行的处理和传播数据。按照本发明的第一个实施例,因为数据路径和子路径的时钟偏移以可预测的和合乎要求的序列发生,所以不需要使用延迟电路来控制时钟偏移,后者会导致锁存无效的数据。
在本实施例(即图形/显示控制器)中,本发明提供了动态电源管理,因为它允许视频、图形、或光标数据路径能按要求被个别的使能或禁止。这与当前业界所使用的技术形成对比,后者要么打开要么关闭所有的数据路径(如视频、图形、和光标数据路径)。这样的现有技术是电源低效的。作为现有技术低效的示例,来考虑图形/显示中的光标数据路径。通常光标区域非常小。具体而言,在每个显示行光标数据只占该显示行宽度的1%~2%。因此按照本发明,光标区之外(即显示行宽度的98%~99%),驱动光标数据路径的时钟可以动态的关断,以便节约大量的能源。与本发明相比,现有技术在所有时间给光标数据路径加时钟(例如对整个显示行)。与本发明节约能源特点具有同等重要意义的是,本发明还防止了现有技术的时钟门控电路通常发生的时钟偏移问题。
举例而言,图3的高层方框图描述了赖以实现即实践本发明的计算机系统300。具体而言,计算机系统300可能是一个膝上或手持计算机系统。应当理解的是,计算机系统300仅仅是作为样例,本发明可以在许多不同的计算机系统中操作,包括桌面计算机系统,通用计算机系统,嵌入式计算机系统,以及其他计算机系统。
如图3所示,计算机系统300是高度集成的系统,它包括集成处理器电路301,外设控制器302,只读存储器(ROM)303,以及随机存取存储器(RAM)304。高度集成结构有利于节约能源。计算机系统体系结构300还可能包括外设控制器,如果需要与复杂的和/或管脚数量很大的外设装置接口的话,后者没有在集成的处理器电路301中提供。
外设控制器302与集成处理器电路301在一端连接,ROM303和RAM304则与集成处理器电路301的另一端连接。集成处理器电路301包括处理单元305,内存接口306,图形/显示控制器307,直接存储器存取(DMA)控制器308,以及内核逻辑功能,后者包括编码/译码器(CODEC)接口309,并行接口310,串行接口311,输入装置接口312和控制台面接口(FPI)313。处理单元305把中央处理单元(CPU),内存管理单元(MMU)和指令/数据高速缓存集成在一起。
CODEC接口309在音频源和/或调制解调器与集成处理器电路301之间提供接口连接。并行接口310允许并行输入/输出(I/O)装置比如硬盘、打印机等连接到集成处理器单元301。串行接口311允许串行输入输出(I/O)装置比如通用异步接收发送器(UART)连接到集成处理单元301。输入装置接口312允许输入装置比如键盘、鼠标和触摸板连接到集成处理单元301。
DMA控制器308通过内存接口306访问存储在RAM304中的数据并提供数据到外设装置,这些装置连接到CODEC接口309,并行接口310,串行接口311或输入装置接口312。图形/显示控制器307通过内存接口306请求并访问RAM304中的视频/图形数据。然后图形/显示控制器307处理该数据,格式化该被处理的数据并传送该格式化的数据到显示装置比如液晶显示器(LCD),阴极射线管(CRT)或电视(TV)监视器。如果显示装置是LCD,来自图形/显示控制器307的被处理的数据首先被发送到控制台面接口313,然后再被传送到LCD。控制台面接口313进一步处理该数据,增加不同的色调或灰度供显示。另外,根据采用薄膜晶体管(TFT)LCD(又称有源矩阵LCD)还是采用扭曲排列向列(STN)LCD(又称无源矩阵LCD),控制台面接口313把数据格式化成适合显示的类型。进一步的,在使用单色LCD的情况下,FPI313能把彩色数据转换成单色数据。如果显示装置是阴极射线管(CRT),被处理的数据在送到CRT之前要先送到数字-模拟转换器(DAC)。在计算机系统300中,使用单一内存总线把集成处理器电路301连接到ROM303和RAM304。
在此第一实施例中,本发明以图形/显示控制器307的一部分的形式实现。参考图4中描述的图形/显示控制器307的细节。一般地,图形/显示控制器307包括三个模块硬件光标401,图形402和视频403,它们用于处理从内存(即ROM303或RAM304)中通过内存接口306接收的对应位图数据类型。因此,图形/显示控制器307有三个分离的内部数据路径。
按照本发明此第一实施例,与硬件光标、图形和视频相关的位图数据先单独处理,然后再混合到一起提供给混合器404。混合器404在硬件光标(如鼠标的位置),图形(如软件生成的图形和背景)和视频(如运动画面和图象)之间执行优先级显示方案。混合器404的输出提供给锁存电路405,后者控制到FPI313的显示数据流。如果使用阴极射线管(CRT)而不使用控制台面显示器,那么需要DAC,比如DAC407来把数字显示数据转换成模拟信号供显示。
锁存电路405的时钟是“与”门406的输出,“与”门406接收从FPI313传播来的时钟信号以及使能信号EN1作为输入。在这种情况下,当传播的时钟信号和使能信号EN1`都是“高”时,“与”门406输出“高”信号,否则,“与”门406输出“低”信号。换言之,锁存电路405和“与”门406结合作为时钟门控电路来使能或禁止图形/显示控制器307(称为第一级)。使能信号EN1可以产生于被处理单元305的CPU编程的控制寄存器(未表示)或者来自电源管理电路(也未表示)。按照本发明,显示数据流的方向与传播的时钟信号的方向相反。虽然本实例的时钟门控电路采用“与”门和使能信号(比如“与”门406和使能信号EN1)实现,业界普通技术人员很清楚也可以用“或”门和禁止信号或其它逻辑门的组合来实现同样的功能。
参考图5描述硬件光标模块401的细节。如图5所示,硬件光标模块401包括串行化器501,锁存电路502,“与”门503。在这优选实施例中,锁存电路502是D型锁存电路。但是,应当理解采用其它类型的主从锁存电路也可以。
串行化器501接收来自内存接口306的数据信号作为输入信息。尽管内存接口的宽度可以是任意的,但是在本实例中内存接口306的宽度是128位。在本实例中,硬件光标的每个象素由2位数据表达。因此,在128数据位中有64个象素。对应地,串行化器501转换128位宽度的数据流为2位宽度的串行数据流,其中串行化器501在每个时钟周期输出2位数据。串行化器501的输出提供给锁存电路502作为输入,后者由“与”门503的输出驱动。“与”门503的输入是来自“与”门406的传播时钟信号以及使能信号EN2。锁存电路502能够同时处理2个数据位。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路502。
使能信号EN2与它的对等物使能信号EN1一样,可以产生于由处理单元305的CPU编程的控制寄存器(未表示)中的一位或者来自电源管理电路(也未画),它在光标活动区域期间使能光标逻辑。当传播的时钟信号和使能信号EN1`都是“高”时,“与”门503输出“高”信号,否则,“与”门503输出“低”信号。这样,锁存电路502和“与”门503结合作为硬件光标模块401的时钟门控电路来操作按要求使能或禁止硬件光标模块401(称为第二级)。锁存电路501的输出被提供给混合器404。
参考图6描述图形模块402的细节。如图6所示,图形模块402包括串行化器601,串行化器602,锁存电路603,锁存电路604,“与”门605,“与”门606,多路复用器607,锁存电路608,“与”门609,调色板610,锁存电路611,和“与”门612。在此优选实施例中,锁存电路603,604,608和611是D型锁存电路。但是采用其它类型的锁存电路也可以。
“与”门605,606,609和612以串联方式连接在一起。具体而言,“与”门612的输出是“与”门609的输入,而“与”门609的输出是“与”门605和606的输入。“与”门612的一个输入是“与”门406的输出。“与”门605,606,609,612的另一个输入分别连接到使能信号EN5,EN6,EN4,EN3。下面将要详细讨论,“与”门605,606,609和612的输出用于分别驱动锁存电路603,604,608,611。“与”门605和606驱动的子电路被整体称为第四级,“与”门609驱动的子电路被整体称为第三级,“与”门612驱动的子电路被整体称为第二级。因此,图形模块402的不同级可以利用使能信号EN3-EN6有选择性的禁止。如图所示,很显见,显示数据流的方向与传播的时钟信号的方向相反。
串行化器601和602接收来自内存接口306的数据信号作为输入信息。如上面所讨论的,尽管内存接口306的宽度可以是任意的,但是在本实例中,内存接口306的宽度是128位,以确保高速数据传播并减少瓶颈。在本实例中,图形模块被设计成可以处理不同的分辨率模式包括每个象素1位和每个象素2位。因此,图形模块402有多个数据子路径,其中每个数据子路径用于处理一个不同的分辨率模式的图形数据。应该清楚,对业界普通技术人员而言,要处理其它分辨率模式比如每象素8位,16位,24位,32位等,可以方便地修改图形模块402。
相应地,串行化器601用于把128位宽度的数据流输入转化成2位宽度串行数据流输出,而串行化器602用于把128位宽度的数据流输入转化成1位宽度串行数据流输出。串行化器601的输出提供为锁存电路603的输入,后者由“与”门605的输出驱动。锁存电路603能够同时处理2个数据位。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的主从锁存电路的结合很容易地实现锁存电路603。
“与”门605的输入是传播时钟信号(来自“与”门609)和使能信号EN5,使能信号EN5可以产生于处理单元305的CPU所编程的控制寄存器(未表示)或者来自电源管理电路(也未表示)。当传播的时钟信号和使能信号EN5`都是“高”时,“与”门605输出“高”信号,否则,“与”门605输出“低”信号。因此,锁存电路603和“与”门605结合作为图形模块402内部每象素2位的数据路径的时钟门控电路(第四级的一部分)。锁存电路603的输出被提供给多路复用器607作为输入。
类似的,串行化器602的输出提供为锁存电路604的输入,后者由“与”门606的输出驱动。“与”门606的输入是传播时钟信号(来自“与”门609)和使能信号EN6,使能信号EN6可以产生于处理单元305的CPU所编程的控制寄存器(未表示)中的一位或者来自电源管理电路(也未表示)。当传播的时钟信号和使能信号EN6`都是“高”时,“与”门606输出“高”信号,否则,“与”门606输出“低”信号。因此,锁存电路604和“与”门606结合作为图形模块402内部每象素1位的数据路径的时钟门控电路(第四级的一部分)。锁存电路604的输出被提供给多路复用器607作为它的第二个输入。
根据选择信号SEL指示的选择模式,多路复用器607要么让锁存电路603的输出要么让锁存电路604的输出通过到其输出端。选择信号SEL产生于CPU所编程的控制寄存器(未表示)。在此优选实例中,如果选择信号SEL是“高”就指示所希望的图形分辨率模式是每象素2位,锁存电路603的输出就被允许通过到输出端。另一方面,如果选择信号SEL是“低”就指示所希望的图形分辨率模式是每象素1位,锁存电路604的输出就被允许通过到输出端。
多路复用器607的输出提供为锁存电路608的输入,后者由“与”门609的输出驱动。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路608。“与”门609的输入是传播时钟信号(来自“与”门612)和使能信号EN4,使能信号EN4可以产生于处理单元305的CPU所编程的控制寄存器(未表示)中的一位或者来自电源管理电路(也未表示)。当传播的时钟信号和使能信号EN4`都是“高”时,“与”门609输出“高”信号,否则,“与”门609输出“低”信号。因此,锁存电路608和“与”门609结合作为多路复用器607的时钟门控电路(第三级)。
锁存电路608的输出提供为对图形数据作彩色映象的调色板610的输入。在本实施例中,调色板610是一用随机存储器(RAM)实现的查找表。使用来自锁存电路608的图形数据作为索引,调色板610被用于查找对应的彩色图形象素数据。可取的是,从调色板610检索的每个彩色图形象素由24位RGB表述,8位是红色,8位是绿色,和8位是兰色。
调色板610的输出提供为锁存电路611的输入,后者由“与”门612的输出驱动。锁存电路611能够同时处理24位数据。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路611。“与”门612的输入是传播时钟信号(来自“与”门406)和使能信号EN3。使能信号EN3可以产生于处理单元305的CPU所编程的控制寄存器(未表示)中的一位或者是来自电源管理逻辑电路(也未表示)。当传播的时钟信号和使能信号EN3`都是“高”时,“与”门612输出“高”信号,否则,“与”门612输出“低”信号。因此,锁存电路611和“与”门612结合作为调色板610的时钟门控电路(第二级)。锁存电路611的输出被提供给混合器404。
参考图7描述视频模块403。视频模块403包括串行化器701,锁存电路702,“与”门703,数字纵横滤波器704,锁存电路705,“与”门706,彩色空间转换器707,锁存电路708,和“与”门709。在此优选实施例中,锁存电路702,705,708是D型锁存电路。但是采用其它类型的锁存电路也可以。
象在图形模块402中的对等物一样,“与”门703,706,709以串联方式连接在一起。具体而言,“与”门709的输出是“与”门706的输入,而“与”门706的输出是“与”门703的输入。“与”门709的一个输入是“与”门406的输出。“与”门703,706,709的另一个输入分别连接到使能信号EN9,EN8,EN7。下面将要详细讨论,“与”门703,706,709的输出用于分别驱动锁存电路702,705,708。“与”门706驱动的子电路被整体称为第四级,“与”门703驱动的子电路被整体称为第三级,“与”门709驱动的子电路被整体称为第二级。因此,视频模块403的不同级可以利用使能信号EN7-EN9作选择性的禁止。如图所示,可清楚看到显示数据流的方向与传播的时钟信号的方向相反。
串行化器701接收来自内存接口306的数据信号作为输入信息。如上面所讨论的,尽管内存接口306的宽度可以是任意的,但是在本实例中,内存接口306的宽度是128位,以确保高速数据传播并减少瓶颈。在此优选实例中,视频模块403被设计成广泛应用的每象素16位422YUV和422YCrCb彩色空间格式。在这些彩色空间格式中,每个彩色象素包括一辉度即亮度成分和色度或即色调和饱和度成分。比如,在YCrCb彩色空间中,Y是辉度彩色空间成分,Cr,Cb是色度子成分。应该清楚,对业界普通技术人员而言,可以简单地修改视频模块403来处理其它视频数据格式。
相应地,串行化器701用于把128位宽度的数据流输入转化成24位宽度串行数据流输出。串行化器701还执行水平定标。串行化器701的输出提供为锁存电路702的输入,后者由“与”门703的输出驱动。锁存电路702能够同时处理24个数据位。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路702。“与”门703的输入是传播时钟信号(来自“与”门706)和使能信号EN9,使能信号EN9可以产生于处理单元305的CPU所编程的控制寄存器(未表示)或者来自电源管理逻辑电路(也未表示)。当传播的时钟信号和使能信号EN9`都是“高”时,“与”门703输出“高”信号,否则,“与”门703输出“低”信号。因此,锁存电路702和“与”门703结合作为串行化器701的时钟门控电路(第四级)。锁存电路702的输出被提供给数字纵横滤波器704作为输入。
纵横滤波器704用于改善图象在水平和垂直方向进行定标时的象素/信号的质量。纵横滤波器704的输出提供为锁存电路705的输入,后者由“与”门706的输出驱动。锁存电路705能够同时处理24个数据位。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路705。“与”门706的输入是传播时钟信号(来自“与”门709)和使能信号EN8,使能信号EN8可以产生于被处理单元305的CPU编程的控制寄存器(未表示)中的一位或者来自一电源管理电路(也未表示)。当传播的时钟信号和使能信号EN8`都是“高”时,“与”门706输出“高”信号,否则,“与”门706输出“低”信号。因此,锁存电路705和“与”门706结合作为纵横滤波器704的时钟门控电路(第三级)作用。锁存电路705的输出被提供给彩色空间转换器707作为输入。
彩色空间转换器707用于把来自彩色空间YUV或YCrCb的视频数据转换成RGB彩色空间,其中每个彩色象素由红色成分、绿色成分、兰色成分组成,用于显示。彩色空间转换器707的输出提供为锁存电路708的输入,后者由“与”门709的输出驱动。“与”门709的输入是传播时钟信号(来自“与”门406)和使能信号EN7,使能信号EN7可以产生于处理单元305的CPU所编程的控制寄存器(未表示)中的一位或者是来自一电源管理逻辑电路(也未表示)。当传播的时钟信号和使能信号EN7`都是“高”时,“与”门709输出“高”信号,否则,“与”门709输出“低”信号。因此,锁存电路708和“与”门709结合作为彩色空间转换器707的时钟门控电路动作(第二级)。锁存电路708的输出被提供给混合器404作为输入。因此,混合器404作为目的地节点汇合由光标模块401,图形模块402,视频模块403的输出成为公共数据路径。
如前所述,混合器404在视频图象、图形图象和光标图象之间执行优先级显示方案。换言之,混合器404根据预先确定的方案决定哪种图象类型有显示优先权,并因此把该类型图象放置到其它图象类型之上(当它们要在屏幕的同一位置同时显示时)。混合器404提供其输出给锁存电路405,后者由“与”门406驱动。
参考图8A-8D举例描述图形模块402和混合器逻辑404的时序图。更具体而言,图8A描述“与”门406的输出和锁存电路405的输出(即第一级),图8B描述“与”门612的输出和锁存电路611的输出(即第二级),图8C描述“与”门609的输出和锁存电路608的输出(即第三级),图8D描述“与”门605或606的输出和锁存电路603或604的输出(即第四级)。应该清楚,对业界普通技术人员而言光标模块401和视频模块403的类似的时序图可以很容易的作出。为了简洁和清楚起见,视频模块401和403的时序图此处没有提供。
如前所述,由于提供给图形模块402的锁存电路的时钟信号作其传播方向与数据传播的方向相差180度的串联安排,因此前面提到的四个级的时钟信号按顺序发生(即第一,第二,第三,然后是第四),而其传播方向与数据传播方向相反。因此,如图8A-8D所示,第一级的时钟信号在第二级的时钟信号之前发生,第二级的时钟信号在第三级的时钟信号之前发生,第三级的时钟信号在第四级的时钟信号之前发生。由于相对于紧接的后续级时钟而言前面级的时钟被延迟,来自前面级的数据为在后续级锁存可用的保持时间要更长一些。举例而言,比较描述第四级(前面级的时钟)时钟信号的图8D和描述第三级(紧接后续级时钟)时钟信号的图8C,相对于第三级时钟第四级时钟被延迟。因此,如图所示,对锁存在后续级的有效数据而言保持时间Th更长。这说明上述方案对在置入和传播确定时钟线路由期间引入的时钟偏移、时钟缓冲驱动强度的变异性、和对时钟线的装载的变异性具有更大的允许裕度。
在本发明中,D型锁存电路用于第一个实施例(如锁存电路603,604,608,611和405)锁存在同一个时钟上升沿从其输入端接收的数据。由于本发明固有的特征(比如数据和时钟信号反向),对锁存有效数据有更长的保持时间Th。举例而言,如图8A-8D,锁存电路603或604(第四级)在一时钟周期锁存的数据可以由锁存电路608(第三级)获得用于锁存(例如,更长的保持时间Th),锁存电路608锁存的数据可以由锁存电路611(第二级)获得用于锁存(例如,更长的保持时间Th),锁存电路611锁存的数据可以由锁存电路405(第一级)获得并用于锁存(例如,更长的保持时间Th),其时间在下一个时钟周期的数据被锁存并使当前数据成为无效之前。应该清楚,对业界普通技术人员而言,即使所有锁存发生在时钟的下降沿,上述方案也同样可行。本发明的第二个实施例的详细描述将在下面提供。
在本发明的第二个实施例中,借助于将串联时钟门控电路实现为其传播方向与所有的在一公共节点汇合的数据路径和子数据通路中传播数据的方向相反,只要子数据路径相互排它的进行操作(比如处理和传播操作),那么就可能按照要求选择性地禁止以及使能各个别的数据通路和子通路。换言之,在任何给定时间相互并行的数据通路和子通路只有一个可以操作。同时,不存在任何时钟偏移问题,因此无须延迟电路。
在此第二实施例中,本发明作为FPI313的一部分实现。参考图9描述FPI313的细节。一般地,FPI313由彩色—单色转换器901,锁存电路902,多路复用器903,抖动引擎904,锁存电路905,TFT模块906,STN模块907,多路复用器908,“与”门909,“或”门910~911,“与”门912和反相器913组成。根据用户所选择的显示模式,利用TFT模块906或STN模块907来按所希望的显示模式格式化显示数据。
由于FPI313允许在计算机系统300中使用单色显示监视器,而显示/图形控制器307通常把显示数据当作他们是彩色的来处理,因此,所以彩色—单色转换器901被用来把彩色显示数据转换成单色显示数据。因此,来自显示/图形控制器307的处理数据首先提供给彩色—单色转换器901(设计在第四级)。彩色—单色转换器901的输出提供给锁存电路902的输入。锁存电路902能够同时处理8位数据。应该清楚,对业界普通技术人员而言,可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路902。锁存电路902由“与”门909输出的传播时钟信号驱动。“与”门909的输入是使能信号EN10和“或”门910输出的传播时钟信号。当使能信号EN10是“高”时,它指明彩色—单色被使能用于驱动单色显示板。“与”门909输出的传播时钟信号也提供给显示/图形控制器307的“与”门406。锁存电路902的输出提供给2-1多路复用器903做输入,后者被选择信号SEL1控制,SEL1可产生于,比如,按用户指示在CPU中编程的控制寄存器(未表示)。多路复用器903的另一个输入是显示/图形控制器307的输出。这样,FPI313可以与彩色和单色显示器接口。
使能信号EN10也经反相器913反相之后提供给“与”门912。提供给“与”门912的第二个输入是“或”门910的输出。“与”门909和912的输出提供给“或”门911,后者提供其输出到显示/图形控制器307的“与”门406。这样,确保显示/图形控制器307有连续的传播时钟信号。这也与本发明要求时钟信号的传播方向和数据的传播方向相反保持一致。
多路复用器903的输出提供给抖动引擎904(设计为第三级),后者执行象素操作来尽可能精确的传送图象的彩色(当输出的彩色位数小于需要的位数时)。换言之,抖动引擎904主要是增强所显示的图象的彩色。抖动引擎904的输出提供给锁存电路905,后者由“或”门910输出的传播时钟信号驱动。“或”门910的输入是来自TFT模块906和STN模块907的两个传播时钟信号。锁存电路905的输出同时提供给TFT模块906和STN模块907。这样,FPI313可以操纵有源矩阵(TFT)显示器或无源矩阵(STN)显示器,其中在任何时间只能选择一种显示模式。因此,FPI313内部有两个相互排它的数据路径。TFT模块906和STN模块907的输出提供为2-1多路复用器908的输入,后者被一选择信号SEL2控制,SEL2可产生于,比如,按用户指示在CPU中编程的控制寄存器(未表示)。多路复用器908的输出提供给LCD显示监视器。
如图9所示,在本发明的第二个实例中,TFT模块906和STN模块907的两个数据路径接收来自单一数据源的数据,并相互排它的进行操作(比如处理和传播数据操作)。而且,按本发明,显示数据流的方向与时钟信号的方向相反。如前所讨论的,控制所转换的数据流到多路复用器903的锁存电路902和控制数据流进入TFT模块906和STN模块907的锁存电路905的时钟信号分别来自“与”门909和“或“门910的输出。操作中,当传播的时钟信号和使能信号EN10`都是“高”时,“与”门909输出“高”信号,否则,“与”门909输出“低”信号。换言之,锁存电路902和“与”门909结合作为时钟门控电路来使能或禁止彩色—单色转换器901(第二个实例的第四级)。
类似的,当来自TFT模块906或STN模块907的传播时钟信号有一个为“高”或者全部为“高”时,“或”门910输出“高”信号,否则,“或”门910输出“低”信号。由于TFT模块906和STN模块907相互排它操作,因此在任何给定时间TFT模块906和STN模块907中只能有一个输出的传播时钟信号为“高”。因此,锁存电路905和“或”门910结合作为时钟门控电路来使能或禁止抖动引擎904。尽管在本发明实例中,时钟门控电路的实现方式是“与”门和使能信号(比如“与”门909和使能信号EN10),以及“或”门(比如“或”门910)和产生于TFT模块906的“与”门1003和STN模块907的“与”门1106的传播时钟信号,但是应该清楚,对业界普通技术人员而言,可以采用其它组合逻辑比如“或”门和禁止信号,“与”门和来自“或”门的传播时钟信号以及其它逻辑门的组合来实现时钟门控电路。
参考图10描述TFT模块906的细节。如图10所示,TFT模块906包括TFT数据格式逻辑1001,锁存电路1002,和“与”门1003。在本优选实施例中,锁存电路1002是D型锁存电路。但是应理解,采用其它类型锁存电路也可以。
TFT数据格式逻辑1001接收来自锁存电路905的彩色增强显示数据作为输入。TFT数据格式逻辑1001根据TFT显示协议和规则格式化所接收的数据,然后发送数据到锁存电路1002,后者被“与”门1003的输出所驱动。“与”门1003的输入信号是时钟信号CLK和使能信号EN11。锁存电路1002能够同时处理24位数据。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路1002。使能信号EN11可以产生于处理单元305的CPU所编程的控制寄存器(未表示)中的一位或者来自电源管理电路(也未表示),他按用户的期望使能TFT模块。当时钟信号CLK和使能信号EN11都是“高”时,“与”门1003输出“高”信号,否则,“与”门1003输出“低”信号。因此,锁存电路1002和“与”门1003结合作为TFT模块906的时钟门控电路(第二级)。
参考图11描述STN模块907的细节。如图11所示,STN模块907包括灰度定标逻辑1101,锁存电路1102,STN数据格式逻辑1103,“与”门1104,锁存电路1105,和“与”门1106。在本优选实例中,锁存电路1102和1105是D型锁存电路。但是应理解,采用其它类型锁存电路也可以。
灰度定标逻辑1101接收来自锁存电路905的彩色增强显示数据作为输入。灰度等级逻辑1101采用时间或帧调制技术产生灰度等级明暗度。在STN板中,每个彩色象素由1位表达,通过打开或关闭该象素可以产生不同的灰度等级。换言之,象素的亮度依赖于其激励持续时间。灰度定标逻辑1101的输出提供给锁存电路1102。锁存电路1102用于控制数据流进入STN数据格式逻辑1103。应该清楚,业界普通技术人员可以使用D型锁存电路或其它类型的锁存电路的结合很容易地实现锁存电路1102。
锁存电路1102的时钟是“与”门1106的输出,后者的输入是“与”门1104传播的时钟信号和使能信号EN13,使能信号EN13可以根据用户的选择产生于处理单元305的CPU所编程的控制寄存器位(未表示)中的一位或者来自电源管理电路(也未表示)。当传播时钟信号和使能信号EN13都是“高”时,“与”门1106输出“高”信号,否则,“与”门1106输出“低”信号。因此,锁存电路1102和“与”门1106结合作为灰度定标逻辑1101的时钟门控电路(第二级)。锁存电路1102的输出提供给STN数据格式逻辑1103的作为输入。STN数据格式逻辑1103根据STN显示协议和规则格式化所接收的数据,然后发送数据到锁存电路1105,后者被“与”门1104的输出所驱动。
“与”门1104的输入信号是时钟信号CLK和使能信号EN12,使能信号EN12可以根据用户的选择产生于处理单元305的CPU所编程的控制寄存器位(未表示)或者来自电源管理电路(也未表示)。当时钟信号CLK和使能信号EN12都是“高”时,“与”门1104输出“高”信号,否则,“与”门1104输出“低”信号。因此,锁存电路1105和“与”门1104结合作为STN数据格式逻辑1103的时钟门控电路(第一级)。
参考图12A-12C举例描述经过彩色一单色转换器901、抖动引擎904和TFT模块906的数据路径的时序图。更具体而言,图12A描述“与”门1003的输出和锁存电路1002的输出(即第二级),图12B描述“或”门910的输出和锁存电路905的输出(即第三级),图12C描述“与”门909的输出和锁存电路902的输出(即第四级)。应该清楚,对业界普通技术人员而言经过STN模块907的数据路径的类似的时序图可以很容易的作出。为了简洁和清楚起见,STN模块907的时序图此处没有提供。
由于将提供给FPI313内部的沿TFT模块906的数据路径的锁存电路的时钟信号实现为以与数据传播的方向相差180度的方向传播的串联配置,因此前面提到的三级的时钟信号按顺序发生(即第二,第三,然后是第四),其传播方向与数据传播方向相反。因此,如图12A-12C所示,第二级的时钟信号在第三级的时钟信号之前发生,第三级的时钟信号在第四级的时钟信号之前发生。由于相对于紧接的后续级时钟而言前面级时钟受到延迟,来自前面级的数据对在后续级锁存可用的保持时间将更长一些。举例而言,比较描述第四级(前面级的时钟)时钟信号的图12C和描述第三级(紧接后续级时钟)时钟信号的图12B,相对第三级时钟第四级时钟有延迟。因此,如图所示,对在后续级锁存有效数据具有更长的保持时间Th。这说明上述方案对在置入和确定时钟线期间引入的时钟偏移、时钟缓冲驱动强度的变异性、在时钟线上装载的变异性的允许裕度更大。
在本发明中,D型锁存电路用于此第二实施例(如锁存电路902,905,1003,1102和1105)在时钟上升沿锁存于其输入端接收的数据。由于本发明固有的特征,对锁存有效数据可用的保持时间Th更长。举例而言,如图12A-12C,锁存电路902(第四级)在时钟周期内锁存的数据可以由锁存电路905(第三级)获得并锁存(比如,足够长的保持时间Th),锁存电路905锁存的数据可以由锁存电路1003(第二级)获得并锁存(比如,足够长的保持时间Th),其时间在下一个时钟周期的数据被锁存并使当前数据无效之前。
结合本发明的两个实施例,我们描述了时钟门控电源管理系统、装置和方法。尽管本发明是以特定实施例来描述的,但是不应该把本发明看作是限制于这些实施例,而应该根据下面的来看待本发明。
权利要求
1.一种时钟门控装置,所述时钟门控装置耦合到多个相互连接的数据路径,所述数据路径对数据进行处理,使所有所述数据按第一方向传播,所述时钟门控装置包括连接到所述数据路径的预定的位置处的多个时钟门控电路,所述多个时钟门控电路以串联方式相互连接,以便所述时钟信号按与所述第一方向相反的第二方向传播,每个所述时钟门控电路耦合到对应的一个数据路径,从而允许该时钟门控电路按要求使能或禁止所述对应的数据路径。
2.根据权利要求1所述的时钟门控装置,其中所述数据路径是最终合并到单一数据路径的并行数据路径。
3.根据权利要求2所述的时钟门控装置,其中所述数据在任何给定时间都沿多个并行数据路径传播。
4.根据权利要求1所述的时钟门控装置,其中所述数据路径从一个公共节点分离,而且所述数据在任何给定时间都只沿一个数据路径传播。
5.根据权利要求1所述的时钟门控装置,其中每个所述时钟门控电路包括锁存电路,用于接收来自所述对应数据路径的数据作为输入,所述锁存电路提供输出到在第一方向的后续数据路径;以及逻辑门,用于接收所述串联时钟信号和控制信号作为输入,所述逻辑门提供输出到所述锁存电路和在第二方向的后续时钟门控电路。
6.根据权利要求5所述的时钟门控装置,其中所述锁存电路是D型锁存器。
7.根据权利要求5所述的时钟门控装置,其中所述逻辑门是“与”门,控制信号是使能信号。
8.根据权利要求7所述的时钟门控装置,其中所述逻辑门是“或”门,控制信号是禁止信号。
9.根据权利要求3所述的时钟门控装置,其中所述数据路径用于图形、视频、和光标数据处理。
10.根据权利要求4所述的时钟门控装置,其中所述数据路径用于薄膜晶体管(TFT)和扭曲排列向列(STN)液晶显示器(LCD)。
11.一种计算机系统包括中央处理器;耦合到所述中央处理器的内存;耦合到所述中央处理器的内存控制器;耦合到所述中央处理器的显示控制器,所述显示控制器包括耦合到多个相互连接的数据路径上的时钟门控装置,所述数据路径对数据进行处理,以使所有数据按第一方向传播,所述时钟门控装置包括连接到所述数据路径的预定位置处的时钟门控电路,所述时钟门控电路以串联方式相互连接,以使时钟信号按照与所述第一方向相反的第二方向传播,每个所述时钟门控电路耦合到对应的一个数据路径,从而允许该时钟门控电路按要求使能或禁止所述对应的数据路径。
12.根据权利要求11所述的计算机系统,其中所述数据路径是最终合并到单一数据路径的并行数据路径。
13.根据权利要求12所述的计算机系统,其中所述数据在任何给定时间都沿多个并行数据路径传播。
14.根据权利要求11所述的计算机系统,其中所述数据路径从公共节点分离,而且所述数据在任何给定时间都只沿一个数据路径传播。
15.根据权利要求11所述的计算机系统,其中所述每个时钟门控电路包括锁存电路,用于接收来自对应数据路径的数据作为输入,所述锁存电路提供输出沿第一方向到后续数据路径;以及逻辑门,用于接收串联时钟信号和控制信号作为输入,所述逻辑门提供输出到所述锁存电路和沿第二方向的后续时钟门控电路。
16.在具有多个相互耦合的数据路径并用于处理数据使之按第一方向传播所述数据的电路中,一种节约电源的方法,该方法包括下列步骤在具有多个连接到数据路径的预定位置处并且连接到一起的时钟门控电路、使之按与第一方向相反的第二方向以串联方式相互连接的时钟门控装置中,每个所述的时钟门控电路连接到对应的一个数据路径,并按第二方向传播时钟信号;和通过使能对应的时钟门控电路使能使用的数据路径。
17.根据权利要求16所述的方法,其中所述的数据路径是最终合并到单一数据路径的并行数据路径。
18.根据权利要求17所述的方法,其中,在任何给定时间都使能任意数量的并行数据路径。
19.根据权利要求16所述的方法,其中所述数据路径从公共节点分离,而且所述数据在任何给定时间都只使能一个数据路径。
20.根据权利要求16所述的方法,其中每个所述时钟门控电路包括锁存电路,用于接收来自对应数据路径的数据作为输入,所述锁存电路提供输出到沿第一方向的后续数据路径;和逻辑门,用于接收串联时钟信号和控制信号作为输入,所述逻辑门提供输出到所述锁存电路和沿第二方向的后续时钟门控电路。
全文摘要
本发明提供了一个成本低且能节约电源的时钟门控装置。所实现的时钟门控装置可按要求被使能或禁止用于处理数据的数据路径同时防止时钟偏移。时钟门控装置包括多个时钟门控电路,其中,每个时钟门控电路用于一数据路径。在第一实施例中,当所有数据路径按第一方向传播数据并最终在某个节点合并在一起时,时钟门控电路以串联方式相互连接并按与第一方向相反的第二方向传播时钟信号。在第二实施例中,并行数据路径按第一方向相互排斥地传播数据,而时钟门控电路以串联方式相互连接并按与第一方向相反的第二方向传播时钟信号。
文档编号G09G5/18GK1357135SQ99806870
公开日2002年7月3日 申请日期1999年3月29日 优先权日1998年4月1日
发明者伊格内修斯·詹德拉素维塔 申请人:伊格内修斯·詹德拉素维塔
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1