소프트 마이크로프로세서
Soft microprocessor여기에는 3개의 OpenPOWER 코어, 1개의 Moxie 코어에 대한 정보가 모두 RTL 수준에서 누락되어 있습니다.(2020년 7월) |
소프트 마이크로프로세서(소프트코어 마이크로프로세서 또는 소프트프로세서라고도 함)는 논리합성을 사용하여 완전히 구현 가능한 마이크로프로세서 코어입니다.하이엔드 및 범용 [1]변형을 포함한 프로그래머블 로직(ASIC, FPGA, CPLD 등)을 포함한 다양한 반도체 장치를 통해 구현할 수 있습니다.
대부분의 시스템에서는 소프트 프로세서를 사용하는 경우 1개의 소프트 프로세서만 사용합니다.단, 소수의 설계자는 FPGA에 [2]맞는 수의 소프트 코어를 타일링합니다.이러한 멀티코어 시스템에서는 거의 사용되지 않는 리소스를 클러스터 내의 모든 코어 간에 공유할 수 있습니다.
많은 사람들이 FPGA에 1개의 소프트 마이크로프로세서를 탑재하고 있지만, 충분히 큰 FPGA는 2개 이상의 소프트 마이크로프로세서를 탑재할 수 있기 때문에 멀티코어 프로세서가 탄생합니다.1개의 FPGA 상의 소프트 프로세서의 수는 FPGA의 [3]크기에 의해서만 제한됩니다.어떤 사람들은 하나의 [4][5][6][7][8]FPGA에 수십 또는 수백 개의 소프트 마이크로프로세서를 장착했습니다.이는 컴퓨팅에 대규모 병렬화를 구현하는 방법 중 하나이며 메모리 내 컴퓨팅에도 적용할 수 있습니다.
FPGA에 실장된 소프트 마이크로프로세서 및 그 주변기기는 개별 프로세서보다 [9][10][11]진부화에 덜 취약합니다.
핵심 비교
프로세서 | 개발자 | 오픈 소스 | 버스 지원 | 메모들 | 프로젝트 홈 | 설명 언어 |
---|---|---|---|---|---|---|
ARM 명령어 세트아키텍처에 의거하여 | ||||||
오렌지 | 코너 산티포트 | LGPLv2.1 | 위시본 | ARMv2a 3단계 또는 5단계 파이프라인 | Opencores의 프로젝트 페이지 | 베릴로그 |
코텍스-M1 | 팔 | 아니요. | [6] | 70~200MHz, 32비트 RISC | [7] | 베릴로그 |
AVR 명령어세트 아키텍처에 근거해 | ||||||
나브레 | 세바스티앙 부르데오두크 | 네. | 다이렉트 SRAM | Atmel AVR 호환8비트 RISC | Opencores의 프로젝트 페이지 | 베릴로그 |
pAVR | 도루 큐툴라 | 네. | Atmel AVR 호환8비트 RISC | Opencores의 프로젝트 페이지 | VHDL | |
MicroBlaze 명령 세트 아키텍처에 기반하여 | ||||||
AEMB | 숀 탄 | 네. | 위시본 | MicroBlaze EDK 3.2 호환 | AEMB | 베릴로그 |
마이크로블레이즈 | 시린스 | 아니요. | PLB, OPB, FSL, LMB, AXI4 | 시린스 마이크로블레이즈 | ||
오픈파이어 | 버지니아 공대 CCM 랩 | 네. | OPB, FSL | MicroBlaze와 호환되는 바이너리 | [8][12] | 베릴로그 |
시크릿블레이즈 | LIRMM, 몽펠리에 대학교 / CNRS | 네. | 위시본 | MicroBlaze ISA, VHDL | 시크릿블레이즈 | VHDL |
MCS-51 명령어세트 아키텍처에 의거하여 | ||||||
MCL51 | 마이크로코어 랩 | 네. | 초소형 마이크로시퀀서 기반의 8051 코어 | 312 Artix-7 LUT. 쿼드코어 8051 버전은 1227 LUT입니다. | MCL51 코어 | |
TSK51/52 | 알티움 | 로열티 무료 | Wishbone / 인텔 8051 | 8비트 인텔 8051 명령어 세트 호환, 클럭 사이클 단축 대체 | Altium Wiki의 임베디드 디자인 | |
MIPS 명령어세트 아키텍처에 의거하여 | ||||||
베리 | 케임브리지 대학교 | BSD | MIPS | 프로젝트 페이지 | 블루스펙 | |
도스마틱 | 르네 도스 | CC BY-NC 3.0 단, 상용 신청자는 라이센스 수수료를 지불해야 한다. | 파이프라인 버스 | MIPS I 명령 파이프라인 단계 설정 | 도스마틱 | VHDL |
TSK3000A | 알티움 | 로열티 무료 | 위시본 | 32비트 R3000 스타일 RISC 변경 Harvard 아키텍처 CPU | Altium Wiki의 임베디드 디자인 | |
PicoBlaze 명령 세트 아키텍처에 기반하여 | ||||||
파코블레이즈 | 파블로 블리에르 | 네. | 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] [b] [u] [Zfinx] [Zicr] [Zifencei], RISC-V 준거, CPU 및 SoC 사용 가능, 커스터마이즈 용이성, GCC 툴 체인 | 깃헙 오픈코어 | VHDL |
벡스리스코프 | 척수 HDL | 네. | AXI4 / 아발론 | Artix 7에서는 32비트, RISC-V, 최대 340MHz.최대 1.44 DMIPS/MHz | https://github.com/SpinalHDL/VexRiscv | VHDLVerilog(척수 HDL) |
SPARC 명령어세트 아키텍처에 기반하여 | ||||||
LEON2(-FT) | ESA | 네. | AMBA2 | SPARC V8 | ESA | VHDL |
LEON 3/4 | 에어로플렉스 게슬러 | 네. | AMBA2 | SPARC V8 | 에어로플렉스 게슬러 | VHDL |
오픈피톤 | 프린스턴 병렬 그룹 | 네. | 멀티코어 SPARC V9 | 오픈피톤 | 베릴로그 | |
OpenSPARC T1 | 태양. | 네. | 64비트 | OpenSPARC.net | 베릴로그 | |
Tacus / PIPE5 | TemLib | 네. | 파이프라인 버스 | SPARC V8 | 템리브 | VHDL |
x86 명령 세트 아키텍처에 기반하여 | ||||||
CPU86 | HT랩 | 네. | VHDL의 8088 호환 CPU | CPU86 | VHDL | |
MCL86 | 마이크로코어 랩 | 네. | 8088 BIU 제공.기타 작성은 간단합니다. | 마이크로시퀀서를 사용하여 정확한 8088/8086을 구현합니다.킨텍스-7의 활용률은 2% 미만입니다. | MCL86 코어 | |
s80x86 | 제이미 일레스 | GPLv3 | 관습 | 80186 호환 GPLv3 코어 | s80x86 | 시스템 Verilog |
젯 | 제우스 고메스 마르몰레호 | 네. | 위시본 | x86 PC 클론 | 젯 | 베릴로그 |
ao486 | 알렉산더 오스만 | 3-Clause BSD | 아발론 | i486 SX 호환 코어 | ao486 | 베릴로그 |
Power PC/Power 명령어 세트 아키텍처에 근거하고 있습니다. | ||||||
PowerPC 405S | IBM | 아니요. | Core Connect | 32비트 PowerPC v.2.03 북E | IBM | 베릴로그 |
PowerPC 440S | IBM | 아니요. | Core Connect | 32비트 PowerPC v.2.03 북E | IBM | 베릴로그 |
PowerPC 470S | IBM | 아니요. | Core Connect | 32비트 PowerPC v.2.05 북E | IBM | 베릴로그 |
전자레인지 | IBM/Open POWER | CC-BY 4.0 | 위시본 | 64비트 전원ISA 3.0 개념 실증 | 전자레인지 @ Github | VHDL |
치셀와트 | IBM/Open POWER | CC-BY 4.0 | 위시본 | 64비트 전원ISA 3.0 | Chiselwatt @ Github | 끌 |
Libre-SOC | Libre-SoC.org | BSD/LGPLv2+ | 위시본 | 64비트 전원ISA 3.0. CPU/GPU/VPU 구현 및 커스텀 벡터 명령 | Libre-SoC.org | python/nMigen |
A2I | IBM/Open POWER | CC-BY 4.0 | 커스텀 PBus | 64비트 PowerPC 2.6 북E순서 코어 | A2I @ Github | VHDL |
A2O | IBM/Open POWER | CC-BY 4.0 | 커스텀 PBus | 64비트 PowerPC 2.7 북E고장 코어 | A2O @ Github | 베릴로그 |
기타 아키텍처 | ||||||
아아크 | ARC International, Synopsys | 아니요. | 16/32/64비트 ISA RISC | DesignWare ARC | 베릴로그 | |
ERIC5 | 엔트너 일렉트로닉스 | 아니요. | 9비트 RISC, 초소형, C프로그래밍 가능 | ERIC5 | VHDL | |
H2 CPU | 리처드 제임스 하우 | MIT | 관습 | 16비트 스택 머신, 4번째 직접 실행 가능, 소형 | H2 CPU | VHDL |
인스턴트 SoC | FPGA 코어 | 아니요. | 관습 | 32비트 RISC-V M 확장, SoC는 C++로 정의 | 인스턴트 SoC | VHDL |
JOP | 마르틴 쇼벨 | 네. | SimpCon / Wishbone (내선번호) | Java 바이트 코드를 직접 실행하는 스택 지향 하드 실시간 지원 | 잽 | VHDL |
래티스미코8 | 격자 | 네. | 위시본 | 래티스미코8 | 베릴로그 | |
래티스미코32 | 격자 | 네. | 위시본 | 래티스미코32 | 베릴로그 | |
LXP32 | 알렉스 쿠즈네초프 | MIT | 위시본 | 32비트, 3단계 파이프라인, 블록 RAM 기반 파일 등록 | lxp32 | VHDL |
MCL65 | 마이크로코어 랩 | 네. | 초소형 마이크로시퀀서 기반의 6502 코어 | Sparantan-7 LUT 252대클럭 사이클이 정확합니다. | MCL65 코어 | |
MRISC32-A1 | 마르쿠스 질나드 | 네. | 위시본, B4/파이프라인 | MRISC32 ISA를 구현하는 32비트 RISC/Vector CPU | MRISC32 | VHDL |
NEO430 | 스테판 놀팅 | 네. | 위시본(Avalon, AXI4-Lite) | 16비트 MSP430 ISA 호환, 초소형, 다수의 주변기기, 고도의 커스터마이즈성 | NEO430 | VHDL |
니오스, 니오스 II | 알테라 | 아니요. | 아발론 | 알테라 니오스 2세 | 베릴로그 | |
OpenRISC | 오픈코어 | 네. | 위시본 | 32비트, ASIC, Actel, Altera, Xilinx FPGA에서 실행. | [9] | 베릴로그 |
스파르탄 | TU 다름슈타트 / TU 드레스덴 | 네. | 커스텀(AXI 개발 지원) | 18비트 ISA(GNU Binutils/GCC 개발 지원) | 스파르탄 | 베릴로그 |
Synpic | 미겔 엔젤 아호 펠라요 | MIT | PIC12F 호환, 게이트에 통합된 프로그램 | nbee.es | VHDL | |
xr16 | 얀 그레이 | 아니요. | XSOC 추상 버스 | 16비트 RISC CPU 및 SoC는 Circuit Seller Magazine #116-118에 기재되어 있습니다. | XSOC/xr16 | 개략도 |
야셉 | 얀 귀돈 | AGPLv3 | 다이렉트 SRAM | 16비트 또는 32비트, VHDL에서는 RTL, JS에서는 asm, 마이크로컨트롤러 서브셋: 준비 완료 | yasep.org (Firefox 필요) | VHDL |
ZipCPU | 지셀퀴스트 테크놀로지 | GPLv3 | 위시본, B4/파이프라인 | FPGA 자원 사용을 최소화하는 것을 목표로 한 32비트 CPU | zipcpu.com | 베릴로그 |
ZPU | 자일린 AS | 네. | 위시본 | 스택 기반 CPU, 구성 가능한 16/32비트 데이터 패스, eCos 지원 | Zylin CPU | VHDL |
RISC5 | 니클라우스 워스 | 네. | 관습 | 에디터 및 컴파일러를 포함한 완전한 그래픽 Oberon 시스템 실행.소프트웨어는 같은 FPGA 보드에서 개발 및 실행할 수 있습니다. | www.projectoberon.com/ | 베릴로그 |
「 」를 참조해 주세요.
- 시스템온어칩(SoC)
- Network-on-a-chip(NoC; 네트워크 온-칩)
- 재구성 가능한 컴퓨팅
- VHDL
- 베릴로그
- 하드웨어 액셀러레이션
레퍼런스
- ^ http://www.dailycircuitry.com/2011/10/zet-soft-core-running-windows-30.html Andrew Felch 2011의 Wayback Machine "Windows 3.0을 실행하는 Zet 소프트 코어"에서 2018-10-13년 아카이브 완료
- ^ "Archived copy". Archived from the original on 2007-10-08. Retrieved 2012-08-18.
{{cite web}}
: CS1 maint: Clive Maxfield 2006의 타이틀(링크) "FPGA 아키텍처 from 'A' to 'Z'" (FPGA 아키텍처)로 아카이브 완료 - ^ MicroBlaze 소프트 프로세서: 2011-10-27 Wayback Machine에 보관된 FAQ
- ^ 이스반 바사니「FPGA에서의 프로세서 어레이의 실장」(1998).[1]
- ^ Zhoukun Wang과 Omar HAMAMI. "Network on Chip을 탑재한 칩 FPGA 설계상의 24 프로세서 시스템"[2]
- ^ 존 켄트."Micro16 어레이 - 심플한 CPU 어레이" [3]
- ^ 키트 이튼"1,000 코어 CPU 달성:「미래의 데스크탑은 슈퍼 컴퓨터가 될 것입니다」.2011년.[4]
- ^ 「1개의 칩에 1,000개 이상의 코어를 짜넣는 과학자」. 2011년.[5] 2012-03-05년 Wayback Machine에서 아카이브 완료
- ^ 조 델레어."마이크로 컨트롤러를 MAX 10 FPGA로 교체하는 7가지 이유"
- ^ 존 스완, 토멕 크르지작"FPGA를 사용하여 마이크로프로세서의 진부화를 방지합니다."2008
- ^ Staff (2010-02-03). "FPGA processor IP needs to be supported". Electronics Weekly. Retrieved 2019-04-03.
- ^ "Overview :: OpenFire Processor Core :: OpenCores".
외부 링크
- FPGA용 소프트 CPU 코어
- 12개의 소프트 마이크로프로세서 상세 비교
- FPGA CPU 뉴스
- Freedom CPU 웹사이트
- Opencores.org의 마이크로프로세서 코어 ([프로세서]탭을 펼칩니다)
- NikTech 32비트 RISC 마이크로프로세서 MANIK.