Method and apparatus for converting between a logical block...

Coded data generation or conversion – Digital code to digital code converters – Byte length changed

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C341S085000, C341S084000

Reexamination Certificate

active

06265995

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates to devices and methods for converting between a logical block address (LBA) expressed in hexadecimal (Hex) format and a minute second frame (MSF) location expressed in binary coded decimal (BCD) format on a data carrier, such as a compact disk read only memory (CD-ROM).
2. Description of the Related Art
When designing decoder circuits to decode information stored on data carriers such as CD-ROMs, it is often necessary to design or to use predefined logic to convert between a logical block address (LBA) expressed in hexadecimal (numbering system having a radix of 16, hereafter “Hex”) format and a minute second frame (MSF) location expressed in binary coded decimal (more specifically, the 8421 BCD code, hereafter “BCD”) format. Indeed, the location of information stored on CD-ROMs is expressed in MSF format, while the decoder and the host most often express addresses as LBA, which are expressed in Hex format. Such logic may be incorporated as a functional block in electronic design automation (EDA) software, which is a generic term for a class of software tools that help engineers develop integrated circuits (ICs). Such tools convert a high level descriptive language, such as VERILOG® or VHDL (IEEE 1076 standard) into a logical gate representation that may be implemented in silicon. To translate the high level descriptive language into a logical gate representation typically requires a compile operation. Providers of such EDA software, such as Synopsis, Inc. of Mountain View, Calif. sell licenses to companies wishing to use their software. The number of compile operations that may be carried out simultaneously is limited to the number of licenses that are purchased. If all of the licenses that have been purchased are currently in use, integrated circuit designers wishing to invoke the functional block that converts between LBA and MSF address locations are prevented from doing so, thereby decreasing their productivity. In turn, this may increase the time to market and/or cost of the resultant IC design.
It is, therefore, desirable to provide methods and devices to convert between LBA and MSF address formats of a data carrier such as a CD-ROM without invoking the functional block(s) of the EDA software predefined for that purpose. It is also desirable to provide methods and devices to quickly and efficiently convert between LBA and MSF address formats without resorting to the traditional methods carried out by such predefined functional block, which convert between codes by dividing and multiplying by 16. Such methods and devices, moreover, should yield a lower resultant gate count than the aforementioned predefined functional blocks, at least for 8 bit applications.
SUMMARY OF THE INVENTION
The present invention, therefore, provides methods and devices to convert between LBA and MSF address formats of a data carrier such as a CD-ROM without invoking the functional block(s) of the EDA software predefined for that purpose. The present invention also provides methods and devices to quickly and efficiently convert between LBA and MSF address formats without resorting to the traditional methods carried out by such predefined functional block, which convert between codes by dividing and multiplying by 16.
In accordance with the principles of the invention above and those that will be mentioned and will become apparent below, a binary coded decimal (BCD)/hexadecimal (HEX) converter, according to the present invention, comprises a decade selector, the decade selector receiving a first input and generating a decade selector output corresponding to a decade of the first input; an operand selector, the operand selector receiving decade selector output and outputting an operand corresponding to the decade selector output; an adder, the adder outputting a sum of the first input and the operand, the sum being a BCD value corresponding to the first input when the first input is a Hex value, and a subtractor, the subtractor outputting a difference of the first input and the operand, the difference being a Hex value corresponding to the first input when the first input is a BCD value.
According to further embodiments, the decade selector may be configured to receive n numbered second inputs, each of the n second inputs being tied to a respective different multiple of 10, the decade selector matching the decade of the first input to one of the multiples of 10, the decade selector output being equal to the number of the second input tied to the matching multiple of 10. The operand selector may be configured to receive p numbered third inputs, the number p being equal to n, each of the p third inputs being tied to a respective different multiple of 6, the operand outputted being equal to that multiple of 6 tied to the numbered third input that matches the decade selector output. One or more of the decade selector, the operand selector, the adder and the subtractor may be implemented in firmware. Alternatively, one or more of the decade selector, the operand selector, the adder and the subtractor may be implemented in software. Alternatively still, one or more of the decade selector, the operand selector, the adder and the subtractor may be implemented in hardware.
The present invention may also be viewed as a method of converting between a logical block address (LBA) and a minute second frame (MSF) location on a data carrier, comprising the steps of receiving a first input; determining a decade of the received first input; selecting an operand corresponding to the determined decade; adding the first input and the selected operand to generate a first output, the first output being an MSF location when the received first input is an LBA address, and subtracting the selected operand from the first input to generate a second output, the second output being an LBA address when the received first input is an MSF location.
The determining step may comprise the step of ascertaining a number of decade boundaries crossed by the first input. The determining step may comprise the steps of receiving n numbered second inputs, each of the n second inputs being tied to a respective different multiple of 10 and matching the decade of the first input to one of the multiples of 10, the determined decade being equal to the number of the second input tied to the matching multiple of 10. The selecting step may comprise the step of receiving p numbered third inputs, p being equal to n, each of the p third inputs being tied to a respective different multiple of 6, the operand outputted being equal to that multiple of 6 tied the numbered third input that matches the determined decade. The data carrier may be, for example, a CD-ROM.
According to another aspect thereof, the present invention may be viewed as a method of performing a seek operation on a data carrier that stores information at a location specified in a minute second frame (MSF) format, based upon a logical block address (LBA), comprising the steps of determining a number of decade boundaries crossed by the LBA of information to be accessed on the data carrier; performing an addition operation to add an operand to the LBA, the operand being equal to 6 multiplied by the number of decade boundaries crossed by the LBA, a result of the addition operation corresponding to a MSF location of the information to be accessed; issuing a seek command specifying the MSF location; receiving an MSF position signal from a read-write head over the data carrier; performing a subtraction operation to subtract an operand from the MSF position signal, the operand being equal to 6 multiplied by the number of decade boundaries crossed by the MSF position signal, a result of the subtraction operation corresponding to an LBA representation of the MSF position signal, and comparing the LBA representation of the MSF position signal with the LBA of the information to be accessed on the data carrier to determine whether the LBA of the information to be accessed has been reached.


REFERENCES:
patent: 4266281 (198

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

Method and apparatus for converting between a logical block... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for converting between a logical block..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for converting between a logical block... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2550052

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