Electronic equipment control

Abstract: A digital interface microcomputer (DIFcon 7) sends/receives an Audio Video/Control-Command Transaction Set (AV/C-CTS) between it and other equipment connected by way of an IEEE-1394 serial bus (not illustrated). DIFcon (7) also provides both way conversion between AV/C-CTS and Local Application Control Bus System (LANC) signals. A mode control microcomputer (Modecon, 8) sends/receives LANC signals between it and the digital interface microcomputer (DIFcon, 7). A mechanism control microcomputer (Mechacon 9) controls a mechanism (e.g. a Video Tape Recorder) in accordance with commands sent from the mode control microcomputer 8. Further, mechacon (9) informs the mode control microcomputer 8 of the status of the mechanism. To enable the use by other companies of every application developed originally by using IEEE-1394, vendor unique, commands the DIFcon (7) when accepting a target key code calculates an application key code based on a cipher function and a target key code therefor. Then, it sends an opening command for the application attached to the application key code. The target, when accepting the opening command, decodes the target key code in the command. Then if the decoded target key code matches a target key code generated by the DIFcon 7, it allows execution of the command.

Description: The invention relates to an electronic equipment, a method of controlling the operation of the equipment and a signal format. An embodiment of the present invention concerns a system in which a plurality of electronic equipments are connected by way of a bus and communication is conducted between each of the electronic equipments. More specifically the embodiment relates to a system in which an originally developed application is made usable by another company under a license contract. As a system in which a plurality of electronic equipments are connected by way of a bus and communication is conducted between each of the electronic equipments, a communication system using the IEEE-1394 serial bus is considered. In the communication using the IEEE-1394 serial bus, electronic equipments such as digital video tape recorders, digital video cameras, digital television receivers and personal computers (hereinafter referred to simply as equipments) are connected by way of the IEEE-1394 serial bus and communication is conducted between each of the equipments for information signals such as digital audio/video signals and control signals such as connection control commands. US-A-4918690 discloses a network comprising a bus to which cells (equipments) are connected. Each cell is identified by a permanent cell identification number or cell ID. Groups of cells are programmed to perform group functions. A group is identified by a group identification number or group ID. Data is transferred across the network in data packets having a preset format. A data packet includes the cell ID of the source of the packet, destination data and message data, amongst other types of data. The message data may include commands. EP-A-0 640 924 discloses an optical disc recorder/reproducer. Data is stored on the disc in sectors. Each sector includes vendor unique data areas. A vendor ID is recorded in a vendor unique data area of each sector. When reproducing data from the disc in a reproducer, the reproducer vendor ID is compared with a "comparing ID". If the vendor and comparing IDs "coincide" then the reproduced data is output from the reproducer. In this way illegal copying is avoided. US-A-4866769 relates to copy protection of software. The copy protection of personal computer (PC) software distributed on diskettes is assisted by providing a unique identification (ID) stored in read only memory (ROM) of a personal computer in which software on a diskette is to be used. This ID is accessible to the user of the computer. A vendor who wishes to protect his diskette-distributed software from illegal copying or use provides a source ID on the diskette. The personal computer ID is used with the source ID on the distributed diskette to produce an encoded check word, using any available encryption modality. The check word is generated and written onto the distributed diskette during installation and copies onto all backup versions made by the user's personal computer. Prior to each use of the program, the software on the diskette uses the personal computer and the source IDs and check word to verify that the software is being used on the same personal computer on which it was installed. According to one aspect of the present invention, there is provided a method of controlling the operation of an electronic equipment, comprising the steps of: providing a plurality of electronic equipments connected by way of a bus, said bus allowing for communication of information signals and control signals between each of said electronic equipments; transmitting to one of said plurality of electronic equipment, a control signal of a predetermined format containing format information which specifies whether said predetermined format is a vendor unique frame format and, if so, including a vendor unique command; receiving said control signal by said one of said plurality of electronic equipments; determining whether said predetermined format in said control signal is a vendor unique frame format for said one of said plurality of electronic equipment based on said format information; and controlling said one of said plurality of electronic equipments based on the vendor unique command in said control signal when said predetermined format in said control signal is a vendor unique frame format for said one of said plurality of electronic equipment. According to another aspect of the present invention, there is provided an electronic equipment for connection to a bus which allows transmission of a mixture of a control signal and an information signal, to other electronic equipment connected to the bus, the said electronic equipment, comprising: transmitting means arranged to transmit a control signal of a predetermined format containing format information which specifies whether said predetermined format is a vendor unique frame format to one of said other electronic equipments to control said one of other electronic equipments based on a vendor unique command in said control signal when said predetermined format in said control signal is a vendor unique frame format for said one of other electronic equipments. According to a further aspect of the present invention, there is provided an electronic equipment for connection to a bus which allows transmission of a mixture of a control signal and an information signal, to other electronic equipment connected to the bus, the said electronic equipment, comprising: receiving means for receiving a control signal of a predetermined format containing format information which specifies whether said predetermined format is a vendor unique frame format; determining means for determining whether said predetermined format in said control signal is a vendor unique frame format for said electronic equipment based on said format information; and controlling means for controlling said electronic equipment based on a vendor unique command in said control signal when said predetermined format in said control signal is a vendor unique frame format for said electronic equipment. According to yet another aspect of the present invention, there is provided a signal format, the format comprising a frame structure containing a vendor unique command transaction set, and format information specifying that the structure includes a vendor unique command transaction set. For a better understanding of the present invention, reference will now be made, by way of example, to the accompanying drawings in which: Fig. 1 is a view for showing a format of a vendor unique frame. Fig. 2 is a chart illustrating a frame constitution of AV/C command transaction set. Fig. 3 is a chart illustrating a constitution of a vendor unique frame defined by AV/C command transaction. Fig. 4 is a chart illustrating an example of application No. Fig. 5 is a view illustrating the outline of command/response between controller/target. Fig. 6 is a chart illustrating the constitution of a vendor unique command. Fig. 7 is a chart illustrating inquiry command/response for target key code. Fig. 8 is a chart illustrating opening control command/response for application K. Fig. 9 is a chart illustrating an example of inquiry command/response for opening/closure when a correct value is designated as an application key code. Fig. 10 is a chart illustrating an example of a closing command. Fig. 11 is a chart illustrating an example of a registration list for company ID of a company having a right of use. Fig. 12 is a chart illustrating an example of a corresponding table between target key code and an application key code. Fig. 13 is a view illustrating an example of constitution of a target. Fig. 14 is a block diagram illustrating a constitution for a control system of a digital VCR. Fig. 15 is a view illustrating the constitution for a frame of AV/C-CTS. Fig. 16 is a view illustrating the constitution of WORD of LANC. Fig. 17 is a flow illustrating the processing in DIFcon and MODEcon. Fig. 18 is a view illustrating a portion of a mode transition table. Fig. 19 is a view illustrating a constitution for a vendor unique frame in AV/C-CTS. Fig. 20 is a view illustrating a constitution of a vendor unique command. Fig. 21 is a view illustrating examples of allocating application No. of LANC. Fig. 22 is a view showing a rule for command allocation in a LANC system. Fig. 23 is a view illustrating the correspondence to Command to VCR (basic function), Fig. 24 is a view illustrating example of command codes in Fig. 23. Fig. 25 is a view illustrating VCR information obtained by status inquiry. Fig. 26 is a view illustrating examples of VCR mode code. Fig.27 is a view illustrating an example of inquiry command and response. Fig. 28 is a view illustrating correspondence to Command to VCR (special function). Fig. 29 is a view illustrating correspondence to tuner control. Fig. 30 is a view illustrating examples of tuner information obtained by status inquiry. Fig. 31 is a view illustrating correspondence to camera control. Fig. 32 is a view illustrating examples of command codes in Fig. 31. Fig. 33 is a view illustrating examples of camera information obtained by status inquiry. Fig. 34 is a flow chart for processing a command in a case of causing mode transition. The illustrative embodiments of the present invention are to be explained in the following sequence: [1] Vendor unique command [2] Use of the vendor unique command by other company [3] Explanation for the content of the system (3-1) Opening of application (3-2) Condition for encipherment (3-3) Information required for opening the application (3-4) Method of opening the application (3-5) Command during opening (3-6) Closure of the application (3-7) Condition for execution and closure of the application [4] Protection of application (4-1) Administration by company ID (4-2) Setting target key code (4-3) Cipher function fk [5] Constitution and operation of target. [1] Vendor unique command In a function control protocol of a digital interface to an IEEE-1394 serial bus (hereinafter simply referred to as FCP), a plurality of command transaction sets can be used. Fig. 1 shows a format for a vendor unique frame. CTS (Command Transaction Set) = 1110 shows that this is the vendor unique frame. Then, a 3-byte vendor ID (company ID specified by IEEE) is used after the 4 bits of CTS. A vendor can optionally define and use bits other than CTS bits to indicate the vendor ID and the frame is a vendor unique frame. That is, the command set and transactions such as transmission and reception of command response used therein depend on the vendor. Zero pad bytes are disposed, if necessary, for making the frame length to 4 byte (quadlet) units. Fig. 2 shows a frame constitution of AV/C (Audio Visual/Control) command transaction set, which is a command transaction set for AV equipment control. CTS = 0000 shows that this is an AV/C command transaction set. Also in an AV/C command transaction set, a vendor unique frame is defined as operation code (OPC) so that the vendor can freely define the command. However, the transaction of command/response is in accordance with an AV/C command transaction. Fig. 3 shows a frame constitution in this case. OPC = 00h indicates that this command transaction is vendor unique. A 3-byte company ID is used for the vendor ID in the same manner as described previously. [2] Use of the vendor unique command by other companies. In FPC, a node controlling another node is referred to as a controller, and a node to be controlled is referred as a target. Explanation is to be made by using the terms of the controller and the target. The vendor unique command is defined and used by a company possessing the company ID described in the vendor ID but other company may some times intend to use the same command depending on the application. Explanation is to be made for an example of a company A with company ID = xxxxxxh and a company B with company ID = yyyyyyh. The company A defines a unique command for an application K as a vendor unique command and uses the same for products of the company A. The company B intends to correspond the application K using the vendor unique command of the company A also in the products of the company B. There are to corresponding methods by the company B. That is, a case in which the company B manufactures a controller and controls products of the company A as a target, and a case in which the company B manufactures products as a target which is to be controlled by the controller of the company A. In any of the cases, the application K can not be attained unless the vendor unique command of the company A is used. The system to be explained below is for enabling the use, in limited companies, of several applications that a company as a possessor of vendor unique commands has attained by using the vendor unique commands. Introduction of the system enables to generally inhibit the use of the vendor unique command by other companies but provide a right of use on every application. Accordingly, the company B, in the previous case, is enabled to use the vendor unique command regarding the application K of the company A. [3] Explanation for the content of system (3-1) Opening of an application The target has an "open state" and a "closed state" on every application attained by the vendor unique command. The open state means such a state of accepting a command and capable of executing the application. The closed state means a state of not executing even if a command is accepted. As described above, since the vendor unique command is not a command disclosed publicly, all of applications are usually put to the closed state so that a command is not executed if a third party (for example, company C) transmits the command while attaching the company ID = xxxxxxh of the company A with no authorization. Then, it is adapted that the application K is executed after the application K is put to the open state for the company A defining the vendor unique command, as well as company B obtaining the right of use. Teaching the means for putting the open state is equal with provision of the right of use for the application. (3-2) Condition for encipherment The controller sends an open command to the target while designating an application to be opened. In this case, an agreement is set between the controller and the target, such that the an open command is effective only when is transmitted with a predetermined code. It is necessary that the code is not recognized by third parties. The code is previously determined between the company A and company B. In this case, it is adapted such that the value is made different on every equipments or depending on the time even for one identical equipment. The code may be considered as a sort of cipher and, since it is intended to be used in a consumer's equipment, it is necessary that the code can be treated simply also by an one chip microcomputer to mitigate burden as less as possible both for the controller and the target. For the consumer's equipment, if a commercial good is once marketed, it is difficult to change the cipher system subsequently. (3-3) Information required for opening the application Explanation is to be made to information required for opening each application. (1) Application No. A code indicative of the kind of the application is referred to as an application No. Fig. 4 shows examples of application Nos. In this case, the kind of the application is indicated by 1 byte. When the application No. is allocatable from 01h to FEh, applications of up to 254 types can be coped with. 00h is inhibited from use (reserved) since this is used in common with each of applications. Further, FFh is reserved for extension in case if the number of applications is increased. (2) Cipher function f "Key" sent together with an application No. upon opening an application is referred as an application key code. A method of forming the application key code (encipherment) is different on every application, which is previously determined between the company A and the company B. This is defined as a cipher function f, and the cipher function of the application K is defined as fk. (3) Target key code A target key code is a value determined on every target, which is a base for forming an application key code to all applications. The application key code is changed even for one application by a means such as attaching a target key code which is different on every equipment. Upon opening the application, the controller sends a target key code inquiry command to the target and recognizes the current target key code by obtaining a response. (4) Application key code The target key code enciphered by a cipher function f is an application key code. That is, the application key code corresponding to the application K can be represented as: Application key code = fk (target key code) (3-4) Method of opening the application Description is to be made to a method that the controller puts the application K of the target into the open state. (1) Command sending procedure Fig. 5 shows a schematic view for command/response between controller/target. At first the controller sends a target key code inquiry command to a target (procedure (1). The target returns, as a response thereto, a target key code of its own at that instance (procedure (2)). Upon accepting the target key code, the controller multiplies the cipher function fk with the target key code to calculate an application key code. Then, the controller sends to the target an application opening command while attaching the application No. and the calculated application key code (procedure (3)). Upon accepting the opening command, the target confirms whether the application of the designated application No. is provided or not. Then, if the application is corresponded, it multiplies the application key code to the inverse function of the cipher function fk for decoding. The target confirms whether or not the result of the decoding is equal with the target key code of its own. Then, if it is equal, it at first regards the application K opening command valid and enters into an application executable open state. The target, upon putting the application K to the open state, returns a response to the controller for informing that the application K has been put to the open state (procedure (4)). (2) Command format As has been explained with reference to Fig. 1 and Fig. 3, while the vendor unique command can be attained by using any of the vendor unique frame or AV/C command transaction set, an example of using the AV/C command transaction set as a command constitution is shown. Fig. 6 shows the constitution of the vendor unique command. Only the region succeeding the 3 byte vendor ID that the vendor defines individually (after OPR 4) is shown. As described previously, the transaction of command/response is in accordance with the AV/C command transaction set. No concrete command for executing the application is described here. This is to be defined on every application. Fig. 7 shows command/response for target key code inquiry. In this case, the application No. is defined as kkh and the target key code is defined as 16 bit 1234h. The length of the target key code can be determined on every application. Since it may be considered that the target key code takes a different value on every equipment/every application or takes a random number, inquiry is always made upon initiating execution for each application. Fig. 7(a) shows inquiry commands. In this case, OPR 4 is application No., and 10h in OPR5 and 71h in OPR7 show the target key code inquiry. Further, OPR7 and OPR8 are defined as FFh (dummy). The target, if corresponding to the application attached to the inquiry command (application K), answers to the controller a response "stable" attaching the 16 bit target key code 1234h to OP 7 and OP 8. If not corresponding to the application, the target returns response of "Not Implemented" with the same content as the inquiry command as shown in Fig. 7(c). Then, open control command of the application K that the controller sends to the target and the response thereof are shown in Fig. 8(a), (b). In this case, the application key code is defined as 16 bit 5678h. The length of the application key code can be determined on every application. If the designated value of the application key code attached to the command is different from the value of the application key code possessed by the target and opening is impossible, response of "Rejected" is basically returned to the controller. However, it may be considered that a third party tries one by one from 0000h to FFFFh in the course of searching the application key code. Then, even when it can not be opened, a response of "Accepted" is returned intentionally. Fig. 8(c), (d) show an example uncapable of opening:-(5679h is designated instead of correct application key code = 5678h). Since the third party can not recognize whether the opening has been succeeded or not merely by the transaction of the opening command, it requires a procedure of sending an application executing command or an inquiry if it is during opening. Inquiry as to whether the application is in the open state or the closed state is also sent by attaching the application key code. "Accepted" is returned when the designated value for the application key code is exact, and "rejected" is returned if it is not correct as a response. Figs.9(a), (b) show examples of command and response in a case where exact value (5678h) is designated as the application key code. (3-5) Command during opening Only while the application is opened (executable state), the target accepts the command for the application. The command format is determined on every application excepting that the first 1 byte shows the application No. as shown in Fig. 6. In a case if an execution command for the not corresponded application is received irrespective that whether the application is in the open state or in the closed state, "Not Implemented" is returned as a response. Further, even if the application is in the open state, if it does not correspond to that designated as OPC determined on every application, "Not Implemented" is returned as the response. (3-6) Closure for application Basically, the equipment as the target automatically puts all the applications into the closed state upon turning off a power source. The closed state is continued even when the power source is turned on again. Upon completing the execution of application, the controller sends a closing command to the target. Fig. 10 shows examples of closing commands. Thus, the command is sent by attaching the application key code also in the case of closure. The target, when accepting the close command, puts the application indicated by the application No. of the closing command into the closed state. In this case, it is put to the closed state even when the value of the application key code is different. It is basic in this system that the application is usually put to the closed state and then opened only upon execution. By the way, if a command which is acceptable in the open state is received in the closed state, "Rejected" is returned as the response. (3-7) Condition for execution and closure of the application Various cases may be considered depending on the applications such as an application causing problems when left open as it is for a long period of time or an application intended to be controlled exclusively once after it is opened. Accordingly, executing condition or the like suitable to the use is determined on every application. An example is shown below. (1) Restriction on the open time In a case when a command for executing the application is not accessed for more than a predetermined time although kept in the open state, it is compulsorily closed. The instance for the time out determined on every application. (2) Procedure for bus abnormality When resetting is applied to the bus, it is compulsorily closed. (3) Number of equipments allowed for execution of an application It is adapted not to permit control from a plurality of controllers. The target memorizes the controller that opened the application thereof and accepts only the command from the controller for the application executing command. In this case, a command from other controllers is rejected even during opening. (4) Protection of an application Even if enciphered application key code is sent, the application can not be protected completely. Since even a third party not having a right of using the application can intercept the content of communication between the controller and the target, it may be considered that the cipher function fk can be determined based on the intercepted target key code and the application key code by using a computer. (4-1) Administration by company ID Then, means for protecting the application against such a situation is considered. If a third party not having a right of use manufactures an equipment as the target, it is possible to detect a third party and inhibit so as not to execute the application by the following method if the load on the controller is or negligible. Explanation is to be made to such an example that a personal computer executes the application as the controller. A company ID as an object for the execution of application (a company having a right of use) is registered on the personal computer. Then, a vendor ID inquiry command is sent to the target and check if the vendor ID attached to the response is registered or not. Since a node unique ID is written in the inside in the equipment corresponding to the IEEE-1394 serial bus, this inquiry is conducted, for example, before procedure (1) in Fig. 5. In this case even if a company C as a third party (company ID = zzzzzzh) manufactures with no authorization such a target as capable of accepting a vendor unique command based on a vendor ID = xxxxxxh of the company A and executing the application K, since the controller can recognize that the company C is not registered based on the list of the registered ID as shown in Fig. 11, the controller can inhibit the actuation of the application K. In this case, since it may be considered that the number of companies obtaining the right of using the application K is actually increased, the method of protection as in the above-mentioned example is applicable to a case the list can be updated. (4-2) Setting target key code For a relationship of application key code = fk (target key code), decoding of the cipher function fk is facilitated more as the number of the samples of the target key code and the application key code is increased. Considering application to consumers' equipments, it is desirable that the target key code changes not frequently but occasionally in a certain kind of equipment. Then, the target key code is set, for example, as below. (1) Change by the number of products The target key code is changed, for example, on every hundred thousand number of products. When a third party manufactures a controller, although it can correspond to the target key code for the initial one hundred thousand of products, products manufactured subsequently are not operated by the controller manufactured by the third party. (2) Change by built-in clock (calender) The target key code is changed, for example, on every one year even for an identical equipment. Equipments produced in the year of 1995 have a target key code of a value based on 1995. Then the third party manufactures a controller based on the target key code at the initial stage. Accordingly, although the operation is possible at the initial stage also by the controller of the third party, it is not operated as the year rolls. (4-3) Cipher function fk If the cipher function fk is a numerical value calculation formula, fk can be determined simply depending on the number of samples of the target key code and the application key code. Then, when it is introduced into a consumer's equipment, fk is not formed as a numerical value function, but an application key code is allocated in 1-to-1 relationship to the target key code, and the reference table is handed as fk to a company having the right of using the application K. Fig. 12 shows an example of the reference table. With this procedure, it is difficult to determine the cipher function fk. Further, it can be coped with simply even by one chip microcomputer. Further, even once after commercial goods are marketed, the cipher system can be changed relatively simply by version up of ROM. [5] Target constitution Fig. 13 shows an example of a target constitution applied with the present invention. As shown in the figure, the node as the target comprises a microcomputer 1, a target key code memory 2, a cipher function memory 3, a clock 4 and a communication interface 5. The microcomputer 1 controls all the processings regarding the application such as opening/closure of the incorporated preparation of command/response and preparation of application key code. The target key code memory 2 possesses a target key code different on every application. Further, a plurality of target key codes are stored therein on every application, so that the target key code can be changed on every one year. The cipher function memory 3 possesses a cipher function fk on every application. In this case, this is a ROM table storing the reference table between the target key code and the application key code as shown in Fig. 12. The clock 4 informs the microcomputer 1 with the current clock information. The microcomputer 1, referring to the clock information, switches and reads out the target key code upon elapse of every year. The communication interface 5 is an interface for sending/receiving command/response to/from IEEE-1394 serial bus 6. Although a block for processing audio/video signals is provided to an actual target, only the block having concerns with the opening of the application is shown. The constitution of the controller is to be explained briefly. A controller corresponding to the target in Fig. 13 comprises a microcomputer, a cipher function memory and a communication interface. If the controller conducts administration by the company ID as explained in (4-1), it has further a memory for registering the company ID of a company as an object for the execution of the application. Then, explanation is to be made to an operation till the target shown in Fig. 13 opens the application. At first, the controller accepts inquiry command for the target key code sent by the controller (refer to procedure (1) in Fig. 5 and Fig. 7(a)). The microcomputer 1, referring to the target key code memory 2, reads out a target key code corresponding to the application No. attached to the inquiry command and sends a response "Stable" by way of the communication interface 5 (refer to procedure (2) in Fig. 5 and Fig. 7(b)). If there a target key code corresponding to the application No. attached to the inquiry command is not present, response "Not Implemented" is sent (refer to Fig. 7(c)). When receiving the response "Stable" from the target, the controller detects the target key code attached there and reads out the incorporated cipher function memory to prepare an application key code. The cipher function memory is constituted in the same manner as the cipher function memory 3 of the target. The controller sends, to the target, an opening command with the prepared application key code (procedure (3) in Fig. 5, Fig. 8(a)). The microcomputer 1 in the target compares the application key code attached to the accepted opening command with the application key code corresponding to the target key code stored in the cipher function memory 3 of its own. That is, in this case, the target key code is not decoded from the application key code by using an inverse function for the cipher function as shown in Fig. 5, but encipherment is conducted in the same manner as the controller. It may of course be constituted such that the target key code is decoded from the application key code. If the application key codes compared are identical with each other, the target puts the application to the open state and returns a response of "Accepted" to the controller for informing that the application is put into the open state (refer to procedure (4) in Fig. 5). An illustrative mode of practising the present invention is to be explained specifically in the order of: [1] Control system for a digital VCR to which an example of the present invention is applied, [2] Digital interface and LANC, [3] How to carry LANC command on a digital interface, [4] Code allocation (4-1) Rule for allocating application OPC (4-2) VCR control (basic) code (4-3) VCR control (special) code (4-4) Tuner control code (4-5) Camera control code [5] Command -on/-off [1] Control system for a digital VCR to which an example of the present invention is applied. Fig. 14 is a block diagram illustrating a constitution of an illustrative control system for a digital VCR to which the present invention is applied. As shown in the figure, the digital VCR to which an example of the present invention is applied comprises a digital interface micon (hereinafter simply referred to as DIFcon) 7, a mode control micon (hereinafter referred to simply as MODEcon) 8 and a mechanism control micon (hereinafter simply referred to as MECHAcon) 9. DIFcon 7 conducts transmission/reception of AV/C-CTS between it and other equipments connected by way of the IEEE-1394 serial bus (not illustrated). Further, it conducts both way conversion between AV/C-CTS and LANC signals (to be detailed hereinafter). The MODEcon 8 conducts transmission/reception of LANC signals between it and other equipments connected by a LANC cable (Not illustrated). Further, it transmits and receives LANC signals to and from DIFcon. Mechacon 7 controls the mechanism in accordance with the command sent from the MODEcon 8. Further, it informs the MODEcon 8 with the status of the mechanism. [2] Digital interface and LANC Fig. 15 shows a frame constitution of AV/C-CTS. In this case, CTS = 0000 indicates that this is AV/C-CTS. Zero-pad-bytes are disposed as necessary for defining the frame length to a 4 bytes (quadrant) unit. LANC is such a system in which VCR conducts both way communication as a master of the communication, synchronized with vertical sync signals of video signals with respect to peripheral equipments. Then, it transmits/receives 8 word data having the word constitution as shown in Fig. 16 on every field. Fig. 17 shows a flow for code processing of DIFcon 7 and MODEcon 8 in Fig. 14. The MODEcon administrates the operation status of the VCR by the VCR mode code of WORD 4 of the LANC code, and transfers the information upon communication with the DIFcon. Upon receiving a status inquiry command for the mechanism mode sent from the digital interface, DIFcon converts the VCR mode sent from the MODEcon into a code of AV/C-CTS and sends the response of the status by way of a digital interface. Further, the mechanism control command sent at the digital interface (mode drive type) is converted by the DIFcon to the VCR mode code of LANC and then sent as a final mode to the MODEcon (this is also mode driven). For the command sent from LANC (command drive type), the MODEcon receives the same, indexes a mode to transit with reference to a mode transition table based on the current mode and the received command and administrates as the final mode. Fig. 18 shows a portion of the mode transition table. The mode transition table shows VCR modes on the left in a vertical column, and shows commands in the upper lateral row. When a certain mode is transited by a certain command, the designated transition mode is described at an area of intersection of the table. If the area as the intersection is blank, this means that the command is not accepted or the mode is not transited even if the command is accepted. -on/-off attached to the name of the command indicates an edge for initiation and termination of the command transmission. In LANC, coincidence is checked twice or more for accepting the command, in consideration of a communication error, and the edge corresponds to the timing of coincidence for twice or more. The final mode generated by the MODEcon with reference to such a mode transition table is transmitted to the MECHAcon by way of internal communication, and the mechanism is controlled so as to attain a desired mode. [3] How to carry a LANC command on a digital interface In AV/C-CTS, a vendor unique frame is defined as OPC (Operation Code) such that a manufacturer of an equipment can optionally define a command. However, command/response transaction is in accordance with AV/C-CTS. Fig. 19 shows a constitution of a vendor unique frame defined in AV/C-CTS. OPC = 00h indicates that this is vendor unique. The vendor ID uses 3 byte company ID. The company ID is determined by IEEE. In this embodiment, it is adapted that a LANC command can be transmitted by using a vendor unique command in accordance with AV/C-CTS. Fig. 20 shows the constitution of the vendor unique command. In this figure, commands other than the application No indicating the type of the application are defined on every application. Then, as shown in Fig. 21, from 01h to the 06h are used for LANC as the application No. Further, for making the application executable from other equipment, cipher information is defined for every application and the application is executable only when the cipher information is received, as described hereinabove. [4] Code allocation (4-1) Rule for allocating application OPC As shown in Fig. 21, six applications are provided for LANC, and code is allocated for OPC (operation code), OPR (operand) defined on every application in accordance with an identical rule. In LANC, since the command code and the status code are different, an inquiry system (4xh) and a control system (5xh) are separated as OPC as shown in Fig. 22. In Fig. 22, the target key code is a code of an equipment to be controlled as a base for forming cipher information for making the application executable (open status). The control system corresponds to WORD 0, 1 in a command transmission area of LANC and a designation corresponding to WORD 0 is indicated by the application No. and the application OPC. Then, the command code for WORD 1 of LANC is allocated as it is to the application OPR 1. Accordingly, the operand of the command in the control system consists of 1 byte. The control system command is sent in accordance with the control command of AV/C-CTS. Information such as VCR mode is outputted at a predetermined period in LANC. However, when the LANC command is carried on the digital interface, inquiry is made only when the information is required and response is made thereto, in order to avoid occupation of the bus and in accordance with the transaction rule of AV/C-CTS. The inquiry system command is sent together with a dummy code in accordance with the status inquiry command of AV/C-CTS and data is filled at a dummy code as a response thereto. (4-2) VCR control (basic) code The control system corresponds to "Command to VTR (basic function)" of WORD 0, 1 of LANC. As shown in Fig. 23, 01h of the application No. and 50h of the application OPC indicate that this is the basic control command designated to VCR. Then, for the application OPR 1, a command code of "command VTR (basic function)" for WORD 1 of LANC is allocated as it is. Fig. 24 illustrates a portion of allocation for the command codes. The inquiry system corresponds to VCR mode, VCR status and numerical data, for example of a counter of WORD 4, 5, 6, 7 of LANC. Code allocation of LANC is allocated as it is in areas corresponding to LANC in which WORD names are listed in Fig. 25. Further, Fig. 26 shows examples of codes for VCR mode and Fig. 27 shows an example of an inquiry command and a response. (4-3) VCR control (special) code The control system corresponds to "Command to VTR (special function)" for word 0, 1 of LANC. As shown in Fig. 28, application No.02h and application OPC 50h indicate that this is a special control command designated to VCR. Then, for the application OPR 1, a command of "Command to VTR (special function)" for WORD 1 of LANC (not illustrated) is allocated as it is. Commands related to edition or the like are present. For the inquiry system, a status corresponding to the command of "Command to VTR (special function)" is outputted. Code allocation is corresponded with the command of LANC. (4-4) Tuner control code The control system corresponds to "Command to Tuner" for WORD 0, 1 of LANC. As shown in Fig. 29, 03h of application No. and 50h of application OPC indicate that this is a control command designated to the tuner. The inquiry system corresponds to "Tuner Status" for WORD 2, 3 of LANC. As shown in Fig. 30, 03h of application No. and 40h of application OPC indicate that this is a channel inquiry command designated to the tuner, and 03h of application No. and 41h of application OPC indicate that this is a status inquiry command designated to the tuner. (4-5) Camera control code The control system corresponds to "Command to Camera" for WORD 0, 1 of LANC. As shown in Fig. 31, 04h of application No. and h of application OPC indicate that this is a control command designated to the camera. Fig. 32 shows examples of the allocation of the application OPR 1. The inquiry system corresponds to "Camera Status" for WORD 2, 3 of LANC. As shown in Fig. 33, 04h of application No. and 41h of application OPC indicate that this is a status inquiry command designated to the camera. [5] Command -on/-off Since LANC conducts communication periodically on every field, it is often used in such a way that a command is sent continuously during pressing of the key for remote control. Further, in LANC, the number of cycles of sending the command has a meaning. For example, there are such a case in which the command is made valid when identical commands are sent continuously for 2 fields and identical commands sent subsequently have no meanings till sending is disconnected and a case in which a meaning is given to continuous sending. On the other hand, in the digital interface, since a command sent by 1 packet has a meaning, identical commands are not sent continuously. Accordingly, a command allocated with the identical code with that of the command defined in LANC shows "Command-on" (start of sending). A command having a meaning in continuous sending is separately allocated with a code indicative of "Command-off". Fig. 34 shows a flow chart for processing a command of causing mode transition. When a control command from a digital interface is received, a DIFcon judges whether the received command is a code of LANC or not step S1. Then, if it is a LANC code, it is transferred to a MODEcon. The MODEcon determines a final node referring to the mode transition table (step S4). If it is judged that the command is not a LANC code, DIFcon converts the command to the code of the VCR mode and transfers the same to the MODEcon. On the other hand, when a LANC command is received, the MODEcon detects the edge of the command (step S3), to determine the mode at the designation of transition based on the VCR mode and "Command-on", "Command-off" (step S4). Accordingly, since the processing for detecting the edge by the MODEcon is not required by sending the LANC command on the digital interface in the form of "Command-on" or "Command-off" as described above, the processing can be simplified. As has been described above by way of an example of the present invention, an original application using a control signal of a predetermined format containing an identification information indicative of . the manufacturer of the equipment can be used also by other company, and the use can be permitted/inhibited on every application. As has been described above specifically by way of an example of the present invention, a command drive type command set can be introduced in the digital interface without increasing the load for the internal processing of an equipment.

Claims: A method of controlling the operation of an electronic equipment, comprising the steps of: providing a plurality of electronic equipment connected by way of a bus, said bus allowing for communication of information signals and control signals between each of said electronic equipment; transmitting to one of said plurality of electronic equipment, a control signal of a predetermined format containing format information which specifies whether said predetermined format is a vendor unique frame format and, if so, including a vendor unique command; receiving said control signal by said one of said plurality of electronic equipment; determining whether said predetermined format in said control signal is a vendor unique frame format for said one of said plurality of electronic equipment based on said format information; and controlling said one of said plurality of electronic equipment based on the vendor unique command in said control signal when said predetermined format in said control signal is a vendor unique frame format for said one of said plurality of electronic equipment. A method according to claim 1, wherein said format information is 4 bits. A method according to claim 1 or 2, wherein said predetermined format further contains a vendor identification, and said method further comprises the step of determining whether said vendor unique frame format is for said one of said plurality of electronic equipment based upon said vendor identification. A method according to claim 3, wherein said vendor identification is 3 bytes. A method according to claim 1, 2, 3 or 4, wherein the said bus is an IEEE 1394 bus. A method according to claim 5, wherein the said predetermined format is an IEEE 1394 function control protocol (FCP) having a command transaction set area, and the said format information specifies the command transaction set area contains a vendor unique command. A method according to claim 6, wherein the said format information comprises a set of Command Transaction Set (CTS) bits. A method according to claim 1, wherein the format information comprises a first set of bits specifying whether the control signal comprises an audio visual control command transaction set, and, if so, a second set of bits specifying whether the audio visual control command transaction set is a vendor unique command transaction set. A method according to claim 8, wherein the first set of bits is 4 bits. A method according claim 8 or 9, wherein the second set of bits is one byte. A method according to claim 8, 9, or 10, wherein said predetermined format contains a vendor identification, and said method further comprises the step of determining whether said vendor unique frame format is for said one of said plurality of electronic equipment based upon said vendor identification. A method according to claim 8, 9, 10 or 11, wherein the said bus is an IEEE 1394 bus. A method according to claim 12, wherein the said predetermined format is an IEEE 1394 function control protocol (FCP) having a command transaction set area, and the said format information specifies the command transaction set area contains a vendor unique command. A method according to claim 13, wherein the first set of bits is a set of CTS bits. A method according to claim 13 or 14, wherein the second set of bits comprise a set of operation code bits. An electronic equipment for connection to a bus which allows transmission of a mixture of a control signal and an information signal, to other electronic equipment connected to the bus, the said electronic equipment comprising: transmitting means arranged to transmit a control signal of a predetermined format containing format information which specifies whether said predetermined format is a vendor unique frame format to one of said other electronic equipment to control said one of said other electronic equipment based on a vendor unique command in said control signal when said predetermined format in said control signal is a vendor unique frame format for said one of other electronic equipment. An electronic equipment according to claim 16, wherein said format information is 4 bits. An electronic equipment according to claim 16 or 17, wherein said predetermined format further contains a vendor identification. An electronic equipment according to claim 18, wherein said vendor identification is 3 bytes. An electronic equipment according to claim 16, 17, 18 or 19, wherein the said predetermined format is an IEEE 1394 function control protocol (FCP) having a command transaction set area, and the said format information specifies the command transaction set area containing a vendor unique command. An electronic equipment according to claim 20, wherein the said format information comprises a set of Command Transaction Set (CTS) bits. An electronic equipment according to claim 16, wherein the format information comprises a first set of bits specifying whether the control signal comprises an audio visual control command transaction set, and, if so, a second set of bits specifying whether the audio visual control command transaction set is a vendor unique command transaction set. An electronic equipment according to claim 22, wherein the first set of bits is 4 bits. An electronic equipment according claim 22 or 23, wherein the second set of bits is one byte. An electronic equipment according to claim 22, 23, or 24, wherein said predetermined format contains a vendor identification. An electronic equipment according to claim 22, 23, 24 or 25, wherein the said predetermined format is an IEEE 1394 function control protocol (FCP) having a command transaction set area, and the said format information specifies the command transaction set area contains a vendor unique command. An electronic equipment to claim 26, wherein the first set of bits is a set of CTS bits. An electronic equipment according to claim 26 or 27, wherein the second set of bits comprise a set of operation code bits. An electronic equipment for connection to a bus which allows transmission of a mixture of a control signal and an information signal, to other electronic equipment connected to the bus, the said electronic equipment comprising: receiving means for receiving a control signal of a predetermined format containing format information which specifies whether said predetermined format is a vendor unique frame format; determining means for determining whether said predetermined format in said control signal is a vendor unique frame format for said electronic equipment based on said format information; and controlling means for controlling said electronic equipment based on a vendor unique command in said control signal when said predetermined format in said control signal is a vendor unique frame format for said electronic equipment. An electronic equipment according to claim 29, wherein said format information is 4 bits. An electronic equipment according to claim 29 or 30, wherein said predetermined format further contains a vendor identification, and said electric equipment further comprises determining means for determining whether said vendor unique frame format is for said electronic equipment based upon said vendor identification. An electronic equipment according to claim 31, wherein said vendor identification is 3 bytes. An electronic equipment according to claim 29, 30, 31 or 32, wherein the said predetermined format is an IEEE 1394 function control protocol (FCP) having a command transaction set area and the said format information specifies that the command transaction set area contains a vendor unique command. An electronic equipment according to claim 33, wherein the format information comprises a set of Command Transaction Set (CTS) bits and the determining means determines whether said format is a vendor unique format based on the CTS bits. An electronic equipment according to claim 29, wherein the format information comprises a first set of bits specifying whether the control signal comprises an audio visual control command transaction set, and, if so, a second set of bits specifying whether the audio visual control command transaction set is a vendor unique command transaction set. An electronic equipment according to claim 35, wherein the first set of bits is 4 bits. An electronic equipment according claims 35 or 36, wherein the second set of bits is one byte. An electronic equipment according to claim 35, 36 or 37, wherein said predetermined format contains a vendor identification, and said equipment further comprises the step of determining whether said vendor unique frame format is for said one of said plurality of electronic equipment based upon said vendor identification. An electronic equipment according to claim 35, 36, 37, or 38, wherein the said predetermined format is an IEEE 1394 function control protocol (FCP) having a command transaction set area, and the said format information specifies the command transaction set area contains a vendor unique command. An electronic equipment to claim 39, wherein the first set of bits is a set of CTS bits. An electronic equipment according to claim 39 or 40, wherein the second set of bits comprise a set of operation code bits. An electronic equipment according to any one of claims 16 to 41 connected to the bus. An electronic equipment according to claim 42, wherein the bus is an IEEE 1394 bus. A system comprising a bus, an electronic equipment according to claim to any one of claims 16 to 28 connected to the bus, and an electronic equipment according to any one of claims 29 to 41 connected to the bus. A system according to claim 44, wherein the bus is an IEEE 1394 bus.

Inventors: KAWAMURA HARUMI, KAWAMURA, HARUMI
Applicants: SONY CORP, SONY CORPORATION
Application year: 1996
Main classification: G05B19
IPC codes: G11B15, H04N5