logo search
AK

2.10. Контроль роботи пристроїв пам’яті

Призначення та типи контролю пристроїв ОП:

Види помилок: систематичні та випадкові. Систематичні носять постійний характер і називаються відмовами. Для їх виявлення використовуються спеціальні діагностичні тести. Їх існує близько 19. Випадкові помилки називають збоями.

Тести діляться на класи:

«р» - лінійні тести (тест нуля, що біжить, одиниці, одинарний та двійковий шаховий).

«р2» - квадратичні (галоп, пінг-понг, баттерфляй)

«р3/2» - комбіновані

Лінійний тест «Марш»: в комірку, що діагностується, починаючи з адреси А0, записується інформація Т=0 (фон нуля), потім – зчитується інформація по всім адресам, контролюється її правильність, потім в кожну комірку заноситься замість Т – Т , зчитується, перевіряється, потім все це пророблюється навпаки (починаючи з адреси Ар-1­, а не А0).

Для виявлення випадкових помилок використовуються спеціальні схеми контролю, які працюють постійно. Наприклад, використовуються надлишкові схеми кодування (код Хеммінга).

В процесі роботи зовнішньої пам'яті (ЗП) також можуть виникнути помилки. Причин, які викликають послаблення надійного сигналу по відношенню до складних сигналів, безмірно багато: в процесі роботи ЗП відстань між головкою та носієм змінюється у зв'язку з нестабільністю роботи механіки; порушення поверхні магнітного носія. Тому в процесі роботи пам'яті необхідний контроль. Це поздовжній та поперечний контроль по парності/непарності.

Якщо порушується парність/непарність при використанні методу запису NRZ-1, то відбувається втрата одиниці при зчитуванні. Якщо використовується частотний спосіб запису, особливість якого полягає в наявності переключення на межах бітових інтервалів, і ця вимога не виконується, то відбувається помилка. Якщо при цьому порушується парність, то відбулась помилка при зчитуванні двійкової одиниці.

У зовнішній носіях часто виникають R-кратні помилки, тому в таких пристроях більш ефективними будуть пристрої контролю з використанням циклічних кодів та циклічних поліномів. Суть контролю з допомогою поліномів: вихідна бітова послідовність Q(x) представлена у вигляді полінома, який ділиться на циклічний поліном P(x), в результаті ділення отримується ціла частина та залишок: Q(x)/P(x) = Q’(x)+R(x). На носій записується вихідний поліном та залишок R(x). При зчитуванні знову виконується ділення: (Q(x)+R(x))/P(x), якщо залишок дорівнює нулю, то зчитування відбулось без помилок, а інакше – з помилкою. В якості циклічного полінома обирається поліном P(x), який належить до незвідних поліномів, а саме до тих, які ділятьсі на 1 та на себе.

Приклад знаходження остачі при діленні вихідного поліному на Р(х) приведений на рис. 2.52.

Q(x) = 11001

Q(x) = x4+x3+1 P(x) = x4+x+1

Q(x)*x5 = x9+x8+x5 x4+x+1

x9+x6+x5 x5+x4+x2+x+1

x8+x6

x8+x5+x4

x6+x5+x4

x6+x3+x2

x5+x4+x3+x2

x5+x2+x

x4+x3+x

x4+x+1

x3+1

R(x) = 01001

Рис. 2.52 Приклад ділення поліномів

Для ділення використовуються спеціальні схеми. Найчастіше застосовують регістри зсуву зі схемами додавання по модулю 2, які встановлюються в залежності від обраного циклічного поліному в певних розрядах регістра. Схема регістра зсуву для приведенного прикладу показана на рис. 2.53.

Рис. 2.53 Схема регистра зсуву

Стани тригерів регістра зсуву в процесі реалізації ділення приведено на рис. 2.54

Исходно

Т1

Т2

Т3

Т4

0

0

0

0

х9

1

1

1

0

0

х8

1

1

0

1

0

Q(x)

х7

0

0

1

0

1

х6

0

1

1

1

0

х5

1

1

0

1

1

х4

0

1

0

0

1

х3

1

0

0

0

0

х2

1

0

0

1

0

х1

0

0

0

0

1

х0

1

0

0

0

0

R’(x)

Рис. 2.54

Можна замість Р(х) використати двоїстий йому поліном P’(x) = x4*(1/x4+1/x+1)

Для цього випадку схема регістра зсуву приведена на рис. 2.55.

Рис. 2.55 Схема регистра зсуву

В НЖМД використовується CRC(16), тобто регістр складається з 16 розрядів

CRC(16) = x16+x12+x5+1(Hewlett Packard)

Частина 3. Системи обслуговування обчислень