利用可附着子模块的电子设备的快速配置的制作方法

文档序号:6429504阅读:126来源:国知局
专利名称:利用可附着子模块的电子设备的快速配置的制作方法
技术领域
本发明涉及通过附着子模块可以被延伸或修改的电子设备的自动配置。尤其地,涉及便携式电子设备。
背景技术
存在许多根据需要通过附着子模块可以被延伸、被修改或被适应的电子设备。尤其当手持设备和消耗者设备提供扩展基本系统的选项时或当使用户能够添加超越设备就其基本配置所提供的特性时,其可以被制造成更为吸引人。
手持电话,例如GSM电话,可以例如通过允许添加MP3特性或无线电调谐器(仅举出两个实例)而被修改。大多数个人数字助理(PDA)具有非常小的键盘。如果当需要时将有可能附着较大的键盘,则PDA可几乎像常规个人计算机一样被使用。人们可同样通过允许附着相机、或一些扬声器而添加多媒体能力。
主要议题是每当子模块被插入或移走时变得必要的重新配置。重新配置必须直接且可靠,这样它可以由用户完成而无需首先读取手册。一些个人计算机及相似系统具有所谓的即插即用特性。即插即用基本上意味着模块(例如PCI适配卡、外围设备等)可以被插入而无需担心硬件和软件的配置议题。计算机能够探测到新的模块且能够自动地将其嵌入在给定环境中。
JTAG是针对集成电路(IC)或板的测试而特别设计和使用的协议。JTAG的详情被定义在IEEE标准1149.1-1990中。基本上,JTAG实施包括JTAG主机(也称为JTAG控制器)以及至少一个JTAG从属机。JTAG主机发出JTAG指令来控制和测试JTAG从属机。
尽我们所知,目前不存在用于具有可插进的或可移走的子模块的电子设备的自动配置协议。

发明内容
因此本发明的目的是提供可以通过附着子模块被增强/被修改的电子设备,借此配置被自动完成。
因此本发明的目的是提供一种在子模块被附着上或移走之后用于电子设备自动配置的方法。
根据本发明的一方法在权利要求1中被声明。
各种有利方法在权利要求2至7中被声明。
根据本发明的装置在权利要求8中被声明,且各种有利实施例在权利要求9至17中被声明。
根据本发明,标准的JTAG协议(针对IC或板的测试而设计的协议)被用于配置目的。JTAG协议被使用,以为了自动配置包括控制单元和用于附着/连接子模块的多个插槽的电子设备。通过从子模块读取识别信息、通过向一个或多个子模块写入和/或读取参数、通过时常重新检查电子设备的配置以探测配置是否已经变化、以及在探测到配置变化的情况下通过重复一些或全部上述步骤,配置得以完成。
根据本发明的一种装置包括控制单元、用于附着/连接子模块的多个插槽、以及用于将所述控制单元与被附着/连接到所述插槽的那些子模块互连的装置。所述控制单元能够发出命令,以为了将子模块置于旁路模式、从子模块中读取识别信息、向至少于模块之一写入参数和/或从中读取识别信息、以及重新检查通过添加或移走子模块电子设备的配置是否已经变化。
本发明的其它优点就有关详细的实施例被提出。


为了对本发明更完整的说明以及为了其进一步的目的和优点,参考结合所附附图的下述说明,在所述附图图1是根据本发明包括一个子模块和两个空插槽的电子设备的示意图。
图2是根据本发明包括两个子模块和一个空插槽的电子设备的示意图。
图3是根据本发明用在子模块中的JTAG从属机的示意方框图。
图4是根据本发明用在从属处理器的控制处理器中的状态机的示意性表示。
图5是根据本发明利用微处理器被实施的控制处理器的示意性方框图。
图6是根据本发明利用特定硬件被实施的控制处理器的示意性方框图。
图7A、7B是根据本发明的两个步骤的示意性表示。
具体实施例方式
在本环境中电子设备的表达意味着包括设备如个人数字助理(PDA)、蜂窝电话、计算终端、手持计算机、相机、多媒体设备、消耗者设备、DECT设备等。这个清单并不意味着是详尽的。
子模块的实例是GSM/UMTS调制解调器、MP3播放器、FM收音机、PDA、彩色显示器、键盘等。这个清单并不意味着是详尽的。
如图1和图2中所示例,根据本发明的电子设备10包括主控制处理器11和几个可附上的/可拆下的子模块12,13。电子设备10的主板14包括连接器15等,其允许子模块12,13被附着和被拆下。存在总线结构和将连接器15与控制处理器11互连的若干互连。在本实施例中,存在回路互连16,其形成串行连接根据JTAD标准专用的TDI和TDO数据管脚的闭合回路。在空插槽(其中没有子模块被插入的插槽)情况下,通过连接TDI数据管脚和TDO数据管脚回路被闭合。除这两个管脚以外,连接器15还可包括由运行电子设备10的应用(被称为应用连接17)所使用的管脚,且它可包括由JTAG标准所定义的TAP管脚和TAP连接18。
取决于所需要的应用,在送电之前或者当应用正在运行时通过插进新的子模块可由用户修改系统的硬件配置。在图1中,电子设备10被示在包括仅一个子模块12的配置中。存在其中TDO和TDI管脚被串行连接的两个空插槽。在图2中,示出同一电子设备10。第二子模块13已经被附着。运行电子设备10的主应用的控制处理器11能够快速探测到系统配置的这个修改。子模块可以被插进连接器以修改系统的配置。控制处理器11可以支持主应用硬件和软件,例如电话应用或PDA应用。控制处理器11具有主JTAG控制器19的特点,其可以串行地访问每个子模块12,13的从属机JTAG20。它探测所连接的子模块12,13的存在和类型,并且相应地使应用软件适应。除了从属JTAG控制器20以外,子模块12,13还包括应用专用硬件和软件(在图1和2中未被示例)。
根据本发明,标准JTAG协议被用来实时探测子模块12,13的连接和断开并且用来在每个子模块12,13上读取和写入一些参数。
在本实施例中,连接器15是以与Test Access Port(测试存取端口)(TAP)兼容的至少四个管脚TMS,TDI,TDO,TCLK,外加TRST_N作为选用管脚为特点的JTAG连接器。其它管脚可由例如下述应用所使用存储器的数据和地址总线以及键盘的控制总线。JTAG连接器15被串行链接在主板14上。当连接器15未被使用时,管脚TDI和TDO从机械上或电子上被短路。当子模块被插进时,管脚TDI,TDO被连接到从属JTAG控制器2O的相应管脚。线TCK,TMS,TRST_N对于所有子模块12,13是公用的。当JTAG标准支持对从属JTAG控制器20复位的其它方法时,TRST_N管脚可以被去除。
子模块12的实例被示例于图3。每个子模块具有被存储在数据寄存器21中的特定(优选地唯一的)识别符IDCODE。在32位上被编码的这个识别符可与JTAG标准兼容。它可包含版本号和由应用所使用的其它参数,其可以通过TAP连接器15被读取。这样通过扫描输入与所需要一样多的位直至探测到已知的识别符IDCODE,控制处理器11能够探测哪个子模块被连接到电子设备10。当检查是否所有部件都存在且是否是正确类型时,相同的概念通常被应用到具有外部测试设备的测试板。
子模块被装备有作为子模块12上独立芯片而被实施的或者被集成在子模块12的芯片中的标准JTAG控制器20。
从属JTAG控制器20是基于Join Test Action Group(JTAG)标准。JTAG校准的详细说明可见于IEEE Standard Test Access Portand Boundary-Scan Architecture,IEEE Standard 1149.1-1990。JTAG硬件包括Test Access Port(TAP)22、翻译被发送到JTAG子模块12上的命令的TAP控制器(TAPC)23、指令寄存器(IR)24、以及Test Data Registers(TDR)25组。IDCODE被存储在TDR25之一即寄存器21中。所有的寄存器可以在移位寄存器中被捕捉且被移出(shift out)到TDO端口26,或根据被从TDI端口27被移入(shifted-in)的值而被更新。
在本实施例中,TAP22包括下述管脚TCK(Test clock)(测试时钟)运行在20MHz范围内且独立于应用时钟的JTAG时钟。
TDI(Test Data Input)(测试数据输入)27JTAG控制器20中的串行输入,在TCK的上升沿被采样。
TDO(Test Date Output)(测试数据输出)26JTAG控制器20的串行输出,在TCK的下降沿被触发。
TMS(Test Mode Select)(测试模式选择)28用于控制TAPC23,在TCK的上升沿被采样。
TRST_N(Test Reset)(测试复位)TAPC23的任选异步复位。
优选地,TAP控制器23遵从图4中所示例的下述标准Finite StateMachine(有限状态机)(FSM)的操作,借此所有过渡由TMS输入28的状态来控制。下述表达被用在图4中Capture(捕捉)在移位寄存器中拷贝寄存器;Update(更新)将移位寄存器拷贝到寄存器;指令保持激活,直至再次得到Update_IR。
状态机的更详细说明可以见于上述提到的IEEE标准及US专利6,000,051,其两者被引入作为参考。
TAP控制器23更新指令寄存器IR24。然后相应的指令被执行且可以启动标准的测试程序或连接TDI输入27和TDO输出26之间的数据寄存器TDR25,其将经由回路16和控制处理器11被扫描入或扫描出。
标准的JTAG指令是INTEST用于测试EXTEST用于测试SAMPLE/PRELOAD用于测试BYPASS(IR寄存器24根本被设置到逻辑“1”)这个指令连接TDI27和TDO26之间的BYPASS寄存器28。
IDCODE这个指令连接TDI26和TDO27之间的子模块12的识别码。
为了简化实施,优选地是具有下述限制性所有子模块的JTAG指令寄存器具有为Ninstr_长度位(例如6位)的相同长度,因此能够将Ninstr_长度编码成2的幂(power2)指令。在简单方案中每个指令(标准指令除外)可以寻址被包括在每个子模块12,13中的特殊TDR寄存器25之一。具有不同长度的指令寄存器的方案可以得到研制,但将使配置探测更加复杂。对于本发明的本实施,在复位时或操作期间利用即将被控制处理器11读取的子模块12,13参数一些应用数据寄存器TDR25被初始化。相同或其它的寄存器可以被写入,以设置子模块12,13的配置参数。为了存取这些数据寄存器25,新的应用具体指令被添加到标准指令中,像例如CONFIG_REGx连接在TDI27和TDO26之间的当前子模块的寄存器REGx。捕捉、移位及更新动作可被执行。
根据本发明,如图5中所示例,控制处理器11被装备有特定主JTAG控制器19,其监视子模块12,13的从属JTAG控制器20。在标准的JTAG测试环境(由IEEE标准所规定)中这个功能由测试设备进行。如下所解释,主JTAG控制器19可以以在微处理器上运行的软件或以硬件被实施。
在图5中,给出主JTAG控制器19的微处理器的实施。主JTAG控制器19完全地由在微处理器29上运行的软件实施,所述微处理器装备有能够驱动TDO,TMS,TRST_N并且输入TDI输入的并行端口30。微处理器29可与被用来运行电子设备10的主应用31(例如蜂窝电话的电话应用)的微处理器相同。
运行在微处理器29上的软件接收具有来自主应用31的参数的命令,并且返回具有来自子模块12,13的参数的系统配置。在下章节将给出操作的详细说明。微处理器29产生信号TCK,TMS,TDO,TRST_N的全部波形并且根据主机的JTAG协议(与从属机相比较二进制极性被颠倒)对输入TDI的状态进行采样TOD在TCK的下降沿被触发。
TMS在TCK的下降沿被触发。
TDI在TCK的上升沿被采样。
作为选择地,如图6所示例JTAG主控制器19可完全地以硬件被实施。在图6中给出这样硬件实施的一个可能的方框图。JTAG主控制器19包括中央有限状态机32它从应用31接收命令且控制JTAG线。它将状态字通过由软件或由中断启动而可以轮询(poll)的状态寄存器33返回到应用31。
应用接口34它允许应用31来控制FSM32并且通过并行总线35读取/写入输入、输出寄存器。位数Nr优选地与微处理器36的字长例如32位如IDCODE长度相同。例如通过Phillips IIC接口、UART或任何其它标准串行接口,串行存取也是可能的。微处理器36可是CPU(例如,电子设备11的中央处理单元)。
输出和移位寄存器37应用31将字装载到输出寄存器37,其在FSM32的控制下被移出到TDO管脚。数字经由TDO管脚38被移出进入JTAG从属机20。
输入和移位寄存器39应用31可以读取在FSM32控制下从TDI管脚40移进的字。即来自JTAG从属机20的数据经由TDI管脚40被接收。数据既可以通过状态机32被直接读取(这是经由互连42进行的),数据又可以经由移位寄存器39被读取。
当在TCK的两个沿上事件应该被触发且其它被采样时,所有方框由与TCK相比较的倍频率时钟钟控。如上面所提到的参考所解释,JTAG管脚的时序是根据主机的JTAG协议。
在下述段中,主机19和从属JTAG控制器20的操作被加以说明。这个段给出有关这些控制器19和20的操作的更详细信息。
由主JTAG控制器19所执行的操作是复位从属JTAG控制器20在加电后且在执行应用期间从属JTAG控制器20将被复位。所有从属机的复位或者通过启动管脚TRST_N或者通过不断拉高TMS以及根据JTAG协议对TCK钟控而被执行。如果在操作期间,系统配置未被定义,则必要执行从属机的复位。这个复位并不影响应用具体数据寄存器。
检查系统配置主控制器19将扫描出JTAG命令以探测被连接的子模块12,13的数量且发现它们的识别码(识别信息)。配置以例如参数清单被返回到主应用31。主控制器19还将获知子模块12,13被连接到哪个连接器。检查应该被至少重复两次以保证因插入、拔下子模块12,13导致的瞬时值一直未被记录。在应用31的执行期间,优选地这个操作应该连续地每隔一定间隔(例如2秒)被重复,以探测配置的修改(移走子模块,添加子模块)。根据JTAG协议,在复位后每个从属机的IDCODE被装载进它们的指令寄存器24。通过在状态Shift_IR下驱动所有的从属TAPC控制器20,有可能将所有子模块12,13的IDCODE扫描入进主控制器19。被称为START的特定二进制型式可以从主机19中被移出。移位操作被加以重复直至在主输入移位寄存器39中探测到START型式。有可能确定子模块的数量(Nmodules)及它们沿着扫描链的位置。
读取或写入子模块的参数主JTAG控制器19利用具体JTAG指令存取所定义的子模块12或13的TDR。为了读取具体子模块12的数据寄存器25,利用旁路指令将其它子模块13设定在旁路模式下且利用这个寄存器的读取指令装载具体的模块12便足够了。然后主JTAG控制器19将所有从属控制器20驱动到状态Shift_DR且移出数据寄存器。序列的长度是已知的,因为每个旁路寄存器仅1位且DR寄存器的长度根据IDCODE知识被推导出。几个模块参数可以在相同的移位序列中被读取。写入操作通过移入一序列且将从属机驱动到Update_DR状态而被执行。同样在这种情况下不同模块中的几个参数可以被写入到相同的移位序列。读取和写入操作还可以以与下述相同的移位序列被完成,即首先从属FSM转到Capture_DR,移位发生且然后Update_DR被执行。
检查子模块的写入操作在写入到子模块12或13之后,重要地是检查子模块12或13在该期间还一直未被移走。为了做到此,例如检查配置被重新开启或对相同寄存器的读取被执行。
当控制处理器11探测到新的子模块12或13已经被插进时,则它将动态地修改应用软件31的参数。例如如果键盘被连接,则Email将通过这个键盘且不通过电话键盘被录入。如果大的彩色显示器被插入,则图形被重新导引到这个显示器以调节画面的分辨率。所有这些配置修改对于使用者是透明的且并不要求通过键盘或电子设备10的再引导对任何子模块类型的澄清。
利用JTAG的自动快速配置的一个方法在有关图7A和7B中被加以说明。在第一步骤中,控制单元11向第一子模块13发送JTAG命令,将第一子模块13置于旁路模式。在旁路模式下,相应子模块的TDI管脚及TDO管脚被互连,由参考号41所示例。这个步骤被重复直至除一个子模块以外(在图7A中为子模块12)的所有其它的子模块(在本情况中仅存在一个另外的子模块12)处在旁路模式下。换句话说,控制单元11向除一个以外的所有的子模块发送JTAG命令,以为了将除一个外的所有子模块置于旁路模式。然后,识别信息被从未处于旁路模式的一个子模块中被读取(见图7A)。在随后的步骤中,控制单元11向未处于旁路模式的一个子模块12发送JTAG命令,以将它也置于旁路模式。然后,控制单元11发出JTAG命令,以移走其它子模块之一的旁路模式。在本实例中,子模块13的旁路模式现在被移走(见图7B)。控制单元11从子模块13读取识别信息。如果存在多于两个的子模块,则上述步骤被重复直至所有子模块的识别信息已经被读取。控制单元可以将参数写入到一个或多个子模块12,13以及/或控制单元可以从一个或多个子模块12,13读取参数。这是否必要取决于子模块的类型。为了能够探测到配置是否已经变化,配置时常被重新检查。如果配置已经变化,则上述步骤可以被重复。在另一实施例中,上述步骤自动地以某一时间间隔被重复。这也保证配置变化被加以探测和应付。
根据本发明的一个实施例,JTAG主控制器19在第一步骤中确定是否存在任何子模块,如果是yes,则存在多少子模块。然后它从一个子模块接着一个子模块中读取识别信息,以获知哪些子模块存在。如果有必要,JTAG主控制器19向一个或多个子模块内写入参数,以保证与电子设备10的适当配合动作。
在本发明的另一实施例中,IDCODE可以被读取而不必将一个特定子模块置于IDCODE模式,而将其它置于旁路模式。所有的子模块可以从JTAG主机中接收IDCODE指令且数据移位将在相同序列中读取所有可用的IDCODE。
相同的原理可以被应用于向子模块内写入参数或用于从子模块中读取参数,即相同的指令可以被发送到所有的子模块且参数可以被读取或写入。
在另一实施例中,每个子模块被一个接一个地寻址,从而将所有其它的子模块置于旁路模式。
在一个特定的实施例中,空插槽或间(bay)包括一开关或类似的装置,当没有子模块被插入时其简单地连接TDI和TDO管脚。同样,人们可以使用当子模块被移走之后被手动置位的跳线。所述跳线连接TDI和TDO管脚。
应当理解为了清楚起见在分开的实施例环境中所说明的本发明的各种特点还可通过单个实施例的组合被提供。相反地,为了简洁在单个实施例环境中所说明的本发明的各种特点还可被分开或以任何适当的子组合加以提供。
在附图和技术说明书中一直阐明本发明的优选实施例,以及虽然具体的术语被使用,但是由此给出的说明仅从通用及说明性意义上使用术语且并不是为了限制性的目的。
权利要求
1.电子设备(10)的自动配置方法,所述电子设备(10)包括控制单元(11)和用于附着/连接子模块(12,13)的多个插槽(15),所述方法包括下述步骤a)通过从控制单元(11)向子模块(12,13)施加JTAG命令,从子模块(12,13)读取识别信息,b)通过从控制单元(11)向子模块(12,13)施加JTAG命令,向一个或多个子模块(12,13)写入和/或读取参数,c)时常重新检查电子设备(10)的配置,以探测配置是否已经变化,以及d)在探测到配置变化的情况下重复一些或全部上述步骤。
2.根据权利要求1的方法,其中步骤a)通过下述被执行-从所述中央单元(11)向第一子模块(12)发送JTAG命令,以将所述第一子模块(12)置于旁路模式,-重复从前的步骤直至除一个以外的所有子模块(12,13)处于旁路模式(12),-从未处于旁路模式的一个子模块(13)中读取识别信息,-从所述中央单元(11)向未处于旁路模式的一个子模块(13)发送JTAG命令,以使它置于旁路模式,-从所述中央单元(11)向另一子模块(12)发送JTAG命令,以移走旁路模式,-从未处于旁路模式的另一子模块(12)中读取识别信息,-重复从前的步骤直至所有子模块(12,13)的识别信息已经被读取。
3.根据权利要求1或2的方法,借此通过将参数写入进一个或多个子模块(12,13)之后读取参数,配置的重新检查被进行。
4.根据权利要求1,2,或3的方法,借此JTAG命令被用于控制子模块的控制单元(11)使用。
5.根据权利要求4与权利要求2相组合的方法,借此JTAGBYPASS命令被控制单元(11)发出,以将子模块置于旁路模式。
6.根据权利要求3与权利要求2相组合的方法,借此JTAGIDCODE命令被控制单元(11)发出,以从未处于旁路模式的子模块中读取识别信息。
7.根据权利要求1,2,3或4的方法,借此任何JTAG指令可以被并行的一些或全部子模块执行。
8.电子设备(10)包括-控制单元(11),-用于附着/连接子模块(12,13)的多个插槽(15),-用于将控制单元(11)与被附着/被连接到所述插槽(15)的那些子模块(12,13)互连的装置(15,16,17),借此控制单元(11)能够发出命令以为了-将子模块(12,13)置于旁路模式,-从子模块(12,13)读取识别信息,-向至少一个子模块(12,13)写入参数及/或从其中读取参数,-重新检查电子设备(10)的配置是否通过添加或移走子模块(12,13)而已经发生变化。
9.根据权利要求8的电子设备,进一步包括至少一个子模块(12,13)。
10.根据权利要求9的电子设备,其中子模块(12,13)包括由控制单元(11)可控制的从属控制器(20),所述从属控制器(20)优选地包括标准的JTAG状态机。
11.根据权利要求8的电子设备,其中控制单元(11)包括主控制处理器(19)。
12.根据权利要求11的电子设备,其中所述主控制处理器(19)包括状态机。
13.根据权利要求8-12的电子设备,其中所述插槽包括测试存取端口(TAP)连接器(22)。
14.根据权利要求8-12的电子设备,其中当没有子模块被附着到相应插槽时所述插槽包括具有串行可连接的输入管脚(27)和输出管脚(28)的连接器。
15.根据权利要求8的电子设备,其中所述控制单元(11)以软件、硬件、或以软件和硬件的组合被实施。
16.根据权利要求8-15的电子设备,其充当个人数字助理(PDA)、或蜂窝电话、或计算终端、或手持计算机、或相机、或多媒体设备、或消耗者设备、或DECT设备。
17.根据权利要求16的电子设备,其中子模块是GSM/UMTS调制解调器、或MP3播放器、或FM收音机、或PDA、或彩色显示器、或键盘。
全文摘要
电子设备(10)包括控制单元(11)、用于附着/连接子模块(12,13)的多个插槽(15)、以及用于将控制单元(11)与被附着/被连接到插槽(15)的那些子模块(12,13)互连的装置(15,16,17)。控制单元(11)能够发出命令以为了将子模块(12,13)置于旁路模式,从子模块(12,13)读取识别信息,向至少一个子模块(12,13)写入参数及/或从其中读取参数,重新检查电子设备(10)的配置是否通过添加或移走子模块(12,13)而已经发生变化。
文档编号G06F13/14GK1698044SQ02820495
公开日2005年11月16日 申请日期2002年10月14日 优先权日2001年10月17日
发明者T·J·C·A·邦尼特 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1