3

FPGA, VHDL "взрывают мозг" обычным программистам

Сейчас за пару сек, объясню так, что он перестанет взрываться и наступит просветление.

1) если команды FPGA не привязаны к тактам, можете FPGA воспринимать как обычную (но большую, с множеством ножек) советскую микросхему на логике И ИЛИ НЕ. На вход ножек идут сигналы, на выход тут же их соответствие написано логики.

2) если команды привязаны (скажем, синхронизированы) с тактированием (а тактирование как понимаем это последовательность во времени) то FPGA можем воспринимать как обычный микроконтроллер (хоть и программируемый VHDL ).

Если нужно просчитать сложное вычисление (и хватает ножек FPGA) то все числа можно подать на вход, и тут же получить результат на выходе (любую мат.задачу можно решить с помощью И/ИЛИ/НЕ/!НЕ). То есть за минимальный промежуток времени можно решить что угодно просто "скрутив" виртуальные проводки по заданной логике между входом и выходом. Скорость решения задачи : задержка прохождения сигнала внутри микросхемы (наносек). То есть, FPGA может проглотить все данных сразу.

А если ножек не много (или много но они заняты чем то другим) то в этом узком горлышке приходится порциями брать данные и обрабатывать последовательно(с тактированием), что и делают процессоры/микроконтроллеры.

Я б даже назвал микроконтроллер, как частный случай, урезанный FPGA.

Обычно, когда я так коротко объясняю то приходит понимание, может и тут кому то поможет.