OpenRISC 1200

OpenRISC 1200
OR1200 프로세서 아키텍처 블록도

OpenRISC 1200(OR1200)은 오픈 소스 OpenRISC 1000 RISC 아키텍처의 구현입니다[ 1 ].

합성 가능한 CPU 코어로, 개발자가 OpenCores.org에서 수년간 유지 관리해 왔지만, 2015년부터는 librecores.org 웹사이트의 Free and Open Source Silicon Foundation이 이 활동을 인계했습니다.Verilog RTL 설명은 GNU Lesser General Public License(LGPL)에 따라 출시됩니다.

아키텍처

OR1200 CPU/DSP 블록 다이어그램

OR1200의 IP 코어는 Verilog HDL실장되어 있습니다.오픈 소스 코어로서 설계는 완전히 공개되어 있어 누구나 다운로드 및 변경할 수 있습니다.공식 구현은 개발자가 OpenCores.org에서 관리합니다.실장에서는 전원 관리 유닛, 디버깅 유닛, 틱타이머, Programmable Interrupt Controller(PIC; 프로그래머블인터럽트 컨트롤러), Central Processing Unit(CPU; 중앙처리 유닛) 및 메모리 관리 하드웨어를 지정합니다.프로세서가 표준 32비트 Wishbone 버스 인터페이스를 구현하여 주변 시스템 및 메모리 서브시스템을 추가할 수 있습니다.OR1200은 ARM10 프로세서 아키텍처에 필적하는 성능을 발휘하도록 설계되어 있습니다.

CPU/DSP

OR1200 CPU는 32비트 ORB를 구현한 것입니다.IS32 Instruction Set Architecture(ISA) 및 (옵션) ORFP32X ISA를 통한 IEEE-754 준거 단정도 부동소수점 지원 구현.ISA에는 5가지 명령 형식이 있으며 2가지 어드레싱 모드, 즉 register with dispension과 program-counter relative를 지원합니다.구현에는 단일 이슈의 5단계 파이프라인이 있으며 대부분의 명령에서 단일 사이클을 실행할 수 있습니다.CPU에는 Digital Signal Processing(DSP; 디지털 신호 처리) 애플리케이션을 보다 효과적으로 지원하기 위해 MAC 장치도 포함되어 있습니다.

메모리 관리

OR1200 설계에서는 Harvard 메모리 아키텍처를 사용하기 때문에 데이터 메모리와 명령 메모리에 별도의 메모리 관리 유닛(MMU)이 있습니다.이러한 MMU는 각각 페이지사이즈가 8KiB, 디폴트사이즈가 64 엔트리인 해시 기반의 단방향 Direct-Mapped Translation Lookaside Buffer(TLB; 다이렉트 맵 변환 Lookaside 버퍼)로 구성됩니다.TLB는 개별적으로 16~256엔트리로 확장 가능합니다.또한 명령 메모리와 데이터 메모리 모두에 대해 각각 단방향 다이렉트 매핑 캐시가 있습니다.각 캐시의 기본 크기는 8KiB이지만 둘 다 1KiB에서 64KiB 사이에서 개별적으로 확장 가능합니다.MMU에는 가상 메모리 지원이 포함되어 있습니다.

성능

코어는 Xilinx FPGA [1]테크놀로지로 50MHz에서 MHz당 1.34의 CoreMarks를 달성합니다.

최악의 경우 OR1200의 클럭 주파수는 0.18μm 6LM 제조 프로세스에서 250MHz입니다.250MHz OR1200 프로세서는 Drystone 벤치마크를 사용하여 최악의 경우 250Drystone Millions Per Second(DMIPS)를 실행합니다.0.18μm 프로세스에서 250MHz 프로세서의 예상 전력 사용량은 최대 스로틀에서 1W 미만, 하프 [citation needed]스로틀에서 5mW 미만입니다.

적용들

일반적으로 OR1200은 통신, 휴대용 미디어, 홈 엔터테인먼트, 자동차 애플리케이션 등 다양한 임베디드 애플리케이션에 사용됩니다.GNU 체인(GCC 포함)도 버그가 [2]없는 것은 아니지만 아키텍처에 정상적으로 이식되었습니다.OR1200에서 실행되는 OR1K용 Linux 커널 포트가 있습니다.임베디드 C 라이브러리의 최근 포트 newlib uClibc도 플랫폼에서 사용할 수 있습니다.

실장

OR1200은 FPGA 및 ASIC 기술을 사용하여 정상적으로 구현되었습니다.

역사

OpenRISC 1000 아키텍처의 첫 공개 기록은 [3]2000년에 있습니다.

레퍼런스

  1. ^ "OR1200 OpenRISC Processor - OR1K :: OpenCores". opencores.org. Archived from the original on 2011-09-25.
  2. ^ "UClibc tool chain test results - OR1K :: OpenCores". opencores.org. Archived from the original on 2012-02-22.
  3. ^ http://www.eetimes.com/electronics-news/4151330/Free-32-bit-processor-core-hits-the-Net

외부 링크