• 제목/요약/키워드: VLIW

검색결과 54건 처리시간 0.027초

버스기반의 VLIW형 프로세서를 위한 최적화 컴파일러 구현 (Implementation of Optimizing Compiler for Bus-based VLIW Processors)

  • 홍승표;문수묵
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제27권4호
    • /
    • pp.401-407
    • /
    • 2000
  • 최근의 고성능 프로세서들은 명령어 수준의 병렬처리(Instruction Level Parallel Processing) 를 이용하여 성능향상을 꾀하고 있다. 특히 컴파일러의 도움을 받는 VLIW(Very Long Instruction Word) 방식의 프로세서는 고성능 DSP 및 그래픽 프로세싱 등 특수한 분야에서 사용이 증가하고 있다. 이러한 특수 목적의 프로세서 구조로서 버스 기반의 VLIW 구조가 제안되었으며[2], 이는 포워딩 하드웨어의 부담과 명령어 폭을 줄여주는 장점을 갖는다. 본 논문에서는 제안된 버스 기반의 VLIW 프로세서를 위해 개발된 최적화 스케쥴링 컴파일러를 소개한다. 우선 버스간 연결 및 자원사용을 모델링 하는 기법을 설명하고 이를 바탕으로 레지스터-버스 승진, 복사자 융합, 오퍼랜드 대체 등의 기계 의존적인 최적화 기법과 선택 스케쥴링, EPS(Enhanced Pipelining Scheduling) 기법 등 VLIW 스케쥴링 기법을 어떻게 구현했는지 설명한다. 이러한 최적화 기법들을 멀티미디어 응용 프로그램에 대하여 적용하여 보았고 약 20%의 성능향상을 보임을 확인하였다.

  • PDF

정적 포워딩에 의한 VLIW 프로세서의 데이터 hazard 처리 (Static forwardin: an approach to reduce data hazards in VLIW processor)

  • 박형준;김이섭
    • 전자공학회논문지C
    • /
    • 제35C권2호
    • /
    • pp.1-9
    • /
    • 1998
  • To achieve high performance in VLIW processors, they must exploit the parallelism on application programs. Data dependency makes it difficult to find the instruction-level parallelism. Among the three kinds of data dependency, true dependency causes RAW(Read After Wirte) hazards that occur most frequently in VILW processors. Forwarding is a widely used technique to reduce the performance degradation caused by RAW hazards. However, forwarding requires too much area of the chip when it is applied to VLIW processors. In this paper, static forwarding is proposed to reduce the hardware cost of forwarding circuits. It needs an extended compiler to detect RAW hazards and control the proposed forwarding scheme via instruction. And it uses the modified register file to shrink the area of forwarding path. VLIW Processor Model is also designed to verify static forwarding. This paper describes the operation of static forwarding and the comparison with the conventional forwarding.

  • PDF

목적 코드에서 LNOP 코드가 제거됨에 따른 SVLIW 구조의 성능 향상 (Performance Improvement of SVLIW Architectures by Removing LNOPs from An Object Code)

  • 정보윤;전중남;김석일
    • 한국정보처리학회논문지
    • /
    • 제4권9호
    • /
    • pp.2269-2279
    • /
    • 1997
  • SVLIW (Superscalar VLIW) 프로세서는 실시간에 긴 명령어를 스케줄하는 VLIW 프로세서의 일종으로 인출되어 실행될 긴 명령어가 사용할 자원과 앞서 인출되어 수행중인 긴 명령어가 사용하는 자원간에 충돌이 발생하면 인출하여 실행하려는 긴 명령어를 수행하지 않고 NOP으로만으로 구성된 긴 명령어(LNOP: Long NOP word)를 할당하여 긴 명령어간의 충돌로 인한 계산의 오류를 피한다. 따라서 SVLIW 프로세서에서는 목적 코드 내에서 LNOP을 제거할 수 있다. 본 논문에서는 목적 코드에서 LNOP이 제거됨에 따라 캐쉬 적중률이 얼마나 향상되는지를 분석하고 이로 인하여 예상되는 성능 향상을 연구하였다. 여러 가지의 벤치 마크 프로그램에 대한 모의 실험 결과, SVLIW 프로세서 구조는 기존의 VLIW 프로세서 구조에 비하여 성능이 5%이상 향상됨이 확인될 수 있었다.

  • PDF

VLIW 기반 고성능 DSP에서의 SAD 알고리즘 최적화 스케줄링 (Optimal Scheduling of SAD Algorithm on VLIW-Based High Performance DSP)

  • 유희재;정수환;정선태
    • 한국콘텐츠학회논문지
    • /
    • 제7권12호
    • /
    • pp.262-272
    • /
    • 2007
  • SAD(Sum of Absolute Difference) 알고리즘은 동영상 인코더에서 가장 많은 시간이 소용되는 것으로 잘 알려진 움직임 추정에서 가장 자주 계산이 수행되는 알고리즘으로, 동영상 인코딩 수행시간을 줄이기 위해서 우선적으로 최적화 구현되어야 하는 알고리즘이다. 본 논문에서는 VLIW 기반 고성능 DSP 프로세서에서의 조건 분기를 갖는 SAD 알고리즘의 최적 스케줄링 구현 방법을 제안한다. 제안 방법은 먼저 조건 분기를 갖는 중첩 루프를 VLIW 구조가 제공하는 ILP(Instruction Level Parallelism) 능력을 잘 활용할 수 있도록 충분한 크기의 루프 몸체를 가지며 또한 빨리 루프를 탈출 할 수 있는 조건 분기를 갖는 단일 루프로 변환한 후에, 모듈로 스케줄링 기법을 적용하여 VLIW 기반 프로세서에서 최적화 스케줄링 구현을 한다. 제안된 구현 방안을 TMS320C6713에서 구현하고, 코드 크기 및 수행 시간에 대한 성능 분석을 하였다. 구현된 최적화 SAD 루틴은 코드 크기도 크지 않아 임베디드 응용에 적합하며, 이 SAD 구현을 사용한 H.263 인코더가 그렇지 않은 H.263 인코더보다 훨씬 좋은 성능을 보임을 실험을 통해 확인하였다.

VLIW (Very Long Instruction Word) 형식 드론 FCC(Flight Control Computer)의 실시간성 개선을 위한 소프트웨어 성능 가속화 연구 (A Study on software performance acceleration for improving real time constraint of a VLIW type Drone FCC)

  • 조두산
    • 한국산업융합학회 논문집
    • /
    • 제20권1호
    • /
    • pp.1-7
    • /
    • 2017
  • Most conventional processors execute program instructions in a sequential manner. On the other hand, VLIW processor can execute multiple instructions at the same time. It exploits instruction level parallelism to improve system performance. To that end, program code should be rearranged to VLIW instruction format by a compiler. The compiler determine an optimal execution order of instructions of a program code. This instruction ordering is also called instruction scheduling. The scheduling is an algorithm that decides the execution order for instruction codes in loop parts of a program so that the instruction level parallelism can be maximized. In this research, we apply an existing scheduling algorithm to a VLIW FCC and describe analysis results to further improve its performance. And, we present a solution to solve some limitation of the existing scheduling technique. By using our solution, FCC's performance can be improved upto 32% compared to the existing scheduling only setting.

VLIW형 마이크로컨트롤러를 위한 최적화 컴파일러의 구현 (An Optimizing Compiler for VLIW Microcontrollers)

  • 홍승표;문수묵
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1998년도 가을 학술발표논문집 Vol.25 No.2 (3)
    • /
    • pp.759-761
    • /
    • 1998
  • 90년대 중반 이후 고성능의 프로세서들은 성능 향상을 위해 명령어 수준의 병렬성을 이용하고 있다. 특히 실행화일의 호환성을 고려할 필요가 없는 마이크로컨트롤에서는 같은 하드웨어로 더 많은 함수유닛을 가질 수 있는 VLIW 구조가 널리 사용된다. 이러한 VLIW형의 마이크로컨트롤러에서는 병렬성을 추출하는 역할이 전적으로 소프트웨어에 있으므로 컴파일어가 성능향상에 매우 큰 영향을 미치게 된다. 본 논문에서는 마이크로컨트롤러의 구조와 그룹짓기 조건을 분석하고 선택 스케쥴링과 소프트웨어 파이프라이닝을 이용한 VLIW형 마이크로컨트롤러용 최적화 컴파일러를 구현하고 그 성능을 측정한다.

  • PDF

간단한 바이패싱 회로를 보상하는 VLIW 구조 (VLIW architecture for compensating simple bypassing paths)

  • 김석주
    • 한국멀티미디어학회:학술대회논문집
    • /
    • 한국멀티미디어학회 2002년도 춘계학술발표논문집(상)
    • /
    • pp.27-32
    • /
    • 2002
  • 본 논문에서는 NOP 이 차지하는 슬롯에 의미 있는 명령어를 중복 할당하여 자료의존 관계를 해소하고 프로그램 실행 사이클을 단축시키는 명령어 중복 스케줄링 기법을 적용할 수 있는 VLIW 구조인 TiPs(Tiny Processors) 구조를 제안하였으며 TiPs는 회로의 복잡도를 증가시키지 않으면서 실행시간을 단축시켜 가상의 바이패싱 회로를 추가한 효과를 얻을 수 있다. 실험 결과 TiPs에서 명령어 중복 스케줄링 기법을 적용할 경우 8% ~ 25%의 성능 향상 효과가 있음을 알 수 있었다.

  • PDF

SIMD 명령어가 추가된 VLIW ASIP 프로세서 (SIMD Extended VLIW ASIP architecture)

  • 양승준;박상현;허인구;이종원;김용주;백윤흥
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.1589-1590
    • /
    • 2010
  • VLIW 아키텍처는 동시에 여러 개의 명령어를 수행하면서도 상대적으로 크기가 작으며 적은 전력을 소모한다는 장점 때문에 임베디드 어플리케이션을 처리하기 위해 많이 쓰이고 있다. 본 논문에서는 SIMD 명령어를 추가한 VLIW 아키텍처를 설계함으로써 동영상 처리와 같은 미디어 어플리케이션을 효과적으로 처리할 수 있도록 하였다.

VLIW 시스템에서의 최소 시간 지연을 갖는 효율적인 병렬 파이프라인 알고리즘 (An Effective Parallel and Pipelined Algorithm with Minimum Delayed Time in VLIW System)

  • 서장원;송진희;류천열;전문석
    • 한국정보처리학회논문지
    • /
    • 제2권4호
    • /
    • pp.466-476
    • /
    • 1995
  • 본 논문은 VLIW(Very Long Instruction Word) 시스템에 대한 파이프라이닝 알고리 즘 문제와 파이프라인 처리에서 발생되는 시간 지연을 최소화할 수 있는 효율적인 파 이프라인 처리 방법에 대해 서술하였다. 제안된 알고리즘은 병렬로 수행하면서 병렬 파이프라인 처리되며, 기본 오퍼레이션의 조합으로 응용 목적에 따라 다양한 기능을 수행하는 명령어의 설계가 가능하다. 본 논문에서는 프로세서의 파이프라인 알고리즘 효율성과 제안된 방법에 의해 시간 지연이 최소화됨을 다른 파이프라인 방법과의 비교 분석을 통해 증명해 보인다.

  • PDF

명령어 캐시미스중에서도 파이프라인의 고착을 피할 수 있는 VLIW 구조의 성능향상 (Performance Improvement of a VLIW ARchitecture without Pipeline-Stall during Instruction Cache Miss)

  • 지승현;박노광;김석일
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권3호
    • /
    • pp.301-312
    • /
    • 1999
  • 본 논문에서는 명령어 수준의 병렬성을 다루는 세 가지 프로세서 모델을 정의하고 각 모델별로 명령어 파이프라인을 운용하는 방법에 다른 실행사이클의 변화를 연구하였다. 본 논문에서 고려한 세가지 모델은1) 긴 명령어 인출시 캐시미스가 발생하면 명령어 파이프라인이 정지되는 전통적인 VLIW 구조, 2) 전통적인 VLIW 구조와 같이 긴 명령어 인출시 캐시미스가 발생하면 명령어 파이프라인이 정지되나 실시간에 긴 명령어를 실행 유니트로 스케줄링할 수있으므로 목적 코드에서 LNOP를 제거할 수 있는 구조 및 3)2)의 구조에서 긴 명령어를 인출하는 과정에서 캐시미스가 발생하더라도 LNOP을 분석 유니트로 제공하여 명령어 파이프라인을 계속 진행시키는 구조의 세 가지이다. 연구결과, 세 번째 구조에서 발생되는 LNOP 의 수는 첫 번째 구조와 두 번째 구조에 비하여 적어서 동일한 응용 프로그램을 처리하는데 필요한 실행사이클의 수가 가장 짧았다. 여러 가지 벤치 마크들에 대한 모의 실험에서도 세 번째 구조가 다른 구조의 프로세서에 비하여 실행사이클의 수가 가장 짧음을 확인할 수 있었다.