Abstract
SVLIW processor architectures can resolve resource collisions and data dependencies between the instructions while scheduling VLIW instructions at run-time. As a result, long NOP word instructions can be removed from the object code produced for the processor. Thus, the occurrence of cache misses on the SVLIW processor would be lesser than that on the same cache size VLIW processor. Less frequent cache misses on the SVLIW processor would incur less frequent memory access, and thus, the total execution cycles to complete an application would be shortened compared with cases on the VLIW processor. Such a feature eventually compromises effects of longer instruction pipeline stages than those of the VLIW processor. In this paper, we formulate and compare two execution cycle models of the two architectures. A simulation results show that the longer memory access cycles when cache miss occurs, the total execution cycles of SVLIW processor would be shorter than those of VLIW processor.
실시간에 VLIW 명령어를 스케줄링하는 SVLIW 프로세서 구조는 실행 중 LNOP(긴 NOP 명령어)를 삽입하여 자원 충돌이나 자료 종속 문제를 스스로 해결할 수 있다. 따라서 SVLIW 프로세서에서는 메모리나 캐시에 적재되는 목적 코드로부터 LNOP 명령어를 제거할 수 있다. 그러므로 SVLIW 프로세서에서는 같은 크기의 캐시를 가진 VLIW 프로세서에 비하여 프로그램의 실행 도중에 발생하는 캐시 미스의 발생 빈도가 적어진다. 캐시 미스가 적게 발생하면 결국 평균 메모리 참조 시간이 짧아지므로 프로그램을 수행하는데 걸리는 실행 사이클의 수가 적어지게 된다. 이러한 특징은 한편 명령어 파이프라인 단계를 늘림으로 인한 영향을 상쇄할 수 있기 때문에 전체적으로 성능을 향상시킬 수 있다. 본 논문에서는 두 가지 프로세서 구조에서 어떤 응용 프로그램을 수행할 때 소요되는 실행 사이클을 예측하는 모델을 확립하고 이를 비교하였다. 또한, 시뮬레이션 결과로부터 캐시 미스가 발생하였을 때 메모리를 참조하는데 걸리는 시간이 길어질수록 SVLIW 프로세서에서의 실행 사이클이 VLIW 프로세서의 경우에 비하여 짧아지는 것을 확인할 수 있었다.