Abstract
In On-Chip bus, the arbitration scheme is one of the critical factors that decide the overall system performance. The arbitration scheme used in traditional shared bus is the master-side arbitration based on the request and grant signals between multiple masters and single arbiter. In the case of the master-side arbitration, only one master and one slave can transfer the data at a time. Therefore the throughput of total bus system and the utilization of resources are decreased in the master-side arbitration. However in the slave-side arbitration, there is an arbiter at each slave port and the master just starts a transaction and waits for the slave response to proceed to the next transfer. Thus, the unit of arbitration can be a transaction or a transfer. Besides the throughput of total bus system and the utilization of resources are increased since the multiple masters can simultaneously perform transfers with independent slaves. In this paper, we implement and analyze the arbitration schemes for the Multi-Layer AHB BusMatrix based on the slave-side arbitration. We implement the slave-side arbitration schemes based on fixed priority, round robin and dynamic priority and accomplish the performance simulation to compare and analyze the performance of each arbitration scheme according to the characteristics of the master and slave. With the performance simulation, we observed that when there are few masters on critical path in a bus system, the arbitration scheme based on dynamic priority shows the maximum performance and in other cases, the arbitration scheme based on round robin shows the highest performance. In addition, the arbitration scheme with transaction based multiplexing shows higher performance than the same arbitration scheme with single transfer based switching in an application with frequent accesses to the long latency devices or memories such as SDRAM. The improvements of the arbitration scheme with transaction based multiplexing are 26%, 42% and 51%, respectively when the latency times of SDRAM are 1, 2 and 3 clock cycles.
온 칩 버스에서 중재 방식은 전체 시스템의 성능을 결정하는 중요한 요소 중 하나이다. 전통적인 공유 버스는 다수의 마스터와 단일 중재기 사이의 버스 사용 요청 및 권한 신호에 기반한 마스터 중심의 중재 방식을 사용한다. 마스터 중심의 중재 방식을 사용할 경우 한 순간에 오직 하나의 마스터와 슬레이브만이 데이타 전송을 수행할 수 있다. 따라서 전체 버스 시스템의 효율성 및 자원의 이용률이 감소되는 단점이 있다. 반면, 슬레이브 중심의 중재 방식은 중재기가 각 슬레이브 포트 별로 분산되며, 마스터는 중재 동작 없이 바로 트랜잭션을 시작하고, 다음 전송을 진행시키기 위해 슬레이브의 응답을 기다리는 방식을 취한다. 따라서 중재 동작의 단위가 트랜잭션 또는 단일 전송이 될 수 있다. 또한 다수의 마스터와 다수의 서로 다른 슬레이브 사이에 병렬적인 데이타 전송이 가능하기 때문에 버스 시스템의 효율성 및 자원의 이용률이 증가된다. 본 논문은 슬레이브 중심의 중재 방식을 사용하는 온 칩 버스인 ML-AHB 버스 매트릭스에 다양한 중재 방식을 적용시켜 전체 버스 시스템의 성능을 비교 분석해 보고, 어플리케이션의 특징에 따라 어떤 중재 방식을 사용하는 것이 더 유리한지에 대해 언급한다. 본 논문에서 구현한 중재 방식은 고정된 우선순위 방식, 라운드 로빈 방식 및 동적인 우선순위 방식으로 나뉘며, 마스터와 슬레이브의 특성 별로 각각 실험을 수행하였다. 성능 시뮬레이션 결과, 버스 시스템에서 임계 경로에 있는 마스터의 개수가 적을 경우 동적인 우선순위 방식이 가장 높은 성능을 보였으며, 임계 경로에 있는 마스터의 개수가 많거나, 또는 모든 마스터들의 작업 길이가 동일할 경우 라운드 로빈 방식이 가장 높은 성능을 보였다. 또한 SDRAM과 같이 접근을 위한 지연이 긴 메모리 또는 장치들을 슬레이브로 사용하는 어플리케이션에서는 단일 전송 단위의 중재 방식보다 트랜잭션 단위의 중재 방식이 더 높은 성능을 보였다. 실제 SDRAM의 지연 시간이 1, 2 및 3 클럭 사이클인 경우 각각 26%, 42% 및 51%의 성능 향상을 보였다.