背景技术
差分传信(signaling)是使用在两条分开的导线上发送的两个互补信号电学地传输信息的方法。信号值是两条分开的导线上的电压电平的差,并且该值形成传输的信号。接收设备感测两个信号之间的差并忽略每条导线相对于地的各自的电压。因此,差分传信使能够分辨处于较低电平的信号。此传输技术可以用于模拟传信和数字传信。差分传信的例子包括但不限于LVDS(低电压差分传信)、差分ECL(发射器耦合的逻辑)、PECL(正发射器耦合的逻辑)、LVPECL(低电压正发射器耦合的逻辑)、RS-422、RS-485、以太网(双绞线)、USB(通用串行总线)、串行ATA、TMDS(最小化传输差分信号)、火线(IEEE1394)以及HDMI(高清晰度多媒体接口)。
因为差分传信改善了在单端传信上的系统噪声抗扰性,诸如可携式或移动设备的许多电子应用可以降低供给电压以便节省电力并降低不希望的发射辐射。例如,在差分线上传输的电压可以比单端传信低得多。通过TXDP和TXDN传输的差分信号电平大约是200mV。TXDP和TXDN之间的差表示逻辑“高”或“低”。
差分信号可以在两个设备之间发送,第一设备可以是主机设备(比如计算机、个人数字助理、移动电话等),第二设备可以是与主机设备相接口的设备(比如存储卡、WiFi设备或者任何其它外围设备)。设备之一可以经由差分信号向另一设备发送省电命令以进入省电状态。省电状态可以包括休眠或者空闲状态。省电状态是通过降低对于设备内的组件中的一个或多个的电力、比如对设备内的一个或多个组件断电来节约电力的电力管理模式。在接收到省电命令之后,设备改变其配置以便进入省电状态以及以便(当发送用于“唤醒”或退出省电状态的随后命令时)从省电状态退出。
设备的一个示例配置在图1中绘出。在主机/发送器侧,该输出发送器被配置为处于高阻抗(HIZ)。HIZ是输出端当前不由电路驱动的状态。在数字电路中,这意味着信号既未被驱动到逻辑“高”电平也未被驱动到逻辑“低”电平。这样的信号可以被看作是开路(或者“浮置”导线),这是因为将其连接到低阻抗电路将不影响该电路;而是其本身被拉动到与有效驱动输出相同的电压。
在卡/接收器侧,关闭/断开一系列开关以便配置该接收器。具体地,将用于普通差分传信的高速终端电阻器的低值电阻器(比如50Ω)从差分接收器线(RXDP、RXDN)断开并且将高值电阻器(比如几KΩ)连接到差分接收器线(RXDP、RXDN)。高值电阻器(在图1中示出为R-Large的)在与输出发送器的HIZ状态组合时模拟接收器侧的逻辑“低”。当主机设备退出HIZ并开始驱动RXDP、RXDN上的有效信号时,接收器使用检测器(DET)检测唤醒信号。
图1中的配置具有几个缺点。首先,该配置需要在接收器侧的两组可切换电阻器,其中一组具有几KΩ的电阻。其次,图1中的配置易受到电磁干扰(EMI),因为R-Large电阻器的值如此高,需要更复杂的操作来抵制EMI脉冲。
设备的另一示例配置在图2中绘出。在发送休眠命令之后,主机将其发送器输出设置为HIZ。并且,主机接通可切换上拉电阻器,以便两条差分线都被上拉到V-PULL UP。在主机和卡之间存在固有的接地偏移电压。该接地偏移电压被添加到V-PULL UP,并且总电平可能是过电压(overvoltage)并且对接收器晶体管有害。在图2中绘出的配置因此要求卡接收器包括用于保护输入晶体管的特殊电路。
再次,图2中绘出的配置具有几个缺点。首先,主机设备需要几个另外的组件,包括上拉电阻器。其次,卡接收器需要另外的特殊电路来解决接地偏移。并且,该特殊电路限制了差分传信的频率范围,仅支持最高达1.5Gbps的频率。
因而,对于省电状态的方案承受着过度的复杂性。
具体实施方式
通过介绍,以下实施例一般涉及在诸如休眠或空闲的省电模式之前、期间和/或之后一个或多个设备的操作。在一个实施例中,系统包括两个设备,第一设备担当发送器并且第二设备担当接收器。在第二实施例中,第二设备还可以担当发送器并且第一设备可以担当接收器,以便传输可以去往/来自第一设备和第二设备的每个。
第一设备可以与单个第二设备通信,或者,第一设备可以与多个第二设备通信。此外,第一设备可以经由差分传信与该一个或多个第二设备通信。第一设备可以是主机设备,并且第二设备可以是一个或多个卡。如以下更详细讨论的,主机设备可以向一个或多个卡发送省电命令以便该一个或多个卡进入省电状态。主机设备可以配置其自身的至少一部分用于省电状态。并且,一个或多个设备可以配置其自身用于省电状态。此外,该一个或多个卡可以向主机设备发送省电命令以便主机设备进入省电状态。该一个或多个卡可以配置其自身的至少一部分用于省电状态。并且,主机设备可以配置其自身用于省电状态。
发送省电命令的设备将其传输差分信号线的至少一条配置为预定低电压和/或低阻抗。低阻抗是50Ω的量级基本等于或小于50Ω。例如,低阻抗可以是用于差分信号线的终端电阻器中的一个、一些或所有的量级或基本等于该终端电阻器中的一个、一些或所有。作为另一例子,低阻抗可以是差分信号线之一或两者的特性阻抗的量级或者基本等于该特性阻抗。
在一个实施例中,发送省电命令(比如休眠命令和/或唤醒命令)的设备将传输差分信号线两者配置到相同的(或基本相同的)预定低电压,并将差分信号线两者配置到低阻抗。在一个替换实施例中,发送省电命令(比如休眠命令和/或唤醒命令)的设备仅将传输差分信号线中的第一条配置到预定低阻抗和低电压。传输差分信号线中的第二条可以与该传输差分信号线中的第一条不同地配置,比如配置到高阻抗。
预定低电压可以是几个电压之一。在一个实施例中,预定低电压是0V。例如,0V可以包括对于发送省电命令的设备的至少一部分的电路地,比如对于主机设备的驱动器电路的电路地。该驱动器电路可以用于通过在差分信号线上放置和驱动信号来经由差分信号线传输数据。
在一个替换实施例中,预定低电压大于0V。具体地,预定低电压可以低于最低差分传信电压,高于最高差分传信电压,或者在最低差分传信电压和最高差分传信电压之间的范围内。
如上所述,在一个实施例中,差分信号线两者都被设置到(或基本设置到)预定低电压。具体地,两条差分信号线的每条上的电压可以被配置为等于预定低电压和低阻抗。例如,在LVDS(低电压差分传信)的一个实现方式中,VOL=1.0V,VOH=1.4V,VCC=2.5-3.3V,并且VEE=GND。在一个实施例中,两条差分信号线的每条上的电压可以被配置为小于VOL,比如基本小于1.0V或者等于GND。
或者,两条差分信号线的每条上的电压可以被配置为不同的低电压,配置的低电压的差小于预定差。可以基于用于退出省电状态的差分唤醒信号来选择该预定差。具体地,差分唤醒信号可以具有至少最小差。该预定差可以小于差分唤醒信号中的最小差以便接收器不将省电状态期间在差分信号线上的电压错误地翻译为差分唤醒信号。
在LVDS的例子中,取决于发送的逻辑,发送器可以将小电流(比如3.5mA)注入差分信号线之一中。电流经过在接收端处的可能处于50到120Ω的范围内并且匹配于差分线的特性阻抗的电阻器,然后沿着另一条线在相反的方向上返回。根据欧姆定律,电阻器(如果其是大约100Ω)两端的电压差因此在大约350mV。接收器感测此电压的极性以确定逻辑电平。因此,差分信号上的电压之间的预定差可以小于350mV,即差分唤醒信号中的最小差。
主机设备可以按几种方式之一配置差分信号线之一或两者上的预定低阻抗和低电压。主机设备可以使用无源或者有源电组件以便配置差分线上的电压。作为一个例子,主机设备可以包括一个或多个开关来配置差分线上的电压。该一个或多个开关可以是主机设备驱动器电路的部分(如以下关于图4讨论的)。或者,一个或多个开关可以与主机设备驱动器电路分离(如以下关于图5讨论的)。
该一个或多个开关可以将差分信号线接地以便将差分信号线配置为预定低电压和低阻抗。例如,第一开关可以将差分信号线中的第一条直接接地(例如,从第一开关至地仅有导线管(conduit)并且在其之间没有中间电组件),并且第二开关可以将差分信号线中的第二条直接接地(例如仅从第二开关导向地,并且在其之间没有中间电组件)。作为另一例子,第一开关可以将差分线中的第一条连接到第一中间电组件(比如第一电阻器),并且该第一中间电组件可以接地,并且差分线中的第二条连接到第二中间电组件(比如第二电阻器),并且该第二中间电组件可以接地。
或者,该一个或多个开关可以将差分信号线连接到与地不同的预定低电压和低阻抗。例如,可以使用调压器来输出预定低电压和低阻抗。该一个或多个开关可以将差分信号线连接到调压器输出。
与主机设备通信的设备接收在差分信号线之一或两者上的预定低电压和低阻抗。与主机设备通信的设备的一个例子是卡,比如包括存储器器件的卡。存储器器件的例子包括但不限于安全数字(“SDTM”)存储卡(相对慢的闪存器件的例子)以及超高速型II(UHS-II)存储卡(更快的闪存器件的例子)。SD是SD-3C LLC的商标。UHS-II是对于下一代SDTM卡的由SD协会开发的标准,并且是“高速协议”的一个例子。卡的另一例子可以是通用闪存(“UFS”)存储器件。“UFS”是由为电子设备工程联合委员会(“JEDEC”)固态技术协会工作的UFS工作组开发的标准。
在一个实施例中,卡可以包括检测差分信号线之一或两者上的唤醒信号的唤醒信号检测器。唤醒信号检测器的一个例子可以包括接收差分信号线上的预定低电压作为输入的差分放大器。在另一实施例中,卡可以包括与唤醒信号评估器组合的唤醒信号检测器。唤醒信号评估器可以评估唤醒信号的至少一个方面,比如唤醒信号是差分信号“高”还是差分信号“低”。基于确定的唤醒信号,卡可以由此醒来。例如,第一唤醒信号可以指示在空闲状态之后醒来的指令。在此情况下,卡可以向其电组件中的一个或一些(比如其接收器和发送器)重新供电。作为另一例子,第二唤醒信号可以指示要在唤醒期间执行的特殊指令。在此情况下,在接收到第二唤醒信号之后,除了向其电组件中的一个或一些重新供电之外,卡可以进行预定过程。
以此方式,主机设备和与主机设备通信的设备可以被配置为:提供有效的电学方法以传信移动到省电状态;在省电状态期间有效地保持差分线;和/或从省电状态恢复。与图1和2中公开的配置相比,本配置可以用更少的EMI、更小的底材面(real-estate)(例如硅面积)和/或更小的接地偏移效应来进行。
图3是发送/接收休眠和唤醒命令的主机设备300和设备305的框图。如图3所示,主机设备300包括发送器TX310和接收器RX320。类似地,可以包括卡或外围设备的设备305包括发送器TX340和接收器RX330。主机设备300可以向设备350发送主机休眠命令。主机休眠命令可以由设备305使用以便将电力从设备305的至少一部分、比如接收器RX330关掉或者移除。主机设备300还可以闭合开关315以将每条差分信号线连接到地。为了唤醒设备305,主机设备300发送主机唤醒命令。为了感测主机唤醒命令,设备305包括检测器DET335,如以下更详细讨论的。主机唤醒命令可以由设备305使用以便将设备305的至少一部分、比如接收器RX330上电。
设备305还可以向主机设备300发送设备休眠命令。该设备休眠命令可以由主机设备300使用以便将电力主机设备300的至少一部分、比如接收器RX320关掉或移除。设备305还可以闭合开关345以将每条差分信号线连接到地。为了唤醒主机设备300,设备305发送设备唤醒命令。为了感测该设备唤醒命令,主机设备300包括检测器DET325。设备唤醒命令可以由主机设备300使用以便将主机设备300的至少一部分、比如接收器RX320上电。
图4绘出主机设备410和卡420的框图。在图4所示的配置中,主机设备410担当发送器,并且卡420担当接收器。此外,图4例示主机设备410包括发送器TX。在省电状态期间(比如在已经从主机设备发出省电命令之后但是在发送唤醒命令之前),发送器TX被配置为具有低阻抗输出LOWZ。低阻抗输出LOWZ可以在差分信号线TXDP和TXDN之一或两者上输出。
卡420包括差分信号线RXDP和RXDN。卡420还包括额定值为50Ω的两个电阻器R以及值为几十皮法的电容器C。作为高速终端电阻器的2个电阻器R以及电容器C用于普通差分传信。卡420还包括用于接收差分信号线RXDP和RXDN上的信号的接收器RX。卡还包括被配置为检测唤醒信号以及检测唤醒信号的类型的检测器DET。例如,DET可以包括用于确定信号线上的差分电压的差分放大器以及用于确定逻辑值(逻辑“低”还是逻辑“高”)以确定唤醒信号的类型的逻辑,如以下更详细讨论的。
图5是图4中所示的主机设备410的扩展框图的一个例子。主机设备500可以包括处理器510、存储器器件520以及用于在主机设备500的各个组件之间通信的总线530。处理器510是用于控制主机设备500的一个或多个操作的控制器(比如微控制器)或者运算逻辑单元。主机设备500还包括用于驱动传输线TXDP和TXDN中的一个、另一个或两者的驱动器电路550。当经由传输线TXDP和TXDN传输数据时,驱动器电路550放置并驱动信号到传输线TXDP和TXDN上以便传输线TXDP和TXDN上的电压差形成差分信号对。一对差分信号通常是电流波形彼此一百八十度(180°)异相的两个信号。
此外,在图5描述的实现方式中,总线530是并行总线,并且驱动器电路550接收串行输入。为了协调此差别,串行器540担当并行总线530和驱动器电路550的串行输入之间的接口。在操作中,处理器510可以访问存储器520以便向驱动器电路550配置命令。处理器510经由总线530发送命令。总线530向串行器540发送命令,该串行器540又将该命令转换为串行输入命令用于输入到驱动器电路550。驱动器电路550接收该串行输入命令并由此配置其自身。在一个方面,驱动器电路550接收的串行输入命令包括用于配置驱动器电路550内的一个或多个开关以将差分信号线TXDP和TXDN接地的命令。例如,驱动器电路550响应于接收到串行输入命令,可以配置一个或多个开关以便差分信号线TXDP和TXDN两者连接到驱动器电路550的地。在另一方面,驱动器电路550接收的串行输入命令包括用于将差分信号线TXDP和TXDN从地断开的命令。响应于此命令,驱动器电路550可以控制驱动器电路550中的一个或多个开关以将差分信号线TXDP和TXDN从地断开。
图6是图4所示的主机设备的扩展框图的第二例子。代替驱动器电路550包括用于将差分信号线TXDP和TXDN连接到地的开关,开关610包括用于将差分信号线TXDP和TXDN连接到主机设备600的至少一部分的地、比如驱动器电路550的地的一个或多个开关。开关610可以包括一个或多个晶体管。处理器510可以向开关610发送第一命令以将差分信号线TXDP和TXDN连接到地。具体地,开关610可以包括第一开关和第二开关。处理器510可以向第一开关和第二开关发送相同的信号以便第一开关闭合(将第一差分线电连接到地)以及第二开关闭合(将第二差分信号线电连接到地)。或者,处理器可以向第一开关发送第一信号以便闭合第一开关,并且向第二开关发生第二信号以便闭合第二开关。处理器510可以向开关610发送第二命令以将差分信号线TXDP和TXDN从主机设备600的至少一部分的地断开。
图7是图4中所示的卡420的扩展框图的一个例子。卡420包括差分唤醒信号检测器710,其包括配置为检测差分唤醒信号是否出现在差分信号线RXDP和RXDN上的电路。在一个方面,差分唤醒信号检测器710被配置为比较差分信号线RXDP和RXDN上的电压以确定电压差是否超过预定量(比如100mV)。用于差分唤醒信号检测器710的电路可以包括放大器(如关于图8讨论的)。或者,用于差分唤醒信号检测器710的电路可以包括配置为比较差分信号线RXDP和RXDN上的电压的处理器或者其他类型的控制器。差分唤醒信号检测器710可以产生两个输出:(1)指示是否已经接收到差分唤醒信号的唤醒信号以及(2)指示差分唤醒信号的逻辑值的线状态。
卡420还可以包括差分唤醒信号评估器720。差分唤醒信号评估器720可以对唤醒信号做出响应。具体地,响应于指示已经接收到差分唤醒信号的唤醒信号,差分唤醒信号评估器720可以评估线状态。例如,线状态可以指示差分“低”或差分“高”。唤醒信号评估器720可以基于在差分信号线上的值来确定差分唤醒信号的类型。差分“低”可以指示第一类型的唤醒信号,差分“高”可以指示第二类型的唤醒信号。差分唤醒信号评估器720的输出(OUT)可以经由总线650发送到存在于卡420中的处理器630。处理器630可以依赖于差分唤醒信号的类型确定唤醒的类型,并访问存储器640以便根据唤醒信号的类型确定用于唤醒的一系列过程。例如,第一类型的唤醒可以是引导(boot)唤醒,这是指示卡420应该进行引导过程的唤醒信号。因此,响应于接收到引导唤醒,设备可以进行一个或多个过程以引导卡420。第二类型的唤醒可以是休眠唤醒,这是指示卡420应该进行休眠唤醒的唤醒信号。因此,响应于接收到休眠唤醒,设备可以向卡420的一个或多个部分、比如接收器Rx提供电力。
图8(包括图8A和图8B)是图4中所示的主机设备和卡的扩展框图的另一例子,其中在休眠模式期间,主机设备800和卡810两者被配置。主机设备800包括四个开关SWA、SWB、SWC和SWD。如以上关于图5和图6所示,四个开关可以是驱动器电路的部分或者可以与驱动器电路分离。在将主机设备800设置到休眠模式时,SWA和SWB断开,SWC和SWD闭合。以此方式,差分信号线连接到主机设备800的地,比如传输地Tx GND。如图8所示,传输地TxGND连接到接收器地RxGND。或者,SWA和SWB可以将差分线从驱动器电路的一个或多个放大器断开。例如,驱动器电路可以包括第一放大器和第二放大器。在差分传信期间,第一放大器可以用于在第一差分线上驱动第一电压,第二放大器可以用于第二差分线上驱动第二电压。在省电模式,第一放大器和第二放大器可以关闭。此外,SWA可以断开以将第一放大器从第一差分信号线电断开,并且SWB可以断开以将第二放大器从第二差分信号线电断开。
而且,主机设备800内的组件可以被禁用,比如高速接收器HS Rcvr1。因此,由于差分信号线简单地连接到地(而不是被上拉到一电压,如图2所示),被消耗用于保持差分信号线的电力低于依赖于上拉晶体管的配置。此外,主机设备不需要添加任何另外的电阻器或者断开主机设备800上的任何电阻器以便配置主机设备800用于休眠模式。而是,被用作一般差分传信的高速终端电阻器的RtermTx在休眠模式期间可以保持连接到差分信号线。
在将卡810设置到休眠模式时,卡810内的组件可以被禁用,比如高速接收器HS Rcvr2和高速驱动器HS Driver。此外,卡不需要添加任何另外的电阻器或者断开卡810上的任何电阻器以便配置卡810用于休眠模式。而是,无需重新配置被用作高速终端电阻器的RtermTx以及用于双工的开关SWntermRx以及SWptermRx。例如,开关SWntermRx以及SWptermRx在休眠模式期间可以断开或闭合。这不同于图1中所示的配置,该配置需要另外的开关和大Ω的电阻器,并且有问题伴随那些组件。卡810还可以包括差分活动性检测器,其是图7所示的差分唤醒信号检测器710的一个例子。该差分活动性检测器可以包括具有磁滞(hysteresis)运算放大器。可以选择该运算放大器的磁滞以便其大于在休眠模式期间在差分信号线上的任何电压差,但是小于在发送差分唤醒信号时在差分信号线上的电压差。差分唤醒信号检测器710的输出可以被发送到活动性检测器逻辑(ADL)。该活动性检测器逻辑(ADL)是差分唤醒信号评估器720的一个例子。该活动性检测器逻辑(ADL)可以输出指示差分唤醒信号的类型的一个或多个输出信号。
图9是从发送器的角度的省电操作的流程图900的例子。在905,发送器发送休眠命令。如上所述,主机设备或者诸如卡的外围设备可以经由一个或多个驱动器电路发送休眠命令。为了发送休眠命令,处理器可以指示发送器经由发送器发送休眠命令,比如处理器510可以指示驱动器电路550通过在差分信号线上驱动互补电压以编码休眠命令来发送休眠命令。
在发送休眠命令之后,处理器可以发送配置差分信号线用于休眠的指令。在910,配置差分信号线用于休眠的指令可以由发送器接收。例如,用以配置差分信号线用于休眠的指令可以包括闭合一个或多个开关的指令。诸如驱动器电路550的驱动器电路或者开关610可以接收该用以配置差分信号线用于休眠的指令可以。响应于接收到该指令,在915,发送休眠命令的设备的至少一部分将两条差分信号线接地。例如,响应于接收到来自处理器的该指令,驱动器电路可以闭合一个或多个开关。
然后,发送器等待接收退出休眠的指令,如决定块920所示。例如,主机设备500中的处理器510可以等待以在要退出休眠时发出该指令。当到时间退出休眠时,处理器510发送该指令(比如配置一个或多个开关的指令)。响应于接收到退出休眠的指令,在925,发送器将两条差分信号线从地断开。在930,发送器还可以确定唤醒的类型(比如引导唤醒或者休眠唤醒)。并且,在935,发送器发送包括有唤醒类型的唤醒命令。
图10是从接收器的角度的省电操作的流程图1000的例子。在1005,接收器接收休眠命令。如上所述,主机设备或者诸如卡的外围设备可以接收休眠命令。响应于接收到该休眠命令,在1010,该设备关闭其自身的至少一部分。例如,响应于接收到休眠命令,该设备可以关闭接收器。然后,该设备等待接收唤醒信号,如1015的决定块所示。响应于接收到唤醒信号,在1020,该设备确定接收的唤醒信号的类型。如上所述,可以发出多个唤醒信号之一。唤醒信号的类型可以确定为退出省电状态所进行的一个或多个操作。在1025,该设备通过基于确定的唤醒信号的类型将其自身接通而从省电状态退出。
意图将以上详细描述理解为对本发明可以采取的所选形式的例示而不是对本发明的限定。意图仅由以下权利要求包括所有等效物来定义本发明的范围。