Abstract
Architecture for Dynamically Reconfigurable Embedded Systems (ADRES) is a templatized coarse-grained reconfigurable processor architecture. It targets at embedded applications which demand high-performance, low-power and high-level language programmability. Compared with typical very long instruction word-based digital signal processor, ADRES can exploit higher parallelism by using more scalable hardware with support of novel compilation techniques. We developed a complete tool-chain, including compiler, simulator and HDL generator. This paper describes the design case of a media processor targeting at H.264 decoder and other video tasks based on the ADRES template. The whole processor design, hardware implementaiton and application mapping are done in a relative short period. Yet we obtain C-programmed real-time H.264/AVC CIF decoding at 50 MHz. The die size, clock speed and the power consumption are also very competitive compared with other processors.
References
J. R. Allen, K. Kennedy, C. Porterfield, and J. Warren, “Conversion of Control Dependence to Data Dependence,” in Proc. of ACM Symposium on Principles of Programming Languages, Austin, TX, 1983, pp. 177–189.
G. Berry and G. Gonthier, “The Esterel Synchronous Programming Language: Design, Semantics, Implementation,” Sci. Comput. Program., vol. 19, no. 2, 1992, pp. 87–152.
M. Budiu and S. C. Goldstein, “Fast Compilation for Pipelined Reconfigurable Fabrics,” in Proc. of ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA), Monterey, CA, 1999, pp. 195–205.
D. C. Cronquist, P. Franklin, S. G. Berg, and C. Ebeling, “Specifying and Compiling Applicaitons for RaPiD,” in Proc. of Field-Programmable Custom Computing Machines (FCCM), Napa, CA, 1998, pp. 116–125.
C. Ebeling, D. Cronquist, and P. Franklin, “RaPiD - Reconfigurable Pipelined Datapath,” in Proc. of International Workshop on Field Programmable Logic and Applications, Darmstadt, 1996, pp. 126–135.
A. Fauth, J. V. Praet, and M. Freericks, “Describing Instruction Set Processors Using nML,” in Proc. of Design Automation Conference (DAC), San Francisco, CA, 1995, pp. 503–507.
FFMPEG, “libavcodec is distributed with FFmpeg, an audio/video conversion tool” http://sourceforge.net/projects/ffmpeg.
S. C. Goldstein, H. Schmit, M. Budiu, S. Cadambi, M. Moe, and R. R. Taylor, “PipeRench: A Reconfigurable Architecture and Compiler,” IEEE Comput., vol. 33, no. 4, 2000, pp. 70–77.
G. Hadjiyiannis, S. Hanono, and S. Devadas, “ISDL: An Instruction Set Description Language for Retargetability,” in Proc. of Design Automation Conference (DAC), Anaheim, CA, 1997, pp. 299–302.
R. Hartenstein, “A Decade of Reconfigurable Computing: a Visionary Retrospective,” in Proc. of Design, Automation and Test in Europe (DATE), Munich, 2001, pp. 642–649.
IMPACT, “The IMPACT Group,” http://www.crhc.uiuc.edu/impact.
R. Maestre, F. J. Kurdahi, M. Fernndez, R. Hermida, N. Bagherzadeh, and H. Singh, “A Framework for Reconfigurable Computing: Task Scheduling and Context Management,” IEEE Trans. Very Large Scale Integr. (VLSI) Syst., vol. 9, no. 6, 2001, pp. 858–873.
B. Mei, S. Vernalde, D. Verkest, H. D. Man, and R. Lauwereins, “DRESC: A Retargetable Compiler for Coarse-Grained Reconfigurable Architectures,” in Proc. of International Conference on Field Programmable Technology, Hong Kong, 2002, pp. 166–173.
B. Mei, S. Vernalde, D. Verkest, H. D. Man, and R. Lauwereins, “ADRES: An Architecture with Tightly Coupled VLIW Processor and Coarse-Grained Reconfigurable Matrix,” in Field-Programmable Logic and Applications, P. Y. K. Cheung, G. A. Constantinides, and J. T. de Sousa (Eds.), Springer, 2003, pp. 61–70.
B. Mei, S. Vernalde, D. Verkest, H. D. Man, and R. Lauwereins, “Exploiting Loop-Level Parallelism for Coarse-Grained Reconfigurable Architecture Using Modulo Scheduling,” IEEE Proc. Comput. Digit. Tech., vol. 150, no. 5, 2003.
S. Pees, A. Hoffmann, V. Zivojnovic, and H. Meyr, “LISA - Machine Description Language for Cycle-Accurate Models of Programmable DSP Architectures,” in Proc. of Design Automation Conference (DAC), New Orleans, LA, 1999, pp. 933–938.
R. B. Ramakrishna, “Iterative Modulo Scheduling”, Technical report, HPL-94-115, HP Labs Technical Reports, 1994.
B. R. Rau, M. Lee, P. P. Tirumalai, and M. S. Schlansker, “Register Allocation for Software Pipelined Loops,” in Proc. of ACM SIGPLAN Conf. Programming Language Design and Implementation, San Francisco, CA, 1992, pp. 283–299.
SiliconHive, “SiliconHive”, http://www.silicon-hive.com, 2006.
H. Singh, M.-H. Lee, G. Lu, F. J. Kurdahi, N. Bagherzadeh, and E. M. C. Filho, “MorphoSys: an integrated reconfigurable system for data-parallel and computation-intensive applications,” IEEE Trans. Comput., vol. 49, no. 5, 2000, pp. 465–481.
StarCoreHantroh264, “StarCore and Hantro announce immediate availability of highperformance H.264 video decoder”, Press Release, Feb. 13, 2006.
TI, “Texas Instruments”, http://www.ti.com, 2007.
T. Wiegand, G. J. Sullivan, G. Bjontegaard, and A. Luthra, “Overview of the H.264/AVC Video Coding Standard,” IEEE Trans. Circuits Syst. Video Technol., vol. 13, no. 7, 2003, pp. 560–576.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Mei, B., De Sutter, B., Vander Aa, T. et al. Implementation of a Coarse-Grained Reconfigurable Media Processor for AVC Decoder. J Sign Process Syst Sign Image 51, 225–243 (2008). https://doi.org/10.1007/s11265-007-0152-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11265-007-0152-8