Главная страница  |  Описание сайта  |  Контакты
СИСТЕМА И СПОСОБ КОДИРОВАНИЯ СЕРВОАДРЕСА
СИСТЕМА И СПОСОБ КОДИРОВАНИЯ СЕРВОАДРЕСА

СИСТЕМА И СПОСОБ КОДИРОВАНИЯ СЕРВОАДРЕСА

Патент Российской Федерации
Суть изобретения: Способ определения положения на поверхности диска включает считывание кодированного сервоадреса. Сервоадрес кодируется для уменьшения его размера. Упомянутое кодирование вносит неоднозначность в отношении абсолютного положения на поверхности диска. Производится разрешение упомянутой неоднозначности кодированного сервоадреса. Дисковое запоминающее устройство содержит диск, установленный с возможностью вращения. Поверхность, предназначенная для запоминания данных, разделена на множество местоположений для запоминания данных, каждое из которых имеет кодированный сервоадрес. Сервоадрес кодируется для уменьшения его размера. Кодирование вносит неоднозначность в отношении абсолютного местоположения. Имеются преобразующая головка, расположенная рядом с упомянутой поверхностью диска и предназначенная для считывания упомянутого кодированного сервоадреса, исполнительный механизм. Технический результат -уменьшение области дисковой памяти, необходимой для хранения сервоадреса. 6 с. и 14 з.п. ф-лы, 6 ил., 2 табл.
Поиск по сайту

1. С помощью поисковых систем

   С помощью Google:    

2. Экспресс-поиск по номеру патента


введите номер патента (7 цифр)

3. По номеру патента и году публикации

2000000 ... 2099999   (1994-1997 гг.)

2100000 ... 2199999   (1997-2003 гг.)
Номер патента: 2139577
Класс(ы) патента: G11B7/007
Номер заявки: 96119948/28
Дата подачи заявки: 06.12.1995
Дата публикации: 10.10.1999
Заявитель(и): Интернэшнл Бизнес Машинз Корпорейшн (US)
Автор(ы): Ричард Гриберг (US); Джон К.Пуркетт (US)
Патентообладатель(и): Интернэшнл Бизнес Машинз Корпорейшн (US)
Описание изобретения: Настоящее изобретение относится к области дисковых устройств или запоминающих устройств с прямым доступом. В частности, настоящее изобретение относится к кодированию сервоадреса, обеспечивающему содержание большего количества информации в меньшем количестве двоичных разрядов.
Уровень техники
Запоминающее устройство с прямым доступом (ЗУПД) запоминает информацию для последующего поиска на магнитном или электрооптическом носителе, обычно называемом диском. ЗУПД может содержать в себе один диск или более, одна или обе поверхности которых использованы для хранения информации. Информацию или данные записывают на диски на концентрических дорожках. Данные считываются с дорожек или записываются на них посредством головок считывания-записи. Некоторые головки считывания-записи имеют отдельные элементы считывания и отдельные элементы записи. В других используется один и тот же элемент для выполнения обеих операций.
Чтобы осуществлять точную выборку данных, на диски записывают сервоинформацию, для обеспечения информации позиционирования для головок считывания-записи. Обычно сервоинформацию записывают на дорожки вместе с данными. В условиях многодисковой системе хранения информации для сервоинформации может быть выделена одна полная поверхность диска запоминающего устройства. Эта одна поверхность называется сервоповерхностью. Одна головка считывания-записи, известная под названием сервоголовка, осуществляет доступ к сервоповерхности для считывания записанной на ней информации позиционирования. Поскольку сервоголовка находится в фиксированной связи относительно других головок считывания-записи, положение сервоголовки можно использовать для индикации положения головок считывания-записи.
Альтернативой выделенной поверхности для сервоинформации является "секторная" сервоструктура. В этой схеме галетообразные секторы сервоинформации перемешаны между участками данных. Сервоинформацию вводят в отдельные дорожки данных на поверхностях данных накопителя на дисках посредством деления дорожек данных на множество более мелких зон или секторов. Из-за того, что во многих применениях, таких как персональные вычислительные машины, диски используют в качестве запоминающего устройства с произвольной выборкой, соответствующую информацию не всегда можно записывать в последовательных секторах на отдельных дорожках. Кроме того, когда старые данные удаляют и дополнительно записывают новые данные, не всегда имеется возможность записать новые данные в соседних секторах или даже на соседних дорожках. Поскольку связанная информация может быть разбросана в нескольких различных секторах на диске, важно, чтобы дисковод имел возможность быстро и точно осуществлять доступ к отдельным дорожкам или к отдельным секторам каждой дорожки.
В одном способе обеспечения позиционирования секторов используется счетчик, который непрерывно контролирует положение сектора после первоначального установления положения. В этой схеме счетчик возвращается в исходное состояние один раз за оборот по заранее определенной указательной метке на каждой серводорожке. Показание счетчика делает приращение, когда секторные метки, показывающие начало отдельных секторов данных, проходят под сервоголовкой. Независимо от счетчика секторов, используют другой счетчик для непрерывного контроля положения дорожки. Этот счетчик дорожек имеет два направления счета. Он устанавливается в исходное положение в заранее определенном положении нулевой дорожки сервоголовки, и осуществляют положительное или отрицательное приращение, когда головка пересекает отдельные серводорожки.
Счетчик секторов вместе со счетчиком дорожек обеспечивает способ точной идентификации местоположений на сервоповерхности. Однако, если из-за шумов в системе или других возмущений отсчет секторов или отсчет дорожек искажается, то последующие местоположения будут определяться неверно, пока не будет осуществлена повторная синхронизация диска. Поэтому этот способ, известный как способ определения относительного положения, является ненадежным, если совместно с ним не используется независимый способ проверки положения.
Один из способов независимой проверки положения состоит в том, чтобы перед каждым сектором данных на каждой дорожке данных предусматривать поле идентификации сектора, которое содержит информацию идентификатора, уникальную для этого сектора по всему накопителю. Типичный идентификатор включает в себя поля для номера дорожки, номера сектора, а в случае ЗУПД с большим количеством головок - номера головки. Идентификатор сектора может также содержать другую информацию, связанную с дефектами носителя и информацию избыточности для обнаружения ошибок. Во время операций считывания или записи данных дисковый контроллер считывает идентификатор каждого сектора данных при его обнаружении и использует различные проверки содержащейся в ней информации, включая сравнение считанного идентификатора с ожидаемым идентификатором. Если эти проверки успешно пройдены и считанный идентификатор соответствует ожидаемому идентификатору, то дисковый контроллер осуществляет считывание последующей части данных сектора или запись. Вследствие однозначной и независимой идентификации каждого сектора данных, неправильная идентификация любого сектора данных не оказывает влияния на правильную идентификацию любого последующего сектора данных. Этот способ проверки местоположения является достаточно надежным.
Другой способ независимой проверки местоположения сектора состоит в помещении конкретного идентификатора из идентификации сектора в область сервоинформации. Этот способ используют в таких системах, как формат сектора No-IDTM фирмы IBM. В такой системе идентификатор сектора, предшествующий сектору данных, исключается с диска. Вместо этого части идентификатора сектора запоминают в твердотельном запоминающем устройстве или других полях в секторе. Чтобы сервоконтроллер правильно определял расположение секторов, часть идентификатора размещают в поле сервоадреса области сервоинформации, которая раньше содержала только дорожку, или цилиндр, номер, запоминаемый в виде кода Грея.
Проблема, связанная с обеими этими схемами, состоит в том, что идентификатор, называемый также сервоадресом, занимает область памяти, которая в противном случае была бы пригодной для записи данных. Это особенно неудобно при увеличении плотностей дорожек, и уменьшении размеров дисков. При увеличении плотностей дорожек, для однозначной идентификации каждой дорожки требуется большее количество дорожек, которые требуют большей ширины поля на диске.
В связи с вышеуказанным, существует потребность в способе проверки местоположения, который обеспечивает уменьшение области дисковой памяти, необходимой для хранения сервоадреса.
Сущность изобретения
Настоящее изобретение относится к системе и способу, предназначенным для кодирования информации, идентифицирующей каждый сектор на диске, с получением кодированного сервоадреса, требующего меньше двоичных разрядов в пространстве памяти на дисках. Закодированный сервоадрес определяется номером сектора, номером дорожки и номером головки. Закодированный сервоадрес обеспечивает возможность осуществлять независимую проверку расположения головки относительно поверхности диска.
Особенностью настоящего изобретения является то, что кодированный сервоадрес запоминается с использованием меньшего количества двоичных разрядов, чем обычные сервоадреса. Обычные сервоадреса включают в себя номер дорожки, запомненный в коде Грея, и отдельное поле идентификации сектора. Благодаря такому кодированию сервоадреса, на поверхности диска обеспечивается большее пространство для запоминания данных. Кодирование обеспечивает получение этого пространства за счет неоднозначности в абсолютном расположении диска. Эта неоднозначность разрешается за счет контроля расположения головки относительно диска.
Другая особенность настоящего изобретения состоит в том, что его можно использовать для замены указательной метки, идентифицирующей первый сектор внутри дорожки. Это выполняется посредством обнаружения нерегулярного перехода в кодированном сервоадресе от сектора к сектору в пределах данной дорожки. Например, кодированный сервоадрес может увеличиваться на одинаковую величину от одного сектора к следующему в пределах данной дорожки. Однако, сервоадрес получает приращение другой величины между последним сектором и первым сектором на дорожке. Этот нерегулярный переход легко обнаруживается и может использоваться для индикации первого сектора на дорожке, заменяя указательную метку, используемую в предыдущих системах.
Вышеописанные и другие цели, особенности и преимущества изобретения станут очевидными из последующего описания предпочтительных вариантов осуществления изобретения, иллюстрируемых на прилагаемых чертежах.
Краткое описание чертежей
На чертежах одинаковыми ссылочными позициями показаны идентичные или функционально аналогичные элементы. При этом крайняя левая цифра ссылочной позиции показывает чертеж, на котором впервые появилась данная позиция.
Фиг. 1 представляет блок-схему одного из вариантов осуществления дискового устройства, выполненного согласно настоящему изобретению.
Фиг. 2 иллюстрирует возможный вариант общей организации содержащейся на диске информации.
Фиг. 3 иллюстрирует организацию содержащейся на диске информации для варианта дискового запоминающего устройства, реализующего секторный формат, имеющий поле идентификации сектора данных.
Фиг. 4 иллюстрирует организацию содержащейся на диске информации для варианта дискового запоминающего устройства, реализующего секторный формат "No-ID".
Фиг. 5 представляет сравнение обычного сервоадреca и соответствующего настоящему изобретению кодированного сервоадреса.
Фиг. 6 иллюстрирует последовательность операций кодирования, выполняемого в соответствии с настоящим изобретением.
Подробное описание предпочтительного варианта осуществления изобретения
Ниже приведено подробное описание предпочтительного варианта осуществления изобретения. Хотя описаны конкретные компоненты и конфигурации, следует иметь в виду, что это сделано только для иллюстративных целей. Специалистам в данной области техники должно быть ясно, что можно использовать другие компоненты и конфигурации, не выходя при этом за рамки сущности и объема изобретения.
Общая характеристика системы
Настоящее изобретение представляет собой систему и способ кодирования номера головки, номера дорожки и номера сектора, которые однозначно идентифицируют сектор в системе накопителя на дисках, с получением одного кодированного сервоадреса, требующего меньше пространства на диске, чем в случае запоминания каждого номера отдельно. Для целей иллюстрации изобретение описывается на основе системы накопителя на магнитных дисках. Это делается только для целей иллюстрации. Специалистам в данной области техники должно быть ясно, что изобретение можно использовать в других применениях, например, в запоминающих устройствах на оптических дисках.
На фиг. 1 представлена блок-схема, иллюстрирующая систему 100 дискового запоминающего устройства, предназначенную для запоминания данных. Система дискового запоминающего устройства 100 состоит из одного или более дисков 102, установленных с возможностью вращения на шпинделе 104. Привод шпинделя (не показан) вращает все диски 102 одновременно посредством шпинделя 104.
Каждую поверхность диска 102 можно использовать для запоминания информации. С каждой поверхностью запоминания информации диска 102 связана головка считывания-записи 106, смонтированная на рычаге 108. Головка считывания-записи 106 может иметь один преобразователь, который может записывать и считывать информацию. Как вариант, головка считывания-записи 106 может иметь отдельные преобразователи для каждой из этих операций. Каждый рычаг 108 прикреплен к приводу 100 звуковой катушки. На привод 110 звуковой катушки поступают сигналы через носитель сигналов возбуждения 124 с возбудителя 122 привода звуковой катушки. Привод 110 звуковой катушки реагирует на сигналы посредством вращения, вызывающего изменение положения рычагов 108, которое, в свою очередь, позволяет головке считывания-записи 106 считывать с требуемых местоположений на дисках 102 или записывать на них.
Каждая головка считывания-записи 106 используется для считывания с диска 102 и записи на него. Каждая головка считывания-записи 106 удерживается в непосредственной близости к соответствующей поверхности диска 102 посредством соответствующего рычага 108. Каждая головка считывания-записи 106 посылает через носитель 112 сигнала головки сигналы, основанные на данных, запомненных на поверхности диска 102, на электронный блок 114 рычага. Электронный блок 114 рычага принимает сигналы с головки считывания-записи 106, усиливает и фильтрует сигналы и посылает их на формирователь ошибки позиционирования 116.
Формирователь сигнала ошибки позиционирования 116 принимает отфильтрованный и усиленный сигнал с электронного блока 114 рычага и вырабатывает сигнал позиционирования, считанный с диска 102. С выхода формирователя ошибки позиционирования 116 этот сигнал ошибки поступает на блок управления 118 поиском и позиционированием исполнительного механизма.
Блок управления 118 поиском и позиционированием исполнительного механизма представляет собой многофункциональный микропроцессор, который в предпочтительном варианте осуществления изобретения, дополнительно к другой обработке, связанной с управлением дисковым запоминающим устройством 100, рассчитывает скорости.
Блок управления 118 поиском и позиционированием 118 принимает сигнал ошибки позиционирования с формирователя сигнала ошибки позиционирования 116 и сравнивает его с требуемым положением. На основании сравнения блок управления 118 выдает сигнал на блок удержания нулевого порядка (ZOH) 120, чтобы в следующий момент выборки считываемое головками считывания-записи 106 положение наиболее точно соответствовало требуемому положению или скорости.
Блок удержания нулевого порядка (ZOH) 120 принимает входной сигнал с блока управления 118 и выдает сигнал на возбудитель 122 привода звуковой катушки. Выходной сигнал схемы ZOH 120 поддерживается на определенном уровне до поступления следующего входного сигнала, как это имеет место в цифроаналоговом преобразователе с возможностью удержания. Затем под действием выходного сигнала схемы ZOH 120 с выхода возбудителя 122 привода звуковой катушки ток поступает на привод 110 звуковой катушки. Как упоминалось выше, это обеспечивает позиционирование головке считывания-записи 106 в радиальном распределении в требуемом положении на поверхности диска 102.
В предпочтительном варианте осуществления изобретения, в корпусе 126, как показано на фиг. 1, содержатся диски 102 и компоненты, связанные с головками считывания-записи 106, включая рычаги 108 и привод 110 звуковой катушки. В других вариантах в корпусе 126 могут содержаться также дополнительные компоненты системы дискового запоминающего устройства 100.
На фиг. 2 показана структура информации, записываемой на поверхности диска 102. Диск 102 разделен на множество концентрических дорожек 202. В зависимости от размера диска, плотности дорожек, чувствительности головки и точности позиционирования головки, диск может содержать от сотен до тысяч дорожек 202. Дорожку 202 иногда называют цилиндром, потому, что в системе дискового запоминающего устройства 100, имеющего несколько дисков 102, "дорожка" на поверхности одного диска 102 образует "цилиндр", если смотреть относительно каждого диска 102 на шпинделе 104. Таким образом, термин "дорожка" используется в отношении дорожки на одном диске 102, а термин "цилиндр" используется в отношении дорожки на множестве дисков 102 на шпинделе. Оба термина относятся к концентрической структуре, предназначенной для запоминания данных, располагаемых по радиусу на поверхности диска 102. Однако, в технике весьма свободно используют термины "дорожка" и "цилиндр". В последующем описании для четкости описания этой структуры будет использован термин "дорожка", независимо от того, идет ли речь об одном или нескольких дисках 102.
На фиг. 2 представлено изображение в развернутом виде 206 участка нескольких дорожек 202, расположенных на поверхности диска 102. Изображение в развернутом виде 206 иллюстрирует участки дорожек 202 в виде прямых участков для простоты представления. На самом деле дорожки 202 искривлены. Изображение в развернутом виде 206 включает в себя три дорожки, далее называемые дорожкойn-1, дорожкойn и дорожкойn+1, соответственно. На этой иллюстрации дорожкаn-1, дорожкаn и дорожкаn+1 дополнительно разделены на М+1 сектора 204, далее называемых сектором0, сектором1, сектором2, ..., секторомM-1 и секторомM (на чертеже показаны только секторM-1, секторM, сектор0 и сектор1).
Каждый сектор разбит также на поля, отличающиеся запомненной в них информацией. Например, на дорожкеn-1 сектораM имеются три поля: поле зазора 208, поле сервоинформации 210 и поле данных 212.
Поле зазора 208, в технике известное также как поле восстановления записи, представляет собой область на диске, позволяющую обеспечить возможность считывания головкой считывания-записи 106 следующего поля сервоинформации 210 после операции записи. Например, если операция записи выполнена в сектореM-1 на дорожкеn-1, то головка считывания-записи 106 (показанная на фиг. 1) должна осуществить переход на интервале зазора 208 для считывания поля сервоинформации 210 в сектореM на дорожкеn-1.
На фиг. 3 показан в общем обычный вариант форматирования сектора. Как показано на чертеже, поле сервоинформации 210 по существу содержит два типа информации: поле сервоадреса 302 и сервопакет 304. Поле сервоадреса 302 содержит информацию грубого позиционирования головки, предназначенную для нахождения дорожки 202 на диске 102. Обычно поле сервоадреса 302 представляет собой номер дорожки 312, связанный с дорожкой 202. Например, диск 102, использующий этот способ форматирования сектора, имеет значение n-1 в каждом поле сервоадреса 302 каждого из секторов от сектора0 до сектораM на дорожкеn-1. Точно также, значение n будет в каждом поле сервоадреса 302 каждого из секторов от сектора0 до сектораM на дорожкеn. Другими словами, поле сервоадреса 302 имеет одно и то же значение для всех секторов 204 на данной дорожке 202. Поле сервоадреса 302 обычно содержит также индексную метку 310, которая представляет собой дополнительный двоичный разряд для идентификации сектора0. Например, индексную метку 310 устанавливают на 1 для сектора0 и устанавливают на 0 для всех других секторов 204 на дорожке 202. Индексная метка 310 обеспечивает в системе дискового запоминающего устройства 100 отсчет секторов 204 на дорожке 202 во время вращения диска 102.
Сервопакет 304 содержит информацию точного позиционирования головки, предназначенную для обнаружения дорожек 202 на диске 102. В технике известны несколько способов выполнения точного позиционирования, включающих, в зависимости от системы демодуляции, амплитудные сервопакеты или сервопакеты с фазовым кодированием. Как поле сервоадреса 302, так и сервопакет 304 дают возможность головке считывания-записи 106 сохранять правильное положение на определенной дорожке 202 для точного считывания с диска 102 или записи на него.
За полем сервоинформации 210 следует поле данных 212. Поле данных 212 содержит два типа информации: идентификацию (ID) сектора 306 и данные 308. ID сектора 306 содержит номер дорожки 312, номер сектора 314, номер головки 316 и еще одно поле 318. Номер дорожки 312, номер сектора 314 и номер головки 316 однозначно идентифицируют сектор 204 на диске 102 для проверки, что последующие данные 308 действительно представляют собой место назначения для операции считывания или записи. Другое поле 318 содержит признаки для логических секторов и кодов исправления ошибок, которые хорошо известны в технике и не являются предметом настоящего изобретения. Из-за включения всей информации в идентификацию сектора 306, требуемая область на диске может быть весьма обширной. Фактически во многих популярных дисковых запоминающих устройств ID сектора 306 может занимать до десяти процентов всей полезной области дисковой памяти. Отметим, что номер дорожки 312 появляется и в ID сектора 306, и в поле сервоадреса, и поэтому является избыточным.
На фиг. 4 показан другой вариант форматирования сектора, в котором с диска 102 исключено большое количество информации, содержащейся в идентификации сектора 306, и вместо этого эта информация запомнена в твердотельном запоминающем устройстве. Этот тип форматирования сектора известен под названием "No-ID". В этом формате сектор 204 включает в себя зазор 208, поле сервоинформации 210 и поле данных 212, как в вышеописанной схеме форматирования. Поле сервоинформации 210 включает в себя поле сервоадреса 402, отличающееся от поля сервоадреса 302, а также сервопакет 304. Поле сервоадреса 402 включает в себя индексную метку 310, номер дорожки 312, номер сектора 314 и номер головки 316. За полем сервоинформации 210 следует сервопакет 304, как описано выше. За полем сервоинформации 210 следует поле данных 212. Поле данных 212 в формате No-ID не содержит ID сектора 306. Вместо этого поле данных 212 состоит из данных 308.
В двух вышеупомянутых способах форматирования сектора, номер дорожки 312, номер сектора 314 и номер головки 316 запоминают в виде независимых значений либо в ID сектора 306, либо в поле сервоадреса 402. Как описано выше, большое количество этой информации является избыточной либо из-за того, что информация содержится в другом месте на диске 102, как в случае запоминания номера дорожки 312 в поле сервоадреса 302 и в ID сектора 306, как в случае номера головки 316, неоднократно запоминаемого в каждом секторе 204 на диске 102, и номера дорожки 312, неоднократно запоминаемого в каждом секторе 204 на одной и той же дорожке 202.
Настоящее изобретение устраняет избыточную информацию посредством кодирования номера дорожки 312, номера сектора 314 и номера головки 316 в закодированный сервоадрес 504, как показано на фиг. 5. Для легкости объяснения, номер дорожки 312, номер сектора 314 и номер головки 316 будут совместно называться "сервоадресом", независимо от того, запомнены ли они в ID сектора 306, или в поле сервоадреса 402. В предпочтительном варианте осуществления настоящего изобретения, кодированный сервоадрес рассчитывается из сервоадреса, используя следующее уравнение кодирования:
Кодированный сервоадрес = номер дорожки + /(номер головки + 1)·(номер сектора + 1)/
В вышеприведенном уравнении кодирования и к номеру головки и номеру сектора прибавляют единицу по двум причинам. Во-первых, некоторое целое число необходимо добавить к обоим этим номерам, чтобы гарантировать ненулевой результат после умножения. В противном случае, для головки0 или сектора0 кодированный сервоадрес будет равен номеру дорожки, который приводит к невозможности осуществить различие между секторами. Например, на головке0 все секторы имеют закодированный адрес номера дорожки, независимо от номера сектора. Во-вторых, добавление целого числа, отличного от единицы, формирует большие значения для получающегося кодированного сервоадреса. Большие значения требуют большего количества двоичных разрядов пространства памяти на диске. Таким образом, добавление единицы обеспечивает оптимальный результат с точки зрения пространства памяти, позволяя все же осуществлять различие между секторами.
Полезность настоящего изобретения может быть проиллюстрирована на примере. В табл. I (см. в конце описания) приведена типовая область сервоадреса 302 для системы дискового запоминающего устройства 100, имеющего 2 головки, 7 дорожек и 6 секторов. Как отмечалось выше, поле сервоадреса 302 содержит в себе индексную метку 310 и номер дорожки 312. Таблица 1 иллюстрирует номер дорожки 312, когда он изменяется для секторов 204 и головок 106. Из таблицы 1 хорошо видно, что поле сервоадреса 302 меняется только тогда, когда меняется номер дорожки. Для одного и того же номера дорожки, каждое поле сервоадреса 302 на дорожке 202 содержит одну и ту же информацию, независимо от смены головки или номеров секторов. В качестве дополнительной избыточности, номер дорожки в ID сектора 306 включен с номером сектора и номером головки.
Табл. II (см. в конце описания) иллюстрирует кодированный в соответствии с настоящим изобретением сервоадрес для той же системы дискового запоминающего устройства 100 с 2 головками, 7 дорожками и 6 секторами. В таблице II показаны несколько важных аспектов настоящего изобретения. Во-первых, кодированный сервоадрес изменяется для каждого сектора на дорожке. Например, для дорожки2, головки0 кодированный сервоадрес имеет значение 3 для сектора0 и имеет значение 8 для сектора5. Таким образом, зная кодированный сервоадрес, номер сектора 314 и номер головки 316, можно определить номер дорожки 314, используя вышеприведенное уравнение кодирования.
Во-вторых, кодированный сервоадрес изменяется на разную величину для каждого соседнего сектора в связи с головкой, на которую приходится сектор. Например, для дорожки2 и головки0 кодированный сервоадрес изменяется на 1 между сектором0 и сектором1, тогда как для дорожки2 и головки1 кодированный сервоадрес изменяется на 2 между сектором0 и сектором1. Таким образом, зная величину изменения значения кодированных сервоадресов между соседними секторами, можно проверить, осуществляется ли считывание надлежащей головкой системы дискового запоминающего устройства 100.
В-третьих, кодированный сервоадрес можно также использовать для кодирования индексной метки 310. Как было описано выше, индексная метка 310 представляет собой двоичный разряд, используемый для индикации сектора0 на данной дорожке, то есть индексную метку 310 устанавливают на 1 в поле сервоадреса 302 или в поле сервоадреса 402 для сектора0 на дорожкеn, индексную метку 310 устанавливают на 0 для всех других секторов на дорожкеn. В соответствии с настоящим изобретением, сектор0 можно идентифицировать посредством поиска нерегулярного изменения значения кодированного сервоадреса между секторомM и сектором0 на данной дорожкеn. Например, для дорожки2, головки1 кодированный сервоадрес изменяется на 2 между всеми соседними секторами, за исключением перехода между секторомM и сектором0, где кодированный сервоадрес изменяется на - 10. Это нерегулярное изменение легко обнаруживается и используется в предпочтительном варианте для исключения необходимости индексной метки 310. Для определения номера сектора, сектора 204 можно отсчитывать начиная от упомянутого нерегулярного изменения.
И наконец, в соответствии с настоящим изобретением уменьшается величина области дисковой памяти, необходимой для запоминания сервоадреса. На фиг. 5 показано уменьшение ширины поля, благодаря использованию настоящего изобретения. Для целей иллюстрирования этого положения принято, что дисковое запоминающее устройство имеет 2000 дорожек, 128 секторов и 4 головки. На фиг. 5 показан обычный сервоадрес 502, используемый для идентификации секторов дискового запоминающего устройства, и соответствующий настоящему изобретению кодированный сервоадрес 504. Сервоадрес 502 включает в себя двоичный разряд индекса 310, номер дорожки 312, номер сектора 314 и номер головки 316. Индексные двоичные разряды 310 требуют I двоичный разряд. Номер дорожки 312 требует II двоичных разрядов для запоминания номеров дорожек в диапазоне от 0 до 1999 (то есть, 2000 дорожек < 211 = 2048). Номер сектора 314 требует 7 двоичных разрядов для запоминания номеров секторов в диапазоне от 0 до 127 (то ту есть, 128 секторов = 27 = 128). Номер головки 316 требует 2 двоичных разряда для запоминания номеров головок в диапазоне от 0 до 3 (то есть, 4 дорожки = 22 = 4). Всего для запоминания некодированного сервоадреса 502 требуются 21 двоичный разряд.
В противоположность этому, количество двоичных разрядов, требуемых для запоминания кодированного сервоадреса составляет только 12. Это количество получается посредством определения количества двоичных разрядов, необходимых для запоминания, в соответствии со следующим уравнением:
Максимальное значение = Число дорожек + (Число головок· Число секторов)
Использование соответствующих чисел для типового дискового запоминающего устройства, дает максимальное значение, равное 2512, которое может быть запомнено с использованием 12 двоичных разрядов (то есть 2512<2>12 = 4096). Таким образом, кодированный сервоадрес можно использовать для экономии значительной величины области дисковой памяти, благодаря уменьшению количества двоичных разрядов, необходимых для запоминания той же информации.
Однако настоящее изобретение вносит неопределенность в отношении абсолютного местоположения головки относительно поверхности диска. В частности, несколько секторов не на одной и той же дорожке имеют один и тот же кодированный сервоадрес. Например, из таблицы II видно, что кодированным сервоадресом для дорожки2, головки0, сектора0 является "3". Он такой же, как и кодированные сервоадреса для головки0, дорожки1, сектора1 и для головки0, дорожки0, сектора2, а также для головки1, дорожки1, сектора0. Таким образом, один только кодированный сервоадрес не обеспечивает абсолютного определения местоположения на поверхности диска в системе дискового запоминающего устройства. Однако, неопределенность разрешается кодированным сервоадресом вместе с относительным местоположением головки относительно диска. Например, кодированный сервосигнал вместе с номером сектора и номером головки позволяет определить номер дорожки, связанный с дорожкой, с которой был считан кодированный сервоадрес.
Для этого настоящее изобретение должно обеспечивать определение относительного положения головки на диске, а также идентифицировать используемую головку. Это выполняется посредством определения номера сектора. В соответствии с настоящим изобретением номер сектора определяется при подсчете секторов на дорожке. Номер сектора получает приращение на дорожке при прохождении каждого отдельного сектора под головкой и устанавливается в исходное состояние один раз на оборот по индексной метке. В предпочтительном варианте осуществления изобретения индексная метка идентифицируется в виде нерегулярного перехода в кодированном сервоадресе.
После определения номера сектора и номера головки, связанного со считывающей головкой, кодированный сервоадрес можно использовать для определения номера дорожки. В частности, номер дорожки определяется, используя следующее уравнение:
Номер дорожки = Кодированный сервоадрес - (Номер головки + 1)·(Номер сектора + 1)
После определения номера дорожки, разрешается неопределенность в абсолютном местоположении головки относительно поверхности диска. Это облегчает обнаружение местоположения конкретного сектора в пределах дорожки на поверхности диска перед выполнением операций считывания и записи данных.
На фиг. 6 показан предпочтительный вариант осуществления способа, используемого для кодирования номера дорожки 312, номера сектора 314 и номера головки 316 с получением кодированного сервоадреса 504. На этапе 602 определяются номер дорожки 312, номер сектора 314 и номер головки 316 для конкретного подлежащего идентифицированию сектора 204. На этапе 604 к номеру головки 316 добавляется единица, чтобы получить первый результат. На этапе 606 единица добавляется к номеру сектора 314 для получения второго результата. На этапе 608, полученный на этапе 604 первый результат умножается на полученный на этапе 606 второй результат с целью получения третьего результата. На этапе 610 полученный на этапе 608 третий результат складывается с номером дорожки 312 для получения кодированного сервоадреса 504. На этапе 612 кодированный сервоадрес 504 преобразуется в двоичный циклический код, используя хорошо известную в технике методику. На этапе 614 кодированный сервоадрес 504, представленный в виде двоичного циклического кода, записывается на диске 102 в конкретном подлежащем идентификации секторе 204.
Формула изобретения: 1. Способ определения положения на поверхности диска, включающий считывание кодированного сервоадреса с поверхности диска посредством преобразующей головки, причем упомянутый кодированный сервоадрес кодируется для уменьшения его размера, а упомянутое кодирование вносит неоднозначность в отношении абсолютного положения на поверхности диска, и разрешение упомянутой неоднозначности кодированного сервоадреса с использованием относительного местоположения преобразующей головки относительно поверхности диска.
2. Способ по п.1, отличающийся тем, что операция разрешения неоднозначности включает контроль изменения местоположения преобразующей головки относительно поверхности диска, определение упомянутого относительного местоположения преобразующей головки на основании изменения ее местоположения и известного местоположения упомянутой преобразующей головки и использование относительного местоположения и кодированного сервоадреса для определения местоположения на поверхности диска.
3. Способ по п.2, отличающийся тем, что операция контроля включает определение углового положения, когда преобразующая головка перемещается из первого углового положения.
4. Способ по п.3, отличающийся тем, что определение упомянутого углового положения включает подсчет секторов при перемещении преобразующей головки от первого сектора к соседнему сектору.
5. Дисковое запоминающее устройство, содержащее корпус, по меньшей мере один диск, установленный с возможностью вращения в упомянутом корпусе, причем упомянутый диск имеет по меньшей мере одну поверхность, предназначенную для запоминания данных, разделенную на множество местоположений для запоминания данных, каждое из которых имеет кодированный сервоадрес, который идентифицирует расположение местоположения для запоминания данных на упомянутой поверхности, при этом кодированный сервоадрес кодируется для уменьшения его размера и это кодирование вносит неоднозначность в определение абсолютного местоположения, преобразующую головку, расположенную рядом с упомянутой поверхностью диска, предназначенную для считывания упомянутого кодированного сервоадреса, исполнительный механизм, предназначенный для перемещения преобразующей головки относительно поверхности диска, и средство вращения, предназначенное для вращения упомянутого диска.
6. Дисковое запоминающее устройство по п.5, отличающееся тем, что дополнительно содержит средство определения относительного местоположения при перемещении преобразующей головки из первого известного местоположения и средство разрешения упомянутой неоднозначности с использованием относительного местоположения и кодированного сервоадреса.
7. Дисковое запоминающее устройство по п.5 или 6, отличающееся тем, что оно дополнительно содержит средство определения номера головки для выбора преобразующей головки и средство разрешения упомянутой неоднозначности с использованием номера головки и кодированного сервоадреса.
8. Дисковое запоминающее устройство по пп.5, 6 или 7, отличающееся тем, что содержит средство определения номера головки для выбора преобразующей головки, средство определения номера сектора и средство разрешения неоднозначности с использованием номера головки, номера сектора и кодированного сервоадреса.
9. Диск для запоминания данных, содержащий по меньшей мере одну поверхность, предназначенную для запоминания данных, разделенную на множество местоположений для запоминания данных, каждое местоположение для запоминания данных имеет кодированный сервоадрес, который идентифицирует расположение упомянутого местоположения для запоминания данных на упомянутой поверхности, при этом кодированный сервоадрес закодирован для уменьшения его размера и это кодирование вносит неоднозначность в определение абсолютного местоположения.
10. Способ обнаружения требуемой дорожки на поверхности диска, имеющей множество концентрических дорожек, каждая из которых имеет по меньшей мере один сектор, имеющий сервоадрес, запомненный в нем, включающий операции определения номера сектора в пределах дорожки, считывания кодированного сервоадреса из упомянутого сектора и использования кодированного сервоадреса вместе с номером сектора для обнаружения требуемой дорожки.
11. Способ по п.10, отличающийся тем, что операция использования кодированного сервоадреса вместе с номером сектора для обнаружения требуемой дорожки включает добавление первого целого числа к номеру сектора для получения первого результата, вычитание первого результата из кодированного сервоадреса для получения номера дорожки и использование номера дорожки для определения того, обнаружена ли требуемая дорожка.
12. Способ по п.10 или 11, отличающийся тем, что включает операцию, выполненную перед операцией считывания кодированного сервоадреса из сектора и состоящую в определении номера головки, связанной с поверхностью диска, содержащей требуемую дорожку.
13. Способ по п.12, отличающийся тем, что операция использования кодированного сервоадреса вместе с номером сектора для обнаружения требуемой дорожки включает добавление первого целого числа к номеру головки для получения первого результата, добавление второго числа к номеру сектора для получения второго результата, перемножение первого результата и второго результата для получения третьего результата, вычитание третьего результата из кодированного сервоадреса для получения номера дорожки и использование номера дорожки для определения того, обнаружена ли требуемая дорожка.
14. Способ кодирования индексной метки в сервоадресе, включающий операции изменения сервоадреса на заранее заданное значение для каждого сектора на дорожке от первого сектора до последнего сектора, запоминания сервоадреса в каждом из упомянутых секторов, считывания сервоадреса для каждого из упомянутых секторов и обнаружения нерегулярного изменения сервоадреса между последним сектором и первым сектором, причем упомянутое нерегулярное изменение появляется один раз на дорожку и используется как индексная метка.
15. Дисковое запоминающее устройство для запоминания данных, содержащее корпус, по меньшей мере один диск, установленный с возможностью вращения в упомянутом корпусе, причем упомянутый диск имеет поверхность, предназначенную для запоминания данных, множество концентрических дорожек, расположенных на упомянутой поверхности, по меньшей мере один сектор, расположенный на упомянутой дорожке, и сервоадрес, вычисленный из номера сектора, номера дорожки и номера головки, причем номер сектора, номер дорожки и номер головки однозначно определяют местоположение сектора в дисковом запоминающем устройстве, а сервоадрес идентифицирует упомянутый сектор на упомянутой дорожке, преобразующую головку, позиционирующую по отношению к поверхности диска, предназначенную для считывания адресов секторов, и средство перемещения головки относительно поверхности диска.
16. Дисковое запоминающее устройство по п.15, отличающееся тем, что сервоадрес рассчитывается посредством добавления первого целого числа к номеру головки для получения первого результата, добавления второго целого числа к номеру сектора для получения второго результата, перемножения первого результата и второго результата для получения третьего результата, добавления третьего результата к номеру дорожки для получения сервоадреса.
17. Дисковое запоминающее устройство по п.15, отличающееся тем, что сервоадрес рассчитывается посредством добавления единицы к номеру головки для получения первого результата, добавления единицы к номеру сектора для получения второго результата, перемножение первого результата и второго результата для получения третьего результата, добавления третьего результата к номеру дорожки для получения сервоадреса.
18. Дисковое запоминающее устройство по п.15, отличающееся тем, что сервоадрес рассчитывается посредством добавления первого целого числа к номеру сектора для получения первого результата и добавления первого результата к номеру дорожки для получения сервоадреса.
19. Дисковое запоминающее устройство по п.15, отличающееся тем, что сервоадрес дополнительно содержит в себе идентифицирующее средство, предназначенное для идентификации первого сектора из упомянутых сервоадресов в пределах упомянутой дорожки.
20. Дисковое запоминающее устройство по п.19, отличающееся тем, что упомянутое идентифицирующее средство дополнительно содержит средство обнаружения нерегулярного изменения значения упомянутого сервоадреса между соседними секторами на каждой из упомянутых дорожек, причем это нерегулярное изменение указывает на переход между последним сектором и первым сектором дорожки, появляющийся один раз на упомянутую дорожку.