Что такое аппаратное ускорение?

Время от времени объявляются новые вычислительные технологии, в которых реализовано «аппаратное ускорение», но этот термин редко объясняется в этих объявлениях. К счастью, это относительно просто понять. Большая часть обработки на компьютере выполняется в программном обеспечении, работающем на ЦП общего назначения. Однако возможно создать отдельный процессор, специально предназначенный для выполнения небольшого круга задач или даже только одной задачи. Подобное использование отдельного процессора называется аппаратным ускорением.

Преимущества и недостатки аппаратного ускорения

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

Использование выделенных отдельных процессоров для аппаратного ускорения означает, что добавление новых функций или даже простое исправление ошибок может быть трудным, а в некоторых случаях невозможным без замены аппаратное обеспечение. Кроме того, разрабатывать новое оборудование значительно сложнее и дороже, чем разрабатывать программное обеспечение.

Типы аппаратного ускорения

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

Программируемая вентильная матрица или ПЛИС - это процессор, который может быть сконфигурирован заказчиком после изготовления. ПЛИС можно запрограммировать так, чтобы она соответствовала ряду различных логических функций, в зависимости от задачи, для которой она предназначена. Поскольку ПЛИС можно перепрограммировать, они популярны при разработке процессоров ASIC.

ASIC или специализированные интегральные схемы - это процессоры, оптимизированные специально для выполнения одной задачи. С ASIC никогда не предполагается, что процессор будет использоваться для чего-то другого, кроме того, для чего он был разработан. Благодаря такой глубине оптимизации ASIC очень эффективно выполняют свою задачу.