ImageVerifierCode 换一换
格式:PDF , 页数:638 ,大小:3.15MB ,
资源ID:1248394      下载积分:10000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1248394.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(IEEE 1666-2011 en Standard SystemC Language Reference Manual (IEEE Computer Society)《标准系统C语言参考手册》.pdf)为本站会员(registerpick115)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

IEEE 1666-2011 en Standard SystemC Language Reference Manual (IEEE Computer Society)《标准系统C语言参考手册》.pdf

1、g3g3g3IEEE Standard for Standard SystemCLanguage Reference Manualg3Sponsored by theDesign Automation Standards Committeeg3IEEE 3 Park Avenue New York, NY 10016-5997 USA9 January 2012 IEEE Computer Society IEEE Std 1666-2011 (Revision of IEEE Std 1666-2005)IEEE Std 1666-2011(Revision ofIEEE Std 1666-

2、2005)IEEE Standard for Standard SystemCLanguage Reference ManualSponsorDesign Automation Standards Committeeof theIEEE Computer SocietyApproved 10 September 2011IEEE-SA Standards BoardThe Institute of Electrical and Electronics Engineers, Inc.3 Park Avenue, New York, NY 10016-5997, USACopyright 2012

3、 by the Institute of Electrical and Electronics Engineers, Inc.All rights reserved. Published 9 January 2012. Printed in the United States of America.IEEE is a registered trademark in the U.S. Patent +1 978 750 8400. Permission tophotocopy portions of any individual standard for educational classroo

4、m use can also be obtained through theCopyright Clearance Center.ivCopyright 2012 IEEE. All rights reserved.IntroductionThis document defines SystemC, which is a C+ class library.As the electronics industry builds more complex systems involving large numbers of components includingsoftware, there is

5、 an increasing need for a modeling language that can manage the complexity and size ofthese systems. SystemC provides a mechanism for managing this complexity with its facility for modelinghardware and software together at multiple levels of abstraction. This capability is not available intraditiona

6、l hardware description languages.Stakeholders in SystemC include Electronic Design Automation (EDA) companies who implementSystemC class libraries and tools, integrated circuit (IC) suppliers who extend those class libraries and useSystemC to model their intellectual property, and end users who use

7、SystemC to model their systems.Before the publication of this standard, SystemC was defined by an open-source, proof-of-concept C+library, also known as the reference simulator, available from the Accellera Systems Initiative. In the eventof discrepancies between the behavior of the reference simula

8、tor and statements made in this standard, thisstandard shall be taken to be definitive.This standard is not intended to serve as a users guide or to provide an introduction to SystemC. Readersrequiring a SystemC tutorial or information on the intended use of SystemC should consult the AccelleraSyste

9、ms Initiative Web site (www.accellera.org) to locate the many books and training classes available.Note that the Open Systems Initiative (OSCI) announced in December 2011 its merger with Accellera toform the “Accellera Systems Initiative.” The name of the new organization has been used throughout th

10、isdocument instead of the name “Open SystemC Imitative” or the acronym “OSCI.” The exceptions are instatements that refer to previous OSCI actions, and standards such as “OSCI TLM-2.0.1,” whose nameshave not been changed.Notice to usersLaws and regulationsUsers of these documents should consult all

11、applicable laws and regulations. Compliance with theprovisions of this standard does not imply compliance to any applicable regulatory requirements.Implementers of the standard are responsible for observing or referring to the applicable regulatoryrequirements. IEEE does not, by the publication of i

12、ts standards, intend to urge action that is not incompliance with applicable laws, and these documents may not be construed as doing so.CopyrightsThis document is copyrighted by the IEEE. It is made available for a wide variety of both public and privateuses. These include both use, by reference, in

13、 laws and regulations, and use in private self-regulation,standardization, and the promotion of engineering practices and methods. By making this documentavailable for use and adoption by public authorities and private users, the IEEE does not waive any rights incopyright to this document.This intro

14、duction is not part of IEEE Std 1666-2011, IEEE Standard for Standard SystemCLanguage ReferenceManual.vCopyright 2012 IEEE. All rights reserved.Updating of IEEE documentsUsers of IEEE standards should be aware that these documents may be superseded at any time bythe issuance of new editions or may b

15、e amended from time to time through the issuance ofamendments, corrigenda, or errata. An official IEEE document at any point in time consists of thecurrent edition of the document together with any amendments, corrigenda, or errata then in effect.In order to determine whether a given document is the

16、 current edition and whether it has beenamended through the issuance of amendments, corrigenda, or errata, visit the IEEE StandardsAssociation website at http:/ieeexplore.ieee.org/xpl/standards.jsp, or contact the IEEE at the addresslisted previously.For more information about the IEEE Standards Ass

17、ociation or the IEEE standards development process,visit the IEEE-SA website at http:/standards.ieee.org.ErrataErrata, if any, for this and all other standards can be accessed at the following URL: http:/standards.ieee.org/findstds/errata/index.html. Users are encouraged to check this URL for errata

18、periodically.InterpretationsCurrent interpretations can be accessed at the following URL: http:/standards.ieee.org/findstds/interps/index.html.PatentsAttention is called to the possibility that implementation of this standard may require use of subject mattercovered by patent rights. By publication

19、of this standard, no position is taken with respect to the existence orvalidity of any patent rights in connection therewith. The IEEE shall not be responsible for identifyingpatents or patent applications for which a license may be required to implement an IEEE standard or forconducting inquiries i

20、nto the legal validity or scope of those patents that are brought to its attention.viCopyright 2012 IEEE. All rights reserved.ParticipantsThis entity-based standard was created under the leadership of the following individuals:Stan Krolikoski, ChairJerome Cornet, Vice ChairJohn Aynsley, Technical Le

21、ad and AuthorDavid Long, Co-Author (SystemC Data Types)Dennis Brophy, SecretarySofie Vandeputte, Typographical EditorAt the time this entity-based standard was completed, the LRM Working Group had the followingmembership: The following members of the entity-based balloting committee voted on this st

22、andard. Balloting entitiesmay have voted for approval, disapproval, or abstention. The working group gratefully acknowledges the contributions of the following participants:Accellera OrganizationCadence Design SystemsFreescale SemiconductorsIntel CorporationJEITAMentor GraphicsNXP SemiconductorsOSCI

23、STARCSTMicroelectronicsSynopsysTexas InstrumentsAccellera OrganizationCadence Design SystemsIntel CorporationJEITAMentor GraphicsNXP SemiconductorsOSCIQualcomm IncorporatedSGCCSTARCSTMicroelectronicsSynopsysTexas InstrumentsJohn AynsleyBishnupriya BhattacharyaDavid C. BlackJerome CornetAlan FitchMar

24、k GlasserPuneet GoelAndy GoodrichPhilipp A. HartmannHiroshi ImaiMartin JanssenTor JeremiassenDavid LongMichael McNamaraMike MeredithEric E. RoeslerStuart SwanBart VanthournoutYossi VellerKaz YoshinagaviiCopyright 2012 IEEE. All rights reserved.When the IEEE-SA Standards Board approved this standard

25、on 10 September 2011, it had the followingmembership:Richard H. Hulett, ChairJohn Kulick, Vice ChairRobert Grow, Past ChairJudith Gorman, Secretary*Member EmeritusAlso included are the following nonvoting IEEE-SA Standards Board liaisons:Satish K. Aggarwal, NRC RepresentativeRichard DeBlasio, DOE Re

26、presentativeAlan H. Cookson, NIST RepresentativeMichelle D. TurnerIEEE Standards Program Manager, Document DevelopmentJoan WooleryIEEE Standards Program Manager, Technical Program DevelopmentMasayuki AriyoshiWilliam BartleyTed BurseClint ChaplinWael DiabJean-Philippe FaureAlex GelmanPaul HouzJim Hug

27、hesJoseph L. Koepfinger*David LawThomas Lee Hung LingOleg LogvinovTed OlsenGary RobinsonJon RosdahlSam SciaccaMike SeaveyCurtis SillerPhil WinstonHoward WolfmanDon WrightviiiCopyright 2012 IEEE. All rights reserved.Contents1. Overview 11.1 Scope 11.2 Purpose. 11.3 Subsets . 21.4 Relationship with C+

28、. 21.5 Guidance for readers 22. Normative references. 43. Terminology and conventions used in this standard 53.1 Terminology. 53.1.1 Shall, should, may, can 53.1.2 Implementation, application 53.1.3 Call, called from, derived from 53.1.4 Specific technical terms .53.2 Syntactical conventions . 73.2.

29、1 Implementation-defined. 73.2.2 Disabled . 73.2.3 Ellipsis (.). 73.2.4 Class names 73.2.5 Embolded text 83.3 Semantic conventions 83.3.1 Class definitions and the inheritance hierarchy . 83.3.2 Function definitions and side-effects. 83.3.3 Functions whose return type is a reference or a pointer 83.

30、3.4 Namespaces and internal naming 103.3.5 Non-compliant applications and errors 113.4 Notes and examples . 114. Elaboration and simulation semantics . 124.1 Elaboration. 124.1.1 Instantiation . 124.1.2 Process macros. 144.1.3 Port binding and export binding 144.1.4 Setting the time resolution . 154

31、.2 Simulation 154.2.1 The scheduling algorithm 164.2.2 Initialization, cycles, and pauses in the scheduling algorithm. 194.3 Running elaboration and simulation 204.3.1 Function declarations. 204.3.2 Function sc_elab_and_sim. 204.3.3 Functions sc_argc and sc_argv 214.3.4 Running under application con

32、trol using functions sc_main and sc_start. 214.3.5 Running under control of the kernel 234.4 Elaboration and simulation callbacks 234.4.1 before_end_of_elaboration 244.4.2 end_of_elaboration 254.4.3 start_of_simulation 26ixCopyright 2012 IEEE. All rights reserved.4.4.4 end_of_simulation . 274.5 Othe

33、r functions related to the scheduler 274.5.1 Function declarations. 274.5.2 Function sc_pause284.5.3 Function sc_stop, sc_set_stop_mode, and sc_get_stop_mode 294.5.4 Function sc_time_stamp 304.5.5 Function sc_delta_count 314.5.6 Function sc_is_running 314.5.7 Functions to detect pending activity 314

34、.5.8 Function sc_get_status. 325. Core language class definitions . 355.1 Class header files . 355.1.1 #include “systemc“.355.1.2 #include “systemc.h“ 355.2 sc_module 375.2.1 Description. 375.2.2 Class definition 375.2.3 Constraints on usage 395.2.4 kind 395.2.5 SC_MODULE . 405.2.6 Constructors . 40

35、5.2.7 SC_CTOR 405.2.8 SC_HAS_PROCESS . 415.2.9 SC_METHOD, SC_THREAD, SC_CTHREAD. 425.2.10 Method process 435.2.11 Thread and clocked thread processes. 435.2.12 Clocked thread processes. 445.2.13 reset_signal_is and async_reset_signal_is . 465.2.14 sensitive . 485.2.15 dont_initialize 485.2.16 set_st

36、ack_size. 495.2.17 next_trigger 505.2.18 wait. 525.2.19 Positional port binding.535.2.20 before_end_of_elaboration, end_of_elaboration, start_of_simulation, end_of_simulation . 555.2.21 get_child_objects and get_child_events 555.2.22 sc_gen_unique_name. 565.2.23 sc_behavior and sc_channel. 565.3 sc_

37、module_name . 575.3.1 Description. 575.3.2 Class definition 575.3.3 Constraints on usage 585.3.4 Module hierarchy.585.3.5 Member functions 585.4 sc_sensitive 605.4.1 Description. 605.4.2 Class definition 605.4.3 Constraints on usage 605.4.4 operator and sc_signal_in_if. 1366.2.1 Description. 1366.2.

38、2 Class definition 1366.2.3 Member functions 1376.3 sc_signal_inout_if 1376.3.1 Description. 1376.3.2 Class definition 1376.3.3 Member functions 1386.4 sc_signal. 1396.4.1 Description. 1396.4.2 Class definition 1396.4.3 Template parameter T 1406.4.4 Reading and writing signals. 1406.4.5 Constructors

39、 . 1416.4.6 register_port . 1416.4.7 Member functions for reading . 1416.4.8 Member functions for writing 1426.4.9 Member functions for events . 1426.4.10 Diagnostic member functions 1436.4.11 operator and sc_signal 1446.5.1 Description. 1446.5.2 Class definition 1446.5.3 Member functions 1466.6 sc_

40、buffer 1476.6.1 Description. 1476.6.2 Class definition 1476.6.3 Constructors . 1476.6.4 Member functions 1486.7 sc_clock . 1496.7.1 Description. 1496.7.2 Class definition 1496.7.3 Characteristic properties 1506.7.4 Constructors . 1506.7.5 write . 1516.7.6 Diagnostic member functions 1516.7.7 before_

41、end_of_elaboration 1516.7.8 sc_in_clk 1516.8 sc_in . 1526.8.1 Description. 1526.8.2 Class definition 1526.8.3 Member functions 1536.8.4 Function sc_trace . 1536.8.5 end_of_elaboration 1536.9 sc_in and sc_in. 1536.9.1 Description. 1536.9.2 Class definition 1546.9.3 Member functions 155xiiiCopyright 2

42、012 IEEE. All rights reserved.6.10 sc_inout 1566.10.1 Description. 1566.10.2 Class definition 1566.10.3 Member functions 1576.10.4 initialize . 1576.10.5 Function sc_trace .1576.10.6 end_of_elaboration 1586.10.7 Binding. 1586.11 sc_inout and sc_inout 1586.11.1 Description. 1586.11.2 Class definition

43、 1586.11.3 Member functions 1606.12 sc_out . 1606.12.1 Description. 1606.12.2 Class definition 1606.12.3 Member functions 1616.13 sc_signal_resolved . 1616.13.1 Description. 1616.13.2 Class definition 1616.13.3 Constructors . 1626.13.4 Resolution semantics . 1626.13.5 Member functions 1636.14 sc_in_

44、resolved . 1646.14.1 Description. 1646.14.2 Class definition 1646.14.3 Member functions 1656.15 sc_inout_resolved 1656.15.1 Description. 1656.15.2 Class definition 1656.15.3 Member functions 1666.16 sc_out_resolved . 1666.16.1 Description. 1666.16.2 Class definition 1666.16.3 Member functions 1676.1

45、7 sc_signal_rv . 1676.17.1 Description. 1676.17.2 Class definition 1676.17.3 Semantics and member functions 1676.18 sc_in_rv 1686.18.1 Description. 1686.18.2 Class definition 1686.18.3 Member functions 1696.19 sc_inout_rv. 1696.19.1 Description. 1696.19.2 Class definition 1696.19.3 Member functions

46、1706.20 sc_out_rv 1706.20.1 Description. 1706.20.2 Class definition 1706.20.3 Member functions 1716.21 sc_fifo_in_if. 1716.21.1 Description. 1716.21.2 Class definition 1716.21.3 Member functions 172xivCopyright 2012 IEEE. All rights reserved.6.22 sc_fifo_out_if. 1726.22.1 Description. 1726.22.2 Clas

47、s definition 1726.22.3 Member functions 1736.23 sc_fifo 1736.23.1 Description. 1736.23.2 Class definition 1736.23.3 Template parameter T 1746.23.4 Constructors . 1756.23.5 register_port . 1756.23.6 Member functions for reading . 1756.23.7 Member functions for writing 1766.23.8 The update phase . 176

48、6.23.9 Member functions for events . 1776.23.10Member functions for available values and free slots . 1776.23.11Diagnostic member functions 1776.23.12operator 1776.24 sc_fifo_in . 1786.24.1 Description. 1786.24.2 Class definition 1786.24.3 Member functions 1796.25 sc_fifo_out . 1796.25.1 Description

49、. 1796.25.2 Class definition 1796.25.3 Member functions 1806.26 sc_mutex_if 1826.26.1 Description. 1826.26.2 Class definition 1826.26.3 Member functions 1826.27 sc_mutex 1826.27.1 Description. 1826.27.2 Class definition 1826.27.3 Constructors . 1836.27.4 Member functions 1836.28 sc_semaphore_if 1846.28.1 Description. 1846.28.2 Class definition 1846.28.3 Member functions 1846.29 sc_semaphore. 1856.29.1 Description. 1856.29.2 Class definition 1856.29.3 Constructors . 1856.29.4 Member functions 1856.30 sc_event_queue 1866.30.1 Description. 1866.30.2 Class defi

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1