버스 분할 기법은 통신이 많은 모듈들을 가까이 배치하고 필요한 버스 단편만 사용함으로 버스 에너지 소비를 줄인다. 그러나 MPSoC와 같은 다중 프로세서 플랫폼에서는 캐시 일관성을 유지하기 위하여 모든 프로세서에서 버스 트랜잭션을 알아야 하므로, 기존의 버스 분할 기법을 적용할 수 없다. 본 논문에서는 공유 메모리 기반의 MPSoC 플랫폼에서 버스 에너지를 절감시키기 위한 버스 분할 기법을 제안한다. 제안된 버스 분할 기법은 비 공유 메모리와 공유 메모리의 버스를 분할함으로써, 캐시 일관성을 유지하며 비 공유 메모리를 참조할 때 소비하는 버스 에너지를 최소화시킨다. 또한, 태스크별 버스 트랜잭션 횟수를 기반하여 태스크를 할당함으로써, 공유 메모리를 참조할 때 소비하는 버스 에너지를 절감시키는 캐시 일관성을 고려한 태스크 할당 기법을 제안한다. 시뮬레이션을 통한 실험에서 제안된 버스 분할 기법은 비 공유 메모리 참조시의 버스 에너지를 최대 83%까지 절감시키며, 태스크 할당 알고리즘은 공유 메모리 참조시의 버스 에너지를 최대 36%까지 절감시키는 효과가 있음을 보여준다. 그럼으로 다중 프로세서 시스템에서도 버스 분할 기법을 적용하여 버스 에너지 절감 효과를 볼 수 있으며, 캐시 일관성을 고려한 태스크 할당 기법을 통해 추가적으로 버스 에너지를 절감할 수 있음을 보여준다.
버스 분할 기법은 통신이 많은 모듈들을 가까이 배치하고 필요한 버스 단편만 사용함으로 버스 에너지 소비를 줄인다. 그러나 MPSoC와 같은 다중 프로세서 플랫폼에서는 캐시 일관성을 유지하기 위하여 모든 프로세서에서 버스 트랜잭션을 알아야 하므로, 기존의 버스 분할 기법을 적용할 수 없다. 본 논문에서는 공유 메모리 기반의 MPSoC 플랫폼에서 버스 에너지를 절감시키기 위한 버스 분할 기법을 제안한다. 제안된 버스 분할 기법은 비 공유 메모리와 공유 메모리의 버스를 분할함으로써, 캐시 일관성을 유지하며 비 공유 메모리를 참조할 때 소비하는 버스 에너지를 최소화시킨다. 또한, 태스크별 버스 트랜잭션 횟수를 기반하여 태스크를 할당함으로써, 공유 메모리를 참조할 때 소비하는 버스 에너지를 절감시키는 캐시 일관성을 고려한 태스크 할당 기법을 제안한다. 시뮬레이션을 통한 실험에서 제안된 버스 분할 기법은 비 공유 메모리 참조시의 버스 에너지를 최대 83%까지 절감시키며, 태스크 할당 알고리즘은 공유 메모리 참조시의 버스 에너지를 최대 36%까지 절감시키는 효과가 있음을 보여준다. 그럼으로 다중 프로세서 시스템에서도 버스 분할 기법을 적용하여 버스 에너지 절감 효과를 볼 수 있으며, 캐시 일관성을 고려한 태스크 할당 기법을 통해 추가적으로 버스 에너지를 절감할 수 있음을 보여준다.
Bus splitting technique reduces bus energy by placing modules with frequent communications closely and using necessary bus segments in communications. But, previous bus splitting techniques can not be used in MPSoC platform, because it uses cache coherency protocol and all processors should be able ...
Bus splitting technique reduces bus energy by placing modules with frequent communications closely and using necessary bus segments in communications. But, previous bus splitting techniques can not be used in MPSoC platform, because it uses cache coherency protocol and all processors should be able to see the bus transactions. In this paper, we propose a bus splitting technique for MPSoC platform to reduce bus energy. The proposed technique divides a bus into several bus segments, some for private memory and others for shared memory. So, it minimizes the bus energy consumed in private memory accesses without producing cache coherency problem. We also propose a task allocation technique considering cache coherency protocol. It allocates tasks into processors according to the numbers of bus transactions and cache coherence protocol, and reduces the bus energy consumption during shared memory references. The experimental results from simulations say the bus splitting technique reduces maximal 83% of the bus energy consumption by private memory accesses. Also they show the task allocation technique reduces maximal 30% of bus energy consumed in shared memory references. We can expect the bus splitting technique and the task allocation technique can be used in multiprocessor platforms to reduce bus energy without interference with cache coherency protocol.
Bus splitting technique reduces bus energy by placing modules with frequent communications closely and using necessary bus segments in communications. But, previous bus splitting techniques can not be used in MPSoC platform, because it uses cache coherency protocol and all processors should be able to see the bus transactions. In this paper, we propose a bus splitting technique for MPSoC platform to reduce bus energy. The proposed technique divides a bus into several bus segments, some for private memory and others for shared memory. So, it minimizes the bus energy consumed in private memory accesses without producing cache coherency problem. We also propose a task allocation technique considering cache coherency protocol. It allocates tasks into processors according to the numbers of bus transactions and cache coherence protocol, and reduces the bus energy consumption during shared memory references. The experimental results from simulations say the bus splitting technique reduces maximal 83% of the bus energy consumption by private memory accesses. Also they show the task allocation technique reduces maximal 30% of bus energy consumed in shared memory references. We can expect the bus splitting technique and the task allocation technique can be used in multiprocessor platforms to reduce bus energy without interference with cache coherency protocol.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
그러나 기존의 연구들은 단일 프로세서 환경만을 고 려하여, 캐시 일관성 프로토콜을 사용하는 MPSoC에 버 스 분할 기법을 적용하기 위해서는 캐시 일관성 프로토 콜과 버스 분할 기법간의 충돌 문제를 해결해야 하며, 본 논문은 이러한 충돌 문제를 해결하여 MPSoC에서 버스 분할 기법을 적용하는 방법을 제안한다. 본 논문의 기여 부분은 다음과 같다.
본 절에서는 본 논문에서 기본 모델로 가정하는 타겟 MPSoC 플랫폼의 구조를 기술한다. 다음절에서 설명되 는 버스 에너지 절감 기법들은 타겟 MPSoC와 같은 구 조를 가지는 MPSoC 플랫폼에서의 버스 에너지 절감을 위하여 제안된다.
본 논문에서는 공유 메모리 기반의 MPSoC 플랫폼에 서 소비되는 버스 에너지를 절감시키기 위한 버스 분할 기법을 제안하고 동작 모델을 설명하였다. 또한, 캐시 일관성을 고려한 태스크 할당 기법을 함께 제안하였다.
본 논문에서는 캐시 일관성 프로토콜을 사용하는 MPSoC 플랫폼에 버스 분할 기법을 적용하여 버스 에 너지를 절감시키는 기법을 제안한다. 메모리 참조 형태 에 따라 버스 분할자를 제어하여 캐시 일관성 프로토콜 과 버스 분할 기법간의 충돌을 해결한다.
단일의 공유 버스 구조에서는 프로세서가 참조하는 메모리가 비 공유 메모리거나 공유 메모리에 상관없이 메모리를 참조할 때마다 버스의 모든 부분이 사용되고, 전체 버스에 해당하는 에너지를 소비하는 단점을 가진 다. 본 절에서는 버스 에너지롤 절감시키기 위한 두 가 지 기법들을 제안한다. 하나는 프로세서의 메모리 참조 형태를 고려한 버스 분할 기법이며, 다른 하나는 태스크 의 공유 메모리 참조 특성과 캐시 일관성을 함께 고려 한 태스크 할당 기법이다.
본 절에서는 본 논문에서 기본 모델로 가정하는 타겟 MPSoC 플랫폼의 구조를 기술한다. 다음절에서 설명되 는 버스 에너지 절감 기법들은 타겟 MPSoC와 같은 구 조를 가지는 MPSoC 플랫폼에서의 버스 에너지 절감을 위하여 제안된다.
본 절에서는 시뮬레이션을 통해 제안한 버스 분할 기 법과 캐시 일관성을 고려한 태스크 할당 기법의 버스 에너지 절감 효과를 평가한다.
라이트-스루 무효화 프로토콜을 사용할 때는 캐시 일관성을 위하여 공유 메모리 쓰기를 위한 버스 트랜잭션에서는 모든 프로세서가 참조되는 메모리의 주소를 알게 하기 위하여, 모든 버스 단편들을 사용해야 하기 때문이다. 본 절에서는 이러한 캐시 일관 성 프로토콜을 고려하여 분할된 버스에서 공유 메모리 참조에 의한 버스 에너지를 최소화 시키는 태스크 할당 기법을 제안한다.
가설 설정
그림 10은 각 태스크별로 통신량을 분포 식에 따라 다르게 주었을 경 우, 캐시 일관성을 고려한 태스크 할당 기법을 적용하 였을 때 소비되는 버스 에너지를 보여준다. 각 태스크 의 읽기와 쓰기는 모두 같은 횟수로 수행된다고 가정하 였다.
타겟 MPSoC는 다수의 프로세서, 메모리 모듈, 중재자로 구성되며(MPSoC에는 이외에도 외부 장치 제어기, 인터럽트 제어기 등의 추가적인 모듈 이 존재하나, 표현의 단순화를 위하여 메모리 참조와 관 련된 모듈만 표시하였다), 모듈들은 하나의 공유 버스로 연결되어 있다. 프로세서로는 ARM, MIPS 둥의 범용 프로세서나 DSP, HW 가속기 등과 같은 특수 목적용 프로세서가 사용될 수 있으나, 본 논문에서는 모든 프로 세서가 동일한 형태의 프로세서라고 가정한다. 각 프로 세서는 캐시를 포함하고 있으며, 캐시 일관성 유지를 위 하여 라이트—스루 무효화(write-through invalidation) 방식의 수누핑 기반 프로토콜[8]을 사용한다.
제안 방법
그러나 이 방식에서는 다중 동시 접근을 통한 버스의 성능 향 상에 초점이 맞추어져 있다. Lahiri와 Raghunathan⑹ 은 실제 AMBA 버스의 사양을 시뮬레이터로 구현하여, 여러 가지 저전력 버스 기법들의 효율성을 실험을 통해 제시하였다. 실험 결과는 버스 분할 기법을 통해 전체 버스 시스템에서 16%의 에너지 절감효과가 있고, 버스 라인에 대해서는 70% 가량의 에너지 절감효과가 있는 것을 보여주고 있다.
MPSoC 플랫폼의 버스 소모를 측정하기 위하여 시뮬 레이션 기반의 버스 에너지 측정 환경을 구축하였다. 그 림 6은 실험에 사용된 시뮬레이션 환경을 보여준다.
프로세서의 개수는 태스크의 개수와 동일하게 설정하였 고, 각 태스크의 메모리 참조에 의한 버스 트랜잭션 횟 수는 태스크별로 차등하여 설정하였다. 각 태스크별 버 스 트랜잭션 횟수 분포 모델로는 균등 분포(uniform distribution), 다항식 분포(polynomial distribution), 지 수 분포(exponential distribution) 이렇게 세 가지 모델 을 적용하였다. 아래의 식은 각 태스크별 버스 트랜잭션 횟수에 대한 분포식이다.
본 논문의 기여 부분은 다음과 같다. 공유 메모리 기반의 MPSoC 의 메모리 참조 특성을 고려하여, 버스 분할 기법을 통 한 버스 에너지 절감 방법을 제안한다. 메모리 참조 형 태에 따른 버스 분할자의 제어 방식을 통해 버스 분할 구조와 캐시 일관성 프로토콜의 층돌 문제를 해결함으 로써, 캐시 일관성 프로토콜을 사용하는 MPSoC 환경에 서 버스 분할 기법올 적용하여 버스 에너지 절감 효과 를 제공한다.
저자들은 패스 트랜지스터로 버스 를 여러 개의 버스 단편으로 나누는 방식을 제안하였다. 그리고 그래프 알고리즘을 사용하여 통신량이 많은 장 치들을 인접한 버스 단편에 위치시켜 버스 에너지 소비 를 최소한으로 줄이는 최적의 버스 위상을 찾았다. Hsieh오卜 Pedram[4]은 분할 버스 구조에서 최소 에너지 소비를 위해 버스에 연결된여러 개의 모듈들을 어떻게 두 부분으로 분할할 것인가를 확률적인 모델을 기반으 로 하는 방안을 제시하였으며, 실험을 통해 공유 버스와 비교해 분할 버스가 16%〜50% 정도의 에너지 절약 효 과가 있다고 주장하고 있다.
분할 버스에서 버스 에너지는 버스 단편과 분할자에 서 소모되는 에너지의 합으로 계산되므로, 분할 버스의 에너지를 정확히 측정하기 위해서는 분할자의 소비 에 너지도 고려하여야 한다. 다만, 하나의 분할자가 소비하 는 에너지는 고정적이나, 버스 단편 하나의 소비 에너 지는 버스의 길이에 따라 가변이므로, 분할자의 에너지 를 버스 단편에 기준한 상대적 값으로 변화시켜 분할 버스에서의 버스 에너지 소모를 측정하였다. 그림 8은 분할자의 에너지를 포함했을 때 분할 버스에서 소비되 는 에너지를 보여준다, 5개의 막대가 하나의 프로ZL램 에 대한 버스 에너지를 나타낸다.
그러나 각 버스 트랜잭션 분포 식의 값과 계수인 값에 따라서는 별다른 차이를 보이지 않고 있다. 그러므로 전체 버스 트랜재션 횟수의 크기와 태스크 할당 기법을 통한 에너지 절감 효과와는 상관관 계가 없음을 알 수 있다・
다음으로 공유 메모리 읽기와 쓰기 횟수에 따른 버 스 에너지 소비의 차이를 분석하였다
. 그림 11은 읽기 와 쓰기의 비율에 따라서 태스크 할당을 통한 에너지 절감 효과가 어느 정도 되는지를 보여주는 결과이다.
그럼으로써, 캐시 일관성 문제가 없는 버스 트랜잭션의 소비 에너지 를 절감시킨다. 또한, 캐시 일관성 문제가 발생하는 버 스 트랜잭션의 에너지를 최소화시키기 위하여 캐시 일 관성 프로토콜을 고려한 태스크 할당 기법을 제안한다. 시뮬레이션을 통한 실험을 통해 제안된 기법들이 버스 에너지를 감소시킴을 보여준다.
메모리 참조 형 태에 따른 버스 분할자의 제어 방식을 통해 버스 분할 구조와 캐시 일관성 프로토콜의 층돌 문제를 해결함으 로써, 캐시 일관성 프로토콜을 사용하는 MPSoC 환경에 서 버스 분할 기법올 적용하여 버스 에너지 절감 효과 를 제공한다. 또한, 캐시 일관성 프로토콜을 고려하여 캐시 일관성 문제가 발생하는 버스 트랜잭션의 소비 에 너지를 최소화시키는 태스크 할당 기법을 제안한다. 태 스크 할당 기법은 캐시 일관성을 고려한 태스크별 버스 트랜잭션 횟수를 분석하고, 이를 기반하여 버스 트랜잭 션이 많은 태스크를 공유 메모에 가까운 프로세서에 할 당함으로써, 프로세서가 공유 메모리를 참조할 때 소비 하는 버스 에너지를 절감한다.
본 논문에서는 공유 메모리 기반의 MPSoC 플랫폼에 서 소비되는 버스 에너지를 절감시키기 위한 버스 분할 기법을 제안하고 동작 모델을 설명하였다. 또한, 캐시 일관성을 고려한 태스크 할당 기법을 함께 제안하였다. 제안된 버스 분할 기법은 비 공유 메모리와 공유 메모 리의 버스를 분할함으로써, 캐시 일관성을 유지하며 비 공유 메모리를 참조할 때 소비하는 버스 에너지를 최소 화시며, 태스크 할당 기법은 태스크별 유효 버스 트랜잭 션 횟수를 기반하여 태스크를 할당함으로써, 공유 메모 리를 참조할 때 소비하는 버스 에너지를 최소화시킨다.
먼저, 분포 식에 따른 에너지 소모 분석 및 태스크 개中에 따른 에너지 소모를 분석하였다. 그림 10은 각 태스크별로 통신량을 분포 식에 따라 다르게 주었을 경 우, 캐시 일관성을 고려한 태스크 할당 기법을 적용하 였을 때 소비되는 버스 에너지를 보여준다.
먼저, 제안된 버스 분할 방식에 의한 버스 에너지의 최대 감소량을 확인하기 위하여, 분할자의 소모 에너지 를 무시했을 때의 버스 에너지를 측정하였다. 그림 7은 버스 에너지의 최대 감소량을 보여준다.
공유 메모리 기반의 MPSoC 의 메모리 참조 특성을 고려하여, 버스 분할 기법을 통 한 버스 에너지 절감 방법을 제안한다. 메모리 참조 형 태에 따른 버스 분할자의 제어 방식을 통해 버스 분할 구조와 캐시 일관성 프로토콜의 층돌 문제를 해결함으 로써, 캐시 일관성 프로토콜을 사용하는 MPSoC 환경에 서 버스 분할 기법올 적용하여 버스 에너지 절감 효과 를 제공한다. 또한, 캐시 일관성 프로토콜을 고려하여 캐시 일관성 문제가 발생하는 버스 트랜잭션의 소비 에 너지를 최소화시키는 태스크 할당 기법을 제안한다.
버스 에너지 측정기는 앞에서 정의한 버스 에너지 모델과 분 할자 하나의 소비 에너지를 파라미터로 입력 받는다, 이 는 분할자의 에너지에 의한 분할 버스에서의 에너지 절 감 효과를 검증하기 위해서이다. 버스 에너지 측정기는 버스 에너지 모델에 각 태스크의 버스 트랜잭션 횟수와 태스크 할당 정보를 적용하여 버스에서 소모된 에너지 를 측정한다.
항식 분포일 경우에는 12, 14, 16, 18이고, 지수 분포일 경우에는 12, 14, 18, 26로 변화한다. 실험에서는 값을 10으로 고정시키고, 값을 4, 5, 6, 7로 변화시켜 가면서 결과를 분석해 보았다. 결과 그래프에 표시된 에너지는 공유 메모리의 읽기, 쓰기 시 소모되는 버스 에너지만을 고려한 그래프이다.
MPSoC 시뮬레이터는 실행할 태스크 집합과 프로세서 의 개수를 입력 받아, 태스크를 각 프로세서에 할당하고 실행한다. 실험에서는 예제의 태스크 수에 일치하도록 시뮬레이터의 프로세서 수를 입력하였다. MPSoC 시뮬 레이터는 실행 후, 각 태스크별 버스 트랜잭션 정보를 출력한다.
크로 널리 사용되는 MiBench [13]의 jpeg, susan, adpcm, fft에 대하여 버스 에너지를 측정하였다. 이들 프로그램들의 원본이 단일 태스크로 작성되었기 때문에 MPSoC 환경에 적용하기 위하여 다중 태스크로 수정하 였다.
버스를 여러 개의 버스 단편으로 분할시켜 에너지 소 비를 줄이는 버스 분할 기법은 Chen et aL⑶에 의해 처음으로 제안되었다. 저자들은 패스 트랜지스터로 버스 를 여러 개의 버스 단편으로 나누는 방식을 제안하였다. 그리고 그래프 알고리즘을 사용하여 통신량이 많은 장 치들을 인접한 버스 단편에 위치시켜 버스 에너지 소비 를 최소한으로 줄이는 최적의 버스 위상을 찾았다.
또한, 캐시 일관성을 고려한 태스크 할당 기법을 함께 제안하였다. 제안된 버스 분할 기법은 비 공유 메모리와 공유 메모 리의 버스를 분할함으로써, 캐시 일관성을 유지하며 비 공유 메모리를 참조할 때 소비하는 버스 에너지를 최소 화시며, 태스크 할당 기법은 태스크별 유효 버스 트랜잭 션 횟수를 기반하여 태스크를 할당함으로써, 공유 메모 리를 참조할 때 소비하는 버스 에너지를 최소화시킨다. 시뮬레이션을 통한 실험에서 제안된 버스 분할 기법은 비 공유 메모리 참조를 위한 버스 에너지를 기존의 공 유 버스에 비해 최대 83%까지 절감시키며, 캐시 일관성 을 고려한 태스크 할당 기법은 공유 메모리를 위한 버 스 트랜잭션에서 최대 36%의 버스 에너지를 절감시킴 을 알 수 있었다.
제안한 태스크 할당 기법에서 에너지 절감 효과에 영 향을 미치는 요소들을 분석하기 위하여 다양한 버스 트 랜잭션 횟수를 가잔 태스크들을 임의로 생성하여 버스 에너지를 분석하였다. 태스크 개수 4개, 6개, 8개에 대하 여, 각각의 경우에 소비되는 버스 에너지를 살펴보았다.
캐시 일관성을 고려한 태스크 할당 기법에 의한 에너 지 절감 효과를 검증하기 위하여, 다양한 태스크 할당 기법에 따른 버스 에너지를 측정하였다. 그림 9는 다양 한 태스크 할당 기법에 따른 버스 에너지의 변화를 보 여준다.
제안한 태스크 할당 기법에서 에너지 절감 효과에 영 향을 미치는 요소들을 분석하기 위하여 다양한 버스 트 랜잭션 횟수를 가잔 태스크들을 임의로 생성하여 버스 에너지를 분석하였다. 태스크 개수 4개, 6개, 8개에 대하 여, 각각의 경우에 소비되는 버스 에너지를 살펴보았다. 프로세서의 개수는 태스크의 개수와 동일하게 설정하였 고, 각 태스크의 메모리 참조에 의한 버스 트랜잭션 횟 수는 태스크별로 차등하여 설정하였다.
대상 데이터
크로 널리 사용되는 MiBench [13]의 jpeg, susan, adpcm, fft에 대하여 버스 에너지를 측정하였다. 이들 프로그램들의 원본이 단일 태스크로 작성되었기 때문에 MPSoC 환경에 적용하기 위하여 다중 태스크로 수정하 였다.
이론/모형
프로세서로는 ARM, MIPS 둥의 범용 프로세서나 DSP, HW 가속기 등과 같은 특수 목적용 프로세서가 사용될 수 있으나, 본 논문에서는 모든 프로 세서가 동일한 형태의 프로세서라고 가정한다. 각 프로 세서는 캐시를 포함하고 있으며, 캐시 일관성 유지를 위 하여 라이트—스루 무효화(write-through invalidation) 방식의 수누핑 기반 프로토콜[8]을 사용한다. 메모리는 하나의 프로세서에서 독점적으로 사용되는 비 공유 메 모리와 프로세서간 통신에 사용되는 공유 메모리로 구 분된다.
성능/효과
그림 5는 버스 분할 기법을 적용한 타겟 MPSoC에 서 캐시 일관성을 고려하지 않았을 때와 이를 고려하 였을 때, 버스 에너지 최적화를 위하여 태스크를 할당 한 예제를 보여준다. 그림에서 하나의 버스 단편에서 소비되는 에너지는 1E, 분할자의 에너지는 0으로 가정 하고 버스 에너지를 계산하면, 기존의 방식대로 공유 메모리 참조 횟수만을 고려하여 태스크를 할당하였을 경우 버스의 에너지는 357E이나, 캐시 일관성을 고려 하여 태스크를 할당하였을 때는 338E로 기존의 방식보 다 5%정도의 버스 에너지 절감 효과가 있음을 알 수 있다.
그러나 버스 트랜잭션 분포가 다항식 분포 와 지수 분포가 되면 에너지 소모가 확연하게 줄어드는 것을 볼 수 있다. 다항식 분포의 경우, 제안한 태스크 할당 방법을 사용했을 경우 평균 18%정도의 에너지 절 감 효과가 있음을 알 수 있다. 지수 분포의 경우에는 50%정도의 에너지 절감 효과가 있다.
분할자에 의한 에너지 소모를 무시할 경우, 제안된 분 할 버스에서 소모된 에너지는 공유 버스의 22%〜37% 로 감소하였다. 메모리 참조 형태에 따른 감소폭을 보 면, 비 공유 메모리를 읽거나 쓸 때 버스 에너지가 공유버스의 17%〜20%로 감소한다.
제안된 버스 분할 기법은 비 공유 메모리와 공유 메모 리의 버스를 분할함으로써, 캐시 일관성을 유지하며 비 공유 메모리를 참조할 때 소비하는 버스 에너지를 최소 화시며, 태스크 할당 기법은 태스크별 유효 버스 트랜잭 션 횟수를 기반하여 태스크를 할당함으로써, 공유 메모 리를 참조할 때 소비하는 버스 에너지를 최소화시킨다. 시뮬레이션을 통한 실험에서 제안된 버스 분할 기법은 비 공유 메모리 참조를 위한 버스 에너지를 기존의 공 유 버스에 비해 최대 83%까지 절감시키며, 캐시 일관성 을 고려한 태스크 할당 기법은 공유 메모리를 위한 버 스 트랜잭션에서 최대 36%의 버스 에너지를 절감시킴 을 알 수 있었다. 그럼으로, MPSoC오卜 같은 다중 프로 세서 환경에서도 버스 분할 기법을 적용하여 버스 에너 지 절감 효과를 볼 수 있으며, 더불어 캐시 일관성을 고 려한 태스크 할당 기법을 통해 추가적으로 버스 에너지 를 절감할 수 있음을 보여준다.
또한, 캐시 일관성 문제가 발생하는 버 스 트랜잭션의 에너지를 최소화시키기 위하여 캐시 일 관성 프로토콜을 고려한 태스크 할당 기법을 제안한다. 시뮬레이션을 통한 실험을 통해 제안된 기법들이 버스 에너지를 감소시킴을 보여준다.
Lahiri와 Raghunathan⑹ 은 실제 AMBA 버스의 사양을 시뮬레이터로 구현하여, 여러 가지 저전력 버스 기법들의 효율성을 실험을 통해 제시하였다. 실험 결과는 버스 분할 기법을 통해 전체 버스 시스템에서 16%의 에너지 절감효과가 있고, 버스 라인에 대해서는 70% 가량의 에너지 절감효과가 있는 것을 보여주고 있다.
참고문헌 (13)
E. Arts and R. Roovers. 'IC Design Challenges for Ambient Intelligence,' DATE, pp.3-7, 2003
Vijay Raghunathan, Mani B. Srivastava, and Rajesh K. Gupta. 'A Survey of Techniques for Energy Efficient On-Chip Communication,' DAC, pp.900-905, 2003
J. Y. Chen, W. B. Ione, S. Wang, H. I. Lu, and T. F. Chen. 'Segmented Bus Design For LowPower Systems,' IEEE Trans. on VLSI Sys., Vol.7, No.1, pp.25-29, March 1999
Cheng-Ta Heish and Massoud Pedram. 'Architectural Energy Optimization by Bus Splitting,' IEEE Trans. on CAD of Integrated Circuits and Sys., Vol.21, No.4, April 2002
Ruibing Lu and Cheng-kok Koh. 'A High Performance Bus Communication Architecture through Bus Splitting,' ASP-DAC, pp.751-755, 2004
Kanishka Lahiri and Anand Raghunathan. 'Power Analysis of System-Level On-Chip Communication Architectures,' CODES+ISSS, pp. 236-241, 2004
Mirko Loghi and Massimo Poncino. 'Exploring Energy/Performance Tradeoffs in Shared Memory MPSoCs: Snoop-Based Cache Coherence vs. Software Solutions,' DATE, pp.508-513, 2004
Per Stenstrom, 'A Survey of Cache Coherence Schemes for Multiprocessors,' IEEE Computer, Vol.23, No.6, pp.12-24, June 1990
Gu-Yeon Wei, M.A. Horowitz, and J. Kim, 'Energy-efficient design of high-speed links,' Chapter 8 of Power A ware Design Methodologies, Editors: M. Pedram and J. Rabaey, Kluwer Academic Publishers, Norwell, MA, 2002
ARM Ltd., 'AMBA Specification (Rev 2.0),' May 1999
Matthew R. Guthaus, Jeffrey S. Ringenberg, Dan Ernst, Todd M. Austin, Trevor Mudge, Richard B. Brown, 'Milsench: A free, commercially representative embedded benchmark suite,' WWC, pp. 3-14, 2001
※ AI-Helper는 부적절한 답변을 할 수 있습니다.