Disk drive having program to be executed by a second processor stored in a first processor's ROM in a compressed form
First Claim
1. A disk drive having at least first and second microprocessors comprising:
- a. a ROM readable by the first microprocessor containing a plurality of bits of previously stored information at least a portion of which is in a compressed form;
b. decompression means for selectively decompressing groups of bits stored in the ROM;
c. communication means between first and second microprocessors allowing information bits to be passed from the first to the second microprocessor;
d. download means for reading predetermined bits from the ROM, processing these bits through the decompression means, and passing the bits output by the decompression means from the first to the second microprocessor using the communication means; and
e. means for loading bits passed through the communication means into a RAM coupled to the second microprocessor and executing the bits in the RAM as a program for the second microprocessor.
6 Assignments
0 Petitions
Accused Products
Abstract
A disk drive or comparable device is described which has two microprocessors connected by a communication link. One of the microprocessor accesses nonvolatile storage means containing object code in a compressed format for the other microprocessor. When the device is reset the microprocessor having access to the ROM decompresses the object code and transmits it to the second microprocessor. The compression scheme stores indexes into a table for the N most frequent words in the object code and leaves any excess words uncompressed. The uncompressed words are distinguished from the indexes by a set of flags which may be stored in-line with the compressed code or stored separately to avoid having to perform bit shifting to restore elements to byte boundaries.
76 Citations
15 Claims
-
1. A disk drive having at least first and second microprocessors comprising:
-
a. a ROM readable by the first microprocessor containing a plurality of bits of previously stored information at least a portion of which is in a compressed form; b. decompression means for selectively decompressing groups of bits stored in the ROM; c. communication means between first and second microprocessors allowing information bits to be passed from the first to the second microprocessor; d. download means for reading predetermined bits from the ROM, processing these bits through the decompression means, and passing the bits output by the decompression means from the first to the second microprocessor using the communication means; and e. means for loading bits passed through the communication means into a RAM coupled to the second microprocessor and executing the bits in the RAM as a program for the second microprocessor. - View Dependent Claims (2, 3, 4)
-
-
5. A disk drive having at least first and second microprocessors comprising:
-
a ROM, readable by the first microprocessor, containing code usable by the second microprocessor, at least a portion of the code being in a compressed form; communication means between first and second microprocessors allowing code to be passed from the first to the second microprocessor; download means for reading the code from the ROM and passing the code from the first to the second microprocessor using the communication means; and means for decompressing the code received by the second microprocessor and executing the code as a program for the second microprocessor. - View Dependent Claims (6, 7)
-
-
8. A disk drive having at least first and second microprocessors comprising:
-
a. a ROM readable by the first microprocessor containing operating code for the second microprocessor, at least a portion of the operating code being in a compressed form and a table of N words which have been stored in the ROM in compressed form by storing an index into the table in place of the word; b. decompression means for converting the operating code into an uncompressed form by translating each index into the table into a word; c. communication means between first and second microprocessors for passing the uncompressed form to the second microprocessors; d. means for loading the uncompressed form passed through the communication means into a RAM coupled to the second microprocessor; and e. means for executing the uncompressed form as a program for the second microprocessor. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A method for operating a a disk drive having at least first and second microprocessors comprising:
-
reading a unit of data from a ROM; decompressing the unit by retrieving an uncompressed word stored in a table of words stored in the ROM using the unit as an index; transmitting the uncompressed word to the second microprocessor; storing the uncompressed word into a RAM coupled to the second microprocessor; and executing the uncompressed word as a program instruction on the second microprocessor. - View Dependent Claims (14, 15)
-
Specification