Эволюционируемое оборудование


Evolvable hardware (Evolvable hardware, EH) — это область, в которой основное внимание уделяется использованию эволюционных алгоритмов (EA) для создания специализированной электроники без ручного проектирования. Он объединяет реконфигурируемое оборудование , эволюционные вычисления , отказоустойчивость и автономные системы . Эволюционируемое оборудование относится к оборудованию, которое может динамически и автономно изменять свою архитектуру и поведение, взаимодействуя со своей средой.

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

Каждая схема-кандидат может быть либо смоделирована, либо физически реализована в реконфигурируемом устройстве. Типичными реконфигурируемыми устройствами являются программируемые пользователем вентильные матрицы (для цифровых схем) или программируемые пользователем аналоговые матрицы (для аналоговых схем). На более низком уровне абстракции находятся программируемые транзисторные матрицы , которые могут реализовывать как цифровые, так и аналоговые схемы.

Эта концепция была впервые предложена Адрианом Томпсоном из Университета Сассекса, Англия, который в 1996 году использовал FPGA для разработки тонального дискриминатора, в котором использовалось менее 40 программируемых логических элементов и не было тактового сигнала . Это удивительно маленькая конструкция для такого устройства, основанная на использовании особенностей аппаратного обеспечения, которых инженеры обычно избегают. Например, одна группа вентилей не имеет логической связи с остальной частью схемы, но имеет решающее значение для ее функции. [1]

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

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