• 제목/요약/키워드: instruction set architecture

검색결과 88건 처리시간 0.021초

Selecting a Synthesizable RISC-V Processor Core for Low-cost Hardware Devices

  • Gookyi, Dennis Agyemanh Nana;Ryoo, Kwangki
    • Journal of Information Processing Systems
    • /
    • 제15권6호
    • /
    • pp.1406-1421
    • /
    • 2019
  • The Internet-of-Things (IoT) has been deployed in almost every facet of our day to day activities. This is made possible because sensing and data collection devices have been given computing and communication capabilities. The devices implement System-on-Chips (SoCs) that incorporate a lot of functionalities, yet they are severely constrained in terms of memory capacitance, hardware area, and power consumption. With the increase in the functionalities of sensing devices, there is a need for low-cost synthesizable processors to handle control, interfacing, and error processing. The first step in selecting a synthesizable processor core for low-cost devices is to examine the hardware resource utilization to make sure that it fulfills the requirements of the device. This paper gives an analysis of the hardware resource usage of ten synthesizable processors that implement the Reduced Instruction Set Computer Five (RISC-V) Instruction Set Architecture (ISA). All the ten processors are synthesized using Vivado v2018.02. The maximum frequency, area, and power reports are extracted and a comparison is made to determine which processor is ideal for low-cost hardware devices.

On-Demand Remote Software Code Execution Unit Using On-Chip Flash Memory Cloudification for IoT Environment Acceleration

  • Lee, Dongkyu;Seok, Moon Gi;Park, Daejin
    • Journal of Information Processing Systems
    • /
    • 제17권1호
    • /
    • pp.191-202
    • /
    • 2021
  • In an Internet of Things (IoT)-configured system, each device executes on-chip software. Recent IoT devices require fast execution time of complex services, such as analyzing a large amount of data, while maintaining low-power computation. As service complexity increases, the service requires high-performance computing and more space for embedded space. However, the low performance of IoT edge devices and their small memory size can hinder the complex and diverse operations of IoT services. In this paper, we propose a remote on-demand software code execution unit using the cloudification of on-chip code memory to accelerate the program execution of an IoT edge device with a low-performance processor. We propose a simulation approach to distribute remote code executed on the server side and on the edge side according to the program's computational and communicational needs. Our on-demand remote code execution unit simulation platform, which includes an instruction set simulator based on 16-bit ARM Thumb instruction set architecture, successfully emulates the architectural behavior of on-chip flash memory, enabling embedded devices to accelerate and execute software using remote execution code in the IoT environment.

네트워크 패킷 처리를 위한 효율적인 비트 스트림 명령어 세트 (An Efficient Bit Stream Instruction-set for Network Packet Processing Applications)

  • 윤여필;이용석;이정희
    • 대한전자공학회논문지SD
    • /
    • 제45권10호
    • /
    • pp.53-58
    • /
    • 2008
  • 본 논문은 네트워크 프로세서의 패킷 처리 능력 향상을 위한 새로운 명령어 세트를 제한한다. 제안하는 명령어는 패킷 헤더의 결합 연산을 가속화 할 수 있으므로 보다 효율적인 패킷 처리를 수행할 수 있다. 또한 overlay 명령어 처리를 위한 전용 하드웨어 구조를 설계하여 추가 하드웨어로 인한 비용을 최소화 하였다. 이를 위해 LISA 언어를 이용하여 네트워크 프로세서 기본 아키텍처를 설계하고 overlay 블록을 배럴 시프터를 기반으로 최적화 하였다. 이를 합성하여 면적 및 동작 지연시간을 비교하였으며, 컴파일러의 CKF(Compiler Known Function)를 이용하여 C레벨의 매크로 함수에 할당하고 어플리케이션 프로그램에 대한 실행 사이클 및 실행 시간을 비교하여 성능 향상을 확인하였다. Coware사의 processor designer, compiler designer를 이용하여 실험하였으며 Synopsys의 TSMC $0.25{\mu}m$로 합성한 결과 20.7%의 동작 지연시간 감소를 보였고, 전체 실행 사이클에선 제안하는 명령어 세트에 의해 30.8%의 성능 향상을 보였다.

캐쉬 용량 효과에 대한 멀티코어 프로세서의 성능 연구 (Performance Analysis of Multicore Processor Architectures Based On Cache Size Effects)

  • 이종복
    • 한국인터넷방송통신학회논문지
    • /
    • 제12권6호
    • /
    • pp.175-180
    • /
    • 2012
  • 최근에 이르러, 수퍼스칼라 프로세서의 하드웨어 복잡도와 성능 한계의 문제를 극복하기 위하여 멀티코어 프로세서가 각종 컴퓨터 시스템에 상용화되어 널리 이용되고 있다. 이 때, 멀티코어 프로세서의 성능에 큰 영향을 미치는 것은 명령어 캐쉬와 데이터 캐쉬의 구성 방법과 용량이다. 본 논문에서는 캐쉬의 구조와 용량이 멀티코어 프로세서의 성능에 미치는 영향을 분석하기 위하여, 다양한 캐쉬의 구조와 용량으로 구성되는 2 개에서 16 개까지의 멀티코어 프로세서에 대하여 SPEC 2000 벤치마크를 입력으로 하여 모의실험을 수행하였다. 모의실험 결과, 명령어 캐쉬와 데이터 캐쉬의 구조를 2 차 연관도로 구성하고 각 용량을 64 KB로 설정할 때 하드웨어의 비용 대 성능 효과가 가장 높았다.

에너지 소비 모니터링을 위한 재목적 인스트럭션-셋 시뮬레이터 (Retargetable Instruction-Set Simulator for Energy Consumption Monitoring)

  • 고광만
    • 한국멀티미디어학회논문지
    • /
    • 제14권3호
    • /
    • pp.462-470
    • /
    • 2011
  • 재목적성(retargetability)은 아키텍처 정보를 정형화된 형식으로 기술하여 컴파일러, 시뮬레이터와 같은 소프트웨어 개발 도구(SDK)를 생성하는데 이용된다. 시뮬레이터는 임베디드 프로세서의 설계를 하드웨어로 구현하기 전에 아키텍처의 다양한 성능 확인과 개선을 위해 소프트웨어적으로 검증할 수 있는 중요한 하드웨어 및 소프트웨어 개발 도구이다. 이러한 시뮬레이터는 시스템의 기능 검증, 성능 측정, 전력 에너지 소비 측정 결과 등을 하드웨어 설계 과정에서 중요하게 활용한다. 이 논문에서는 에너지 소비 측정이 가능한 시뮬레이터를 ADL로부터 생성하기 위해 첫째 에너지 소비 측정 및 모니터링 요소를 ADL에 표현한다. 둘째, ADL 표현으로부터 에너지 측정 및 모니터링 시뮬레이션 라이브러리를 생성한 후 시뮬레이터인 RenenrgySim 을 구축한다. 마지막으로, MiPS R4000에 대한 ADL을 표현을 작성하여 에너지 소비 측정 결과를 제시한다. 이러한 연구는 모바일 임베디드 소프트웨어 개발 분야에서 소프트웨어적인 실험을 통해 효과적인 아키텍처 개발과 신속한 SDK 생성에 활용될 수 있다.

16비트 명령어 기반 프로세서를 위한 페어 레지스터 할당 알고리즘 (Pair Register Allocation Algorithm for 16-bit Instruction Set Architecture (ISA) Processor)

  • 이호균;김선욱;한영선
    • 정보처리학회논문지A
    • /
    • 제18A권6호
    • /
    • pp.265-270
    • /
    • 2011
  • 다양한 영역에서32비트 명령어 기반 마이크로프로세서의 사용이 일반화되고 있지만, 임베디드 시스템 환경에서는 여전히 16비트 명령어 기반 프로세서가 널리 사용되고 있다. 인텔 8086, 80286 및 모토로라 68000, 그리고 에이디칩스의 AE32000과 같은 프로세서들이 그 대표적인 예이다. 그러나, 16비트 명령어들은 32비트 명령어보다 그 크기로 인해 상대적으로 낮은 표현력을 가지고 있어 동일한 기능을 구현하는데 32비트 명령어 기반 프로세서에 비해 많은 명령어를 수행해야 한다는 문제점을 가지고 있다. 실행 명령어 수는 프로세서의 실행 성능과 밀접한 관련을 가지므로 16비트 명령어셋의 표현력을 향상시켜 성능 저하 문제를 해결할 필요성이 있다. 본 논문에서는 기존의 그래프 컬러링 기반 레지스터 할당(Graph-coloring based Register Allocation) 알고리즘을 보완한 페어 레지스터 할당(Pair Register Allocation) 알고리즘을 제안하고, 이를 통한 성능 분석 결과 및 추후 연구 방향을 제시하고자 한다.

CISC 임베디드 컨트롤러를 위한 새로운 비동기 파이프라인 아키텍쳐, A8051 (A New Asynchronous Pipeline Architecture for CISC type Embedded Micro-Controller, A8051)

  • 이제훈;조경록
    • 대한전자공학회논문지SD
    • /
    • 제40권4호
    • /
    • pp.85-94
    • /
    • 2003
  • 비동기 설계 기법은 시스템 클럭을 사용하지 않고, 동작이 필요한 모듈만 활성화시켜 전력 및 성능면에서 동기식 설계 기법에 비해 높은 성능을 갖는다. 본 논문은 임베디드 컨트롤러인 Intel 80csl과 완전한 명령어 호환성을 갖고, 비동기식 파이프라인 구조로 최적화된 A8051 아키텍쳐를 제안한다. 다양한 어드레싱 모드와 명령어를 제공하는 CISC 명령어 수행 스킴은 동기식 파이프라인 구조에 적합하지 않고 많은 오버헤드를 유발한다. 본 논문에서는 명령어 실행 사이클을 비동기식 파이프라인 수행에 적합하도록 명령어별로 그룹화하고, 동기화 및 다중 실행 사이클로 인한 오버헤드로 발생된 버블을 제거함으로서 최적화하였다. 또한 적합한 분기 처리 기법 및 가변적인 명령어 길이의 처리 방법을 제시함으로서 명령어 수행시 필요한 상태 수를 최소화하고, 명령어 수행의 병렬성을 증가시켰다. 제안된 A8051 아키텍쳐는 Verilog HDL로 설계하여 0.,35㎛ CMOS 공정 표준 셀 라이브러리로 합성하였다. 실험 결과로 A8051은 36㎒ 클럭을 사용하는 인텔 80C51과 다른 비동기 80C51에 비해 약 24배의 성능 향상을 얻었다.

실장제어 16 비트 FPGA 마이크로프로세서 (A 16 bit FPGA Microprocessor for Embedded Applications)

  • 차영호;조경연;최혁환
    • 한국정보통신학회논문지
    • /
    • 제5권7호
    • /
    • pp.1332-1339
    • /
    • 2001
  • SoC(System on Chip) 기술은 높은 융통성을 제공하므로 실장제어 분야에서 널리 활용되고 있다. 실장제어 시스템은 소프트웨어와 하드웨어를 동시에 개발하여야 하므로 많은 시간과 비용이 소요된다. 이러한 설계시간과 비용을 줄이기 위해 고급언어 컴파일러에 적합한 명령어 세트를 가지는 마이크로프로세서가 요구된다. 또한 FPGA(Field Programmable Gate Array)에 의한 설계검증이 가능해야 한다. 본 논문에서는 소형 실장제어 시스템에 적합한 EISC(Extendable Instruction Set Computer) 구조에 기반한 16 비트 FPGA 마이크로프로세서인 EISC16을 제안한다. 제안한 EISC16은 짧은 길이의 오프셋과 작은 즉치값을 가진 16 비트 고정 길이 명령어 세트를 가진다. 그리고 16 비트 오프셋과 즉치 값은 확장 레지스터와 확장 플래그를 사용하여 확장한다. 또한, IBM-PC와 SUN 워크스테이션 상에서 C/C++ 컴파일러 빛 응용 소프트웨어를 설계하였다. 기존 16 비트 마이크로프로세서들의 C/C++ 컴파일러를 만들고 표준 라이브러리의 목적 코드를 생성하여 크기를 비교한 결과 제안한 EISC16의 코드 밀도가 높음을 확인하였다. 제안한 EISC16은 Xilinx의 Vertex XCV300 FPGA에서 RTL 레벨 VHDL로 설계하여 약 6,000 게이트로 합성되었다. EISC16은 ROM, RAM, LED/LCD 판넬, 주기 타이머, 입력 키 패드, 그리고 RS-232C 제어기로 구성한 테스트 보드에서 동작을 검증하였다. EISCl6은 7MHz에서 정상적으로 동작하였다.

  • PDF

RISC-V 아키텍처 기반 6단계 파이프라인 RV32I프로세서의 설계 및 구현 (Design and Implementation of a Six-Stage Pipeline RV32I Processor Based on RISC-V Architecture)

  • 민경진;최서진;황유빈;김선희
    • 반도체디스플레이기술학회지
    • /
    • 제23권2호
    • /
    • pp.76-81
    • /
    • 2024
  • UC Berkeley developed RISC-V, which is an open-source Instruction Set Architecture. This paper proposes a 32-bit 6-stage pipeline architecture based on the RV32I RSIC-V. The performance of the proposed 6-stage pipeline architecture is compared with the existing 32-bit 5-stage pipeline architecture also based on the RV32I processor ISA to determine the impact of the number of pipeline stages on performance. The RISC-V processor is designed in Verilog-HDL and implemented using Quartus Prime 20.1. To compare performance the Dhrystone benchmark is used. Subsequently, peripherals such as GPIO, TIMER, and UART are connected to verify operation through an FPGA. The maximum clock frequency for the 5-stage pipeline processor is 42.02 MHz, while for the 6-stage pipeline processor, it was 49.9MHz, representing an 18.75% increase.

  • PDF

H.264 on-chip encoder를 위한 programmable processor 성능 향상 (Performance Improvement of the programmable processor designed for H.264 on-chip encoder)

  • 이진용;김경원;허인구;박상현;김용주;백윤흥
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2009년도 추계학술발표대회
    • /
    • pp.19-20
    • /
    • 2009
  • H.264 부호기의 on-chip 상의 구현방법으로는 성능에 중점을 둔 ASIC (application specific integrated circuit) 기반의 접근 방식과 ASIC 보다 성능은 떨어지나 일반성과 유연성에 중점을 둔 ASIP (application specific instruction set architecture) 기반의 설계 방식이 연구되어 왔다. 우리는 영상 압축 응용 범위 내에서는 일반성 및 유연성을 잃지 않으면서도 기존에 문제시 되던 ASIP의 성능은 대폭 개선할 수 있는 ISA와 micro architecture를 제안하고 구현한 바 있다. 본 논문의 핵심적인 기여는 이 ASIP의 추가적인 성능 개선이다.