EXPLOITING DUAL DATA-MEMORY BANKS IN DIGITAL SIGNAL PROCESSORS

Citation
Mar. Saghir et al., EXPLOITING DUAL DATA-MEMORY BANKS IN DIGITAL SIGNAL PROCESSORS, ACM SIGPLAN NOTICES, 31(9), 1996, pp. 234-243
Citations number
28
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
Journal title
Volume
31
Issue
9
Year of publication
1996
Pages
234 - 243
Database
ISI
SICI code
Abstract
Over the past decade, digital signal processors (DSPs) have emerged as the processors of choice for implementing embedded applications in hi gh-volume consumer products. Through their use of specialized hardware features and small chip areas, DSPs provide the high performance nece ssary for embedded applications at the low costs demanded by the high- volume consumer market. One feature commonly found in DSPs is the use of dual data-memory banks to double the memory system's bandwidth. Whe n coupled with high-order data interleaving, dual memory banks provide the same bandwidth as more costly memory organizations such as a dual -ported memory. However; making effective use of dual memory banks rem ains difficult especially for high-level language (HLL) DSP compilers. In this paper we describe two algorithms - compaction-based (CB) data partitioning and partial data duplication - that we developed as part of our research into the effective exploitation of dual data-memory b ank in HLL DSP compilers. We show that CB partitioning is an effective technique for exploiting dual data-memory bank, and that partial data duplication can augment CB partitioning in improving execution perfor mance. Our results show that CB partitioning improves the performance of our kernel benchmark by 13%-40% and the performance of our applicat ion benchmarks by 3%-15%. For one of the application benchmarks, parti al data duplication boosts performance from 3% to 34%.