• Title/Summary/Keyword: 명령어 수준 시뮬레이터

Search Result 18, Processing Time 0.023 seconds

Measurement and Analysis of Power Dissipation of Value Speculation in Superscalar Processors (슈퍼스칼라 프로세서에서 값 예측을 이용한 모험적 실행의 전력소모 측정 및 분석)

  • 이상정;이명근;신화정
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.30 no.12
    • /
    • pp.724-735
    • /
    • 2003
  • In recent high-performance superscalar processors, the result value of an instruction is predicted to improve instruction-level parallelism by breaking data dependencies. Using those predicted values, instructions are speculatively executed and substantial performance can be gained. It, however, requires additional power consumption due to the frequent access and update of the value prediction table. In this paper, first, the trade-off between the performance improvement and the increased power consumption for value prediction is measured and analyzed. And, in order to reduce additional power consumption without performance loss, the technique of controlling speculative execution with confidence counter and predicting useful instructions is developed. Also, in order to prove the validity, a tool is developed that can simulate processor behavior at cycle-level and measure total energy consumption and power consumption per cycle.

A Predicate-Sensitive Scheduling Algorithm in Instruction-Level Parallelism Processors (ILP 프로세서를 위한 조건실행 지원 스케쥴링 알고리즘)

  • Yoo, Byung-Kang;Lee, Sang-Jeong
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.1
    • /
    • pp.202-214
    • /
    • 1998
  • Exploitation of instruction-level parallelism(ILP) is an effective mechanism for improving the performance of modern super-scalar and VLIW processors. Various software techniques can be applied to increase ILP. Among these techniques, predicated execution is the one that increases the degree of ILP by allowing instructions from different basic blocks to be converted to a single basic block by removing branch instructions. In this paper, a global predicate-sensitive scheduling algorithm is proposed to improve the performance for ILP processors that support predicated execution. In order to examine the performance of proposed algorithm, a C compiler and a simulator are developed. By simulating various benchmark programs with the compiler and the simulator, the performance results of this algorithm are measured and the effectiveness of the algorithm is verified. As a result of measure performance with I, 2, 4 issue execution, this study was confirmed average performance by 20% or more.

  • PDF

Implementation of a Compiler for VLIW rchitecture (VLIW 구조를 위한 컴파일러의 구현)

  • Choe, Seong-Uk;Kim, Gyeong-Hun;Park, Myeong-Sun
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.5 no.1
    • /
    • pp.109-121
    • /
    • 1999
  • VLIW(Very Long Instruction Word)기술을 이용한 프로세서는 최근에 다른 어떠한 형태의 프로세서보다 좋은 성능을 보일 것으로 기대되고 있다. 컴파일러가 전역적인 분석을 진행하여 명령어 수준의 병렬성을 , VLIW 구조를 위한 많은 컴파일 기술이 연구되어왔다. 컴파일 기술의 연구에 대해 보다 신뢰성 있는 결과를 얻기 위해서는 자신의 새로운 기술이 첨가될 수 있는 기본 토대로서 VLIW 컴파일러 및 실험환경을 구축하는 것이 필요하다. 본 논문에서는 VLIW 프로세서를 위해 GURPR을 기반으로 한 소프트웨어 파이프라이닝등 기존의 병렬성 증진 최적화 기법등을 포함한 병렬화 컴파일러를 개발하였고, 시뮬레이터 환경에서 테스트하였다. 실험 결과, 몇몇 벤치마크는 최대 30% 까지 실행시간이 시간이 단축될 수 있음을 보였다. 본 컴파일러 시스템은 컴파일링 기술에 대한 연구에 있어 기존 모듈을 개선하는 등에 대해 많은 도움을 줄 것이며 향후 새로운 연구결과와 구현이 본 컴파일러 환경에 추가되어 성능 향상 정도를 실험할 수 있을 것으로 기대하고 있다.

Simulation-driven Performance Estimation of Software Function Blocks for System Level Design (시스템 레벨 설계를 위한 소프트웨어 기능 블록의 시뮬레이션 기반 성능 예측 방법)

  • 권성남;오현옥;하순회
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.10c
    • /
    • pp.385-387
    • /
    • 2002
  • 이 논문에서 우리는 각 기능 블록의 성능 분석 방법을 제안하고 어떻게 하드웨어와 소프트웨어의 합성을 위한 기능 블록의 성능을 기록한 데이터베이스를 구축하는지를 설명하겠다. 기능 블록의 성능을 예측하는 것은 초기 설계 단계에서 주어진 제약을 만족시키기 위해 어떤 기능 블록이 개선되어야 할지 결정하는 기준을 제시하기 때문에 내장형 시스템의 합성에 있어서 중요하다. 예측하는 도구로 측정에 시간이 많이 걸리지만 정확한 명령어 수준 시뮬레이터(ISS : instruction set simulator)를 사용하였다. 데이터베이스를 구축하는데 있어선 각 기능 블록을 요소(factor)라 부르는 다른 상태를 두어서 차별화 하였다. 제안한 예측 방법은 개발중인 통합설계 환경에 구현되었으며 H.263 인코더에 적용하여 0.03% 이내의 오차를 얻었다.

  • PDF

Accurate Prediction of Polymorphic Indirect Branch Target (간접 분기의 타형태 타겟 주소의 정확한 예측)

  • 백경호;김은성
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.41 no.6
    • /
    • pp.1-11
    • /
    • 2004
  • Modern processors achieve high performance exploiting avaliable Instruction Level Parallelism(ILP) by using speculative technique such as branch prediction. Traditionally, branch direction can be predicted at very high accuracy by 2-level predictor, and branch target address is predicted by Branch Target Buffer(BTB). Except for indirect branch, each of the branch has the unique target, so its prediction is very accurate via BTB. But because indirect branch has dynamically polymorphic target, indirect branch target prediction is very difficult. In general, the technique of branch direction prediction is applied to indirect branch target prediction, and much better accuracy than traditional BTB is obtained for indirect branch. We present a new indirect branch target prediction scheme which combines a indirect branch instruction with its data dependent register of the instruction executed earlier than the branch. The result of SPEC benchmark simulation which are obtained on SimpleScalar simulator shows that the proposed predictor obtains the most perfect prediction accuracy than any other existing scheme.

Sepculative Updates of a Stride Value Predictor in Wide-Issue Processors (와이드 이슈 프로세서를 위한 스트라이드 값 예측기의 모험적 갱신)

  • Jeon, Byeong-Chan;Lee, Sang-Jeong
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.28 no.11
    • /
    • pp.601-612
    • /
    • 2001
  • In superscalar processors, value prediction is a technique that breaks true data dependences by predicting the outcome of an instruction in order to exploit instruction level parallelism(ILP). A value predictor looks up the prediction table for the prediction value of an instruction in the instruction fetch stage, and updates with the prediction result and the resolved value after the execution of the instruction for the next prediction. However, as the instruction fetch and issue rates are increased, the same instruction is likely to fetch again before is has been updated in the predictor. Hence, the predictor looks up the stale value in the table and this mostly will cause incorrect value predictions. In this paper, a stride value predictor with the capability of speculative updates, which can update the prediction table speculatively without waiting until the instruction has been completed, is proposed. Also, the performance of the scheme is examined using Simplescalar simulator for SPECint95 benchmarks in which our value predictor is added.

  • PDF

Efficient Verification Method with Random Vectors for Embedded Control RISC Cores (내장형 제어 RISC코어를 위한 효율적인 랜덤 벡터 기능 검증 방법)

  • Yang, Hun-Mo;Gwak, Seung-Ho;Lee, Mun-Gi
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.38 no.10
    • /
    • pp.735-745
    • /
    • 2001
  • Processors require both intensive and extensive functional verification in their design phase due to their general purpose. The proposed random vector verification method for embedded control RISC cores meets this goal by contributing assistance for conventional methods. The proposed method proved its effectiveness during the design of CalmRISCTM-32 developed by Yonsei Univ. and Samsung. It adopts a cycle-accurate instruction level simulator as a reference model, runs simulation in both the reference and the target HDL and reports errors if any difference is found between them. Consequently, it successfully covers errors designers easily pass over and establishes other new error check points.

  • PDF

Design of a Hybrid Data Value Predictor with Dynamic Classification Capability in Superscalar Processors (슈퍼스칼라 프로세서에서 동적 분류 능력을 갖는 혼합형 데이타 값 예측기의 설계)

  • Park, Hee-Ryong;Lee, Sang-Jeong
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.27 no.8
    • /
    • pp.741-751
    • /
    • 2000
  • To achieve high performance by exploiting instruction level parallelism aggressively in superscalar processors, it is necessary to overcome the limitation imposed by control dependences and data dependences which prevent instructions from executing parallel. Value prediction is a technique that breaks data dependences by predicting the outcome of an instruction and executes speculatively its data dependent instruction based on the predicted outcome. In this paper, a hybrid value prediction scheme with dynamic classification mechanism is proposed. We design a hybrid predictor by combining the last predictor, a stride predictor and a two-level predictor. The choice of a predictor for each instruction is determined by a dynamic classification mechanism. This makes each predictor utilized more efficiently than the hybrid predictor without dynamic classification mechanism. To show performance improvements of our scheme, we simulate the SPECint95 benchmark set by using execution-driven simulator. The results show that our scheme effect reduce of 45% hardware cost and 16% prediction accuracy improvements comparing with the conventional hybrid prediction scheme and two-level value prediction scheme.

  • PDF