Abstract
Recently dual-port SDRAM (DPSDRAM) architecture tailored for dual-processor based mobile embedded systems has been announced where a single memory chip plays the role of the local memories and the shared memory for both processors. In order to maintain memory consistency from simultaneous accesses of both ports, every access to the shared memory should be protected by a synchronization mechanism, which can result in substantial access latency. We propose two optimization techniques by exploiting the communication patterns of target applications: lock-priority scheme and static-copy scheme. Further, by dividing the shared bank into multiple blocks, we allow simultaneous accesses to different blocks thus achieve considerable performance gain. Experiments on a virtual prototyping system show a promising result - we could achieve about 20-50% performance gain compared to the base DPSDRAM architecture.
최근 듀얼-프로세서 기반의 모바일 내장형 시스템을 위한 듀얼-포트 SDRAM이 발표되었다. 이는 단일 메모리 칩이 두 프로세서의 로컬 메모리와 공유 메모리 역할을 모두 담당하므로 공유 메모리를 위하여 추가의 SRAM 메모리를 사용하는 기존의 구조에 비해 더 간단한 통신 구조이다. 양 포트로부터의 동시적인 접근에서의 상호배타성을 보장하기 위하여 모든 공유 메모리 접근에는 특수한 동기화 기법이 수반되어야 하는데 이는 잠재적인 성능 악화의 원인이 된다. 이 논문에서는 이러한 동기화 비용을 고려하여 듀얼-포트SDRAM 구조의 성능을 평가하고, 주 응용의 통신 특성을 고려하여 최적화한 락우선권 기법과 정적복사 기법을 제안한다. 더 나아가, 공유 뱅크를 여러 블록으로 나눔으로써 서로 다른 블록들에 대한 동시적인 접근을 가능케 하여 성능을 개선하도록 한다. 가상 프로토타이핑 환경에서 수행된 실험은 이러한 최적화 기법들이 기본 듀얼-포트SDRAM 구조에 비하여 20-50%의 성능 향상을 가져옴을 보여준다.