Законы и «понятия»

Большую часть своей производственной жизни я был «цифровым схемотехником». Сейчас эта специализация ушла в прошлое, но в начале 70-ых — на заре компьютерной эры, это было ново, актуально и востребовано. Я оказался в «ЦНИИ Приборов Автоматики», где стал активно изучать способы построения устройств на основе появившихся тогда интегральных микросхем «Логика-2″. Через некоторое время хорошо освоил это занятие, располагающее к творчеству. Для него достаточно чувствовать логику и знать некоторые нюансы, возникающие при работе логических схем. Одним из таких нюансов была не очень очевидная тема, называемая в учебниках «Ситуация риска». Она связана с тем, что микросхемы воспроизводят заданную логику не мгновенно, но как и подобает «материальному объекту» — с опозданием. Задержки невелики, но они совершенно непредсказуемые, непостоянные и очень коварные — схема может работать правильно, но иногда (часто, редко, или даже никогда) возникает ошибка, которая не укладывается ни в какую логику. Поэтому надо очень аккуратно строить схемы и для исключения сбоев повсеместно применять так называемое «стробирование» сигналов. Я разобрался с эти вопросом, и выходящие «из под моего пера» схемы работали правильно.

Однажды мне пришлось работать с некой готовой схемой устройства, изготовленного на другом предприятии. Переворошив ее логику, я обнаружил, что в ней ничего не предусмотрено для исключения той самой «ситуации риска». Это был скандал! Готовое работающее устройство выполнено с ошибкой, в нем нарушен важный закон конструирования логических схем! Оно может работать, но в любой момент может вдруг повести себя как угодно. Моя «профессиональная сущность» возмущается — никогда нельзя такое допускать! А если подобное устройство будет управлять каким-то большим дорогим объектом? Космическим кораблем? Ракетой с атомной бомбой? Случайный сбой будет иметь катастрофические последствия! — При разработке логических схем надо всегда очень строго выполнять законы их конструирования и никакие «вольности» в этом деле недопустимы.

Такие мысли сопровождали анализ схемы чужого незнакомого устройства. Я решил непременно сообщить об этой неприятной находке, к чему следовало хорошо подготовиться. Схема непростая, и чтобы было наглядно, рисую ее временные диаграммы, по которым смогу показать — когда и где может случиться сбой. И вдруг понимаю — сбоя не будет. Оказалось, что по специфике работы этого устройства здесь не бывает таких ситуаций. В рабочем диапазоне сбой невозможен. Несмотря на грубое нарушение закона конструирования, все будет хорошо — никто никогда не заметит это нарушение, и никогда из-за него логика работы схемы не будет искажена.

Меня это озадачило. Без того самого «стробирования» схема получилась заметно проще, и это упрощение никак не отражается на ее работе. Я проецирую ситуацию на другие объекты и системы. Законы надо соблюдать — строго и беспрекословно, не спрашивая — «почему?». Тем более, если хорошо известно — почему. Отчего же при некоторых условиях их полезно нарушать? Значит ли это, что закон — не догма, что жить «по понятиям» тоже можно? Мои «социальные принципы» протестуют, но у меня перед глазами прямое подтверждение тезиса! Конечно, бывают исключения. Но любое исключение подрывает незыблемость Закона, и можно ли их все перечислить?

Я считал себя хорошим схемотехником, познав и прочувствовав тот самый закон конструирования. Но оказалось, что это не так, что на более высоком уровне понимания некоторые законы можно игнорировать. В своих последующих разработках я так и делал, и получалось хорошо.

Но надо заметить, что поставить себя «выше закона» — очень большая претензия. «Нарушитель закона» должен быть уверен в абсолютном понимании системы, в своей неоспоримой правоте, он не имеет права ошибаться. Ибо последствия будут непредсказуемые, а наказание неизбежное и справедливое. Если же все получится, то, как говорится, — «Победителей не судят». И в этом тоже есть свой смысл.

28.09.2011

Автор: Ханов Олег Алексеевич | слов 558


Добавить комментарий