Programmable microcontroller architecture for disk drive system
First Claim
1. A programmable microcontroller in a disk drive system for controlling an initiation of a plurality of processes during each sector period where said disk drive system performs a plurality of processes for controlling an operation of said disk drive system and includes rotational media with a rotational speed upon which is recorded a plurality of data tracks, where each data track is divided into sectors and each sector contains a recorded sector mark and a transducer for recovering data from said data tracks including sector marks, where the time between an occurrence of two adjacent sector marks is defined as a sector period, said programmable microcontroller comprising:
- first means for detecting the occurrence of each said sector mark from the data read by said transducer;
second means connected to said first means for determining and storing from last two sector marks detected by said first means the sector period for a previous sector to a present sector for use as a predicted length for the present sector; and
third means, in response to said sector mark detected by said first means for said present sector and said sector period for said previous sector determined and stored by said second means, for scheduling an initiation of each of said plurality of processes so as to maintain said initiation of each of said processes in a constant spatial relationship to said predict present sector period thereby minimizing an effect of variations in the rotational speed of said rotating media and synchronizing the initiation of said processes to said sector mark for the present sector, wherein said third means comprises;
a microprocessor for generating an initiation value for the initiation of each said processes during said present sector period as a function of said stored sector period for said previous sector; and
a plurality of initiation means, each said initiation means associated with one of said processes for receiving said initiation value for said one of said processes from said microprocessor and for generating an initiation signal for said process after the occurrence of said sector mark as a function of a received initiation value.
9 Assignments
0 Petitions
Accused Products
Abstract
The software system architecture supports a rotating media in the storage and retrieval of data, where the rotating media stores in data tracks of multiple sectors, through the use of a microcontroller for the execution of a control program that schedules plural control tasks temporally distributed for respective execution during the rotational period of a predetermined track and sector. The scheduling of the plural control tasks is synchronized with respect to data retrieved from the predetermined sector. The plural control tasks include a rotational control task for determining an adjustment to the spin speed of the rotating media, a track following task for determining an adjustment to the alignment of the read/write head with respect to the predetermined track and a sector timing task for determining the position of the read/write head with respect to the predetermined track. The sector timing task also provides for scheduling the rotation control and track following task for execution during discrete intervals during the rotational period of the predetermined sector as well as scheduling the re-execution of the sector timing task with respect to the rotational period of another predetermined sector.
-
Citations
8 Claims
-
1. A programmable microcontroller in a disk drive system for controlling an initiation of a plurality of processes during each sector period where said disk drive system performs a plurality of processes for controlling an operation of said disk drive system and includes rotational media with a rotational speed upon which is recorded a plurality of data tracks, where each data track is divided into sectors and each sector contains a recorded sector mark and a transducer for recovering data from said data tracks including sector marks, where the time between an occurrence of two adjacent sector marks is defined as a sector period, said programmable microcontroller comprising:
-
first means for detecting the occurrence of each said sector mark from the data read by said transducer;
second means connected to said first means for determining and storing from last two sector marks detected by said first means the sector period for a previous sector to a present sector for use as a predicted length for the present sector; and
third means, in response to said sector mark detected by said first means for said present sector and said sector period for said previous sector determined and stored by said second means, for scheduling an initiation of each of said plurality of processes so as to maintain said initiation of each of said processes in a constant spatial relationship to said predict present sector period thereby minimizing an effect of variations in the rotational speed of said rotating media and synchronizing the initiation of said processes to said sector mark for the present sector, wherein said third means comprises; a microprocessor for generating an initiation value for the initiation of each said processes during said present sector period as a function of said stored sector period for said previous sector; and
a plurality of initiation means, each said initiation means associated with one of said processes for receiving said initiation value for said one of said processes from said microprocessor and for generating an initiation signal for said process after the occurrence of said sector mark as a function of a received initiation value. - View Dependent Claims (2, 3, 4, 5)
said processes defining tasks to be performed by said microprocessor, said tasks including a sector timing task and a rotational control task; and
said plurality of initiation means associated with each of said tasks for generating and sending an interrupt signal for each of said associated tasks to said microprocessor to initiate processing of said associated task by said microprocessor.
-
-
3. The programmable microcontroller of claim 2 wherein;
said microprocessor processes said sector timing task to generate initiation values for all said processes including an initiation value for initiating a sector timing task for a next sector period where said initiation value will cause said associated initiation means to generate said sector timing task interrupt signal prior to the occurrence of said sector mark for said next sector.
-
4. The programmable microcontroller of claim 3 wherein:
-
said microprocessor processes said rotational control task to generate and store a spin commutation period value for correcting variations in the rotational speed of said DC spindle motor; and
said sector timing task prior to the occurrence of the sector mark for said present sector applying said spin commutation period value generated and stored by said rotational control task last processed by said microprocessor for controlling the rotational speed of the rotational media and said spindle motor, for generating a sector period value for said previous sector upon the detection of said sector mark for said present sector and for determining and storing from said generated sector period said initiation values for said processes for said present sector.
-
-
5. The programmable microcontroller of claim 4 wherein said initiation means are programmable counters for storing said initiation values generated by said microprocessor.
-
6. A method for scheduling an initiation of a plurality of processes in a disk drive system, where said disk drive system processes a plurality of processes for controlling an operation of said disk drive system and disk drive system includes rotating media with a rotational speed upon which is recorded a plurality of data tracks, where each data track is divided into sectors and each sector contains a recorded sector mark and where the time between adjacent sector marks is defined as a sector period, a transducer for recovering data from said data tracks including sector marks and a programmable microcontroller for controlling the initiation of a plurality of processes during each sector period where said processes includes tasks to be processed by said microprocessor, said tasks including a sector timing task and a rotational control task, said method comprising the steps of:
-
a) sensing an occurrence of a sector mark by said transducer of a present sector;
b) determining the sector period for a previous sector to said present sector for used as a predicted present sector period for said present sector; and
c) scheduling, during said present sector, in response to said sensed sector mark for said present sector and said predicted present sector period, an initiation of each of said plurality of processes so as to maintain the initiation of each of said processes in a constant spatial relationship to said predicted present sector period thereby minimizing an effect of variations in the rotational speed of said rotating media and synchronizing the initiation of said processes during said present sector period to said sector mark for said present sector;
wherein step c further comprises the steps of; d) generating an initiation value for the initiation of each said processes as a function of said predicted present sector period; and
e) generating an initiation signal from said initiation value for each said processes to initiate said processes after an occurrence of said sector mark in said present sector period; and
wherein said step e further includes the steps of; f) generating for each of said tasks to be scheduled during said present sector an interrupt signal from said initiation value for each of said tasks; and
g) sending said interrupt signals to said microprocessor to initiate processing of said tasks by said microprocessor. - View Dependent Claims (7, 8)
h) processing said sector timing task for generating said initiation value for all said processes including an initiation value for initiating a sector timing task for a next sector period where said initiation value will cause the generation of said sector timing task interrupt signal to occur prior to the occurrence of said sector mark for a next sector.
-
-
8. The scheduling method of claim 7 wherein said disk drive system further includes a DC spindle motor for rotating said discs, said spindle motor speed being a function of a spin commutation period during which power is applied to said spindle motor, said scheduling method further comprises the steps of:
-
i) processing a rotational control task for generating and storing said spin commutation period value for correcting variations in the rotational speed of said spindle motor and said rotation media; and
j) processing a sector timing task prior to the occurrence of said sector mark associated with said sector timing task being processed by said microprocessor for applying said spin commutation period value generated and stored by the rotational control task last processed by said microprocessor to control said rotational speed of said spindle motor.
-
Specification