재구성 가능한 컴퓨팅

Reconfigurable computing

재구성 가능한 컴퓨팅은 Field-Programmable Gate Array(FPGA; 필드 프로그래머블 게이트 어레이)와 같은 매우 유연한 고속 컴퓨팅 패브릭을 처리함으로써 소프트웨어의 유연성과 하드웨어의 고성능을 결합한 컴퓨터 아키텍처입니다.일반 마이크로프로세서를 사용할 때와 비교할 때 주된 차이점은 제어 흐름 외에 데이터 경로 자체를 크게 변경할 수 있다는 것입니다.한편, 커스텀 하드웨어, 즉 애플리케이션 고유의 집적회로(ASIC)와의 주된 차이점은 재구성 가능한 패브릭에 새로운 회로를 "로드"함으로써 런타임 중에 하드웨어를 적응시킬 수 있다는 것입니다.

역사

재구성 컴퓨팅의 개념은 Gerald Estrin의 논문이 표준 프로세서와 "재구성 가능한"[1][2] 하드웨어 배열로 만들어진 컴퓨터의 개념을 제안한 1960년대부터 존재해 왔습니다.메인 프로세서는 재구성 가능한 하드웨어의 동작을 제어합니다.후자는 이미지 처리패턴 매칭 의 특정 작업을 전용 하드웨어처럼 신속하게 수행하도록 맞춤화됩니다.작업이 완료되면 하드웨어를 조정하여 다른 작업을 수행할 수 있습니다.그 결과 소프트웨어의 유연성과 하드웨어의 속도를 결합한 하이브리드 컴퓨터 구조가 탄생했습니다.

1980년대와 1990년대에 산업 및 [3]학계에서 개발된 많은 재구성 가능한 아키텍처(예: Copacobana, Matrix, GARP,[4] Elixent,[5] NGEN,[6] Polyp, MerGen,[7] PACT XPP, Silicon Hive, Montium, Morphosco)와 같은 제안되고 있는 재구성 가능한 아키텍처와 함께 이 연구 영역에 르네상스가 있었습니다.하나의 칩에 복잡한 설계를 구현할 수 있는 실리콘 기술이 지속적으로 발전하면서 가능해졌다.이러한 대규모 병렬 재구성 가능한 컴퓨터 중 일부는 주로 분자 진화, 신경 또는 영상 처리와 같은 특수 하위 영역을 위해 만들어졌습니다.세계 최초의 상업용 재구성 가능 컴퓨터인 Algotronix CHS2X4는 1991년에 완성되었습니다.상업적인 성공은 아니었지만, Xilinx(필드 프로그래머블 게이트 어레이, FPGA의 발명자)가 기술을 구입하여 Algotronix [9]직원을 고용할 정도로 유망했다.이후 기계는 MereGen을 [10]사용한 유전자 코드의 자발적인 공간적 자기 조직화와 같은 과학적 원리를 최초로 시연할 수 있게 했다.

이론들

트레데닉 분류

표 1: Nick Tredenick의 패러다임 분류 체계
과거의 컴퓨터:
프로그래밍 소스
자원 고정 없음.
알고리즘 고정 없음.
von Neumann 컴퓨터:
프로그래밍 소스
자원 고정 없음.
알고리즘 변수 소프트웨어(명령 스트림)
재구성 가능한 컴퓨팅 시스템:
프로그래밍 소스
자원 변수 컨피규레이션웨어(설정)
알고리즘 변수 플로우웨어(데이터 스트림)

재구성 가능한 컴퓨팅 머신 패러다임의 기본 모델인 데이터 스트림 기반의 안티 머신은 Nick Tredenick의 컴퓨팅 패러다임의 후속 분류 체계에서 알 수 있듯이 앞서 소개된 다른 머신 패러다임과의 차이에서 잘 나타납니다(표 1: Nick Tredenick의 패러다임 분류 체계 참조).e").[11]

하텐슈타인의 엑스푸터

컴퓨터 과학자인 라이너 하텐슈타인은 재구성 가능한 컴퓨팅을 반 기계라는 관점에서 설명했습니다.그는 이것이 기존의 폰 노이만 [12]기계에서 벗어난 근본적인 패러다임의 변화를 나타낸다고 말했습니다.Hartenstein은 이를 Reconfigurable Computing Paradox라고 부릅니다.소프트웨어에서 구성웨어로(소프트웨어에서 FPGA로) 이행하면 최대 4단계 이상의 속도 향상 계수가 보고되고 전력 소비량이 최대 4단계까지 감소하지만 FPGA의 기술적 파라미터는 Go의 배후에 있습니다.rdon Moore는 약 4배 정도 커브를 그리며 클럭 주파수는 마이크로프로세서보다 상당히 낮습니다.이 역설은 부분적으로 폰 노이만 증후군에 의해 설명된다.

하이 퍼포먼스

HPRC(High Performance Reconfigurable Computing)는 필드 프로그래머블 게이트 어레이와 같은 재구성 가능한 컴퓨팅 기반의 액셀러레이터와 CPU 또는 멀티코어 프로세서를 결합한 컴퓨터 아키텍처입니다.

FPGA 로직의 증가로 보다 크고 복잡한 알고리즘을 FPGA에 프로그래밍할 수 있게 되었습니다.이러한 FPGA를 PCI Express와 같은 고속 버스를 통해 최신 CPU에 연결함으로써 구성 가능한 로직이 주변기기가 아닌 코프로세서와 같은 기능을 할 수 있게 되었습니다.이것에 의해, 재구성 가능한 컴퓨팅이 하이 퍼포먼스 컴퓨팅의 영역에 도입되고 있습니다.

게다가 FPGA에 알고리즘을 복제하거나 복수의 FPGA를 사용함으로써 복수의 계산 디바이스가 동시에 다른 데이터, 즉 고도의 병렬 컴퓨팅으로 동작할 수 있는 재구성 가능한 SIMD 시스템을 제작할 수 있게 되었다.

이 이기종 시스템 기술은 컴퓨팅 연구, 특히 슈퍼컴퓨팅[13]사용됩니다.2008년 한 논문에서 4등급 이상의 속도 향상 계수와 최대 [14]4등급의 에너지 절약 계수가 보고되었습니다.일부 슈퍼컴퓨터 회사들은 FPGA를 포함한 이종 처리 블록을 [citation needed]가속기로 제공한다.하나의 연구 영역은 이러한 이종 시스템에 대해 [15]얻어진 트윈패러다임 프로그래밍 툴 플로우 생산성입니다.

미국 국립과학재단에는 고성능 재구성 컴퓨팅(CHREC)[16] 센터가 있습니다.2011년 4월에는 유럽에서 [17]제4회 다코어 재구성형 슈퍼컴퓨팅 컨퍼런스가 개최되었습니다.

IBM이 IBM Power 마이크로프로세서[18]FPGA를 통합한다는 발표와 함께 상용 고성능 재구성 컴퓨팅 시스템이 등장하기 시작했습니다.

부분 재구성

부분적인 재구성은 재구성 가능한 하드웨어 회로의 일부를 변경하고 다른 부분은 이전 구성을 유지하는 프로세스입니다.필드 프로그램 가능한 게이트 어레이는 종종 부분 재구성의 지원으로 사용됩니다.

소프트웨어마찬가지로 전자 하드웨어는 서브 컴포넌트를 만들고 이를 인스턴스화하는 상위 컴포넌트를 생성하여 모듈식으로 설계할 수 있습니다.대부분의 경우 FPGA가 동작하고 있는 동안 이들 서브컴포넌트를 1개 또는 여러 개 교환할 수 있으면 편리합니다.

일반적으로 FPGA를 재설정하려면 외부 컨트롤러가 설계를 새로고침할 때 FPGA를 리셋 상태로 유지해야 합니다.부분 재구성을 통해 FPGA 또는 FPGA에서 컨트롤러가 부분 설계를 재구성 가능한 모듈에 로드하는 동안 설계의 중요한 부분이 계속 작동할 수 있습니다.또한 부분 재구성은 설계 간에 변경되는 부분 설계만 저장하여 여러 설계를 위한 공간을 절약하는 데 사용할 수 있습니다.

부분 재구성이 도움이 되는 일반적인 예는 통신 디바이스의 경우입니다.디바이스가 복수의 접속을 제어하고 있는 경우, 그 중 일부는 암호화를 필요로 하는 경우, 컨트롤러 전체를 정지시키지 않고 다른 암호화 코어를 로드할 수 있으면 편리합니다.

일부 FPGA에서는 부분 재구성이 지원되지 않습니다.모듈러 설계에 중점을 둔 특별한 소프트웨어 플로우가 필요합니다.일반적으로 설계 모듈은 FPGA 내에서 명확하게 정의된 경계에 따라 구축되며, 이 경계는 설계를 내부 하드웨어에 특별히 매핑해야 합니다.

설계의 기능에 따라 부분 재구성은 다음 두 [19]그룹으로 나눌 수 있습니다.

  • 액티브 부분 재구성이라고도 불리는 다이내믹 부분 재구성 - 나머지 FPGA가 실행 중일 때 디바이스의 일부를 변경할 수 있습니다.
  • 스태틱 부분 재구성: 재설정 프로세스 중에는 디바이스가 활성화되지 않습니다.부분 데이터가 FPGA로 전송되는 동안 나머지 디바이스는 정지(셧다운모드)되어 설정이 완료된 후에 기동합니다.

현행 시스템

컴퓨터 에뮬레이션

FPGA 보드를 사용하여 Vector-06C 컴퓨터를 다시 만들고 있습니다.

저렴한 가격의 FPGA 보드가 등장함에 따라 학생 및 취미 생활자의 프로젝트는 빈티지 컴퓨터를 재현하거나 보다 새로운 아키텍처를 [20][21][22]구현하고자 합니다.이러한 프로젝트는 재구성 가능한 하드웨어(FPGA)를 사용하여 구축되며, 일부 디바이스는 단일 재구성 가능한 하드웨어(C-One)를 사용하여 여러 빈티지 컴퓨터의 에뮬레이션을 지원합니다.

코카코바나

완전한 FPGA 기반 컴퓨터는 COPACOBANA, 비용 최적화 코드브레이커 및 분석기 및 후속 RIVYERA입니다.독일 보쿰 및 키엘 대학의 COPACOBANA-Project의 분사 회사인 SciEngines GmbH는 완전한 FPGA 기반 컴퓨터 개발을 계속하고 있습니다.

승모술

Mitrionics는 단일 할당 언어를 사용하여 작성된 소프트웨어를 FPGA 기반 컴퓨터에서 컴파일 및 실행할 수 있는 SDK를 개발했습니다.소프트웨어 개발자는 Mitrion-C 소프트웨어 언어와 Mitrion 프로세서를 사용하여 그래픽 처리 장치(GPU), 셀 기반 프로세서, 병렬 처리 장치(PPU), 기존 싱글 코어 CPU 등 다른 컴퓨팅 테크놀로지와 동일한 방법으로 FPGA 기반 컴퓨터에서 애플리케이션을 쓰고 실행할 수 있습니다.클러스터.(폐업)

내셔널 인스트루먼트

National Instruments는 CompactRIO라고 불리는 하이브리드 임베디드 컴퓨팅 시스템을 개발했다.사용자 프로그래밍 가능한 FPGA, 핫 스왑 가능한 I/O 모듈, 결정론적 통신 및 처리를 위한 실시간 컨트롤러, 신속한 RT 및 FPGA 프로그래밍을 위한 그래픽 LabVIEW 소프트웨어로 구성됩니다.

시린스

Xilinx는 모듈 기반차이 기반이라는 두 가지 스타일의 FPGA 디바이스 부분 재구성을 개발했습니다.모듈 기반 부분 재구성을 사용하면 설계의 개별 모듈 부분을 재구성할 수 있지만 설계에 약간의 변경이 가해진 경우에는 차이 기반 부분 재구성을 사용할 수 있습니다.

인텔(R)

인텔[23] Stratix [24]V 등의 28nm 디바이스 및 20nm Arria 10 [25]디바이스에서 FPGA 디바이스의 부분 재구성을 지원합니다.Aria 10 용 인텔 FPGA 부분 재구성 플로우는 Quartus Prime Pro 소프트웨어의 계층 설계 방법론에 근거하고 있습니다.이 방법론에서는 사용자가 FPGA의 물리 파티션을 런타임에 재구성할[26] 수 있으며 설계의 나머지 부분은 계속 작동합니다.Quartus Prime Pro 소프트웨어는 계층적 부분 재구성 및 부분 재구성 시뮬레이션을 지원합니다.

시스템 분류

새롭게 부상하는 분야로서 재구성 가능한 아키텍처의 분류는 새로운 아키텍처가 개발됨에 따라 개발 및 개량되고 있다. 지금까지 통일된 분류법은 제안되지 않았다.그러나 이러한 시스템을 분류하기 위해 몇 가지 반복 매개 변수를 사용할 수 있습니다.

입도

재구성 가능한 로직의 정밀도는 매핑툴에 의해 처리되는 최소 기능 유닛(설정 가능한 로직 블록, CLB)의 크기로 정의됩니다.정밀도가 높으면 알고리즘이 하드웨어에 구현될 때 유연성이 향상되는 경우가 많습니다.단, 계산당 필요한 라우팅의 양이 많아짐에 따라 전력, 면적 및 지연이 증가한다는 점에서 이와 관련된 패널티가 있습니다.세분화된 아키텍처는 비트레벨의 조작 레벨로 동작합니다만, 세분화된 처리 요소(재구성 가능한 데이터 패스 유닛(rDPU))는 표준 데이터 패스애플리케이션에 최적화할 수 있습니다.조잡한 아키텍처의 결점 중 하나는 예를 들어 4비트 폭의 기능 유닛에 1비트를 추가하는 경우 3비트를 낭비하는 등 세분화보다 작은 계산을 수행해야 하는 경우 사용률과 성능의 일부를 잃는 경향이 있다는 것입니다.이 문제는 같은 칩 상에 조잡한 입자 어레이(재구성 가능한 데이터 패스 어레이, rDPA)와 FPGA를 배치함으로써 해결할 수 있습니다.

Low-Graned Architecture(rDPA; 굵은입자 아키텍처)는 Word-Width Data Path(rDPU; 워드폭 데이터 패스)를 필요로 하는 알고리즘의 실장을 목적으로 하고 있습니다.기능 블록은 대규모 계산에 최적화되어 있으며 일반적으로 워드 와이드 산술 로직 유닛(ALU)으로 구성되므로 상호 연결된 소규모 기능 유닛 세트보다 더 빠르고 전력 효율이 높습니다. 이는 접속 와이어가 더 짧아 와이어 캐패시턴스가 적기 때문입니다.전력 절약 설계로 고속화.연산 블록이 클 경우 잠재적으로 바람직하지 않은 결과는 오퍼랜드의 크기가 알고리즘과 일치하지 않을 경우 자원의 비효율적인 활용이 초래될 수 있습니다.실행할 어플리케이션의 종류를 미리 알고 있는 경우가 많습니다.이로써 논리, 메모리 및 라우팅 자원을 커스터마이즈하여 디바이스의 퍼포먼스를 향상시키면서 향후 적응을 위한 유연성을 확보할 수 있습니다.예를 들어 도메인 고유의 어레이는 유연성을 줄임으로써 일반적인 FPGA보다 전력, 면적, throughput 면에서 뛰어난 성능을 얻을 수 있습니다.

재구성 속도

이러한 재구성 가능한 시스템은 도입 시, 실행 단계 간 또는 실행 중에 구성할 수 있습니다.일반적인 재구성 가능한 시스템에서는 비트 스트림이 전개 시 디바이스를 프로그래밍하기 위해 사용됩니다.처리 및 프로그래밍해야 하는 요소가 많기 때문에 세분화된 시스템은 본질적으로 세분화된 아키텍처보다 구성 시간이 더 오래 걸립니다.따라서, 전송 및 활용되는 정보의 양이 줄어들기 때문에, 보다 조잡한 아키텍처는 잠재적인 낮은 에너지 요구 사항으로부터 이익을 얻을 수 있습니다.직관적으로 재구성 속도가 느릴수록 재구성 관련 에너지 비용이 장기간에 걸쳐 상각되기 때문에 에너지 소비량은 작아진다.부분 재구성은 다른 부품이 활성 계산을 수행하는 동안 장치의 일부를 다시 프로그래밍할 수 있도록 하는 것을 목적으로 합니다.부분적인 재구성을 통해 보다 작은 재구성 가능한 비트스트림이 가능하기 때문에 비트스트림 내의 다중 정보 전송에 에너지를 낭비하지 않습니다.비트 스트림의 압축은 가능하지만, 보다 작은 비트 스트림을 사용함으로써 절약되는 에너지가 데이터 압축 해제에 필요한 연산보다 크지 않음을 보증하기 위해 신중한 분석을 수행해야 한다.

호스트 커플링

대부분의 경우 재구성 가능한 어레이는 호스트 프로세서에 연결된 처리 가속기로 사용됩니다.결합 수준은 재구성 가능한 로직을 사용할 때 관련된 데이터 전송 유형, 지연 시간, 전력, 처리량 및 오버헤드를 결정합니다.가장 직관적인 디자인 중 일부는 주변기기 버스를 사용하여 재구성 가능한 어레이에 코프로세서와 같은 배치를 제공합니다.그러나 재구성 가능한 패브릭이 프로세서에 훨씬 더 가까운 구현도 있었습니다. 일부는 프로세서 레지스터를 사용하여 데이터 경로에 구현되기도 했습니다.호스트 프로세서의 역할은 제어 기능을 수행하고, 로직을 구성하고, 데이터를 스케줄링하고, 외부 인터페이스를 제공하는 것입니다.

라우팅/인터커넥트

재구성 가능한 디바이스의 유연성은 주로 라우팅 인터커넥트에서 기인합니다.FPGA 벤더인 Xilinx와 Altera가 인기 있는 인터커넥트의 한 가지 스타일은 아일랜드 스타일의 레이아웃으로, 블록이 수직 및 수평 라우팅으로 배열되어 있습니다.라우팅이 불충분한 레이아웃은 유연성과 자원 사용률이 떨어지기 때문에 퍼포먼스가 제한될 수 있습니다.인터커넥트가 너무 많이 제공되면 필요 이상으로 많은 트랜지스터가 필요하므로 실리콘 면적, 배선 길이 및 전력 소비량이 증가합니다.

운영 체제의 과제

재구성 컴퓨팅의 주요 과제 중 하나는 설계 생산성을 높이고 기본 개념에 익숙하지 않은 사용자에게 재구성 컴퓨팅 시스템을 보다 쉽게 사용할 수 있는 방법을 제공하는 것입니다.이를 위한 한 가지 방법은 표준화와 추상화를 제공하는 것입니다.일반적으로 운영체제에 [27]의해 지원되고 시행됩니다.

운영체제의 주요 작업 중 하나는 하드웨어를 숨기고 프로그램(및 프로그래머)을 훌륭하고 깔끔하고 우아하며 일관된 추상화로 표시하는 것입니다.즉, 운영 체제의 두 가지 주요 태스크는 추상화와 리소스 [27]관리입니다.

추상화는 복잡하고 다른(하드웨어) 작업을 잘 정의되고 일반적인 방식으로 처리하는 강력한 메커니즘입니다.가장 기본적인 OS 추상화 중 하나는 프로세스입니다.프로세스는 기본 가상 하드웨어에서 자체적으로 실행 중인 것으로 인식되는 실행 중인 애플리케이션입니다.이는 스레드 개념을 통해 완화될 수 있으므로 이 가상 하드웨어에서 동시에 여러 작업을 실행하여 작업 수준의 병렬화를 이용할 수 있습니다.서로 다른 프로세스와 스레드가 작업을 조정할 수 있도록 하려면 [27]OS에서 통신 및 동기화 방법을 제공해야 합니다.

운영체제에 의해 프로세스 및 스레드에 제공되는 가상 컴퓨터는 사용 가능한 물리적 리소스(프로세서, 메모리 및 장치)를 공간적,[27] 임시적으로 공유해야 하므로 기본 하드웨어 구성 요소의 리소스 관리가 필요합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Estrin, G (2002). "Reconfigurable computer origins: the UCLA fixed-plus-variable (F+V) structure computer". IEEE Ann. Hist. Comput. 24 (4): 3–9. doi:10.1109/MAHC.2002.1114865.
  2. ^ Estrin, G., "컴퓨터 시스템 구성": Fixed Plus 가변 구조 컴퓨터", Proc. Western Joint Computer Conference, Western Joint Computer Conference, 뉴욕, 1960, 페이지 33-40.
  3. ^ C. Bodda:재구성 가능한 컴퓨팅 소개:아키텍처; Springer, 2007
  4. ^ Hauser, John R. and Wawrzynek, John, "Garp: 재구성 가능한 코프로세서를 탑재한 MIPS 프로세서", 필드 프로그래머블 커스텀 컴퓨팅 머신에 관한 IEEE 심포지엄 진행 (FCCM '97, 1997년 4월 16일~18일), 페이지 24~33.
  5. ^ McCaskill, John S.; Chorongiewski, Harald; Mekelburg, Karsten; Tangen, Uwe; Gemm, Udo (1994-09-01). "NGEN — Configurable computer hardware to simulate long-time self-organization of biopolymers". Berichte der Bunsengesellschaft für Physikalische Chemie. 98 (9): 1114. doi:10.1002/bbpc.19940980906. ISSN 0005-9021.
  6. ^ Evolvable systems : from biology to hardware : second International Conference, ICES 98, Lausanne, Switzerland, September 23-25, 1998 : proceedings. Sipper, Moshe., Mange, Daniel, 1940-, Pérez-Uribe, Andrés., International Conference on Evolvable Systems (2nd : 1998 : Lausanne, Switzerland). Berlin: Springer. 1998. ISBN 978-3540649540. OCLC 39655211.{{cite book}}: CS1 유지보수: 기타 (링크)
  7. ^ Coupling of biological and electronic systems : proceedings of the 2nd Caesarium, Bonn, November 1-3, 2000. Hoffmann, K.-H. (Karl-Heinz). Berlin: Springer. 2002. ISBN 978-3540436997. OCLC 49750250.{{cite book}}: CS1 유지보수: 기타 (링크)
  8. ^ Campi, F.; Toma, M.; Lodi, A.; Cappelli, A.; Canegallo, R.; Guerrieri, "임베디드 애플리케이션용으로 재구성 가능한 명령이 설정된 VLIW 프로세서", Solid-State Circuit Conference, 2003.테크니컬 페이퍼의 다이제스트.ISSCC. 2003 IEEE International, vol., no., 페이지 250–491 vol. 1, 2003
  9. ^ 알고트로닉스의 역사
  10. ^ Füchslin, Rudolf M.; McCaskill, John S. (2001-07-31). "Evolutionary self-organization of cell-free genetic coding". Proceedings of the National Academy of Sciences. 98 (16): 9185–9190. Bibcode:2001PNAS...98.9185F. doi:10.1073/pnas.151253198. ISSN 0027-8424. PMC 55395. PMID 11470896.
  11. ^ N. 트레데닉:재구성 가능한 컴퓨팅의 사례; 마이크로프로세서 보고서, 제10권 제10호, 1996년 8월 5일자, 페이지 25-27.
  12. ^ 하텐슈타인, R. 200110년간의 재구성 가능한 컴퓨팅: 선견지명이 있는 회고전.유럽에서의 설계, 자동화 테스트에 관한 회의의 진행(DATE 2001) (Munich, 독일).W. Nebel과 A.제라야, 에드유럽에서의 설계, 자동화 및 테스트IEEE 프레스, Piscataway, NJ, 642~649.
  13. ^ N. Voros, R. Nikolaos, A.로스티, M. 휘브너(편집자):이종 플랫폼에서의 동적 시스템 재구성 - MORPHEUS 접근법; Springer Verlag, 2009
  14. ^ Tarek El-Ghazawi et al. (February 2008). "The promise of high-performance reconfigurable computing". IEEE Computer. 41 (2): 69–76. CiteSeerX 10.1.1.208.4031. doi:10.1109/MC.2008.65. S2CID 14469864.{{cite journal}}: CS1 maint: 작성자 파라미터 사용(링크)
  15. ^ Esam El-Araby; Ivan Gonzalez; Tarek El-Ghazawi (January 2009). "Exploiting Partial Runtime Reconfiguration for High-Performance Reconfigurable Computing". ACM Transactions on Reconfigurable Technology and Systems. 1 (4): 1–23. doi:10.1145/1462586.1462590. S2CID 10270587.
  16. ^ "NSF center for High-performance Reconfigurable Computing". official web site. Retrieved August 19, 2011.
  17. ^ "Many-Core and Reconfigurable Supercomputing Conference". official web site. 2011. Archived from the original on October 12, 2010. Retrieved August 19, 2011.
  18. ^ "Altera and IBM Unveil FPGA-Accelerated POWER Systems". HPCwire. 2014-11-17. Retrieved 2014-12-14.
  19. ^ Wiśniewski, Remigiusz (2009). Synthesis of compositional microprogram control units for programmable devices. Zielona Góra: University of Zielona Góra. p. 153. ISBN 978-83-7481-293-1.
  20. ^ "Apple2 FPGA". Retrieved 6 Sep 2012.
  21. ^ Niklaus Wirth. "The Design of a RISC Architecture and its Implementation with an FPGA" (PDF). Retrieved 6 Sep 2012.[데드링크]
  22. ^ Jan Gray. "Designing a Simple FPGA-Optimized RISC CPU and System-on-a-Chip" (PDF). Retrieved 6 Sep 2012.
  23. ^ "Intel completes acquisition of Altera". Retrieved 15 November 2016.
  24. ^ "Stratix V FPGAs: Ultimate Flexibility Through Partial and Dynamic Reconfiguration". Retrieved 15 November 2016.
  25. ^ "Intel Quartus Prime Software Productivity Tools and Features". Retrieved 15 November 2016.
  26. ^ "Quartus Prime Standard Edition Handbook Volume 1: Design and Synthesis" (PDF). Intel. pp. 4–1. Retrieved 15 November 2016.
  27. ^ a b c d 에케르트, 마르셀, 마이어 Dominik, 하제, 얀, Klauer, 베른트(2016-11-30)."운영 체제 개념 재설정 컴퓨팅용:.검토하고 Survey".국제 저널 재설정 컴퓨팅. 2016년:1–11. doi:10.1155/2016/2478907.ISSN 1687-7195.이 기사는 창조적 공용 귀인 4.0국제(CC4.0이 받은)허가를 받고 가능하다 이 소스, 어록을 포함하고 있다.

추가 정보

  • Cardoso, Joo M. P., Hübner, Michael(Eds), 재구성 가능한 컴퓨팅: FPGA에서 Hardware/Software Codesign, Springer, 2011.
  • S. Hauck과 A.DeHon, 재구성 가능한 컴퓨팅: Morgan Kaufmann, 2008년, FPGA 기반 컴퓨팅의 이론과 실천.
  • J. Henkel, S. Parameswaran(편집자):임베디드 프로세서 설계저전력 전망; Springer Verlag, 2007년 3월
  • J. Teich(편집자) 외:재구성 가능한 컴퓨팅 시스템.저널 it의 특별 토픽호 - 정보 테크놀로지, Oldenbourg Verlag, 뮌헨.Vol.49(2007) 제3호
  • T.J. 토드먼, G.A. 콘스탄티니데스, S.J.E. 윌튼, O.Mencer, W. Luk 및 P.Y.K. Cheung, "재구성 가능한 컴퓨팅:아키텍처 및 설계 방법", IEEE 절차:컴퓨터 및 디지털 기술, 제152권, 제2호, 2005년 3월, 페이지 193-208.
  • A. Zomaya(편집자):자연에서 영감을 얻은 혁신적인 컴퓨팅 핸드북:새로운 테크놀로지와 클래식 모델의 통합; Springer Verlag, 2006
  • J.M. 아놀드와 D.A. Buell, "VHDL programming on Splash 2" More FPGAs, Will Moore and Wayne Luk 편집자, Abingdon EE & CS Books, 영국 옥스퍼드, 1994, 페이지 182~191 (진행,필드 프로그래머블 로직에 관한 국제 워크숍, 옥스퍼드, 1993).
  • J. M. 아놀드, D. A. 부엘, D.호앙, D. V. 프라이어, N. 시라지, M. R.Thistle, "Splash 2와 그 응용 프로그램, "Proceedings, International Conference on Computer Design, Cambridge, 1993, 페이지 482-486.
  • D. A. Buell과 Kenneth L. Pocek, "커스텀 컴퓨팅 머신:개요" The Journal of Supercomputing, v. 9, 1995, 페이지 219–230.

외부 링크