• Title/Summary/Keyword: 명령어 집합 설계

Search Result 32, Processing Time 0.021 seconds

Automatic generation of instruction set simulators for microprocessors (마이크로프로세서를 위한 명령어 집합 시뮬레이터의 자동 생성)

  • Hong, Man Pyo
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.38 no.3
    • /
    • pp.66-66
    • /
    • 2001
  • 새로운 마이크로프로세서의 설계, 최적화, 그리고 완성 후 어플리케이션의 작성 단계에서 칩의 명령어 집합 시뮬레이션은 필수적인 요소이다. 그러나, 기존의 시뮬레이션 툴들은 저 수준의 하드웨어 기술언어와 게이트 레벨 이하의 시뮬레이션으로 인해 시뮬레이터 구성과 실행 시에 상당한 시간적 지연을 초래하고 있다. 본 논문에서는 이러한 문제들을 해소하고 칩 제작과정에서 발생하는 잦은 설계 변경에 유연성 있게 대응할 수 있는 레지스터 전송 수준의 명령어 집합 시뮬레이터 생성기를 제안하며 그 설계 및 구현에 관해 기술한다.

Parallel Branch Instruction Extension for Thumb-2 Instruction Set Architecture (Thumb-2 명령어 집합 구조의 병렬 분기 명령어 확장)

  • Kim, Dae-Hwan
    • Journal of the Korea Society of Computer and Information
    • /
    • v.18 no.7
    • /
    • pp.1-10
    • /
    • 2013
  • In this paper, the parallel branch instruction is proposed which executes a branch instruction and the frequently used instruction simultaneously to improve the performance of Thumb-2 instruction set architecture. In the proposed approach, new 32-bit parallel branch instructions are introduced which combine 16-bit branch instruction with each of the frequently used 16-bit LOAD, ADD, MOV, STORE, and SUB instructions, respectively. To provide the encoding space of the new instructions, the register field in less frequently executed instructions is reduced, and the new instructions are encoded by using the saved bits. Experiments show that the proposed approach improves performance by an average of 8.0% when compared to the conventional approach.

Automatic Generation of Instruction Set Simulators for Microprocessors (마이크로프로세서를 위한 명령어 집합 시뮬레이터의 자동 생성)

  • Lee, Seong-Uk;Hong, Man-Pyo
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.38 no.3
    • /
    • pp.220-228
    • /
    • 2001
  • Simulation of an instruction set is essential to design and optimize new microprocessors, and to develop application programs. Though many simulation tools are widely used, their low-level description and simulation make users construct simulators difficult and spend a lot of time for simulation. We developed an automatic generator of instruction set simulators that perform register-transfer-level simulation. This automatic generator might be adaptable so as to be suitable for new modification or different conditions in designing microprocessors. In this paper, we describe a structure of automatic generation system and an implementation details.

  • PDF

AMEX: Extending Addressing Mode of 16-bit Thumb Instruction Set Architecture (AMEX: 16비트 Thumb 명령어 집합 구조의 주소 지정 방식 확장)

  • Kim, Dae-Hwan
    • Journal of the Korea Society of Computer and Information
    • /
    • v.17 no.11
    • /
    • pp.1-10
    • /
    • 2012
  • In this paper, the extension of the addressing mode in the 16-bit Thumb instruction set architecture is proposed to improve the performance of 16-bit Thumb code. The key idea of the proposed approach is the introduction of new addressing modes for more frequent instructions by using the saved bits from the reduction of the register fields in less frequently used instructions. The proposed approach adopts efficient addressing modes from the 32-bit ARM architecture, which is the superset of the 16-bit Thumb architecture. To speed up access to a data list, scaled register offset addressing mode and post-indexed addressing mode are introduced for load and store instructions. Experiments show that the proposed approach improves performance by an average of 8.5% when compared to the conventional approach.

The Compressed Instruction Set Architecture for the OpenRISC Processor (OpenRISC 프로세서를 위한 압축 명령어 집합 구조)

  • Kim, Dae-Hwan
    • Journal of the Korea Society of Computer and Information
    • /
    • v.17 no.10
    • /
    • pp.11-23
    • /
    • 2012
  • To achieve efficient code size reduction, this paper proposes a new compressed instruction set architecture for the OpenRISC architecture. The new instructions and their corresponding formats are designed by the profiling information of the existing instruction usage. New 16-bit instructions and 32-bit instructions are proposed to compressed the existing 32-bit instructions and instruction sequences, respectively. The proposed instructions can be classified into three types. The first is the new 16-bit instructions for the frequent normal 32-bit instructions such as add, load, store, branch, and jump instructions. The second type is the new 32-bit instructions for the consecutive two load instructions, two store instructions, and 32-bit data mov instructions. Finally, two new 32-bit instructions are proposed to compress function prolog and epilog code, respectively. OpenRISC hardware decoder is extended to support the new instructions. Experiments show that the efficiency of code size reduction improves by an average of 30.4% when compared to the OR1200 instruction set architecture without loss of execution performance.

Design of Instruction Set for accelerating symmetric and asymmetric ciphers (대칭 및 비대칭 암호화 알고리즘 가속을 위한 명령어 집합 구조의 설계)

  • Kim, Il-Kwan;Choi, Lynn
    • Proceedings of the IEEK Conference
    • /
    • 2003.07d
    • /
    • pp.1343-1346
    • /
    • 2003
  • 상거래와 통신을 위한 주된 매개체로써 등장한 인터넷 뿐 아니라 새로이 대두되는 다양한 유무선 네트워크 환경, 그리고 정보 저장에 있어서 암호화 알고리즘은 보안의 중요한 요소로 자리잡고 있다. 본 논문에서는 대칭 및 비대칭 암호화 알고리즘을 가속시키기 위한 암호화 프로세서의 명령어와 해당 Functional Unit 을 제안하였다. 현재 암호화 알고리즘을 가속시키기 위한 방법으로 사용되는 주문형 반도체(ASIC)는 알고리즘 가속 속도는 빠르지만, 새로운 암호화 알고리즘을 지원할 수가 없고, 지원하는 알고리즘을 사용하지 않는 경우 비효율성을 야기한다. 또한 범용프로세서는 다양하고 새로운 암호화 알고리즘을 지원할 수 있지만 암/복호화 가속속도가 느리다. 이는 암호화 알고리즘이 범용 프로세서에서는 지원하지 연산을 주로 사용하기 때문이다. 따라서 이 논문에서는 대칭 및 비대칭 암호화 알고리즘의 주된 연산을 분석하고, 각각의 연산을 가속시키기 위한 명령어 집합, 그리고 해당하는 Functional Unit을 제안하여 Programmable 한 암호화 프로세서를 설계하기 위한 토대를 마련한다.

  • PDF

The Architecture Design of 32-bit RISC Microprocessor with DSP Functional Unit (DSP 기능 유닛을 내장한 32비트 RISC 마이크로프로세서의 구조 설계)

  • An, Sang-Jun;Jeong, Wook-Kyeong;Kim, Moon-Gyung;Moon, Sang-Ook;Lee, Yong-Surk
    • Proceedings of the IEEK Conference
    • /
    • 1999.06a
    • /
    • pp.345-348
    • /
    • 1999
  • 본 논문에서는 내장형 응용에 적합한 RISC 마이크로프로세서와 DSP 프로세서의 기능을 유기적으로 결합한 구조를 연구하고 이를 설계한다. 프로그램의 크기를 줄이기 위해 RISC 명령어는 16비트 명령어 집합을 설계하고 분기 명령어로 인한 손실을 줄이기 위해 한 개의 지연 슬롯을 갖고 있다. DSP 명령어는 32비트 길이를 갖고 한 명령어로 곱셈, 덧셈(뺄셈), 두 가지 데이터 이동을 할 수 있어서 한 사이클에 최대 네 가지 동작을 할 수 있다 파이프라인 단계는 IF, ID, EX, MA, WB/DSP의 다섯 단계로 구성된다. DSP 기능을 지원하기 위해 내부 루프 버퍼를 갖고 정수 실행부에서는 주소 발생을 위한 전용 하드웨어와 DSP 유닛에서는 곱셈 및 누적 기능을 지원하기 위한 17 × 17 비트 곱셈기가 내장된다. 제안된 구조의 설계는 Verilog-HDL을 이용하여 top-down 설계 방식으로 설계되었고 각 기능 검증을 마친 후 3.3V, 0.6㎛ CMOS triple metal single poly 공정을 이용하여 합성하고 레이아웃 하였다.

  • PDF

A Study on Real-time Processing of The Gaussian Filter using The SSE Instruction Set. (SSE 명령어 기반 실시간 처리 가우시안 필터 연구)

  • Chang, Pil-Jung;Lee, Jong-Soo
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2006.11a
    • /
    • pp.89-92
    • /
    • 2006
  • 본 논문은 SIFT(Scale Invariant Feature Transform)알고리즘의 실시간처리 응용프로그램 작성기법을 기술하고 있는데, 단일 프로세서에서 병렬처리 기능을 지원하도록 설계된 SSE 명령어 집합을 사용하여 가우시안 convolution을 구현하고 있다. SIFT알고리즘의 Scale-space를 생성하는 과정에 수행되는 가우시안 Convolution은 연산시간이 과도하게 요구된다.[1] 2D의 가우시안 필터가 영상을 구성하는 모든 셀과 1:1로 연산을 수행하므로 이 연산의 소요시간은 영상의 가로, 세로 길이 그리고 필터의 크기에 비례하여 결정된다. 이 논문에서 제안하는 방법은 연산을 위해 CPU 내부로 한번 읽어 들인 픽셀자료에 대해 가능한 모든 연산을 SSE 명령어 집합을 사용하여 수행함으로써 병렬 연산에 의한 연산시간 절감과 메모리 접근 최소화를 통한 입출력시간 절감을 통해 전체 연산시간을 단축 하였다.

  • PDF

Device Driver Fault Isolation using Binary Translation Technology (동적 코드 변환 기법을 이용한 디바이스 드라이버의 고장 분리 기술)

  • Lim, Byoung Hong;Kim, Jeehong;Eom, Young Ik
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.11a
    • /
    • pp.1714-1717
    • /
    • 2010
  • 디바이스 드라이버는 커널의 대부분을 차지하기 때문에 디바이스 드라이버에 문제가 발생하면 시스템에 심각한 영향을 미치게 된다. 따라서 디바이스 드라이버의 고장 분리 기술은 운영체제의 신뢰도 향상을 위해서 매우 중요하다. 동적 코드 변환 기법(Binary Translation)은 기계어 코드의 수준에서 기존의 디바이스 드라이버의 명령어 집합을 다른 명령어 집합으로 변환하여 실행하도록 하는 기법이다. 이 기법을 통해 우리는 각 명령어의 변환 과정에서 디바이스 드라이버의 모든 행위를 감시할 수 있다. 따라서 동적 코드 변환기법은 디바이스 드라이버의 고장을 분리하며 악의적인 메모리 접근을 제한하는 장점을 가지고 있다. 또한 커널 코드의 수정과 디바이스 드라이버의 수정이 요구되지 않는다. 이 논문에서 우리는 동적 코드 변환 기법을 설계하고 구현하였다. 그리고 동적 코드변환 기법을 이용한 몇 가지 실험을 통해, 디바이스 드라이버를 수행 시 발생하는 오버헤드와 고장 분리 가능 여부를 평가해 보았다.

Benchmarking Korean Block Ciphers on 32-Bit RISC-V Processor (32-bit RISC-V 프로세서에서 국산 블록 암호 성능 밴치마킹)

  • Kwak, YuJin;Kim, YoungBeom;Seo, Seog Chung
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.31 no.3
    • /
    • pp.331-340
    • /
    • 2021
  • As the communication industry develops, the development of SoC (System on Chip) is increasing. Accordingly, the paradigm of technology design of industries and companies is changing. In the existing process, companies purchased micro-architecture, but now they purchase ISA (Instruction Set Architecture), and companies design the architecture themselves. RISC-V is an open instruction set based on a reduced instruction set computer. RISC-V is equipped with ISA, which can be expanded through modularization, and an expanded version of ISA is currently being developed through the support of global companies. In this paper, we present benchmarking frameworks ARIA, LEA, and PIPO of Korean block ciphers in RISC-V. We propose implementation methods and discuss performance by utilizing the basic instruction set and features of RISC-V.