Aa|l  @P pp   00@   P0P @ Author AccelleraTitleSystemVerilog 3.1/draft 1Subject9PRELIMINARY draft of SystemVerilog 3.1, SUBJECT TO CHANGEeBook1H $ d HHUÙ̀̀ff@  d Footnote TableFootnote**/ - :;,.!?6 e g;TOCHeading1Heading2Apr Davidmann Synthesizable SystemVerilogVerilogccscheckResults(inputdpi_function_import_propertydpi_function_protodpi_task_import_propertydpi_task_protoentrancyenumhttpinoutintlintingmtgnamed_function_protonamed_task_protoprogramaticallystructsvsvAckDisabledStatesvIsDisabledStatetypedefAD   EquationVariables3.0ax}bcc@cccdktkkkkkkk0FkGkIkJ kL kM kO kY k[ k] k_ k` kb kckekvkxkzk{k}k~kkkjkkkkkk kkkkkk!k"k$k          <$lastpagenum><$monthname> <$daynum>, <$year>"<$monthnum>/<$daynum>/<$shortyear>;<$monthname> <$daynum>, <$year> <$hour>:<$minute00> <$ampm>"<$monthnum>/<$daynum>/<$shortyear><$monthname> <$daynum>, <$year>"<$monthnum>/<$daynum>/<$shortyear> <$fullfilename> <$filename> <$paratext[ChapterTitle]> <$paratext[SectionTitle]> <$curpagenum> <$paranumonly[Chapter]><$paranum[Chapter]> (continued)+ (Sheet <$tblsheetnum> of <$tblsheetcount>)AnnexAnnex<$paranumonly>Pagepage<$pagenum>ExampleExample<$paranumonly> Draft Number (Draft 1) Draft_title7SystemVerilog 3.1, Accellera Extensions to Verilog-2001copy2003std#SystemVerilog 3.1a $paranumonly<$paranumonly>SectionSection<$paranumonly>TableTable<$paranumonly>$paranum <$paranum> $paratext <$paratext>VerilogXL version #VerilogXL 1.5cFigureFigure<$paranumonly>(HTML Headings88A//QTOCBBA11A22A 7dA;;OOJJDDGGQQMMRRTTALL\WAr>AjjllAnnppvvxxASbbbbbb b b b  b" b$ b& b( b* b, b. b0 b2 b4 b6 b8 b: b; b< b> b@ bB bD bF bH bJ bL bN bP bR bT bV bX bZ b\ b^ b` bb bd bf bh bj bl bn bp br bt bv bx bz b| b~ b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c  c  c c c c c c c ccc!c# c% c' c) c+ c- c/ c1 c3 c5 c7 c9 c; c= c? cBcDcFcHcJ cL cN cP cR cT cV cX cZ c\ c^ c` cb cd cf ch cj cl cn cp cr ct cv cx cz c| c~ c c c c c c c c c cccc c c c c c c c c c c c c c c ccccc c c c c c c c cccc c c c c c c c c c c c c c c c c c c c c d ddd d" d$ d& d( d* d, d. d0 d2 d4 d6d8 d: d<d> d@ dBdD dEd d dkdX0dY2dZ%d['uFKG]EuG1)k kskEkF kP9d\(d]*d^4d_/d`u;k)"ku Kus4)u$u*k9u5uy7)u 11)v 12)u14)ù17)kXkwk&k&wh15)x8)k/v22)k\vP 10)k3 k4 k5 vhkf&v2)v€3)vƀ5)vǀ6)kg&v 13)k&kw"16)w:18)w;19)w<20)w@21)x# 9)x<23)kkk kk%9kh j kk &k k6 k7 k8 k9 k: k; k< -ddkkpdk*1DdkiG|db dk=*M ddG- HN`@dHHN`@HRHRFootnote Hq<@`@dI Hq<@`@HzHz Single LineH'dJ Footnote$dK $% HH W, eH* }6be=?6 W- eN }2-bg>@2- W. eN }_?bi?A_? W/ e }$bk@B$ W0 e P:Heading2 }HbmACH W1 eH* }6boBD6 W2 eN }2-bqCE2- W3 eN }_?bsDF_? W4 e }$buEG$ W5 eP:HeadingRunIn }HbwFHH W6 eH* }6byGI6 W7 eN }2-b{HJ2- W8 eN }_?b}IK_? W9 e }$ ,bJL$ , W: e P:Indented } H,bKM H,, ; eP <e Parent = UL Q=e Depth = 0 } 6,bLN 6, W> eN }2 -,bMO2 -, W? eN }_ ?,bNP_ ?, W@ e }$9bOQ$9 WA eP:Mapping Table Cell }9HbPR9H WB eP }96bQS96 WC eN }29-bRT29- WD eN }_9?bSU_9? WE e }$IbTV$IWF eP:Mapping Table Title }IHbUWIHWG eP }I6bVXI6WH eN }2I-bWY2I-WI eN }_I?bXZ_I?WJ e }$Y,bY[$Y,WK e P:Numbered }YH,bZ\YH,,L eLI Me Parent = OL QNe Depth = 0 }Y6,b[]Y6,WO eN }2Y-,b\^2Y-,WP eN }_Y?,b]_Y?,WQ e }$b,b `$b,#WR e P:Numbered1 }bH,b _abH,,#S eLI Te Parent = OL QUe Depth = 0 }b6,b `bb6,#WV eN }2b-,b ac2b-,#WW eN }_b?,b bd_b?,#WX e }$b ce$#WY eP:TableFootnote }Hb dfH#WZ eP }6b eg6#W[ eN }2-b fh2-#W\ eN }_?b gi_?#W] e }$b hj$#W^ e P:TableTitle }Hb ikH#W_ eH* }6b jl6#W` eN }2-b km2-#Wa eN }_?b ln_?#Wb e }$b mo$#Wc eP:Title }Hb npH#Wd eH* }6b oq6#We eN }2-b pr2-#Wf eN }_?b qs_?#Wg e }$b rt$#Wh e C:Emphasis }Hb suH#Wi eEM }6b tv6#Wj eN }2-b uw2-#Wk eN }_?b vx_?#Wl e }$b wy$#Wm eC:EquationVariables }Hb xzH#Wn eEM }6b y{6#Wo eN }2-b z|2-#Wp eN }_?b {}_?#Wq e }$b |~$#Wr eX:Heading & Page }Hb }H#Ws eHeading }6b ~6#Wt eN }2-b 2-#Wu eN }_?b _?#Wv e }$b $#Ww eX:Page }Hb H#Wx eHeading }6b 6#Wy eN }2-b 2-#Wz eN }_?b _?#W{ e }$b $#W| eX:See Heading & Page }Hb  H#W} e See Also }6c  6#W~ eN }2-c 2-#W eN }_?c _?#W e }$c $#W e X:Table All }Hc  H#W e Table All }6c  6#W eN }2-c  2-#W eN }_?c _?#W e }$c $#W eX:Table Number & Page }Hc H# %Table PENumber }6c 6#W eN }2-c 2-#W  eN }_?c _?#W  e }$B c $B #W eHTML Options Table }B c B #W e }hB c  hB #W e }$Rc" $R#W eControl }Rc$ R#W eValue }hRHc& hRH#W e Comments }$bc( $b#W e Image Format }bc* b#W e0001IMAGGIF GIF }hbHc, hbH#W e }$rc.  $r#W e!Copy Files Imported by Reference }rc0 !r#W eN }hrHc2 "hrH#W e }$c4 !#$#W eExport Encoding }c6 "$#W e ISO-8859-1 }hHc8 #%hH#W e }$c: $&$# W eCSS Export Encoding }c< %'# W e ISO-8859-1 }hHc> &hH# W e }$$ cA$,$$ &!WeSystem Macros }$ cC$$ &!We }$ cE$$ &!We }\$ cG$\$ &!W e }$4hcI$(-$4h&"W! e Macro Name }4hcK$,.4h&"W" e Replace With }4hcM$-/4h&"W# eHead }\4BcO$.0\4B&"W$ e Comments }$Dh,cQ$/1$Dh,&#W% e StartOfDoc }Dh,cS$02Dh,&#W& e }Dh,cU$13Dh,,&#' % ��<$defaulttitle></P��ETITLE> }\��DB,��cW�$24���\��DB,&�#W( ��e }$ph��cY�$35���$ph&�$�W) ��e EndOfDoc }��ph��c[�$46�����ph&�$W* ��e }��ph��c]�$57�����ph&�$W+ ��e }\��pB��c_�$68���\��pB&�$W, ��e }$��h,��ca�$79���$��h,&�%�W- ��eStartOfSubDoc }����h,��cc�$8:�������h,&�%W. ��e }����h,��ce�$9;�������h,,&�%/ ��%<TITLE> ��<$defaulttitle></P��ETITLE> }\����B,��cg�$:<���\����B,&�%W0 ��e }$��h��ci�$;=���$��h&�&�W1 ��e EndOfSubDoc }����h��ck�$<>�������h&�&W2 ��e }����h��cm�$=?�������h&�&W3 ��e }\����B��co�$>@���\����B&�&W4 ��e }$��h,��cq�$?A���$��h,&�'�W5 ��eStartOfFirstSubDoc }����h,��cs�$@B�������h,&�'W6 ��e }����h,��cu�$AC�������h,,&�'7 ��%<TITLE> ��<$defaulttitle></P��ETITLE> }\����B,��cw�$BD���\����B,&�'W8 ��e }$��h��cy�$CE���$��h&�(�W9 ��eEndOfFirstSubDoc }����h��c{�$DF�������h&�(W: ��e }����h��c}�$EG�������h&�(W; ��e }\����B��c�$FH���\����B&�(W< ��e }$��h,��c�$GI���$��h,&�)�W= ��eStartOfLastSubDoc }����h,��c�$HJ�������h,&�)W> ��e }����h,��c�$IK�������h,,&�)? ��%<TITLE> ��<$defaulttitle></P��ETITLE> }\����B,��c�$JL���\����B,&�)W@ ��e }$$��h��c�$KM���$$��h&�*�WA ��eEndOfLastSubDoc }��$��h��c�$LN�����$��h&�*WB ��e }��$��h��c�$MO�����$��h&�*WC ��e }\��$��B��c�$NP���\��$��B&�*WD ��e }$:���� ��c�$OS���$:���� &�+�WE��eCross-Reference Macros }��:���� ��c�$�������:���� &�+WF��e }D��:���� ��c�$�����D��:���� &�+WG��e }$J������c�$PT���$J����&�,�WH ��e Macro Name }��J������c�$SU�����J����&�,WI ��e Replace With }D��J��?��c�$TV���D��J��?&�,WJ ��e Comments }$Z������c�$UW���$Z����&�-�WK ��eHeading }��Z������c�$VX�����Z����&�-WL ��e <$paratext> }D��Z��?��c�$WY���D��Z��?&�-WM ��e }$j������c�$XZ���$j����&�.�WN ��e See Also }��j������c�$Y[�����j����&�.WO ��eSee <$paratext>. }D��j��?��c�$Z\���D��j��?&�.WP ��e }$z������c�$[]���$z����&�/�WQ ��e Table All }��z������c�$\^�����z����&�/R ��%Table <$paranumonly>, P��E <$paratext> }D��z��?��c�$]_���D��z��?&�/WS ��e }$������c�$^`���$����&�0�WT ��e Table Number }��������c�$_a���������&�0WU ��eTable <$paranumonly> }D����?��c�$`����D����?&�0WV ��e }$$�� ��c�'�f���$$�� )�1�WW��eGeneral Macros }v$�� ��c�'�����v$�� )�1WX��e }$�� ��c�'�����$�� )�1WY��e }2��$�� ��c�'�����2��$�� )�1WZ��e }$4ev��c�'bg���$4ev)�2�W[ ��e Macro Name }v4ev��c�'fh���v4ev)�2W\ ��e Replace With }4C��c�'gi���4C)�2W] ��eHead }2��4Q��c�'hj���2��4Q)�2W^ ��e Comments }$Dev��c�'ik���$Dev)�3�W_ ��e }vDev��c�'jl���vDev)�3W` ��e }DC��c�'km���DC)�3Wa ��e }2��DQ��c�'ln���2��DQ)�3Wb ��e }$Z�� ��c�'mq���$Z�� )�4�Wc��eCharacter Macros }lZ�� ��c�'�����lZ�� )�4Wd��e }��Z�� ��c�'�������Z�� )�4We��e }$jH��c�'nr���$jH)�5�Wf ��e Character }lj����c�'qs���lj��)�5Wg ��e Replace With }��j?��c�'rt�����j?)�5Wh ��e Comments }$zH��c�'su���$zH)�6�Wi ��e }lz����c�'tv���lz��)�6Wj ��e¢ }��z?��c�'uw�����z?)�6Wk ��e }$��H��c�'vx���$��H)�7�Wl ��e }l������c�'wy���l����)�7Wm ��e© }����?��c�'xz�������?)�7Wn ��e }$��H��c�'y{���$��H)�8�Wo ��e }l������c�'z|���l����)�8Wp ��e® }����?��c�'{}�������?)�8Wq ��e }$��H��c�'|~���$��H)�9�Wr ��e }l������c�'}���l����)�9Ws ��e° }����?��c�'~��������?)�9Wt ��e }$��H��c�'���$��H)�:�Wu ��e }l������c�'����l����)�:Wv ��e-- }����?��c�'�������?)�:Ww ��e }$��H��c�'���$��H)�;�Wx ��e }l������c�'���l����)�;Wy ��e- }����?��c�'�������?)�;Wz ��e }$��H��d��'���$��H)�C�W{ ��e }l������d�'���l����)�CW ��e... }����?��d�'��������?)�CW ��e ��d������d���������""����������d������d��������� ��������$$h������d� �����$$h������ ����l��� $$h������d� �����$$h���������� ! ����W��Bm }$h�� ��d� ����$h��  �<�W|��eHeadings Table }��h�� ��d� �������h��  �<W}��e }��h�� ��d� �������h��  �<W~��e }$Cl��d!� ���$Cl �=�W ��eHeading Level }��Cu��d#� �����Cu �=W� ��eParagraph Format }��CH��d%� �����CH �=W ��e Comments }$Sl��d'� ���$Sl �>�W ��e1 }��Su��d)� �����Su �>W ��eTitle }��SH��d+� �����SH �>W ��e }$il��d-� ���$il �?�W ��e2 }��iu��d/� �����iu �?W UTUT��e Heading1 }��iH��d1� �����iH �?W ��e }${l��d3� ���${l �@�W ��e3 }��{u��d5� �����{u �@W  ��e Heading2 }��{H��d7� �����{H �@W  ��e }$l��d9� ���$l �A�W  ��e4 }��u��d;� �����u �AW  ��e HeadingRunIn }��H��d=� �����H �AW  ��e }$l��d?�  ���$l �B�W ��e4 }��u��dA� !�����u �BW  ��e TableTitle }��H��dC� ������H �BW ��e $$������d � �����$$����%##�����l��� $$������d � �����$$�����������_'"�_dinsx} "%(,048<@DHLPSVY\_bfjnqtwz}�����d������d ���������%%��������$$������d�$�����$$����"(&&����l��� $$������d�$�����$$�������� ���(a%�(,048<@DHLPSVY\_ bfjnqtwz}�����d������d���������(( ��������$$������d�'�����$$����%�))�����l��� $$������d�'�����$$�������� ����b(� bfjnqtwz}���� ���~��k>��8������~������������d������k���������22��������HZ����dR�-��������������� TableFootnote EGVR`@��dS�,����EGVR`@EPoEPo� TableFootnote��d������dU���������// ��������HH��ˆ����dV�.�����HH��ˆ�����00����l��� HH��ˆ����dW�.�����HH��ˆ��� ��� ����/�����e"<$paranum><$paratext><$pagenum> �e#<$paranum><$paratext><$pagenum> �e#<$paranum><$paratext><$pagenum> �e#<$paranum><$paratext><$pagenum> "Z�e$<$paranum><$paratext><$pagenum> #b�e#<$paranum><$paratext><$pagenum> $~�e"<$paranum><$paratext><$pagenum> %�e"<$paranum><$paratext><$pagenum> S&g��e UH��ˆ����k+��D���UH��ˆ�����99�����l���UH��ˆ����k�+�����UH��ˆ�����33 ����l��� UH��ˆ����k�+�����UH��ˆ����������2����W��e ��d������u���������@@�������� UH��ˆ����u�4�����UH��ˆ���1���1����@����+��� #Section 26.4, Imported functions ���@0Change title to Imported tasks and functions. F��� )Section 26.4.1, Required properties... 0����9Change use of word functions to tasks and functions. ���@9Change term function calls to task or function calls GR��� &Section 26.4.1.1 Instant completion 0^����;Change title to Instant completion of imported functions ����Add a new sentence at the end: ���� ���@TNote that imported tasks may consume time, similar to native SystemVerilog tasks. 0��� 8Section 26.4.1.3, Special properties pure and context 0����>Change all uses of the word function to task or function. ����8Similarly, functions changes to tasks or functions. ����gHowever, leave the second paragraph (starting with A function whose...) alone, and add the following ���@Usentence to the end of the paragraph: An imported task can never be declared pure. :ڪ��� :Add new section 26.4.1.5, Re-entrancy of imported tasks 0檚����Add: ����cSince imported tasks may block (consume time), it is possible for an imported tasks C code to be ����isimultaneously active in multiple execution threads. Standard re-entrancy considerations must be made by ����athe C programmer. Some examples of such considerations include safe use of static variables, and ���@Mensuring that only thread-safe C standard library calls (MT safe) are used. Q*��� +Add new section 26.4.1.6, C++ exceptions 06����Add: ����jIt is possible to implement DPI imported tasks and functions using C++, as long as C linkage conventions ����iare observed at the language boundary. If C++ is used, exceptions must not propagate out of any imported ����htask or function. Undefined behavior will result if an exception crosses the language boundary from C++ ���@into SystemVerilog. >z��� %Section 26.4.3, Context functions 0���� ���@WReplace the word function with the term task or function. Similar for functions. 1��� NIn Annex A.2.6, and excerpt thereof in Section 26.4.4, Import Declarations: p����Change BNF as follows: ���� ����dpi_import_export ::= ���Wimport DPI [ dpi_function_import_property ] [ c_identifier= ] dpi_function_proto; ���P|import DPI [ dpi_task_import_property ] [ c_identifier= ] dpi_task_proto; ����0dpi_function_import_property ::= context | pure ����%dpi_task_import_property ::= context ����dpi_function_proto ::= ���2function named_function_proto (footnotes a, b) ����dpi_task_proto ::= ���&task named_task_proto (footnote b) ���� ����[Footnote a) dpi_function_proto return types are restricted to small values, as per 26.4.5 ����cFootnote b) formals of dpi_function_proto and dpi_task_proto cannot use pass by reference mode and ����Vclass types cannot be passed at all; for the complete set of restrictions see 26.4.6. ���� ����`[ Note: These changes are consistent with sv-ccs LRM-5 adjustment in the 3.1a LRM. (See http://���@.www.eda.org/sv/LRMChanges.html for details) ] UH��ˆ����;4������UH��ˆ��„�D/���/����7����! ���`&Proposal: Exported Tasks (revision 5) *UTUT���` Motivation '��� kSystemVerilog 3.1s DPI supports imported and exported inter-language function calls. An imported function 0D����jis implemented in C, and it is callable from SystemVerilog. An exported function is implemented in System���@$Verilog, and it is callable from C. ,d��� oUsers have requested that the DPI export functionality be extended to include exported tasks. This will enable o���@&new and powerful modeling techniques. /��� nFor example, a testbench environment may be written in C, and make use of high-level function calls to effect 0����ihardware transactions in the DUT. Such a test environment could be achieved in SystemVerilog as follows. ����mStart up the testbench by calling an imported function from within a program block. The imported function is ����jthe gateway to a complex body of C procedural code. When necessary, the C code calls back into the System����nVerilog DUT by making calls to various exported tasks. Each such task effects a certain hardware transaction, ����kwhich normally will consume simulation time. The C code is impervious to this time consumption since it is ���@?transaction-level code, rather than cycle-accurate timed code. -۪��� iAnother application enabled by exported tasks is the seamless interleaving of C-based models with System0檛����fVerilog models. Simulation tools can now offer modeling environments in which C and SystemVerilog mod����pels all live on the same kernel threading system. The models call back-and-forth between each other in order to ����kachieve the users desired functionality. This is especially useful when moving from a transaction-level C-����jbased verification system into actual RTL implementation. The TLM C testbench can be re-used by replacing ���@Akey function calls into the DUT with calls to SV exported tasks. B'���` UT>U?���`Changes Q��� Section 26.1.1 0]����(Rename section to Tasks and Functions ���� ����'Add a new second paragraph as follows: ���� ����aIt is also possible to perform task enables across the language boundary. Foreign code may call ����nSystemVerilog tasks, and native Verilog code may call imported tasks. An � imported task�  has the same ����fsemantics as a native Verilog task: It never returns a value, and it may block and consume simulation ����time. ���� ����jIn the existing third paragraph (which starts Every imported function needs...), change all uses of the ����kword function to read task or function. In addition, the last sentence should be rewritten as follows: ���� ����gImported tasks and functions can have zero or more formal input, inout, or output arguments. Imported ����itasks always return a void value, and thus can only be used in statement context. Imported functions can ����2return a result or be defined as void functions. ���� ����hIn the existing fourth paragraph (which starts DPI is based..., add a concluding sentence as follows: ���� ���@aSimilar interchangeable semantics exist between native SystemVerilog tasks and imported tasks. DI��� Section 26.2.2 erratum U~���@bThe final sentence of the section refers to Annex A. This reference should be changed to Annex D. Ei}��� Section 26.3 pu|����_Replace all instances of the word function with task or function. Adjust grammar (plurals, ���@correspondences) as needed. UH��ˆ����;6������UH��ˆ����@66  ����l���Zl��d����k?�*;���Zl��d�����:: ����l��� UH��ˆ����k,������UH��ˆ����������1����W;��d Zl��d����k@������Zl��d����������8����W��d U$����kA�8M���U$�����??  ����l�����d������k���������=}�������� ��_���k�<�>�����_�����������D�;Hˆ����k�<=O}�r��D�;Hˆ���r�NN����l��� U$����kB������U$����������;����W ��d UH��ˆ����u�4�����UH��ˆ���7^55 ����l�����d������k&���������BB ��������UH��ˆ����k'�A�����UH��ˆ�����CC ����l��� UH��ˆ����k(�A�����UH��ˆ����������B����W(UTUT��d U8I��6y��k-� 1����U8I��6y���EE �����l��� U8I��6y��k.� �����U8I��6yJ� ��� FF��D����?��"l @i��d Ah��d7Copyright 2002, 2003 by Accellera Organization, Inc. pUR��d1370 Trancas Street #163 qUR��dNapa, CA 94558 r��dPhone: (707) 251-9977 s��dFax: (707) 251-9877 t��d u��d v��$cAll rights reserved. No part of this document may be reproduced or distributed in any medium whatP`��DZsoever to any third parties without prior written consent of Accellera Organization, Inc. UBI��J��k1��������[[�E����U$����kj��L���U$�����HH ����l��� U$����kk������U$����������G�����e Accellera Q6�m8 SystemVerilog 3.1a'Extensions to Verilog-2001 ��d������kQ���������JT ��������U$����kR�I�R���U$�����KK ����l��� U$����kS�I�����U$����������J����5�d Accellera Q=�lSystemVerilog 3.1a  Uw��R��kl�GW���Uw��R���VV ����l���Zw��R��kC�;����Zw��R���qq ����l��� D�;Hˆ����k�<�����D�;Hˆ�������������>�����U$����k�<>Q���U$�����PP ����l��� U$����k�<�����U$����������O������d Accellera Q)�l8Extensions to Verilog-2001 SystemVerilog 3.1a  U�w��R��k�<Or���U�w��R���YY����l���Uw��R��kT�IJT���Uw��R���SS����l��� Uw��R��kU�I�����Uw��R��������R����C��l^!#"Copyright #2003$ Accellera. All rights reserved.%Running H/F 4& QH��d UH��ˆ����kV�IR����UH��ˆ�����UU����l��� UH��ˆ����kW�I�����UH��ˆ����������T����W_��d Uw��R��km������Uw��R��������L����7��l^(#*Copyright +2003, Accellera. All rights reserved.-Running H/F 4. QJ��d D�;Hˆ����kn�L\|�\��D�;Hˆ���\�XX ����l��� D�;Hˆ����ko������D�;Hˆ�������������W����� U�w��R��k�<�����U�w��R��������Q����.��m^ Running H/F 4Copyright 2003 Accellera. All rights reserved./#0 Q8��e ��d������v���������^^���������h ���k2� F������h ���h…UHˆ����kp�W||W���UHˆ����W{{ ����l��� UH��ˆ����v�Z�����UH��ˆ��…�4���4����^����2��� &Section 26.4.4, Import declarations 0 ����jChange word functions to tasks and functions, except in the last sentence of the 2nd paragraph. Leave ����fthat one alone (Imported functions can return a result or be defined as void functions.). Add a new ����msentence after that says Imported tasks never return a result, and thus are always declared in foreign code ����as void functions. ���� ����hThe third paragraph ends with the sentence An import declaration can also specify an optional function ����hproperty: context or pure. Change this sentence as follows: An import declaration can also specify an ����goptional function property. Imported functions can have properties context or pure; imported tasks can ����have property context. ���� ����]In the examples at the bottom of the section, in miscellanea, add a new example like this: ��@Fimport DPI task checkResults(input string s, bit [511:0] packet); I��� ,Section 26.4.6, Types of formal arguments ���@>Change all uses of the word function to task or function. 3ʪ��� =Add new section after 26.6 (will be: 26.7), Exported tasks 0֪ ���� ����fSystemVerilog allows tasks to be called from a foreign language, similar to functions. Such tasks are ����termed exported tasks. ���� ����iAll aspects of exported functions described above in section 26.6 apply to exported tasks. This includes ����Hlegal declaration scopes as well as usage of the optional c_identifier. ���� ����kIt is never legal to call an exported task from within an imported function. This semantic is identical to ����`native SystemVerilog semantics, in which it is illegal for a function to perform a task enable. ���� ����iIt is legal for an imported task to call an exported task only if the imported task is declared with the ����Zcontext�  property. See section 26.4.3 (Context tasks and functions) for more details. "���� ����eOne difference between exported tasks and exported functions is that SystemVerilog tasks do not have ����preturn value types. The return value of an exported task is an int value which indicates if a disable is active ����(or not on the current execution thread. ���� ����cSimilarly, imported tasks return an int value which is used to indicate that the imported task has ���@Macknowledged a disable. See section 26.8 for more detail on disables in DPI. 9ª��� PAdd new section after 26.7 (will be: 26.8), Disabling DPI tasks and functions pΪ���� ����Add the following paragraphs: ���� ����lIt is possible for a disable statement to disable a block that is currently executing a mixed language call ����ichain. When a DPI import task or function is disabled, the C code is required to follow a simple disable ����hprotocol. The protocol gives the C code the opportunity to perform any necessary resource cleanup, such ����Pas closing open file handles, closing open vpi handles, or freeing heap memory. ���� ����kAn imported task or function is said to be in the disabled state when a disable statement somewhere in the ����odesign targets either it or a parent for disabling. Note that the only way for an imported task or function to ����genter the disabled state is immediately after the return of a call to an exported task or function. An ����bimportant aspect of the protocol is that disabled import tasks and functions must programatically ����lacknowledge that they have been disabled. A task or function can determine that it is in the disabled state ����-by calling API function svIsDisabledState(). ���� ����1The protocol is composed of the following items: UH��ˆ����v�Z�����UH��ˆ���@a]]  ����l�����d������v���������aa�������� UH��ˆ����v�_�����UH��ˆ��…�2���2����a����9����l1. When an exported task returns due to a disable, it must return a value of 1. Otherwise it must return 0. 0����l2. When an imported task returns due to a disable, it must return a value of 1. Otherwise it must return 0. ����i3. Before an imported function returns due to a disable, it must call API function svAckDisabledState(). ����k4. Once an imported task or function enters the disabled state, it is illegal to make any further calls to ����exported tasks or functions. ���� ����kItems 2, 3, and 4 are mandatory behavior for imported DPI tasks and functions. It is the responsibility of ����9the DPI programmer to correctly implement the behavior. ���� ����cItem 1 is guaranteed by SystemVerilog simulators. In addition, simulators must implement checks to ����nensure that items 2, 3, and 4 are correctly followed by imported tasks and functions. If any protocol item is ����<not correctly followed, a fatal simulation error is issued. ���� ����rNote that if an exported task itself is the target of a disable, its parent imported task is not considered to be ����oin the disabled state when the exported task returns. In such cases the exported task will return value 0, and ����4calls to svIsDisabledState() will return 0 as well. ���� ����bWhen a DPI imported task or function returns due to a disable, the values of its output and inout ����dparameters are undefined. Similarly, function return values are undefined when an imported function ����ereturns due to a disable. C programmers may return values from disabled functions, and C programmers ����cmay write values into the locations of output and inout parameters of imported tasks or functions. ����`However, SystemVerilog simulators are not obligated to propagate any such values to the calling ���@/SystemVerilog code if a disable is in effect. L"��� Annex A.2.6, Section 26.6 0.����VAdd new text to Annex A.2.6, and include the excerpt here as is done in section 26.6> ����dpi_import_export ::= ��@:| export DPI [ c_identifier = ] task task_identifier; 4Z��� Section D.1, Overview 0f����:There are two bullet items starting at the 2nd paragraph. ����7Add two new bullets after the existing two as follows: ���R Tasks implemented in SystemVerilog and specified in export declarations can be ���Lcalled from C; such functions are referred to as � exported tasks� . ���d Functions implemented in C which can be called from SystemVerilog, and can in turn call exported ���@4tasks, are referred to as � imported tasks� . M��� Section D.3, Portability ª���@+Change functions to tasks or functions N֪��� 7Section D.5, Semantic Constraints, and Section D.5.1 0⪅����?Change imported functions to imported tasks and functions. ����>Change exported functions to exported tasks and functions ���@TChange SystemVerilog function to SystemVerilog task or function (4th paragraph) O��� 3Section D.5.5, context and non-context functions ���@-Change functions to tasks and functions P.��� 8Section D.7.2, Calling SystemVerilog functions from C p:����,Change functions to tasks and functions ���� ����;Add the following new paragraph at the end of the section: ����eCalling a SystemVerilog task from C is the same as calling a SystemVerilog function from C with the ����jexception that the return type of an exported task is an int value which has a special meaning related to ����hdisable statements. Please see section 26.8 for details on disable processing by DPI imported tasks and ���@ functions. UH��ˆ����v�_�����UH��ˆ���^d`` ����l�����d������x$���������dd�������� UH��ˆ����x%�b�����UH��ˆ����������d����<��$+Section D.8, and all child D.8.x sections. ��(Rename to Context tasks and functions 0��hChange functions to tasks and functions throughout the section (exception: VPI/PLI functions should ��Dnot be changed) R��$OIn Annex E.1, add the following two API function descriptions at the very end: J��/* p ��G * Returns 1 if the current execution thread is in the disabled state. ��A * Disable protocol must be adhered to if in the disabled state. �� */ ��int svIsDisabledState(); �� ��/* ��V * Imported functions call this API function during disable processing to acknowledge ��\ * that they are correctly participating in the DPI disable protocol. This function must be ��T * called before returning from an imported function that is in the disabled state. �� */ ��Dvoid svAckDisabledState(); UH��ˆ����x'�b�����UH��ˆ���a�cc  ����l��� ��d������j���������jx��������U$����j�i�v���U$�����uu����l��� ���~��k��l������~����������UH��ˆ����k�kn���UH��ˆ�����mm ����l��� UH��ˆ����k������UH��ˆ����������l����WU��d U$����k�lp���U$�����oo ����l��� U$����k������U$����������n����V���` Accellera Q]��h8Extensions to Verilog-20019SystemVerilog 3.1a: U�w��R��k�n����U�w��R���zz ����l��� Zw��R��kD������Zw��R��������M����W!��l^Running H/F 4Copyright 2003 Accellera. All rights reserved.# UHˆ����k�<Q}}>���UHˆ����>ss����l��� UHˆ����k�<�����UHˆ����������r����WK��d  U$����j�i�����U$����������j����j��` Accellera Qm��h82SystemVerilog 3.1a3Extensions to Verilog-2001 Uw��R��j�ijx���Uw��R���ww����l��� Uw��R��j�i�����Uw��R��������v����Wn��lQ425Copyright 620037 Accellera. All rights reserved.8A UH��ˆ����j�iv����UH��ˆ�����yy����l��� UH��ˆ����j�i�����UH��ˆ����������x����Wo��d U�w��R��k������U�w��R��������p����W^��lQ;<Copyright =2003> Accellera. All rights reserved.?3@ UHˆ����kq������UHˆ����������\����WS��e UH�ˆ����kr�\����UH�ˆ��W\UH�ˆ����k�<r����UH�ˆ��>r��d�������i��Left�d����� ��Right�d����� �� Reference�d������������d���������HTML�d����� ��HTML�d�����  ��Headings�d����� $��HTML�d�����'��HTML�d����� ��First�d����� I�� last left�d������.��TOC�d����� A�� boilerplate�d����� �� title page�d������� Index.left�d�����<�� Index.right�d������+��Cover�d�����4�����d�����Z�����d�����_�����d������b�������������@��@��������������������� ���������������������������Mapping Table Title������. ������@��@��������������������� ���������������������������Body������. ������@��@��������������������� ��������������������������Mapping Table Cell������. ��� �f�@������������������� ��������������������������Body������. ��f�@��������L������������ ��������������������������. �.� NumberedList2���� L:<n+>)\t�. ������@��@��������������������� ����������������������������Mapping Table Title������. ������@��@��������TA������������ ��������������� � ���������� TableTitle.1����T:Table<$chapnum><n=1>: Body. ��f�@��������L�A����������� ��������������������������. NumberedList1���� L:<n=1>)\tL,NumberedListb. �����f�@��������AE������������ ��������������� � ����������x.Annex.TableTitle.1����A:Table <A><n=1>T,Text. ������@��@��������������������� ����������������������������Mapping Table Cell������. �����f�@����������������������� ����������������������������� PageHeader.right������. ������@��@������������������������������������� ����������� �Mapping Table Cell������. ������@��@������������������������������������� ����������� �Mapping Table Cell������. ������@��@��������������������� ���������������� ����������� �Mapping Table Cell������. ������@��@��������T�A���� ������� ��������������� � ���������� TableTitle����T:Table<$chapnum><n+>: Body. ��f�@��������L������������ ��������������������������. NumberedList2���� L:<n+>)\t�. �����f�@��������AE������������ ��������������� � ����������x.Annex.TableTitle����A:Table <A><n+1>T,Text. ��f�@��������L������������ ��������������������������. � �.��#�.� NumberedList2���� L:<n+>)\t�. ������f�@����������������������� ����������������������������� ���� PageHeader.left������. (���f�@��������������������� �������������������������.�.�=�.�BNF_SyntaxItem������. ���f�@��������D������������ ��������������������������.� DashedList����D:\t�. ��� �@��@��������SA������������ ��������������� �����������SyntaxBoxCaption.1����S:Syntax<$chapnum><n=1>Body. (���f�@�������������������� �������������������������.�.�=�.�BNF_SyntaxItem������. ����f�@��������������������� ��������������� ���������� $���H���l����������������������� �����D�����h���������� FL,FlushLeft������. �����f�@�������������������� �������������������������� �� M���� CommitteeList������. � ��<f�@��������������������� ���������������� ��������� $�� H�� l�� ���� ���� ���� ���� ���� D���� h���� ���� P1,Normal������. ��f�@��������LA����������� ��������������������������. NumberedList1���� L:<n=1>)\tL,NumberedListb. �����f�@���������������������� ����������������������������� PageHeader.right������. ��� �@��@��������������������� �����������������������������������..H1,1stLevelHeadTOC������. �����f�@����������������������� ��������������������������� ���� ���� ���� PageFooter.left������. ������@��@��������������������� ����������������������������-�������..AT,AnnexTitleTOC������. ������@��@��������������������� �������������������������-���F���Z�������.. AH2,A.1.1TOC������. ��� �@��@��������SA������������ ��������������� �����������SyntaxBoxCaption����S:Syntax<$chapnum><n+>Body. ���� �@��@��������������������� �������������������������-���F�������.. AH1,A.1TOC������. ������@��@��������TA���� ������� ��������������� � ���������� TableTitle����T:Table<$chapnum><n+>: Body. ��� f�@��������HU��� ������� ��������������� � ��������� $���H���l����������������������� �����D�����h����������H3,1.1.1���H3H:<$chapnum>.<n>.<n+> Body. �����f�@��������������������� ��������������� ���������� $���H���l����������������������� �����D�����h���������� FL,FlushLeft������. ��� �f�@������������������ ��������������������������Body������. ���� �@��@��������������������� �������������������������-�������.. AN,AnnexTOC������. ��� �@��@��������������������� �������������������������0�������..SectionHeadingTOC������. ��� �f�@��������AU����������� ��������������� � ����������x.Annex.H1,A.1���� A:<A>.<n+> T,Text. ������@��@��������������������� ��������������������������.�*�.�����.. H2,1.1TOC������. ������f�@���������������������� ����������������������������� PageHeader.left������. ��� �@��@��������������������� �������������������������-�������..x.Annex.HeadingTOC������. ��f�@��������L����������� ��������������������������. NumberedList2���� L:<n+>)\t�. ��f�@��������������������� �������������������������(�.�<�.�P�.�d�.�x�.����.����.����.����.����.����.����.����.�,���.�@���.�T���.�h���.�|���.����.����.����.����.�Body.Indented.1������. ����f�@��������AE����������� ��������������� � ��������� $���H���l����������������������� �����D�����h����������x.Annex.H2,A.1.1���AH2A:<A>.<n>.<n+> T,Text. ����f�@������������������� ��������������������������x.Annex.normative������. �����f�@����������������������� ��������������������������� ���� ���� ���� PageFooter.right������. �����f�@���������������������� ����������������������������� ���� PageFooter.left������. �����@��@��������AQ����������� =������������ � ����������x.Annex.Heading���� A:Annex <A+> SectionTitle. ��� f�@���������D����������� ������������������������� $���H���l����������������������� �����D�����h����������Note����� P1,Normal. �����f�@���������������������� ����������������������������� ���� PageFooter.right������. ����f�@��������AE����������� ��������������� � ��������� $���H���l����������������������� �����D�����h����������x.Annex.H3,A.1.1.1���AH3A:<A>.<n>.<n>.<n+> T,Text. ��� �f�@��������BE����������� �������������������������� Bibliography���� B:[B<n+>] �. ���f�@���������������������� �������������������������$�.�4�.�D�.�T�.�d�.�t�.����.����.����.����.����.����.����.����.����.����.�$���.�4���.�D���.�T���.�d���.�t���.����.����.����.����.����.����.�ExampleCode.Indented������. �����f�@���������������������� ��������������������������.� �.�0�.�@�.�P�.�`�.�p�.����.����.����.����.����.����.����.����.�����.����.� ���.�0���.�@���.�P���.�`���.�p���.����.����.����.����.����.����.� ExampleCode������. �����f�@�������������������� ��������������������������CellBody������. ���f�@��������HU��� ������� ��������������� � ��������� $���H���l����������������������� �����D�����h���������� H4,1.1.1.1���H4H:<$chapnum>.<n>.<n>.<n+> Body. (���f�@������������������������������������� ���������!.�.�=�.�BNF_SyntaxItem������. ���f�@��������HU��� ������� ��������������� � ��������� $���H���l����������������������� �����D�����h���������� H5,1.1.1.1.1���H5H:<$chapnum>.<n>.<n>.<n>.<n+> Body. ���� �@��@��������HQ������������ =������������ � ����������SectionHeading����H:Section <$chapnum> SectionTitle. �����f�@������������������ ���������������� ���������� CellHeading������. ��� f�@���������T�������������������������� � ���������� SectionTitle�����Body. ��� �f�@������������������� ���������������� ����������Body������. �����f�@������������������ �������������������������� TableText������. ��f�@��������D������������ ��������������������������.�DashedList.indented����D:\t�. ��� �f�@��������AE����������� ��������������� � ��������� $���H���l����������������������� �����D�����h����������x.Annex.H4,A.1.1.1.1���AH4A:<A>.<n>.<n>.<n>.<n+> T,Text. ��� �f�@��������AE����������� ��������������� � ��������� $���H���l����������������������� �����D�����h����������x.Annex.H5,A.1.1.1.1.1���AH5A:<A>.<n>.<n>.<n>.<n>.<n+> T,Text. ��� f�@��������HU���������� ��������������� � ��������� $���H���l����������������������� �����D�����h����������H2,1.1���H2H:<$chapnum>.<n+> Body. ��� �f�@��������HE������������ ������������������������� $���H���l����������������������� �����D�����h����������x.BNF.H2��� definition H:<n>.<n+> P1,Normal. ���f�@����������������������������������������������Footnote������. ��� �f�@��������HE������������ ������������������������� $���H���l����������������������� �����D�����h����������x.BNF.H3��� definitionH:<n>.<n>.<n+> P1,Normal. ��� �f�@��������HE������������ ������������������������� $���H���l����������������������� �����D�����h����������x.BNF.H4��� definitionH:<n>.<n>.<n>.<n+> P1,Normal. ��� �f�@��������HE������������ ������������������������� $���H���l����������������������� �����D�����h����������x.BNF.H5��� definitionH:<n>.<n>.<n>.<n>.<n+> P1,Normal. �f�@��������ZA����������� ������������������������� �� NumberedLista���� Z:<a=1>)\t NumberedList2. �f�@��������Z����������� ������������������������� �� NumberedListb���� Z:<a+>)\t�. 33�f�@��������ZA����������� ��������������������������� NumberedListi���� Z:<r=1>)\tNumberedListii. 33�f�@��������Z����������� ��������������������������� NumberedListii���� Z:<r+>)\t�. ����f�@��������������������� �������������������������� CellBody.X������.  ��� �f�@��������AE������������ ��������������� � ����������x.Annex.FigureTitle����A:Figure <A><n+>T,Text. �����@��@��������������������� ��������������������������� A�� f�� ���� ���� ���� ���� ���� XCourier12������. �����f�@���������������������� ������������������������� �� 6�� Q�� l�� ���� ���� ���� ���� ���� ���� )���� D���� _���� CellBody������. �����f�@������������������� ���������������� ���������� CellHeading������.  ��� �f�@��������AE������������ ��������������� � ����������x.Annex.FigureTitle.1����A:Figure <A><n=1>T,Text. 33�f�@��������LA����������� �������������������������33�� NumberedNote1���� L:<n=1>)\tL,NumberedListb. ��� �@��@��������EA������������ �� =������������ �����������ExampleCaption����E:Example<$chapnum><n+> Body. ��� �@��@��������EA������������ �� =������������ �����������ExampleCaption.1����E:Example<$chapnum><n=1> Body. ��� f�@��������FE������������ ��������������� � ����������FigureCaption.1����F:Figure <$chapnum><n=1> FigCaptionCont. ��� f�@��������FE������������ ��������������� � ���������� FigureCaption����F:Figure <$chapnum><n+> FigCaptionCont. 33�f�@��������L����������� �������������������������33�� NumberedNote2���� L:<n+>)\t�. ���� f�@���������T�������������������������� � ���������� x.Annex.Title�����T,Text. �� ������������������������ ���������������������������������������"��������1.DELETE ������������������������ �������������������������������������������������� BNFitalic��������������� ������������������3 8���� ����������� �������3 8���� ����������� ������������� �������Keyword�������������������������2.DRAFT �������������� � ������������� ����������� ������� BNFkeyword �������������� � ��������� ������������������������ ��������������� �������������������������������3.FIX �������������� ��������� Superscript ��������������������Code �������������� ���������� ������������������������ ������������������������ ������������������������ ��������������� ������������������������������������������������ ���������� �����������������������d���������������������������������������������;����������������������d�����Z�������Z�����������������Thin����Medium����Double����Thick�@���� Very Thin�������������������� ���������0|}|�33~}~�33~}~�33~}~�33~}~�Format A��������������H� Mapping Table� �����������H~}~�H~}~�H~}~�H~}~�H~}~�Format B���z��>����������������H����6����-����?������ @�� ������������������H����z�� ����!*������h����h����h����B����_�� N��+0������������������?����_�� ��13������ev����ev����C����Q������ p��4C������H����������?����)�� W��<B������l����u����H�����C�$�� �������������������$Cz�����������������������$Sz���������������� ��!�"�$qz������������#���$��%��&��'��$z��,����������(���)��*��+��,��$z������������-���.��/��0��1��$z������������2���3��4��5��6��$z������ ������7���8��9��:��;��$z������ ������< ���= ��> ��? ��@ ��$z������ ������A ���B ��C ��D ��E ��$z������ ������F ���G ��H ��I ��J ��$ z��,���� ������K ���L ��M ��N ��O ��$9z������ ������P ���Q ��R ��S ��T ��$Iz������ ������U���V��W��X��Y��$Yz��,����������Z���[��\��]��^��$bz��,����#�����_���`��a��b��c��$��z������#������d���e��f��g��h��$��z������#������i���j��k��l��m��$��z������#������n���o��p��q��r��$��z������#������s���t��u��v��w��$��z������#������x���y��z��{��|��$��z������#������}���~���������$��z������#�����������������$��z������#����������� �� �� ��$��z������#������ ��� ��������$��z�������#����������������$B���� �����#������������$R��������#��������������$b��������#�������������$r��������#��������� ��!��$�������� #������"���#��$��$���������#������% ���& ��' ��$$�� �����"&�������(!���)!�*!�+!�$4z������!#&�������,"���-"��."��/"��$Dz��,����"$&������0#���1#��2#��3#��$pz������#%&������4$���5$��6$��7$��$��z��,����$&&������8%���9%��:%��;%��$��z������%'&������<&���=&��>&��?&��$��z��,����&(&������@'���A'��B'��C'��$��z������')&������D(���E(��F(��G(��$��z��,����(*&������H)���I)��J)��K)��$$��z������)�&������L*���M*��N*��O*��$:���� �����,&�������P+���Q+�R+�$J��_������+-&�������S,���T,��U,��$Z��_������,.&������V-���W-��X-��$j��_������-/&������Y.���Z.��[.��$z��_������.0&������\/���]/��^/��$��_������/�&������_0���`0��a0��$$�� �����2)�������b1���c1�d1�e1�$4_������13)�������f2���g2��h2��i2��$D_������2�)������j3���k3��l3��m3��$Z�� �����5)�������n4���o4�p4�$j������46)�������q5���r5��s5��$z������57)������t6���u6��v6��$��������68)������w7���x7��y7��$��������79)������z8���{8��|8��$��������8:)������}9���~9��9��$��������9;)�������:���:��:��$��������:C)������;���;��;��$h�� �����= ������� <���<�<�$C)������<> �������=���=��=��$S)������=? ������>���>��>��$i)������>@ ������?���?��?��${)������?A ������@���@��@��$)������@B ������A���A��A��$)������A� ������B��� B��!B��$��������;�)������C���C��C����Comment�� �k� �k��k��kH� �kK� �kN� �kZ�!" �k^�#$ �ka�%&�kd� '�ku�(*�ky�+,�k|�-.�k�/0�k�23�k��45�k�67�k�8A�k �9:�k�;<�k�=>�k �?@�k#�� ����d� �Black�������T!�White����dd���A�Red���dd�����Green���d�d��� �Blue���d�����Cyan�����d���Magenta����d���� �Yellow���FF������ Dark Green������Header/Footer $1Header/Footer $1Header/Footer $2Header/Footer $2IndexIndexCommentCommentSubjectSubjectAuthorAuthorGlossaryGlossaryEquationEquation Hypertext Hypertext  Cross-Ref Cross-Ref Conditional TextConditional TextPositionFMPrivatePositionFMPrivateRangeEndFMPrivateRangeEndFMPrivate HTML Macro HTML Macro�����W.Times New Roman.R.400�� FrameRoman� W.Arial.R.700�� FrameRoman�W.Times New Roman.R.700�� FrameRoman� W.Arial.I.400�� FrameRoman� W.Arial.R.400�� FrameRoman�W.Courier New.R.400�� FrameRoman�W.Times New Roman.I.400�� FrameRoman�W.Courier New.R.700�� FrameRoman� Arial Courier NewTimes New Roman Regular Regular BoldRegularItalic�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?> <x:xapmeta xmlns:x='adobe:ns:meta/' x:xaptk='XMP toolkit 2.8.1-28, framework 1.5'> <rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'> <rdf:Description about='' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:CreatorTool='FrameMaker 7.0'></rdf:Description> <rdf:Description about='' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:CreateDate='2001-09-15T15:13:54.0Z' xap:ModifyDate='2003-11-12T23:07:17.0Z' xap:MetadataDate='2003-11-12T23:07:17.0Z'></rdf:Description> <rdf:Description about='' xmlns:dc='http://purl.org/dc/elements/1.1/'><dc:creator><rdf:Seq><rdf:li>Accellera</rdf:li></rdf:Seq></dc:creator><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>SystemVerilog 3.1/draft 1</rdf:li></rdf:Alt></dc:title><dc:description><rdf:Alt><rdf:li xml:lang='x-default'>PRELIMINARY draft of SystemVerilog 3.1, SUBJECT TO CHANGE</rdf:li></rdf:Alt></dc:description></rdf:Description> </rdf:RDF> </x:xapmeta> <?xpacket end='w'?>�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Cm{H*q^<SJP2WדE"FAy{O[m'ӽ[3 }2W(E:3Z㖸]w d"ԦbSdl"C|.\i<< .7:H8?0za)ߊ-?֑H"39Hl0i8 qK-2e2/Gg Mn-FGQ덂Ol=2\swUP-X(d;XLמX3uwh)W.������