Мягкий микропроцессор - Википедия - Soft microprocessor
Этот отсутствует информация о трех OpenPOWER ядра, одно ядро Moxie, оба на уровне RTL. (Июль 2020) |
А мягкий микропроцессор (также называемый микропроцессором softcore или мягкий процессор) это микропроцессор ядро, которое может быть полностью реализовано с использованием логический синтез. Это может быть реализовано через разные полупроводник устройства, содержащие программируемую логику (например, ASIC, FPGA, CPLD ), включая как высококачественные, так и товарные варианты.[1]
Большинство систем, если они вообще используют программный процессор, используют только один программный процессор. Однако некоторые разработчики накладывают на ПЛИС столько программных ядер, сколько может поместиться.[2] В тех многоядерный В системах редко используемые ресурсы могут быть разделены между всеми ядрами кластера.
Хотя многие люди устанавливают на ПЛИС ровно один программный микропроцессор, достаточно большая ПЛИС может содержать два или более программных микропроцессора, что приводит к многоядерный процессор. Количество программных процессоров на одной FPGA ограничено только размером FPGA.[3] Некоторые люди поместили десятки или сотни программных микропроцессоров на одну FPGA.[4][5][6][7][8] Это один из способов реализовать массивный параллелизм в вычислительной технике и может также применяться к вычисления в памяти.
Программный микропроцессор и окружающие его периферийные устройства, реализованные в ПЛИС, менее уязвимы к устареванию, чем дискретный процессор.[9][10][11]
Сравнение ядра
Процессор | Разработчик | Открытый исходный код | Автобусная поддержка | Примечания | Проект дома | Язык описания |
---|---|---|---|---|---|---|
на основе РУКА архитектура набора команд | ||||||
Янтарь | Конор Сантифорт | LGPLv2.1 | Wishbone | ARMv2a 3-х или 5-ти ступенчатый трубопровод | Страница проекта на Opencores | Verilog |
Кортекс-М1 | РУКА | Нет | [6] | 70–200 МГц, 32-битный RISC | [7] | Verilog |
на основе AVR архитектура набора команд | ||||||
Навре | Себастьян Бурдодак | да | Прямая SRAM | Atmel AVR -совместимый 8-битный RISC | Страница проекта на Opencores | Verilog |
ПАВР | Дору Кутурела | да | Atmel AVR -совместимый 8-битный RISC | Страница проекта на Opencores | VHDL | |
на основе MicroBlaze архитектура набора команд | ||||||
AEMB | Шон Тан | да | Wishbone | Совместимость с MicroBlaze EDK 3.2 | AEMB | Verilog |
MicroBlaze | Xilinx | Нет | PLB, OPB, FSL, LMB, AXI4 | Xilinx MicroBlaze | ||
Открытый огонь | Лаборатория КМС Вирджинии | да | OPB, FSL | Двоичный, совместимый с MicroBlaze | [8][12] | Verilog |
SecretBlaze | LIRMM, Университет Монпелье / CNRS | да | Wishbone | MicroBlaze ISA, VHDL | SecretBlaze | VHDL |
на основе MCS-51 архитектура набора команд | ||||||
MCL51 | Лаборатории MicroCore | да | Ультракомпактное ядро 8051 на базе микросеквенсора | 312 таблиц таблиц Artix-7. Четырехъядерная версия 8051 - это 1227 LUT. | Ядро MCL51 | |
TSK51 / 52 | Altium | Бесплатно | Wishbone / Intel 8051 | 8 бит Intel 8051 совместим с набором команд, альтернатива с более низким тактовым циклом | Встроенный дизайн на Altium Wiki | |
на основе MIPS архитектура набора команд | ||||||
БЕРИ | Кембриджский университет | BSD | MIPS | Страница проекта | Bluespec | |
Досматик | Рене Досс | CC BY-NC 3.0, кроме коммерческие заявители должны платить лицензионный сбор. | Конвейерный автобус | Этапы конвейера набора инструкций MIPS I | Досматик | VHDL |
TSK3000A | Altium | Бесплатно | Wishbone | 32-битный R3000 -стиль RISC модифицированный процессор с гарвардской архитектурой | Встроенный дизайн на Altium Wiki | |
на основе PicoBlaze архитектура набора команд | ||||||
PacoBlaze | Пабло Блейер | да | Совместим с процессорами PicoBlaze | PacoBlaze | Verilog | |
PicoBlaze | Xilinx | Нет | Xilinx PicoBlaze | VHDL, Verilog | ||
на основе RISC-V архитектура набора команд | ||||||
f32c | Загребский университет | BSD | AXI, SDRAM, SRAM | 32-битные, RISC-V / MIPS подмножества ISA (с возможностью перенастройки), набор инструментов GCC | f32c | VHDL |
NEORV32 | Стефан Нолтинг | BSD | Поперечный рычаг b4, AXI4 | rv32 [i / e] [m] [a] [c] [Zicsr] [Zifencei], совместим с RISC-V, доступны ЦП и SoC, широкие возможности настройки, набор инструментов GCC | GitHub OpenCores | VHDL |
VexRiscv | Спинальный ЛВП | да | AXI4 / Авалон | 32-бит, RISC-V, до 340 МГц на Artix 7. До 1,44 DMIPS / МГц. | https://github.com/SpinalHDL/VexRiscv | VHDLVerilog (СпинальныйЛВП) |
на основе SPARC архитектура набора команд | ||||||
ЛЕОН2 (-FT) | ЕКА | да | AMBA2 | SPARC V8 | ЕКА | VHDL |
ЛЕОН3 / 4 | Аэрофлекс Гайслер | да | AMBA2 | SPARC V8 | Аэрофлекс Гайслер | VHDL |
OpenPiton | Princeton Parallel Group | да | Manycore SPARC V9 | OpenPiton | Verilog | |
OpenSPARC T1 | солнце | да | 64-битный | OpenSPARC.net | Verilog | |
Такус / PIPE5 | TemLib | да | Конвейерный автобус | SPARC V8 | ТЕМЛИБ | VHDL |
на основе x86 архитектура набора команд | ||||||
CPU86 | HT-Lab | да | 8088-совместимый процессор в VHDL | cpu86 | VHDL | |
MCL86 | Лаборатории MicroCore | да | Предоставляется 8088 BIU. Остальные создать легко. | Точный цикл 8088/8086 реализован с помощью микросеквенсора. Использование Кинтекс-7 менее 2%. | Ядро MCL86 | |
s80x86 | Джейми Айлз | GPLv3 | Обычай | 80186-совместимое ядро GPLv3 | s80x86 | SystemVerilog |
Зет | Зевс Гомес Мармолехо | да | Wishbone | x86 клон ПК | Зет | Verilog |
ao486 | Александр Осман | 3-пункт BSD | Авалон | i486 SX совместимое ядро | ao486 | Verilog |
Другие архитектуры | ||||||
ARC | ARC International, Synopsys | Нет | 16/32-битный ISA RISC | DesignWare ARC | Verilog | |
ERIC5 | Entner Electronics | Нет | 9-битный RISC, очень маленький размер, C-программирование | ERIC5 | VHDL | |
H2 CPU | Ричард Джеймс Хау | Массачусетский технологический институт | Обычай | 16-битная стековая машина, предназначенная для непосредственного выполнения Forth, небольшая | H2 CPU | VHDL |
Мгновенный SoC | Ядра ПЛИС | Нет | Обычай | 32-битное расширение RISC-V M, SoC определено C ++ | Мгновенный SoC | VHDL |
JOP | Мартин Шоберл | да | SimpCon / Wishbone (расширение) | Стек-ориентированная, жесткая поддержка в реальном времени, выполнение Байт-код Java напрямую | Джоп | VHDL |
Решетка | Решетка | да | Wishbone | Решетка | Verilog | |
Решетка | Решетка | да | Wishbone | Решетка | Verilog | |
LXP32 | Алексей Кузнецов | Массачусетский технологический институт | Wishbone | 32-битный, трехступенчатый конвейер, зарегистрировать файл на основе блочного ОЗУ | lxp32 | VHDL |
MCL65 | Лаборатории MicroCore | да | Ультракомпактное ядро 6502 на базе микросеквенсора | 252 ЛУТ Спартан-7. Такт точный. | Ядро MCL65 | |
MRISC32-A1 | Маркус Гилнард | да | Wishbone, B4 / конвейерный | 32-битный RISC / векторный процессор с настраиваемым ISA | MRISC32 | VHDL |
NEO430 | Стефан Нолтинг | да | Wishbone (Авалон, AXI4-Lite) | 16-битный MSP430 ISA-совместимый, очень маленький размер, множество периферийных устройств, широкие возможности настройки | NEO430 | VHDL |
Nios, Nios II | Альтера | Нет | Авалон | Альтера Ниос II | Verilog | |
OpenRISC | OpenCores | да | Wishbone | 32-битный; сделано на ASIC, Actel, Altera, Xilinx FPGA. | [9] | Verilog |
SpartanMC | TU Дармштадт / TU Дрезден | да | Обычай (AXI поддержка в разработке) | 18-битный ISA (поддержка GNU Binutils / GCC в разработке) | SpartanMC | Verilog |
SYNPIC12 | Мигель Анхель Ахо Пелайо | Массачусетский технологический институт | Совместимость с PIC12F, программа синтезирована в гейтах | nbee.es | VHDL | |
xr16 | Ян Грей | Нет | Абстрактный автобус XSOC | 16-битный RISC-процессор и SoC, представленные в журнале Circuit Cellar Magazine № 116-118 | XSOC / xr16 | Схема |
ЯСЕП | Ян Гвидон | AGPLv3 | Прямая SRAM | 16 или 32 бит, RTL в VHDL & как м в JS, подмножество микроконтроллеров: готово | yasep.org (Fire Fox требуется) | VHDL |
ZipCPU | Технология Gisselquist | GPLv3 | Поперечный рычаг, B4 / конвейерный | 32-разрядный процессор, ориентированный на минимальное использование ресурсов FPGA | zipcpu.com | Verilog |
ЗПУ | Зылин А.С. | да | Wishbone | ЦП на основе стека, настраиваемый 16/32 битный канал данных, eCos поддерживать | Зилин ЦП | VHDL |
RISC5 | Никлаус Вирт | да | Обычай | Запуск полной графической системы Oberon, включая редактор и компилятор. Программное обеспечение можно разрабатывать и запускать на одной плате FPGA. | www.projectoberon.com/ | Verilog |
Смотрите также
- Система на кристалле (SoC)
- Сеть на кристалле (NoC)
- Реконфигурируемые вычисления
- VHDL
- Verilog
- Аппаратное ускорение
Рекомендации
- ^ http://www.dailycircuitry.com/2011/10/zet-soft-core-running-windows-30.html В архиве 2018-10-13 на Wayback Machine «Программное обеспечение Zet под управлением Windows 3.0» Эндрю Фелч, 2011 г.
- ^ «Архивная копия». Архивировано из оригинал на 2007-10-08. Получено 2012-08-18.CS1 maint: заархивированная копия как заголовок (связь)«Архитектура ПЛИС от« А »до« Я »» Клайв Максфилд, 2006 г.
- ^ MicroBlaze Soft Processor: часто задаваемые вопросы В архиве 2011-10-27 на Wayback Machine
- ^ Иштван Вассани. "Реализация массивов процессоров на ПЛИС". 1998 г.[1]
- ^ Чжоукун ВАНГ и Омар ХАММАМИ. «Система из 24 процессоров на кристалле, проектирование ПЛИС с сетью на кристалле».[2]
- ^ Джон Кент. "Массив Micro16 - простой массив ЦП"[3]
- ^ Кит Итон. «Достигнуто 1000 ядер ЦП: ваш будущий настольный компьютер станет суперкомпьютером» .2011.[4]
- ^ «Ученые сжимают более 1000 ядер на одном чипе» .2011.[5] В архиве 2012-03-05 в Wayback Machine
- ^ Джо ДеЛаэр.«7 главных причин заменить микроконтроллер на ПЛИС MAX 10».
- ^ Джон Свон; Томек Кшизак.«Использование FPGA во избежание устаревания микропроцессоров».2008
- ^ Персонал (03.02.2010). «Требуется поддержка IP процессора FPGA». Еженедельник электроники. Получено 2019-04-03.
- ^ http://opencores.org/project,openfire_core,overview
внешняя ссылка
- Программные ядра процессора для ПЛИС
- Подробное сравнение 12 мягких микропроцессоров
- Новости ЦП FPGA
- Сайт Freedom CPU
- Ядра микропроцессора на Opencores.org (разверните вкладку «Процессор»)
- NikTech 32-битный RISC-микропроцессор MANIK.