Automatic ID allocation for AV/C entities

Electrical computers and digital data processing systems: input/ – Input/output data processing – Peripheral configuration

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S062000

Reexamination Certificate

active

06631426

ABSTRACT:

The IEEE 1394 multimedia bus standard is to be the “convergence bus” bringing together the worlds of the PC and digital consumer electronics. It is readily becoming the digital interface of choice for consumer digital audio/video applications, providing a simple, low-cost and seamless plug-and-play interconnect for clusters of digital A/V devices, and it is being adopted for PCs and peripherals.
The original specification for 1394, called IEEE 1394-1995, supported data transmission speeds of 100 to 400 Mbits/second. Most consumer electronic devices available on the market have supported either 100 or 100/200 Mbits/second; meaning that plenty of headroom remains in the 1394 specification. However, as more devices are added to a system, and improvements in the quality of the A/V data (i.e., more pixels and more bits per pixel) emerge, a need for greater bandwidth and connectivity flexibility has been indicated.
The 1394a specification (pending approval) offers efficiency improvements, including support for very low power, arbitration acceleration, fast reset and suspend/resume features. However, current methods for allocating ID's to new devices are both manual and crude especially when considered in the context of ‘hot swappable” devices.
As indicated in the AV/C Digital Interface Command Set General Specification (hereinafter, the General Specification): an AV unit is the physical instantiation of a consumer electronic device, e.g., a camcorder or a VCR, within a Serial Bus node; an AV subunit is an instantiation of a virtual entity that can be identified uniquely within an AV unit and offers a set of coherent functions; an AV/C is an Audio/video control; and a plug is a physical or virtual end-point of connection implemented by an AV unit or subunit that may receive or transmit isochronous or other data—plugs may be Serial Bus plugs, accessible through the PCR's (PCR: is a Plug Control Register, as defined by IEC 61883, Digital Interface for Consumer Electronic Audio/Video Equipment; further, an iPCR: is an input plug PCR, as defined by IEC 61883 and an oPCR: is an output plug PCR, as defined by IEC 61883) they may be external, physical plugs on the AV unit; or they may be internal virtual plugs implemented by the AV subunits.
An AV/C target implementation is made up of multiple entities including AV/C subunits and plugs. Each separate entity has an associated ID number used to specify that entity when an AV/C controller sends a command acting upon that entity.
The implementation of the AV/C target device must ensure that the IDs used for the target entities are unique among all entities of the same type. In addition they must be between 0 and n−1 where n is the number of a particular type of entity. Thus an AV/C subunit and plug may both have an ID of 0, but two AV/C subunits may not both have an ID of 0.
The old methods for implementing AV/C target entities are to statically allocate the IDs for each entity. Thus, when implementing the software for the entities, the number of entities must be known in advance. Updating the implementation to support a new entity requires manual allocation of another ID. In addition, removal of an entity requires manual deallocation of its ID, and if its ID (m) is less than n−1 (e.g., 0<m<n−1), thus, residing somewhere in the middle of the identification listings, the IDs for the entities between m+1 and n−1 must be manually decremented.
Modularity of software components, and independence of implementation between software components, are elements of good software design. However, the manual allocation of IDs described above prevents total independence between the implementations of the AV/C entities. In addition, the manual allocation prevents an implementation of dynamic AV/C entities as would be needed when components are hot swapped into an AV/C device.
BRIEF DESCRIPTION OF THE INVENTION
This invention provides a means of automatically and dynamically allocating IDs for AV/C entities. The IDs do not need to be determined during the implementation of the entities. The IDs are determined at run time. This has the benefit of allowing an implementation of dynamic AV/C entities.
This invention provides an AV/C entity allocation service which maintains a list of the currently allocated IDs. This list is initially empty. When an AV/C entity is initialized, it calls the allocation service to allocate an ID which it then uses for the initialized entity. The allocation service allocates an ID by starting with an ID of 0. The service then searches its allocated ID list to see if the current ID has already been allocated. If it finds the ID in the list, it increments its current ID and searches the list again. If it does not find the ID, it adds the current ID to the allocated list and returns the ID to the entity.


REFERENCES:
patent: 4156798 (1979-05-01), Doelz
patent: 4194113 (1980-03-01), Fulks et al.
patent: 5014262 (1991-05-01), Harshavardhar
patent: 5253114 (1993-10-01), Lee et al.
patent: 5274631 (1993-12-01), Bhardwaj
patent: 5343461 (1994-08-01), Barton et al.
patent: 5394556 (1995-02-01), Oprescu
patent: 5452330 (1995-09-01), Goldstein
patent: 5490253 (1996-02-01), Laha et al.
patent: 5495481 (1996-02-01), Duckwall
patent: 5539390 (1996-07-01), Nagano et al.
patent: 5541670 (1996-07-01), Hanai
patent: 5568641 (1996-10-01), Nelson
patent: 5583922 (1996-12-01), Davis et al.
patent: 5621659 (1997-04-01), Matsumoto et al.
patent: 5630173 (1997-05-01), Oprescu
patent: 5640595 (1997-06-01), Baugher et al.
patent: 5684715 (1997-11-01), Palmer
patent: 5701476 (1997-12-01), Fenger
patent: 5701492 (1997-12-01), Wadsworth et al.
patent: 5712834 (1998-01-01), Nagano et al.
patent: 5719862 (1998-02-01), Lee et al.
patent: 5784648 (1998-07-01), Duckwall
patent: 5802048 (1998-09-01), Duckwall
patent: 5802057 (1998-09-01), Duckwall et al.
patent: 5805073 (1998-09-01), Nagano et al.
patent: 5809331 (1998-09-01), Staats et al.
patent: 5832298 (1998-11-01), Sanchez et al.
patent: 5835761 (1998-11-01), Ishii et al.
patent: 5867730 (1999-02-01), Leyda
patent: 5875301 (1999-02-01), Duckwall et al.
patent: 5938764 (1999-08-01), Klein
patent: 5968152 (1999-10-01), Staats
patent: 5970052 (1999-10-01), Lo et al.
patent: 5987605 (1999-11-01), Hill et al.
patent: 6032202 (2000-02-01), Lea et al.
patent: 6038625 (2000-03-01), Ogino et al.
patent: 6070187 (2000-05-01), Subramaniam et al.
patent: 6073206 (2000-06-01), Piwonka et al.
patent: 6122248 (2000-09-01), Murakoshi et al.
patent: 6131129 (2000-10-01), Ludtke
patent: 6133938 (2000-10-01), James
patent: 6138196 (2000-10-01), Takayama et al.
patent: 6141702 (2000-10-01), Ludtke et al.
patent: 6141767 (2000-10-01), Hu et al.
patent: 6157972 (2000-12-01), Newman et al.
patent: 6160769 (2000-12-01), Zou
patent: 6167532 (2000-12-01), Wiseccup
patent: 6173327 (2001-01-01), De Borst et al.
patent: 6192189 (2001-02-01), Fujinami et al.
patent: 6202210 (2001-03-01), Ludtke
patent: 6233615 (2001-05-01), Van Loo
patent: 6233624 (2001-05-01), Hyder et al.
patent: 6247083 (2001-06-01), Hake et al.
patent: 6253255 (2001-06-01), Hyder et al.
patent: 6260063 (2001-07-01), Ludtke et al.
patent: 6266334 (2001-07-01), Duckwall
patent: 6266701 (2001-07-01), Sridhar et al.
patent: 6282597 (2001-08-01), Kawamura
patent: 6295479 (2001-09-01), Shima et al.
patent: 6308222 (2001-10-01), Krueger et al.
patent: 6311228 (2001-10-01), Ray
patent: 6345315 (2002-02-01), Mishra
patent: 6353868 (2002-03-01), Takayama et al.
patent: 6385679 (2002-05-01), Duckwall et al.
“IEEE Standard for a High Performance Serial Bus”, IEEE Standard 1394-1995, Institute of Electrical and Electronics Engineers, Inc., Aug. 30, 1996.
“IEEE Standard for a High Performance Serial Bus-Amendment 1”, Institute of Electrical and Electronics Engineers, Inc., pp. 1-196, 2000 (no month).
“AV/C Digital Interface Command Set General Specification, Rev. 3.0”, 1394 Trade Association, pp. 4-5, 20-34, Apr. 15, 1998.
“Enhancements to the AV/C General Specification 3.0 Version 1.0FC1”, 1394 Trade Association, pp. 4, 6-17, Nov. 5, 1998.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Automatic ID allocation for AV/C entities does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Automatic ID allocation for AV/C entities, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Automatic ID allocation for AV/C entities will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3124737

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.