Мягкие процессоры VS Жесткие процессоры

19

Я занимаюсь изучением взаимодействия ПЛИС с микропроцессором, таким как ARM9.

В моем исследовании я сталкивался с концепцией процессоров Soft core и Hard core. Могу ли я узнать, каково сравнение между этими двумя типами; Сходство или различия в реализации?

Как Син Цюань
источник

Ответы:

19

Мягкое ядро ​​реализовано в матрице ПЛИС, в то время как аппаратное ядро ​​реализовано так же, как любая интегральная схема, но все еще подключено к матрице ПЛИС. Сравнение обычно сводится к:

Жесткие процессоры - от 100 МГц до 1 ГГц + скорость

  • Может достигать гораздо более высоких скоростей обработки, так как они оптимизированы и не ограничены скоростью материала
  • Исправлено и не может быть изменено (хотя оно может использовать преимущества пользовательской логики в матрице ПЛИС для обработки

Процессоры Soft Core - 250 МГц и менее (обычно менее 200 МГц)

  • Может быть легко изменено и настроено под конкретные требования, дополнительные функции, пользовательские инструкции и т. Д.
  • Можно использовать несколько ядер (за счет ресурсов)
  • Ограничено скоростью ткани.

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

Густаво Литовский
источник
11

Процессор с мягким ядром - это процессор, реализованный с использованием матрицы FPGA.

Жесткий процессор - это процессор, который физически реализован в виде структуры в кремнии.

По сути, вы можете добавить программный процессор к системе на основе FPGA после того, как он уже спроектирован. Однако для добавления процессора с жестким ядром требуется либо другая FPGA, либо дополнительная микросхема на плате.


Процессоры с жестким ядром предпочтительнее, когда это возможно, потому что соотношение цена / вычислительная мощность для аппаратного процессора намного лучше. Реализация ЦП в матрице ПЛИС очень ресурсоемка, особенно если вы хотите много вычислительной мощности. Эквивалентный аппаратный процессор, вероятно, намного дешевле.


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

Коннор Вольф
источник
«Hard» и «мягкие» может также относиться к описанию оборудования , используемого , а не только реализуется ли ядро в ткани (см ARM в «Hard Macro Processors» ) Этот Western Design Center, Inc., страница представляет собой пример этого используйте: "ASIC (оптимизированное вручную ядро ​​GDSII Hard Core и Verilog RTL Soft Core) и FPGA (Verilog RTL Soft Core)". Контекст FPGA мог бы исключить это использование терминов (хотя двоичные BLOB-значения / LUT-initialization-values ​​против RTL кажутся аналогичными).
Пол А. Клейтон,
Итак, в основном, софт-ядро = FPGA, хард-ядро = ASIC?
Нальзок
@nalzok - Да. Я мог видеть аргумент для того, чтобы называть эмуляцию одного процессора на другом процессоре «мягким» ядром, но люди просто называют эту эмуляцию в моем опыте.
Коннор Вольф