基于SystemC的片上系统交易级设计与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
片上系统的出现是微电子设计领域的一场革命。从摩尔定律的预言和当前设计方法学的发展趋势来看,21世纪微电子技术领域在芯片级上必然由集成电路向集成系统发展。未来数年内片上系统中的处理器可能成为新的逻辑门,每片芯片中将包含成百上千块处理器,而系统则由一块或多块芯片构成。在设计复杂程度与日俱增而产品面市时间日益缩短的巨大压力下,提高系统设计抽象层次已成为主流解决方案,其典型代表就是系统级设计。
     交易级设计是目前系统级设计方法学中的重要分支,而SystemC正是该方法有力的实现工具。但目前国内关于交易级设计和SystemC的研究刚刚起步,设计过程中缺乏系统的指导和翔实的理论基础,同样在应用研究方面也少有具体的案例支撑。为解决这些问题,本文详细论述了基于SystemC的片上系统交易级设计原理以及相关模型的实现方法。
     本文在深入分析SystemC优势和特点的基础上,依据交易级建模理论,采用软件工程方法,设计并实现了片上系统中三套互连架构模型,并结合相关数学理论和建模工具对这些模型进行了详细地仿真分析与验证。其目的一方面是补充并完善交易级设计的理论基础,给出详尽的设计指导,另一方面是建立完整的架构模型以开发实际工程需要的片上系统。论文主要研究成果和特点有以下几方面:
     ①引入基于SystemC的交易级设计方法学解决目前片上系统设计中存在的共性问题,以提高片上系统设计效率和仿真运行速度;
     ②设计并开发三套完整的片上互连架构交易级模型,以满足快速开发不同种类片上系统的实际工程需要;
     ③结合相关数学理论分析与运用为片上系统交易级设计和验证方法学提供理论支撑和新的实现途径;
     ④探讨以SystemC为核心的设计流程中如何兼容其它建模工具,以应对更为复杂的设计与验证。
     依据本课题研究成果开发的交易级模型已成功应用于相关军工嵌入式系统的仿真和架构探索中,模型使用和运行情况良好、稳定。
The emergence of System on Chips (SoC) is considered as the revolution in microelectronics. When refers to that domain, from the prediction of Moore’s law and the trend of evolution in design approaches, the integrate circuits will inevitably transfer to integrate systems at chip levels in 21st century. In the near future years, SoC will be composed of one or more chips and each chip may contain hundreds or thousands of processors which are regarded as the new logic gates. Along with the design complexity grows and time-to-market shrinks day by day, boost the abstraction levels of design becomes the mainstream of solution, and system level design (SLD) is the typical representation.
     An important branch of SLD at present is transaction level design (TLD) which employs SystemC as the very tool for implementation. But owing to the latter beginning of related researches to TLD and SystemC, there is a domestic lack of systematic guidance and basic theories in design processes. At the meantime, very few material cases could sustain the applications of study. In order to solve these problems, article addresses itself to the principle of TLD and realization of correlated models in detail.
     According to the theory of transaction level modeling (TLM) and by the approaches of software engineering, three sets of models of interconnection architectures on chip are designed and realized based on thorough analysis of advantages and traits of SystemC, and these models are simulated and validated at length by integrating some frames of references of mathematics and other tools of modeling. For one thing of this way is to reinforce and consummate the bases of TLD’s theory, and give particular guidance to design approaches, for another is to establish integrated models of architectures to satisfy the requirements of SoC’s exploitation in practical engineering. Totally speaking, outcomes and traits of this work are:
     ①To improve the efficiency of design and speed of simulation, brings transaction level design of SoC based on SystemC in solving common problems;
     ②To satisfy the practical engineering requirements of rapid contriving various SoCs, designs and establishes three integrated sets of models of interconnection architectures on chip at transaction level;
     ③To supply fresh means and academically sustain, combines analysis and application of mathematic theories into transaction level design and validate;
     ④To deal with more complex design and validation, discusses how to make other tools of modeling compatible in design process which on the basis of SystemC.
     Transaction level models which are deployed according to results of this dissertation have been successfully applied into simulation and architecture explore of related embedded systems in war industry. The outcomes from the employment and function of models are favorable and steady.
引文
[1] Peter Marwedel. Embedded System Design [M]. Netherlands: Springer, 2006.
    [2]郭兵,沈艳,林永宏,韩磊著. SoC技术原理与应用[M].北京:清华大学出版社,2006.
    [3] Kamal, R.著.嵌入式系统——体系结构、编程与设计[M].陈曙晖等译北京:清华大学出版社,2005.
    [4] Seng Loke. Context-Aware Pervasive Systems [M]. New York: Auerbach Publications, 2007.
    [5] Gerhard Goos, Juris Hartmanis, Jan van Leeuwen. Advanced Distributed Systems [M]. Berlin: Springer-Verlag, 2004.
    [6] Jim Turley. The Essential Guide to Semiconductors [M]. California: Prentice Hall PTR 2002.
    [7] Ricardo Reis, Jochen A.G. Jess. Design of System on a Chip [M]. New York, Boston, Dordrecht, London, Moscow: Kluwer Academic Publishers, 2004.
    [8] Farzad Nekoogar, Faranak Nekoogar. From ASICS to SOCs: a practical approach [M]. New Jersey: Pearson Education, 2003.
    [9] Pong P. Chu. RTL Hardware Design Using VHDL [M]. New Jersey: John Wiley & Sons, 2006.
    [10] Volnei A. Pedroni. Circuit Design with VHDL [M]. Massachusetts: MIT Press, 2004.
    [11] Samir Palnitkar. Verilog HDL: A Guide to Digital Design and Synthesis [M]. California: Prentice Hall PTR, 2003.
    [12] Ahmed Amine Jerraya.; et al. Embedded Software for SoC [C]. New York: Kluwer Academic Publishes 2004.
    [13] Michael Barr, Anthony Massa. Programming Embedded Systems [M]. O'Reilly 2006.
    [14] Bart Broekman, Edwin Notenboom. Testing Embedded Software [M]. London: Addison- Wesley, 2003.
    [15] T. Sridhar. Designing Embedded Communications Software [M]. San Francisco: CMP Books, 2003.
    [16]王立华.基于FPGA的系统芯片(SoC)原型验证研究与实现[D].济南:山东大学,2006.
    [17] Richard Munden. ASIC and FPGA Verification: A Guide to Component Modeling [M]. San Francisco: Morgan Kaufmann Publishers, 2005.
    [18] Frank Ghenassia. Transaction Level Modeling with SystemC [M]. Netherlands: Springer, 2005.
    [19] Chris Rowen著.复杂SOC设计[M].吴武臣,侯立刚译.北京:机械工业出版社,2006.
    [20]陈燕.基于UML的嵌入式系统系统级设计方法研究[D].上海:复旦大学,2005.
    [21]张俊新.基于SystemC的事务级建模研究[D].武汉:武汉大学,2004.
    [22]陈曦,徐宁仪. SystemC片上系统设计[M].北京:科学出版社,2004.
    [23]徐辉,王祖强,王照君.软硬件协同设计和系统级仿真探索[J].中国工程科学,2006,8(4): 86-88.
    [24]陈思功,秦晓,章恒羽.基于UML的软硬件协同设计的模型分析方法[J].软件学报,2003,14(1): 103-109.
    [25]严迎建,刘明业.片上系统设计中软硬件协同验证方法的研究[J].电子与信息学报,2005,27(2): 317-321.
    [26] Claasen. An Industry Perspective on Current and Future State of the Art in System-on-Chip (SoC) Technology [J]. Proceedings of the IEEE, 2006, 94(6): 1121-1137.
    [27] Unai Bidarte. Simulation Platform for Architectural Verification and Performance Analysis in Core-Based SoC Design [A]. In: J. Becker, M. Platzner, and S. Vernalde. Field Programmable Logic and Application. Berlin: Springer, 2004. 965-969.
    [28] Chen Wenwei. Study on a Mixed Verification Strategy for IP-Based SoC Design [A]. IEEE Conference on High Density Micro system Design and Packaging and Component Failure Analysis, 2005: 1-4.
    [29] Soujanna Sarkar. Effective IP Reuse for High Quality SoC Design [A]. Subash Chandar G, Sanjay Shinde. IEEE International SOC Conference Proceedings, 2005: 217-224.
    [30] Shunitsu Kohara. An Interface-Circuit Synthesis Method with Configurable Processor Core in IP-Based SoC Designs [A]. Asia and South Pacific Conference on Design Automation, 2006: 594-599.
    [31] Lesley Shannon. Designing an FPGA SoC using a Standardized IP Block Interface [A]. IEEE International Conference on Field-Programmable Technology, 2005: 341-342.
    [32] David Elleouet. A High Level SoC Power Estimation Based on IP Modeling [A]. Nathalie Julien, Dominique Houzet. IEEE 20th International Parallel and Distributed Processing Symposium, 2006: 1-4.
    [33] Naoh TOMONO. A Processor Core Synthesis System in IP-based SoC Design [A]. Asia and South Pacific Design Automation Conference, 2005, 1(1): 286-291.
    [34] Ahmed Amine Jerraya, Wayne Wolf. Multiprocessor Systems-on-Chips[C]. San Francisco: Morgan Kaufmann Publishers, 2005.
    [35] Nikolaos S. Voros, Konstantions Masselos. System Level Design of Reconfigurable Systems-on-Chip [M]. Netherlands: Springer, 2005.
    [36] Tim Schattkowsky. Using UML Activities for System-on-Chip Design and Synthesis [A]. In: O. Nierstrasz.; et al. Model Driven Engineering Languages and Systems. Berlin: Springer,2006. 737-752.
    [37] OSCI. About OSCI [N]. Available at www.systemc.org/about. 2007.
    [38] OSCI. OSCI Fact Sheet [N]. Available at www.systemc.org/about. 2007.
    [39] David C. Black, Jack Donovan. SystemC: Form the Ground Up [M]. New York: Kluwer Academic Publishers, 2004.
    [40] IEEE Computer Society. IEEE STD 1666?-2005. IEEE Standard SystemC? Language Reference Manual[S]. New York: Institute of Electrical and Electronics Engineers, 2006.
    [41] Adel Baganne. A Multi-level Design Flow for Incorporating IP Cores: Case Study of 1-D Wavelet IP integration [A]. IEEE Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, 2003: 250-255.
    [42] Deepak Mathaikutty. SoC Design Space Exploration through Automated IP Selection from SystemC IP Library [A]. Sandeep Shukla. IEEE International SOC Conference, 2006: 109-110.
    [43] Patrice Gerin. Flexible and Executable Hardware/Software Interface Modeling for Multiprocessor SoC Design Using SystemC [A]. Asia and South Pacific Design Automation Conference, 2007: 390-395.
    [44] Luca Benini.; et al. MPARM: Exploring the Multi-Processor SoC Design Space with SystemC [J]. Journal of VLSI Signal Processing, 2005, 41(2): 169–182.
    [45] Franco Fummi.; et al. SystemC Co-Simulation for Core-Based Embedded Systems [J]. Design Automation for Embedded Systems, 2007 11(2-3): 141–166.
    [46] H. POSADAS.; et al. Single Source Design Environment for Embedded Systems Based on SystemC [J]. Design Automation for Embedded Systems, 2004 9(4): 293–312.
    [47] Cristiano Araujo.; et al. Platform designer: An approach for modeling multiprocessor platforms based on SystemC [J]. Design Automation for Embedded Systems, 2006 10(4): 253–283.
    [48] W. Mueller. UML for ESL Design - Basic Principles, Tools, and Applications [A]. IEEE/ACM International Conference on Computer-Aided Design, 2006: 73-80.
    [49] Elvinia Riccobene. Modeling SystemC Process Behavior by the UML Method State Machines [A]. In: N. Guelfi. Rapid Integration of Software Engineering Techniques. Berlin: Springer 2005. 112–121.
    [50] E. Riccobene. A Model-driven Design Environment for Embedded Systems [A]. Annual ACM IEEE Design Automation Conference. 2006: 915-918.
    [51] Yan Chen.; et al. An Automatic Coverage Analysis for SystemC Using UML and Aspect-Oriented Technology [A]. In: W. Shen.; et al. Computer Supported Cooperative Workin Design. Berlin: Springer, 2005. 398-405.
    [52] Stuart Swan. SystemC Transaction Level Models and RTL Verification [A]. Annual ACM IEEE Design Automation Conference, 2006: 90-92.
    [53] Imed Moussa. Exploring SW Performance using SoC Transaction-level modeling [A]. Thierry Grellier, Giang Nguyen. Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, 2003: 120-125.
    [54] Sudeep Pasricha. Using TLM for Exploring Bus-based SoC Communication Architectures [A]. Nikil Dutt, Mohamed Ben-Romdhane. Proceedings of the 16th International Conference on Application-Specific Systems, Architecture and Processors, 2005: 79-85.
    [55] Wolfgang Klingauf. Systematic Transaction Level Modeling of Embedded Systems with SystemC [A]. Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, 2005: 566-567.
    [56] Winniie Clheng. Transaction Level Model-based Design Methodology for Fast Architectural Exploration and Verification [A]. Proceedings of the 46th IEEE International Midwest Symposium on Circuits and Systems, 2003: 1371-1374.
    [57] Samar Abdi, Daniel Gajski. Verification of System Level Model Transformations [J]. International Journal of Parallel Programming, 2006, 34(1): 29-59.
    [58] Lilian Janin, Doug Edwards. CSP Transactors for Asynchronous Transaction Level Modeling and IP Reuse [A]. In: O. Gervasi.; et al. Computational Science and Its Applications–ICCSA 2007. Berlin: Springer, 2007. 154-168.
    [59] Wolfgang Klingauf. From TLM to FPGA: Rapid Prototyping with SystemC and Transaction Level Modeling [A]. Robert Gunzel. IEEE International Conference on Field-Programmable Technology, 2005: 285-286.
    [60] J. Bhasker. A SystemC Primer [M]. Allentown, Pennsylvania: Star Galaxy Publisher 2002.
    [61] OSCI. Functional Specification for SystemC2.0 [Z]. Available at www.systemc.org/downloads. 2002.
    [62] OSCI. SystemC Version 2.0 User’s Guide [Z]. Available at www.systemc.org/downloads. 2002
    [63] Horsten Grotker.; et al. System Design with SystemC [M]. New York: Kluwer Academic Publishers 2002.
    [64] Peter Wilson. Design Recipes for FPGAs [M]. Bodmin: Newnes 2007.
    [65] Steve Kilts. Advanced FPGA Design [M]. New Jersey: John Wiley & Sons 2007.
    [66] Jean-pierre Deschamps, Gery Jean Antoine Bioul, Gustavo D. sutter. Synthesis of Arithmetic Circuits-FPGA, ASIC, and Embedded Systems [M]. Hoboken: John Wiley & SonsPublication 2006.
    [67] Richard Munden. ASIC and FPGA Verification: A Guide to Component Modeling [M]. Amsterdam: Morgan Kaufmann Publishers 2005.
    [68] Kenneth H.Rosen著.离散数学及其应用[M].袁崇义,屈婉玲,王捍贫,刘田译.北京:机械工业出版社2002.
    [69] Mark Balch. Complete Digital Design [M]. New York: McGraw-Hill Companies, Inc. 2003.
    [70] Alain Clouard. SystemC Community Update [EB]. Available at www.systemc.org/about. August 2007.
    [71] Oussorov. I., Raab. W., Hachmann. U., Kravtsov. A. Integration of instruction set simulators into SystemC high level models [A]. In Proc of Euromicro Symposium on Digital System Design, 2002: 126~129.
    [72] Jeff Cogswell, Christopher Diggins, Ryan Stephens, Jonathan Turkanis. C++ Cookbook [M]. Sebastopol: O'Reilly 2005.
    [73] Ulla Kirch-Prinz, Peter Prinz. A Complete Guide to Programming in C++ [M]. Sudbury: Jones and Bartlett Publishers 2002.
    [74] Herbert Schildt. C++ from the Ground up [M]. California: McGraw-Hill/Osborne 2003.
    [75] John N. Daigle. Queuing Theory with Applications to Packet Telecommunication [M]. Boston: Springer 2005.
    [76] Gunter Bolch, Stefan Greiner, Hermann de Meer, Kishor S. Trivedi. Queuing Networks and Markov Chains [M]. New Jersey: John Wiley & Sons 2006.
    [77]林元烈,梁宗霞.随机数学引论[M].北京:清华大学出版社2003.
    [78] Kim Hamilton, Russell Miles. Learning UML 2.0 [M]. Sebastopol: O'Reilly 2006.
    [79] Hans-Erik Eriksson.; et al. UMLTM 2 Toolkit [M]. Indianapolis: Wiley 2004.
    [80]郭宁. UML及建模.北京:清华大学出版社2007.
    [81] Craig Larman著. UML和模式应用[M].方梁,等译.北京:机械工业出版社2006.
    [82] Bruce Powel Douglass. Real Time UML: Advances in the UML for Real-Time Systems [M]. Boston: Addison Wesley 2004.
    [83] Milan Kratochvil, Barry McGibbon. UML Xtra-Light: How to Specify Your Hardware Requirements [M]. Cambridge: Cambridge University Press 2003.
    [84] Grant Martin, Wolfgang muller. UML for SOC Design [C]. Netherlands: Springer 2006.
    [85] Nell Dale. C++ Plus Data Structures [M]. Canada: Jones and Bartlett Publishers 2003.
    [86]飞思科技产品研发中心著. MATLAB7基础与提高[M].北京:电子工业出版社2006.
    [87] Andy H. Register. A Guide to MATLAB Object-Oriented Programming [M]. Boca Raton: SciTech 2007.
    [88] Marcelo Montoreano. Transaction Level Modeling using OSCI TLM 2.0 [Z]. Available at www.systemc.org/downloads, 2007.
    [89] Naraig Manjikian, James Reed. Prototype hardware implementation of a single-chip multiprocessor with a split-transaction bus [A].In PACRIM. 2005 IEEE Pacific Rim Conference on Communications, Computers and signal Processing, 2005: 404-407.
    [90] Christopher G. Lasater. Design Patterns [M]. Texas: Wordware 2007.
    [91] Frank Buschmann, Kevlin Henney, Douglas C. Schmidt. Pattern-Oriented Software Architecture [M]. Chichester: John Wiley & Sons 2007.
    [92] Jean Labrosse.; et al. Embedded Software [M]. Oxford: Newnes 2008.
    [93] Ricardo Baeza-Yates.; et al. Recent Advances in Applied Probability [M]. Boston: Springer 2005.
    [94]郭建硕.片上网络系统模型研究[D].西安:西安电子科技大学,2007.
    [95] Julien Delorme. An Automatic Design Flow for Mapping Application onto a 2D Mesh NoC Architecture [A]. In: N. Azemard, L. Svensson. PATMOS 2007, LNCS 4644. Berlin, Heidelberg: Springer-Verlag, 2007. 31–42.
    [96] L. Benini, D. Bertozzi. Network-on-chip architectures and design methods [J]. IEE Proc.-Comput. Digit. Tech., 2005, 152(2): 261-272.
    [97] Kun I. Park. QoS in Packet Networks [M]. Boston: Springer 2005.
    [98] Fernando Gehm Moraes.; et al. HERMES: an Infrastructure for Low Area Overhead Packet-switching Networks on Chip [A]. FACULDADE DE INFORMáTICA PUCRS. Brazil: 2003.
    [99] Jorg-Christian Niemann, Mario Porrmann, Ulrich Rückert. A scalable parallel SoC architecture for network processors [A]. In: Proceedings of the IEEE Computer Society Annual Symposium on VLSI, 2005.
    [100] Ilya Issenin, Nikil Dutt. Data Reuse Driven Memory and Network-On-Chip Co-synthesis [A]. In: International Federation for Information Processing, Volume 231, 2007: 299–312.
    [101] Min-Chang Kang, Eun-Gu Jung, Dong-Soo Har. Design of an Asynchronous Switch Based on Butterfly Fat-Tree for Network-on-Chip Applications [A]. In: Y.-S. Ho, H.J. Kim Eds. PCM 2005, Part II, LNCS 3768. Berlin, Heidelberg: Springer-Verlag, 2005. 538–549.
    [102] Hsin-Chou Chi, Chia-Ming Wu. Efficient Switches for Network-on-Chip Based Embedded Systems [A]. In: International Federation for Information Processing, 2005: 67–76.
    [103] Sanjay Pratap Singh.; et al. Generic Network Interfaces for Plug and Play NoC Based Architecture [A]. In: K. Bertels, J.M.P. Cardoso, S. Vassiliadis Eds. ARC 2006, LNCS 3985. Berlin Heidelberg: Springer-Verlag, 2006. 287–298.
    [104] Franco Fummi.; et al. Heterogeneous co-simulation of networked embedded systems [A]. In: Proceedings of the Design, Automation and Test in Europe Conference and Exhibition Designers’Forum, 2004.
    [105] Erno Salminen.; et al. HIBI Communication Network for System-on-Chip [J]. Journal of VLSI Signal Processing, 2006, 43: 185–205.
    [106] Haytham Elmiligi, M. Watheq El-Kharashi, Fayez Gebali. Modeling and Implementation of an Output-Queuing Router for Networks-on-Chips [A]. In: Y.-H. Lee et al. ICESS 2007, LNCS 4523. Berlin Heidelberg: Springer-Verlag, 2007. 241–248.
    [107] David Groth, Toby Skandier. Network+ Study Guide [M]. San Francisco: Sybex 2005.
    [108] Kumar, S.; et al. A Network on Chip Architecture and Design Methodology [A]. In: IEEE Computer Society Annual Symposium on VLSI. (ISVLSI’02), 2002: 105-112.
    [109] Benini, L., De Micheli, G. Networks on chips: a new SoC paradigm [J]. IEEE Computer, 2002, 35(1): 70-78.
    [110]卢强,姚放吾.片上网络的分析与设计[J].航空计算技术,2007,37(2):127-130.
    [111]徐俊明著.组合网络理论[M].北京:科学出版社2007.
    [112] Reinhard Diestel. Graph Theory [M]. New York: Springer-Verlag 2000.
    [113] Prabhat Mishra, Nikil D. Dutt. Functional Verification of Programmable Embedded Architectures [M]. New York: Springer 2005

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700