Ох уж эти микросервисы. Все на них уже давным‑давно перешли, либо в активном процессе перехода. Индустрия уже подошла к тому, что «микросервис» вот‑вот станет ругательным словом.
В свое время подобный путь проходила электроника, но со своими особенностями. В статье я попробую рассмотреть развитие электроники к идеальным размерам функционального блока.
На заре электроники
Трудно представить технические открытия, оказавшие большое влияние на человечество, чем открытие электричества и развитие электроники (разве что изобретение колеса).Электроника везде.
Информационные технологии, без сомнения, также являются важной областью знаний, но концептуально они лишь позволяют управлять электронными устройствами с помощью абстракций. Отдавая команды процессору программа управляет его работой, но работу делает процессор.
Все начиналось с экспериментами над электронными устройствами разной конфигурации. Принципиальной идеей было управлять электрическим током внешними воздействиями. Когда люди научились это делать в одном элементе, началась эпоха схемотехники. Эпоха повествующая о том, как соединить разные элементы, чтобы получить те или иные полезные свойства конечного оборудования.
Сосредоточенный элемент - элемент выполняющий одну технологическую функцию
Привычные нам названия из электроники - резистор, конденсатор, индуктивность, транзистор, диод и др. - являются сосредоточенным элементом. Они спроектированы так, чтобы наилучшим образом выполнять свою функцию в отрыве от контекста схемы. При этом они могут быть и достаточно сложно устроены внутри. Очевидным примером сложного элемента будут транзисторы, но можно вспомнить более экстравагантные примеры, например термокомпенсированный резистор, в котором подбираются различные материалы так, чтобы сопротивление этого компонента не менялось от температуры в заданном промежутке температур.
При этом разработчику конечной схемы важно знать только внешние проявления прибора и его интерфейсы.
Очевидным плюсом такого подхода является гибкость формирования конечной схемы. Мы можем подобрать именно те компоненты, которые лучшим образом лягут в вашу схему. Минусом будет то, что на наши плечи ляжет весь груз компоновки их на плате.
Интегральные схемы - наборы элементов, объединенных в полупроводниковом материале
Долгое время электроника развивалась, как электроника сосредоточенных элементов. Другими словами атомарных функциональных блоков. Логика поведения конечного изделия определялась набором элементов, их расположением и связями между ними.
Но с появлением микроэлектроники мир поменялся. Самым главным преимуществом эры микроэлектроники стали размеры. То что раньше могло не помещаться на столе, теперь влезло в спичечный коробок.
Увидев новую нишу инженеры начали активно ее осваивать. Первые интегральные схемы были совсем простые. Они могли составлять диодный мост или простую логическую цепочку. С развитием технологий микроэлектроники схемы становились все больше и больше. Инженеры старались охватить все большую функциональность одной схемой. Прогресс держался на простом балансе: с одной стороны микросхема должна была охватывать как можно больший функционал, чтобы упрощать жизнь проектировщикам конечной аппаратуры, с другой стороны быть достаточно универсальной, чтобы ее можно было применять в широком спектре изделий.
Есть и исключения из этого правила. Они образовывались там, где рынок был настолько большим, что готов был окупить разработку и запуск производства, сложных специализированных интегральных схем. Самым ярким примером, вероятно, является центральный процессор персонального компьютера. Это сложнейшая специализированная интегральная схема, включающая в себя огромное количество составных частей, при этом применяется только в одной сфере деятельности.
Но миниатюризация и облегчение проектирования конечных устройств были не единственным двигателем прогресса.
Паразитные элементы - воображаемые элементы, введение которых в схему позволяет объяснить негативные свойства, возникающие в цепи
Когда мы работаем со сосредоточенными элементами мы обязаны соединять их проводящими линиями. Главная проблема, что такая линия имеет и индуктивность, и емкость. и сопротивление (на самом деле как и любой элемент). Обычно номиналы этих элементов пренебрежимо малы. Но все мы помним, что существует такое понятие, как импеданс - полное сопротивление схемы на определенной частоте. Основная проблема в том, что когда мы хотим добиться высокого быстродействия в нашей схемы, любая неудачная проводящая дорожка на схеме может сравниться своим импедансом с нашими сосредоточенными элементами. Более того, начиная с определенной частоты наш резистор может начать вести себя не как сопротивление, а как емкость или индуктивность. И это мы еще забываем про наводки, сопротивление заземления и множества других негативных факторов.
И интегральные схемы достаточно неплохо справляются с многими из этих проблем, чем меньше наши элементы и чем ближе они друг к другу расположены, тем меньше номиналы их паразитных компонент. Поэтому обычно все что должно работать быстро, сделано в монолитном исполнении
Краевой случай - электроника высоких частот
Особняком в электронике стоят схемы работающие с высокими частотами. В них уже невозможно игнорировать паразитные элементы. Это отдельный мир со своими законами и техниками обхода ограничений. Чего только стоят усилительные схемы с транзисторами коэффициент усиления которых меньше единицы на рабочей частоте.
В электронике высоких частот паразитные элементы рассчитываются как часть схемы. Основной элемент в такой схеме - полосковая линия, то что одновременно рассматривается, как сопротивление, емкость и индуктивность и просто имеет нужные значения импеданса на нужных частотах.
Казалось бы из сказанного выше, электроника высоких частот - идеальная область для применения интегральных технологий. И да, и нет. Да, - потому что интегральные усилители, одно из немногих устройств, которое может работать на по-настоящему высоких частотах в сотни гигагерц и выше. Нет, - потому что такие изделия настроены на определенный диапазон и любая смена требований ведет к полному перестроению схемы, а значит обходится очень дорого.
Разные интегральные схемы требуют разных технологических процессов
Этот факт имеет как минимум два воплощения.
Первый - производство по современным техпроцессам обходятся дорого. Микросхема, которая не требовательна к быстродействию может быть создана по дешевому и хорошо отработанному техпроцессу.
Второй - наличие специфических техпроцессов для специфических схем. Хорошим примером могут являться ячейки памяти, требующие уникальных именно для них технологических операций. Конечно, чаще всего техпроцессы можно и объединить, но возникнет вопрос экономико-технической эффективности такого объединения.
Ко второму пункту также можно отнести разделение производства цифровых и аналоговых схем. Так как к ним предъявляются разные технические требования, чаще всего цифровые и аналоговые блоки “обитают” на разных интегральных схемах. Есть и исключения, например SDR приемо-передатчики. В них невозможно было бы получить нужные характеристики, если разделить СВЧ блок и ЦАП\АЦП преобразователи.
Микросборки - набор интегральных схем и сосредоточенных элементов, выполняющих определенную функциональность
Для обхода ограничений электроника пошла по самому очевидному пути. Давайте объединим в интегральном исполнении все, что:
Является критичным и интегральное исполнение является залогом успеха работы блока
Является типовым и широко переиспользуемым в различных видах схем
От узловой или блочной функциональной конструкции при этом никто не хотел отказываться. Так появились микросборки. Микросборка может все еще считаться готовым функциональным блоком, но связанность компонентов внутри нее гораздо меньше, чем в интегральной схеме. Нам гораздо проще модифицировать схему поменяв номиналы элементов или заменив интегральную схему. Но при этом мы получаем готовую функциональность с полным сокрытием ее реализации.
Функциональные печатные платы - последний шаг сокрытия сложности перед готовым изделием
Микросборка - отличное средство, но есть функциональные сборки, к которым язык не поворачивается подписать приставку “микро”. Например всем известные материнские платы в персональных компьютерах. Подобные платы я охарактеризовал как “функциональные печатные платы”. Уже из них чаще всего состоят сложно функциональные изделия, наподобие персональных компьютеров.
Такая концепция дает нам с одной стороны гибкость в формировании конечного устройства, с другой стороны при формировании конечного устройства не отвлекаться на детали.
Натянем сову на глобус (Выводы)
Главными двигателями выделения функциональных блоков в электронике являлось три фактора:
Переиспользование блока. При этом абсолютно неважно насколько сложным является выделяемый блок. Если он может быть широко использован как единое целое, то так тому и быть.
Скорость работы блока. Если потери в интерфейсах существенны и влияют на работоспособность блока в целом, это хороший повод объединить схему в монолитном исполнении.
Технологические особенности создания блоков. Если блок имеет специфическую технологию производства, зачем делать все остальное по ней? Или часть блока можно сделать с помощью гораздо более дешевого техпроцесса и соединение блоков не вызывает видимых негативных эффектов, то зачем напрягаться и переплачивать за то, что можно сделать дешевле?
Все вышесказанное можно описать фразой “технико-экономическая целесообразность”. Ошибки в электронике стоят гораздо дороже, чем в информационных технологиях, вы не можете просто выпустить патч, вам нужно переделывать весь процесс. С одной стороны это сделало область электроники гораздо более консервативной и закрытой чем информационные технологии. Из-за этого более молодая область ИТ уже обогнала электронику по концепциям деления блоков. С другой стороны сложность изменения дала колоссальный рост развитию управления качеством. Тут ИТ пытается догонять, но пока отстает.
Можно было бы начать делать аналогии электроники и ИТ, сопоставить электронные блоки и микросервисы. Но я этого делать не буду. Скажу лишь, что во всем нужно соблюдать принцип технико-экономической целесообразности и искать наилучшие инженерные компромиссы..
Всем добра!
Комментарии (4)
vic_1
02.01.2025 13:02И наверное правильнее называть этот принцип более общим словом - модульная архитектура
checkpoint
02.01.2025 13:02Самым ярким примером, вероятно, является центральный процессор персонального компьютера. Это сложнейшая специализированная интегральная схема, включающая в себя огромное количество составных частей, при этом применяется только в одной сфере деятельности.
Это шутка юмора ?
JBFW
Ну так-то это вообще универсальный принцип, от микросхем до операционных систем.
Не может быть Единственно Верного Решения на все времена и сценарии использования.