媒体处理器的设计和验证研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
在过去二十年中,为了满足人们日益增长的对多媒体的需求,媒体处理器得到了飞速发展,出现了各种各样的媒体处理器。根据其体系结构,媒体处理器可以分为专用可编程处理器、通用可编程处理器、专用处理器和可重配置处理器几大类。各类处理器都针对多媒体处理进行了扩展,增强其多媒体处理能力。通用可编程处理器中的精简指令集处理器(RISC)和专用可编程处理器中的数据信号处理器(DSP)各自具有不同的指令集结构和微结构特点,适合于不同的应用领域,出现了一系列RISC和DSP融合体的RISC/DSP架构,由于既善于执行系统程序,又善于执行信号处理程序,所以能够较好的适应复杂多媒体系统的要求。
     本文介绍由浙江大学信息与电子工程学系SOC R&D小组开发的具有自主知识产权的,媒体数字信号处理器——MediaDSP3200(简称MD32)系列的设计和验证流程。MD32将RISC与DSP处理器的指令操作、寻址模式等要素充分融合,设计了并行操作、多媒体分裂模式等指令操作,形成了融合RISC、DSP、SIMD特点的一种新的指令集结构,并在此基础上设计了具有自身特色的RISC/DSP微结构组成和统一的流水划分结构,使得RISC/DSP体系既能够发挥RISC处理器的系统执行能力,又具有DSP处理器的数据处理能力,既有精简指令的优势,又有较强的算术运算能力,从而使MD32处理器更适合多媒体信息处理的需要。
     为了对MD32进行快速验证,本文详细介绍了基于FPGA的媒体处理器通用软硬件协同仿真验证平台MPSP的设计。这一平台采用FPGA作为硬件仿真子平台,采用运行于上位机上的控制和驱动软件作为软件仿真子平台。软件和硬件子平台都可以快速的进行重配置,以适应不同的媒体处理器和不同的仿真要求。MPSP平台提供了一个可配置的IP库和一个包含大量API接口的软件库,基于这些库,协同仿真环境的设计过程被大大加速了。采用这一平台,我们对MD32进行了快速仿真验证。
     为了对芯片进行测试,在芯片的测试过程中就必须考虑可测试性设计,在芯片中增加测试结构如扫描链等。媒体处理器的复杂度要求在其中采用多种测试结构。同时,完整的媒体处理器的集成开发环境包括嵌入式硬件调试环境,还需要在处理器中设计嵌入式调试接口。为此,本文介绍了基于JTAG的嵌入式调试接口的设计,即实现了芯片的结构测试和功能测试,也实现了硬件调试功能。基于这一接口,可以对媒体处理器进行边界扫描测试,也可以进行硬件单步、断点、观察处理器状态等等复杂的硬件调试。
Media processor is developed rapidly in the last twenty years to meet the fast increasing demand of multimedia application. Media processor can be classified into special purpose programmable processor, general purpose programmable processor, dedicated processor and reconfigurable processor. These processors have improved the compute power to meet the media processing requirement. Reduced Instruction Set Computer (RISC) and Digital Signal Processor (DSP) have different application areas due to their different Instruction Set Architecture (ISA) and micro-architecture. RISC/DSP is a hybrid of traditional RISC and DSP processor. Merit to both characteristics of RISC and DSP, RISC/DSP is more capable for complex media processing.
    This paper describe a RISC/DSP processor-MediaDSP3200 serials, which is
    developed by the Department of Information Science and Electronic Engineering in Zhejiang University. MD32 ISA is a novel architecture, which features with both RISC and DSP. Single Instruction Multi Data (SIMD) is also supported in MD32. A characterized RISC/DSP micro-architecture and unified pipeline is designed based on MD32 ISA. It is not only good at executing system tasks like RISC processor, but also expert in digital signal processing like DSP. This makes MD32 more powerful in multi-media signal processing.
    To verify the design of MD32 quickly, FPGA based media processor hardware/software co-simulation platform is developed. This platform includes a FPGA based hardware sub-platform and a software sub-platform running on host PC. Both the hardware and the software can be re-configured quickly to accommodate different media processor for different simulation specification. The design of co-simulation environment on MPSP is based on library. A reconfigurable IP library and a software pack with API interfaces are provided as a part of MPSP. Based on this platform, the FPGA based co-simulation processing is greatly accelerated. MD32 is simulated on this platform and the design is verified.
    To test the chip, DFT(design for testability) structure should be considered on the design. Test structures such as scan chain should be added to the processor. And ICE(in circuit emulator) is a indispensable component in the intergrated development environment of mdia processor. It requires an embedded debug interface. So an embedded debug interface based on JTAG is described on this paper. Based on this interface, both the structure and function test and the hardware debug such as single step,breakpoint and watch can be applied to MD32.
引文
[1] A. Dasu and S. Panchanathan, "A Survey of Media Processing Approaches", IEEE Transactions on Circuit and Systems for Video technology, Vol. 12, No. 8, August 2002, pp633-645.
    [2] Kuroda, I.; Nishitani, T.; "Multimedia processors", Proceedings of the IEEE, Volume: 86 Issue: 6, Jun 1998, Page(s): 1203-1221
    [3] S. Nanda, "Media processors", Tenth International Conference on VLSI Design, Jan 4-7, 1997, pp. 244-246.
    [4] J. L. Hennessy, D.A. Patterson, "Computer Architecture: A Quantitative Approach", 3rd.edition. Morgan Kaufmann Publishers, Inc., San Francisco, May 2002.
    [5] 石教英 等编,“计算机体系结构”,浙江大学出版社,1998年10月第1版
    [6] 张明,“Verilog HDL实用教程”,电子科技大学出版社,1999年11月第1版
    [7] Ville Lappalainen, Timo D. Hmlinen, and Petri Liuha, "Overview of Research Efforts on Media ISA Extensions and Their Usage in Video Coding", IEEE Transactions on Circuit and Systems for Video technology, Vol. 12, No. 8, August 2002, pp: 660-670
    [8] A. Peleg, U. Weiser, "MMX technology extension to the Intel architecture", IEEE Micro, Vol. 16, Issue: 4, Aug. 1996, pp. 42-50.
    [9] G. Hinton et al., "The microarchitecture of the Pentium 4 processor," Intel Corp. Intel Technol. J., 1st Quarter 2001.
    [10] S. Oberman, G. Favor, and F.Weber, "AMD3DNow! technology: Architecture and implementations," IEEE Micro, vol. 19, pp. 37-48, Mar./Apr.1999.
    [11] D. Kim and G. Choe, "AMD's 3DNow!/sup TM/vectorization for signal processing applications," in Proc. IEEE Int. Conf. Acoustics, Speech, Signal Processing, vol. 4,1999, pp. 2127-2130.
    [12] M. Tremblay, J, M. O'Connor, "UltraSparc I: a four-issue processor supporting multimedia", IEEE Micro, Vol.16, Issue 2, April 1996, pp. 42-50.
    [13] K. Diefendorff, P. K. Dubey, R. Hochsprung, and H. Scale, "AltiVec extension to powerPC accelerates media processing," IEEE Micro, vol. 20, pp. 85-95, Mar./Apr.2000.
    [14] H.-J. Stolberg, M. Berekovic, P. Pirsch, H. Runge, H. Moller, and J. Kneip, "The M-PIRE MPEG-4 codec DSP and its macroblock engine," Proc. IEEE Int. Symp.Circuits Syst., vol. 2, 2000, pp. 192-195.
    [15] TMS320C64x Technical Overview(Rev. B), http://focus.ti.com/lit/ug/spru395b/spru395b.pdf
    [16] R. Sarmiento, C. Pulido, F. Tobajas, V. Armas, R. Esper-Chain, J. Lopez, J. M. Nelson,and A. Nunez, "A 600 MHz 2D-DCT processor for MPEG applications," in Proc. 31st Asilomar Conf. Signals, Systems, and Computers, vol. 2, 1997, pp. 1527-1531.
    
    
    [17] Y.-K. Lim, J. Kwak, and S. Park, "MPEG-4 accelerator for PC based codec implementation," in Proc. IEEE Int. Symp. Circuits Systems, vol. 4, 1998, pp. 182-185.
    [18] Y.-F. Jang, J. Kao, J.-S.Yang, and P.-C. Huang, "A 0.8/spl mu/100-MHz 2-D DCT core processor," IEEE Trans. Consumer Electron., vol. 40, pp.703-710, Aug. 1994.
    [19] A. I. A. DeHon, "Reconfigurable Architectures Got General-Purpose Computing," Massachusetts Inst. of Technol., Cambridge, Tech. Rep. 1586, 1996.
    [20] Xilinx, "Xilinx FPGA Datasheets",http://www.xilinx.com/xlnx/xweb/xil_publications_index.jsp
    [21] M. Schlett, "the RISC challenge in signal processing", IEEE Electronics, Circuits, and Systems Proceeding, vol.1, Oct. 1996, pp. 550-553.
    [22] M. Schlett, "Trends in Embedded Processor Design", IEEE Computer, Vol. 31, No. 8,August 1998, pp. 44-50(reprinted in Real-Time Magazine, 98-4, pp.14-20).
    [23] H. Chang, L. Cooke, M. Hunt, G. Martin, A. McNelly, L. Todd, "surviving the soc revolution: a guide to platform based design", Kluwer Academic Publishers, Boston,Hardbound, ISBN 0-7923-8679-5, November 1999.
    [24] ESS Technology Inc., "ES3890 Preliminary data sheet", http://www.esstech.com
    [25] J. Chaoui, K. Cyr, S.D. Gregorio, J.P. Giacalone, J. Webb, and Y. Masse, "Open multimedia application platform: enabling multimedia applications in third generation wireless terminals through a combined RISC/DSP architecture", IEEE International Conference on Acoustics, Speech, and Signal Processing, vol. 2, May, 2001, pp. 1009-1012.
    [26] M. Peresse, K. Djafarian, J. Chaoui, D. Mazzocco, Y. Masse, "Enabling JPEG2000 on 3G wireless mobiles through OMAP/spl trade/architecture", IEEE International Conference on Acoustics, Speech, and Signal Processing(ICASSP '02), Vol. 4, May 13-17, 2002, pp. Ⅳ-3796-Ⅳ-3799.
    [27] R.B. Lee, "Multimedia extensions for general-purpose processors", Proc. IEEE Workshop on Signal Processing Systems, Nov. 1997, pp. 9-23.
    [28] M.S. Dolle, S. Jhand, W. Lehner, O. Muller, and M. Schlett, "A 32-b RISC/DSP microprocessor with reduced complexity", IEEE Solid-State Circuits, vol. 32, Jul.,1997, pp. 1056-1066.
    [29] C. Baumhof, F. Muller, O. Muller, M. Shlett, "A novel 32 bit RISC architecture unifying RISC and DSP", IEEE International Conference on Acoustics, Speech, and Signal Processing(ICASSP-97), Vol. 1, April 21-24, 1997, pp. 587-590.
    [30] M. Dolle, M. Schlett, "A cost-effective RISC/DSP microprocessor for embedded systems", IEEE Micro, Vol. 15, Issue 5, Oct. 1995, pp. 32-40.
    [31] J. Huck, D. Morris, J. Ross, A. Knies, H. Mulder, and R. Zahir, "Introducing the IA-64 architecture," IEEE Micro, vol. 20, pp. 12-23, Sept./Oct. 2000
    [32] A. Suga and K. Matsunami, "Introducing the FR500 embedded microprocessor," IEEE Micro, vol. 20, no. 4, pp. 21-27, July/Aug. 2000.
    [33] G.J. Hekstra, G. D. La Hei, P. Bingley, and F. W. Sijstermans, "Trimedia CPU64 design space exploration," in Int. Conf. Computer Design, Austin, TX, 1999, pp. 266-267.
    
    
    [34] R. P. Colwell et al., "A VLIW architecture for a trace scheduling compiler, "Proc. 2nd Int. Conf. Architectural Support for Programming Languages and Operating Systems,Palo Alto, CA, Oct., pp. 180-192.
    [35] TI, "C6000 Roadmaps",http://dspvillage.ti.com/docs/catalog/generation/details.jhtml?templateId=5154&path=templatedata/cm/dspdetail/data/c6000_roadmaps)
    [36] WAYNE H. Wolf, "Hardware/Software Co-design of Embedded System", Proceedings of IEEE, VOL. 82, NO. 7, JUL. 1994
    [37] IEEE std 1149. 1-1990. IEEE Standard test Access Port and Boundary-scan Architecture[J]. IEEE, 1990.
    [38] J. A. Rowson, "Hardware software co-simulation", Proceedings of 3 1th ACM/IEEE Design Automation Conference, pp.439-440, June 1994
    [39] Wonyong Sung and Soonhoi Ha, "A Hardware Software Co-simulation Backplane with Automatic Interface generation", Design Automation Conference 1998. Proceedings of the ASP-DAC'98. Asia and South Pacific, pp.177-182, Feb. 1998
    [40] Kreiner, C.; Steger, C.; Weiss, R., "A Hardware/Software Cosimulation Environment Generate for DSP Application", EUROMICRO Conference, 1999. Proceedings. 25th,pp. 492-495 vol.1, Sept. 1999
    [41] Amory, A.; Moraes, F.; Oliveira, L.; Calazans, N.; Hessel, F., "A Heterogeneous and Distrubuted Co-simulation Environment", Proceedings of the 15th Symposium on Integrated Circuits and Systems Design(SBCCI'02), pp.115-120, Sept. 2002
    [42] Bishop, W.D.; Loucks, W.M.; "A heterogeneous environment for hardware/software cosimulation", Simulation Symposium, 1997. Proceedings. 30th Annual, pp.14-22,April 1997
    [43] IEEE standard board, "IEEE Standard Hardware Description Language Based on the Verilog Hardware Description Language", Dec. 1995
    [44] IEEE standard board, "1076 IEEE Standard VHDL Language Reference Manual",2002
    [45] Rudolf Usselmann, "SoC Bus Review",http://www.opencores.org/projects.cgi/web/wishbone/soc_bus_comparison.pdf
    [46] Opencores.org, "WISHBONE Specification", http://www.opencores.org/projects.cgi/web/wishbone/wbspec_b3.pdf
    [47] Micron Technology Inc. MT48LC2M32B2 Datasheet, 2002
    [48] ITU, "RECOMMENDATION ITU-R BT.601-4", ITU, 1994
    [49] ITU, "RECOMMENDATION ITU-R BT.656-4", 1TU, 1998
    [50] 牛风举,刘元成,朱明程,“基于IP复用的数字IC设计技术”,电子工业出版社,2003年9月第一版
    [51] Kane Gerry, Joe Heinrich, "MIPS RISC Architecture," Prentice Hall, 1992.
    [52] 周莉,“RISC/DSP处理器的结构、微结构设计研究”,浙江大学博士论文
    [53] 李东晓,“系统芯片中媒体增强数字信号处理器核设计研究”,浙江大学博士论文
    [54] 张子男,“MD32存储系统软/硬件协同设计的研究”,浙江大学硕士论文
    
    
    [55] J. Fritts et al., "Understanding multimedia application characteristics for designing programmable media processors," Proc. SPIE Multimedia Hardware Architectures,Jan. 1999.
NGLC 2004-2010.National Geological Library of China All Rights Reserved.
Add:29 Xueyuan Rd,Haidian District,Beijing,PRC. Mail Add: 8324 mailbox 100083
For exchange or info please contact us via email.