控制装置、被控制装置、控制方法和控制系统 本发明涉及控制装置和多个被控制装置通过网络连接的控制系统,本发明特别涉及下述场合的控制装置、被控制装置、控制方法和控制系统,在该场合下,被控制装置具有控制装置控制被控制装置用的数据。
人们考虑这样的系统,在该系统中,采用可实现借助同步通信的数据的传送与借助非同步通信的控制信号的传送的IEEE1394串行总线,连接AV装置或信息处理装置,在该装置之间进行通信。1394串行总线作为用于高性能串行总线的IEEE标准(IEEE Standard for a High Performance Serial Bus),符合“IEEEStd 1394~1995”的标准。
另外,对于用于1394串行总线上的AV装置的相互控制的通信协议,公开有家用音频/视频相互可操作性的说明书,1.0版(Specification of the HomeAudio/Video Interoperability(HAVi),Version 1.0)(下面简称为“HAVi说明书”)。在上述文献中,还描述有作为控制本身用的数据地代码机构的提供方法。
HAVi基准的装置包括向其它装置公开具有本身功能用的自描述装置数据(SelfDescribing Device Data)(下面简称为“SDD数据”)。SDD数据的具体内容记载于HAVi说明书中,但是作为HAVi_Unit_Directory保存于装置的configROM中,以便其它的装置能够通过1394串行总线实现参照。该configROM指能够采用1394串行总线的非同步通信而参照的地址空间,在ISO/IEC 13213:1994用于微计算机总线的控制与状态寄存器结构(ISO/IEC13213:1994 Control and Status Register(CSR)Architecture for MicrocomputerBuses)(IEEE Std 1212-1994)/与1999年10月18日的IEEEP1212草案1.0、用于微计算机总线的控制与状态寄存器结构的草案标准(IEEE P1212 Draft 1.0、Draft Standard For a Control and Status Registers(CSR)Architecture forMicrocomputer Buses)中,对其形式进行了规定。在configROM中,除了这些说明书确定的数据结构以外,还可定义卖主固有的Vendor_Info(卖主信息)的目录(Directory)与叶(Leaf)。
在HAVi中,将AV装置分为控制装置和被控制装置。“Base AV(BAV)Device”(下面简称为“BAV”)指有代表性的被控制装置,具有SDD数据与DCM,在控制装置中加载。“Full AV(FAV)Device”(简称为“FAV”)为有代表性的控制装置,具有HAVi的系统组件与Java的运行环境。
HAVi的BAV在SDD数据中保存装置控制模块(Device Control Module)(下面简称为“DCM”)代码机构。如果FAV下载DCM代码机构,将其安装,则生成DCM。DCM为用于控制相应的装置的程序模块,另外,还具有生成控制相应的装置的副机构用的功能控制模块(Functional Control Module)(下面简称为“FCM”)的场合。FAV上的应用使用该DCM或FCM进行网络系统上的装置控制。
此外,HAVi的网络系统中的DCM及其安装管理FAV中的装置控制模块管理器(Device Control Module Manager)(下面简称为“DCM管理器)。当通过1394串行总线,重新设定网络时,网络系统上的DCM管理器之间进行协商,从中选择出称为最终引导的全面地进行DCM处理的DCM管理器。
在上述的HAVi网络系统中,HAVi系统组件进行动作的多台AV装置(FAV)作为网络连接,在该网络上,各装置在按照HAVi协议相互进行控制的同时,按照携带有各装置的功能的方式动作。
另一方面,在HAVi的系统组件不动作的装置(BAV)中,由于可保存控制本身用的DCM代码机构,并从其它装置存取,故FAV可下载BAV的DCM代码机构并进行安装。
在上述的系统中,为了提高BAV的功能或性能、或进行错误修正等,人们考虑必须更新DCM。在此场合,如果在BAV的SDD数据中、指定用于获得DCM的URL,则可从作为广域网络的互联网等中下载新一代的DCM。
如果在这样的情况下,可与外部网络连接的装置不存在于HAVi网络中,则不可能采用新一代的DCM。
本发明的目的在于提供即使在不能够与外部网络连接的情况下、仍可在HAVi网络中采用新的DCM代的方法。
为了解决上述问题,本发明采用下述的有代表性的方案。
即,本发明涉及一种控制系统,其中控制装置和多个被控制装置通过可在装置之间进行数据交换的网络而连接,被控制装置(BAV)在可从外部读取的存储区域(SDD数据)中保存下述数据,该数据指通过上述网络、任意的控制装置(FAV)对可与网络连接的其它的第2被控制装置(BAV)进行控制用的数据,上述控制装置从被控制装置获取上述数据并生成进行动作的程序而对第2被控制装置进行控制。
为了解决上述问题,本发明采用上述有代表性的方案,通过在装置的configROM中保存控制其它装置用的已更新的DCM,即使在不能够与外部网络连接的情况下,仍可在HAVi网络中采用已更新的DCM。
图1为表示与本发明的实施例有关的采用1394串行总线的网络系统的构成实例的图;
图2为表示与本发明的实施例有关的采用1394串行总线的网络系统的构成实例的图;
图3为表示与本发明的实施例有关的采用1394串行总线的网络系统的构成实例的图;
图4为表示与本发明的实施例有关的采用1394串行总线的网络系统的构成实例的图;
图5为表示与本发明的实施例有关的由HAVi_Unit_Directory以及其中一个项目表示的用于DCM信息的偏移的列表形成的configROM结构的图;
图6为表示与本发明的实施例有关的由用于DCM信息的偏移的列表以及该DCM信息形成的configROM结构的图;
图7为表示与本发明的实施例有关的用于控制其它装置的代码机构、保存DCM的一代信息的卖主的叶的结构的图;
图8为表示与本发明的实施例有关的由HAVi_Unit_Directory以及其中一个项目表示的用于DCM信息的偏移的列表形成的configROM结构的图;
图9为表示与本发明的实施例有关的由用于DCM信息的偏移的列表以及该DCM信息形成的configROM结构的图;
图10为表示与本发明的实施例有关的用于控制其它装置的代码机构、保存DCM的一代信息的HAVi_DCM_Identifier的结构的图;
图11为表示与本发明的实施例有关的最终引导与本发明的技术相对应、本身对DCM进行安装的场合的处理的流程图;
图12为表示与本发明的实施例有关的最终引导与本发明的技术相对应、将DCM安装于其它装置中的场合的处理的流程图;
图13为表示与本发明的实施例有关的最终引导与本发明的技术不对应的情况下进行DCM安装的场合的处理的流程图;
图14为表示与本发明的实施例有关的对系统组件进行更新的场合的处理的流程图;
图15为表示与本发明的实施例有关的采用卖主的目录与叶的configROM的图;
图16为表示与本发明的实施例有关的采用HAVi_DCM_List_Unit_Directory和HAVi_DCM_Unit_Directory的configROM的图。
下面通过附图对本发明的实施例进行具体描述。
首先,利用图11对在最初图1所示的网络系统中下述场合的DCM的各种处理进行描述,该场合指FAV210的DCM管理器212成为最终引导并把本身安装在BAV240的DCM中。
图1为表示本发明的第1实施例的HAVi网络的构成的图,图5~7为表示保存DCM的信息的configROM的构成的图。
在图1中,标号200表示HAVi网络系统,标号210表示FAV,标号240和250表示BAV。另外,图1中的各装置的结构如下所述。标号211表示FAV210的HAVi系统,标号212表示DCM管理器,标号213、243和253表示各装置的IEEE1394I/F,标号214、244和254表示configROM。此外,BAV240的configROM244具有控制本身用的DCM,BAV1_DCM_a245。同样,BAV250的configROM254也具有控制BAV1用的DCM、BAV1_DCM_b255以及用于控制本身用的DCM、BAV2_DCM256。
在图5中,标号100表示configROM,标号101表示HAVi_Unit_Directory,其中具有表示卖主信息的目录102的项目。位于102中的各项目表示保存的其它装置的DCM的目录103a和103b。
在该卖主信息的目录103a、103b中保存有相应的DCM的信息。如图5的实例所示,具有该DCM的说明(HAVi_DCM_Description)、DCM的代码机构本身、识别HAVi_DCM104和DCM用的卖主/叶105等。
该卖主/叶105由识别制造商的卖主代码、识别模式的模式代码、识别代码机构的代的版本代码形成。
该configROM的构成由IEEE Std 1212-1994表示,就卖主目录102内部来说,采用由HAVi定义的configROM的值,另外还采用图15的值。
图11为表示安装DCM的处理的流程图。下面通过图11,对FAV210的DCM管理器212本身安装BAV240的DCM的处理进行描述。
首先,在步骤1001a,将BAV240与网络200连接,由此启动网络重新设置(步骤1001b)。
接着,在步骤1002,FAV210的DCM管理器212形成最终引导。
在步骤1003,形成最终引导的DCM管理器212首先从各装置的configROM(214,244,254)中收集它们中各自保存的DCM的信息。该DCM管理器212通过该信息分析与网络新连接的BAV240用的最新的DCM。在这里,通过BAV240本身保存的DCM、BAV1_DCM_a245,判定BAV250保存的BAV1_DCM_b255是新的。因此,作为控制BAV240的DCM,选择BAV1_DCM_b255。
在步骤1004,FAV210的DCM管理器212将本身选择为安装BAV240的DCM的装置。
在步骤1005,FAV210的DCM管理器212确认是否可获取由URL指定的BAV240的DCM。在可获取的场合,进行步骤1006a;在不可获取的场合,进行步骤1006b。
在步骤1006a,FAV210的DCM管理器212使用URL获取BAV240的DCM。接着,进行步骤1007。
在步骤1006b,FAV210的DCM管理器212从BAV250的configROM254中读取BAV1_DCM_b255。接着,进行步骤1007。
在步骤1007,已获取BAV1_DCM_b255的FAV210的DCM管理器212安装该DCM。
如上所述,在本实施例中,对DCM管理器形成最终引导、且本身安装DCM的场合的动作进行了描述。另外,如上所述,当BAV250比BAV240更新时,本身安装的DCM可更新。
下面对本发明的第2实施例进行描述。
图2为表示第2实施例的HAVi网络的构成的图,图12为表示安装DCM的处理的流程图。
在图2中,标号200表示HAVi网络系统,除了图1的网络构成以外,标号220表示FAV。另外,图2的一部分的装置的结构与图1的相同,但是就FAV220的结构来说,标号221表示FAV220的HAVi系统,标号222表示DCM管理器,标号223表示IEEE1394I/F,标号224表示configROM。
就configROM的结构来说,其与第1实施例的相同,如图5~7所示的那样。
下面通过图12,对FAV210的DCM管理器212将BAV240的DCM安装于FAV220中的处理进行描述。
首先,在步骤1001a,将BAV240与网络220连接,由此启动网络重新设置(步骤1001b)。
接着,在步骤1002,得到网络重新设置指示的FAV210、FAV220内的DCM管理器212与222开始协商处理,其结果是,将FAV210的DCM管理器212选择为最终引导。
在步骤1003,形成最终引导的DCM管理器212首先从各装置的configROM(214,224,244,254)中收集它们相应保存的DCM的信息。该DCM管理器212通过该信息,分析与网络新连接的BAV240用的最新的DCM。在这里,通过BAV240本身保存的DCM、BAV1_DCM_a245,判定BAV250保存的BAV1_DCM_b255是新的。于是,作为控制BAV240的DCM,选择BAV1_DCM_b255。
在步骤1004,FAV210的DCM管理器212将FAV220选择为安装BAV240的DCM的装置。
在步骤1005,FAV210的DCM管理器212向FAV220发送安装BAV240的DCM的命令、DcmManager∷DMCommand(INSTALL_URL_PREF)。
在步骤1006,从FAV210的DCM管理器212接收步骤1005的安装命令,FAV220的DCM管理器222向FAV210发送DcmManager∷DMGetDcm()这样的命令并要求DCM。
在步骤1007,FAV210的DCM管理器212确认是否可获取由URL指定的BAV240的DCM。在可获取的场合,进行步骤1008a;在不可获取的场合,进行步骤1008b。
在步骤1008a,FAV210的DCM管理器212使用URL获取BAV240的DCM。接着,进行步骤1009。
在步骤1008b,FAV210的DCM管理器212从BAV250的configROM254中读取BAV1_DCM_b255。接着,进行步骤1009。
在步骤1009,FAV210的DCM管理器212将BAV1_DCM_b255作为DcmManager∷DMGetDcm()的应答而返回给FAV220。
在步骤1010,接收BAV1_DCM_b255的FAV220的DCM管理器222安装该DCM。
如上所述在本实施例中,对DCM管理器形成最终引导、且在其它的装置中安装DCM的场合的动作进行了描述。另外,如上所述,当BAV250比BAV240更新时,安装于其它装置中的DCM可进行更新。
下面对本发明的第3实施例进行描述。
图3为表示第3实施例的HAVi网络的构成的图,图13为表示安装DCM的处理的流程图。
在图3中,标号200表示HAVi网络系统,除了图2的网络构成以外,标号230表示FAV。在本实施例中,FAV230不对应于本发明的技术。另外,图3中的一部分装置的构成与图2的相同,但是就FAV230的构成来说,标号231表示FAV230的HAVi系统,标号232表示Dcm管理器,标号233表示IEEE1394I/F,标号234表示configROM。
就configROM的构成来说,其与第1和第2实施例相同,如图5~7所示。
下面通过图13,对将FAV230中的DCM管理器232选择为最终引导的场合进行描述。
首先,在步骤1101a,将BAV240与网络200连接,由此启动网络重新设置(步骤1101b)。
接着,在步骤1102,得到网络重新设置指示的FAV210、FAV220、FAV230内的DCM管理器212、222、232开始协商处理,其结果是,将FAV230的DCM管理器232选择为最终引导。
在步骤1103,由于形成最终引导的FAV230的DCM管理器232不对应于本发明的技术,故对应的FAV210的DCM管理器212首先将称为DcmManager∷SetPreference(DM_PREFERRED_URL_DEVICE)这样的命令发送给FAV230的DCM管理器232并对其设定,以便本身接收DCM的要求。
在步骤1104,DCM管理器212从各装置的configROM(214,224,234,244,254)中收集它们各自保存的DCM的信息。DCM管理器212通过该信息分析与网络新连接的BAV240用的最新的DCM。在这里,通过BAV240本身保存的DCM,BAV1_DCM_a245,判定BAV250保存的BAV1_DCM_b255是新的。于是,作为控制BAV240的DCM,选择BAV1_DCM_b255。
在步骤1105,FAV230的DCM管理器232进行安装BAV240的DCM的装置的选择(FAV220)、以及安装该DCM用的处理。
在步骤1106,接收来自FAV220的DCM管理器222的DCM要求、DcmManager∷DMGetDcm()这样的命令,FAV230的DCM管理器232按照步骤1103的设定与FAV210同样发送DcmManager∷DMGetDcm()这样的命令并要求BAV240的DCM。
在步骤1107,FAV210的DCM管理器212确认是否可获取由URL指定的BAV240的DCM。在可获取的场合,进行步骤1108a;在不能够获取的场合,进行步骤1108b。
在步骤1108a,FAV210的DCM管理器212使用URL获取BAV240的DCM。接着,进行步骤1109。
在步骤1108b,FAV210的DCM管理器212从BAV250的configROM254中读取BAV1_DCM_b255。然后,进行步骤1109。
在步骤1109,FAV210的DCM管理器212将BAV1_DCM_b255作为DcmManager∷DMGetDcm()的应答而返回给FAV230。
在步骤1110,FAV230的DCM管理器232同样将BAV1_DCM_b255作为DcmManager∷DMGetDcm()的应答而返回给FAV220。
在步骤1111,接收到BAV1_DCM_b255的FAV220的DCM管理器222安装该DCM。
如上所述,对不对应于本发明的技术的DCM管理器形成最终引导的场合的动作进行了描述。另外,如上所述,即使在本发明的未安装的FAV与网络连接的情况下,仍获得本发明的效果。
在这里,FAV210的DCM管理器212将BAV240的DCM安装于其它装置中,但是即使在形成最终引导的DCM管理器不与本发明的技术相对应的情况下,与第1实施例相同,FAV210也可本身安装DCM。
在上述的实施例中,FAV210从BAV250,获取DCM的代码机构255,照原样安装或经其它的FAV实现安装。但是,也可将FAV210所获取的最新的DCM的代码机构255发送给相对应的BAV240,改写已有代码机构,并将其保存于configROM中。由此,即使在已提供的BAV250与HAVi网络200断开的情况下,最新的DCM代码机构255仍采用BAV240。
下面对本发明的第4实施例进行描述。
下面通过图14对下述场合的处理进行描述,该场合指在图4所示的网络系统中,FAV210从BAV260的configROM264中下载更新本身的软件用的数据(266)并对其进行安装。
图4为表示第4实施例的HAVi网络的构成的图。
在图4中,标号200表示HAVi网络系统,标号210表示FAV,标号260表示BAV。另外,图4中的一部分的装置的构成与图1的相同,但是就BAV260的构成来说,标号263表示IEEE1394I/F,标号264表示configROM,标号266表示更新系统组件用的数据。
此时的configROM具有与图5~7、或图8~10所示的DCM的信息相同的结构,其内保存有更新系统组件用的数据、以及与此有关的代号码、包含说明的详细信息。在这里,代号码与包含说明的详细信息也可分别保存。在包含说明的详细信息中还可包含代号码。此外,可具有下述各自形式,即代号码可保存于configROM以外的地方,另外仅仅具有详细信息或仅仅具有代号码等。
图14为表示安装系统组件的处理的流程图。下面通过图14对下述的处理进行描述,该处理指FAV210下载数据266并对其安装,该数据266用于更新保存于BAV260的configROM264中的系统组件。
首先,在步骤1001a,将BAV260与网络200连接,由此启动网络重新设置(步骤1001b)。
接着,在步骤1002,FAV210首先从BAV260的configROM264中获取保存的系统组件的信息。
在步骤1003,FAV210采用与已获取的系统组件有关的信息、对用于更新本身的系统组件的数据的代信息与当前安装的系统组件的代信息进行比较。在这里,通过当前安装的系统组件,判定保存于BAV260的configROM中的系统组件是新的。于是,选择安装该新的系统组件。
在步骤1004,确认FAV210是否可获取由URL指定的系统组件。在可获取的场合,进行步骤1005a;在不可获取的场合,进行步骤1005b。
在步骤1005a,FAV210使用URL获取新的系统组件。接着,进行步骤1006。
在步骤1005b,FAV210从BAV260的configROM264中读取更新系统组件用的数据266。接着,进行步骤1006。
在步骤1006,获取了新的系统组件的FAV210安装该系统组件。
在步骤1007,FAV210重新设定本身的系统,以便采用新的系统组件。
如上所述在本实施例中,对FAV从其它装置下载更新本身的系统组件用的数据并进行更新的场合的动作进行了描述。另外,如上所述,当其它装置所保存的组件比当前的新时,本身的系统组件可进行更新。
另外,如上所述,对使用Vendor_Info的目录与叶并保存DCM的信息的方法进行了说明,但是还具有对用于保存DCM信息的HAHi_DCM_List_Unit_Directory等进行定义的方法。此场合通过图8~10进行描述。
在图8~10中,标号150表示configROM,标号151表示HAVi_Unit_Directory,在其中具有新定义的HAVi_DCM_List_Unit_Directory、表示标号152的项目。152的各项目表示保存的其它装置的DCM的项目、103a与103b的HAVi_DCM_Unit_Directory。
在此新定义的HAVi_DCM_Unit_Directory153中保存有相应的DCM的信息。例如,具有此DCM的说明(HAVi_DCM_Description)、DCM的代码机构本身、HAVi_DCM154和识别DCM用的HAVi_DCM_Identifier155等。
该HAVi_DCM_Identifier155由识别制造商的卖主代码、识别模式的模式代码、以及识别代码机构的代的版本代码构成。
该configROM的构成符合IEEE Std 1212-1994等。就HAVi_DCM_List_Unit_Directory152与HAVi_DCM_Unit_Directory153内部来说,还可采用由HAVi定义的configROM的值,以及图16所示的新定义的值。
与系统组件有关的信息还可以按照相同的方式保存所定义的结构中。
此外,在上述的系统中可向使用者公开与安装的DCM、或系统组件有关的信息,进行实际上是否安装的选择。在这样的场合,采用与在上述实施例中描述的基本上相同的数据结构和步骤。但是,在安装DCM和系统组件之前,以向使用者提示的方式表示与其相对应的详细信息,使用者选择指示是否进行该安装。此场合的详细信息采用代号码或文本的说明等。
在上述的实施例中,装置相互通过采用IEEE1394I/F的HAVi网络连接,但是也可采用其它的家庭网络或广域网络的技术。
还有,在上述的实施例中,各装置是作为“FAV”与“BAV”描述的,但是作为具体的实例,FAV比如为机顶盒或数字式电视,BAV比如为放像机或DVD播放机。
再有,DCM的代码机构与系统组件均从HAVi网络200上的BAV中获取,但是也可考虑从互联网等的广域网络中获取DCM代码机构,并将其与各装置保存的相应机构进行比较。
根据本发明,即使在对作为控制装置用的数据的代码(DCM)进行修正并且代为新的情况下,针对具有旧的DCM的装置也可采用该新一代的的DCM。另外,为了按照上述方式更新DCM,不必与互联网等连接。另外,还可更新系统组件。