Книга
Книга
ПРЕДИСЛОВИЕ
Быстрый рост числа ЭВМ и в особенности микроЭВМ, персональных компьютеров и микропроцессорных устройств в различных отраслях народного хозяйства, науки и культуры, системе образования и в быту породил проблему сохранения и поддержания их работоспособного сосгоя- ния.
Острота этой проблемы усугубляется рассредоточенностью средств вычислительной техники по территории всей страны, расширяющимся использованием ЭВЛ1 и микропроцессорных средств для непосредственного управления производственным оборудованием и технологическими процессами, в том числе роботами и гибкими автоматизированными производствами.
Государство вкладывает огромные средства в создание и производство электронной вычислительной техники, являющейся одним из важнейших средств повышения производительности труда в различных областях человеческой деятельности, производительности и эффективности машин и технологических процессов. Нельзя допустить, чтобы из- за неисправности ЭВА! и плохо организованной эксплуатации возникали значительные экономические потери и использование вычислительной техники оказалось малоэффективным.
Для повышения эффективности применения ЭВМ, в том числе персональных компьютеров, микроЭВМ, микропроцессорных устройств в народном хозяйстве и других областях, необходимо повышение их надежности и готовности, снижение трудовых затрат на техническое обслуживание средств вычислительной техники. Последнее, наряду с соответствующей организацией эксплуатационного обслуживания ЭВМ, широкой подготовкой специалистов для работы в этой области, требует придания ЭВМ свойства обслуживаемости, т. е. приспособленности к процессам об-
служивания, что предполагает наличие специальных аппаратурно-программных средств поддержки эксплуатации.
В настоящее время все большее распространение при разработке ЭВМ и других средств вычислительной техники получает технология проектирования «Надежность — Готовность — Обслуживаемость» (технология RAS: Realia- bility— Availability — Serviceability), предполагающая комплексное решение всех этих проблем в процессе проектирования ЭВМ. Разработка концепции эксплуатационного обслуживания машины и аппаратурно-программных средств поддержки эксплуатации стала неотъемлемой частью процесса разработки ЭВМ.
Электронная вычислительная машина является сложным объектом эксплуатационного обслуживания ввиду большой сложности ее логической организации и процессов функционирования, большого числа и разнообразия входящих в ее состав элементов и устройств, большой плотности монтажа электронного оборудования, сложного взаимодействия аппаратурных и программных средств, большого объема эксплуатационной документации. Это порождает определенные требования к квалификации обслуживающего персонала.
С ростом числа ЭВМ разных типов растет число инженеров и математиков-программистов, профессиональная деятельность которых связана с эксплуатационным обслуживанием вычислительных машин. Многие выпускники высшей школы, обучающиеся по специальности «Электронные вычислительные машины», направляются на работу по эксплуатационному обслуживанию ЭВМ.
Специалисты, занятые разработкой вычислительной техники как и специалисты, работа которых связана с ее техническим обслуживанием, должны иметь хорошую подготовку по научным основам, методам и средствам обеспечения высокой надежности, готовности и обслуживаемости ЭВМ, технологии процессов и средствам поддержки эксплуатационного обслуживания.
Возникает острая потребность в книгах, в которых излагаются эти вопросы.
Предыдущее издание книги явилось, по существу, первой попыткой рассмотрения основных вопросов технологии проектирования и эксплуатации средств вычислительной техники, обеспечивающей высокую надежность, готовность, обслуживаемость.
Во втором переработанном издании нашли отражения
новые проблемы, идеи и технические решения в этой области: в книгу включены новые главы и разделы по сервисным процессорам, измерительным мониторам, принципам построения дистанционного обслуживания ЭВМ, особенностям эксплуатационного обслуживания персональных компьютеров и микропроцессорных устройств, методам проектирования диагностических тестов.
В книге рассмотрены элементы теории эксплуатации ЭВМ, методы, средства и процессы эксплуатационного обслуживания ЭВМ, их программного и информационного обеспечения. Изложены элементы теории и аналитические модели надежности аппаратурных и программных средств. Рассмотрены особенности эксплуатации операционных систем и баз данных.
В книге изложены принципы и средства обеспечения высокой степени обслуживаемости ЭВМ. Описаны принципы построения и использования создающих основу для эксплуатационного обслуживания аппаратурно-программных систем автоматического контроля правильности работы машины, автоматического диагностирования .неисправностей, автоматического восстановления вычислительного процесса, автоматизации профилактических испытаний, сбора и накопления информации о поведении машины в процессе эксплуатации, сервисных процессоров, систем дистанционного обслуживания ЭВМ, специфических средств поддержки обслуживания персональных компьютеров и микропроцессорного оборудования, методы проектирования диагностических тестов.
Б. М. Каганом написаны гл. 1, 2 (совместно с В. Н. Кот- ляровским), гл. 3 (совместно с Г. А. Гришиным), гл. 9, 18 и § 10.4, И. Б. Мкртумяном написаны гл. 5 (кроме § 5.3, 5.6),' 7 (совместно с А. Р. Минасяном), гл. 8, 10 (кроме § 10.4) — 17. Главы 4, 6 и § 5.3, 5.6 написаны совместно Б. М. Каганом и И. Б. Мкртумяном.
Авторы выражают благодарность чл.-кор. АН СССР Г. П. Лопато, д-ру техн, наук, проф. Б. И. Зобову, кафедре «Вычислительная техника» МЛТИ, доцентам В. Г. Пер- шееву и Ф. Б. Поволоцкому за ценные замечания и советы, которые способствовали улучшению содержания книги.
Авторы будут весьма признательны читателям, пожелавшим прислать замечания по книге, которые следует направлять по адресу: 113114, Москва, Шлюзовая наб., 10, Энергоатомиздат.
Авторы
Глава 1
ОСНОВНЫЕ ПОНЯТИЯ ЭКСПЛУАТАЦИОННОГО
ОБСЛУЖИВАНИЯ ЭВМ
ОСОБЕННОСТИ ЭВМ КАК ОБЪЕКТА ЭКСПЛУАТАЦИОННОГО ОБСЛУЖИВАНИЯ
Эксплуатация любого объекта (системы, машины) в общем случае состоит из его (ее) эксплуатационного использования, другими словами, использования по прямому назначению, и эксплуатационного обслуживания. Под эксплуатационным обслуживанием понимается совокупность операций, процедур и процессов, предназначенных для обеспечения работоспособности объекта (системы, машины) .
Эксплуатируемый объект может находиться в работоспособном или неработоспособном состоянии. Работоспособным называется состояние объекта, при котором он способен выполнять заданные функции при сохранении значений его характеристик и параметров в пределах, установленных технической документацией. Неработоспособным называется состояние объекта, при котором он не в состоянии выполнить хотя бы одну из заданных функций или хотя бы один его параметр или одна характеристика не удовлетворяет требованиям, указанным в технической документации.
В зависимости от особенностей рассматриваемого объекта, в частности от степени автоматизации его основных технологических процессов, меняются соотношения между эксплуатационным использованием и эксплуатационным обслуживанием в общем процессе эксплуатации объекта. В соответствии с этим меняется содержание, вкладываемое в понятие эксплуатации того или иного объекта.
Например, на железнодорожном транспорте, где орга-
низация, планирование и управление железными дорогами, в работе которых участвуют тысячи рабочих и специалистов, ведется людьми (пусть даже с применением ЭВМ) и принятие управленческих решений во многих случаях не поддается формализации, под эксплуатацией железных дорог понимают организацию, планирование и управление перевозочным процессом, т. е. эксплуатационное использование железных дорог.
Наоборот, в ЭВМ, где управление вычислительным процессом формализовано и осуществляется автоматически операционной системой, процедуры работы операторов машины достаточно просты, под эксплуатацией ЭВМ понимают в основном ее эксплуатационное обслуживание.
В дальнейшем в книге под термином «эксплуатация ЭВМ» будет пониматься главным образом ее эксплуатационное обслуживание.
Рассмотрим основные особенности ЭВМ как объекта эксплуатационного обслуживания.
ЭВМ — сложная техническая система. Современные ЭВМ средней и большой производительности следует отнести к сложным техническим объектам. Эта сложность определяется огромным числом входящих в них элементов — в первую очередь электронных компонентов, большим числом связей между элементами, наличием в составе машины разнообразного по принципу действия и выполняемым функциям оборудования (в том числе прецизионного), в ряде случаев работающего вблизи предела физических возможностей (по скоростям передачи информации, по плотности записи информации на носителе и т.п.). Сложность ЭВМ обусловливается также сложностью выполняемых ею функций по обработке информации, которые еще недавно считались прерогативой человеческого мозга.
ЭВМ — совокупность аппаратурных и программных средств. Сложность ЭВМ как объекта эксплуатации усугубляется тем, что современная ЭВМ — это неразделимый комплекс аппаратуры и программных средств. Программные средства в тесном взаимодействии с аппаратурой управляют вычислительным процессом, процессами взаимодействия ЭВМ с пользователями и операторами. Операционные системы современных ЭВМ без преувеличения можно считать наиболее «интеллектуальными» искусственными системами, когда-либо созданными человеком. Эксплуатационное обслуживание ЭВМ должно охватывать в совокупности ее аппаратурные и программные средства.
ЭВМ —- универсальный преобразователь информации. В отличие от машин, осуществляющих преобразование видов энергии, состава или формы материала, ЭВМ имеет дело с преобразованиями информации. Это заставляет ввести для определения состояния ЭВМ наряду с понятием работоспособности для выполнения предусмотренных техническими условиями на машину преобразований данных понятие верности или достоверности в функционировании ЭВМ, определяющейся степенью безошибочности работы машины.
Ошибки в работе ЭВМ могут не только искажать конечные результаты расчета, но и приводить к искажению хранимой в ее памяти информации (данных и программ), которую следует рассматривать как составную часть вычислительной системы.
ЭВМ — человеко-машинная система. Даже в простейших режимах работы ЭВМ выступает как человеко-машинная система, в которой оператор определенным образом взаимодействует и общается с машиной (точнее, с ее операционной системой). Этот человеко-машинный характер вычислительной системы значительно усиливается при реализации систем коллективного пользования, разделения времени, телеобработки, диалоговых режимов.
Неправильные действия операторов и пользователей могут вызывать ненормальности (причем часто трудно обнаруживаемые и устранимые) в функционировании ЭВМ.
ЭВМ — объект, функционирующий в услових действия случайных факторов. Случайными, заранее не предусмотренными являются моменты обращения к ЭВМ с запросами на выполнение тех или иных программ, необходимые для выполнения запросов ресурсы ЭВМ (время работы процессора, каналов, других устройств, требуемые емкости памяти), траектории прохождения запросов по вычислительной системе (используемое запросами оборудование) и, наконец, возможные нарушения нормального функционирования ЭВМ из-за возникновения различных неисправностей.
ЭВМ — объект со сложным описанием и очень большим объемом технической документации. Вычислительная машина как сложная система требует многоуровневого описания — на уровнях структур, функциональных схем, принципиальных схем, временных диаграмм, микропрограмм и т. д. Во многом эффективность эксплуатационного обслуживания зависит от структуры, полноты и качества до-
кументации, приспособленности ее для ведения эксплуатационного обслуживания.
Массовость объектов вычислительной техники и их рассредоточенность по территории страны, особенно возросшие с широким развитием использования микропроцессорных средств и персональных компьютеров.
Эксплуатационное обслуживание сопровождает ЭВМ на протяжении всей ее «жизни»: от момента изготовления до снятия с эксплуатации.
В общем случае можно выделить следующие виды обслуживания ЭВМ: хранение; установку, наладку на месте эксплуатации, ввод в эксплуатацию; обслуживание при нормальной работе; планово-профилактические работы; устранение неисправностей (ремонт); обслуживание программного обеспечения; обслуживание информационных баз.
Вычислительные машины можно классифицировать по характеру обслуживания, что определяется их назначением и условиями эксплуатации. Вычислительная машина может быть восстанавливаемым или невосстанавливаемым, ■обслуживаемым или необслуживаемым объектом.
ЭВМ считается восстанавливаемым объектом, если во время эксплуатации может производиться ремонт по устранению возникающих неисправностей. В противном случае машина является невосстанавливаемым объектом.
ЭВМ считается обслуживаемым объектом, если допускается периодическое проведение профилактических испытаний с целью выявления, замены или подрегулировки элементов и узлов, параметры которых близки к предельно допустимым. В противном случае ЭВМ является необслуживаемым объектом.
■ ЭВМ общего назначения представляют собой восстанавливаемые обслуживаемые объекты. К невосстанавливаемым объектам относятся, например, бортовые вычислительные машины ракет.
Сложность ЭВМ как объекта эксплуатационного обслуживания, вытекающие отсюда требования к высокому уровню квалификации обслуживающего персонала, большое число ЭВМ, находящихся в эксплуатации, рассредо- ченность их по территории страны делают весьма острой проблему обеспечения эксплуатационного обслуживания ЭВМ.
Решение этой проблемы следует искать в повышении надежности ЭВМ, в соответствующей организации их
обслуживания, широкой подготовке специалистов по эксплуатационному обслуживанию, в придании ЭВМ специального свойства высокой степени обслуживаемости, т. е. приспособленности машины к процессам обслуживания.
Степень обслуживаемости ЭВМ тем выше, чем меньше количество и ниже квалификация труда, затрачиваемого на эксплуатацию ЭВМ. Повышение степени обслуживаемости ЭВМ достигается с помощью специальных аппаратурных и программных средств, автоматизирующих отдельные процессы обслуживания, в том числе средств автоматизации поиска неисправностей, автоматического контроля правильности работы ЭВМ, автоматического восстановления вычислительного процесса после сбоев, автоматизации профилактических испытаний, автоматизации накопления и обработки информации о нарушениях нормального процесса работы при ее эксплуатации, а также средств дистанционного контроля и диагностирования ЭВМ.
ОСНОВНЫЕ ЭКСПЛУАТАЦИОННЫЕ ХАРАКТЕРИСТИКИ ЭВМ
Пользователя в первую очередь интересуют параметры ЭВМ и особенности ее архитектуры, определяющие вычислительные возможности машины. К ним относятся производительность (скорость работы) процессора (число выполняемых операций в секунду), емкость памяти (число байт), состав и параметры периферийных устройств, а также следующие архитектурные характеристики: способ организации системы обмена информацией между ядром ЭВМ и периферийными устройствами, пропускная способность этой системы (число байт в секунду), формы представления данных в ЭВМ, способы адресации, особенности системы команд, средства общения пользователя с машиной, характеристики ее операционной системы, реализуемые режимы работы (мультипрограммный, разделение времени, реальный масштаб времени) и др.
Важнейшими эксплуатационными характеристиками ЭВМ являются ее производительность П и общий коэффициент эффективности машины
= ^/(^эвм + ^экС)> (1.1) представляющий собой отношение ее производительности к сумме стоимости самой машины Сэвм и затрат на ее
эксплуатацию за определенный период времени '(например, период окупаемости капитальных затрат) Сокс.
Так как часто бывает трудно оценить затраты на эксплуатацию данной модели ЭВМ, то оценивают эффективность машины по упрощенной формуле:
Э = n/CSBK.(1.2)
Оценка и сопоставление производительности различных ЭВМ представляют собой сложную проблему, в сущности не получившую до сих пор удовлетворительного решения.
Интуитивно под производительностью ЭВМ понимают количество «вычислительной работы» или, другими словами, число задач, выполняемых машиной в единицу времени. Однако на производительность ЭВМ, оцениваемую по числу решенных в единицу времени задач, влияет слишком много факторов, в том числе тип задач, число тех или иных операций, выполняемых при решении задач, стиль программирования и другие особенности программ, логические возможности системы команд, структура процессора, характеристики и организация оперативной и внешней ■памяти, особенности операционной системы, состав и характеристики периферийных устройств и др.
В этих условиях оценка производительности по некоторому набору задач применяется только тогда, когда вычислительная установка предназначается для решения достаточно узкого круга задач.
В настоящее время производительность ЭВМ общего назначения оценивается упрощенно по скорости выполнения некоторых «смесей» команд, формируемых путем анализа частоты исполнения разного вида команд при выполнении программ решения задач некоторого класса, например научно-технических или планово-экономических задач. На основе такого анализа отдельным видам команд присваиваются определенные весовые коэффициенты.
При использовании «смесей» команд производительность ЭВМ определяется по формуле
(
/г \ f \
2^ / 2^z4 (L3)
s=l \s=l /
где ks и ts — соответственно весовой коэффициент и продолжительность выполнений s-й команды; К — число различных команд в «смеси».
ГОСТ 16325—76 [10] предусматривает определение про-
изводительности машин общего назначения по смеси алгоритмических действий по выражению, аналогичному (1.3). В ГОСТ 16325—76 приведены стандартные смеси-наборы алгоритмических действий и их весовых коэффициентов для научно-технических задач и планово-экономических расчетов. Эти смеси могут использоваться для оценки производительности ЭВМ, имеющих уровень системы команд не выше уровня приводимых в стандарте алгоритмических действий.
Использование смесей алгоритмических действий вместо смесей команд способствует сопоставимости расчетных значений производительности ЭВМ с различными системами команд.
Рассмотренные характеристики являются только номинальными показателями; они реализуются, если ЭВМ работоспособна. Суждение о реальных возможностях выполнения машиной определенных функций, решения данного комплекса задач, особенно задач управления, требующих обработки данных в реальном масштабе времени, может быть вынесено только с учетом характеристик эксплуатационной надежности машины.
Общие закономерности нарушений работоспособности различных объектов, закономерности процессов обеспечения и поддержания работоспособного состояния объектов изучает теория надежности.
Согласно современным представлениям под надежностью понимается свойство изделия (элемента, узла, устройства, машины, системы) выполнять заданные функции, сохраняя во времени свои характеристики в установленных пределах при определенных режимах и условиях использования, технического обслуживания, режимах хранения и транспортирования.
При оценке и анализе надежности какого-либо объекта приходится иметь дело со случайными событиями и величинами, что заставляет использовать понятия и методы теории вероятностей.
Надежность вычислительной машины определяется безотказностью, достоверностью функционирования и характеристиками обслуживаемости, в первую очередь ремонтопригодностью (восстанавливаемостью после отказов), восстанавливаемостью информации после сбоев и проверко- пригодностью.
Безотказность ЭВМ — свойство машины сохранять работоспособность в течение определенного промежутка вре-
мени при условии удовлетворения заданных ограничений на условия эксплуатации. Безотказность ЭВМ характеризуется закономерностями возникновения отказов. Под отказом понимается событие, заключающееся в полной утрате машиной работоспособности из-за возникшей неисправности и приводящее к невыполнению или ошибочному выполнению тестов, задач под управлением операционной системы или задач пользователя. Отказ ЭВМ — это такое нарушение ее работоспособности, для устранения которого требуются определенные действия обслуживающего персонала по ремонту, замене и регулировке неисправного элемента, узла или устройства.
Отказы делятся на внезапные и постепенные.
Внезапный отказ — это практически мгновенное изменение какого-либо параметра (например, возрастание сопротивления цепи вследствие ее обрыва, электрический пробой диода и т.п.). Постепенный отказ — это происходящее во времени накопление количественных изменений некоторого параметра, достигнувшего значения, при котором машина оказывается в неработоспособном состоянии.
Внезапные отказы возникают, а постепенные отказы проявляются как устойчивые нарушения нормального функционирования машины в случайные моменты времени. Интервалы между отказами являются случайными величинами с некоторым законом распределения.
Безотказность ЭВМ может быть оценена средним временем наработки машины на один отказ (То).
Последствия отказов характеризуются случайными величинами Продолжительности перерыва в функционировании машины из-за ремонтных работ (случайными величинами продолжительности ремонта).
Ремонтопригодность ЭВМ — это степень приспособленности машины к предупреждению, обнаружению и устранению отказов Ремонтопригодность определяет потерю работоспособности машины вследствие необходимости производить устранение неисправностей. Количество времени, затрачиваемого на ремонт для устранения отказа, является случайной величиной. Ремонтопригодность ЭВМ можно оценить средним временем устранения неисправности, другими словами, средним значением времени восстановления работоспособности после отказа Тв.о.
Работа ЭВМ заключается в выполнении преобразований информации.
В силу указанной специфики рабочего процесса надеж-
ность ЭВМ наряду с безотказностью определяется также достоверностью функционирования.
Достоверность функционирования ЭВМ — это свойство машины, определяющее безошибочность производимых машиной преобразований информации и характеризуемое закономерностями появления ошибок из-за сбоев.
Сбоем называют событие, состоящее во временной утрате работоспособности ЭВМ и характеризуемое возникновением ошибки при выполнении тестов, задач под управлением операционной системы или задач пользователя. Для восстановления работоспособности ЭВМ при сбое требуется проведение повторных действий по решению теста или задачи (их частей) или повторных их загрузках в ЭВМ для решения [10].
Сбой вызывается кратковременной самоустраняющейся неисправностью, нарушающей нормальное функционирование машины (кратковременное воздействие на некоторый элемент или элементы внешних помех, кратковременное изменение параметров элементов, например, кратковременные нарушения контактов и т.п.). После сбоя машина длительное время может работать нормально. Сбой сопровождается искажением информации при операциях передачи, хранения и обработки. Следовательно, если не устранить последствия сбоя, то задача может оказаться неправильно решенной из-за искажений в данных, промежуточных результатах или в самой программе.
Однако если при отказе для восстановления работоспособности машины или системы необходимо устранить неисправность в аппаратуре, то при сбое достаточно восстановить только достоверность информации, что хотя и связано с потерями рабочего времени ЭВМ (например, на повторный пуск программы или ее части), но не требует ремонта или регулировки аппаратуры. В силу этого восстановление достоверности функционирования сравнительно легко может быть автоматизировано. Достоверность функционирования ЭВМ можно оценить средним временем наработки машины на один сбой Тс.
Для оценки достоверности функционирования некоторых устройств (например, запоминающих устройств на магнитных лентах) удобно пользоваться средним количеством правильно переданной (считанной—записанной) информации (измеряемой в битах), приходящейся на одну ошибку.
Для более полной оценки достоверности функциониро-
вания введем в состав эксплуатационных характеристик ЭВМ востанавливаемость вычислительного процесса, оцениваемую средним временем восстановления вычислительного процесса после сбоя (Тъ J
В процессе развития вычислительной техники повышение безотказности и достоверности функционирования ЭВМ достигалось путем использования более надежных элементов (переход от ламповых схем к полупроводниковым и затем к интегральным микросхемам), применения облегченных нагрузочных режимов для схемных компонентов, совершенствования конструкции и технологии (печатный, в том числе многослойный, монтаж, плоские кабели, монтаж «накруткой», улучшение вентиляции блоков машины, согласование линий передачи сигналов, термоэлектротренировки элементов и др.), автоматизации проектирования, изготовления и контроля узлов и соответствующих решений в отношении структуры и организации вычислительного процесса ЭВМ.
Для современных ЭВМ среднее время наработки на отказ составляет от нескольких сотен часов для больших И средних ЭВМ общего назначения до нескольких тысяч часов для мини- и микроЭВМ. Среднее время восстановления после отказа составляет 0,5—1 ч, а среднее время восстановления вычислительного процесса после сбоя, если оно требует манипуляций со стороны обслуживающего персонала, — 0,2—0,3 ч.
В большинстве случаев ЭВМ представляют собой восстанавливаемые и обслуживаемые объекты. Восстановление заключается в устранении неисправностей (отказов) и последствий сбоев. Важной функцией обслуживания является проведение профилактических проверочных испытаний (профилактического контроля) для выявления элементов и узлов, параметры которых близки к предельно допустимым, и их замены или подрегулировки. Кроме того, профилактические испытания предназначены для выявления неисправностей в аппаратуре, не охваченной средствами автоматического контроля правильной работы.
Целью профилактических испытаний является увеличение наработки на отказ в период между профилактическими испытаниями. Поэтому эффективность профилактических испытаний определяется отношением средних величин наработки на отказ при _наличии профилактических испытаний Jo пф) и без них Joy._ _
Эпф = То-пф/То. (1.4)
Для оценки профилактических испытаний используют также коэффициент их результативности, равный отношению числа отказов, выявленных при профилактических испытаниях (лПф), к общему числу отказов, обнаруженных во время профилактических испытаний и при работе машины в период между профилактиками (пцф+иРаб):
^пф = ^пфЛ^пФ + ^раб)1(1 -^)
Значения ЭПф и &Пф зависят от промежутка времени между профилактическими испытаниями и объема профилактических испытаний.
Профилактическое обслуживание сопряжено с потерями рабочего времени машины. Эти потери по своему характеру близки к потерям, связанным с устранением отказов.
Поэтому одной из важных эксплуатационных характеристик является проверкопригодность ЭВМ, которую можно оценить средней продолжительностью профилактических проверочных испытаний (Та^).
Введенные выше понятия ремонтопригодности, восстанавливаемости информации и проверкопригодности в совокупности определяют важный комплексный эксплуатационный показатель — обслуживаемость ЭВМ, или степень приспособленности машины к процедурам ее эксплуатационного обслуживания.
Однако приведенные выше оценки этой приспособленности — величины Тв.о, ТВ.С) ТПф — определяют приспособленность к обслуживанию только с точки зрения связанных с обслуживанием потерь рабочего времени машины. Для более полной оценки обслуживаемости ЭВМ необходимо учитывать затраты труда обслуживающего персонала и требования к его квалификации.
Очевидно, что чем выше надежность ЭВМ, тем больше может быть период между профилактическими работами, тем реже возникает потребность в восстановительных работах. Чем меньше тратится машинного времени и квалифицированного труда на профилактику и устранение возникших неисправностей, тем выше степень обслуживаемости ЭВМ.
Для более полной оценки свойств обслуживаемости ЭВМ можно воспользоваться средними значениями затрат на соответствующие операции обслуживания: восстановление работопособности после отказа
^в.о = Тв.о Св.о,(1.6)
восстановление вычислительного процесса (достоверность информации) после сбоя
7в.с = Л.с^.с;(1-7)
профилактические испытания
^пФ ~ Т’лф спф,(1 -8)
где Св.о, Св.с, сПф — средние затраты в единицу времени на оплату труда персонала, привлекаемого соответственно для восстановления работоспособности после отказа, восстановления вычислительного процесса (достоверности информации) после сбоя, проведения профилактических испытаний.
Затраты на процессы обслуживания зависят от оснащенности этих процессов аппаратурными и программными средствами поддержки, позволяющими сократить время выполнения соответствующих процедур и уменьшить трудовые затраты.
Для оценки совокупного влияния на продуктивность работы ЭВМ рассмотренных выше отдельных показателей надежности введем комплексный коэффициент использования
птк
2+ 2 <тв о; + тожу)
1 = 1/ —1
где п, т, k — соответственно число отказов, сбоев и профилактических обслуживаний за рассматриваемый достаточно большой период наблюдения за эксплуатацией (без учета отказов и сбоев во время профилактических испытаний); tt — интервал времени исправной работы между Д—1)-м и 1-м нарушениями функционирования машины из-за отказов; тв.о, и тож/ — время восстановления и время ожидания начала ремонта после /-го отказа; тв.с.г — время восстановления вычислительного процесса после r-го сбоя (время, затраченное на повторное выполнение программы, части программы, команды и т. д.); тк — суммарное машинное время, затраченное в рассматриваемый период на контроль достоверности функционирования ЭВМ (двойной просчет, расчет контрольных вариантов, потери машинного времени на процедуры автоматического контроля пра- 2—27 17
вильности работы ЭВМ и т.п.): тПф$— время, затраченное на s-e профилактическое обслуживание.
В знаменателе (1.9) стоит полное время наблюдения за эксплуатацией ЭВМ. Оно равно сумме интервалов времени между отказами и общего времени, затраченного на их устранение. При этом принято, что при операциях контроля достоверности работы ЭВМ, восстановления достоверности информации и при профилактических проверках машина находится в потенциально работоспособном состоянии, хотя и не используется для полезной работы.
Выражение (1.9) определяет отношение полезного или, точнее, потенциально возможного полезного времени работы машины к общему времени наблюдения за эксплуатацией ЭВМ.
Если не учитывать сбои и их последствия, а также потери времени на контроль достоверности работы машины и на ожидание начала ремонта после отказа, можно получить приводимое в литературе выражение для коэффициента использования
^и - ^оЛ^о + Л.о + тпф),^и - ^оЛ^о + Л.о + тпф),(1.10)(1.10)
^и - ^оЛ^о + Л.о + тпф),
^и - ^оЛ^о + Л.о + тпф),
(1.10)
(1.10)
где тЯф — среднее время профилактики, пересчитанное на один отказ. Приведенное выражение позволяет определить относительное время работоспособного состояния ЭВМ
В технических условиях на ЭВМ обычно указывают коэффициент готовности ЭВМ
^ = ^лК + твД(1.11)
который определяет вероятность пребывания ЭВМ в работоспособном состоянии в любой произвольный момент времени (в период между профилактиками).
Для оценки надежности ЭВМ в условиях эксплуатации (эксплуатационная надежность) надо в знаменатели выражений (ЕЮ), (1.11) добавить ТОж — среднее время ожидания начала ремонта после отказа. Влияние профилактических испытаний на коэффициент готовности рассмотрено в § 2.4.
Между коэффициентами использования и готовности существует соотношение
kH<kP.(1.12)
Помимо рассмотренных следует учитывать эксплуатационные характеристики ЭВМ, перечисленные ниже.
Долговечность ЭВМ — свойство машины при установ-
ленном для нее обслуживании сохранять указанные в технической документации характеристики в течение определенного времени хранения и эксплуатации. При этом сохранностью машины называют свойство ЭВМ сохранять исправное состояние при хранении в условиях, оговоренных технической документацией.
Эксплуатационные ресурсы — это ресурсы, необходимые для нормальной эксплуатации машины: площадь помещений, потребляемая мощность, штат обслуживающего персонала, особые требования к параметрам окружающей среды в помещениях ЭВМ (температура, вентиляция, пы- лезащищенность и др.).
СИСТЕМНЫЙ ПОДХОД ПРИ РАЗРАБОТКЕ КОНЦЕПЦИИ И АППАРАТУРНО-ПРОГРАММНЫХ СРЕДСТВ ОБСЛУЖИВАНИЯ ЭВМ. ТЕХНОЛОГИЯ: НАДЕЖНОСТЬ—ГОТОВНОСТЬ— ОБСЛУЖИВАЕМОСТЬ
В настоящее время приспособленность к обслуживанию ^обслуживаемость^ следует рассматривать как одну из основных характеристик машины, непосредственно влияющих на эксплуатационную надежность, оцениваемую обобщенными показателями — коэффициентами использования и готовности. Действительно, выражение (1.9) показывает, что коэффициент использования зависит не только от таких характеристик надежности, как безотказность и достоверность, но и от основных характеристик обслуживаемости — ремонтопригодности, контролепригодности и про- веркопригодности машины, а также от времени реакции системы обслуживания на вызов для устранения отказа.
Значения показателей надежности и обслуживаемости, входящих в (1.9), должны быть соответствующим образом сбалансированы. Например, при крупносерийном производстве не обладающих достаточной надежностью ЭВМ возникает очень большая нагрузка на систему сервиса и для достижения приемлемых значений коэффициента использования окажется необходимым вкладывать значительные средства и ресурсы в ее расширение. Между тем в подобном случае экономически выгоднее направить дополнительные средства на совершенствование схем и конструкции машины, технологии ее изготовления и методики заводских тренировок и испытаний с целью повышения надежности машины и соответствующего снижения нагрузки на систему сервиса [12].
Разработка концепций, методов и средств обеспечения надежности и обслуживаемости машины должна производиться во взаимной увязке и входить составной и неотъемлемой частью в общий процесс проектирования ЭВМ. Такой подход, подразумевающий пристальное внимание к слабым в отношении надежности и обслуживаемости сторонам создаваемого проекта, тщательный анализ известных и целеустремленную разработку и внедрение новых эффективных методов и средств повышения надежности, готовности и обслуживаемости машины, многие специалисты склонны считать новой технологией проектирования средств вычислительной техники. Такого подхода придерживается, например, фирма IBM, называя его AMS-технологией или /?Л5-системой [100].
Проектирование ЭВМ с учетом технологии «Надежность — Готовность — Обслуживаемость» предполагав г, в первую очередь, борьбу с ошибками ЭВМ, порождаемыми отказами и сбоями. Эта борьба ведется по двум основным направлениям:
повышение надежности аппаратуры путем снижения интенсивности отказов и сбоев за счет применения элек- ронных схем с высокой и сверхвысокой степенями интеграции, входного контроля компонентов, снижения уровня помех, облегченных режимов работы схем, термотренировок аппаратуры, соответствующего ее охлаждения;
повышение готовности путем подавления в определенных пределах влияния отказов и сбоев на работу ЭВМ с помощью средств контроля и коррекции ошибок, а также средств автоматического восстановления вычислительного процесса после ошибок машины, включая аппаратурную избыточность, на основе которой реализуются различные варианты отказоустойчивых архитектур ЭВМ (см. гл. 5).
Важным в рассматриваемой технологии проектирования является признание существенной зависимости основных эксплуатационных характеристик машины (коэффициентов готовности и использования и других параметров) от свойств обслуживаемости ЭВМ и органическое включение разработки систем и средств повышения обслуживаемости в общий процесс проектирования машины.
Следует заметить, что, в сущности, подобный подход к проектированию ЭВМ был осуществлен при разработке
ЭВМ ЕС-1045 [60] и в определенной степени нашел отражение в предыдущем издании этой книги [21].
В настоящее время общепринятым является представление о том, что все сколько-нибудь сложные ЭВМ должны снабжаться комплексом аппаратурно-программных средств поддержки эксплуатации, органически включенных в архитектуру ЭВМ.
Чтобы определить, какие архитектурные свойства и аппаратурно-программные средства должны иметь ЭВМ для обеспечения высокой готовности и обслуживаемости, обратимся к выражению (1.9) для комплексного коэффициента использования.
Знаменатель в (1.9) есть полное время наблюдений за эксплуатацией машины, равное сумме общей продолжи- п тельности работоспособного состояния ЭВМ 5/, и сум- 1—1 маркой продолжительности восстановления после отказов п
с учетом времени ожидания ремонта 2 (тв.о,+тож3).
/=1
В числителе из общего времени работоспособного состояния вычитаются суммарное время, затраченное на контроль правильности работы машины тк, вуммарные потери времени на восстановление вычислительного процес- т
са после сбоев 2 тв.сг и затраты времени на профилакти- Г=1
к
ческие испытания 2 тПф$.
Из (1.9) следует, что для повышения комплексного коэффициента использования следует, с одной стороны, добиваться увеличения среднего времени наработки машины на отказ, а с другой — повышать ремонтопригодность ЭВМ (уменьшать среднюю продолжительность восстановления после отказа) и снижать время простоя в ожидании начала ремонта. Принимаемые для этого технические и организационные мероприятия должны быть обоснованы экономически.
Так, например, значительное уменьшение времени простоя в ожидании ремонта может быть достигнуто при индивидуальном (децентрализованном) обслуживании, если все рабочие смены ЭВМ укомплектовать ремонтными бригадами специалистов и обеспечить наличие полного ЗИП. Однако такой подход во многих сучаях экономически не оправдан, так как экономический эффект от уменьшения
времени простоя может оказаться меньше расходов, связанных с содержанием при ЭВМ большого штата специалистов по эксплуатации машины и полного ЗИП. Решение этого и других подобных вопросов требует системного подхода, учитывающего взаимодействие технических, организационных и экономических сторон эксплуатации машин.
Основное время в процессе восстановления работоспособности после отказа занимает поиск (локализация) неисправности. Эти процедуры в среднем занимают около 60 % общего времени восстановления и требуют высокой квалификации обслуживающего персонала. Поэтому важнейшим средством повышения ремонтопригодности является оснащение ЭВМ средствами автоматического диагностирования (см. гл. 6).
Пользователь должен быть уверен в правильности результатов вычислений и обработки данных на ЭВМ. Если при проектировании не принять специальных мер для обеспечения автоматического контроля правильности работы машины, то осуществлять такой контроль придется пользователю и он будет его производить путем двойного счета или выполнения контрольных вариантов расчета, что приведет к потере фактической производительности машины вследствие увеличения члена тк в числителе формулы (1.9). Вместе с тем сбой или отказ в машине приводит к искажению информации (данных или программы), и если не принять специальных мер, такое искажение может привести к распространению ошибки и в итоге к искажению программ и данных. В результате существенно увеличивается время восстановления достоверности информации, что необходимо для продолжения решения задачи.
Для освобождения пользователя от забот по контролю правильности работы ЭВМ, недопущения распространений последствий сбоев и отказов на программы и данные машину следует снабжать системой автоматического контроля, воспринимающей ошибку ЭВМ практически в момент ее возникновения и препятствующей дальнейшему выполнению программы (см. гл. 4).
Для сокращения потерь времени на восстановление вычислительного процесса после сбоя (восстановление достоверности информации) следует иметь автоматическую систему восстановления вычислительного процесса (см. гл. 5). На эту систему может быть возложено автоматическое повторение неправильно выполненной операции (в разных случаях повторению может подлежать микро-
команда, команда или участок программы) и при безошибочном исходе повторения — восстановление вычислительного процесса.
Системы автоматического контроля и восстановления обеспечивают высокую контролепригодность ЭВМ.
Определение стратегии профилактических работ (периодичности и глубины профилактик) также требует системного подхода. Сокращение промежутков времени между профилактиками, увеличение объема профилактических испытаний, естественно, будет способствовать уменьшению вероятности появления отказов и сбоев в период между профилактиками. Однако проведение профилактических испытаний связано с непроизводительными затратами рабочего времени ЭВМ, а также с затратами труда на эти испытания.
Для повышения проверкопригодности (уменьшения затрат времени и труда на профилактические испытания) ЭВМ оборудуют системой автоматической программноуправляемой профилактики, которая обеспечивает автоматическое изменение уровней вторичных питающих напряжений, частоты и формы управляющих сигналов и автоматическую регистрацию результатов профилактических испытаний, в том числе выдачу сообщений об элементах и узлах, параметры которых находятся вблизи критических значений.
Для повышения эксплуатационной надежности вычислительной установки, принятия обоснованных и своевременных решений о производстве доработок, замене элементов и узлов, в которых развиваются постепенные отказы, важное значение имеет накопление и обработка информации об имевших место отказах и сбоях и о местах их возникновения. Эта задача решается автоматической аппаратурно-программной системой регистрации и обработки данных об отказах и сбоях (см. гл. 14).
Эффективным направлением повышения обслуживаемости ЭВМ общего назначения средней и большой производительности является создание систем дистанционного контроля и диагностирования неисправностей (см. гл. 7).
Системы автоматического контроля, диагностирования и профилактики используются также при заводской и пусковой наладках, восстановлениях после ремонта, в результате чего резко уменьшается время, затрачиваемое на эти процедуры.
Перечисленные выше автоматические системы, поддер-
живающие процессы обслуживания, существенно сокращают затраты на них времени и труда. Учитывая сложность и компактность аппаратуры современных ЭВМ, правильнее будет сказать, что указанные выше автоматические системы делают обслуживание ЭВМ осуществимым. Без этих систем эксплуатация современных ЭВМ была бы практически невозможной.
Разработка концепции обслуживания ЭВМ должна являться органической составной частью начального этапа проектирования ЭВМ, когда определяются основные особенности архитектуры ЭВМ. Исходными данными для разработки концепции обслуживания являются эксплуатационные характеристики ЭВМ, такие как средние времена наработки на отказ и сбой, средние времена восстановления, коэффициенты использования и готовности.
Концепция обслуживания включает в себя представление о форме организации обслуживания (централизованное, индивидуальное, смешанное), составе и характеристиках аппаратурно-программных средств поддержки обслуживания, функциях обслуживающего персонала.
Современная методология проектирования ЭВМ требует, чтобы аппаратурно-программные средства поддержки обслуживания проектировались параллельно с разработкой аппаратурных и системных программных средств ЭВМ.
Глава 2
ЭЛЕМЕНТЫ ТЕОРИИ ЭКСПЛУАТАЦИИ ЭВМ
НЕКОТОРЫЕ СВЕДЕНИЯ ИЗ ТЕОРИИ ВЕРОЯТНОСТЕЙ
Введенные в гл. 1 характеристики далеко не полностью описывают процесс эксплуатации ЭВМ, носящий случайный характер. Так, если встает задача определения вероятности того, что в течение некоторого интервала времени t ЭВМ сохранит работоспособность, то для ее решения надо знать закон распределения случайной величины — времени безотказной работы ЭВМ. Время поиска неисправности, время ремонта отказавшего устройства также являются случайными, поэтому в момент возникновения отказа можно говорить только о вероятности того, что работоспособность ЭВМ будет восстановлена к заданному сроку.
Конечно, определенные организационные и технические
мероприятия могут повлиять на время восстановления ЭВМ, однако оно по-прежнему остается случайным, непредсказуемым (можно говорить только о вероятности того, что восстановление будет закончено к такому-то сроку, а для определения этой вероятности необходимо знание закона распределения случайной величины — времени восстановления) .
Законы распределения случайных величин (интервалов времени между отказами и сбоями, времени восстановления и т .д.) дают исчерпывающую информацию о потоках отказов, сбоев и восстановлений (в частности, зная их, можно определить и введенные в гл. 1 характеристики).
Таким образом, отказы ЭВМ, завершения поиска неисправности, окончания ремонтных работ и т. д. — это случайные события, которые в течение некоторого интервала времени могут произойти или не произойти; предсказать заранее момент наступления случайного события невозможно.
Однако это не означает, что персонал, обслуживающий ЭВМ, не может определенным образом прогнозировать поведение ЭВМ в процессе эксплуатации и принимать своевременно меры для поддержания ее в работоспособном состоянии.
Существуют методы оценки (с помощью системы численных показателей) надежности ЭВМ, основанные на случайном (вероятностном) характере поведения вычислительной машины в процессе эксплуатации.
При этом создается математическая модель процесса эксплуатации ЭВМ как сложной системы, подверженной влиянию случайных факторов. Очевидно, что математическая модель процесса эксплуатации ЭВМ должна основываться на методах теории вероятностей. Так, законы распределения случайных величин (времени безотказной работы, поиска неисправности, ремонта и др.) задают в совокупности математическую модель процесса эксплуатации ЭВМ на языке теории вероятностей, а порознь — модели отдельных эксплуатационных явлений.
Поэтому в теории эксплуатации ЭВМ широко используются понятия и методы теории вероятностей. Рассмотрим кратко некоторые сведения из теории вероятностей.
Введем понятие вероятности события — численной меры объективной возможности случайного события, обозначаемой как Р(Л), где А— случайное событие. Вероятность
события равна 1, если оно всегда наступает в результате испытания (события, которое можно заранее предсказать); это событие называют достоверным. Вероятность события равна 0, если оно никогда не может произойти в результате проведения испытания (невозможное событие). Таким образом, для случайного события 0<Р(А)<1.
В результате одного испытания может наступить и не одно случайное событие. Полной группой событий называют несколько событий, одно из которых обязательно должно иметь место в процессе испытания. Если несколько событий никогда не могут появиться одновременно в процессе испытания, то это несовместимые события.
Вероятность события может быть оценена из рассмотрения возможных результатов испытания. Так, если имеется п различных исходов испытания, причем все они равновозможны, то вероятность Р(А) события А
Р (А) = прп, (2.1)
где т — число исходов испытания, которые означают, что наступило событие А. Предположение о равновозможно- сти исходов может вводиться, например, из соображения симметрии.
Для широкого круга явлений частота появления определенного события в серии независимых испытаний, проведенных при однотипных условиях, подчиняется устойчивым закономерностям: отношение т!п, где п — число проведенных испытаний, а т — число появлений события А при достаточно больших п, во многих случаях сохраняет почти постоянное значение. При этом большие отклонения появляются тем реже, чем больше п. Величину т[п называют статистической вероятностью события А. Из сказанного следует, что статистическая вероятность при увеличении числа испытаний стремится к некоторому значению, которое и принимают равным вероятности события А.
Например, если в течение периода эксплуатации ЭВМ возникает несколько типов отказов (событий различного типа), то, подсчитав за достаточно длинный интервал времени общее число отказов п и число тд отказов данного типа (событие А), можно определить вероятность события А как
Р (А) = т^п. (2.2)
Если события А и В несовместимы, то вероятность события, состоящего в появлении хотя бы одного из событий
А или В (так называемой суммы событий А и В), определится выражением
Р(Л + Д = Р(Л) + ^(В),(2.3)
где Р(Л), Р(В) —вероятности появления событий Л и В соответственно.
Если события совместимы, то
Р(Л + В) = Р(Л) + Р(В) — Р(АВ), (2.4)
где Р(ЛВ)—вероятность одновременного появления событий Л и В (произведения событий).
Если появление события А влияет на вероятность появления события В, то говорят, что данные события зависимы. Условной вероятностью Р(ЛВ) называют вероятность появления события А с учетом того, что событие В имело место, причем
Р(ЛВ) =Р(Л)Р(ВЛ);(2.5)
Р(ЛВ) =Р(В)Р(ЛВ).(2.6)
Если события независимы, то
р (АВ) — Р(А)Р (В).(2.7)
Эти правила могут быть обобщены и на случай нескольких событий.
В процессе эксплуатации эффективность функционирования ЭВМ можно оценивать по числу отказов определенного типа, по времени, прошедшему от момента отказа до окончания ремонта, по времени от момента окончания ремонта до момента следующего отказа и т. д. Другими словами, для описания процесса эксплуатации можно использовать случайные величины различного рода: дискретные (такие как число отказов) и непрерывные (такие как длительность восстановления или время между отказами). Случайная величина описывается соотношениями между значениями случайной величины и вероятностями их появления. Эти соотношения задаются законом распределения случайной величины.
Так, задать закон распределения дискретной случайной величины X означает перечислить все ее возможные значения хь х2... (их может быть конечное и счетное множество) и соответствующие им вероятности появления Ру, Р^
р. = р {X = xj, i = 1, 2, ... ,
причем
SP, = 1.(2.8)
Описать аналогично непрерывную случайную величину невозможно. Можно говорить только о вероятности того, что значение непрерывной случайной величины X не будет больше х;
Р^ = Р^Х<х^,(2.9)
где F (х) —функция распределения вероятностей для случайной величины X.
Очевидно, что какой бы ни была случайная величина X, F(—оо)=0, р(4*оо) = 1. В теории эксплуатации ЭВМ приходится иметь дело только со случайными величинами, определенными на интервале [0, оо]; для них F(0)=0, р(оо) = 1.
Если случайная величина X может принимать только значения из конечного интервала [а, й], то говорят, что X имеет усеченное распределение.
Для описания непрерывной случайной величины используется также плотность распределения вероятностей t(x'), представляющая собой производную от функции распределения F(x'):
(2.10) откуда
F (х) = J f (ц) du.(2.11)
График Цх) называется кривой распределения вероятностей.
Вероятность попадания случайной величины X в интервал [х, х+Ах] приближенно равна ^х^Хх.
Вероятность попадания X в интервал (а, й) выражается формулой
6
Р ^а < X < й} = f Ш dx = F (й) — F (а),(2.12)
причем так как Р (А = а) = 0, то
Р^а<Х<Ь^ = Р^ — Р(аУ(2.13)
Иногда для определения вероятностных характеристик процесса эксплуатации ЭВМ необходимо отыскивать закон распределения функции случайных величин, например 28
закон распределения суммы двух независимых случайных величин X и Y. Если плотности распределения случайных величин X и У соответственно /Дх) и /Ду), то плотность распределения g(z) случайной величины Z=X+Y может быть определена по одной из формул [2]
g (?) = J fi (x) h (z — x) dx;(2.14)
—oo
00
g(z) = J /2 (y) fl (z — У) dy.(2.15)
Все множество значений, которые может принять случайная величина из области определения, называется генеральной совокупностью.
Генеральная совокупность значений случайной величины кроме закона распределения характеризуется рядом числовых величин, таких как момент (начальный и центральный) r-го порядка.
. Начальным моментом r-го порядка непрерывной случайной величины (а именно такими величинами являются времена между отказами и времена восстановления) называется величина, определяемая выражением [2]
ссДХА = J xr f (х) dx,(2.16)
где Дх)—плотность распределения вероятностей случайной величины х; аДХ] — r-начальный момент.
С понятием центрального момента связано понятие центрированной случайной величины
Х^Х — оцШ,(2.17)
где аДХ]— математическое ожидание величины X, которое обычно обозначается Л4[Х].
Центрированная случайная величина X* показывает отклонение X от ее математического ожидания.
Центральным моментом r-го порядка цг называется величина, определяемая формулой
цг = J (х — ХЦХ])'Дх)сЦ.(2.18)
Для описания генеральных совокупностей кроме матема-
тического ожидания используют центральные моменты второго — четвертого порядков.
Центральный момент второго порядка, называемый дисперсией случайной величины, определяется формулой
D\X\ = fW — MlX^dx.(2.19)
Дисперсия характеризует степень отклонения значений случайной величины от ее математического ожидания. Величина
ох = Утх\
называется средним квадратическим отклонением; эта величина используется наряду с ДЩ. Безразмерный коэффициент вариации, определяемый как отношение среднего квадратического отклонения к математическому ожиданию, численно определяет степень отклонения случайной величины от математического ожидания.
Отношение центрального момента третьего порядка к кубу среднего квадратического отклонения называется коэффициентом асимметрии
Пз = Из^Л(2-20)
который используется для описания формы кривой плотности распределения вероятностей.
Для той же цели используют и так называемый коэффициент эксцесса
^=р^.(2.21)
Рассмотрим законы распределения случайных величин, наиболее широко используемые в теории эксплуатации ЭВМ.
Для описания дискретных случайных величин используются законы распределения вероятностей, приведенные ниже.
Дискретное пуассоновское распределение с параметром X:
Р(Х = й} = -^-е~\ 0<й<оо,(2.22)
где й — целое число.
Для пуассоновского распределения математическое ожидание, дисперсия и центральный момент третьего порядка равны X, а коэффициент вариации равен 1/У'Х.
Геометрическое распределение с параметром р$
Р^Х = Ц = (1 — pf-1 р, 1 <&<оо,(2.23)
где й — целое число; 0<р< 1.
Математическое ожидание случайной величины X, имеющей геометрическое распределение, равно 1/р, дисперсия (1—pW, коэффициент вариации V1—р.
Если дискретная случайная величина является усеченной, принимающей значения, например, в интервале 0^ ^Х^п, то возможно применение биномиального распределения, задаваемого выражением
Р {X = й} = С* pk (1 — pf~\(2.24)
где к — целое число; 0<р<1.
Математическое ожидание случайной величины, имеющей биномиальное распределение, равно пр, дисперсия пр^Л—ц), коэффициент вариации "И (1 — р}1рп .
Иногда используется и дискретное равномерное распределение для случайных величин, определенных на интервале а^Х^а + Ь—1; в этом случае вероятность того, что 'случайная величина примет значение, равное k(a^k^a-V- -\-Ь—1), равно \[b. Математическое ожидание такой случайной величины равно а+ (Ь—1)/2, дисперсия (й2—1)/12.
Для описания непрерывных случайных величин широко используются законы распределения вероятностей, приведенные ниже.
Экспоненциальное распределение с плотностью
f (х) = Хе-Хх , х > 0,(2.25)
где X— параметр распределения, связанный с математическим ожиданием и дисперсией выражениями
ЛИХ] = Ш и D(X)= 1/Ха.(2.26)
Особенностью экспоненциального распределения является то, что коэффициент вариации этого распределения равен 1. Графики f(x) и F(x) для экспоненциального распределения приведены на рис. 2.1.
Распределение Эрланга k-го порядка с плотностью
/ U) = -^^ ■ еАх , X > 0,(2.27)
где к~^\ —целое число, а параметр X связан с математическим ожиданием выражением:
MlXMlk(2.28)
г (а)г (а)х>0,х>0,(2.30)(2.30)
г (а)
г (а)
х>0,
х>0,
(2.30)
(2.30)
Рис. 2.1. Плотность/(х) и функция F(x) для экспоненциального распределения (Х=1)
Легко заметить, что при 6 = 1 имеем экспоненциальное распределение.
Можно показать, что случайная величина, имеющая эрлан- говское распределение, может рассматриваться как сумма к случайных величин, имеющих
экспоненциальное распределение с параметром л. Другими словами, если в потоке событий длительность интервалов между моментами возникновения событий будет иметь эрлан- говское распределение, то такой поток событий можно рассматривать как поток, полученный путем регулярного прореживания пуассоновского потока (удаления подряд следующих к—1 событий).
Эрланговское распределение времени между событиями при k> 1 характеризуется меньшей дисперсией, чем при экспоненциальном распределении. Его дисперсия
(2.29)(2.29)D [X] = Ж2.
(2.29)
(2.29)
Графики f(x) и F(x) для эрланговских распределений при различных к приведены на рис. 2.2, а, б.
Гамма-распределение с параметрами а и %, определяемое плотностью
гдеГ(а)= fe “и” 1 du — гамма-функция; а>0 — параметр б
формы.
Математическое ожидание случайной величины То, имеющей гамма-распределение, определяется формулой
а дисперсияа дисперсияМ [XI = Ж,D[X] = 1//а.М [XI = Ж,D[X] = 1//а.(2.31)(2.32)(2.31)(2.32)
а дисперсия
а дисперсия
М [XI = Ж,
D[X] = 1//а.
М [XI = Ж,
D[X] = 1//а.
(2.31)
(2.32)
(2.31)
(2.32)
При целых а^1 гамма-распределение совпадает со специ- 32
Рис. 2.2. Плотность f(x) и функция F^x) распределения Эрланга второ-Рис. 2.2. Плотность f(x) и функция F^x) распределения Эрланга второ-Рис. 2.3. Плотность f(x) и функция F(x) гамма-распределения (а = 1,5; Х= 1)Рис. 2.3. Плотность f(x) и функция F(x) гамма-распределения (а = 1,5; Х= 1)Рис. 2.4. Плотность f(x) и функция F(x) распределения Вейбулла (а = 2; Х=1)
Рис. 2.2. Плотность f(x) и функция F^x) распределения Эрланга второ-
Рис. 2.2. Плотность f(x) и функция F^x) распределения Эрланга второ-
Рис. 2.3. Плотность f(x) и функция F(x) гамма-распределения (а = 1,5; Х= 1)
Рис. 2.3. Плотность f(x) и функция F(x) гамма-распределения (а = 1,5; Х= 1)
альным распределением Эрланга. Графики f(x) и F(x) гамма-распределения приведены на рис. 2.3.
Распределение Вейбулла с параметрами а и X, задаваемое плотностью
f (х) = сА (ах)а-! ехр {—(Xxf\, х>-0,(2.33)
где а>0— параметр формы распределения.
Математическое ожидание в этом случае определяется выражением
М [X] = Г ((а + 1)/а)А,(2.34)
33333—27
33
33
дисперсия
D[X] = (г /^^I \ ctD[X] = (г /^^I \ ct(2.35)(2.35)
D[X] = (г /^^
I \ ct
D[X] = (г /^^
I \ ct
(2.35)
(2.35)
Функция распределения для закона Вейбулла записывается в виде
F (х) = ехр {— (Хх)"},(2.36)
откуда следует, что распределение Вейбулла может быть получено из экспоненциального распределения путем степенного преобразования масштаба времени. Графики плотности распределения /(х) и функци распределения F(x) для случая распределения Вейбулла приведены из рис. 2.4.
Нормальное распределение, определяемое плотностью
f(x) =5ехр/————оо<х<оо, (2.37)
у^о I 202 Г
где т=М[Х]— первый параметр распределения; а — среднее квадратическое отклонение.
Графики f(x) и F(x) нормального распределения для Л1[Х]=0, о=1 [это распределение называется нормированным и обозначается Х(0,1)] приведены на рис. 2.5.
Рис. 2.5. Плотность f(x) и функция F(x) нормированного N (0,1) нормального распределенияРис. 2.5. Плотность f(x) и функция F(x) нормированного N (0,1) нормального распределенияРис. 2.6. Плотность f(x) и функция F(x) логарифмически- нормального распределенияРис. 2.6. Плотность f(x) и функция F(x) логарифмически- нормального распределения
Рис. 2.5. Плотность f(x) и функция F(x) нормированного N (0,1) нормального распределения
Рис. 2.5. Плотность f(x) и функция F(x) нормированного N (0,1) нормального распределения
Рис. 2.6. Плотность f(x) и функция F(x) логарифмически- нормального распределения
Рис. 2.6. Плотность f(x) и функция F(x) логарифмически- нормального распределения
Логарифмически-нормалъное распределение
t W - —= ехр (-х < 0,(2.38)
где m>0— параметр формы, связанный с математическим ожиданием случайной величины х соотношением
M[X] = lnm.(2.39)
Дисперсия логарифмически-нормального распределения
D[X] — nPwKw — 1),(2.40)
да = exp {ст2/2}.(2.41)
Графики f(x) и F(x) логарифмически-нормального распределения приведены на рис. 2.6.
Кроме перечисленных распределений могут использоваться и другие, в частности композиции из нескольких распределений (см., например, [2]).
Остановимся дополнительно на экспоненциальном распределении, играющем исключительно важную роль в теории эксплуатации ЭВМ, так как это распределение связано с таким важным понятием, как пуассоновский поток событий.
Потоком событий называется последовательность событий, наступающих одно за другим в случайные моменты времени.
Пуассоновский поток событий — поток, для которого длительность интервалов между событиями является случайной величиной, имеющей экспоненциальное распределение, задаваемое выражением (2.25), в котором параметра интерпретируется как интенсивность потока событий.
Важное свойство пуассоновского потока событий заключается в том, что вероятность появления нового события в течение интервала времени Nt определяется только длиной интервала Nt и интенсивностью потока событий К, но не зависит от предыстории, т. е. от того, сколько и когда произошло событий в прошлом. Таким образом, для пуассоновского потока характерно отсутствие последействия.
Промежутки времени между моментами наступления событий в пуассоновском потоке — независимые случайные величины, а вероятность Pk(t) того, что за время [0, /] наступит точно к событий, определяется выражением
Рк^ = -^е"м.(2.42)
КА
Другими словами, дискретная случайная величина — число наступивших событий, например число отказов ЭВМ в течение интервала времени t, — определяется дискретным
распределением Пуассона с параметром XI (математическим ожиданием числа отказов, равным V). Данное свойство характеризует пуассоновский поток как стационарный. Отметим следующие свойства пуассоновского потока.
Пуассоновский поток ординарен — вероятность двух событий и более в момент времени t практически равна
нулю.
При случайном прореживании пуассоновского потока с интенсивностью X, когда с вероятностью а наступившее событие оставляется, а с вероятностью 1—а отбрасывается, получается пуассоновский поток с интенсивностью аХ.
При наложении ft независимых пуассоновских потоков с интенсивностями Хй t=l, к образуется пуассоновский к
поток с суммарной интенсивностью X = ^ ^i-
i=i
Остаток времени от случайно взятой точки до ближайшего события в пуассоновском потоке с интенсивностью X есть случайная величина, имеющая экспоненциальное распределение с тем же параметром X.
МОДЕЛИ ПОТОКОВ ОТКАЗОВ И СБОЕВ
Под аналитической моделью некоторого процесса понимают совокупность математических зависимостей, описывающих его протекание с подробностью и точностью, соответствующей решаемой задаче исследования процесса. Поведение ЭВМ при эксплуатации зависит от ряда случайных факторов, таких как возникновение отказов, сбоев, восстановление работоспособности машины.
В § 2.2—2.4 рассматриваются модели отдельных процессов, влияющих на эксплуатационные характеристики ЭВМ.
Безотказность аппаратуры зависит от времени ее функционирования (кривая 1 на рис. 2.7). В начале периода функционирования на этапе обнаружения и исправления ошибок проектирования и производственных дефектов интенсивность отказов аппаратуры уменьшается со временем. Затем в течение большей части срока службы она остается примерно постоянной. Именно этот период эксплуатации представляет наибольший интерес. В конце срока службы интенсивность потока отказов значительно увеличивается вследствие износа аппаратуры. Особенности зависимости безотказности программных средств от времени (кривая 2 на рис. 2.7) обсуждаются в гл. 3.
Рассмотрим основные характеристики потока отказов, базирующиеся на законе распределения интервала времени между отказами.
ВремяВремяРис. 2.7. Зависимость интенсивности отказов от времени эксплуатации аппаратурных (7) и программных (2) средствРис. 2.7. Зависимость интенсивности отказов от времени эксплуатации аппаратурных (7) и программных (2) средствОсновной характеристикой является вероятность безотказной работы ЭВМ P(t) — вероятность того, что ЭВМ сохранит работоспособность до момента времени t. Если F(t')—функция распределения времени безотказной работы ЭВМ То, то вероятность безотказной работы Р(/) — это функция, дополнительная к
Время
Время
Рис. 2.7. Зависимость интенсивности отказов от времени эксплуатации аппаратурных (7) и программных (2) средств
Рис. 2.7. Зависимость интенсивности отказов от времени эксплуатации аппаратурных (7) и программных (2) средств
P^ = P^T0>q = l-F^, (2.43) причем Р(0) = ,1; Р(оо) = О, т. е. в момент начала эксплуатации с вероятностью 1 ЭВМ исправна, при завершении
срока эксплуатации ЭВМ практически непригодна к использованию.
Функцию F(t) в литературе по надежности часто называют вероятностью отказа, а также функцией ненадежности или функцией риска и обозначают Q(ty.
Q(t) = 1 — Р (t) — F (t).(2.44)
Используя функцию распределения F(t), можно определить такой параметр, как среднее время безотказной работ ы:
To = M\ToA = ^tf(t)dt,(2.45)
о
где f(t)=dF(t)]dt — плотность распределения случайной величины То.
С помощью P(t) можно оценить также и среднее число элементов (устройств) ЭВМп(^), которые откажут за интервал времени М:
n(t) = N0P(t)—NnP(t + M),(2.46)
где No — число исправных элементов (устройств) ЭВМ в начале ее эксплуатации.
Введем понятие интенсивности отказов Х(/) как условную плотность распределения вероятностей времени до воз-
никновения отказа при условии, что до момента времени t отказа не было.
Таким образом, вероятность того, что первый отказ произойдет в интервале времени t<T<t-VM,
Р {/ < т <
CZ + А^| Г > 0 = [Р (0 — Р (/+ А01/Р (0 ~
« А (0 А/(2 47)
Аналогично
[Е(/ + АО — F (01/Р (0 ~ МО А/,(2.48)
откуда
А (0 =— (dPldt)IP (0,(2.49)
или
A(0 = (dP(0WP(0-(2-50)
Из (2.49) получаем
(11
Р (/) = expj — J Л, (r)dr + С.(2.51)
1 о1
Постоянную С можно найти, воспользовавшись начальными условиями при /=0; Р (0) = 1, откуда С=0.
Таким образом, вероятность безотказной работы связана с интенсивностью отказов 1^ выражением
(2 52)(2 52)(2 53)(2 53){/■
(2 52)
(2 52)
(2 53)
(2 53)
— JA (x)dxо,
или
— In Р (О = J А (х) du.о
Если интенсивность отказов A=const, то можно показать, что
То = ЛНТ0] = Ш.То = ЛНТ0] = Ш.(2.54)(2.54)
То = ЛНТ0] = Ш.
То = ЛНТ0] = Ш.
(2.54)
(2.54)
Другими словами, А — среднее число отказов в единицу времени.
Приведенные результаты еще раз подчеркивают важность экспоненциального распределения в теории эксплуатации ЭВМ, поскольку, как отмечалось выше, для основных режимов функционирования ЭВМ (исключая период первичной приработки и периоды физического износа уз-
лов и элементов) предположение X(/)=const практически выполняется.
ЭВМ состоит из большого числа подсистем—отдельных устройств, таких как процессоры, каналы, внешние устройства и т. д. В свою очередь каждая из этих подсистем (устройств) ЭВМ состоит из отдельных логических элементов (интегральных микросхем), расположенных на различных типовых элементах замены (ТЭЗ).
Число ТЭЗ в устройствах, как и число логических элементов на разных ТЭЗ, различно. Имеются различия в режимах работы ТЭЗ и устройств в целом. Это обусловливает неравномерность выхода из строя устройств ЭВМ: каждое устройство характеризуется своей интенсивностью отказов Х(, i=l, N, где N — число типов устройств ЭВМ.
Если время безотказной работы i-ro устройства ЭВМ есть случайная величина, имеющая экспоненциальное распределение с параметром Xt, то вероятность его безотказной работы за время /
t
Р, (/) = 1 — J xt е~^ dT =•(2.55)
о
Будем считать, что события — отказы устройств различного типа — независимы между собой, тогда вероятность безотказной работы ЭВМ
Р (0 = П Pi №,(2.56)
1=1
где P,(t) — вероятность отказа устройства г-го типа за время t; N — число устройств в составе ЭВМ.
На основании (2.55) получаем
Р(0 = ПЛ (О = П^' = ехр[- t £ J. (2.57) Z = 1i—1I Z~1 J
Нетрудно заметить, что формула (2.57) отражает одно из свойств пуассоновского потока: при наложении нескольких пуассоновских потоков снова имеем пуассоновский поток с интенсивностью, равной сумме интенсивностей отдельных потоков.
Рассмотрим, как можно вычислить вероятность безотказной работы, если известна функция распределения времени наработки на отказ отдельных устройств ЭВМ. Очевидно, что если ЭВМ содержит N устройств, то для нерезервированной ЭВМ выход одного устройства из строя озна-
чает отказ ЭВМ в целом. Другими словами, если через Tot обозначить случайную реализацию времени наработки на отказ Его устройства, то случайная реализация времени наработки на отказ ЭВМ в целом
To = min=_ToZ. (2.58)
Так как T0>t только в том случае, если TOi>t, i=l, N, то вероятность безотказной работы ЭВМ
P{To>t) = P {Toi > /, i = MV} = П (1 - Fot (0)-(2.59)
Для упрощения можно считать, что надежность всех устройств ЭВМ одинакова; более того, так как время наработки на отказ одного устройства значительно больше времени наработки на отказ ЭВМ в целом, в первом приближении можно считать, что при малых tFol (t) «М“(а>0). Тогда при достаточно больших N и одинаковых FOAA
Р {70 > t\ = (1 - Fni (0" « exp (- NFol (0) = ехр {- NXH •
(2.60)
Введем в рассмотрение случайную величину То = T0/kN, где йм — нормирующая константа, выбранная таким образом, чтобы То имело предельное распределение при jV—хоо [42]:
Р\Т*о> /} =Р\ТО> feNt\ «ехр{— ШгкА\. (2.61)
Если положить kN= (Ж) -1/а, то будем иметь
P\T*o>t\«e^ {—/“}.(2.62)
Таким образом, нормированная величина ^NXy!aT0B качестве предельного имеет распределение Вейбулла.
Полученные выражения позволяют оценить вероятность безотказной работы ЭВМ в течение заданного интервала времени.
Выше были рассмотрены простейшие модели потока отказов ЭВМ в предположении, что интервалы между моментами появления отказов являются одинаково распределенными случайными величинами.
Модели потоков сбоев
Сбои — кратковременные и самоустраняющиеся нарушения нормальной работы ЭВМ, так же как и устойчивые отказы, появляются в случайные моменты времени.
Подобно случайной величине — интервалу между моментами появления отказов Та— можно говорить о том, что интервал времени между сбоями Тй есть случайная величина, задаваемая функцией распределения Fz(t) = =P{Tz<t} или плотностью распределения /с (0 = dFz ^[dt. В этом случае среднее время наработки на сбой будет определяться как математическое ожидание случайной величины Тс, заданной функцией распределения Fz(t).
Появление сбоев в процессе выполнения программ обусловливает увеличение общего времени решения, так как при обнаружении сбоя схемами контроля ЭВМ некоторое время тратится на восстановление правильности информации и повторение операции (части или всей программы в целом).
В целом простейшие модели потоков сбоев аналогичны моделям потоков отказов; различие состоит только в законах распределения случайной величины — интервала между моментами появления сбоя (в частности, различны математическое ожидание и дисперсия случайных величин — интервалов между отказами и сбоями).
МОДЕЛИ ПОТОКОВ ВОССТАНОВЛЕНИЯ
Большинство ЭВМ, как отмечалось в гл. 1, являются восстанавливаемыми системами. Время восстановления 7В о работоспособного состояния ЭВМ после наступления устойчивого отказа — величина случайная, характеризуемая функцией распределения
F,o(n = P{TB.o<0 (2.63)
или плотностью распределения
U^ = dFeo№. (2.64)
По аналогии с интенсивностью отказов Х(/) вводится интенсивность восстановления цв.о(0 —условная плотность распределения вероятностей времени до восстановления ЭВМ при условии, что до момента времени t работоспособность ЭВМ восстановлена не была.
В ряде случаев время восстановления (суммарное время работы обслуживающего персонала по поиску неисправности, замене отказавшего элемента и проверке работоспособности с помощью специальных тестов) можно считать случайной величиной, имеющей экспоненциальное распределение с постоянной интенсивностью цв.о(0 =const,'тогда
(2.65)
В этом случае среднее время восстановления
Тв 0 = М [T^J = ? /Ив.о е^в-о ' dt = _L_ ,(2.66)
иРв.о
т. е. интенсивность восстановления — величина, обратная математическому ожиданию времени восстановления.
При появлении отказа в ЭВМ невозможна мгновенная замена отказавшего элемента, так как время поиска и замены ТЭЗ (не говоря уже о замене логического элемента в ТЭЗ) случайно или отлично от нуля.
В самом простейшем случае, когда численность обслуживающего персонала такова, что поиск неисправности и ее устранение начинаются практически сразу после ее возникновения, основной характеристикой восстановления ЭВМ является вероятность того, что работоспособность ЭВМ будет восстановлена за заданное время V, эта вероятность определяется по (2.63).
Случайная величина Тв.о представляет собой, как отмечалось ранее, сумму двух случайных величин: времени поиска причины отказа /п и времени его устранения (замены ТЭЗ) с учетом времени проверки работоспособности ЭВМ после ремонта /у:
Л.О =4 + ЧW
Функция плотности распределения Тв.о может быть найдена по формуле композиции законов распределения (2.14):
/в.о(0 = рп(«)М*“«)^(2.68)
о
где fn(0, 0(0—плотности распределения времен поиска и устранения отказа.
Если предположить, что /п и /у — случайные величины, имеющие экспоненциальные распределения с одним и тем же параметром цв.о, то
fB.o(0 = J Цв.ое'^.о^в.оЕ-^Мт — ^ofc-HB.o< . (2.69) о
Как следует из (2.69), время восстановления имеет эр- ланговское распределение второго порядка. Данный факт имеет достаточно простую физическую интерпретацию: в силу сложности устройств ЭВМ вероятность восстановления ЭВМ за очень малое время практически равна нулю. Прак- 42
тически равна нулю и вероятность длительной работы по восстановлению, так как современные ЭВМ снабжаются развитой системой диагностики и укомплектованы ЗИП.
Функция распределения времени восстановления при )в.о(0> определенной (2.69), имеет вид
F W = $ U.o (т) ат _ 1 - (1 + 2t/TBJ е"^ , (2.70) о
причем у.в.о = УТв.о — интенсивность восстановления; Тв.о — среднее время восстановления.
Рассмотрим, каким образом может быть определен коэффициент готовности ЭВМ с учетом интенсивностей потока отказов и восстановлений. Сделаем предположение о том, что длительность интервалов работы ЭВМ между моментами появления отказов есть случайная величина, имеющая экспоненциальное распределение с параметром Хо, а длительность восстановления — экспоненциально распределенная случайная величина с параметром рв.о- Будем считать, что ремонт (устранение отказа) начинается сразу после наступления отказа (это можно интерпретировать так: время поиска включено во время ремонта). После окончания ремонта ЭВМ сразу приступает к выполнению заданий.
Таким образом, ЭВМ может находиться в двух состояниях: работоспособном и неработоспособном, когда проводится восстановление. Обозначим эти состояния соответственно символами е0 и еь
Пусть вероятности нахождения ЭВМ в состояниях ео и £1 обозначены как Ро(О и Р\ЦУ Если ЭВМ исправна в момент времени / = 0, то Ро(О) = 1, Р\ (0) =0.
Для определения аналитической зависимости Po(t), P\(t), от времени вычислим вероятность того, что ЭВМ будет находиться в состоянии е0 в момент времени /+Д/, где Д/ — малый интервал времени.. -
Если в момент времени / ЭВМ находилась в состоянии Со, то она в течение времени Д/ останется в этом состоянии с вероятностью е~х«А/ Ро(О- Если в момент времени t ЭВМ находилась в состоянии еь то за интервал времени М она перейдет в состояние е0 с вероятностью (1—е^во^Р^ (^). Таким образом, можно записать
PQ (/ + А/) = е-м‘ Р6 I -В (1 — е-»в.оА') р^ ((у
С учетом того, что при малых М е-М<«(1—ХоЛО.
е ^в o^z « (1—цв.оДО, имеем
РД*4-М)-РЛГ)-ХгЛФгу4-^(2.71)
Преобразовав (2.71), получим
[Ро (/ + Д/) _ Ро (/)]/Д/Хо Рй ^ + цв.о Рг (/),(2 72)
что при Д^—>0 дает следующее дифференциальное уравнение Колмогорова:
dP0 (tydt — 7, Ро (I) + цв.о Pv (Г).(2.73)
Так как для любого момента времени t выполняется равенство
P0^ + P^ = l,(2.74)
уравнение (2.73) может быть переписано в виде
dP. (tydt =- (70 + Цв.о) Ро ^ + Нв.о- (2-75)
Уравнение (2.75) описывает процесс эксплуатации ЭВМ, на функционирование которой оказывают влияние потоки отказов и восстановлений. Его аналитическое решение имеет следующий вид:
Ро^ =— [ 1 — e-(xo+uB.o)z ] + Рй^е-^^.0У , (2.76)
7» + Цв.о
где Ро(О) = 1.
Нетрудно заметить, что при t-*-oo полученное выражение стремится к пределу, равному по — стационарной (установившейся) вероятности нахождения ЭВМ в состоянии eq:
л0 = Пт Ро (о = Цв.о% + Вв.о).(2.77)
Используя (2.74), получаем стационарную вероятность
Л! = Иш РА (0 = Х^^ + цв.о).(2.78)
Стационарная вероятность ло есть не что иное, как доля времени работоспособного состояния машины или, другими словами, коэффициент готовности. Действительно,
Ло == -"'в”= г = ^г.(2.79)
М+Цв.о 1/То+1/Тв.о Тв-о+Го
Восстановление после сбоев
Время восстановления после сбоя TVc складывается из времени идентификации ошибки как сбоя, времени фиксации сбоя (с целью накопления статистики о сбоях) и вре-
мени автоматического рестарта. Время восстановления после сбоя можно считать случайной величиной, задаваемой функцией распределения FB.C (/) =Р^Тв.с«У Среднее время восстановления после сбоя в этом случае оценивается как математическое ожидание случайной величины Тв с, заданной функцией распределения РВДГ).
МОДЕЛЬ ПРОФИЛАКТИЧЕСКИХ ИСПЫТАНИЙ.
ВЛИЯНИЕ ПЕРИОДИЧНОСТИ ПРОФИЛАКТИЧЕСКИХ ИСПЫТАНИЙ НА КОЭФФИЦИЕНТ ГОТОВНОСТИ ЭВМ С ЧАСТИЧНЫМ КОНТРОЛЕМ
Профилактические испытания наряду с выявлением и заменой элементов с параметрами, близкими к предельным, имеют целью также выявление отказов в оборудовании, не охваченном контролем или не участвующем в вычислительном процессе.
Возможность необнаруженных отказов всегда имеется в ЭВМ, так как невозможно охватить контролем всю аппаратуру. Это приводит к ухудшению достоверности функционирования машины.
Достоверность работы ЭВМ с частичным контролем может быть повышена путем периодических профилактических испытаний не охваченной контролем аппаратуры ЭВМ.
Для правильного выбора периода профилактических испытаний необходимо проанализировать его влияние на коэффициент готовности ЭВМ.
Рассмотрим поведение ЭВМ с частичным контролем при отсутствии и наличии периодических профилактических испытаний.
Примем, что интервалы времени между моментами возникновения отказов в аппаратуре ЭВМ и время, расходуемое на профилактические испытания тПф и на устранение этих отказов Тв.о— случайные величины, распределенные по экспоненциальному закону, причем интенсивности потоков отказов, профилактических испытаний и восстановлений равны соответственно Хо, цПф и цво.
При принятых предположениях случайный процесс смены состояний ЭВМ является марковским.
На рис. 2.8 приведен граф состояний ЭВМ с частичным контролем при отсутствии периодических профилактических испытаний. Предполагается, что в охваченном контролем оборудовании отказы обнаруживаются сразу после их возникновения и начинается ремонт. Для перевода ЭВМ в ре-
монт после не обнаруживаемого схемами контроля отказа необходим второй обнаруживаемый отказ.
В силу предположения об экспоненциальных распределениях времен нахождения ЭВМ во всех состояниях, приведенных на рис. 2.8, можно записать систему уравнений Кол-
Рис. 2.8. Граф состояний ЭВМ с частичным контролем при отсутствии периодических профилактических испытаний:О —- работоспособное состояние; 1 —- состояние обнаруженного отказа; 2 — состояние необнаруженного отказа; g — доля аппаратуры, охваченной контролемРис. 2.8. Граф состояний ЭВМ с частичным контролем при отсутствии периодических профилактических испытаний:О —- работоспособное состояние; 1 —- состояние обнаруженного отказа; 2 — состояние необнаруженного отказа; g — доля аппаратуры, охваченной контролемРис. 2.9. Граф состояний ЭВМ с частичным контролем при наличии периодических профилактических испытаний:0—2 — то же, что на рис. 2 8; 5 — состояние выполнения профилактических испытаний; 4 — установлен скрытый отказ в результате профилактических испытаний; Апф = 1/Тпф, где Тпф — период профилактических испытанийРис. 2.9. Граф состояний ЭВМ с частичным контролем при наличии периодических профилактических испытаний:0—2 — то же, что на рис. 2 8; 5 — состояние выполнения профилактических испытаний; 4 — установлен скрытый отказ в результате профилактических испытаний; Апф = 1/Тпф, где Тпф — период профилактических испытаний
Рис. 2.8. Граф состояний ЭВМ с частичным контролем при отсутствии периодических профилактических испытаний:
О —- работоспособное состояние; 1 —- состояние обнаруженного отказа; 2 — состояние необнаруженного отказа; g — доля аппаратуры, охваченной контролем
Рис. 2.8. Граф состояний ЭВМ с частичным контролем при отсутствии периодических профилактических испытаний:
О —- работоспособное состояние; 1 —- состояние обнаруженного отказа; 2 — состояние необнаруженного отказа; g — доля аппаратуры, охваченной контролем
Рис. 2.9. Граф состояний ЭВМ с частичным контролем при наличии периодических профилактических испытаний:
0—2 — то же, что на рис. 2 8; 5 — состояние выполнения профилактических испытаний; 4 — установлен скрытый отказ в результате профилактических испытаний; Апф = 1/Тпф, где Тпф — период профилактических испытаний
Рис. 2.9. Граф состояний ЭВМ с частичным контролем при наличии периодических профилактических испытаний:
0—2 — то же, что на рис. 2 8; 5 — состояние выполнения профилактических испытаний; 4 — установлен скрытый отказ в результате профилактических испытаний; Апф = 1/Тпф, где Тпф — период профилактических испытаний
могорова, описывающую процесс функционирования ЭВМ с частичным контролем в стационарном решении:
(2.80)(2.80)Ло ^о Л1 Ив.о (1S') ^о ло — 0>
(2.80)
(2.80)
— ^1 Нв.о + По ^0 + Sr4 л2 = 0;
— л2|?\ + (1 — g)4 л0 = 0.
Здесь символами ло, ль л2 обозначены стационарные вероятности нахождения ЭВМ в состояниях 0, 1,2.
(2.81)(2.82)(2.83)(2.81)(2.82)(2.83)Решение системы может быть легко получено:
(2.81)
(2.82)
(2.83)
(2.81)
(2.82)
(2.83)
Ло = 6гРв.о/(Рво4-Х0§);
Л1 — ^-о Ло/рв,0;
л2 = (1 ~ £) лп/£.
Заметим, что полученное выражение для Ло определяет коэффициент готовности для ЭВМ с частичным контролем при отсутствии периодических профилактических испытаний.
На рис. 2.9 представлен граф состояний ЭВМ при наличии профилактических испытаний. На этом графе выделено состояние 4, в которое переходят ЭВМ с частичным контролем после того, как начинается профилактика (поэтому
переход из состояния 2 в состояние 4 нагружен интенсивностью ХПф). В этом состоянии выявляется скрытый отказ и затем начинается его устранение. В силу того, что 1/Pb.o<C <С1/р-пф, после окончания восстановления (ликвидация скрытого отказа) ЭВМ переходит в состояние 3— выполнение профилактики.
Для графа состояний на рис. 2.9 при предположениях относительно экспоненциальных распределений времен нахождения ЭВМ во всех состояниях можно написать систему уравнений Колмогорова, опысывающую поведение ЭВМ с частичным контролем в установившемся режиме:
— Ло (§4 + (1 — §) Ч + ^пф) + Л1 Рв.о + НпФ Л3 = °;
— Л1 Цв.о + gX0 л0 + g^ л2 = 0;
(2.84)(2.84)л2 (g^o + ^пф) + (1S') ^о л о = 0;
(2.84)
(2.84)
Лз Рпф “Ь Ло ^пф “Ь Л4 Рв.о 0,
Л^Цв-о Д" ^пф Л2 0-
Решение этой системы дает следующие выражения для вероятностей лц лг, лз, Л4 нахождения ЭВМ в соответствующих состояниях в стационарном режиме:
лт = яо §Хо /_А±М_\(2.85)
Рв.О \ 8^0 + ^пф /
л2 = л0 (1 — g) V(g4 + ^пф);(2.86)
Лз = _до_ / 2£М+Лф \.(2>g7)
Рпф \8^0 + ^пф /
= «чА, %пф(1 -g) ,,2 gg
Рв.о 6До + ^пф)
Значение л0 может быть найдено из условия нормировки:
л0 + Л! + л2 + л3 + л4 = 1.(2.89)
Подставляя выражения (2.85) — (2.88) в (2.89), после преобразований получаем:
Л0 = кг = (1 ++ .^1^.^пф + ^пф) + ^]р1 (2 90)
t Рв.о8^-0 Ч~ ^пф J
При выборе периодичности проведения профилактических испытаний следует стремиться к тому, чтобы коэффициент готовности ЭВМ был максимально возможным при
заданных значениях Хо, цПф, Цв.о, g. Для определения оптимального значения Хпф= 1/ТпфТ возьмем производную от ло = &г по Хпф и приравняем ее нулю. После соответствующих преобразований получаем:
^пфТ =—g^o + VgX0 + (1 + 1/Нв.о) + ^оНпФ • (2-91)
Для сокращения времени простоя ЭВМ при профилактических испытаниях часть этих испытаний выполняется в мультипрограммном режиме параллельно с решением задач на ЭВМ. Обычно организуется параллельное (мультипрограммное) выполнение тестов для аппаратуры, не охваченной контролем и не участвующей в вычислительном процессе. Модель профилактических испытаний для этого случая приведена в [21].
МОДЕЛИ ЗИП
Элементы, ТЭЗ и узлы, отказавшие в процессе эксплуатации ЭВМ в ходе ремонтных работ заменяются работоспособными; как правило, новые элементы и узлы берутся из комплекта запасных инструментов и приборов (ЗИП).
Комплект ЗИП формируется на заводе, поставляющем ЭВМ, и затем пополняется по заявкам вычислительного центра. Завод-изготовитель формирует комплект ЗИП из различных элементов, ТЭЗ и узлов ЭВМ на основе статистических данных об эксплуатации ЭВМ.
В силу того, что отказы ЭВМ возникают в случайные моменты времени, планирование объема ЗИП по отдельным компонентам должно производиться на основе вероятностных математических моделей процессов и пополнения ЗИП.
Рассмотрим методику построения таких моделей. Будем считать, что ЗИП ЭВМ содержит т запасных элементов 1-го типа; общее число элементов (считая и тот, что входит в состав ЭВМ) равно щ-|-1=&г. Определим вероятность того, что запасные элементы i-го типа будут израсходованы не раньше чем за врёмя Т [42].
Если обозначить через £ь |2,.... Ik случайные величины — времена работы элемента, входящего в состав ЭВМ, и 1-го, ..., (к—1)-го элементов из ЗИП, то случайное время от момента начала работы ЭВМ с основным элементом до момента отказа ЭВМ из-за того, что отказал последний, щ-й элемент из ЗИП, есть случайная величина
П; + 1
Si = 2 • (2.92)
Очевидно, что выражение верно для случая, когда отказавший элемент заменяется новым из ЗИП, а ЗИП на всем интервале S, не пополняется элементами i-ro типа.
Если предположить, что §ь §2, ■„, s* — независимые в совокупности и одинаково распределенные случайные величины, имеющие, например, экспоненциальное распределение с параметром Ат, то случайная величина S, будет иметь распределение Эрланга (п,+1)-го порядка с плотностью (см. § 2.1)
1)!, к>0,(2.93)
где k=nt-y\ — порядок распределения.
Нетрудно заметить, что вероятность безотказной работы ЭВМ в течение времени Т при наличии в ЗИП п, запасных элементов i-ro типа
P(St > Т) = 1 — Fk(t) = 1 — f AlhZK— г^ dt, (2.94)
о где Fk(t)—функция распределения Эрланга к-го порядка, причем
^(0 = 1~2 (Mf^-Vr!.(2.95)
г=0
С учетом (2.92) выражение (2.91) можно представить в виде
Р^Т)-^^)' е^1* !r\(2.96)
r=0
Анализируя полученное выражение, можно сделать вывод, что для выполнения условия S^T необходимо, чтобы за время Т число отказавших элементов m было меньше П/+1. Действительно, r-е слагаемое в (2.96) не что иное, как выражение для вероятности того, что за время Т откажет ровно г элементов:
Р (m = г) = (Х; ТУ 1, г = 0,п{.(2.97)
Таким образом, вероятность безотказной работы ЭВМ в течение интервала Т есть вероятность того, что за интервал Т откажет не более п, элементов:
P(St>T)= ^P(m-r)=^ (Xt T)r e~V jr\ (2.98) r=0r=0
Выражение (2.97) фактически определяет закон Пуассона для дискретной случайной величины — числа отказов за интервал Т, Этот результат имеет простую физическую интерпретацию: закон Пуассона — закон редких событий, а именно такими и являются отказы ЭВМ.
Если интервал Т достаточно велик, то величина S,- будет иметь распределение, близкое к нормальному с функцией распределения
Е(/а = 1-фЕ(/а = 1-ф^-m[sj -Vd [S;] .^-m[sj -Vd [S;] .
Е(/а = 1-ф
Е(/а = 1-ф
^-m[sj -
Vd [S;] .
^-m[sj -
Vd [S;] .
где Af[S/], Z)[SJ— математическое ожидание и дисперсия
1 С —T^jr , случайной величины Зц Ф[/] = —; е ат—функция
V 2л J
Лапласа.
Таблицы значений функций Лапласа приводятся во многих справочниках.
Если ЭВМ содержит N различных типов элементов, ТЭЗ и устройств, заменяемых в момент отказа за счет ЗИП, общая вероятность безотказной работы ЭВМ в течение интервала Т в предположении, что отказы всех типов независимы между собой,
(2.99)(2.99)N
(2.99)
(2.99)
Р(ТО>Т)=Р* п р (Si > 7),
где То — время безотказной работы ЭВМ; Р* — вероятность безотказной работы в течение времени Т элементов, ТЭЗ и устройств ЭВМ, не обеспеченных комплектом ЗИП.
Зная интенсивности потоков отказов элементов каждого типа, на основании (2.99) можно вычислить вероятность безотказной работы ЭВМ при известных числах ЗИП и,. Для упрощения расчетов [при определении таких п,, при которых вероятность Р(ТО>Т^ больше некоторого заданного значения] можно воспользоваться номограммами, приведенными в [42].
Полученная модель расхода ЗИП не учитывает весьма существенного фактора: пополнения ЗИП в том случае, если из-за расхода элементов в ходе ремонтных работ число каких-либо элементов в ЗИП станет меньше числа, определенного правилами эксплуатации ЭВМ.
Действительно, как только из ЗИП изымается какой-то
элемент, в организацию, снабжающую ВЦ запасными частями, направляется запрос на поставку элементов соответствующего типа. Время удовлетворения заявки случайно и не зависит от того, на сколько единиц запасных частей и какого типа оформлена заявка.
Рис. 2.10. Граф состояний ЗИП при расходе и пополнении элементовРис. 2.10. Граф состояний ЗИП при расходе и пополнении элементовПроцесс расхода и пополнения ЗИП элементами i-ro типа может быть представлен в виде графа (рис. 2.10). Будем считать, что состояние ЗИП по наличию i-x элементов в не-
Рис. 2.10. Граф состояний ЗИП при расходе и пополнении элементов
Рис. 2.10. Граф состояний ЗИП при расходе и пополнении элементов
i-ro типа
который момент времени t описывается числом соответствующих элементов, находящихся в ЗИП, плюс элемент, работающий в составе ЭВМ. Очевидно, если нормативный запас ЗИП по i-му типу элементов равен п,, то исходное состояние ЗИП к = т-\Л. Так как в конкретный момент времени работает только один элемент, подверженный отказам с интенсивностью X/, то возможен переход из начального состояния k=nrVX только в состояние к—1=щ с интенсивностью к:. На графе этому переходу соответствует дуга из состояния к в состояние к—1 (дуга помечена интенсивностью ta). В этот момент из ЗИП извлекается запасной элемент для замены отказавшего. Из состояния к—1 возможен и обратный переход, если будет удовлетворена заявка на выбывший элемент из ЗИП, а за это время ЭВМ, работая с элементом, изъятым из ЗИП, не откажет из-за отказа элемента того же типа. Если отказ того же типа произойдет за время, меньшее времени удовлетворения заявки, то ЭВМ переходит в состояние к—2 с интенсивностью Xi и снова из ЗИП будет извлечен элемент. Теперь будет аннулирована предыдущая заявка и оформлена новая на два элемента, и поэтому переходы возможны как в состояние к—3, так и в состояние к, причем с той же интенсивностью, что и переход из состояния к—1 в состояние к. На графе эта интенсивность перехода, обозначенная ц, есть величина, об-
ратная среднему времени удовлетворения заявки на запасные элементы для пополнения ЗИП.
Эффективность работы ЭВМ с подобным процессом расхода и пополнения ЗИП может быть оценена с помощью вероятности того, что ЭВМ будет простаивать из-за отсутствия элементов i-ro типа, т. е. вероятности того, что ЭВМ будет в состоянии к = 0. Обозначим вероятность нахождения в этом состоянии в установившемся режиме работы (при достаточно большой длительности эксплуатации ЭВМ) л0. Через л/ / = 0, к обозначим вероятность нахождения процесса В /-М состоянии.
Если предположить, что длительность исправной работы элемента /-го типа есть случайная величина, имеющая экспоненциальное распределение с математическим ожиданием 1Д,- (интенсивностью отказов Xi), а время удовлетворения заявки на элементы для ЗИП — случайная величина, имеющая экспоненциальное распределение с интенсивностью р, то можно записать систему уравнений для вероятностей л, (/" = 0, ^ +1):
11(2.100)(2.100)(2.101)(2.101)к
1
1
(2.100)
(2.100)
(2.101)
(2.101)
Хг лА + ц У Лй_/ = — ^t + ц) лА + ц = 0;
/=1
(^ + В) л^/ + Xi лй_/+1 = 0, / = 1, к — 1;
Xt л^ — р л^ — 0,
Решая (2.100), получаем
л» == Мр + >чУ
пк-; = рХ(/(р + Хг)/+1, / = 1, к — 1;
л0 = ^/(Р + А=Л
Таким образом, получено выражение, с помощью которого можно оценить вероятность того, что ЭВМ будет простаивать из-за отсутствия i-x элементов в ЗИП при условии, что нормативное число элементов i-ro типа в ЗИП равно пи Оценив вероятности простоя по каждому из типов элементов, ТЭЗ и узлов, на основании (2.99) можно оценить вероятность безотказной работы ЭВМ в целом.
В заключение отметим следующее. Если в состав ЭВМ входит С, одновременно работающих элементов i-ro типа, то граф состояний ЗИП останется практически тем же. Различие будет состоять только в том, что переходы из со-
стояний к—/ в состояния к—/—1 будут происходить не с интенсивностью X/, а с интенсивностью Ciki. Соответственно в (2.101) необходимо вместо kt подставить СЛ,.
ПОСТРОЕНИЕ МОДЕЛЕЙ НАДЕЖНОСТИ
ПО ЭКСПЕРИМЕНТАЛЬНЫМ ДАННЫМ
Приведенные в настоящей главе аналитические модели надежности носят в определенной степени абстрактный характер. Конкретный вид и параметры аналитической модели надежности (модели отказов и др.) могут быть определены по экспериментальным данным о работе машины в процессе ее испытаний или эксплуатации.
В процессе эксплуатации ЭВМ в «Эксплуатационном журнале» должны регистрироваться данные о продолжительности интервалов безотказной (и бессбойной) работы ЭВМ в целом и отдельных ее устройств, моментах возникновения отказов (с указанием отказавшего устройства и причины отказа), моментах появления сбоев (с указанием узла, в котором обнаружены сбои), продолжительности работ по устранению отказов и работ по восстановлению достоверности информации после сбоев, о времени проведения, продолжительности и результатах профилактических испытаний и другие данные о работе машины.
Эти данные могут быть использованы для определения введенных в гл. 1 количественных значений основных эксплуатационных характеристик ЭВМ. Вместе с тем эти данные позволяют получать и такие вероятностные характеристики надежности, как законы распределения времени между отказами, времени восстановления и некоторых других случайных величин, т. е. по существу позволяют строить экспериментальные модели надежности машины.
Эти модели могут быть положены в основу расчетов и имитационного моделирования надежности соответствующих вычислительных комплексов.
Зафиксированные в журнале длительности интервалов нормальной работы между отказами или продолжительности работ по восстановлению можно рассматривать как некоторую выборку из всего множества значений, которые принимает данная случайная величина (выборку конечного объема из генеральной совокупности данной величины).
Пусть Xi, Хг, ..., Хм — независимые измерения исследуемой случайной величины, причем х, называется выборочным значением, a N — объемом выборки. .
Рассмотрим, каким образом, обрабатывая результаты наблюдений, можно установить, какому теоретическому закону распределения подчиняется исследуемая случайная величина.
Выделим три основные задачи, которые следует последовательно решить. Первая задача — это задача об определении числовых характеристик случайной величины: математического ожидания, дисперсии (среднего квадратического отклонения), асимметрии, эксцесса и т. п.; другими словами, это задача определения по выборке объемом V выборочных начальных и центральных моментов случайной величины [13].
Вторая задача состоит в определении соответствующего теоретического распределения. Это — задача сглаживания или выравнивания статистических данных.
На основании выборочных значений случайной величины, сгруппированных специальным образом, выдвигается гипотеза о том, что исследуемая случайная величина — время наработки на отказ, время восстановления и т. д. — может быть описана тем или иным теоретическим распределением. При этом чаще всего параметры теоретического распределения определяются также по самой выборке, например исходя из того, что моменты теоретического распределения должны быть равны выборочным моментам (метод моментов).
Как правило, гипотеза о теоретическом распределении выдвигается на основании опыта исследователя; очевидно, что возможно выдвижение и неверной гипотезы.
Третья задача состоит в проверке гипотезы (правдоподобия гипотезы). Она решается путем вычисления специальных статистик — величин, характеризующих степень расхождения между опытными данными и теоретическим распределением. Статистика формируется таким образом, что заранее известно ее распределение; это позволяет определить вероятность того, что выборка может быть описана принятым теоретическим распределением.
Кроме перечисленных задач могут возникнуть и другие, например задача об определении объема выборки для получения достоверных оценок и т. д.
Первая из перечисленных задач решается достаточно просто (особенно при использовании ЭВМ).
Статистические оценки моментов получают как значения определенных функций от выборочных значений случайной величины. В частности, статистическая оценка г-го
момента (начального или центрального) может быть принята равной выборочному r-му моменту (начальному или центральному). Последние вычисляются по формулам
Л'
(2.102)
N
1№1 = -1 ^ ( Xt - a] [X])r,(2.103)
где ос- и ц* — соответственно начальный и центральный выборочные моменты r-го порядка. Очевидно, что статистические оценки моментов являются случайными величинами.
Первый начальный момент — это выборочное среднее; для его обозначения часто применяется символ X.
Если выборочное среднее значение X вычисляется по выборке объемом N, то среднее квадратическое отклонение случайной величины X от математического ожидания М[Х] равно
s- = V"sx[N .(2.104)
где sx = Ox"Vvv; —выборочное среднее квадратическое отклонение.
Можно показать [13], что X имеет нормальное распределение; это позволяет решить задачу об определении объема выборки.
Аналогично по выборке вычисляются и коэффициенты асимметрии и эксцесса.
Построение статистического ряда и гистограммы. Весь интервал наблюдения случайной величины X разбивают на /г интервалов (разрядов); интервал Ах определяется по формуле
Ах = (Xm(tx Xmjn)/^,(2. Ю5)
где ^max) X^tn соответственно максимальное и минимальное значение случайной величины, определенное по выборке объемом N. Затем подсчитывается число попаданий случайной величины в интервалы:
^min> ^min 4"" ^^), ^min 4* Ах, •''min 4* 2Ах), ...
••• ’ t^max Ах, '^maxl-
ОбоЗНаЧИМ число попаданий в t-й интервал через Nt.
Отношение
Pi = N5/N (2.106)
означает частоту попадания случайной величины в интервал [х,-, х,+Дх).
Величины pi задают статистический ряд случайной величины, построенный по выборке конечного объема.
По статистическому ряду можно построить гистограмму—эмпирическую плотность распределения вероятностей случайной величины х. Для этого вычисляются величины
р; = р^х = NJ^xN. (2.107)
Тогда кусочно-линейная функция, принимающая значения pi на интервале [х,, х;+Ах), будет ограничивать площадь, равную 1; график этой функции и представляет собой гистограмму.
На основании внешнего вида гистограммы можно сделать выводы о том, какие теоретические плотности распределения вероятностей целесообразно попытаться использовать для выравнивания гистограммы. Анализ численных значений выборочных моментов, в частности таких, как коэффициент вариации, асимметрия и эксцесс, позволит отобрать из всего множества теоретических распределений подходящие для выравнивания полученной гистограммы.
Пример. В процессе эксплуатации ЭВМ фиксировались отказы в механизме устройства ввода с перфокарт; значения интервалов между отказами (в часах) приведены в табл. 2.1. Общее число измерений W=100.
Для построения гистограммы разобьем весь интервал от минимального значения, равного 0,81, до максимального, равного 571,55*#580 ч, на к интервалов. Для определения значения к воспользуемся часто применяемой в математической статистике формулой Старгесса [13]:
6 = 3,3 lg/V + 1 =3,3-2+ 1 =6,6+ 1 =7,6 « 8.
Значение разряда гистограммы Дх равно, таким образом, 72,5 ч. Числа попаданий в интервал Nt значения частоты р( приведены в табл. 2.2 с учетом того, что в интервал [435; 507,5] не попало ни одного измерения.
На рис. 2.11 приведена гистограмма; исходя из вида эмпирической плотности распределения и значения коэффициента вариации, близкого к 1 (в рассматриваемом примере «х/х=1,09), можно сделать предположение о том, что исследуемая случайная величина может быть описана экспо-
Рис. 2.11. Гистограмма (1) и теоретическая функция экспериментального распределения (2), построенная по выборке (см. табл. 2.1)Рис. 2.11. Гистограмма (1) и теоретическая функция экспериментального распределения (2), построенная по выборке (см. табл. 2.1)
Рис. 2.11. Гистограмма (1) и теоретическая функция экспериментального распределения (2), построенная по выборке (см. табл. 2.1)
Рис. 2.11. Гистограмма (1) и теоретическая функция экспериментального распределения (2), построенная по выборке (см. табл. 2.1)
N
X.» г г
N
xv '
N
х^ г
N
X., г г
N
X., г г
1
72,5
21
112,11
41
26,66
61
1,91
81
218,84
2
90,35
22
186,9
42
128,04
62
1,16
82
92,66
3
58,37
23
70,83
43
129,53
63
50,91
83
14,32
4
161,36
24
271,09
44
44,37
64
156,11
84
199,4
5
39,32
25
76,24
45
12,14
65
104,87
85
65,76
6
27,85
26
35,53
46
324,59
66
33,78
86
95,94
7
3,32
27
67,98
47
27,02
67
46,76
87
199,53
8
70,92
28
146,16
48
31,65
68
17,57
88
14,15
9
29,29
29
110,53
49
571,55
69
11,14
89
72,46
10
60,08
30
91,67
50
3,86
70
114,5
90
51,97
11
258,65
31
8,43
51
141,54
71
102,62
91
34,6
12
408,75
32
87,65
52
121
72
24,05
92
93,43
13
7,99
33
32,12
53
226,5
73
0,81
93
71,37
14
11,88
34
225,01
54
82,27
74
97,93
94
10,17
15
65,55
35
50,19
55
160,53
75
19,05
95
67,05
16
47,22
36
169,45
56
28,5
76
253,92
96
82,28
17
56,38
37
187,19
57
158,58
77
62,47
97
63,03
18
119,78
38
26,15
58
4,02
78
524,32
98
29,86
19
166,17
39
30,82
59
86,63
79
36,64
99
183,76
20
8,08
40
2,04
60
97,4
80
44,33
100
25
(2.108)(2.108)ненциальным распределением с плотностью / (х) = ехр (— х/96,48)/96,48).
(2.108)
(2.108)
Проверка статистических гипотез. Выдвинутое предпо-
Номер интерва-
Границы интервала, ч
Ni
No.
Номер интерва* ла
Границы интервала, ч
Ni
NPi
1
0—72,5
56
53,015
5
290—362,5
1
2,585
2
72,5—145
22
24,912
6
362,5—435
1
1,215
3
145—217,5
12
11,707
7
435—507,5
0
4
217,5—290
6
5,501
8
507,5—580
2
0,839
ложение об экспоненциальном распределении случайной величины — это всего лишь гипотеза, и она должна быть подтверждена. При проверке гипотезы должен быть получен ответ на основной вопрос — расхождения между эмпирическими (полученными в ходе обработки выборки) и теоретическими значениями функции распределения вероятностей объясняются только конечным объемом выборки или причина в том, что произведена выборка из генеральной совокупности, подчиняющейся другому закону распределения?
Проверка гипотез выполняется с помощью специальных критериев согласия, служащих мерой расхождения эмпирического и теоретического распределения. Например, можно вычислить значение так называемого %2-критерия:
2Храси —-2Храси —-(2.109)(2.109)
2
Храси —-
2
Храси —-
(2.109)
(2.109)
где рг — теоретическая вероятность попадания случайной величины в i-й разряд гистограммы для предполагаемого теоретического распределения.
Очевидно, что в силу случайного характера величин Ni (принимающих различные значения при различных выборках одного и того же объема N, не говоря уже о выборках с различным числом испытаний) %2 будут также случайными величинами.
Показано [13], что плотность распределения этой случайной величины имеет вид
и W =и W =M(r/2)—1 е—и/22Г/2Г (г/2)M(r/2)—1 е—и/22Г/2Г (г/2)и ^ 0,и ^ 0,(2.110)(2.110)
и W =
и W =
M(r/2)—1 е—и/2
2Г/2Г (г/2)
M(r/2)—1 е—и/2
2Г/2Г (г/2)
и ^ 0,
и ^ 0,
(2.110)
(2.110)
где Г(г/2)—гамма-функция от аргумента г/2; г — число независимых случайных величин, число степеней свободы случайной величины %2, для которых вычисляется сумма
квадратов, причем предполагается, что суммируемые величины имеют нормальное распределение N (0,1).
Так как распределение случайной величины х2 известно, то, получив в результате расчета по (2.109) ее значение, можно определить, с какой вероятностью для заданного г случайная величина Храсч превзойдет значение х2— вероятность того, что за счет малого объема выборки (случайного характера х2) расхождение между эмпирическим и теоретическим распределениями будет не меньше значения хЛ полученного в результате обработки эксперимента. Другими словами, это — вероятность справедливости гипотезы о том, что исследуемая случайная величина подчиняется данному закону распределения.
Распределение х2 табулировано для различных значений г, что упрощает процедуру проверки гипотез. Нужно только знать, чему равно г. Как было отмечено ранее, это — число независимых суммируемых случайных величин. В данном случае на частоты попадания в интервал наложено ограничение — их сумма равна 1. Кроме того, по результатам выборки определяют и сами параметры теоретического распределения, так как они заранее неизвестны. Отсюда следует, что при проверке гипотез г равно к, уменьшенному на 1 и на число параметров распределения, вычисляемых по выборке. ■
Процедура проверки гипотез может быть упрощена, если используется так называемый критерий согласия Романовского [13], вычисляемый по формуле
/? = |Храсч-г|//2г , (2.111)
2 о
где Храсч — расчетное значение х -критерия, полученное по (2.109).
Оказывается, что если /?<3, то согласие между эмпирическим распределением можно считать удовлетворительным (гипотеза о теоретическом распределении при этом принимается).
Заметим, что выбирать разряды гистограммы нужно так, чтобы число попаданий в интервал было не менее 5, в противном случае значение х2 будет завышено. Если по результатам выборки получается, что Nt для i-ro разряда меньше 5, следует объединить соседние разряды.
Если обратиться к рассмотренному ранее примеру по статистическому анализу времени наработки на отказ, то получим следующие значения критерия согласия Храсч =
= 3,176; 7?=0,815, число степеней свободы & = 5. По таблицам х2-распределения находим, что при ^ = 5, р = 0,7 у= = 3,00, а при р=0,5 %2=4,31. Отсюда следует, что вероятность справедливости гипотезы об экспоненциальном распределении (доверительная вероятность) не менее 0,68.
На практике гипотеза может приниматься, если р не менее 0,1, так что в рассматриваемом примере согласие между экспериментальным и теоретическим распределением удовлетворительное. Тот же вывод можно сделать и при применении критерия Романовского (его значение в рассматриваемом случае меньше 3).
ИМИТАЦИОННЫЕ МОДЕЛИ ПРОЦЕССОВ ЭКСПЛУАТАЦИОННОГО ОБСЛУЖИВАНИЯ ЭВМ
В рассмотренных в предыдущих параграфах аналитических вероятностных моделях потоков отказов, сбоев, восстановлений принималось допущение об экспоненциальном распределении времен наработки на отказ, поиска и замены отказавшего элемента и др. Подобное распределение не всегда удовлетворительно описывает ту или иную выборку, полученную в процессе наблюдения за работой ЭВМ. Отказ от экспоненциального распределения делает вероятностную модель процесса эксплуатации настолько сложной, что оказывается невозможным построить модель в виде явных соотношений. В подобных случаях приходится прибегать к статистическому (имитационному) моделированию.
При реализации на ЭВМ статистических моделей процессов эксплуатации производится многократный розыгрыш случайных ситуаций, которые могут иметь место при известных законах распределения таких случайных величин, как время между отказами То, время поиска отказавшего элемента tn, время замены t3 и т. д. В процессе многократных розыгрышей производится сбор статистической информации, например конкретных реализаций суммы трех случайных величин То, tn, t3, с целью определения коэффициента готовности kr. Накопленные реализации могут рассматриваться как выборка конечного объема N ^N— общее число розыгрышей) и обрабатываются теми же методами, чго и выборка, полученная в ходе натурных наблюдений. Таким образом, натурный эксперимент по определению надежностных и других эксплуатационных характеристик заменяется машинным, в ходе которого имитируется процесс функционирования ЭВМ. В силу этого статистические
модели часто называют имитационными моделями процессов эксплуатации.
Очевидно, что для того, чтобы иметь возможность поставить на ЭВМ имитационный эксперимент, необходимо:
программным образом получать случайные величины с заданным законом распределения;
описывать процессы порождения запросов на обслуживание, а также процессы формирования очередей и собственно обслуживания;
накапливать статистическую информацию в ходе машинного эксперимента.
Автоматизировать процедуру построения имитационных моделей позволяют специальные системы моделирования, такие, например, как система GPSS (общецелевая система моделирования дискретных систем) [59]. В системе GPSS процессы порождения запросов (называемых в GPSS транзактами), формирования очередей, обслуживания описываются с помощью так называемых объектов. В GPSS имеются четыре вида объектов:
динамические (транзакты), имитирующие процесс продвижения запроса по системе и получения тех или других видов обслуживания;
статические, описывающие работу приборов обслуживания (как одноканальных, так и многоканальных) с очередями различных типов, а также оборудования того или иного рода;
статистические, предназначенные для накопления и обработки статистической информации в процессе моделирования;
операционные блоки, задающие изменение состояний транзактов, оборудования и статистических объектов в момент прохождения транзактом блока.
Особенностью GPSS является возможность использования эмпирических функций распределения случайных величин, полученных в результате натурного эксперимента, для построения датчиков случайных величин.
В качестве иллюстрации метода построения имитационных GPSS-моделей процесса эксплуатационного обслуживания рассмотрим простейший пример. Примем, что ЭВМ может находиться в двух состояниях: е0 — ЭВМ работоспособна и 81 — ЭВМ отказала и восстанавливается. Соответствующий граф состояний ЭВМ показан на рис. 2.12.
Эмпирические функции распределения, полученные по результатам натурных наблюдений для времени между
моментами отказов и длительности восстановительных работ, приведены на рис. 2.13. Имитационная GPSS-модель для рассматриваемого примера процесса эксплуатационного обслуживания с учетом эмпирических распределений слу-
ЭВМЭВМОтказОтказРемонт завершенРемонт завершенЭВМЭВМРис. 2.12. Граф состояний ЭВМ (к примеру построения имитационной модели процесса эксплуатационного обслуживания)Рис. 2.12. Граф состояний ЭВМ (к примеру построения имитационной модели процесса эксплуатационного обслуживания)даботоспособна1даботоспособна1ремонтируетсяремонтируетсяРис. 2.13. Эмпирические функции распределения для времени (в единицах модельного времени) между отказами (а) и длительности восстановлений (б)Рис. 2.13. Эмпирические функции распределения для времени (в единицах модельного времени) между отказами (а) и длительности восстановлений (б)
ЭВМ
ЭВМ
Отказ
Отказ
Ремонт завершен
Ремонт завершен
ЭВМ
ЭВМ
Рис. 2.12. Граф состояний ЭВМ (к примеру построения имитационной модели процесса эксплуатационного обслуживания)
Рис. 2.12. Граф состояний ЭВМ (к примеру построения имитационной модели процесса эксплуатационного обслуживания)
даботоспособна1
даботоспособна1
ремонтируется
ремонтируется
Рис. 2.13. Эмпирические функции распределения для времени (в единицах модельного времени) между отказами (а) и длительности восстановлений (б)
Рис. 2.13. Эмпирические функции распределения для времени (в единицах модельного времени) между отказами (а) и длительности восстановлений (б)
чайных параметров процесса эксплуатации приведена на рис. 2.14.
Модель содержит 12 операционных блоков; номера блоков проставлены в левой колонке на рис. 2.14 (карты SIMULATE, RMULT, FUNCTION, TABLE не нумеруются, так как являются вспомогательными).
Блок 1 (GENERATE) обеспечивает порождение и ввод в модель одного транзакта — динамического объекта, который будет имитировать ЭВМ, находящуюся в различных состояниях. Блок 2 MARK с меткой INPUT запоминает момент входа транзакта в модель, причем запоминание производится в первом параметре транзакта. Тот факт, что в модели потребуется только один параметр для транзакта в виде целого 4-байтового числа, указывается в последних двух полях блока GENERATE.
Транзакт, вошедший в модель, проходит через блок 3 (SEIZE); в момент прохождения транзакта через этот блок прибор обслуживания с именем СОМР становится занятым. Этот прибор имитирует нормальную работу ЭВМ.
BLOCK
NUMBER
«LOG OPEPATION А, В, C, D, E, F, G COMMENTC SIMULATE
RMULT7, 519
XT1METABLEMP1,0, 400, 20
T1ME1FUNCTIONRN1,C6
0,0/0. 1,1000/0.2, 1500/0.4, 4000/0.8, 5000/1, 7000
T1ME2FUNCTIONRN2,C6
0,0/0.1,100/0.2, 200/0.4, 450/0.8, 600/1, 1000
1
2
3
4
5
6
7
8
9
10
11
GENERATE ,,,!,,1, F
INPUT MARK
SEIZECOMP
ADVANCE FN<>TIME1
RELEASE COMP
SEIZESERV
ADVANCE FN<>TIME2
RELEASE SERV
TABULATE XTIME
SPLIT1, INPUT
TERMINATE 1 START1000
END
Рис. 2.14. Пример имитационной GPSS-модели эксплуатационного обслуживания
Прибор СОМР находится в занятом состоянии в течение всего времени, пока транзакт задерживается блоком 4 (ADVANCE). Этот блок определяет время задержки с помощью функции с именем TIME1 (эта функция описывает эмпирическую функцию распределения случайной величины — времени между отказами ЭВМ).
Для розыгрыша конкретной случайной ситуации используется встроенный в GPSS датчик равномерно распределенных величин с именем RN1; его начальное значение (как и начальное значение RN2, используемого в другой функции) устанавливается картой RMULT.
После задержки транзакт попадает в блок 5, который освобождает прибор с именем СОМР (блок RELEASE). При этом автоматически запоминается информация, необходимая для последующего подсчета среднего числа транз- актов, находящихся в приборе с именем СОМР на всем интервале моделирования.
Блоки 6—8 (SEIZE, ADVANCE и RELEASE) модели-
руют нахождение ЭВМ в состоянии восстановления, при этом используется функция с именем TIME2, описывающая эмпирическую функцию распределения случайной величины — времени восстановления. Прибор, имитирующий нахождение ЭВМ в состоянии во, имеет имя SERV.
Выйдя из блока RELEASE, освобождающего прибор с именем SERV, транзакт попадает в блок 9 (TABULATE). В момент прохода транзактом этого блока определяется сумма двух случайных величин: времен пребывания ЭВМ в состояниях во и вь Она вычисляется как разность значений текущего модельного времени и времени, запомненного в первом параметре транзакта в момент прохождения блока MARK. Накопление информации о сумме этих случайных величин происходит в виде гистограммы, которую задает блок TABULATE с именем XTIME (предполагается, что гистограмма будет иметь 20 разрядов, причем каждый разряд имеет значение, равное 400 временным единицам. За одну временную единицу принята 1 мин реального времени работы ЭВМ).
Блок TABULATE транзакт проходит без задержки, после чего поступает в блок 10 SPLIT. Этот блок порождает новый транзакт, который направляется вновь в блок MARK с меткой INPUT. Прежний транзакт направляется в блок 11 TERMINATE, в котором и уничтожается. Тем самым отмечается окончание цикла перехода ЭВМ из состояния е0 и ei и обратно. В момент уничтожения транзакта из системного счетчика вычитается 1; как только значение счетчика станет равным 0, моделирование прекратится и на печать будут выданы обработанные результаты моделирования в виде таблиц, снабженных соответствующим заголовком (рис. 2.15). Начальное значение системного счетчика определяется картой START. Она указывает параметр, равный 1000. Это означает, что случайные реализации процесса эксплуатационного обслуживания будут воспроизводиться 1000 раз, что вполне достаточно для получения эмпирической функции распределения суммарного времени нахождения ЭВМ в работоспособном состоянии и состоянии восстановления.
Нетрудно заметить, что оценка средних коэффициентов использования приборов с именами SERV и СОМР есть не что иное, как оценка вероятности простоя и коэффициента готовности ЭВМ соответственно. Аналогично приведенной могут быть построены GPSS-модели более сложных процессов эксплуатационного обслуживания ЭВМ.
FACILITYAVERAGE
NUMBER
AVERAGE
SEIZING PREEMPTING
UTILIZATION i>COMP.891
SERV.108
TABLE XTIME
ENTRIES
1000
1000
TIME/TRAN
3677.508
448.950
TRANS. NO.TRANS. NO.
ENTRIES IN TABLEMEAN ARGUMENT
10004126.457
STANDART DEVIATIONSUM OF ARGUMENT
1786.0004126460.000
UPPEROBSERVED
PER CENT
CUMULATIVE
CUMULATIVE MULTIPLE DEVIATION
LIMIT frequency
OF TOTAL
PERCENTAGE
REMAINDER OF MEAN FROM MEAN
00
.00
.0
100.0—.000—2.310
4006
.59
.5
99.3.096—2.086
80026
2.59
3.1
96.7.193—1.862
120033
3.29
6.4
93.5-290—1.638
160066
6.59
13.0
86.8. 387—1.414
200070
6.99
20.0
79.9.484—1.190
240040
3.99
24.0
75.9.581—.966
280031
3.09
27.1
72.8.678—.742
320031
3.09
30.2
69.7.775—.518
360032
3.19
33.4
66.5.872—.294
400028
2.79
36.2
63.7.959—.070
440064
6.39
42.6
57.31.066.153
4800113
11.29
53.9
46.01.163.377
5200163
16.29
70.2
29.71.260.601
5600136
13.59
83.8
16.11.357.825
600040
3.99
87.8
12.11.4541.049
640040
3.99
91.8
8.11.5501.272
680032
3.19
95.0
4.91-6471.496
720032
OVERFLOW17
AVERAGE VALUE OF OVERFLOW END
3.19
1.69
7426.64
98.2
100.0
1.71.7441.720
.0
S Рис. 2.15. Результаты имитационного моделирования (пример)
РАСЧЕТ ЗНАЧЕНИЙ ПОКАЗАТЕЛЕЙ НАДЕЖНОСТИ ЭВМ
Методика расчета значений показателей надежности ЭВМ определена ГОСТ 16325—76 [10].
Для нерезервированных ЭВМ (не содержащих дублированных устройств) последовательность вычислений следующая.
Сначала необходимо определить интенсивности отказов устройств каждого типа Ло/, 1=1, N, где N — число устройств, входящих в состав ЭВМ. Величины Ло/ определяются по формуле
Лог = 1/Тог,(2.112)
где TOi — среднее время наработки на отказ устройства /-го типа.
Значения Toi берутся из эксплуатационной документации на соответствующие устройства ЭВМ либо вычисляются по результатам наблюдений за работой машины (см. § 2.6).
Интенсивность отказов ЭВМ в целом (суммарная интенсивность отказов ЭВМ) вычисляется по формуле
Л'
Xo = ^Xoikb(2.113)
/=1
где kt — коэффициент, определяющий, насколько интенсивно используется устройство /"-го типа при совместной работе с другими устройствами в составе ЭВМ.
В [10] приводятся следующие значения коэффициентов ко
_„Коэ ^фициент
Тип устройстваиспользования
Устройства ввода с перфокарт и перфолент 0,1
Устройства вывода на перфокарты и перфоленты,0,05
Печатающие устройства 0,1
Внешние запоминающие устройства 0,9
Графические устройства 0,05
Устройства ввода-вывода на электронно-лучевую трубку0,1
При отсутствии устройства какого-либо типа к, принимается равным нулю.
Зная Ло, вычисляем среднее время наработки на отказ машины:
Д, = 1/Ло.(2.114)
Среднее время восстановления после отказа работоспособности ЭВМ Гв.о вычисляется по формуле
TB.o = ToV-h^oi_,(2.115)
■Ml ^oi
<=1
где TB.oi — среднее время восстановления i-ro устройства после отказа.
Интенсивность потока восстановлений
Нв.о =1/^.0-(2.116)
Глава 3
НАДЕЖНОСТЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
ОСНОВНЫЕ ПОНЯТИЯ
Решение любой задачи, выполнение любой функции, возложенной на ЭВМ, возможно только при соответствующем взаимодействии и функционировании аппаратурных и программных средств вычислительной машины. Поэтому при анализе надежности выполнения ЭВМ заданных функций ЭВМ следует рассматривать как единый комплекс аппаратурных и программных средств и учитывать, что надежность работы ЭВМ зависит не только от надежности аппаратуры, но и от надежности программного обеспечения.
По аналогии с терминологией, принятой для надежности технических средств, под надежностью программного обеспечения (ПО) будем понимать свойство выполнять заданные функции, сохранять свои характеристики в установленных пределах при определенных условиях эксплуатации.
Надежность программного обеспечения (или просто программы) определяется его (ее) безотказностью и восстанавливаемостью. Безотказность программы или программного обеспечения есть ее (его) свойство сохранять работоспособность при использовании в процессе обработки информации на ЭВМ.
Безотказность программного обеспечения можно оценить вероятностью его работы без отказов при определенных уровнях внешней среды в течение заданного периода наблюдения. В данном определении под отказом программы
или системы программного обеспечения понимается недопустимое отклонение характеристик процесса функционирования программы от требуемых. Определенные условия внешней среды понимаются как совокупность входных данных и состояния вычислительной системы. Заданный период наблюдений соответствует, как правило, необходимому для выполнения решаемой на машине задачи.
Безотказность программного средства можно также характеризовать средним временем между возникновениями отказов в функционировании программы. При этом предполагается, что аппаратура ЭВМ находится полностью в работоспособном состоянии.
С точки зрения надежности принципиальное отличие программного обеспечения от аппаратуры состоит в том, что программы не изнашиваются и, следовательно, их выход из строя из-за поломки невозможен. Поэтому характеристики функционирования программного обеспечения зависят только от его качества, предопределяемого процессом разработки.
Безотказность программного обеспечения определяется его корректностью (правильностью) и, следовательно, целиком зависит от наличия в нем ошибок, внесенных на этапах его создания, в то время как безотказность аппаратуры определяется в основном случайными отказами, зависящими от изменений параметров аппаратуры, происходящих во время эксплуатации.
Надежность (или лучше безотказность) аппаратуры и программного обеспечения существенно по-разному зависит от входных данных и времени функционирования системы. Обрабатываемые данные, как правило, не влияют на отказы аппаратуры. Процесс выхода из строя отдельных элементов аппаратуры не зависит от поступающих входных данных. В то же время проявление ошибок программного обеспечения связано с тем, что в некоторые моменты времени на обработку поступают ранее не встречавшиеся совокупности данных, которые программа не в состоянии корректно обработать. Таким образом, входные данные в значительной мере влияют на функционирование программного обеспечения.
Обратимся к рис. 2.7, на котором показаны типичные зависимости, отражающие изменение во времени надежности аппаратуры (кривая /) и программы (кривая 2).
Интенсивность отказов аппаратуры по существу зависит от времени эксплуатации. Увеличение надежности про-
граммы является следствием того, что в процессе эксплуатации обнаруживаются и устраняются скрытые ошибки программы.
Важной характеристикой надежности программного обеспечения является его восстанавливаемость, которая определяется затратами времени и труда на устранение отказа из-за проявившейся ошибки в программе и его последствий. Восстановление после отказа в программе может заключаться в корректировке и восстановлении текста программы, исправлении данных, внесении изменений в организацию вычислительного процесса, что часто оказывается необходимым при работе ЭВМ в реальном масштабе времени. Восстанавливаемость программного обеспечения может быть оценена средней продолжительностью устранения ошибки в программе и восстановления ее работоспособности. Восстанавливаемость программного обеспечения зависит от многих факторов, в том числе от сложности структуры комплекса программ, структурированности самих программ, алгоритмического языка, на котором разрабатывалась программа, стиля программирования, качества документации на программу и т. п.
Можно также говорить об устойчивости функционирования программного обеспечения, понимая под этим его способность ограничивать последствия собственных ошибок и неблагоприятных воздействий внешней среды (неисправности аппаратуры, некорректность входных данных, ошибки оператора и др.) или противостоять им.
Устойчивость программного обеспечения может быть повышена с помощью разных форм структурной, информационной и временной избыточности, позволяющих иметь дублирующие модули программ, альтернативные программы для решения одних и тех же задач, осуществлять контроль за процессом исполнения программ (контроль за зацикливанием, возникновением самоблокировок, перегрузками по пропускной способности) и т. п.
Далее в настоящей главе будем рассматривать вопросы, относящиеся главным образом к безотказности программ.
ПРИЧИНЫ ОТКАЗОВ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
Основными причинами, непосредственно вызывающими нарушения нормального функционирования программы, являются:
ошибки, скрытые в самой программе;
искажения входной информации, подлежащей обработке;
неверные действия пользователя;
неисправности аппаратуры установки, на которой реализуется вычислительный процесс.
Скрытые ошибки программы. Специфика создания сложных программных средств состоит в том, что в процессе их отладки практически невозможно обнаружить и ликвидировать все ошибки. В результате в программах остается некоторое количество скрытых ошибок. Они могут вызвать неверное функционирование программ при определенных сочетаниях входных данных. Наличие скрытых ошибок программного обеспечения является главным фактором нарушения нормальных условий его функционирования.
Можно выделить следующие основные классы ошибок в программах [48].
Ошибки вычислений. Ошибки данного класса содержатся в закодированных математических выражениях или в получаемых с их помощью результатах. Примерами ошибок, относящихся к данному классу, являются неверное преобразование типов переменных, неверный знак операции, ошибка в выражении индекса, переполнение или потеря значимости при вычислениях.
Логические ошибки являются причиной искажения алгоритма решения задачи. Такого рода ошибки возникают в связи с неверной передачей управления, неверным заданием диапазона изменения параметра цикла, неверным условием и т. д.
Ошибки ввода-вывода, связанные с такими действиями, как управление вводом-выводом, формирование выходных записей, определение размеров записей и т. д. Примерами ошибок ввода-вывода являются неправильная форма ввода (вывода), ошибка в заданци числа формируемых строк (страниц) при печати, отсутствие признака конца файла и т. д.
Ошибки манипулирования да ин ы м и. Примерами таких ошибок являются неверно определенное число элементов данных; неверные начальные значения, присвоенные данным; неверно указанные длина операнда, имя переменной и т. д.
Ошибки совместимости связаны с отсутствием совместимости с операционной системой или другими прикладными программами, используемыми в данной программе.
Ошибки сопряжений вызывают неверное взаимодействие программы с другими программами (подпрограммами), с системными программами, устройствами ЭВМ, входными данными и т. д. В качестве примеров ошибок сопряжения могут быть названы несовместимость аргументов и параметров подпрограммы, отсутствие в системе необходимой подпрограммы, нарушения синхронизации при асинхронном выполнении программ и т. д.
Искажение информации, подлежащей обработке, вызывает нарушение функционирования программного обеспечения, когда входные данные не попадают в область допустимых значений переменных программы. В этом случае между исходной информацией и характеристиками программы возникает несоответствие.
Причинами искажения вводимой информации могут быть, например, следующие [30]:
искажение данных на первичных носителях информации;
сбои и отказы в аппаратуре ввода данных с первичных носителей информации;
шумы и сбои в каналах связи при передаче сообщений по линиям связи;
сбои и отказы в аппаратуре передачи или приема информации;
потери или искажения сообщений в буферных накопителях вычислительной системы;
ошибки в документации, используемой для подготовки вводимых данных;
ошибки пользователей при подготовке исходной информации.
Неверные действия пользователя, приводящие к отказу в процессе функционирования ПО, связаны прежде всего с неправильной интерпретацией сообщений, с неправильными действиями пользователя в процессе диалога с ЭВМ и т. д.
Отказы ПО, обусловленные ошибками пользователя, называются ошибками использования. Часто эти ошибки являются следствием некачественной программной документации (неверное описание возможностей программы, режимов работы, форматов входной и выходной информации, диагностических сообщений и т. д.).
Неисправность аппаратуры. Неисправности, возникающие при работе аппаратуры, используемой для реализации вычислительного процесса, оказывают определенное влияние на характеристику надежности ПО. Появление отказа
или сбоя в работе аппаратуры приводит к нарушению нормального хода вычислительного процесса и во многих случаях— к искажению данных и текстов программ в основной и внешней памяти.
ПОСЛЕДСТВИЯ И ПРИЗНАКИ ПОЯВЛЕНИЯ ОШИБОК
В ПРОГРАММЕ
Следствием появления ошибки в программе является ее отказ, заключающийся в отклонении от выполнения программой заданных функций. В зависимости от степени серьезности последствий ошибок (отказов) в программе эти отклонения можно разделить следующим образом:
полное прекращение выполнения функций на длительное или неопределенное время;
кратковременное нарушение хода вычислительного процесса.
Степень серьезности последствий ошибок в программе может быть оценена соотношением между длительностью восстановительных работ, которые необходимо произвести после отказа в программе, и динамическими характеристиками объектов, использующих результаты работы программных средств. К таким характеристикам объектов относятся, например, инерционность объектов, выступающих в качестве источников и потребителей информации; заданная частота решения задач обработки информации; заданное время реакции вычислительной системы на запросы пользователей и др.
Наиболее типичными симптомами появления ошибок в программе являются [37]:
преждевременное (аварийное) окончание выполнения программы;
недопустимое увеличение времени выполнения программы;
зацикливание ЭВМ на выполнении некоторой последовательности команд одной из программ;
полная потеря или значительное искажение накопленных данных, необходимых для успешного выполнения решаемых задач;
нарушение последовательности вызова отдельных программ, в результате чего происходит пропуск необходимых программ либо непредусмотренное обращение к программам;
искажение отдельных элементов данных (входных, вы-
ходных, промежуточных) в результате обработки искаженной исходной информации.
Аварийное завершение прикладных программ, как правило, легко идентифицируется, так как операционные системы обеспечивают возможность выдачи сообщений, содержащих соответствующий аварийный код (ABEND). Типичными причинами появления кодов аварийного завершения являются ошибки при выполнении макрокоманды; неверное использование методов доступа; нарушение защиты памяти; нехватка ресурсов памяти; неверное использование макрокоманды; возникновение программных прерываний, для которых не указан обработчик, и др.
При появлении подобных ошибок после анализа аварийного кода имеется принципиальная возможность немедленного повторения запуска прикладной программы. Для увеличения эффективности восстановительных процедур необходимо:
предусмотреть в программах специальные средства диагностики кодов аварийных завершений, в том числе кодов, формируемых самими пользователями;
ввести в программы контрольные точки;
обеспечить возможности рестарта программ с контрольных точек.
АНАЛИТИЧЕСКИЕ МОДЕЛИ НАДЕЖНОСТИ ПРОГРАММ
Аналитические модели надежности дают возможность исследовать закономерности проявления ошибок в программах, а также прогнозировать надежность при разработке и эксплуатации. Модели надежности программ строятся на предположении, что проявление ошибки является случайным событием и поэтому имеет вероятностный характер. Такие модели предназначены для оценки показателей надежности программ и программных комплексов в процессе тестирования: числа ошибок, оставшихся невыявленными; времени, необходимого для выявления очередной ошибки в процессе эксплуатации программы; времени, необходимого для выявления всех ошибок с заданной вероятностью и т. д. Модели дают возможность принять обоснованное решение о времени прекращения отладочных работ.
При построении моделей используются следующие характеристики надежности программы.
Функция надежности P(t), определяемая как вероятность того, что ошибки программы не проявятся на интер-
вале времени от 0 до t, т. е. время ее безотказной работы будет больше t.
Функция ненадежности Q^—вероятность того, что в течение времени t произойдет отказ программы как результат проявления действия ошибки в программе. Таким образом,
Q№ = V-PW-
Интенсивность отказов %(£)—условная плотность вероятности времени до возникновения отказа программы при условии, что до момента t отказа не было. Как было показано в § 2.2,
X ^ =—^L /р ^ = I .J^L I Ь (/).dt / | dt |/
Средняя наработка на отказ То — математическое ожидание временного интервала между последовательными отказами.
В настоящее время основными типами применяемых моделей надежности программ являются модели, основанные на предположении о дискретном изменении характеристик надежности программ в моменты устранения ошибок, и модели, основанные на экспоненциальном характере изменения числа ошибок в зависимости от времени тестирования и функционирования программы.
Модель надежности программ с дискретно-понижаю- щейся частотой (интенсивностью) проявления ошибок [77]. В этой модели предполагается, что интенсивность обнаружения ошибок описывается кусочно-постоянной функцией, пропорциональной числу неустраненных ошибок. Другими словами, предполагается, что интенсивность отказов Х(/) постоянна до обнаружения и исправления ошибки, после чего она опять становится константой, но с другим, меньшим значением. При этом предполагается, что между Х(/) и числом оставшихся в программе ошибок существует прямая зависимость:
% (О = К(М — i) = \ь (3.1) где М — неизвестное первоначальное число ошибок; I — число обнаруженных ошибок, зависящее от времени t; К — некоторая константа (рис. 3.1).
Плотность распределения времени обнаружения i-й ошибки h задается соотношением
Значение неизвестных параметров К и М может быть оценено на основании последовательности наблюдений интервалов между моментами обнаружения ошибок по методу максимального правдоподобия [48], При этом для нахождения оценок параметров К и М необходимо решить следующие уравнения:
2 ^-1)-’ = W(M-0m);7c = (mW(w-0j,
тт
где 0m—В[Ат\ А = ^ti; В= ^Иу, К и М— оценки соот- г=1г=1
ветственно К и М; т — число устраненных ошибок в мо
л^У..л^У..Рис. 3.1. Зависимость интенсивности отказов программы от времени работы (модель с дискретно- понижающейся интенсивностью проявления ошибок в программе)Рис. 3.1. Зависимость интенсивности отказов программы от времени работы (модель с дискретно- понижающейся интенсивностью проявления ошибок в программе)ttмент оценки надежности программ.
л^У..
л^У..
Рис. 3.1. Зависимость интенсивности отказов программы от времени работы (модель с дискретно- понижающейся интенсивностью проявления ошибок в программе)
Рис. 3.1. Зависимость интенсивности отказов программы от времени работы (модель с дискретно- понижающейся интенсивностью проявления ошибок в программе)
t
t
Рассмотренная модель надежности программ является достаточно грубой. На практике часто не соблюдаются условия, на которых она построена. Нередко при устранении ошибки вносятся новые ошибки. Во многих случаях не соблюдается также основное предположение, что при всяком устранении ошибки интенсивность отка-
зов уменьшается на одну
и ту же величину К. Не всегда удается определить и устранить причину отказа, и программу часто продолжают использовать, так как при других исходных данных ошибка, вызвавшая отказ, может себя и не проявить.
Модель надежности программ с дискретным увеличением времени наработки на отказ. В [16] предложена модель надежности программ, построенная на предположении, что устранение ошибки в программе приводит к увеличению времени наработки на отказ на одну и ту же случайную величину.
Предполагается, что время между двумя последовательными отказами T(1) является случайной величиной, которую можно представить в виде суммы двух случайных величин:
pU)pU)— уб'-ч _|_ Д7<‘)1— уб'-ч _|_ Д7<‘)1(3-2)(3-2)
pU)
pU)
— уб'-ч _|_ Д7<‘)1
— уб'-ч _|_ Д7<‘)1
(3-2)
(3-2)
где случайные величины АГФ независимы и имеют одинаковые математические ожидания Л1 [АТ] и средние квадратические отклонения адг.
через времячерез времяТ mТ mИз (3.2) следует, что m-й отказ программы произойдет
через время
через время
Т m
Т m
Предполагается также, что 7'<0,<^ ^^Т^\ Основанием /=1
для такого предположения является то, что отказы про- раммы в начальном периоде эксплуатации возникают часто. В этом случае можно считать, что
Т^ га kT№
При этих предположениях средняя наработка между (т—1)-м и m-м отказами программы равна
Тт = М(Т<т>) = /пЛ1[АГ|,(3.3)
а средняя наработка до возникновения m-го отказа определяется выражением
Тт = М кТ^ = ^±4.. м [АГ].(3.4)
Оценки величин М[АГ], адг могут быть получены по данным об отказах программы в течение периода наблюдения /н следующим образом:
mHтн
м [ап = — V [ — /w-1’] = — V f = l1=1
тнсм =1V (А/,') — М [АГ])2,
О
где тн— число отказов программы за период (0, Гт); ti—■ момент возникновения Pro отказа программы.
Функция надежности определяется в зависимости от числа возникших отказов
Р (0 = Ф /(з,5)
2 \ m /
где Ф(х) —функция Лапласа.
Экспоненциальная модель надежности программ [37]. Модель основана на предположении об экспоненциальном характере изменения во времени числа ошибок в программе.
В этой модели прогнозируется надежность программы на основе данных, полученных во время тестирования. В модели вводится суммарное время функционирования т, которое отсчитывается от момента начала тестирования программы (с устранением обнаруженных ошибок) до контрольного момента, когда производится оценка надежности.
Предполагается, что все ошибки в программе независимы и проявляются в случайные моменты времени с постоянной средней интенсивностью в течение всего времени выполнения программы. Это означает, что число ошибок, имеющихся в программе в данный момент, имеет пуассоновское распределение, а временной интервал между двумя отказами распределен по экспоненциальному закону, параметр которого изменяется после исправления ошибки.
Следует отметить, что характер закономерностей в этой модели остается таким же, как и в рассмотренных ранее, а именно интенсивность отказов предполагается пропорциональной числу оставшихся ошибок. Основное отличие данной модели от предыдущих состоит в том, что интенсивность отказов предполагается непрерывной функцией. Это упрощает математическое описание модели, а модель приобретает дополнительную гибкость.
Пусть Л4— число ошибок, имеющихся в программе перед фазой тестирования (М рассматривается как некоторая константа); т(т) —конечное число исправленных ошибок; т0(т) —число оставшихся ошибок. Тогда
т0 (т) = М — m (т)(3.6)
При принятых предположениях интенсивность отказов пропорциональна т0(т), т. е.
К (т) = СтП (т),(3.7)
где С — коэффициент пропорциональности, учитывающий реальное быстродействие ЭВМ и число команд в программе. Введем дополнительное предположение, что в процессе корректировки новые ошибки не порождаются, т. е. что интенсивность исправления ошибок dm/dt будет равна интенсивности их обнаружения, т. е.
dmldT — X^.(3.8)
Решая совместно (3.7) и (3.8), получаем
(dm/dr) + Ст = СМ.(3.9)
Перед началом работы ЭВМ (/=0) ни одна ошибка исправлена не была (т = 0), поэтому решением уравнения (3.9) является
т = МЦ— ехр(—Ст)].(З.Ю)
Будем характеризовать надежность программы после тестирования в течение времени т средним временем наработки на отказ:
Т0 = 1А(т).(3.11)
Следовательно,
То = (1/СМ) ехр (Ст).(3.12)
Введем То— исходное значение среднего времени наработки на отказ перед тестированием. Тогда
То = 1!СМ.(3.13)
В результате имеем
Та =Тоехр^т/МТо\(3.14)
Очевидно, что среднее время наработки на отказ увеличивается по мере выявления и исправления ошибок.
Рассмотрим более общий случай, когда в процессе корректировки могут появляться новые ошибки. Пусть В — коэффициент уменьшения ошибок, определяемый как отношение интенсивности уменьшения ошибок к интенсивности их проявления, т. е. к интенсивности отказов.
Пусть п— число обнаруженных отказов, а No— число отказов, которые должны произойти, чтобы можно было выявить и устранить m соответствующих ошибок, т. е.
п = m/В, Л'о = М/В.
В этом случае среднее время наработки на отказ TQ и число обнаруженных отказов п определяются следующими соотношениями:
Тп = WBCM0') ехр (ВСт);(3.15)
ц = Мо [ 1 — ехр (—ВСт)].(3.1б)
Тогда для значения среднего времени наработки на отказ перед тестированием справедливо
То =;MBCN0.(3.17)
В результате получаем
TQ = Toexp^NoTo>,(3.18)
п = У0[1 —ехр(—т/У0Г0)].(3.19)
Для практического использования представляет интерес число ошибок Д/г, которое должно быть обнаружено и исправлено для того, чтобы добиться увеличения среднего времени наработки на отказ от Ди до Т02. Этот показатель может быть получен из следующих соотношений:
^N^l-To/тЛ(3.30)
\п — п2— пг.(3.21)
Следовательно,
Д^= N0T^ l/7-oi - №] -(3.22)
Дополнительноевремя работы, необходимоедляобеспечения увеличениясреднего времени наработкинаотказ
с 7oi до 702, определяется как
kT - МД^ЦТ®/?^.(3.23)
Рассмотрим, каким образом можно оценить основные параметры модели. Коэффициент В может быть определен исходя из статистических данных по числу ошибок, порожденных во время обнаружения других ошибок. Можно считать, что для систем программного обеспечения общего назначения В изменяется в диапазоне 0,91—0,95.
Для оценки М и Мо можно рассчитать среднюю интенсивность ошибок (число ошибок на одну команду) в начале различных фаз тестирования. По оценкам, данным в [32, 48], в начале процесса тестирования для программ, написанных на языке ассемблера, число ошибок на 1000 команд варьируется от 4 до 8. Рассмотренная модель может применяться для определения времени испытаний программ с целью достижения заданного уровня надежности, а также для оценки числа оставшихся в программе ошибок.
Модель надежности больших программных комплексов
Для прогноза надежности больших программных комплексов может быть использована марковская модель [69]. Надежность всего программного комплекса определяется как функция надежности ее составных частей. Подобная оценка значительно облегчается, если программа строится по модульному принципу.
Мерой надежности программного модуля будем считать вероятность того, что модуль выполняет возложенную на него функцию корректно, т. е. выдает корректные выходные данные и корректно передает управление следующему модулю. Каждому набору входных данных, поступающих на вход программы, соответствует некоторая последовательность выполняемых модулей. Следовательно, надежность программного комплекса будет зависеть от последовательности выполняемых модулей и надежности каждого из этих модулей.
Будем считать, что надежности модулей — величины независимые. Общий результат работы программы будет некорректным, если хотя бы в одном из выполненных в данном прогоне программы модуле была ошибка. Кроме того, будем считать, что надежность каждого модуля может быть некоторым образом определена.
Предположим также, что управление модулями программы может быть представлено как марковский процесс, т. е. выбор следующего для выполнения модуля зависит, только от модуля, выполняемого в данный момент, и не зависит от предыстории. Будем также предполагать, что вероятности передачи управления между модулями—величины постоянные и полностью характеризуют способ использования программы пользователем.
Представим структуру управления программы в виде направленного графа, в котором каждая вершина Nt (i=l, п) соответствует некоторому программному модулю, а дуга (N\, N,)—возможной передаче управления от N: к Nj. Каждой дуге (М„ N,) соотнесем величину вероятности Рц перехода из вершины Nt по дуге (Nt, Nj), а каждой вершине N; — величину Ri— вероятность безотказной работы соответствующего модуля. Можно считать, что граф програм-, мы имеет единственную входную Nv, единственную выходную Nn и две дополнительные вершины, соответствующие корректному С и ошибочному F выходным результатам.
Будем считать, что при проявлении ошибки осуществляется переход в состояние F по дуге (Ni, F) с вероятностью 1—Ri независимо от правильности последующей обработки. Если модуль Nt выдает правильный результат, то осуществляется переход к выполнению модуля У, с вероятностью RtPij. Переход из выходного состояния Nn в состояние С соответствует корректному завершению программы и происходит с вероятностью Rn.
Таким образом, матрица переходных вероятностей Р,
элементы которой Р^ соответствуют переходу марковского процесса из состояния I в состояние /, имеет следующий вид:
"1
Nt
0
"a
*iP12
...Nj.
-R1P1)"‘
*1
Nn
Pin
c
0
F
1 -R,
N.
0
Ri Pi2
- Ri pu -
Ri
Pin
0
X~Rl
"n-i
0 Rn
-i p(n—Da
"■ Rn—i p(n—1M ■"
Rn-1
P(n
—On 0
1-Rn-i
"n
0
0
...о ..
0
"n
l~Rn
С
0
0
...0..
0
1
0
F
0
0
...0..
0
0
1
(3.2
Надежность всего программного комплекса
может быть
черкивания состояниямчеркивания состояниямвычислена как вероятность достижения конечного состояния С из начального состояния графа. Для этого рассмотрим матрицу Q, которая получена из матрицы Р после вы-
черкивания состояниям
черкивания состояниям
"1
"a
♦ 6 •
•••"n
0
Ri PIa
» ♦ •
••• RAn
0
RiPl2
•..
RipU
••• Rtpw
0
Rn—1 p(n—1)2
Rn—i pU—i)j
• • • Rn—ip(n— l)n
0
0
•. •
0
...0
N.
столбцов и строк, соответствующих конечным С и F:
"п-1 N_
0=
(3.25)
Для пень Р. ковский стояниеДля пень Р. ковский стояниеТогда матрицаТогда матрицакаждого целого fe>0 определим Р как к-ю сте-Очевидно, P*(t,/) —это вероятность того, что мар-процесс за к шагов перейдет из состояния г в со-
Для пень Р. ковский стояние
Для пень Р. ковский стояние
Тогда матрица
Тогда матрица
(3.26)(3.26)Т = I + Р + рг +
(3.26)
(3.26)
к=У
определяет вероятности перехода из одного состояния в другое за произвольное число шагов.
Пусть S — квадратная матрица размерности/г такая, что
Положим W=I—Q, тогда согласно [2] имеем S = W-1 = (I —Q)-1,Положим W=I—Q, тогда согласно [2] имеем S = W-1 = (I —Q)-1,(3.27)(3.28)(3.27)(3.28)
Положим W=I—Q, тогда согласно [2] имеем S = W-1 = (I —Q)-1,
Положим W=I—Q, тогда согласно [2] имеем S = W-1 = (I —Q)-1,
(3.27)
(3.28)
(3.27)
(3.28)
откуда надежность программного комплекса
R = S(1, n)Rn.(3.29)
На рис. 3.2 в качестве примера изображен граф, отражающий структуру программного комплекса, содержащего
Рис. 3.2. Пример графа программного комплексаРис. 3.2. Пример графа программного комплексаРис. 3.3. Марковская модель надежности программного комплексаРис. 3.3. Марковская модель надежности программного комплекса
Рис. 3.2. Пример графа программного комплекса
Рис. 3.2. Пример графа программного комплекса
Рис. 3.3. Марковская модель надежности программного комплекса
Рис. 3.3. Марковская модель надежности программного комплекса
семь модулей, где Nt — входной модуль, a N? — выходной. Надежность каждого из модулей Nt программы задается константой Rj.
Пусть, например,
^ = 0,999; Рг = 0,970; R3 = 0,980;= 0,995;
R, = 0,985; R6 = 0,950; R, = 0,980.
Пусть также известны вероятности Р^ передачи управ-
ления между модулями N, и Nf.
Pia = 0,6; Г13 = 0,4; Р23 = 0,7; Р24 = 0,3; Р34 = 1,0;
Р45 = 0,4; Р46 = 0,6; Р52 = 0,2; Р68 = 0,2; Р51 = 0,6;
Р67 = 1,0.
Граф модели надежности программного комплекса представлен на рис. 3.3. Матрица Р переходных вероятностей выглядит следующим образом:
1
00 00
0
0
00
0
10 00
0
0
00
0
0,001 0 0,599 0,400
0
0
00
0
0,02 0 00,685
0,295
0
00
=
0
00 00
0
0
10
0
0,005 0 00
0
0,398 0,597 0
0
0,015 0 0,197 0
0
0
0,197 0,591
0
0,05 0 00
0
0
00,950
0,980
0,02 0 00
0
0
00
Матрица
Q имеет вид
0 0,599 0,400 0
0
0
0
0 00,685 0,295
0
0
0
0 000
0
1
0
Q =
0 000
0,398 0,597 0
0 0,197 00
0
0,197 0,591
0 000
0
0
0,950
0 000
0
0
0
5(1, 7) = [I —Q]-1 (1, 7) =0,938;
R = 5 (1,7) R- = 0,938 -0,980 = 0,919.
Таким образом, надежность программного комплекса в целом оценивается значением 0,919.'
Глава 4
АВТОМАТИЧЕСКИЙ КОНТРОЛЬ ПРАВИЛЬНОСТИ
ФУНКЦИОНИРОВАНИЯ ЭВМ
ФУНКЦИИ И ХАРАКТЕРИСТИКИ СИСТЕМЫ КОНТРОЛЯ
В гл. 1 было показано, что для уменьшения потерь от порождаемых неисправностями ЭВМ ошибок надо контролировать достоверность (безошибочность) работы машины
и предотвращать распространение ошибки в вычислительном процессе, так как в противном случае существенно усложняются и удлиняются процедуры проверки правильности работы программы, определения и устранения искажений в программе, данных и промежуточных результатах. С этой целью ЭВМ снабжают системой автоматического контроля правильности работы машины, которая при появлении ошибки немедленно приостанавливает вычисления и инициирует работу средств автоматического восстановления вычислительного процесса (см. гл. 5), а при необходимости и средств автоматического диагностирования, локализующих неисправность (см. гл. 6).
Наличие системы автоматического контроля способствует увеличению готовности и обслуживаемости ЭВМ.
ЭВМ можно рассматривать как преобразователь информации, а реализуемый в ней вычислительный процесс — как процесс преобразования информации. С этой точки зрения любые выполняемые ЭВМ операции могут быть сведены к следующим трем классам: передача информации, логические преобразования, арифметические преобразования.
При передаче информации кодовое (машинное) слово передается в пространстве (из одного узла машины в другой) или во времени (запоминание и хранение слова в запоминающем устройстве). Передача информации в пространстве и хранение, являются взаимно однозначными преобразованиями, при которых входное слово, поступающее на устройство или схему передачи (хранения) информации, и выходное слово на выходе устройства (схемы) совпадают.
Логическое преобразование в общем случае состоит в формировани по некоторым правилам из к входных двоичных слоев длиной п одного выходного слова той же длины. При этом двоичный символ в i-м разряде выходного слова зависит только от значений символов в I разрядах и не зависит от значений символов в других разрядах входных слов.
В ЭВМ обычно выполняются логические преобразования (операции) при ^ = 2 (сложение по модулю два, логическое ИЛИ, логическое И и др.) и при ^=1 (инверсия).
В арифметических преобразованиях (операциях) из двух входных слов, задающих числовые операнды, вырабатывается в соответствии с алгоритмами арифметических операций результирующее выходное слово, причем значение двоичного символа в i-м разряде выходного
слова определенным образом зависит от значений символов как в i-м, так и в некоторых других разрядах входных слов.
Из сказанного следует1, что для построения автоматического контроля следует иметь схемы контроля правильности передачи (и хранения) информации и правильности логических и арифметических преобразований.
В ряде случаев в системы автоматического контроля работы ЭВМ включают средства автоматической коррекции обнаруживаемых ошибок.
В основе систем контроля функционирования (и коррекции ошибок) ЭВМ лежит принцип избыточности, предполагающий использование той или иной избыточности (временной, информационной, аппаратурной, алгоритмической).
Временная избыточность предполагает дополнительные затраты времени на выполнение контрольных операций. Наиболее ярким примером является решение задачи методом двойного счета со сравнением получаемых результатов.
Информационная избыточность проявляется в представлении команд и данных ЭВМ кодами с дополнительными разрядами, используемыми в процедурах контроля и коррекции ошибок.
Аппаратурная избыточность состоит в применении дополнительной аппаратуры для реализации контроля и коррекции ошибок, например двух арифметическо-логических устройств, выполняющих параллельно во времени одни и те же операции со сравнением получаемых результатов.
Алгоритмическая избыточность предполагает выполнение решения задачи по разным алгоритмам (программам) с проверкой получаемых результатов на совпадение.
На практике системы автоматического контроля правильности работы ЭВМ строятся в основном на использовании информационной избыточности в сочетании с элементами избыточностей других типов.
Использование схем контроля правильности работы ЭВМ порождает проблему контроля правильности работы самих систем контроля. В последнее время эту проблему пытаются решать путем построения таких схем контроля, которые обладают свойством самоконтроля правильности своего процесса функционирования.
В современных ЭВМ общего назначения средства автоматического контроля обеспечивают контроль правильности функционирования до 90—95 % оборудования машины. При этом за рамками автоматического аппаратурного кон-
троля оказываются некоторые цепи управления, приема и передачи информации, а также синхронизации и сигнализации. Попытки дальнейшего увеличения доли контролируемого аппаратурными средствами оборудования наталкиваются на практически неоправданное возрастание объема аппаратуры автоматического контроля. Не охватываемые аппаратурным контролем цепи контролируются с помощью специальных тестовых программ при профилактических испытаниях или в режиме фоновой задачи при обработке пользовательских программ.
Важной характеристикой системы автоматического контроля является ее время реакции на ошибку, измеряемое числом тактов синхронизации между моментом возникновения ошибки и формированием сигнала прерывания от схем контроля (блокированием тактовых синхросигналов).
Казалось бы, что в идеальном случае следовало контролировать выполнение каждой микрооперации и переходить к выполнению следующей микрокоманды только после получения сигнала о правильности выполнения предыдущей микрокоманды. Однако при таком подходе производительность ЭВМ существенно уменьшается, причем без достаточных оснований, так как ошибки в работе ЭВМ возникают сравнительно редко, особенно если их соотнести с числом команд и микрокоманд, выполняемых в интервале между ошибками машины. На практике процедуры контроля реализуются во времени с небольшим отставанием параллельно с развитием процесса выполнения команд программы. В результате реакция на возникновение ошибки задерживается на один-два такта синхронизации.
Основными характеристиками систем автоматического контроля правильности функционирования ЭВМ являются: доля оборудования ЭВМ, охваченного системой контроля ошибок в функционировании ЭВМ; степень детализации, с которой система контроля указывает место возникновения ошибки; отношение количества оборудования системы контроля к общему объему оборудования ЭВМ; время реакции системы контроля на ошибку.
КЛАССИФИКАЦИЯ СРЕДСТВ КОНТРОЛЯ
Для удобства классификации средств контроля введем уровни представления ЭВМ: логический, функциональный,
кантролг соответствующих уровней.кантролг соответствующих уровней.Рис. 4.1. Уровни представления системы и соответствующие им средства контроляРис. 4.1. Уровни представления системы и соответствующие им средства контроля
кантролг соответствующих уровней.
кантролг соответствующих уровней.
Рис. 4.1. Уровни представления системы и соответствующие им средства контроля
Рис. 4.1. Уровни представления системы и соответствующие им средства контроля
системный и пользовательский (рис. 4.1). Каждому уровню
соответствуют средства контроля, условно показанные в виде защитного кольца. Замкнутость кольца определяется ве
роятностью обнаружения ошибок средствами контроля соответствующего уровня. Часть ошибок из-за того, что веро
ятность их обнаружения на каждом из уровней меньше 1,
проникает на следующий уровень и, в конце концов, может попасть в результат вычислений.
На логическом уровне используются следующие методы и соответствующие им средства контроля: коды с проверкой на чет- ность/нечетность, корректирующие коды Хемминга, циклические, остаточные и арифметические коды, контроль дублированием со сравнением результатов и др.
Обнаружение ошибок на логическом уровне производится в ма-
шине непрерывно и, следовательно, не должно вызывать заметного снижения быстродействия машины. Поэтому эта функция возлагается обычно на быстродейст-
вующие аппаратурные средства контроля, которые позволяют почти полностью совместить во времени выполнение основных и контрольных операций.
Средства контроля логического уровня требуют дополнительных и весьма значительных затрат аппаратуры. В тех случаях, когда по соображениям стоимости такие за
траты невозможны, используются средства контроля других уровней.
На функциональном уровне используется контроль с помощью таймеров простоя, контроль корректности протоколов, периодическое микропрограммное или программное тестирование.
Контроль с помощью таймеров простоя, называемых также охранными таймерами (в зарубежной литературе — watchdog timers), является наиболее простым средством контроля и в силу этого широко используется в микропроцессорных устройствах и микроЭВМ. Охранный таймер работает следующим образом: при нормальной работе про-
цессор (микропроцессор) периодически через время таймаута запускает внешний по отношению к нему таймер (счетчик обратного счета). Последний начинает отсчитывать время простоя, признаком окончания которого является нулевое состояние счетчика. При нормальной работе таймер не заканчивает счета, так как повторный запуск происходит до его окончания. Если за время таймаута процессор не запустит таймер, последний включает прерывание и восстановительные процедуры.
В больших ЭВМ, таких как, например, ЭВМ ЕС-1046, охранные таймеры используются в качестве дополнения к средствам контроля логического уровня, обеспечивая повышение вероятности обнаружения ошибок. В ЭВМ ЕС-1046 этот таймер называется ограничителем времени простоя процессора.
Допустимое время простоя (таймера) 30 с. Его истечение вызывает прерывание от схем контроля.
Развитием охранных таймеров являются охранные процессоры, которые обнаруживают ошибки основного процессора путем отслеживания его активности. Например, каждому линейному участку микропрограмм (программ) может соответствовать контрольная сумма микрокоманд (команд). Охранный процессор в начале линейного участка принимает контрольную сумму, а в конце его сравнивает полученную контрольную сумму с эталонной. Основной проблемой при использовании охранных процессоров является выбор параметров для отслеживания вычислительного процесса и уменьшение непроизводительных затрат времени. Роль охранных могут выполнять сервисные процессоры (см. гл. 7).
Средство контроля функционального уровня — периодическое микропрограммное или программное тестирование используется для обеспечения требуемой вероятности обнаружения ошибок в тех случаях, когда средства контроля логического уровня не охватывают всех узлов ЭВМ. При выполнении таких тестов ЭВМ прекращает вычисления на время тестирования. Эффективность периодического тестирования возрастает с увеличением его продолжительности. Однако при этом возрастают непроизводительные затраты машинного времени. Согласно [38] оптимальная периодичность тестирования может быть определена по формуле
где ГОпт — оптимальная периодичность тестирования; t — 88
длительность тестирования; X — интенсивность потока отказов в аппаратуре, охваченной тестовым контролем. Например, если /=0,1 ч, а Х=Ю~2 ч-1, то 7'опТ= У^О^ЛСН2^ « 4,5 ч.
Одним из методов функционального контроля является периодическое самотестирование на программном уровне со сбросом охранного таймера при успешном завершении теста. Например, процессор может выполнить вычисления со стандартными входными данными и сравнивать результат с эталоном. Если результат совпадает с эталоном, таймер сбрасывается.
На системном уровне используется контроль по неверному ходу программы, нарушению защиты памяти, обращению к неиспользуемой или несуществующей области памяти, недействительному коду операции, некорректности форматов данных и команд, форматов и протоколов обмена с внешними устройствами.
В современных ЭВМ. общего назначения средства контроля логического, функционального и системного уровней обеспечивают обнаружение более 80 % ошибок, вызванных неисправностями.
На пользовательском уровне используется контроль с помощью двойного счета, проверка на допустимость входных и выходных параметров программы, реверсивный контроль.
Контроль на допустимость входных и выходных параметров основан на проверке принадлежности параметров определенному диапазону значений, а также сохранения этого диапазона значений при последовательном итеративном или рекурсивном выполнении программного модуля. Контроль входных параметров предотвращает распространение ошибочных результатов.
Реверсивный контроль основан на том, что по результатам работы программы определяются соответствующие входные параметры, которые сравниваются с реальными.
МОДЕЛЬ ПРОЦЕССА ОБНАРУЖЕНИЯ ОШИБОК
Ошибка, как правило, является следствием неисправности. Неисправность приводит к ошибке лишь в том случае, если она изменяет значение сигнала на противоположное, т. е. ошибка есть проявление неисправности. До тех пор пока этого не произойдет, неисправность остается скрытой.
Неисправности обычно классифицируют по источнику происхождения, степени распространения и длительности.
По источникупроисхождения различают внутренние и внешние неисправности. К первым относятся неисправности электронных компонентов схемы, а ко вторым — различные наводки, помехи и электромагнитная радиация. По отношению к уровням неисправности можно рассматривать как детерминированные (соответствующие уровню логического нуля или единицы) и недетерминированные, которые могут восприниматься как 0 и как 1. По степени распространения различают локальные (одиночные) и распространенные (кратные) неисправности. Если первые обычно затрагивают одну логическую переменную, то вторые — несколько. Распространенные неисправности — наиболее вероятный тип неисправностей в БИС и СБИС, так как ввиду небольших размеров электронных схем отказ затрагивает обычно несколько цепей, а следовательно, несколько логических переменных.
По длительности различают постоянные, случайные и перемежающиеся неисправности. Причинами случайных Неисправностей являются кратковременное изменение параметров из-за колебаний температуры, изменение задержек, магнитная радиация, помехи по питанию, воздействие а-ча- стиц на полупроводниковые схемы.
Перемежающиеся неисправности являются следствием постоянных неисправностей, проявляющихся при редком сочетании логических переменных, как, например, кодочувствительные неисправности ОЗУ. Другие причины — напряженная (критическая по задержкам) временная диаграмма, редкие случаи состязаний в схемах, нарушения контактов в разъемах и т.д.
Перемежающиеся неисправности характеризуются периодами активности и пассивности.
Интервал времени между моментами возникновения неисправности и появления ошибки называют периодом скры- тости неисправности [93].
Задачей системы контроля ЭВМ является обнаружение ошибки по возможности с большей временной и пространственной разрешающей способностью, т.е. максимально близко от места ее возникновения и с минимальной задержкой по времени.
Это удается не всегда и некоторые ошибки распространяются в результате передач информации, вызывая искажение информации в системе. В ЭВМ, использующих избыточное кодирование, ошибка в информации будет обнаружена по несоответствию информационных и контрольных
бит. Гораздо труднее обнаруживаются ошибки сигналов управления. Во многих микропроцессорах и микроЭВМ информационная избыточность не используется. В этих случаях необходимы другие средства обнаружения ошибок.
На рис. 4.2 показан типичный процесс обнаружения ошибки.
Интервал времени между моментами появления и обнаружения ошибки называется периодом обнаружения ошиб-
моментВозникновениянеиспра внестимоментВозникновениянеиспра внестиМоментвозникновенияошибкиМоментвозникновенияошибкиМоментобнаруженияошибкиМоментобнаруженияошибки
моментВозникновениянеиспра внести
моментВозникновениянеиспра внести
Моментвозникновенияошибки
Моментвозникновенияошибки
Моментобнаруженияошибки
Моментобнаруженияошибки
й - д-х- g X "■ Xй - д-х- g X "■ XПериов обнаруже-ния ошибкиПериов обнаруже-ния ошибкиВремяВремя
й - д-х- g X "■ X
й - д-х- g X "■ X
Периов обнаруже-ния ошибки
Периов обнаруже-ния ошибки
Время
Время
Периоб скрыт остинеисправности
Рис. 4.2. Процесс обнаружения ошибки: период А: в системе имеется активная неисправность; период В: неисправность стала пассивной; период С: в системе имеется ошибка
ки. Длительность этого периода оказывает влияние на вероятность и степень искажения информации в системе, сложность восстановительных процедур и достоверность результатов вычислений.
Рассматривая процесс обнаружения ошибок, выделим следующие состояния контролируемого вычислительного устройства [93]:
устройство исправно (И);
в устройстве имеется активная неисправность, но ошибка не проявилась (Н);
в устройстве имеется неисправность, перешедшая в пассивное состояние (ПН);
в устройстве имеется по меньшей мере одна необнаруженная ошибка и вызвавшая ее неисправность сохраняется (НО);
перемежающаяся неисправность стала пассивной или случайная неисправность самоустранилась после того, как они вызвали ошибку (СО);
ошибка обнаружена (ОО).
На рис. 4.3 представлен граф состояний для процесса обнаружения ошибок. Дуги графа помечены интенсивностями перехода из одного состояния в другое Хц.
Ошибка может быть обнаружена до и после искажения информации в системе. Чтобы различать эти два случая, введем соответственно два подсостояния: OOi и ОО2.
При возникновении неисправности устройство переходит из состояния И в состояние Н. Если неисправность случайная, она может самоустраниться и устройство возвратится в состояние И. Если неисправность перемежающаяся, т. е. имеет периоды активности и пассивности, могут иметь место переходы между состояниями Н и ПН и из со-
Рис. 4.3. Модель процесса обнаружения ошибкиРис. 4.3. Модель процесса обнаружения ошибкистояния И в состояние ПН (период пассивности перемежающейся неисправности).
Рис. 4.3. Модель процесса обнаружения ошибки
Рис. 4.3. Модель процесса обнаружения ошибки
Неисправность вызывает ошибку. Период обнаружения ошибки зависит от имеющихся средств контроля и их обнаруживающей способности.
Для ошибок, обнаруживаемых средствами контроля логического уровня, период обнаружения очень мал и ошибка практически не вызывает искажения информации. При этом устройство переходит из состояния И в состояние ООи
Этот переход может также обеспечиваться средствами контроля функционального уровня, если период тестирования достаточно мал для того, чтобы предотвратить распространение ошибки.
Если ошибка не обнаруживается средствами контроля логического уровня, она остается скрытой до обнаружения ее средствами контроля других уровней. Устройство переходит в состояние НО (необнаруженной ошибки). В этом состоянии ошибка вызывает искажение информации до ее обнаружения. При обнаружении ошибки система переходит в состояние ОО2.
Из состояния НО устройство может также перейти в состояние СО, если имела место случайная или перемежающаяся неисправность, которая самоустранилась или стала пассивной после того, как вызвала ошибку и повредила информацию.
Вследствие того, что вероятность обнаружения ошибок средствами контроля логического уровня меньше 1, часть ошибок вызывает искажение информации и, поскольку период обнаружения ошибки при этом имеет большую длительность, в устройстве возникают два нежелательных явления:
возможность выдачи неверного результата до того, как система обнаружит ошибку;
необходимость сложных и длительных процедур по восстановлению информации из-за распространения ошибок.
Считается, что вычислительный процесс заканчивается недостоверным результатом, если в момент его окончания в устройстве имеется необнаруженная ошибка. Вероятность недостоверного результата определяется вероятностью обнаружения ошибок средствами контроля всех уровней.
Задача выбора оптимального соотношения средств контроля различных уровней является одной из основных задач при проектировании ЭВМ. Наиболее изучены методы контроля логического уровня, что позволяет формализовать их проектирование. Для других уровней проектирование средств контроля не формализовано и в значительной мере зависит от искусства и интуиции проектировщиков системы.
КОНТРОЛЬ ПЕРЕДАЧИ ИНФОРМАЦИИ
При контроле передачи информации наибольшее распространение получили методы информационной избыточности, использующие коды с обнаружением и коррекцией ошибок.
Если длина кода п разрядов, то таким двоичным кодом можно представить максимум 2" различных слов. Если все разряды слова служат для представления информации, код называется простым (неизбыточным). Коды, в которых только часть кодовых слов используется для представления информации, называются избыточными. Часть слов в избыточных кодах являются запрещенными, и их появление при передаче информации свидетельствует о наличии ошибки. Принадлежность слова к разрешенным или запрещенным словам определяется правилами кодирования, и для различных кодов эти правила различны.
Коды разделяются на равномерные и неравномерные. В равномерных кодах все слова содержат одинаковое число разрядов. В неравномерных кодах число разрядов в словах может быть различным. В вычислительных машинах применяются преимущественно равномерные коды.
Равномерные избыточные коды делятся на разделимые и неразделимые. Разделимые коды всегда содержат постоянное число информационных (представляющих передаваемую информацию) и избыточных разрядов, причем из-
быточные разряды занимают одни и те же позиции в кодовом слове. В неразделимых кодах разряды кодового слова невозможно разделить на информационные и избыточные.
Способность кода обнаруживать или исправлять ошибки определяется так называемым минимальным кодовым расстоянием. Кодовым расстоянием между двумя словами называется число разрядов, в которых символы слов не совпадают. Если длина слова п, то кодовое расстояние может принимать значения от 1 до п. Минимальным кодовым расстоянием данного кода называется минимальное расстояние между двумя любыми словами в этом коде. Если имеется хотя бы одна пара слов, отличающихся друг от друга только в одном разряде, то минимальное расстояние данного кода равно 1.
Простой (неизбыточный) код имеет минимальное расстояние dmtn=\. Для разделимых избыточных кодов dmm>X. Если dmm^2, то любые два слова в данном коде отличаются не менее чем в двух разрядах, следовательно, любая одиночная ошибка приведет к появлению запрещенного слова и может быть обнаружена. Если dmm"^3, то любая одиночная ошибка создает запрещенное слово, отличающееся от правильного в одном разряде, а от любого другого разрешенного слова — не менее чем в двух разрядах. Заменяя запрещенное слово ближайшим к нему (в смысле кодового расстояния) разрешенным словом, можно исправить одиночную ошибку.
В общем случае, чтобы избыточный код позволял обнаруживать ошибки кратностью г, должно выполняться условие
dmtn>r + L (4 1)
Действительно, одновременная ошибка в г разрядах слова создает новое слово, отстоящее от первого на расстоянии г. Чтобы оно не совпало с каким-либо другим разрешенным словом, минимальное расстояние между двумя разрешенными словами должно быть хотя бы на единицу больше, чем г.
Для исправления r-кратной ошибки необходимо, чтобы новое слово, полученное в результате ошибки, не только не совпадало с каким-либо разрешенным словом, но и оставалось ближе к правильному слову, чем к любому другому разрешенному слову. От правильного слова новое отстоит на расстоянии г. Следовательно, от любого другого разрешенного слова оно должно отстоять не менее чем на
г+1, а минимальное кодовое расстояние должно быть не меньше суммы этих величин:
dm<„>2r + l. (4.2)
Код с проверкой четности образуется путем добавления к группе информационных разрядов, представляющих собой простой (неизбыточный) код, одного избыточного (контрольного) разряда.
При формировании кода слова в контрольный разряд записывается 0 или 1 таким образом, чтобы сумма единиц в слове, включая избыточный разряд, была четной (при контроле по четности) или нечетной (при контроле по нечетности). В дальнейшем при всех передачах (включая запись в память и считывание) слово передается вместе со своим контрольным разрядом. Если при передаче информации приемное устройство обнаруживает, что в принятом слове значение контрольного разряда не соответствует четности суммы единиц слова, то это воспринимается как признак ошибки.
Минимальное расстояние кода dm/n = 2, поэтому код с проверкой четности (нечетности) обнаруживает все одиночные ошибки, а кроме того, все случаи нечетного числа ошибок (3, 5 и т. д.). При одновременном возникновении двух или любого другого четного числа ошибок код с проверкой четности (нечетности) не обнаруживает ошибок.
При контроле по нечетности контролируется полное пропадание информации, так как кодовое слово, состоящее из 0, относится к запрещенным.
Код с проверкой четности имеет небольшую избыточность и не требует больших затрат оборудования на реализацию контроля. Этот код широко применяется в вычислительных машинах для контроля передач информации между регистрами и для контроля считываемой информации в оперативной памяти.
Легко установить связь кодирования при контроле по четности с выполнением сложения по модулю 2. Если число единиц в слове должно быть четным, то в контрольный разряд записывается прямой код суммы по модулю 2 всех информационных разрядов слова. При контроле на нечетность в контрольный разряд заносится обратный код указанной суммы.
Контроль по совпадению. При передачах можно использовать и другой вид контроля — контроль по совпадению. После передачи информации из одного регистра в другой
правильность передачи можно проверить путем поразрядного сравнения содержимого всех разрядов регистров.
При контроле по совпадению не требуется формирования каких-либо дополнительных контрольных разрядов, следовательно, этот метод основывается не на информационной, а на схемной избыточности.
Один из вариантов схемы контроля передач по совпадению показан на рис. 4.4. После передачи информации
из регистра А в регистр Б (или из Б в Д) через время, несколько большее времени установления переходных процессов в триггерах регистров, на выходе схемы появляется сигнал 1 при несовпадении содержимого А и 5 и 0 в противном случае. При контроле передачи по совпадению обнаруживаются ошибки любой кратности.
Затраты оборудования при контроле по совпадению меньше, чем при контроле по четности. Контроль по совпадению является быстродействующим, так как используется одна ступень формирования. В схеме проверки четности многоразрядного числа, как правило, больше одной ступени.
Однако контроль по совпадению обладает существенным недостатком. Этот метод позволяет проверить правильность передачи числа в регистр и отсутствие сбоев при его хранении только до тех пор, пока не изменит своего состояния регистр, из которого передавалась информация.
При контроле по четности проверяется не только правильность передачи, но и отсутствие сбоев при хранении числа в регистре (памяти) в течение сколь угодно долгого времени.
Корректирующие коды. Код Хэмминга. В ЭВМ, например, в оперативной памяти, в запоминающих устройствах на магнитных лентах и дисках применяют корректирующие коды, позволяющие не только обнаруживать, но и исправлять ошибки. К таким кодам относятся код Хэмминга, групповые корректирующие коды, циклические коды и Другие.
Код Хэмминга строится таким образом, что к имеющимся информационным разрядам слова добавляется Определенное число контрольных разрядов, которые формируются перед передачей информации путем подсчета четности суммы единиц для определенных групп информационных разрядов.
Контрольная аппаратура на приемном конце образует из принятых информационных и контрольных разрядов путем аналогичных подсчетов четности корректирующее число, которое равно 0 при отсутствии ошибки либо указывает место ошибки, например двоичный порядковый номер ошибочного разряда в слове. Ошибочный разряд автоматически корректируется путем изменения его состояния на противоположное.
Требуемое число контрольных разрядов (разрядность корректирующего числа) определяется из следующих соображений. Пусть кодовое слово длиной п разрядов имеет m информационных и к=п—m контрольных разрядов. Корректирующее число длиной & разрядов описывает 2ft Состояний, соответствующих отсутствию ошибки и появлению ошибки в i-м разряде.
Таким образом, должно соблюдаться соотношение
2* > » + 1 (4.3)
или 2*—к—1>т. (4.4)
Из этого неравенста следует, например, что пять контрольных разрядов позволяют передавать в коде Хэмминга от И до 26 информационных разрядов и т. д. Таким образом, избыточность кода Хэмминга значительно выше избыточности кода с проверкой четности.
Контроль по коду Хэмминга реализуется с помощью набора схем подсчета четности, которые при кодировании определяют контрольные разряды, а при декодировании формируют корректирующее число.
КОНТРОЛЬ ФУНКЦИОНИРОВАНИЯ, ПОЛУПРОВОДНИКОВЫХ
ОПЕРАТИВНЫХ ЗУ ‘
Полупроводниковые ЗУ представляют собой наиболее динамичную область развития микроэлектроники. Емкость ИС ЗУ растет гораздо быстрее плотности интеграции логических схем на БИС. И поскольку около половины интенсивности потока ошибок ЭВМ приходится на долю оперативных (основных) ЗУ, вполне понятны усилия, затрачиваемые на повышение его надежности. Оперативные ЗУ большой емкости (ОЗУ)—это динамические полупроводниковые ЗУ, обеспечивающие в несколько раз большую емкость по сравнению со статическими ОЗУ [68].
Причиной постоянных неисправностей в ИС ОЗУ являются отказы ИС, а случайных — изменение содержимого ОЗУ из-за флуктуаций питающего напряжения, кратковременных помех, воздействия а-частиц. Влияние а-частиц стало проявляться в связи с тем, что с ростом интеграции динамических ОЗУ емкость элемента ЗУ уменьшается, что сопровождается снижением критического заряда, способного изменить состояния конденсатора ячейки ЗУ.
Неисправности ИС ОЗУ обычно проявляются как неисправности одного бита, линии выборки разряда, линии выборки слова, обеих линий, всей ИС.
Для повышения надежности ОЗУ используются корректирующие коды (КК). Наиболее распространен класс кодов с коррекцией одиночной и обнаружением двойной ошибки (КО—ОД). Самым известным среди них является код Хэмминга. В последние годы были разработаны и другие коды, являющиеся модификацией кода Хэмминга. При-
мерой таких кодов являются коды с нечетными весами столбцов проверочной матрицы [68].
ТЭЗ 7ТЭЗ ПТЭЗ 1ТЭЗ иТЭЗ 7ТЭЗ ПТЭЗ 1ТЭЗ иРис. 4.5. Организация ОЗУ «один бит в одном ТЭЗ»Рис. 4.5. Организация ОЗУ «один бит в одном ТЭЗ»Число ошибок, возникающее в результате неисправности ИС ОЗУ, зависит от типа неисправности. Например, неисправность одной ячейки вызывает одиночную ошибку, а всей ИС ОЗУ — кратную. Обычно биты и адреса ОЗУ распределяют по ИС и ТЭЗ таким образом, чтобы ошибки можно было исправлять с помощью выбранного КК. При использовании кода КО—ОД наилучшим является размещение «один бит в одной ИС», как показано на рис. 4.5. В этом случае даже отказ всей ИС не нарушает работу
ТЭЗ 7ТЭЗ ПТЭЗ 1ТЭЗ и
ТЭЗ 7ТЭЗ ПТЭЗ 1ТЭЗ и
Рис. 4.5. Организация ОЗУ «один бит в одном ТЭЗ»
Рис. 4.5. Организация ОЗУ «один бит в одном ТЭЗ»
Рис. 4.6. Организация ОЗУ «4 бит в одном ТЭЗ»
ОЗУ. Благодаря такому размещению код КО—ОД повышает время наработки на отказ накопительной части ОЗУ до значения, сравнимого с аналогичным показателем остальных компонентов ОЗУ (дешифраторов, усилителей).
Как правило, ИС ОЗУ образует часть кодового слова, как показано на рис. 4.6. При таком размещении неисправность логики обрамления накопительной части ОЗУ может привести к групповой ошибке в соседних битах (кратность ошибки равна числу разрядов кодового слова, размещенного в одной ТЭЗ) [68].
Коды КО—ОД не в состоянии обнаружить подобные ошибки. Для этой цели применяются коды КО—ОД с дополнительной способностью обнаружения кратной ошибки в одной группе битов (КО—ОД—ООГ).
Если не использовано размещение ОЗУ по принципу «один бит в одной ИС») то неисправность ИС ОЗУ может вызвать кратную (по числу бит в ИС) ошибку. Например, если 32-битное слово ОЗУ размещается в 8-битных ИС, неисправность последней может вызвать групповую ошибку в восьми соседних битах. При такой организации ОЗУ
используются коды с коррекцией ошибок в одной группе и обнаружением в двух группах (КОГ—ОДГ).
С ростом емкости ОЗУ его надежность уменьшается и в ряде случаев оказывается целесообразным применение кода с коррекцией двойных и обнаружением тройных ошибок (КД—ОТ).
Коды КО—ОД. Для описания корректирующего кода используется проверочная матрица Н размерности гХ«, где г — число контрольных бит, a п=г-^к— длина кодового слова, где к — число информационных бит кодового слова. Проверочная матрица определяет условия, которым должно удовлетворять считанное из ОЗУ кодовое слово. Эти условия задаются в виде бит, сумма по модулю 2 которых должна быть равна нулю. Кодовое слово, считанное из ОЗУ и описываемое «-битным вектором V—(vi, v2, —. Уп), считается правильным, если выполняется условие
HVT = 0, (4.5)
где VT — есть транспонированный вектор V. Суммирование выполняется по модулю 2. При считывании кодового слова из ОЗУ выполняется проверка условия (4.5).
Процесс формирования контрольных бит перед записью кодового слова в ОЗУ описывается той же проверочной матрицей Н. С этой целью она представляется в виде
Н = |Р, IJ, (4.6) где Р — двоичная матрица размерности гХ^, а Ъ—единичная матрица размерности гХ^. Первые к бит кодового слова представляют собой информационные биты, г последних — контрольные.
Код, описываемый матрицей вида (4.6), является разделимым.
Слово, считанное из ОЗУ, U = Ui, и2> — , ии может отличаться от записанного слова V. Разницу между U и V определяет вектор ошибки Е= (вь е2,... ,еп), т. е. U = V+E. i-й бит U содержит ошибку только в том случае, когда е.^0.
Проверка считанного слова заключается в вычислении синдрома ошибки:
S = HUT = Н (VT + Ет) = НЕТ. (4.7)
Если S — нулевой вектор, считается, что ошибок нет. В противном случае синдром определяет вектор ошибки. 100
Синдром является суммой тех столбцов h матрицы Н, которым соответствуют ошибки. Если столбец Яг нулевой, ошибка в этой позиции кодового слова не окажет влияния на синдром и не позволит обнаружить ошибку. Если два столбца матрицы Н совпадают, то одиночные ошибки в каждой из этих позиций кода дают один и тот же синд
ром.
Из этих рассуждений следует, что Н-матрица кода КО—ОД должна удовлетворять следующим условиям:
вектор-столбцы матрицы Н не должны быть нулевыми и должны отличаться друг от друга;
сумма двух векторов-столбцов матрицы Н не должна равняться нулю или любому третьему вектор-столбцу матрицы Н.
Заметим, что для кодов КО—ОД с нечетными весами столбцов второе условие выполняется автоматически, поскольку сумма элементов любых двух столбцов имеет четный вес и поэтому не равна элементам третьего столбца.
Рассмотрим в качестве примера код Хэмминга. Информационные биты обозначим d\, d^, da, d^ а контрольные сь c2, Сз. Проверочная матрица этого кода
111 О1 Оd^ 1 О1d^ 1 О1d3 d^ Ci с2 Cg- 0 110 0 110 10 110 0 1d3 d^ Ci с2 Cg- 0 110 0 110 10 110 0 1
1
1
1 О
1 О
d^ 1 О
1
d^ 1 О
1
d3 d^ Ci с2 Cg- 0 110 0 110 10 110 0 1
d3 d^ Ci с2 Cg- 0 110 0 110 10 110 0 1
При записи информации в ОЗУ контрольные биты формируются по следующим уравнениям:
С1 — ^1 ® ^2 ф ^ С2 ~ ^1 Ф ^3 ® ^41Сз=^2®^зф^4.
В соответствии с этими уравнениями слово dvd2dad4 = = 0010 получает контрольные биты CiC2c3 = 011, т. е. кодовое слово равно dld2d3d4Clc2C3 = 0010011. Если при считывании из ОЗУ вместо этого слова получено U = 0110011, т. е. Е = 0100000, то синдром ошибки определится по выражению
= [101].
11111111
11111111
11111111
11111111
•
•
1
.1.1.1.1
.1.1.1.1
.1.1.1.1
.1.1.1.1
.1.1.1.1
.1.1.1.1
.1.1.1.1
.1.1.1.1
.1
..11..11
..11..11
..11..11
..11..11
..11..11
..11..11
-.11..11
..11..11
..1
....1111
....1111
....1111
....1111
....НИ
....1111
....1111
....1111
...1....
11111111
••••••••
11111111
11111111
11111111
....1...
11111111
11111111
шиш
шиш
1..
11111111
11111111
шиш
11111111
1.
.11.1. Л
1..1.11.
1..1.11.
.11.1..1
.11.1. л
1..1.11.
1..1.11.
Л1Л..1
1
Рис. 4.7. Проверочная матрица кода КО-—ОД ЭВМ. ЕС-1046
Синдром S= 101 совпадает со вторым столбцом матрицы Н, что свидетельствует об ошибке в этой позиции кодового слова.
В современных ЭВМ средней и большой производительности широко используется код КО—ОД [64, 72]. Такой код используется, например, в ЭВМ ЕС-1046. Длина кодового слова равна 72 бит, из которых 64 информационных и 8 контрольных. Проверочная матрица этого кода приведена на рис. 4.7.
При записи информации в ОЗУ контрольные биты кода КО—ОД образуются с помощью генератора контрольных бит в соответствии с уравнением (4.6), а при чтении из ОЗУ — с помощью генератора синдромов. В качестве примера на рис. 4.8 показан генератор синдромов для приведенного выше кода Хэмминга.
Алгоритм исправления одиночных и обнаружения двойных ошибок состоит из следующих шагов:
проверяется условие S = 0 (8— синдром ошибки). Если 8 = 0, считанное слово безошибочное;
если 8^0, необходимо
“2 ^f .^ йд tg
^ j^ йд 4 ] 414
©
^ 4- 4)4
©
©
Рис. 4 8. Генератор синдромов кода Хэмминга
найти соответствие
синдромом и столбцом матрицы Н. Поиск выполняется с помощью п r-входовых схем И;
если 8 совпадает с t-м столбцом матрицы Н, то это значит, что t-й бит слова содержит ошибку и должен быть инвертирован;
если S не совпадает ни с одним из столбцов матрицы Н, то ошибка неисправима.
На рис. 4.9 приведена схема, реализующая алгоритм. Она состоит из r-входовой схемы ИЛИ для обнаружения нулевого синдрома, п r-входовых схем И для дешифрирования синдромов, и-входовой схемы ИЛИ для формирования сигнала неисправимой ошибки и п двухвходовых схем сложения по модулю 2 для инвертирования ошибочного бита.
Коды КО—ОД-ООГ. В тех случаях, когда в ИС ОЗУ размещается несколько бит кодового слова, отказ ИС может привести к групповой ошибке. Причиной групповой ошибки может быть также отказ логики обрамления нако-
пительных ТЭЗ. Для обнаружения таких ошибок используется код с обнаружением кратной ошибки в одной группе бит (КО—ОД—ООГ). Н-матрица кода КО—ОД—ООГ может быть представлена в виде N подматриц размерности rXb, т. е. подматриц Вь В2, ..., Bjv, где b — число соседних бит, в которых может произойти групповая ошибка, а В/
СинВром ошибка St szSr
Исправленное слова
Рис. 4.9. Схема обнаружения и коррекции ошибок кодов КО—ОД
представляет собой условия проверки на нечетность для t-й группы.
Синдромы возможных ошибок в t-й группе представляют собой сумму возможных комбинаций столбцов подматрицы В/.
Обозначим ненулевые комбинации столбцов из В, через (В,} . Н-матрица кода КО—ОД—ООГ должна удовлетворять условиям 1 и 2 для кода КО—ОД и дополнительному условию:
каждый вектор из < В,) должен быть ненулевым и не должен совпадать с каким-либо вектор-столбцом из В / для / -t— i •
В противном случае, ошибка в t-й группе может оказаться необнаруженной или может быть принятой за одиночную исправимую ошибку в одной из позиций, соответствующих i-й группе.
Для 6^4 большинство кодов КО—ОД может быть преобразовано в код КО—ОД—ООГ. Преобразование заключается в перестановке вектор-столбцов Н-матрицы исход-
ного кода. Поскольку при этом используется одна и та же кодирующая и декодирующая аппаратура, при преобразовании кода КО—ОД в КО—ОД—ООГ дополнительной аппаратуры не требуется. На рис. 4.10, а показана Н-матри- ца кода КО—ОД (40, 32) и полученная из нее Н-матрица кода КО—ОД—ООГ (40, 32) (рис. 4.10,6).
1.1.1.1.
1.1.1.1.
п
11
1
.1.1.1.1
.1.1.1.1
..п....
..И....
.1
11111111
....н..
....И..
..1
iiiiiiii
н
11
...1....
11
шиш
...и...
..и....
..и....
11111111
1..
....и..
....и..
1.1.1.1.
1.1.1.1.
1.
11
п
.1.1.1.1
а)
.1.1.1.1
1
1111....
ни....
1...1...
1...1...
1
....1111
....пи
.1...1..
.1...L.
11111111
..1...1.
..1...1.
.л
шиш
...1...1
...1...1
...1....
1...1...
1...1...
11111111
...л...
.1...1..
.1...1..
iiiiiiii
1..
..1...1.
..1...1.
1111....
пи....
1.
...1...1
...1...1
....1111
....ни
1
б)
Рис. 4.10. Проверочная матрица: а — кода КО—ОД: б — КО—ОД—ООF
Коды КОГ—ОДГ. При использовании в ОЗУ Ь-битных корпусов коды КО—ОД не обеспечивают требуемой надежности и достоверности, так как вероятность кратной ошибки весьма велика. Для повышения надежности и достоверности таких ОЗУ используют коды с коррекцией ошибок в одной группе бит и обнаружением ошибок в двух группах (КОГ — ОДГ) [68]. Кодовое слово КОГ — ОДГ содержит N b-битных групп. Известно, что код Хэмминга с исправлением одиночной ошибки может быть построен не только для двоичных символов, но и для символов любого конечного поля. Если F представляет собой такое поле, то проверочная матрица для кода КО—ОД с элементами из F может быть построена путем выбора в качестве столбцов Н-матрицы таких ненулевых сочетаний элементов из F, что никакие два столбца Н-матрицы не являются линейно кратными друг другу.
В частности, при использовании поля Галуа GF^6) каждый элемент поля может быть представлен двоичным вектором длиной b и все b соседних ошибок в группах, соответствующих элементам GF(2by могут быть исправлены.
В общем случае, когда КОГ—ОДГ состоит из N Ь-бит- ных групп, двоичный вектор длиной b рассматривается в качестве элемента конечного поля GF^by При таком представлении минимальное кодовое расстояние кода КОГ— ОДГ d^4. Этот код может быть описан проверочной матрицей Н, удовлетворяющей уравнениям (4.5) и (4.6), компонентами которой являются элементы GF^2by Обозначим вектор-столбец матрицы Н через hi, где l^t^^. Код КОГ—ОДГ должен удовлетворять следующим условиям:
hi^=Xhj для t#/, XeGF(2by,
Ki-vXihj^X^ для разных i, j, f и XiX2G.GF(2by
Рассмотрим в качестве примера код КОГ—ОДГ с Ь = = 3. Если г число контрольных символов, то код длиной N—2Г + 2Ь символов может быть построен путем расширения кода Рида—Соломона длиной (2й)—1. Проверочная матрица такого кода строится следующим образом:
Н =Н =1111111 т т21 т т21 ... 1100"т2 ... Г6-2 О 1 от4 ... j2(26-2) о 0 L1 ... 1100"т2 ... Г6-2 О 1 от4 ... j2(26-2) о 0 L(4.8)(4.8)
Н =
Н =
1
1
1
1
1
1
1 т т2
1 т т2
1 ... 1100"
т2 ... Г6-2 О 1 о
т4 ... j2(26-2) о 0 L
1 ... 1100"
т2 ... Г6-2 О 1 о
т4 ... j2(26-2) о 0 L
(4.8)
(4.8)
где 1—единичная матрица размерности bXb; 0 — нулевая матрица размерности bXb; Т — сопровождающая матрица X; X—примитивный GF^by Если X является корнем примитивного многочлена Р(Х) «а0+а1Х + а2Х2 + ...аг,_1Хь~1,
то эта матрица-00.. • 0 о010• • • 0 ц101• • • 0 а2Т =•• • ••то эта матрица-00.. • 0 о010• • • 0 ц101• • • 0 а2Т =•• • ••(4.9)(4.9)0 00 01 СЦ1 СЦ
то эта матрица
-0
0
.. • 0 о0
1
0
• • • 0 ц1
0
1
• • • 0 а2
Т =
•
• • ••
то эта матрица
-0
0
.. • 0 о0
1
0
• • • 0 ц1
0
1
• • • 0 а2
Т =
•
• • ••
(4.9)
(4.9)
0 0
0 0
1 СЦ
1 СЦ
Например, сопровождающая матрица X для (4.8)
КОГ—ОДГ [7, 10]КОГ—ОДГ [7, 10]Проверочная матрица для кода
КОГ—ОДГ [7, 10]
КОГ—ОДГ [7, 10]
с 6 = 3 показана на рис. 4.11. В Н-матрице (4.8) последние три столбца представляют собой контрольные символы, а остальные — информационные.
1..
1..
1..
1..
1..
1..
1..
1..
.1.
.1.
.1.
.1.
.1.
.1.
.1.
.1.
...
. . .
..1
..1
..1
-.1
..1
-.1
..1
..1
*..
•..
1..
..1
.1.
1.1
.11
111
11.
1..
.1.
1.1
.11
111
11.
1..
..1
. - .
.1.
..1
.1.
1.1
.11
111
11.
1..
*..
..1
...
1..
.1.
.11
11.
..1
1.1
111
1..
.1.
.11
11.
..1
1.1
111
1..
. . .
...
.1.
..1
1.1
111
1..
.1.
.11
11.
*.,
•..
..1
Рис. 4.11, Проверочная матрица кода КОГ—ОДГ с 6=3
Контрольные символы и синдромы этого кода могут генерироваться той же схемой с элементами сложения по модулю 2, что и для кодов КО—ОД (рис. 4.8).
При дешифрировании синдром S делится на три части (Si, S2 и S3), каждая из которых состоит из 6 бит и представляет собой уравнения проверки четности для i-ro ряда L(4.8). Из (4.7) следует, что если Е есть картина ошибки в t-й группе, то S = HET, откуда согласно (4.8) следует, что: Si = ET, 82=Тг"Ет, S3=T2jET, т. е. ошибочные биты в группе определяются по подсиндрому Sb а номер группы t— по решению уравнений для S2 и 83. Если Е есть картина групповой ошибки в контрольном символе I, где t=l, 2, 3, то E=SL а два других подсиндрома равны нулю. Алгоритм коррекции ошибок одной группы и обнаружения ошибок нескольких групп может быть сформулирован следующим образом:
если S — нулевой вектор, ошибок нет. В противном случае — см. шаг 2;
если один из подсиндромов 8^0, а два других нули i=l, 2, 3, то ошибка имеется в t-м контрольном символе с картиной S. В противном случае — см. шаг. 3;
предположим, что E=Sj. Найдем I, удовлетворяющее условиям 0^.i<_N—4, T’Et = S2 и T2iET=S3. Если такое I существует, ошибка находится в ьй группе и имеет картину Е. Если i не существует, это означает, что ошибка неисправима [68].
Схема дешифрирования вектора ошибки показана на рис. 4.12.
В табл. 4.2 приведено минимальное число контрольных бит для некоторых известных кодов КОГ—ОДГ.
Рис. 4.12. Схема дешифрирования вектора ошибки кода КОГ—ОДГ сб = 3Рис. 4.12. Схема дешифрирования вектора ошибки кода КОГ—ОДГ сб = 3
Рис. 4.12. Схема дешифрирования вектора ошибки кода КОГ—ОДГ сб = 3
Рис. 4.12. Схема дешифрирования вектора ошибки кода КОГ—ОДГ сб = 3
Таблица 4.2. Число контрольных бит для кодов КОГ—ОДГ
Число бит в группе
Число контрольных бит при длине слова ОЗУ, бит
16
32
64
128
2
8
10
10
12
3
9
12
12
12
4
12
12
14
16
6>5
36
36
36
36
Коды КД—ОТ. Для ОЗУ большой емкости и интенсивности потока ошибок требуемые показатели надежности могут быть достигнуты благодаря применению кодов КД — ОТ. Минимальное расстояние этих кодов не менее шести. Одним из представителей кодов является код БЧХ [68].
Если X есть корень примитивного многочлена Р(Х') степени т, то степени X могут рассматриваться как элементы поля GF(N), N—2m и представляться в виде двоичных векторов длины т. При этом двоичный код, определенный по (4.6) с приведенной ниже проверочной матри-' ней, есть код КД—ОТ:
Г 1 1 1Г 1 1 1н =н =1 X X21 Xs Xs1 X X21 Xs Xs... 1... Х""2• • • Л... 1... Х""2• • • Л(4.Ю)(4.Ю)
Г 1 1 1
Г 1 1 1
н =
н =
1 X X2
1 Xs Xs
1 X X2
1 Xs Xs
... 1
... Х""2
• • • Л
... 1
... Х""2
• • • Л
(4.Ю)
(4.Ю)
Степени X в Н-матрице выражаются двоичными векторами длины т. Поскольку в Н-матрице имеется 2т+1 линейно независимых вектор-рядов число контрольных бит равно 2т+1. Длина кода равна N—1, т. е. 2™—1. На рис. 4.13, а показана проверочная матрица кода КД—ОТ [20, 31], построенная по выражению (4.10). Для получения контрольных бит эта матрица может быть приведена к систематическому виду (рис. 4.13,6). Если обозначить ее через
111111111111111111111111111111111111111111111111111111111111111....1..1.11..11111...11.111.1. .1....1. .1.11. .11111. ..И. 111.1 ..1..1.11..11111..,11.111.1.1.. ...1..1.11..11111...И.111.1.1. ....1..1.11..11111...И.111.1.11....1..1.11..11111...11.111.1. .1....1. .1.11. .11111. ..И. 111.1 ..1..1.11..11111..,11.111.1.1.. ...1..1.11..11111...И.111.1.1. ....1..1.11..11111...И.111.1.11..11..1.1...111..11111.1.1.1111..1..1.1..1.11.1.1.1111..1..1.1..11.1.11....11111....1...11..11..1.1...111..11111.1.1.1111..1..1.1..1.11.1.1.1111..1..1.1..11.1.11....11111....1...11....11..!..11111.111...1.1.И. ..11111.111...1.1.11.1....11..1 ....11..1..11111.111...1.1.11.1 .11111.111...1.1.11.1....11..1. ...1.1.11.1....11..!..11111.1111....11..!..11111.111...1.1.И. ..11111.111...1.1.11.1....11..1 ....11..1..11111.111...1.1.11.1 .11111.111...1.1.11.1....11..1. ...1.1.11.1....11..!..11111.111И..1111.1.1111....11111111.111.1.И..11.1111111.111.1.11. .11.....1..11.111111.111111.....1.1...111..1111...11..1.1...111..1111...11..1.1...111..1111И..1111.1.1111....11111111.111.1.И..11.1111111.111.1.11. .11.....1..11.111111.111111.....1.1...111..1111...11..1.1...111..1111...11..1.1...111..1111
1111111111111111111111111111111
1111111111111111111111111111111
1....1..1.11..11111...11.111.1. .1....1. .1.11. .11111. ..И. 111.1 ..1..1.11..11111..,11.111.1.1.. ...1..1.11..11111...И.111.1.1. ....1..1.11..11111...И.111.1.1
1....1..1.11..11111...11.111.1. .1....1. .1.11. .11111. ..И. 111.1 ..1..1.11..11111..,11.111.1.1.. ...1..1.11..11111...И.111.1.1. ....1..1.11..11111...И.111.1.1
1..11..1.1...111..111
11.1.1.1111..1..1.1..1
.11.1.1.1111..1..1.1..1
1.1.11....11111....1...1
1..11..1.1...111..111
11.1.1.1111..1..1.1..1
.11.1.1.1111..1..1.1..1
1.1.11....11111....1...1
1....11..!..11111.111...1.1.И. ..11111.111...1.1.11.1....11..1 ....11..1..11111.111...1.1.11.1 .11111.111...1.1.11.1....11..1. ...1.1.11.1....11..!..11111.111
1....11..!..11111.111...1.1.И. ..11111.111...1.1.11.1....11..1 ....11..1..11111.111...1.1.11.1 .11111.111...1.1.11.1....11..1. ...1.1.11.1....11..!..11111.111
И..1111.1.1111....1
1111111.111.1.И..11
.1111111.111.1.11. .11....
.1..11.111111.111111...
..1.1...111..1111..
.11..1.1...111..1111.
..11..1.1...111..1111
И..1111.1.1111....1
1111111.111.1.И..11
.1111111.111.1.11. .11....
.1..11.111111.111111...
..1.1...111..1111..
.11..1.1...111..1111.
..11..1.1...111..1111
о)б)
Рис. 4.13. Проверочная матрица кода КД—ОТ: а — несистематическая форма; б — систематическая форма
Н1, то можно записать Н = Т- Н1, где Т — трансформационная матрица размерности гХг. Матрица Н1 используется для построения схемы генерации контрольных бит на элементах, реализующих сложение по модулю 2. Синдром удобнее вычислять по Н-матрице. Однако при этом для генерации контрольных бит и синдрома требуются две разные схемы. Этого недостатка можно избежать, если сначала вычислять по Н-матрице синдром Sb а затем путем умножения его на Т-матрицу получить синдром S. В этом случае одна и та же схема из элементов, реализующих сложение по модулю 2, может использоваться для генерации как контрольных бит, так и синдрома Sb
Синдром S может быть разбит на три части (So, Si и S2), где So содержит 1 бит, a Sj и S2 — пот бит. Присвоим позициям бит кода степени X. Предположим, что Ei и Е2 показывают позиции двух ошибочных бит. Тогда Sq=O и Si = E]-EE2, S2=Ei4~E|. Поскольку Si~|-S2 =
«=EfE2+E1Ei = E1E2S1, то ошибочные позиции Ei и Е2 по теореме Виета являются корнями квадратными уравнения
S2 у + Si у + (St + S2) = 0. (4.11)
Если ошибка только в одном бите, то 80=1 и ошибочная позиция является корнем линейного уравнения y-V 4-Si=0. Одним из возможных способов схемного решения уравнения (4.11) является хранение таблицы решений в ПЗУ. Синдром ошибки задает адрес ПЗУ, из которого считываются значения ошибочных позиций.
ЦИКЛИЧЕСКИЕ КОДЫ
Циклические коды основаны на представлении передаваемых данных в виде полинома и используются в основном при последовательной передаче данных между ЭВМ и внешними запоминающими устройствами, а также при передаче данных по каналу связи.
Контроль передачи данных с помощью циклических (полиномиальных) кодов основан на следующей закономерности: если информационный полином умножить на некоторый так называемый порождающий полином, а получившийся в результате этого кодовый полином передать приемнику информации и выполнить в нем обратное действие, т. е. деление полинома принятого сообщения на порождающий полином, то ненулевой остаток будет означать, что произошла ошибка. Нулевой остаток будет означать, что ошибки нет (или она не обнаружена).
Для пояснения процедуры формирования циклического кода и его декодирования введем следующие обозначения:
G (х)—информационный полином, соответствующий передаваемой информации длиной m бит. Он имеет степень не больше т—1;
Р^х)—порождающий полином степени к, определяющий число контрольных бит, а также обнаруживающую и корректирующую способность циклического кода;
F(х)—кодовый полином, соответствующий передаваемому циклическому коду. Это полином степени т-^к, делящийся без остатка на порождающий полином степени к.
Образование кодового полинома F^ путем умножения информационного полинома G (х) на порождающий Р(х) неудобно тем, что получающийся при этом код не будет систематическим (контрольные биты не будут выделены). Вследствие этого применяется другой способ формирова
но
ния кодового полинома, при котором старшие коэффициенты образуют информационные знаки, а младшие — контрольные. Информационный полином G(x) степени т—1, который необходимо закодировать, умножается на хк, что соответствует сдвигу на k разрядов влево. Полученный таким образом полином xkG^ делится на Р^х) для определения остатка R (х) степени меньше к, что всегда возможно:
xfeG(x)/P(x) = Q(x)@P(x)/P(x).(4.12)
Из этого выражения следует
xfeG(x) = Q(x)P(x)@P(x);
F (х) = Q (х) Р (х) = хйО(х)ф R (х).(4.13)
Полином F^x) делится на Р^х) без остатка и поэтому является кодовым полиномом.
Остаток R^x) имеет степень меньше к, и xkG(x') имеет нулевые коэффициенты в k младших членах. Таким образом, т старших коэффициентов кода F^ равны коэффициентам информационного полинома G (х) и представляют собой кодируемое сообщение, а младшие k коэффициентов кодового полинома F (х^ представляют собой коэффициенты остатка R(x), т. е. контрольные биты. Из приведенного выше следует, что кодовый полином можно получить путем сдвига информационного полинома на k бит, деления его на порождающий полином F (х) и записи остатка в младшие k бит кодового полинома. Процедура кодирования, соответствующего этому алгоритму, реализуется с помощью сдвигового регистра с обратными связями, соответствующими виду порождающего полинома Р(х).
Если полином, полученный при передаче сообщения, содержит ошибки, то он может быть представлен в виде
Н (х) = F (х) @ Е (х\Н (х) = F (х) @ Е (х\(4.14)(4.14)
Н (х) = F (х) @ Е (х\
Н (х) = F (х) @ Е (х\
(4.14)
(4.14)
Это выражение означает, что если полином принятого сообщения Н (х) не делится на Р(х), то при передаче информации произошла ошибка Е^х).
Выбор порождающего полинома Р(х) зависит от характера ошибок при передаче. Можно записать правила выбора порождающего полинома для разных ошибок: ошибки в одном бите обнаруживаются, если порождающий полином содержит более одного члена;
ошибки в двух битах обнаруживаются, если порождающий полином содержит три члена;
ошибки в нечетном числе бит обнаруживаются, если порождающий полином содержит множитель х4~1;
пакеты ошибок длиной менее &4-1 бит обнаруживаются, если порождающий полином содержит множитель х4-1 и один множитель с тремя членами и более (^4-1—число бит порождающего полинома). Этот же порождающий полином обнаруживает с вероятностью 1—(1/2)18-1 пакеты ошибок длиной ^4-1 бит, с вероятностью 1—(1/2)6 пакеты ошибок длиной более ^4-1 бит.
На рис. 4.14 показана схема сдвигового регистра с обратными связями и схемами сложения по модулю 2, реализующими схему деления на порождающий полином.
Важным преимуществом таких схем является возможность их применения для контроля передаваемой информации как при приеме, так и при генерации контрольных бит при передаче, что позволяет обойтись одной такой схемой в приемной и передающей аппаратуре.
Рассмотрим в качестве примера схему (рис. 4.14), реализующую деление на порождающий полином Р(х)=х44-^ 4"х+1- Предположим, что передаются данные вида 11010011, которые представляются в виде полинома G (х) =х74~х64~х44-х4-1. Как было сказано, циклический код передаваемых данных образуется путем умножения информационного полинома G(x) на х4: x4G (х) =х4 (х74- 4-х64-х44-х4-1), что эквивалентно сдвигу данных, соответствующих информационному полиному G(x), на 4 бит в сдвиговом регистре. Как только первая единица (коэф- 112
фициент при старшем члене полинома) сдвинется до конца регистра, т. е. появится на выходе триггера Тг4 при очередном сдвиге, будет выполнено вычитание делителя. Проследим за процессом деления x4G^ на Р(х) и образования остатка:
x'G(x)=110100110000
Р(х)=10011
110100110000|10011
10011110000111 — частное
" 10010
10011
11100
10011
11110■
10011
пою
10011
1001—остаток, т. е. R(xV
В течение первых восьми тактов сдвига на входе а схемы Их имеется разрешение. Данные, соответствующие информационному полиному, одновременно с передачей на выходе схемы ИЛИ поступают также и в сдвиговый регистр. К началу девятого такта разрешение со входа а снимается, а на вход b схемы И2 подается разрешение, в результате чего на выход схемы поступает остаток R^x), накопившийся в сдвиговом регистре. Таким образом, на выходе схемы ИЛИ образуется последовательность бит, соответствующая кодовому полиному F (х) = 110100111001.
В том случае, когда описанная схема используется для декодирования принятой информации (обнаружение ошибок), на ее вход поступает последовательность полинома Н(х). Если после тф-^ сдвигов сдвиговый регистр находится в нулевом состоянии, это означает, что передача выполнена без ошибок.
Циклические (полиномиальные) коды получили широкое распространение благодаря высокой обнаруживающей способности и относительной простоте схем кодирования и декодирования.
КОНТРОЛЬ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ
Арифметические операции, как правило, можно представить в виде последовательности следующих элементар-
ных операций: передача слова и операции преобразования содержимого триггерных регистров — сдвиг, взятие обратного кода и сложение.
При операции сдвига значение i-ro разряда регистра передается в (i+m)-fi или (i—т)-й разряд в зависимости от направления сдвига (т — число разрядов, на которые производится сдвиг). Поэтому для контроля операции сдвига можно использовать те же методы, что и для контроля передачи информации, например контроль четности суммы единиц.
Регистр, в котором производится сдвиг, должен иметь дополнительный контрольный разряд, устанавливаемый перед сдвигом в такое состояние, чтобы сумма единиц регистра вместе с контрольным разрядом была, например, четной. Кроме схемы определения общей четности содержимого регистра, необходимы схемы, устанавливающие четность разности между числом единиц, выдвигаемых из регистра, и числом единиц, вдвигаемых в регистр. Если в освобождающиеся при сдвиге разряды вдвигается 0, то достаточно иметь схему определения четности суммы единиц выдвигаемых разрядов. Одновременно со сдвигом выполняется контрольная операция, заключающаяся в том, что состояние контрольного разряда меняется на противоположное при нечетности суммы единиц выдвигаемых разрядов. Тогда при правильном выполнении сдвига общая четность суммы единиц в регистре после сдвига не меняется.
Операция взятия обратного кода может быть также проконтролирована путем использования кодов с проверкой четности. Если число информационных разрядов в слове четно, то число единиц в слове четно при четном числе нулей и нечетно при нечетном числе нулей. В этом случае после образования обратного кода четность числа единиц в слове сохраняется и правильность выполнения операции можно определить, проверив сохранение четности или нечетности суммы единиц в слове, включая контрольный разряд.
Если число информационных разрядов в слове нечетно, то четному числу единиц в слове соответствует нечетное число нулей, а нечетному числу единиц — четное число нулей. В этом случае после образования обратного кода четность числа единиц изменится на обратную и для проверки правильности выполнения операции необходимо взять обратный код от содержимого контрольного разряда и про- 114
верить сохранение четности или нечетности суммы единиц в слове с учетом инвертированного контрольного разряда.
Из множества разработанных способов контроля операции сложения рассмотрим способ, использующий проверку четности.
При сложении чисел а и b разряды суммы S образуются в соответствии с выражениями
Si = «хФ^ФЛ;
S2 = <22 Ф ^2 ф ^г!S2 = <22 Ф ^2 ф ^г!(4.15)(4.15)
S2 = <22 Ф ^2 ф ^г!
S2 = <22 Ф ^2 ф ^г!
(4.15)
(4.15)
Sn — ап ф Ьп ф Рп,
где S,, at, bi, Pt (i=l, 2, ..., п) —соответственно значения разрядов суммы, слагаемых и переноса, поступающего в i-й разряд. Знак + означает сложение по модулю 2; п — число разрядов слагаемых и суммы.
Сложив все п приведенных выше равенств по модулю 2, получим
51ф5аф ... ф5п — (Ц1фа2ф ••• фап)ф(^iф^2ф • •• фЬДФ^ + ^ф ... ф^п). (4.16)
Поскольку сумма по модулю 2 всех разрядов слова выражает четность суммы единиц слова, последнее уравнение можно переписать в виде
четность 5=четность афчетность Ьфчетность Р. (4.17)
Таким образом, при правильном образовании суммы четность суммы ее единиц должна совпасть с четностью, определяемой выражением (4.17). Однако, как указывалось ранее, контроль по четности не обнаруживает четного числа ошибок. Сбой в схеме образования цифры разряда суммы дает одиночную ошибку, и она будет обнаружена. Если сбой произойдет в схеме формирования переноса, то он может привести к распространению ошибки по многим разрядам суммы. В связи с этим для полноты контроля необходимо проверять правильность образования переносов Pi. Такой контроль может быть организован с помощью схемы, которая проверяет, что в каждом разряде существует либо перенос в прямом коде, либо инверсия переноса и не существует одновременно и то и другое.
Другой способ контроля заключается в дублировании схем формирования переносов и сравнении переносов основной и дублирующей схем.
Упрощенная схема контроля сумматора приведена на рис. 4.15. Оба слагаемых поступают на схемы формирования переносов. Сформированные переносы проверяются на совпадение с помощью схемы, подобной изображенной на рис. 4.4. Для переносов и отдельно для суммы формируются контрольные разряды четности. Затем схема проверки четности проверяет выполнение условия (4.17).
Рис. 4.15. Контроль сложения с использованием проверок по четности
Контроль выполнения арифметических операций (сложения, вычитания, умножения) можно осуществлять с помощью контрольных кодов, представляющих собой остатки от деления чисел на некоторый модуль /? (контроль по модулю R).
Если в качестве контролируемого кода используется остаток по модулю R, то в качестве контрольной операции над остатками может быть выбрана та же арифметическая операция, которая производится над числами. Это следует из того, что для сложения, вычитания и умножения действительно соотношение
R(A * В) ^R[R (A) *R (В)],(4.18)
где R^X) —остаток числа X по модулю R; * —знак арифметических операций сложения, вычитания или умножения. Контроль арифметических операций по модулю организуется следующим образом. Каждому числу, участвующему в арифметической операции, ставится в соответствие контрольный код — остаток по модулю R. Одновременно
с выполнением основной операции над числами та же операция производится над их контрольными кодами, и контрольный код результата основной операции сравнивается с результатом операции над контрольными кодами исходных чисел. При несовпадении фиксируется ошибка.
Чем меньше R, тем меньше разрядность контрольного кода и проще дополнительная аппаратура. Для двоичных
Рис. 4.16. Структурная схема сумматора с контролем по модулю 3
чисел контроль ПО модулю возможен при /?mln = 3, поэтому в ЭВМ часто используют контроль по модулю 3.
Покажем, что при контроле по модулю 3 обнаруживаются любые одиночные ошибки. Одиночная ошибка в каком-либо разряде двоичного числа соответствует изменению числа на ±2‘. Для обнаружения ошибки необходимо, чтобы контрольные коды чисел аиа±2‘ не совпадали, т. е. R^a) ^=R (а±2‘) =R (aj+R (21) или Д(2г)^0. Но 2» не делится на 3 без остатка, следовательно, требуемое условие выполняется. Кроме одиночных ошибок, при контроле по модулю 3 обнаруживается часть двойных ошибок, а именно те, при которых правильный и ошибочный результаты имеют несовпадающие остатки от деления на 3.
На рис. 4.16 изображена структурная схема сумматора с контролем по модулю 3. Отметим, что контрольный сумматор значительно проще основного, так как содержит только два двоичных разряда. При реализации контроля важное значение имеет построение схем формирования остатков при минимальных затратах оборудования. Очевидно, что нахождение остатка путем прямого деления двоичного числа на 3—путь неприемлемый. Однако кодирование по модулю 3 обладает свойствами, позволяющими строить достаточно простые комбинационные схемы формирования остатка по модулю 3.
Может быть применен контроль по модулю с большим основанием, чем 3. При этом увеличивается число кратных ошибок, которые могут обнаруживаться системой контроля, однако возрастает сложность кодирующей и декодирующей аппаратуры.
КОНТРОЛЬ КОМБИНАЦИОННЫХ СХЕМ
Основными способами контроля комбинационных схем (КС) являются контроль путем дублирования, проверки выходных сигналов и с помощью образования контрольных бит.
Контроль путем дублирования (рис. 4.17) является наиболее универсальным и основан на побитном сравнении вы-
Рис. 4.17. Схема контроля путем дублирования
ходных сигналов основной и дублирующей комбинационных схем с последующим объединением выходных сигналов схем сравнения в один общий сигнал ошибки.
Контроль путем проверки выходных сигналов используется для тех комбинационных схем, в которых ошибка может быть обнаружена по выходному сигналу. К таким комбинационным схемам относятся дешифраторы. Приведенная на рис. 4.18 схема иллюстрирует контроль трехвходового дешифратора. Для контроля выходы дешифратора Дш. делятся на две группы: четную и нечетную. Сигналы с четных выходов дешифратора подаются на входы схемы ИЛИХ, а с нечетных выходов — на входы ИЛИ^. При одновременном отсутствии или присутствии сигналов на выходах схем ИЛИХ, ИЛИ^ схема сложения по модулю 2 вырабатывает сигнал ошибки.
Подобные схемы контроля обнаруживают все неисправ-
ности, кроме тех, которые приводят к появлению сигналов на двух или более выходах дешифратора, относящихся к одной и той же группе (четной или нечетной).
Рис. 4.18. Схема контроля дешифратора
Контроль с помощью образования контрольных бит используется в тех случаях, когда по выходным сигналам схемы можно предсказать контрольные биты выходных сигналов.
САМОПРОВЕРЯЕМЫЕ СХЕМЫ КОНТРОЛЯ
Работа ЭВМ с неисправной схемой контроля приводит к ухудшению достоверности функционирования в результате того, что ошибки, возникающие из-за сбоев, не будут обнаружены и исправлены.
Для обнаружения неисправностей схем контроля применяют: самопроверяемые схемы контроля; диагностические средства проверки схем контроля.
Схема контроля (СК) называется самопроверяемой, если она обнаруживает не только неисправности контролируемого устройства (КУ), но также и свои собственные.
Схема контроля с двумя выходами (fi, f2) называется полностью самопроверяемой, если она обладает следующими свойствами: а) самотестируемости — все неисправности СК из заданного класса проявляются на выходах ft, /2 в виде пары сигналов со значениями 00 или 11 хотя бы при одном из наборов входных сигналов из множества наборов рабочих входных сигналов при исправном КУ; б) защи-
щенности от неисправностей — каждая неисправность СК из заданного класса проявляется на выходах fi, f2 только в виде пары сигналов со значениями 00 или 11 [43].
Рис. 4.19. Самопроверяемая схема контроля по четностиРис. 4.19. Самопроверяемая схема контроля по четностина обоих выходахна обоих выходахсигналов схемы.сигналов схемы.Одним из требований при построении самопроверяемой схемы контроля (ССК) является требование раздельной реализации функций fi и /2, которая гарантирует, что любая одиночная константная неисправность на входах и выходах ССК не приведет к инвертированию
Рис. 4.19. Самопроверяемая схема контроля по четности
Рис. 4.19. Самопроверяемая схема контроля по четности
на обоих выходах
на обоих выходах
сигналов схемы.
сигналов схемы.
Значения сигналов 01, 10 на выходах fi, f2 свидетельствуют о правильном функционировании контролируемого устройства и ССК, а значения 00, 11 —о наличии одиночной неисправности в устройстве или ССК.
веряемых схем контроляверяемых схем контроляВопросы построения самопроподробно изложены в [43].
веряемых схем контроля
веряемых схем контроля
В качестве примера ССК рассмотрим схему контроля по четности байтового регистра (восемь информационных и один контрольный бит), изображенную на рис. 4.19. Эта ССК состоит из двух отдельных схем контроля. Первая реализует функцию
fl — Х1 © Х2 ф Х3 ф Х4>
а вторая — функцию
к-к-fz — х5 © хв © Х1 © Х8 © х
к-
к-
Поскольку любая входная информация имеет нечетное число единиц, одна из групп будет содержать их четное число, а другая — нечетное. Таким образом, выходной сигнал ССК всегда будет принимать значения 01 или 10.
При появлении одиночной ошибки на входе число единиц станет четным и обе группы будут иметь один и тот же выходной сигнал со значением 00 или 11.
Поскольку входная информация обычно обеспечивает все множество возможных кодов, на обе схемы контроля поступает полное множество тестовых наборов. Это обязательно приведет к обнаружению ошибки в самой схеме контроля при одном из наборов входных сигналов.
Другим примером самопроверяемой схемы контроля
является схема контроля дешифратора, приведенная на рис. 4.20. При отсутствии неисправностей в дешифраторе и в самой схеме контроля выходные сигналы ССК принимают значения 10 и 01. В противном случае выходные сигналы ССК принимают значения 00 или 11, что свидетель-
Рис. 4.20. Самопроверяемая схема Рис. 4.21. Схема сжатия контроля дешифратора
ствует о неисправности дешифратора или схемы контроля. Для объединения сигналов с выходов схем контроля с целью формирования общего сигнала ошибки применяют са- мопроверяемые схемы сжатия. Схема сжатия, приведенная на рис. 4.21, обеспечивает объединение сигналов с выходов двух ССК в один общий сигнал. Если на одном из входов схемы сжатия (СЖ) сигналы fb f2 принимают значения 00 или И, то сигнал на ее выходе также будет свидетельствовать о наличии ошибки.
ПРЕРЫВАНИЯ ОТ СХЕМ КОНТРОЛЯ
Для фиксации ошибок, обнаруженных средствами контроля логического и функционального уровней, в ЭВМ обычно предусматривается специальный регистр ошибок. Появление единицы в одном из его разрядов вызывает передачу управления на анализ типа ошибки, в результате чего формируются условия прерывания от схем контроля. В зависимости от серьезности ошибки условия могут быть подавляемыми и неотложными.
Прерывание от средств контроля оповещает операционную систему о сбоях и отказах в аппаратуре, а также предоставляет ей сведения о месте и степени повреждения.
Прерывание от средств контроля, вызванное подавляемым условием, не прекращает выполнения текущей коман-
ды и выполняется после того, как нормально закончится ее выполнение, и после обработки более приоритетных прерываний.
Прерывание от средств контроля, вызванное неотложными условиями, прекращает выполнение текущей команды и отменяет другие прерывания.
Информация о типе ошибки и степени повреждения записывается в коде прерывания от средств контроля.
Прерывание от средств контроля запускает программы обработки ошибок, входящие в состав операционной системы, которые на основании полученной информации пытаются восстановить вычислительный процесс.
ОПРЕДЕЛЕНИЕ ЭФФЕКТИВНОСТИ СИСТЕМЫ
АВТОМАТИЧЕСКОГО КОНТРОЛЯ ЭВМ. СРЕДСТВА ПРОВЕРКИ СХЕМ КОНТРОЛЯ
Эффективность системы автоматического контроля определяется долей обнаруживаемых ошибок. Для оценки эффективности используются методы: аналитический, вероятностного моделирования, экспериментальный.
Аналитический метод основан на определении доли обнаруживаемых ошибок для каждого функционального узла ЭВМ по формуле
(4.19) где у,- — доля обнаруживаемых ошибок /-го функционального узла; X/— интенсивность неисправностей /-го функционального узла; Хо/ — интенсивность неисправностей контролируемой части функционального узла.
Доля обнаруживаемых ошибок для всей ЭВМ определяется по формуле hк
Ч-^Кд^Ч(4.20)
1=1' 1=1
Метод вероятностного моделирования основан на логическом моделировании работы функциональных узлов. С этой целью используется модель, отображающая логику работы элементов, структуру и алгоритм работы функциональной части в исправном и неисправном состояниях. Имитация случайных неисправностей при моделировании обеспечивается путем выбора неисправного элемента на основе случайных равновероятно распределенных чисел 122
с учетом веса интенсивности неисправностей всех элементов функциональной части.
Для моделирования применяется комплекс моделирующих программ.
Наиболее приемлемым является экспериментальный метод, основанный на введении в ЭВМ искусственных неисправностей и проверке реакции системы автоматического контроля на эти неисправности.
Число вводимых при проведении эксперимента неисправностей определяется в соответствии с известными положениями математической статистики и зависит от требуемой точности оценки. Чем выше точность оценки, тем больше неисправностей требуется ввести.
Иногда для проведения эксперимента используют специальные средства физической имитации неисправностей, позволяющие вносить неисправность в указанное место под управлением специальной программы. Результаты имитации неисправностей позволяют оценить качество разработанной системы контроля и применять меры по ее улучшению.
Средства проверки схем контроля. Диагностические средства проверки схем контроля предназначены для периодической проверки работоспособности этих схем. Существуют следующие способы проверки схем контроля:
введение информации с неправильной четностью в информационные тракты ЭВМ;
имитация ошибок в схемах контроля четности;
имитация ошибок в схемах контроля путем дублирования;
имитация одиночных и двойных ошибок в оперативной памяти;
имитация ошибки в общем регистре ошибок.
Проверка схем контроля в режиме диагностирования выполняется с отключенной системой контроля ЭВМ.
Глава 5
АВТОМАТИЧЕСКОЕ ВОССТАНОВЛЕНИЕ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА ПОСЛЕ МАШИННЫХ ОШИБОК
ФУНКЦИИ СИСТЕМЫ ВОССТАНОВЛЕНИЯ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА
Из материалов гл. 1 следует, что для достижения высокой эксплуатационной надежности и готовности ЭВМ должна иметь средства (аппаратурные, микропрограммные, программные), позволяющие автоматически восстанавливать процесс выполнения программы после значительной части возможных ошибок в ее работе.
Ошибка порождается сбоем или отказом, возникшим из-за неисправности в аппаратуре ЭВМ. Способ восстановления вычислительного процесса после обнаружения ошибки зависит от того, вызвана она сбоем или отказом. Поэтому при появлении сигнала ошибки от схем контроля необходимо распознать (классифицировать) причину ошибки (сбой или отказ).
Классификация ошибки на сбой или отказ производится путем многократного повторения операции (микропрограммы, команды, участка программы), при выполнении которой произошла ошибка. Если одно из повторений ошибочной операции завершается правильно, ошибка классифицируется как сбой, производится регистрация информации о сбое и соответствующем состоянии ЭВМ и восстанавливается выполнение программы. Если при повторениях не удастся выполнить операцию правильно, ошибка классифицируется как отказ и после регистрация данных о состоянии машины в момент отказа на основе этих данных ЭВМ определяет возможность автоматической реконфигурации для «обхода» отказа в аппаратуре и восстановления вычислительного процесса. Система восстановления должна вырабатывать сообщение оператору о произведенной реконфигурации (логическом отключении неисправного устройства, подключении резервного устройства и т. п.), а при невозможности автоматической реконфигурации — о необходимости вмешательства оператора в процесс восстановления (например, о необходимости ремонта).
Средства восстановления делятся на аппаратурные, аппаратурно-микропрограммные и программные.
ВОССТАНОВЛЕНИЕ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА ПОСЛЕ СБОЕВ. ПОВТОРЕНИЕ ОПЕРАЦИЙ
Средства восстановления включаются в работу при обнаружении ошибки системой контроля. Способ восстановления зависит от уровня, на котором обнаружена ошибка. Можно выделить следующие способы: маскирование, повторение операции, возврат к контрольной точке и программный рестарт (рис. 5.1).
Рис. 5.1. Функционирование вычислительного процесса
Маскированием называется исправление ошибки с помощью корректирующих кодов или резервирования. Восстановление путем маскирования или повторения выпол-
няется в том случае, когда ошибка обнаружена средствами контроля логического уровня и, следовательно, не успела распространиться.
Восстановление путем повторения может быть успешным, если ошибка была случайной или перемежающейся и самоустранилась при повторении, т. е. проявилась как сбой. Поскольку длительность случайной ошибки может быть разной, система должна повторять операции несколько раз.
Повторение может выполняться на уровне микрокоманд, команд и операций ввода-вывода.
В тех случаях, когда ошибка обнаруживается средствами контроля функционального или системного уровня, т. е. успела исказить информацию, используется восстановление путем возврата к контрольной точке.
Контрольной точкой называется некоторая точка в вычислительном процессе (программе), для которой сохранены промежуточные результаты вычислений и к которой в случае ошибки можно вернуться (передать управление).
Этот способ восстановления требует по ходу вычислительного процесса (формирования контрольных точек, т. е. периодического запоминания промежуточных результатов вычислительного процесса).
Возврат к контрольной точке может оказаться бесполезным, если из-за необнаруженной вовремя ошибки состояние процесса в контрольной точке оказалось поврежденным.
Программным рестартом называется повторный запуск вычислительного задания. Этот способ восстановления используется в том случае, когда ошибка обнаружена средствами контроля пользовательского уровня.
Маскирование и повторение как способы восстановления более предпочтительны, так как обеспечивают раннее обнаружение ошибки и восстановление. Однако они требуют значительных затрат аппаратуры.
Повторение на уровне микрокоманд возможно в том случае, когда в ЭВМ контролируется правильность каждой микрооперации и сохраняются без искажений операнды микроопераций. В случае ошибки при выполнении микрооперации делается попытка повторить ее. Однако такой подход, вполне обоснованный для управляющих комплексов с повышенными требованиями к живучести, обнаруживает недостатки при применении его к высокопроизводительным машинам общего назначения из-за дополнитель-
ных аппаратурных затрат и снижения быстродействия из-за потерь времени на передачи, связанные с сохранением информации.
Чаще используется повторение на уровне команд. Основной проблемой при этом уровне повторения является изменение исходных данных (операндов) команды. Так, например, многие команды процессора выполняются в соответствии с формулой
операнд 1 О операнд 2 => операнд 1,
где 0— символ операции.
Для повторения таких команд при сбое необходимо сохранение операндов. Момент изменения исходных данных называют порогом повторения команды. Порог фиксируется специальным триггером изменения исходных данных. По состоянию этого триггера средства восстановления определяют необходимые действия. Если порог повторения не пройден, выполняется повторение команды. В противном случае команда выполняется альтернативно: сначала восстанавливаются исходные данные, а затем повторяется команда.
Существуют следующие способы сохранения исходных данных:
запоминание исходных данных, которые могут быть изменены, в специальной памяти. В таком случае при возникновении сбоя измененные исходные данные восстанавливаются из специальной памяти и команда повторяется.
Сохранение исходных данных, особенно при длинных операндах, усложняет микропрограммы, увеличивает время выполнения команды. Ниже приведены способы сохранения исходных данных, позволяющие сократить объем запоминаемой информации.
блокировка изменения первого операнда в командах, в которых запись результата в общие регистры происходит в последней микрокоманде. Сохранность первого операнда достигается благодаря тому, что сигнал ошибки от схем контроля блокирует запись в общие регистры. Сама микрооперация записи выполняется с задержкой, достаточной для обнаружения ошибки схемами контроля процессора. Такое решение позволяет обойтись без запоминания исходных данных;
запоминание изменяемой части первого операнда с последующим восстановлением исходного значения при повторении по сбою. Запоминание первого операнда по ме-
ре его обработки, а также счетчика байт производится в рабочей области местной памяти. При появлении ошибки после восстановления адреса команды и ее повторной выборки выполняется анализ триггера изменения исходных данных (ТИД), который был установлен в 1 при записи результата на место первого операнда в ОП. После ветвления по ТИД-1 микропрограммно выполняется восстановление измененных байт первого операнда и команда выполняется сначала;
запоминание счета успешно обработанных байт с целью продолжения выполнения команды при повторении. Состояние счетчика байт, который считает число обработанных байт, запоминается в рабочей области местной памяти. Запись информации в ОП приводит к установке ТИД. При повторении команды в результате ошибки состояние ТИД вызывает ветвление в микропрограмме команды. Для обновления адреса операнда используется значение счета успешно обработанных байт. При этом обработка начинается непосредственно с байта, на котором была зафиксирована ошибка;
контрольные точки в микропрограммах команд. В некоторых командах для фиксации этапа выполнения команды используются контрольные точки, значения которых запоминаются в регистре контрольных точек. Ошибка, возникшая при выполнении команды, вызывает повторение, при котором восстанавливается состояние регистра контрольных точек, и выполнение команды продолжается с последней контрольной точки.
Повторение команд ввода-вывода и канальных команд Основную трудность при повторении команд ввода-вывода вносит изменение положения носителя данных. Вследствие этого повторение команд ввода-вывода возможно при сочетании аппаратурно-микропрограммных и программных средств восстановления.
Повторение команд ввода-вывода на аппаратурно-микропрограммном уровне возможно до некоторого порога, определяемого началом связи с устройством по интерфейсу. Если порог аппаратурно-микропрограммного повторения команды ввода-вывода пройден, производится прерывание ввода-вывода и записывается состояние канала и дополнительная информация, содержащая данные, уточняющие место и условия, соответствующие ошибке. При этом восстановление выполняется на программном уровне с помощью специальных программ для соответствующего устрой-
ства, так как при этом требуется восстановление исходного положения носителя.
Для указания возможности повторения команды ввода- вывода предусматриваются триггеры порогов. Ошибки по отношению к этому порогу условно разделены на ранние и поздние и ошибки во время передачи данных. При возникновении машинных ошибок в каналах выполняется регистрация состояния ЭВМ и анализ порога повторения каналов.
Если повторение возможно, команда ввода-вывода повторяется. Если повторение невозможно, каналы, затронутые ошибкой, записывают свои состояния и дополнительную информацию об ошибке.
Если повторение было возможным и прошло успешно, для регистрации состояния ЭВМ в регистрационном файле выполняется прерывание от схем контроля. Машинная ошибка во время передачи данных вызывает прерывание ввода-вывода с записью состояния и дополнительной информации, содержащей код повторения, который показывает, на каком этапе выполнения находилась команда ввода-вывода. После этого восстановление выполняется на программном уровне с использованием программ восстановления.
Повторение операций при ошибках периферийных устройств
Повторение операций при ошибках периферийных устройств (ПУ) обычно выполняется с помощью программных средств. Для этого в операционных системах для всех типов ПУ имеются программы обработки ошибок.
Программа обработки ошибок ПУ анализирует тип ошибки и при сбое устройства уточняет состояние ПУ и пытается исправить сбойную ситуацию путем многократного повторения начальной программы, при выполнении которой произошел сбой. Число повторений зависит от типа ошибки и ПУ.
ВОССТАНОВЛЕНИЕ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА
ПОСЛЕ ОТКАЗОВ. ОТКАЗОУСТОЙЧИВЫЕ СИСТЕМЫ
Сохранение работоспособности ЭВМ при отказах имеет особенно большое значение при эксплуатации систем, работающих в реальном масштабе времени, систем с разделением времени, телеобработки и диалоговых систем. От-
каз систем коллективного использования, которые обслуживают большое число пользователей и имеют большие базы данных, приводящий к прекращению операций с пользователями или к необходимости восстановления базы данных, может иметь катастрофические последствия. Для систем, работающих в режиме пакетной обработки, последствия отказов хотя и не очень чувствительны, тем не менее также приводят к существенным потерям.
Автоматическое восстановление вычислительного процесса при отказах может быть достигнуто путем введения в ЭВМ свойств отказоустойчивости [19].
Отказоустойчивыми будем называть системы, обеспечивающие автоматическое обнаружение ошибки, выявление ее характера (случайная или постоянная), изоляцию неисправности, реконфигурацию системы и восстановление вычислительного процесса.
Если раньше отказоустойчивость стоила очень дорого и использовалась только в системах специального назначения, то в настоящее время отказоустойчивость широко используется в различных сферах вычислительной техники.
Распространение отказоустойчивых ЭВМ отражает потребность пользователей в ЭВМ со следующими свойствами:
надежность. По мере снижения стоимости ЭВМ относительная стоимость обслуживания и ремонта возрастает, приближаясь за время жизни системы к ее стоимости. Поэтому пользователь заинтересован в ЭВМ с меньшей стоимостью обслуживания. Этого можно достигнуть повышением надежности ЭВМ за счет аппаратурной избыточности;
сохранность данных. Во многих системах сохранность данных является непременным условием нормального функционирования. Для ее обеспечения используется аппаратурная и программная избыточность;
готовность. Использование ЭВМ в системах реального времени делает недопустимым длительный простой из-за отказа. Для быстрого восстановления система должна иметь запасные ресурсы;
постепенная деградация. Некоторые применения требуют работы ЭВМ в изолированных и труднодоступных местах. В этих случаях ЭВМ должна сохранять работоспособность пусть даже за счет ухудшения рабочих параметров. Способность ЭВМ к постепенной деградации позволяет ввести отсроченное обслуживание и ремонт;
непрерывность функционирования. В некоторых системах недопустимо даже кратковременное прерывание вычислительного процесса. Для таких систем требуется многократное резервирование.
Принципиальными требованиями к отказоустойчивым системам являются:
возможность замены неисправных блоков в процессе выполнения системой основных функций;
возможность отключать неисправные устройства для ремонта;
отказоустойчивость системы не должна быть заметной для программиста пользователя. Все функции по программированию отказоустойчивости должны возлагаться ца операционную систему.
Различают два типа отказоустойчивости: к отказам, возникшим в процессе эксплуатации, и к отказам из-за ошибок разработки. Первый тип имеет довольно большую историю развития, сложившиеся архитектурные решения и основан на введении избыточности в виде аппаратурных, информационных и программных копий [64].
Второй тип отказоустойчивости стал развиваться сравнительно недавно. Он не может использовать принцип дублирования, так как при ошибках разработки все однотипные устройства будут иметь одни и те же врожденные дефекты. Для создания подобных систем используется принцип разнообразного или N-версионного проектирования.
Этот принцип основан на том, что аппаратурные и программные избыточные средства, используемые для вычислений, являются не копиями, а независимо разработанными средствами, удовлетворяющими требованиям к системе.
Будем обозначать избыточность символом N, т. е. кратностью избыточности по отношению к неизбыточной системе. Временную, аппаратурную и программную избыточности будем обозначать соответственно буквами В, А и П. Тогда обычную неизбыточную систему можно характеризовать как 1В/1А/1П, т. е. однократный прогон одной копии программы на неизбыточной аппаратуре. Если в избыточной системе на N копиях аппаратуры выполняется N копий программ, то такая система описывается как 1В/ INXjNTlj. При временной избыточности, например, двукратном счете программы (^=2) система будет описана как 2В/1А/1П. Часто для борьбы с ошибками во время второго счета из памяти вызывается и выполняется новая копия программы (2В/1А/2П).
В более сложных отказоустойчивых системах вторая копия программы выполняется на второй копии аппаратуры (2В/2А/2П). Возможен также вариант выполнения на второй копии аппаратуры одной и той же копии программы (2В/2А/1П).
При Л'-кратной избыточности эффективным методом борьбы с ошибками разработки является независимое Диверсионное проектирование аппаратуры и программ вместо идентичных избыточных копий. Например, избыточная система ПЗ/ЛСХ/АП может быть преобразована в систему IB/jVA/jVBFI, где АВП представляют собой N версий программ, разработанных разными специалистами по разным принципам (Диверсионное программирование), или в систему IB/A'BA/jVH, где АВА означает N версий аппаратуры, или в систему iB/vVBA/vVBn.
В рамках такого представления можно считать, что выполнение тестов при профилактических изменениях напряжений источников питания есть не что иное, как временная избыточность на Диверсионной аппаратуре NB/NBA/ /1П, где N— число сочетаний напряжений источников питания и прогонов тест-программы.
Повторение тестов с изменением частоты можно считать системой vVBB/lA/Ш.
Для исключения общих ошибок разработки в разных версиях необходимо использовать методы независимого проектирования и реализации, таких как различные алгоритмы, языки программирования, трансляторы, средства автоматизации.
При Диверсионном проектировании большую роль играет алгоритм принятия решения при обнаружении ошибок разработки. Так, например, при ошибках разработки аппаратуры на интегральных микросхемах со сверхбольшой степенью интеграции (СБИС) правильный выбор алгоритма принятия решения может спасти СБИС от перепроектирования. Поскольку вероятность одной и той же ошибки в разных версиях пренебрежимо мала, решающий алгоритм может выбрать при ошибке ответ правильной версии.
ЛЛверсионное проектирование выполняет также роль верификации проекта, т. е. удорожание стоимости разработки компенсируется сокращением затрат на верификацию. При обнаружении ошибок в одной из версий она может быть безболезненно выведена на доработку, не влияя на готовность системы.
Устойчивость к отказам, возникшим во время эксплуатации, достигается автоматической реконфигурацией или резервированием. Сначала рассмотрим способы реконфигурации, а затем резервирования. Отдельно будут рассмотрены методы обеспечения отказоустойчивости полупроводниковых ОЗУ.
АВТОМАТИЧЕСКАЯ РЕКОНФИГУРАЦИЯ
Одним из методов автоматической реконфигурации является метод постепенной (элегантной) деградации [19]. Этот метод основан на использовании естественной избыточности ЭВМ. Так, например, ЭВМ может иметь ряд блоков, обеспечивающих ускорение операций. Их отказ влияет только на производительность ЭВМ. ЭВМ может содержать некоторое число однотипных модулей. И в этом случае отказ одного модуля повлияет только на производительность. Метод постепенной деградации заключается в том, что при отказе некоторой части оборудования система выполняет автоматическую реконфигурацию комплекса оборудования ЭВМ — логически отключает неисправное устройство, восстанавливает работоспособное состояние и продолжает нормальную работу с ухудшенными характеристиками (с меньшей производительностью и логическими возможностями) до тех пор, пока неисправность не будет устранена. Реконфигурация может состоять из таких этапов, как перемещение ОС в область памяти, где нет отказов, переотображение адресов памяти с целью исключения отказавшего модуля, исключение неисправных блоков и даже процессоров в многопроцессорных системах.
Обычно в коде прерывания от схем контроля предусматривается бит «Ухудшение характеристик», свидетельствующий о том, что восстановление после отказа привело к отключению какой-то части и ЭВМ работает с меньшей производительностью.
Системы с постепенной деградацией сохраняют работоспособность за счет того, что имеют альтернативные алгоритмы выполнения операций. Альтернативный алгоритм выполнения операций обеспечивает выполнение операции на другой аппаратуре при выходе из строя основной. Так, например, при неисправности в блоке ускоренного умножения (БУУ) операция умножения может выполняться с помощью альтернативной микропрограммы на основном сумматоре (рис. 5.2).
Системы с постепенной деградацией сохраняют при отказах работоспособность, однако продолжают работу с меньшей вычислительной мощностью.
Средняя производительность ЭВМ с постепенной деградацией
^ср —^ср —
^ср —
^ср —
Рис. 5.2. Альтернативный алгоритм выполнения операций
где М; — производительность в t-м деградированном состоянии; pi — вероятность нахождения в t-м деградированном состоянии; D — множество деградированных состояний системы.
В однородных структурах, где модули имеют одинаковую производительность, эта формула приобретает вид
к
^ср ~ ^^Рь
1=1
где к — число одинаковых модулей; I — число исправных модулей; М — производительность одного модуля, a pi— вероятность исправности I модулей.
Рассмотрим в качестве примера реализацию метода постепенной деградации в ЭВМ ЕС-1046. Блоками, которые могут логически отключаться при отказе без нарушения работоспособности, в этой ЭВМ являются буферная память (БП), буфер памяти команд (БПК), буфер быстрой переадресации (ББП), блок двоичного деления (БДВД) и ускоритель логических команд (УДК).
Деградация БП выполняется микропрограммой обработки ошибок, если при чтении в БП возникает ошибка, связанная с блоком. Емкость отключенного блока БП зависит от типа ошибки и составляет 64 или 128 байт.
Деградация ББП, ВПК, БДВД и УДК также выполняется микропрограммой обработки ошибок при восьмикратных ошибках в этих блоках. При этом ВПК, БДВД и УЛК отключаются полностью, а для ББП возможно частичное отключение, так как он разделен на четыре самостоятельных блока. Блок ББП, который следует отключить, определяется по логическому адресу ОП, к которому было обращение в момент возникновения ошибки ББП.
Для оповещения операционной системы (ОС) о наличии в ЭВМ отключенного блока микропрограмма прерываний от схем контроля устанавливает в коде прерывания бит «Ухудшение характеристик», записывает признаки деградации ВПК, ББП, БДВД и УДК, а также число отключенных блоков БП в фиксированный адрес оперативной памяти. На основании этой информации ОС сообщает оператору о наличии отключенных блоков в машине и продолжает свою работу.
Рассмотрим также другие способы автоматической реконфигурации, используемые для обеспечения отказоустойчивости.
Реконфигурация управляющей памяти, выполненной в виде ПЗУ
Если ПЗУ выполнено на микросхемах памяти (МП), то при выходе из строя какой-либо ячейки ПЗУ ремонт МП, содержащей неисправную ячейку, затруднен. Для ремонта дефектной МП ее нужно выпаивать из ТЭЗ и заменять новой МП. Неудобства подобной организации ремонта очевидны. Поэтому в таких случаях используют ПЗУ, допускающие эксплуатацию с неисправными адресами (ячейками памяти) [50].
На рис. 5.3 приведена структурная схема ПЗУ, допускающего работу с неисправными адресами. При обнаружении постоянной ошибки в одном из адресов ПЗУ микропрограмма восстановления записывает правильное значение информации в дополнительное ЗУ и ЭВМ продолжает нормальную работу. При поступлении в регистр адреса ПЗУ кода адреса ячейки ПЗУ, содержащей ошибочную информацию, блок переадресации неисправных адресов (БПНА) переадресует обращение к дополнительному ЗУ, из которого
Рис. 5.3. Исправление отказов управляющей памяти на ИС ППЗУРис. 5.3. Исправление отказов управляющей памяти на ИС ППЗУ
Рис. 5.3. Исправление отказов управляющей памяти на ИС ППЗУ
Рис. 5.3. Исправление отказов управляющей памяти на ИС ППЗУ
в регистр информации (РгИ) считывается правильная информация. Существует много вариантов исправления отказов ПЗУ. Более подробно эти варианты описаны в [50].
Реконфигурация периферийных устройств
В операционных системах, как правило, имеется программа динамической реконфигурации периферийных устройств, которая позволяет переносить тома на магнитных
Рис. 5.4. Динамическая реконфигурация периферийных устройств
лентах и дисках с одного устройства на другое при отказе одного из внешних устройств. Эта программа позволяет также переключать запросы на ввод-вывод с одного устройства на другое во время их использования операционной системой или пользователем. Обмен томов может быть запрошен при обнаружении неисправляемой ошибки ввода-вывода операционной системой или оператором с помощью специальной команды. Перемещаемый том может быть резидентным или любым другим. Процедуры, выполняемые программой динамической реконфигурации, показаны на рис. 5.4.
Операционная система может запустить программу динамической реконфигурации НМЛ и НМД при следующих типах постоянных ошибок: интерфейса, управления канала, данных канала, переполнения, а также при ошибке поиска НМД.
Программа динамической реконфигурации поддерживает такие устройства, как НМЛ, НМД, ввод с перфокарт, вывод на перфокарты, алфавитно-цифровая печать,
Логическая реконфигурация каналов ввода-вывода
Логическая реконфигурация каналов ввода-вывода обеспечивает повторение операций ввода-вывода при постоянных ошибках канала по другому пути доступа к периферийному устройству, т. е. по другому каналу.
МЕТОДЫ ОБЕСПЕЧЕНИЯ ОТКАЗОУСТОЙЧИВОСТИ ПОЛУПРОВОДНИКОВЫХ ОЗУ
Существуют следующие методы обеспечения отказоустойчивости полупроводниковых ОЗУ:
разнесение неисправимых ошибок путем логической перестановки адресов неисправных ИС:
подключение резервных блоков памяти;
алгоритмическая коррекция неисправимых ошибок.
Разнесение неисправимых ошибок путем логической перестановки адресов неисправных ИС
Использование этого метода рассмотрим на примере ОЗУ с кодом КО—ОД. Двойная ошибка в одном слове такого ОЗУ приводит к отказу последнего. Разнесение двойной ошибки по разным адресам позволяет заменить ее двумя одиночными, т. е. исправимыми ошибками [66].
Подобное разнесение вручную практикуется обслуживающим персоналом при наличии в ОЗУ нескольких (по меньшей мере двух) одинаковых базовых модулей. Простая перестановка ТЭЗ между базовыми модулями решает проблему. Положение усложняется, когда ОЗУ состоит из одного модуля.
Рассмотрим варианты реализации этого метода.
Постоянная логическая перестановка. Предположим, что в каждом накопительном ТЭЗ ОЗУ размещается по 32 ИС ОЗУ, выбираемых путем дешифрования адресных 5 бит, поступающих параллельно на все ТЭЗ из регистра адреса памяти (РгАП). Если в ТЭЗ поступает адрес 00000, то во всех ТЭЗ выбирается ИС 00000. Предположим далее, что некоторые из адресных бит перед поступлением на дешифратор выбора ИС в ТЭЗ постоянно инвертируются. В частности, пусть каждый ТЭЗ получает инвертированный адресный бит в соответствии с табл. 5.1.
При такой организации имеет место измененный порядок выборки ИС ОЗУ в каждом ТЭЗ (рис. 5.5). Например, при адресе в РгАП, равном 00000, в ТЭЗО выбирается ИС 00000, в ТЭ31 — ИС 00001, ТЭ32 — ИС 00010 и т. д. Пред-
Номер ТЭЗ
Биты ABCDE РгАП, воспринимаемые ТЭЗ (а—инверсия А и т. д.) ,
0
1
2
3
4
5
ABCDE ABCDe ABCdE ABCde ABcDE ABcDe
i
Картина инверсий, соответствующая 2(
Рис. 5.5. Адресация ИС ОЗУ для разных ТЭЗ при инверсии бита РгАП 138
Рис. 5.6. Адресация ИС ОЗУ через регистры управленияРис. 5.6. Адресация ИС ОЗУ через регистры управления
Рис. 5.6. Адресация ИС ОЗУ через регистры управления
Рис. 5.6. Адресация ИС ОЗУ через регистры управления
положим, что ИС 00000 в ТЭЗО и ИС 00001 в ТЭ31 неисправны, что приводит к двойной ошибке. Устранить ее можно перестановкой ТЭЗО и, например, ТЭ32.
Физическая реализация этой схемы требует дополнительных инверторов на входе адресных линий ТЭЗ.
Управляемая логическая перестановка адресов. Управляемое разнесение неисправимых ошибок ОЗУ можно обес
печить, если адресные биты подать в ТЭЗ через схему сложения по модулю 2, вторые входы которой соединены с регистром управления (РгУ), как показано на рис. 5.6. В зависимости от состояния РгУ каждый адресный бит будет подан на вход накопительных ТЭЗ в прямом или инвертированном коде. На рис. 5.7 в качестве примера показаны четыре ТЭЗ, на входы которых поступает адрес 00111. Действительный адрес, поступающий на дешифратор, зависит от состояния РгУ каждого ТЭЗ. Если в ТЭЗ ОЗУ имеется не-
сколько неисправимых ошибок,
возникает задача подбора таких состояний РгУ каждого ТЭЗ, которые в совокупности обеспечили бы разнесение всех неисправимых (в рассматриваемом случае двойных) ошибок. Описываемый ниже алгоритм нахождения значений РгУ основан на знании картины распределения неисправностей по ИС и ТЭЗ. Предположим, что все неисправности ИС ОЗУ принадлежат классу «отказ всей ИС» и имеется к ТЭЗ с неисправными ИС ОЗУ, ТЭЗЬ ТЭЗ2, .... ТЭЗ*. В каждом ТЭЗ размещено по 25—32 ИС ОЗУ. Каж-
Мрве на ЗхоОе ТЭЗ
00111
Номер ТЭЗ
О
1
Z
3
Состояние регистра управления
prHj-oioio
РгЯ2=11011
РгИзМОЮО
РгУ^ООООО
Мрев на ВхоВе 039 ТЭЗ
01101
11100
00011
00111
Рис. 5.7, Пример адресации ИС ОЗУ
дый ТЭЗ содержит регистр управления РгУь обеспечивающий изменение адресов ИС ОЗУ. Множество неисправных ИС Ft ТЭЗг задается перечислением 5-битных физических адресов этих ИС. На каждом шаге алгоритма ЕР есть множество адресов ИС с измененными в соответствии с РгУ, адресами. В самом начале FP — нулевое множество.
Алгоритм вычислений значения РгУ
1=1, РгУ,: =00000, FP=0.
FP,: = FPz-_iU (Fi фРгУг). На этом шаге адреса F, неисправных ИС получают новые значения в соответствии с выбранным значением РгУ; и пополняют множество FP,.
i: = i +1 ■
В: = FPz-i^Fi. На этом шаге выполняется сложение по модулю 2 всех измененных адресов, находящихся в FPr с адресами неисправных ИС очередного ТЭЗ. Целью этого шага является формирование списка запрещенных значений РгУ;.
Выберите в качестве РгУ, один из 5-битных кодов, не содержащихся в В.
Рис. 5.8. Автоматическая логическая перестановка адресов
Если В содержит все 32 адреса, выбор невозможен. Конец алгоритма.
Если i^Zk, перейдите к шагу 2. В противном случае конец алгоритма.
Автоматическая логическая перестановка адресов. В этом варианте РгУ реализован в виде регистра сдвига с линейными обратными связями (РгСЛОС). Начальное состояние всех регистров РгУ нулевое. При появлении первой неисправимой (двойной) ошибки все регистры РгУ устанавливаются в разное исходное состояние, соответствующее 1, х, х2, ..., хк modg(x) генерирующего многочлена g(x) для РгСЛОС. При каждой последующей неисправимой ошибке на все регистры РгУ поступает сигнал сдвига. Такая схема обеспечивает автоматическое разнесение двойных ошибок по ИС ОЗУ с разными адресами. Как видно из рис. 5.8, при всех модификациях состояний РгУ нет ни одного состояния, где значения адресов ИС ОЗУ совпадают [66].
Подключение резервных памятей
Подключение резервного ТЭЗ ОЗУ. На рис. 5.9 показано ОЗУ, состоящее из 16 ТЭЗ, каждый из которых выдает в общую шину полное слово в течение интервала выборки. Группа из 16 слов выбирается последовательно по одному из
Накопительные ТЭЗ 123 н- 16 РезервКававоо слово,, (7Z бит).а)Накопительные ТЭЗ 123 н- 16 РезервКававоо слово,, (7Z бит).а)каждого 16 ТЭЗ. При этом, если, например, ТЭ34 неисправен, во время своего интервала выборки его выход блокируется, а вместо него кодовое слово выбирается из резервного ТЭЗ. Подключение резервного ТЭЗ обеспечивает отказоустойчивость ОЗУ при неисправности как ИС ОЗУ так и логики обрамления.
Накопительные ТЭЗ 123 н- 16 Резерв
Кававоо слово,, (7Z бит).а)
Накопительные ТЭЗ 123 н- 16 Резерв
Кававоо слово,, (7Z бит).а)
ИнтервалыНакопи- перевача Ванных ^™l?U№l WflpfflWИнтервалыНакопи- перевача Ванных ^™l?U№l WflpfflWРезерв Пн_Резерв Пн_Рис. 5.9. Подключение резервного ТЭЗ ОЗУ:а — структурная схема; б — временные диаграммыРис. 5.9. Подключение резервного ТЭЗ ОЗУ:а — структурная схема; б — временные диаграммыПодключение резервных ИС ОЗУ. Один из вариантов схемы показан на рис. 5.10. Оперативное ЗУ, кроме ИС матрицы основных ИС ОЗУ, содержит также память признаков неисправности ИС ОЗУ и резервные столбцы ИС ОЗУ [89]. В памяти признаков неисправных ИС для каждой резервной ИС ОЗУ зарезервирован один маркетный бит (МБ) и три бита признака неисправности ИС ОЗУ, по одному для каждого столбца. Число адресов памяти признаков равно числу рядов матрицы ИС ОЗУ. Старшие биты адреса ОЗУ используются для адресации матрицы ИС ОЗУ и памяти признаков неисправности.
Интервалы
Накопи- перевача Ванных ^™l?U№l WflpfflW
Интервалы
Накопи- перевача Ванных ^™l?U№l WflpfflW
Резерв Пн_
Резерв Пн_
Рис. 5.9. Подключение резервного ТЭЗ ОЗУ:
а — структурная схема; б — временные диаграммы
Рис. 5.9. Подключение резервного ТЭЗ ОЗУ:
а — структурная схема; б — временные диаграммы
Единичное состояние бит МБ н Р2 свидетельствуете неисправности ИС ОЗУ второго основного столбца. При МБ = = 1 активизируется работа шифратора, на вход которого поступает код 010 (состояния Pl, Р2 и РЗ). Выход шифратора соединен с переключательной схемой, которая вместо ИС основного столбца подключает на вход регистра данных ИС резервного столбца.
Алгоритмическая коррекция неисправимых ошибок
Благодаря корректирующему коду ОЗУ может нормально работать при наличии постоянных, но исправимых ошибок. При этом, однако, вероятность неисправимой ошибки повышается. Чтобы этого не произошло, можно либо ввести профилактику ОЗУ с заменой ТЭЗ, дающего постоянную ошибку, либо воспользоваться методами алгоритмической
Регистр иОреса памяти
Рис. 5.10. Подключение резервных ИС ОЗУ:
Шt, Шг — шифраторы
коррекции неисправимых ошибок. Пояснение алгоритмов коррекции будем вести на примере кода КО—ОД. Существуют следующие алгоритмы коррекции неисправимых ошибок: перезапись в инверсном коде; последовательная коррекция; запись в ошибкозащищенном коде.
Перезапись в инверсном, коде. Алгоритм состоит из следующих шагов:
чтение слова W\ из ОЗУ;
если в слове wx обнаружена одиночная ошибка, она исправляется и слово передается по назначению;
если в слове wt обнаружена неисправимая ошибка, в ту же ячейку ОЗУ записывается инверсия ГУ2=®1. Затем слово считывается и инвертируется ty3=ty2 (считанное);
если в to>3 обнаружена одиночная ошибка, она исправляется схемами коррекции кода КО—ОД. Исправленное слово передается по назначению и записывается в ту же ячейку ОЗУ;
если ошибок нет, wa считается безошибочным, передается по месту назначения и записывается в ту же ячейку ОЗУ;
если в Wa обнаруживается неисправимая ошибка, то считается, что она алгоритмически неисправима.
Рассмотрим описанный выше алгоритм на примере процедуры коррекции ошибок в однобайтовом слове в ОЗУ, в котором имеется одна «жесткая» (постоянная) и одна «мягкая» (случайная) ошибки:
110 0 110 0 жм0 10 0 11101 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 110 0 1110 100000000 0 0 0 0 0 1 0110 0 110 0 жм0 10 0 11101 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 110 0 1110 100000000 0 0 0 0 0 1 0Исходное слово=ач (записанное) «Жесткие» и «мягкие» ошибки ti>i (считанное) ш2 (записанное) = ш1 (считанное) ш2 (считанное) aia=w8 (считанное) «Жесткая» ошибка wi (считанное)+ш2 (считанное) «Мягкая» ошибка Шз + ш, (считанное)
110 0 110 0 жм0 10 0 1110
1 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 110 0 1110 10000000
0 0 0 0 0 0 1 0
110 0 110 0 жм0 10 0 1110
1 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 110 0 1110 10000000
0 0 0 0 0 0 1 0
Как видно, при чтении исходного слова возникает сигнал неисправимой, т. е. двойной («жесткая» +«мягкая»), ошибки и начинает работать алгоритм исправления двойных ошибок. В результате его действий в слове ау3 остается одна ошибка, исправляемая средствами коррекции кода КО—ОД. Исправленная информация записывается по адресу исходного слова, в котором остается только одна «жесткая», т. е. исправимая, ошибка.
Алгоритмическое исправление позволяет корректировать 2М+Ж<(/ ошибок, где М и Ж — число соответственно «мягких» и «жестких» ошибок в слове, a d—минимальное кодовое расстояние корректирующего кода [62].
Последовательная коррекция. Этот метод основан на запоминании синдромов «жестких» исправимых ошибок в специальной памяти. Если в процессе работы ОЗУ в нем возникает «жесткая» исправимая ошибка, адрес ОЗУ и синдром ошибки запоминаются в этой памяти. При появлении в некотором слове ОЗУ второй, т. е. неисправимой, ошибки, начинает работу схема последовательной коррекции. Первая ошибка корректируется благодаря информации из памяти синдромов, а вторая — обычными средствами коррекции одиночной ошибки [62]. На рис. 5.11 показана схема обычного устройства коррекции одиночной ошибки кода КО—ОД. Синдром Sj, образованный сравнением считанных и предсказанных контрольных бит, определяет тип ошибки и ее место. На рис. 5.12 приведена схема модифи-
Рис. 5.11. Схема коррекции одиночной ошибки для кода КО—ОД
Рис. 5.12. Модифицированная схема коррекции для исправления двойных ошибок
Рис. 5.13. Алгоритм записи информации в ошибкозащищенном кодеРис. 5.13. Алгоритм записи информации в ошибкозащищенном коде
Рис. 5.13. Алгоритм записи информации в ошибкозащищенном коде
Рис. 5.13. Алгоритм записи информации в ошибкозащищенном коде
цированного устройства коррекции. В ней добавлена па
мять синдромов, сигнал с выхода которой поступает на схему определения корректируемого бита, связанную со схемой коррекции. Последняя имеет обратную связь с регистром информации ОЗУ, служащую для коррекции известной «жесткой» одиночной ошибки непосредственно в регистре информации. Схема управления коррекцией известной
«жесткой» ошибки запускается схемой классификации типа ошибки. В случае неисправимой ошибки на вход схемы определения корректируемого бита вместо синдрома Sj поступает синдром Sij , считанный из памяти синдромов.
Запись информации в ошиб- козаиции^енном коде
Для хранения информации в ошибкозащищенном коде после каждой операции записи память проверяется на наличие ошибок; если при чтении информации, записанной в прямом коде, обнаружена ошибка, информация перезаписывается в инверсном коде, и остается в этом коде, если при последующем чтении ошибок не обнаружено (рис. 5.13).
Чтобы считанная из ОЗУ информация всегда поступала по месту назначения в прямом коде, в устройство коррекции ошибок введена дополнитель
ная схема выбора пути прохождения данных (рис. 5.14).
Управление схемой осуществляет блок определения типа ошибки, имеющий три состояния: ошибок нет, исправимая ошибка, неисправимая ошибка [62].
В табл. 5.2 приведено соответствие между типами ошибок при чтении информации в прямом и инверсном кодах и действительным способом записи информации в ОЗУ.
Описанный метод может быть использован для памяти, используемой в основном в режиме чтения. В противном
Таблица 5.2
Типы ошибок при коде
Способ записи
прямом
|инверсном
Ошибок нет
Неисправимая
Безошибочная информация в прямом коде
Неисправимая
Ошибок нет
То же в инверсном коде
Исправимая
Неисправимая
Одиночные ошибки, информация в прямом коде
Неисправимая
Исправимая
То же в инверсном коде
Неисправимая
Необходима алгоритмическая коррекция по методу перезаписи в инверсном коде
Исправимая
Исправимая
Вероятна одиночная ошибка в контрольном бите, информация в инверсном коде
Рис. 5.14. Схема чтения информации, записанной в ошибкозащищенном коде
случае производительность ЭВМ значительно ухудшается. Наиболее подходящими областями памяти для применения этого метода являются область ядра ОС и таблицы, используемые при трансляции адресов,
5.6. СТРУКТУРНОЕ РЕЗЕРВИРОВАНИЕ
Структурным резервированием называется метод повышения надежности объекта путем включения избыточных структурных блоков, способных при отказе основного блока выполнять его функции [38]. С появлением микропроцессоров и микроЭВМ, с которыми связано уменьшение стоимости и размеров вычислительных устройств, методы структурного резервирования получили широкое распространение.
Основными способами резервирования являются:
постоянное или статическое резервирование;
резервирование с замещением или динамическое резервирование;
гибридное резервирование.
Постоянным или статическим называется резервирование, при котором резервные блоки постоянно включены и находятся в одинаковом с основным режиме работы.
Резервированием с замещением или динамическим называется резервирование, при котором резервные блоки включаются и замещают основные блоки только при отказе последних.
Гибридное резервирование сочетает свойства статического и динамического резервирования.
В системах со статическим резервированием восстановление работоспособности после отказа происходит мгновенно, а в системах с динамическим резервированием время восстановления вычислительного процесса в зависимости от степени автоматизации процедур восстановления изменяется в широких пределах.
Различают нагруженный, ненагруженный и облегченный резервы. Нагруженным резервом называется резервный блок, находящийся в том же рабочем режиме, что и основной. Ненагруженным резервом называется резервный блок, практически не несущий нагрузок. Облегченным резервом называется резервный блок, находящийся в менее нагруженном рабочем режиме, чем основной.
При динамическом и гибридном резервировании различают два способа включения резервных блоков: логическое и по питанию.
Включение по питанию предполагает использование не- нагруженного резерва.
Логическое включение предполагает, что на резервный блок постоянно подано напряжение питания.
Резервные блоки заменяют основные, когда принимается решение о неисправности основного блока, т. е. дополнительно требуется механизм обнаружения ошибок и замещения. Этот механизм может быть аппаратурным, программным или аппаратурно-программным.
В зависимости от того, имеется в процессе эксплуатации возможность ремонта отказавших блоков или нет, различают резервирование с восстановлением и без восстановления. Системы, в которых используется резервирование с восстановлением (без восстановления), называются обслуживаемыми (необслуживаемыми) системами.
Для необслуживаемых систем разового действия наиболее важным параметром является вероятность безотказной работы, а для обслуживаемых—коэффициент готовности, являющийся функцией времени восстановления отказавшего блока.
Рассмотрим наиболее характерные избыточные структуры, используемые в вычислительных системах.
Системы с частичным резервированием
EOHZE3-ТППIРис. 5.15. Пример СЧР (N, 1)EOHZE3-ТППIРис. 5.15. Пример СЧР (N, 1)Система с частичным резервированием СЧР (^, S) представляет собой систему, состоящую из N основных и S резервных модулей (S<^) (нагруженных или ненагружен- ных), замещающих основные при их отказах (рис. 5.15).
EOHZE3-ТПП
I
Рис. 5.15. Пример СЧР (N, 1)
EOHZE3-ТПП
I
Рис. 5.15. Пример СЧР (N, 1)
В качестве примера СЧР (N, S) приведем систему СЧР (N, 1), называемую также системой ^+l• Производительность системы при отказе одного из устройств обеспечивается постоянным включением одного дополнительного уст
ройства. Пользовательские программы содержатся в общей основной памяти. Там же находится очередь работ —упорядоченный список заданий, ожидающих вычисления на первом освободившемся ЦП. Если один из ЦП освобождается (например, при останове в ожидании завершения операции ввода-вывода), он опрашивает очередь работ, выбирает из нее первое задание и приступает к его выполнению [29].
Все ЦП автономны и работают как набор однородных ресурсов. Операции ввода-вывода инициируются заданиями, которые выполняются на ЦП. Программы ОС, управляющие физическим вводом-выводом, выполняются в процессоре ввода-вывода. При отказе одного из ЦП он просто выводится из конфигурации до тех пор, пока не будет отремонтирован или заменен. Задание, которое он выполнял в момент отказа, возвращается в очередь работ, откуда оно может быть выбрано другим ЦП. При этом система продолжает работать, лишь немного снизив производительность.
Для пользователей системы ее архитектура остается прозрачной. Сохранность данных и восстановление в случае появления ошибок обеспечивается операционной системой.
OSI
fill
чкзш
-ohtHi/xadau
fill
fill
Дублированные системы
Дублирование ЭВМ или процессоров с целью создания систем повышенной надежности используется наиболее широко в силу относительной простоты структуры [96]. Рассмотрим наиболее характерные дублированные системы и принципы их функционирования в очередности, характеризующей их эволюцию.
Наиболее ранней формой дублированных ЭВМ была система из двух автономных ЭВМ, основной и резервной (рис.5.16,а). При отказе основной ЭВМ задания переносились на резервную в течение 15—30 мин, после чего вычисления возобновлялись. Недостатком этой системы являлась необходимость переключения на резервную ЭВМ при отказе периферийных (ПУ).
Этот недостаток был устранен введением переключателя ПУ (рис. 5.16, б), с помощью которого каждая из ЭВМ получила доступ к ПУ другой ЭВМ. Другим недостатком системы была необходимость переноса файлов на НМЛ и НМД при отказе одной ЭВМ. Введение двухвходовых устройств управления ВЗУ (рис. 5.16, в) позволило создать общее поле памяти на ВЗУ и переключить вычисления на резервную без потерь времени. Для межмашинного обмена были введены адаптеры канал — канал (АКК) (рис. 5.16, г), позволяющие обмениваться информацией между ЭВМ, и средства прямого управления, обеспечивающие обмен сигнальной информацией по сигналам внешнего прерывания.
Дальнейшее развитие дублированных систем привело к введению межпроцессорной сигнализации и общего поля оперативной памяти (рис. 5.16,5), т. е. к двухпроцессорной системе. Здесь оба процессора работают над управлением общей операционной системы, оптимизирующей их использование. Межпроцессорная сигнализация служит для оповещения одного из процессоров при отказе другого, а также для выполнения различных операций, таких, например, как «сброс системы», с целью последующего рестарта.
Рис. 5.16. Дублированные системы-
а — двухмашинная система; б —двухмашинная система с переключателем ПУ; в — двухмашинная система с переключателем ПУ и общим полем ВЗУ, г —двухмашинная система с переключателем ПУ. общим полем ВЗУ. АКК и прямым управлением, д — двухпроцессорная система (с общим полем оперативной памяти); е — двухпроцессорная система с общим полем каналов; ас— двухпроцессорная система с общей подсистемой ввода вывода; з —-дублированная двухпроцессорная система
Эволюция двухпроцессорных систем продолжалась по пути совершенствования системы ввода-вывода:
введение логического переключателя каналов ввода-вывода (рис. 5.16, е), создающего общее поле каналов;
введение общей подсистемы ввода-вывода (рис. 5.16, а®), создающей общее поле ВЗУ и ПУ.
Наибольшую надежность имеет дублированная система из двух двухпроцессорных систем (рис. 5.16, з).
Рассмотрим два алгоритма функционирования двухмашинной системы.
ЭВМ связаны общей шиной и имеют общее поле ВЗУ. Основная ЭВМ выполняет рабочую программу и посылает в резервную информацию с контрольных точек с тем, чтобы последняя смогла продолжить работу при отказе основной. В резервной ЭВМ имеется копия программы и всех файлов. Отказ основной ЭВМ обнаруживается резервной по отсутствию ответа на периодическое сообщение «Я жив», и берет на себя выполнение программы (рис. 5.17).
Рис. 5.17. Пример к алгоритму 1Рис. 5.17. Пример к алгоритму 1Рис. 5.18. Пример к алгоритму 2
Рис. 5.17. Пример к алгоритму 1
Рис. 5.17. Пример к алгоритму 1
Обе ЭВМ системы выполняют вычисления с аппаратурным или программным сравнением результатов (рис. 5.18). К выходу системы подключена только основная ЭВМ. Резервная работает параллельно основной, но не подсоединена к выходу системы. На практике обе ЭВМ часто подсоединены к одной шине, а подключение к ней выполняется в блоке шинного интерфейса каждой ЭВМ. При не-
совпадении результатов неисправная ЭВМ может быть выявлена одним из следующих способов:
на основной ЭВМ запускается тестовая программа. При обнаружении неисправности управление передается резервной;
ЭВМ снабжаются средствами самоконтроля, которые однозначно определяют неисправную ЭВМ. Более подробно этот способ рассматривается в подразделе «Самопроверя- емые избыточные структуры»;
ЭВМ снабжаются охранными таймерами. Основная ЭВМ, если она работает нормально, периодически сбрасывает таймер. Если этого не происходит, таймер срабатывает по переполнению и передает управление резервной ЭВМ;
на обеих ЭВМ запускаются тестовые программы. Результаты сравниваются с эталоном. ЭВМ, в которой тест не прошел, выводится из систем.
Мажоритарные системы
Мажоритарными называются системы, в которых для определения правильных данных используется восстанавливающий орган (ВО), данные на выходе которого определяются по большинству совпадающих данных, подаваемых на его входы.
Метод резервирования, основанный на использовании мажоритарных систем, называется методом голосования или мажоритарным методом.
Рис. 5.19. Троироваииая мажоритарная система: в — с одним ВО; б — схема ВО; в — с тремя ВО
Простейшей из мажоритарных систем является троированная мажоритарная система (ТМС), показанная на рис. 5.19, а. Восстанавливающий орган в этой системе представляет собой мажоритарную схему с тремя входами (рис. 5.19, б), значение сигнала на выходе которой совпадает со значением большинства входных сигналов (два из трех). Более надежная ТМС с тремя ВО дана на рис. 5.19, в.
Голосование в ТМС может быть программным или аппаратурным.
В ТМС с аппаратурным голосованием для управления ТМС используется специальный блок управления БУТМС, выполняющий функции, аналогичные функциям блока управления дублированной системой.
Рис. 5 20 ЛГ-ированная мажоРис. 5 20 ЛГ-ированная мажориторная системариторная системаРис. 5.21. Пример ТМС 1Рис. 5.21. Пример ТМС 1
Рис. 5 20 ЛГ-ированная мажо
Рис. 5 20 ЛГ-ированная мажо
риторная система
риторная система
Рис. 5.21. Пример ТМС 1
Рис. 5.21. Пример ТМС 1
Наиболее общим случаем мажоритарной структуры является Мированная система (NMC), приведенная на рис. 5.20. При нечетном числе блоков М=2п+1 система сохраняет работоспособность при отказе п блоков.
Недостатком NMC является то, что отказ системы наступает при отказе (n+1)-го блока, несмотря на то, что еще имеется п исправных блоков. Для повышения эффективности подобных структур используются адаптивные ВО. Адаптивным называется ВО, изменяющий свой порог по мере выхода блоков из строя. Например, при использовании NMC «3 из 5» после отказа двух блоков для образования правильного выходного сигнала ВО должен использовать большинство «2 из 3». Для перестройки адаптивный ВО использует информацию о неисправных блоках.
В качестве примеров ТМС рассмотрим две известные системы [19, 52]. Первая из них (рис. 5.21) состоит из трех пар «процессор — ОП», соединенных с помощью шин. На выходных шинах процессоров выполняется аппаратурное голосование. Система может работать как мультипроцессорная и мажоритарная. При решении обычных задач она работает как трехпроцессорная система, в которой каждый процессор выполняет собственные задания. При решении ответственных задач система превращается в ТМС по заданию из внешней среды или одного из процессоров. При 154
этом вычисления всех трех процессоров синхронизируются и результат определяется методом голосования.
Другая система с аппаратурным и программным голосованием используется в управлении технологическими процессами (рис. 5.22). Она состоит из трех независимых управляющих процессорных модулей ^ПМХ—УПМ^. Чтобы
Рис. 5.22. Пример ТМС 2
обеспечить программное голосование, каждый УПМ может читать (но не записывать) информацию из памяти другого.
С оборудованием технологического процесса каждый УПМ связывается через свой интерфейсный модуль ^ИМХ— ИМаУ Неисправность одного входа системы отражается только на работе соответствующего УПМ.
На рис. 5.23 приведена схема алгоритма управления. Каждый УПМ принимает свои входные данные, считывает аналогичные данные, полученные другими УПМ, и выполняет программное голосование («2 из 3»), Так исключаются ошибки входных схем. После мажоритарного выбора входных данных каждый УПМ независимо обрабатывает их, вычисляя управляющую информацию. Перед ее выдачей на исполнительные элементы выполняется программное голосование результатов и выбранный результат через соответствующие ИМ поступает на выходные схемы.
Окончательный результат на исполнительные элементы поступает через схему аппаратурного голосования.
В описываемой системе все функции обеспечения отказоустойчивости, такие как обнаружение и исправление ошибок, голосование, синхронизация, реализует операционная система. Каждый УПМ может быть отключен и выведен из системы без нарушения ее работы.
При замене неисправного УПМ запасным он должен быть приведен в состояние, соответствующее состоянию двух других УПМ. Такая настройка не сказывается на процессе управления.
Замена неисправных ТЭЗ выполняется без отключения модулей. Для этого в соседний с неисправным ТЭЗ разъем
Рис. 5.23. Схема алгоритма управления ТМС 2Рис. 5.23. Схема алгоритма управления ТМС 2Рис. 5.24. Гибридная избыточная структураРис. 5.24. Гибридная избыточная структура
Рис. 5.23. Схема алгоритма управления ТМС 2
Рис. 5.23. Схема алгоритма управления ТМС 2
Рис. 5.24. Гибридная избыточная структура
Рис. 5.24. Гибридная избыточная структура
устанавливается запасной ТЭЗ, на котором включается специальный тумблер, оповещающий операционную систему о замене. После этого неисправный ТЭЗ снимается для ремонта.
Каждый модуль имеет собственное питание, отказ которого приводит к потере только одного вычислительного канала.
Гибридные избыточные системы
В общем случае гибридная избыточная система (ГИС) состоит из N основных постоянно включенных по схеме NMC блоков и S резервных блоков, замещающих основные из схемы NMC при отказах последних. Гибридная избыточная система отказывает при отказе всех резервных блоков и одного из блоков ядра NMC.
Ядром NMC называется минимальное число исправных блоков (п+1), необходимых для правильной работы систе- 156
мы. На рис. 5.24 приведена ГИС, содержащая NM.C и S резервных блоков.
Подобная ГИС обозначается ГИС ^N, S).
Существенную часть ГИС составляют переключательные схемы, обеспечивающие отключение отказавших и включение резервных блоков. Надежность переключательных схем
является фактором, ограничивающим общую надежность системы. Имеется предел, при котором уменьшение надежности из-за переключателя превышает увеличение надежности путем резервирования.
Существует большое разнообразие переключательных схем. Рассмотрим лишь некоторые из них. На рис. 5.25 по
казана схема самоотключения Рис 525 Схема самоотключе. блока, когда его выходной ния блока сигнал не совпадает с выходным сигналом ВО, реализую
щим мажоритарную схему. Несовпадение обнаруживается схемой сравнения, сигнал с выхода которой сбрасывает триггер, в результате чего неисправный блок отключается.
На рис. 5.26 показана переключательная схема ГИС (3, 2) [95]. В этой схеме каждому блоку соответствует схема сравнения, которая сравнивает выходной сигнал ВО с выходным сигналом блока и при несовпадении их сбрасывает триггер состояния блока. Выходные сигналы триггеров состояния поступают на итеративную схему из пяти модулей, определяющую блоки, которые должны подключаться ко входам ВО. Состояние выходов каждого модуля V; , где I — номер блока, а / — номер входа ВО, зависит от числа подключенных ко входам ВО блоков и состояния триггеров блоков. Так, Vi = 1 означает, что к первому входу ВО будет подключен блок 1, а Уз = 1 — что к третьему входу ВО будет подключен блок 5.
Принцип работы итеративной схемы поясняется ниже:
Число исправных блоков, пребшест-одющих i-му блоку
О
1
2
Состояние линий Vp V^. Vg при ис-правном состоянии t-го блока
1 О о О 1 о О О 1 ООО
Как видно из рис. 5.26, сигналы о состоянии блоков распространяются в итеративной схеме слева направо,и если эта информация свидетельствует о том, что до i-ro блока имеется всего один исправный блок, то логическая единица будет иметь место на выходе Уг модуля г, так как первый исправный блок уже подключен к первому входу ВО.
Рис. 5.26. Переключательная схема ГИС (2 из 3)
Рассмотрим другой случай. Пусть задано исходное состояние исправности первых трех блоков, т. е. У} == 1, У2 — = 1, Уз =1. Тогда при отказе в процессе работы блока 3 на его место подключается блок 4, т. е. на выходе Уз установится состояние логического нуля, а на выходе Уз — логической единицы. Если после этого откажет и блок 2, то произойдет переключение и ко входам 1—3 ВО будут подключены соответственно блоки 1,4 и 5.
Недостатком приведенной итеративной переключательной схемы является то, что блоки выключаются и в том
случае, когда ошибка была случайной (кратковременной). Для преодоления этого недостатка разработаны переключательные схемы, предусматривающие повторное включение блоков, когда исправным остается только ядро NM.C, входящей в состав ГИС (^ S). В этих схемах имеются специальные триггеры повторения, по одному на каждый блок,
Рис. 5.29. Самопроверяемая избыточная система СИС(2)Рис. 5.29. Самопроверяемая избыточная система СИС(2)
Рис. 5.29. Самопроверяемая избыточная система СИС(2)
Рис. 5.29. Самопроверяемая избыточная система СИС(2)
фиксирующие попытки повторного включения. Кроме того, для подсчета числа повторных включений для каждого блока предусматривают счетчик попыток повторения. Блок полностью выводится из системы, когда установленное число попыток включения блока в систему оказалось безуспешным.
В качестве примера ГИС рассмотрим систему ГИС (<?, S), ядром которой является ТМС с программным голосованием (рис. 5.27). Три процессора этой многопроцессорной системы составляют ядро системы, а остальные образуют общее поле резервных ресурсов. Для обеспечения программного голосования каждый процессор ядра записывает результаты вычислений в свою память. Другие процессоры могут читать результаты из этой памяти (но не записывать в нее) и использовать ее для голосования результатов. При
отказе одного из процессоров ядра его функции возлагаются на другой. Система не требует жесткой синхронизации вычислений и поэтому не имеет блока общей синхронизации, что повышает ее отказоустойчивость. Система не использует кодов обнаружения ошибки, так как считается, что программное голосование обеспечивает высокую достоверность вычислений. Система используется для управления объектами в реальном масштабе времени, в которых недопустима даже временная приостановка вычислений для повторения сегментов программы при ошибках [78].
Самопроверяемые избыточные системы
Особый класс систем образуют самопроверяемые избыточные системы (СИС), состоящие из блоков, имеющих схемы встроенного контроля с вероятностью обнаружения ошибок заданного класса, близкой к 1 [19, 43].
Из самопроверяемых блоков, подобных изображенному на рис. 5.28, могут быть образованы дублированные, мажоритарные и гибридные избыточные системы. Условно будем считать, что при обнаружении схемой встроенного контроля ошибки на ее выходе имеет место логический нуль, а в противном случае — единица. Дублированную СИС будем обозначать СИС(2), мажоритарную — CИC(^), а гибридную— СИС (Л", S). На рис. 5.29 показана СИС (2).
При возникновении в одном из блоков ошибки, обнаруженной его схемой контроля, сигнал ошибки поступает в ВО, где блокирует выход ошибочного блока.
Достоинством СИС является самоотключение отказавшего блока после обнаружения им ошибки. В отличие от отказоустойчивых систем, в которых отказ обнаруживается программным способом путем регулярного опроса состояния, СИС не требуют специального программного обеспечения. Соответственно не требуется и сложной процедуры восстановления вычислительного процесса с использованием информации контрольной точки.
Рассмотрим в качестве примера СИС(2) систему, показанную на рис. 5.30. Эта система состоит из основных и резервных самопроверяемых устройств (процессора памяти и др.), конструктивно размещенных на отдельных платах.
На каждой плате размещены дублированные тракты преобразования информации и схемы, контролирующие совпадение выходных сигналов обоих логических трактов платы и блокирующие выдачу сигналов в случае несовпадения
Фактически система имеет четырехкратную избыточность. Однако при невысокой стоимости аппаратуры (например, микропроцессорной реализации устройств) и ее конструктивной законченности (устройство размещается на одной плате) такая реализация оправдана и имеет ряд достоинств. К ним относятся простота разработки самопроверяе- мых блоков, удобство эксплуатации, ремонтопригодность.
Рис. 5.30. Пример СИС(2)
Рассмотрим работу системы. Обе платы ЦП процессоров и памяти, основные и резервные, жестко синхронизированы и выполняют все операции параллельно. Неисправная плата выключается из системы, когда ее внутренние схемы сравнения фиксируют несовпадение. Этот факт не нарушает вычислительного процесса, который нормально продолжается, но для оповещения системы об ошибке в процессоре выдается сигнал прерывания. По этому сигналу параллельно с работой системы запускаются тесты неисправного устройства. Если тесты проходят без ошибок, система фиксирует сбой и снова включает плату в систему. Если неисправность подтверждается, схемы сравнения выключают плату из системы.
Для устройств, работу которых синхронизировать невозможно (дисковая память), ответственность за то, чтобы оба дисковых накопителя (основной и резервный) содержали одинаковую информацию, возлагается на операционную систему. При необходимости записи операционная система
записывает данные на оба диска. При чтении — с того диска, на котором время подвода головок к требуемой дорожке меньшее. При отказе одного из устройств операционная система продолжает работать только с исправным устройством.
К достоинствам описанной организации СИС(2) относится также простота программного обеспечения. При отказе устройств не требуется сложных процедур по восстановлению вычислительного процесса, организации контрольных точек, процедур типа «Я жив» и т. д. Пользователь, программируя свои задачи, может не вникать в процедуры, реализующие отказоустойчивость системы.
Самопроверяемость платы и наличие индикации неисправности на ее лицевой панели упрощают процесс замены неисправной платы.
Глава 6
СИСТЕМЫ ДИАГНОСТИРОВАНИЯ ЭВМ.
СЕРВИСНЫЕ ПРОЦЕССОРЫ
МЕТОДЫ ПОСТРОЕНИЯ И ХАРАКТЕРИСТИКИ
СИСТЕМ ДИАГНОСТИРОВАНИЯ
Быстро увеличивается число ЭВМ, находящихся в эксплуатации, и возрастает их сложность. В результате растет численность обслуживающего персонала и повышаются требования к его квалификации. Увеличение надежности машин приводит к тому, что поиск неисправных элементов и ремонт их производятся сравнительно редко. Поэтому наряду с повышением надежности машин наблюдается тенденция потери эксплуатационным персоналом определенных навыков отыскания и устранения неисправностей. Таким образом, возникает проблема обслуживания непрерывно усложняющихся вычислительных машин и систем в условиях, когда не хватает персонала высокой квалификации.
Современная вычислительная техника решает эту проблему путем создания систем автоматического диагностирования неисправностей, которые призваны облегчить обслуживание и ускорить ремонт машин, другими словами, повысить готовность и обслуживаемость ЭВМ.
Система автоматического диагностирования представляет собой комплекс программных, микропрограммных и аппаратурных средств и справочной документации (диагностических справочников, инструкций, тестов).
Введем некоторые определения, которые потребуются в дальнейшем при описании различных систем автоматического диагностирования [41].
Различают системы тестового и функционального диагностирования. В системах тестового диагностирования воздействия на диагностируемое устройство (ДУ) поступают от средств диагностирования (СД). В системах функционального диагностирования воздействия, поступающие на ДУ, заданы рабочим алгоритмом функционирования. Обобщенные схемы систем тестового и функционального диагностирования показаны на рис. 6.1.
Рис. 6.1. Обобщенные схемы систем тестового (а) и функционального (б) диагностирования
| Средства аВтоматичвскоео Вааеностирования
1
| Внешние
IВстроенные1
1—
Специализированные
I Универсальные1
Рис. 6.2. Классификация средств автоматического диагностирования
Классификация средств диагностирования приведена на рис. 6.2.
В средних и больших ЭВМ используются как встроенные, так и внешние специализированные средства диагностирования. В микроЭВМ чаще находят применение встроенные средства подачи тестовых воздействий и внешние
универсальные средства (например, сигнатурные анализаторы) для снятия ответов и анализа результатов.
Процесс диагностирования состоит из определенных частей (элементарных проверок), каждая из которых характеризуется подаваемым на устройство тестовым или рабочим воздействием и снимаемым с устройства ответом. Получаемое значение ответа (значения сигналов в контрольных точках) называется результатом элементарной проверки.
Объектом элементарной проверки назовем ту часть аппаратуры диагностируемого устройства, на проверку которой рассчитано тестовое или рабочее воздействие элементарной проверки.
Совокупность элементарных проверок, их последовательность и правила обработки результатов определяют алгоритм диагностирования.
Алгоритм диагностирования называется безусловным, если он задает одну фиксированную последовательность реализации элементарных проверок.
Алгоритм диагностирования называется условным, если он задает несколько различных последовательностей реализации элементарных проверок.
Средства диагностирования позволяют ЭВМ самостоятельно локализовать неисправность при условии исправности диагностического ядра, т. е. той части аппаратуры, которая должна быть заведомо работоспособной до начала процесса диагностирования.
При диагностировании ЭВМ наиболее широкое распространение получил принцип раскрутки, или принцип расширяющихся областей, заключающийся в том, что на каждом этапе диагностирования ядро и аппаратура уже проверенных исправных областей устройства представляют собой средства тестового диагностирования, а аппаратура очередной проверяемой области является объектом диагностирования. Процесс диагностирования по принципу раскрутки, или расширяющихся областей, показан на рис. 6.3. Диагностическое ядро проверяет аппаратуру первой области, затем проверяется аппаратура второй области с использованием ядра и уже проверенной первой области и т.д.
Средства тестового диагностирования (СТД) выполняют следующие функции:
загрузку диагностической информации;
подачу тестовых воздействий на вход проверяемого блока;
опрос ответов с выхода проверяемого блока;
сравнение полученных ответов с ожидаемыми (эталонными);
анализ и индикацию результатов.
Аппаратура первое области аавяостиче- сков яброАппаратура первое области аавяостиче- сков яброАппаратура п-a областиАппаратура п-a областиРис. 6.3. Процесс диагностирования по принципу раскруткиРис. 6.3. Процесс диагностирования по принципу раскруткиРис. 6.4. Структурная схема встроенных средств тестового диагностированияРис. 6.4. Структурная схема встроенных средств тестового диагностированияДля выполнения этих функций встроенные СТД в общем случае содержат устройства ввода (УВ) и накопители (Н) диагностической информации (тестовые воздействия, ожидаемые ответы, закодированные алгоритмы диагностирова-
Аппаратура первое области аавяостиче- сков ябро
Аппаратура первое области аавяостиче- сков ябро
Аппаратура п-a области
Аппаратура п-a области
Рис. 6.3. Процесс диагностирования по принципу раскрутки
Рис. 6.3. Процесс диагностирования по принципу раскрутки
Рис. 6.4. Структурная схема встроенных средств тестового диагностирования
Рис. 6.4. Структурная схема встроенных средств тестового диагностирования
_\ Аппаратура
| \ второй области
ния), блок управления (БУ) чтением и выдачей тестовых воздействий, снятием ответа, анализом и выдачей результатов диагностирования, блок коммутации (БК), позволя- -ющий соединить выходы диагностируемого блока с блоком Сравнения, блок сравнения (БС) и устройство вывода результатов диагностирования (УВР). На рис. 6.4 приведена Структурная схема встроенных средств тестового диагностирования.
Показанные на структурной схеме блоки и устройства могут быть частично или полностью совмещенными с аппаратурой ЭВМ.
Как видно из структурной схемы, приведенной на рис. 6.4, встроенные средства диагностирования имеют практически те же блоки и устройства, что и универсальные ЭВМ. И неудивительно, что с развитием интегральной микроэлектроники и массовым выпуском недорогих микропроцессоров и микроЭВМ их стали использовать в качестве средств диагностирования ЭВМ. Такие специализированные процессоры, используемые в целях обслуживания и диагностирования ЭВМ, получили название сервисных процессоров (рис. 6.5). Благодаря своим универсальным возможностям и развитой периферии, включающей пультовый накопитель, клавиатуру, пишущую машинку и дисплей.
сервисные процессоры обеспечивают комфортные условия работы и представление результатов диагностирования обслуживающему персоналу в максимально удобной форме.
В § 6.10 подробно рассматриваются особенности сервисных процессоров, их назначение и структура.
Рис. 6.5. Структурная схема тестового диагностирования на базе сервисного процессора
Для классификации технических решений, используемых при реализации систем диагностирования, введем понятие метода диагностирования.
Метод диагностирования характеризуется объектом элементарной проверки, способом подачи воздействия и снятия ответов.
Существуют следующие методы тестового диагностирования: командного ядра; уровня логических схем; эталонных состояний; микродиагностирования; диагностирования, ориентированного на проверку сменных блоков.
Методы функционального диагностирования включают в себя диагностирование:
с помощью схем встроенного контроля;
с помощью самопроверяемого дублирования;
по регистрации состояния.
Процесс разработки систем диагностирования состоит из следующих этапов (рис. 6.6):
выбора метода диагностирования;
разработки аппаратурных средств диагностирования;
разработки диагностических тестов;
разработки диагностических справочников;
проверки качества системы диагностирования.
Для сравнения различных систем диагностирования и оценки их качества чаще всего используются следующие показатели:
вероятность обнаружения неисправности F;
вероятность правильного диагностирования D. Неисправность диагностирована правильно, если неисправный блок указан в разделе диагностического справочника, соответствующим коду останова. В противном случае неисправность считается обнаруженной, но нелокализованной. Для ЭВМ
Рис. 6.6. Этапы проектирования систем тестового диагностирования
с развитой системой диагностирования обычно F^0,95, D"^ ^0,90. В том случае, когда неисправность только обнаружена, необходимы дополнительные процедуры по ее локализации;
средняя продолжительность однократного диагностирования тд. Величина тд включает в себя продолжительность выполнения вспомогательных операций диагностирования и продолжительность собственно диагностирования. Часто удобнее использовать коэффициент продолжительности диагностирования
^д=1-тд/Тп, (6.1)
где Тв — время восстановления. Коэффициент &д показывает, какая часть времени восстановления остается на восстановительные процедуры. Так, например, если тд=15мин, а 7в = 60мин, &д=1—15/60 = 0,75;
глубина поиска дефекта L. Величина L указывает составную часть диагностируемого устройства с точностью, до которой определяется место дефекта.
В ЭВМ за глубину поиска дефекта L часто принимается число предполагаемых неисправными сменных блоков (ТЭЗ), определяемое по формуле
^=(2 А (6-2)
где ni— число предполагаемых неисправными сменных блоков (ТЭЗ) при i-й неисправности; N — общее число неисправностей.
В качестве показателя глубины поиска дефекта можно также использовать коэффициент глубины поиска дефекта Агп.д, определяющий долю неисправностей, локализируемых с точностью до М сменных блоков (ТЭЗ), М=1, 2, 3, ..., т.
Пусть dt = \, если при i-й неисправности число подозреваемых сменных блоков не превышает М. В противном случае dt = 0. Тогда (п,^М)
N
(6.3)
<=i
Для ЭВМ с развитой системой диагностирования для М^З обычно ^г.п.д^0,9. Это означает, что для 90 % неисправностей число предполагаемых неисправными сменных блоков, указанных в диагностическом справочнике, не превышает трех;
объем диагностического ядра h — доля той аппаратуры в общем объеме аппаратуры ЭВМ, которая должна быть заведомо исправной до начала процесса диагностирования. В качестве показателя объема диагностического ядра можно пользоваться также величиной
(6.4)(6.4)Н= 1— h.
(6.4)
(6.4)
Для ЭВМ, использующих принцип раскрутки и метод микродиагностирования, 77^0,9.
МЕТОД КОМАНДНОГО ЯДРА
Этот метод основан на использовании программных средств автоматического диагностирования.
В системе команд ЭВМ выделяется ядро команд, включающее в себя команды, необходимые для загрузки тестов, сравнения результатов с эталонными, ветвления по несовпадению результатов и выдачи диагностического сообщения обслуживающему персоналу. Команды ядра могут также включать в себя специальные диагностические команды.
Объектом элементарной проверки при этом методе является аппаратура, используемая при выполнении команды.
Поскольку определенная часть аппаратуры ЭВМ может использоваться при выполнении различных команд, пересечение подозреваемых и исключение исправных частей ап-
паратуры может повысить глубину поиска дефекта при диагностировании.
Недостатком метода является значительный объем диагностического ядра.
МЕТОД ДИАГНОСТИРОВАНИЯ НА УРОВНЕ
ЛОГИЧЕСКИХ СХЕМ
При этом методе диагностирования объектами элементарных проверок являются произвольные логические схемы. Среди различных реализаций этого метода наибольшее распространение получила раздельная проверка схем с памятью (регистров и триггеров) и комбинационных схем. Рассмотрим две реализации этого метода: двухэтапное диагностирование и последовательное сканирование.
Двухэтапное диагностирование
Диагностическая информация, включающая в себя данные тестового воздействия, результат и состав контрольных точек элементарной проверки, адрес следующих элементарных проверок в алгоритме диагностирования, имеет стан-
Встановочния _ информация*
Виравляющве слово-
Мрве ■ результата*
маска--
Эталон--
68ре с перохова--
по рваче
Авр вс перехода по неудаче/ признак окончания, - - номер теста
Рис. 6.7. Формат ТЛН
Встановочная информация Зля микропрограммы установки регистров процессора В требуемое Вля тести состояние
Внравляющво слово завает аврес микрекоманвы, саВержащвй проверяемую микрооперацию а число выполняемых микракоминв
Мрос ваагностачвекой области ОП, в которую В результате опроса записывается состояние проверяемого регистра
Маска выверяет проверяемые биты
Эталон совержит сживаемые результаты
Завает начальный аврес слеВующего теста (еврее первого слова) при совпавении результата с эталоном
Для конечных тестов завает номер теста; вля остальных тестов—начальный аврес (аврес первого слова) при носовпавении результата с эталоном
дартный формат, называемый тестом - локализации неисправностей (ТЛН).
Подача тестовых воздействий, снятие ответа, анализ и выдача результатов реализации алгоритма диагностирования выполняются с помощью стандартных диагностических операций «Установка», «Опрос», «Сравнение» и «Ветвление».
Стандартный формат ТЛН показан на рис. 6.7. Тест локализации неисправностей содержит установочную и управ-
Рис. 6.8. Операции, выполняемые при диагностировании методом двухэтапного диагностирования
ляющую информацию, адрес ячейки памяти, в которую записывается результат элементарной проверки, эталонный результат, адреса ТЛН, которым передается управление при совпадении и несовпадении результата с эталонным, и номер теста. Стандартные диагностические операции, последовательность которых приведена на рис. 6.8, могут быть реализованы аппаратурно или микропрограммно.
Диагностирование аппаратуры по этому методу выполняется в два этапа:
на первом этапе проверяются все регистры и триггеры, которые могут быть установлены с помощью операции «Установка» и опрошены по дополнительным выходам операцией «Опрос»;
на втором этцпе проверяются все комбинационные схемы, а также регистры и триггеры, не имеющие непосредственной установки или опроса.
Каждая элементарная проверка, которой соответствует один ТЛН, выполняется следующим образом: с помощью операции «Установка» устанавливаются регистры и триггеры ДУ, в том числе и не проверяемые данным ТЛН, в состояние, заданное установочной информацией ТЛН (установка регистров и триггеров может выполняться по существующим или дополнительным входам). Управляющая информация задает адрес микрокоманды (из числа рабочих микрокоманд), содержащей проверяемую микрооперацию и число микрокоманд, которые необходимо выполнить, начиная с указанной. В тестах первого этапа эта управляющая информация отсутствует, так как после установки сразу выполняется опрос. В тестах, предназначенных для проверки комбинационных схем, управляющая информация задает адрес микрооперации приема сигнала с выхода комбинационной схемы в выходной регистр (рис. 6.9).
Управляющая информация может задавать адреса микроопераций, обеспечивающих передачу тестового воздействия на вход проверяемых средств и транспортировку результата в триггеры, имеющие опрос.
С помощью операции «Опрос» записывается состояние всех регистров и триггеров ДУ в оперативную или служебную память.
Для выполнения операции «Опрос» в аппаратуру ДУ вводятся дополнительные связи с выходов регистров и триггеров на вход блока коммутации СТД, связанного с информационным входом оперативной или служебной памяти.
С помощью операции «Сравнение и ветвление» обеспечивается сравнение ответа ДУ на тестовое воздействие с эталонной информацией. В ТЛН задается адрес состояния проверяемого регистра или триггера в оперативной и служебной памяти, записываемого с помощью операции «Опрос», а также его эталонное состояние. Возможны два исхода операции «Сравнение и ветвление» — совпадение
и несовпадение ответа с эталоном. Метод двухэтапного диагностирования использует, как правило, условный алгоритм диагностирования. Поэтому ТЛН содержит два адреса ветвления, задающих начальный адрес следующих ТЛН в оперативной памяти.
Тесты локализации неисправностей обычно загружаются в оперативную память и подзагружаются в нее по оконча-
ТЛН 1
Рис. 6.9. Схема выполнения одного ТЛН
нии выполнения очередной группы ТЛН. Поэтому до начала диагностики по методу ТЛН проверяется оперативная память и микропрограммное управление.
Последовательное сканирование
Описываемая реализация метода предполагает тестопригодное проектирование схем ЭВМ (см. гл. 9), при котором схемы с памятью (регистры и триггеры) в режиме ди-
агностирования превращаются в один сдвигающий регистр с возможностью установки в произвольное состояние и опроса с помощью операции сдвига.
Для превращения всех триггеров в один сдвигающий регистр каждому триггеру логической схемы придается дополнительный триггер, причем каждая пара триггеров (основной и дополнительный) соединяется таким образом, что образует один разряд сдвигающего регистра.
Средства тестового диагностирования (СТД) могут подавать синхросигналы на все триггеры сканирования и путем сдвига выдавать их содержимое в виде последовательности бит по одной линии. Поскольку каждый бит в этой последовательности соответствует своей триггерной паре, можно определить состояние каждого триггера логической схемы.
Средства тестового диагностирования могут задавать любое состояние триггеров, подавая на линию входа данных сканирования требуемую установочную последовательность.
Диагностирование выполняется в два этапа.
Первый этап.
Диагностирование схем с памятью (регистров и триггеров). Выполняется следующим образом:
устанавливается режим сдвигающего регистра;
осуществляется проверка сдвигающего регистра и, таким образом, всех схем с памятью путем последовательного сдвига по нему нулей и единиц.
Второй этап.
Диагностирование комбинационных схем. Выполняется следующим образом:
устанавливается режим сдвигающего регистра;
входной регистр комбинационной схемы устанавливается в состояние, соответствующее тестовому воздействию, путем подачи последовательного потока данных на вход сдвигающего регистра;
выполняется переход в нормальный режим;
выполняется микрооперация передачи сигналов с выходов комбинационной схемы;
выполняется опрос состояния выходного регистра комбинационной схемы (результата) путем последовательного сдвига его содержимого в аппаратуру тестового диагностирования;
осуществляется сравнение результата с эталоном.
На рис. 6.10 показан состав средств тестового диагно-
стирования, используемых при методе последовательного сканирования.
Процедура диагностирования заключается в следующем. Из адаптера пультового накопителя АПН в регистр диагностики и сдвигающий регистр загружается информация, содержащая биты запуска синхросигналов А и В, а также тестовый набор. После этого информация тестово-
Рис. 6.10. Аппаратура СТД, используемая при методе последовательного сканирования:
ПН — пультовый накопитель; АПН — адаптер пультового накопителя
го набора последовательно, под управлением синхросигналов А и В, сдвигается, поступает на вход проверяемого блока и далее на установку состояния триггеров проверяемого блока. После этого выполняется проверяемая микрооперация, и данные состояния триггеров проверяемого блока начинают последовательно поступать в сдвигающий регистр. До этого в сдвигающий регистр загружается эталонная информация и при последовательном сканировании результатов тестирования в схеме сложения по модулю 2 происходит сравнение результата с эталоном.
При обнаружении несовпадения происходит сообщение о неисправности.
МЕТОД МИКРОДИАГНОСТИРОВАНИЯ
Метод микродиагностирования характеризуется тем, что объектом элементарной проверки является аппаратура, участвующая в выполнении микрооперации.
Микропрограмма проверки очередной микрооперации использует уже проверенные микрооперации и тракты передачи информации. Транспортировка тестового воздействия на вход проверяемой аппаратуры выполняется с помощью имеющегося в ЭВМ набора микроопераций по существующим информационным трактам.
Снятие ответа и передача его с выхода проверяемой аппаратуры на входы схем сравнения выполняются либо микропрограммно, либо с помощью специальных диагностических операций «Опрос» и «Сравнение».
Совокупность процедур, диагностических микропрограмм и специальных схем, обеспечивающих транспортировку тестового набора на вход проверяемого блока, выполнение проверяемой микрооперации, транспортировку результатов проверки к схемам анализа, сравнение с эталоном и ветвление по результатам сравнения, называется микродиагностикой.
Различают два типа микродиагностики: встроенную и загружаемую.
При встроенной микродиагностике диагностические микропрограммы размещаются в постоянной микропрограммной памяти ЭВМ, а при загружаемой — на внешнем носителе данных.
При хранении в постоянной микропрограммной памяти микродиагностика представляет собой обычную микропрограмму, использующую стандартный набор микроопераций. Однако вследствие ограниченного объема постоянной мик- роп]рограммной памяти на объем микродиагностики накладываются довольно жесткие ограничения, в результате чего приходится использовать различные способы сжатия информации.
Как правило, при хранении микродиагностики в постоянной микропрограммной памяти для транспортировки результатов проверки к месту сравнения с эталоном используются стандартные микрооперации, а для сравнения — такие схемы, как сумматор, схемы контроля или анализа условий. В качестве микропрограммы анализа используется также микропрограмма опроса состояния схем контроля ЭВМ.
Встроенная микродиагностика применяется обычно в малых ЭВМ с небольшим объемом микродиагностики.
Для средних и больших ЭВМ при большом объеме микродиагностики применяется загружаемая микродиагностика. Существует несколько вариантов загрузки и выполнения загружаемой микродиагностики:
внешний носитель данных (пультовый накопитель ПН) — регистр микрокоманд РгМк (рис. 6.11, а);
Рис. 6 11. Варианты загрузки и выполнения загружаемой мнкродиагностикиРис. 6 11. Варианты загрузки и выполнения загружаемой мнкродиагностикивнешний носитель данных —■ оперативная память (0/7) — регистр микрокоманд (рис, 6.11, б);
Рис. 6 11. Варианты загрузки и выполнения загружаемой мнкродиагностики
Рис. 6 11. Варианты загрузки и выполнения загружаемой мнкродиагностики
внешний носитель данных—■ загружаемая управляющая память (ЗУП) микрокоманд — регистр микрокоманд РгМк (рис. 6.11, в).
В качестве устройства ввода микродиагностики чаще всего используются так называемые пультовые накопители на гибких магнитных дисках
или кассетных магнитных лен
тах.
Первый вариант загрузки скорее имитирует «быстрый» тактовый режим, чем выполнение микрокоманд с реальным быстродействием, так как накопление и выполнение микрокоманд определяются скоростью ввода данных с внешнего носителя. Микрокоманды выполняются по мере их поступления из внешнего носителя данных.
Второй вариант загрузки предусматривает возможность хранения и выполнения микрокоманд из основной памяти ЭВМ, т. е. совместимость форматов оперативной и управляющей памятей. В этом варианте должен быть предусмотрен специальный вход в регистр микрокоманд из оперативной памяти.
Третий вариант загрузки обеспечивает загрузку в управляющую память микродиагностики определенного объема и выполнение ее с реальным быстродействием. По окончании выполнения загружается следующая порция микродиагностики.
Существуют и другие варианты загрузки и выполнения, несущественно отличающиеся от приведенных выше. Возможно также использование разных вариантов загрузки
и выполнения на разных этапах диагностирования ЭВМ. Для средних и больших ЭВМ с хранением микродиагностики на внешних носителях данных для опроса состояния и сравнения его с эталоном используется дополнительная аппаратура. В последнее время эти функции все больше передаются так называемым сервисным процессорам, имеющим универсальные возможности по управлению пультовыми накопителями, опросу состояния ЭВМ, сравнению результатов с эталонными и индикации списка возможных неисправностей. При микродиагностировании с использованием дополнительной аппаратуры средства тестового диагностирования выполняют специальные диагностические операции, такие как запуск микрокоманд, опрос состояния, сравнение с эталоном и сообщение о неисправности. Процедура выполнения микродиагностики обычно такова: средства тестового диагностирования загружают в ЭВМ микрокоманды и дают приказ на их выполнение; ЭВМ отрабатывает микрокоманды, после чего средства тестового диагностирования производят опрос состояния, сравнение с эталоном и сообщение о неисправности. Обычно при микродиагностике тестовые наборы являются частью микрокоманды (поле констант).
Глубина поиска дефекта при микродиагностике зависит от числа схем, для которых предусмотрена возможность непосредственного опроса состояния. В связи с этим в современных ЭВМ имеется возможность непосредственного опроса состояния практически всех триггеров и регистров ЭВМ.
МЕТОД ЭТАЛОННЫХ СОСТОЯНИЙ
Метод эталонных состояний характеризуется тем, что объектом элементарных проверок является аппаратура, участвующая в одном или нескольких тактах выполнения рабочего алгоритма функционирования, реализуемого в режиме диагностирования. В качестве результата элементарной проверки используется состояние аппаратурных средств диагностируемого устройства.
Процесс диагностирования методом эталонных состояний заключается в потактовом выполнении рабочих алгоритмов ДУ, опросе состояния ДУ в каждом такте, сравнении состояния ДУ с эталонным и ветвлении в зависимости от исхода сравнения к выполнению следующего такта или сообщению о неисправности.
При реализации метода эталонных состояний средства
Рис 6.12. Процедура диагностирования методом эталонных состояний/ — номер такта ветвн алгоритма; <—номер ветви алгоритма
Проверка выполняетсяПроверка выполняетсятестового диагностирования представляют собой совокупность аппаратурных и программных средств.
Проверка выполняется
Проверка выполняется
При представлении алгоритмов операций ЭВМ в виде графов каждому пути i из множества путей на графе можно поставить в соответствие последовательность состояний ЭВМ в каждом такте:
^iO, ^ц, ••• > ^ij’ "' ’ ^ini
где n — число вершин граф- схемы алгоритма, соответствующее числу тактов выполнения операции с конкретными условиями. Эталонной последовательностью состояний считается последовательность состояний S®/, /=0, 1, .... п, имеющих место при отсутствии ошибок.
путем сравнения реального со
стояния ЭВМ Sq в /-м такте t-ro пути с эталонным Sq.
Несовпадение S,/ и Sf, является признаком неисправности.
Процедура диагностирования методом эталонных состояний приведена на рис. 6.12.
Для реализации метода эталонных состояний средства тестового диагностирования должны иметь:
средства управления потактовой работой ЭВМ;
средства опроса состояния ЭВМ;
средства сравнения состояния с эталонным и средства сообщения о неисправности.
Обычно этот метод используется в тех случаях, когда средства тестового диагностирования имеют достаточно
большие возможности. Например, этот метод может использоваться при диагностировании каналов с помощью процессора. Наибольшее применение этот метод находит в устройствах со схемной интерпретацией алгоритмов функционирования.
В силу неопределенности состояний некоторых триггеров каждому состоянию S,/ может соответствовать Некоторое подмножество состояний 51У6, где 6=0,1, ..., т, т — множество неопределенных состояний. Поэтому обычно до сравнения с эталоном выполняется маскирование состояний. Маска снимает неопределенные состояния.
Управление потактовой работой устройства и опрос состояния устройства обычно выполняются с помощью команды ДИАГНОСТИКА, а сравнение с эталоном, маскирование и сообщение о неисправности — с помощью команд на программном уровне.
Команда ДИАГНОСТИКА адресует управляющее слово в ОП, которое поступает на вход диагностируемого устройства, как показано на рис. 6.13.
Сочетание бит управляющего слова обеспечивает продвижение тактов, а также опрос состояния и запись его вОП.
Остальные операции, такие как маскирование состояния С целью исключения неопределенных бит, сравнение его с эталонным состоянием и сообщение о неисправности, выполняются программой диагностирующего устройства.
Рис. 6.13. Схема взаимодействия диагностирующего и диагностируемого устройств при диагностировании по методу эталонных состояний
МЕТОД ДИАГНОСТИРОВАНИЯ, ОРИЕНТИРОВАННЫЙ
НА ПРОВЕРКУ СМЕННЫХ БЛОКОВ
Этот метод диагностирования характеризуется тем, что объектом элементарных проверок являются сменные блоки. Тестовые воздействия подаются на входы сменных блоков, а ответы снимаются с их выходов непосредственно или через дополнительную аппаратуру [43, 88].
Использование этого метода позволяет локализовать неисправность в ЭВМ с помощью диагностических тестов для сменных блоков. Такой подход позволяет сократить затраты на разработку диагностического обеспечения ЭВМ, состоящего, как правило, из диагностических тестов ЭВМ и диагностических тестов сменных блоков. В большинстве случаев в качестве сменных блоков ЭВМ используются ТЭЗ. Тогда применение данного метода позволяет производить диагностирование ЭВМ с помощью диагностических тестов ТЭЗ.
Существуют два варианта реализации данного метода.
Вариант 1. В каждый сменный блок вводится дополнительная аппаратура, обеспечивающая подачу на вход каждого сменного блока тестового воздействия от СТД и передачу ответов к точкам опроса [88].
Эта аппаратура представляет собой селекторы, которые в нормальном режиме работы ЭВМ пропускают на выходы сменного блока состояния его выходов, а в режиме управления — состояния входов, как бы шунтируя расположенную в сменном блоке аппаратуру.
При разработке средств диагностирования выполняется ранжирование сменных блоков по отношению к первичным входам диагностирующего устройства. В каждый сменный блок вводится дополнительная аппаратура для передачи состояния входов блока на его выход.
Все сменные блоки одного уровня (ранга) проверяются одновременно и управляются одним управляющим сигналом.
Диагностирование заключается в настройке схем управления на проверку сменного блока г-го уровня, подаче тестовых воздействий на его выход, опросе результатов и сравнении их с эталонными.
Вариант 2. Селекторы устанавливают только в сменных блоках, соединенных с первичными входами диагностируемого устройства, и на обратных связях, обеспечивая их разрыв в режиме диагностирования [43].
Выходы каждого сменного блока соединены со средствами тестового диагностирования. Средства тестового диагностирования имеют информационные выходы, соединенные С дополнительными входами всех селекторов и служащие для выдачи тестовых воздействий на блоки устройства. Кроме того, СТД имеют один управляющий выход, соединенный с управляющими входами дополнительных селекторов устройства.
На входы СТД, которые соединены с выходами сменных блоков диагностируемого устройства, поступают ответы последних на тестовые воздействия. В СТД выполняется анализ этих ответов, в результате которого выдается диагноз.
При определении последовательности диагностирования сменные блоки устройства ранжируются, т. е. располагаются по уровням по отношению к первичным входам устройства. Диагностирование сменных блоков выполняется последовательно в порядке возрастания номеров рангов. Тесты для сменных блоков /-го ранга (/^2), построенное первоначально в терминах этих блоков, пересчитываются затем в терминах тех входов блоков (/—s)-x рангов (s^l), к которым подключены селекторы. Это — внешние входы устройства, а также входы, принадлежащие местам обрыва обратных связей.
МЕТОД ДИАГНОСТИРОВАНИЯ С ПОМОЩЬЮ СХЕМ ВСТРОЕННОГО КОНТРОЛЯ
Этот метод характеризуется тем, что объектом элементарной проверки является сменный блок, а средствами функционального диагностирования являются схемы встроенного контроля (СВК), конструктивно совмещенные с каждым сменным блоком.
Рис. 614. Самопроверяемый сменный блокРис. 614. Самопроверяемый сменный блокНа рис. 6.14 показаны диагностируемое устройство 1ДУ) и схемы встроенного контроля, образующие само- Проверяемый сменный блок. Наибольшая вероятность правильного диагностирования достигается при полной проверяемости ДУ и самопроверяемо- сти СВК.
Рис. 614. Самопроверяемый сменный блок
Рис. 614. Самопроверяемый сменный блок
Определение самопроверяе- Мости СВК было дано в гл. 4.
Поэтому здесь приводится только определение полной проверяемости ДУ.
Диагностируемое устройство называется полностью проверяемым, если любая его неисправность заданного класса обнаруживается СВК в момент ее первого проявления на выходных устройствах [43]. Требование полной проверяемости ДУ и самопроверяемости СВК приводит к значительным аппаратурным затратам, что ограничивает применяемость данного метода устройствами, реализованными в основном на больших интегральных схемах.
Рнс. 6.15. Структура системы диагностирования, использующей схемы встроенного контроля
На рис. 6.15 приведена структура системы функционального диагностирования. Локальными средствами функционального диагностирования ЛСФД, являются самопрове- ряемые CBKi с парами выходов fj, f^, приданные каждому сменному блоку Bi с общим средством функционального диагностирования ОСФД и устройство анализа и индикации УАИ. Назначением последнего является синхронизация сигналов ошибок от сменных блоков с учетом их связей, предотвращение возможной неоднозначности индикации из-за распространения сигналов ошибок и однозначная индикация неисправного блока.
Достоинством метода диагностирования с помощью схем встроенного контроля является практически мгновенное диагностирование сбоев и отказов, сокращение затрат на локализацию перемежающихся отказов и на разработку диагностических тестов.
МЕТОД ДИАГНОСТИРОВАНИЯ С ПОМОЩЬЮ САМОПРОВЕРЯЕМОГО ДУБЛИРОВАНИЯ
Этот метод аналогичен предыдущему, так как он тоже основан на принципе самопроверяемости сменных блоков. Разница состоит в том, что самопроверяемость сменных блоков достигается введением в него дублирующей аппаратуры и самопроверяемых схем сжатия, обеспечивающих получение сводного сигнала ошибки, свидетельствующего о неисправности сменного блока. На рис. 6.16 приведена
Рис. 6.16. Структурная схема самопроверяемого блока:
Сае, Сж— схемы сжатия
структурная схема самопроверяемого блока. Этот способ обеспечения самопроверяемости приводит к большим дополнительным затратам аппаратуры, что оправдывает его применение лишь в больших интегральных микросхемах.
При реализации ЭВМ на больших и сверхбольших интегральных микросхемах последние часто используются не полностью, так как ограничивающим фактором является не число транзисторов БИС, а число выводов. Поэтому введение в БИС дублирующих схем, обеспечивающих ее самопроверяемость, позволяет более полно использовать возможность БИС без значительного увеличения объема аппаратуры [43].
МЕТОД ДИАГНОСТИРОВАНИЯ ПО РЕГИСТРАЦИИ СОСТОЯНИЯ
Усложнение структуры ЭВМ, повышение степени интеграции и быстродействия элементов приводят к увеличению относительной доли сбоев в общем числе ошибок ЭВМ.
В связи с этим очень важно уметь локализовать причину сбоев по ситуации, зафиксированной в момент их проявления. Такую возможность предоставляет метод диагностирования по регистрации состояния.
Этот метод диагностирования характеризуется тем, что неисправность или сбой локализуется по состоянию ЭВМ, зарегистрированному в момент проявления ошибки и содержащему информацию о состоянии схем контроля, регистров ЭВМ, адресов микрокоманд, предшествующих моменту ошибки, и другую информацию. Место возникновения ошибки определяется по зарегистрированному состоянию путем прослеживания трассы ошибки от места ее проявления до места ее возникновения. Диагноз выполняется с помощью программных средств диагностирования самой ЭВМ, если диагностируется место возникновения сбоя, либо другой ЭВМ, если диагностируется отказ.
В ЭВМ, имеющих сервисные процессоры, диагноз может выполняться с помощью микропрограмм сервисного процессора.
Системы, использующие этот метод диагностирования, называют также системами прогнозирования отказов, так как отказам интегральных микросхем, как правило, предшествует их работа с ухудшенными характеристиками. Подобное (промежуточное между исправным и неисправным) состояние интегральной микросхемы выражается в увеличении числа сбоев. И лишь через определенное время ухудшение характеристик переходит в отказ. Локализация таких схем позволяет предотвратить их отказ путем замены ТЭЗ во время профилактических регламентных работ. Для диагностирования по регистрации состояния необходимо, чтобы система контроля ЭВМ обеспечивала:
непрерывность контроля;
блокировку распространения ошибок;
размещение точек контроля в узловых точках структуры;
регистрацию состояния ЭВМ в момент появления ошибки в специальный буфер регистрации;
сохранение предыстории микропрограммы в виде адресов и содержимого микрокоманд, выполненных после обнаружения ошибки и до момента регистрации;
однозначное соответствие между микрокомандой, на которой была обнаружена ошибка, и тактом останова ЭВМ для регистрации;
восстановление ЭВМ после сбоя путем повторения команд.
При выполнении этих требований ошибка, обнаруженная схемами контроля, оставляет след, начинающийся в месте возникновения ошибки и заканчивающийся в месте ее обнаружения. Этот след проявляется в виде несоответствия контрольных и информационных бит и единичного состояния триггеров ошибок.
Анализ состояния ЭВМ, зарегистрированного при обнаружении ошибки, позволяет выявить схемы, которые могут быть причиной ошибки. В том случае, когда ошибка могла распространиться разными путями, к анализу привлекается и код микрооперации, выполнявшейся в момент обнаружения ошибки. Это позволяет определить путь распространения ошибки и место ее возникновения. Поскольку одна и та же часть аппаратуры (в зависимости от выполнявшейся микропрограммы) может приводить к различным состояниям ЭВМ и, следовательно, к различному подмножеству подозреваемых средств, локализация ошибки может быть уточнена путем выполнения логических операций над подмножествами, содержащими названия аппаратурных средств (групп ТЭЗ).
При дальнейших пояснениях алгоритма диагностирования по зарегистрированному состоянию на примере ЭВМ ЕС-1046 используются следующие определения:
регистрация — запись состояния ЭВМ при обнаружении ошибки;
идентификатор активного источника (ПАИ) — поле записи состояния об ошибке, определяющее источник информации или функцию управления в момент обнаружения ошибки схемами контроля.
Для пояснения этого определения рассмотрим в качестве примера фрагмент схемы центрального процессора ЭВМ ЕС-1046, изображенный на рис. 6.17. Кружок с буквой К означает, что отмеченные регистры имеют схему контроля. Предположим, что схема контроля регистра Рг¥ зафиксировала ошибку, в результате которой произошел останов синхронизации и запись состояния ЭВМ в буфер регистрации. Поскольку регистр Рг¥ может принимать информацию из регистров РгС или РгВ.для выяснения начальной точки возникновения и трассы прохождения ошибки необходимо знать активный источник информации, т. е. микрооперацию, выполнявшую в момент фиксации ошибки. Идентификатор активного источника (ИАИ) определяется по
содержимому регистра микрокоманд, зафиксированному в момент ошибки Для данного примера ИАИ может быть РгС или PeD,
синдром ошибки (СОШ) —состояние триггеров ошибок, ИАИ и регистров — активных источников информации.
Состояние последних используется для анализа соответствия между информационными и контрольными битами с целью локализации первоисточника ошибки.
В общем случае синдром ошибки записывается в виде С0Ш={0ШИД1, 0ШИД2, ..., ОШИДУ, ИАИ-Рг, 0ШМ2АИ}, где 0ШИД1, 0ШИД2, .... OШИД^— идентификаторы ошибок 1—N; Рг — регистр ЭВМ, 0ШМ2АИ — признак несоответствия контрольных и информационных бит регистра — активного источника информации. В частном случае в синдроме ошибки элементы ИАИ-Рг или 0ШМ2АИ могут отсутствовать.
Поскольку результат диагноза зависит от очередности анализа ошибок, система диагностирования группирует их по типам. Группировка ошибок отражает последовательность потоков информации в трактах процессора и определяет очередность их анализа системой диагностирования;
Рис 6 17 Пример к методу диагностирования по регистрации состояния: УОБ— узел обработки байт. См — сумматор, КВСВ — коммутатор внешних свя* зей
область прямого соответствия (ОПС) синдрома ошибки— подмножество схем, которые могут быть причиной ошибки при данном синдроме.
Область прямого соответствия задается конструктивными адресами ТЭЗ. Для удобства анализа ТЭЗ, входящие в ОПС, разбиваются на группы с номерами.
Группы с одним и тем же номером по результатам анализа одного или разных СОШ в общем случае содержат одинаковые, разные или пересекающиеся подмножества ТЭЗ.
Задачей программных средств диагностирования является нахождение областей прямого соответствия по синдромам ошибок, зарегистрированных системой контроля и восстановления.
Процедура определения ОПС по одному синдрому ошибки называется процедурой одиночного анализа.
В качестве примера рассмотрим ошибку, описываемую синдромом СОШ={ОШРгУ, ИАИ-РгО, 0ШМ2Рг£>} (см. рис. 6.13). Этот синдром описывает следующую ситуацию: в ЭВМ зафиксирована ошибка по модулю 2 в регистре РгУ, в результате чего произошла регистрация состояния ЭВМ. Содержимое полей микрокоманды, выполнявшейся в момент ошибки, свидетельствует о том, что ошибка произошла в момент выполнения микрооперации РгУ: =РгО (т. е. ИАИ=РгО). Состояние бит регистра РгО свидетельствует о несоответствии контрольных и информационных бит регистра РгВ (ошибка по модулю 2Рг6).
Область прямого соответствия этого синдрома ошибки, вычисленная программой диагностирования, включает в себя ТЭЗ синхронизации, управления и опроса состояния (первая группа ТЭЗ); ТЭЗ регистров РгУ, РгО (вторая группа); ТЭЗ регистра PzZ (третья группа).
ТЭЗ РгХ включается в ОПС, так как ошибка в PeZ могла возникнуть в тракте PzZ—РгВ после схем контроля регистра PzZ.
Если при одиночном анализе некоторая группа встречается более одного раза, то выполняется пересечение подмножеств ТЭЗ, входящих в состав одноименной группы, и в ОПС от этой группы включаются результаты пересечения.
В результате одиночного анализа в виде групп с пустым множеством ТЭЗ включаются также группы, которые остаются вне подозрений при анализируемом СОШ.
Одна и та же причина может вызвать разные синдромы
в зависимости от микропрограмм, выполнявшихся аппаратурой в момент ошибки. Очевидно, что в этом случае диагноз может быть уточнен путем пересечения ОПС разных синдромов.
Процедура пересечения областей прямого соответствия нескольких синдромов ошибок, имеющих одну причину, называется процедурой группового анализа.
При групповом анализе процедура пересечения выполняется над множеством ТЭЗ, входящих в одноименные группы разных ОПС. Группы с пустым множеством ТЭЗ, включенные в ОПС по результатам одиночного анализа, используются при групповом анализе для получения в результате пересечения пустого множества, если в одной из ОПС содержится пустое множество ТЭЗ.
СЕРВИСНЫЕ ПРОЦЕССОРЫ
С усложнением ЭВМ существенно возросла сложность, трудоемкость и число сервисных операций. Например, большое число триггеров и регистров процессоров ЭВМ общего назначения уже не позволяет индицировать их состояния на лампочках, а требует выдачи на дисплей в отредактированной, удобной для обслуживающего персонала форме. Уже только индикация состояния требует значительного объема памяти и вычислений, а поскольку число аналогичных сервисных функций велико, их реализация возможна только при наличии достаточно мощных вычислительных устройств. В конце концов это потребовало выделения сервисных функций из состава функций ЦП и передачу их специализированным сервисным процессорам (СП).
Сервисными называют процессоры, выполняющие операции, связанные с обслуживанием ЭВМ, а именно: контроль и индикацию состояния, пультовые операции, диагностирование и восстановление, связь с удаленным центром обслуживания.
Выделение сервисных функций и передача их СП освобождает ЦП от несвойственных ему задач и позволяет повысить эффективность вычислений.
Конструктивно СП выполняются либо интегрированными с ЦП, либо в виде отдельного устройства с собственным питанием. Последний вариант предпочтительнее в связи с меньшей вероятностью одновременного отказа СП и ЦП.
Развитие СП идет по пути повышения их интеллектуальности, автоматизации различных процедур. В частности, по- 188
Рис. 6.18. Структура сервисного процессораРис. 6.18. Структура сервисного процессорауправление синхронизацией ЦП;регистрацию состояния ЦП при машинных ошибках;повторение команд ЦП при сбоях;реконфигурацию системы;диагностирование ЭВМ;контроль и измерение напряжений источников питауправление синхронизацией ЦП;регистрацию состояния ЦП при машинных ошибках;повторение команд ЦП при сбоях;реконфигурацию системы;диагностирование ЭВМ;контроль и измерение напряжений источников питаи) к)и) к)
Рис. 6.18. Структура сервисного процессора
Рис. 6.18. Структура сервисного процессора
управление синхронизацией ЦП;
регистрацию состояния ЦП при машинных ошибках;
повторение команд ЦП при сбоях;
реконфигурацию системы;
диагностирование ЭВМ;
контроль и измерение напряжений источников пита
управление синхронизацией ЦП;
регистрацию состояния ЦП при машинных ошибках;
повторение команд ЦП при сбоях;
реконфигурацию системы;
диагностирование ЭВМ;
контроль и измерение напряжений источников пита
и) к)
и) к)
вышается степень автоматизации запуска диагностических тестов, точность локализации неисправностей и выдача сообщений о них в отредактированной форме, вводится прогнозирование отказов на основе обработки записей о машинных ошибках, связь с удаленным центром обслуживания, защита от ошибок оператора, сбор данных о загрузке устройств.
Сервисный процессор в общем случае состоит из мини-, микро- или персональной ЭВМ (рис. 6.18) с достаточно
большой оперативной памятью, нескольких адаптеров, обеспечивающих связь с ЦП и ПУ (такими как дисплей, клавиатура, пультовые накопители, модем), и самих ПУ. При наличии соответствующих адаптеров один СП может обслуживать несколько ЦП. Интерфейс между ЦП и СП разрабатывается таким образом, чтобы обеспечить их независимость. Неисправность одного не должна нарушать работоспособность другого.
Сервисный процессор выполняет следующие функции:
инициализацию, т. е. начальную загрузку собст
венных микропрограмм и микропрограмм ЦП;
опрос и индикацию на дисплее состояния ЦП;
установку различных режимов работы ЦП (тактового, шагового, автоматического) и системы контроля;
пультовые операции, такие как запись и чтение оперативной и других внутренних памятей, различные виды сброса и остановов;
д) е) ж)
ния, контроль вентиляторов и температурных перегревов; л) автоматизацию профилактических испытаний;
м) наладку ЭВМ при изготовлении и вводе в эксплуатацию;
н) связь с удаленным центром обслуживания и выполнение сервисных операций под управлением последнего;
о) измерение загрузки системы (функции измерительного монитора).
Выполнение такого числа разнообразных операций требует применения вычислительных устройств с развитым программным обеспечением. В качестве ядра СП используются стандартные серийные мини- и микроЭВМ, в том числе и персональные компьютеры, что позволяет сократить затраты на разработку аппаратуры и ее производство. Все возрастающий объем программного обеспечения СП требует использования хорошей операционной системы и языков программирования.
Управление ЭВМ с помощью СП осуществляется через систему кадров. Кадром называется управляющая и индикационная информация, высвечиваемая на дисплее СП, с помощью которой оператор задает режимы управления, выполняет разные операции и наблюдает состояние ЭВМ.
Для удобства работы в СП предусматриваются справочные кадры, содержащие меню, т. е. список всех кадров ЭВМ. В качестве примера на рис. 6.19 показано меню кадров ЭВМ ЕС-1046. Кроме того, для облегчения работы предусматривается индикация различных подсказок в виде меню возможных действий оператора с комментариями.
Одной из важнейших функций СП является индикация состояния аппаратуры ЭВМ. Опрос состояния выполняется с помощью сериализации.
Сериализацией называется процесс преобразования параллельного кода состояния ЭВМ в последовательный и передача его в средства отображения информации.
Необходимость в системе сериализации возникает в связи с тем, что количество сигналов о состоянии ЭВМ достигает нескольких тысяч и передача этой информации параллельным кодом потребовала бы нескольких тысяч проводов.
Выход состоит в преобразовании параллельного кода состояния ЭВМ в последовательный, передаче его в СП, а затем преобразовании последовательного кода в параллельный (десериализация) для отображения на экране дисплея или записи в буфер регистрации.
Сериализация может выполняться двумя способами: 1) с помощью мультиплексоров; 2) с помощью сдвигового регистра.
СПИСОК КАДРОВ СВП ЭВМ ЕС1046=КАДР 12=
КАДРЫ ИНДИКАЦИИ
1 РУЧНЫЕ ОПЕРАЦИИ
15 УП ЦП
2 ОБСЛУЖИВАНИЕ
16 ЦП
3 ИЗМ/ОТ ЗУ ЭВМ
17 ОБЩ ОБОР КАН
4 ИЗМ/ОТ УП ЭВМ(РЕЖ ЦП)
18 БТМК 0
5 ИЗМ/ОТ УП ЭВМ (РЕЖ ВМП)
19 БЛМК 1
6 ИЗМ/ОТ ОП СВП
20 БЛМК 2
7 МИКРОДИАГНОСТИКА
21 БЛМК 3
8 ДИСТ. СЕРВИС
22 БТМК 4
9 АВТОТЕСТЕР
23 БЛМК 5
10 скип
24 БУОП (1)
11 ПИШ МАШИНКА
25 БУОП (2)
12 ИНДЕКСНЫЙ
26 АКС—ТОР(1)
14 ИНД БУФ АДР УП ЦП
27 АКС—ТОР (2)
РЕЖИНДИКАЦИИ М
28 СИГ. ПРОЦ.
29 ОШ ЦП
30 ОШ БУОП
31 ОШ ОБШ ОБОР КАН
32 АДАПТЕР КК
33 ОШ КАН
34 АДАПТЕР СВП
Рис. 6.19. Меню кадров ЭВМ ЕС-1046
Рассмотрим способ построения системы сериализации с помощью мультиплексоров на примере ЭВМ ЕС-1046. В этой ЭВМ система сериализации обеспечивает опрос состояния любого триггера ЭВМ (общее число 4096). Система сериализации имеет иерархическую структуру (рис. 6.20, а), образованную четырьмя ступенями преобразования. Первая ступень, состоящая из байтовых мультиплексоров, обеспечивает выбор адресованного бита в байтовом регистре. Каждая следующая ступень, также состоящая из байтовых мультиплексоров, управляемых кодом адреса сериализации, производит восьмикратное уменьшение числа выходных линий по отношению к входным. На выходе четвертой ступени имеется одна выходная линия, по которой состояние адресованного триггера поступает в СП. Система сериализации управляется адресом, который вырабатывается в СП. Информация о состоянии триггеров обрабатывается в СП, редактируется и выводится на экран дисплея.
Второй способ сериализации использует сдвиговые регистры (рис. 6.20,6). При этом предполагается, что все
триггеры ЭВМ представляют собой двухрядные сдвиговые регистры, выполненные на двух триггерах. Второй триггер пары нужен для установки триггера и опроса его путем сдвига.
Все пары триггеров объединяются в один сдвиговый регистр большой длины. В процессе сериализации или скани-
Номер байта В словеНомер байта В словеНомер слова в группеНомер слова в группеНомер группы слабНомер группы слабНомер бита в байтеНомер бита в байтеРис. 6.20. Сериализация состояния:а — с помощью мультиплексоров; б — с помощью сдвигового регистраРис. 6.20. Сериализация состояния:а — с помощью мультиплексоров; б — с помощью сдвигового регистра
Номер байта В слове
Номер байта В слове
Номер слова в группе
Номер слова в группе
Номер группы слаб
Номер группы слаб
Номер бита в байте
Номер бита в байте
Рис. 6.20. Сериализация состояния:
а — с помощью мультиплексоров; б — с помощью сдвигового регистра
Рис. 6.20. Сериализация состояния:
а — с помощью мультиплексоров; б — с помощью сдвигового регистра
рования на сдвиговый регистр из СП поступают синхроимпульсы сдвига, а информация о состоянии ЭВМ из последнего разряда сдвигового регистра — на обработку в СП.
Рассмотрим в качестве примера сервисный процессор ЭВМ ЕС-1046, структурная схема которого показана на
рис. 6.21. Постоянная управляющая память СП содержит резидентные микропрограммы, обеспечивающие начальную загрузку микропрограмм СП, анализ кода клавиш, тестирование ОП. Основные микропрограммы СП размещаются в ОП и загружаются в нее с пультового накопителя. В периоды незанятости СП выполняет управляющую микропро-
пп
Микропрограммный процессор
Адаптер ЦП
—
ЦП ЕС-1096
АВаптер дисплея
Дисплей ЕС-7927
ОП 128 Кбайт
Аваптьр пультового накопителя
Накопитель МЛ-95
АВаптер клавиатуры
Клавиатура
ЕС-0101-1-01
Адаптер печатающего устройства
Печатающееустройство ЕС-7937
АВаптер модема
МоВвм ЕС-8010
Адаптер средств контроля асточнакив питания (СКИП)
СКИП
Система электропитания
ЭВМ ЕС-1046
Адаптер интегрированного устройства диагностики ТЭЗ
Рис. 6.21. Структурная схема СП ЭВМ ЕС-1046
грамму, которая анализирует наличие запросов от процессора ЕС-1046 или от клавиатуры дисплея и передает управление (в зависимости от типа запроса) соответствующей сервисной микропрограмме.
Функции СП выполняются с помощью кадров, управля- Sx и индикационных. Управляющие кадры служат для •лнения ручных операций, диагностирования, тестиро- я и других функций, а индикационные — для наблюдения состояния аппаратурных средств ЭВМ ЕС-1046.
Ручные операции, инициируемые СП, могут быть простыми, при которых СП непосредственно устанавливает различные триггеры режимов в ЦП, и более сложными, требующими интерактивной работы микропрограмм СП и ЦП.
Диалог СП и ЦП ведется через регистр пульта управления (РгПУ) ЦП. В том случае, когда СП запрашивает У ЦП выполнение его микропрограммы, он загружает в ну-
левой байт РгПУ код запрашиваемой операции. Наличие в нулевом байте РгПУ ненулевого кода вызывает установку в ЦП триггера «Особый случай», который, в свою очередь, вызывает ветвление микропрограмм ЦП на анализ причины установки этого триггера и выполнения требуемой микропрограммы.
Центральный процессор может запрашивать выполнение операций СП путем установки триггера запроса на регистрацию (ТР) или триггера запроса на пультовую операцию [в ЭВМ ЕС-1046 он называется триггером блокировки пульта управления (ТБПУ), так как предназначен для захвата СП со стороны ЦП].
Центральный процессор устанавливает запрос на регистрацию при возникновении машинной ошибки. Сам ЦП при этом останавливается путем блокировки управляемых синхроимпульсов.
Сервисный процессор анализирует состояние ТР и переходит к выполнению микропрограмм записи состояния ЭВМ в буфер регистрации (находящийся в ОП СП), в конце которой выдает сигнал «Пуск СИ». По этому сигналу ЦП возобновляет работу с фиксированного адреса микропрограммы обработки ошибок.
При установке ТБПУ (запрос на пультовую операцию) ЦП зацикливается на ожидании ответа от СП.
Сервисный процессор анализирует состояние ТБПУ после завершения выполнявшихся микропрограмм и отвечает ЦП установкой триггера ответа пульта управления (ТОПУ). Центральный процессор при ТОПУ=1 выходит из цикла ожидания ответа от СП, загружает РгПУ кодом пультовой операции, сбрасывает триггер ТБПУ и зацикливается на анализе ТОПУ=0. Сброс ТБПУ служит для СП сигналом к выполнению пультовой операции. Микропрограмма СП начинает опрос состояния РгПУ, по системе сериализации дешифрирует код операции и ветвится на ее выполнение.
После опознавания кода операции СП может ответить сбросом ТОПУ, освобождая ЦП, который продолжает выполнение микропрограммы.
Однако если данные пультовой операции необходимы ЦП для выполнения дальнейших действий, то СП сбрасывает ТОПУ только после установки результатов операции в РгПУ. В этом случае сброс ТОПУ оповещает ЦП о готовности результата. Центральный процессор забирает данные из РгПУ и продолжает выполнение микропрограммы.
ФУНКЦИОНИРОВАНИЕ СИСТЕМЫ АВТОМАТИЧЕСКОГО ДИАГНОСТИРОВАНИЯ ЭВМ ЕС-1046
Метод микродиагностирования благодаря своим достоинствам (небольшое диагностическое ядро, большая глубина поиска дефекта, возможность использования при наладке ЭВМ на заводе-изготовителе) получил широкое распространение.
В качестве примера реализации метода микродиагностирования рассмотрим систему автоматического диагностирования ЭВМ ЕС-1046.
Диагностическое ядро или средства тестового диагностирования ЭВМ ЕС-1046 включает в себя СП и сервисный адаптер (СА). Структурная схема СТД показана на рис. 6.22. В ЭВМ ЕС-1046 применен принцип раскрутки, предполагающий, что на каждом очередном этапе диагностирования используется аппаратура, проверенная на предыдущих этапах. Микродиагностика ЭВМ ЕС-1046 бывает двух типов: статическая и динамическая. Статическая микродиагностика выполняется путем загрузки микрокоманды
Рис. 6.22. Структурная схема диагностического ядра ЭВМ-1046
в регистр микрокоманд, ее выполнения и сравнения результата с эталоном. Статической она называется так потому, что выполняется со скоростью, которая в большей степени имитирует «быстрый» тактовый режим, чем работу процессора с реальной частотой. Статическая микродиагностика обеспечивает проверку процессора, каналов управления памятями, частично самих памятей. Поскольку во время статической микродиагностики темп выполнения микрокоманд отличается от реальной скорости машины, могут остаться необнаруженными некоторые дефекты, проявляющие себя в динамическом режиме.
Для обнаружения более сложных неисправностей, связанных с временной диаграммой, используется динамическая микродиагностика, проверяющая аппаратуру ЭВМ с реальной тактовой частотой. Наличие двух типов микродиагностики — статической и динамической позволяет последовательно выявлять неисправности — сначала простые (типа постоянных отказов), а затем более сложные (связанные с изменением параметров схем, затягиванием фронтов сигналов, отсутствием согласующих сопротивлений, напряженной временной диаграммой).
Управление микродиагностированием осуществляется из кадра микродиагностики. Поля кадра выполняют функции кнопок, переключателей или содержат управляющую информацию. Каждому из этих полей соответствует клавиша на клавиатуре дисплея, нажатие которой активизирует соответствующую функцию.
После установки требуемых полей и запуска микродиагностики сервисный процессор загружает в ОП СП группы тестов. Загрузкой управляет микропрограммный загрузчик, размещенный в постоянной управляющей памяти СП. Он выполняет поиск зоны, заданный оператором на дисплее, загрузку группы тестов в ОП СП, повторную загрузку при ошибке ввода и передачу управления микропрограмме интерпретации тестов микродиагностики. Последние представляют собой программу, использующую язык диагностических команд, выполняемых СП или СА. Микропрограмма интерпретации последовательно выбирает диагностические команды из ОП СП и анализирует их. Команды, выполняемые в СА, вмеЬте с операндом передаются из СП в СА. При приеме одного байта в СА запускается счетчик, формирующий последовательность управляющих сигналов, необходимых для работы СА. Информация операнда отличается от кода команды тем, что содержит О
в седьмом бите. По этому признаку байты операнда поступают в регистр диагностики (РгДГ). Приемом байта операнда в РгДГ управляет счетчик байтов (СЧЕТ). Первый байт операнда принимается в биты 0—6 РгДГ, второй — в биты 7—13 и третий — в биты 20—24. Код команды, содержащий 1 в бите 7, поступает в дешифратор диагностических команд СА. Программа микродиагностики содержит в основном стандартные повторяющиеся последовательности команд, которые загружают микрокоманды в регистр информации управляющей памяти, выполняют их и сравнивают результаты с эталонами. Загрузка микрокоманд выполняется диагностическими командами Установка групп 1—4. С их помощью содержимым РгДГ заполняются различные поля регистра микрокоманд. При наличии 1 в бите 4 кода команды Установка групп накопленная микрокоманда выполняется. ^Выполнение каждой микрокоманды сопровождается сравнением последних бит адреса микрокоманды с эталонными значениями этих бит, заданных битами 5 и 6 кода команды Установка групп. Так проверяется выполнение всех микроопераций анализа, которые изменяют значение последних бит адреса микрокоманды. Несовпадение этих значений вызывает установку триггера ошибки АВ перехода, останов диагностирования и индикацию на дисплее причины останова.
Анализ состояния аппаратуры ЭВМ после выполнения микрокоманд производится путем опроса состояния и сравнения его с эталоном. Этой цели служат диагностические команды Сравнение байта (СБАР) и Сравнение бита (СБИР).
Команда Сравнение байта сравнивает состояние байтового регистра ЭВМ с эталонным. Адрес сериализации проверяемого регистра и его эталонное состояние задаются операндом команды. Несовпадение действительного и эталонного состояний вызывает прекращение диагностирования и индикацию на экране дисплея строки ОШИБКА РЕГИСТРАЦИИ и данных останова: номера кассеты, зоны останова, мнемоники команды СБАР, адреса сериализации, действительного и эталонного состояний, а также состояния некоторых аппаратурных средств ЭВМ.
Команда Сравнение ^ита сравнивает состояние триггера ЭВМ с эталонным. Адрес сериализации регистра, номер бита, соответствующего проверяемому триггеру, и его эталонное состояние задаются операндом команды. Несовпадение действительного и эталонного состояний вызывает дейст-
вия, аналогичные предыдущей команде с индикацией мнемоники команды (СБИР).
В начале каждого теста микродиагностики выполняется команда Блокировка ошибок, которая блокирует реакцию ЭВМ на сигналы от схем контроля во время микродиагностики, а также команда Диагностический сброс, выполняющая сброс аппаратуры. Окончание тестов микродиагностики кассеты оповещается командой Конец кассеты, которая также индицирует на экране дисплея одноименную строку.
Динамическая микродиагностика выполняется через управляющую память (УП) процессора, в которую предварительно загружаются диагностические микропрограммы. Функционирование ЭВМ под управлением диагностических микропрограмм происходит в ритме рабочей тактовой частоты машины. Загрузку диагностических микропрограмм в управляющую память производит специальный загрузчик.
По окончании ввода тестовой микропрограммы в УП управление передается этой микропрограмме. По ее завершении результаты анализируются СП и при несовпадении с эталоном происходит останов с индикацией.
Комплект микродиагностики рассчитан на максимально возможный состав оборудования ЭВМ. Тесты микродиагностики сами проверяют состав действительно включенного оборудования. Например, признак недействительного адреса используется для определения объема наличной оперативной памяти. Для определения наличия в системе канала под определенным номером и его типа тесты опрашивают средства канала, хранящие эти данные. При отсутствии устройств тесты, предназначенные для их проверки, игнорируются.
Для обнаружения некоторых сложных неисправностей, которые могут проявиться только при работе системы, в ЭВМ ЕС-1046 имеется комплект программных автономных диагностических тестов центральной части ЭВМ.
Тестирование ЭВМ ЕС-1046 завершают тесты архитектурных свойств и системный тест. На этой стадии тестирования проверяется правильность выполнения системы команд, исправность ПУ, блоков управления ПУ, параллельная работа процессора, каналов и ПУ. Комплект программ тестирования архитектурных свойств содержит базовый тест-монитор ТМЕС, комплект тест-секций, систему оперативного тестирования (СОТ). Этот уровень тестиро-
вания начинается с выполнения базового теста, проверяющего ядро команд, необходимых для работы тест-монитора.
Тестирование системных свойств ЭВМ ЕС-1046 выполняется с помощью системы комплексного автономного тестирования (СКАТ).
Поскольку глубина поиска дефекта при микродиагностике составляет 2—3 ТЭЗ, для быстрого определения неисправного ТЭЗ из группы подозреваемых и локализации в нем неисправной ИС в ЭВМ ЕС-1046 предусмотрено дополнительное средство — устройство диагностирования ТЭЗ (автотестер). Структурная схема этого устройства приведена на рис. 6.23. Диагностические тесты ТЭЗ записаны
Рис. 6.23. Структурная схема автотестера
на кассетной магнитной ленте и считываются за несколько секунд.
Проверяемый ТЭЗ устанавливается в специальный разъем автотестера, к каждому сигнальному контакту (всего 96) которого подведен выход соответствующего разряда регистра автотестера (РгАТ),
Аппаратурные средства автотестера (кроме 96-битного регистра автотестера) включают в себя также счетчик байт и дешифратор, управляющие приемом информации в одно из 8-битных полей РгАТ, и схему проверки ИС ОЗУ.
Схема проверки ИС ОЗУ запускается специальной микрооперацией. Она обеспечивает автоматическую проверку ИС ОЗУ, имеющихся в ТЭЗ, на частоте, близкой к частоте работы этих схем в ЭВМ.
При установке проверяемого ТЭЗ в гнездо автотестера на выходные контакты проверяемого ТЭЗ поступают значения соответствующих бит РгАТ. Выходные контакты проверяемого ТЭЗ соединяются с соответствующими разрядами РгАТ через монтажное И. Поэтому для получения на контактах значений выходов ТЭЗ соответствующие биты РгАТ устанавливаются в 1. Элементарный тест проверки ТЭЗ содержит один установочный набор и эталонное значение выходов на этом наборе.
Один элементарный тест занимает 25 байт: код команды ТЕСТ 1 байт, установочная информация 12 байт, эталонная информация 12 байт.
После подачи входного набора на ТЭЗ выполняется опрос состояния контактов по системе сериализации и сравнения результата с эталонным. При несовпадении результата с эталонным на экране дисплея в кадре автотестера индицируется состояние контактов ТЭЗ с выделением контактов, на которых обнаружено несовпадение и номер элементарного теста.
После обнаружения неисправности ее дальнейшая локализация выполняется по диагностическим справочникам и таблицам состояния ИС. Для наблюдения состояния ИС используется логический пробник ПЭТ-1.
Проверка ТЭЗ, содержащих ИС ОЗУ, состоит из проверки логической части ТЭЗ и проверки собственно ИС ОЗУ. Первый этап выполняется обычным способом, описанным выше, а второй — путем запуска специальной схемы проверки ИС ОЗУ, содержащей генератор теста «бегущая 1 (0)», коммутатор и схему сравнения. Коммутатор подключает соответствующие контакты РгАТ (при проверке логических ТЭЗ) или контакты схем проверки ТЭЗ, содержащих ИС ОЗУ (при проверке ТЭЗ с ИС ОЗУ) к контактам разъема проверяемого ТЭЗ. Цоколевка разъемов ТЭЗ, содержащих ИС ОЗУ, унифицирована, т. е. контакты, предназначенные для выполнения одноименных функций (код адреса, сигналы записи и выборки ИС, входная и выходная
информация) во всех ТЭЗ с ИС ОЗУ, имеют одинаковые номера. Схема проверки ИС ОЗУ запускается командой Тест ОЗУ и при обнаружении ошибки устанавливает специальный триггер, по анализу которого микропрограмма автотестера выдает на экран дисплея результаты проверки.
ОСОБЕННОСТИ ДИАГНОСТИРОВАНИЯ КАНАЛОВ ВВОДА-ВЫВОДА
Каналы представляют собой специализированные процессоры, предназначенные для управления вводом-выводом [19]. Подключение периферийных устройств (ПУ) к каналам выполняются с помощью стандартного интерфейса ввода-вывода. В интерфейсе ввода-вывода выделяют две группы шин:
шины канала, состоящие из информационных шин прямой передачи (из канала в ПУ) и шин управления. Информационные шины, по которым передаются выводимый байт информации, приказ (код операции) ПУ и номер (адрес) ПУ, обозначаются ШИН-К. Шины управления, по которым в ПУ передаются управляющие сигналы, обозначаются СИГ-К;
шины абонента, состоящие из информационных шин обратной передачи (из ПУ в канал) и шин управления. Информационные шины, по которым передаются вводимый байт информации, байт состояния и номер (адрес) ПУ, обозначаются ШИН-А. Шины управления, по которым в канал передаются управляющие сигналы, обозначаются СИГ-А.
Для диагностирования каналов необходимо имитировать сигналы на шинах ШИН-А и СИГ-А. Существуют следующие способы имитации сигналов абонента: микрокоманд- ный; с помощью регистра имитации интерфейса (РгИИ); с помощью встроенного в каналы блока управления периферийным устройством (УПУ).
Схемы соединений при каждом способе имитации сигналов абонента приведены на рис. 6.24, а—г.
Микрокомандный способ применяется в основном при микродиагностировании. Имитация СИГ-А выполняется с помощью специальной микрооперации и поля константы микрокоманды. Имитация ШИН-А выполняется путем засылки в буферный регистр ШИН-А требуемого кода с помощью соответствующей микрооперации ЭВМ.
Способ имитации сигналов абонента с помощью регистра имитации интерфейса универсален и может быть исполь-
зован как при микропрограммном, так и при схемном управлении каналами. Загрузка РгИИ из процессора позволяет имитировать любые сочетания сигналов абонента.
Имитация сигналов абонента с помощью другого канала позволяет интерпретировать сигналы ШИН-К и СИГ-К од-
Рис. 6.24. Способ имитации сигналов абонента при диагностировании каналов ввода-вывода:
а — микрокомандам^ б — с помощью регистра имитации интерфейса; в — с помощью другого канала; а —с помощью встроенного в каналы имитатора УПУ
ного канала как сигналы ШИН-А и СИГ-А для другого канала.
В некоторых ЭВМ для диагностирования каналов ввода- вывода используется встроенный имитатор УПУ, представ-
ляющий собой первое устройство, подключенное к интерфейсу ввода-вывода.
Встроенный имитатор снабжается загружаемой управляющей памятью, в которую из процессора может загружаться произвольная микропрограмма, в том числе и микропрограмма, обеспечивающая работу имитатора УПУ при диагностировании каналов.
Имитатор УПУ способен также имитировать нормальный режим передачи с максимальной скоростью и другие режимы работы каналов.
ДИАГНОСТИРОВАНИЕ ОПЕРАТИВНЫХ
ЗАПОМИНАЮЩИХ УСТРОЙСТВ
Для диагностирования оперативных запоминающих устройств (ОЗУ) используются тесты, приведенные ниже [6].
Все нули (все единицы). Во все ячейки ОЗУ производит* ся запись нулей (единиц), после чего производится после* довательное считывание и проверка этой информации.
Адресный. В каждую ячейку ОЗУ записывается код собственного адреса, затем производится последовательное считывание и проверка этой информации. Адресный тест обеспечивает проверку адресных дешифраторов ОЗУ.
Шахматный. В ОЗУ записывается информация, имеющая шахматное распределение (рис. 6.25), затем производится последовательное считывание и проверка этой информации. Шахматный тест используется для проверки взаимовлияния ячеек, содержащих информацию, записанную в обратном коде.
Сканирующий. Производится запись нулей (единиц) во все ячейки ОЗУ, затем выполняется последовательное считывание и проверка. После этого во все ячейки записываются единицы (нули) и процесс повторяется. Сканирующий тест используется для проверки ОЗУ в условиях максимальной статической помехи, вызванной суммарным током утечки всех ячеек ОЗУ, находящихся в одном состоянии.
Чередующиеся строки 0 и 1. В смежные ячейки ОЗУ записывается информация в обратном коде (рйс. 6.25), затем производится последовательное считывание и проверка этой информации. Этот тест используется для проверки взаимовлияния адресных шин по строкам.
Чередующиеся столбцы О и 1. В ячейки ОЗУ записывается такая информация, чтобы смежные столбцы ОЗУ содержали информацию в обратном коде, затем производится
последовательное считывание и проверка этой информации. Этот тест используется для проверки взаимовлияния адресных шин по столбцам.
Запись и запись/считывание вперед и назад. По всем адресам ОЗУ записываются нули, затем производится последовательное считывание и проверка этой информации. После проверки каждой очередной ячейки в нее записывается информация в обратном коде (единицы). После проверки последней ячейки и записи в нее единиц процедура повторяется от старшего адреса к младшему с чтением единиц, их проверкой и записью нулей. Этот тест используется для проверки взаимовлияния соседних ячеек при смене в них информации. Схема выполнения теста для одного бита ОЗУ приведена на рис. 6.25, в.
Марширующий. Во все ячейки ОЗУ записываются единицы, затем производится последовательное считывание информации с проверкой и заменой ее на нули. После обращения к последнему адресу процедура повторяется с данными в обратном коде, т. е. последовательное считывание нулей, начиная с первой ячейки, с проверкой и заменой ее на единицы. После обращения к последнему адресу процедура повторяется с данными в обратном коде, т. е. с нулями, и в обратном направлении — от последней ячейки к первой. После обращения к первой ячейке процедура повторяется. Считываются нули и на их место записываются единицы. После обращения к последнему адресу выполняется чтение с проверкой единиц всех ячеек ОЗУ — от первой до последней. Этот тест является модификацией теста «запись и запись/считывание вперед и назад».
Дополнительная адресация. Во все ячейки ОЗУ записывается фоновый набор единиц (нулей), затем производится Считывание ячейки, начиная с первой, с последующей проверкой и записью в нее противоположной информации. Каждое второе обращение выполняется по адресу, код которого является дополнением к предыдущему. Схема выполнения теста для одного бита ОЗУ приведена на рис. 6.25, г.
Этот тест предназначен для проверки адресных цепей, Информация которых в этом тесте подвергается максимальному изменению.
Долбление. Во все ячейки ОЗУ записывается тестовая информация, после чего производится многократное считывание по каждому адресу с последующей проверкой по всем адресам. Процедура повторяется при замене информа-
ции в каждой ячейке на информацию в обратном коде. Этот тест предназначен для проверки способности ячеек выдерживать многократные обращения по считыванию.
Крест. В каждую ячейку ОЗУ записывается тестовое слово (единицы и нули), а в каждую из четырех соседних ячеек — фоновое слово (нули или единицы соответственно). Затем информация в соседних ячейках изменяется и проверяется влияние этого изменения на проверяемую ячейку.
С помощью этого теста проверяется чувствительность ячейки к изменениям состояний крестообразно расположенных соседних ячеек.
Схема выполнения теста «крест» для одного бита ОЗУ приведена на рис. 6.25, д.
Разрушение считыванием. Во все ячейки ОЗУ записывается, считывается и проверяется тестовое слово (все единицы). Выполняется приращение адреса и тестовое слово записывается во вторую ячейку. После этого информация из первой и второй ячеек считывается и проверяется. Процедура продолжается до тех пор, пока во все ячейки ОЗУ не будет записано тестовое слово. К нулевой ячейке производится п обращений, к первой — п—1, к последней — одно. Схема выполнения теста для одного бита ОЗУ приведена на рис. 6.25, е.
Тест «разрушение считыванием» используется для проверки взаимовлияния ячеек ОЗУ при записи в них одной и той же информации.
Бегущий. В первую ячейку ОЗУ записываются единицы (нули), а во все остальные — фоновые нули (единицы). Затем все адреса последовательно считываются с проверкой; последней считывается первая ячейка с последующей записью в нее нулей (единиц). Последовательность операций повторяется для второй ячейки, третьей и т. д. вплоть до последней.
Схема выполнения теста для одного бита ОЗУ показана на рис. 6.25, ж. Тест «бегущий» предназначен для обнаружения сбоев в ОЗУ, вызванных переходными процессами в разрядных цепях, так как перемещение 1 на фоне О (или наоборот) создает наихудшие условия для усилителей считывания.
Пинг-понг. В первую ячейку ОЗУ записываются единицы, а во все остальные — нули. Затем последовательно считываются и проверяются ячейки 2, 1, затем 3, 1; 4, 1 и т. д., пока все пары переходов, включающие ячейку /, не будут проверены. После этого в ячейку / записываются
нули, а во вторую — единицы. В той ж§ последовательности операции повторяются для ячейки 2 и т. д. Цикл повторяется для инверсной информации.
Схема выполнения теста для одного бита ОЗУ показана на рис. 6.25, з. С помощью этого теста проверяется функционирование накопительной части ОЗУ, дешифратора, а также влияние записи на сохранность информации.
Галопирующий. В первую ячейку ОЗУ записываются единицы, а в остальные — нули. Затем последовательно считываются и проверяются ячейки 2, 1, 2, затем 3, 1, 3 и т. д., пока все пары переходов, включая ячейку 1, не будут проверены. После этого в ячейку 1 записываются нули и информация считывается. Последовательность операций повторяется для ячеек 2, 3 и т. д. вплоть до последней. Схема выполнения теста для одного бита ОЗУ показана на рис. 6.25, и. По эффективности тест эквивалентен тесту «пинг-понг».
По характеру зависимости длительности выполнения тестов от числа ячеек ОЗУ приведенные выше тесты можно разделить на две группы: пропорциональные п; пропорциональные п2, где п — емкость ОЗУ.
Ниже приведены длительности тестов, а в табл. 6.1 — их обнаруживающая способность.
Таблица 6.1
Обнаруживаемые отказы
в матрицев матрицев дешифраторев дешифраторе
в матрице
в матрице
в дешифраторе
в дешифраторе
ТестТестXgXgСканирующийШахматныйЗапись и запись/считыва- ние вперед и назадМарширующийДополнительная адресацияКрестБегущийПинг-понг ГалопирующийСканирующийШахматныйЗапись и запись/считыва- ние вперед и назадМарширующийДополнительная адресацияКрестБегущийПинг-понг Галопирующий
Тест
Тест
Xg
Xg
Сканирующий
Шахматный
Запись и запись/считыва- ние вперед и назад
Марширующий
Дополнительная адресация
Крест
Бегущий
Пинг-понг Галопирующий
Сканирующий
Шахматный
Запись и запись/считыва- ние вперед и назад
Марширующий
Дополнительная адресация
Крест
Бегущий
Пинг-понг Галопирующий
Примечание, тивное обнаружение.Примечание, тивное обнаружение.Нобнаруживает,Нобнаруживает,не обнаруживает; 0 — неэффек-не обнаруживает; 0 — неэффек-
Примечание, тивное обнаружение.
Примечание, тивное обнаружение.
Нобнаруживает,
Нобнаруживает,
не обнаруживает; 0 — неэффек-
не обнаруживает; 0 — неэффек-
Все нули (единицы)2ц
Адресный 2га
Шахматный4п
Сканирующий 4п
Чередующиеся строки 0 и 1.. . . . 4п
Чередующиеся столбцы 0 и 1 .. . 4п
Запись и запись/считывание вперед и назад5п
МарширующийЮл
Дополнительная адресацияЮп
Крест128л
Разрушение считываниемл3
Бегущий ,. . 2(п2+2п)
Пинг-понг . . , .. 2(2п24-2п)
Галопирующий2(3п24-3п)
ПРОЕКТИРОВАНИЕ ДИАГНОСТИЧЕСКОГО ТЕСТОВОГО ОБЕСПЕЧЕНИЯ ЭВМ
Диагностическое тестовое обеспечение ЭВМ включает в себя диагностические тесты и справочники. Диагностическими являются тесты, локализующие неисправность с точностью до типовых элементов замены. Диагностическими обычно бывают тесты схемного и функционального (реже архитектурного) уровней.
Основными этапами проектирования диагностического обеспечения являются вычисление тестов и составление справочников (рис. 6.26). Конкретные алгоритмы вычисления тестов зависят от метода диагностирования, реализованного в ЭВМ. Метод командного ядра использует программные тесты, разрабатываемые с помощью ручного анализа структуры ЭВМ и ее конструктивного решения. В методе диагностирования уровня логических схем и методе, ориентированном на проверку сменных блоков, используются методы вычисления тестов, описанные в § 8.3 и 8 6, а метод микродиагностирования — в§ 8.4.
Вычисление тестов для метода эталонных состояний показано на рис. 6.27.
При представлении алгоритмов функционирования устройства в виде графа каждому допустимому пути в графе алгоритма ставятся в соответствие входные условия, обеспечивающие прохождение определенной ветви алгоритма. Совокупность входных условий превращается в последовательность команд диагностической программы, поступающих на вход устройства и задающих в устройстве
Рис. 6 26 Общая структура системы проектирования диагностических тестов
режим принудительной синхронизации, при котором выполнение каждого очередного такта проверяемого устройства задается диагностической программой. Условия прохождения всех путей вычисляется по графу алгоритма или его табличному описанию. Эталонные состояния могут быть получены с помощью логического моделирования или, как эго чаще практикуется, метода «физического эталона», т. е. путем снятия эталонов с работающего устройства (рис. 6.28).
Из-за неопределенности состояния некоторых триггеров до их установки в конкретное состояние одной и той же группе команд может соответствовать разная последовательность состояний устройства. Использование этих состояний в качестве эталона требует устранения такой неопределенности. Это достигается с помощью маски, которая позволяет отсечь неопределенные состояния. При разработке диагностического справочника каждому биту состояния устройства ставится в соответствие триггер mt и его конструктивный адрес Г,.
Таблица соответствия mt—h и образует диагностиче- 14—27 209
ский справочник. При сравнении действительного состояния устройства с эталонным диагностическая программа определяет номер элемента ти состояние которого не совпадает с эталонным, и, таким образом, вход в диагностический справочник.
VVФормирование Виагностической программыФормирование Виагностической программыIIФормированиеВиагностаческихсправочниковФормированиеВиагностаческихсправочниковIIРис 6 28. Снятие «физического эталона» с работающего устройства.Рис 6 28. Снятие «физического эталона» с работающего устройства.
V
V
Формирование Виагностической программы
Формирование Виагностической программы
I
I
ФормированиеВиагностаческихсправочников
ФормированиеВиагностаческихсправочников
I
I
Рис 6 28. Снятие «физического эталона» с работающего устройства.
Рис 6 28. Снятие «физического эталона» с работающего устройства.
/ Лента \ с ВиагностаА ческой, прог-] \ раммой /
Диагностический справочник
Рис. 6 27. Система проектирования диагностических тестов для метода эталонных состоянии
] — номер такта ветви алгоритма; I — номер вегви алюритма
Разработка диагностических справочников
Диагностические справочники могут разрабатываться с помощью логического или физического моделирования неисправностей. По результатам моделирования в диагностическом справочнике каждому исходу теста ставится в соответствие список подозреваемых на неисправность ТЭЗ.
Логическое моделирование требует описания всех логических модулей и связей между ними с привязкой к конструктивным элементам. При логическом моделировании в описание устройства вводится неисправность и моделируется работа устройства на диагностических тестах.
Достоинством логического моделирования является возможность разработки тестов и справочников параллельно с логическим проектированием ЭВМ, выявления недостатков системы диагностирования и устранения их до создания конкретного образца ЭВМ.
Недостатком логического моделирования являются большие затраты машинного времени. Системы физического моделирования в этом отношении более привлекательны, так как затраты на их создание гораздо меньше, а при автоматизации процесса имитации неисправностей, запуска тестов и обработки их результатов потребность в машинном времени также существенно меньше.
Недостатком физического моделирования является изменение нагрузки сигнала, появление дополнительной задержки при имитации неисправности, возможность ошибок оператора.
Общая схема системы физического моделирования неисправностей показана на рис. 6 29. Съемный модуль
Рис. 6.29. Общая схема системы физического моделирования неисправ ностей
(ИС или ТЭЗ), неисправности которого имитируются, вынимается из своего гнезда в тестируемом устройстве и устанавливается в аналогичное гнездо (рис. 6.29, а) в устройстве имитации. Гнездо снятого модуля в тестируемом устройстве соединяется с устройством имитации кабелем. Управляющая ЭВМ посылает в устройство управления имитацией адрес и тип имитируемой неисправности, а в тестируемое устройство — диагностические тесты.
В другом варианте (рис. 629, б) устройство имитации выполняется в виде платы — удлинителя, на котором размещены средства имитации неисправностей на контактах разъемов ТЭЗ. Удлинитель устанавливается на место ТЭЗ, а сам ТЭЗ вставляется в удлинитель.
Результаты выполнения диагностических тестов поступают в управляющую ЭВМ, накапливаются и после завершения имитации неисправностей на всех контактах редактируются в формате диагностических справочников.
Имитация может выполняться на контактах ИС или ТЭЗ двумя способами- релейным или схемным. При первом способе неисправности имитируются включением/от- ключением соответствующих реле, а при втором — путем подключения к контакту, на котором имитируется неисправность, схемы формирования постоянного 0 или 1. Недостатком релейной имитации является громоздкость устройства, вследствие чего не всегда удается обеспечить адекватность модели реальной неисправности. Схемная имитация обеспечивает большую компактность и простоту управления имитацией.
Схемная имитация неисправностей на контактах ИС может выполняться также с помощью клипсы-насадки, соединенной кабелем с устройством имитации (рис. 6 29, в).
Физическое моделирование неисправностей может также использоваться для проверки качества разработанных систем диагностирования, вероятности обнаружения неисправностей и вероятности правильной локализации.
Рассмотрим в качестве примера систему физического моделирования неисправностей (СФМН) ЭВМ ЕС-1045, схема которой приведена иа рис 6 30 [61] Эта система включает в себя аппаратурные средства, состоящие из универсального устройства имитации и устройства управления, а также программные средства. Универсальное устройство имитации выполнено в виде удлинителей, на которых размещены схемы имитации неисправностей на контактах разъемов ТЭЗ, выполненных на ИС серии 500 и снабженных 135-коитактным разъемом типа «Янтарь». Устройство управления имитацией в соответствии с принятой из
управляющей ЭВМ информацией задает номер контакта и тип имитируемой неисправности. Программные средства СФМН содержат программу моделирования (ПМ), программу редактирования и печати результатов моделирования (ПРП), массивы тестов микродиагностики и массивы контактов ТЭЗ для имитации неисправностей.
Система физического моделирования неисправностей работает следующим образом ПМ запрашивает у оператора конструктивный адрес ТЭЗ, для которого выполняется имитация неисправностей После ввода адреса ПМ печатает указание оператору о необходимости установить испытуемый ТЭЗ на удлинитель-имитатор (УИ), обеспечивающий имитацию неисправностей на логических контактах ТЭЗ. После установки ТЭЗ на УИ программа последовательно вводит неисправности типа «константа О» (КО) и «константа 1» (К1) на контактах разъема ТЭЗ, имеющихся в массиве контактов для имитации, и запускает микродиаг- иостику испытуемой ЭВМ. Массив контактов для имитации формируется системой автоматизации проектирования (САПР) по таблицам входных и выходных сигналов панелей.
Удлинитель-имитатор имеет три состояния- нейтральное, имитация КО и имитация К1. В нейтральней состоянии УИ испытуемая ЭВМ сохраняет работоспособность, за исключением тех случаев, когда временная задержка, вносимая УИ, нарушает работу ЭВМ.
Рис. 6 30. Система физического моделирования неисправностей ЭВМ
ЕС-1045
Для повышения достоверности результатов моделирования и подтверждения работоспособности ЭВМ при установленном УИ первый прогон тестов микродиагностики выполняется в нейтральном состоянии УИ. Если тесты микродиагностики выполнились безошибочно, ПМ перегонит к имитации неисправности первого контакта из списка. В противном случае печатается сообщение об ошибке при отсутствии имитации и ПМ запрашивает дальнейшие указания у оператора. Последний может проверить установку УИ и ТЭЗ в гнездах и перезапусти ,ь программу. Если сообщение повторяется, делается вывод о невозможное! и моделирования неисправностей ТЭЗ из-за нарушения временных параметров ЭВМ вследствие дополнительной задержки, вводимой УИ.
Результаты выполнения тестов микродиагностики на ЭВМ с имитированной неисправностью в виде номера теста и проверки в тесте поступают в управляющую ЭВМ. Программа моделирования формирует из этих данных вектор неисправности, добавляя к нему конструктивный адрес ТЭЗ, номер контакта, тип имитированной неисправности, и запоминает его в оперативной памяти
Векторы формируются как для обнаруженных, так и для необнаруженных неисправностей. В последнем случае элементы вектора, описывающие номер теста и проверки, отсутствуют. Эти векторы служат для оценки процента обнаруженных неисправностей как для всей ЭВМ, так и для ее блоков, что позволяет дополнять тесты с целью увеличения их обнаруживающей способности. По окончании имитации неисправностей УИ переводится в нейтральное положение и снова выполняется однократный прогон тестов микродиагностики. Если в последнем прогоне ошибок ие обнаружено, что свидетельствует о нормальном окончании имитации, массив векторов сбрасывается на магнитную ленту (МЛ) результатов имитации и ПМ выдает оператору указания об установке на УИ ТЭЗ со следующим конструктивным адресом. Для некоторых ТЭЗ, в частности ТЭЗ синхронизации, УИ вносит задержку, из-за которой тесты микродиагностики в нейтральном состоянии УИ не проходят. Для этих ТЭЗ внесение неисправностей выполняется вручную при той же программе путем установки перемычки от источника логических 0 или 1 на испытуемый контакт. С этой целью в ПМ предусмотрены программный останов перед имитацией и продолжение программы после установки перемычки. В остальном тестирование, накопление и обработка результатов ручного моделирования выполняются аналогично автоматическому моделированию.
Результаты моделирования, накопленные на МЛ, обрабатываются программой редактирования и печати Последняя для каждого кода неисправности (номер текста и проверки) формирует сводку в виде конструктивных адресов и типов ТЭЗ, а также числа моделированных неисправностей по каждому из ТЭЗ, вызвавших один и тот же код неисправности. На основании этих данных для каждого ТЭЗ из списка,
вызвавшего один и тот же код неисправности, определяется статистическая вероятность неисправности ТЭЗ.
После этого программа печатает диагностический справочник в виде соответствия кодов неисправностей (номер теста и проверки) и списка соответствующих им ТЭЗ, упорядоченных по убыванию статистической вероятности.
Опыт показывает, что трудоемкость проектирования диагностических справочников с помощью СФМН существенно меньше трудоемкости проектирования с помощью систем логического моделирования
Диагностические справочники, полученные с помощью СФМН, имеют высокую достоверность, что позволяет уменьшить время восстановления ЭВМ и снизить требования к квалификации обслуживающего персонала, а выявленный с помощью СФМН список необнаруживаемых неисправностей позволяет вести целенаправленную работу по увеличению обнаруживающей способности диагностических тестов.
Глава 7
ДИСТАНЦИОННОЕ ОБСЛУЖИВАНИЕ ЭВМ
ПРИНЦИПЫ ДИСТАНЦИОННОГО ОБСЛУЖИВАНИЯ
Быстрый рост парка ЭВМ вызвал нехватку квалифицированного персонала и привел к ухудшению качества эксплуатации. Централизованное обслуживание, пришедшее на смену индивидуальному, не смогло решить проблему качества и снижения стоимости обслуживания. Одной из причин этого были и остаются длительные простои ЭВМ в ожидании прибытия ремонтной бригады, в которой часто не оказывалось нужного специалиста. Кроме того, плата за централизованное обслуживание остается высокой, а список предоставляемых услуг — коротким.
Проблема своевременного и качественного обслуживания ЭВМ общего назначения может быть решена при внедрении новой формы обслуживания (получившей название дистанционной), основанной на использовании сетей передачи данных для дистанционного контроля и управления ЭВМ пользователей. Ядром такой системы является центр дистанционного обслуживания, или просто центр обслуживания (ЦО), в котором сосредоточен квалифицированный персонал, имеющий всю необходимую информацию о состоянии ЭВМ и возможность тестирования ее на расстоянии.
К достоинствам дистанционного обслуживания относятся:
возможность круглосуточной работы;
быстрая локализация неисправностей ЭВМ пользователя по результатам дистанционного диагностирования и отображения в ЦО всей информации о состоянии ЭВМ;
возможность прогнозирования отказов благодаря накоплению в ЦО записей о машинных ошибках ЭВМ пользователя;
возможность передачи пользователю инструкций по устранению некоторых проблем и, таким образом, быстрому восстановлению работоспособности ЭВМ;
отправка к пользователю специалиста с готовым решением и комплектом необходимых запасных частей;
возможность создания центрального банка симптомов ошибок и обращения к нему при необходимости;
экономия времени и средств на командировках специалистов по обслуживанию.
Системой дистанционного обслуживания (СДО) называется совокупность аппаратурных и программных средств информационного и процедурного обеспечения, позволяющих проводить контроль технического состояния обслуживаемых ЭВМ и локализацию неисправностей в них с использованием сети передачи данных.
Основными технологическими операциями ЦО при дистанционном обслуживании являются:
тестирование ЭВМ пользователя на контрольных программах с передачей результатов в ЦО;
передача в ЦО накопившихся в системном журнале ЭВМ пользователя записей о машинных ошибках;
работа с информационно-поисковой системой «Банк симптомов ошибок и методов их устранения» и другими системами сбора статистических данных;
анализ состояния ЭВМ пользователя с использованием возможностей дистанционного пульта;
дистанционное диагностирование ЭВМ пользователя с воспроизведением результатов в ЦО;
слежение за работой ЭВМ пользователя путем воспроизведения в ЦО состояния ее пульта оператора.
Первые три технологические операции предполагают работоспособность ЭВМ пользователя и, если она уже подключена к вычислительной сети, могут использовать существующие стандартные средства телеобработки.
Последние три технологические операции обычно вы-
полняются, когда ЭВМ пользователя неработоспособна. Для их выполнения требуются специальные средства. Соответственно существуют два способа подключения ЭВМ пользователя к сети СДО:
через стандартные средства телеобработки (или их эмуляторы), подключенные к каналу ввода-вывода ЭВМ пользователя;
через специальные адаптеры, подключенные к пультовым средствам или СП ЭВМ пользователя.
При подключении ЭВМ пользователя к сети СДО первым способом СДО представляет собой обычную вычислительную сеть. Второй способ подключения используется в связи с тем, что при отказе ЭВМ пользователя и необходимости выполнения технологических операций, связанных с дистанционным управлением и диагностированием, сама ЭВМ и ее устройства телеобработки не могут быть использованы для связи с ЭВМ ЦО. Вместо них используется специальная аппаратура, подключенная к пультовым средствам или СП ЭВМ пользователя. Одно из основных требований при втором способе подключения — минимум дополнительных аппаратурных средств, так как при отказе аппаратуры связи дистанционное управление и диагностирование невозможно.
Для дистанционного обслуживания желательно использовать уже существующую сеть передачи данных и устройства телеобработки, дополняя их специальными средствами, обеспечивающими второй способ подключения ЭВМ пользователя к сети.
Следует отметить, что при втором способе подключения обеспечивается выполнение всех технологических операций дистанционного обслуживания.
Рассмотрим технологические операции дистанционного обслуживания с точки зрения их выполнимости при обоих способах подключения ЭВМ пользователя к сети СДО.
Тестирование ЭВМ пользователя с передачей результатов тестирования в ЦО может осуществляться при обоих способах подключения. При первом способе при установке режима дистанционного обслуживания макрокоманды печати результатов тестирования вызывают также передачу их по стандартным средствам телеобработки и сети СДО в ЦО.
При втором способе программа ЦО опрашивает состояние дисплея СП ЭВМ пользователя и при появлении сообщений тестовых программ воспроизводит их в ЦО.
Передача записей о машинных ошибках, регистрируемых в системном журнале ошибок, может выполняться при обоих способах подключения. При втором способе записи передаются в ЦО сразу после их регистрации. Для этого на ЭВМ пользователя в ЦО устанавливается режим дистанционной регистрации В этом режиме ЭВМ ЦО постоянно опрашивают ЭВМ пользователя и принимает очередную запись о машинной ошибке по мере ее появления.
Информация о машинных ошибках очень важна в связи с тем, что в современных ЭВМ большинство неисправностей носит случайный (перемежающийся) характер. Наличие этой информации в ЦО позволяет определить частоту повторения неисправностей, локализовать их причину и принять решение о внеплановом обслуживании.
Следующей технологической операцией, которая может выполняться при обоих способах подключения ЭВМ пользователя к сети СДО, является работа с банком симптомов ошибок.
Центральный банк ошибок, хранящий информацию о неисправностях, их внешнем проявлении и методах устранения, является одним из основных компонентов СДО. Эффективность такого банка возрастает с течением времени, так как он становится более информативным. Специалисты центра могут консультироваться в архиве банка перед принятием окончательного решения по ремонту ЭВМ пользователя.
После восстановления работопособности ЭВМ пользователя данные об использованных средствах и методах устранения неисправностей передаются в ЦО для пополнения банка. Пользуясь данными банка, специалисты ЦО получают возможность глубже исследовать конкретную проблему и определить действия, необходимые для устранения неисправности.
Кроме центрального банка ошибок, СДО может иметь также средства автоматизации сбора и накопления отчетов о проделанной работе специалистов по обслуживанию, включающих в себя такую информацию, как время ремонта, использованные средства, общее состояние оборудования пользователя, необходимость техобслуживания в будущем. Эта информация имеет важное значение не только для правильной организации обслуживания, но и для улучшения надежности и ремонтопригодности ЭВМ со стороны производителя.
Остальные три технологические операции могут вы-
подняться только при втором способе подключения ЭВМ пользователя к сети СДО.
При дистанционном обслуживании все функции пульта ЭВМ передаются ЦО и могут быть использованы персоналом центра для анализа неисправности и выполнения проверок, в том числе и диагностирования.
Режим дистанционного слежения позволяет наблюдать в ЦО информацию, индицируемую на дисплее СП ЭВМ пользователя, и, таким образом, отслеживать ее работу.
Технические средства СДО включают в себя ЭВМ центра обслуживания, ЭВМ пользователей с аппаратурой передачи данных, различные стандартные устройства телеобработки и сеть передачи данных. К стандартным устройствам телеобработки относятся мультиплексоры передачи данных (МПД), процессоры телеобработки данных (ПТД), абонентские пункты (АП), называемые также терминалами, сетевые адаптеры (СА), адаптеры канального уровня и т.д.
ВАРИАНТЫ ПОДКЛЮЧЕНИЯ ЭВМ
ПОЛЬЗОВАТЕЛЯ К СЕТИ СДО
Существуют два способа подключения ЭВМ пользователя к сети СДО: через стандартные устройства телеобработки или их эмуляторы, подсоединенные к каналу ввода- вывода и через специальные адаптеры, подсоединенные к пультовым средствам или сервисному процессору.
Ниже приводится классификация вариантов подключения ЭВМ пользователя к сети СДО. В первых двух вариантах используется первый способ подключения, в остальных — второй. Общий недостаток первых двух вариантов— ограниченные возможности (выполняются не все технологические операции дистанционного обслуживания).
Третий и четвертый варианты характеризуются подключением к сервисному процессору стандартных средств телеобработки, таких как МПД, ПТД, СА, а пятый — эмуляторов этих средств (включая и АП).
Шестой вариант, ориентированный специально на СДО, характеризуется минимальными затратами аппаратуры, микропрограммной (программной) реализацией канального протокола в СП в объеме, необходимом для работы СДО. Седьмой вариант используется для подключения к сети СДО ЭВМ с механическими ПУ с помощью адаптера канального протокола, а восьмой — для ЭВМ, не
имеющих средств дистанционного обслуживания вообще. Рассмотрим достоинства и недостатки вариантов. При описании вариантов звено «модем—линия связи—модем» опущено, так как оно присутствует во всех вариантах, как показано на рис. 7.1. ЭВМ пользователя для краткости будем именовать просто ЭВМ в отличие от ЭВМ ЦО.
ЭВМ—канал ввода-вывода МПД(ПТД)—МПД (ПТД)—ЭВМ ЦО {рис. 7.1, а). Достоинства — использо-
ЛЛэвмца Канал В-вэвмца Канал В-вМПД! ПТДМПД! ПТДGAGAммммммииммммМПД/ПТД САМПД/ПТД САмпд[птд апсэмпдмпд[птд апсэмпдСПСПСПСПСП с эсстСП с эсстСП с СРКПСП с СРКПи ии иПУ ЭВМПУ ЭВМАКПАКПКанал в-в Канал в-вКанал в-в Канал в-вЭВМЭВМЛАЛАААЭВМЭВМс)с)ЭВМЭВМЭВМЭВМЭВМЭВМЭВМЭВМЭВМЭВМЭВМЭВМб)б)в)в)г) в) в)г) в) в)*93)*93)
Л
Л
эвмца Канал В-в
эвмца Канал В-в
МПД! ПТД
МПД! ПТД
GA
GA
м
м
м
м
м
м
и
и
м
м
м
м
МПД/ПТД СА
МПД/ПТД СА
мпд[птд апсэмпд
мпд[птд апсэмпд
СП
СП
СП
СП
СП с эсст
СП с эсст
СП с СРКП
СП с СРКП
и и
и и
ПУ ЭВМ
ПУ ЭВМ
АКП
АКП
Канал в-в Канал в-в
Канал в-в Канал в-в
ЭВМ
ЭВМ
ЛА
ЛА
А
А
ЭВМ
ЭВМ
с)
с)
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
ЭВМ
б)
б)
в)
в)
г) в) в)
г) в) в)
*93)
*93)
Рис. 7.1 Варианты подключения ЭВМ пользователя к сети СДО
вание стандартных средств, недостаток — избыточность аппаратуры МПД (ПТД) у пользователя.
ЭВМ—канал ввода-вывода — эмулятор МПД(ПТД) в составе СП—МПД (ПТД) — ЭВМ ЦО (рис. 7.1,6). Достоинства по сравнению с первым вариантом — небольшой объем дополнительной аппаратуры эмулятора в СП, недостатки — необходимость разработки моделезависимого эмулятора.
СП ЭВМ—МПД(ПТД) — МПД(ПТД)—ЭВМ ЦО (рис. 7.1, в).
Достоинства — использование стандартного МПД(ПТД), возможность выполнения всех технологиче-
ских операций дистанционного обслуживания; недостатки— избыточность аппаратуры МПД(ПТД) у пользователя, необходимость разработки в СП специальных аппаратурных и программных (микропрограммных) средств для обеспечения работы МПД(ПТД).
СП ЭВМ — сетевой адаптер (СА)—СА (или МПД, или ПТД)—ЭВМ ЦО (рис. 7.1,г). Достоинства — стандартная аппаратура, небольшие габаритные размеры; недостаток — сложность реализации сетевых протоколов в СП.
СП ЭВМ с эмуляторами стандартных средств телеобработки (ЭССТ) — МПД(ПТД) — ЭВМ ЦО (рис. 7.1, д). Достоинство — возможность использования существующих методов доступа, недостатки — трудоемкость разработки и избыточность функций.
СП ЭВМ с микропрограммными (программными) средствами реализации канального протокола (СРКП)—МПД (ПТД) —ЭВМ ЦО (рис. 7 6, е). Достоинства — минимальный объем дополнительной аппаратуры в СП, небольшая трудоемкость. Этот вариант может быть рекомендован для вновь разрабатываемых ЭВМ, снабженных СП.
Пульт управления (ПУ) ЭВМ — адаптер канального протокола (АКП) —МПД(ПТД) —ЭВМ ЦО (рис. 7.1, ж). Этот вариант используется в ЭВМ без СП, т. е. ЭВМ с механическим ПУ. Достоинство — возможность подключения к сети СДО ЭВМ пользователя с механическим ПУ. Недостатки— ограниченные возможности, необходимость наличия специального интерфейса ПУ ЭВМ пользователя для подключения АКП, возможность подключения к сети СДО должна быть заложена на этапе разработки ЭВМ.
Логический анализатор (ЛА) со спецадаптером у ЭВМ пользователя — ЛА со спецадаптером ЦО (рис. 7.1,з). Этот вариант используется для дистанционного обслуживания ЭВМ, не приспособленных для дистанционного тестирования, и позволяет специалисту ЦО манипулировать удаленным ЛА. После подключения зондов ЛА к ЭВМ пользователя специалист ЦО может управлять работой удаленного ЛА, настраивая его на запоминание соответствующих данных и передачу их в ЛА ЦО. Такой вариант требует разработки специального ЛА с адаптером, однако возможность дистанционного обслуживания любых ЭВМ оправдывает затраты.
СИСТЕМА ДИСТАНЦИОННОГО ОБСЛУЖИВАНИЯ ЭВМ ЕС-1046
Система дистанционного обслуживания ЭВМ ЕС-1046 (рис 7 2) состоит из ЦО, в котором установлена одна из ЭВМ ЕС, снабженная мультиплексором передачи данных, адаптерами синхронной передачи данных, четырехпроводными модемами Центр обслуживания арендованными че-
Рис 7 2 Система дистанционного обслуживания ЭВМ ЕС-1046
тырехпроводными телефонными линиями связи соединен с ЭВМ ЕС-1046 пользователей
ЭВМ ЕС-1046 снабжена сервисным процессором, содержащим аппаратурно-микропрограммные средства реализации канального протокола, которые для краткости будем называть адаптером канального протокола (АКП). На физическом уровне используется протокол X21, а на уровне управления каналами — протокол BSC в дуплексном режиме.
Программное обеспечение включает в себя:
программу дистанционного обслуживания (ПДО), оформленную в виде тест-секции КПТО,
комплексную систему прогнозирования отказов (КСПО);
автоматизированную систему сбора и обработки данных об ошибке (АССОД).
Специалисты ЦО имеют следующие возможности по наблюдению, анализу и диалогу с ЭВМ пользователя:
отслеживание состояния ЭВМ пользователя путем воспроизведения состояния дисплея ее СП в ЦО;
постоянное отображение на дисплее ЦО ошибок ЭВМ пользователя, возникающих при ее нормальной эксплуатации;
накопление в ЦО записей о машинных ошибках ЭВМ пользователя для последующей обработки их с помощью КСПО;
накопление в ЦО информации о неисправности и последовательности действий по ее устранению для включения в банк симптомов ошибок и методов их устранения (АССОД);
использование режима дистанционного пульта управления ЭВМ ЕС-1046, обеспечивающего: индикацию состояния ЭВМ; изменение/отображение памятей ЭВМ; сброс, начальная загрузка программ и их выполнение; выполнение микродиагностики с получением результатов на дисплее ЦО;
диалог с пользователем через дисплеи.
Первые три возможности используются ЦО для слежения за состоянием ЭВМ пользователя параллельно с ее нормальной работой, четвертая — для перевода ЭВМ пользователя в режим дистанционного управления, пятая — для ввода данных о неисправностях после ремонта ЭВМ пользователя в банк симптомов ошибок АССОД и шестая — для ведения диалога.
Опыт эксплуатации существующих СДО показывает, что значительная часть проблем пользователя является следствием недостаточной квалификации его обслуживающего персонала, несвоевременного внесения изменений в аппаратуру, микропрограммы и программное обеспечение. Многие из этих проблем могут быть опознаны специалистами центра с помощью простого отслеживания состояния дисплея СП пользователя.
Отображение в ЦО ошибок ЭВМ пользователя позволяет специалистам ЦО оценить состояние ЭВМ, определить сбойные узлы, а накопление записей о машинных ошибках и их обработка с помощью КСПО — уточнить место неисправности с точностью до группы ТЭЗ.
Накопление записей об ошибках выполняется ЭВМ ЦО
параллельно с нормальной работой ЭВМ пользователя. Обработка этих записей с помощью КСПО позволяет прогнозировать неисправность, пока она вызывает только сбои, и предотвратить ее путем превентивной замены ТЭЗ, являющихся причиной сбоев.
Центр обслуживания является хранителем извещений на изменения в аппаратуре, микропрограммах и программном обеспечении. Зная характер проявления ошибок, связанных с отсутствием имеющихся доработок, специалист ЦО может установить их причину, наблюдая внешние признаки ее проявления на своем дисплее.
Сеанс дистанционного обслуживания начинается в результате телефонной договоренности пользователя с ЦО При этом в ЦО подготавливается к работе МПД и модем и вызывается ПДО ЭВМ ЕС-1046, а на ЭВМ пользователя включается модем и вызывается кадр дистанционного сервиса. После установления связи специалист ЦО и пользователь могут вести диалог с помощью клавиатуры дисплеев. Пользователь в любой момент может прервать сеанс дистанционного обслуживания.
Действия специалиста ЦО зависят от степени и места повреждения ЭВМ пользователя.
В тех случаях, когда ошибка носит случайный (сбойный) характер, специалист ЦО может отслеживать ее на своем дисплее и накапливать записи о машинных ошибках для последующей локализации причины сбоев с помощью КСПО. При этом пользователь по просьбе ЦО устанавливает в кадре дистанционного сервиса режим дистанционная регистрация и переходит к нормальной работе по выполнению своих программ. Программа дистанционного обслуживания в ЦО постоянно опрашивает ЭВМ пользователя и при появлении записи об ошибке в буфере регистрации СП принимает ее и записывает на магнитной ленте ЦО и высвечивает на дисплее центра информацию об ошибке.
В тех случаях, когда проблема пользователя может быть вызвана его неверными действиями, ЦО может отслеживать в центре действия пользователя. С этой целью по просьбе ЦО пользователь устанавливает режим дистанционное слежение и переходит к выполнению своей обычной работы. Программа дистанционного обслуживания, постоянно опрашивая ЭВМ пользователя, принимает на экран своего дисплея любое изменение в кадре управления СП. Неверные действия пользователя фиксируются специалистами ЦО.
При постоянной ошибке в ЭВМ пользователя специалист ЦО может удостовериться в ее наличии с помощью микродиагностики. В этом случае он передает на экран дисплея СП пользователя сообщение с просьбой установить одну из кассет микродиагностики, запускает ее из центра и наблюдает результат на своем дисплее.
В случае успешного выполнения микродиагностики специалист ЦО может обратиться к пользователю с просьбой установить кассету с микропрограммами ЭВМ, загрузить ее, выполнить из ЦО сброс системы и удостовериться в правильном выполнении сброса.
Если ошибка связана с внешними устройствами, ЦО обращается к пользователю с просьбой установить пакет дисков с тест-секциями внешних устройств и сообщить в ЦО номер дисковода. После этого специалист ЦО может вызвать тест-секцию неисправного внешнего устройства, выполнить ее и наблюдать ее результаты на экране своего дисплея в кадре пишущая машинка.
После локализации неисправности и ее устранения ЦО запрашивает ввод данных для АССОД. При этом на экране дисплея СП высвечивается бланк данных о неисправностях. После заполнения граф этого бланка, содержащих внешние признаки проявления и действия по устранению неисправности, он передается в ЦО и записывается на магнитную ленту для дальнейшего ввода в АССОД. Благодаря такой возможности обеспечивается постоянное обновление банка симптомов ошибок и методов их устранения. Специалисты ЦО при необходимости могут консультироваться уАССОД.
Алгоритм обмена информацией. При дистанционном обслуживании инициатива в работе принадлежит ЭВМ ЦО, которая является ведущей, а ЭВМ пользователя—ведомой. Программа дистанционного обслуживания ЭВМ ЦО выполняет команду Начать ввод-вывод, которая адресует МПД, конкретную линию связи и задает канальные команды для работы адаптера АД-6. Канальные команды типа Запись •могут задавать адресные байты для выборки АКП в СП ЭВМ пользователя или коды команды для запуска операций СП ЭВМ пользователя. Информация, передаваемая в линию по команде Запись, содержит также управляющие (за исключением СИН) и контрольные символы.
Адаптер канального протокола СП может находиться в двух режимах: управления и тестовом. Он переходит в режим управления после приема символа КП. В режиме уп-
равления АКП отслеживает линию на предмет обнаружения последовательности выборки.
После успешной выборки АКП переходит в тестовой режим, готовясь к приему тестовой информации и подтверждению приема.
ЭВМ ЦО может посылать на АКП:
последовательность выборки конкретного АКП;
команды;
информацию, интерпретируемую в соответствии с режимом, установленным в кадре дистанционного сервиса.
Команды АКП СП содержатся в информации канальной команды Запись, выполняемой адаптером ЭВМ ЦО. Признаком команды АКП СП является символ АР2, следующий за символом НТ. Адаптер канального протокола выполняет следующие команды:
Сообщение (коды АР2,27). Эта команда означает, что принятый текст является сообщением оператору. Принятый текст выдается на экран дисплея;
Диалог (коды АР2,55). Эта команда означает, что персонал ЦО желает вступить в диалог с опоратором пользователя, и используется в режиме дистанционного пульта или при передаче в ЦО данных о неисправности.
Отсутствие символа АР2 в сообщении означает, что принятый текст является последовательностью символов, имитирующих работу пульта управления ЭВМ, т. е. позволяет выполнение функций дистанционного пульта. Непременным условием этого является установка режима дистанционного пульта в кадре дистанционного сервиса.
Рассмотрим последовательность действий программы ПДО во время сеанса дистанционного обслуживания.
После запуска ПДО ЭВМ ЕС-1046 на ЭВМ ЦО последняя включает несущую по передающему каналу и переходит в фазирование, а СП ЕС-1046 после вызова кадра дистанционного сервиса и установления режима контролирует наличие несущей от ЭВМ центра. Опознав несущую в приемном канале, СП включает несущую в передающем канале и переходит в фазирование. Неустановление канала передачи данных индицируется оператору на СП и на ЭВМ центра.
В процессе фазирования ЭВМ центра включает сигнал ДС (дать синхронизацию) и тайм-аут фазирования Тз4. Передающая часть ЭВМ центра посылает в канал комбинации символов СИН, а передающая часть СП — искаже- 226
ние комбинации СИН (ЗАБОЙ) Приемная часть ЭВМ центра и СП начинают поиск символов СИН
При распознавании подряд семи символов СИН ЭВМ центра вырабатывает сигнал СС (снять синхропосылку). Сервисный процессор искажает символы СИН с момента вхождения в фазирование до приема седьмого СИН.
Фазирование заканчивается выработкой сигнала СС в ЭВМ центра и переходом ее в СП в режим определения готовности тракта (ОГТ). Если фазирование продолжается более тайм-аута Та4, фиксируется ошибка.
В процедуре ОГТ в обоих направлениях производится обмен символами СИН. По первой комбинации, отличной от СИН, запускается ТаЗ, по окончании которого СП переходит в фазирование. При приеме подряд семи комбинаций СИН, управляющей последовательности опроса или выборки сбрасывается тайм-аут в СП.
Процедура выборки (передача от ЭВМ ЦО к СП). Процедура начинается передачей по сфазированному каналу от ЭВМ центра управляющей последовательности выборки, а именно, символа КОНЕЦ ПЕРЕДАЧИ (КП), АДР1, АДР2, символа КТО ТАМ (КТМ), где АДР1, АДР2 — адрес СВП при выборке Для этого ЭВМ центра выполняет следующую канальную программу:
запись управляющей последовательности;
чтение ответа.
Каждый из символов управляющей последовательности выборки проверяется на четность, а адреса СП еще и на действительность адреса По окончании передачи ЭВМ центра включает тайм-аут Та2, в течение которого ожидает ответ от СП. При отсутствии ответа от СП в течение Та2 ЭВМ центра повторяет выборку. Число переспросов — до семи, после чего ЭВМ центра переходит в фазирование. При правильном приеме последовательности СП отвечает подтверждением (API-О), включает тайм-аут ТаЗ и переходит к анализу символов НТ, КП и тайм-аута ТаЗ. При их отсутствии в течение тайм-аута ТаЗ СП переходит в фазирование, а после него в процедуру ОГТ. При приеме символа КП в ответ на API-О при выборке СП переводится в процедуру ОГТ. ЭВМ центра, получив ответ с АР 1-0, начинает поблочную передачу данных, которая осуществляется следующей канальной программой:
запись НТ;
запись блока;
запись символа конец блока (КБ);
чтение ответа.
Приняв НТ, СП начинает формирование контрольной последовательности блока (КПБ) и следит за появлением КБ, КТМ, КТ и КП. При приеме КБ или КТ блок заканчивается, сбрасывается ТаЗ и проверяется принятый блок.
В первом блоке сообщения на НТ следует командная последовательность (АР2, код команды) или последовательность пультовой операции.
В соответствии с полученными командами СП использует принятую информацию для вывода сообщений на экран дисплея или выполнения функций пульта.
Закончив передачу блока данных, ЭВМ центра в течение Та2 ожидает ответа от СП. Если СП принял блок правильно, он передает подтверждение АР1=0 на четный API = 1 на нечетный блок, включает ТаЗ и переходит к приему следующего блока. Если блок принят с ошибкой, ЭВМ центра повторяет его передачу. Передача от ЭВМ заканчивается получением подтверждения от СП на блок с КТ посылкой КП. “
Процедура опроса (передача от СП и ЭВМ центра). Опрос начинается по сфазированному каналу посылкой от ЭВМ центра управляющей последовательности КП, АДРЗ, АДР4, КТМ, где АДРЗ, АДР4 — адрес СП при опросе, и включением на ЭВМ центра тайм-аута Та2, в течение которого ожидается ответ от СП. При правильном приеме последовательности опроса СП начинает передачу сообщения НТ, АДРЗ, АДР4, блок данных, КБ, КПБ. После передачи блока данных СП переходит к приему ответа от ЭВМ центра. В ответ на правильный ответ СП передает очередной блок. После получения от ЭВМ положительного ответа на последний переданный блок СП передает КП и переходит в процедуру ОГТ.
МЕТОДЫ ТЕСТИРОВАНИЯ И ГЕНЕРАЦИИ ТЕСТОВ.
ТЕСТОПРИГОДНОЕ ПРОЕКТИРОВАНИЕ АППАРАТУРЫ
УРОВНИ И МЕТОДЫ ТЕСТИРОВАНИЯ ЭВМ
Надежность ЭВМ во время эксплуатации закладывается на этапах ее разработки и изготовления. Выявление при изготовлении дефектов комплектующих изделий и произ-
водства, а также дефектов из-за ошибок разработки существенно способствует повышению надежности работы ЭВМ у пользователя. В противном случае дефекты будут обнаруживаться во время эксплуатации ЭВМ. В данном случае понятие «дефект» и «неисправность» используются для обозначения одного и того же явления с тем лишь смысловым оттенком, что под дефектом подразумевается «врожденная» неисправность, т. е. неисправность, оставшаяся в устройстве после его выпуска.
Для обнаружения дефектов и неисправностей ЭВМ и ее отдельные устройства подвергаются испытаниям — тестированию. Тестирование составляет основу процессов диагностирования и профилактических испытаний.
На рис. 8.1 представлены основные этапы изготовления и ввода в эксплуатацию ЭВМ и соответствующие тесты. Во
Рис. 8.1. Этапы изготовления и тестирования ЭВМ
время эксплуатации ЭВМ используются те же тесты (если не все, то большинство из них), но обычно в обратной последовательности (рис. 8.2).
Испытания цифровых устройств могут быть статическими и динамическими. Статическими называются испытания,
при которых частота тестовых воздействий на проверяемое устройство намного меньше частоты реальных воздействий при работе устройства в составе ЭВМ. Динамическими называются испытания, при которых частота тестовых воздействий соответствует рабочей частоте устройства.
< Контрольные задачи, системный тест, тесты Гк
Тест
Функциональные тесты ^Тесты ТЭЗ)Функциональные тесты ^Тесты ТЭЗ)архитектурных свойств
Функциональные тесты ^
Тесты ТЭЗ)
Функциональные тесты ^
Тесты ТЭЗ)
Рис. 8 2. Уровни тестирования ЭВМ при эксплуатации
[
Испытания делятся также на функциональные и параметрические. Функциональными называются испытания, проверяющие соответствие устройства заданному алгоритму его функционирования.
При параметрических испытаниях контролируется ток, напряжение, форма импульсов, задержка распространения сигналов, длительность фронта и спада.
Объектами тестирования могут быть:
произвольные логические схемы, содержащиеся в ИС, СИС, БИС, СБИС, ТЭЗ;
устройства ЭВМ, такие как центральный процессор, каналы памяти;
архитектурные свойства ЭВМ;
совокупное функционирование всех устройств, т. е. системные свойства ЭВМ.
Соответственно будем различать четыре уровня тестирования: произвольных логических схем, устройств, архитектурных и системных свойств ЭВМ.
При вычислении тестов каждого уровня используется описание (модель) устройств — объектов тестирования. Будем рассматривать следующие уровни описания дискретных устройств: схемный; функциональный или микроопе- рационный, или регистровых передач; алгоритмический или архитектурный; системный.
Каждый уровень имеет свой язык описания, а полное описание системы представляет собой многоуровневую ие-
рархическую структуру, содержащую языковые конструкции разных уровней.
Большинство неисправностей, возникающих при эксплуатации, представляют собой замыкание линий на землю или на линию напряжения питания, короткие замыкания между сигнальными линиями, обрывы, отсутствие резисторов, пробои транзисторов, низкий коэффициент усиления или чрезмерные задержки, причем такие неисправности могут быть одиночными и кратными. Для вычисления тестов физические неисправности должны быть представлены их логическими моделями. Уровень описания определяет модели неисправностей и методы вычисления тестов.
На уровне логических вентилей описания модель объекта тестирования задается перечислением логических функций элементов и связей между ними. Используются следующие модели неисправностей:
константные неисправности. Моделируют постоянный О или 1 на входах или выходах схемы и обозначают соответственно константа О (КО) и константа 1 (КО- В дальнейшем неисправности КО и К1 в линии а будем обозначать соответственно а/0 и а/1;
короткие замыкания (КЗ). Моделируют короткие замыкания между сигнальными проводниками схем. Модель КЗ требует введения дополнительной схемы, как показано на рис. 8.3, б.
ВхоЭы ВыходыВхоЭы Выходыа b с а в f д h OO1OQO О 1 Исправная схемаО 0 1 О О О ОО НвиспраВ- д) яая схемаа b с а в f д h OO1OQO О 1 Исправная схемаО 0 1 О О О ОО НвиспраВ- д) яая схемаРис. 8 3. Модель короткого замыкания.
ВхоЭы Выходы
ВхоЭы Выходы
а b с а в f д h OO1OQO О 1 Исправная схема
О 0 1 О О О ОО НвиспраВ- д) яая схема
а b с а в f д h OO1OQO О 1 Исправная схема
О 0 1 О О О ОО НвиспраВ- д) яая схема
10002000Число Ввнтцлей 8 схеме10002000Число Ввнтцлей 8 схемеРис. 8 4. Зависимость полноты проверки от числа вентилейРис. 8 4. Зависимость полноты проверки от числа вентилейа — исходная схема; 6— модель КЗ, в — таблица входных и выходных сигналов
10002000
Число Ввнтцлей 8 схеме
10002000
Число Ввнтцлей 8 схеме
Рис. 8 4. Зависимость полноты проверки от числа вентилей
Рис. 8 4. Зависимость полноты проверки от числа вентилей
Неисправности константные и КЗ называют также статическими, так как они обнаруживаются при статическом тестировании.
Хотя реальные дефекты ИС, СИС, БИС, ТЭЗ, как правило, не исчерпываются моделями одиночных константных неисправностей, большинство систем генерации тестов используют эти модели
Одним из недостатков описания схем на уровне логических вентилей является их сложность и громоздкость. Этот недостаток становится все более очевидным по мере роста степени интеграции. Машинное время, необходимое для вычисления тестов и моделирования неисправностей, связано с числом вентилей следующей зависимостью:
/ = кп\
где / — машинное время; к—коэффициент пропорциональности; п — число вентилей.
Это затрудняет вычисление тестов для больших схем. Кроме того, полнота проверки тестов, полученных с помощью систем генерации тестов, есть убывающая функция от числа вентилей. Из графика этой функции на рис. 8.4 видно, что для схем, содержащих свыше 1000 вентилей (как для последовательных, так и для комбинационных схем), полнота проверки схемы падает ниже приемлемого уровня.
Другим недостатком описания схем на уровне логических вентилей является то, что часто детали структуры БИС, например микропроцессорных БИС, не доступны разработчикам тестов. Поэтому используют более высокий уровень описания устройств, в котором в качестве элемента описания используют не вентиль, а функциональный узел. Этот уровень описания, называемый функциональным, (микрооперационным или уровнем регистровых передач), использует графовую модель процессоров (микропроцессоров) и других устройств. Модель устройства представляет собой граф, вершины которого соответствуют регистрам, сумматорам, функциональным преобразователям, информационному входу и выходу, а ребра определяют пути передачи информации.
Описание схем на функциональном уровне сокращает затраты на вычисление тестов. К достоинствам описания функционального уровня относится также возможность использования одних и тех же тестов для различной схемной реализации одних и тех же функциональных устройств.
Модели неисправностей функционального уровня описания определяют множество функциональных неисправностей, идентичных по своим свойствам множеству кон-
стантных неисправностей вентильной модели Моделями неисправностей на функциональном уровне являются:
для дешифратора выборки регистров: f^RJO)— регистр Rt не выбирается; f(RJRj) — вместо регистра Rt выбирается Rf, f(Rl(Ri-1t-R!) — кроме Rt выбирается еще и Rp,
для дешифраторов микроопераций: [(т^О)— микрооперация не активизируется; ^(т^т]) — вместо микрооперации т, активизируется m;; f(ml/mt+mI) — кроме микрооперации mt активизируется еще и т;;
для регистров и трактов передачи данных: неисправность типа КО и К1 триггеров и линий передач данных различного количества и сочетаний.
Следующим более высоким уровнем описания является архитектурный или алгоритмический. Подобное описание задается на языке высокого уровня (примером является описание принципов функционирования систем IBM 360 на языке APL [73]) граф-схемой алгоритмов (ГСА) или граф- схемой выполнения команд.
Моделями неисправностей этого уровня являются неисправности аппаратуры и ошибки разработки, приводящие к неверному результату выполнения команд
Системный уровень описания характеризует совокупное поведение всех устройств системы, их взаимодействие во времени.
На алгоритмическом и системном уровнях перечисление возможных неисправностей невозможно из-за их большого числа. Поэтому на этих уровнях практикуется вычисление тестов не для обнаружения конкретных неисправностей или их сочетаний, а для проверки правильности функционирования алгоритма или системы при возможных сочетаниях операндов. Так, на алгоритмическом уровне — это проверка правильности выполнения всех ветвей алгоритма. Классификация методов тестирования и их связи с методами генерации тестовых воздействий и анализа реакций испытываемых устройств представлены на рис. 8.5 [9].
Детерминированные методы генерации обеспечивают вычисление совокупности тестовых наборов для тестирования заданной схемы и состоят из следующих этапов: вычисление тестового набора для очередной неисправности из общего списка неисправностей, моделирование схемы на полученном тестовом наборе для выявления подмножества неисправностей, обнаруживаемых полученным тестовым набором, и повторения этой процедуры до исчерпания списка неисправностей.
Исчерпывающий метод генерации заключается в подаче на входы проверяемого устройства всех возможных наборов.
Вероятностный метод генерации заключается в подаче на входы проверяемого устройства случайных тестовых наборов, формируемых с помощью датчика случайных чисел.
Генерация ВозЭвйствийГенерация ВозЭвйствийкнализ реакцийкнализ реакцийПолный эталонПолный эталонРис. 8 5 Методы тестированияРис. 8 5 Методы тестирования
Генерация ВозЭвйствий
Генерация ВозЭвйствий
кнализ реакций
кнализ реакций
Полный эталон
Полный эталон
Рис. 8 5 Методы тестирования
Рис. 8 5 Методы тестирования
Поскольку для хранения эталонных результатов требуются большие объемы памяти, при тестировании используются различные способы сжатия эталонных и фактических результатов.
Тестирование со сжатием результатов называется компактным. Соответственно различают компактное детерминированное, компактное исчерпывающее и компактное вероятностное тестирование.
8.2. ИСЧЕРПЫВАЮЩЕЕ И КОМПАКТНОЕ ТЕСТИРОВАНИЕ
Исчерпывающее тестирование и соответствующий способ генерации тестов заключается в том, что на входы схемы подаются все возможные воздействия. Это позволяет обойтись без моделей неисправностей
п входов и m выходов, то дляп входов и m выходов, то дляРис. 8.6. Схема детерминированного компактного тестирования с использованием функций счетаРис. 8.6. Схема детерминированного компактного тестирования с использованием функций счета
п входов и m выходов, то для
п входов и m выходов, то для
Рис. 8.6. Схема детерминированного компактного тестирования с использованием функций счета
Рис. 8.6. Схема детерминированного компактного тестирования с использованием функций счета
и не требует применения сложных методов вычисления тестов н моделирования неисправностей [9, 26].
Недостатком исчерпывающего тестирования является то, что при большом числе входов время на перебор становится слишком большим.
В некоторых случаях число наборов исчерпывающего тестирования
можно уменьшить. Если схема имеет каждого входа i можно определить МНОЖеСТВО ВХОДОВ {ulh Ul2, ..., Щ/н}, от которых может зависеть значение этого выхода. Поскольку в большинстве случаев тах/г,<л, то число наборов для исчерпывающего тестирования каждого выхода можно снизить.
При компактном тестировании результаты сжимаются и сравнив i- ются со сжатым эталоном. Основными способами сжатия являются функции счета, контрольные суммы, синдром, спектральные коэффициенты и сигнатурный анализ' [9].
Функции счета. Сжатие результатов с помощью функций счета рассмотрим на примере устройства, показанного на рис. 8.6. На одновыходное тестируемое дискретное устройство ДУ подается последовательность тестовых наборов Т. Сдвиговый m-разрядный регистр хранит m последних результатов Rt=V«, ri+i> ,.., Ti+m-i} [26]. Величина m>0 задает число последовательных результатов, подвергаемых анализу с целью определения наличия и числа
представляющих интерес призна
ков сигналов в подпоследовательности Нг последовательности результатов R. Анализ осуществляет схема формирования результата, на выходы которой параллельно поступает последовательность результатов r<, г1+ь..., г,+т-ь а на выходах формируется текущее значение Ст(Р-.) соответствующей функции счета. Сумматор вычисляет текущее суммарное значение Sm(Ri) функции счета путем арифметического сложения Cm(Ri) с хранящимся в регистре накопления результатов предыдущим суммарным значением Sm^Rt-i) функции счета. Окончательное значе-
1 Сигнатурный анализ изложен в гл. 9.
ние Sm(R) = 2 ^m(Ri) функции счета сравнивается в блоке сравие- ния с эталонным значением 5т(/?)Эт этой функции.
Функция счета характеризуется глубиной памяти m (числом разрядов Л) и видом признаков результатов. Наиболее просто реализуется тестирование на основе функций счета, имеющих глубину памяти О нлн 1. Такими функциями являются: для т=0:
функция счета единичных значений результатов
Si(/?) = 2rf(8.1)
функция счета числа переходов изменений значений результатов из 0 в 1 и из 1 в О
S?№=2 (г^фг.),(8.2)
1=2
где ф—сложение по модулю два; для m = 1:
функция счета числа повторений значений результатов
( г^фгф(8.3)
г=2
функция счета числа фронтов (изменений из 0 в 1)
S?(/?)=^ ф;(8.4)
г=2
функция счета числа срезов (изменений из 1 в 0)
51№) = 2^-1^-(8.5)
1=2
Эффективность компактного тестирования с помощью функций счета зависит как от выбора самой функции, так и от тестовой последовательности. Например, если множество тестовых наборов Т разделить на два подмножества (Р и 71) таких, что в первое входят все наборы, иа которых выход схемы принимает нулевое значение, а во второе — все наборы, на которых выход схемы принимает единичное значение:
Т°=ИЛ. ... , /0J; Г’={/},4^J,
то при чередовании наборов
' д — ы> Ч> '2» ‘2 ■• •
эталонное значение функции счета числа переходов максимально:
S^(R) = 2a,
где a=min {n0, Hi}. И наоборот, при подаче последовательности наборов Тв—t^, г®, •••• ^ , 7} > 4> ■■•> ^щ эталонное значение функции S^(/?) минимально н равно 1.
Для компактного тестирования многовыходных ДУ каждому получаемому на выходе ДУ двоичному набору и, ставится в соответствие его двоичный вес at. В качестве функций счета применяются функции
m
S>) = 2 Р^1_х<а1У,
(8-6)
i=i
пт
(8.7)
пт
s\QW=^p^._^aiy
(8.8)
i=1
где V — последовательность выходных наборов vo, vi,...,vm; Р—предикат сравнения весов соседних наборов, принимающий значение 1, если результат сравнения совпадает с заданным предикатом, н значение О в противном случае.
Контрольные суммы. При использовании контрольных сумм совокупность результатов тестирования рассматривается как массив чисел, над которым выполняется операция поразрядного или арифметического суммирования [9].
Пусть задано упорядоченное множество нз п m-разрядных чисел {иД, где :=1, 2,..., п; иг = ии, иц, -,игт соответствующее выходной последовательности ДУ. Используются следующие способы суммирования:
поразрядное суммирование по модулю 2:
К2(«п «2, ... , un) = v11 v2, ... vm; ^ = © иц\ (8.9)
арифметическое суммирование по различным модулям:
^(«Г “2Mn) = (Ml + M2 + ••• + “n)modAl- (8-Ю) причем Л1 = п(2"1—1)—полная арифметическая сумма; A4=2"* — арифметическая сумма без учета переноса из старшего разряда; Л1=2"1—1—* арифметическая сумма с циклическим переносом в младший разряд. Синдром. Синдромом булевой функции называется число S=K!2n, где К — число мнитермов функции; п — число входов проверяемой схемы [90].
Синдром используется для тестирования комбинационных схем и требует полного перебора на входах схемы.
Схема называется синдромно-тестируемой, если любая одиночная неисправность меняет синдром.
На рис. 8.7 приведены синдромы простых n-входовых комбинационных схем.
Рис. 8 8. Синдромы сложных функцийРис. 8 8. Синдромы сложных функцийРис. 8.9. Схема к примеру 1Рис. 8.9. Схема к примеру 1
Рис. 8 8. Синдромы сложных функций
Рис. 8 8. Синдромы сложных функций
Рис. 8.9. Схема к примеру 1
Рис. 8.9. Схема к примеру 1
Рис. 8 7. Синдромы простых /г-входовых функций
При неразветвленных входах соотношение между входными и выходными синдромами схемы, на выходе которой стоит инвертор, схема ИЛИ, схема И или схема сложения по модулю 2, показано на рис. 8.8.
Пример 1. Дана схема (рис. 8.9). Вычислить синдром булевой функции, реализуемой схемой:
Sx = 1 — 2-2 = 3/4; Sa = 1 - 2-? = 3/4; $3 = 2-з=1/8;
s« = 1 - ($2 + s3 - S2 S3) = 7/32;
S = $!$< = 21/128; ^ = 21.
Тестовая процедура заключается в подаче на вход схемы всех
входных наборов, определении синдрома (обычно с помощью счетчика) и сравнении его с эталонным синдромом (т. е. требуется всего один эталон).
Устройство для тестирования комбинационных схем приведено па рис. 8.10.
На проверяемую схему подаются от счетчика все входные наборы. Выход проверяемой схемы соединен со входом счетчика синдрома, ко-
Ошибка V
Рис. 8.10. Схема синдромного тестирования комбинационных схем
торый подсчитывает число единиц на выходе проверяемой схемы. После перебора всех выходных наборов производится сравнение полученного и эталонного синдромов.
Заметим, что единственным различием между синдромом и числом единиц является неявная запятая в регистре (счетчике) синдрома. Если она считается стоящей слева от числа, находящегося в регистре синдрома, то число является синдромом, если справа — то числом единч ь
Для уменьшения длины тестов, равной 2", комбинационная схема разбивается на подсхемы, спроектированные таким образом, что каждая из них проверяется по своему синдрому.
Для реализации синдромного тестирования комбинационные схемы должны проектироваться таким образом, чтобы синдром исправной схемы отличался от неисправной.
Синдромное тестирование используется при исчерпывающем компактном тестировании.
Спектральные коэффициенты. Сжатие информации с помощью спектральных коэффициентов используется при исчерпывающем компактном тестировании комбинационных схем.
Рассмотрим спектральные коэффициенты функции, реализуемой одновыходной комбинационной схемой. Пусть на вход схемы поступает набор хь х2,..., х„.
Обозначим через н, i?,.... It номера тех разрядов входного набора функции F(xb хг,..., хпу зависимость F от которых определяется [9]. Функциями Уолша Wt называются функции, принимающие значения ±1 в соответствии с формулой
,/*)== П^М’ (8.11)
где РцСх) —функция Радемахера:
Rij(x) = (—if^.(8.12)
Всего имеется 2Л функций Уолша. Например для функции f (хь х2> Хз) имеется восемь функций Уолша: Wo, wb w2, wI2, w2, wt3, w23, Wi».
Спектральным коэффициентом или коэффициентом Уолша называется функция
2m—1
5(4Ч> = 2 FW^i.i ь №.(8-13)
х=Э1 21
показывающая меру зависимости значения функции от суммы по модулю 2 разрядов xtt Хц входного набора; S(i,j— зависимость от
1,-го разряда.
Коэффициенты Уолша можно вычислить также по следующей формуле [83]:
S = TnF,(8.14)
где Тп есть 2лХ2л-трансформационная матрица, определяемая следующим образом:
Т„= I^,(8.15)
■п-1 — ^п—1
а Го=[1], Строки матрицы Тп представляют собой значения функций Уолша.
Пример 2. Задана функция [(хь Х2, х3) =XiX3+xiX2x3. Найти коэф
фициенты Уолша этой функции.
Выпишем сначала значения функции на всех входных наборах:
По1 о1 1 о о оПо1 о1 1 о о оХдх2Х3
По
1 о
1 1 о о о
По
1 о
1 1 о о о
ООО
О01
О1О
О11
ОО
01
1о
11
Рис. 8.11 Схема тестирования со сжатием результатов с помощью спектральных коэффициентов
Двоичный код индекса при коэффициенте Уолша указывает переменную, связанную с этим коэффициентом. 5о есть не что иное, как число одиночных значений функции. Коэффициент St — мера корреляции между функцией и переменной xt. Равенство 51 = 2"-* (—2"-1) свидетельствует о равенстве f=*1(x)) Коэффициент 5з— мера корреляции между функцией и суммой по модулю 2 переменных х^фхз, Si— между f и Х1©Х2фх3.
На рис. 8.11 показана схема тестирования со сжатием результатов # помощью спектральных коэффициентов. Генератор функций Уолша, показанный на этом рисунке, управляет выбором проверяемого спект- ^льного коэффициента. Накопитель коэффициента представляет собой простой реверсивный счетчик. Схема генератора для функций от четырех переменных приведена на рис. 8.12. С( предназначено Для выбора генерируемой функции Уолша.
Генератор для коэффициентов so, Sisn тривиален. Для 5» требуется, чтобы все константы ct были равны нулю, а для Si, s2,.... s„ требуется простой мультиплексор.
Для подсчета каждого коэффициента требуется полный прогон тестовых наборов.
Распространена и другая интерпретация спектральных коэффициентов, при которой логическому 0(1) ставится в соответствие число •—1( + 1). Каждый спектральный коэффициент вычисляется умножением
Рис. 8.12. Генератор функций Уолша для функции четырех переменныхРис. 8.12. Генератор функций Уолша для функции четырех переменных
Рис. 8.12. Генератор функций Уолша для функции четырех переменных
Рис. 8.12. Генератор функций Уолша для функции четырех переменных
значения функции (+1 или —1) на соответствующее значение ( + 1 или ■—1) функций Уолша и суммированием произведений по двум наборам входных переменных. При этом значение каждого коэффициента лежит в пределах от —2П до + 2".
ВЕРОЯТНОСТНОЕ ТЕСТИРОВАНИЕ
Вероятностное тестирование характеризуется тем, что на входы проверяемого устройства подаются случайные или псевдослучайные последовательности.
Одна из возможных схем вероятностного некомпактного тестирования приведена на рис. 8.13. Случайные последовательности подаются на входы проверяемого и эталонного устройств, а выходы обоих устройств сравниваются между собой.
При вероятностном компактном тестировании на входы проверяемого устройства подаются случайные тестовые наборы, а результаты тестирования сжимаются одним из способов, приведенных в § 8.2, и сравниваются с эталонным сжатым результатом (рис. 8.14).
Вероятностное компактное тестирование (ВКТ) выполняется за два или три шага в зависимости от проверяемой схемы — комбинационной или с памятью. На первом шаге для схем с памятью, носяшем название инициализации, на них подается длинная последовательность случайных наборов, цель которой — установка схем в исходное состояние.
Следующие два шага аналогичны для комбинационных схем и схем с памятью: накопление результата и сравнение с сжатым эталоном.
Сжатый результат даже в случае неисправности проверяемой схемы может не дать точного совпадения с эталоном, а быть лишь достаточно близким к нему. Причиной этого является неодинаковое начальное состояние тестируемых схем с памятью или генераторов случайных наборов.
Поэтому при ВКТ проверяемая схема считается исправной, если результат отличается от эталона иа величину, ие превышающую в и называемую допустимым отклонением.
Разработка схемы ВКТ устройства состоит из следующих шагов:
выбор способа сжатия результата;
выбор вероятностей 0 и 1 на входах устройства;
выч);сл°чие среднестатистического эталона;
Рис. 8.13. Схема вероятностного некомпактного тестирования
Рис. 8.14. Схема вероятностного компактного тестирования
определение длины теста;
вычисление допустимого отклонения результата от среднестатистического эталона;
вычисление вероятности получения правильного результата тес- тироваиия.
Способы сжатия результата приведены в § 8.2. Одним из наиболее распространенных является функция счета числа единиц. В этом случае для комбинационной схемы в качестве среднестатистического эталона используется вероятность единичного сигнала на выходе схемы. Эта вероятность зависит от вероятностей единичных сигналов на входах схемы и определяется параметрами генератора случайных наборов (ГСН). В общем случае каждый выход ГСН может иметь разную вероятность появления 1, т. е. ГСН характеризуется вектором X = {х,, Хг. —. xnY где xi — вероятность появления 1 на т-м выходе генератора или 1-м входе устройства.
Выбор вероятностей появления 0 и 1 на выходе ГСН имеет существенное значение, так как имеются неисправности, которые при равновероятных 0 и 1 дают тот же результат, что и исправная схема, а при изменении вероятностей появления 0 и 1—другой, что позволяет выявить неисправность.
Таблица 8.1
Функция
Вероятностное выражение
Примечание
л л ЛВ XiX2X3.. ,хл
Л+В
а
1—а ab
XjXg...хп
a^-b—ab
Л и В независимы Все Xi независимы А и В независимы
V хг 1—1
1- п (i-xa
Все Xi независимы
А+В
a-Vb
Л и В зависимы
2 xt
Z=1
хгХ]=0, V t^j
Вероятность появления единичного сигнала на выходе комбинационной схемы может быть вычислена аналитически на основании известных зависимостей, приведенных в табл. 8.1 (малыми буквами обозначены вероятности появления единичных сигналов на входе вентиля).
ДЕТЕРМИНИРОВАННЫЕ МЕТОДЫ ГЕНЕРАЦИИ ТЕСТОВ ДЛЯ ЛОГИЧЕСКИХ СХЕМ, ОПИСАННЫХ НА ВЕНТИЛЬНОМ УРОВНЕ
Из всего многообразия методов детерминированной генерации теста рассмотрим основные: метод таблиц истинности; D-алгоритм; метод булевой производной; метод ЭНФ.
Процесс вычисления тестов в общем случае состоит из следующих этапов:
определение списка неисправностей;
вычисление тестового набора для очередной неисправности из списка;
моделирование схемы на тестовом наборе для выявления подмножества обнаруживаемых неисправностей;
определение полноты проверки схемы.
В связи с тем, что в большинстве методов используется понятие чувствительного пути, дадим его определение.
Путь распространения ошибочного сигнала от места его возникновения до выхода схемы из-за неисправности называется чувствительным Рассмотрим в качестве примера схему, показанную на рис. 8.15, а, и предположим, что описывается тест для неисправности К1 в линии е. Для проявления ошибки из-за неисправности, очевидно, необходимо подать 0 в линию е. Поскольку линия е является выходом схемы ИЛИ, необходимо подать на входы b и с нули. Далее ошибку нужно провести через все вентили на выход схемы, где может быть опрошено состояние и сделан вывод о неисправности.
Рис 8.15. Пример к понятию чувствительного пути:
а — схема: б — чувствительный путь существует; в — чувствительный путь не существует
Для проведения сигнала через схему И^ необходимо подать на вход а единицу, а для проведения его через схему ИЛИ на ее втором входе необходимо обеспечить нуль, для чего достаточно подать на вход d схемы нуль.
На рис. 8.15,6 показан чувствительный путь неисправности К1 в линии е.
Если попытаться найти чувствительный путь для неисправности К! в линии g, то можно убедиться в том (как показано на рис. 8.15, в), что такого пути не существует. В данном конкретном случае это является следствием избыточности в схеме. Такие случаи затрудняют тестирование схемы и могут привести к накоплению неисправностей.
Эквивалентные неисправности. Определение списка неисправностей. Общее число одиночных константных неисправностей в схеме, для которой вычисляются гесты, зависит от числа связей и равно 2/1, где п — число связей Однако список рассматриваемых неисправностей может быть значительно сокращен при учете эквивалентных неисправностей. Эквивалентными называются неисправности, которые дают одни и те же результаты на выходе схемы, т. е. неразличимые между собой неисправности.
Предварительное выделение классов эквивалентных неисправностей может существенно сократить число рассматриваемых неисправностей и снизить трудоемкость вычисления тестов и их моделирования.
Обозначим эквивалентность неисправностей двунаправленной стрелкой и выпишем эквивалентные неисправности для основных типов вентилей (для двухвходовых вентилей а и b — входы, с — выход; для вент иля НЕ а — вход, b — выход):
И’с/0**а/0,Ь/0;
ИЛИ:с/\*-»а/\,6/1;
НЕ:а/\<-*Ь/0;аЮ^Ь1\\
И—НЕ:с/1<->а/0,6/0;
ИЛИ—НЕ: с/0<е>а/1,6/1.
Рассмотрим формирование классов эквивалентных неисправностей на примере схемы, приведенной на рис. 8.16. Полный список одиночных константных неисправностей схемы включает в себя 18 неисправностей: о/0, а/1, 6/0, 6/1, с/0, с/1, 6/0, 6/1, е№, е/l, f/О, Ц\, g/0, g/1, /i/О, Л/1, i/0, i/l. Выпишем эквивалентные неисправности для всех вентилей: alO^dlO, glO; с/0^.//0, /i/О; //О-н-е/1; e/O^f/1; //1^6/1, g/L
С учетом этого получим окончательный список неисправностей, состоящий из 10 классов (рис. 8.15,6).
Список рассматриваемых неисправностей может быть еще больше сокращен при учете известной теоремы [63] для одно- и многовыходных комбинационных схем,
Для одновыходной схемы:
Множество тестовых наборов, обнаруживающих неисправности всех входов и сходящихся разветвлений, обнаруживает все одиночные константные неисправности схемы (пример сходящегося разветвления показан на рис. 8.15, о).
Для многовыходной схемы:
Множество тестовых наборов, обнаруживающих неисправности всех входов и разветвлений схемы (как сходящихся, так и несходящихся), обнаруживает все одиночные константные неисправности схем.
С учетом приведенной теоремы число рассматриваемых неисправностей для схемы (рис. 8.15, а) может быть ограничено первыми восьмью классами.
Метод таблиц истинности. В методе таблиц истинности этап вычисления тестов отсутствует, так как тестовые наборы представляют собой множество 2" входных наборов схемы, где п—число входов. После определения классов неисправностей выполняется моделирование, т. е. определение неисправностей, обнаруживаемых каждым тестовым набором. Затем находится минимальное покрытие таблицы — результата моделирования и, таким образом, минимальный тест схемы. Поясним сказанное примером вычисления для схемы, показанной на рис. 8.16, а. Моделирование неисправностей на входных наборах То—7? дает результат, показанный на рис. 8.16, г в виде таблицы функций различения (ТФР).
Покрытие ТФР обеспечивают наборы 7Ь 73, 74 и 76, образующие полный тест схемы.
Недостатком этого метода является то, что с возрастанием числа входов он становится неприменимым из-за большого числа входных наборов.
D-алгоритм. При вычислении по этому методу теста для конкретной неисправности предполагается, что сигнал в линии может принять пару значений: нормальное — при отсутствии неисправности и ошибочное— при ее наличии. Эти пары значений 0/0, 1/0, 0/1 и 1/1 обозначаются 0, D, D, 1, т. е. символы D, D означают, что в присутствии неисправности значение сигнала изменяется.
Идея метода заключается в том, что при вычислении теста для неисправности типа КО (К1) для заданной линии ей присваивается значение D(D) и делается попытка протолкнуть символ D(D) на выход схемы.
Вычисление теста основано иа создании условий проявления неисправности (D или D) и создании чувствительного пути от места проявления неисправности до выхода схемы. D-алгоритм гарантирует вычисление теста, если он существует.
D-алгоритм состоит из двух этапов; D-проталкивание И D-спуск.
Рис 8 16. Пример схемы к определению эквивалентности неисправностей: а — пример схемы, б — классы эквивалентных неисправностей; в — таблица истинности: г — таблица функций различения
Первый этап заключается в обеспечении условий прохождения символа D(D) на выход схемы, а второй — в доопределении значений входов вентилей по их выходам. В О-алгоритме каждому типу вентиля соответствуют D-кубы распространения и тест-кубы неисправности (рис. 8.17).
О-кубы распространения показывают условия распространения чувствительного пути от входа схемы до ее выхода. Тест-кубы неисправности — условия проявления неисправности.
В качестве примера рассмотрим вычисление теста для неисправности А/0 схемы, показанной на рис. 8.18.
Последовательность формирования чувствительного пути и вычисления теста приведена в табл. 8.2.
Исходным состоянием схемы является неопределенное состояние всех линий, обозначаемое символом х. В начале таблицы приведены D-кубы распространения для всех элементов схемы. На первом и вто-
Таблица 82
Сигналы н<
Л ИН ИЯХ
схемы
а
ь
с
е
f
h
1
к
1
а
венп ’ ля/ шага
Примечание
X
1
D
X
X
X
X
D
X
X
X
X
X
О-к>бы распро-
X
X
D
1
1 D
X
X
X
X
X
X
X
X
D
D
К
X
X
X
X
X
X
X
X
X
1/
страпения для вентилей схемы
X
D
1
X
X
X
X
D
X
X
X
X
X
X
X
X
0
X
D
D
D
X
X
X
X
X
X
X
X
D
X
D
D
0
X
X
X
X
X
2/
X
X
X
0
X
D
D
D
X
X
V
X
X
X
X
X
D
X
D
D
0
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
D
D
D
В
X
X
D
D
X
\
X
X
X
X
X
V
3/
0
X
X
X
X
D
D
X
X
X
D
X
X
D
0
X
X
V
X
X
X
X
X
0
D
0
D
X
X
X
X
X
X
D
D
X
X
X
X
4/
D
X
X
X
X
0
0
X
X
X
D
X
X
X
X
X
X
0
X
X
X
D
D
X
X
D
X
X
X
X
D
X
X
X
0
D
X
X
D
5/
X
X
X
X
0
X
X
X
D
D
X
X
D
X
X
X
X
D
X
X
X
0
D
X
X
D
X
X
X
X
X
X
X
X
X
1
D
D
X
X
X
X
X
X
X
X
X
X
D
1 D
D
X
6/
X
X
X
X
X
X
X
X
X
1
D
X
X
X
X
X
X
X
X
X
X
В
1
D
X
1
1
1
X
X
X
X
D
X
X
X
К
X
Тест-куб неисправности
1
1
1
0
X
D
D
D
X
\
Л
X
X
/1
Проталкивание
D через эле-
мент 2
1
1
1
0
X
D
D
D
D
X
г
X
X
/2
Проталкивание
D через элемент 3
Продолжение
Сигнал н<
линтях t хемы
Номер вентиля/ шага
Примечание
а
ь
с
е
/
6
a
/
к
1
UU
0
1
1
0
X
D
О
D
D
X
D
X
X
/3
Попытка проталкивания О через элемент 4 Результат — пустой тест-куб
1
1
1
0
0
D
D
D
D
D
X
X
D
4
Проталкивание D через элемент 5. Все сигналы допустимы.
Тест вычислен
»—ITL- я~1*1-с яЧП—с Н^
U 5-Lj 5Ц_Г e-Lj 6
S-кубы распространенияS-кубы распространенияаbсаЬ са Ъ саЬ с
S-кубы распространения
S-кубы распространения
DIDD 1 ВDOBD О В
111111 ODDО В В
111В 1 DDOBDOD
В В1 В ВODDODD
Тест-кубы неисправностейс/0с[1с/0с[1
11В1 1 В ODD О О В
Рис. 8 17 D-кубы распространения и тест-кубы неисправности
ром шаге символ D проталкивается через элементы 2 и 3 Для этого выполняется пересечение тесг-куба с D-кубом распространения Эта
процедура выполняется в соответствии со следующими правилами
где а, И Р, = О, I,где а, И Р, = О, I,пусть а=аь аг, .., а„ и Р=р,, р2Рп есть О-кубы,
где а, И Р, = О, I,
где а, И Р, = О, I,
х, D, 15 для I, /=1, 2, . , п Тогда О-пе- ресечение задается следующими правилами
хПа,=а>(
если а^Нх и р.=#х, то
, если В, = а
а, ПВ/ = {„
[ 0 , если рг * а,.
Рис 8 18. Пример использования О-алгорнтмаРис 8 18. Пример использования О-алгорнтмаНаконец, аПр = 0 (пустой куб), если для какого-нибудь i, а,, Пр, = = 0 В противном случае аПр = ^aiOPi, а„Пр„.
Рис 8 18. Пример использования О-алгорнтма
Рис 8 18. Пример использования О-алгорнтма
Например:
OlxDx П OxlDD = 011DD;
OlxDx П OxlDD = 0 .
Продолжим проталкивание символа D на выход схемы, пользуясь приведенными выше правилами. На третьем шаге делается попытка проталкивания через элемент 4. Однако пересечение тест-куба с D-кубом распространения элемент 4 дает 0, т. е. пустой куб. Поэтому делается попытка распространения D на выход через элемент 5, которая завершается успешно. И поскольку все линии схемы получили детерминированные значения, этап D-спуска отсутствует.
Таким образом, тестовым набором, обнаруживающим неисправность h(0, является набор 1100 с обнаружением неисправности на выходе 2. Достоинством D-алгоритма является тот факт, что D-цепочка несет в себе информацию о других неисправностях, обнаруживаемых каждым набором без дополнительного моделирования. Так, тест-иабор 1100 обнаруживает неисправности //0, g/О, Л/0, г/1, //1, ш/1. Суммируя сказанное выше, можно обобщить, что стандартная процедура D-алгоритма состоит из следующих шагов:
составление списка неисправностей с учетом правил 1, 2 и эквивалентности неисправностей;
выполнение D-алгоритма для неисправностей входов схемы.
После нахождения D-цепочки отмечаются все обнаруживаемые ею неисправности. После вычисления тестовых наборов для входов вычисляются тестовые наборы для оставшихся в списке неисправностей;
склеивание тестовых наборов. Число тестовых наборов может быть уменьшено за счет их склеивания. Тестовые наборы ti и (2 склеиваются в /3, если:
tt и 6 идентичны, тогда <з=М
ни в одной из позиций ММ, содержащей 1(0), ММ не содержит 0(1). При этом если ММ содержит в какой-либо позиции х, то /з в этой позиции принимает соответствующее значение ММ-
В остальных позициях (з=Ь- Список (3 будет отмечен как тестовый набор, обнаруживающий все неисправности, находящиеся в списках /) и /2.
Применение D-алгоритма для схем с триггерами. Схемы с триггерами могут функционировать как синхронные и асинхронные. Соответственно различают тесты для проверки синхронных и асинхронных схем. Тестирование синхронных схем требует сложной тестовой аппаратуры, позволяющей подавать на входы проверяемой схемы разнообразные синхросигналы. Кроме того, синхронные схемы всегда содержат асинхронные подсхемы. Например. R, S-входы триггеров, как правило, несинхронизированы. К тому же неисправность может превратить синхронную схему в асинхронную. С учетом этих факторов проверка схем
с триггерами как асинхронных получила наибольшее распространение. При вычислении тестов для схем с триггерами различают два этапа:
вычисление потенциального теста, обнаруживающего заданную неисправность;
проверка потенциального теста с помощью троичного моделирования с целью выявления возможных состязаний и неопределенности результата.
В схемах с триггерами можно выделить два типа обратных связей: внутренние и внешние.
При наличии в схеме 5 виешвих обратных связей она преобразуется путем разрыва обратных связей в итеративный эквивалент, содержащий р копий схемы ^(l), Л?(2),.... JV(p). Копия N^ моделирует поведение схемы S в момент времени ti. Линия т схемы в ее z-й копии обозначается т4 (рис. 8.19). Сами триггеры могут быть представлены
Рис. 8.19. Интеративный комбинационный эквивалент схемы с обратными связямиРис. 8.19. Интеративный комбинационный эквивалент схемы с обратными связями
Рис. 8.19. Интеративный комбинационный эквивалент схемы с обратными связями
Рис. 8.19. Интеративный комбинационный эквивалент схемы с обратными связями
двояко в виде: 1) комбинационного эквивалента; 2) макровентиля.
В первом случае триггер путем разрыва внутренних обратных связей также преобразуется в итеративную комбинационную схему, как показано на рис. 8.20, а во втором — он рассматривается в виде макровентиля с таблицей состояний и D-кубами распространения.
Точки разрыва обратных связей выбираются таким образом, что если в местах разрыва ввести задержки для получения схемы с обратными связями 5*, то ее поведение будет максимально близко к поведению исходной схемы S. В результате разрыва обратных связей обра-
Рис. 8.20. Представление PS-триггера:
а — схема на элементах ИЛИ—НЕ; 6 — итеративный комбинационный эквивалент триггера
зуются псевдовходы и псевдовыходы, соединяемые так, что SO(Z, 6) = = SZ(i'+l, й), где SO— псевдовыход, SI— псевдовход, I— номер копии (i=l, 2,.... р—1), к— номер псевдовхода и псевдовыхода (6=1, 2, ,„,s). Кроме того, вместо одной неисправности имеется по одной в каждой копии:
F = F^, ... , F(p).
К полученной итеративной комбинационной модели схемы S может быть применен D-алгоритм со следующими ограничениями:
псевдовходам могут присваиваться только неопределенные значения, т. е. х, и любая попытка присвоения им иного значения рассматривается как недопустимая;
неисправные линии могут принимать только значения, соответствующие состояниям неисправной линии. Например, если рассматривается неисправность //0 (константа 0 в линии /), то во всех копиях линия Z может принимать только значения 0 и D.
В результате выполнения операции D-проталкивания и D-спуска получается совокупность тестовых наборов T'=Ti, Т2Тр, обнаруживающих кратную неисправность F=F(V),.... F(p) итеративной комбинационной модели.
Потенциальный тест обнаружения неисправности Т получается из Т' после операции доопределения, заключающейся в подстановке вместо х конкретных значений в соответствии со следующими правилами:
если Тtj (где / — координата тестового набора Т^ равна х для некоторого к Тк1^=х, то Тц принимает значение того Г*;, при котором к—i минимально;
если для всех 6=1, 2,..., р Tki=x, то все Тк, устанавливаются в состояние, обеспечивающее блокировку вентиля, соединенного с входом / схемы.
Доопределение имеет целью повышение вероятности того, что потенциальный тест действительно окажется тестом неисправности реальной схемы.
Рассмотрим в качестве примера применение алгоритма к схеме, приведенной на рис. 8.20, а.
Итеративная комбинационная модель триггера, полученная разрывом обратной связи, показана на рис. 8.20, б. Найдем тест для неисправности 4/0 (константа 0 в линии 4). Тест-кубом неисправности 4/0 является 00D (значения в линиях Зи 22 и 4г соответственно). А поскольку состояние линий Z2 и 32 безразлично, получим тестовый набор для второй копии Г2=х0 (в линиях Z2 н 22). Выполняя D-спуск по значению линии 31, равному 0, получим значения входов в первой копии. Значения линий 1\ и 41 выбираем 1х (а не xl) в соответствии с ограничением 2. Из этого следует, что значения в линии 2i и псевдовходе S/ также равны х, что удовлетворяет ограничению 1,
Таким образом, получили два тестовых набора, образующих тест неисправности 4/0: Ti=lx, Г2=х0.
Выполняя доопределение в соответствии с приведенными выше правилами, получаем окончательный тест Г=10.
При макровентильном представлении триггер описывается таблицей состояний и D-кубами распространения (рис. 8.21, а). Как видно из рис. 8.21, некоторые D-кубы распространения содержат установочный
SRQQ1 100X001000110011X0X0X1000100110X1X0SRQQ1 100X001000110011X0X0X1000100110X1X0SR<2Q1D0DX0010DDDX0010DDD00DDD1D00X10D0DD0X10D0DD00DDDDьD1001DD0D0110D0О0SR<2Q1D0DX0010DDDX0010DDD00DDD1D00X10D0DD0X10D0DD00DDDDьD1001DD0D0110D0О0
S
R
Q
Q
1 1
0
0
X
0
0
1
0
0
0
1
10
01
1
X
0
X
0
X
1
0
0
0
1
0
01
10
X
1
X
0
S
R
Q
Q
1 1
0
0
X
0
0
1
0
0
0
1
10
01
1
X
0
X
0
X
1
0
0
0
1
0
01
10
X
1
X
0
S
R
<2
Q
1
D
0
D
X
0
0
1
0
D
D
D
X
0
0
1
0
D
D
D
0
0
D
D
D1
D
0
0
X
1
0
D
0
D
D
0
X
1
0
D
0
D
D
0
0
D
D
D
D
ь
D
1
0
0
1
D
D
0
D
0
1
1
0
D
0
О
0
S
R
<2
Q
1
D
0
D
X
0
0
1
0
D
D
D
X
0
0
1
0
D
D
D
0
0
D
D
D1
D
0
0
X
1
0
D
0
D
D
0
X
1
0
D
0
D
D
0
0
D
D
D
D
ь
D
1
0
0
1
D
D
0
D
0
1
1
0
D
0
О
0
Рис. 8.21. Таблица состояний и гераРис. 8.21. Таблица состояний и гераD-кубов распространения £5-триГ'D-кубов распространения £5-триГ'
Рис. 8.21. Таблица состояний и гера
Рис. 8.21. Таблица состояний и гера
D-кубов распространения £5-триГ'
D-кубов распространения £5-триГ'
набор, т. е. для распространения D на выход триггера требуется предварительная установка его в определенное состояние. В этих случаях этап D-спуска выполняется отдельно для установочных значений на входе и для значений, обеспечивающих распространение символа D на выход. В результате получаются два тестовых набора или более, образующих тест конкретной неисправности.
Кроме триггеров различных типов в виде макровентилей могут
быть представлены и другие функциональные блоки — сумматоры, сдви- гатели, дешифраторы и т. д.
Одноразрядный сумматор с выходами СУММА и ПЕРЕНОС можно представить в виде таблицы состояний:
СУММА
0
1
D
D
X
ПЕРЕНОС |
0
1
D
D
X
0
0
1
D
D
X
0
0
0
0
0
0
1
1
0
D
D
X
1
0
1
В
В
X
в
в
в
0
1
X
В
0
в
В
0
X
в
в
в
1
0
X
В
0
в
0
В
X
X
X
X
X
X
X
X
0
X
X
X
X
Комбинационный сдвигатель. Значение, принадлежащее множеству {0, 1, D, D, х}, перемещается в направлении сдвига на заданное число разрядов.
Дешифратор. Если значения сигналов на всех входах дешифратора известны и, по крайней мере, один из них равен D или D, то один из выходов дешифратора будет иметь значение D, а другой — D. Действительно, D (или В) на входе описывает два набора: один при отсутствии неисправности, другой при наличии. Обозначим через по число, получаемое при замене D на 1, D на 0, и п_ — число, получае- _D
мое при замене О на 1 и В иа 0. Тогда на выходе дешифратора с номером По будет значение В, на линии с номером п-—В и на остальных линиях 0.
Пример 3. На вход трехвходового дешифратора (рис. 8 22) поступает набор В1В (левый бит имеет наибольший вес). Определить выходы дешифратора, на которые распространяется В (В).
Рис. 8.22. Схема дешифратора к ппимеоу 3Рис. 8.22. Схема дешифратора к ппимеоу 3Для решения примера найдем nD и п-'. nD= 1102=6i0; п-=0112=Зю. Следовательно, на выходе 6 дешифратора будет В, а на выходе 3 — В. Заметим, что при любой комбинации В (В) на входах только одни выход дешифратора будет иметь значение В и еще один В.
Рис. 8.22. Схема дешифратора к ппимеоу 3
Рис. 8.22. Схема дешифратора к ппимеоу 3
Метод булевой производной
Булевой производной функции f(x)=f(xb Xi,..., хп) по X; называется функция
df (х) (dxt = f (xj, х2. ... f хг', ... , .... хп)ф f(xj, x2,..., xz,..., xn ), где Ф — сумма по модулю 2.
муле:муле:Булева производная может быть вычислена и по следующей фор
муле:
муле:
df (x)/dxt — f (х1г хг, ..., Охп) ф
ф f(.xt, х2, ... , 1, ... , хп).(8.16)
Булева производная определяет значения логических переменных
Хь .... х„, кроме Xi, при которых изменение состояния х, приводит к из
менению значения функции f(x).
Рис. 8.23. Схема к примеру 4Рис. 8.23. Схема к примеру 4значения логических перемензначения логических переменТестом для неисправности Xi/0 (х,/1) является значение логических переменных, при которых x,df (х)/dx,= = 1 (x,df(x)/dx;=l).
Рис. 8.23. Схема к примеру 4
Рис. 8.23. Схема к примеру 4
значения логических перемен
значения логических перемен
Сказанное можно распространить и на внутренние переменные. Тестом для неисправностей г/0 (г/1) внутренней линии схемы являются
ных, при которых zd^x^ldz = l(zdf(x)/dz = 1).
Приведем несколько примеров вычисления тестов методом булевой производной.
Пример 4, Даиа схема (рис. 8.23), реализующая функцию f(x) = =Х1Х2+Хз. Найти тесты неисправностей Xi/0 и Xi/1, Пользуясь формулой (8.16), найдем булевую производную df(x)ldxr.
At (x)ldXi = (1 ■ Х2 + х3) ф (0-Х2 + Xg) = (х2 + Хд) ф Хд = (Хд + Хд) Х3 ++ (х2 Ха) Ха = Хд х3.
Тест для Xv)O определим из условия xidf(x)ldxv=l, т. е. xix2x3=l. Следовательно, Xi = 1, х2= 1, х3=0.
Тест для xi/1 определим из условия xtdf(x)(dxv = l, т. е. х1Х2Х3=1. Следовательно, Х;=0, х2=1, х3=0.
Пример 5. Дана схема (рис. 8.24), реализующая функцию f(x) = =xix2+x1x2. Найти тесты неисправностей х2/0, х2/1.
Пользуясь формулой (8.16), находим булевую производную df(x)(dx2:
df Wldx^ = (х,-1 + xt-0) ф (хг-0 + Xj-1) = 0.
Это означает, что f(x) не зависит от х2.
Рис, 8.24, Схема к примеру 5Рис, 8.24, Схема к примеру 5Рис, 8.25, Схема к примеру 6Рис, 8.25, Схема к примеру 6
Рис, 8.24, Схема к примеру 5
Рис, 8.24, Схема к примеру 5
Рис, 8.25, Схема к примеру 6
Рис, 8.25, Схема к примеру 6
Пример 6. Дана схема (рис. 8.25). Найти тест неисправности uJQ. Выразим f(x) через внутренние переменные схемы.
Их) = ^ + у6.
Пользуясь формулой (8.16), находим булевую производную df(x)/dys:
df (x)/dyt = iy8 + 0) ф (у5 + 1) = у„ ф 0 = у8 = хл + х4.
Тест для ув№ найдем из условия yed}(x)ldy6=l, т. е.
(Хз + Х4) (г, + Х^ = Х3 Х4 (X, + Х2) = X, Хз х4 + х2 х3 х4 = 1.
Следовательно, тестом является набор Xi=l, х3=0, х<=?0 или х$=1, х3=0, х4=0.
В тех случаях, когда в схеме имеются разветвления, для вычисления полного теста схемы необходимо найти булеву производную по пе-
Рис. 8 26. Схема, поясняющая булеву производную для заданного путиРис. 8 26. Схема, поясняющая булеву производную для заданного путиРис. 8.27. Схема к примеру 7Рис. 8.27. Схема к примеру 7
Рис. 8 26. Схема, поясняющая булеву производную для заданного пути
Рис. 8 26. Схема, поясняющая булеву производную для заданного пути
Рис. 8.27. Схема к примеру 7
Рис. 8.27. Схема к примеру 7
ременной, обозначающей разветвляющуюся линию, для всех разветвлений. В связи с этим введем понятие булевой производной по переменной х, для пути Рк. Пусть в схеме имеется путь Ре={х4, yb yi, ут, П от входа Xi к выходу f, проходящий через линии, обозначенные промежуточными переменными yi, yi, ут (рис. 8.26). Булевой производной функции Цх) по переменной xt для пути Рк назовем функцию
df W = dfdym dyt dy,
dxt dym dyidyj dxt '"
Пример 7. Рассмотрим схему (рис. 8.27), реализующую функцию )(х)=Х1Х2хэл-Х1Х2х3. Для вычисления тестов неисправностей линий / и 8 необходимо иайти булевы производные функции f(x) по Xi для путей Р, = {Хь ум у7, f} и P2={Xi, Ув, Уз, f}:
di кР,Шхл = (df/dy^dy^dy^dyi/dx^; f (x) = y7 + y8;
df/dy7 = y8 = у5 + у8 + ха = x2 r3 + r, xs + x3; y, = x2 y4 ya;
dy7/dy4 = x2y3 = x2 (x2 + x3) = x3 x3;
у4 = хх х2; dyjdxi = х2;
df (Pt) fdxx = (x? xg + X] x3 + x3)(x2 x8) xa = x2 x3.
Тесты неисправностей 1/0 (1/1) будут найдены из условий xxdf(Pi)l №х, = 1 (xxdf(Pt')fdxi=l').
Таким образом, тестом 1/0 является XiX2x3 или ПО, а тестом 1/1 — Х1Х2х3 или 010. Аналогично найдем тесты для 8/0 и 8/1:
df (J^fdXx = (dffdy)(dysldyi) (Дуе/dXi) = x2 xg.
Тестом 8/0 является XiX2x3 или 101, а тестом 8/1 — XiX2x3 или 001.
Применение метода булевой производной для схем с триггерами.
При вычислении тестов для схем с триггерами необходимо:
составить множество булевых функций, описывающих схему с триггерами;
выбрать одну из выходных функций zj (j=l, 2,...,т). Выбрать путь Pfe, начинающийся от входа х< (/=1, 2п) и заканчивающийся в Z[, в вычислить булеву производную Z; по переменной х< для этого пути dz^Pkffdxt;
если dz^P^jdxt содержит более одного терма, выбрать по возможности терм, удовлетворяющий условиям xtdZi(Pk)/dXi^0 и xldzl(P6)fdx4=#0;
проанализировать терм, выбранный иа предыдущем шаге. Если он содержит одну переменную обратной связи или более, требующих предварительной установки состояния, найти соответствующий установочный набор;
если терм не содержит переменных обратной связи, установочного набора не требуется и тесты вычисляются из условия равенства единице результата логического умножения х4 и х4 на выбранный на шаге 3 терм;
обозначить установочный набор, требуемый для тестирования х,(х,) через HsX (/Л2) Тогда два упорядоченных множества тестов для входной переменной х< запишутся следующим образом:
Г(х,/0)—Н$х; тест, найденный на шаге 5 из условия xldzj(Pk)fdx4 — = 1;
Г(х</1)—Hs2; тест, найденный на шаге 5 нз условия Xtdz^P^f fdx, = \.
Пример 8. Рассмотрим схему триггера, показанную на рис. 8.28. Выпишем значения булевых функций F и Е\
P = x1x2 + x1x2f + x2f;(8-lS)
F = x1x2 + x1f + xJ,(8.19)
где / — переменная обратной связи. В установившемся режиме f=F.
Выберем путь P| = {xb ух, Р) и найдем булеву производную dF(Px)ldxx для этого пути:
Рис. 8.28. Схема к примеру 8Рис. 8.28. Схема к примеру 8dF (Px)/dxx = (dF/dy^ (,dyx!dxxy, F = yx yy,dFidyx = 1 ® y3 = уз,
Рис. 8.28. Схема к примеру 8
Рис. 8.28. Схема к примеру 8
Уз = Уг1 = Уз-Н;
У» = Ух х2, Уз " Ух хз‘.
Уз = Ух хг + Л Ух = хххз = хх + х2;
Уз = ^i + хг) *» + 7 = ххх» +7;
dF/dyx = х, Х3 + 7;
dyx /dxx = 1 ® х2 = хг.
Подставляя полученные значения, находим:
dF [Px)ldxx = (х, х2 + 77 х2 = хх Ч + хзТ-(8.20)
Выражение (8.20) определяет две пары тестовых наборов: xtx2Xi, XiX2Xi и x5fxi, xifxx.
Поскольку один из тестовых наборов первой пары равен xix2xi = =0, а второй обеспечивает тестирование только неисправности xi/1, необходимо выбрать вторую пару тестовых наборов. Условие x2f=l предполагает, что до выполнения места необходимо установить f= I. Установочный набор для 7=1 определяется из уравнения (8.19). Из трех возможных термов (xix2, xxf и xj) выберем в качестве установочного Xix2, так как это единственный набор, не зависящий от предыдущего состояния. При окончательном формировании тестов необходимо учитывать возможность состязаний, во избежание которых следует допускать изменение лишь одной переменной в соседних наборах.
С учетом сказанного выше тесты неисправностей Xi/0, Xi/1 и других неисправностей пути Pi содержат по два набора:
Тх-Тх-Xj х2 или G1;
Тх-
Тх-
хх х2 или 01;
J1) хх х^ или 01;
1 2 — )
) хх х2 или 11.
Аналогичным способом определяются тесты неисправностей для остальных путей схемы: P2=(xi, ух, уг, Уз, F}, Рз={х2, Ух, П, Р4=(х2, ух. Уз, Уз, f}, Ps=Vx2, Уз> Уз, FY
Для получения окончательного множества тестов выполняется троичное моделирование схемы на каждой паре соседних наборов и доопределение списка неисправностей, обнаруживаемых каждым тестом.
Метод эквивалентной нормальной формы
Этот метод основан на представлении булевой функции в виде эквивалентной нормальной формы (ЭНФ), описывающей конкретную реализацию схемы. Поскольку ЭНФ представляет собой сумму логических произведений, она соответствует гипотетической схеме нескольких И—> ИЛИ. Каждой схеме И соответствует один терм ЭНФ. Из такого представления ЭНФ становится очевидным, что для выявления неисправностей, связанных с переменной х», входящей в какой-либо терм ЭНФ, необходимо выполнение следующих условий:
равенство нулю всех термов, кроме содержащего переменную х,;
равенство единице всех переменных терма, в который входит тестируемая переменная Xj.
Выполнение этих условий обеспечивает тождественное равенство f^x, и, как следствие этого, выявление неисправностей, связанных с этой переменной, так как неисправность переменной приведет к изменению сигнала на выходе схемы.
Эквивалентная нормальная форма, как и обычная нормальная, вычисляется методом подстановки, с той лишь разницей, что избыточные термы не исключаются, так как они характеризуют конкретную реализацию схемы.
При построении тестов важно не только обеспечить проверку входных переменных, но и всех путей, т. е. необходимо обеспечить проверку одной и той же переменной в разных термах, которым соответствуют разные пути в схеме.
Пример 9. Дана схема (см. рис. 8,18). Найти тесты неисправностей о/0, а/1, 6/0 и 6/1 методом ЭНФ.
Найдем булевы функции fi и /2, реализуемые на выходе схемы / и 2, и представим их в виде ЭНФ. Для этого выпишем значения всех промежуточных переменных:
f1 = I = к -\- j; k = aj; k — a+ f; j = i+e;
1—ie; i = g; t = g; g = f=h+d; g=hd=h h = bc;
h = b-\-c, f2 — w = / — i -|- e.
Выполним все подстановки, вынося замещаемые переменные в скобки и сохраняя их в выражении:
/1 — 1б] (a -f- f) -}-[/] i в = [б] tz -f- [б/ ] (6 + d) +
4-1/7 Ige = KJ а + [б/ ] h + Ikf J d + [/ igl he + [/ ig] de = Ша +
+ Rf/il be + 1б/ 1 d + I/ i ghl bee 4- I/<gl de;
/2 = < 4- e = [i] g 4" e = b' J A d 4- e == ti g/il (б 4- c) d 4-
+ e = li g hl b d + Ugftl c d + e.
Как видно из выражений ЭНФ булевых функций fi и f2 полностью соответствуют конкретной реализации схемы и каждому терму соответствует путь распространения сигнала от входа схемы к ее выходу.
Найдем тест для иеисправностей а/0 и а/1. Из выражения fi еле- дует, что для этого необходимо обеспечить равенство нулю все? термов, кроме [А] а, т. е. с=0, d=0. Таким образом, тестом неисправ- иости а/0 будет набор а=1, с=0, d=0, е=х, тестом неисправности а/1 — набор а=0, с=0, d=0, е=х.
Теста неисправности 6/0 по пути kfh или jigh не существует, так как для него требуется 6=1, а следовательно, и а=1, в результате чего не все термы (кроме содержащего тестируемую Цеременную) устанавливаются в 0.
Тест неисправности 6/0 может быть найден из выражения f2 по пути igh. Этим тестом будет набор 6=1, d=l, с=0, е=0, т. е. 6=1, d=0, с= 1, е=0. Тестом неисправности 6/1 по этому же пути будет набор 6=0, d = 0, с=1, е=0.
Применение троичного моделирования
При подаче тестовых наборов на входы схемы, содержащей триггеры, в ней могут возникать кратковременные импульсные сигналы, изменяющие состояние схемы непредусмотренным образом из-за «состязаний» («гонок») сигналов. Для выявления состязаний, а следовательно, и непредсказуемости результатов тестирования применяют троичное моделирование. Троичным называют моделирование с использованием трехзначной логики (0, 1/2, 1), где 1/2 либо означает изменение сигнала с 0 на 1 либо, наоборот, может трактоваться как неопределенное значение.
При троичном моделировании заданная последовательность наборов модифицируется так, что между каждой парой наборов xt и х2 вводится промежуточный набор х12, в котором входные переменные имеют значение 1/2, если их значения различны (рис. 8.29).
После этого выполняется троичное моделирование схемы на трех наборах (Х1,Х12их2). Для каждого входного набора и набора значений внутренних переменных, установившегося в результате предыдущего входного набора, вычисляются значения во всех узлах сети. При троичном моделировании необходимо уметь вычислять троичную функцию логических вентилей. Для этого необходимо пользоваться простым правилом: для вычисления троичной функции G* логического вентиля, реализующего двоичную функцию G, измените значение с 0 на 1, и наобо- 260
рот, тех входов вентилей, которым соответствует значение 1/2, и определите значение выхода G. Если при этом оно изменяется, тогда G* = = 1/2, если остается фиксированным ЦО), то G* = 1(O).
В качестве примера на рис. 8.30 показана двоичная (рис. 8.30, а) и троичная (рис. 8.30, б) функции элемента ИСКЛЮЧАЮЩЕЕ ИЛИ.
При моделировании может потребоваться многократная обработка
X; <zх3Схема с памятьюУтУггхз“)*7лХ12хз0000Z7о1О7z7гоаО77о076У77г 0 О7г 7г1б)7г 71X; <zх3Схема с памятьюУтУггхз“)*7лХ12хз0000Z7о1О7z7гоаО77о076У77г 0 О7г 7г1б)7г 71Рис. 8.29. Дополнение входных наборов при троичном моделировании:а — исходная схема; б —заданная последовательность; в — модифицированная последовательностьРис. 8.29. Дополнение входных наборов при троичном моделировании:а — исходная схема; б —заданная последовательность; в — модифицированная последовательностьа)б)а)б)Рис. 8.30. Вентиль ИСКЛЮЧАЮЩЕЕ ИЛИ:а — двоичная функция; б — троичная функцияРис. 8.30. Вентиль ИСКЛЮЧАЮЩЕЕ ИЛИ:а — двоичная функция; б — троичная функция
X;
<z
х3
Схема с памятью
Ут
Уг
г
хз
“)
*7
л
Х1
2
хз
0
0
0
0
Z7
о
1
О
7z
7г
о
а
О
7
7
о
0
7
6У
7
7г 0 О
7г 7г
1
б)
7г 7
1
X;
<z
х3
Схема с памятью
Ут
Уг
г
хз
“)
*7
л
Х1
2
хз
0
0
0
0
Z7
о
1
О
7z
7г
о
а
О
7
7
о
0
7
6У
7
7г 0 О
7г 7г
1
б)
7г 7
1
Рис. 8.29. Дополнение входных наборов при троичном моделировании:
а — исходная схема; б —заданная последовательность; в — модифицированная последовательность
Рис. 8.29. Дополнение входных наборов при троичном моделировании:
а — исходная схема; б —заданная последовательность; в — модифицированная последовательность
а)б)
а)б)
Рис. 8.30. Вентиль ИСКЛЮЧАЮЩЕЕ ИЛИ:
а — двоичная функция; б — троичная функция
Рис. 8.30. Вентиль ИСКЛЮЧАЮЩЕЕ ИЛИ:
а — двоичная функция; б — троичная функция
одних и тех же элементов, охваченных контурами обратной связи до тех пор, пока во всех узлах сети не будут получены установившиеся значения (0, 1/2, 1).
Получившееся в результате моделирования состояние 1/2 на выходах схем с обратными связями свидетельствует о неопределенности
Рис. 8.31. Схема к примеру 8
б)
состояния и, следовательно, не может быть использовано в качестве ожидаемого результата теста.
Пример 10. Дана схема (рис. 8.31, а). Определить с помощью троичного моделирования состояние схемы при подаче на ее вход наборов 00 и 11.
Результаты моделирования приведены в таблице (рис. 8.31,6). Окончательными значениями на выходах yj, Kj являются 1/2, 1, что свидетельствует о неопределенности состояния и о том, что состояние выхода Yj на заданных наборах непредсказуемо.
5. ДЕТЕРМИНИРОВАННЫЕ МЕТОДЫ ГЕНЕРАЦИИ ТЕСТОВ
ДЛЯ УСТРОЙСТВ, ОПИСАННЫХ НА ФУНКЦИОНАЛЬНОМ УРОВНЕ
Микропрограммные устройства
Рассмотрим метод генерации микропрограммных тестов, обеспечивающих проверку правильности функционирования устройства, т. е. отсутствия в устройстве оговоренного класса неисправностей. При таком подходе к генерации тестов модели неисправностей в явной форме не задаются.
Описание устройства на функциональном уровне может быть задано в виде направленного графа, вершины которого представляют собой функциональные блоки, такие как регистры, сумматоры, схемы преобразования информации. Дугам графа соответствуют микрооперации. Вершина графа, в которую поступают тестовые наборы из накопителя тестов, является входной, а вершина, из которой результаты поступают на сравнение с эталоном, — выходной. Сравнение результатов проверки с эталонными может выполняться либо с помощью имеющейся в процессоре аппаратуры, такой, как например, сумматор или схема анализа, либо с помощью дополнительной аппаратуры опроса состояния устройства и сравнения ее с эталонной. В первом случае выходная вершина является входом аппаратуры анализа и сравнение с эталоном выполняется стандартной микропрограммой сравнения и ветвления, а во втором случае выходных вершин может быть несколько (в принципе каждая вершина графа может быть выходной, если все средства ЭВМ имеют выход на опрос по сериализации), а сравнение с эталоном выполняется на аппаратуре блока диагностики или сервисного процессора при помощи специальных диагностических операций. Рассмотрим ряд понятий теории графов, используемых ниже при описании алгоритма проектирования микропрограммных тестов.
Путь из вершины о, в вершину v, есть упорядоченная последовательность ребер, связывающих о< и uj. Циклом называется путь, начинающийся и заканчивающийся в одной и той же вершине. Вершина о, достижима из вершины уг, если имеется путь из вершины и, в верши-
ну у,. Если 6 есть направленный граф с п вершинами, то его матрица связности есть матрица размерности пХп, элемент с,/ которой равен 1, если имеется ребро у,у,. В противном случае с,,=0.
Тестовая микропрограмма, проверяющая какой-либо блок устройства, выполняет следующие действия:
чтение тестового набора из накопителя тестов;
транспортировку тестового набора на вход проверяемого блока;
опрос состояния проверяемого блока;
чтение эталона из накопителя тестов;
передачу эталона в блок сравнения;
анализ результата и сообщение о неисправности.
Основной задачей при проектировании микропрограммных тестов является нахождение путей в графе G, обеспечивающих условия транспортировки и транспортировку тестовых наборов из входной вершины иа входы проверяемой, а также транспортировку результатов проверки в выходную вершину. Последовательность найденных путей должна обеспечивать минимальное приращение проверенных вершин и ребер по отношению к предыдущему пути. Совокупность путей должна обеспечивать проверку связей и функциональных блоков устройства.
Алгоритм проектирования микропрограммных тестов в общем случае состоит из следующих этапов:
определение путей по матрице связности графа G;
вычисление микропрограммы по найденному пути;
дополнение вычисленной микропрограммы стандартными микропрограммами сравнения, ветвления и сообщения о неисправности.
Поскольку устройство состоит из двух типов функциональных блоков (схем преобразования информации и регистров), различают два этапа вычисления микропрограммных тестов:
регистров и передач между ними;
схем преобразования информации.
Вычисление путей для проверки регистров и связей между ними. Алгоритм вычисления путей для проверки регистров и связей между ними следующий:
шаг 1: формируется матрица связности С направленного графа G;
шаг 2: на матрице связности обозначается входная и выходная вершины. При наличии нескольких входных или выходных вершин вводится входная или выходная псевдовершина;
шаг 3: входная вершина принимается за исходную и выбираются все вершины, связанные с входной вершиной. Проводятся линии, соответствующие ребрам между входной вершиной и другими выбранными вершинами. Входная вершина считается принадлежащей уровню О, а инцидентные ей вершины — уровню 1;
шаг 4: все вершины, выбранные на шаге 3, принимаются за ис-
ходные. Процедура шага 3 итеративно повторяется до тех пор, пока ие будут покрыты все вершины графа G. Если какая-либо вершина уже принадлежала предыдущему или этому же уровню, то она принимается за псевдовершину и продвижение по этой линии прекращается. Граф, сформированный по описанной выше процедуре, называется псев. додеревом;
шаг 5; для завершения пути от псевдовершины к выходной вершине среди уже найденных путей выбирается кратчайший путь, соединяющий псевдовершину с выходной вершиной. Этот путь присоединяется к псевдовершине. Таким образом формируется дерево путей. Если граф содержит максимальные сильносвязные подграфы, процедура шага 5 разбивается на следующие шаги:
шаг 5.1: выбираются пути между входной и выходной вершинами, не содержащие псевдовершин;
шаг 5.2: к псевдовершине графа присоединяются части путей, найденных на предыдущем шаге и соединяющих псевдовершины с выходной вершиной;
55z) 5. Пдть Р5z) 5. Пдть Р5у 7. Пдть Pi Иу 7. Пдть Pi И2.. Путь Р^2.. Путь Р^3. Пдть Р33. Пдть Р36. Путь Р66. Путь Р6у *. Пдть Р^ 0у *. Пдть Р^ 0
5
5
z) 5. Пдть Р5
z) 5. Пдть Р5
у 7. Пдть Pi И
у 7. Пдть Pi И
2.. Путь Р^
2.. Путь Р^
3. Пдть Р3
3. Пдть Р3
6. Путь Р6
6. Путь Р6
у *. Пдть Р^ 0
у *. Пдть Р^ 0
Рис 8 32 Вычисление путей по графу структуры ЭВМ:
о--исходный граф, б — граф типа псевдодерево (заштрихованы псевдовершины); о — ш 'г 5 ’; г — шаг 5 2. 0 — шаг 5.3; е — шаг 5 3: ж — возможные пути (Шаг 6); я—е — иллюстрирует lu ir 5, представляющий собой процедуру получения полного гр а
шаг 5.3: формируются пути, содержащие 1, 2,.... n-кратные циклы, обеспечивающие покрытие всех вершин и дуг графа. Эти пути заканчиваются псевдовершинами, и для продолжения их до выходной вершины они дополняются найденными на шаге 5.1 частями путей, соединяющих псевдовершины с выходной вершиной.
шаг 6: возможные пути выбираются из полного дерева. Множество путей, полученных по приведенному алгоритму, обеспечивает покрытие всех вершин и ребер графа.
На основании полученных путей формируется матрица путей, показывающая принадлежность вершин и ребер тому или иному пути.
В качестве примера приведем граф, показанный на рис. 8.32. На шаге 1 формируется его матрица связности. На шаге 2 определяется в качестве входной вершина /, а в качестве выходной — вершина 4. На шагах 3 и 4 формируется псевдодерево (рис. 8.32,6). На шаге 5.1 находится путь между входной и выходной вершинами, не содержащими псевдовершин (рис. 8.32, е). На шаге 5.2 дуга 3—4, принадлежащая пути 1—3—4, соединяется с псевдовершиной 3 (рис. 8.32, г). На шаге 5.3 вычисляется путь, содержащий один цикл (рис. 8.32,6). На шаге 5.3 вычисляется путь, содержащий двойной цикл, и формируется полное дерево (рис. 8 32, е). На шаге 6 составляются все возможные пути по дереву (рис. 8.32, ж). Матрица путей показана на рис. 8.33. Как видно из рисунка, неисправности в элементах 1 и 4, е и g, / и т неразличимы.
| 1234567 Sabcdefghi j k I tn
Р'Р'ооооооооООООООООооооооООооооооооооООРаРаооооооооооооооооооооооооооооооооР3Р3ооооооооооооооооооооооооооооллооооооооооооооооооооооооооооооооРьРьРеРе11р.р.оооооооооооооо11оооооооооооооооооооооооооо11оооооооооооооооо
Р'
Р'
о
о
о
о
о
о
о
о
О
О
О
О
О
О
О
О
о
о
о
о
о
о
О
О
о
о
о
о
о
о
о
о
о
о
О
О
Ра
Ра
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
Р3
Р3
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
Р»
Р»
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
Рь
Рь
Ре
Ре
1
1
р.
р.
о
о
о
о
о
о
о
о
о
о
о
о
о
о
1
1
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
1
1
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
о
Рис. 8.33. Матрица путей
Генерация микропрограммных тестов для проверки регистров и связей между ними. Для генерации микропрограммных тестов по найденным реальным путям необходимо построение таблицы соответствия между микрооперациями (МО) и вершинами и ребрами графа системы. Пример таблицы соответствия показан на рис. 8.34. Каждой
микрооперации соответствует входная и выходная вершина.
Таблица микроопераций строится следующим образом:
Микрооперация
Ребро графа
Микрооперация
Ребро графа
MOt
1-2
мо8
5-6
МО,
1-4
моэ
6-8
МО3
1-3
МО1С
8-6
мо4
2-3
моп
6-2
мо6
2-5
мо13
6-7
мо6
3-4
мо13
7-2
МО,
5-4
Рис. 8.34. Таблица микроопераций
шаг 1: микрооперации классифицируются по трем группам: МО передач; арифметические МО; МО анализов условий.
шаг 2: выбираются микрооперации передач между регистрами.
шаг 3: последовательность логических блоков с учетом микроопераций представляется в виде направленного графа.
шаг 4: если иа шаге 3 выяснилось, что микрооперация имеет более двух входных и выходных вершин, необходимо перечислить все комбинации последовательностей логических блоков в таблице микроопераций.
Процедура генерации микропрограммных тестов по найденным путям состоит в следующем:
шаг 1: последовательность логических блоков в тестовом пути заменяется соответствующей микрооперацией из таблицы микроопераций;
ш а г 2: шаг 1 повторяется до тех пор, пока весь путь не будет заменен последовательностью микроопераций;
шаг 3: к последовательности микроопераций, соответствующей пути, вначале добавляется микропрограмма считывания тестового набора из накопителя тестов, а в конце — микропрограмма сравнения с эталоном;
шаг 4: описанная выше процедура применяется ко всем найденным путям. Например, пути Ps (рис. 8.32, ж) соответствует микропрог* рамма
MOj — мо5 — мое — моп — мо6 — МО,.
Последовательность микроопераций дополняется в начале микропрограммой чтения тестового набора (ЧТН) и в конце микропрограммой сравнения с эталоном (СРВ). На рис. 8.35 показана таблица микропрограмм, соответствующих найденным путям.
Pt рг Рз Pi Рз рв PlPt рг Рз Pi Рз рв PlЧТН^МО2^СРВЧТН-^МО3^МО6-,СРВЧТН-* MOj -* МО6 -* МО7 -*СРВЧТН- MOt - МО 4 - МО, -* СРВЧТН->МО1->МО5->МО8Ч-МО11->МО5->МО7->СРВЧТН->МО1^-МО6^МО8->МО12-*МО13-*МО5-*МО7->СРВЧТН^МО1->МО5-МО8->МО»-МО10-*МО11->МО5-МО7->СРВЧТН^МО2^СРВЧТН-^МО3^МО6-,СРВЧТН-* MOj -* МО6 -* МО7 -*СРВЧТН- MOt - МО 4 - МО, -* СРВЧТН->МО1->МО5->МО8Ч-МО11->МО5->МО7->СРВЧТН->МО1^-МО6^МО8->МО12-*МО13-*МО5-*МО7->СРВЧТН^МО1->МО5-МО8->МО»-МО10-*МО11->МО5-МО7->СРВМикропрограммыМикропрограммы
Pt рг Рз Pi Рз рв Pl
Pt рг Рз Pi Рз рв Pl
ЧТН
^МО2^СРВ
ЧТН-
^МО3^МО6-,СРВ
ЧТН
-* MOj -* МО6 -* МО7 -*СРВ
ЧТН
- MOt - МО 4 - МО, -* СРВ
ЧТН
->МО1->МО5->МО8Ч-МО11->МО5->МО7->СРВ
ЧТН
->МО1^-МО6^МО8->МО12-*МО13-*МО5-*МО7->СРВ
ЧТН
^МО1->МО5-МО8->МО»-МО10-*МО11->МО5-МО7->СРВ
ЧТН
^МО2^СРВ
ЧТН-
^МО3^МО6-,СРВ
ЧТН
-* MOj -* МО6 -* МО7 -*СРВ
ЧТН
- MOt - МО 4 - МО, -* СРВ
ЧТН
->МО1->МО5->МО8Ч-МО11->МО5->МО7->СРВ
ЧТН
->МО1^-МО6^МО8->МО12-*МО13-*МО5-*МО7->СРВ
ЧТН
^МО1->МО5-МО8->МО»-МО10-*МО11->МО5-МО7->СРВ
Микропрограммы
Микропрограммы
Рис. 8.35. Таблица микропрограмм, соответствующих путям
Генерация микропрограммных тестов для проверки комбинационных схем. Для проверки многовходовых комбинационных схем необходимо найти совокупность путей, обеспечивающих подачу тестовых наборов на входы комбинационной схемы, т. е. на регистры, являющиеся входами комбинационной схемы и соединяющие выходной регистр комбинационной схемы с выходной вершиной графа системы.
С этой целью используются фрагменты путей для проверки регистровой логики. Например, если вершины 2 и 3 (рис. 8.32, а) являются входами сумматора, а вершина 5 его выходом, то микропрограмма проверки сумматора на одном наборе будет состоять из следующих фрагментов, найденных на предыдущем этапе микропрограмм:
ЧТН —МО3, ЧТН — MOi, МО,— СРВ
И выполнения микрооперации сумматора, т. е. МОсм. Полная микропрограмма будет иметь вид:
ЧТН, МО3, ЧТН, MOi, МОсм, МО7, СРВ.
Для проверки сумматора на N наборах данная микропрограмма должна быть повторена N раз.
6. ПРОЕКТИРОВАНИЕ ТЕСТОВ АРХИТЕКТУРНЫХ
И СИСТЕМНЫХ СВОЙСТВ
При проектировании тестов архитектурных и системных свойств используются формализованные и формальные методы описания принципов работы ЭВМ. Это обстоятельство в значительной мере приближает процесс тестирования архитектурных или системных свойств ЭВМ к более исследованному процессу тестирования программ [32].
При проектировании тестов архитектурных и системных свойств
можно выделить два подхода: проектирование на основе внешних спецификаций; проектирование на основе алгоритмического описания.
Обычно на практике проектирование тестов ведется на основе внешних спецификаций с учетом ограничений на множество тестов, задаваемых алгоритмическим описанием и структурой ЭВМ: каждый тест должен представлять некоторый класс возможных входных данных. Его правильное функционирование будет означать правильность функционирования ЭВМ на данном классе входных данных.
Рассмотрим проектирование тестов архитектурных свойств: блока, его внешних функций и системы.
Проектирование тестов архитектурных свойств блока. Процесс проектирования обычно состоит из следующих шагов:
'1) разработка тестов для каждой ситуации и возможности, содер
жащейся в описании принципов работы, для каждой границы областей допустимых значений всех входных данных, областей изменения данных, для всех недопустимых условий;
проверка охвата тестами всех условий в алгоритме функционирования блока и добавление новых тестов при необходимости.
проверка полноты покрытия гестами путей в алгоритме функционирования и добавление новых тестов при необходимости;
проверка охвата тестами особых случаев функционирования блока и добавление новых тестов при необходимости.
Когда задано формальное описание алгоритма функционирования блока, можно использовать подход, основанный на работах по построению полной системы примеров для программ.
Систему тестов для заданного блока будем называть полной, если каждый линейный участок (ветвь) алгоритма функционирования блока покрывается тестом данной системы.
Технику построения полной системы тестов для блока продемонстрируем на примере описания алгоритма выполнения мультиплексным каналом ввода-вывода команды ПРОВЕРИТЬ ВВОД-ВЫВОД (Т10), выделенного из формального описания системы 1ВМ/360 на языке АРЕ [73].
Для удобства изложения алгоритм выполнения команды описан на языке регистровых передач в несколько упрощенной форме. В частности, из описания алгоритма исключены переменные, значения которых не определяются значениями входных переменных, а также циклы ожидания каналов сигналов устройства ввода-вывода (УВВ).
Описание переменных приведено в табл. 8.3. Здесь A(i—j) обозначают разряды i—/ переменной А.
Входными для алгоритма являются переменные a, S(8), 5(9), В(8), В(11), В(18—29), С, ^'(0), £7(8—15), Р(8).
В описании алгоритма присваивание А: = ? означает, что значение переменной А непредсказуемо.
Таблица 8.3
Разряд-
Озозначениг ность
Значение
а8
С64
CAW32
CS^64
СС2
Р9
В20
8(8)1
В (9)1
8(10)1
8(H)1
В (12—19)8
518
5 (0-7)8
581
591
5(10—17)8
U16
U (0—2)3
7/(0)1
U' (0)1
ЩЗ)1
Щ4)1
U (5—6)2
U (8—15)8
Адрес УВВ, задаваемый Т10
Управляющее слово канала
Адресное слово канала
Слово состояния канала
Признак результата
Линии выборки
Состояние канала
Необработанное прерывание в канале
Канал работает
Взаимодействие канала с процессором
Канал выключен
Адрес УВВ, выдавшего запрос на прерывание
Состояние подканала
Байт состояния канала
Необработанное прерывание в подканале
Подканал работает
Адрес работающего УВВ
Интерфейс канал — контроллер
Линии идентификации канал-УВВ
Линия сигнала «Управление от канала»
Линия сигнала «Управление от абонента»
Направление передачи
Линия сигнала «Блокировка канала»
Линии управления
Линии информации
НАЧАЛО
Если 5(11) = 1, то идти к 32
U(0—4):=1
В(10):=1
5(10—17): = а
Если(S(8)AS(9)\/S(8)AS(9)A(S(10—17)^5(12—19))AS(10—
—17)= С(24—31))) =0, то идти к 30
Если 5(11—17) =S(13—19) A (S(8) = 1), то идти к 9
В(8): = ?
Идти к 10
В(8): = 0
5(0—7)1=128
17(0—5):=21£7(8—15): = 0В (9—10):=0СтопCC:=029. Идти к 2417(0—5):=21£7(8—15): = 0В (9—10):=0СтопCC:=029. Идти к 24Рис 8 36 Дерево развертки алгоритма функционированияРис 8 36 Дерево развертки алгоритма функционирования
17(0—5):=21
£7(8—15): = 0
В (9—10):=0
Стоп
CC:=029. Идти к 24
17(0—5):=21
£7(8—15): = 0
В (9—10):=0
Стоп
CC:=029. Идти к 24
Рис 8 36 Дерево развертки алгоритма функционирования
Рис 8 36 Дерево развертки алгоритма функционирования
Л. Ц(0-5): = 13
Щ4):=В(9)
и(8-15): = 5(10—17)
Если Р(0) = 1, то идти к 32
U (0—5):=37
U(О—5): = С(0—8)
Если (5(8) = 0)Л(У,(0)=0), то идти к 28
С5Г(0—31): = СЛГ
СВГ(32—39): = (7(8—15)
CS№(40—47):=S(0—7)
CS№(48—63): = ?
S(0—8): = 0
CC: = 0
СС: = 2
Идти к 26
СС:=3
Идти к 26
КОНЕЦ
По описанию алгоритма строится дерево развертки алгоритма, обладающее следующими свойствами:
все пути, ведущие из начальной вершины дерева развертки в одну из заключительных, реализуемы, т. е. для каждого такого пути существует набор значений входных переменных, при которых выполнение алгоритма пойдет по данному пути;
ветвь алгоритма, принадлежащая реализуемому пути, принадлежит пути, ведущему из начальной вершины дерева развертки в одну из заключительных вершин.
При построении дерева развертки составляются и анализируются условия реализуемости путей. Путь с тождественно ложным условием реализуемости отсекается. На рис. 836 показано дерево развертки для
рассматриваемого алгоритма. Отсеченные пути отмечены как не; еали- зуемые (HP) Для линейных участков алгоритма указаны только вершины, соответствующие первой и последней командам линейного участка В табл 8 4 приводятся все пути из начальной вершины дерева в одну из заключительных вершин вместе с условием реализуемости и способом реализации
Таблица 84
Путь
Условие реализуемости
Способ реализации
То
8(11) = 1
Канал выключен
Т1
(B(ll)=0)A(S(8) = l)A(S(9)= = 0) Д (a A S (12-19) A (а А С (2431)
(3(1I) = O)A(S (9) = 1)
Подканал хранит прерывание для неадресуемого УВВ
Подканал работает
Ts
(8(11) = 0) Д 8(12—19) = о) Д
A (S (8) = 0) Д (S (9) = 0) Д (S (8) = = 1) A (P (8) = 1)
Канал хранит прерывание для адресуемого УВВ, которое выключено
Тз
(8(11) = 0) A (8(12-19)^a) Д
A (8 (8) = 1) A (S (8) = 0) A
A (S (9) = 0) Д (P (8) = 1)
Канал хранит прерывание для неадресуемого УВВ, а адресуемое УВВ выключено
Т*
(S (II) = 0) Д (S(12-19)^a) Д
A (8 (8) = 1) A (8 (8) = 0) Д (S (9) = = 0)Д(Р (8) = 0) А(Д'(0)=0)А Д(Д (8-15) =0)
Канал хранит прерывание для неадресуемого УВВ
Тз
(8(ll) = 0) Д (8(12-19)^0) A
A (C (24-31) = а) Д (8 (8) = I) Д
A (S (8) = 1) Д (S (9) = 0) A (P (8) =
= 0) A JT (0) = 0)
Канал хранит прерывание для неадресуемого
УВВ, а подканал — для адресуемого
Следует отметить, что получение конечного дерева развертки для алгоритма функционирования блока не всегда возможно или требует прохождения большого числа ветвей дерева В этих случаях на практике можно отсекать не только пути с тождественно ложными условиями реализуемости, но и часть реализуемых путей (например, разворачивать циклы не более одного раза), получая тем самым систему примеров, степень полноты которых определяется степенью отсечения реализуемых путей.
Для облегчения программирования тестов существуют специальные макрокоманды языка ассемблера и программы, функционирующие в среде операционных систем. Например, макрокоманды для систем оперативного и автономного тестирования (СОТ и СКАТ) ЕС ЭВМ позволяют одной строкой запрограммировать организацию цикла по опреде-
ленным параметрам, выдачу сообщения на консоль оператора, печать ошибок, установку состояния проверяемого блока и т. д. Для уточнения неисправностей н создания удобных режимов тестирования существуют специальные управляющие программы — мониторы. Они позволяют выполнять трассировку тестовой программы, останов по заданному адресу, возврат в начало тестовой программы, переход к выполнению заданного теста, распечатку и изменение областей памяти, используемых тестом, зацикливание теста и т. д.
Проектирование тестов внешних функций блока Необходимым условием проектирования тесгов внешних функций является наличие четких и точных внешних спецификаций Последние обычно разбиваются на отдельные внешние функции (например, для процессора ЕС ЭВМ функции мультипроцессирования н прямого управления). Тесты проектируются после тщательного изучения каждой функции. В одном из методов проектирования тестов, называемом методом функциональных диаграмм, в качестве исходной информации используются внешние спецификации. Этот метод основан на анализе семантического содержания внешних спецификаций, написанных на естественном языке, и переводе их на язык логических отношений между входными данными (ситуациями) и выходными данными и преобразованиями (эффектами). Эти отношения представляются в форме диаграммы (или графа), называемой функциональной. Диаграмма снабжается примечаниями в виде синтаксических правил и ограничений внешней среды н затем преобразуется в таблицу решений с ограниченным входом. Каждый столбец таблицы соответствует будущему тесту.
Проектирование системных тестов. Системный, или комплексный тест должен обеспечивать тестирование:
максимальных нагрузок системы, например одновремевное тестирование всех внешних устройств, входящих в конфигурацию системы, процессоров и каналов ввода-вывода;
непрерывной работы системы в течение длительного периода;
конфигурации системы, в том числе минимальной и максимальной;
совместимости;
производительности и пропускной способности;
динамического изменения конфигурации;
готовности системы,
средств обнаружения и исправления ошибок.
По своей природе системные (комплексные) тесты не сводятся к проверке отдельных функций системы. Они часто проектируются в форме сценариев, представляющих собой ряд последовательных действий оператора, входных и ожидаемых выходных данных В сценарии также указываются действия, которые должны быть совершены во время выполнения теста.
ПОНЯТИЕ О ТЕСТОПРИГОДНОМ ПРОЕКТИРОВАНИИ АППАРАТУРЫ ЭВМ
С увеличением сложности схем в силу ограниченных возможностей существующих методов вычисления тестов и ограничений в нх реализации процент обнаруживаемых неисправностей уменьшается. Это приводит к тому, что входной контроль не обнаруживает всех дефектов и в значительной степени тяжесть проверки падает на этап тестирования ТЭЗ и ЭВМ. К тому же возросшая сложность БИС н СБИС приводит к увеличению доли перемежающихся нлн временных неисправностей, обнаруживающихся только при работе системы. В связи с этим появляется необходимость тестирования ТЭЗ в условиях, близких к реальным, что достигается либо применением сложных стендов, эмулирующих работу системы, либо использованием эталонной ЭВМ в качестве стенда для проверки ТЭЗ в реальных условиях эксплуатации
Каждый этап производства (см рис 8 1) характеризуется коэффициентом выхода годных изделий В (0<В<1), а его тесты — долей обнаруживаемых дефектов, которую в дальнейшем будем называть полнотой проверки Т (0<Т<1).
Доля дефектных изделий в общем объеме выпуска для данного этапа производства (предполагается, что дефекты распределены равномерно и независимы)
Д = \ — в^-7'*.
Из-за того, что тесты каждого этапа имеют полноту проверки Т<\, часть дефектов проходит на следующий этап проверки и в конце концов проникает на этап эксплуатации.
Рассмотрим в качестве примера этап изготовления ТЭЗ. Допустим, что в партии ИС, поступающих на сборку, доля дефектных изделий составляет 1,5 %. Тогда для ТЭЗ с 40 такими ИС вероятность выпуска годного ТЭЗ прн безошибочной сборке равна В=(1—0,015)40=0,546, т е. 45,4 % всех ТЭЗ будет иметь дефектные компоненты. После тестирования доля дефектных ТЭЗ составит Д=1—0,546(1-г>, т. е. будет определяться полнотой проверки Т.
Расчет показывает, что для выпуска ТЭЗ с долей дефектных, не Превышающей 5 %, требуется полнота проверки Г=0,99. Достижение такой полноты проверки во многих случаях возможно только прн использовании специальных методов тестопригодного проектирования аппаратуры
Тестопригодным называется проектирование логических схем с функционально избыточными дополнительными средствами, предназначенными для повышения полноты проверки н сокращения трудоемкости тестирования. Соответственно тестопригодными называются схемы со сравнительно небодьшой трудоемкостью вычисления тестов и ннтер-
претации результатов тестирования н с достаточной глубиной поиска дефекта. Тестопрнгодность достигается структурной модификацией исходных схем, введением дополнительной аппаратуры и линий управления, упрощающих процесс получения тестов и повышающих полно!у
проверки.
УПРАВЛЯЕМОСТЬ И НАБЛЮДАЕМОСТЬ СХЕМ ПРИ ТЕСТИРОВАНИИ
Для проектирования тестопригодной схемы нужно уметь количественно оценить ее тестируемость и выявить «узкие места». Введем два показателя тестируемости: управляемость и наблюдаемость.
Управляемость линии характеризует относительную сложность установки ее в требуемое состояние (путем подачи на схему последовательности входных наборов), а наблюдаемость — относи
тельную сложность проталкивания сигнала в линии на выход схемы.
1(0)-упрабляемость линии w определяется минимальным числом линий схемы, которые необходимо установить в конкретные состояния для установки единицы (нуля) в линии w, плюс одна [68].
Наблюдаемость линии to есть число линий схемы, которые необходимо установить в требуемое состояние для того, чтобы обеспечить возможность наблюдения состояния линии w на выхо
де схемы.
Обозначим 0(1)-управляемость и наблюдаемость линии го через с0(ю), сДш) и с2(го) соответственно. Обшие 0(1)-управляемости и наблюдаемость схемы обозначим через s0, s1 и s2 и определим нх значения по формуле
2 СМ(8-21)
где 1=0, 1,2; W — множество линий схемы.
Чем больше значения С; и S;, тем хуже управляемость и наблюдаемость.
Тестопрнгодность схемы можно определить суммарной величиной:
2
*=2^'(8.22)
1=0
где ki — весовые коэффициенты управляемости и наблюдаемости.
Определим I (0)-управляемость элементарных вентилей. Для вентиля И с входами х, у и выходом г
с0 (г) = min {с0 (х), с0 (у)} + 1,(8.23а)
поскольку для z=0 достаточно иметь 0 на одном из входов ci (z) = ^ (х) + Ci (у) + 1,(8.236)
поскольку для z= 1 необходимо, чтобы х = 1 и у=1.
Предположим, что на входе х имеется неисправность. Тогда для ее распространения на вход необходимо, чтобы у=\. Поэтому наблю
даемость линии х определяется формулой
сг (х) = с2 (г) + Ci (у) + 1 •(8.24)
Для инвертора со входом у н выходом г имеем:
с0 (г) = Ci (у) + 1;(8.25)
q <г) = с0 (у) + 1;(8.26)
с2 (У) = с2 (г) + 1.(8.27)
Если линия z разветвляется на две линии (х и у), то можно записать:
Со W ~ Су (у) ” Со (г); Cj (х) = Cj (у) = С] (г); с2 (2) ~ min !с2 (х), с2 ^уН .
Если линия w есть вход схемы, то c0(w) — Ci(w) = 1, а если она является выходом схемы, то c2(w) = 0.
В качестве примера на рис. 8.37 приведена схема и ее частные и об. щие показатели тестируемости, вычисленные в соответствии с приведенными выше формулами.
Показатель твстарувмостиДля линии игДля всей схемы723к5Б7О-упраВлявмость52777175D=131-упраВляенисть3327171Si = 12НаблюЗивмостьО335к5кS2=2kПоказатель твстарувмостиДля линии игДля всей схемы723к5Б7О-упраВлявмость52777175D=131-упраВляенисть3327171Si = 12НаблюЗивмостьО335к5кS2=2kз=ад (к0=к1=к2=1)з=ад (к0=к1=к2=1)
Показатель твстарувмости
Для линии иг
Для всей схемы
7
2
3
к
5
Б
7
О-упраВлявмость
5
2
7
7
7
1
7
5D=13
1-упраВляенисть
3
3
2
7
1
7
1
Si = 12
НаблюЗивмость
О
3
3
5
к
5
к
S2=2k
Показатель твстарувмости
Для линии иг
Для всей схемы
7
2
3
к
5
Б
7
О-упраВлявмость
5
2
7
7
7
1
7
5D=13
1-упраВляенисть
3
3
2
7
1
7
1
Si = 12
НаблюЗивмость
О
3
3
5
к
5
к
S2=2k
з=ад (к0=к1=к2=1)
з=ад (к0=к1=к2=1)
Рис. 8.37. Пример схемы к расчету управляемости и наблюдаемости
Улучшить тестируемость схемы [уменьшить значения 0 (1)-управляемости и наблюдаемости] можно путем введения дополнительных схем и контрольных точек. Например, как показано на рис. 8.38, б, О-управляемость исходной схемы (рис. 8.38, а), а именно ее подсхемы В, можно улучшить путем введения схемы И. При этом Cg(®,)< <с0(ш). 1-управляемость исходной схемы можно улучшить путем введения схемы ИЛИ (рис. 8.38, б). При этом Ci(aa)<61(aa). Для улучшения наблюдаемости подсхемы В, а следовательно, и всей схемы можно ввести контрольную точку (рис. 8.38, г), в результате чего c^w^ <с2(аа). Рассмотрим в качестве примера схему, содержащую триггеры (рис. 8.39, а), и определим показатели ее тестируемости. Для этого
Рис. 8.38. Способы улучшения управляемости н наблюдаемости:
а — исходная схема; б — улучшение О-управляемостн; в — улучшение 1-управляс- мостн, г — улучшение наблюдаемости
Рис. 8 39. Пример схемы с триггерами для расчета управляемости и на блюдаемости
предварительно запишем формулы вычисления 0(1)-управляемости выхода Q одноступенчатого и двухступенчатого синхронных Д-триггеров с сннхровходом С:
для одноступенчатого триггера:
(8.28)(8.28)(8.29)(8.29)Ср (Q) — с0 (О) + q (С) + 1;
(8.28)
(8.28)
(8.29)
(8.29)
q (Q) = q (Д) + q (С) + 1;
для двухступенчатого триггера передача 0(1) на выход Q обес-
печнвается перепадом 1-*0 на синхровходе С триггера:
Со (Q) = со (О) + ci (С) + с0 (С) + 1;(8.30))
ci (Q) = ci (^) + ci (Q + Со (Q + 1 ■(8.31)
С учетом этих формул 0(1)-управляемость выхода триггера сдвигового регистра (линия 8, рис. 8.39, а) определяется следующим образом:
со (8) = со (1) + ct (9) + с0 (9) + 1,
где с0(1) = 1, так как линия 1 является входом схемы; с1(9)=с1(2) + +с1(3) + 1=3 [по формуле (8.236)]; с0(9) =min{c0(2), с0(3)}+1 = 2 [по формуле 8.23а)]. Подставив значения, получим с0(8)=7. Вычислим также 0-управляемость выхода 4 схемы, пользуясь следующими формулами 0(1)-управляемости выхода г схемы И—НЕ:
Со (?) = Ci (х) + Ci (у) + 1;(8.32)
c^z^min^otx), с0(у)} +1.(8.33)
С учетом формулы (8.32) с0(4) =сД8)+СД12) + 1 и, поскольку с,(8)=7, а щ(12)=67 (рис. 8.39,6), с0(4) =67+7+ 1 = 75.
Сводная таблица значений управляемости и наблюдаемости, приведенная на рис. 8.39, б, позволяет определить те линии, которые являются трудно управляемыми и трудно наблюдаемыми, и принять меры для улучшения тестопрнгодностн схемы.
ПРАВИЛА ТЕСТОПРИГОДНОГО ПРОЕКТИРОВАНИЯ
Изучение количественных показателей тестируемости схем позволило выработать общие рекомендации по улучшению их тестопрнгодностн, которые в практической деятельности позволяют часто обходиться без кропотливого анализа этих схем и обеспечивают достаточно хорошие результаты. Эти рекомендации перечислены ниже [65].
Обеспечьте управляемость извне цепей сброса триггеров и регистров, используя при этом либо незадействованные линии сброса триггеров, либо дополнительные линии управления, соединенные с внешними контактами.
На рис. 8.40, а показаны схема триггера с задействованной линией сброса и дополнительное управление через внешний контакт при помощи схемы И (8.40,6), монтажного ИЛИ (8.40, в). На рис. 8.40, г показан сброс триггера при включении напряжения питания при отсутствии свободных внешних контактов.
Обеспечьте наблюдаемость состояния триггеров на внешних, контактах. Для экономии числа дополнительных контактов используйте мультиплексоры или цепи сканирования (см. § 8 11).
При наличии трудноуправляемых подсхем с целью улучшения их управляемости используйте линии блокировки и дополнительные вхо-
Рис. 8.40. Управляемость триггера по цепи сброса:
и — исходная схема; б — дополнительное управление через элемент И; 8 — дополнительное управление через монтажное ИЛИ; г —управление сбросом по включению напряжения питания
Рис. 8.41. Улучшение управляемости подсхем
ды, как на примере, показанном на рис. 8.41. На этом рисунке линия блокировки отключает выходы подсхемы А от входов подсхем В и С, а дополнительные линии управления 1 и 2 позволяют непосредственно тестировать подсхемы В и С.
Для улучшения тестируемости подсхемы В, заключенной между подсхемами А и С (рис. 8.42), используйте дополнительные мультиплексоры, обеспечивающие управляемость и наблюдаемость подсхемы В извне. На рис. 8.42 на каждый вход и выход подсхемы В введены мультиплексоры G и Н. При нормальной рабочей схеме они настраиваются на выполнение рабочей функции. При тестировании входы подсхемы В соединяются со входами блока, а его выходы — с выходами блока. При
Г™
Рис. 8.42. Улучшение тестируемости подсхем с помощью дополнительных мультиплексоров
этом предполагается, что выходы подсхемы С могут принимать нейтральное состояние, не влияющее на выход подсхемы В.
Для улучшения наблюдаемости используйте дополнительные контрольные точки. Число контрольных точек может быть сокращено,
Рис. 8.43. Улучшение наблюдаемости с помощью контрольных точек
если одни и те же точки использовать и как контрольные точки для наблюдения, и как дополнительные входы для управления, как показано на рис. 8.43.
Избегайте использования схем с неуправляемыми петлями обратной связи, которые затрудняют вычисление тестов и снижают полноту проверки.
Управление обратной связью (рис. 8.44, а) может осуществляться либо введением дополнительного вентиля (рис. 8.44, а), либо выводом обратной связи на внешние контакты (рис. 8.44,6), либо использованием трнстабильного элемента.
Избегайте использования избыточных схем. Избыточность маски, рует некоторые неисправности и ухудшает тестопригодность. В тех случаях, когда избыточность вводится по необходимости (например, из-за наличия состязаний в исходной схеме), в схему должна быть введена управляющая линия, позволяющая исключить избыточность при тестировании.
Рис. 8.44. Управление обратной связью:Рис. 8.44. Управление обратной связью:
Рис. 8.44. Управление обратной связью:
Рис. 8.44. Управление обратной связью:
а — исходная схема; б— введение дополнительного вентиля; в — вывод обрати >8 связи на внешние контакты
В схемах, подобных схеме, представленной на рис. 8.45, а, формирователя импульсов разветвление желательно обеспечить внешним монтажом (рис. 8.45,6).
В связи с тем, что методика и аппаратура проверки аналоговых и цифровых элементов различна, старайтесь, по мере возможности, размещать их на разных ТЭЗ. _
При разработке устройств и ТЭЗ учитывайте характеристики тестовой аппаратуры, на которой они будут проверяться.
Рис. 8 45. Пример избыточной схемы:Рис. 8 45. Пример избыточной схемы:я—исходная схема; б — исключение избыточности во время тестированияя—исходная схема; б — исключение избыточности во время тестированияПри наличии в схемах встроенных тактовых генераторов обеспечьте возможность проверки схем с отключенным тактовым генератором от внешних источников тактовых сигналов. С этой целью на выходе тактового генератора, до его нагрузки, необходимо включение блокировочного вентиля (рис. 8.46), позволяющего отключать тактовый генератор п включать вместо него тактовые сигналы стенда.
Рис. 8 45. Пример избыточной схемы:
Рис. 8 45. Пример избыточной схемы:
я—исходная схема; б — исключение избыточности во время тестирования
я—исходная схема; б — исключение избыточности во время тестирования
При наличии в ТЭЗ ИС ОЗУ обеспечьте их управляемость и наблюдаемость с помощью внешних контактов.
Для улучшения тестопригодности многоразрядных счетчиков используйте управляемые контрольные точки, делящие счетчик на части (рис. 8.47).
Используйте однотипное расположение ИС на плате, а также старайтесь унифицировать номера внешних контактов, предназначенных для одной и той же функции.
УправлениеУправлениеРис. 8.47. Улучшение тестопрн- годиостн счетчиковРис. 8.47. Улучшение тестопрн- годиостн счетчиковКонтрольная точкаКонтрольная точкаСхемаСхемаТактоВый генератор Внешний запретТактоВый генератор Внешний запретТестовая серияТестовая серияРис. 8.46. ОбеспечениеРис. 8.46. Обеспечениетестопри-тестопри-Для облегчения снятия и тестирования ТЭЗ с БИС (в частности, микропроцессорных БИС) старайтесь использовать разъемные колодки для установки БИС.
Управление
Управление
Рис. 8.47. Улучшение тестопрн- годиостн счетчиков
Рис. 8.47. Улучшение тестопрн- годиостн счетчиков
Контрольная точка
Контрольная точка
Схема
Схема
ТактоВый генератор Внешний запрет
ТактоВый генератор Внешний запрет
Тестовая серия
Тестовая серия
Рис. 8.46. Обеспечение
Рис. 8.46. Обеспечение
тестопри-
тестопри-
годности схем с встроенным тактовым генератором
модификация нотвинАционных СХЕМ С ЦЕЛЬЮ СОКРАЩЕНИЯ ДЛИНЫ ТЕСТА
В общем случае длина теста лишь частично характеризует трудоемкость тестирования. Большую роль играет алгоритмическая сложность и объем программы, вычисляющей тестовые наборы и реакции. Часто простота формирования тестовых наборов, например, с помощью генераторов случайных наборов или счетчика искупает такой недостаток, как большая длина теста. Тем не менее длину теста можно использовать в качестве одного из показателей трудоемкости тестирования.
Длина L теста комбинационной схемы может быть существенно сокращена при представлении булевой функции, соответствующей комбинационной схеме, в виде разложения Рида—Маллера, т. е.
In = Ч © сх хг © с2 хг ф . . . ф Сп Хп ф Сп+1 X, Х2 ф С„+2 X, х3 ф ... ф фс2п_1х1х2 ... хп. -8.34)
При таком представлении длина теста L = n+4+2nr, где и—число входных переменных функций, ап, — число входных переменных, входящих четное число раз в сумму произведений [65]. При добавлении в схеме еще одного выхода длина теста может быть сокращена до L = — п + 4.
В качестве примера рассмотрим функцию [(х^ х2, хз), заданную формулой Цх\, х2, Хз) =Х1Х2Хз + х2хз, которой соответствует схема, приведенная на рис. 8.48, <2. Для преобразования выражения в разложение Рида—Миллера необходимо преобразовать отрицание в соответствии с выражением x, = xi®l и заменить все переменные с отрицанием в сумме произведений (8.34). Операция логического сложения при наличии взаимоисключающих произведений может заменяться операцией сложения по модулю 2.
Применив также правила х, (х/ф х*) =XiX/©x,xs и 0®f(xi, х2,.... х„) а= f (хь х2,.... хп), получим
/ (Ч. Чг. *з) = Ч х2 х3 + х2 х3 = х, х2 х3 ф х2х3 =
= ч Х3 (х2 Ф 1) Ф Х2 (х3 ® 1) = X, Х2 Х3 ф Xi х3 © х2 х3 ф х2 == 0 © Х2 ф Xj Х3 © Х2 Х3 ф X! х2 х3.
Реализация схемы показана на рис. 8.48, б. Для обнаружения неисправностей схем М2 необходимо четыре тестовых набора:
D xt х2 х30 0 0 00111,
10 0 0 1111
Кроме того, для проверки схемКроме того, для проверки схемИ необходимы п тестовых наборов:
Кроме того, для проверки схем
Кроме того, для проверки схем
Dхгх,х3
XОГ1
22X101,
2
2
X11О
где X — безразличное состояние.
Еще два теста необходимы для проверки переменной х$, входящей четное число раз в сумму произведения (пг=1).
Дополнительные 2щ тестовых набора можно исключить, если ввести схем) И с наблюдаемым выходом, входными сигналами которой яв-
Рис. 8.48. Пример схемы к разложению Рида-ЛАаллера:а — исходная схема; б — реализация схемы в виде разложения Рнда-МаллераРис. 8.48. Пример схемы к разложению Рида-ЛАаллера:а — исходная схема; б — реализация схемы в виде разложения Рнда-Маллера
Рис. 8.48. Пример схемы к разложению Рида-ЛАаллера:
а — исходная схема; б — реализация схемы в виде разложения Рнда-Маллера
Рис. 8.48. Пример схемы к разложению Рида-ЛАаллера:
а — исходная схема; б — реализация схемы в виде разложения Рнда-Маллера
ляются переменные, содержащиеся четное число раз в сумме произведений. В приведенном примере в качестве дополнительного выхода схемы используется переменная Xi, так как только она встречается 2 раза.
Другим способом модификации комбинационных схем с целью сокращения длины теста является обеспечение управляемости и наблюдаемости каждого элемента схемы. При этом каждая схема И, ИЛИ, НЕ представляется в виде двухвходовых вентилей с таким числом дополнительных входов и выходов, которые позволяют проверить каждый элемент подсхемы при помощи трех входных наборов. Этот способ представления трехвходового элемента И показан на рис. 8 49. Исход-
Рис. 8.49. Пример модификации схемы И
070
ный элемент заменен подсхемой с одним дополнительным управляющим входом (с) и двумя дополнительными выходами (Ot и О2). В такой подсхеме наличие любой одиночной константной неисправности проверяется тремя входными наборами.
МОДИФИКАЦИЯ СХЕМ ДЛЯ РАЗДЕЛЬНОГО ТЕСТИРОВАНИЯ КОМБИНАЦИОННЫХ СХЕМ И ТРИГГЕРОВ
Трудоемкость тестирования может быть сокращена, если комбинационные схемы и триггеры проверять раздельно. Такая возможность появится, если преобразовать триггеры схемы в элементы объединенного сдвигового регистра. При этом любой триггер схемы можно установить и опросить с помощью операции сдвига. Этот способ установки и опроса состояния триггеров получил название сканирования [80].
Тестирование схем с использованием сканирования выполняется следующим образом:
устанавливается тестовый режим и триггеры путем сдвига загружаются тестовой информацией;
устанавливается нормальный (рабочий) режим и выполняется один такт работы схемы. При этом состояния внутренних триггеров и входов схемы определяют значения входных сигналов комбинационных схем, а выходные сигналы последних поступают в соответствующие тршгеры;
устанавливается тестовый режим и новые состояния триггеров сдвигаются в устройство проверки, где сравниваются с ожидаемыми значениями.
Для пояснения вариантов модификации схем ограничимся рассмотрением D-триггеров, управляемых одним и тем же синхроимпульсом. Естественно, что все рассуждения могут быть распространены и на другие типы триггеров (DS, /К) и синхросерии, содержащие более одного синхроимпульса. Существует два типа D-триггеров: одноступенчатые и двухступенчатые. Выход первого из них изменяется, если вход D-триггера изменяет свое значение во время активного сигнала на синхровходе триггера. Выход второго принимает значение его D-входа, только когда синхровход изменяет свое состояние. Последующие изменения состояния D-входа не влияют на состояние триггера до очередного изменения состояния сипхровхода. Сдвиговые регистры могут быть реализованы на двухступенчатых триггерах. Для реализации сдвигового регистра на одноступенчатых триггерах к каждому из них должен быть добавлен второй триггер того же типа.
Рассмотрим различные варианты тестопригодиой модификации исходной схемы, приведенной на рис. 8 50. Триггеры исходной схемы могут быть одно- и двухступенчатыми. Рассмотрим сначала варианты с дв) xctj пепчатыми триггерами.
Вариант I. Каждый двухступенчатый триггер исходной схемы заменяется триггером, обозначаемым, как показано на рис. 8.51, а, со схемой реализацией, показанной на рис. 8.51,6. Модифицированная сХема, показанная на рис. 8.51, в, работает следующим образом: сигнал управления Г=0 задает нормальный режим работы (во время которого триггер работает по входу D/) и схема работает так же, как и исходная. На DZ-входы триггеров поступают сигналы с выходов Уь У2,.... У« комбинационных схем. В режиме тестирования сигнал управления Т = 1 и триггеры работают по входам D2, D2t = Qt-i для i=2,.... s, образуя сдвиговый регистр. Вход хп схемы соединяется со входом D2\, образуя вход сдвигового регистра, выход 0$ которого соединяется с выходом zm схемы.
Рис 8 50. Пример схемы с триггерами
Рис. 8 51 Тестопригодная модификация схемы к варианту 1:
а — обозначение тритгера; б —реализация триггера; 6 — модифицированная схема
Тестирование схемы начинается с триггеров. В этом режиме (Т=\) триггеры проверяются путем сдвига единиц на фоне нулей и нуля на фоне единиц. Затем проверяются комбинационные схемы. Для этого:
устанавливается режим тестирования (сдвига) Т=1;
в триггерах схемы путем сдвига устанавливается тестовый набор;
на входах х, схемы устанавливаются тестовые значения;
устанавливается нормальный режим (Т=0) и проверяются состояния выходов z6 схемы;
активизируются С-входы триггеров путем разрешения на выдачу синхроимпульсов одного такта;
устанавливается режим тестирования (сдвига) Г= 1 и полученные состояния триггеров сдвигаются по линии zm в устройство проверки для сравнения результатов с эталонными.
Вариант 2. Каждый двухступенчатый триггер исходной схемы преобразуется в двухвходовой триггер (рис. 8 52). Процесс тестирования
Рис 8 52. Тестопригодиая модификация схемы к варианту 2
аналогичен описанному выше с той лишь разницей, что переключения между тестовым и нормальным режимами обеспечиваются не сигналом управления Т, а системными (ССИ) или тестовыми (ТСИ) синхроимпульсами.
Вариант 3. В том случае, когда исходная схема реализована на одноступенчатых D-триггерах, модификация схемы с целью создания сдвигового регистра обеспечивается путем добавления к каждому триггеру дополнительного и преобразования основного триггера в двухвходовой (рис. 8.53). Сдвиг тестовой информации в регистр по входу тестовых данных (ТД) обеспечивается тестовыми синхроимпульсами ТСИ1 и ТСИ2.
Вариант 4. В этом варианте сдвиговый регистр размещается отдельно от схемы (рис. 8.54). Модификация исходной схемы состоит в преобразовании триггеров в двухвходовые, как в вариантах 1—3. Тип триггера остается таким же, как в исходной схеме.
Рис. 8.53. Тестопригодная модификация схемы к варианту 3
Рис 8.54. Тестопригодная модификация схемы к варианту 4 286
В режиме тестирования схемы сдвиговый регистр загружается тестовой информацией. По сигналу приема информация с выходов сдвигового регистра принимается в соответствующие триггеры основной схемы по входу D2. После выполнения одного такта работы схемы (разрешение ССИ на один такт) новые состояния триггеров основной схемы принимаются в соответствующие им триггеры сдвигового регистра и далее сдвигаются в устройство проверки для сравнения с ожидаемыми результатами.
Вариант 5. В этом варианте, называемом сканированием с произвольным доступом, триггеры исходной схемы также преобразуются в двухвходовые. Установка произвольного триггера в требуемое состояние выполняется с помощью схемы адресации, подобной применяемой в ЗУ с произвольным доступом (рис. 8.55). Конкретный триггер выбирается с помощью дешифраторов адресов X и У, которые разрешают подачу тестовых синхроимпульсов (ТСН) на вход С2 триггера. При этом триггер принимает тестовую информацию по входу D2. Триггеры
Рис. 8.55. Тестопригодная модификация схемы к варианту 5
исходной схемы могут быть как одно-, так и двухступенчатыми. Как видно из рис. 8.54, выборка триггера для установки в единицу одновременно делает его наблюдаемым. Таким образом, сканирование с произвольным доступом делает управляемым и наблюдаемым любой триггер схемы и позволяет с небольшими затратами увеличивать их число.
Число дополнительных входов, требуемых в данном варианте, весьма велико, но может быть уменьшено, если регистры адреса сделать сдвиговыми и загружать путем сдвига по одному входу.
Вариант 6. Введение в тестируемую схему возможности сканирования внутренних триггеров повышает ее тестопригодность. Тем ие менее сложность устройства проверки остается значительной. Для ее уменьшения внешним контактам схемы (ТЭЗ, БИС) придаются триггеры, совокупность которых также образует сдвиговый регистр. Триггеры внешних контактов, объединенные в сдвиговый регистр, будем называть внешней цепочкой в отличие от внутренней, объединяющей внутренние триггеры. Благодаря этому варианту модификации схем появляется возможность тестирования всех межсоединений устройства, содержащего ТЭЗ или БИС, спроектированные в соответствии с рекомендациями данного варианта. Реализация схемы с внешней цепочкой показана на рис. 8.56, а, а реализация входного и выходного элементов внешней цепочки — на рис. 8.56, б—г.
Управление режимами работы и тестирования осуществляется через внешние контакты сигналами Tl, Т2, ТД (тестовые данные), ТСИ (тестовые синхроимпульсы), ПРМ1, ПРМ2 (прием).
В нормальном режиме работы Т1=\, Т2=0. Сигналы с входных контактов через элементы 2И—ИЛИ поступают на вход схемы, а с ее выходов через аналогичные элементы — на выходные контакты.
При тестировании триггеров внутренней и внешней цепочек Г/ = 0, Т2=0. На входы ТД и ТСИ схемы подаются тестовые сигналы и синхроимпульсы, обеспечивающие сдвиг тестовых сигналов по цепочкам.
При тестировании внешних связей Г/=0, Т2=\. Триггеры, соединенные с выходными контактами внешней цепочки через входы ТД и ТСИ, загружаются единицами. Поскольку Т2=\, единицы поступают на выходные контакты и далее на связанные с ними входные контакты других БИС (ТЭЗ). По сигналу ПРМ1 сигналы через входные контакты принимаются в соответствующие триггеры внешней цепочки. Для их опроса Т1 и Т2 устанавливаются в нуль и состояния цепочек путем сдвига (активизации ТСИ) передаются в устройство проверки для анализа.
При тестировании самой схемы 77 = 0, Т2=1. По входам ТД и ТСИ загружаются внутренняя и внешняя цепочки триггеров. Разрешается поступление системных синхроимпульсов (ССИ) одного рабочего теста.
Установившиеся состояния выходов по сигналу ПРМ2 принимаются в триггеры выходных контактов внешней цепочки.
Рис. 8.56. Тестопригодная реализация схемы с возможностью тестирования соединений:
а — реализация схемы (MUX— мультиплексор); б — обозиачеиие входного элемента; в — обозначение выходного элемента; г — схема входного и выходного элементов
Для их опроса Т1 и Т2 устанавливаются в нуль и состояние цепочек путем сдвига (активизации ТСИ) передается в устройство проверки для анализа.
8.12. МОДИФИКАЦИЯ СХЕМ ДЛЯ САМОТЕСТИРОВАНИЯ
Существуют следующие варианты схем с самотестированием:
внешний генератор тестов и встроенный анализатор результатов;
встроенный генератор тестов и внешний анализатор результатов;
встроенные генератор тестов и анализатор результатов.
Рассмотрим наиболее общий третий вариант. На объем встроенных средств самотестирования накладываются жесткие ограничения. Поэтому в качестве элементов генератора тестов и анализатора результатов стараются использовать уже имеющиеся в схеме триггеры. Так, например, триггеры внешней цепочки сканирования используют в качестве составляющих генератора псевдослучайных тестовых наборов (ГПСН)
и сигнатурного анализатора (АС). Описываемый вариант схемы отличается от варианта 6, описанного в § 8.11, только тем, что часть входных триггеров используется при самотестировании в качестве ГПСН, а часть выходных триггеров — в качестве СА (рис. 8.57). Допол: л- телыю к режимам, описанным в варианте 6 § 8.11, имеется режим са-
Вход тестовых данныхВход тестовых данныхГГенератор^.псевдослучайных .I р|, I наборов I| Вховные |. Й триггеры .ГГенератор^.псевдослучайных .I р|, I наборов I| Вховные |. Й триггеры .триггерытриггерыMZMZLL_LL_ВнутренниетриггерыВнутренниетриггерыСигнатирныи | анализаторСигнатирныи | анализаторВыходные триггерыВыходные триггерыУправлениеУправлениеБлокировка САБлокировка САВыход тестовых данныхВыход тестовых данных
Вход тестовых данных
Вход тестовых данных
ГГенератор^
.псевдослучайных .
I р|, I наборов I
| Вховные |
. Й триггеры .
ГГенератор^
.псевдослучайных .
I р|, I наборов I
| Вховные |
. Й триггеры .
триггеры
триггеры
MZ
MZ
LL_
LL_
Внутренниетриггеры
Внутренниетриггеры
Сигнатирныи | анализатор
Сигнатирныи | анализатор
Выходные триггеры
Выходные триггеры
Управление
Управление
Блокировка СА
Блокировка СА
Выход тестовых данных
Выход тестовых данных
Рис. 8 57. Схема с самотестированием
мместнрования. В этом режиме сначала загружаются триггеры внешней и внутренней цепочек. Затем включается ГПСН, тестовый набор поступает во внутренние схемы, на один такт включаются системные синхроимпульсы и результирующее состояние схемы принимается в параллельный СА. После этого подаются сигналы сдвига и состояния всех внутренних триггеров поступают в СА, который в этот момент времени работает в качестве последовательного СА. Одновременно производится сдвиг входных триггеров, ГПСН формирует новый тестовый набор и упомянутый выше цикл повторяется. После выполнения достаточного числа циклоп тестирования сигнатура сдвигается по выходу для анализа. Полностью автономное самотестирование можно обеспечить, если хранить в Модуле эталонную сигнатуру и иметь схему сравнения.
Глава 9
ОСОБЕННОСТИ ЭКСПЛУАТАЦИОННОГО
ОБСЛУЖИВАНИЯ МИКРОПРОЦЕССОРНОГО ОБОРУДОВАНИЯ И ПЕРСОНАЛЬНЫХ КОМПЬЮТЕРОВ
ПРЕДВАРИТЕЛЬНЫЕ ЗАМЕЧАНИЯ
На подходы к организации эксплуатационного обслуживания микропроцессорных устройств и систем, микроЭВМ, персональных компьютеров, а также к созданию аппаратурных и программных средств поддержки их обслуживания существенное влияние оказывают следующие факторы:
массовое распространение микропроцессорного оборудования, микроЭВМ и персональных компьютеров;
рассредоточение этих микровычислительных средств по территории страны;
эксплуатация микровычислительных средств пользователями, не имеющими специальной подготовки в области вычислительной техники. Отсутствие на местах эксплуатации специалистов по техническому обслуживанию микровычислительных средств;
компактность и дешевизна микровычислительных средств, препятствующие (по крайней мере в настоящее время и в ближайшем будущем) использованию логически и технически сложных средств поддержки обслуживания, таких как сервисные процессоры и средства дистанционного обслуживания (см. гл. 6 и 7);
ограниченность во многих случаях (особенно в специализированных микропроцессорных устройствах, встраиваемых микроЭВМ и др.) вычислительных ресурсов, в том числе объема памяти, которые могут быть предоставлены для реализации средств повышения обслуживаемости (средств контроля и диагностики неисправностей и др.);
специфические конструкторско-технологические, логические, схемотехнические и архитектурные особенности микропроцессорных средств, затрудняющих техническое обслуживание основанных на их использовании микроЭВМ и персональных компьютеров.
Отметим следующие особенности микропроцессорных средств, существенные для рассматриваемой в настоящей главе проблемы.
Высокая степень интеграции и функциональная сложность БИС микропроцессорных средств при ограниченном 19* 29)
числе внешних выводов делают невозможным их разбиение на функциональные блоки с собственными внешними (доступными для контрольных и других операций) входами и выходами. Одновременное подключение к линиям передачи информации нескольких устройств (блоков) затрудняет определение места неисправности.
Сочетание высокого быстродействия микропроцессорных БИС (тактовая частота несколько мегагерц) с параллельной передачей информации, в том числе по мультиплексируемым и двунаправленным линиям, приводит к необходимости при техническом обслуживании наблюдения и фиксации соответствующим образом синхронизированных сигналов на многих линиях одновременно.
Отмеченные особенности делают малоэффективным использование при техническом обслуживании микропроцессорной аппаратуры сравнительно простых логических пробников и двух—четырех лучевых осциллографов, вместо них прибегают к помощи более сложных устройств — многоканальных логических анализаторов, генераторов стимулирующих воздействий, бесконтактных измерителей импульсных сигналов (см.гл. 17) и др.
Ориентация микропроцессорных устройств в основном на ручное обслуживание малоквалифицированным пользователем, а также характерное для последних разработок стремление снабдить микропроцессорные устройства некоторыми встроенными средствами для поддержки процесса тестирования сделали особенно актуальной задачу сжатия связанной с тестированием информации, которая решается, главным образом, на основе сигнатурного анализа.
СИГНАТУРНЫЙ АНАЛИЗ
Во многих случаях для микропроцессорной аппаратуры и микроЭВМ не удается применить автоматическое диагностирование на основе встроенных или внешних тестовых средств диагностирования или их комбинаций из-за ее сложности и высокой стоимости. Тогда следует позаботиться об облегчении ручного обслуживания, в том числе ручного поиска неисправностей, с тем чтобы эту работу мог выполнять персонал невысокой квалификации.
Существенной проблемой при ручном обслуживании является сжатие информации о правильных (эталонных) и наблюдаемых при контроле реакциях аппаратуры на тестовые последовательности.
• Необходимость сжатия двоичных последовательностей (векторов) произвольной длины диктуется тем, что современная микропроцессорная техника использует достаточно сложные функциональные узлы, которые требуют для диагностирования большого числа тестовых векторов, с тем чтобы обеспечивалась проверка всех возможных состояний устройства.
Сжатие информации облегчает фиксирование правильных (эталонных) реакций в технической документации и восприятие оператором результатов проверки.
В гл. 8 описано несколько способов сжатия информации о реакциях аппаратуры на тестовые последовательности (компактное тестирование). Так, может подсчитываться и указываться в документации правильное число логических переключений выходного сигнала при подаче тестовой последовательности. Другой способ состоит в подсчете и указании в технической документации контрольной суммы выходных векторов, порожденных совокупностью тестов. Недостаток этих методов состоит в том, что при диагностическом (проверочном) подсчете числа переключений или контрольной суммы выходных векторов контрольная аппаратура, реализующая эти подсчеты, должна иметь цепи распространения переносов при суммировании, что замедляет процесс проверки и усложняет контрольную аппаратуру.
Перспективным направлением в повышении обслуживаемости микропроцессорной аппаратуры и микроЭВМ явля- е!ся сигнатурный анализ, предполагающий использование циклических избыточных кодов для сжатия длинных двоичных кодов — реакций аппаратуры на тестовые последо- вагельносги в короткий, обычно 4-, 5-разрядный шестнадцатеричный код, который просто индицируется и сравнивается с указанным в документации для каждой контролируемой точки контрольным кодом (сигнатурой) [33, 39].
При сигнатурном анализе используется следующий принцип сжатия данных. Двоичный вектор может быть представлен полиномом G(x) с двоичными коэффициентами. Например, двоичному вектору 110011 соответствует полином х5+х44-х+1. Суммирование, умножение и деление двоичных полиномов выполняется путем операций суммирования по модулю 2 над двоичными коэффициентами, т. е. без переноса между соседними разрядами. Деление двоичных полиномов может производиться с помощью сдвиговых регистров с линейными обратными связями. Контролируе-
мая двоичная последовательность или, другими словами, полином G(x) поступает с проверяемого выхода схемы на сдвиге вый регистр, в котором выполняется деление полинома xkG^x) (где к— число разрядов сдвигового регистра) на порождающий полином Р(х) степени к. Результатом деления является остаток R(x), получающийся в сдвиговом регистре после приема входной последовательности. Эго и есть сигнатура. Рассматриваемый процесс описывается формулой
xfe G(x) = Q (х) Р (х) (g R (х),
где Q(x) — частное; R(x)— остаток. Вид порождающего полинома Р(х) определяется схемой обратных связей регистра.
Для сжатия длинных двоичных последовательностей и получения кодов сигнатур используется сигнатурный анализатор (рис. 9.1), основу которого составляет сдвиговый регистр с линейными обратными связями, замыкаемыми через сумматор по модулю 2, на вход которого также поступает последовательность бит, снимаемая с контролируемой точки схемы. Сдвиговый регистр снабжается индикаторами, указывающими содержимое регистра (сигнатуру) в шестнадцатеричном коде. При этом для облегчения восприятия сигнатуры шестнадцатеричные цифры изображаются следующими символами: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, С, F, Н, Р, U.
Для проверки устройства щуп сигнатурного анализатора присоединяется к контролируемому выходу схемы. На входы контролируемой схемы поступает последовательность тестов( вектор-стимулов). Каждому вектор-стимулу соответствует 1 бит в выходной последовательности (выходном векторе), снимаемой с контролируемого выхода.
Подача последовательности тестовых векторов, снятие с контролируемой точки последовательности бит, подача их на вход сумматора по модулю 2 и работа сдвигового регистра синхронизируются одной и той же серией тактовых сигналов.
Процесс получения сигнатуры предполагает задание некоторого фиксированного интервала времени—«окна», соответствующего определенному числу тактовых сигналов, а следовательно, и такому же числу вектор-стимулов и вызываемых ими бит в выходной последовательности, поступающей на вход сигнатурного анализатора. Анализатор содержит схему формирования «окна», на входы которой
СигнатураСигнатураРегистр сдвига влевоРегистр сдвига влевоКонтролируенел последователь - несть битКонтролируенел последователь - несть битИсходноеИсходноей I вй I вй 5 йй 5 й,й,й7234567891011121314151617181972345678910111213141516171819\отвод 7Отвод 2\отвод 7Отвод 2Сумматор по модулю ZСумматор по модулю ZОтвод 3Отвод 3Отвод 4Отвод 44-j4-jСодержимое регистраСодержимое регистраО О 0 0 0 0 0 0 0 0 О 0 0 0 0 0О О 0 0 0 0 0 0 0 0 О 0 0 0 0 01171177 77 777 77 777 777 777 777 77777777777777777 7777 7 О77 7777 7 О777777 7 7 О 7 77 7 7 О 7 77 77777 О7 7 О7 77777 О7 7 О7 77 77 7 О 1 77 77 77 7 О 1 77 7 77 77 Z77 7 77 77 Z77 077 077О7ОО ОО 7О ОО 7Очередное сигнал на входе регистра .Очередное сигнал на входе регистра .Очереднойбит последо-вательностиОчереднойбит последо-вательности7 777 О777 777 О777 7 77 О 77 О7 7 77 О 77 ОО О О 1 7 О О 7О О О 1 7 О О 77 77 77 7 Z77 7 О О7 О7 О7 77 77 7 Z77 7 О О7 О7 О7 77 7 7 7 О7 7 О а 7 о 7 о77 77 7 7 7 О7 7 О а 7 о 7 о77 7 7 7 7 7 0 7 7 О О 7 О 7 Z7 7 О7 7 7 7 7 7 0 7 7 О О 7 О 7 Z7 7 О7 7 7 7 7 7 О 7 7 О О 7 О7 О 7 О О7 7 7 7 7 7 О 7 7 О О 7 О7 О 7 О ОЕ7 7 77 7 О' 7 1 О’ О' 7 ОЕ7 7 77 7 О' 7 1 О’ О' 7 Ои 7 7 7 7 7 U [7и 7 7 7 7 7 U [77171О 7 О 9 7О 7 О 9 7О о 7 О 7 Z7 7 О О 7 7О о 7 О 7 Z7 7 О О 7 77 7ЕО о о 7 7 7 7 7 7 7 77 7ЕО о о 7 7 7 7 7 7 7 7
Сигнатура
Сигнатура
Регистр сдвига влево
Регистр сдвига влево
Контролируенел последователь - несть бит
Контролируенел последователь - несть бит
Исходное
Исходное
й I в
й I в
й 5 й
й 5 й
,й
,й
7
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
7
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
\отвод 7
Отвод 2
\отвод 7
Отвод 2
Сумматор по модулю Z
Сумматор по модулю Z
Отвод 3
Отвод 3
Отвод 4
Отвод 4
4-j
4-j
Содержимое регистра
Содержимое регистра
О О 0 0 0 0 0 0 0 0 О 0 0 0 0 0
О О 0 0 0 0 0 0 0 0 О 0 0 0 0 0
1
1
7
1
1
7
7 7
7 7
7
7 7
7 7
7
7 7
7
7 7
7
7 7
7
7 7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7 7
7
7
7 7 О
7
7 7
7
7
7 7 О
7
7
7
7
7
7 7 7 О 7 7
7 7 7 О 7 7
7 7
7
7
7
7 О
7 7 О
7 7
7
7
7
7 О
7 7 О
7 7
7 7
7 7 О 1 7
7 7
7 7
7 7 О 1 7
7 7 7
7 7
7 Z7
7 7 7
7 7
7 Z7
7 07
7 07
7
О
7
О
О О
О 7
О О
О 7
Очередное сигнал на входе регистра .
Очередное сигнал на входе регистра .
Очереднойбит последо-вательности
Очереднойбит последо-вательности
7 7
7
7 О
7
7
7 7
7
7 О
7
7
7 7 7
7 О 7
7 О
7 7 7
7 О 7
7 О
О О О 1 7 О О 7
О О О 1 7 О О 7
7 7
7 7
7 7 Z7
7 7 О О
7 О
7 О
7 7
7 7
7 7 Z7
7 7 О О
7 О
7 О
7 7
7 7 7 7 О
7 7 О а 7 о 7 о
7
7 7
7 7 7 7 О
7 7 О а 7 о 7 о
7
7 7 7 7 7 7 0 7 7 О О 7 О 7 Z7 7 О
7 7 7 7 7 7 0 7 7 О О 7 О 7 Z7 7 О
7 7 7 7 7 7 О 7 7 О О 7 О
7 О 7 О О
7 7 7 7 7 7 О 7 7 О О 7 О
7 О 7 О О
Е
7 7 7
7 7 О
' 7 1 О
’ О
' 7 О
Е
7 7 7
7 7 О
' 7 1 О
’ О
' 7 О
и 7 7 7 7 7 U [7
и 7 7 7 7 7 U [7
7
1
7
1
О 7 О 9 7
О 7 О 9 7
О о 7 О 7 Z7 7 О О 7 7
О о 7 О 7 Z7 7 О О 7 7
7 7
Е
О о о 7 7 7 7 7 7 7 7
7 7
Е
О о о 7 7 7 7 7 7 7 7
20 1 1 1 0 1 0 0 1 0 1 0 1 0 0 1 1
Рис. 9.1. Принцип действия сигнатурного анализатора
поступают сигналы ПУСК, ТАКТ, СТОП. После закрытия «окна» (остановки сигнатурного анализатора) на сдвиговом регистре остается 16-битный остаток, который индицируется на 7-элементных индикаторах в виде четырех шестнадцатеричных цифр. Полученная на индикаторах сигнатура сравнивается с эталонной, указанной в документации для данной контролируемой точки.
Эталонные сигнатуры могут быть получены путем проверки с помощью сигнатурного анализатора заведомо исправных схем или расчетным путем на ЭВМ.
На рис. 9.1 показан процесс формирования сигнатуры
для входной последовательности 11111100000111111111, соответствующей «окну» длительностью 20 тактов. На протяжении первых семи тактов по цепям обратной связи поступают 0 и в регистр вдвигаются без каких-либо изменений первые 7 бит входной последовательности. После седьмого такта по обратной цепи от первого отвода (седьмой разряд регистра) на сумматор по модулю 2 поступает 1, которая в восьмом такте заносится в первый разряд регистра (в восьмом разряде входной последовательности стоит 0). Аналогичным образом работает анализатор в последующие такты.
После закрытия «окна» (после 20 тактов) в регистре образуется 16-битный остаток 1110 1001 0101 ООП, соответствующий сигнатуре Н953.
Метод сигнатурного анализа требует небольшого дополнительного оборудования и достаточно простого универсального переносного сигнатурного анализатора. Тест-программы проверки аппаратуры могут быть записаны в БИС постоянных ЗУ, размещаемых в самом проверяемом оборудовании.
При выполнении диагностической процедуры оператор последовательно просматривает в тестовом режиме сигнатуры на выходах устройства и при обнаружении расхождения с указанными в документации сигнатурами переходит к просмотру сигнатур в точках неисправной цепи, двигаясь от выхода к входу, пока не найдет неисправный элемент. При использовании сигнатурного анализа поиск неисправностей в микропроцессорной аппаратуре становится похожим на обслуживание телевизора, когда мастер, ремонтирующий его, с помощью тестера и щупа сравнивает сигналы в данной цепи с сигналом, указанным на чертеже схемы, и при обнаружении расхождения для определения места неисправности выполняет просмотр сигналов при движении от выхода к входу схемы.
Введение контрольной цифровой информации (сигнатур) в техническую документацию на цифровую аппаратуру очень удобно, так как для этой аппаратуры не представляется возможным документировать признаки правильной работы схем в виде параметров напряжений, токов или даже форм сигналов.
Метод сигнатурного анализа обладает высокой достоверностью, которая в данном случае определяется вероятностью того, что различающиеся двоичные векторы имеют неодинаковые сигнатуры. Любая одиночная ошибка в вы-
ходном двоичном векторе обнаруживается с вероятностью, равной единице. При числе ошибок более одной вероятности обнаружения ошибок равна
1 — 1/2", где п — число разрядов сигнатурного анализатора. При п=16 вероятность равна 0,99998. Это означает, что прн неодиночной ошибке в выходной последовательности можно ожидать, что не более 0,002 % различных последовательностей будут иметь одинаковые сигналы.
При необходимости тестирования достаточно сложной микромашинной аппаратуры для повышения достоверности результатов сигнатурного анализа можно увеличить длину сдвигового регистра сигнатурного генератора. Например, уже при /г = 20 вероятность обнаружения неисправности, порождающей многократную ошибку в проверяемой двоичной последовательности, составляот 0,999999.
Совпадение сигнатур возможно только в том случае, когда при формировании сигнатуры последующие ошибки в выходном векторе компенсируют влияние предыдущих ошибок (искажений). Можно показать, что при двойной ошибке компенсация имеет место, когда эти ошибки разделены 2"—1 нулями, что является маловероятным событием.
Точки съема сигналов обратной связи в сдвиговом регистре выбираются из условия получения наибольшей достоверности результата.
Чтобы можно было использовать сигнатурный анализатор для локализации неисправностей, необходимо при разработке микропроцессорного устройства предусмотреть в нем средства хранения или генерации тестовой последовательности (тестовой программы), а также формирования синхронизированных с выдачей тестов (вектор-стимулов) сигналов ПУСК, ТАКТ и СТОП для управления анализатором. Могут потребоваться и средства разрыва цепей обратных связей в схемах устройства во избежание неоднозначности сигнатур.
ОСОБЕННОСТИ ОРГАНИЗАЦИИ ЭКСПЛУАТАЦИОННОГО ОБСЛУЖИВАНИЯ ПЕРСОНАЛЬНЫХ КОМПЬЮТЕРОВ
Массовый характер производства персональных компьютеров (ПК), их широкое распространение по всей стране, разнообразие форм их использования (вплоть до
домашнего употребления) и одновременно сравнительно большая сложность аппаратуры и программного обеспечения ПК требует самого пристального внимания к организации их технического обслуживания и созданию соответствующих специфике ПК аппаратурно-программных средств поддержки обслуживания.
До недавнего времени наиболее сложной аппаратурой в наших домах были телевизоры и видеомагнитофонные устройства. Но ведь подобное оборудование — дисплей и магнитофоны только составные части персональных компьютеров.
Массовое производство и широкое использование ПК могут оказать заметный эффект на развитие экономики, науки и образования только при условии высокой надежности ПК и создании системы повсеместного их обеспечения соответствующим техническим обслуживанием.
На рис. 9.2 представлена структура персонального компьютера.
Пользователь, не имеющий специальной подготовки, должен быть в состоянии самостоятельно произвести необ-
Рис. 9.2. Структура персонального компьютера ЕС-1840
ходимые подсоединения устройств, входящих в комплект ПК, и запустить его в работу. Более того, пользователь должен сам, взаимодействуя с ПК, обучиться на нем работать. Это обеспечивается соответствующей эксплуатационной документацией, а главное, «дружественным» к пользователю программным обеспечением ПК, содержащим обучающие средства. Поиск неисправностей в ПК должен реализоваться в форме диалогового взаимодействия человека с компьютером, позволяющим справляться с диагностическими процедурами неквалифицированному пользователю.
Организация обслуживания ПК предполагает создание системы распространения программного обеспечния, исключительно быстро развивающегося усилиями как разработчиков ПК, так и самих пользователей ПК.
В нашей стране только складывается система эксплуатационного обслуживания персональных компьютеров. Поэтому рассмотрим этот вопрос на примере фирмы IBM (США), являющейся самым крупным в мире производителем персональных компьютеров [51].
Система обслуживания ПК фирмы IBM имеет иерархическую структуру: а) национальный центр поддержки IBM; б) местное отделение обслуживания; в) уполномоченный агент по продаже ПК фирмы IBM.
Гарантийный срок для фирмы IBM составляет 3 мес. Гарантийное обслуживание состоит в ремонте основного электронного («системного») блока компьютера, замене дисплея, печатающего устройства или клавиатуры. Гарантийное обслуживание может быть продлено путем заключения договоров о продлении гарантии (на срок 12 мес). В дальнейшем обслуживание производится по ежегодным договорам на обслуживание.
Пользователь для получения гарантийного обслуживания обращается по телефону в Национальный центр поддержки, сообщая при этом результаты работы программы диагностики неисправностей и куда (в Национальный центр или местное отделение обслуживания) он направит блок для ремонта.
По получении неисправного блока фирма выполняет ремонт за 2—3 дня.
При выходе из строя дисплея, печатающего устройства или клавиатуры фирма в течение 24 ч присылает в местное отделение обслуживания новый блок для замены.
По договору о продлении гарантий фирма в радиусе
50 км от местного отделения обслуживания сама забирает неисправный блок и заменяет его новым блоком. ’
Функционирует консультационный центр по персональным компьютерам, куда пользователь ПК может позвонить и получить консультацию об использовании программных средств ПК. При возникновении трудностей с аппаратурными средствами ПК пользователь может получить консультацию по телефону в национальном центре поддержки фирмы.
ДИАЛОГОВАЯ СИСТЕМА ДИАГНОСТИРОВАНИЯ
НЕИСПРАВНОСТЕЙ В ПЕРСОНАЛЬНОМ КОМПЬЮТЕРЕ
Рассмотрим использование диалоговой системы диагностирования (тестирования) ПК на примере профессионального персонального компьютера (ППК) ЕС-1840.
Для повышения надежности всей системы, состоящей из ППК и его программного обеспечения, все программные средства и данные, использующие дискеты, в том числе ДОС-дискету, должны быть продублированы (скопированы на дискеты-дублеры).
Для отыскания неисправностей в ППК используется системная дискета с тестами, позволяющими установить, какой из основных блоков ПК (системный, клавиатура, печатающее устройство или дисплей) неисправен.
Основу тестовых программных средств образуют: набор тестов; управляющая программа, загружающая тесты в оперативную память и управляющая их выполнением; функциональная программа, предназначенная для обработки прерываний и загрузки некоторых тестовых программ. Кроме того, имеются сервисные программы, производящие разметку и копирование тестовых дискет.
Рассмотрим диагностические процедуры и сопровождающие их диалоговые контакты, предусмотренные «Руководством пользователя ПП ЭВМ ЕС-1840».
Предварительно следует проверить правильность (в соответствии с инструкцией по эксплуатации) подсоединения блоков ППК-
Перед использованием диагностической дискеты производится процедура предварительной проверки. Включается тумблер на задней стенке системного блока и под управлением программы, хранящейся в ПЗУ, выполняется предварительная проверка напряжения питания и основных микросхем ППК. Через несколько секунд после включения
тумблера в левом верхнем углу экрана появится мигающий курсор и сообщение (нарастающим итогом) о емкости ОЗУ, прошедшего предварительную проверку.
Через несколько десятков секунд по окончании предварительной проверки ОЗУ раздается короткий звуковой сигнал, что указывает на успешное завершение процедуры предварительной проверки.
Если не раздался короткий звуковой сигнал и на экране нет изображения или на нем появляются случайные знаки, то это указывает на неисправность системного блока. Если после звукового сигнала на экране видно беспорядочное изображение, то неисправен дисплей.
Печатающее устройство получает питание непосредственно от сети и имеет собственный встроенный блок проверки; проверка производится до подключения печатающего устройства в систему компьютера.
Если процедура предварительной проверки завершилась успешно (появился мигающий курсор, звуковой сигнал и изображение на экране), дальнейшая более тщательная проверка выполняется с использованием системной дискеты с тестами Эта дискета вставляется в дисковод А, а дискета данных — в дисковод В. Производится процедура начальной загрузки. На дисплее появляется текст (меню): ПП ЭВМ
ТЕСТОВЫЕ ПРОГРАММНЫЕ СРЕДСТВА
ВЫПОЛНЯЕМЫЕ ФУНКЦИИ
О —ТЕСТИРОВАНИЕ
— РАЗМЕТКА ДИСКЕТЫ(А)
—КОПИРОВАНИЕ ДИСКЕТЫ
— ПОВТОРЕНИЕ ЗАГРУЗКИ СИСТЕМЫ
ВВЕДИТЕ НОМЕР НЕОБХОДИМОЙ ФУНКЦИИ ?
При желании разметить дискету данных, из меню нажатием клавиши 1 выбирают соответствующую процедуру и затем нажимают клавишу ВВОД. На дисплее появляется вопрос:
НА КАКОМ ДИСКОВОДЕ НАХОДИТСЯ РАЗМЕЧАЕМАЯ ДИСКЕТА?
В ответ пользователь нажимает клавиши В и ВВОД. Примерно через 30 с разметка дискеты завершится и на дисплее снова появится меню (А).
Пользователь нажимает клавишу 0 (выбор процедуры диагностирования) и ВВОД. Производится загрузка в ОП
управляющей программы, а затем под ее управлением — загрузка с системной дискеты тестовых программ. На дисплее появляется текст:
ОСНОВНОЙ ПЕРЕЧЕНЬ ТЕСТОВ
- ТЕСТ ПРОЦЕССОРА
— ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБ ХИТ
— ТЕСТ КЛАВИАТУРЫ
- ТЕСТ ЧЕРНО-БЕЛОГО ЭЛИ И АДАПТЕРА(В)
6-ТЕСТ НГМД И АДАПТЕРА У НГМД
14 — ТЕСТ ПЕЧАТАЮЩЕГО УСТРОЙСТВА
ОСНОВНОЙ ПЕРЕЧЕНЬ ТЕСТОВ УСТРАИВАЕТ? ДА (НЕТ) ?
На этом этапе пользователь, обнаружив несоответствие перечня тестов имеющемуся в ППК составу оборудования, инициирует процедуру корректировки перечня, вводя сообщение НЕТ.
В ответ система диагностирования спрашивает с экрана: XX:УУ:ZZ
НЕОБХОДИМО ИЗМЕНИТЬ ОСНОВНОЙ ПЕРЕЧЕНЬ ТЕСТОВ
ВВЕДИТЕ Д/ДОБАВИТЬ/ИЛИ И /ИСКЛЮЧИТЬ/ (С) ?
После ответа пользователя появляется сообщение:
при ответе Д ДОПОЛНИТЕЛЬНЫЕ! ПЕРЕЧЕНЬ ТЕСТОВ...—ТЕСТ......—ТЕСТ...ВВЕДИТЕ НОМЕР ДОБАВЛЯЕМОГО ТЕСТА?при ответе Д ДОПОЛНИТЕЛЬНЫЕ! ПЕРЕЧЕНЬ ТЕСТОВ...—ТЕСТ......—ТЕСТ...ВВЕДИТЕ НОМЕР ДОБАВЛЯЕМОГО ТЕСТА?при ответе И— ТЕСТ ПРОЦЕССОРА—ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБАЙТ— ТЕСТ КЛАВИАТУРЫ— ТЕСТ ЧЕРНО-БЕЛОГО ЭЛИ И АДАПТЕРА(D)6 — ТЕСТ НГМД И АДАПТЕРА. У НГМД14 —ТЕСТПЕЧАТАЮЩЕГОУСТРОЙСТВАВВЕДИТЕ НОМЕР ИСКЛЮЧАЕМОГО ТЕСТА?при ответе И— ТЕСТ ПРОЦЕССОРА—ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБАЙТ— ТЕСТ КЛАВИАТУРЫ— ТЕСТ ЧЕРНО-БЕЛОГО ЭЛИ И АДАПТЕРА(D)6 — ТЕСТ НГМД И АДАПТЕРА. У НГМД14 —ТЕСТПЕЧАТАЮЩЕГОУСТРОЙСТВАВВЕДИТЕ НОМЕР ИСКЛЮЧАЕМОГО ТЕСТА?
при ответе Д ДОПОЛНИТЕЛЬНЫЕ! ПЕРЕЧЕНЬ ТЕСТОВ
...—ТЕСТ...
...—ТЕСТ...
ВВЕДИТЕ НОМЕР ДОБАВЛЯЕМОГО ТЕСТА
?
при ответе Д ДОПОЛНИТЕЛЬНЫЕ! ПЕРЕЧЕНЬ ТЕСТОВ
...—ТЕСТ...
...—ТЕСТ...
ВВЕДИТЕ НОМЕР ДОБАВЛЯЕМОГО ТЕСТА
?
при ответе И
— ТЕСТ ПРОЦЕССОРА
—ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБАЙТ
— ТЕСТ КЛАВИАТУРЫ
— ТЕСТ ЧЕРНО-БЕЛОГО ЭЛИ И АДАПТЕРА(D)
6 — ТЕСТ НГМД И АДАПТЕРА. У НГМД
14 —ТЕСТПЕЧАТАЮЩЕГО
УСТРОЙСТВА
ВВЕДИТЕ НОМЕР ИСКЛЮЧАЕМОГО ТЕСТА
?
при ответе И
— ТЕСТ ПРОЦЕССОРА
—ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБАЙТ
— ТЕСТ КЛАВИАТУРЫ
— ТЕСТ ЧЕРНО-БЕЛОГО ЭЛИ И АДАПТЕРА(D)
6 — ТЕСТ НГМД И АДАПТЕРА. У НГМД
14 —ТЕСТПЕЧАТАЮЩЕГО
УСТРОЙСТВА
ВВЕДИТЕ НОМЕР ИСКЛЮЧАЕМОГО ТЕСТА
?
Затем снова на экране появляется сообщение (В) уже с модифицированным перечнем тестов и снова задается вопрос:
ОСНОВНОЙ ПЕРЕЧЕНЬ ТЕСТОВ УСТРАИВАЕТ?
Процедура корректировки может быть продолжена ответом НЕТ.
При соответствии перечня тестов составу оборудования ответом ДА пользователь инициирует появление на экране меню:
укажите режим тестирования о — выполнить тесты один раз
1 — ВЫПОЛНИТЬ ТЕСТЫ НЕСКОЛЬКО РАЗ
2 — ПРОТОКОЛИРОВУТЬ ОШИБКИ(Е)
9 —ЗАВЕРШИТЬ ТЕСТИРОВАНИЕ ВВЕДИТЕ ВЫБРАННЫЙ НОМЕР ?
Вводя ответ 0 или 1 предписываем соответственно однократное или многократное выполнение тестов. В ответ на этот ввод система выдает на экран меню для выбора теста: 1 — ТЕСТ ПРОЦЕССОРА
2 — ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБАЙТ 3—ТЕСТ КЛАВИАТУРЫ
4 — ТЕСТ ЧЕРНО-БЕЛОГО ЭЛИ И АДАПТЕРА(F)
6 — ТЕСТ НГМД АДАПТЕРА У НГМД
14 —ТЕСТ ПЕЧАТАЮЩЕГО УСТРОЙСТВА
ВВЕДИТЕ НОМЕР ТЕСТА ДЛЯ ЕГО ВЫПОЛНЕНИЯ
ИЛИ НАЖМИТЕ КЛАВИШУ ВВОД ДЛЯ ВЫПОЛНЕНИЯ ВСЕХ ТЕСТОВ
В режиме одноразового тестирования после завершения выбранного теста па экране последовательно появляются сообщения (Е) и (F) и повторяется процесс режима тестирования и самого теста.
При выполнении тесга процессора на экране появляется сообщение
ВЫПОЛНЯЕТСЯ ТЕСТ ПРОЦЕССОРА КОД ЗАВЕРШЕНИЯ ICC
На вызов теста ОЗУ (ввод цифры 2) система отвечает сообщением
ВЫПОЛНЯЕТСЯ ТЕСТ ОЗУ. ЕМКОСТЬ ОЗУ VVV КБАЙТ
ВРЕМЯ ОЖИДАНИЯ ДО ТРЕХ МИНУТ(Н)
КОД ЗАВЕРШЕНИЯ 2СС
После вызова теста клавиатуры (ввод цифры 3) диагностическая система в своем сообщении на экране предлагает пользователю нажать каждую клавишу и, если на эк-
ране символы воспроизведены верно, ввести символ Д, в противном случае — Н. Код завершения этого теста ЗСС.
Подобным образом в диалоговом режиме организуется тестирование черно-белого ЭЛИ и его адаптера, НГМД и его адаптера, печатающего устройства.
При тестировании черно-белого ЭЛИ и его адаптера пользователем могут быть предписаны проверки адаптера, отображения атрибутов и изображения набора символов, изображений нормальной и повышенной интенсивности, а также реверсивного, невидимого, мерцающего и подчеркнутого изображений. Правильность изображений оценивается визуально, в том числе по приведенному в Руководстве пользователя набору символов.
При тестировании НГМД определяется объем дискеты, проверка последовательного доступа, произвольного доступа, дискеты, частоты вращения.
При вызове теста печатающего устройства на него выводится информация, которая визуально сравнивается с распечаткой, представленной в руководстве пользователя.
Выполнение каждого теста заканчивается выдачей на экран Кода завершения теста ВВСС, где ВВ — числа от 1 до 99, указывающие тест (1—тест процессора, 2 — тест ОЗУ и т. д.), СС — собственно код завершения теста. При правильном завершении теста СС=00, при неправильном— ССУ=0 конкретизирует место неисправности.
Глава 10
ЗАЩИТА, СОХРАНЕНИЕ И ВОССТАНОВЛЕНИЕ
БАЗ ДАННЫХ
ПРОБЛЕМЫ ЭКСПЛУАТАЦИИ БАЗ ДАННЫХ
Базы данных представляют собой совокупность хранимых в ЭВМ структурированных информационных массивов большой емкости, используемых в автоматизированных системах учета, планирования и управления, системах автоматизации проектирования и других системах обработки данных. Часто базы данных размещаются на десятках и сотнях пакетов магнитных дисков и катушек магнитных лент. И поскольку потери информации подобных баз данных могут иметь катастрофические последствия, обычно
в системах управления базами данных (СУБД) предусматриваются средства защиты, сохранения и восстановления баз данных [35].
Сохранность («целостность») информации в базах данных может быть нарушена из-за аппаратурных неисправностей, дефектов программных средств, неверной работы операторов. Кроме того, возможны искажения информации баз данных вследствие одновременного обновления информации разными пользователями.
Обычно сохранность баз данных обеспечивается путем: защиты баз данных от ошибок при нормальной работе; восстановление баз данных при различных аварийных ситуациях.
Важной проблемой является обеспечение защиты баз данных от несанкционированного доступа.
ЗАЩИТА БАЗ ДАННЫХ ОТ ОШИБОК
Существуют следующие механизмы защиты баз данных от ошибок при нормальной работе:
задание режима использования;
управление одновременным обновлением.
Задание режима использования баз данных
Режим использования базы данных задается программой пользователя при взаимодействии с СУБД и определяет допустимые действия другой одновременно выполняющейся программы по отношению к базе данных. Существуют следующие режимы использования базы данных:
монопольный. В этом режиме доступ к базе данных со стороны других программ запрещен. Обычно этот режим используется программами, вносящими глобальные изменения в базу данных и поэтому запрещающими все другие обращения к базе данных;
защищенный. Если одна программа задает защищенный режим, то другие программы могут только читать информацию из базы данных, но не изменять ее.
Многие системные обслуживающие программы, выполняющие реорганизацию или восстановление, по своей природе требуют монопольного или защищенного режима использования базы данных;
разделенный. В этом режиме допускается любая операция с базой данных со стороны других программ. Одна-
ко если программа А намеревается внести изменения в базу данных в разделенном режиме, а программа В уже начала работу с базой данных в защищенном режиме, то программа А ожидает завершения программы В.
Режим использования может задаваться для одной записи, файла или всей базы данных. Очевидно, что чем меньше модуль информации, относительно которого задается режим использования, тем лучше, так как в этом случае допускается большая степень параллелизма в работе программ.
Управление одновременным обновлением базы данных
Управление одновременным обновлением предотвращает ошибки, связанные с одновременным обновлением одних и тех же данных различными программами в разделенном режиме использования базы данных. В табл. 10.1 приведен пример ситуации, приводящей к искажению информации базы данных.
Таблица 10.1
Событие
Программа
Действие
Результат
1
А
Чтение записи N
Запись содержит параметр со значением 2
2
В
То же
То же
3
А
Прибавление 3 к параметру и запись модифицированного параметра в базу данных
Запись содержит параметр со значением 5
4
В
Прибавление 4 к параметру и запись модифицированного параметра в базу данных
Запись содержит параметр со значением 6
Одновременное обновление может привести к ошибке. Как видно из табл. 10.1, программа В обновляет значение параметра, считанного во время события 2. Это приводит к тому, что обновление этого же параметра со стороны программы А во время события 3 теряется. В результате этого может произойти неправильное изменение базы данных.
Очевидно, что ожидаемое после события 4 значение параметра равно 9, а не 6. Для предотвращения подобных ошибок в СУБД имеется механизм блокировки, который в приведенном примере запрещает программе В считывать запись N во время события 2.
Для включения механизма блокировки в некоторых СУБД при чтении данных требуется явное указание того, что запись читается с намерением обновления. В других системах подразумевается, что любое чтение может привести к обновлению информации. В обоих случаях выполняется блокировка прочитанной записи, которая будет снята после завершения обновления.
Следует отметить разницу между блокировкой и установкой режима использования. Если монопольный или защищенный режим блокирует обращение к базе данных (файлу, записи) на время выполнения программы, то блокировка запрещает обращение только на время обновления.
ВОССТАНОВЛЕНИЕ БАЗ ДАННЫХ ПРИ АВАРИЙНЫХ
СИТУАЦИЯХ
Рис. 10.1 Дублирование базы данныхРис. 10.1 Дублирование базы данныхПри эксплуатации баз данных возможны следующие аварийные ситуации: повреждение носителя, на котором размещена база данных; аварийное завершение программы; внезапное прекращение работы из-за отказа системы {например, системы электропитания) .
Рис. 10.1 Дублирование базы данных
Рис. 10.1 Дублирование базы данных
Методы восстановления базы данных в аварийных ситуациях зависят от средств обеспечения сохранности, имеющихся в системе.
Недостатком дублированияНедостатком дублированияОдним из наиболее простых методов восстановления баз данных является восстановление при наличии дублированной базы данных (рис. 10.1).
Недостатком дублирования
Недостатком дублирования
базы данных является высокая стоимость и нарушение сохранности при таких ситуациях, как отказ электропитания, ошибки в памяти и процессоре, в пользовательских программах, которые могут испортить обе копии базы данных. Поэтому дублирование базы данных имеет смысл только при дублировании процессоров и гарантированном электропитании.
Другим методом обеспечения сохранности баз данных является создание поколений базы данных на магнитных лентах.
Этот метод, однако, имеет следующие недостатки: процедура копирования базы данных с дисков на магнитную ленту может потребовать нескольких часов машинного времени ежедневно;
катастрофические отказы в течение дня приводят к потере операций текущего дня;
постоянные копирования базы данных на магнитную ленту могут привести к накоплению необнаруживаемых ошибок на магнитной ленте и постепенному искажению базы данных. Чтобы исключить аварийные последствия подобных ошибок, приходится хранить по нескольку недельных, месячных и годовых копий баз данных.
Наилучшие результаты дает сочетание следующих средств обеспечения сохранности баз данных: запасных копий базы данных, журнала изменений базы данных, контрольных точек.
Для создания через регулярные интервалы времени запасных копий базы данных почти все операционные системы содержат обслуживающие программы для сброса содержимого базы данных на магнитную ленту.
Журнал изменений базы данных представляет собой хронологическую запись информации об изменениях базы данных и может содержать:
текст запроса на изменение в базе данных (журнал заявок) ;
метки, характеризующие начало и конец запроса;
копии записи базы данных до внесения в нее изменения («до-журнал»);
копии записи базы данных после внесения в нее изменения («после-журнал») [36].
Большинство СУБД записывает в журнал изменений копии записей как до, так и после изменений. На рис. 10.2 приведен пример журнала изменений, в который записываются тексты запросов, метки начала и конца запросов, а также копия записи до ее обновления.
Журналы изменений в основном ведутся на магнитных лентах.
Для эффективного использования магнитной ленты в некоторых СУБД используется блокирование записей в журнале изменений. Обычно в СУБД заявка не выполняется до тех пор, пока копия записи базы данных, в которую вносится изменение, не будет записана в журнале изменений, а заявки ожидают своей очереди на запись в «до-журнал», что увеличивает время обработки заявок. Во избежание
этого используется запоминание изменяемых записей базы данных в специальной буферной памяти и запись их в «до- журнал» только после формирования одного блока. Однако при небольшом потоке заявок и, следовательно, медленном заполнении блока может потребоваться много времени, прежде чем заявка будет обработана. Поэтому в некого-
Текст запроса 1Текст запроса 1Отдельные записи на МЛ
Текст запроса 1
Текст запроса 1
Запрос 7 запась №123, копия запаси вазы Ванных Во изменения
Текст запроса 2
Запрос 1 запись № 124, копия запаса вазы Ванных Во изменения
Конец запроса 1Конец запроса 1Запрос 2запись №346,копая записи ВазыВанных,Во измененияЗапрос 2запись №346,копая записи ВазыВанных,Во измененияЗапрос 2 запись №345, копия записи базы Ванных Во изменения
Конец запроса 1
Конец запроса 1
Запрос 2запись №346,копая записи ВазыВанных,Во изменения
Запрос 2запись №346,копая записи ВазыВанных,Во изменения
Запрос 1 окончен
Это изменение могло быть Выполнено или не Выполнено. Поскольку оно не было отмечено нак законченное, необходимо Восстановление
Текст запроса 3
Отказ системыОтказ системыВ этом месте необхоВимо записан» маркер конца файла
Отказ системы
Отказ системы
Рис. 10 2. Журнал изменений базы данных
рых системах размер блока или время накопления записей до их переписи в «до-журнал» может изменяться динамически.
Недостатком блокирования записей, однако, является возможность потери нескольких записей, сгруппированных в блок, что требует восстановления с более ранней точки отсчета времени
Иногда для уменьшения времени восстановления базы данных в журнал изменений записывается файл базы данных до и после изменения. Хотя это приводит к увеличению объема журнала изменений, время восстановления базы данных при этом наименьшее.
Операционные системы позволяют ввести в пользовательские программы контрольные точки, которые указывают место повторного запуска (рестарта) программы при появлении ошибки или аварийном завершении программы. При рестарте с контрольной точки необходимо также восстановление базы данных в состояние, существовавшее в момент времени, соответствующий контрольной точке.
Контрольные точки в программах, работающих с базами данных, используются для выполнения следующих действий:
внесение в базу данных всех изменений, ожидающих своей очереди;
разблокировку всех записей, обращение к которым было заблокировано;
запись информации о контрольной точке в журнале изменений.
Восстановление при повреждении носителя базы данных
Восстановление базы данных выполняется с помощью последней запасной копии базы данных. В эту копию базы данных с журнала изменений вносятся копии всех изменений записей, зарегистрированных после получения последней копии базы данных. Эта процедура, показанная на рис. 10 3, обеспечивает восстановление базы данных в состоянии, максимально близком к временной точке отказа, и выполняется специальной обслуживающей программой, имеющейся в операционной системе. В результате этого база данных восстанавливается в состоянии, соответствующем моменту записи последней информации в журнале изменений.
Если повреждение носителя базы данных произошло во время работы (во время выполнения пакета заданий или операций реального масштаба времени), кроме восстановления базы данных необходимо обеспечить также и восстановление вычислительного процесса. При этом может оказаться удобнее восстановить базу данных только до контрольной точки и запустить прерванные программы с этой точки.
Восстановление при аварийном завершении программы
Восстановление при аварийном завершении программы предполагает восстановление как вычислительного процесса, так и базы данных.
ВремяВремяЖурналИзмененийни млЖурналИзмененийни мляэив■Протоколирование измененийяэив■Протоколирование измененийЗапросык базеВанныхЗапросык базеВанныхЗаписная копия базы банныхЗаписная копия базы банных
Время
Время
ЖурналИзмененийни мл
ЖурналИзмененийни мл
яэив■
Протоколирование изменений
яэив■
Протоколирование изменений
Запросык базеВанных
Запросык базеВанных
Записная копия базы банных
Записная копия базы банных
Восстановление базы Ванных по запаспм журнала изменений
Рис 10 3 Восстановление конечного состояния базы данных по записям журнала изменений
Существуют следующие варианты восстановления:
база данных перезагружается и восстанавливается в состоянии, существовавшем к началу аварийно завершенной программы, после чего программа выполняется повторно;
база данных восстанавливается в состоянии, существовавшем в момент времени, наиболее близкий к последней контрольной точке (если были предусмотрены контрольные точки), и выполняется рестарт программы с этой контрольной точки.
Естественно, что оба варианта восстановления выполнимы при случайных ошибках;
изменения в базе данных со стороны аварийно завершенной программы могут быть аннулированы с помощью операций восстановления исходного состояния. Для этого все копии записей из «до-журнала» записываются на место измененных данных. Этот процесс продолжается до восстановления всех записей, измененных программой, или только записей, измененных после контрольной точки.
Большинство СУБД имеет в своем составе специальные обслуживающие программы восстановления базы данных
в исходное состояние, существовавшее до выполнения программы в момент последней контрольной точки.
Рассмотрим восстановление при аварийном завершении программы для разных режимов эксплуатации базы данных
Пакетная обработка. При пакетной обработке запросы к базе данных обрабатываются последовательно. Восстановление при аварийном завершении программ выполня-
Рис. 10 4 Восстановление базы данных в состояние контрольной точки
ется с использованием контрольных точек (рис. 10.4). Для повторения программы с контрольной точки необходимо, чтобы база данных по состоянию соответствовала данным контрольной точки программ пользователя. Для этого СУБД должна возвращать базу данных в исходное состояние путем аннулирования части изменений.
При коллективном использовании базы данных, т. е. при одновременной работе с базой данных нескольких программ, могут возникать ситуации, когда обновление базы данных в режиме разделенного использования выполняют две разные программы, одна из которых завершается аварийно. Последовательность событий, изображенных на рис. 10 5, такова: программа А сначала обновляет записи 1, 2 и 3, а спустя некоторое время программа В обновляет записи 4, 2 и 5.
Если в результате аварийного завершения программы А выполняется восстановление базы данных в исходное состояние, существовавшее до обновления записи 1, то это приведет к потере обновления записи 2 со стороны програм- 312
мы В. Как видно из этого примера, восстановление исходного состояния базы данных для аварийно завершенной программы влияет на другую программу, работающую с той же базой данных.
Для исключения подобных ошибок СУБД выполняет восстановление базы данных в исходное состояние для всех программ, работающих с базой данных. Это выполняется по записям в журнале изменений. Для правильного
Рис. 10 5. Ситуация, при которой возможно неправильное восстановление базы данных
автоматического восстановления базы данных и повторного выполнения программ имеются две возможности:
система управления базой данных запоминает список всех измененных между контрольными точками записей. Обращение программы В к записям из списка запрещается до тех пор, пока программа Л не закончится или не сформирует контрольную точку. В этом случае при аварийном завершении программа Л может быть повторена автоматически без учета изменений со стороны других программ. Недостатком этого способа являются дополнительные затраты времени на запоминание списка измененных записей и на ожидание другими программами освобождения нужных им записей базы данных;
синхронизация контрольных точек разных программ, с тем чтобы возврат мог осуществляться к одной и той же временной точке. Для этого требуется, чтобы все программы с обновлением записей создавали контрольные точки одновременно.
Общие контрольные точки создает СУБД. При этом Система ожидает окончания активных запросов, после чего информирует программы пользователей о контрольной
точке, а также записывает информацию о ней в журнале изменений.
К издержкам синхронизации контрольных точек относится некоторое снижение производительности системы, так как система ожидает окончания активных запросов, а при рестарте исключает все запросы, которые не затронуты ошибкой.
Обработка в реальном масштабе времени. При работе в реальном масштабе времени каждый запрос обычно обрабатывается путем полного прогона программы (модуля), предназначенного для его обработки. И поскольку в этом случае контрольные точки всегда совпадают с началом программы, возврат на повторение программы соответствует возврату на повторение одного запроса. Это облегчает восстановление.
Программа управления запросом может повторить подачу запроса на вход соответствующей программы обработки, которая и выполнит повторную обработку запроса.
Смешанная обработка. При смешанной обработке должна быть установлена общая контрольная точка для всей системы. Различные контрольные точки для программ пакетной обработки и программ реального масштаба времени допустимы только в том случае, когда оба режима используют различные группы базы данных.
Восстановление при отказе системы
Основной особенностью отказа системы является потеря информации о состоянии операционной системы и оперативной памяти ЭВМ. Поэтому информация о том, что происходило в системе в момент отказа, может быть получена только из журнала изменений базы данных и от оператора. Исходя из этого, отказ системы можно рассматривать как аварийное завершение всех выполнявшихся программ плюс потенциальная потеря информации из- за ошибок в аппаратуре.
Успешное восстановление базы данных при отказе системы зависит от качества анализа ситуации и решения, принятого специалистом. В распоряжении последнего находятся все перечисленные выше средства обеспечения сохранности и восстановления базы данных.
Существуют два варианта восстановления:
восстановление состояния, наиболее близкого к временной точке отказа, путем использования запасной копии базы данных и журнала изменений (см. рис. 11.3);
восстановление исходного состояния базы данных с помощью журнала изменений путем аннулирования части изменений.
В системах реального масштаба времени восстановление базы данных с запасной копии фактически приводит к аварийной ситуации, следствием которой является образование очереди запросов на входе системы [36].
Поэтому первый вариант восстановления применяется в основном при пакетной обработке, а второй — при работе в реальном масштабе времени. В последнем случае восстановление исходного состояния базы данных выполняется до момента контрольной точки и все программы возвращаются к общей контрольной точке.
Восстановительные процедуры обычно выполняются с учетом момента отказа системы. Отказ системы мог произойти во время записи информации в журнал изменений или в базу данных. Поэтому одним из первых шагов процедуры восстановления является прогон специальной обслуживающей программы, которая, анализируя состояние журнала изменений, определяет программу, выполнявшуюся в момент отказа, и записывает маркер конца файла на магнитной ленте журнала изменений.
Если отказ системы произошел в момент выполнения записи в журнал изменений, то информация теряется. Потеря этой информации, однако, не вызывает затруднений при восстановлении, так как запись в журнал изменений выполняется до записи в базу данных, т. е. это изменение в действительности не выполняется.
Если отказ системы произошел после записи информации в журнал изменений, но до записи ее в базу данных, проблема восстановления также разрешима. При восстановлении исходного состояния по журналу изменений последняя запись базы данных восстанавливается в состояние, существовавшее до последнего изменения, т. е. в то же самое состояние, так как изменение последней записи в базе данных не было выполнено.
Восстановление конечного состояния по запасной копии также выполняется нормально, так как оно обычно выполняется до предшествующей отказу контрольной точки, т. е. последнее изменение в журнале изменений не используется.
Опасность потери информации может возникнуть, когда в журнал изменений заносятся сблокированные записи и отказ системы произошел при накоплении записей в опе-
ративной памяти. При этом восстановление исходного состояния базы данных и возврат программы к контрольной точке могут привести к неверным результатам, если только запись в журнал изменений не выполнять принудительно при появлении контрольной точки или по окончании программы, даже если блок информации не сформирован полностью. В противном случае обновление базы данных не сопровождается протоколированием этого события в журнале изменений и рестарт, или повторный прогон программы, приведет к двукратной обработке одного и того же запроса к базе данных.
С учетом всех изложенных выше ограничений восстановление при отказе выполняется следующим образом: база данных восстанавливается в определенное состояние, с которого может начинаться обработка или рестарт программ, загружается СУБД и снова запускается программа обработки запросов пользователей.
10.4. МЕТОДЫ ЗАЩИТЫ ИНФОРМАЦИИ
ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА
Широкое развитие работ по созданию на основе ЭВЛ1 информационных систем и АСУ, предназначенных для накопления, хранения в информационных базах, обработки и выдачи по запросам различного рода данных, сделало весьма актуальной проблему защиты информации от несанкционированного доступа. Острота этой проблемы и сложность ее решения усугубляются тем, что в современной информационной системе или АСУ в базе данных (или базах данных) хранится большое количество информации, предназначенной для различных организаций-пользователей, их подразделений и отдельных лиц. При этом доступ к информации производится в режиме коллективного пользователя, в том числе с использованием передачи данных по линиям связи. В последние годы проблеме защиты данных в зарубежной литературе уделяется большое внимание, о чем свидетельствует, например, список литературы в [54].
Согласно современным представлениям под защитой информации от несанкционированного доступа, или безопасностью данных, понимают предотвращение случайного или преднамеренного разрушения, раскрытия (утечки) или искажения данных.
В работах по методам защиты информации секретно-
стью называют право пользователя объявлять информацию закрытой, т. е. подлежащей защите. Статус, представленный данным и определяющий требуемую степень защиты, называется конфиденциальностью данных [54].
Системой защиты информации называют совокупность методов, аппаратурных и программных средств, организационных и других мер, предназначенных для предотвращения разрушения, искажения или неразрешенного использования данных.
При реализации защиты информации возникает необходимость в идентификации как пользователей, обращающихся к данным, так и устройств, участвующих в процессе взаимодействия с информационной системой — терминалов, машин и их устройств, каналов связи, файлов данных, программ и т. п. Идентификация предлагает присвоение пользователям, терминалам и другим техническим средствам, программам и файлам идентификаторов, т. е. уникальных имен и кодов.
Доступу пользователя к запрашиваемой информации должны предшествовать процедуры установления подлинности, проверки полномочий и регистрации факта запроса и выдачи (или отказа в выдаче) информации.
Установление подлинности состоит в проверке того, что лицо или устройство, сообщившее идентификатор, в действительности ему соответствует. Строго говоря, требуется установление подлинности не только пользователя и использованного им терминала по отношению к системе, но и системы (ЭВМ, программы, файла) по отношению к запрашиваемым пользователем ресурсам. С одной стороны, могут существовать ограничения, разрешающие выдачу некоторой информации лишь на определенные терминалы. С другой стороны, пользователь, связываясь, например, в вычислительной сети с определенной машиной, программой, файлом, должен быть уверен, что он действительно оказался связанным с тем средством, которое он запросил. В противном случае при ошибочном или злонамеренном установлении связи пользователя с незапрошенными им средствами (ЭВМ, файлами и т. п.) возможна утечка информации и нарушение соответствующих данных в выделенных для них файлах (нарушение целостности данных).
Одним из способов установления подлинности пользователя и средств системы является использование паролей, которыми они должны обмениваться.
После установления подлинности вступивших в связь
пользователя и средств системы необходима проверка их полномочий по отношению к используемому в запросе элементу данных (файлу, записи, полю и др.), т. е. проверка права пользователя (а также терминала) на доступ к запрашиваемым данным, выполнение над ними определенных операций (например,чтения и обновления).
Важным элементом системы защиты информации является осуществляемая ЭВМ автоматическая регистрация в специальном журнале всех удовлетворенных и отвергнутых запросов к данным с указанием пользователя, терминала, времени поступления запроса, запрошенной информации и некоторых других сведений.
Криптографическое закрытие или, другими словами, шифрование информации рассматривается специалистами как наиболее надежный метод защиты информации, особенно при передаче ее по линиям связи.
Криптографическое закрытие состоит в преобразовании информации с помощью шифров и процедур шифрования, в результате чего по внешнему виду данных оказывается невозможным определить их содержание. Шифрование информации делает ее для лица, не владеющего шифром, нераспознаваемой (с определенной вероятностью).
Шифрование информации производится перед вводом ее в информационную систему или перед передачей по линии связи. Дешифрование информации выполняется при санкционированной выдаче информации из системы, а при передаче данных по линиям связи — на приемном пункте для передачи исходного текста по месту назначения.
Упомянутые выше методы и процедуры защиты информации, а также некоторые другие защитные меры реализуются с помощью специальных аппаратурных и (или) программных средств и их комбинаций.
К аппаратурным средствам защиты информации относятся в частности, замки-выключатели, логически отключающие от ЭВМ различные пульты, дисплеи, клавиатуры, другие устройства ввода-вывода, препятствующие тем самым попыткам их несанкционированного использования для ввода-вывода, искажения информации в ЭВМ. Использование указанных устройств возможно только прн открытии замков специальными ключами.
Применяются также замки, блокирующие двери шкафов ЭВМ и включающие сигнализацию при попытке несанкционированного (без соответствующего ключа) доступа к аппаратуре. '
К аппаратурным средствам защиты относятся специальные регистры, хранящие для соответствующих файлов или блоков данных уровни секретности, пароли, идентификаторы пользователей и терминалов, определяющих, каким лицам и с каких терминалов разрешен доступ к информации, а также схемы, автоматически формирующие (при попытке с терминала установить связь с ЭВМ) присвоенный терминалу код.
Шифрование и дешифрование информации может производиться как специальными программами, так и встраиваемой в систему специальной аппаратурой [54].
На специальные программы возлагают установление подлинности пользователей и средств системы (терминалов, устройств ввода-вывода, машин, файлов, программ), проверку их полномочий, ведение журнала обращений к системе, сигнализацию при попытках несанкционированного доступа.
Глава 11
ДИАГНОСТИРОВАНИЕ ПЕРИФЕРИЙНЫХ УСТРОЙСТВ
СПОСОБЫ ДИАГНОСТИРОВАНИЯ ПЕРИФЕРИЙНЫХ УСТРОЙСТВ
Под ПУ обычно понимают совокупность собственно периферийного аппарата и его блока управления (УПУ), тем более что в ряде случае ПУ и УПУ представляют собой одно целое в логическом и конструктивном отношении. Собственно ПУ (периферийный аппарат) — это электромеханическое или электронное устройство, непосредственно выполняющее основные функции ввода или вывода информации с помощью различных носителей информации, преобразования физических сигналов или действий в цифровой код и обратно (лентопротяжный механизм, печатающий механизм, клавиатура пишущей машинки, аналого-цифровой преобразователь и т. д.) [19].
Электронный блок управления периферийным аппаратом выполняет специфическую для данного ПУ функцию преобразования информации и управления механизмами аппарата.
Большинство отказов периферийных устройств прихо-
дится на долю их электромеханических частей. Локализация неисправностей логической части ПУ и их управления не представляет затруднений, она основана на использовании традиционных методов диагностирования дискретных объектов и может быть автоматизирована Локализация неисправностей электромеханических узлов,основанная на методах определения работоспособности непрерывных объектов, с трудом поддается автоматизации и в значительной мере остается ручной процедурой, заключа-
Рис. 11 1. Общая схема подключения УПУ/ПУ к ЭВМ
ющейся в наблюдении сигналов с помощью осциллографа и сравнении их с эталонными.
На рис. 11.1 приведена характерная для ЕС ЭВМ общая схема подключения УПУ/ПУ к ЭВМ, в которой можно выделить два типа интерфейсов: периферийных устройств (интерфейс ввода-вывода) и периферийных аппаратов (малый интерфейс) [19].
Интерфейс ввода-вывода стандартизован, а интерфейс периферийных аппаратов не стандартизован, так как сами периферийные аппараты весьма разнообразны по принципу действия, по выполняемым приказам и операциям и по используемым форматам информации и сигналам.
Через интерфейс ввода-вывода от канала ввода-вывода к УПУ передаются байты данных, признаки и номер (адрес) ПУ. Передача осуществляется с помощью сигналов, которые называются сигналами канала. От УПУ в канал ввода-вывода поступают вводимые байты данных, номер (адрес) ПУ, байты основного и уточненного состояний. Передача осуществляется с помощью сигналов, которые называются сигналами абонента.
В зависимости от средств, используемых для диагностирования, различают следующие способы диагностирования УПУ/ПУ:
с помощью процессора;
с помощью тестеров;
с помощью имитаторов канала;
с помощью встроенных в УПУ средств.
ДИАГНОСТИРОВАНИЕ УПУ/ПУ С ПОМОЩЬЮ ПРОЦЕССОРА
При этом способе диагностирования (рис. 11.2) тестовые воздействия в УПУ/ПУ подает процессор/канал и результаты элементарных проверок через канал поступают в процессор. Воздействиями элементарных проверок явля-
Рис 11 2. Диагностирование УПУ/ПУ с помощью процессора ются приказы и данные, а результатами элементарных проверок — данные, байты основного и уточненного состояний [19].
При обнаружении ошибок во время операций ввода- вывода в байте состояния записываются соответствующие признаки. Разряды байта состояния характеризуют занятость устройств ранее начатой операцией, окончание операции, обнаружение ошибки в работе устройства, обнаружение определенных особых условий.
Более подробную информацию о состоянии ПУ содержит так называемый код уточненного состояния, длина которого зависит от типа ПУ. Для получения кода уточненного состояния используется специальный приказ «уточнить состояние». Число передаваемых при этом байт и значение информации зависят от типа ПУ. Собственно информация уточненного состояния обычно содержится в первых двух байтах, а в остальных байтах находится диагностическая информация.
Повышение глубины поиска дефекта в современных УПУ/ПУ достигается увеличением количества диагностической информации о состоянии УПУ/ПУ в коде уточненного состояния, а также добавлением специальных диагностических приказов, таких как, например, диагностическая запись и диагностическое чтение, конкретное содержание которых зависит от типа ПУ.
Диагностирование УПУ/ПУ в составе ЭВМ выполняет- 21—27321
ся путем запуска операций ввода-вывода и анализа их результатов. Эти функции выполняют программные средства тестового диагностирования.
ПРИНЦИП ПРОВЕРКИ УПУ/ПУ с помощью ДИАГНОСТИЧЕСКИХ ПРИКАЗОВ
Как отмечалось ранее, конкретная реализация диагностических приказов зависит от типа УПУ/ПУ. Вместе с тем в ряде устройств используется универсальный принцип проверки УПУ/ПУ с помощью диагностических приказов. Этот принцип основан на том, что исполнительные (недиагностические) приказы ПУ можно представить в виде совокупности функций, выполняемых различным оборудованием УПУ/ПУ и зависящих от параметров приказа. Кроме того, благодаря специальным диагностическим признакам, устанавливаемым с помощью приказа диагностическая запись, появляется возможность запрещать (разрешать) выполнение тех или иных функций. И поскольку та или иная функция выполняется определенным оборудованием, появляется возможность управлять количеством работающего оборудования и фиксировать последовательность выполнения функций.
Каждой функции, совокупность которых определяет ход выполнения приказа, ставится в соответствие характерный для данного этапа сигнал, отсутствие которого говорит о выполнении (невыполнении) этапа (функции) и неисправности определенного оборудования.
Эти сигналы устанавливают соответствующие биты диагностического регистра. Совокупность функций и соответствующая ей последовательность диагностических бит, установившихся при выполнении приказа, называются трассой. Трасса определяется параметрами исполнительного приказа и диагностическими признаками. Сочетание последних задает ход выполнения приказа и позволяет предсказать конечный результат (трассу) при нормальном выполнении приказа.
Диагностическая процедура выполняется:
по приказу диагностическая запись устанавливается диагностический режим, который запрещает/разрешает выполнение определенных функций с помощью последующего исполнительного приказа. Таким способом задается количество работающего оборудования и фиксируется трасса выполнения исполнительной команды;
выполняется исполнительный приказ, и его трасса накапливается в диагностическом регистре;
по окончании выполнения приказа содержимое диагностического регистра считывается с помощью приказа диагностическое чтение и передается в процессор;
диагностическая программа производит сравнение полученной трассы с ожидаемой. При успешном выполнении диагностической процедуры (трассы сравнились) выполняется очередная процедура с расширением функций исполнительных приказов (увеличение количества работающего оборудования) по отношению к предыдущей, успешно выполненной процедуре. Таким образом производится последовательное включение оборудования с проверкой его работоспособности. Если результат сравнения трасс отрицателен (трассы не сравнились), программа производит анализ полученной трасты для определения неисполненной функции и ставит ей в соответствие согласно словарю неисправностей определенное оборудование, расположенное в конкретных ТЭЗ [40].
ДИАГНОСТИРОВАНИЕ УПУ/ПУ С ПОМОЩЬЮ ТЕСТЕРОВ
Тестеры периферийных устройств представляют собой ручные или полуавтоматические устройства, позволяющие диагностировать УПУ/ПУ в автономном режиме, т. е. вне ЭВМ.
Существуют два типа тестеров: для диагностирования совмещенных УПУ/ПУ и для диагностирования ПУ.
Обобщенные схемы соединения таких тестеров с устройством показаны на рис. 11.3, а и б соответственно.
Рис. 11 3. Схема соединения тестера
Тестеры позволяют выполнить автономные тестовые процедуры для проверки УПУ/ПУ, индицировать результаты проверки на своем пульте, создать режимы зацикливания тестовых процедур для наблюдения временной
диаграммы с помощью осциллографа. Тестовые процедуры задают последовательность действий, которую необходимо выполнить на тестере и в устройстве для получения реакции устройства на эти действия, а также указывают состояние ламп индикации тестера. На основании анализа реакции устройства, сравнения состояния ламп индикации, полученного и заданного тестовой процедурой, делается заключение о неисправности устройства.
Совмещенные УПУ/ПУ обычно содержат блоки сопряжения с каналом (БСК) и управления механизмом — адаптер и сам механизм. Соответственно тестовые процедуры делятся на процедуры проверки функционирования БСК, адаптера и механизма.
Примером тестера УПУ/ПУ является тестер, предназначенный для диагностирования устройств ввода с перфокарт, ввода с перфоленты, вывода н’а перфоленту. Тестер обеспечивает проверку БСК, адаптера и механизма считывания. Проверка БСК проводится в шаговом режиме. Все последовательности сигналов интерфейса, задаваемые с тумблеров, подаются в блок сопряжения непосредственно через усилители приемника устройства, т. е. достигается полная проверка сопряжения. При этом на тестере индицируются сигналы интерфейса и состояние триггеров, что позволяет легко определить неисправность.
Примером тестера периферийных устройств является тестер накопителя на сменных магнитных дисках. Этот тестер обеспечивает проверку:
позиционирования головок накопителя, записи и чтения информации с пакета дисков, индикации состояния интерфейсных линий, сброса и приращения регистра головок.
Каждая операция может быть выполнена однократно и многократно. Скорость повторения операции может регулироваться. В документации тестера приводятся временные диаграммы наиболее важных сигналов накопителя при выполнении различных операций.
ДИАГНОСТИРОВАНИЕ УПУ/ПУ С ПОМОЩЬЮ ИМИТАТОРОВ КАНАЛА
Имитаторы канала (ИК) представляют собой автономные устройства, имитирующие различные режимы работы каналов ввода-вывода для полной проверки УПУ/ПУ.
Наиболее совершенные имитаторы канала представляют собой программируемые устройства с возможностью
загрузки программы диагностирования конкретного УПУЩУ в оперативную память имитатора и выполнения этой программы с помощью блока управления.
В качестве примера рассмотрим ИК, изображенный на рис. 11.4 [18].
Имитатор канала подключается к УПУ/ПУ через блок стандартного сопряжения. Блок управления формирует
Рис. 11.4. Структурная схема имитатора канала
сигнал управления в соответствии с заданным режимом работы. Блок формирования данных предназначен для генерации тестового кода с целью передачи его в ПУ.
После загрузки в оперативную память ИК программы диагностирования ПУ и задания с пульта управления ИК режима работы начинается проверка ПУ. Блок управления выбирает очередной приказ программы и вводит в ПУ последовательность начальной выборки, в процессе которой из ИК в ПУ поступает адрес ПУ и код приказа. В ответ ПУ передает в ИК адрес, который сравнивается с заданным.
При совпадении адресов ИК передает в ПУ код приказа, на который оно отвечает байтом состояния. Если байт состояния ПУ не содержит указателей сбоя, ИП переходит к передаче или приему данных. При передаче данных последние поступают в ПУ через блок стандартного сопряжения либо из блока формирования данных, либо из памяти чисел. После каждого переданного и принятого байта модифицируется состояние внутреннего счетчика и сравнивается с содержимым счетчика байт, заданным в управляющем слове. При приеме каждый байт контролируется по модулю 2. После передачи последнего байта ИК вводит в ПУ последовательность сигналов окончания
операции и, получив конечный байт состояния, заканчивает выполнение приказа.
Для осциллографирования неисправностей в ИК предусматривают режим циклического перезапуска по сигналу ошибки. Удобным средством является также блок селективной индикации, который позволяет индицировать на пульте произвольный байт любого вида (байт адреса, состояния или данных). Для этого с пульта задается число и вид байта. На вход счетчика, входящего в блок селективной индикации, поступает сигнал, идентифицирующий адрес, байт состояния или байт данных, поступающих от ПУ. Когда содержимое счетчика совпадает с кодом, заданным с пульта, схема сравнения формирует сигнал, разрешающий запись выбранного байта в регистр индикации.
ДИАГНОСТИРОВАНИЕ УПУ/ПУ С ПОМОЩЬЮ
ВСТРОЕННЫХ В УПУ СРЕДСТВ
Для ПУ типа накопителей на магнитных дисках и лентах устройства управления представляют собой устройства, сопоставимые по сложности с процессорами ЭВМ. В этих случаях они имеют встроенные средства тестового диагностирования, обеспечивающие диагностирование как самого устройства управления, так и периферийных устройств. В микропрограммных УПУ используется встроенная или загружаемая микродиагностика.
В качестве примера рассмотрим встроенные средства тестового диагностирования устройства управления НМД. Микродиагностика этого устройства обеспечивает проверку арифметическо-логического блока, общих регистров, регистра адреса микрокоманд, регистров канального переключателя и другой аппаратуры.
При обнаружении неисправностей на пульте управления устройства индицируются коды ошибок, по которым в инструкции по эксплуатации находится идентификатор листа микропрограммной логики (алгоритма микродиагностики), где поясняется тип неисправности.
Некоторые устройства управления содержат встроенные имитаторы каналов и имитаторы ПУ, позволяющие максимально полно проверить УПУ в автономном режиме.
Обычно встроенные средства тестового диагностирования УПУ выполняют диагностирование присоединенных ПУ в автономном режиме, т. е. УПУ монополизируется сред-
ствами тестового диагностирования и не может выполнять каких-либо других операций с системой.
Для устройств управления НМД и НМЛ такой режим нежелателен, так как он фактически приводит к останову ЭВМ. Для устранения этого недостатка встроенные в устройство управления средства диагностирования разрабатываются так, чтобы они могли использовать общие шины интерфейса периферийного аппарата в режиме разделения времени. При таком решении устройство управления может выполнять приказы процессора, работая с исправными устройствами, а блок диагностирования (БД) — проверку неисправного устройства в режиме разделения времени в периоды незанятости устройства управления. Благодаря этому обслуживающий персонал может диагностировать и устранять неисправности устройства без прерывания нормальной работы ЭВМ.
Глава 12
ДИАГНОСТИРОВАНИЕ СРЕДСТВ ТЕЛЕОБРАБОТКИ ДАННЫХ
АППАРАТУРНЫЕ СРЕДСТВА ТЕЛЕОБРАБОТКИ ДАННЫХ
Развитие вычислительной техники привело к интеграции ее со средствами связи. Все большее распространение получают распределенные вычислительные системы, системы телеобработки. На рис. 12 1 приведена структурная схема типичной системы телеобработки с передачей данных по телефонному каналу связи.
Мультиплексор передачи данных (МПД) предназначен для двустороннего поочередного или одновременного об-
Рис. 12 1. Структурная схема систем телеобработки данных
мена информацией между ЭВМ и АП, а также межмашинного обмена информацией по телефонным и телеграфным каналам связи.
Аппаратура передачи данных обеспечивает сопряжение логических дискретных устройств МПД и АП с каналами связи. Абонентские пункты представляют собой одно или несколько периферийных устройств со специальным устройством управления, которое обеспечивает обмен информацией с МПД по каналу связи.
Аппаратура передачи данных включает в себя модемы, вызывные устройства (ВУ) для коммутируемых линий связи и устройства защиты от ошибок (УЗО).
Модемом называют устройство для преобразования дискретного сигнала в непрерывный и наоборот в соответствии с принятым видом модуляции (амплитудной, частотной, фазовой и др.). Вызывное устройство предназначено для автоматического установления соединения на коммутируемых каналах связи тональной частоты и подключается к соединительной линии абонентского телефона совместно с модемом, имеющим в своем составе устройство автоматического ответа.
Устройство защиты от ошибок предназначено для обнаружения и исправления ошибок в переданной по каналу связи информации.
Канал передачи данных, включающий в себя модемы и телефонную линию, условно называют дискретным каналом связи. Телефонную линию называют также непрерывным каналом связи или каналом тональной частоты (ТЧ).
ДИАГНОСТИРОВАНИЕ МУЛЬТИПЛЕКСОРА ПЕРЕДАЧИ ДАННЫХ
Мультиплексор передачи данных представляет собой электронный коммутатор, поочередно подсоединяющий адаптеры данных к каналу ввода-вывода ЭВМ. Адаптер данных представляет собой устройство для преобразования параллельного кода в последовательный при передаче данных в модем и при приеме данных из модема.
Диагностирование МПД может осуществляться в двух режимах:
автономном с помощью встроенных средств тестового диагностирования;
системном с помощью диагностических программ, использующих специальные диагностические приказы.
Диагностирование МПД в автономном режиме выполняется следующим образом. Блок диагностирования, с помощью которого выполняется поиск неисправностей МПД в автономном режиме, формирует сигналы, имитирующие сигналы канала ввода-вывода. Эти сигналы подаются в блок сопряжения с каналом (БСК) (минуя входные/вы- ходные усилители). Блок сопряжения с каналом ввода-вывода работает с адаптером так же, как при работе с ЭВМ. Однако выход адаптера в реальный канал связи в автономном режиме закрыт и заведен обратно в блок диагностирования. Блок диагностирования передает команды и данные через БСК в адаптер и одновременно контролирует ответные сигналы БСК. Информация, передаваемая адаптером в блок диагностирования, сравнивается с тестовой информацией.
Диагностирование МПД в системном режиме выполня
ется с помощью диагностических программ под управлением процессора ЭВМ. С целью исключения аппаратуры пе
МПДМПДРис. 12 2. Диагностирование адаптера данныхРис. 12 2. Диагностирование адаптера данныхредачи данных и канала связи при диагностировании самого МПД используются два специальных приказа: Диагностическая запись и Диагностическое чтение, выполняемых адаптером данных.
МПД
МПД
Рис. 12 2. Диагностирование адаптера данных
Рис. 12 2. Диагностирование адаптера данных
Приказы Диагностическая запись и Диагностическое чтение выполняются так же, как и приказы Запись и Чтение,
за исключением того, что адап
тер не работает с каналом связи. Для этой цели в адаптере имеется регистр диагностирования (РгДг), представляющий собой регистр сдвига, в котором хранится последний знак, переданный в канал связи по приказу Запись или Диагностическая запись. При выполнении приказа Диагности
ческая запись данные из адаптера поступают не в модем, а на РгДг. Если передается несколько знаков, на РгДг остается последний. При выполнении приказа Диагностическое чтение данные в регистр данных адаптера поступают не из канала связи, а из РгДг. После получения информации процессор сравнивает ее с эталонной и на основании этого определяет неисправность МПД и адаптера данных. На рис. 12.2 показаны регистр данных адаптера, обеспечивающий прием и передачу информации в канал связи и из
канала связи, диагностический регистр и его связи с регистром данных адаптера.
Другим примером диагностического приказа является приказ Писать по шлейфу, используемый в мультиплексоре МПД-2. При выполнении этого приказа информация, выдаваемая по какому-либо подканалу ввода-вывода, передается всегда обратно в ЭВМ по нулевому подканалу.
ДИАГНОСТИРОВАНИЕ КАНАЛА ПЕРЕДАЧИ ДАННЫХ
Традиционным методом проверки аппаратуры передачи данных, дискретного канала связи и канала ТЧ является проверка с созданием шлейфового режима. Шлейф представляет собой перемычку для создания обратной связи для возврата сигнала к месту его передачи. Шлейфы бы
вают следующих типов:дискретного канала и непрерывного канала;местный и удаленный;с местным или дистанционным управлением; одно- и двунаправленный.вают следующих типов:дискретного канала и непрерывного канала;местный и удаленный;с местным или дистанционным управлением; одно- и двунаправленный.ПунктПунктВходные_ А ।. ВВанныеXIIВыходные / IIданныеIВходные_।।данные"*IIXвыходные।।JВанныеIIПунктПунктВходные_ А ।. ВВанныеXIIВыходные / IIданныеIВходные_।।данные"*IIXвыходные।।JВанныеIIРис. 12 3 Местный и удаленный шлейфыРис. 12 3 Местный и удаленный шлейфыНа рис. 12.3 показаны местный и удаленный шлейфы. Местный шлейф позволяет по внутреннему тракту аппарата подать передаваемую информацию и тактовый сигнал передатчика соответственно на информационный и тактовый входы приемника. Удаленный шлейф позволяет проверить всю линию. В каждом случае имеющаяся в источнике данНа рис. 12.3 показаны местный и удаленный шлейфы. Местный шлейф позволяет по внутреннему тракту аппарата подать передаваемую информацию и тактовый сигнал передатчика соответственно на информационный и тактовый входы приемника. Удаленный шлейф позволяет проверить всю линию. В каждом случае имеющаяся в источнике дан
вают следующих типов:
дискретного канала и непрерывного канала;
местный и удаленный;
с местным или дистанционным управлением; одно- и двунаправленный.
вают следующих типов:
дискретного канала и непрерывного канала;
местный и удаленный;
с местным или дистанционным управлением; одно- и двунаправленный.
ПунктПункт
Входные_ А ।. В
ВанныеXII
Выходные / II
данныеI
Входные_।।
данные"*IIX
выходные।।J
ВанныеII
ПунктПункт
Входные_ А ।. В
ВанныеXII
Выходные / II
данныеI
Входные_।।
данные"*IIX
выходные।।J
ВанныеII
Рис. 12 3 Местный и удаленный шлейфы
Рис. 12 3 Местный и удаленный шлейфы
На рис. 12.3 показаны местный и удаленный шлейфы. Местный шлейф позволяет по внутреннему тракту аппарата подать передаваемую информацию и тактовый сигнал передатчика соответственно на информационный и тактовый входы приемника. Удаленный шлейф позволяет проверить всю линию. В каждом случае имеющаяся в источнике дан
На рис. 12.3 показаны местный и удаленный шлейфы. Местный шлейф позволяет по внутреннему тракту аппарата подать передаваемую информацию и тактовый сигнал передатчика соответственно на информационный и тактовый входы приемника. Удаленный шлейф позволяет проверить всю линию. В каждом случае имеющаяся в источнике дан
ных программа позволяет сравнить принятые символы с символами, которые были переданы источником, чтобы проверить правильность работы
тракта.
На рис. 12.4 показан двунаправленный шлейф дискретного канала. Шлейф является дискретным, так как он образован на дискретной стороне модема, и двунаправленным, так как в месте разрыва цепи сформированы два противоположно направленных шлейфа, причем, как видно из рисунка, левый шлейф является местным, а правый — удаленным.
На рис. 12.5 показан шлейф непрерывного канала, так-
же двунаправленный. Левый шлейф является местным шлейфом непрерывного канала, а правый удаленным. Обычно чаще применяются однонаправленные шлейфы. В этом случае тракт после шлейфа отключается во время тестирования [70].
Рис. 12.4. Двунаправленный шлейф дискретного каналаРис. 12.4. Двунаправленный шлейф дискретного канала[wM t-) C^l Мобем К T®^e$,°J!" | w |^-> V—|\^-ная линик
Рис. 12.4. Двунаправленный шлейф дискретного канала
Рис. 12.4. Двунаправленный шлейф дискретного канала
Рис. 12.5. Двунаправленный шлейф непрерывного канала
Диагностирование дискретного канала связи
При возникновении каких-либо неполадок в канале связи обычно сначала выполняется тест модема с помощью встроенных в модем средств диагностирования либо с помощью специальных тестеров передачи данных (ТПД). Встроенные средства диагностирования позволяют вырабатывать сигналы от специального генератора, позволяющего вести передачу с разной скоростью, в виде серий сигналов заданной длины.
Тестеры передачи данных также подают на дискретный вход модема сигналы с различной скоростью и различных кодовых комбинаций, т. е. выполняют роль источника данных, подключенного к модему, а на стороне приема в роли устройства обработки данных проверяют принятые модемом данные. Тестеры передачи данных позволяют также на основании сравнения с эталонной последовательностью вести подсчет и индицировать число ошибочных бит или блоков.
Встроенные средства диагностирования модема имеют более ограниченные возможности по сравнению с тестерами передачи данных.
Для проверки модема в самом модеме устанавливается шлейф и выходные данные модема поступают на его же вход по шлейфу непрерывного канала, имитирующего телефонную линию, как показано на рис. 12.6.
Следует, однако, отметить, что такая схема не обеспечивает полноты проверки, так как тестовые наборы, как правило, не обеспечивают 100 %-ной проверки схем модема, а имитатор линии не может имитировать реальные условия линии связи и в большинстве случаев представляет
собой аттенюатор, хотя иногда он имитирует и частотные характеристики линии.
Следующим этапом проверки канала связи является проверка работы модем с реальной линией (рис. 12.7). При этом в модеме на противоположном конце линии связи устанавливается удаленный шлейф дискретного кана-
Рис 12 6 Схема проверки модема: о —с помощью встроенных средств; б — с помощью ТПДРис 12 6 Схема проверки модема: о —с помощью встроенных средств; б — с помощью ТПДРис. 12.7. Схема проверки модема с линией связи:с — с помощью встроенных средств; б — с помощью ТПДРис. 12.7. Схема проверки модема с линией связи:с — с помощью встроенных средств; б — с помощью ТПД
Рис 12 6 Схема проверки модема: о —с помощью встроенных средств; б — с помощью ТПД
Рис 12 6 Схема проверки модема: о —с помощью встроенных средств; б — с помощью ТПД
Рис. 12.7. Схема проверки модема с линией связи:
с — с помощью встроенных средств; б — с помощью ТПД
Рис. 12.7. Схема проверки модема с линией связи:
с — с помощью встроенных средств; б — с помощью ТПД
Рис. 12 8. Схема проверки модемов с линией связи в обоих направлениях бесшлейфового режима:Рис. 12 8. Схема проверки модемов с линией связи в обоих направлениях бесшлейфового режима:Рис 12.9. Схема проверки модема с линией связи.Рис 12.9. Схема проверки модема с линией связи.
Рис. 12 8. Схема проверки модемов с линией связи в обоих направлениях бесшлейфового режима:
Рис. 12 8. Схема проверки модемов с линией связи в обоих направлениях бесшлейфового режима:
Рис 12.9. Схема проверки модема с линией связи.
Рис 12.9. Схема проверки модема с линией связи.
ла. В этой схеме тестовый набор, сформированный в одном модеме, проходит через линию связи, другой модем, затем через линию связи в первый модем.
Если встроенные средства проверки модема не обнаруживают неисправности, то желательно выполнить проверку с помощью ТПД, который имеет больше возможностей для проверки.
Еще одной схемой тестирования аппаратуры передачи данных и дискретного канала связи без шлейфового режима является схема, приведенная на рис. 12.8. При этом методе тестирования на модемах концов включаются режимы генерации наборов и сравнения с эталоном. По данной схеме можно определить направление передачи, с ко-
а — с помощью встроенных средств; б — с помощью ТПД
а — с помощью встроенных средств, б — с помощью ТПД
торым связаны неполадки, что может помочь в локализации неисправности линии связи.
Одной из схем тестирования дискретного канала, позволяющих исключить из тракта удаленный модем и, таким образом, сократить подозреваемое в неисправности оборудование, является удаленный шлейф непрерывного канала (рис. 12.9). Здесь, однако, следует учесть, что при использовании удаленного шлейфа дискретного канала для проверки линии связи наличие модема на конце линии позволяет восстановить форму сигналов перед их передачей обратно. При удаленном шлейфе непрерывного канала протяженность линии удваивается, что может привести к такому затуханию сигналов, что сделает невозможным использование этого метода.
Если установлено, что в линии связи имеется неисправность, то для более точной локализации неисправности необходимо проверить характеристики линии связи, т. е. канала тональной частоты.
Диагностирование абонентских пунктов
Диагностирование АП может выполняться с помощью встроенных аппаратурных или микропрограммных средств тестового диагностирования или с помощью внешних средств, например тестеров АП.
Рис. 12 10 Схемы проверки различных средств АПД с помощью тестера АП
Тестеры АП представляют собой устройства, позволяющие задавать программу работы и имитировать реальную работу путем задания с пульта скорости приема и передачи данных. Тестеры АП позволяют накапливать поступающую от АП информацию и сравнивать ее с эталонной.
Тестеры АП позволяют проверить АП (рис. 12.10,а), комплекс «АП — модемы» (рис. 12.10,6), комплекс «АП — модем — линия связи — модем—АП» (рис. 12.10,в), ком- плеск «модем—линия связи — модем» со шлейфом дискретного канала на удаленной станции (рис. 12.10,г), комплекс «модем—линия связи» (рис. 12.10,6), модем по шлейфу непрерывного канала на выходе модема (рис. 12.10, е), МПД (рис. 12.10,ж). Дополнительные возможности проверки дает совместное использование устройств проверки АП и ТПД (рис. 12.10,з). Первый из них выполняет роль генератора данных, а второй — анализатора ошибок.
ПРОВЕРКА КАНАЛА ТОНАЛЬНОЙ ЧАСТОТЫ
Техническое состояние канала тональной частоты (ТЧ) определяется в основном [70] затуханием, частотной характеристикой, уровнем помех.
При передаче сигналов по каналам ТЧ соотношения
между мощностями, напряжениями и токами электрических сигналов измеряются в децибелах.
Одним из параметров ка
Рис. 12.11 Определение затухания сигналаРис. 12.11 Определение затухания сигналанала является затухание сигнала, которое определяется путем замера уровней сигнала эталонной частоты на выходе модема передающей
Рис. 12.11 Определение затухания сигнала
Рис. 12.11 Определение затухания сигнала
стороны и на входе модема принимающей стороны, как показано на рис. 12.11.
Измерение уровней сигна
ла на передающей и приемной сторонах производят измерителем уровня (ИУ) [7].
При затухании в линии, находящемся в пределах нормы, проверяются другие характеристики линии. Если за
тухание превышает допустимую норму, то выполняется
поиск участка тракта, в котором затухание недопустимо велико, и устраняется вызывающая его причина.
Другим параметром канала ТЧ, который необходимо проверить при нарушении его работоспособности, является частотная характеристика. Канал ТЧ должен иметь частотную характеристику, удовлетворяющую определенным стандартам, которые задают максимально допустимую разницу (в децибелах) между затуханием на эталонной и других частотах. Частотную характеристику строят, откладывая по оси ординат в децибелах абсолютное затухание сигнала или относительное к затуханию на эталонной частоте, а по оси абсцисс — частоту. На рис. 12.12 кривая /
Рис. 12.12. Частотная характеристика линии связи (1— в допустимых пределах; 2 — вне допустимых пределов)
соответствует типичной частотной характеристике канала ТЧ (заштрихованы области недопустимых значений). Частотная характеристика 2 свидетельствует о наличии неисправности. На ординате справа показано абсолютное затухание сигнала в децибелах, а на ординате слева — относительное к затуханию на эталонной частоте. Сигналы на частотах менее 300 или более 3400 Гц затухают настолько сильно, что непригодны для передачи. Поэтому считается, что полоса пропускания канала ТЧ равна 3100 Гц.
Измерения частотной характеристики выполняются специальной аппаратурой, которая позволяет изменять частоту передаваемого сигнала и измерять его затухание на приемном конце линии.
Частотная характеристика может быть получена по точкам с помощью звукового генератора и измерителя
уровня с последующим подсчетом затухания на каждой частоте или визуальным наблюдением формы характеристики на экране ЭЛТ измерителя частотных характеристик. Первый метод достаточно прост, но трудоемок, а второй позволяет только качественно оценить частотную характеристику канала ТЧ.
Иногда частотная характеристика снимается с помощью прибора, устанавливаемого на передающем конце канала ТЧ [7] и содержащего измерительный генератор и указатель уровня. Этот прибор измеряет остаточное затухание канала при фиксированных частотах диапазона 300— 3400 Гц. С этой целью организуется шлейф на приемном конце канала ТЧ. Измерительный генератор включается в цепь передачи, а указатель уровня — в цепь приема, как показано на рис. 12.13.
Рис. 12 13 Определение остаточного затухания линии связи в диапазоне тональных частот:
ИГ — импульсный генератор, УУ — указатель уровня
Причиной ухудшения передачи может быть также шум. Для измерения шумов необходимо, чтобы прибор для измерения шумов воспринимал шумы, частота которых лежит в полосе пропускания канала ТЧ, т. е. от 300 до 3400 Гц. С этой целью прибор для измерения шумов подключается к линии через фильтр 300/3400 Гц.
Замер шумов в канале ТЧ без передачи сигналов не полностью соответствует реальной картине, так как в телефонных цепях есть схемы, которые генерируют шум только в присутствии сигнала. С этой целью на противоположном конце линии генерируют сигнал, но при замере шумов этот сигнал исключают из измерения, так как в противном случае он может быть интерпретирован как шум. Это достигается с помощью специального фильтра с провалом частотной характеристики на частоте сигнала. При этом теряются и соответствующие составляющие шума, однако их влияние на общий шум незначительно.
Глава 13
ПРИНЦИПЫ АВТОМАТИЗАЦИИ ПРОФИЛАКТИЧЕСКИХ ИСПЫТАНИЙ
ТИПЫ ПРОФИЛАКТИЧЕСКИХ ИСПЫТАНИЙ
Как отмечалось в гл. 1 и 2, целью профилактических испытаний ЭВМ является уменьшение вероятности возникновения сбоев и отказов при нормальной эксплуатации машины путем выявления и замены элементов с граничными значениями параметров. Помимо того, профилактические испытания предназначены для выявления отказов в оборудовании, не охваченном контролем или не участвующем в вычислительном процессе. Таким образом, профилактические испытания повышают надежность и готовность ЭВМ при нормальной эксплуатации, а их автоматизация является важным фактором повышения обслуживаемости ЭВМ.
В ЭВМ широкого назначения невозможно обеспечить 100%-ный охват оборудования контролем, так как это потребовало бы дублирования аппаратуры многих узлов. Кроме того, невозможно обеспечить самоконтролируемость всех схем контроля. Таким образом, могут иметь место и не обнаруживаемые во время работы ЭВМ отказы, что приводит к ухудшению достоверности вычислений.
Различают следующие типы профилактических испытаний:
для выявления элементов с параметрами, близкими к предельным, являющихся потенциальными источниками сбоев;
для выявления отказов в неконтролируемой части аппаратуры;
для выявления отказов в аппаратуре ЭВМ или в отдельных устройствах, не участвующих в течение какого-то времени в вычислительном процессе.
Обычно профилактические испытания выполняются с .помощью диагностических тестов с остановом процесса решения задач на машине. Для уменьшения простоя ЭВМ из-за профилактических испытаний возможны следующие решения:
параллельное (мультипрограммное) выполнение тестов, .обнаруживающих отказы в не охваченной контролем части аппаратуры;
параллельное (мультипрограммное) выполнение тестов аппаратуры или устройств, не участвующих в вычислительном процессе;
уменьшение времени тестирования отказов в аппаратуре, не охваченной контролем и не участвующей в вычислительном процессе, путем разработки специальных тестов, рассчитанных только на их выявление.
Поскольку основной задачей таких тестов является обнаружение отказов за минимально короткое время, эти тесты должны охватывать по возможности больший объем аппаратуры в отличие от диагностических тестов, использующих для улучшения разрешающей способности метод раскрутки, т. е. постепенного наращивания проверяемой аппаратуры.
Однако в ЭВМ всегда имеется аппаратура, которую невозможно проверить в режиме параллельного тестирования. Так, например, если схемы контроля ЭВМ не имеют свойства самоконтролируемости, то неисправности типа «постоянный логический нуль» на выходе схем контроля не обнаруживаются. Для выявления таких неисправностей схем контроля необходима автоматическая имитация ошибок и проверка реакции схем контроля. Аналогичная аппаратура имеется и в оборудовании обслуживания ЭВМ, а также во внешних устройствах. Подобные проверки невозможно выполнять путем параллельного тестирования, так как это может привести к нарушению нормальной работы ЭВМ. Поэтому подобные проверки выполняются при останове ЭВМ на регламентные профилактические работы. Таким образом, профилактические испытания можно подразделить на два вида:
не требующие останова ЭВМ. Эти испытания проводятся параллельно с решением задач;
требующие останова ЭВМ. Эти испытания проводятся во время регламентных профилактических работ и монополиризуют ЭВМ на время испытаний.
При определении периода профилактических испытаний, требующих останова ЭВМ (см. § 2.5), этот период должен согласоваться с общим графиком регламентных профилактических работ.
ПРОГРАММНЫЕ СРЕДСТВА ПРОФИЛАКТИЧЕСКИХ ИСПЫТАНИЙ
Программные средства профилактических испытаний делятся на следующие типы: автономные тесты; неавтономные тесты, выполняемые под управлением конкретной операционной системы; универсальные тесты, выполняемые в любой операционной среде и без нее.
Автономные тесты обычно требуют прекращения решения задач, так как они монополизируют ЭВМ на время тестирования. К автономным тестам относится, в частности, комплект программ технического обслуживания (КПТО) ЕС ЭВМ.
Неавтономные тесты позволяют выполнять параллельное тестирование устройств под управлением специальных программ операционной системы одновременно с решением задач, поэтому они иногда называются параллельными. Неавтономные тесты обычно ориентированы на работу в конкретной операционной среде. К неавтономным тестам относится, в частности, комплект неавтономных тестов устройств (КНТУ) ОС ЕС.
Универсальные тесты могут выполнять параллельное тестирование в любой операционной среде и в автономном режиме благодаря наличию нескольких управляющих программ. К универсальным тестам относится, в частности, система оперативного тестирования СОТ.
В настоящем параграфе КПТО, КНТУ и СОТ рассматриваются только как средство для проведения профилактических испытаний.
Автономные тесты
Автономные тесты состоят из тестов ядра и тест-сек- ций, выполняемых под управлением управляющей программы. Тесты ядра предназначены для проверки основного оборудования ЭВМ и устройств, необходимых для работы управляющей программы и загрузки тест-секций. Успешное выполнение тестов ядра позволяет загрузить управляющую программу и продолжить проверку остальных функциональных средств с помощью тест-секций. Управляющая программа обеспечивает последовательную загрузку тест-секций и их выполнение. Тест-секция обычно состоит из заглавия и переменного числа тестовых примеров. Тестовый пример образует логически независимый
блок и содержит префикс и собственно проверочную часть. Заглавие секции и префикс примера являются областями связи секции и тестового примера с управляющей программой.
Управляющая программа выполняет следующие функции: настраивается на возможности и емкость памяти конкретной ЭВМ, готовность устройств ввода-вывода, декодирует задаваемые оператором приказы и выполняет их, производит предварительную последовательность проверок устройств, загрузку тест-секций в оперативную память, а также выполняет ряд функций, общих для всех тест-секций, например печать сообщений, преобразованных кодов. Для работы управляющей программы обычно требуются определенная емкость оперативной памяти, устройство ввода приказов оператора (пишущая машинка или дисплей), устройство вывода сообщений (пишущая машинка, дисплей или АЦПУ), устройство загрузки управляющей программы (накопители на магнитной ленте или магнитных дисках или устройство ввода с перфокарт).
При проверке ЭВМ сначала с помощью процедуры начальной загрузки в оперативную память загружается управляющая программа и затем по приказам оператора вводится и выполняется тест-секция. После выполнения одной тест-секции загружается и выполняется следующая до тех пор, пока не будут выполнены все тест-секции, указанные в приказе оператора. Связь оператора с управляющей программой выполняется с помощью приказов, задаваемых оператором. Тест-секция обычно обращается к управляющей программе для вызова стандартных программ обслуживания с помощью команды ВЫЗОВ СУПЕРВИЗОРА.
Работа управляющей программы начинается с ее настройки с использованием данных о системной конфигурации. По этим данным управляющая программа формирует справочную таблицу тест-секций, таблицу каналов, таблицу устройств управляющей программы и таблицу устройств ЭВМ. Справочная таблица тест-секций содержит информацию о возможностях процессоров, объеме оперативной памяти, адресе таблиц. Таблица каналов содержит информацию о каналах и их особенностях. Таблица устройств ЭВМ описывает входящие в состав ЭВМ устройства, их адреса и характеристики. Таблица устройств управляющей программы содержит информацию об устройствах загрузки и ввода-вывода, предназначенных для управляющей программы.
Тест-секции могут быть как проверочными, т. е. ориентированными на проверку функций, выполняемых устройством, так и диагностическими, т. е. обеспечивающими локализацию неисправностей до группы ТЭЗ.
Диагностические тест-секции используют специальные диагностические команды, позволяющие получить доступ к минимальному объему аппаратуры для обеспечения требуемой глубины поиска дефекта.
Параллельные (неавтономные тесты)
Параллельное или оперативное тестирование означает, что система выполняет тестирующие или диагностические программы одновременно с решением задач пользователя. Это позволяет повысить эффективность использования ЭВМ, а также сократить время восстановления периферийных устройств, так как возможность параллельного диагностирования неисправностей периферийных устройств позволяет получить большую глубину поиска дефекта по сравнению с автономной диагностикой. В последнем случае ограниченные возможности периферийных устройств не позволяют быстро локализовать их неисправность в автономном режиме. Кроме того, если неисправность находится в интерфейсе между центральным процессором и периферийным устройством, она также не может быть локализована в автономном режиме.
Операционные системы обычно предусматривают наличие управляющей программы, которая позволяет тестировать периферийные устройства параллельно с решением задач пользователя. При этом каждое периферийное устройство обеспечивается набором тест-секций, вызываемых по приказу оператора.
Универсальные тесты
Различие способов подключения программ к разным операционным системам приводит к необходимости иметь разные тесты для одного и того же устройства. Этот недостаток устраняется при разработке тестов по принципу независимости тестов от операционной системы. При этом один и тот же тест может выполняться как под управлением любой из операционных систем, функционирующих на ЭВМ, так и без них. Этот принцип реализуется с помощью специальных административных программ, обеспечиваю-
щих программный интерфейс между тестами и операционными системами. Интерфейс между тестами и административными программами обычно унифицирован.
Подобная система тестирования в ЕС ЭВМ носит название системы оперативного тестирования (СОТ) ЕС ЭВМ. Она имеет три административные программы, обеспечивающие выполнение тестов в среде операционных систем ДОС ЕС (АП ДОС), ОС ЕС (АП ОС), а также при их отсутствии (СНАП) (рис. 13.1).
Рис. 13.1. Система оперативного тестирования
Управляющая программа СОТ вызывается либо командой START с консоли оператора ЭВМ, либо операторами языка управления заданиями. В процессе инициализации СОТ выдается сообщение, запрашивающее параметры теста, и оператор задает тестируемые устройства ввода-вывода и режимы тестирования.
Тест разбивается на несколько тест-секций. Каждая тест-секция содержит один модуль, называемый корневым, и подчиненные ему модули.
Корневой модуль называют ядром теста. В ядре концентрируются основные процедуры (например, обращение к управляющей программе, сравнение результатов с эталонами, формирование печатающей информации и т. д.).
Тест-модули содержат цепочки, сообщения тестов, формирующие эталоны, обращения к ядру.
Административные программы функционально состоят из супервизорной и исполнительной программ.
Супервизорная программа управляет работой административной программы, организует взаимодействие с оператором, планирует и запускает тесты, обрабатывает прерывание ввода-вывода и внешние прерывания, осуществляет меры по защите данных, обрабатывает аварийные ситуации, возникающие при работе теста.
Исполнительная программа осуществляет запуск и управление выполнением операций ввода-вывода на тестиру-
емых и вспомогательных устройствах, обмен информацией с оператором, подготовку и вывод информации о результатах тестирования, управление структурой теста.
АВТОМАТИЗАЦИЯ ПРОФИЛАКТИЧЕСКИХ ИСПЫТАНИЙ С ИЗМЕНЕНИЕМ НАПРЯЖЕНИЙ ВТОРИЧНЫХ ИСТОЧНИКОВ ПИТАНИЯ
Вследствие физического старения элементов, которое может выражаться в увеличении числа сбоев, надежностные характеристики ЭВМ ухудшаются. Для выявления элементов с ухудшенными параметрами с целью их замены применяют профилактические испытания (профилактический контроль) ЭВМ в утяжеленных режимах. Подобные испытания провоцируют неработоспособность элементов с ухудшенными характеристиками. Локализация и устранение путем замены таких элементов восстанавливает надежностные характеристики ЭВМ.
Отказы интегральных микросхем могут быть мгновенными и постепенными. Анализ показывает, что возникнове
ИспрабноеИспрабноеС утуВшеннынц параметрамиС утуВшеннынц параметрамиIРаботоспособноеIРаботоспособноеНеработоспособноеНеработоспособноеРис. 13.2. Состояния элементов в процессе эксплуатацииРис. 13.2. Состояния элементов в процессе эксплуатациинию отказа последнего типа предшествует ухудшение характеристик, проявляющееся в увеличении числа сбоев. Возможные состояния элементов в процессе эксплуатации показаны на рис. 13.2, т. е. процесс развития определенной части отказов элементов ЭВМ можно представить следующим образом: с какого-то момента времени начинается ухудше-
Испрабное
Испрабное
С утуВшеннынц параметрами
С утуВшеннынц параметрами
I
Работоспособное
I
Работоспособное
Неработоспособное
Неработоспособное
Рис. 13.2. Состояния элементов в процессе эксплуатации
Рис. 13.2. Состояния элементов в процессе эксплуатации
ние характеристик элемента, проявляющееся в увеличении числа сбоев. С течением времени ухудшение характеристик
переходит в отказ.
Проведение плановых профилактических испытаний в утяжеленных режимах, т. е. при профилактическом изменении напряжений вторичных источников питания, позволяет перевести логические элементы с ухудшенными параметрами в неработоспособное состояние, локализовать их и устранить путем замены на исправные элементы. Проведение таких испытаний позволяет устранить будущую неисправность во время плановых профилактических работ и предупредить возникновение отказа.
Если поток отказов имеет интенсивность X, то после проведения профилактики возникает разреженный поток отказов с параметром Лр. Это разрежение объясняется тем, что при проведении профилактических испытаний устраняются элементы с ухудшенными параметрами, появившиеся за межпрофилактический срок.
Обычно профилактические испытания целесообразно применять в тех случаях, когда предупредительная замена элементов с ухудшенными характеристиками обходится дешевле последствий отказов [38].
Если предположить затраты, связанные с отказом, равными Сь а затраты, связанные с предупредительной заменой еще не отказавших элементов, равными С2, то профилактические испытания целесообразны, если Ci>C2. Затраты Ci интерпретируются как среднее время потерь на восстановление при аварийном отказе, а С2 — как среднее время локализации и замены элемента с граничными параметрами.
Эффективность профилактических испытаний для выяв^ ления элементов с граничными параметрами повышается, если тестовые программы выполняются при различных сочетаниях отклонений напряжений источников питания от номинальных значений.
При ручном профилактическом контроле ограниченное время регламентных работ не позволяет проверить аппаратуру на большом числе сочетаний.
Автоматизация профилактического контроля напряжений питания позволяет увеличить число проверяемых сочетаний и тем самым повысить эффективность профилактики.
Рассмотрим систему автоматического изменения напряжений питания во время профилактических испытаний на примере ЭВМ ЕС-1046.
В ЭВМ ЕС-1046 профилактические испытания с автоматическим изменением напряжений выполняются в двух режимах: во время выполнения микродиагностики и во время выполнения тест-секций под управлением тест-монитора.
При выполнении микродиагностики с автоматическим профилактическим контролем каждая группа тестов микродиагностики, находящаяся в ОП СП, выполняется несколько раз при различных сочетаниях напряжений вторичных источников питания (ВИП), питающих аппаратуру, проверяемую при выполнении группы тестов.
Число повторений группы тестов микродиагностики отсчитывается на счетчике профилактического контроля, в ка-
честве которого используется одна из ячеек местной памяти СП. Приращение счетчика профилактического контроля производится по команде «Конец группы тестов», записанной в конце каждой группы тестов.
Во время первого прохода группа тестов микродиагнрс- тики выполняется при номинальных значениях напряжений ВИП. После приращения счетчика профилактического контроля в конце очередного прохода группа тестов повторяется сначала. В конце очередного прохода выполняется настройка источников питания, которая происходит путем передачи информации об установке ВИП в специальный контролер источников питания (СКИП).
Характерным для ЭВМ ЕС-1046 яляется одновременное отклонение напряжений всех источников одного и того же напряжения, что создает тяжелый режим работы и повышает эффективность профилактики на тестах микродиагностики.
Вторым видом профилактических испытаний с изменением напряжений источников питания является выполнение тест-секций под управлением тест-монитора. В этом режиме регистр профилактического контроля устанавливается с помощью команды Диагностика. Информация для профилактического контроля задается в одном из общих регистров.
В составе КПТО имеется тест-секция автопрофилактики, функциями которой является изменение напряжений источников питания и управление циклическим повторением каждой вызываемой тест-секции при различных сочетаниях отклонения напряжений ВИП. Тест-секция автоматического профилактического контроля состоит из секционного заглавия, подпрограммы выдачи начальных сообщений, подпрограммы изменения напряжений источников питания, подпрограммы связи и подпрограммы восстановления. Подпрограмма выдачи начальных сообщений выдает оператору сообщение о том, что можно начать выполнение теста готовности в режиме автоматического профилактического контроля. Подпрограмма изменения напряжений источников питания последовательно устанавливает требуемые отклонения напряжений источников питания. Подпрограмма связи вносит изменения в тест-монитор, обеспечивая тем самым непосредственную связь между проверяемой тест- секцией и тест-секцией автоматического профилактического контроля. Подпрограмма связи обеспечивает также загрузку проверяемой тест-секции в другую область основной па-
мяти. Подпрограмма восстановления восстанавливает исходное состояние тест-монитора после выполнения тест-сек- цией теста готовности в режиме автоматического профилактического контроля. Тест-секция автоматического профилактического контроля обеспечивает пятикратное выполнение каждой тест-секции с различными напряжениями источников питания.
Глава 14
АВТОМАТИЧЕСКОЕ НАКОПЛЕНИЕ ИНФОРМАЦИИ ОБ ОШИБКАХ, ЕЕ ОБРАБОТКА И ИСПОЛЬЗОВАНИЕ
ЦЕЛЬ НАКОПЛЕНИЯ ИНФОРМАЦИИ ОБ ОШИБКАХ
Для повышения надежности, готовности и обслуживаемости в современных ЭВМ предусматриваются средства автоматического накопления информации об ошибках при работе машины.Эта информация позволяет накапливать статистику ошибок с целью выявления наиболее вероятных источников ошибок, а также локализовать причину случайных сбоевДля повышения надежности, готовности и обслуживаемости в современных ЭВМ предусматриваются средства автоматического накопления информации об ошибках при работе машины.Эта информация позволяет накапливать статистику ошибок с целью выявления наиболее вероятных источников ошибок, а также локализовать причину случайных сбоев11. Нормальная „ работа ЭВМ *. Нормальная „ работа ЭВМ *НетНетОшибка'Ошибка'ДаДаСистемныежурналСистемныежурналошибокошибокРис. 14 1. Процедура обработки ошибокРис. 14 1. Процедура обработки ошибокРегистрацияинформацииоб ошибке всистемномжурниле ОСРегистрацияинформацииоб ошибке всистемномжурниле ОСОтказОтказНетНетПроцедурыЭосстаноб-лепилПроцедурыЭосстаноб-лепили перемежающихся отказов. Последняя задача вследствие невоспроизводимости ситуации представляет собой одну из наиболее сложных проблем эксплуатации ЭВМ.Автоматическое накопление информации об ошибках основано на регистрации состояния ЭВМ в момент ошибки. В операционных системах предусматриваются специальные средства обработки различных типов ошибок и накопления информации о них в специальных системных журналах ошибок (обычно область на резидентном магнитном диске). Обычная процедура обработки ошибок показана на рис. 14.1.и перемежающихся отказов. Последняя задача вследствие невоспроизводимости ситуации представляет собой одну из наиболее сложных проблем эксплуатации ЭВМ.Автоматическое накопление информации об ошибках основано на регистрации состояния ЭВМ в момент ошибки. В операционных системах предусматриваются специальные средства обработки различных типов ошибок и накопления информации о них в специальных системных журналах ошибок (обычно область на резидентном магнитном диске). Обычная процедура обработки ошибок показана на рис. 14.1.
Для повышения надежности, готовности и обслуживаемости в современных ЭВМ предусматриваются средства автоматического накопления информации об ошибках при работе машины.
Эта информация позволяет накапливать статистику ошибок с целью выявления наиболее вероятных источников ошибок, а также локализовать причину случайных сбоев
Для повышения надежности, готовности и обслуживаемости в современных ЭВМ предусматриваются средства автоматического накопления информации об ошибках при работе машины.
Эта информация позволяет накапливать статистику ошибок с целью выявления наиболее вероятных источников ошибок, а также локализовать причину случайных сбоев
1
1
. Нормальная „ работа ЭВМ *
. Нормальная „ работа ЭВМ *
Нет
Нет
Ошибка'
Ошибка'
Да
Да
Системныежурнал
Системныежурнал
ошибок
ошибок
Рис. 14 1. Процедура обработки ошибок
Рис. 14 1. Процедура обработки ошибок
Регистрацияинформацииоб ошибке всистемномжурниле ОС
Регистрацияинформацииоб ошибке всистемномжурниле ОС
Отказ
Отказ
Нет
Нет
ПроцедурыЭосстаноб-лепил
ПроцедурыЭосстаноб-лепил
и перемежающихся отказов. Последняя задача вследствие невоспроизводимости ситуации представляет собой одну из наиболее сложных проблем эксплуатации ЭВМ.
Автоматическое накопление информации об ошибках основано на регистрации состояния ЭВМ в момент ошибки. В операционных системах предусматриваются специальные средства обработки различных типов ошибок и накопления информации о них в специальных системных журналах ошибок (обычно область на резидентном магнитном диске). Обычная процедура обработки ошибок показана на рис. 14.1.
и перемежающихся отказов. Последняя задача вследствие невоспроизводимости ситуации представляет собой одну из наиболее сложных проблем эксплуатации ЭВМ.
Автоматическое накопление информации об ошибках основано на регистрации состояния ЭВМ в момент ошибки. В операционных системах предусматриваются специальные средства обработки различных типов ошибок и накопления информации о них в специальных системных журналах ошибок (обычно область на резидентном магнитном диске). Обычная процедура обработки ошибок показана на рис. 14.1.
Средства накопления информации о сбоях и отказах развиваются в направлении охвата всех возможных ошибок в системе, сохранения этой информации для последующего анализа, а также сокращения затрат времени операционной системы на указанные действия путем аппаратурной реализации некоторых ее функций.
ПРОГРАММНЫЕ СРЕДСТВА ОБРАБОТКИ ОШИБОК
Существуют следующие программные средства обработки ошибок:
обработчик машинных ошибок;
обработчик канальных ошибок;
регистратор сбоев периферийных устройств;
регистратор отказов периферийных устройств; регистратор перезагрузок операционной системы; регистратор потерь прерываний ввода-вывода;
регистратор реконфигурации;
регистратор программных ошибок.
Обработчик машинных ошибок предназначен для обработки ошибок, обнаруженных схемами контроля процессора. Он обеспечивает регистрацию состояния ЭВМ в момент ошибки процессора в системном журнале и восстановление системы [25].
Обработчик канальных ошибок предназначен для обработки канальных ошибок. Он регистрирует данные об ошибке в системном журнале и подготавливает повторение отказавшей команды ввода-вывода с помощью программ восстановления, имеющихся для каждого периферийного устройства.
Для регистрации состояния ЭВМ в моментошибки оно замораживается, после чего записывается в оперативную или специальную память, а затем — в системный журнал ошибок. Регистрация в оперативной памяти выполняется при разрешении прерывания от схем контроля. Если в моменты появления ошибки прерывание запрещено, то состояние ЭВМ теряется. Регистрация в специальной буферной памяти удобна тем, что позволяет сохранить информацию об ошибке даже при запрете прерывания от схем контроля. Перепись зарегистрированного состояния ЭВМ в системный журнал ошибок осуществляется обработчиком машинных ошибок при наличии разрешения на прерывание от схем контроля.
Накопление и обработка записей о состоянии ЭВМ в мо-
мент появления ошибки очень важны для разработки организационно-технических мероприятий по повышению эксплуатационной надежности. Поэтому записи об ошибках накапливаются и во время выполнения профилактических испытаний ЭВМ. Информация об этих ошибках обычно записывается на лентах накопления, предназначенных для хранения информации об ошибках за небольшой промежуток времени.
Информация об ошибках за длительный период эксплуатации накапливается на лентах истории. Для постоянного пополнения информации об ошибках на лентах истории системе придаются программные средства для переписи на ленту истории информации об ошибках, накопленной в системном журнале, магнитных носителях пультовых накопителей и лентах накопления.
Регистратор сбоев периферийных устройств предназначен для определения статистики сбоев для каждого периферийного устройства ЭВМ. Регистратор сбоев получает управление от программ восстановления от сбоев периферийных устройств, имеющихся в составе операционной системы. Каждый сбой периферийного устройства приводит к увеличению на единицу содержимого соответствующего счетчика сбоев.
При переполнении счетчика сбоев регистратор сбоев формирует запись об ошибке периферийного устройства в системный журнал ошибок.
Регистратор отказов периферийных устройств предназначен для записи в системный журнал ошибок информации о неисправимой ошибке (отказе) периферийного устройства.
Диаграмма, иллюстрирующая работу обработчиков машинных и канальных ошибок, а также регистратора сбоев и отказов периферийных устройств, приведена на рис. 14.2.
Регистратор перезагрузок операционной системы предназначен для записи в системный журнал ошибок информации о причине перегрузки. Число перезагрузок операционной системы является одним из показателей надежности системы. Поэтому во время начальной загрузки операционной системы в ответ на запрос системы предусматривается ввод причины загрузки. В качестве причин перезагрузки операционной системы могут быть указаны такие, как неисправность питания, ошибка аппаратуры, ошибка носителя данных, ненормальное завершение начальной загрузки, ошибка оператора, ошибка в программе пользователя и др.
Работа операционнойсистемы
Да
Да
Прерывание'
по машинной
ошибке
Нет
Нет
Прерываниеввода-вывода
Супервизор.вводд-вь^дВа
Да
Ошибка
в канале
Ошибка устройства
Нет
Нет
Программавосстиновления отошибок устройства
*
Регистратор статис-тических данных
1
Обработчикмашинных ошибок
Нет
Да
постоянная
ошибка
I Регистрация инфор-мации об ошибке
Г
ГПерехав 6 состояние Л ^ оживания J
Обработчикканальных ошибок
I
^ нал из регистрации и устройства -
Нет
Повторение успешно
Регистратор ошибокввода-вывода
Процедуры восстановления
Регистрация информации об ошибка
Подготовка повторения — операции, устройстве
Рис. 14.2. Схема функционирования обработчиков машинных, канальных ошибок и регистраторов ошибок ввода-вывода
Статистика причин перезагрузок операционной системы позволяет установить наиболее вероятные среди них и принять мери к их устранению.
Регистратор потерь прерываний ввода-вывода предназначен для записи в системный журнал информации об отсутствии прерываний ввода-вывода, свидетельствующих об окончании начатых операций ввода-вывода. Эта информация включает тип периферийного устройства, его адрес и время.
Регистратор реконфигураций предназначен для записи в системный журнал информации о случаях динамической реконфигурации устройств. Средства динамической рекон-
фигурации операционных систем позволяют при ошибках НМЛ, НМД переустановить пакет или ленту на другое устройство и продолжить нормальную работу. Учет этих случаев также позволяет получить данные о надежности накопителей.
Регистратор программных ошибок предназначен для записи в системный журнал информации о программных ошибках, некоторых ошибках оператора, неудачных попытках программного восстановления при ошибках в аппаратуре.
ПРОГРАММНЫЕ СРЕДСТВА НАКОПЛЕНИЯ, РЕДАКТИРОВАНИЯ И ПЕЧАТИ ИНФОРМАЦИИ ОБ ОШИБКАХ
Программные средства накопления, редактирования и печати информации об ошибках выполняют редактирование и печать, обобщение ошибок по типам и устройствам, перепись записей об ошибках на ленту истории и позволяют получить:
обобщенные данные о сбоях и отказах за заданный интервал времени;
обобщенные данные об отказах и сбоях периферийных устройств;
тенденцию изменения надежности ЭВМ во времени в течение заданного интервала с указанием числа сбоев и отказов за каждый день заданного интервала времени;
обобщение статистики по всем накопителям на магнитных дисках и магнитных лентах;
распечатку истории сбоев и отказов за заданный промежуток времени с краткой характеристикой задания, адреса периферийного устройства, команды, на которой произошла ошибка, серийного номера тома, а также действий системы;
распечатку по типам записей.
С целью сокращения непроизводительных затрат времени и упрощения интерфейса между аппаратурой и программными средствами в современных ЭВМ некоторые функции операционной системы реализуются аппаратурномикропрограммным способом.
К этим функциям относятся регистрация состояния ЭВМ в момент сбоя и восстановление ЭВМ при сбоях путем повторения прерванной операции, накопление информации об ошибках периферийного устройства.
СБОР, ОБРАБОТКА, ОБОБЩЕНИЕ И НАКОПЛЕНИЕ ИНФОРМАЦИИ О НАДЕЖНОСТИ ЭВМ
С целью усовершенствования ЭВМ, повышения надежности и эффективности функционирования пользователи ЭВМ представляют разработчику и заводу-изготовителю информацию об отказах и их причинах. Эта информация позволяет установить эффективную обратную связь между разработчиками, изготовителями и пользователями ЭВМ.
Целью сбора, обработки, обобщения и накопления информации о причинах ошибок является:
усовершенствование конструкции и технологии изготовления ЭВМ;
проведение мероприятий, направленных на повышение качества и эффективности обслуживания;
создание банка симптомов ошибок.
В процессе этих работ решаются следующие задачи: определение наименее надежных изделий;
определение причин и механизмов возникновения отказов;
выявление влияния условий и режимов эксплуатации на надежность;
определение влияния частоты и продолжительности профилактических работ на надежность.
Первичные формы учета предназначены для записи первичной несистематизированной информации о надежности. Первичными формами учета информации о надежности являются аппаратурный журнал и сводная карточка учета неисправностей. Аппаратурный журнал предназначен для ведения всех записей, необходимых обслуживающему персоналу при проведении работ, и записей, характеризующих наработку на отказ и неисправность ЭВМ, внешнее проявление неисправности, время ее возникновения, обнаружения и устранения, неисправное устройство.
При сборе информации о надежности особое внимание следует уделять информации по анализу причин отказа изделий.
Информация о надежности, вносимая в первичные формы учета, должна быть изложена четко и кратко, иметь достаточную полноту и достоверность с целью обеспечения возможности последующего ее кодирования с помощью таблиц шифров для обработки на ЭВМ.
При индивидуальном обслуживании ЭВМ пользователи заполняют сводную карточку учета неисправностей и вы-
сылают ее на предприятие-изготовитель с определенной периодичностью.
При централизованном обслуживании сбор и обработка информации о надежности сосредотачиваются в руках одной организации, что повышает эффективность этой системы.
Для автоматизированной обработки информации о надежности данные с первичных форм учета переносятся на специальные карты учета неисправностей, разработанные с учетом автоматизированной обработки.
Формы учета должны обеспечивать возможность решения задач по сбору, обработке, обобщению и накоплению информации о надежности. Они должны быть достаточно просты и не должны быть перегружены информацией, с тем чтобы их заполнение не требовало много времени.
Для автоматизированной обработки информации о надежности имеются пакеты прикладных программ, которые на основании имеющейся информации позволяют получить выходные документы, включающие в себя качественные и количественные характеристики надежности, сведения о: неисправностях изделия в целом;
наработке на отказ;
техническом уровне разрабатываемого изделия;
неисправностях, принятых мерах и времени, затраченном на устранение неисправностей;
параметрах потока отказов;
вероятности безотказной работы;
среднем времени восстановления;
коэффициенте готовности.
Наличие систем автоматизированой обработки информации о надежности ЭВМ позволяет создать банк симптомов ошибок и методов их устранения. Наличие большого и постоянно обновляемого банка симптомов ошибок является надежным источником статистики ошибок и рекомендаций по устранению неисправностей. Кроме предоставления аналитических данных для усовершенствования выпускаемых ЭВМ этот банк содержит информацию для программы предсказания надежности. На основе банка симптомов ошибок может быть составлен и рекомендуемый список запасных частей ЭВМ.
Глава 15
МЕТОДЫ ПОВЫШЕНИЯ ЭКСПЛУАТАЦИОННОЙ
НАДЕЖНОСТИ СИСТЕМЫ ЭЛЕКТРОПИТАНИЯ ЭВМ
ОСНОВНЫЕ ПРОБЛЕМЫ ЭКСПЛУАТАЦИИ СИСТЕМ
ЭЛЕКТРОПИТАНИЯ ЭВМ
Практика эксплуатации ЭВМ показывает, что основными проблемами, возникающими при эксплуатации систем электропитания ЭВМ, являются:
оперативный контроль напряжения и локализация отказов источников питания ЭВМ;
защита ЭВМ от возмущений в системе электропитания; защита ЭВМ от длительных перерывов электропитания.
Контроль напряжения и локализация отказов вторичных источников питания
В крупных современных ЭВМ число вторичных источников питания достигает нескольких десятков и контроль их выходных напряжений, а также локализация отказов представляет собой достаточно трудоемкую процедуру.
Для облегчения эксплуатации системы электропитания в современных ЭВМ предусматриваются средства оперативного контроля напряжения и локализации отказов вторичных источников питания ВИП с индикацией напряжения на табло цифрового вольтметра или на экране дисплея сервисного процессора.
Примером ЭВМ с оперативным контролем и измерением выходных напряжений является ЭВМ ЕС-1046.
В ЭВМ ЕС-1046 имеется специальный контроллер источников питания (СКИП), назначением которого является измерение и профилактический контроль напряжений (ВИП), локализация места и типа неисправностей в системе питания, таких как неисправность ВИП и блоков управления питанием (БУП), а также температурных перегревов.
Структурная схема СКИП приведена на рис. 15.1. Состояние СКИП, а именно источников питания, БУП и датчиков температуры, индицируется в кадре «Электропитание». Работой СКИП управляет блок выбора режима БВР, который через входной регистр связан с сервисным процессором. Последний передает в БВР адрес объекта контроля, коды управления режимами (профилактический контроль- минимум, профилактический контроль-максимум, номинал,
контроль БУП, контроль перегревов). Адреса и коды управления режимами поступают далее в коммутаторы измерения КИ, профилактического контроля КП и аварии КА. Адрес объекта контроля из БВР поступает на дешифратор ДШ, выходы которого подключены к коммутаторам КИ, КП, КА. В том случае, когда объектами контроля являют-
схемасхемаРис. 15.1. Структурная СКИПРис. 15.1. Структурная СКИПся ВИП, выходы дешифратора, соединенные с коммутаторами измерения, обеспечивают подключение соответствующего ВИП к аналого-цифровому преобразователю (АЦП). С выхода АЦП измеренное напряжение поступает в выходной регистр СКИП. Кроме измеренного напряжения ВИП, которое индицируется на дисплее в кадра «Электропитание», СКИП обеспечивает также контроль и индикацию отклонения выходного напряжения ВИП от номинального. Специальный контроллер источников питания выдает обслуживающему
схема
схема
Рис. 15.1. Структурная СКИП
Рис. 15.1. Структурная СКИП
персоналу информацию об отклонении напряжения ВИП от номинального значения на значения, лежащие в пределах от ±1,5 до ±3% и от ±3 до ±6,5 % •
При отклонении напряжения ВИП от номинального значения на значение, превышающее ±6,5 %, СКИП выдает аварийный сигнал, оповещающий оператора о неисправности путем соответствующей индикации в кадре «Электропитание».
Коммутатор аварии обеспечивает опрос адресованного БУП и датчика температуры. При наличии аварии в одном из этих объектов контроля его адрес и тип поступают в СП и высвечиваются на экране дисплея. Одновременно с индикацией строк АВАРИЯ БУП или ПЕРЕГРЕВ на экране дисплея высвечиваются конструктивные адреса объектов контроля.
Коммутатор профилактического контроля обеспечивает выбор адресованного ВИП и его установку в соответствии с поступившей от СП информацией профилактического контроля.
ЗАЩИТА ЭВМ ОТ ВОЗМУЩЕНИЙ В СИСТЕМЕ ЭЛЕКТРОПИТАНИЯ
Характеристики возмущений
Стандартным требованием к электропитанию ЭВМ является питание от сети переменного тока напряжением 220 81,5% счастотой (50±1) Гц. Нормы на качество электроснабжения не регламентируют такие возмущения в сети электропитания, как провалы и всплески напряжения. В то же время подобные возмущения напряжений сети являются источником сбоев, приводящих к значительным потерям полезного времени работы ЭВМ. Знание характеристик возмущений напряжения в сети имеет большое значение, так как позволяет разработать специальные меры защиты ЭВМ.
Слежение за напряжением первичной сети выполняется специальными устройствами — регистраторами помех [14], которые обнаруживают, подсчитывают и регистрируют в первичной сети такие события, как провалы или всплески напряжения, импульсные помехи и отклонения частоты от нормы.
Имеются данные о том, что в результате электрических аварий, некоординированных срабатываний различных защитных устройств могут происходить провалы напряжения длительностью до 20 периодов, в то время как для нарушения нормального функционирования большинства ЭВМ достаточно потери только одного периода напряжения сети.
Всплески и провалы напряжения происходят также при коммутации электрических целей с различной нагрузкой, пуске мощных электродвигателей и другого электрооборудования. Кроме того, на частотах 1 МГц и выше наблюдаются кратковременные, но значительные по амплитуде помехи, возникающие при работе различных релейных устройств. Исследования показали [14], что значительная часть импульсных помех имела длительность менее 0,2 мкс.
Провалы и перенапряжения имеют, как правило, длительность от 2 до 100 мкс. Амплитуда провалов 70—90 В. Возможны также отключения питания. Поскольку в сети питания могут быть помехи, то помехоустойчивость должна быть свойством ЭВМ.
В [14] предложена следующая интерпретация импульсной помехозащищенности.
Импульсная помехозащищенность ЭВМ ри.п определяется как отношение числа зарегистрированных сбоев m к чис-
лу п поданных за время испытаний импульсов помех с нормированной амплитудой ий,и и частотой следования /и:
Ри.п = ^П.
Предполагается, что экспериментальное определение импульсной помехозащищенности и помехозащищенности ЭВМ от длительных помех (провалов и перенапряжений) выполняется с помощью специальных имитаторов, моделирующих реальные характеристики сети питания.
Средства защиты ЭВМ от помех
Средства защиты ЭВМ от помех можно разделить на электрические и логические. К электрическим средствам защиты от импульсных помех относятся сетевые фильтры, устанавливаемые на входе системы электропитания, и электростатические экраны между первичными и вторичными обмотками трансформаторов, существенно уменьшающие паразитные межобмоточные емкости.
К средствам защиты от длительных помех относятся феррорезонансные стабилизаторы, преобразователи напряжения и мотор-генераторы.
Феррорезонансные стабилизаторы обеспечивают изменение выходного напряжения в пределах 1—5 % при амплитудах длительных помех, не превышающих 20 % номинального напряжения.
Преобразователи частоты и мотор-генераторы обеспечивают частичное резервирование первичного питания ЭВМ при длительных помехах за счет инерции вращающихся частей.
К логическим методам защиты ЭВМ от помех относятся программно-аппаратурные средства восстановления ЭВМ от сбоев.
ЗАЩИТА ЭВМ ОТ ДЛИТЕЛЬНЫХ ПЕРЕРЫВОВ ЭЛЕКТРОПИТАНИЯ
ЭВМ, используемые для решения ответственных задач, таких как управление движением, резервирование билетов, коммутация сообщений, задачи в реальном масштабе времени и т. д., как правило, обеспечиваются гарантированным электропитанием. Введем понятие длительности гарантированного питания. Будем понимать под этим парамет-
ром длительность обеспечения ЭВМ электропитанием при отказе основного источника первичного электропитания, причем обеспечения без нарушения процесса вычислений.
Разным значениям длительности гарантированного электропитания соответствуют различные средства гарантированного электропитания (рис. 15.2).
ЭВМс питаниемот мотор-генераторас маховикомЭВМс питаниемот мотор-генераторас маховикомЭВМ с питаниемат аккумуляторныхбатарейсо статическимпреобразователемЭВМ с питаниемат аккумуляторныхбатарейсо статическимпреобразователемо0,515о0,515*,мин*,минЭВМ с питанием „от аккумуляторных батареисв статическим преобразователема реэервново Визель-генератора
ЭВМс питаниемот мотор-генераторас маховиком
ЭВМс питаниемот мотор-генераторас маховиком
ЭВМ с питаниемат аккумуляторныхбатарейсо статическимпреобразователем
ЭВМ с питаниемат аккумуляторныхбатарейсо статическимпреобразователем
о0,515
о0,515
*,мин
*,мин
Рис. 15.2. Средства обеспечения гарантированного электропитания
Поскольку ЭВМ чувствительна к пропаданию первичного электропитания даже на полпериода, а также к изменению фазы при подключении другого источника электропитания, система гарантированного электропитания должна это учитывать.
Системы гарантированного электропитания в порядке возрастания длительности гарантированного электропитания располагаются следующим образом:
мотор-генератор;
аккумуляторные батареи со статическим преобразователем;
аккумуляторные батареи со статическим преобразователем и резервным питанием от дизель-агрегата.
Мотор-генератор обеспечивает гарантированное электропитание в течение нескольких секунд. Этого времени, как правило, недостаточно для планомерного отключения ЭВМ с сохранением всех необходимых данных для продолжения решения задач после восстановления электропитания.
Гарантированное электропитание от аккумуляторных батарей со статическими преобразователями обеспечивается тремя основными компонентами:
статическим преобразователем постоянного тока в переменный;
дополнительным источником постоянного тока, таким как аккумуляторная батарея;
зарядным устройством для аккумуляторов.
Статический преобразователь вырабатывает прямоугольные импульсы переменного тока с помощью мостовой схемы с четырьмя тиристорами. Переменный ток с выхода
статического преобразователя поступает на вход фильтра, который формирует синусоидальное напряжение. В качестве фильтра обычно используется феррорезонансный трансформатор.
Обычно аккумуляторные батареи обеспечивают длительность гарантированного электропитания до 15—30 мин.
В нормальном режиме работы статический преобразователь питается от сети переменного тока через выпрямитель. При пропадании напряжения сети статический преобразователь продолжает питаться от аккумуляторной батареи.
Наиболее простой схемой, используемой в системах, где допустимо кратковременное отключение, является схема с питанием от первичной сети и ручным переключателем на питание от аккумуляторной батареи. Эта схема приведена на рис. 15.3. В этой схеме нагрузка может также постоянно
Рис. 15.3. Гарантированное электропитание с ручным переключением на аккумуляторную батарею
питаться от аккумуляторной батареи. В этом случае зарядное устройство при наличии напряжения сети выполняет две функции: выпрямителя и зарядного устройства аккумуляторной батареи. При отказе системы переключение на первичную сеть может выполняться вручную или автоматически.
Гарантированное электропитание обеспечивает нормальную работу ЭВМ только в течение нескольких минут, поэтому отключение ЭВМ часто бывает неизбежным. Чтобы отключение электропитания не вызывало существенных потерь в ЭВМ, требующих последующих сложных процедур восстановления, в современных ЭВМ предусматривают аппаратурно-программные средства подготовки упорядоченного отключения устройств ЭВМ и сохранения ее состояния для последующего продолжения работы при восстановлении питания.
Рассмотрим систему гарантированного питания и про-
граммные средства ЭВМ, обеспечивающие упорядоченное отключение ЭВМ при отказе первичного электропитания и последующее восстановление прерванного задания.
Система включает в себя следующие средства:
аккумуляторные батареи;
аппаратуру сигнализации о нарушениях первичного электропитания;
программные средства, обеспечивающие упорядоченное отключение устройств и сохранение содержимого памятей на дисках;
средства обработки прерываний по нарушению электропитания;
дополнительные накопители на магнитных дисках;
программные средства ОС, обеспечивающие восстановление состояния ЭВМ при инициализации системы после восстановления первичного электропитания и продолжение прерванной работы.
Аккумуляторные ^атареи должны обеспечивать электропитанием критическую часть ЭВМ, включающую в себя центральный процессор, все каналы ввода-вывода, накопители на магнитных дисках и их управление.
При включении в ОС средств обеспечения гарантированного электропитания во время генерации ОС пользователь может задать специальный параметр, определяющий время между получением предупредительного сигнала и началом операций по сбросу содержимого оперативной памяти на диски.
Прерываниепо ни рушен аюэлектропитанияПрерываниепо ни рушен аюэлектропитанияНа рис. 15.4 показана работа системы при нарушениях электропитания.
Прерываниепо ни рушен аюэлектропитания
Прерываниепо ни рушен аюэлектропитания
Повпрограммаобработки нарушенийэлектропитания
Рис. 15.4. Работа системы при нарушениях электропитанияРис. 15.4. Работа системы при нарушениях электропитания
Рис. 15.4. Работа системы при нарушениях электропитания
Рис. 15.4. Работа системы при нарушениях электропитания
Система работает следующим образом:
нарушение электропитания вызывает передачу управления подпрограмме обработки нарушений электропитания;
время выдержки, заданное при генерации системы, показывает, сколько времени система может работать на электропитании аккумуляторных батарей в ожидании восстановления первичного электропитания. Если первичное электропитание восстанавливается до окончания выдержки, управление возвращается системе. Если выдержка времени заканчивается до восстановления первичного электропитания, управление передается подпрограмме сохранения;
подпрограмма сохранения прекращает все операции ввода-вывода и сбрасывает содержимое основной памяти и памяти ключей защиты на диски и переводит ЭВМ в со
стояние ожидания.
Восстановление системы и продолжение решения прерванных заданий после восстановления первичного электропитания производится путем повторной загрузки опера-
Рис. 15.5. Схема установки с большой длительностью гарантированного электропитанияРис. 15.5. Схема установки с большой длительностью гарантированного электропитанияционной системы. Во время первоначальной загрузки ОС пользователь может восстановить состояние памяти либо стереть наборы данных надисках сохранения.
Рис. 15.5. Схема установки с большой длительностью гарантированного электропитания
Рис. 15.5. Схема установки с большой длительностью гарантированного электропитания
Для особо ответственных применений ЭВМ неприемлемо отключение электропитания, даже если обеспечено продолжение прерванных заданий после восстановления электропитания. На рис. 15.5 показана схема установки с большой длительностью гарантированного электропитания. Обычно
в качестве установки гаранти
рованного электропитания используются статические преобразователи и дизель-генератор.
Статические преобразователи синхронизированы с выхода по фазе с первичным электропитанием, так как при выходе из строя статического преобразователя ЭВМ переключается на первичную сеть, сигнализируя об аварии статического преобразователя.
При отказе первичного электропитания статические преобразователи обеспечивают ЭВМ питанием в течение вре-
мени, достаточного для запуска дизель-генераторов. Обычно батареи обеспечивают электропитанием в течение 15 мин. Время запуска генераторов составляет несколько минут.
Глава 16
ИЗМЕРИТЕЛЬНЫЕ МОНИТОРЫ
ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ И ПОНЯТИЯ
В любой вычислительной системе (ВС) имеются «узкие места», ограничивающие ее производительность. При эксплуатации вычислительной системы рано или поздно наступает момент, когда она перестает справляться с нагрузкой и перед пользователем возникает проблема увеличения вычислительной мощности.
Для принятия правильного решения пользователь обязан знать реальную загрузку своей ЭВМ и быть уверенным, что он исчерпал все ресурсы системы, в том числе и возможность повышения ее производительности за счет оптимизации программного обеспечения.
Для выявления резервов производительности и оценки эффективности использования системы необходимо:
определить коэффициент использования процессора, каналов ввода-вывода (ВВ), периферийных устройств;
определить коэффициент совмещения процессора и каналов;
исследовать процесс выполнения программ СС;
исследовать процесс обмена с ВЗУ при работе ОС;
проанализировать активность накопителей на магнитных дисках (НМД).
Для измерения параметров функционирования ВС, определяющих ее загрузку и эффективность использования вычислительных ресурсов, применяют измерительные мониторы (ИМ). С их помощью измеряются как простейшие показатели активности, характеризующие загруженность или интенсивность использования аппаратурных и программных средств, так и более сложные показатели.
При проведении измерений производится слежение за процессом функционирования ВС на некотором интервале наблюдения. Состояние ВС характеризуется совокупностью параметров, которые регистрируются в процессе измере-
ний. Моменты регистрации либо задаются извне, либо определяются условиями функционирования ВС. Соответственно различают мониторы периодической выборки и мониторы трассирующего типа.
Условия, определяющие момент регистрации, называются событиями.
Мониторы периодической выборки работают по принципу выборочных замеров, т. е. включаются через определенные интервалы времени и фиксируют состояние ВС.
Мониторы трассирующего типа, называемые также трассировщиками, регистрируют параметры при возникновении заданных событий. Получаемую при этом хронологически упорядоченную последовательность наборов значений параметров называют измерительной трассой.
Набор значений параметров, регистрируемый за один раз, называют снимком. Его размер может составлять до нескольких сотен байт. Снимки обычно записываются на магнитную ленту.
Различают аппаратурные, микропрограммные и программные события. Примером аппаратурного события является установка в 0 или 1 триггера или загрузка регистра, появление определенного сигнала управления, микропрограммного — выполнение заданной микрокоманды или трассы микрокоманд, выполнение команды с заданным адресом или обращение к заданному адресу оперативной памяти или последовательности адресов. Примерами программного события являются обращение к заданному набору данных, выполнение привилегированных команд, прерываний.
Тип регистрируемого события определяет также и способ технической реализации ИМ: аппаратурный, микропрограммный или программный.
В программных и микропрограммных мониторах используется понятие перехвата. Перехватом называется передача управления программе (микропрограмме) монитора при возникновении специфицированного события во время выполнения рабочей программы (микропрограммы). По окончании программы (микропрограммы) монитора управление возвращается рабочей программе (микропрограмме).
АППАРАТУРНЫЕ ИЗМЕРИТЕЛЬНЫЕ МОНИТОРЫ
Аппаратурные измерительные мониторы (АИМ) представляют собой автономные устройства, подсоединяемые 362
к исследуемой ВС в определенных точках и используемые для анализа загрузки аппаратурных ресурсов ВС, таких как ЦП, ОП, каналы, периферийные устройства [1, 53].
Аппаратурные измерительные мониторы регистрируют активность различных аппаратурных средств ВС, выполняют обнаружение, фильтрацию и комбинирование определенных входных сигналов, подсчет времени и числа событий, накопление и вывод измерительной информации.
Входные сигналы обнаруживаются специальными чувствительными элементами (ЧЭ) (щупами или зондами), подключаемыми к цепям ВС в требуемых точках (рис. 16.1). Способ снятия сигналов с ЧЭ определяется использу-
Рис. 16.1. Общая схема АИМ
емым в мониторах методом измерений. При методе периодической выборки ЧЭ периодически опрашиваются через заданный интервал времени — интервал квантования.
При методе трассирования сигналы от ЧЭ передаются в момент их возникновения.
Под фильтрацией понимается выбор совокупности входных сигналов на данный сеанс измерений.
Комбинирование сигналов подразумевает образование логических комбинаций сигналов с помощью логических элементов И, ИЛИ, НЕ.
Для подсчета числа событий или их продолжительности в АИМ имеются счетчики, а для регистрации данных — накопители на магнитной ленте.
Аппаратурные измерительные мониторы позволяют получить профиль использования системы, т. е. график временных соотношений между занятыми и свободными интервалами компонентов системы (рис. 16.2,а). Схема подключения АИМ показана на рис. 16.2,6. Профиль использования позволяет выяснить причину неэффективной работы ВС. Например, из профиля использования, приведенного на рис. 16.2, а, видно, что около 20 % общего времени система проводит в состоянии ожидания, когда ни одно из устройств не выполняет работы. Причиной этого может быть отсутст-
вие заданий в системе во время сеанса измерения, ожидание действий оператора (например, установка ленты или пакета дисков или подключение временно отключенного устройства), ожидание завершения поиска на ленте или диске (во время поиска канал ввода-вывода не занят). Для выявления конкретной причины необходима регистрация действий оператора, времени неготовности устройств
* Только ЦПV* Только ЦПVПолная продолжительность сеансаПолная продолжительность сеансаТолько каналТолько каналГГПерекрытие ЦП/канал ЦП занятКанал занятПерекрытие ЦП/канал ЦП занятКанал занятСистема сВобовнаI1Система сВобовнаI1ггччЦП занят (заВача)।(ЦП сВобаВенЦП занят (супервизор)ЦП занят (заВача)।(ЦП сВобаВенЦП занят (супервизор)Рис. 16.2. Результаты измерений (пример 1):а — профиль использования системы; б — схема подключения АИМРис. 16.2. Результаты измерений (пример 1):а — профиль использования системы; б — схема подключения АИМ
* Только ЦП
V
* Только ЦП
V
Полная продолжительность сеанса
Полная продолжительность сеанса
Только канал
Только канал
Г
Г
Перекрытие ЦП/канал ЦП занят
Канал занят
Перекрытие ЦП/канал ЦП занят
Канал занят
Система сВобовна
I1
Система сВобовна
I1
г
г
ч
ч
ЦП занят (заВача)।(ЦП сВобаВен
ЦП занят (супервизор)
ЦП занят (заВача)।(ЦП сВобаВен
ЦП занят (супервизор)
Рис. 16.2. Результаты измерений (пример 1):
а — профиль использования системы; б — схема подключения АИМ
Рис. 16.2. Результаты измерений (пример 1):
а — профиль использования системы; б — схема подключения АИМ
и отсутствия входной очереди. Как видно из рис. 16.2, а, причиной неэффективности работы ВС является также недостаточная степень перекрытия работы ЦП и каналов ввода-вывода. Это может быть следствием несбалансированности смеси выполняемых заданий [53]. .
В качестве другого примера рассмотрим профиль использования системы, содержащей ЦП, два канала ввода- вывода и восемь накопителей на магнитных дисках, по четыре на каждый канал (рис. 16.3).
Профиль использования указывает на очевидные проблемы: большое время простоя системы, несбалансирован-
Общее Время Г
1
Событие
Доля ов- №80 времени,%
ЦГГ занят 16
ЦП занят
33,33
Канал 7 занят
25,00
Канал 2 занят
3,65
ТилЬкиЦК тг
ТОЛЬКО ЦП
28,59
Перекрытие каналов
0,81
Система свободна
89,17
Канин Г да ня ntJ1
Зстроаство 7 занято
8,16
Устройство 2 занято
2,77
Устройство 3 занято
9,73
КанилХ занятj—»
Устройство * занято
8,38
Устройство 5 занято
0,27
Устройство 6 занято
0,83
Система безвеаствуат(——
(
Устройство 7 занято
0,81
Устройство 8 занято
0,18
Рис. 16.3. Результаты измерений (пример 2):
а — профиль использования системы; 6 — соотношение длительностей событий
ность коэффициентов использования каналов и большое время неперекрывающейся работы ЦП и каналов ввода- вывода. О причинах простоя системы уже говорилось выше, а остальные два симптома указывают на неудачную привязку НМД к каналам. Наиболее используемые устройства 1—4 подключены к каналу /, а остальные, используемые гораздо меньше, — к каналу 2. Перекоммутация устройств должна улучшить профиль использования системы.
МИКРОПРОГРАММНЫЕ ИЗМЕРИТЕЛЬНЫЕ МОНИТОРЫ
Микропрограммные измерительные мониторы (МИМ)' предназначены для регистрации состояния аппаратуры ЭВМ во время таких микропрограммных событий, как выполнение заданной последовательности микрокоманд или команд, обращение к заданным адресам оперативной памяти и т. д. Микропрограммные измерительные мониторы трассирующего типа называются также микропрограммными
трассировщиками. В ЭВМ, снабженных сервисными процессорами (СП), МИМ обычно реализуются в виде специального пакета программного (микропрограммного) обеспечения СП, позволяющего обнаруживать заданное событие, накапливать данные о состоянии ЭВМ во время события или подсчитывать число событий.
Микропрограммные измерительные мониторы, реализуемые в составе СП, имеют обычно небольшую систему команд, позволяющую задавать программу измерения непосредственно с экрана дисплея. Рассмотрим в качестве примера систему команд МИМ на базе СП.
Перехват по адресам, микрокоманд (ПАМ). Операнды этой команды задают адреса трассы микрокоманд ЦП, при прохождении которой управление передается программе монитора.
Перехват по адресам и типам команд (ПАТК). Операнды этой команды задают адреса трассы команд ЦП и их типов, при прохождении которых управление передается программе монитора.
Перехват по адресам и кодам данных (ПАКД). Операнды этой команды задают адреса данных и их кодов, при обращении к которым управление передается программе монитора.
Микропрограммные события, заданные операндами перечисленных выше команд, приостанавливают работу ЦП и передают управление программе монитора, находящегося в СП. Команды, приведенные ниже, обеспечивают выполнение собственно программы монитора.
Запомнить (ЗПМ). Эта команда позволяет запомнить в специальной области хранения в памяти СП информацию измерительной трассы (состояние общих, управляющих регистров ЭВМ, адресов оперативной памяти, аппаратурных регистров, а также любую другую информацию).
Сравнить (СРВ). Эта команда обеспечивает сравнение разных снимков измерительной трассы или части снимка с константой и переход по различным условиям (меньше, больше, равно) к соответствующей команде программы МИМ.
Проверить (ПРВ). Эта команда проверяет по маске состояние области хранения и в зависимости от результатов проверки выполняет переход в программе МИМ.
Трассировать (ТРС). Эта команда запоминает информацию измерительной трассы в стековой памяти, называемой трассировочным буфером.
Остановить (ОСТ). Эта команда позволяет остановить программу монитора в нужном месте и оповестить оператора о событии. Оператор может проверить состояние средств ЭВМ и продолжить выполнение программы монитора и ЭВМ.
Окончить (ОКН). Эта команда завершает выполнение программы монитора и запускает программу центрального процессора.
Пример программы
ПАМ 1375
ЗПМ 3,ОР2
СРВ 3, X' FOP 34976', НРВН 5
ЗПМ 5.5+К1
ОКН
Эта программа запускается при микропрограммном событии, заключающемся в выполнении микрокоманды с адресом 1375. При этом выполнение микропрограммы ЦП приостанавливается и СП начинает выполнение программы измерения (команды 1—5). В области хранения СП (адрес 3) запоминается содержимое общего регистра 2. В команде 3 оно сравнивается с константой X ТОР 34976', при неравенстве выполняется переход к команде 5 и программа завершается. В противном случае к содержимому области хранения 5 прибавляется единица. Команда Окончить запускает приостановленную микропрограмму ЦП.
Для выполнения перехвата СП используются стандартные средства останова по адресам микрокоманд, команд и данных ЦП.
ПРОГРАММНЫЕ ИЗМЕРИТЕЛЬНЫЕ МОНИТОРЫ
Программные измерительные мониторы (ПИМ) измеряют следующие параметры системы:
время процессора, потребляемое различными компонентами ОС и прикладными программами;
характеристики очередей к процессору, каналам и устройствам ввода-вывода;
характеристики функционирования каналов и устройств ввода-вывода.
В общем случае ПИМ, как показано на рис. 16.4, состоит из программ накопления и обработки результатов измерений. Последняя анализирует результаты измерений, редактирует их и выдает на печать или дисплей.
В зависимости от используемого метода измерений различают мониторы периодической выборки и мониторы трассирующего типа (трассировщики) [47].
Мониторы периодической выборки представляют собой программы, запускаемые операционной системой через за-
эвм
Рис. 16 4. Общая схема ПИМ
данный промежуток времени — интервал квантования. Монитор считывает необходимую информацию из таблиц ОС, после чего переходит в состояние ожидания до следующего запуска.
Мониторы периодической выборки чаще всего реализуются в виде прикладной программы, выполняемой под управлением ОС в режиме мультипрограммирования.
Их недостатком является то, что событие, при котором производится регистрация значений параметров, не связано с процессом функционирования исследуемой ВС.
Особенности мониторов трассирующего типа рассмотрим на примере мониторов УСТ и СМП ОС ЕС. Монитор УСТ (универсальное средство трассировки) предназначен для регистрации событий на уровне прерываний и привилегированных команд. В результате работы УСТ формируется запись о событии, которая помещается в трассу событий. Последняя отражает историю работы ЭВМ и представляет собой последовательность записей о событиях, расположенных в порядке их наступления. Трасса событий формируется в основной памяти и переносится в набор данных на ВЗУ.
В мониторе УСТ предусмотрена последовательная детализация некоторого первичного события, такого, например, как прерывание ввода-вывода. Дальнейшей детализацией этого события может быть прерывание ввода-вывода от оп-
ределенною устройства, связанного с определенной задачей, и т. д.
Обращение к УСТ производится в специальных точках перехвата ОС ЕС, размещенных в обработчиках прерываний первого уровня, программе Диспетчер, супервизоре ввода-вывода, программе ABEND.
Каждому событию может быть сопоставлена последовательность аппендиксов — специальных программ для обработки этого события. Аппендиксы могут быть составлены и включены в монитор пользователем.
Системная мониторная программа (СМП) обеспечивает сбор информации о прохождении заданий, шагов заданий и использовании ими ЦП, ОП, ВУ и наборов данных, т. е. исследует события, связанные с обработкой заданий. Такими событиями являются: интерпретация оператора языка управления заданиями, постановка задания в очередь для планирования, инициирование и окончание пункта задания или всего задания, окончание обработки задания задачей системного вывода, превышение заданием времени, отведенного ему для выполнения или допустимого времени ожидания, перевод ПУ из автономного состояния в системное и, наоборот, конец смены, открытие и закрытие наборов данных, уничтожение или переименование набора данных.
Информация, собираемая СМП, позволяет производить учет обработки заданий и использование ресурсов вычислительной системы. Такие данные, как время процессора, затраченное на выполнение задания, время начала и конца обработки задания, время ожидания процессора в течение смены, сведения о частоте обращений к ПУ и смене страниц в ОП, использованный заданием объем основной и внешней памяти, дают представление об эффективности использования машинного времени, о пропускной способности ЭВМ. На основе анализа таких данных можно составлять такие мультипрограммные смеси, которые позволили бы с высокой эффективностью загружать ЭВМ.
На основе информации, собранной ПИМ, могут быть выработаны мероприятия по повышению эффективности использования системы, в частности анализ и настройка операционной системы, оптимизация распределения файлов по ВЗУ.
Анализ и настройка операционных систем. Для анализа и настройки ОС необходим подбор на основе статистических данных об эксплуатации ЭВМ характерного пакета
заданий. На этом пакете определяется активность НМД и наборов данных, распределение обращений по цилиндрам для каждого НМД. На основании полученных данных анализируется возможность улучшения характеристик использования НМД и повышения пропускной способности системы за счет перераспределения наборов данных на НМД и корректировки состава резидентных модулей и таблиц.
По результатам анализа выполняется:
генерация нового варианта ОС с измененным составом резидентных модулей;
перераспределение наборов данных по НМД с учетом рекомендаций по оптимизации их размещения;
упорядочение наборов данных внутри каждого НМД с учетом их активности с целью уменьшения суммарного времени перемещения головок;
упорядочение библиотечных наборов данных в соответствии с их активностью.
Оптимизация распределения файлов по ВЗУ. Время доступа к данным в существующих ВЗУ существенно зависит от способа их размещения на устройствах. Отсюда возникает проблема выбора наиболее рационального размещения, минимизирующего время доступа. В современных ВС операции по обработке запросов к различным ВЗУ частично или полностью совмещаются по времени. Поэтому максимальное быстродействие внешней памяти может обеспечить распределение, ведущее к наибольшему распараллеливанию потока запросов по различным ВЗУ.
КОНТРОЛЬНО-ИЗМЕРИТЕЛЬНАЯ АППАРАТУРА
ДЛЯ ЭКСПЛУАТАЦИОННОГО ОБСЛУЖИВАНИЯ ЭВМ
ТИПЫ КОНТРОЛЬНО-ИЗМЕРИТЕЛЬНЫХ ПРИБОРОВ
Эффективность поиска неисправностей и ремонта средств вычислительной техники значительно повышается при наличии удобных и простых в эксплуатации контрольно-измерительных приборов. Неудивительно, что номенклатура контрольно-измерительных приборов и их возможности постоянно расширяются. Широкое распространение в практике эксплуатации средств вычислительной техники
получили такие приборы, как одноконтактные и многоконтактные логические пробники, компараторы, импульсные генераторы, измерители тока.
Широкое внедрение микропроцессоров и микроЭВМ и проблемы, возникающие при их наладке и эксплуатации, потребовали создания качественно новых типов контрольно-измерительных приборов, таких как логические и сигнатурные анализаторы, портативные стенды для ремонта печатных плат с микросхемами.
В данной главе дается описание наиболее распространенных контрольно-измерительных приборов, поясняются их возможности и способы использования.
ОДНОКОНТАКТНЫЙ ЛОГИЧЕСКИЙ ПРОБНИК
Одноконтактный логический пробник представляет собой прибор для индикации двоичного состояния элементов дискретных схем.
Основные преимущества логических пробников — компактность, возможность работы в труднодоступных местах, питание от источника проверяемого логического устройства, удобство работы.
Задача логических пробников — упростить проверку логических схем, давая пользователю возможность наблюдать логические уровни без настройки и калибровки, которые необходимы при измерениях с помощью осциллографов.
Для индикации состояния элементов схемы применяются лампочки накаливания или светодиоды, число которых может быть различным.
В одноламповом пробнике включенное состояние лампочки означает, что в проверяемой точке схемы имеется сигнал, соответствующий логической единице, выключенное— логическому нулю, а мигание с определенной частотой — переключению уровней сигнала. Постоянное свечение с половинной яркостью может означать отсутствие сигнала.
В любом случае наиболее важным качеством пробника являются четкость и однозначность показаний. Во многих пробниках применяются лампочки накаливания ввиду их большой яркости.
Очень важным достоинством логических пробников является возможность работы с различными комплексами ИС, например ЭСЛ, ТТЛ и др. Это очень удобно при экс-
плуатации вычислительных систем, где, как правило, используются различные комплексы ИС. Обычно эта возможность реализуется наличием на корпусе пробника переключателя, устанавливаемого в положение, соответствующее комплексу ИС, с которым предполагается работа в данный момент.
В логические пробники встраивается также схема расширения импульсов, позволяющая оператору проверять наличие импульсных сигналов высокой частоты. В таких пробниках при наличии на входе последовательности импульсов лампочка начинает мигать с частотой несколько герц.
На рис. 17.1 приведены структурная схема однолампового логического пробника, предназначенного для работы с ТТЛ-схемами, и его показания при различных значениях измеряемых сигналов.
КигинивС Частотой 10 ГцКигинивС Частотой 10 Гц
КигинивС Частотой 10 Гц
КигинивС Частотой 10 Гц
Рис. 17.1. Логический пробник:
а —структурная схема; б — показания пробника при различных значениях измеряемых сигналов
В некоторых логических пробниках имеется встроенная схема запоминания импульсных сигналов и индикатор, позволяющий обнаружить наличие нерегулярных импульсов. Когда в контролируемой точке схемы после подсоединения пробника происходит изменение логического состояния и запоминающий элемент сброшен, то он запоминает импульс и индицирует его, пока переключатель запоминания не будет возвращен в исходное состояние. На рис. 17.2 по-
Рис. 17.2. Режим запоминания одиночных импульсов
казана последовательность импульсов на входе четырехвходовой схемы И, которая вызывает одиночный импульс на выходе схемы, запоминаемый пробником. Этот импульс включает индикатор импульса, который остается во включенном состоянии и после отвода щупа пробника от контакта схемы.
МНОГОКОНТАКТНЫЙ ЛОГИЧЕСКИЙ ПРОБНИК
Многоконтактный логический пробник предназначен для одновременной индикации состояния всех контактов интегральной микросхемы.
Он имеет отдельный индикатор для каждого контакта и позволяет, таким образом, наблюдать значения сигналов на всех контактах ИС. Многоконтактный логический проб-
ник надевается как клипса на микросхему. Точные пластмассовые направляющие гарантируют надежное соприкосновение между контактами пробника и выводами ИС. Обычно в этих приборах имеется схема поиска питающего напряжения, которая автоматически определяет соответствующие выводы ИС и подключает их к схемам пробника.
Многоконтактные логические пробники имеют защиту от повышенного напряжения, предотвращающую перегрузку схемы или перегорание светодиодов. В комплекте с некоторыми пробниками поставляются эталонные схемы-карточки, вставляемые в индикаторную секцию для облегчения чтения показаний пробника.
Многоконтактные логические пробники позволяют наблюдать не только статические сигналы, но, например, и работу разрядов счетчика в динамике, хотя, конечно, получить с их помощью полезную информацию затруднительно, если используемая схема работает на частотах, превышающих пороговые частоты визуального восприятия.
ЛОГИЧЕСКИЙ КОМПАРАТОР
Логический компаратор предназначен для индикации различий сигналов на контактах проверяемой и эталонной интегральных микросхем. Конструктивно он выполнен так же, как и многоконтактный логический пробник, т. е. надевается на проверяемую ИС как клипса. Число индикаторов (светодиодов) компаратора равно числу контактов ИС. Включенное состояние индикатора соответствует несовпадению сигналов проверяемой и эталонной ИС, т. е. ошибке.
Эталонная ИС, установленная в компаратор, должна соответствовать типу проверяемой ИС. Компараторы обнаруживают не только постоянные неисправности, но и кратковременные динамические ошибки.
На рис. 17.3 приведена схема соединения компаратора и форма входных/выходных сигналов для различных случаев. Компараторы подсоединяют проверяемую и эталонную ИС параллельно к одним и тем же входным линиям, т. е. эталонная ИС приводится в действие теми же сигналами, что и проверяемая.
Выходные сигналы обеих ИС сравниваются с помощью схемы сложения по модулю 2. Разница в значениях выходных сигналов обеих ИС длительностью больше 200 нс воспринимается как ошибка и вызывает загорание индикатора.
Поскольку логические компараторы построены по прин-
Выход ат алойной. ИС(праЭильная работа)Выход ат алойной. ИС(праЭильная работа)"Вкл, -Выкл."Вкл, -Выкл.О,1сО,1сПоказания компаратораПоказания компаратораРис. 17.3. Логический компаратор:Рис. 17.3. Логический компаратор:ципу использования тех же входных сигналов, что и подаваемые на ИС, реально они могут определить только неисправный узел, а не дефектную ИС. Например, внутреннее короткое замыкание входного контакта некоторой микро-
Выход ат алойной. ИС(праЭильная работа)
Выход ат алойной. ИС(праЭильная работа)
"Вкл, -
Выкл.
"Вкл, -
Выкл.
О,1с
О,1с
Показания компаратора
Показания компаратора
Рис. 17.3. Логический компаратор:
Рис. 17.3. Логический компаратор:
Проверяемая ИС(неисправная)
Показания индикатора
а —схема подключения компаратора; б—показания компаратора при различных значениях входных сигналов
схемы проявится как ошибка ИС, работающей на эту неисправную ИС, поскольку как неработоспособная ИС, так и компаратор будут иметь один и тот же входной сигнал.
ЛОГИЧЕСКИЙ ИМПУЛЬСНЫЙ ГЕНЕРАТОР
Для работы большинства логических пробников требуются те или иные средства изменения состояния входов логической схемы при одновременном контроле ее выхода.
Для выполнения этой функции предназначены логические импульсные генераторы. Они подают на узлы схемы кратковременные сигналы, переключающие эти узлы в логические состояния, обратные имеющимся. Длительности импульсов составляют обычно десятые доли микросекунды и достаточно малы, чтобы не испортить схему. Логические
генераторы не могут переключить в противоположные состояния линию, непосредственно связанную с источником питания или землей; такие короткие замыкания в схеме можно обнаружить, если к одной и той же точке подключить генератор и пробник и не получить изменения логического состояния при подаче импульса.
В некоторых импульсных генераторах имеются ПЗУ, обеспечивающие возможность программного управления видом выходного сигнала при помощи кнопок. Например, выходные сигналы могут быть следующих типов: одиночные импульсы, непрерывная последовательность импульсов с частотой повторения 100 Гц, пачки из 100 импульсов, непрерывная последовательность импульсов с частотой повторения 10 Гц, пачки из десяти импульсов и непрерывная последовательность импульсов с частотой повторения 1 Гц. Вид выходного сигнала устанавливается с пульта. На таких приборах предусматривают светодиодный индикатор для контроля выходного сигнала генератора.
ИЗМЕРИТЕЛИ ТОКА
Измерители тока, выполненные в виде зондов, являются удобными приборами, позволяющими определить неисправный компонент схемы путем выявления цепей, по которым протекают токи, значения которых выходят за установленные пределы. Так, например, если сигнальная шина замкнута на землю, прибор может определить, где имеется короткое замыкание — в источнике или в приемнике сигнала, даже в монтажных схемах И, ИЛИ. Прибор позволяет также обнаруживать замыкающие перемычки из припоя и разрывы в печатных схемах.
Измеритель тока обычно используется вместе с импульсным генератором. Измерители тока используют принцип измерения магнитного поля, создаваемого сигналами, вырабатываемыми в проверяемой схеме или поступающими от внешнего импульсного генератора. Для индикации изменения логических уровней, одиночных импульсов и серии импульсов прибор имеет индикатор. Поскольку измеритель тока нечувствителен к напряжению, им можно пользоваться для проверки любых логических схем, в которых импульсы тока не превышают заданный предел по амплитуде и частоте.
В состав измерителей тока входят экранированный индуктивный чувствительный элемент тока и широкополос-
ный усилитель с большим коэффициентом усиления, которые обеспечивают чувствительность, необходимую для обнаружения магнитных полей, создаваемых измерениями тока в печатных проводниках схемы. Чувствительность прибора бывает достаточно высокой для отслеживания сигналов в многослойных печатных платах. При работе прибор подносится сначала к опорной точке (обычно к выходу источника сигнала) и его чувствительность устанавливается такой, чтобы загорелся индикатор. Затем прибор перемещается вдоль цепи сигнала. При прохождении закороченной ветви индикатор гаснет.
ОСЦИЛЛОГРАФЫ
Осцилографы продолжают оставаться наиболее распространенными контрольно-измерительными приборами для цифровых схем. Ввиду все возрастающей частоты цифровых устройств разрабатываются осциллографы с расширенной полосой рабочих частот и уменьшенных габаритных размеров. Появление новых малогабаритных осциллографов изменило представление о них — вместо стационарных они стали портативными.
Кроме того, осциллографы компонуют с другими измерительными приборами для повышения их эффективности при эксплуатации, например с мультиметром, приставкой для подсчета логических переключений, цифровым индикатором для отсчета значений напряжений и временных параметров.
Осциллографы совершенствуют также путем добавления режима регулируемого послесвечения, что позволяет наблюдать одиночные и случайные сигналы путем запоминания осциллограммы в течение 3—15 мин. Регулировка послесвечения позволяет получать четкие осциллограммы трудных для наблюдения низкочастотных сигналов, которые дают мерцающие осциллограммы, и коротких импульсов с крутыми фронтами, но низкой частотой повторения.
Некоторые осциллографы снабжаются сменными блоками переключателя и анализатора логических состояний, позволяющих получить новый режим отображения логических состояний, при котором результаты измерения отображаются на экране осциллографа в виде логических 1 и 0.
ЛОГИЧЕСКИЕ АНАЛИЗАТОРЫ
При поиске сложных неисправностей в дискретных устройствах возникает необходимость одновременного наблюдения нескольких сигналов, однократных и апериодических, поведения схемы в моменты времени, предшествующие какому-либо событию или следующие за ним. Такие возможности предоставляет логический анализатор — прибор для сбора и анализа данных о реальных условиях работы дискретных устройств [56, 57].
Логический анализатор (ЛА) представляет собой комбинацию многоканального регистратора двоичных сигналов, построенного на базе быстродействующего ЗУ с развитой системой управления процессом записи данных, и экранного пульта-дисплея, отображающего записанную в ЗУ информацию в форме, наиболее удобной для ее анализа.
Структурная схема логического анализатора приведена на рис. 17.4.
Рис. 17.4. Структурная схема логического анализатора
Различают два типа логических анализаторов: анализаторы, логических состояний и анализаторы временных диаграмм.
Анализаторы логических состояний фиксируют состояния контрольных точек проверяемой схемы во время такто-
вых сигналов, задаваемых проверяемым устройством, и записывают процесс изменения состояний синхронно с его работой.
Анализаторы временных диаграмм фиксируют состояния контрольных точек проверяемой схемы в моменты времени, которые задаются независимо работающим тактовым внутренним генератором анализатора.
Состояния контрольных точек фиксируются в дискретные моменты времени (при подаче тактовых сигналов) в двоичной форме: 0 — при отсутствии сигнала, 1 — при его наличии.
Логические анализаторы имеют два основных режима: регистрации и отображения.
Регистрацией называется процесс записи состояния сигналов, поступающих по входным каналам анализатора, в его запоминающие устройства. Регистрация начинается по сигналу запуска регистрации, который может быть либо внешним сигналом, либо кодовым словом, либо последовательностью кодовых слов.
Отображением называется процесс индикации на экране электронно-лучевой трубки временных диаграмм или логических состояний, записанных в ЗУ в процессе регистрации.
Для установки режима, способа запуска регистрации, способа отображения, а также кодовых слов запуска регистрации на панели управления имеются переключатели и гнезда для подключения внешних сигналов.
Поскольку в режиме регистрации процесс записи сигналов в ЗУ ЛА идет в соответствии с выбранной тактовой частотой, сигналы, которые во времени короче тактового периода и появляются после тактового сигнала, не будут записаны, хотя и могут вызвать неясное изменение состояний асинхронной логики. Для обнаружения подобной ситуации некоторые ЛА имеют режим фиксации помех. Этот режим не позволяет измерить ширину короткого сигнала, однако указывает на его наличие и временное положение [11].
Отличие отображения временных диаграмм, записанных в режиме регистрации и фиксации, показано на рис 17.5.
Основными характеристиками ЛА являются:
число каналов одновременной регистрации состояний сигналов;
уровни входных логических сигналов;
глубина регистрации, т. е. максимальное количество запоминаемой по одному каналу информации;
максимальная частота регистрации, определяющая минимальный интервал времени между двумя последовательными отсчетами состояний входных сигналов.
Рис. 17.5. Отображения входного сигнала в режиме регистрации и «фиксация»
Глубина регистрации определяется емкостью ЗУ, а максимальная частота регистрации—быстродействием ЗУ анализатора.
Выпускаемые в настоящее время анализаторы имеют от 8 до 48 каналов регистрации, частоту регистрации от 20 до 200 МГц, глубину регистрации от 64 до 2048 бит на канале.
Процесс регистрации и ЛА может быть начат при появлении на входах:
специально заданного внешнего сигнала;
заданной кодовой комбинации (слово состояния) сигналов;
заданной последовательности кодовых комбинаций.
Существуют следующие способы запуска регистрации: прямой, задержанный и с предварительной установкой [56].
При прямом запуске сигнал запуска сразу включает процесс регистрации, а при задержанном — через определенное время, задаваемое числом тактов задержки. При запуске с предварительной установкой анализатор регистрирует состояния в контрольных точках диагностируемого устройства независимо от сигнала запуска и позволяет сохранить и выдать на отображение данные, которые были записаны за N тактов до появления сигнала и М—N тактов после него, где М — максимальная глубина регистрации по одному каналу. Предварительная установка может иметь значение в пределах Y^N^M.
Если для запуска регистрации использовать канал, характеризующий появление сбоя, то прибор позволит записать предысторию появления этого события и на основе ее анализа установить причины сбоя.
Информация ЗУ анализатора может быть выведена на экран в форме логических временных диаграмм, дологических таблиц или графического изображения.
Рис. 17.6. Режимы логического анализатора:
а — отображение временных диаграмм; б— отображение логических состояний
В режиме отображения логических временных диаграмм анализатор функционирует как многоканальный цифровой запоминающий осциллограф, индицирующий двоичные сигналы состояний (рис. 17.6,а).
Для облегчения анализа записанной информации и сопоставления сигналов, принятых по различным каналам, на экран индикатора выводятся вспомогательные указатели — курсоры в виде вертикальной линии, которая может перемещаться по указанию оператора вдоль горизонтальных осей.
Курсоры дают возможность выделить интересующую часть временной диаграммы и растянуть ее во времени для более детального анализа.
В режиме отображения логических таблиц информация индицируется в двоичном, восьмеричном, шестнадцатеричном или алфавитно-цифровом коде (рис. 17.6,6).
В графическом режиме отображения каждое из записанных слов состояний отображается на экране ЭЛТ в виде точки, координаты которой определяются разрядами слова состояния.
Для правильных измерений большое значение имеет такая характеристика ЛА, как максимальная частота регистрации [11]. От нее зависит ошибка измерений. Так, например, при измерении сигнала длительностью 80 нс (рис. 17.7) на тактовой частоте 20 МГц погрешности измерения длительности и фазы составляют 30 и 43 нс соответственно, а на частоте 100 МГц—0 и 3 нс.
Таким образом, для более точного измерения требуется более высокая тактовая частота регистрации. На практике
50 №50 №Синхроимпульс 100 МГц Входные данные
50 №
50 №
Записанные Ванные Синхроимпульс 20 МГц, Входные Санные
Записанные Ванные
Рис. 17.7. Ошибка отображения импульса длительностью 80 нс при тактовых частотах регистрации 20 и 100 МГц
хорошие результаты получаются при десятикратном превышении частоты регистрации минимального периода наблюдаемых сигналов. Это обстоятельство имеет большое значение, когда ЛА используется для поиска неисправностей в микропроцессорных системах. Даже при работе с микропроцессорными устройствами с тактовой частотой 1—4 МГц (например, 580ИК80А) желательно иметь ЛА с тактовой частотой регистрации 50—100 МГц, поскольку минимальная ширина синхроимпульса может быть равна 80 нс.
Для наладки ЭВМ на ЭСЛ-схемах от ЛА требуется более-высокая тактовая частота (200—500 МГц), так как время цикла таких ЭВМ составляет 40—80 нс, а длительность синхросигналов 15—25 нс.
СТЕНДЫ ПРОВЕРКИ ДЛЯ ТЭЗ
Стенды проверки ТЭЗ принято делить на сервисные, поставляемые с ЭВМ пользователю, и технологические, предназначенные для производства и централизованного обслуживания.
Технологические стенды — это, как правило, автоматизированные устройства, рассчитанные на большой объем проверяемых ТЭЗ. Сервисные стенды могут быть как автоматизированными, так и ручными. Ручные стенды неудобны в эксплуатации и требуют больших затрат времени на проверку ТЭЗ. В то же время при неполном ЗИП одной из основных проблем эксплуатации ЭВМ является сокращение времени локализации неисправной ИС и времени восстановления ЭВМ. Этого можно было бы достигнуть за счет автоматизированных сервисных стендов, если бы они стоили не очень дорого.
В этих условиях для ЭВМ ЕС наиболее удобным решением является разработка интегрированных в ЭВМ стендов проверки ТЭЗ, использующих аппаратурные средства блока диагностики и сервисного процессора.
Существуют два основных способа тестирования ТЭЗ: тестирование через разъем (ТЧР) и тестирование внутрисхемное (ТВС).
При ТЧР проверяется схема ТЭЗ в целом. Через входные контакты разъема ТЭЗ (рис. 17.8) на схему подаются тестовые наборы, через выходные контакты опрашивается состояние схемы и сравнивается с эталонным. Основным затруднением при ТЧР является разработка проверочных тестов (особенно для схем большой размерности) достаточ-
Управление стенваУправление стенваИспре8ен1Неи£Т1ра6енИспре8ен1Неи£Т1ра6енРис. 17.8. Тестирование через разъем: ПРД — передатчик; ПРМ — приемникРис. 17.8. Тестирование через разъем: ПРД — передатчик; ПРМ — приемник
Управление стенва
Управление стенва
Испре8ен1Неи£Т1ра6ен
Испре8ен1Неи£Т1ра6ен
Рис. 17.8. Тестирование через разъем: ПРД — передатчик; ПРМ — приемник
Рис. 17.8. Тестирование через разъем: ПРД — передатчик; ПРМ — приемник
ной полноты и сложность локализации неисправного элемента, часто требующей наличия ведомого щупа.
Тестирование внутрисхемное (рис. 17.9) обеспечивает доступ непосредственно к внутренним контактам схемы в обход связей через контакты разъема с помощью специального «ложа контактов». Последнее представляет собой
Рис. 17.9. Внутрисхемное тестирование
специальную контактирующую матрицу из подпружиненных игольчатых щупов, которая прижимается к контактным площадкам платы и обеспечивает управляемость и наблюдаемость любого контакта схемы.
Особенностью ТВС является подача на элементы импульсных входных воздействий и использование пороговых детекторов при снятии входных реакций.
Импульсное тестирование позволяет ограничить мощность сигналов и предохраняет от повреждения другие компоненты проверяемого ТЭЗ.
Достоинством ТВ С является простое получение тестов, так как последние представляют собой тесты стандартных ИС (БИС), установленных на плате. Проверка ТЭЗ при ТВС вырождается в серию автономных проверок ИС (БИС), установленных на плате.
Рис. 17.10. Внутрисхемный эмулятор
Низкая стоимость разработки тест-программ и высокая эффективность локализации неисправности делают ТВС весьма привлекательным.
Недостатком ТВС является сложная механика устройства («ложе контактов»), а также дополнительные требования к конструктивному исполнению платы (необходимость контактных площадок для каждого щупа) в ущерб' плотности монтажа.
Одной из разновидностей ТВС при проверке ТЭЗ с микропроцессорами является внутрисхемная эмуляция (ВСЭ). Суть этого способа тестирования сводится к замещению микропроцессора специальным устройством — эмулятором, содержащим, как правило, микропроцессор того же типа, что и замещаемый. Эмулятор позволяет полностью контролировать диагностируемую плату со стороны внешнего стенда, снабженного соответствующим программным обеспечением.
Схема тестирования показана на рис. 17.10. Микропроцессор снимается с проверяемой платы и на его место в колодку микропроцессора вставляется штепсельный разъем внутрисхемного кабеля. Если плата без микропроцессора под управлением внутрисхемного эмулятора работает правильно, это значит, что неисправен микропроцессор.
Глава 18
ПРОЦЕССЫ ЭКСПЛУАТАЦИОННОГО
ОБСЛУЖИВАНИЯ ЭВМ
СТРУКТУРА ПРОЦЕССОВ ОБСЛУЖИВАНИЯ
Широкий масштаб внедрения электронной вычислительной техники в различные области народного хозяйства, науки и культуры делает исключительно важной проблему эффективного эксплуатационного обслуживания ЭВМ.
Сложность ЭВМ как объекта обслуживания, быстрая смена моделей ЭВМ и версий программного обеспечения, непрерывное появление в составе ЭВМ новых типов устройств и новых пакетов прикладных программ в трудно преодолеваемых условиях запаздывания и недостаточной полноты эксплуатационной документации предъявляют высокие требования к квалификации, самостоятельности и творческим способностям персонала, обслуживающего ЭВМ.
Специфические проблемы в обслуживании средств вычислительной техники возникли в связи с широким распространением и рассредоточенностью микропроцессорной и микромашинной техники и в особенности персональных компьютеров (см. гл. 9).
В данной главе рассмотрены структура процессов обслуживания ЭВМ, формы организации обслуживания, оборудование помещений для ЭВМ, виды регламентных работ, меры по технике безопасности и др. Рассмотрение ведется в значительной степени применительно к ЭВМ Единой системы.
При написании главы использованы материалы инструкций по эксплуатации машин Единой системы.
Эксплуатация ЭВМ предполагает реализацию следующей структурированной совокупности процессов обслуживания (рис. 18.1).
Подготовительный этап включает в себя выбор (исходя из потребностей организации-пользователя) конфигурации ЭВМ (состава технических средств) и состава системы программного обеспечения (типа операционной системы и т. п.), проектирование ВЦ, размещение в нем оборудования для обеспечения определенных требований к среде, в которой будет работать аппаратура ЭВМ. К этому же этапу относится установка ЭВМ в ВЦ, наладка, испытание и сдача ЭВМ в эксплуатацию.
Этап собственно эксплуатации предполагает следующие процессы обслуживания:
планово-профилактические работы, проводимые в определенные сроки (ежедневно, еженедельно, ежемесячно и т. д.);
обслуживание технических средств при нормальной работе, включая обслуживание процесса подготовки и решения задачи на ЭВМ;
6 =^ <36 =^ <3выбор конфигурации Звм,составы программного обеспечения. Проектирование ВЦвыбор конфигурации Звм,составы программного обеспечения. Проектирование ВЦIIIЧстанобка ЭВМ1НилаЗка, испытания ^сЗача 8 эксплуатацию ЭВМIЧстанобка ЭВМ1НилаЗка, испытания ^сЗача 8 эксплуатацию ЭВМввIIВосстановлениеВосстановлениеРазвитиеРазвитиепрограммных средствпрограммных средстввычислитель нойвычислитель нойРазвитиеРазвитиеаппаратурных средстваппаратурных средстввычислительнойвычислительнойобслуживаниеобслуживаниесредств при нормальной работесредств при нормальной работеОбслуживаниеОбслуживаниеинформационных базинформационных базпланодо-планодо-профилактичвские работыпрофилактичвские работыВосстановлениеВосстановлениеЭВМЭВМпосле отказовпосле отказовРис. 18.1. Структура процессов обслуживания ЭВМРис. 18.1. Структура процессов обслуживания ЭВМтехническихтехническихпроераммноеопроераммноеообеспечения иобеспечения иправильностиправильностиинформации после сбоевинформации после сбоевустановкиустановкиостановкаостановка
6 =^ <3
6 =^ <3
выбор конфигурации Звм,составы программного обеспечения. Проектирование ВЦ
выбор конфигурации Звм,составы программного обеспечения. Проектирование ВЦ
I
I
IЧстанобка ЭВМ
1
НилаЗка, испытания ^сЗача 8 эксплуатацию ЭВМ
IЧстанобка ЭВМ
1
НилаЗка, испытания ^сЗача 8 эксплуатацию ЭВМ
в
в
I
I
Восстановление
Восстановление
Развитие
Развитие
программных средств
программных средств
вычислитель ной
вычислитель ной
Развитие
Развитие
аппаратурных средств
аппаратурных средств
вычислительной
вычислительной
обслуживание
обслуживание
средств при нормальной работе
средств при нормальной работе
Обслуживание
Обслуживание
информационных баз
информационных баз
планодо-
планодо-
профилактичвские работы
профилактичвские работы
Восстановление
Восстановление
ЭВМ
ЭВМ
после отказов
после отказов
Рис. 18.1. Структура процессов обслуживания ЭВМ
Рис. 18.1. Структура процессов обслуживания ЭВМ
технических
технических
проераммноео
проераммноео
обеспечения и
обеспечения и
правильности
правильности
информации после сбоев
информации после сбоев
установки
установки
остановка
остановка
обслуживание программного обеспечения и информационных баз при нормальных условиях работы;
восстановление правильности информации (программ и данных) после сбоев;
восстановление ЭВМ после отказов (ремонты);
развитие аппаратурных средств эксплуатируемой вычислительной установки — ввод в состав вычислительной установки дополнительных технических средств (дополнительные блоки памяти, модули дисковых ЗУ, дисплеи и т.п.);
развитие программных средств вычислительной установки — ввод в эксплуатацию новых версий операционной системы, пакетов программ, расширяющих функции операционной системы, новых пакетов прикладных программ.
Для уменьшения потерь времени и затрат труда на такие виды обслуживания, как планово-профилактические работы, восстановление вычислительного процесса (и правильности информации) после сбоев, восстановление работоспособности ЭВМ после отказов, машины снабжают комплексом аппаратурно-программных средств поддержки процессов обслуживания.
Однако даже при наличии таких средств быстро увеличивающееся число территориально рассредоточенных вычислительных установок (различных ВЦ, АСУ, АСУ ТП) сопровождается ростом числа специалистов — инженеров и техников, занятых эксплуатацией ЭВМ. Это заставляет настойчиво искать и внедрять наиболее эффективные формы организации эксплуатационного обслуживания ЭВМ.
Можно указать следующие формы эксплуатационного обслуживания ЭВМ: индивидуальное, централизованное, централизованное дистанционное, смешанное.
Индивидуальное (локальное, или децентрализованное) обслуживание предполагает наличие при каждой вычислительной установке (в каждом ВЦ) штата специалистов по эксплуатации технических и программных средств ЭВМ, достаточного по количеству и квалификации для выполнения всех процессов обслуживания, указанных на рис. 18.1.
Такая форма обслуживания помимо больших людских затрат, невозможности эффективно использовать персонал порождает трудности с обеспечением вычислительных установок запасными деталями, узлами, достаточно подробной эксплуатационной документацией, созданием условий для систематического обучения и повышения квалификации специалистов, эксплуатирующих ЭВМ. Сказанное является причиной перехода к другим формам обслуживания ЭВМ, в первую очередь к централизованному обслуживанию, а также к промежуточной форме — смешанному обслуживанию, когда одни виды обслуживания реализуются в форме централизованного обслуживания, а другие — в форме индивидуального.
КОМПЛЕКСНОЕ ЦЕНТРАЛИЗОВАННОЕ
ОБСЛУЖИВАНИЕ ЭВМ
Прогрессивной формой организации эксплуатации ЭВМ является комплексное централизованное обслуживание (КЦО) технических и программных средств вычислительной техники (СВТ) [12, 17, 46, 49].
Централизованное обслуживание предполагает наличие территориальных (региональных, районных, городских и т.п.) центров обслуживания, оказывающих услуги по обслуживанию и эксплуатации ЭВМ вычислительным центрам и другим организациям — владельцам вычислительных машин, расположенным в территориальной зоне действия обслуживающего центра. Центры централизованного обслуживания располагают штатом квалифицированных специалистов по эксплуатации ЭВМ, необходимой документацией, запасными деталями и узлами, специализированным оборудованием.
Под комплексным обслуживанием понимают выполнение всего комплекса работ, связанных с обеспечением эксплуатации ЭМВ, включая проектирование ВЦ, установку и наладку машин, техническое обслуживание и ремонт ЭВМ, сопровождение программного обеспечения, обучение эксплуатационного персонала организаций-пользователей.
Структура системы КЦО показана на рис. 18.2. Обслуживание ЭВМ непосредственно выполняют территориальные пункты обслуживания (ТПО), располагающие подвижными лабораториями обслуживания (ПЛО). В пределах определенных регионов ТПО объединяются в региональные центры обслуживания (РЦО), которые в свою очередь вместе с ремонтно-восстановительными заводами и складами ЗИП объединяются в специализированные территориальные управления. Следующий уровень организационной структуры образован производственными объединениями (ПО). К этому же уровню относятся специальные научно- производственные объединения, располагающие учебными центрами.
В такой системе осуществляются три вида централизованного обслуживания:
полное обслуживание, включая проведение плановопрофилактических ремонтов и ремонта по вызову. При полном обслуживании аварийный ремонт начинается не позже 3,5 ч после получения вызова. Этот вид обслуживания прак-
тикуется в отношении вычислительных установок, расположенных в пределах города, в котором находится ТПО;
частичное обслуживание с выполнением только ежемесячных планово-профилактических ремонтов, ремонта по вызову и аварийного. Практикуется в отношении вычисли
тельных установок, находящихся на расстоянии до 100 км от ТПО;
обслуживание по вызову с выполнением аварийного ремонта в сроки, оговоренные с пользователем. Применяется для вычислительных установок, находящихся на расстоянии более 100 км от ТПО.
Система комплексного централизованного обслуживания предоставляет пользователю определенные гарантии. Так, например, гарантируются продолжительность ввода в эксплуатацию ЭВМ (не свыше 20—45 и 45—80 дней соответственно для ЭВМ средней и высокой производительности) и устранение неисправностей (за 3,5—24 ч).
Опыт внедрения централизованной организации обслуживания показал, что эта форма обслуживания приводит к сокращению численности эксплуатационного персонала ВЦ, увеличению среднего времени суточной полезной работы ЭВМ, позволяет уменьшить общие фонды запасных частей. В настоящее время системой централизованного обслуживания охвачено свыше 60 % всех машин Единой системы [17].
Централизованное обслуживание оказывается экономически эффективным при достаточно высокой надежности ЭВМ и нецелесообразным при низкой надежности средств вычислительной техники, требующих, по существу, индивидуального обслуживания.
Заметим, что осуществляемый системой КЦО вид обслуживания зависит or расстояния пользователя ЭВМ от территориального центра (пункта). Такая зависимость снижает гибкость и эффективность системы обслуживания. Действительно, КЦО со структурой, подобной изображенной на рис. 18.2, является крупным шагом в сторону централизации по сравнению с индивидуальным обслуживанием. Однако и при такой структуре обслуживание оказывается рассредоточенным между многочисленными территориальными пунктами обслуживания и передвижными лабораториями. В этом случае остаются определенные трудности в укомплектовании сети обслуживания высококвалифицированным персоналом, способным разрешать наиболее сложные ситуации, которые могут возникать в процессе эксплуатации ЭВМ. Остается и сложность в обеспечении сети обслуживания (ТОО и передвижных лабораторий) подробной технической документацией, схемами всех узлов и устройств. Большие потери связаны с поездками сотрудников КЦО на объекты обслуживания.
Между тем успехи, достигнутые в области создания систем передачи информации по линиям связи, реализации режимов телеобработки данных на ЭВМ, подсказали новый путь в построении централизованных систем обслуживания— дистанционное обслуживание (см. гл. 7).
Наличие систем дистанционного обслуживания облегчает переход на прогрессивную форму обслуживания «по фактическому состоянию ЭВМ», а не на основе фиксированных сроков проведения процедур обслуживания [17]. В этом случае сроки обслуживания определяются прогнозом состояния ЭВМ, выполняемым системой сбора и обработки информации о работе машины (см. гл. 14).
ОБОРУДОВАНИЕ ПОМЕЩЕНИЙ ДЛЯ ЭВМ
Для размещения средних и больших моделей ЭВМ Единой системы требуются специально оборудованные помещения.
Собственно машины располагаются в машинном зале. В непосредственной близости от него располагают зал сервисной аппаратуры, аналитическую лабораторию, помещения для подготовки данных, хранения магнитных носителей данных, бумажных носителей данных, ЗИП и технической документации, помещение для ремонта узлов ЭВМ. Необходимые площади для средней и большой моделей ЭВМ ЕС приведены ниже.
Площадь* м2
Назначение помещения
ЕС-1045
ЕС-1060
Машинный зал .. . .
НО
270—300
Сервисная аппаратура
20
90
Ремонт узлов ЭВМ ........
20
20
Аналитическая лаборатория ...,.)
30
30
Подготовка данных .. /
40
Хранение магнитных носителей .... 1
20
20
Хранение бумажных носителей . . . . / Хранение ЗИП и технической докумен-
20
тации
20
20
В машинном зале, помещениях сервисного и технического обслуживания, подготовки данных, хранения магнитных носителей параметры окружающей среды должны находиться в следующих пределах:
20±565±15От 84 до 106,7 (от 630 до800 мм рт. ст.)До 75120±565±15От 84 до 106,7 (от 630 до800 мм рт. ст.)До 751Температура окружающего воздуха, °C Относительная влажность воздуха, % . Атмосферное давление, кПа
20±5
65±15
От 84 до 106,7 (от 630 до
800 мм рт. ст.)
До 75
1
20±5
65±15
От 84 до 106,7 (от 630 до
800 мм рт. ст.)
До 75
1
Уровень шумов, дБ
Запыленность, мг/м3, при размере частицы не более 3 мкм, не более . . . .
Освещение машинного зала выполняется люминесцентными лампами. Освещенность должна быть 350—400 лк на высоте 0,8 м от пола.
В качестве примера на рис. 18.3 показана центральная часть и размещение основного оборудования ЭВМ ЕС-1045 в машинном зале [60]. Здесь использовано так называемое зонное размещение устройств (зона центральных устройств, зона внешних ЗУ, зона устройств ввода-вывода), что облег-
1300
EC-5517EC-5517EC-5017EC-5017EC-7920.01EC-7920.01EC-7013EC-7013ЕС-7032ЕС-6012ЕС-7077ЕС-6012ЕС-7032ЕС-7032ЕС-6012ЕС-7077ЕС-6012ЕС-7032
EC-5517
EC-5517
EC-5017
EC-5017
EC-7920.01
EC-7920.01
EC-7013
EC-7013
ЕС-7032
ЕС-6012
ЕС-7077
ЕС-6012
ЕС-7032
ЕС-7032
ЕС-6012
ЕС-7077
ЕС-6012
ЕС-7032
Рис. 18.3. ЭВМ EC-1045 01:
a — центральная часть; 6 —размещение устройств машины; / — стойка питания с встроенным полупроводником ОЗУ (1 Мбайт); 2— кросс-шкаф; 3— процессор и шесть каналов ввода вывода; 4— дисплей; 5 — пульт управления, б — пультовый накопитель; дополнительные устройства; 7 — полупроводниковое ОЗУ (3 Мбайт);
8 — матричный процессор
чает техническое обслуживание и использование резервного оборудования.
Для обеспечения необходимых параметров окружающей среды в машинном зале и других помещениях ЭВМ используются приточно-вытяжные системы кондиционирования.
В машинном зале пол выполняется двойным (зазор между полами равен 250 мм или более) и потолок монтируется подвесным. Между технологическим полом и подвесным потолком должно быть расстояние не менее 2,8 м. Стены и подвесной потолок покрываются звукопоглощающими плитами.
Пространство между основным и технологическим полами используется для прокладки силовых кабелей, жгутов сигнальных цепей, защитного и схемного заземления, а также в качестве приточного вентиляционного канала. Пространство между основным и подвесным потолками используется в качестве вентиляционного канала. В этом пространстве размещаются воздуховоды, осветительные устройства и противопожарная аппаратура.
При использовании центральной проточно-вытяжной вентиляции нагретый в устройствах воздух удаляется либо путем выброса в машинный зал, либо забором из стоек с помощью подсоединенных к ним специальных воздуховодов. Некоторые варианты распределения охлаждающего воздуха в машинном зале представлены на рис. 18.4, а—в.
Воздух, подаваемый в устройства ЭВМ центральной приточно-вытяжной вентиляцией, должен иметь температуру от 14 до 16°C и максимальную запыленность не более 0,75 мг/м3 при размере частиц не более 3 мкм. Отметим, что при отключенной центральной приточно-вытяжной вентиляции устройства центральной части ЭВМ — процессор, каналы. основная память могут работать не более 20 мин (при работающей автономной вентиляции).
Особого внимания требует создание определенных условий для хранения бумажных (перфокарт) и магнитных носителей (см. § 18.7).
ЭВМ ЕС подключаются к трехфазной сети переменного тока напряжением 380/220 В+’” % с частотой (50±1) Гц через промежуточный трансформатор или двигатель-генератор. Последний уменьшает до ±2% диапазон колебаний напряжения переменного тока и предохраняет (благодаря гальванической развязке) ЭВМ от кратковременных всплесков и падений напряжения питающей сети. Мощность, потребляемая ЭВМ, зависит от модели и комплектации ма394
Рис. 18.4. Варианты распределения охлаждающего воздуха в машинном зале:
Дь Д? — доводчики подо! реватели; Дз, Д4— эжекционные доводчики подогреватели; Ri — напольная приточная решетка; /?2 — напольный плинтусный шкафчик; 1 — пространство подвесного потолка, используемого в качестве вытяжного вентиляционного канала, 2— пространство подвесного потолка, используемого в качестве напорного приточного канала; 3 — конденсатор, 4 — пространство технологического пола
шины. Например для основного комплекта ЭВМ ЕС-1045 требуемая мощность составляет около 30 кВ-А.
ТЕХНИКА БЕЗОПАСНОСТИ ПРИ РАБОТЕ С ЭВМ
В инструкциях по эксплуатации ЭВМ ЕС указываются следующие меры безопасности.
В помещении ЭВМ должна быть проложена шина защитного заземления сечением не менее 120 мм2. Участки шин должны свариваться внахлест на длине не менее двойной ширины шины. Шина защитного заземления соединяется с заземлением первичного источника питания — трехфазной четырехпроводной сети 380/220 В, 50 Гц. Нейтраль электроустановки (трансформатора или генератора) первичного питания глухо заземляется с помощью заземляющего устройства с сопротивлением заземления не более 600 мкОм.
Корпуса всех устройств ЭВМ должны иметь надежное электрическое соединение с шиной защитного заземления в машинном зале. Переходное сопротивление между непосредственно соединенными между собой металлическими деталями не должно превышать 600 мкОм, а суммарное переходное сопротивление при заземлении аппаратуры через
перемычки, шины и т. п. должно быть не более 2000 мкОм.
Сопротивление изоляции электрических цепей с напряжением 380/220 В между собой и относительно корпуса (болта заземления) любого устройства должно быть не менее 20 МОм.
Обслуживающий ЭВМ персонал должен всегда помнить, что опасность представляют первичные цепи блоков питания, подключенные к трехфазному напряжению 380/220 В, 50 Гц.
К работе с ЭВМ допускаются лица, изучившие документацию на систему электропитания и прошедшие инструктаж по технике безопасности при эксплуатации установок с напряжением до 1000 В. Лица, обслуживающие систему электропитания, должны быть обучены приемам освобождения человека, попавшего под напряжение, приемам искусственного дыхания, правильного оказания первой помощи при поражении электрическим током и способам гашения пожара в электроустановках.
При эксплуатации ЭВМ запрещается:
включать ЭВМ при неисправной защите электропитания;
подключать и отключать разъемы кабелей электропитания и блоков вентиляции при поданном напряжении электросети;
заменять съемные элементы под напряжением;
производить пайку в аппаратуре, находящейся под напряжением;
снимать крышки, щиты, закрывающие доступы к токоведущим частям;
пользоваться электрическими паяльниками и другими электроинструментами с напряжением 36 В и выше с не- заземленными корпусами.
При техническом обслуживании аппаратуры ЭВМ обязательным является выполнение следующих правил:
при проверке и обслуживании съемных блоков электропитания их корпуса должны заземляться;
измерение напряжений в токоведущих частях с напряжением более 36 В необходимо производить, пользуясь резиновыми ковриками и изолированными щупами;
при прозвонке электрических цепей необходимо предварительно эти цепи обесточить и проверить отсутствие напряжения с помощью вольтметра. Прозвонку схем ТЭЗ производить прибором с источником постоянного напряжения не более 1,5 В;
металлические корпуса приборов следует заземлять.
ОБЕСПЕЧЕНИЕ ПОЖАРНОЙ БЕЗОПАСНОСТИ
ВЫЧИСЛИТЕЛЬНЫХ ЦЕНТРОВ
Пожарная безопасность вычислительных центров обеспечивается [4]:
выполнением требований пожарной безопасности помещений для ЭВМ, хранилищ информации, установок кондиционирования и систем электропитания;
выполнением правил пожарной безопасности при ремонтно-профилактических работах;
системой автоматической пожарной сигнализации и пожаротушения.
К помещениям для ЭВМ, хранилищам информации, установкам кондиционирования и системам электропитания предъявляются следующие требования пожарной безопасности:
материалы для акустической отделки стен и потолков должны быть негорючими;
древесностружечные и древесноволокнистые плиты должны применяться только при их глубокой пропитке огнезащитными составами;
стальные несущие и ограждающие конструкции должны быть защищены огнезащитными материалами и красками;
конструкция съемного пола машинного зала должна обеспечивать доступ к кабелям и вентиляционным системам;
плиты съемного пола должны быть выполнены из несгораемых или трудносгораемых материалов;
опоры и стойки съемных полов должны быть несгораемыми;
подпольные пространства под съемными полами должны разделяться несгораемыми диафрагмами;
различные помещения должны отделяться друг от друга противопожарными стенами и перегородками;
в надпотолочном и подпольном пространствах должны устанавливаться пожарные извещатели, система трубопроводов и выпускных устройств для подачи огнетушительного состава;
в помещениях, где нет постоянного присутствия персонала, необходимо устанавливать автоматическую систему пожарной защиты;
для нормальной эвакуации людей во время пожара ширина дверей должна быть не менее 1,5 м, высота не менее 2 м, ширина коридоров не менее1,8 м;
машинные залы площадью более 250 м2 должны иметь не менее двух выходов;
пожар в любом помещении не должен отрезать пути к эвакуационным выходам;
запасы перфолент и перфокарт в машинных залах не должны превышать оперативных норм;
воздуховоды системы вентиляции должны быть выполнены из негорючих материалов, иметь небольшое число поворотов и гладкую поверхность стенок, так как накопленная в них пыль может воспламеняться;
воздуховоды должны периодически очищаться;
в системе вентиляции должны быть предусмотрены клапаны для перекрытия воздуховодов при пожаре;
теплоизоляция воздуховодов систем охлаждения ЭВМ должна быть выполнена из несгораемых материалов;
при возникновении пожара системы вентиляции должны отключаться.
При выполнении ремонтно-профилактических работ необходимо соблюдать правила пожарной безопасности:
перед началом профилактических работ необходимо проводить инструктаж по пожарной безопасности, правилам работы с горючими жидкостями;
съемные узлы ЭВМ необходимо ремонтировать в отдельном,- специальном помещении;
необходимо использовать низковольтные паяльники, устанавливаемые на несгораемой подставке;
в качестве моющих средств необходимо выбирать пожаробезопасные вещества;
если для промывки деталей необходимо пользоваться горючими жидкостями, то эти работы должны выполняться в специальном помещении с приточно-вытяжной вентиляцией;
горючие жидкости необходимо хранить в металлической, плотно закрывающейся таре и убирать по окончании работы в сейф;
нельзя устанавливать ящики с жидкостями у входов, выходов, на эвакуационных путях, около установок и приборов отопления;
нельзя оставлять без наблюдения включенную в сеть контрольно-измерительную аппаратуру;
нельзя оставлять на устройствах остатки проводов, вату, марлю и другой обтирочный материал;
запрещается применять электронагревательные бытовые приборы;
запрещается курить, включать и выключать электросеть и приборы во время работы с легковоспламеняющимися жидкостями.
Система автоматической пожарной сигнализации и по-, жаротушения содержит: пожарные извещатели; приемную станцию; схему подрыва пиропатронов; батарею для хранения и выпуска огнетушащего состава; систему трубопроводов для подачи огнетушащего состава; баллон и распределитель сжатого воздуха. Система работает следующим образом. При повышении концентрации дыма или температуры в помещении извещатели срабатывают и выдают импульс на приемную станцию и далее на схему подрыва пиропатронов клапанов распределительного устройства и автоматической головки-затвора баллона сжатого воздуха. Через вскрывшуюся головку воздух вскрывает головки баллонов с огнетушительным составом, который поступает через систему трубопроводов к выпускным устройствам.
Различают два типа пожарных извещателей: пожарные извещатели, реагирующие на дым; тепловые пожарные извещатели.
Первые отличаются более высокой чувствительностью.
В качестве огнетушащих составов используют неэлект- тропроводные, не вызывающие коррозии и порчи оборудования составы. Наиболее широко используются составы с углекислотой и фреоном.
Для локального тушения пожаров используются также стационарные и передвижные огнетушители с ручным пуском.
<8.6. ПРОЦЕССЫ ПЛАНОВО-ПРОФИЛАКТИЧЕСКОГО ОБСЛУЖИВАНИЯ
Целью планово-профилактического обслуживания является обеспечение эксплуатации ЭВМ с коэффициентом использования, оговоренным в технической документации. Для ЭВМ Единой системы принят коэффициент использования Кт.и=0,9 при круглосуточной работе.
В процессах планово-профилактического технического обслуживания определяются и заменяются элементы, параметры которых вследствие износа находятся на пределе допустимого, проверяются элементы и узлы, не охватываемые системой автоматического контроля ЭВМ.
Процессы планово-профилактического технического обслуживания выполняются периодически через определенные
интервалы времени, причем чем больше установленный интервал между повторениями процесса обслуживания, тем больше программа работ по обслуживанию и больше продолжительность самого процесса обслуживания. В табл. 18.1 приведены некоторые сведения о процессах плановопрофилактического технического обслуживания ЭВМ.
Таблица 18.1
Наименование процесса планово-профнл акт ического обслуживания
Интервал между обслуживаниями
Нормативная продолжительность процесса обслуживания, ч
ЕС-1045
ЕС-1060
Суточный
Сутки
0,5
1
Двухнедельный
Две недели
2
6
Месячный
Месяц
8
16
Полугодовой
Полгода
12
72
Как следует из таблицы, продолжительность обслуживания зависит от модели ЭВМ.
Продолжительность процессов планово-профилактического обслуживания отдельных устройств (технических средств) ЭВМ составляет для ЭВМ ЕС: 1 ч — суточного, 4 ч — двухнедельного, 12 ч — месячного, 24 ч — полугодового.
При вводе ЭВМ в эксплуатацию выполняется полугодовой процесс технического обслуживания.
Рассмотрим перечень работ, выполняемых в процессах планово-профилактического технического обслуживания.
Суточное техническое обслуживание: 1) внешний осмотр технических средств ЭВМ; 2) чистка устройств; 3) проверка температуры и влажности в помещении; 4) работы суточного регламента отдельных технических средств; 5) проверка ЭВМ с помощью комплекса программ технического обслуживания.
Двухнедельное техническое обслуживание. По сравнению с программой суточного обслуживания добавляется осмотр креплений разъемов и установки ТЭЗ, выполняются работы двухнедельного регламента отдельных технических средств машины. Обслуживание завершается проверкой ЭВМ с помощью комплекса программ технического обслуживания.
Месячное техническое обслуживание. Сверх программы двухнедельного обслуживания проверяется работа органов
управления и сигнализации, функционирование ЭВМ при изменении напряжений вторичных источников питания на ±5%. Обслуживание заканчивается проверкой ЭВМ с помощью комплекса программ технического обслуживания при номинальном напряжении.
Полугодовое техническое обслуживание. Сверх программы месячного обслуживания производится осмотр и чистка ТЭЗ, блоков питания, кабелей и жгутов, проверка заземления путем замера переходного сопротивления, выполняются работы полугодового регламента отдельных технических средств, проверка защиты системы электропитания и сигнализации о перегреве, замер и регулировка частоты задающего генератора. Обслуживание завершается проверкой функционирования ЭВМ при изменении напряжений вторичных источников питания на ±5% и прогонкой при номинальном напряжении комплекса программ технического обслуживания.
Процесс технического обслуживания закончен, если не было сбоев при выполнении комплекса программ технического обслуживания.
ВЕДЕНИЕ ЖУРНАЛА ЭКСПЛУАТАЦИИ ЭВМ
При эксплуатации ЭВМ должен производиться сбор данных о работе ЭВМ, отдельных ее устройств, о возникающих отказах и сбоях, о проведенных профилактических работах и их результатах.
В гл. 14 этот вопрос был рассмотрен под углом зрения автоматизации процесса накопления и обработки информации о машинных ошибках. В данной главе рассматривается ведение «аппаратурного журнала», являющегося первичной формой информации о работе ЭВМ. Эта информация, зафиксированная по определенной форме в виде сводных карточек учета неисправностей, ежеквартально высылается пользователем-владельцем ЭВМ предприятию — изготовителю машины. Текущие данные об эксплуатации ЭВМ, наработке машины и отдельных устройств, наблюдавшихся отказах и сбоях, установленных причинах отказов и сбоев, о проведенных ремонтных работах и регулировках должны тщательно фиксироваться обслуживающим персоналом машины в «аппаратурном журнале» установленной формы.
Сбор и накопление данных о поведении ЭВМ в процессе эксплуатации имеет большое значение как для организа-
ции (разработчика и предприятия) — изготовителя, так и для пользователя, эксплуатирующего машину.
Разработчики и изготовители ЭВМ на основе данных об отказах и сбоях имеют возможность определить статистические характеристики надежности и обслуживаемости ЭВМ и ее отдельных устройств, определить и соответствующим образом доработать схемы, конструкцию и технологию изготовления узлов и устройств, оказавшихся недостаточно надежными в эксплуатации, скорректировать техническую документацию, в том числе уточнить методику и программы профилактических испытаний.
Пользователь на основе данных о сбоях и отказах ЭВМ имеет возможность планировать проведение ремонтных работ, замену отдельных устройств более надежными, установку резервного оборудования. Данные о сбоях, поведении ЭВМ при профилактических испытаниях с изменением питающих напряжений позволяют прогнозировать возникновение отказов в будущем и принимать профилактически необходимые меры (замену узлов и т. п.).
Для соответствующего учета неисправностей при работе ЭВМ принципиальное значение имеет уточнение классификации возникающих при работе машины событий как сбоев или отказов.
Понятия отказа и сбоя были определены в общеупотребительном смысле в гл. 1. Однако практика организации учета данных о надежности ЭВМ потребовала следующих дополнительных соглашений о том, как классифицировать те или иные события при эксплуатации машины.
Следует различать сбои и отказы ЭВМ и сбои и отказы отдельных ее устройств.
Обрыв магнитной ленты или бумаги, замятие перфокарты, пробивка лишних отверстий на перфокартах и перфолентах, непропечатываиие знака классифицируются не как сбои ЭВМ, а как сбои соответствующего устройства. Однако если для устранения указанных явлений необходима регулировка или ремонт устройства, то регистрируется его отказ.
Если при отказе некоторого устройства оказалось возможным подключить к машине резервное устройство (или перейти к работе с резервным устройством) и продолжить решение задачи, то фиксируется не отказ ЭВМ, а отказ устройства. Если указанное переключение влечет за собой новую загрузку операционной системы, то регистрируется отказ ЭВМ.
Сбои ЭВМ, автоматически устраняемые программно-аппаратурными средствами, не учитываются при определении значений наработки на сбой и коэффициента использования ЭВМ. Отметим, что данные о таких сбоях, автоматически накапливаемые и обрабатываемые операционной системой машины, ориентируют пользователя относительно «слабых мест» в эксплуатируемой машине, позволяют по изменению частоты появления таких сбоев прогнозировать надежность работы машины.
Сбои ЭВМ, обнаруженные и устраненные при техническом обслуживании, не учитываются при определении характеристик надежности. Аналогичным образом поступают с отказами и сбоями, происшедшими из-за низкого качества носителей информации, отклонения параметров внешней среды за пределы, оговоренные в технической документации, а также вызванными ошибками в действиях операторов.
ЭКСПЛУАТАЦИОННАЯ ДОКУМЕНТАЦИЯ
Основными эксплуатационными документами ЭВМ являются:
формуляр ЭВМ;
инструкция по эксплуатации ЭВМ и устройств;
руководства по эксплуатации диагностических и функциональных тестов;
диагностические справочники;
таблицы и тесты проверки ТЭЗ;
техническое описание.
Два других документа: «Требования к помещению» и «Инструкция по монтажу, пуску и регулированию ЭВМ на месте применения» используются при подготовке помещения и вводе ЭВМ в эксплуатацию у пользователя.
Требования к помещению определяют необходимую площадь машинного зала и подсобных помещений, климатические условия, вентиляцию и другие параметры, необходимые для обеспечения нормальных условий эксплуатации.
Инструкция по монтажу, пуску и регулированию ЭВМ на месте применения содержит правила развертывания, установки, монтажа и пуска ЭВМ в эксплуатацию на месте применения. Основным разделом инструкции является «Сдача в эксплуатацию смонтированного изделия», в котором приводится перечень испытаний установленной ЭВМ, гарантирующих ее работоспособность. В этом разделе даются
также определения понятий сбоя и отказа, которыми пользуются при учете результатов испытаний.
В результате успешных испытаний подписывается акт ввода ЭВМ в эксплуатацию, форма которого указана в инструкции.
В инструкции приводятся также правила возмещения стоимости узлов, деталей и электрорадиоэлементов, вышедших из строя в период проведения пуско-наладочных работ и пуска ЭВМ.
Формуляр ЭВМ является документом, содержащим комплектность аппаратурных средств ЭВМ и ее эксплуатационной документации, технические характеристики, данные контрольно-приемочных испытаний и гарантийные обязательства завода-изготовителя.
Инструкция по эксплуатации содержит сведения по установке ЭВМ, включению электропитания, подготовке ЭВМ к работе, составу и численности обслуживающего персонала, инструкции по выполнению всех операций с пульта ЭВМ. Основными разделами инструкции по эксплуатации являются разделы, содержащие описание характерных неисправностей и методы их устранения, рекомендации по плановопрофилактическим работам, ремонту ЭВМ, организации ЗИП. В этих разделах содержатся инструкции по запуску диагностических тестов, поиску неисправностей, указания по применению тех или иных тестовых средств. В разделе по организации планово-профилактических работ содержатся рекомендации по периодичности, длительности и составу планово-профилактических работ.
Руководства по эксплуатации диагностических и функциональных тестов содержат инструкции оператору по запуску и интерпретации результатов этих тестов, а также рекомендации по локализации неисправностей с помощью программно-аппаратурных средств.
Диагностические справочники представляют собой документ, в котором устанавливаются соответствия между кодами, получаемыми при выполнении диагностических тестов, и блоками, подозреваемыми на неисправность.
Таблицы и тесты проверки ТЭЗ содержат перечень тестовых наборов, обеспечивающих локализацию неисправности в ТЭЗ, и эталонные результаты. В ЭВМ, снабженных средствами автоматизированной проверки ТЭЗ, дополнительно к таблицам проверки ТЭЗ имеются диагностические таблицы и тесты проверки ТЭЗ.
Качество эксплуатационной и технической документа-
ции, ее форматы и используемый носитель информации оказывают большое влияние на обслуживаемость и ремонтопригодность устройств ЭВМ, особенно периферийных.
Существующая техническая документация во многом далека от совершенства. Производители средств вычислительной техники ведут поиск новых форм эксплуатационной документации, позволяющей улучшить и облегчить обслуживание и ремонт.
ОСОБЕННОСТИ ЭКСПЛУАТАЦИИ ОПЕРАЦИОННЫХ СИСТЕМ
Современные операционные системы, как правило, являются системами, ориентированными на разнообразные применения. В основе построения систем лежит модульный принцип, позволяющий эффективно приспосабливать операционные системы к изменяющимся условиям функциони- рованйя, а также обеспечивающий возможность их непрерывного совершенствования.
Модули представляют собой составные части операционной системы, которые могут объединяться в различных сочетаниях и образовывать уникальную операционную систему.
Различают следующие типы модулей:
необходимые в любом варианте данной операционной системы;
необязательные (дополнительные);
альтернативные, реализующие одинаковые функции с разной степенью эффективности.
Таким образом, для успешной эксплуатации операционных систем необходима реализация следующих мероприятий;
определение назначения вычислительной системы, общего объема и типов выполняемых работ;
выбор конфигурации технических средств и соответствующего типа операционной системы;
осуществление генерации операционной системы, т. е. настройки ее компонентов на конкретное применение;
проверка работоспособности сгенерированной операционной системы;
адаптация операционной системы к конкретным условиям;
фиксация нарушений в работе ЭВМ, анализ причин нарушений и принятие мер по их ликвидации;
разработка средств, расширяющих возможности стандартных версий операционных систем.
Генерация операционных систем. Операционные системы ЭВМ общего назначения, к которым относятся ЭВМ Единой системы, представляют собой параметризуемые программные средства, созданные по модульному принципу. В соответствии с возможностями конкретной вычислительной установки [объем основной памяти, состав периферийного оборудования и др.), а также в зависимости от характера выполняемых задач пользователь может выбрать необходимые ему программные средства.
Генерация операционной системы представляет собой процесс объединения выбранных модулей операционной системы в системные наборы данных. Совокупность указанных наборов образует операционную систему данной установки. Новая операционная система состоит, как правило, из стандартных средств, присутствующих в любом варианте системы, и некоторых дополнительных средств, задаваемых пользователем.
Рассмотрим процесс генерации системы на примере ОС ЕС ЭВМ.
В ОС ЕС пользователь описывает необходимый ему вариант операционной системы с помощью специальных макрокоманд генерации, в которых отражаются конфигурация вычислительной установки и ее программные возможности. При осуществлении генерации используются системные программы генерации.
Генерация ОС проводится в две стадии (рис. 18.5). На первой стадии анализируется последовательность макрокоманд, используемая для создания потока заданий. На второй стадии происходит выполнение заданий, в результате чего на устройствах прямого доступа создаются библиотеки системных модулей, которые и составляют операционную систему пользователя.
Первая стадия генерации состоит из двух фаз. Во время первой фазы проверяются макрокоманды, описывающие генерируемую ОС. В процессе проверки выдаются диагностические сообщения. Если во время первой фазы ошибок не обнаружено, то во время второй фазы создается поток заданий.
На второй стадии генерации поток заданий обрабатывается ассемблером, редактором связей и утилитами (служеб-
ными программами). При этом происходит ассемблирование заданных пользователем модулей; редактор связей помещает эти модули в резидентную часть управляющей программы (ядро), а затем обрабатывает выбранные модули для создания разделов библиотек новой операционной системы;
наконец, программы-утилиты завершают формирование (инициирование) библиотек новой ОС.
Пользователь имеет возможность осуществить генерацию нескольких типов: полную генерацию операционной системы, генерацию трансляторов-библиотек, генерацию программ управления устройствами ввода-вывода.
При генерации имеется возможность задания режима управляющей програм-
мы:мы:однопрограммногооднопрограммного(РСР), мультипрограммирования с фиксированным числом задач (MFT), мультипрограммирования с переменным числом задач (MVT) и др.
мы:
мы:
однопрограммного
однопрограммного
Полная генерация системы необходима в том случае, когда изменения касаются возможностей управляющей программы, а так-
/Д Управляющие'I предложенияЛ МикрокомандыIV еенераиииСтадия .„11 IДиагностическое^— — х^у — *~~] сообщения/Д Управляющие'I предложенияЛ МикрокомандыIV еенераиииСтадия .„11 IДиагностическое^— — х^у — *~~] сообщенияj Ассемблерj Ассемблер6 Поток забиний • еенераиии системы (на магнитной ленте * ала перфокартах)6 Поток забиний • еенераиии системы (на магнитной ленте * ала перфокартах)АссемблерАссемблерРевактор сбязейРевактор сбязейПрограммы- утилитыПрограммы- утилиты/ Библио-'щеки компо- рентой/ Библио-'щеки компо- рентойСистемныйрезидентный томСистемныйрезидентный томСистемныенаборыданныхСистемныенаборыданныхРис. 18.5. Генерация операционной системыРис. 18.5. Генерация операционной системыже в некоторых случаях при изменении конфигурации установки.
/Д Управляющие
'I предложения
Л Микрокоманды
IV еенераиии
Стадия .„
11 IДиагностическое
^— — х^у — *~~] сообщения
/Д Управляющие
'I предложения
Л Микрокоманды
IV еенераиии
Стадия .„
11 IДиагностическое
^— — х^у — *~~] сообщения
j Ассемблер
j Ассемблер
6 Поток забиний • еенераиии системы (на магнитной ленте * ала перфокартах)
6 Поток забиний • еенераиии системы (на магнитной ленте * ала перфокартах)
Ассемблер
Ассемблер
Ревактор сбязей
Ревактор сбязей
Программы- утилиты
Программы- утилиты
/ Библио-
'щеки компо- рентой
/ Библио-
'щеки компо- рентой
Системныйрезидентный том
Системныйрезидентный том
Системныенаборыданных
Системныенаборыданных
Рис. 18.5. Генерация операционной системы
Рис. 18.5. Генерация операционной системы
Генерация ядра представляет собой процесс присоединения ядра к ОС. При этом новое ядро данной ОС должно соответствовать режиму, заданному при полной генерации системы, поскольку необходима совместимость резидентной части управляющей программы (ядра) и ее нерезидентной части.
При генерации трансляторов-библиотек происходит присоединение к операционной системе трансляторов и соот-
ветствующих им библиотек. При генерации программ управления устройствами ввода-вывода пользователь имеет возможность присоединять, отключать или изменять устройства ввода-вывода, устройства управления и каналы. Возможно изменение группового имени устройства, изменение конфигурации консолей, введение возможности разделения устройств прямого доступа и т. д.
Адаптация ОС к конкретным условиям. После генерации в систему включают нестандартное программное обеспечение, к которому относятся дополнительные трансляторы, системы управления базами данных, сервисные программы и процедуры, как разработанные в организации, проводящей эксплуатацию ОС, так и полученные от других организаций. Кроме того, часто проводится корректировка модулей ОС для увеличения удобства работы с ней (например, исключение некоторых сообщений на консоль оператора, если они при данных условиях эксплуатации не несут информации) .
В новой ОС каталогизируются наборы данных, используемые в ходе эксплуатации системы; системным параметрам присваиваются значения, соответствующие условиям работы на данной установке и вычисленные в ходе эксплуатации предыдущих версий ОС. Для облегчения адаптации в ходе эксплуатации необходимо поддерживать мобильность системы по отношению к смене версий ОС, т. е. по возможности разделить на носителях стандартные и нестандартные компоненты программного обеспечения, использовать каталоги на дополнительных томах магнитных дисков, а не на резидентном томе и т. д.
Для повышения производительности ЭВМ необходимо определение «узких мест» в ее работе и перераспредение ресурсов системы с целью их устранения. Для этого необходимо измерение параметров функционирования ОС и вычислительной установки в целом. Измерения проводятся с помощью специальных программных и программно-аппаратурных систем (см. гл. 16).
Проверка работоспособности ОС. Сгенерированная система подвергается тестированию. Для этого на ней выполняются пакеты прикладных программ, используемые при эксплуатации системы, а также прогоняются сервисные программы и процедуры, включенные после генерации. В ходе тестирования фиксируются все ненормальные результаты выполнения программ и производится их анализ.
Отказы прикладных программ могут быть вызваны ошиб-
ками в самих программах, не проявлявшимися на предыдущей версии (например, иногда некорректное использование буферов ввода-вывода не проявляется при работе в системах с реальной адресацией и приводит к аварийному завершению задачи при работе в системах с виртуальной памятью). В результате испытаний может быть выявлено также ухудшение характеристик системы по сравнению с предыдущей версией (например, снижение производительности, увеличение частоты сбоев и т. п.).
По результатам испытаний выносится решение о целесообразности перехода на новый вариант ОС, либо о необходимости доработки прикладных программ для их использования в новой версии ОС, либо об отказе от использования новой версии.
Нарушения в работе ОС. В ходе эксплуатации ОС необходимо тщательно фиксировать все случаи нарушения ее работы. Они проявляются в виде регистрируемых сбоев и отказов оборудования, а также в виде отказов ОС (аварийное завершение системных задач и зависания).
Отказы ОС могут быть вызваны либо дефектами системных программ, либо сбоями аппаратуры, не выявленными средствами контроля, либо ошибками или недосмотром оператора, неправильно отреагировавшего на запрос ОС.
Дефекты системных программ в большинстве случаев являются ситуационными, т. е. проявляются только в определенных ситуациях. Наиболее типичными примерами нарушений этого типа являются переполнение системных таблиц или очередей, а также клинчи, т. е. взаимные блокировки программ при обращениях к ресурсам. Иногда удается выйти из этих ситуаций с помощью удачных действий оператора, но во многих случаях приходится перезагружать ОС. Возникновение таких ситуаций возможно из-за ошибок генерации системы (например, выделение слишком малого объема ОП для области системных очередей) или из-за ошибок в программе ОС (например, параллельное использование программы двумя задачами может привести к сбою, если программа объявлена рентерабельной, а на самом деле ею не является).
Отказ ОС вследствие сбоя оборудования возникает в том случае, если после успешного запуска операции ввода-вывода аппаратура не сформировала прерывание по концу операций. ОС остается работоспособной, но устройство, потерявшее прерывание, становится недоступным, так как ОС считает, что оно занято операцией ввода-вывода.
Последние версии ОС содержат компонент MIC, контролирующий зависание описанного типа н имитирующий прерывание ввода-вывода, если оно ие поступило в течение 15 с (для некоторых устройств — через большие промежутки времени).
Одиако более сложные случаи нарушений не распознаются ОС и приводят к зацикливанию супервизора или к программному прерыванию в супервизоре.
Примером некорректного действия оператора, приводящего к отказу ОС, является попытка перевести в оперативное состояние устройство ввода-вывода, отсутствующее в реальной конфигурации. Операционная система запрашивает установку на это устройство тома и ожидает, пока произойдет прерывание, свидетельствующее о готовности устройства к работе.
Для фиксации отказов ОС применяются, как правило, дампы памяти. В их число входит системный дамп, автоматически записываемый при аварийных завершениях в системных программах или по команде оператора, и независимый дамп, выдаваемый автономной программой и используемый в тех случаях, когда система потеряла работоспособность. Оба вида дампа состоят из образа памяти и могут выводиться непосредственно на печатающее устройство либо на магнитный носитель с последующей распечаткой специальной утилитой. Наиболее сложны случаи, когда система возобновляет работу, не формируя дампа (например, при программных прерываниях в супервизоре ввода- вывода). Так как возникновение таких ситуаций часто невозможно предсказать и воссоздать, то для анализа подобных ситуаций приходится применять трассировщики, накапливающие «трассу» (информацию об особенностях прохождения программы). Иногда, однако, информации, содержащейся в трассе, бывает недостаточно для выяснения причины отказа ОС, и в этом случае приходится создавать специальные программы-ловушки для фиксации конкретного нарушения.
Устранение отказов ОС, как правило, сводится к доработке аппаратуры, программ или, в худшем случае, к отказу от режимов работы, в которых нарушение проявляется наиболее часто.
Требования фиксации отказов ОС и быстрого возобновления работы после сбоя являются противоречивыми, поэтому в зависимости от типа задач, решаемых на конкретной вычислительной установке (пакетные задания или ре-
жим реального времени), изменяются методы фиксации отказов ОС и объем собираемой информации.
Усовершенствование ОС. В процесс эксплуатации ОС входят также ее усовершенствование и доработка по мере обнаружения ошибок и неудобств в использовании. Простейшим вариантом доработки является составление процедур языка управления заданиями, включающими в себя наиболее часто используемые в данном ВЦ задания. Удачно составленный пакет процедур существенно облегчает работу оператора и программистов, повышает производительность ЭВМ, снижает вероятность разрушения информации от неумелого использования (например, при использовании стандартной утилиты ошибка всего в одном символе управляющего оператора приводит к уничтожению всей библиотеки вместо одного раздела) и т. п. Использование специальных процедур позволяет избежать таких ситуаций.
В более сложных случаях доработки состоят в написании сервисных программ, расширяющих возможности стандартных утилит.
ОБСЛУЖИВАНИЕ НОСИТЕЛЕЙ ДАННЫХ
Носители данных на магнитных лентах должны храниться в специальных шкафах, приспособленных для вертикального хранения магнитных лент.
Шкафы устанавливаются в отдельных помещениях, в которых поддерживается температура 21—22 °C, влажность 45—55 % и высокий уровень чистоты, достигаемой ежедневной влажной уборкой.
При работе с магнитными лентами необходимо выполнять следующие требования:
соблюдать осторожность во избежание смятия, загрязнения и образования царапин;
не оставлять магнитные ленты с информацией на накопителях;
регулярно проверять магнитную ленту с информацией; для сохранности информации следует иметь три экземпляра магнитных лент: подлинник, контрольную копию и дубликат;
при работе с постоянно корректируемыми массивами необходимо создание поколений массивов «дед—отец—сын». Каждая очередная корректура массивов создает новое поколение. При повреждении массива его можно восстановить по предыдущему поколению и имеющейся корректуре;
магнитные ленты с постоянными массивами информации должны выдаваться для работы без кольца защиты записи;
каждая магнитная лента должна иметь этикетку с названием ленты, датой ее записи, названием программы, с помощью которой выполняется ее копирование, тип накопителя, на котором записана информация.
Носители данных на магнитных дисках (пакеты сменных магнитных дисков) должны храниться в отдельных помещениях на стеллажах или специальных шкафах. Каждый пакет магнитных дисков хранится в своем пластмассовом контейнере. Климатические условия аналогичны условиям хранения магнитных лент.
При работе с магнитными дисками необходимо выполнять следующие требования:
периодически очищать верхнюю крышку контейнера от пыли изнутри;
периодически очищать конусообразную ступицу пакета, устанавливаемую на шпиндель накопителя;
периодически очищать мягкой безволокнистой материей, смоченной в спирте, поверхности пакета;
регулярно проверять фильтр пакета и заменять его при загрязнении и повреждении;
после снятия пакета с накопителя с помощью верхней крышки контейнера его необходимо сразу же закрыть нижней крышкой;
запрещается трогать пальцами лаковое покрытие дисков, так как появление на поверхности жировых пятен может привести к прилипанию пыли и порче поверхности пакета.
Перфокарты следует хранить под двухкилограммовыми прессами.
ПРОЦЕДУРЫ АВТОНОМНОГО ТЕСТИРОВАНИЯ ЭВМ
С ПОМОЩЬЮ ПРОГРАММЫ «ТЕСТ-МОНИТОР» (ЕС ЭВМ]
Комплект программ технического обслуживания (КПТО), включающий в себя тест-монитор (ТМ) и тесг- секции (ТС) устройств, используется при автономном тестировании устройств ЭВМ. Комплект программ технического обслуживания поставляется пользователю на магнитной ленте.
Тест-монитор загружается процедурой первоначальной загрузки программ, после чего выполняется его инициализация (настройка) на систему, т. е. определяются систем-
ные устройства ввода, вывода сообщений и загрузки тест- секций.
В качестве системных устройств ТМ обычно используются:
пишущая машинка (ПМ) или пульт оператора для ввода заданий;
пишущая машинка (или пульт оператора, или АЦПУ) для вывода сообщений;
накопитель на магнитной ленте для загрузки Т/М и тест-секций.
После определения системных устройств тест-монитор выдает начальное сообщение
ОЖД НЗП ТМЕС ВЕРСИЯ О и переходит в состояние ожидания для приема
входных сообщений с клавиатуры ПМ;
задания с пульта управления системы;
изменения конфигурации системы с пульта управления.
Если устройство ввода не было определено, ТМ назначает в качестве устройства ввода ПМ, с которой получен запрос «Внимание».
В этот момент выходные сообщения могут использоваться для:
изменения конфигурации путем ввода сообщений U (изменения параметров процессора), А (добавления устройств в таблицу определения устройств) и W (исключений устройств из таблицы определения устройств);
назначения или изменения системных устройств ТМ путем ввода сообщений ПСС UU (назначение устройств ввода), I0CC UU (назначение устройств вывода), или IL СС UU (назначение устройства загрузки), где СС и UU — шестнадцатеричные номера канала и устройства;
ввода задания.
Задание, описывающее функции, требуемые для выполнения со стороны ТМ, представляет собой набор так называемых приказов.
Существуют следующие категории приказов:
управляющие работой тест-секций:
С — запрос на зацикливание примера, секции или задания;
F— запрос на прекращение выполнения секции;
G— запрос на прекращение выполнения активной секции только при текущей обработке;
О — запрос на вмешательство оператора;
5 — запрос на включение управляющих ключей секции;
Z— запрос на выключение управляющих ключей секции;
управляющие работой ТМ:
В — запрос на начало или продолжение;
Н — запрос на останов;
I — запрос на инициализацию ТМ;
S/Z— запрос на включение/выключение управляющих ключей ТМ;
действующие на таблицы ТМ:
А — запрос на добавление, изменение или восстановление компонентов таблицы определения устройств (UDT);
I — запрос на инициализацию таблиц ТМ или изменение таблицы определения устройств ТМ (DMI0);
М — запрос на распечатку таблиц ТМ; .
U — запрос на определение параметров процессора в таблице тест-секций (SRT);
W— запрос на исключение компонента таблицы определения устройств (UDT);
для ввода и запуска задания:
В — запрос на инициализацию ТМ для нового задания;
L — запрос на загрузку тест-секций;
выполняющие сервисные функции:
запрос на ввод данных в ОП с клавиатуры ПМ;
Т— запрос на распечатку области ОП на устройстве вывода.
Пример. I/A50, 0380/L520, 0380/SO. S24/B.
Запись означает: инициализировать ТМ, добавить в таблицу UDT компонент для НМЛ с адресом 0380; загрузит секцию 520 и проверить НМЛ с адресом 0380; включить управляющий ключ 24ТМ (блокировка сообщений).
В процессе работы тест-монитор может выдавать следующие коды сообщений:
ОВВ —ошибка операции ввода-вывода ТМ;
ТВО — требуется вмешательство оператора;
ОВП — ошибочное внешнее прерывание;
ОСТ — останов по требованию секции;
ОВС — ошибочный вызов супервизора;
ПСК — прерывание от схем контроля ЭВМ;
ПГМ — ошибочное программное прерывание;
ПНН — программа не найдена;
ОТВ —секция отвергнута;
ПЗГ — необходима перегрузка;
НУТ — нет требуемого типа устройства;
ПВС — повторить сообщение;
Н — начало тест-секции:
К — конец тест-секции;
НМТUDT — таблица UDT заполнена (нет места);
НМТIMT — таблица IMT заполнена (нет места);
ПНУ — прерывание от неназначенного устройства.
В ТМ и тест-секциях имеются управляющие ключи (УКТ), состояние которых задает различные режимы работы монитора и секции. Ниже приводится описание ключей ТМ, которые удобно использовать при поиске неисправностей и наладочных работах.
Ключи устанавливаются (переключаются) приказами S (Z), вводимыми с ЦМ:
УКТ 17 включен (выключен)—ожидание для запуска программы ЕРЕР при прерывании от схем контроля (нормальная обработка прерываний от схем контроля);
УКТ 18 включен (выключен)—блокировка распечатки (распечатка) диагностической области при прерывании от схем контроля;
УКТ 20 включен (выключен)—останов (выполнение) после загрузки каждой тест-секции;
УКТ 21 включен (выключен) — вывод только первой строки (всех строк) сообщений, печатаемых по запросам;
УКТ 22 включен (выключен)—блокировка (разрешение) печати сообщений на ПМ, если она не является системным устройством вывода;
УКТ 24 включен (выключен) — блокировка (разрешение) печати всех сообщений о начале (Н) и окончании (К) тест-секций на системном устройстве вывода;
УКТ 25 включен (выключен)—останов (отсутствие останова) после каждой ошибки, обнаруженной монитором или тест-секцией;
УКТ 26 включен (выключен)—задание зацикливается (не зацикливается);
УКТ 27 включен (выключен)—блокировка (разрешение) печати всех сообщений на системном устройстве вывода;
УКТ 28 включен (выключен) —зацикливание (незацик- ливание) активной (загруженной в ОП) тест-секции;
УКТ 29 включен (выключен)—блокировка (разрешение) печати всех оперативных сообщений тест-секции, печатаемых по запросу SVCDO;
УКТ 30 включен (выключен)—блокировка (разрешение) печати всех сообщений об ошибке.
18.12 ПРОЦЕДУРЫ НЕАВТОНОМНОГО ТЕСТИРОВАНИЯ ПЕРИФЕРИЙНЫХ устройств под УПРАВЛЕНИЕМ ОС ЕС
Для эффективного использования машинного времени необходимо обеспечить возможность проверки функционирования ПУ параллельно с выполнением машинной программы пользователей ЭВМ. Такую возможность предоставляют в ЕС ЭВМ процедуры неавтономного тестирования ПУ. Тестирование под управлением ОС ЕС рекомендуется использовать при проверке готовности устройств, их исправности после ремонта, профилактической проверке устройств и поиске в них неисправностей.
Комплект неавтономных тестов устройств (КНТУ) состоит из управляющей программы и тест-секций, поставляемых пользователю отдельно от операционной системы. Магнитная лента КНТУ содержит отдельные файлы, представляющие собой объектные модули тест-секций ПУ в виде, удобном для помещения их в библиотеку загрузочных модулей.
Для тестирования с помощью программ неавтономного тестирования необходимы библиотеки, содержащие загрузочные модули и процедуры, а также библиотеки конфигураторов.
Конфигуратор ПУ определяет конкретный допустимый режим тестирования, а также некоторые технические характеристики ПУ. .
Вызов программы неавтономного тестирования выполняется стандартной процедурой, поэтому она обычно каталогизируется и помещается в системную библиотеку каталогизированных процедур.
Для выполнения тестирования ПУ должно быть переведено в режим, недоступный программе пользователя. С этой целью рекомендуется переводить ПУ в автономный режим по очереди, так как заблаговременный перевод ПУ в автономный режим может затруднить выполнение других заданий.
При включении управляющей программы неавтономного тестирования в библиотеку каталогизированных процедур она может вызываться командой START.
После вызова управляющей программы неавтономного тестирования она запрашивает тестовое задание, содержащее адреса тестируемых ПУ, обозначение выполнямых тест-секций и режимы работы при тестировании.
Имеются следующие режимы работы при тестировании:
запись всех сообщений тест-секций, выводимых на пульт управления, в выходной набор данных диагностики;
печать сообщений о начале и конце выполнения каждой тест-секции;
вывод на печать подробной диагностической информации о неисправности, обнаруженной в ПУ. Диагностическое сообщение содержит заголовок, признак обнаружения неисправности, имя тест-секции, номер блока, адреса начальной команды тест-секции, адрес программы канала, с помощью которой производилось тестирование, адрес тестируемого ПУ, результаты (ожидаемые и полученные данные в виде кода условия, сформированного в результате выполнения операции ввода-вывода, код приказа ПУ, конечный адрес программы канала, байты состояния ПУ и канала, значение счетчика в управляющем слове канала, байты уточненного состояния, байты данных);
останов теста при обнаружении в ПУ первой ошибки и представление оператору возможности изменения тестового задания. В ответ на сообщение оператор может либо продолжить тестирование, либо зациклить выполнение теста на обнаруженной ошибке;
циклическое повторение тестового задания. Это режим используется для осциллографирования при поиске неисправностей;
n-кратное повторение блока тест-секции, на котором была обнаружена ошибка.
СПИСОК ЛИТЕРАТУРЫ
Авен О. И., Гурин Н. И., Коган Я. А. Оценка качества и оптимизация вычислительных систем. М.: Наука, 1982.
Вентцель Е С. Теория вероятностей. М.: Наука, 1969.
Вентцель Е. С. Исследование операций. М.: Советское радио, 1972.
Волков О. М., Замулюкин А. Т. Противопожарная защита вычислительных центров. М.: Стройиздат, 1982.
Гарднер X. Полностью аппаратное резервирование без участия программ//Электроника. 1983. № 2. С. 39—43.
Георгиев Н. В., Орлов Б. В. Функциональный контроль полупроводниковых запоминающих устройств//Электрониая промышленность. 1980. № 6. С. 3—20.
Гнедов Г. М. Контроль аппаратуры передачи данных. М.: Радио и связь, 1981.
Системы тестового контроля современных ЭВМ. Обзор основных направлений/А. П. Горяшко, Н. И. Литвиненко, В. А. Поспелов, И. И. Пожаров//Техническая кибернетика. 1985. № 1. С. 37—56.
Горяшко А. П. Проектирование легко тестируемых дискретных устройств: идеи, методы, реализация. М.: Энергия, 1982.
ГОСТ 16325—76. Машины вычислительные электронные цифровые общего назначения. Общие технические требования. М.: Издательство стандартов, 1984.
Грабаров В. С. Наладка ЭВМ с помощью логических анализа- торов//ВРЭ. Сер. ЭВТ. 1983. Вып. 1. С. 53—59.
Громов Г. Р. Надежность персональных ЭВМ и производственная загрузка фирменной сети сервиса//Микропроцессорные средства и системы. 1985. № 4. С. 89—91.
Громыко Г. Л Статистика. М.: Изд-во МГУ, 1981.
Гурвич И. С. Защита ЭВМ от внешних помех. М.: Энергия, 1975.
Дроздов Е. А., Комарницкий В. А., Пятибратов А. П. Электронные вычислительные машины Единой системы. М.: Машиностроение. 1981.
Дружинин г. В. Надежность автоматизированных систем. М.: Энергия, 1977.
Ильин Л. Н., Шаруненко Н. М. Система комплексного централизованного обслуживания средств вычислительной техники//ЭВТ. 1987. Вып. 1. С. 58—66.
Имитатор канала для наладки внешних устройств ЕС ЭВМ/ /В. А. Исаенко, В. А. Калиничев, В. М. Тафель, В. И. Цуранич//Обмен опытом в радиопромышленности. 1980. № 9. С. 55—56.
Каган Б. М. Электронные вычислительные машины и системы. М.: Энергоатомнздат, 1985.
Каган Б. М., Мкртумян И. Б. Об одном подходе к проектированию систем автодиагностики//Вопросы радиоэлектроники. Сер. ЭВТ. 1971. Вып. 8. С. 42—51.
Каган Б. М„ Мкртумян И. Б. Основы эксплуатации ЭВМ. М.: Эиергоатомиздат, 1983.
Каган Б. М., Сташин В. В. Основы проектирования микропроцессорных устройств автоматики. М.: Эиергоатомиздат, 1987.
Казак А. С., Кондрашев А. Ф. Проблемы организации обработки данных у пользователей//Вопросы радиоэлектроники. Сер. ЭВТ. 1979. Вып. 5. С. 3—8.
Казак А. С., Клюев В. Е„ Максимов Н. С. Некоторые аспекты эксплуатации операционных систем ОС ЕС ЭВМ//Вопросы радиоэлектроники. Сер ЭВТ. 1979. Вып. 5. С 31—36.
Казаков А. К- Методы и средства восстановления после машинных ошибок//Вопросы радиоэлектроники. Сер. ЭВТ. 1980. Вып. 5. С. 31—40.
Казьмина С. К. Компактное тестирование//Автоматика и телемеханика. 1982. № 3. С. 173—189.
Кирхленд Т., Флорес В. Программные средства анализа тестируемости и автоматическая генерация тестов для СБИС//Электроннка. 1983. № 5. С. 41—48.
Комоницки Д. Полное самотестирование системы — результат синтеза существующих методов//Электроника. 1983. № 5. С. 26—35.
Коэн К. Многопроцессорная архитектура для обработки траиз- акций//Электроника. 1983. № 2. С. 26—32
Липаев В. В. Надежность программного обеспечения АСУ. М.: Энергоиздат, 1981.
Лонгботтом Р. Надежность вычислительных систем. М.: Энерго- атомиздат. 1985.
Майерс Г. Надежность программного обеспечения. М.: Мир, 1980.■
Мазур Е. И., Новик Г. X., Сташин В. В. Схема построения простого сигнатурного анализатора//Цифровые вычислительные машины н системы и их применение иа железнодорожном транспорте. М.: МИИТ. 1979. Вып. 642. С. 60—65.
Микропроцессоры!Поз. ред. Л. Н. Преснухина. М.: Высшая школа, 1986.
Мартин Док. Организация баз данных в вычислительных системах. М.: Мир, 1978.
Морозов Е. А. Восстановление баз данных//Вопросы радноэлек- троиики. Сер. ЭВТ. 1978. Вып. 8. С. 86—91.
Муса Дою. Д. Измерение и обеспечение надежности программных средств//ТИИЭР. Т. 68. № 9. 1980. С. 113—128.
Надеоюность автоматизированных систем управления/И. О. Авто- мяи, А. С. Вайрадян, Ю. П. Руднев и др. М.: Высшая школа, 1979.
Новик Г. X., Сташин В. В., Мазур Е. И. Элементы теории сигнатурного анализа//Цифровые вычислительные машины и их применение на железнодорожном транспорте. М.: МИИТ, 1979. Вып. 642. С. 52—59.
Об одном примере построения аппаратурно-программной диагностики периферийного устройства ЭВМ/И. Я. Доморадов,- В. А. Клю- чев н др.//Вопросы радиоэлектроники. Сер. ЭВТ. 1979, Вып. 12. С. 100— 106.
Основы технической диагностики/В. В. Карибский, П. П. Пар- хоменко, Е. С. Согомонян, В. Ф. Халчев. М.: Энергия, 1976.
Основы эксплуатации радиоэлектронной аппаратуры/А. К. Быкадоров, Л. К. Кульбак, В. Ю. Лавриненко и др.; Под ред. В. Ю. Лав. риненко. М.: Высшая школа, 1978.
Пархоменко П. П., Согомонян Е. С. Основы технической диагностики. М.: Энергоиздат, 1981. -
Питерсон У. Коды, исправляющие ошибки. М.: Мир, 1976.
Пул Л. Работа на персональном компьютере. М.: Мир, 1986.
Пятибратов А. П., Бацюро Г. А. Вопросы построения системы комплексного централизованного обслуживания средств ЭВТ//Вопросы радиоэлектроники. Сер. ЭВТ. 1978. Вып. 14. С. 15—25.
Средства измерения и учета в ОС ЕС ЭВМ/A. П. Гагарин, М. Н. Грабовский, Н. В. Кондратьев, Г. П. Попова//ВРЭ. Сер. ЭВТ. Вып. 5. 1980. С. 48—56.
Тейер Т., Липов М., Нельсон Э. Надежность программного обеспечения. М.: Мир, 1981.
Титов Ю. А. Состояние и перспективы развития комплексного централизованного обслуживания Единой системы электронно-вычислительных машин//Вопросы радиоэлектроники. Сер. ЭВТ. 1978. Вып. 14. С. 8-14.
Терзян О. А., Чахоян Л. М. Способы и схемотехнические решения, обеспечивающие работоспособность полупроводниковых ПЗУ с неисправными запоминающими элементами//Вопросы радиоэлектроники. Сер. ЭВТ. 1977. Вып. 8. С. 56—57.
Трейстер Р. Персональный компьютер фирмы ИБМ. М.: Мнр, 1986.
Уэнсли Д. Высоконадежная система с тройным резервированием для управления технологическими процессами//Электроннка. 1983. № 2. С. 32—39.
Феррари Д. Оценка производительности вычислительных систем. М.: Мир, 1981.
Хоффман Л. Дж. Современные методы защиты информации. М.: Советское радио, 1980.
Чернышев Г. М. Обеспечение ремонтопригодности в ЕС ЭВМ// Вопросы радиоэлектроники. Сер. ЭВТ. 1979. Вып. 5. С. 77—90-
Шлиомович Е. М. Логические анализаторы для проверки и наладки сложных цифровых устройств и систем//Вопросы радиоэлектроники. Сер. ЭВТ. 1980. Вып. 4. С. 27—42.
Шлимович Е. М. Анализатор логических состояний и временных диаграмм//Вопросы радиоэлектроники. Сер. ЭВТ. 1981. Вып. 2. С. 69—83.
Шубинский И. Б., Пивень Е. Н. Расчет надежности ЭВМ. Киев: Техшка, 1979.
Шрайбер Т. Дж. Моделирование на GPSS. М.: Машиностроение, 1980.
Электронная вычислительная машина ЕС-1045/А. Т. Кучукян, Т. Е. Саркисян, И. Б. Мкртумян и др. М.: Финансы и статистика, 1981.
Электронная вычислительная машина ЕС-1046/А. Т. Кучукян, Т. Е. Саркисян, Г. О. Патваканян и др. Радио и связь, 1987.
Aichelmann F. J. Fault-Tolerant Design Techniques for Semiconductor Memory Applications//IBM. J. Res. Develop. 1984. Vol. 28, № 2, P. 177—183.
Akers S. B. Test Generation Techniques//Computer. 1980. № 3. P. 9—15.
Avizienis A., Kelly J. Fault Tolerance by Design Diversity: Concepts and Experiments//Computer. 1984. № 8. P. 67—77.
Beunetts R. G„ Scott R. V. Recent developments in the theory and practice of testable logic design//Computer. 1976. № 6. P. 47—63.
Bossen D. C„ Chen C. L„ Hsiao H. У. Fault Alignment Exclusion for Memory Using Address Permutation//IBM J. Res. Develop. 1984. Vol. 28, № 2. P. 170—183. . .
Chen T. H„ Breuer M. A. Automatic Design for Testability via Testability Measures//IEEE Transactions on Computer-Aided Design. 1985. Vol. CAD-4. № 1. P. 3—11. .
Chen C. L., Hsiao M. У. Error- Correcting Codes for Semiconductor Memory Applications: A State-of-the Art Review//IBM J. Res. Develop. 1984. Vol. 28, № 2. P. 124—134.
Cheung R. C. A User-Oriented Software Reliable Model//1EEE Transactions on Software Engineering, March 1980. Vol. SE-6, № 2. P. 118—125.
Dick G, The Communication Channel, ft’s Broken Now What?// Detamation. 1977. Vol. 10. P. 113—126.
Eichelberger E. B. Hazard detection in combinational and sequential switching circuits//IBM J. Res. Develop. 1965. Vol. 9, № 3. P. 90—99
Dixon A. C„ Antonakos J. Digital Electronics with Microprocessor Applications. Wiley. 1987.
Falkoff A. D„ Iverson R. E., Sussenguth E. H. A Formal Description of System 360//IBM System Journal. 1964. Vol. 3, № 3.
Graham L. 1. Your IBM PC. A. Guide to the IBM Personal Computer. Berkely, California: Osborne/McGraw-Hill, 1983.
Hsiao M. У., Chia D. K. Boolean Difference for Fault Detection in Asinchronous Sequential Machines//1EE Transactions on Computers. 1971. C-20, № 11. P. 1356—1361.
Inagaki M. Test and Diagnosis Program Generation Using Mic- roinstruction//NEC Research and Development. July 1972. № 26. P. 35—52
lelinski Z„ Moranda P. B. Software Reliability Research. Statistical Computer Performance Evaluation. N. Y.: Academic Press, 1972.
Johnson B. Fault-Tolerant Microprocessor based systems//lEEE Micro. 1984. № 6. P. 6—21.
Littlewood B., Verrail I. L. A Bajeesian Reliability Growth Model for Computer Software, Record of the 1973//1EEE Symposium on Computer Software Reliability. 1973 P. 70—77.
McCluskey E. J. Built-in Self-Test Structures//1EEE Design and Test. 1985. № 2. P. 29—35.
Me Cluskey E. J. Built in Self-Test Techniques//1EEE Design and Test 1985. № 4.
Mulendorf I. E., Savkar A. D. LSI Logic Testing-Ап Overview// IEEE Transactions on Computers. 1981. Vol. C-30, № 1. P. 1—16.
Muzio J. C., Miller D. M. Spectral technique for fault detection// FTCS: 12th Annual International Symposium Fault-Tolerant Computing. P. 297—302.
Nelson E. Estimating software reliability from test data microelectronics and rehability//IEEE Transactions on Computers. 1978. Vol. 7. P. 67—74.
Parker K-. McCluskey E. Probablistic treatment of General Combinational Networks//IEEE Transactions on Computers, 1975. № 6. P. 668—670.
Putman В. W. Digital and Microprocessor Electronics: Theory, Applications, and Trouble shooting. Englewood Cliffs: Prentice-Hall, 1986.
Putzolu G. R., Roth J. P. A Heuristic Algorithm for the Testing of Asynchronous Circuit//IEEE Transactions on Computers. 1971. Vol. C-20, № 6. P. 639—647.
Sakauchi M., Hasuiki R„ Inose H. Synthesis and Realization of Diagnosable Processor with Necessary Hardware Redundance for Locating Faulty Packages/Annual Report of the Engineering. P.
Sarazin D„ Malek M, Fault-Tolerant Semiconductor Memories// Computer. 1984. № 8. P. 49—56.
Savir S. M. Syndrom-Testable Design of Combinational Circuits// IEEE Transactions on Computers. 1980. Vol. C-29. № 6. P. 442—451.
Savir L, Roth J. P. Testing for, and distinguishing between fai- lures//FTCS: 12th Annual International Symposium Fault—Tolerant Computing. P. 165—173.
Schneidewind N. F. An Approach to Software Reliability Prediction and Quality Control//Proc. of the 1972 Fall Joint Computer Conference. 1972. P. 837—847.
Shin R. G., Lee У. H. Error Detection Process-Model, Design, and Its Impact on Computer Performance//IEEE Transaction on Computers. 1984. Vol. C-33, № 6. P. 529—540.
Shooman M. L. Operating Testing and Software Reliability Estimation During Program Development//Record of the 1973//IEEE Symposium on Computer Software Reliability. 1973. P. 51—57.
Siewiorek D. P., Me Clusky E. J. An Iterative Cell Switch Design for Hybrid Redundance//IEEE Transactions on Computers. 1973. Vol. C-22, № 3. P. 290—297.
Siewiorek D. P. Architecture of Fault-Tolerant Computers//Com- puter. 1984. № 8. P. 14.
Swith J. E. Measures of the Effectiveness of Fault Signature Analysis//IEEE Transactions on Computers. 1978. Vol. C-27, № 6. P. 516—525,
Triveoli A. R., Schooman M. L. A many state Markov Model for the Estimation and Prediction//Proc. of the International Conference on Reliable Software. 1975. P. 208—215.
Williams T. W., Parker R. P. Testing Logic Networks and Designing for Testability//Computer. 1979. № 10. P. 9—22.
Hsiao M. У., Carter W. C„ Thomas J. W. Reliability, Availability, and Serviceability: A Quarter Century of Progress//IBM Journal Research and Development. 1981. № 3. P. 453—465.
Tooley M. Servising Personal Computers. N. Y.: Newnes, 1985.
АЛФАВИТНЫЙ УКАЗАТЕЛЬ
А
Автоматизация профилактических испытаний 337 с изменением напряжений источников питания 343
Автоматическое восстановление вычислительного процесса после отказов 124 сбоев 125 в периферийных устройствах 129 после сбоев в процессоре 147 Автотестер 199 Анализатор временных диаграмм 379 — логических состояний 378
Б
Безопасность данных 316 Безотказность 12
В
Внутрисхемный эмулятор 385 Восстановление баз данных 307 Восстанавливаемость программного обеспечения 69
Г
Гарантированное электропитание 357
Генерация операционной системы 407 — тестов 228
Д
Диагностирование каналов ввода- вывода 201 — ОЗУ 203 — периферийных устройств 319 с помощью встроенных средств 326 диагностических приказов 322 имитатора канала 324 процессора 321 — тестеров 323 — по методу раскрутки 165 Диагностическое тестовое обеспечение 208 Дистанционное обслуживание ЭВМ 215 Достоверность функционирования 13
Ж
Журнал изменений базы данных 308
— эксплуатации ЭВМ 401
3
Защита баз данных от ошибок 305 — информации от несанкционированного доступа 316
И
Идентификация пользователей 317
Избыточность алгоритмическая 85
— аппаратурная 85
— временная 85
— информационная 85
Измеритель тока 376
Имитатор канала 324
К
Код с проверкой четности 95
— Хэмминга 97
— циклический 110
Кодовое расстояние 94
Комплексное централизованное
обслуживание 390
Комплексный коэффициент использования 17
Контроль арифметических операций 113 — каналов 141 — комбинационных схем 118 — оперативной памяти 98
Криптографическое закрытие 318
Л
Логический анализатор 378
— импульсный генератор 375
— компаратор 374
— пробник 371
М
Мажоритарная система 153
Метод булевой производной 254
— О-алгоритма 246
— диагностирования 163
■последовательным сканированием неисправностей 172
по результатам регистрации состояний 183
по эталонным состояниям 177
с проверкой сменных блоков 180
с самопроверяемым дублированием 183
со схемами встроенного контроля 181
— чувствительных путей 265
Микродиагностика 175
Модель ЗИП 48
— имитационная 60
— надежности больших программных комплексов 79
программ с дискретно-пони- жающейся частотой проявления ошибок 74
с дискретным увеличением времени наработки на отказ 75 — экспоненциальная 77 — поюк восстановлений 41
отказов 36
сбоев 40
— профилактических испытаний 45
Монитор измерительный 361
Н
Надежность 12
— программного обеспечения 67
О
Обслуживаемость ЭВМ 10, 19 Объект восстанавливаемый 9 — невосстанавливаемый 9 Отказ 12 — внезапный 13 — постепенный 13
Отказоустойчивые системы 129
— полупроводниковое ОЗУ 137
П
Персональный компьютер 298
Пожарная безопасность ВЦ 397 Помещение для ЭВМ, оборудование 392
Порог повторения команды 127
Построение гистограмм 53
Проверка статистических гипотез 57
Проверкопрнгодность ЭВМ 16
Процессор сервисный 188
Процессы обслуживания ЭВМ 399
Р
Распределение биномиальное 31
— Вейбулла 33
— Гамма 32
— геометрическое 31
— дискретное пуассоновское 30
равномерное 31
— логарифмическн-нормальное 34
— нормальное 34
— экспоненциальное 32
— Эрланга К-го порядка 31
Резерв нагруженный 148
— иенагруженный 148
Резервирование без восстановления 148
— гибридное 148, 156
— динамическое 148
— с восстановлением 148
— статическое 148
— структурное 147
Реконфигурация 138
Ремонтопригодность ЭВМ 13
С
Сериализация 190
Сигнатурный анализ 292
— анализатор 295
Система автоматизации профилактических испытаний 23, 343 — автоматического контроля 22, 83
— восстановления вычислительного процесса 22, 124
— диагностирования ЭВМ 22, 195
персонального компьютера 300
характеристики 166
— контроля и диагностики электропитания 383
— проектирования тестов 209
— регистрации и обработки данных об отказах н сбоях 23, 346 Состояние неработоспособное 6 — работоспособное 6
Сохранность ЭВМ 19
Среднее время восстановления 13 достоверности информации
наработки на отказ 13
сбой 14
Схема контроля самопроверяемал 119
Т
Тест автономный 339
— «все нули/единицы» 203
— галопирующий 207
— долбление 205
— запись/считывание вперед и назад 205
крест 206
— пинг-понг 207
— чередующиеся столбцы 0 и 1 203
Тест-монитор 413
Тесгопригодное проектирование 273
Техника безопасности при работе с ЭВМ
У
Управление обновлением базы данных 306
Устойчивость функционирования программного обеспечения 69
Ф
Формы эксплуатационного обслуживания 386
Ш
Шлейф дискретного канала 330
— местный 330
— непрерывного канала 330
— удаленный 330
Э
Эксплуатационная техническая документация 403
Эксплуатационное обслуживание 6 Эксплуатация операционных систем 405
Эффективность систем контроля 122
ОГЛАВЛЕНИЕ
Предисловие ., 3
Глава 1. Основные понятия эксплуатационного обслуживания
ЭВМ .. . 6
Особенности ЭВМ как объекта эксплуатационного обслуживания 6
Основные эксплуатационные характеристики ЭВМ ..10
Системный подход при разработке концепции и аппаратурно-программных средств обслуживания ЭВМ. Технология: Надежность—Готовность—Обслуживаемость,19
Глава 2. Элементы теории эксплуатации ЭВМ .. ..24
Некоторые сведения из теории вероятностей, ,,24
Модели потоков отказов и сбоев36
Модели потоков восстановления41
Модель профилактических испытаний. Влияние периодичности профилактических испытаний на коэффициент го
товности ЭВМс частичным контролем45
Модели ЗИП48
Построение моделей надежности по экспериментальным данным53
Имитационные модели процессов эксплуатационного обслуживания ЭВМ60
Расчет значений показателей надежности ЭВМ , ,•66
Глава 3. Надежность программного обеспечения . . ,.67
Основные понятия 67
Причины отказов программного обеспечения...69
Последствия и признаки появленияошибок в программе72
Аналитические модели надежностипрограмм...73
Глава 4. Автоматический контроль правильности функционирования ЭВМ .S3
Функции и характеристики системы контроля . . .83
Классификация средств контроля86
Модель процесса обнаружения ошибок89
Контроль передачи информации93
Контроль функционирования полупроводниковых оперативных ЗУ98
Циклические кодыНО
Контроль арифметических операцийИЗ
Контроль комбинационных схем118
Самопроверяемые схемы контроля119
Прерывания от схем контроля121
Определение эффективности системы автоматического
контроля ЭВМ. Средства проверки схем контроля ..122
Глава 5. Автоматическое восстановление вычислительного процесса после машинных ошибок124
Функции системы восстановления вычислительного процесса 124
Восстановление вычислительного процесса после сбоев. Повторение операций125
Восстановление вычислительного процесса после отказов. Отказоустойчивые системы129
Автоматическая реконфигурация133
Методы обеспечения отказоустойчивости полупроводниковых ОЗУ137
Структурное резервирование147
Глава 6. Системы диагностирования ЭВМ. Сервисные процессоры 162
Методы построения и характеристики систем диагностирования 162
Метод командного ядра168
Метод диагностирования науровне логических схем .169
Метод микродиагностирования175
Метод эталонных состояний177
Метод диагностирования, орнентироваиный на проверку сменных блоков 180
Метод диагностирования с помощью схем встроенного контроля181
Метод диагностирования с помощью самопроверяемого дублирования 183
Метод диагностирования по регистрации состояния .183
Сервисные процессоры188
Функционирование системы автоматического диагностирования ЭВМ ЕС-1046 195
Особенности диагностирования каналов ввода-вывода .201
Диагностирование оперативных запоминающих устройств 203
Проектирование диагностического тестового обеспечения ЭВМ208
Глава 7. Дистанционное обслуживание ЭВМ ..,..215
Принципы дистанционного обслуживания...,215
Варианты подключения ЭВМ пользователя к сети СДО .219
Система дистанционного обслуживания ЭВМ ЕС-1046.222
Глава 8. Методы тестирования и генерации тестов. Тестопригодное проектирование аппаратуры 228
Уровни и методы тестированияЭВМ228
Исчерпывающее и компактное тестирование ....234
Вероятностное тестирование242
Детерминированные методы генерации тестов для логических схем, описанных на вентильном уровне ...244
Детерминированные методы генерации тестов для устройств, описанных на функциональном уровне. .262
Проектирование тестов архитектурных и системных свойств267
Понятие о тестопрнгодном проектировании аппаратуры ЭВМ273
Управляемость и наблюдаемость схем при тестировании 274
Правила тестопригодного проектирования ....277
Модификация комбинационных схем с целью сокращения длины теста281
Модификация схем для раздельного тестирования комбинационных схем и триггеров283
Модификация схем для самотестирования .,..289
Глава 9. Особенности эксплуатационного обслуживания микропроцессорного оборудования и персональных компьютеров 291
Предварительные замечания291
Сигнатурный анализ292
Особенности организации эксплуатационного обслуживания персональных компьютеров297
Диалоговая система диагностирования неисправностей в персональном компьютере300
Глава 10. Защита, сохранение и восстановление баз данных 304
Проблемы эксплуатации баз данных304
Защита баз данных от ошибок305
Восстановление баз данных при аварийных ситуациях 307
319319321322323324326327327328330334337337339343346346347350351353353355356361319319321322323324326327327328330334337337339343346346347350351353353355356361
319
319
321
322
323
324
326
327
327
328
330
334
337
337
339
343
346
346
347
350
351
353
353
355
356
361
319
319
321
322
323
324
326
327
327
328
330
334
337
337
339
343
346
346
347
350
351
353
353
355
356
361
Методы защиты информации от несанкционированного доступа
Глава 11. Диагностирование периферийных устройств . .
Способы диагностирования периферийных устройств ,
Диагностирование УПУ/ПУ с помощью процессора .
Принцип проверки УПУ/ПУ с помощью диагностических приказов
Диагностирование УПУ/ПУ с помощью тестеров ..
Диагностирование УПУ/ПУ с помощью имитаторов канала
Диагностирование УПУ/ПУ с помощью встроенных в УПУ средств
Глава 12. Диагностирование средств телеобработки данных
12.1. Аппаратурные средства телеобработки данных .■
Диагностирование мультиплексора передачи данных ,
Диагностирование канала передачи данных ,. .
Проверка канала тональной частоты
Глава 13. Принципы автоматизации профилактических испытаний
Типы профилактических испытаний
Программные средства профилактических испытаний .
Автоматизация профилактических испытаний с изменением напряжений вторичных источников питания ..
Глава 14. Автоматическое накопление информации об ошибках, ее обработка и использование .......
Цель накопления информации об ошибках < ■ <<
Программные средства обработки ошибок. ..,
Программные средства накопления, редактирования и печати информации об ошибках
Сбор, обработка, обобщение и накопление информации о надежности ЭВМ
Глава 15. Методы повышения эксплуатациоииой надежности системы электропитания ЭВМ
Основные проблемы эксплуатации систем электропитания ЭВМ
Защита ЭВМ от возмущений в системе электропитания
Защита ЭВМ от длительных перерывов электропитания
Глава 16, Измерительные мониторы
Основные определения и понятия361
Аппаратурные измерительные мониторы ..,.362
Микропрограммные измерительные мониторы,..365
Программные измерительные мониторы ....367
Глава 17. Контрольно-измерительная аппаратура для эксплуатационного обслуживания ЭВМ ........370
Типы контрольно-измерительных приборов ,,..370
Однокоитактный логический пробник371
Многокоитактный логический пробник373
Логический компаратор374
Логический импульсный генератор375
Измерители тока 376
Осциллографы ,...377
Логические анализаторы ...378
Стенды проверки для ТЭЗ383
Глава 18. Процессы эксплуатационного обслуживания ЭВМ386
Структура процессов обслуживания .... ,386
Комплексное централизованное обслуживание ЭВМ .389
Оборудование помещений для ЭВМ392
Техника безопасности при работе с ЭВМ ... .395
Обеспечение пожарной безопасности вычислительных центров397
Процессы планово-профилактического обслуживания,399
Ведение журнала эксплуатации ЭВМ401
Эксплуатационная документация403
Особенности эксплуатации операционных систем,, 405
Обслуживание носителей данных411
Процедуры автономного тестирования ЭВМ с помощью программы «Тест-монитор» (ЕС ЭВМ)....412
Процедуры неавтономного тестирования периферийных устройств под управлением ОС ЕС416
Список литературы418
Алфавитный указатель423
Каган Б. М., Мкртумян И. Б.
К 12 Основы эксплуатации ЭВМ: Учеб, пособие для вузов/Под ред. Б. М. Кагана. — 2-е изд., перераб. и доп. — М.: Энергоатомиздат, 1988. — 432 с.: ил.
ISBN 5-283-01484-3
В новом издании книги рассмотрены подходы к проектированию и эксплуатации средств вычислительной техники, обеспечивающие их высокую надежность, готовность и обслуживаемость. Основное внимание уделено аппаратурно-программным средствам, повышающим обслуживаемость вычислительных машин и устройств. Первое издание вышлов 1983 г.
Для студентов вузов и специалистов в области разработки и эксплуатации ЭВМ и АСУ.
К
2405000000-333
051(01)-88
267-88
ББК 32.97
Учебное издание
КАГАН БОРИС МОИСЕЕВИЧ
МКРТУМЯН ИГОРЬ БОРИСОВИЧ
Основы эксплуатации ЭВМ
Редактор В. Г. П е р ш е е в
Редактор издательства А. Н. Гусяцкая
Художественный редактор Т. А. Дворецкова,
Г. И. Панфилова
Технический редактор О. Д. Кузнецова
Корректор Л. С. Тимохова
ИБ № 2369
Сдано в набор 08.02.88. Подписано в печать 17,05.88. Т-10170 Формат 84Х108’/з2« Бумага типографская № 2. Гарнитура литературная. Печать высокая. Усл. печ, л. 22,68, Усл. кр.-отт. 22,68, Уч.-изд. л. 24,44, Тираж 60000 экз. Заказ 27, Цена 1 р, 10 к.
Энергоатомиздат, 113114, Москва, М-114, Шлюзовая наб., 10
Вледимирская типография Союзполиграфпрома при Госкомиздате СССР. 600000, г. Владимир, Октябрьский пр., д. 7
Б. М. Каган
И. Б. Мкртумян
ОСНОВЫ ЭКСПЛУАТАЦИИ ЭВМ
Под редакцией профессора Б. М. КАГАНА
2-е издание, переработанное и дополненное
Допущено Министерством высшего и среднего специального образования СССР в качестве учебного пособия для студентов вузов, обучающихся по специальности «Вычислительные машины, комплексы, системы и сети»
Scan Pirat
IS
МОСКВА • ЭНЕРГОАТОМИЗДАТ • 198В
ББК 32.97
К 12
УДК 681.31.004(075.8)
Рецензент Б, И. Зобов
ББК 32.97ББК 32.972405000000-333
ББК 32.97
ББК 32.97
К 051(01)-88
ISBN 5-283-01484-3
© Энергоатомиздат, 1983 © Энергоатомиздат, 1988