Я изучаю FPGA недавно. Я пытался использовать sdram, кто-то рекомендует мне использовать его через nios ii. Но я вижу некоторые статьи, использующие ip core на nios ii (c/C++), он может замедляться, чем вы пишете через verilog? Зачем? Потому что аппаратное обеспечение (быстрое, параллельное) и программное обеспечение?В чем разница между мягким сердечником на NIOS и жестком сердечнике?
ответ
Что такое мягкий процессор? ПЛИС состоят, в частности, из реконфигурируемых логических блоков (LUT), памяти и мультипликаторов/DSP. Мягкий процессор - это процессор, состоящий из настраиваемой логики FPGA. Nios II - это аромат Altera/Intel мягкого процессора. Это отличается от упрочненного процессора, такого как сердечники ARM, включенные во многие 0Pи Xilinx SoP FPGA. В этих случаях сердечники ARM сделаны из фиксированных транзисторов вместо FPGA-ткани и не могут быть перенастроены для других целей.
Почему закаленные процессоры? Они, как правило, быстрее, чем мягкие процессоры, занимают меньше места и не потребляют ни одну из полезных маршрутов FPGA. Поскольку многие проекты используют какой-то процессор, упрочняющий (как это делают многие популярные интерфейсы ввода-вывода), он дает общий чистый выигрыш. (Если вам не нужен процессор, вы можете просто купить не-SoC-FPGA.
Что касается использования процессора и чистой логики/аппаратного обеспечения, есть и компромиссы. Написание программного обеспечения обычно проще, чем Verilog, и ваш CPU будет настроен для управления такими вещами, как время отклика и другие причуды памяти. Однако вы будете ограничены скоростью процессора (обычно Nios составляет 100-200 МГц, в зависимости от вашей FPGA), и дополнительная латентность, необходимая для взаимодействия с CPU и скорость выполнения команды CPU.
В том же духе, почему FPGA набирают популярность, чистая аппаратная схема имеет специализацию, которая позволяет им работать быстрее, чем более многоцелевой процессор (мягкий или закаленный). Компромисс, который вы получаете для повышения скорости, - это дополнительная работа, связанная с написанием хронометража скорость Verilog.
Мягкое ядро означает, что процессор не является частью FPGA, он фактически синтезируется и отображается во FPGA во время компиляции. Твердые сердечники - это элементы (IP и т. Д.), Которые физически расположены внутри FPGA. – FarhadA
Эти вопросы лучше подходят для [EE StackExchange] (http://electronics.stackexchange.com) – wilcroft