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

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

최신 프로세서 탑재 비행제어 컴퓨터의 통합시험을 위한 프로세서 모니터링 연구 (A Study on Processor Monitoring for Integration Test of Flight Control Computer equipped with A Modern Processor)

  • 이철;김재철;조인제
    • 제어로봇시스템학회논문지
    • /
    • 제14권10호
    • /
    • pp.1081-1087
    • /
    • 2008
  • This paper describes limitations and solutions of the existing processor-monitoring concept for a military supersonics aircraft Flight Control Computer (FLCC) equipped with modern architecture processor to perform the system integration test. Safecritical FLCC integration test, which requires automatic test for thousands of test cases and real-time input/output test condition generation, depends on the processor-monitoring device called Processor Interface (PI). The PI, which relies upon on the FLCC processor's external address and data-bus data, has some limitations due to multi-fetching capability of the modern sophisticated military processors, like C6000's VLIW (Very-Long Instruction Word) architecture and PowerPC's Superscalar architecture. Several techniques for limitations were developed and proper monitoring approach was presented for modem processor-adopted FLCC system integration test.

빠른 명령어 처리가 가능한 EIS 프로세서 구조 (EIS Processor Architecture for Enhanced Instruction Processing)

  • 지승현;전중남;김석일
    • 한국통신학회논문지
    • /
    • 제25권12B호
    • /
    • pp.1967-1978
    • /
    • 2000
  • 본 논문에서는 실행 시에 긴명령어를 구성하는 각 단위 명령어를 독립적으로 스케줄링할 수 있는 EIS 프로세서 구조를 제안하였다. 단위 명령어별 독립적인 수행을 위해서, EIS 프로세서 구조는 여러 개의 연산처리기와 스케줄러의 쌍으로 구성된다. EIS 프로세서 구조내의 모든 스케줄러는 독립적으로 자료종속성이나 자원충돌 여부를 검사하여 단위 명령어를 실행할지 혹은 다음 파이프라인 사이클동안 실행을 지연시킬지를 결정한다. 또한 EIS프로세서용 목적코드는 단위 명령어들간 동기화를 위해서 모든 단위 명령어에 종속성정보를 삽입하는 특징을 지닌다. 즉, EIS 프로세서 구조는 긴명령어내의 각 단위 명령어를 독립적으로 실행시킬 수 있으므로 기존의 VLIW 프로세서 구조나 SVLIW 프로세서 구조에서의 실행지연 시간을 제거할 수 있다. 시뮬레이션을 통해서도 EIS 프로세서 구조의 실행사이클이 VLIW 프로세서 구조나 SVLIW 프로세서 구조에서의 경우보다 더 빠름을 입증할 수 있었다. 특히 실수 명령어 분포가 높은 프로그램에서 EIS 프로세서에서의 실행사이클이 다른 프로세서 구조의 경우에 비하여 현저하게 줄어드는 것을 확인할 수 있었다.

  • PDF

소프트웨어 파이프라이닝에서 레지스터 변경을 통한 성능 개선 (Improving Software Pipelining Performance Using a Register Renaming Technique)

  • 조두산
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.1642-1643
    • /
    • 2010
  • 멀티미디어 도메인의 응용 프로그램에는 풍부한 병렬성이 내재하기 때문에 VLIW (Very Long Instruction Word) 형식의 신호처리 프로세서가 많이 사용되고 있다. VLIW 프로세서를 구성하는 복수의 연산처리유닛 (processing unit, PU)의 사용률은 컴파일러의 명령어 스케쥴러의 성능에 의하여 결정된다. 명령어들 사이의 병렬성을 분석하여 동시 수행가능한 명령어들을 각기 다른 PU 에서 수행되도록 프로그램 코드를 최적화한다. 하지만 기존의 명령어 스케쥴러는 복잡한 데이터 디펜던스 그래프 (data dependence graph, DDG)를 구성하여 복수의 PU 를 충분히 사용하도록 하지 못하는 문제점을 내재하고 있다. 이는 명령어 스케쥴러가 각 레지스터 사용시간을 별도로 고려하지 않기 때문에 실제로 내재된 데이터 디펜던스 보다 복잡성이 높은 디펜던스 그래프를 구성하게 되어 스케쥴러가 올바르게 최적화된 코드 스케쥴링 결과를 제공하지 못하기 때문이다. 본 연구에서는 레지스터의 라이프타임을 다른 레지스터를 이용하여 적절히 끊어주는 것으로 데이터 디펜던스 복잡도 완화하여 시스템 성능 향상의 가능성을 보이고 있다.

Fine-Grain Real-Time Code Scheduling for VLIW Architecture

  • Chung, Tai M.;Hwang, Dae J.
    • Journal of Electrical Engineering and information Science
    • /
    • 제1권1호
    • /
    • pp.118-128
    • /
    • 1996
  • In safety critical hard real-time systems, a timing fault may yield catastrophic results. In order to eliminate the timing faults from the fast responsive real-time control systems, it is necessary to schedule a code based on high precision timing analysis. Further, the schedulability enhancement by having multiple processors is of wide spread interest. However, although an instruction level parallel processing is quite effective to improve the schedulability of such a system, none of the real-time applications employ instruction level parallel scheduling techniques because most of the real-time scheduling models have not been designed for fine-grain execution. In this paper, we present a timing constraint model specifying high precision timing constraints, and a practical approach for constructing static schedules for a VLIW execution model. The new model and analysis can guarantee timing accuracy to within a single machine clock cycle.

  • PDF

ILP 명령 스케쥴링에서의 복사 제거를 위한 낙관적 융합 기법 (Optimistic Colescing Technique for Copy Elimination in ILP Instruction Scheduling)

  • 박진표;문수묵
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제26권5호
    • /
    • pp.692-701
    • /
    • 1999
  • 수퍼스칼라(superscalar)나 VLIW 와 같은 명령어 수준 병렬화(ILP) 프로세서의 성능을 극대화하는 과감한 명령어 스케쥴링은 소프트웨어 파이프라이닝과같은 스케쥴링 과정을 거치면서 일반적인 복사 명령어 제거 기법으로 없앨 수 없는 서로 간섭하는 복사 명령을 많이 만들어내는데 루프 내부에 생성된 이러한 복사명령은 적절한 루프 펼침을 수행하여 간섭관계를 없앰으로서 제거할 수 있다. 본 논문에서는 이와 같이 루프 펼침이 수행된 루프 내부의 복사명령을 제거하는 기법으로 그래프 컬러링 상에 구현한 낙관적 융합기법을 제안한다. 그래프 컬러링에서의 융합기법은 간선의 개수가 많은 노드를 만들어 낼수 있으므로 채색성에 부정적인 영향을 주는 것으로 알려져 왔으나 본 기법에서는 융합되는 노드에 동시에 간섭하는 노드의 간선의 수가 줄어드는 긍정적인 영향을 최대한 이용하여 채색성을 높이고 융합된 노드에 대한 실제 버림(spill)이 일어나는 경우 유효 범위 분절(live range splitting)을 통하여 버림의 부담을 최대한 줄이도록 하였으며 이를 VLIW 스케쥴링 된 SPEC 정수벤치마크 루프내부의 복사 명령 제거에 적용한 결과 제거 가능한 복사 명령의 99%를 제거하면서도 버림명령은 다른 융합 기법과 비교하여 가장 적게 발생하는 우수한 결과를 얻을수 있었다.

부분 압축 명령어를 위한 캐쉬 구조의 설계 및 평가 (Design and Evaluation of Cache Structure for Semi-packed Instruction)

  • 홍원기;이승엽;김신덕
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제28권5호
    • /
    • pp.245-258
    • /
    • 2001
  • VLIW에서는 프로그램 코드를 병렬화 하는 작업이 모두 컴파일러에 의해서만 이루어진다. 따라서 병렬로 수행될 연산어들을 명시적으로 나타내 주어야 하며, 이를 위한 명령어 인코딩 방식으로 전개 인코딩 방식과 압축 인코딩 방식이 사용되어 왔다. 각 인코딩 방식들은 명령어의 적재 및 검색을 위해 서로 다른 캐쉬 구조를 필요로 하는데, 전개 인코딩 방식으로 비압축 캐쉬를 압축 인코딩 방식으로 압축 캐쉬를 사용하고 있다. 그러나 이들은 각각 무효 연산어로 인한 메모리 활용 효율 저하와 복원 과정으로 인한 명령어 인출 오버헤드의 증가라는 문제점을 안고 있다. 본 논문에서는 부분적으로 명령어 길이를 일정하게 유지하는 부분 압축 인코딩을 사용해 메모리 활용 효율을 높이는 동시에 명령어 인출 오버헤드를 줄일 수 있는 분할 캐쉬 구조를 제안한다. 각 캐쉬 구조를 구현하는데 필요한 칩 영역을 계산하여, 분할 캐쉬가 비교적 비용 효율적인 캐쉬 구조임을 확인하였다. 모의 실험을 통한 메모리 활용 효율 측정 결과 하드웨어 비용의 증가를 고려하더라도 분할 캐쉬는 비압축 캐쉬에 비해 최고 약 3배의 메모리 활용 효율을 얻을 수 있었다. 각 캐쉬 구조를 일차 캐쉬로 하는 VLIW 시스템들의 성능 측정 결과는 TCSC(블록 집중형 분할 캐쉬)를 사용한 시스템이 비용 대비 성능 면에서 가장 우수한 것으로 나타났다.

  • PDF

루프를 효과적으로 처리하는 PASC 프로세서 구조 (PASC Processor Architecture for Enhanced Loop Execution)

  • 지승현;박노광;전중남;김석일
    • 한국정보처리학회논문지
    • /
    • 제6권5호
    • /
    • pp.1225-1240
    • /
    • 1999
  • This paper proposes PASC(PArtitioned SCHeduler) processor architecture that equips with a number of functional unit and an individual scheduler paris. Every scheduler of the PASC processor can determine whether a unit instruction can be issued to the associated functional unit or it is to be waited until next cycle caused by a resource collision or data dependencies. In the PASC processor, only the functional unit with a resource collision or data dependencies waits by executing a NOP(No OPeration) instruction and the other functional units execute their own instructions. Therefore we can expect the code compaction effect on the PASC processor. Thus, the last instruction of a loop at certain iteration and the very first instruction of the loop at the next iteration can be scheduled simultaneously if the two instructions do not incur any resource collision or data dependencies. Therefore, we can expect that such two instructions without any resource collision and data dependencies are packed into the same very long instruction word and thus, the two instructions are executed concurrently at run time. As a result, we can shorten execution cycles of a loop comparing to the execution of the loop on a traditional VLIW or SVLIW processor architecture. Simulation result also promises faster execution of loops on a PASC processor architecture than those on a VLIW and SVLIW processor architecture.

  • PDF

ILP 마이크로세서에서 메모리 주소 모호성 제거의 성능 영향 (Effect of Memory Disambiguation for ILP Microprocessors)

  • 정회목;양병선;문수묵
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1998년도 가을 학술발표논문집 Vol.25 No.2 (3)
    • /
    • pp.694-696
    • /
    • 1998
  • ILP마이크로세서를 위한 스테쥴링 과정에서 메모리 명령어가 프로그램의 임계 경로로에 존재할 경우에 이의 스케쥴링은 성능 향상에 중요한 문제 중에 하나이다. 메모리 명령어의 원활한 코드 이동을 위해서는 장애가 되는 명령어들의 메모리 주소간의 의존성의 분석을 필요로 한다. 본 논문에서는 컴파일 시간에 메모리 주소간의 의존성 분석을 통한 성능 향상도를 VLIW환경 하에서 비교한다. 실험결과. 컴파일 시간에 메모리 주소 모호성 제거기를 사용한 경우 16ALU프로세서에서 정수 벤치마크 프로그램에 대해서 기하 평균으로 약 3.6%의 성능 향상이 가능하다.

  • PDF