WO2001075611A1 - A system and a method for creating and accessing data - Google Patents

A system and a method for creating and accessing data Download PDF

Info

Publication number
WO2001075611A1
WO2001075611A1 PCT/US2001/010792 US0110792W WO0175611A1 WO 2001075611 A1 WO2001075611 A1 WO 2001075611A1 US 0110792 W US0110792 W US 0110792W WO 0175611 A1 WO0175611 A1 WO 0175611A1
Authority
WO
WIPO (PCT)
Prior art keywords
descriptor
list
command
creating
controller
Prior art date
Application number
PCT/US2001/010792
Other languages
French (fr)
Inventor
Jon Ebbe Brelin
Original Assignee
Sony Electronics, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Electronics, Inc. filed Critical Sony Electronics, Inc.
Priority to AU2001249816A priority Critical patent/AU2001249816A1/en
Publication of WO2001075611A1 publication Critical patent/WO2001075611A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Definitions

  • the present invention relates to creating data in audio, video or audio/video interconnected systems and, more particularly, to a system and method for creating and accessing data in such systems.
  • the conventional method for creating and accessing data in a high speed serial bus such as an Institute of Electrical and Electronics Engineers (IEEE) 1394 standard serial bus, std 1394-1995, Standard For A High Performance Serial Bus, (August 30, 1996) (hereinafter referred to as the "IEEE 1394 standard serial bus”) is thought to be inefficient. This inefficiency is revealed by the process involved in creating and then accessing data structures such as entry descriptors, root lists, and child lists.
  • IEEE 1394 standard serial bus Standard For A High Performance Serial Bus
  • An entry descriptor typically maintained in a list descriptor, describes information related to a subunit's objects such as a picture from a camera.
  • a root list a type of list descriptor that is typically located at the beginning of a descriptor hierarchy, serves the purpose of providing a directory, for example, of other list descriptors in a descriptor hierarchy.
  • a child list a type of list descriptor that is typically subordinate to a parent descriptor, contains information blocks regarding the parent descriptor. For example, a parent descriptor may contain information about a song whereas the child list typically contains more detailed information about that song such as the author of the lyrics.
  • an AV/C controller (“controller"), a device at a serial bus node, sends an AV/C command such as a AV/C CREATE DESCRIPTOR command to a remote AV/C device.
  • the conventional CREATE DESCRIPTOR command causes the AV/C device (or sub unit) to create (or reject) to create a specified type of descriptor in a certain location of a descriptor hierarchy.
  • the CREATE DESCRIPTOR command includes an opcode, the command to create a descriptor, the most significant bits ("msb"), and the least significant bits (“lsb") of the command.
  • the opcode is used to map the fields to the operation code such as the CREATE DESCRIPTOR command.
  • an address is generally specified such as FF 16 in the AV/C CREATE DESCRIPTOR.
  • a controller that created the entry descriptor occasionally requires access to the new entry descriptor; however, the position of the entry descriptor is generally unknown to the controller. Therefore, the position of the entry descriptor must be determined by reading and parsing the list descriptor's number_of_entry_descriptors field. However, reading the list descriptor in order to locate the entry descriptor is inefficient.
  • a root list descriptor is a type of list descriptor that is generally at the beginning of a descriptor hierarchy of list descriptors.
  • the target device When a root list is created by specifying the root list type (e.g., root_list_type) in a CREATE DESCRIPTOR command, the target device ("target") creates the root list descriptor containing the root list and updates the subunit identifier descriptor ("SID") with this information.
  • the controller In order for the controller to read the root list, the controller must find and read the SID to determine the new root list ID through root_list_ID field so that the controller may access the new root list. This process is inefficient since the controller must find and read the SID.
  • Another example of creating and accessing data in an inefficient manner relates to a controller creating a child list by using the CREATE DESCRIPTOR command to create a list type such as through the child_list_type field.
  • the target creates the child list and updates the parent entry by placing the new child list ID (i.e., child_list_ID) into the parent entry.
  • the controller In order to access the child list, the controller must read the parent entry to determine the new child list ID. This process is inefficient since the controller is required to read the parent entry. It is therefore desirable to have a system and a method that overcomes the disadvantages associated with conventional methods.
  • a method and apparatus related to creating and accessing data structures on a bus involves creating a list descriptor.
  • An entry descriptor is created and appended to the list descriptor.
  • a response frame is returned to a device such as a controller.
  • the response frame includes the location of the entry descriptor in the list.
  • Another embodiment relates to creating a root list in a descriptor.
  • a response frame that includes a list ID of the root list is returned to a device such as a controller. This information allows a device to directly access the root list.
  • a child list is created in a descriptor.
  • the child list ID is returned in a response frame to a device such as a controller. This information allows a device to directly access the child list.
  • Figure 1 is a block diagram of one embodiment for a multimedia network including various consumer electronic devices coupled through a high speed serial bus;
  • Figure 2 is a block diagram of one embodiment of a controller AV/C device and a target AV/C device with a descriptor hierarchy residing in the target node of the IEEE 1394 standard serial high speed serial bus;
  • Figure 3 illustrates a flow diagram of one embodiment for creating an entry descriptor
  • Figure 4 illustrates one embodiment of a flow diagram for creating a root list
  • Figure 5 illustrates one embodiment of a flow diagram for creating a child list.
  • the invention relates to a process for efficiently creating and accessing entry descriptors, root lists, and child lists.
  • a system is disclosed in which a device such as a controller is coupled by a bus such as a IEEE 1394 standard serial bus to another device such as a target device that contains shared information.
  • a list descriptor is created and then an entry descriptor is appended to the list descriptor.
  • a response frame is returned to the controller indicating the position of the entry descriptor.
  • a root list is created in a root list descriptor.
  • a response frame that includes the list identifier (e.g. root list ID) is returned to a controller.
  • the list identifier indicates the identifier (ID) of a list such as a root list.
  • the controller may directly access the root list by using the root list identifier without finding and reading the subunit identifier descriptor ("SID").
  • a child list is created in a child list descriptor.
  • a response frame that includes the list ID of the child list is returned to the controller.
  • the child list may be directly accessed by using the list identifier without reading the parent entry.
  • FIG. 1 is a block diagram of one embodiment for multimedia network 100, including various consumer electronic devices coupled through a high speed serial bus 160.
  • the high speed serial bus 160 may be, for example, an IEEE 1394 standard serial bus.
  • the multimedia network 100 may be located in one physical space, such as a home or an office.
  • Multimedia network 100 may include digital video camera ("DVC") 110, digital video monitor 120, personal computer 130, personal digital assistant 135, digital video cassette recorder ("VCR”) 140, set top box 142, and printer 145.
  • Computer 130 and personal digital assistant 135 contain processors which execute instructions stored on a media, such as memory (volatile, non-volatile, removable), or storage media, etc.
  • High speed serial bus 160 supports communication of digital audio/video data and computer transmission data between the network devices.
  • DVC 110, digital VCR 140, printer 145, or any other consumer electronic device typically do not have direct Internet access whereas computer 130 and personal digital assistant 135 may be configured to have Internet access.
  • Network 210 that includes networks such as an intranet or a global network such as the Internet, interfaces with computer 130 and personal digital assistant 135 through, for example, a telephone line (not shown) or wireless communication.
  • Figure 2 is a block diagram in which an entry descriptor, a root list, and a child list, are created through AV/C devices. In this embodiment, two AV/C devices such as computer 130 and DVC 110 of Figure 1 are shown residing in two nodes of the IEEE 1394 standard serial bus.
  • System 400 includes controller (also referred to herein as a second device) 410 connected to a target device (also referred to herein as a first device) 420.
  • Target device 420 may be, for example, DVC 410.
  • Target device 420 includes memory 430 for storing data and several descriptors (e.g., data structures) 405, 450, 460, and 470.
  • Each descriptor 405, 450, 460, and 470 has a structured data interface containing information pertaining to features of target device 420 which in this embodiment is DVC 110.
  • Descriptor 460 is a child descriptor. Child descriptors are typically created to the right of its parent descriptor such as descriptor 450. The identification of child descriptor 460 such as the child list ID, is maintained within the descriptor 450.
  • Figure 2 is a block diagram of one embodiment of a controller AV/C device and a target AV/C device with a descriptor hierarchy residing in the target node of the IEEE 1394 standard serial high speed serial bus. Specifically, Figure 2 illustrates descriptors such as entry descriptive 470, root list descriptor 450, and child list descriptor 460 created by target device 420.
  • controller 410 issues a CREATE DESCRIPTOR command to target device 420 to create an entry descriptor.
  • the CREATE DESCRIPTOR command is accepted by target device 420 and causes target device 420 to create entry descriptor 470.
  • Entry descriptor 470 created at the end of a child list descriptor, includes information about a sub unit's objects such as a picture from DVC 110.
  • Target device 420 then returns information such as the position of the entry descriptor to controller 410 through a response frame of the CREATE DESCRIPTOR command.
  • the response frame of the CREATE DESCRIPTOR command is automatically returned to the controller that originally sent the CREATE DESCRIPTOR command.
  • Conventional CREATE DESCRIPTOR commands lack such a response frame that contains the position information.
  • trie response rrame When appending an entry using tt, trie response rrame returns the resmtan 2 When creating a list, the accepted response frame returns the list ID using descriptor _specifier 10 16 .
  • the fields of the CREATE DESCRIPTOR command are presented with several columns: a column for field names, the field values in the command frame, and a response for the various response frames.
  • the field and command columns relate to the values in the command sent by controller 410 to target device 420.
  • the field column of the CREATE DESCRIPTOR command shows the fields that are used such as the result, subfunction_one, descriptor_specifier_where, and descriptor_specifier_what.
  • Descriptor_specifier_where indicates where in the descriptor hierarchy that a descriptor should be created and descri ⁇ tor_specifier_what indicates the type of descriptor (e.g. entry descriptor) to be created.
  • FF 16 may be applied to descriptor_specifier_where and descriptor_specifier_when appending an entry descriptor to the end of a list. Additionally, a descriptor specifier of the location of the SID for creating a root list or of an entry for creating a child list may be provided.
  • Data such as the position of a newly created entry descriptor, or list_ID of the new root list, or child list is added to the response frame in the row specified by the superscripts 1 and 2 of Table I and is returned from target device 420 to controller 410.
  • One difference between the CREATE DESCRIPTOR command that implements the techniques of the invention and conventional CREATE DESCRIPTOR command relates to the response frame which the conventional CREATE DESCRIPTOR command lacks.
  • the descriptor_specifier_where and descriptor_specifier_what fields are updated to contain the new information.
  • the accepted column indicates that the list or the entry descriptor that was created has been accepted by target device 420.
  • the creation of the entry descriptor for example, is accepted by target device 420 when the entry descriptor is placed in a certain location of the descriptor hierarchy of target device 420 and the position of the entry descriptor is returned in the response frame to controller 410.
  • Rejected means that target device 420 has rejected creating an entry descriptor, a root list, or a child list.
  • One reason that a target device may reject a CREATE DESCRIPTOR command is that the target device may be unable to support the CREATE DESCRIPTOR command.
  • the interim column for the CREATE DESCRIPTOR command has been established to indicate to a second device such as a controller that after a time period such as 100 milliseconds (ms), the target device is still trying to execute the CREATE DESCRIPTOR command.
  • the interim column therefore, indicates that the CREATE DESCRIPTOR command has neither been accepted nor rejected.
  • a root list is created from the SID by a controller 410 sending a CREATE DESCRIPTOR command to target device 420.
  • the CREATE DESCRIPTOR command includes a response frame that identifies the root list ID for the root list and indicates that the CREATE DESCRIPTOR has been accepted.
  • the response frame is automatically returned to controller 410.
  • another CREATE DESCRIPTOR command frame may be issued by controller 410 to target device 420 in which the CREATE DESCRIPTOR command requires a child list be created from an entry in root list 450.
  • the CREATE DESCRIPTOR command includes a response frame.
  • the response frame is updated with the child list ID and the response frame is automatically returned to controller 410.
  • controller 410 is then able to directly access the child list.
  • FIG. 3 is a flow diagram of one embodiment for creating an entry descriptor.
  • a second device such as a controller issues a CREATE DESCRIPTOR command shown in Table I to a first device such as a target device.
  • this CREATE DESCRIPTOR command creates an entry descriptor at, for example, the end of a list descriptor in the target device.
  • a response frame is part of the CREATE DESCRIPTOR command.
  • Figure 4 illustrates a flow diagram of one embodiment for creating a root list within a descriptor such as a list descriptor.
  • a CREATE DESCRIPTOR command is sent by a second device such as a controller to a first device such as a target device.
  • the CREATE DESCRIPTOR command includes a root list type (i.e., a root istjype) specified in the CREATE DESCRIPTOR command.
  • a response frame of the CREATE DESCRIPTOR command returns the list ID (i.e., list_ID) of the new root list from the target device to the controller. This makes it more convenient for the controller to directly access the root list after the command has been issued.
  • the controller may directly access the root list.
  • Figure 5 is a flow diagram of one embodiment for creating a child list.
  • a CREATE DESCRIPTOR command includes a child list type (e.g., child listj pe) specified in the CREATE DESCRIPTOR command.
  • the target device creates the child list.
  • the parent's entry is updated with the child list ID by having the new child list ID (i.e., child_list_ID) placed hierarchically below the parent entry.
  • the response frame of the CREATE DESCRIPTOR command returns the list ID (i.e., list_ID) of the new child list to the controller.
  • the second device such as the controller has access to the position of the child list.

Abstract

In one embodiment, a list descriptor is created (510) in which the list descriptor has a first end and a second end. An entry descriptor is created (520) at the second end of the list descriptor. Another embodiment relates to creating a list in a descriptor. A response frame is returned to a controller in which the response frame includes a list ID for the list.

Description

A SYSTEM AND A METHOD FOR CREATING AND ACCESSING DATA
BACKGROUND OF THE INVENTION This application claims the benefit of the earlier filing date of co-pending provisional application of Jon E. Brelin entitled "Returning the Position and ID of a Newly Created Descriptor," Serial No. 60/194,238. filed April 3, 2000 and incorporated herein by reference.
FIELD OF THE INVENTION
The present invention relates to creating data in audio, video or audio/video interconnected systems and, more particularly, to a system and method for creating and accessing data in such systems.
BACKGROUND
The conventional method for creating and accessing data in a high speed serial bus such as an Institute of Electrical and Electronics Engineers (IEEE) 1394 standard serial bus, std 1394-1995, Standard For A High Performance Serial Bus, (August 30, 1996) (hereinafter referred to as the "IEEE 1394 standard serial bus") is thought to be inefficient. This inefficiency is revealed by the process involved in creating and then accessing data structures such as entry descriptors, root lists, and child lists.
Definitions for these data structures are provided below followed by a description of the conventional process used to create and access these data structures.
An entry descriptor, typically maintained in a list descriptor, describes information related to a subunit's objects such as a picture from a camera. A root list, a type of list descriptor that is typically located at the beginning of a descriptor hierarchy, serves the purpose of providing a directory, for example, of other list descriptors in a descriptor hierarchy. A child list, a type of list descriptor that is typically subordinate to a parent descriptor, contains information blocks regarding the parent descriptor. For example, a parent descriptor may contain information about a song whereas the child list typically contains more detailed information about that song such as the author of the lyrics.
To create an entry descriptor, a child list, or a root list, an AV/C controller ("controller"), a device at a serial bus node, sends an AV/C command such as a AV/C CREATE DESCRIPTOR command to a remote AV/C device. The conventional CREATE DESCRIPTOR command, provided below, causes the AV/C device (or sub unit) to create (or reject) to create a specified type of descriptor in a certain location of a descriptor hierarchy.
Figure imgf000004_0001
CREATE DESCRIPTOR command frame
As noted above, the CREATE DESCRIPTOR command includes an opcode, the command to create a descriptor, the most significant bits ("msb"), and the least significant bits ("lsb") of the command. The opcode is used to map the fields to the operation code such as the CREATE DESCRIPTOR command. To create an entry descriptor, an address is generally specified such as FF16 in the AV/C CREATE DESCRIPTOR.
A controller that created the entry descriptor occasionally requires access to the new entry descriptor; however, the position of the entry descriptor is generally unknown to the controller. Therefore, the position of the entry descriptor must be determined by reading and parsing the list descriptor's number_of_entry_descriptors field. However, reading the list descriptor in order to locate the entry descriptor is inefficient.
Another example of creating and accessing data relates to creating a root list descriptor. A root list descriptor is a type of list descriptor that is generally at the beginning of a descriptor hierarchy of list descriptors. When a root list is created by specifying the root list type (e.g., root_list_type) in a CREATE DESCRIPTOR command, the target device ("target") creates the root list descriptor containing the root list and updates the subunit identifier descriptor ("SID") with this information. In order for the controller to read the root list, the controller must find and read the SID to determine the new root list ID through root_list_ID field so that the controller may access the new root list. This process is inefficient since the controller must find and read the SID.
Another example of creating and accessing data in an inefficient manner relates to a controller creating a child list by using the CREATE DESCRIPTOR command to create a list type such as through the child_list_type field. The target creates the child list and updates the parent entry by placing the new child list ID (i.e., child_list_ID) into the parent entry. In order to access the child list, the controller must read the parent entry to determine the new child list ID. This process is inefficient since the controller is required to read the parent entry. It is therefore desirable to have a system and a method that overcomes the disadvantages associated with conventional methods.
SUMMARY
A method and apparatus related to creating and accessing data structures on a bus. One embodiment involves creating a list descriptor. An entry descriptor is created and appended to the list descriptor. A response frame is returned to a device such as a controller. The response frame includes the location of the entry descriptor in the list.
Another embodiment relates to creating a root list in a descriptor. A response frame that includes a list ID of the root list is returned to a device such as a controller. This information allows a device to directly access the root list.
In yet another embodiment, a child list is created in a descriptor. The child list ID is returned in a response frame to a device such as a controller. This information allows a device to directly access the child list. Other features and advantages of the invention will be apparent from the accompanying drawings and from the detailed description that follows below. BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is illustrated by way of example and not limited in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
Figure 1 is a block diagram of one embodiment for a multimedia network including various consumer electronic devices coupled through a high speed serial bus;
Figure 2 is a block diagram of one embodiment of a controller AV/C device and a target AV/C device with a descriptor hierarchy residing in the target node of the IEEE 1394 standard serial high speed serial bus;
Figure 3 illustrates a flow diagram of one embodiment for creating an entry descriptor;
Figure 4 illustrates one embodiment of a flow diagram for creating a root list; and
Figure 5 illustrates one embodiment of a flow diagram for creating a child list.
DETAILED DESCRIPTION
The invention relates to a process for efficiently creating and accessing entry descriptors, root lists, and child lists. In one embodiment, a system is disclosed in which a device such as a controller is coupled by a bus such as a IEEE 1394 standard serial bus to another device such as a target device that contains shared information.
A list descriptor is created and then an entry descriptor is appended to the list descriptor. A response frame is returned to the controller indicating the position of the entry descriptor. By implementing this process, the controller may easily access the entry descriptor without reading the list descriptor.
In another embodiment, a root list is created in a root list descriptor. A response frame that includes the list identifier (e.g. root list ID) is returned to a controller. The list identifier indicates the identifier (ID) of a list such as a root list. By implementing this process, the controller may directly access the root list by using the root list identifier without finding and reading the subunit identifier descriptor ("SID").
In yet another embodiment, a child list is created in a child list descriptor. A response frame that includes the list ID of the child list is returned to the controller. By implementing this process, the child list may be directly accessed by using the list identifier without reading the parent entry.
In the following description, numerous specific details are set forth to provide a thorough understanding of the invention. However, it will be ' understood by one of ordinary skill in the art that the invention may be practiced without these specific details. In other instances, well known structures and techniques have not been shown in detail to avoid obscuring the invention.
Figure 1 is a block diagram of one embodiment for multimedia network 100, including various consumer electronic devices coupled through a high speed serial bus 160. The high speed serial bus 160 may be, for example, an IEEE 1394 standard serial bus. Although not limited as such, in one embodiment, the multimedia network 100 may be located in one physical space, such as a home or an office. Multimedia network 100 may include digital video camera ("DVC") 110, digital video monitor 120, personal computer 130, personal digital assistant 135, digital video cassette recorder ("VCR") 140, set top box 142, and printer 145. Computer 130 and personal digital assistant 135 contain processors which execute instructions stored on a media, such as memory (volatile, non-volatile, removable), or storage media, etc. High speed serial bus 160 supports communication of digital audio/video data and computer transmission data between the network devices. DVC 110, digital VCR 140, printer 145, or any other consumer electronic device typically do not have direct Internet access whereas computer 130 and personal digital assistant 135 may be configured to have Internet access. Network 210 that includes networks such as an intranet or a global network such as the Internet, interfaces with computer 130 and personal digital assistant 135 through, for example, a telephone line (not shown) or wireless communication. Figure 2 is a block diagram in which an entry descriptor, a root list, and a child list, are created through AV/C devices. In this embodiment, two AV/C devices such as computer 130 and DVC 110 of Figure 1 are shown residing in two nodes of the IEEE 1394 standard serial bus. System 400 includes controller (also referred to herein as a second device) 410 connected to a target device (also referred to herein as a first device) 420.
Target device 420 may be, for example, DVC 410. Target device 420 includes memory 430 for storing data and several descriptors (e.g., data structures) 405, 450, 460, and 470. Each descriptor 405, 450, 460, and 470 has a structured data interface containing information pertaining to features of target device 420 which in this embodiment is DVC 110. Descriptor 460 is a child descriptor. Child descriptors are typically created to the right of its parent descriptor such as descriptor 450. The identification of child descriptor 460 such as the child list ID, is maintained within the descriptor 450.
Figure 2 is a block diagram of one embodiment of a controller AV/C device and a target AV/C device with a descriptor hierarchy residing in the target node of the IEEE 1394 standard serial high speed serial bus. Specifically, Figure 2 illustrates descriptors such as entry descriptive 470, root list descriptor 450, and child list descriptor 460 created by target device 420. In one embodiment, controller 410 issues a CREATE DESCRIPTOR command to target device 420 to create an entry descriptor. The CREATE DESCRIPTOR command is accepted by target device 420 and causes target device 420 to create entry descriptor 470. Entry descriptor 470, created at the end of a child list descriptor, includes information about a sub unit's objects such as a picture from DVC 110. Target device 420 then returns information such as the position of the entry descriptor to controller 410 through a response frame of the CREATE DESCRIPTOR command. The response frame of the CREATE DESCRIPTOR command is automatically returned to the controller that originally sent the CREATE DESCRIPTOR command. Conventional CREATE DESCRIPTOR commands lack such a response frame that contains the position information.
In order to understand the difference between the new CREATE DESCRIPTOR command and the conventional CREATE DESCRIPTOR command, some of the features of the CREATE DESCRIPTOR command are provided in Table I. Thereafter, additional embodiments are presented using the CREATE DESCRIPTOR command.
Table I - Field values in the CREATE DESCRIPTOR command
ACCEPTED/REJECTED/INTERIM response frames for subfunction_l oo16
Figure imgf000009_0001
* When appending an entry using tt, trie response rrame returns the resmtan 2 When creating a list, the accepted response frame returns the list ID using descriptor _specifier 1016.
The fields of the CREATE DESCRIPTOR command are presented with several columns: a column for field names, the field values in the command frame, and a response for the various response frames. The field and command columns relate to the values in the command sent by controller 410 to target device 420. The field column of the CREATE DESCRIPTOR command shows the fields that are used such as the result, subfunction_one, descriptor_specifier_where, and descriptor_specifier_what. Descriptor_specifier_where indicates where in the descriptor hierarchy that a descriptor should be created and descriρtor_specifier_what indicates the type of descriptor (e.g. entry descriptor) to be created. FF16 may be applied to descriptor_specifier_where and descriptor_specifier_when appending an entry descriptor to the end of a list. Additionally, a descriptor specifier of the location of the SID for creating a root list or of an entry for creating a child list may be provided.
Data such as the position of a newly created entry descriptor, or list_ID of the new root list, or child list is added to the response frame in the row specified by the superscripts 1 and 2 of Table I and is returned from target device 420 to controller 410. One difference between the CREATE DESCRIPTOR command that implements the techniques of the invention and conventional CREATE DESCRIPTOR command relates to the response frame which the conventional CREATE DESCRIPTOR command lacks. In the ACCEPTED response frame of the new CREATE DESCRIPTOR command, the descriptor_specifier_where and descriptor_specifier_what fields are updated to contain the new information. The accepted column indicates that the list or the entry descriptor that was created has been accepted by target device 420. The creation of the entry descriptor, for example, is accepted by target device 420 when the entry descriptor is placed in a certain location of the descriptor hierarchy of target device 420 and the position of the entry descriptor is returned in the response frame to controller 410.
Rejected, on the other hand, means that target device 420 has rejected creating an entry descriptor, a root list, or a child list. One reason that a target device may reject a CREATE DESCRIPTOR command is that the target device may be unable to support the CREATE DESCRIPTOR command.
In contrast, the interim column for the CREATE DESCRIPTOR command has been established to indicate to a second device such as a controller that after a time period such as 100 milliseconds (ms), the target device is still trying to execute the CREATE DESCRIPTOR command. The interim column, therefore, indicates that the CREATE DESCRIPTOR command has neither been accepted nor rejected.
Given this explanation of the CREATE DESCRIPTOR command, presented below are methods of creating root and child list descriptors. In one embodiment, a root list is created from the SID by a controller 410 sending a CREATE DESCRIPTOR command to target device 420. The CREATE DESCRIPTOR command includes a response frame that identifies the root list ID for the root list and indicates that the CREATE DESCRIPTOR has been accepted. The response frame is automatically returned to controller 410. By including the root list ID in the CREATE DESCRIPTOR command frame, controller 410 has the identifier of the root list and is able to directly access the root list.
In yet another embodiment, another CREATE DESCRIPTOR command frame may be issued by controller 410 to target device 420 in which the CREATE DESCRIPTOR command requires a child list be created from an entry in root list 450. The CREATE DESCRIPTOR command includes a response frame. The response frame is updated with the child list ID and the response frame is automatically returned to controller 410. By having access to the child list ID, controller 410 is then able to directly access the child list.
Figure 3 is a flow diagram of one embodiment for creating an entry descriptor. At block 510, a second device such as a controller issues a CREATE DESCRIPTOR command shown in Table I to a first device such as a target device. At block 520, this CREATE DESCRIPTOR command creates an entry descriptor at, for example, the end of a list descriptor in the target device. A response frame is part of the CREATE DESCRIPTOR command. By including the entry's position in the response frame of the CREATE DESCRIPTOR command, the controller is automatically updated as to the position of the new entry descriptor.
Figure 4 illustrates a flow diagram of one embodiment for creating a root list within a descriptor such as a list descriptor. At block 610, a CREATE DESCRIPTOR command is sent by a second device such as a controller to a first device such as a target device. The CREATE DESCRIPTOR command includes a root list type (i.e., a root istjype) specified in the CREATE DESCRIPTOR command. At block 620, a response frame of the CREATE DESCRIPTOR command returns the list ID (i.e., list_ID) of the new root list from the target device to the controller. This makes it more convenient for the controller to directly access the root list after the command has been issued. At block 630, the controller may directly access the root list.
Figure 5 is a flow diagram of one embodiment for creating a child list. At block 710, a CREATE DESCRIPTOR command includes a child list type (e.g., child listj pe) specified in the CREATE DESCRIPTOR command. The target device creates the child list. The parent's entry is updated with the child list ID by having the new child list ID (i.e., child_list_ID) placed hierarchically below the parent entry. At block 720, the response frame of the CREATE DESCRIPTOR command returns the list ID (i.e., list_ID) of the new child list to the controller. At block 730, the second device such as the controller has access to the position of the child list.
In the preceding detailed description, the invention is described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.

Claims

CLAIMSWhat is claimed is:
1. A method comprising: creating a list descriptor having a first end and a second end; creating an entry descriptor at the second end of the list descriptor; and returning a response frame to a device.
2. The method of claim 1, further comprising: rejecting a first command in a response frame to a controller.
3. The method of claim 1, wherein the response frame includes a position of the list descriptor.
4. The method of claim 3, wherein the position is FF16.
5. The method of claim 3, further comprising: accessing the entry descriptor by the device.
6. The method of claim 3, wherein the response frame uses a descriptor_specifier 1016.
7. A method comprising: creating a descriptor; creating a root list in the descriptor; and returning a response frame having a list ID of the root list to a device.
8. The method of claim 7, wherein the list ID is returned using a descriptor_specifier 1016.
9. The method of claim 7, further comprising: accessing the list ID by a controller.
10. A method comprising: creating a descriptor; creating a child list in the descriptor; and returning a response frame having a list ID of the child list.
11. The method of claim 10, further comprising: accessing the list ID by a controller.
12. The method of claim 10, wherein the response frame returns a list ID descriptor to a controller.
13. A system comprising: a first device (420); a second device (410) coupled to the first device (420), said second device (410) to send a first command to the first device (420); and in response to the first command, said first device (420) creating an entry descriptor comprising at least one list descriptor having a first end and second end, an entry descriptor located at the second end, and sending a response including the entry descriptor to the second device (410).
14. The system as set forth in claim 13, further comprising a bus, the first and second devices (420, 410) coupled via the bus.
15. The system as set forth in claim 13, wherein the first command comprises a CREATE DESCRIPTOR command.
16. The system of claim 15, wherein the position is FF 16-
17. The system of claim 15, wherein the second device accesses the entry descriptor.
18. The system of claim 15, wherein the response frame uses a descriptor_specifier 1016.
19. A system comprising: a first device (420); a second device (410) coupled to the first device (420), said second device (410) to send a first command to the first device (420); and in response to the first command, said first device (420) creating a root descriptor comprising at least one root list and sending a response including the list ID to the second device (410).
20. The system as set forth in claim 19, further comprising a bus, the first and second devices (420, 410) coupled via the bus.
21. The system as set forth in claim 19, wherein the first command comprises a CREATE DESCRIPTOR command.
22. A system comprising: a first device (420); a second device (410) coupled to the first device (420), said second device (410) to send a first command to the first device (420); and in response to the first command, said first device (420) creating a child descriptor comprising at least one child list and sending a response including the list ID to the second device (410).
23. The system as set forth in claim 22, further comprising a bus, the first and second devices (420, 410) coupled via the bus.
24. The system as set forth in claim 22, wherein the first command comprises a CREATE DESCRIPTOR command.
25. A machine readable storage media containing executable program instructions which when executed cause a digital processing system to perform a method comprising: creating a list descriptor having a first end and a second end; creating an entry descriptor at the second end of the list descriptor; and returning a response frame to a device.
26. The machine readable media of claim 25, wherein the method further comprises: rejecting a first command in a response frame to a controller.
27. The machine readable media of claim 25, wherein the method further comprises: accessing the entry descriptor by the device.
28. A machine readable storage media containing executable program instructions which when executed cause a digital processing system to perform a method comprising: creating a descriptor; creating a root list in the descriptor; and returning a response frame having a list ID of the root list to a device.
29. The machine readable media of claim 25, wherein the method further comprises: accessing the list ID by a controller.
30. A machine readable storage media containing executable program instructions which when executed cause a digital processing system to perform a method comprising: creating a descriptor; creating a child list in the descriptor; and returning a response frame having a list ID of the child list.
31. The machine readable media of claim 25, wherein the method further comprises: accessing the list ID by a controller.
PCT/US2001/010792 2000-04-03 2001-04-02 A system and a method for creating and accessing data WO2001075611A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001249816A AU2001249816A1 (en) 2000-04-03 2001-04-02 A system and a method for creating and accessing data

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US19423800P 2000-04-03 2000-04-03
US60/194,238 2000-04-03
US69368800A 2000-10-20 2000-10-20
US09/693,688 2000-10-20

Publications (1)

Publication Number Publication Date
WO2001075611A1 true WO2001075611A1 (en) 2001-10-11

Family

ID=26889822

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/010792 WO2001075611A1 (en) 2000-04-03 2001-04-02 A system and a method for creating and accessing data

Country Status (2)

Country Link
AU (1) AU2001249816A1 (en)
WO (1) WO2001075611A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966127A (en) * 1997-05-15 1999-10-12 Yajima; Mantaro Graph processing method and apparatus
US6073129A (en) * 1997-12-29 2000-06-06 Bull Hn Information Systems Inc. Method and apparatus for improving the performance of a database management system through a central cache mechanism
US6131129A (en) * 1997-07-30 2000-10-10 Sony Corporation Of Japan Computer system within an AV/C based media changer subunit providing a standarized command set
US6163820A (en) * 1997-05-01 2000-12-19 International Business Machines Corporation Efficient data transfer mechanism for input/output devices
US6182166B1 (en) * 1997-08-25 2001-01-30 Emc Corporation Method/apparatus for interfacing two remotely disposed devices coupled via transmission medium with first and second commands transmitted without first checking receiving device for readiness

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6163820A (en) * 1997-05-01 2000-12-19 International Business Machines Corporation Efficient data transfer mechanism for input/output devices
US5966127A (en) * 1997-05-15 1999-10-12 Yajima; Mantaro Graph processing method and apparatus
US6131129A (en) * 1997-07-30 2000-10-10 Sony Corporation Of Japan Computer system within an AV/C based media changer subunit providing a standarized command set
US6182166B1 (en) * 1997-08-25 2001-01-30 Emc Corporation Method/apparatus for interfacing two remotely disposed devices coupled via transmission medium with first and second commands transmitted without first checking receiving device for readiness
US6073129A (en) * 1997-12-29 2000-06-06 Bull Hn Information Systems Inc. Method and apparatus for improving the performance of a database management system through a central cache mechanism

Also Published As

Publication number Publication date
AU2001249816A1 (en) 2001-10-15

Similar Documents

Publication Publication Date Title
US11138150B2 (en) Network repository for metadata
US6133938A (en) Descriptor mechanism for assuring indivisible execution of AV/C operations
CN100588236C (en) Data reproducing device and content management method
US6671768B1 (en) System and method for providing dynamic configuration ROM using double image buffers for use with serial bus devices
JP2002525732A (en) Communication method and communication system
US20230006909A1 (en) Cluster wide packet tracing
US7584169B2 (en) Method and apparatus for identifying programming object attributes
US20090043864A1 (en) Method and System for Generating Globally Unique Identifiers
JP2005346706A (en) Method and apparatus for moving media file and storage medium storing program for performing the method
WO2007011164A1 (en) Virtual storage system and method for managementing virtual storage based on ad-hoc network
US20060080402A1 (en) Apparatus and method for socket communication between applications in operating system that does not support a process
JP2005513661A (en) Method and system for recognizing device format selection for devices in an IHDN network
US7191266B1 (en) Method and apparatus for supporting and presenting multiple serial bus nodes using distinct configuration ROM images
WO2005006212A2 (en) Automating real-time data feed to a database
JP2004145520A5 (en)
WO2001075611A1 (en) A system and a method for creating and accessing data
JP2004129199A (en) Information material production system and method
JP2006221394A (en) Data access method
JP2005086556A (en) Controller connected to ieee 1394 serial bus
US20050114563A1 (en) System and method for navigating and deleting descriptors
JP2001086195A (en) Electronic equipment
JP2007183704A (en) Method and program for acquiring identification information on electronic device and connection device
JP4823961B2 (en) Content list management method for information appliances
JP2005167574A (en) Controller equipment connected to ieee 1394 serial bus
CN117687979A (en) File sharing method, device and equipment based on DLNA

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP