Aa!#q  ŀPP P 0p@@``@` @@P */Author AccelleraTitleSystemVerilog 3.1/draft 1Subject9PRELIMINARY draft of SystemVerilog 3.1, SUBJECT TO CHANGEH $ d HHUÙ̀̀ff@  d Footnote TableFootnote**/ - :;,.!? f/hTOCHeading1Heading2KANDing ClassDefnForkJoinHighComm ModPortPortORingRefObjsRhsTFDecla,b,ca=b=c=da=d assert_foo attemptIdb,cb=d burst_modec=d clocking_declconstant_expressioncpud_clkdata_endec else_stat endclocking endproperty endsequence endsequnceexpr fpu_propsgnthold(expi_clkinterface_and_generate_itemirdy master_clkminmin:maxmodule_or_generate_itemmult_clock_propn:mn:nordered(counter ova_e_holdp_clkpast(exp)==exp)[*min:maxs_clkscopingseq_name seq_number start_transstatement_itemsvsysclktrdy unclockeduntypedvipIterate(vpiModulexxxHandle vpiActualDefn vpiDPiExtern vpiDefault vpiForkJoin vpiIteratevpiIterate(vpiTaskFunc vpiModPortvpiModPortPortvpiModuleRoot_handlevpiR vpiReturnvpiReturn,Function_handle vpiUndefinedvpiUserDefinedvpi_Iterate(vpiTask,TFDeclxxxx   PEquationVariables3.0a%3E5Zsm<GI575!m]GIKMNPQSaXy{}          d,z`L |V=} j2OC-/02{*Hkq/yV)"3T   !"#"'$)$           "$ <$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> $paranumonly<$paranumonly>SectionSection<$paranumonly> Draft Number (Draft 1) Draft_titleStd P 1364.1-1999 (Draft 2)copy2003std#SystemVerilog 3.1/draft 4VerilogXL version #VerilogXL 1.5cTableTable<$paranumonly>$paranum <$paranum> $paratext <$paratext>FigureFigure<$paranumonly> Figure NumberFigure<$paranumonly> DWGVersionRev0.77 <$volnum> <$chapnum>tmHTML Headings**--A00AVV2244A7bA;;QQASSUU[[]]a_AffhhPdAkkAppTOCAACC``NNxx AKK##((**,,..002288::CC77,,33UUOOPPTTvvxxAXXZZLLiiGGpplloorruuzz}}MM ZZaa $$++--ffmm]]yyhhpp??((**__A;;MM..]]aamm vvddtt ++UU 99[[##,,==::VVFFAA66HHJJXX\\__&&vvEE$$ooqqssvv**||$$ll))$$MM>>~~nn<<AAqqSS99}}||HHrrXX\\__WWUUllKKzz}}ee ||jj``VV((##//1166FFHH((>>1166__DD88qqZZhhoo<<>>CCWW[[AA}}ffVV[[__bbhhoo<<BBLLOOee""[[jjRRaaggll vvoo%%??CCFFII11OOttXXZZ\\ff xx33''**{{ 77rrtt   77A  ((!!##55::ll>>FFHHJJ YY[[hheennii,,uu~~  99;; HHMMUUYY\\ddffiikkbbyyqqssww //ww$$oo'',,//33.. {{%TTVV[[]]__ hhmmoobb !!++--::;;DDII**88SSYYcc   uu 'bbqq, !!##&&++..113366::<<??AADDIIMMQQVVZZ//1166@@EEHHTTddgg}} ,,,,,--------------------------------------- - ---------- -"-$-&-'-(-*-,-.-0-2-4-6-8-:-<->-@-B-D-F-G-H-J-L-N-P-R-S-T-V-X-Z-\-^-`-b-d-f-h-j-l-n-p-r-t-v-x-z-|-~---------------------------------,,,---------------,,,,-------------- - ---------- -"-$-&-(-*-,-.-0-2-4-7,9,;,=-?-A-C-E-G-I-K-M-O-Q-S-U-W-Y-\,^,`,b,d-f-h-j-l-n-p-r-u,w,y,{-}---------------------,,,----8--9--:--:--:---F5Zi`djJ5T6Vhʂ W3d$5.(30.6 $ 12.i\$14.{i<iJ\iZi^XYZ[\]^_abcdefghijk X4>7nU6ejfjx5|566g576klmnopqropqrȋ wxy #7.m m lm 11.mmm{ | Ymum$    {| }$2.~&  #8.  &   m,/ mmm>m&m 1.8umMmMmMmM; mMʃ s 7 ;&mmǀ( 30.11 !' m( 30.9 556 &T= 1.$2.$3.'ɀʀԀՀ )&* +  4&5  c(30.8  d1d3d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdhdidn$ 11.dq 1.dr$4.ds$6.dt$7.du$8.dv$ 9.dw$ 10.d|&d3.d2.6  <]19.( 30.10 =F?@AMQVZ[u"+luvowx<4.( 30.12 3;4567;ho(30.7   89:;<=>;?@8 A&B 1.#ˀ!5.x( 12.x 9.#$3.x 10.pCJJ(30.26 !(30.28 "l7(30.15 DJ|30.1 (30.5 EJF2.G"0;);;;&h&  ˀ(30.21 && ( 30.13 c 1.dk$4.{  $qt3.~17.x(30.25  VqrG&H;o J"|(30.14 =(30.16       (30.23 uÀ 5;k   ; #% ; <B ̠   ̡  9;Y Z9&Ȁ(30.18 7=]uu<4(30.17 =>?@ u1=89:FGH ;6<=,P&Q S T 1.Uͱ;W2.ug;hi  o=&rs (30.24 us;x@ ;yF zL {|#h<&1.(30.20 -<  $2.  "[W* sut;;$Z  {< $18.= ;/;$$3.$6.n r Ͳ;$5.$^2.€%\% 1.%)%/ #̀6.W *T; Y#р$4.$ u;    1.{"k\]l #iz tz#ۀ 13.*+,537.u/ #"\ "] 6"^"_ "`y™°² ×2.á  0 1u\$vJ4.] ĸ$3.ŻĀ-;;&(30.22   2  BC DE F ʯ W & J,` a     67   WJ KL;M N OP Q Rk / րJJG [(30.27 N&O P_] r  "a ghjkB"b nJKq"ct"d D;w"e"f z"g|"h $ ,;~"i ŀ012 3"5u7=89 :;_<==>?i&WXj k 1.łKuńgjʼnŋō"| ŏ#I$#T$#X #j$$(u$0 $x 1.$ = 5$*7$ $=$$$(30.19 $4.΀2.Ѐ$3.16.15.3.<=Z[ 1.]$2.V  u    ;   456789:;<=>?\o & 1. & JJ $  ; (30.2 GG L(30.3 sab d f gh ij kl m no p q r st u v w x y z        (30.4  ;  &  &556Vhjijjjkjljmj?d?*4 d@MM UHšH6 M@)I;M@)d HN`@ HN`@HRHR%Footnote Hq<@`@ Hq<@`@HzHz% Single LineH'  Footnote$$% HBFJNRUX[^adhlpsvy|W UTBm }$ $ WeHTML Mapping Table }  We }  We }2 2 We }_ _ We }$C.$C.W eFrameMaker Source Item }C~C~W e HTML Item }C6C6W e }2C-.2C-.  %Include PEAuto# }_C?.!_C?.W  e Comments }$S$SW  e }SH"SHW  eElement }S6!%S6  %New Web PEPage? }2S-2S-W e }_S?_S?W e }$q"&$qW eP:Body }qH%'qHW eP }q6&(q6W eN }2q-')2q-W eN }_q?(*_q?W e }$,)+$,W e P:Bulleted }H,*,H,, eLI e Parent = UL Qe Depth = 0 }6,+-6,W eN }2-,,.2-,W eN }_?,-/_?,W e }$.0$W e P:CellBody }H/1HW eP }6026W eN }2-132-W eN }_?24_?W  e }$35$W! eP:CellHeading }H46HW" eP }6576W# eN }2-682-W$ eN }_?79_?W% e }$8:$W& e P:Footnote }H9;HW' eP }6:<6W( eN }2-;=2-W) eN }_?<>_?W* e }$=?$ W+ e P:Heading1 }H>@H W, eH* }6 ?A6 W- eN }2- @B2- W. eN }_? AC_? W/ e }$BD$ W0 e P:Heading2 }HCEH W1 eH* }6DF6 W2 eN }2-EG2- W3 eN }_?FH_? W4 e }$GI$ W5 eP:HeadingRunIn }HHJH W6 eH* }6IK6 W7 eN }2-JL2- W8 eN }_?!KM_? W9 e }$ ,#LN$ , W: e P:Indented } H,%MO H,, ; eP <e Parent = UL Q=e Depth = 0 } 6,)NP 6, W> eN }2 -,+OQ2 -, W? eN }_ ?,-PR_ ?, W@ e }$9/QS$9 WA eP:Mapping Table Cell }9H1RT9H WB eP }963SU96 WC eN }29-5TV29- WD eN }_9?7UW_9? WE e }$I9VX$IWF eP:Mapping Table Title }IH;WYIHWG eP }I6=XZI6WH eN }2I-?Y[2I-WI eN }_I?AZ\_I?WJ e }$Y,C[]$Y,WK e P:Numbered }YH,E\^YH,,L eLI Me Parent = OL QNe Depth = 0 }Y6,I]_Y6,WO eN }2Y-,K^`2Y-,WP eN }_Y?,M__Y?,WQ e }$b,O#b$b,%WR e P:Numbered1 }bH,Q#acbH,,%S eLI Te Parent = OL QUe Depth = 0 }b6,U#bdb6,%WV eN }2b-,W#ce2b-,%WW eN }_b?,Y#df_b?,%WX e }$[#eg$%WY eP:TableFootnote }H]#fhH%WZ eP }6_#gi6%W[ eN }2-a#hj2-%W\ eN }_?c#ik_?%W] e }$e#jl$%W^ e P:TableTitle }Hg#kmH%W_ eH* }6i#ln6%W` eN }2-k#mo2-%Wa eN }_?m#np_?%Wb e }$o#oq$%Wc eP:Title }Hq#prH%Wd eH* }6s#qs6%We eN }2-u#rt2-%Wf eN }_?w#su_?%Wg e }$y#tv$%Wh e C:Emphasis }H{#uwH%Wi eEM }6}#vx6%Wj eN }2-#wy2-%Wk eN }_?#xz_?%Wl e }$#y{$%Wm eC:EquationVariables }H#z|H%Wn eEM }6#{}6%Wo eN }2-#|~2-%Wp eN }_?#}_?%Wq e }$#~$%Wr eX:Heading & Page }H#H%Ws eHeading }6#6%Wt eN }2-#2-%Wu eN }_?#_?%Wv e }$#$%Ww eX:Page }H#H%Wx eHeading }6#6%Wy eN }2-#2-%Wz eN }_?# _?%W{ e }$# $%W| eX:See Heading & Page }H# H%W} e See Also }6# 6%W~ eN }2-# 2-%W eN }_?# _?%W e }$# $%W e X:Table All }H#H%W e Table All }6#6%W eN }2-#2-%W eN }_?#_?%W e }$#$%W eX:Table Number & Page }H#H% %Table PENumber }6#6%W eN }2-#2-%W  eN }_?#_?%W  e }$B #$B %W eHTML Options Table }B #B %W e }hB #hB %W e }$R#$R%W eControl }R#R%W eValue }hRH#hRH%W e Comments }$b#$b%W e Image Format }b# b%W e0001IMAGGIF GIF }hbH#!hbH%W e }$r# "$r%W e!Copy Files Imported by Reference }r#!#r%W eN }hrH#"$hrH%W e }$##%$%W eExport Encoding }#$&%W e ISO-8859-1 }hH#%'hH%W e }$#&($% W eCSS Export Encoding }#')% W e ISO-8859-1 }hH#(hH% W e }$$ &.$$ (!WeSystem Macros }$ &$ (!We }$ &$ (!We }\$ &\$ (!W e }$4h&*/$4h("W! e Macro Name }4h&.04h("W" e Replace With }4h&/14h("W# eHead }\4B&02\4B("W$ e Comments }$Dh,&13$Dh,(#W% e StartOfDoc }Dh,&24Dh,(#W& e }Dh,&35Dh,,(#' % ��<$defaulttitle></P��ETITLE> }\��DB,���&46��\��DB,(�#W( ��e }$ph���&57��$ph(�$�W) ��e EndOfDoc }��ph���&68����ph(�$W* ��e }��ph���&79����ph(�$W+ ��e }\��pB���&8:��\��pB(�$W, ��e }$��h,���&9;��$��h,(�%�W- ��eStartOfSubDoc }����h,���&:<������h,(�%W. ��e }����h,�� �&;=������h,,(�%/ ��%<TITLE> ��<$defaulttitle></P��ETITLE> }\����B,�� �&<>��\����B,(�%W0 ��e }$��h�� �&=?��$��h(�&�W1 ��e EndOfSubDoc }����h���&>@������h(�&W2 ��e }����h���&?A������h(�&W3 ��e }\����B���&@B��\����B(�&W4 ��e }$��h,���&AC��$��h,(�'�W5 ��eStartOfFirstSubDoc }����h,���&BD������h,(�'W6 ��e }����h,���&CE������h,,(�'7 ��%<TITLE> ��<$defaulttitle></P��ETITLE> }\����B,���&DF��\����B,(�'W8 ��e }$��h���&EG��$��h(�(�W9 ��eEndOfFirstSubDoc }����h���&FH������h(�(W: ��e }����h��!�&GI������h(�(W; ��e }\����B��#�&HJ��\����B(�(W< ��e }$��h,��%�&IK��$��h,(�)�W= ��eStartOfLastSubDoc }����h,��'�&JL������h,(�)W> ��e }����h,��)�&KM������h,,(�)? ��%<TITLE> ��<$defaulttitle></P��ETITLE> }\����B,��+�&LN��\����B,(�)W@ ��e }$$��h��-�&MO��$$��h(�*�WA ��eEndOfLastSubDoc }��$��h��/�&NP����$��h(�*WB ��e }��$��h��1�&OQ����$��h(�*WC ��e }\��$��B��3�&PR��\��$��B(�*WD ��e }$:���� ��6�&QU��$:���� (�+�WE��eCross-Reference Macros }��:���� ��8�&������:���� (�+WF��e }D��:���� ��:�&����D��:���� (�+WG��e }$J������<�&RV��$J����(�,�WH ��e Macro Name }��J������>�&UW����J����(�,WI ��e Replace With }D��J��?��@�&VX��D��J��?(�,WJ ��e Comments }$Z������B�&WY��$Z����(�-�WK ��eHeading }��Z������D�&XZ����Z����(�-WL ��e <$paratext> }D��Z��?��F�&Y[��D��Z��?(�-WM ��e }$j������H�&Z\��$j����(�.�WN ��e See Also }��j������J�&[]����j����(�.WO ��eSee <$paratext>. }D��j��?��L�&\^��D��j��?(�.WP ��e }$z������N�&]_��$z����(�/�WQ ��e Table All }��z������P�&^`����z����(�/R ��%Table <$paranumonly>, P��E <$paratext> }D��z��?��R�&_a��D��z��?(�/WS ��e }$������T�&`b��$����(�0�WT ��e Table Number }��������V�&ac��������(�0WU ��eTable <$paranumonly> }D����?��X�&b���D����?(�0WV ��e }$$�� ��[�)�h��$$�� n�1�WW��eGeneral Macros }v$�� ��]�)����v$�� n�1WX��e }$�� ��_�)����$�� n�1WY��e }2��$�� ��a�)����2��$�� n�1WZ��e }$4ev��c�)di��$4evn�2�W[ ��e Macro Name }v4ev��e�)hj��v4evn�2W\ ��e Replace With }4C��g�)ik��4Cn�2W] ��eHead }2��4Q��i�)jl��2��4Qn�2W^ ��e Comments }$Dev��k�)km��$Devn�3�W_ ��e }vDev��m�)ln��vDevn�3W` ��e }DC��o�)mo��DCn�3Wa ��e }2��DQ��q�)np��2��DQn�3Wb ��e }$Z�� ��t�)os��$Z�� n�4�Wc��eCharacter Macros }lZ�� ��v�)����lZ�� n�4Wd��e }��Z�� ��x�)������Z�� n�4We��e }$jH��z�)pt��$jHn�5�Wf ��e Character }lj����|�)su��lj��n�5Wg ��e Replace With }��j?��~�)tv����j?n�5Wh ��e Comments }$zH���)uw��$zHn�6�Wi ��e }lz�����)vx��lz��n�6Wj ��e¢ }��z?���)wy����z?n�6Wk ��e }$��H���)xz��$��Hn�7�Wl ��e }l�������)y{��l����n�7Wm ��e© }����?���)z|������?n�7Wn ��e }$��H���){}��$��Hn�8�Wo ��e }l�������)|~��l����n�8Wp ��e® }����?���)}������?n�8Wq ��e }$��H���)~���$��Hn�9�Wr ��e }l�������)��l����n�9Ws ��e° }����?���)�������?n�9Wt ��e }$��H���)��$��Hn�:�Wu ��e }l�������)��l����n�:Wv ��e-- }����?���)������?n�:Ww ��e }$��H���)��$��Hn�;�Wx ��e }l�������)��l����n�;Wy ��e- }����?���)������?n�;Wz ��e }$��H���) ��$��Hn�C�W{ ��e }l�������)"��l����n�CW ��e... ��d�������������� ��������$$h������� ����$$h������ �����l��� $$h������� ����$$h���������� ! ����W UT��Bm }$h�� ��� ���$h��  �<�W|��eHeadings Table }��h�� ��� ������h��  �<W}��e }��h�� ��� ������h��  �<W~��e }$Cl��� ��$Cl �=�W ��eHeading Level }��Cu��� ����Cu �=W� ��eParagraph Format }��CH��� ����CH �=W ��e Comments }$Sl��� ��$Sl �>�W ��e1 }��Su��� ����Su �>W ��eTitle }��SH��� ����SH �>W ��e }$il��� ��$il �?�W ��e2 }��iu��� ����iu �?W UTUT��e Heading1 }��iH��� ����iH �?W ��e }${l��� ��${l �@�W ��e3 }��{u��� ����{u �@W  ��e Heading2 }��{H��� ����{H �@W  ��e }$l��� ��$l �A�W  ��e4 }��u��� ����u �AW  ��e HeadingRunIn }��H��� ����H �AW  ��e }$l���  ��$l �B�W ��e4 }��u��� !����u �BW  ��e TableTitle }��H��� �����H �BW ��e }����?���) �������?n�CW ��e ��d��������������$$��������$$�������#����$$����'%%����l��� $$�������#����$$�����������a)$�afkpuz !$'*.26:>BFJNRUX[^adhlpsvy|����d��������������''��������$$�������&����$$����$m((�����l��� $$�������&����$$�������� ���*c'�*.26:>BFJNRUX[^a dhlpsvy|����d��������������mm ��������U$����@� �2��U$�����++ ����l��� U$����A�����U$����������*�����d Accellera Q�l&SystemVerilog 3.1/draft 4  ��d������W��������--��������UH��ˆ����X� ,����UH��ˆ�����..����l��� UH��ˆ����Y�,����UH��ˆ����������-����W#UTUT��d ��d������[��������0V��������UH��ˆ����\� /�V��UH��ˆ�����11����l��� UH��ˆ����]� /����UH��ˆ����������0����W UTUT��d Uw��R��B� *4��Uw��R���33 ����l��� Uw��R��C�����Uw��R��������2������l^#Copyright 2003 Accellera. All rights reserved.Running H/F 4 QC��d UH��ˆ����D� 2���UH��ˆ�����55 ����l��� UH��ˆ����E�����UH��ˆ����������4����W1 UTUT��d UH�����;4�����UH���œ�~�D�����7����WUT›U��"h  UH�����;6� �j��UH�����:66 ����l�����d������;��������:: �������� UH��ˆ����;�8����UH��ˆ��s�D ��� ����:���� UTUT��` ��`NOTES  ��`bTop-level instances shall be accessed using � vpi_iterate() � with a NULL reference object. �� X Passing a NULL handle to � vpi_get() � with types � vpiTimePrecision � or !��@ZvpiTimeUnit � shall return the smallest time precision of all instances in the design. E�� wIf an instance is an element within an array, the � vpiIndex � transition is used to access the index within the Q��@Xarray. If the instance is not part of an array, this transition shall return NULL� . \d�� rCompilation units are represented as packages that have a � vpiUnit�  property set to TRUE. Such implicitly Pp��@=declared packages shall have implementation dependent names. UH��ˆ����;� 8����UH��ˆ���7M99  ����l���{f��J�@��{f���== �����l���UQ��t9��m������9w~�B���� {f��K�����{fR�"���"����;������`-> array member ��`bool: vpiArray *��`-> cell +��`bool: vpiCellInstance ,��`-> default net type -��`int: vpiDefNetType .��`-> definition location /��`int: vpiDefLineNo 0��`str: vpiDefFile 1��`-> definition name 2��`str: vpiDefName 3��`-> delay mode 4��`int: vpiDefDelayMode 5��`-> name 6��` str: vpiName 7��`str: vpiFullName 8��` -> protected 9��`bool: vpiProtected :��`-> timeprecision ;��`int: vpiTimePrecision <��` -> timeunit =��`int: vpiTimeUnit B��`-> unconnected drive Z��`int: vpiUnconnDrive [��`-> Configuration \��`str: vpiLibrary ]��` str: vpiCell ^��`str: vpiConfig b��`->default lifetime q��`bool: vpiAutomatic -��`-> top 5��` bool: vpiTop [��` compile unit CY��`bool: vpiUnit nau���%�zB���nau��nau6aue7Y���#�c��e7Y��e7L#@g-7b@��N�;A��L#@g-7b@ٝA[��O�@C��ٝA[���BB�����l��� ٝA[��P�����ٝA[��������A����WcUTUT��`vpiInternalScope V?hN��Q�AL��V?hN���DD�����l��� V?hN��R�����V?hN���������C����Wd��` interface sSe��#�)Fc�F�sSe݋s݋EexprV`S?��#�EccE��V`S?K$c% ��6�H��K$c% K/z\dy���;�G��K/z\dy��K/z\��z\UQ��?���b����?K{�c ���� UH��ˆ����@�����UH��ˆ��@�D���kjk��M����4UTUT��"h2 Q:`��"h? @KISh@� ���I�}��@KISh@� ���uu �����l���L#@b@��W�CN��L#@b@UH��ˆ����@� ����UH��ˆ���:JJ ����l���U͹O���X�Lt��U͹O����rr�����l�����d������+��������PU �������� ���~��,� O�Q�����~���������"�Zl��d����-� OPS��Zl��d�����RR ����l��� Zl��d����.�O����Zl��d����������Q����W UTUT��d U$����/� OQU��U$�����TT ����l��� U$����0�O����U$����������S����W@/�d Accellera Zw��R��1� OS���Zw��R��� ����l���U8I��6y��^� /0���U8I��6y���WW����l��� U8I��6y��_� /����U8I��6yJ� ��� XX��V����$��"l Di��d Eh��d7Copyright 2002, 2003 by Accellera Organization, Inc. _UR��d1370 Trancas Street #163 2UR��dNapa, CA 94558 3��dPhone: (707) 251-9977 4��dFax: (707) 251-9877 5��d 6��d 7��$lAll rights reserved. No part of this document may be reproduced or distributed in any medium whatsoever to P`��DPany third parties without prior written consent of Accellera Organization, Inc. UBI��J��b�/������YY�W�����h ���c� X�����h ���h…��d������n��������[ ��������U$����o� Z�]��U$�����\\����l��� U$����p�Z����U$����������[����F�d Accellera QG�l?SystemVerilog 3.1/draft 4Extensions to Verilog-2001 Uw��R��q� Z[_��Uw��R���^^����l��� Uw��R��r�Z����Uw��R��������]����H��l^#Copyright 2003 Accellera. All rights reserved. Running H/F 4! QI��d D�;Hˆ����s� Z]a �a�D�;Hˆ���a�``����l��� D�;Hˆ����t�Z����D�;Hˆ�������������_�����UHˆ����u� Z_ _��UHˆ����_ ����l�����d��������������c �������� ��_���� b�d����_����������"�D�;Hˆ����� bcf �P�D�;Hˆ���P�ee ����l��� D�;Hˆ�����b����D�;Hˆ�������������d�����U$����� bdh��U$�����gg ����l��� U$�����b����U$����������f����K��d Accellera QL�l?Extensions to Verilog-2001"SystemVerilog 3.1/draft 4# U�w��R��� bfP��U�w��R���ii ����l��� U�w��R���b����U�w��R��������h����M��l^$Running H/F 4%Copyright &2003' Accellera. All rights reserved.(#) QN��d ��d��������������kk��������UH��ˆ����� j����UH��ˆ�����ll����l��� UH��ˆ�����j����UH��ˆ����������k����WP UTUT��d $$�������)����$$����'�nn����l��� $$�������)����$$�������� ����d"m� dhlpsvy|�����d��������������pp��������HH��ˆ����� o����HH��ˆ�����qq�����l��� HH��ˆ����� o����HH��ˆ��� ��� ����p����Q&�e"<$paranum><$paratext><$pagenum> R�e#<$paranum><$paratext><$pagenum> S�e#<$paranum><$paratext><$pagenum> T�e#<$paranum><$paratext><$pagenum> UZ�e$<$paranum><$paratext><$pagenum> Vb�e#<$paranum><$paratext><$pagenum> W~�e"<$paranum><$paratext><$pagenum> X�e"<$paranum><$paratext><$pagenum> WY UTg��e U͹O���Y�����U͹O����������N����Wl��` task func �9g,����# ���9g,���9g,?g,l^wOM@��[�N��l^wOM@ @KISh@� ���I����@KISh@� ��������K����_��`-> name S`��` str: vpiName ?C�ˆ�����T����?C�ˆ����������_����W+UTUT��d $�J@ ���m�<���$�J@ ��$�J@LT@Q< W����LH��Q< W����HH�����l�����d��������������11+��������UQ��le��d+�5�����܂e>�8*���� tVCe�E���$z|��tVCe�Et`4t`4�� @;@9i6��d0�z����@;@9i6������������G��`-> connected by name H��`bool: vpiConnByName I��`-> delay (mipd) J��`vpi_get_delays() K��`vpi_put_delays() L��` -> direction M��`int: vpiDirection N��`-> explicitly named O��`bool: vpiExplicitName P��` -> index Q��`int: vpiPortIndex R��`-> name S��` str: vpiName T��` -> port type Z��`int: vpiPortType Y��` -> scalar U��`bool: vpiScalar V��`-> size W��` int: vpiSize X��` -> vector E��`bool: vpiVector WF UTU?��` B@#K@���IKL��B@#K@@Z(����<&���@Z(��@Z(?O(nTy���%� ��nTyS?���)+��S?.@;@9i6��d2�z���@;@9i6���||!����l��� @k�o@i-��dm�z����@k�o@i-������������c��`NOTES \!�� vpiPortType�  shall be one of the following three types: � vpiPort� , � vpiInterfacePort� , and � vpiModportPort. � Port  ��@/type depends on the formal, not on the actual. e��`^vpi_get_delays, vpi_put_delays�  delays shall not be applicable for � vpiInterfacePort. d!D��`fvpiHighConn�  shall indicate the hierarchically higher (closer to the top module) port connection. ]W��`XvpiLowConn�  shall indicate the lower (further from the top module) port connection.  j��``vpiLowConn�  of a�  � vpiInterfacePort�  shall always be � vpiRefObj� .�  ^l�� dProperties scalar and vector shall indicate if the port is 1 bit or more than 1 bit. They shall not ��@7indicate anything about what is connected to the port. _��`9Properties index and name shall not apply for port bits. `�� iIf a port is explicitly named, then the explicit name shall be returned. If not, and a name exists, then ��@@that name shall be returned. Otherwise, NULL shall be returned. aΪ��`dvpiPortIndex�  can be used to determine the port order. The first port has a port index of zero. b��`ZvpiHighConn�  and � vpiLowConn�  shall return NULL if the port is not connected. Q[��`-vpiSize�  for a null port shall return 0. @k�o@i-��do�zR��@k�o@i-���"����l���@ZN(���m�<w��@ZN(��@ZN(>ON( SvSQve��<�H_��SvSQve}WEuSu{instance itemsUQ��c4���J�V���Ӏ4^U�K����@D�!���m�<��@D�!��@D�!@DN)&X *]S?���.+��&X *]S? _Sg@e�� �('I��_Sg@e^BD_^BD: long int var��d�������������� �������� ���~��� � �����~���������"�UH��ˆ����� ��UH��ˆ�����  ����l��� UH��ˆ����� ����UH��ˆ���������� ����Ws UTUT��d U$����� ��U$����� ����l��� U$����� ����U$��������������/�` Accellera Sx�` U�w��R��� ���U�w��R��� ����l���)@!L��m�<��)@!L Zw��R��2�O����Zw��R��������U����WA��l Running H/F 4 � . -Et@1\@��m�<��-Et@1\@/_\@��m�<��/_\@ 'E@@���<����'E@@������������W"��`vpiPort � and � vpiPortInst � is defined only for � vpiRefObj�  where � vpiRefObjType�  is � vpiInterface� . ��d������@���������������� UH��ˆ����@�����UH��ˆ��†@{�D���)))������W?UTUT��"hD UH��ˆ����@� ����UH��ˆ���Md  ����l���Zc�� �z{B��Zcy?N��\�ti��y?N���!!�����l���RR"S?���"I ��RR"S?'E@@���#<6��'E@@��*�����l���@G'�i��m�<��@G'�i�@G'@BVT@! ���m�<"��VT@! ���� �����l���\KIN��!�zBB��\KIN���AA?����l��� VT@! ���m�<����VT@! ��������������Wf��`ports y?N��]�����y?N�������������Wm��` interface F@N@% ���m�<#��F@N@% ��F@N@%z�[@%W@RL' ���m�<"%��W@RL' ����$$#�����l��� W@RL' ���m�<����W@RL' ����������#����Wg��`ports >P� L��m�<#&��>P� L>��HL��m�<%(��>��HL [9/,e�� �( &�"�[9/,eܱO)[9):real varB$H���m�<&*��B$H����))$�����l��� B$H���m�<����B$H���������(����WiUTUT��` vpiLowConn @@H���m�<(,��@@H����++%�����l��� @@H���m�<����@@H���������*����WjUTUT��` vpiHighConn AR(@ ��m�<*.��AR(@ ���--&�����l��� AR(@ ��m�<����AR(@ ��������,����WkUTUT��` vpiPortInst {Ѭ@ ��m�<,0��{Ѭ@ ���//'�����l��� {Ѭ@ ��m�<����{Ѭ@ ��������.����WoUTUT��` vpiParent ?H���m�<.2��?H����11(�����l��� ?H���m�<����?H���������0����WpUTUT��` vpiScope ?H���m�<05��?H����44)�����l���ᅬ~��i�zVT��ᅬ~���FF0����l��� ?H���m�<����?H���������2����W UTUT��`vpiInterfaceConn :�%� ���m�<28��:�%� ��:�%C�%0M@�%���<+��0M@�%IU` ���{�<E��IU` ����??.�����l���KR9 ��m�<5:��KR9 ���99+�����l��� KR9 ��m�<����KR9 ��������8����W UTUT��`scope KRw�4@ ���m�<8<��KRw�4@ ����;;,�����l��� KRw�4@ ���m�<����KRw�4@ ���������:����WUTUT��`ref obj <׹W���m�<:=��<׹W��<.<߹W���m�<<@��<߹W��<.G@-C2@ ���{�zN7��G@-C2@ ��s8C2G@-C2 IU` ���|�<����IU` ����������7����W��`nets zѸ����m�<=C��zѸ���z,z \KIN��"�z����\KIN�������������Wr��` typespec Zc���#�z>��Zc� /x&��m�<@G�� /x&���DD-�����l��� /x&��m�<���� /x&���������C����W��`ref obj 8Zy ���}�<7w��8Zy ��8Zylgy ᅬ~��i�z����ᅬ~��������3����W#UTUT��`port @`D@/t��m�<Cp��@`D@/t���JJ=�����l��� Q< W��������Q< W����������x����W ��` clocking block 0WxN@��G� H�a��0WxN@ @`D@/t��m�<����@`D@/tq��������G������`NOTES !��`NvpiRefObjType � of�  vpiRefObj � can be one of the following types: ��` vpiInterface ��` vpiModport A��`vpiNet A��`vpiReg A��` vpiVariable FD^���.�! *��FD^��QFE$���#I}��E$��WW:�����l���XSƳ����r�j ��XSƳ����H�����l���Gjj�U��{�z8>��Gjj�U�GjjGjCM��{�z$)��M���2����l���gq ���i:�zRS��gq ����QQ3����l��� gq ���i;�z����gq ���������P����W&UTUT��`ports hBH@��iF�zP��hBH@�@`OP��iU�zPV��@`OP�[q甲X��iH�z3X��[q甲X���UU4����l��� [q甲X��iI�z����[q甲X��������T����W'UTUT��` port bit Іpj0��iV�zS3��Іpj0� E$���I����E$���������L����W��`modport 2ۍZ_H��iX�zTZ��2ۍZ_H���YY8����l��� 2ۍZ_H��iY�z����2ۍZ_H��������X����W(UTUT��` vpiHighConn �/H��i\�zX"���/H���[[9����l��� �/H��i]�z�����/H��������Z����W)UTUT��` vpiLowConn QS��(�!y] �]�QSZWHVB}d��)�!\ \��ZWHVB}d���U�����l���4?M@"����+��4?M@")E[&���C�`��)E[&��)E[L0E[)XQ\���D�_a��)XQ\��)XQKGqXQ)m3���E�`b��)m3��)mK.m).3���F�ad��).3��).K..V`S?��#�F?��V`S?EF)3���H�be��)3��)K.)E3���I�dg��)E3��)EK.E Y=|,\��� ��Y=|,\YyYy� vpiMemory)+���K�e��)+��)L#@+a�g���)��+a�g�+a+av@.["E����l�k��["E�����jj<�����l��� ["E����m�����["E�����������i����Ws��`scope L#@#b@��n�il��L#@#b@V'NL��o�kn��V'NL���mm@�����l��� V'NL��p�����V'NL���������l����Wt��`net Lc��q�lo��LcV N1��r�nr��V N1���qqA�����l���|5a@.`P@��m�<G��|5a@.`P@��� >�����l��� V N1��s�����V N1���������o����Wu��` variables V ԂN1���t�ot��V ԂN1����ssB�����l��� V ԂN1���u�����V ԂN1����������r����Wv��` net array Lc��v�ru��LcV C�N1���w�tw��V C�N1����vvC�����l��� V C�N1���x�����V C�N1����������u����Ww��` array var L!&aC��y�ux��L!&aCM;a��z�wy��M;aL#@;]~b@��{�xz��L#@;]~b@V <N1��|�y|��V <N1���{{D�����l��� V <N1��}�����V <N1���������z����Wx��` named event JN e��~�z}��JN eLN{c���|���LN{c���~~E�����l��� LN{c�������LN{c���������}����Wy��`named event array ZWHVB}d��*�!����ZWHVB}d���������]����W ��`instance item V e=N1���}��V e=N1���F�����l��� V e=N1�������V e=N1��������������Wz��`process  rp=���)h\�� rp=���;����l��� rp=���)���� rp=������������W{UTUT��` vpiMemory on�84@N��y�).h��on�84@N���G����l��� on�84@N��z�)����on�84@N������������U�� >NOTE to reviewers leave all relations here, as the arrow back ���=is different than in the instance diagram ie most items have ��@"two possible container relations: W��` vpiModule |��` vpiInstance ��` ��` !��` N��` S��` T��` NOTE� S }UTdUT��` Z!p�� >vpiModule�  will return a module if the object is inside a  {��@!module instance, otherwise NULL; ~�� 2vpiInstance�  will always return the immediate ���1instance (package, module, program or interface) ɪ��@%in which the object is instantiated �� -vpiMemory will return array variable objects Ū���-rather than vpiMemory objects. The IEEE 1364 ���2committee is currently making a similar update to Z���.the Verilog VPI (refer to note 3 in IEEE 1364-PZ��@2001, section 26.6.9) XSƳ����s�j����XSƳ���������M����W(UTUT��` vpiInstance L!bb������L!bbG����x�k ��G���� I�����l��� G����y�k����G�������������W)UTUT��` vpiInstance QS��+�!]K��QS\] |5a@.`P@��m�<����|5a@.`P@��������p����"��`-> RefObjType #��`int: vpiRefObjType '��`-> name S(��` str: vpiName Lc����s ��LcV?<N���� f��V?<N���J�����l���ְO@���ILhr�h�ְO@PGS0���m�<p��PGS0��GSPGSM3w��m�}�����݁f�~����L%Lc���f��L%Lc V?<N��������V?<N��������� ����W*��` typespec )٣M���L�g��)٣M��)MbV '8N1������V '8N1����L�����l��� V '8N1��������V '8N1��������������W���` reg array V?N����=G��V?N����M�����l��� V?N��������V?N��������������W��` spec param )|7���M���)|7��KL|)|)����N���)���K�)�),z���O���),z��K,z),zrİ���#�?��rİ��rİrp���#������H��#�G���H�)Ad���P�4��)Ad��K�Ad)AdLuc��� ��LucV?xsN����#��V?xsN����!!O�����l��� V?xsN��������V?xsN���������� ����W��` parameter S?���''��S?L!<#b��� $��L!<#bV?&N����#,��V?&N����%%P�����l��� V?&N��������V?&N����������$����W��` def param 2m-!T2e���('(Y�&�2m-!T2ex2x: logic varRcS?���"0|(��RcS? cՍKe���(&1|�'� cՍKen/ n/:short real var2T���~�!*��2T��2TE2/ ЩYz��6�!K)��2/ ЩYz���//�����l���;�d(A@���#^3��;�d(A@��22Q����l���L"h,b���$-��L"h,bV?|/N����,e��V?|/N����..R�����l��� V?|/N��������V?|/N����������-����W��` param assign 2/ ЩYz��7�!����2/ ЩYz��������*����WUTUT��` vpiImport uS?���'c��uS? ʲNVe���((��ʲNVeܱO1/ʲN1/:int var ;�d(A@�������;�d(A@���������+���� �� variable P���@loads 4@M@���� +?��4@M@��4@)U���Q�5��)U��K.U)U)j7���R�46��)j7��KLj)j)}9Z7���S�58��)}9Z7��KL}9Z)}9Zy7�^d��#�IK��y7�^d�y7ye)YhǢo>���U�69��)YhǢo>��Kh)Yh)���V�8:��)��K))i7���W�9;��)i7��KLi)i)�ǡ���X�:<��)�ǡ��K/�)�)W���Y�;=��)W��KW)W)s5���Z�<>��)s5��LoJs)s)E���\�=A��)E��)s)E9�aEa�@���#3��9�aEa�@��JJY����l���)E[@����CD��)E[@��)E[@ʌE[l/m[��n�>C��l/m[���BB�����l��� l/m[��o�����l/m[��������A����W,UTUT��` vpiInstance ̈\��}�A@��̈\ 5 5� vpiTypedef)XQ:����@E��)XQ:��)XQ?XQ)m����DF��)m��)m@rm).]����EH��).]��).@r. MIQˢi=]��#�(A��MIQˢi=]MI9MI9�3vpiIndex.Xq����FI��.Xq��.X@r-L$Ew����HK��-L$Ew��-L$E?E 9�aEa�@�������9�aEa�@���������?����W ��` assign stmt )����IL��)��)Ay.Xٓ&����KM��.Xٓ&��.XA3.R|ȧ����LN��.R|ȧ��.R|@r|-L$�N����MO��-L$�N��-L$�@r�,,z~h����NP��,,z~h��,,z@r,z-AdN����OQ��-AdN��-Ad@rAd->Uȧ����PR��->Uȧ��->U?U-L$jN����QS��-L$jN��-L$j@rj,}9Z����RU��,}9Z��,}9Z@ʌ}9Z ;k]��#�u��;k]�3 vpiParent-L$hǒw����SV��-L$hǒw��-L$h?h.Rq����UW��.Rq��.R?)i:����VX��)i:��)i?i)�ǖ����WY��)�ǖ��)�@r�-L$Ww����XZ��-L$Ww��-L$W?W)sAw����Y[��)sAw��)s@ʌsCQ����Zh��CQ��CPC9Yі����)]^�]�9Yі��9YPV+����)\^^\��+��+K)r+Ѥ�+���)]_7�_�+Ѥ�+\]O \@���)^`7^`�O \@V';'N����)_77_��V';'N����aa9����l��� V';'N����)����V';'N����������`����W>��`reg U@����=h���U@��U@U�!&WkS?���0��&WkS?wM,���� ~���wM,��MCM,wM,,Z%HN���-f��,Z%HN̦N���ek��̦N���ggS�����l��� ̦N�������̦N���������f����W��`module ?ճꣽ���#Ilr��?ճꣽ��iiW�����l��� ?ճꣽ���I����?ճꣽ���������h����WB��` interface MC*c��� q|~�|�MC*cթ@���fm��թ@>qwO@���Ihp��>qwO@N���ko��N���nnT�����l��� N�������N���������m����W��`expr f~\@���ms��f~\@C1uF@���#Ilr��C1uF@��qqX�����l��� C1uF@���I����C1uF@���������p����WD��`io decl ԰O@���Ipt��԰O@hGgF�@���oy��GgF�@�GMGgF����Iruv�u���ܷaꧫ����Itvvt��aꧫ��a fa*6�+���Iuw��a*6�+tu�6����Ivx���6���6۷I3����Iw{��I3��I=}iJF���s ��iJF���zzV�����l��� iJF�������iJF��������y����W UTUT��` vpiIndex jZ9����Ix���jZ9��j4mW9 N��� j~~j��W9 N���}}����l��� W9 N��� ����W9 N���������|����W��` typespec MB(c���� |d��MB(c�j| 5jEOVe���(1�c�5jEOVe~5j~: short int varTNf@��� d��TNf@T/03N��� �!��T/03N���f����l��� T/03N��� ����T/03N�������������W��`tf decl Z?N@�� � ?��Z?N@9@gY8�@�� �#��9@gY8�@��n����l��� 9@gY8�@�� �����9@gY8�@�������������W ��`force 8CM@���kq��8CM@xE!N���k��xE!N���%�����l���8ho=�@�� �# ��8ho=�@�� o����l��� 8ho=�@�� �����8ho=�@�������������W��` cont assign @dO@'��� ��@dO@'D�%$A@���# ��D�%$A@��q����l���L!1Ib��Ȁ�y,��L!1IbvǺ����y��vǺ��v* v D�%$A@�������D�%$A@��������� ������ variable P���@drivers lV��� � '��lV��l@bM@����  ��@bM@��@buѿN@��� ��ѿN@B�"B@]�@���#9��B�"B@]�@��r����l��� B�"B@]�@�������B�"B@]�@�������������W��`ports ZmeT!���c1��ZmeT!��d������xb���������������� uܭe���(�0� uܭe~ ~:byte varX]S?���*��X]S? M��{�z����M��������O����W%UTUT��` vpiParent Ç e���(e�)�Ç eaÇ a: array varNS?���!��NS? qye���(+�� qyeLL:time var>zS?�����>zS? nǣe���(��nǣeoini:var bit&XYS?��� '��&XYS? ")]Re���(!��.�")]Reܞc": integer var&Z1S?���" #��&Z1S? ]je��!�(#��]jeܱOɐ?]ɐ?: string varCS?��� $.%��CS? 42Q e��#�(!% � �42Q e<\4<\@ struct varUǔS?���"&X,��UǔS? 7D| T2e��%�(#'.�"�7D| T2eܱPOV7OV@ union var&ZkS?���$)Y&��&ZkS? 3ϵRe��'�(%(��3ϵRekq3kq:enum var HŽ�e��(�)'*��HŽ�eHJ0HJ0�{ variables&XdS?���&�e��&XdS? PPbe��*�((,�� PPbeܱO @ class var&X *[S?����I��&X *[S? 5V<e��,�(*2X�$�5V<e4a45a4:bit varNGwT!����O1��NGwT!��NGwNGw �܍e��:�(g/z�/��܍eRJ`B�`B@ prim termZSS?��;�.zz.��ZSS?fُ���� ��fُ��fُf/t^fp����-r��t^fp��eΖft^fgӥ���2�,3��gӥ��g m䕿P$���3�24��m䕿P$��m䕿7i&b' ���4�35��i&b' ��i&Mp1�Y��5�46��p1�Y�pup1 ('w]��6�(58��('w]('^('^�3 vpiLowConn@ KN@��4� z>Vq�V�@ KN@ W_C]��7�(6:��W_C]WW�3 vpiHighConnB@(V4�@���#[��B@(V4�@��XXs����l��� NeD]��8�(8T��NeD]NeD6NeD6�3 vpiPortInst )WBe��y�)n<N�<�)WBeRJ`)`E var loadsZ S?��z�;NN;��Z S?UQ��{@z���N�����@z(b�O0���� 9~Re���)N?O�?�9~Rey$9EportsS?���>OO>��S? xe��U�(&AP�A�xeRJx@ cont assignZS?��V�@PP@��ZS? UH��ˆ����xc�����UH��ˆ��4� ���<<������C��"hRef Ob� j rj��` Examples Qj�� lThese objects are newly defined objects needed for supporting the full connectivity through ports where the j��@Pports are vpiInterface or vpiModport or any object inside modport or interface. Rj��`PRefObjs are dummy objects and they always have a handle to the original object. ~44�� interface simple () 4��� wUP��@logic req, gnt; 4�� 'modport slave (input req, output gnt); 4��@(modport master (input gnt, output req);  &4�� } 14��� module top() 5l��� ���interface simple i; 0��� ���child1 i1(i); ��@child2 i2(i.master); QV~4��` endmodule HTز~e��[�(PDl�D�HTز~eRJ/zH/z@ path termZVS?��\�CllC��ZVS? ѱQ e��a�(lFQ�F�ѱQ eRJss@ tchk termZS?��b�EQQE��ZS? XTe��g�(QHm�H�XTeRJ@ type specZ S?��h�GmmG��Z S?RR"S?���+��RR"S?  eXڳQލe��m�(mKR�K�eXڳQލe>T3|e3|@ var selectF#ZS?��n�JRRJ��F#ZS?UQ :Ϛ��_�D�����Ϛ_�E+���� Ubҷ&e��s�)RSn�S�Ubҷ&eRJmYUmYE var driversZS?��{�<>��ZS?;<S?���?-��S?>?ZS?��W�AC��ZS?@AZS?��c�FG��ZS?EFF#ZS?��o�KM��F#ZS?JKZajS?��t�MnnM��ZajS?ϾQJݻ���O�:U��ϾQJݻ��ϾQQyQQQ���P�TZ��QQ��QQQZC@��5�#z7qq7��ZC@��WW{����l��� ZC@��6�z����ZC@���������V����W��` instance B@(V4�@�������B@(V4�@���������9����W��`force >nO` ��̔� 6Q��>nO` .6QhD���Q�U\��QhD��QhuLA)l@9�@���#9��A)l@9�@��t����l���Q.LD���R�Z]��Q.LD��Q.LLR ȨDxb���S�\^��R ȨDxb��R ȨWȨR ({D_���T�]_��R ({D_��R ({l({Q.<D\u���U�^`��Q.<D\u��Q.<=<R yC���V�_a��R yC��R y yR jCD(���W�`b��R jCD(��R jC5jC `1u]��X�(ac��`1u]`*`*�3vpiLoad Wr\Ћ]��Y�(bd��Wr\Ћ]WreWre�3 vpiDriverq|({P#���Z�ce��q|({P#��q|({({q<P$���[�df��q<P$��q<<q)yP#���\�eg��q)yP#��q)yzyqEjCP#���]�fs��qEjCP#��qEjCjC n~e��G�)cik�i�n~e%HHE instances-oS?��H�hkkh��-oS?7Ⱦ����j��7Ⱦ��7ȾIR-oS?��I�id��-oS?hiZVS?��]�DE��ZVS?CDZ S?��i�HJ��Z S?GHZaiS?��u�S;��ZaiS?MS!)����Lz{��!)��!)?n) kRe���) � �kReHkHE variables@JN@��7�zVD��@JN@7V /gSe���)1��/gSe~: : EexprN-7��g�gt��N-7�IN-NMN1@���h�su��N1@��N1ۍN1^2NGw�S��i�tv��^2NGw�S�^2NGw^2@h=Kz���j�ux��h=Kz��h=K]uKI^dA ���~�<E��I^dA ������_�����l���h RP���k�vy��h RP��h R^2gM3���l�x}��gM3��gM^2ZPS?��<�/`��ZPS?./ 1~Re��.�)|g�|�1~Req"1"Eportsx3S?��/�{gg{��x3S?yv@9���p�y~��yv@9��y&m/on���q�}��m/on��m/47 *r:���r�~��7 *r:��7 *7 * )\H���#�/�� )\H�� )\q\N n΃���t� ��N n΃��VN N A)l@9�@�������A)l@9�@���������[����W��` cont assign C�(>����#[��C�(>���u����l��� C�(>��������C�(>��������������� cont assign P���@bit �X@,���|r>���X@,M.S?���rr��M.S?M.S?�����M.S?r FSe���) � �FSe~QGQGEexprMF�XS?��� ��MF�XS? L[,+L]��y�( ��L[,+L]L[,4ZL[,4Z�3 vpiLeftRange DChH]��z�( ��DChH]DLtDLt�3 vpiRightRangecYS?���p p��cYS?cWS?��� 0��cWS?p =5]���$���=5]��=5]=5 ���~� �� �� 'Se��$�)G��'Se࿮'Eexpr p{ߧk]���(��p{ߧk]pp�3 vpiParent k�ě7]���( ��k�ě7]k�ryk�ry�3vpiRegS?��$���S?S?��$���S?edS�D����!/0��edS�D��edS� aS�hjZZ nP���"0${�$�hjZZ nP��tt�����l���=5]�!X��$�f��=5]�!X�=5]=5׵;*%R\@�9��$�Of��;*%R\@�9ABgΖ$����+{��gΖ$��g~}=FDq1��c�%L�!��FDq1S?���I|��S?'"UH��ˆ����xe� ����UH��ˆ���9DBB ����l���y#2ઑ����.��y#2ઑ��y#22TF gD4����.��TF gD4��TF g{g@@(�I�@���##��@@(�I�@��""v����l���MF�VS?��� p��MF�VS? 6b@e��d�(L$��6b@e釤868:long int typespec @@(�I�@�������@@(�I�@�������������W��` assign stmt 9a�<����#,��9a�<���&&w����l��� #Lpe��e�(L!%�� #Lpebi i: real typespec SQve��f�(L$`Y�)� SQvek3 3:logic typespec 9a�<��������9a�<���������#������ cont assign P���@bit l^M@���(��l^M@P@N���'*��P@N���))Z�����l��� P@N�������P@N���������(����W��`program zN���(-��zN���++[�����l��� zN�������zN���������*����W��` instance �HYp3E�@���##<���HYp3E�@��;;x����l���׀}\@���*.��׀}\@7έ7N���-0��7έ7N���//_�����l��� 7έ7N�������7έ7N���������.����W��`instance array E����.1��E��EhGhG����02��hG��hGGhGGtgƏ����134�3�GtgƏ��Gtg_gg/ͺg`����2442��/ͺg`��/ͺg-g/ͺgƘ/�+���36��/ͺgƘ/�+23��d������w��������99��������l����4���l��l6+ܟ��9�)`��+ܟ^` UH��ˆ����w�5����UH��ˆ��vd� ����zzz��9����W��"h.*Ports (supercedes IEEE 1364-2001 26.6.5) UH��ˆ����w� 5����UH��ˆ���d88  ����l��� �/��N� l��� �/� 0 �HYp3E�@�� ������HYp3E�@���������,����W(��` variables b@q&���!�,=��b@q&��b@b@;b@` ���"�<?��;b@` ���Db@;b@��d������x��������DD��������Ga>i���#�=E��Ga>i��Ga>i*aa>iL N@��F� !0A<�A�L N@hrC@��G�#!@<<@��hrC@��BB}�����l��� hrC@��H�!����hrC@���������A����W/��` instance UH��ˆ����x�>����UH��ˆ����� �������D����(4��`%/*********************************** )��`for port of i1, +,��`B vpiHighConn = vpiRefObj where vpiRefObjType = vpiInterface ,,��`for port of i2 , /��`? vpiHighConn = vpiRefObj where vpifullType = vpiModport 2��`*****************************************/ 5��`"module child1(interface simple s) 8��  c1 c_1(s); ����@ c1 c_2(s.master); ;����` endmodule =����`/**************************** A����`for port of child1, C����`< vpiLowConn = vpiRefObj where vpiRefObjType = vpiInterface Z��`for that refObj, ]�� vpiPort is = port of child1. :����� vpiPortInst is = s, s.master ����@ vpiInterfaceConn is = i. c[����`for port of c_1 : e��`? vpiHighConn is a vpiRefObj, where full type is vpiInterface. g|����`for port of c_2 : Qi����`= vpiHighConn is a vpiRefObj, where full type is vpiModport. UH��ˆ����x� >����UH��ˆ���CC  ����l���Xa@` ���$�?F��Xa@` ��Xa@3@aa@R � @��%�#EH��R � @��GG|����l��� R � @��&�����R � @ ��������F����W��`vpi� Driver  e_ө@ @��'�#FJ�� e_ө@ @��II����l���  e_ө@ @��(����� e_ө@ @ ��������H����W��` vpi� Load ? !�g�$��)�HL��? !�g�$���KK�����l��� ? !�g�$��*�����? !�g�$o��������J����!��`NOTES "!��`]vpiDrivers/Loads � for a structure, union, or class variable will include the following: .��`#Driver/Load for the whole variable 6��`5Driver/Load for any bit/part select of that variable 9A��`6Driver/Load of any member nested inside that variable ;![��`LvpiDrivers/Loads � for any variable array should include the following: S< l��`l Driver/Load for entire array/vector or any portion of an array/vector to which a handle can be obtained. ahO���+�JM��ahO�@`RO���,�LN��@`RO�d}O��-�MO��d}O@dO���.�NR��@dO�UHˆ����� bh d��UHˆ����dQQ ����l��� UHˆ�����b����UHˆ����������P����WO UTUT��d 3@@N����/�OS��3@@N��4@UN����0�RT��4@UN��4jM@���1�SU��4jM@�4@N����2�T���4@N��UЀ2�����J���� W �K/����W@(���V�X��W@(F "K����#VWZ��F "K���YY����l��� F "K����V����F "K����������X����W>��`instance array DWpU���� VX[��DWpU��D qY@����VZ\��qY@�~vLNCY���#V[^��~vLNCY��]]����l��� ~vLNCY���V����~vLNCY���������\����W@��`program array W@��� V\_��W@�EB]N�@���#V^%���EB]N�@��kk����l��� Bmče��g�(L%a��Bmče釤yvByv:short real typespec ƊhׂEFe��h�(L`e��ƊhׂEFe釤s$Ɗs$: int typespec��d������m��������dd�������� UH��ˆ����m�b����UH��ˆ��tI� ����I��d����8��"h Modpor� t Q!��"hInterface tf declE UH��ˆ����m� b����UH��ˆ���9cc ����l��� WW%gLe��i�(Laf��WW%gLe釤aWa:short int typespec DxOe��j�(Leg��DxOe釤OSsOSs: byte typespec 2TVe��k�(LfhI�W�2TVe釤2:array typespec ڨ0Oe��l�(Lgi��ڨ0Oe釤: time typespec K~[Q\e��m�(Lhl��K~[Q\e釤& & :var bit typespec �8µR�]��eb�7����8µR�]�8¾�8¾�� �EB]N�@���V�����EB]N�@��������_����WA UTUT��`primitive array `_Oƍe��n�(Lim��`_Oƍe釤:::integer typespec 5MTXe��o�(Llr��5MTXe釤5M:string typespecycqyN@��� Xoq�o�ycqyN@ٴC@���# nqqn��ٴC@��ppd����l��� ٴC@��� ����ٴC@���������o����W��` instance ybqxN@��� oj��ybqxN@no 5M�+>Xe��p�(Lms��5M�+>Xe釤 5M :struct typespec E0PWe��q�(Lrtc�'�E0PWe釤;+5E;+5:union typespec ߴdžWOe��r�(Lsu��ߴdžWOe釤(ߴ(: enum typespec ψ΍e��s�)Ltv��ψ΍e釤ψ{typespec {UUFe��t�(Luw��{UUFe釤:class typespec Ɗ[uEFe��u�(Lv`�(�Ɗ[uEFe釤fPQƊfPQ: bit typespec @ʍe���(L^yz�y�@ʍeGNN@rangeB_S?���Lxzzx��B_S?B^S?���Lyo1^ �B^S?xy?B�w���Lo��?B�w�?B)?BRcS?�����RcS?('��d������y���������������� ?C�ˆ����y�}����?C�ˆ��� ������ ����W'��"h:Variables (supercedes IEEE 1364-2001 section 26.6.8) ?C�ˆ����y� }����?C�ˆ���D@~~ ����l���Lྞ+c���6��Lྞ+cL"hRIb�� �=��L"hRIbV?AN��!��9��V?AN���p�����l��� V?AN��"�����V?AN�������������W��`program ;tUjr����L{Y)]�;tUjr��=tU;tU>bQ+Ǩ[���L��>bQ+Ǩ[�>bQtU^b;jr����L`(a�^b;jr��ȑb;^b;gu@+����L��gu@+��gu@+;u@+ru@+����L ��ru@+��ru@+u@+ �]���* ���]ͳ�8� @�]���* J��@�]((�8�g`kQ���L/;��g`kQ?@dz>QK����L 1z �dz>QK��dz>Qzw>QpQ6>Q����L 1 ��pQ6>Q��pQ6>QA>Q^8jr����L c'd�^8jr��ȑ8^8gß9����L��gß9��;ßgß2Y J�\���L��2Y J�\�2Y J2Y8"1)CnO����Lw��"1)CnO��"1)CxCuS?���|��uS?0 xE!N���k����xE!N�������������W ��`program ?BiP����L��?BiP��?Bi8i#de:l����L��#de:l��#de::&ThS?�����&ThS?cZmeT#���e��ZmeT#1 PD]���(L��PD]PP�3vpiBaseTypespec ?ґ=x>]���(L��?ґ=x>]?Қ%-?Қ%-�3vpiTypedefAlias}Y f����L/��}Y f��}Y f^ fl_CP$����L2��l_CP$��l_CCX\S?�����X\S?*S?׵�����S?׵!<xS?�����<xS?&US?6��� ��&US?6'&X1S?���.��&X1S?# UQ��^��4�E�����M^ `�| ����Nf��{�zZ$��Nf޼O@��{�z78��޼O@:K_���{� z"O��:K_��:�YY@����V_&��YY@�~GLNCY���#V%(��~GLNCY��''����l��� ~GLNCY���V����~GLNCY���������&����WB��` module array J N@��� V&v|�v�J N@@eW��{�zO-��@eW���**����l��� @eW��{�z����@eW��������)����W^UTUT��`vpiBit 0*W$IN���<6,��0*W$IN/ʣ'dN�� �<+��/ʣ'dN���UU/�����l���S¤���{�z)0��S¤��SeܙC S?��� X��C S?%"V f����L ��V f��V f fS@ʣ���{�z-3��S@ʣ��S@e@B]&^8���LMI��B]&^8X bĝWMyo����L9��bĝWMyo��3WbĝWZ:(�@ ��{�z04��Z:(�@ �Z:(Z:@1@O@,���{�z35��@O@,��Z:@,@O@,~+Cn-���{�z467�6�~+Cn-��~+CnCnp{CꙟJ���{�z5775��p{CꙟJ��p{C?Cp{Cnj4�+��{�z6#��p{Cnj4�+56oO@��{�z#N��oO@}@����L2P��}@��}w}��d������|#��������@@��������,C:BP6���L M��,C:BP6���LL]����l���K N@��I�!AC��K N@@A[S E����#���[S E�����>>y�����l��� [S E����$�����[S E�����������=����W?��`program array UH��ˆ����|$�:����UH��ˆ��3�(���(����@ ����- UTUT��` * ��`NOTES +��`8 A var select is a word selected from a variable array. -�� sThe boolean property � vpiArray � shall be TRUE if the variable handle references an array of variables, and ���vFALSE otherwise. If the variable is an array, iterate on � vpiVarSelect � to obtain handles to each variable in ��@ the array. *]��`XTo obtain the members of a union and structure, see the relations in section � 30.21 �� sThe range relation is valid only when � vpiArray�  is true. When applied to array vars this relation returns |��@bonly unpacked ranges. When applied to logic and bit variables, it returns only the packed ranges. &!�� �vpi_handle (vpiIndex, var_select_handle) � shall return the index of a var select in a 1-dimensional array. � vpi_iterate ���(vpiIndex, var_select_handle) � shall return the set of indices for a var select in a multidimensional array, starting with  [��@1the index for the var select and working outward !�� zvpiLeftRange � and � vpiRightRange � shall only apply if vpiMultiArray is not true, ie if the array is not multi- ��@ dimensional. e�� A variable handle of type � vpiArrayVar�  represents an unpacked array. The range iterator for array vars returns only the ��@unpacked ranges for the array. ��`{If the variable has an initialization expression, the expression can be obtained from � vpi_handle(vpiExpr, var_handle) )!�� vpiSize � for a variable array shall return the number of variables in the array. For non-array variables, it shall return the  ���ysize of the variable in bits. For unpacked structures and unions the size returned indicates the number of fields in the ܪ��@structure or union. +!%��`zvpiSize � for a var select shall return the number of bits in the var select. This applies only for packed var select. h Ü��`ZVariables whose boolean property � vpiArray � is TRUE do not have a value property. (!>��`]vpiBit�  iterator applies only for logic, bit, packed struct, and packed union variables. +>�� vvpi_handle(vpiIndex, var_bit_handle)�  shall return the bit index for the variable bit. � vpi_iterate(vpiIndex, c���var_bit_handle)�  shall return the set of indices for a multidimensional variable bit select, starting with the index for the  U��@bit and working outwards $�� | � cbSizeChange�  will be applicable only for dynamic and associative arrays. If both value and size change, the size ���zchange callback will be invoked first. This callback fires after size change occurs and before any value changes for that @8��@>variable. The value in the callback is new size of the array. !�� The property � vpiRandType� , returns the current randomization type for the variable, which can be one of � vpiRand� , !��@)vpiRandC� , and � vpiNotRand� .  ��`qvpiIsRandomized�  is a property to determine whether a random variable is currently active for randomization. d (yx�� �When the � vpiMember�  property is true, it indicates that the variable is a member of a parent struct or union variable. ��@)See also relations in section � 30.21 {�� If a variable is an element of an array, the � vpiIndex�  iterator will return the indexing expressions that select that specific ��@variable out of the array. i �� Note that: ���logic var == reg ���var bit var == reg bit P0l��@array var == reg array UH��ˆ����|&� :����UH��ˆ���C??  ����l�����d������|*��������CC�������� ?C�ˆ����|+�A����?C�ˆ��@� ����///��C ����Wj��"h3BVar Select (supercedes IEEE 1364-2001 26.6.8) ?C�ˆ����|-� A����?C�ˆ���@FBB ����l�����d������|1��������FF�������� UH��ˆ����|2�D����UH��ˆ��sϙ� ���LL��F ����$��"hTypespec+ ,Vϙ��`NOTES . eϙ�� yTypespec to typespec relation is used when the � vpiTypedefType�  is "vpiTypedef", which will be the case for type Ppϙ��@#aliases, for example, typedef a b; UH��ˆ����|4� D����UH��ˆ���CIEE  ����l�����d������|8��������II�������� UH��ˆ����|9�G����UH��ˆ��� ��� ����I ����/�� If the type of a type is � vpiStruct�  or � vpiUnion� , then you can iterate over numbers to obtain the structure of ��@cthe user-defined type. For each member the typespec relation from the member will detail its type. 0�� iThe name of a typedef may be the empty string if the typedef is representing the type of a typedef field ��@7defined inline rather than via a typedef. For example: 14C�� typedef struct { N��� struct E��� int a; 0E��� }B ��@} C; %�� vThe typedef C has � vpiTypedefType vpiStruct� , a single field named B with � vpiTypedefType vpiStruct� . ���lObtaining the typedef of field B, you will obtain a typedef with no name and a single field, named "a" with R@��@.vpiTypedefType�  of � vpiInt� .�  UH��ˆ����|;� G����UH��ˆ���FLHH ����l�����d������|?��������LL�������� UH��ˆ����|@�J����UH��ˆ��x`?� ���V��L������"hDVariable Drivers and Loads (supercedes IEEE 1364-2001 26.6.23) X*��"h8Instance Arrays (supercedes IEEE 1364-2001 26.6.2)/ WxUTw��` UH��ˆ����|B� J����UH��ˆ���IKK  ����l��� ARE@���=�� ARE@���NN�����l��� ARE@���=���� ARE@��������M����WVUTUT��`vpiWaitingProcesses UQ��g�w��1�!������wT%�"4����xca�@��j�CUZ?UZ�xca�@�xcaxclOR`ݽ����b�CWU?WU�R`ݽ���c`R`DK@%�� �ORS��DK@%JO_A@�� �#ORf��JO_A@��aa#�����l���d �L��9�O�V��d �Lclb���i�CQP?QP�clb��clbFNlb_@ ��;�OT[��_@ ���WWY�����l��� _@ ��<�O����_@ ��������V����WpUTUT��` vpiParent UǒS?���.Y��UǒS?,$&YkS?���Xe��&YkS?&&ˣFwϭ� ��l�CP"?P"�ˣFwϭ� ���!!M����l���%gXE ��@�OVG��%gXE ���\\Z�����l��� %gXE ��A�O����%gXE ���������[����Wq��` constraint UQ�����y�����k �0����\N` ��ͧ� :��\N` )ZMN���O$d��)ZMN���``[�����l��� )ZMN���O����)ZMN���������_����Wr��` dist item JO_A@���O����JO_A@���������S������ constraint P���@item D@#]��� �O&i�i�D@#]����cc\�����l��� D@#]���!�O����D@#]����������b����Ws��`expr MjK@���O_ ��MjK@&UcS?���Y��&UcS?)CB_M@���� OS��CB_M@��CB_B_x1S?��0�|.��x1S?{|cG@��K�CB9?B9�cG@���ii]����l���A~I3@��"� Obb��A~I3@AFj����ja��AFj��AB۾lL���]�q��lLXE�����=*+��XE�����mm�����l��� XE�����=����XE�����������l����W`��` class defn [^E�����=Dp��[^E�����oo�����l��� [^E�����=����[^E�����������n����Wa��` variables XꑷK@���=nw��XꑷK@e ���]k��e ���yy �����l���Ǿg@`����!|��Ǿg@`��ss)����l��� Ǿg@`���|����Ǿg@`Z� ��� ����r����v UTUT��` 3��` ->method 4��`bool: vpiMethod b��` --> Access d��` - vpiAccess h��` -> Virtual i��`bool: vpiVirtual 9��` > extern e��`bool: vpiExtern A ��`bool: vpiDPiExtern hjZZ nP�������hjZZ nPl� ��� ��������R��`-> array member g��`bool: vpiArray t��`-> name u��` str: vpiName y��`str: vpiFullName {��`-> sign |��`bool: vpiSigned }��`-> size ~��` int: vpiSize ��`!-> determine random availability C��`bool: vpiIsRandomized L@iF����P5��L@iF��L@iFVlFP �@���#V(||(��P �@��{{����l���@S+q\o����=px��@S+q\o��R ™+q@S+q<?Y����=wz��<?Y��XT?<? e ���]����e ���������q����Wo��` alias stmt عfkvK����=x��عfkvK��Qfkvعfkv P �@���V����P �@���������v����WC��`expr J N@���Vv}��J N@(vK`r^N@��� V|C��K`r^N@FNHvJ'��t�O &&�FNHvJ' <Gf'Y����=zM��<Gf'Y��X(Sf'<Gf' E@VS+��Y� : �� E@VS+��E@ E���4�M����@�����@@ �4h��3���@ �4h�t@ 7����]q��7�� Sn7Q`u]�@���#V}CC}��Q`u]�@�� ����l��� �����]�� �� 7Bw ���:a��w ���<����l��� w �������w Շ������������WUTUT��` vpiParent Q`u]�@���V����Q`u]�@�������������WD��`expr zDܦ՘ ��Z� �s��zDܦ՘ �:DzDUQ��# ���n����� $�o-����bNA����z��bNA����''~�����l���UQ��-%��|�S�����%|�T1����5_�g ��E� ���5_�g �������l��� 5_�g ��F� ����5_�g � �����������m��`NOTE UTUT��` Wn.��`XvpiDirection�  returns � vpiR� ef�  for pass by ref ports� .�  �  h ve����]q��h ve��h 3  n_\@@7��� <G�� n_\@@7%<2ZN@��� H ��2ZN@x\H@��A�! ��x\H@�cw ���B�!��cw ���������l���=vN@��� 8��=vN@CI@*C@���# ��CI@*C@��!�����l��� CI@*C@��� ����CI@*C@�������������Wl��` instances =uN@��� .��=uN@ cw ���C�!����cw �������������WjUTUT��`scope È0P��D�!��È0P� 0��E�!�� 0�@5ϊ��F�!7��@5ϊ��������l��� @5ϊ��G�!����@5ϊ������������WkUTUT��` class defn 7ZC@���#H ��7ZC@��"����l��� 7ZC@���H����7ZC@�������������Wz��` instances 2YN@���HY��2YN@ ˣFwϭ� ��m�C����ˣFwϭ� ��������Z����WUTUT��` vpiCondition cGa� ��p�CZ??Z��cGa� ���##d����l��� cGa� ��q�C����cGa� ��������"����WUTUT��` vpiCondition 6Z@)s���#|{|�6Z@)s��==�����l��� n_\@��� m<�<� n_\@~\IhRv���Oyb@�~\IhRvy bNA��������bNA��������� ����W UTUT��` instance *+e�@���#=�*��*+e�@��))=�����l��� *+e�@���=����*+e�@���������(����W��` class var pªK@���=(l��pªK@UK@���=l,��UK@�6?jV-����=+/���6?jV-���6?jVlj�Vp�����=���Vp����Vp�]pS?������S?u� @'���!=,1��u� @'��00?�����l��� u� @'���=����u� @'��������/���� UTUT��` "��`-> Class type $��`int: vpiClassType %��`int: vpiMailbox &��`int: vpiSemaphore ��`-> associative array ��`bool: vpiAssociativeArray ��`-> index type ��` vpiIndexType #��`-> dynamic array $��`bool: vpiDynamicArray %��`-> access type '��`int: vpiAccessType z��`int: vpiPublic  ��`int: vpiPrivate A'��`int: vpiProtected [KdK����=/5��[KdK����22@�����l��� [KdK����=����[KdK����������1����W-��`frame 2^ N@��� 9Ui�U�2^ N@,D L��u� V8��,D L�>D ,DlYMH݁M@@���=16��YMH݁M@@YAagE�����=5Of�O�YAagE�����NNA�����l���gNJ��N�!8��gNJAK_���O� !7Y��AK_��AhL#@xxb@��'�:��L#@xxb@U{{O���(�9x��U{{O����;;z�����l��� U{{O���)�����U{{O����������:����W ��`interface array �Sq ��� %%���Sq ��@@�����l��� 6Z@)s�������6Z@)sl� ��� ����$����,��`-> multi array -��`bool: vpiMultiArray .��` -> lifetime =�� . � bool: vpiAutomatic (ref. 26.6.20, 1364 ��@2001) /��`-> constant variable 0��`vpiConstantVariable 1��`-> randomiztion type 2��`int: vpiRandType a3�� can be vpiRand, vpiRandC, ��@ vpiNotRand =K`��&�#|1��=K`��??F����l��� =K`��'�|����=K`��������>����W6��` � vpiParent �Sq ��� �����Sq ��������<������ clocking P���@ i/o decl [BM4)���#�GI��[BM4)��[BM)[BM܀MLc�P@��� HR��܀MLc�P@�܀MLc܀MwK`r]N@���VD��K`r]N@}ҕN@��� VCE"�E�ҕN@И�@���#VD""D��И�@��FF����l��� И�@���V����И�@���������E����WE��`expr �\@��� H���\@MN��� GB��MN��PP(�����l���pvv���#�A7��pvv��pvvypvvf4rHx1���� u��f4rHx1��f4rV4r#o���#�7w��#o��#oy#o ,C:BP6���L����,C:BP6��������;����4��`-> name S5��` str: vpiName F*V&]���L;1��F*V&]���RR^����l��� YAagE�����=����YAagE�����������6����W.��`expr Z ]݋K@���=6ff6��Z ]݋K@ MN��� ����MN��������H������ concurrent P���@assertion item TN` ��̖� YW �W�TN` z:ė |��� BST�S�z:ė |�zA@�z:Nz<e��� RTTR��Nz<e�NzERz<eSz:Ťb g�� SX��Tz?b�+RS8^ �@���# 3ii3��8^ �@��hh.�����l��� ߧfh ��d� 4�� ߧfh � 2^R@�N��̗� Qc Qc�@�N���aa-�����l���k됒H���!� T\��k됒H����[[*�����l���GO@��e�!8h��GO@3EN@��� ]j �j�3EN@ k됒H���"� ����k됒H���������X���� UTUT��` W 0��`vpiDefInputSkew H���9� X^��H����]]+�����l��� H���:� ����H���������\���� UTUT��` W 0��`vpiDefOutputSkew __\@��>� \_��__\@@: ��?� ^b��@: ��``,�����l��� @: ��@� ����@: ��������_���� �� clocking P���@i/o dec� l @�N��̘� ����@�N���������W����W��`event control y/ @���H� _l��y/ @��y/ �> K@��̙� Wd Wd�K@3Î?K@��̚� ce ce�3Î?K@^q|N��̛� dk dk�^q|N���gg3�����l���YA]݊L���=O��YA]݊L6O ^q|N��̜� ����^q|N���������e����W��`delay control 8^ �@��� ����8^ �@���������U����W��`expr 2^N@��� U|��2^N@3U89C@���#]Z Z��89C@��dd8�����l���3K@��̝� e e�3K@+C@ ��R� b:��+C@ ���nn/�����l���e[E�a� ��� p%��e[E�a� �e[wne[E�a +C@ ��S� ����+C@ ��������l����UTUT��` W0��`vpiSkew Bx`�K@��� p��Bx`�K@B_xK@��� om��B_xK@u˳į���]t��u˳į���rrL�����l��� u˳į���]����u˳į��������q����W�UTUT��`vpiLhs zҗ |��_�  ��zҗ |�Nz@Ew$����]qh��@Ew$��@E3e0 wli=]���(JT��wli=]wlwl�3vpiIndexe@/E2M���� z��e@/E2M��e@/E21E2f@�2��#�K5��f@�2�f@f4rL!Sb��1�:9��L!Sb}HɎ@��� O&&��}HɎ@Z]2\@��� v}��Z]2\@���{{1�����l��� Z]2\@��� ����Z]2\@��������z����WUTUT��`vpiClockingEvent @He]�` ���# i���@He]�` ��6�����l���@l{GN��� z��@l{GN���~~2�����l��� @l{GN��� ����@l{GN���������}����W��`event control @He]�` ��� ����@He]�` ��������|������`-> vpiDirection &��` ->vpiName '��`->vpiDefault Skew S��`bool % K;q��� �H I��% K;q��% K`}KZw5h_���Oy��Zw5h_~\!#8����O&�y�~\!#8����7�����l���R4K@��̞� k k��R4K@2h{@���=f-��2h{@���B�����l��� nk~ m]��#�(/����nk~ m]nS3nS3�3 vpiParent ~\!#8����O����~\!#8��������������Wy��`expr A|J5hRv��#�OiO&�A|J5hRvbi 2h{@���=����2h{@������������W/UTUT��` vpiMessages iʍe��%�(S � �iʍei@rangeS?��&�  ��S?^qO` ��̟�  ��^qO` Q9ۅN` ��؟� 9� �9ۅN` 9eN��� 9 �9eN���4�����l���S?��'� {��S? 9eN��� ����9eN��������� ����W��`event control ;QIK@��� 9 �;QIK@;J_K@��� 9�;J_K@;ݞ MOć���� }��;ݞ MOć��;ݞ M8�d M8N��� 797�8N���**i�����l����9 r$��� � �v���9 r$���9 $Ǟ _\@��6� ��_\@�D @��7� o���D @��5�����l��� �D @��8� �����D @�������������� clocking P���@block �J|s��`� s s���J|s��J`|s <$e��!�(!S�!�<$e;<:var bit@\p����=-��@\p��@\p@\OwUQ��>���D�����>t�F;����6 ?~@l���T��6 ?~@l�6 _pvu�Us����=���Us��Ws�Us� ���:��� �4W$�GM���=D��W$�GM�W$Wxq�OzӤb g�a� V���Pb�+sC&S?��"�SS��C&S?ϕN@���VE#��ϕN@DEI`� N@��� V"$'�$�I`� N@O` � �@���#V#''#��O` � �@��%%����l��� O` � �@���V����O` � �@���������$����WF��`expr >K%_J'���v�O~@~@�>K%_J'��>K%_e%_I` � N@���V$c��I` � N@#$F_A���Y�!**+�*�F_A����))E�����l��� F_A���Z�!����F_A���������(����W UTUT��`stmt @VM@@��[� !(++(��@VM@@@VM@��\�!*,��@VM@(* �R��d�!+-�� �R� fnpm���f�!,.��npm��npm7ejuT�l���!-/��ejuT�l�ejuTeju7T[DU܇����!.��T[DU܇��T[D▱DTJ2�ڧ���!@��TJ2�ڧ�TJ2TJ7iz@ ��(�#|>3��iz@ ��22G����l��� iz@ ��)�|����iz@ ���������1����Wg��`refobj TKI* @��*�|14��TKI* @U}R���+�|3i��U}R��U}UM}8v&���#�wI��8v&��*&8v&#]��� 68��#]���77H����l��� #]��� ����#]��������6����W UTUT��`vpiExpr #]"c��� 6<��#]"c���;;K����l���Ì81���7�#xL��Ì81���KK$�����l��� ~,k]���(F��~,k]~5s~5s�3 vpiParent #]"c��� ����#]"c��������8����W!UTUT��` vpiLeftRange #]bg��� 8S��#]bg���==P����l��� #]bg��� ����#]bg��������<����W(UTUT��`vpiRightRange  *VyK`��/�!gB�� *VyK`��??Q�����l��� *VyK`��0����� *VyK`F��������>����) UTUT��` *��`-> array member +��`bool: vpiArray ,��`-> name 0��` str: vpiName 2��`str: vpiFullName 5��` -> value C1��`vpi_put_value() %Y���w�O&&&�%Y��,%%HA����zqx�q�HA����ggU�����l���1@K���L�>C��1@K�4AC��M�#BW��4AC��VVR�����l���$K7�g)Z��$�=n��$K7�g)Z���EEJ�����l��� $K7�g)Z��%�=����$K7�g)Z��������D����7��`NOTES 8UTUT��` :UR��` ;.��`kvpi� Waiting/Process � iterator on mailbox/semaphores will show the processes waiting on the object: < ��`<Waiting process means either frame or task/function handle. >!��`EvpiMessage � iterator shall return all the messages in a mailbox. bA�� qvpiClassDefn�  returns the ClassDefn which was used to create the handle. � vpiActualDefn�  returns the  T���iClassDefn that handle object points to when the query is made. The difference can be seen in the example _���below: W��class Packet 0W ��... ��endclass : Packet ��� ��$class LinkedPacket extends Packet ��... ��endclass : LinkedPacket ��� ��LinkedPacket l = new; ��Packet p = l; �� ��@fIn this example, the vpiClassDefn of variable "p" is Packet, but the vpiActualDefn is "LinkedPacket". SN!��`MvpiClassDefn/vpiActualDefn � both shall return NULL for built-in classes. SC˗{]���(:a��SC˗{]S�+S�+�3vpiBityB#h0���#���yB#h0��B#hyB#hRT@���9T��������T[�>���� Gz=Se��#�)5J�J�Gz=SeS$BGzBEexpr,?S?��#�II��,?S? Ì81���8�����Ì81� ��������9����W72��` Instance L$+b��9�9x��L$+b缾���5�u��缾��缾缾��d������Ŗ��������QQ&�������� UH��ˆ����ŗ�N����UH��ˆ��…@y�����===��Q����Wf��"hClass Variables 0 DH�3���L9W��DH�3�DYDHUH��ˆ����ř� N����UH��ˆ���sOO ����l��� F*V&]���L����F*V&]��������M����2��` -> typedf :��`bool: vpiTypedef 9��`-> name S3��`str: vpiName C&S?��#�! ��C&S?!��d��������������U_*��������U$����� T�Z��U$�����YY1����l��� 4AC��N�����4AC��������C����B�� named event P���@array X I` ��O�#C[��X I` ��XXS�����l��� X I` ��P�����X I` ��������W����WC��` � vpiIndex U$�����T����U$����������U����(/�`Accellera�  S)�` Uw��R��� TU_��Uw��R���^^K����l���a_6@ ��Q�#W]��a_6@ ��\\T�����l��� a_6@ ��R�����a_6@ ���������[����D�� named P���@event [ ��S�[d��[  Uw��R���T����Uw��R��������Z����W*��l1,#3.� � =Running H/F 4A ?C�ˆ����� TZ���?C�ˆ�����vv\����l��� )gSe��C�(zc��)gSeeB/)B/@module'%8wB����Fb��'%8wB��j8߻'%8 ]P@+1k]���(ac��]P@+1k]]PI]PI�3 vpiParent'%L7.w[����bk��'%L7.w[��L7.'%L7.K>cCI���T�]e��K>cCI��K>cC[C WBK@���U�dz�� WBK@�� WBTjB4Hy��m�!��4Hy��W�����l��� HA��������HA���������A����WE UTUT��` instance Kč�� �]tm��Kč���jjN�����l��� cG@��L�C����cG@��������h����WtUTUT��` vpiCondition Kč�� �]����Kč��������h����W@UTUT��`vpiRhs Quk]���(c!��Quk]Z*Z*�3 vpiParentfGRzN��x�<>B�>�fGRzN���==,����l���g@{�h`'���]hn��g@{�h`'�gg@{7BnN@��� ]mor�o�7BnN@=C@���#]nrrn��=C@��ppO�����l��� =C@���]����=C@���������o����WA��` instances  M@@��� AxxA�� M@@7AnN@���]os��7AnN@no=����]r��=��Ů==�H���]����=�H��=�[=�H&?I ���V�M��&?I ��&?I &?mA@��O�#)y�y�A@��wwo����l��� A@��P�����A@���������v����W��`frame M@���q{��M@Aq`K@��Q�vv��`K@ߧ���Z�e{��ߧ�� j�_��[�z�� j�_�U jUQ��z��������׉q�.���� 5N������� 5N���V�����l���`A@��k�#:~9�~�`A@��ww����l��� 5N������� 5N���������}����WF��`range RK@���}}��RK@}ߢ���`�{��}ߢ��}~p������p��&Npmէ���b���mէ��my���� ��y��yy n# 0٧���d���n# 0٧��> 0n# 0uS L@���e�f��uS L@��C uS 4Hy��n�����4Hy��������f����G UTUT��` J��`-> name K��` str: vpiName QM��`str: vpiFullName 5 O�g��~�f ��5 O�g��� X�����l��� 5 O�g�������5 O�g-������������H��`NOTE L!�� rvpi_iterate(vpiIndex, named_event_handle)�  shall return the set of indices for a named event within an array,  !���ostarting with the index for the named event and working outward. If the named event is not part of an array, a P��@NULL shall be returned. y�S��� ��y�S�yy'UXU+A���� � �XU+A���� �����l��� XU+A��������XU+A��������� ����WI UTUT��`expr Rf?(WM@@���   ��Rf?(WM@@Rf<(WM@��� }��Rf<(WM@  ROL@������ ROL@}� cc`P�E`��t�|����cc`P�E`������������R��`-> sign V��`bool: vpiSigned [��`-> size ]��` int: vpiSize ^��`-> type CO��`int: vpiFuncType gAR >���s�|��gAR >��WARgARcc`P�E`��v�#|��cc`P�E`������l��� �gP)���| r�� �gP)���--����l���,?S?��#�JG��,?S?IJT���$�!��T��VEG ���#|��VEG ������l��� VEG ���|����VEG �������������W`��` class defn W*���|���W*J4K����#|�J4K�������l��� J4K����|����J4K��������������WP��` task func `HBWpU���� |��`HBWpU��`HBНBL~Y@����|��L~Y@�PlLNCY���#|&��PlLNCY�� ����l��� PlLNCY���|����PlLNCY�������������WQ��` function SKbI @���| ��SKbI @$R����|��$R��$T$_]Cx]����k"��_]Cx]��Y!]C_]C 4d=k]���(!.��4d=k]4m%4m%�3 vpiParentuMW���3�|t$��uMW��@-WuMWv@Mر?���5�|#%��v@Mر?��)v@M@X( ���7�|$x��@X( ��+( @X(  Y@����|'�� Y@�LNCY���#|&)��LNCY��(( ����l��� LNCY���|����LNCY���������'����WT��`task Xe(N@��� |'*,�*�Xe(N@^c(�@���#|),,)��^c(�@��++ ����l��� ^c(�@���|����^c(�@���������*����WU��`expr Xb(N@���|*6��Xb(N@)* �gP)���|���� �gP)v������������a��`NOTE c��`cA Verilog HDL function shall contain an object with the same name, size, and type as the function. j�� jvpiInterfaceTask� /� vpiInterfaceFunction�  shall be true if task/function is declared inside an ��@(interface or a modport of an interface. PH�� zFor � function where return type is a user-defined type, � vpi_handle�  (vpiReturn,Function_handle) shall return  T���pthe implicit variable handle representing the return of the function from which the user can get the details of QUP��@that user-defined type. S s��`IvpiReturn � will always return a var object, even for simple returns. '%pIx~����"��'%pIx~��pI'%pI?M��@���A�����M@�BB���� UH��ˆ�����y����UH��ˆ��N� ��� ]]��1����N��"hAlias Statement  !J��` Examples *4��`alias a=b=c=d :�� Results in 3 aliases: 4��� O�� alias a=d 0O�� alias b=d �@ alias c=d W-KJ��`d is Rhs for all. UH��ˆ����� y����UH��ˆ���H00 ����l���N O@��<�|x3y�3�N O@5�QL��=�#|2yy2��5�QL��44 ����l��� 5�QL��>�|����5�QL���������3����WS��` func call V@kz�@���uE��V@kz�@�V@kEV@kzX^N@��� |,7:�7�X^N@^\�@���#|6::6��^\�@��88����l��� ^\�@���|����^\�@���������7����WX��`expr EYJ���M�ChW?hW�EYJ��EYNEYX[N@���|7;��X[N@67x :H ����|:n��x :H ��x :HEHFuN'F@���OS>��FuN'F@���==_�����l��� FuN'F@���O����FuN'F@���������<����v�� constraint P���@ ordering E}gJK����O<e��E}gJK�]2ӡϥx���$�C"���]2ӡϥx�>"b>*%S\@���OlB�B�>*%S\@Nu-儷@���OA A��Nu-儷@��JJ`�����l���UQ���M���b�����2�M>?�r5������d��������������HH,����������d���������������������� UH��ˆ�����D����UH��ˆ��=� ������H����Wf��"h0Frames; (supercedes IEEE 1364-2001 26.6.20) %���\�O[K��%��%e`UH��ˆ����� D����UH��ˆ���1wFF  ����l���eK���L1]��eKg Nu-儷@���O����Nu-儷@��������B������ constraint P���@ ordering BD`L��`�OGLN�L�BD`LX��a�OKNNK��X���MMa�����l��� X��b�O����X���������L����Wx��`class BD` L��c�OLT��BD` LKLwvBַ���&�OQR�Q�wvBַ����PPb�����l��� wvBַ���'�O����wvBַ����������O����W��`expr _$"LHĎ@��(� OORRO��_$"LHĎ@w$ MUiRv��)�OQR��w$ MUiRvOQdl@'����O[<��dl@'��dl@'d5*l�~���i�ONUV�U�l�~��l�%l�dl�j���j�OTVVT��dl�j��dl�Ol�dl�@���k�OU[��dl�@�TU"͎NV����LPZIgZ�"͎NV��ymN"͎N >VNOe��b�(L^1�^�>VNOe<0>0: void typespec;ḐR���L]a��;ḐR%] 8ۣeE3]���(LWqIW*�8ۣeE3]8ۣg8ۣg�3vpiElemTypespec�#z@��p�!OVS���#z@��\\e�����l��� �#z@��q�O�����#z@p� ��� ����[����| UTUT��` }��` > virtual ~UTUQ��` ��`bool: vpiVirtual u��` --> lifetime (static/automatic) w��` bool: vpiAutomatic ��` -> extern ���`bool: vpiExtern *��`-> name _��` str: vpiName &��`str: vpiFullName m��` --> active Cn��` bool: vpiIsConstraintEnabled 3cK4c6���LIYY��3cK4c6���__`����l���C޻Dq��c�LXx1Xz�C޻Dq 3cK4c6���L����3cK4c6��������]����6��` -> vector S7��`bool: vpiVector ^Z%"w~���Lad��^Z%"w~…wal\Ed6���LY``��l\Ed6���bba����l��� l\Ed6���L����l\Ed6��������a����8��` -> vector Sv��`str: vpiVector ^0P"wn���Ldt��^0P"wnsdE`D3Ed6���L`cc��E`D3Ed6���hhg����l���F1upF@���O>g��F1upF@���ffc�����l��� F1upF@���O����F1upF@���������e����Wz��` distribution DglK����Oei��DglK� E`D3Ed6���L����E`D3Ed6��������d����w��` -> tagged Sx��`str: vpiTagged �Pl_bc����Ogj���Pl_bc���Pl_bDgl_bFvF@���Oil��FvF@���kkg�����l��� FvF@���O����FvF@���������j������ constraint P���@expr E}hK����OjA��E}hK�FwӉ���̓�!,x��FwӉ��FwPqF\@���Oo��F\@/<B���On��/<B��xx^�����l���LLc���hm��LLc œ�]���*LZT��œ�]˄˄�8���d��������������ww-�������� Jg4I��%�����Jg4I������������ UTUT��`NOTE:  �� zspecify blocks can occur in both modules and interfaces. For backwards compatibility the � vpiModule�  relation has ���vbeen preserved; however this relation will return � NULL�  for specify blocks in interfaces. For new code it is P��@Erecommended that the � vpiInstance�  relation be used instead. E`tEd6���Lc#��E`tEd6���uuh����l��� E`tEd6���L����E`tEd6��������t����y��` -> packed Sz��`str: vpiPacked UH��ˆ�����r����UH��ˆ��~:�������w����W0��"h Threads< UH��ˆ����� r����UH��ˆ���H_vv ����l��� /<B���O����/<B���������o����W��` distribution UQ~����Z������{1�^C����BnhqΏ���yT2��BnhqΏ}Rpp&G ~c> ��"�%y�}:�,�pp&G ~c>  UH��ˆ�����E����UH��ˆ��[� ���!!������s��"h/Scope (supercedes IEEE 1364-2001 26.6.3)   WhUT5��` nc�e��#�(y{�=�)�nc�e:n`nn`: task callylkP���y:�ylkP0 8^_Le���(y;��8^_Le�8�:method func call ~1Be��&�(y}?�+�~1Be>}}: func call qT+cGe��'�(y�K�1�qT+cGe_q_: sys func call l]�e��(�(y,~�0� l]�e  :method task callykQ���y~:~�ykQykO���y~��ykOJg4I��%�&Y���Jg4I��ssq�����l���; rE��$�Ot��; rE UH��ˆ����� E����UH��ˆ���Lp|| ����l���Kq]d��g�7y : �Kq]dŊ@��B�OB��Ŋ@��� m�����l��� Ŋ@��C�O����Ŋ@�������� ����WUTUT��`vpiSolveBefore HY���s�Od~~��HY��/HHx=mpOX@��h�7y:�x=mpOX@OfR4���y+:+�OfR4��� k����l���]GN��ͨ�^:^�]GN���k����l���MA��j�y : �MA���i����l���FNHvJ'���I�O ~� �FNHvJ'��FNHvmHv ]GN��ͩ�����]GN�������������W=��` struct var _K@��ͪ�:�_K@ K@��ͫ�:� K@ MA��k�y����MAҒ������������|��`-> name S��`str: vpiName NJ?@���On~�NJ?@���p�����l��� NJ?@���O����NJ?@������������WUTUT��`vpiSolveAfter %ήN��ͬ�&:&�%ήN���n����l��� %ήN��ͭ�����%ήN�������������W ��` union var 8����Oo$��8��8ï8wDĆV& 8� ��S�O �ĆV& 8� �ĆV& 8ĆVICKjZ@��s�y : �KjZ@���((j����l���FD6B@ ���U�O�FD6B@ ��ÆN6BFD6B]v8P2��%+�<O"%��]v8P2b E����%%�Or!"�!�b E����� r�����l���; 1�`��0���; 1�`�; 1;6 b E����%&�O����b E���������������W��`expr _}oK@��%'�O""��_}oK@_�}oK@��%(�O!��_�}oK@!\ ]����O_��\ ]��s \ @��%-�O���@���))t�����l���ِ@K@��ͮ�':'�ِ@K@5CK@��ͯ�&::&��5CK@ KjZ@��t�y����KjZ@Ǧ������������}��`-> user defined ~��`bool: vpiUserDefn ���` -> decompile S��`str: vpiDecompile @��%.�O����@��������%����WUTUT��`vpiValueRange  &L~e��2�)yR:{=�&L~e&We=&We=�{tf call]2nK@��2�CEB?EB�]2nK@5]ϦLx����C�??�?�]ϦLx�fXBOA@���#C>A?>A�fXBOA@��@@z����l��� fXBOA@���C����fXBOA@���������?������ constraint P���@expr ]OL_����� C?C??C�]OL_��]OO]D۾K@��4�C-h?-h�]D۾K@dX?G�@���#CAF?AF�dX?G�@��DD{����l��� dX?G�@���C����dX?G�@���������C����W��` implication ]rXK@��.�CO-?O-�]rXK@dE[O�@���#CCI?CI�dE[O�@��GG|����l��� dE[O�@���C����dE[O�@���������F����W��` constr if O�\@��E�xK��O�\@dFq�@���#CFN?FN�dFq�@��JJ}����l��� dFq�@�� �C����dFq�@���������I����W��`constr if else R@xU���F�HM��R@xU����LL0�����l��� R@xU���G�����R@xU����������K����W_��`clocking block uIM-���H�KQ��uIM-��uIMIM]7M@@�� � CIO?IO�]7M@@bE�@���#CNE?NE�bE�@��PP����l��� bE�@���C����bE�@���������O����W��`expr �s��I�MS���s�IM FWbe��3�(y,VB�2�FWbeXX: sys task callRhH*K_���K� QV��RhH*K_��RhH*.H*_Zq���Lqa��_Zq /ʣ'dN��!�<����/ʣ'dN���������,����W ��` named event _?߱n���N�Sx��_?߱n����:�����l���XbJ'���N�C9Z?9Z�XbJ'��XbFNXbgkE����e�Ccd?cd�gkE�����YY����l��� gkE����f�C����gkE�����������X����W"��`constraint expr  sTwN��Q�CW\?W_� sTwN���[[����l��� sTwN��R�C���� sTwN���������Z����W#��`constraint expr EtAWE����S�CZ^`�^�EtAWE�����]]����l��� EtAWE����T�C����EtAWE�����������\����W$��`expr gK@��U�C\_`\��gK@fROK@��V�C^`?Z`�fROK@EtL��W�C_b?_b�EtL\^ن3q���LTe��ن3qƞE0 ���Y�C`c?`c�ƞE0 ��ƞE0 ƞW%8TMڝ@���_�CbX?bX�8TMڝ@��x[M8TM3gK@��g�CXf?Xf�3gK@~Vq���Lah��~VqXky@��i�Cdi?di�Xky@���gg����l��� Xky@��j�C����Xky@��������f����W%UTUT��` vpiElseConst yq���Lej��yqTtOhe@���o�CfS?fV�TtOhe@��TtOhntOh܈q���Lhk��܈qDoq���Ljl��DoqVAq���Lko��VAqV 8N1����p��V 8N1����wwb�����l��� d >����|;p�� d >��W@ dh;qM���Llv��h;qMdf�@���|nq��df�@�dfdC(l`]i����|pr��`]i��di`]i B@ @���#|qt�� B@ @��ss����l���  B@ @���|���� B@ @ ��������r����WY��`vpi� LeftRange iC�@���#|r#��iC�@��uu����l��� iC�@���|����iC�@ ��������t����WZ��`vpi� RightRange z3q���Lo��z3q V 8N1��������V 8N1����������m����W;��`reg  +(/���9�|%2�� +(/�� +(Z(NO@��?�|3z��NO@23uO@��B�|y{}�{�uO@ZL��C�#|z}}z��ZL��||����l��� ZL��D�|����ZL���������{����WW��` task call uO@��E�|{~��uO@z{?O@��H�|}��?O@ߡL��I�#|~~��ߡL��������l��� ߡL��J�|����ߡL�������������W\��`io decl ?O@��K�|��?O@~)z����m��)z��Kz)z)$q���Lv��)$qh </K@��'���h </K@<У@ ��(� ��<У@ ��������l��� <У@ ��)�����<У@ ������������W8UTUT��` vpiOrigin ,z~h�������,z~h��,z@rzu�g���'�jMQ��u�g���� c�����l��� u�g���(�j����u�g�������������<��`NOTE =UTUT��` W> ��`cAll interfaces are instances and all relations and properties in the Instances diagram also apply. j?�g���2�k���j?�g���� d�����l���jX F���*���jX F���� �����l��� j?�g���3�k����j?�g��������� ����@��`NOTE AUTUT��` Wf ��`aAll programs are instances and all relations and properties in the Instances diagram also apply. jX F���+�����jX F���������� ����W9��`stmt ; o@���,� ��; o@��; ohajo6 ���1���6 ��;66 _?߱n���O�����_?߱n���������V����c�� concurrent P���@ assertions rPq���L ��rPq͘K_@���(/���͘K_@ ظp ���(/��ظp 8|8|�B var selectuj[N���zE|��uj[N�������l��� uj[N���z����uj[N�������������Wa��`refobj ͘K_@���(/"��͘K_@P \@���)7��P \@W';&N����)[��W';&N����e����l���\Pcqf���[�=M��\Pcqf��QPcq\Pcq=OY���\�=c��=OY��YTO=Ou@3�`^���!��u@3�`^�u@3`K@��R�y5��`K@vy&,�M��Z�ut��&,�M�&y&,]qxK@���z/|=�]qxK@ W';&N����)����W';&N��������������Wg��` reg array q���L&��q6���o�$��6��6I; =%K_@���)/%t�%� =%K_@M���0s��M,0nO`y���q�!���nO`y��nO`y3O`y k0���(/"+t"��k0`%`%;expr�rq���L '���rq0q���L&(cs�0qZ%q���L')`w�Z%qq���L(*Y%�quq���L)?IZ�uq =@K_@���)/%-u�-� =@K_@M���� 0#�0�M��|M @k0���(/+.u+��@k0HH;expr( ����/-3��( ��( # ְA����z2=�2�ְA����11\����l���͇����,##,��͇��x͇ ְA����z����ְA���������/����WU UTUT��`expr w?M@@��� z/==/��w?M@@9@����/.4��9@��9#Ɠ`@����/3?��`@��`$`��d������"��������6;%�������� ���~��#� 5�7�����~���������"�UH�����$� 569��UH������88 ����l��� UH�����%�5����UH�����������7����W4 UTUT��d U$����&� 57;��U$�����::B ����l��� U$����'�5����U$����������9����5/�` Accellera S6�` U�w��R��(� 59���U�w��R���<<C ����l��� U�w��R��)�5����U�w��R��������;����W7��l06Running H/F 47� � 8#9 t?M@���z2>|>�t?M@/2F_N ���z=||=��F_N #ƓB/�=���/4@��#ƓB/�=�#Ɠʀ #ƓB/ϛ[u����/?A��ϛ[u��k"[uϛ[u [i=]���(/@B��[i=]C@C@�3vpiIndex Mi=]���(/At��Mi=]MMMM�3vpiIndexGgoOP��r�!<G��GgoOPkq\Z@-���X�zqE��\Z@-��\p2C\Z@-'L�*����Y�zD��'L�*���'_�-'L�*tn`s���¢�!PR��tn`s��tn`sn`sPP��t�!CHK�H�PP�P��u�!GJKGJ�P���IIE�����l��� P��v�!����P��������H����WBUTUT��` begin O@��w�!HKKH��O@OP��x�!JL��OPGJHP��”�!KMP�M�HP�P��•�!LOPLO�P���NNF�����l��� P��–�!����P��������M����WCUTUT��` fork O@��—�!MPPM��O@OP��˜�!OF��OPLO DxQ� ��#�Haq�� DxQ� � Z\ DxQts���¤�!F'��ts��tsxs`wc���»� <T��`wc��`wXNwXD�K@��¼� SUW�U�XD�K@\DX��½�# TWWT��\DX��VVG����l��� \DX��¾� ����\DX���������U����WF��`range XDK@��¿� UX��XDK@TUA8Ʒkm���Ó� Wn��A8Ʒkm��A8ƷQNƷ7VF���Ù�H [��7VF����ZZH����l��� 7VF���Ú�H����7VF����������Y����WH��`scope 6:RK@��Û�HY^��6:RK@-oE�����H^_��-oE�����]]I����l��� -oE�����H����-oE�����������\����WI��` parameter  �Z?$���Þ�H[\�� �Z?$�� �Z?5%@Z?.:@K@���H\`��.:@K@�T_d����H_a���T_d���T_.eB_ _����H`Q�� _�� _(=_��d������Ĺ��������ss$��������Vx L���(�=d��Vx L�Z{A ��)�=cf��Z{A ���eeJ�����l��� Z{A ��*�=����Z{A ���������d����WJ��` class defn `K(��+�=dh��`K(���ggK�����l��� `K(��,�=����`K(��������f����WKUTUT��`vpiActualDefn عDO���-�=fb��عDO��عDU:Df"K`��V�#|4k��f"K`��jjL����l��� f"K`��W�|����f"K`��������i����WL��` � vpiReturn V%lC ��X�#|im��V%lC ��llM����l��� V%lC ��Y�|����V%lC ���������k����WO��` variables S+ibI @��Z�|kq��S+ibI @��d��������������pp �������� UH��ˆ�����n����UH��ˆ��; � ��� ��p����3��"h8IO Declaration (supercedes IEEE 1364-2001 26.6.4) - WUT;_��` UH��ˆ����� n����UH��ˆ���Uoo  ����l���p$R���[�|m���p$R��p$Txp$ UH��ˆ����ĺ�b����UH��ˆ���J� ���CC��s������"hConstraint expression5 W'UTU��` UH��ˆ����ļ� b����UH��ˆ���#Qrr  ����l��� <$K_@���(/Bu�� <$K_@"% <@K_@���(/tv�� <@K_@+-ƓB3@"w@��:�#/u ��ƓB3@"w@��{{f�����l��� `A@��l�����`A@���������~����Wq��`thread ASM@��*�Vy��ASM@bVzN��+�x ��bVzN���zzR�����l��� bVzN��,�����bVzN���������y����WT��`package ƓB3@"w@��;�/����ƓB3@"w@v� ��� ����v����h��`->constant selection k��`bool: vpiConstantSelect l��`->name m��` str: vpiName p��`str: vpiFullName q��`>valid r��` vpiValid s��`->size n��` int: vpiSize t��`->value u��`vpi_get_value() Ao��`vpi_put_value() uj\Q2���z>{��uj\Q2>/M@��4�<$��/M@ K@��m�~99~�� K@-XN��5�<}7��-XN���`�����l��� I^dA ����<����I^dA ����������w����W��`reg UQ��lK��|������K{�:����/K@��}����/K@2C��~�# ��2C�� �����l��� 2C�������2C�������������WX��` named event ͠D @���&����͠D @��͠D �*D ` j`��� j��` j`���!�����l��� ` j`�������` j`������������Y��`NOTE S_ ��`~The new iterator (� vpiWaitingProcess� ) returns all waiting processes, identified by their frame, for that namedEvent. UQ��t;��)�r�����;$�v<���� nKX@���# �� nKX@�� "�����l��� nKX@������� nKX@�������� ����WZ��` � vpiWaitingProcesses O~_20���# ��O~_20�� #�����l��� O~_20�������O~_20��������� ����W]��`frame I�y<Ez@��� ��I�y<Ez@1\ڙL��ʀ�<w��1\ڙL0 CL��ʁ�<��0 CLsB J'���z�O@��sB J'��sB j6 8Y���{�O��8Y��‘8sB J'��|�O��sB J' -XN��6�<����-XN�������������W��` interface 8 N ���ʫ�<��8 N ��8 Nl@ NB�9 ���ʬ�<&��B�9 ����b�����l��� B�9 ���ʭ�<����B�9 ��������������We��` variable 1�gq@���^��1�gq@���llG����l�����d��������������"��������O+@���.�(��O+@��O+?O+k` K@��+���k` K@o`K��,�#��o`K��%����l��� o`K��-�����o`K�������������W`��`stmt k` K@��.���k` K@mT@ ��/�!��mT@ ���&����l��� mT@ ��0�����mT@ ������������aUTUT��` Wb0��` vpiThread OfR4���y����OfR4�������� ������`-> type ��`int: vpiFuncType  ��` -> value  ��`vpi_get_value() A��`vpi_put_value() SN��2�#'�#�SN���""'����l��� SN��3�����SN���������!����Wc��` function @E����4�!%'!%�@E�����$$(����l��� @E����5�����@E�����������#����Wd��`task K@��6�#&'#&�K@PK@��7�%''%��PK@PL@��8�&)��PL@!&+~nt#@ ��/�,��+~nt#@ ���**$�����l���V�lk㔑Y���:�'v��V�lk㔑Y��jŵkV�lk +~nt#@ ��0�����+~nt#@ ��������(����UTUT��` W�0��` vpiThread $&R���y U: U�$&R���LLl����l���L@A@��2�#(.X�.�L@A@��--8�����l��� L@A@��3�����L@A@���������,����W��`thread I�K@��4�,XX,��I�K@ C axns.��$u�y����C axns.[��������1����MUTUT��`NOTE: r �� }the vpiWith relation is only available for randomize methods (see section � 12.6� ) and for array locator methods (see ��@section � 4.15.1� ).  �� sFor methods (method func call, method task call), the � vpiPrefix�  relation will return the object to which @���Jthe method is being applied. For example, for the class method invocation ��packet.send(); P��@;the prefix for the "send" method is the class var "packet" &�'k���[�8:��&�'k��&�'k&�'|C axns.��$w�yY���C axns.��//~����l���Bɟ;1hqˏ���yzZ��Bɟ;1hqˏ_0WAm@|hqˏ��m�y}4gO��0WAm@|hqˏ E M=c2e��n�(y3Qh�Q�E M=c2ewE M@named event arrayA@��S�#78�7�A@��66*����l��� A@��T�����A@���������5����Wh��`frame K@��U�5885��K@K@��V�70��K@57 K@��n�~<�� K@~~'K٢ @ ��^�0~��'K٢ @ ���;;+����l��� 'K٢ @ ��_�����'K٢ @ ��������:����nUTUT��` Wo0��` vpiParent &_d����q�9l��&_d���&_&_d� fGRzN��y�����fGRzN���������l����Wp��` reg array jSgE����z�l@Bl@�jSgE�����??-����l��� jSgE����{�����jSgE�����������>����Wq��`reg jFcK@��|�>AB>A�jFcK@iEwK@��}�@BB@��iEwK@fGRcPL@��~�ACW�C�fGRcPL@lAV�lk[����BDWBD�V�lk[��ikV�lkVljQY����CFWC��VljQY��kjVlj=�[U?����5V��=�[U?��=�[UW@l[UKٶ @ ���DH��Kٶ @ ���GG.����l��� Kٶ @ �������Kٶ @ ��������F����rUTUT��` Ws0��` vpiOrigin ~TN���FJN�J�~TN���II/����l��� ~TN�������~TN���������H����Wt��` func call AE�����HLNHL�AE�����KK0����l��� AE���������AE�����������J����Wu��` task call K@���JMNJM�K@QK@���LNNL��QK@~PL@���MO��~PL@HMLE @����NP��LE @��LE *E KCY_����Ou��KCY_��KCY)YB"hqˏ��o�y4Rh4��B"hqˏB�nhqˏ��p�yQ_z}��B�nhqˏ��d��������������UU!�������� UH��ˆ�����S����UH��ˆ��G ���� ��U����w��"hClocking Block 1 UTE5x��` QoG5v��` UH��ˆ����� S����UH��ˆ���pTT ����l���V�m\@W�g���EW��V�m\@W�g�V�m\@WV�m@GV�lc`@���VY��V�lc`@BDI�K@��5�.u��I�K@,.fGRN���W[��fGRN���ZZ2����l��� fGRN�������fGRN���������Y����Wx��` named event jSE�����Y]��jSE�����\\3����l��� jSE���������jSE�����������[����Wy��` variables jFK@���[^��jFK@iEK@���]`��iEK@Bɟ;1hqˏ��q�yR2��Bɟ;1hqˏV�lk[����^a��V�lk[��ikV�lkVlQY����`e��VlQY��kVlWl\����qr��Wl\��fQWl7? ����V'k��7? ��7?2B? 89C@���]����89C@���������j����Wp��`expr jSE����ag��jSE����ff5����l��� jSE��������jSE���������e����{�� named event P���@array jFK����el��jFK�C[��f�[p��C[���tt4�����l���RE����!np��RE���mm7����l�����d��������������v��������0Sǖ-����Vcef�e�0Sǖ-��0SGSVlëQY����gn��VlëQY��këVlë RE��������RE���������i������` -> validity ��`bool: vpiValid ��` -> active ��`bool: vpiActive C��` HKK A@���li��HKK A@���oo6����l��� HKK A@�������HKK A@��������n����|UTUT��` W}0��` vpiAutomatic V@lj\����iq��V@lj\��djV@ljW�o+\����pb��W�o+\��e+W�o+V�lk\����bs��V�lk\��dkV�lkWlë\����rY��Wlë\��fQëWlë C[��g�����C[��������h����WMUTUT��`vpiDefaultClocking ??A@��6�#Xz{�z�??A@��yy9�����l���U$����� j�x��U$�����ww5����l��� U$�����j����U$����������v����-/�`Accellera�  S.�` Uw��R��� jv��Uw��R���6����l��� ??A@��7�����??A@���������u����W��`thread ?K@��8�u{{u��?K@?K@��9�z|��?K@uz_ӕ�tY��:�{~��_ӕ�tY�_ӕ_I�; k^lSe��|�)yOz�R�k^lSewGk^GEexpr@ ��<�|���@ ���:�����l��� @ ��=�����@ ��������~����UTUT��` W 0��` vpiParent A@��>�#~��A@��;�����l��� A@��?�����A@��������������W ��`thread @K@��@�����@K@@K@��A���@K@�W`@�d��B� ��W`@�d�W`@ Uw��R����j����Uw��R��������x����W/��l1#.� � Running H/F 4 UH��ˆ����� jx���UH��ˆ�����7����l��� UH��ˆ�����j����UH��ˆ��������������W0 UTUT��d U�w��R��� ����U�w��R������������W}��l'Running H/F 4.# UHˆ����v�Z����UHˆ����������a����WJ UTUT��d UH�ˆ����w�Za���UH�ˆ��_aUH�ˆ�����bP���UH�ˆ��dPZKA@��g�# ��ZKA@��=�����l���A@ ��D� ��A@ ���<�����l��� A@ ��E�����A@ �������� ���� UTUT��` W 0��` vpiFrame B�ehqˏ��s�y_<Z;��B�ehqˏ g39e��}�)y}2�_�g39ew3!g3!EscopeOK�@������OK�@ ZKA@��h�����ZKA@��������� ����W ��`frame VH@K@��i�  ��VH@K@VH@K@��j���VH@K@ (B_@ �����(B_@ ���?�����l���$Q_{x���A���$Q_{x��4SLQ_$Q_+;Q_,���B���+;Q_,��PQ_+;Q_$Q_@ ����C���$Q_@ � (B_@ �������(B_@ ������������UTUT��` W0��` vpiThread  �g@!����� �g@!���@�����l��� �g@!������� �g@!N������������i��` NOTE� S k ��`6The following callbacks shall be supported on threads l��`G � cbStartOfThread� : triggers whenever any thread is created ��`f � cbEndOfThread� : triggers when a particular thread gets deleted after storage is deleted. QG��`U � cbEnterThread� : triggers whenever a particular thread resumes execution RJ@��ˆ���������RJ@��ˆ��CT� ����HHH������W#��"hClass Object Definition> RJ@��ˆ����� ����RJ@��ˆ���U#  ����l���/?ŽM@��+�<,$��/?ŽM@_n@ ���!��_n@ �� A�����l��� _n@ �������_n@ ��������������` -> validity ��`bool: vpiValid ��` -> active ��`bool: vpiActive C��` ��d������N��������###�������� UH��ˆ����O�!����UH��ˆ��q�v� ����OOO��#����W��"h4Constraint, constraint ordering, distribution4, UH��ˆ����Q� !����UH��ˆ���s"" ����l���-`�LN��,�<}��-`�LN���%%a�����l��� -`�LN��-�<����-`�LN���������$����W^��`modport 0? -L��ʮ�<~��0? -LSֆyN���!R)��SֆyN���((e�����l��� SֆyN���!����SֆyN��������'������ concurrent P���@ assertions WɄQK���!'+��WɄQK 8N��� ����8N�������������W#��`delay control h p|���J�!),��h p|��h p`p_SPU�gI��L�!+m��_SPU�gI���--f�����l��� _SPU�gI��M�!����_SPU�gI@��������,������`NOTE UTUT��`  ��`G1: Unnamed scopes shall have valid names, though tool dependent.�  &�� t2: The vpiImport iterator shall return all objects imported into the current scope via import statements. Note that ���uonly objects actually referenced through the import shall be returned, rather than items potentially made visible as PUT��@Ba result of the import. Refer to section 18.2.2 for more details. uQN` ��W� /Y�/�uQN` N��Y� .1Y.1�N���00g�����l��� N��Z� ����N���������/����W!��`event control ӿ K@��[� /2Y/2�ӿ K@`K@��\� 13Y13�`K@>n3N��n� 25Y25�>n3N���44h�����l��� >n3N��o� ����>n3N���������3����W"��`delay control 0`K@��p� 36Y36�0`K@21cK@��q� 5YY5��21cK@:oK@��� 898�:oK@:K@��� 7997��:K@8O` ��� 83��8O` 8%ΎO` ��Ͱ�'��%ΎO` ^' ` d7e��~�)yZ��` d7ew@>` @>E primitiveA%Hj)֏��v�y=dM��A%Hj)֏B]J-hq̏��w�y<TeW��B]J-hq̏@]MAs��4�yUM:U��@]MAs���AA����l��� <1eލe���(L*@ �@�<1eލeH9#o<1#o:member typespecgakN���L?B ?��gakN @]MAs��5�y����@]MAs��������>����v��` -> value Sw��`vpi_get_value() Imʍe���(L@CD�C�Imʍe$xŚIxŚ@range,}lS?���LBDDB��,}lS?,|lS?���LCH��,|lS?BC҂[k�Y��� �,yPQ��҂[k�Y��p,u[k�҂[k� G@_e�� �(yIGK�G�G@_e1G@taskpBCK�� �yFHKF��pBCK \GCNe���(LDIJ�I�\GCNe"I\"I: enum const IZS?���LHJJH�� IZS? IXS?���LIN�� IXS?HIpBCN��!N�yQL��pBCNFG $&R���y����$&R��������+������`-> type f��`int: vpiFuncType g��` -> value Sj��`vpi_get_value() _^VISte���(y>Wd�<�_^VIStewTf_^VTf@ net array K~܍e���)LJOP�O�K~܍eZ&&EinstancebɕMS?���LNPPN��bɕMS?bȕMS?���LOQ��bȕMS?NO Z de���)LPRS�R�Z deD ߮Z߮Etypespec%S?���LQSSQ��%S?%S?���LRl��%S?QRBbh$H��x�7y=z��Bbh$HMA��*�y+>:+>�MA���YYm����l���ek[2R^R���N�yRX��ek[2R^R��Aý[2ek[2 _ ^J<Re���(yM}e�=�_ ^J<Rewi$_ i$@ reg array }OC]��P�(yV)��}OC]}XΜ}XΜ�3 vpiArgument MA��+�y����MA��������U����m��`-> is built in S��`bool: vpiBuiltIn BehqΏ���y2d��BehqΏ;܅MDZ����H�\]�\�܅MDZ��2D܅MD-D,����H[]][��-D,��YD-D܅MD� �����H\^��܅MD� �[\L����H]_��L�K`�uȍ���H^b��K`�uȍ�K`(K}w�Z��$!�Hie��K}w�Z�K}w]K}wBF���$�HId��BF����N����l���BA ���H_s��BA ���ccO����l��� BA ���H����BA ���������b����W@��` class defn A%Hj)֏���yZe��A%Hj)֏M<B]J+hqΏ���ydg��B]J+hqΏW= C:/i=]��$�(���C:/i=]C:LC:L�3vpiIndex0W@m@yhq̏���yeh��0W@m@yhq̏O3Bhqˏ���ygj��Bhqˏ4Q)'\*��� �'y79��)'\*��)'BT'?[����'yh��?[��?[607[_:?[�� m�'y@A��_:?[ k191de���)LSmn�m�k191dejk1Etypespecr:S?���Llnnl��r:S?r:S?���Lmo��r:S?lm vde���)Lnpu�p�vdeQQEtypespecxS?���Louuo��xS?,/gN���HQ��,/gN���rrS����l��� ,/gN���H����,/gN���������q����WD��` task func 2/zF����Hbv��2/zF����ttT����l��� 2/zF����H����2/zF����������s����WE��` variable xS?���Lp��xS?op/@K@���Hsw��/@K@./E�����Hvy��./E�����xxU����l��� ./E�����H����./E�����������w����WF��` constraint .@K@���Hwz��.@K@Dǟ`T�����Hy~��Dǟ`T��Dǟ2jDǟhjZ���|��hjZ|i#`Z���"${{$��i#`Z��'�����l���8;aY��E�yW3��8;aY��� &����l����U���Hz����U�@  �b���H~��~�� �b�  �� Z��H�� � �~D@ ��I�H$��D@ ���%%]����l���H5L���H���H5LB9m:h �� �H��B9m:h ���V����l��� B9m:h �� �H����B9m:h �������������WG��`extends 2804M@@���  zz ��2804M@@`_�� �H ��`_Ms'��� �Lu ��Ms'��#MMm~i@S?��D�`cc`��m~i@S? 8;aY��F�y����8;aY��������}������`-> sysinfotf 0��`p_vpi_systf_data: Q1��` vpi_get_systf_info() _G�%�n#g���H ��_G�%�n#g�_G�%_#sBZ@G���H ��sBZ@G��� X����l��� sBZ@G���H����sBZ@G�������� ����WIUTUT��`vpiDerivedClasses 5de�� �)L��5deۉEtypespecyX7S?�� �L  ��yX7S?B,х7gq@���!H ��B,х7gq@��Z����l��� B,х7gq@���H����B,х7gq@T� ��� ��������K UTUT��` U��`> name V��` str: vpiName L��` > virtual MUTUO��` N��`bool: vpiVirtual O'��`-> � user defined P UTUK��` Q��`bool: vpiUserDefined RG��` -> lifetime SSE��`bool: vpiAutomatic 0MwH�g��$4�Hk��0MwH�g�0 0MwH_Fl����H��_Fl��_FljFl0X6�8��$6�H���0X6�8�0yo0X6gcű�g%��g�H��gcű�g%���[����l��� gcű�g%��h�H����gcű�g%� ��� ��������T��`NOTE WUTUT��` X!�� }ClassDefn�  handle is a new concept. It does not correspond to any � vpiUserDefined�  (class object) in the design.  ��@<Rather it represents the actual type definition of a class. G�� Should not call�  vpi_get_value� /� vpi_put_value � on the non-static variables obtained from the class definition ��@handle. #N��`TIterator to constraints returns only normal constraints and not inline constraints. iUT�� qTo get constraints inherited from base classes, you will need to traverse the extend relation to obtain the base j��@class.  {��`UThe vpiDerivedClasses iterator returns all the classes derived from the given class. �� wThe relation to � vpiExtend�  exists whenever a one class is derived from another class (ref Section 11.12). The ���irelation from extend to classDefn provides the base class. The iterators from extend to param assign and P`��@oarguments provide the parameters and arguments used in constructor chaining (ref Section 11.16 and 11.23)�  yX7S?���LXI*��yX7S?  i#`Z�������i#`Z� ��� ����|����J��` -> member Y��` vpiMember \��`->value ^��`vpi_get_value() `��`vpi_put_value() a��`-> packed array b��`bool: vpiPacArray d��` -> scalar f��`bool: vpiScalar ?��`-> visibility S��`int: vpiVisibility W��` -> vector C4��`bool: vpiVector sVb\^����+��sVb\^��sVb\A\/���$�!`��/��// BF���$�H����BF����������a����W?��` param assign kk* 3Se�� �)yj'(�'�kk* 3Sew kk*EexprRDPUj���E��RDPUj���;�����l��� RDPUj�������RDPUj��������������`-> array type S?��`int: vpiArrayType D_W���$�H!��D_W��D_/%B_S���%�Hq ��S��S,A���&�H�����&;~W���'�H"��~W��~/@~~g���(�H!$��~g��~g(;~g}PUj�� �Lt_��}PUj���&&>����l���U _���*�H"��U _��U _)e=_ D@ ��J�H����D@ ������������W[UTUT��` vpiMethods }PUj�� �L����}PUj��������#����k��`-> array type Sl��`int: vpiArrayType B' hqˏ�� �y((��B' hqˏB$ hqΏ�� �y'*��B$ hqΏ'8|bS?��j�yX+=}��8|bS? k5ySe�� �)y(,3�,�k5ySevk5Eexpr8~NVS?��l�y)0?���8~NVS?B+hqˏ�� �y*33*��B+hqˏEM@��.�)\.��EM@Б0N��/�)-��Б0N���//o����l��� Б0N��0�)����Б0N���������.����W7��`module y�kO��n�y+1~��y�kONSB;T!��o�y02K��NSB;T! S?��p�y1=BR�� S?B+hqΏ�� �y,4��B+hqΏ*, \ҳ΍e�� �)y356�5�\ҳ΍ev \t\ \tE constraintBqhqˏ�� �y4664��BqhqˏBqhq͏�� �y57��Bqhq͏45BOh&\�� �7y6i��BOh&\ T iEUze�� .�(y<>@�>�T iEUzewDcT Dc@ named eventN>]K��� �'yi:��N>]K��N>C%>pp%G ~b�� !�y9;��pp%G ~bԉ{> #eE#]�� &�(y:<��#eE#]##�3 vpiPrefix 44]�� (�(y;8��44]44�3vpiWith8ybS?��{�y2?:,?�8ybS?})CHkshqˏ�� /�y8@@8��CHkshqˏ8}~NVS?��}�y=B:=B�8}~NVS?�+CHkqhqˏ�� 0�y>k��CHkqhqˏ8>e L.��� n�'ykDC�D�e L.��e L.e m S?���y?K:?K� S?R2eK(9 sی�� q�yDE��eK(9 sیADeK(9�1^�� p�'yACCA��eK(9�1^�eK(9eaYuQ��� r�+yCG��uQ��0uu*xV��� y�'yGI��*xV��*xxqΌ�� t�'yEF��qΌ /C�<e�� �(yGJL�J�/C�<eD/4/4@function ܐkѣ]�� {�(yFF��ܐkѣ]ܐtXܐtX�3 vpiSysTfCallnEDCK�� �yHMLH��nEDCKNSB8T!���yBO:B�NSB8T!1nEDCN��!O�yKR��nEDCNHJ z?xe�� �)yJNP�N�z?xez z?EscopeA'*hqˏ�� �yMPPM��A'*hqˏ Jn>ʳ&e���(yK}g�3�Jn>ʳ&ed&ylJyl@ user systfA%*hq͏�� �yNE��A%*hq͏MNz"��� �+yEK��z"��z"z[k�ZI2j>���!R�,yLS��ZI2j>��zpjZI2jwB-���!S�,yRT��wB-��ywɷw���!T�'ySU����wɷYZ�<��!U�'yTV��YZ�<�YؖYZzJjKwl���!V�,yUW��zJjKwl��gEjKwzJjKwYnRl-���!W�,yVX��YnRl-��;lYnRlYnRl�Aw��!X�'yWY��YnRl�Aw�YnRlYnRNjw>�R��!Y�'yX1��Njw>�R�Njw>N��d������!��������__.��������9C*���!c�)\]�\�9C*��9C*PT3*,$U���!d�)[]][��,$U��,$UK>U,$*/�+��!e�)\���,$*/�+[\ UH��ˆ����!�Z����UH��ˆ��ˆ��� ����yyy��_����W��"h1tf call (supercedes IEEE 1364-2001 26.6.19)C UH��ˆ����!� Z����UH��ˆ���wb^^  ����l�����d������!��������bb/�������� UH��ˆ����!�`����UH��ˆ��&w� �����b����{UTUT��` 1��`;Module path, path term (supercedes IEEE 1364-2001 26.6.15) 2 UTUQ��"hG Q="p��` UH��ˆ����!� `����UH��ˆ���_�aa ����l���m~i=S?��E�h��m~i=S?` 'Пe��M�)k &� �'Пeѿr'ѿrEscope#!SJ����Vkffk��#!SJ��#!SBlS#!SǤj4�+���Veg��#!SǤj4�+ke @VS�����Vfh�� @VS��� @VS7@\S @Y{'ˠ����Vgi�� @Y{'ˠ�� @Y{'K {'(@`����Vhl��(@`��Gf(@`UI������k��� V�J2����U ��ǀ ���j���� H �J?����(@_?����Vim��(@_?��Ge?(@_?(`@T�@���Vln��(`@T�@�(`@T(`Z Y@W����Vmo�� Y@W��)�`@W Y@W @@ @���#Vnq�� @@ @��pp ����l��� @@ @���V���� @@ @ ��������o����WG��`vpi� LeftRange @׽�@���#Vos��@׽�@��rr ����l��� @׽�@���V����@׽�@ ��������q����WH��`vpi� RightRange k~@���#Vqu��k~@��tt ����l��� k~@���V����k~@ ��������s����WI��`vpi� ParamAssign H�LJN@��� Vsv}�v�H�LJN@M`bOC@���#Vu}}u��M`bOC@��ww ����l��� M`bOC@���V����M`bOC@���������v����WJ��` instance  ͷV����!my�� ͷV�� WEaE<͊����!x\��E<͊��E<P.W2501M@���A��2501M@ 0촪` ���#x���0촪` ��||�����l��� 0촪` �������0촪` ��������{����W ��` � vpiParent H�LIN@���Vv~��H�LIN@uvKX*Y@����V}��KX*Y@�x\ELNCY���#V~��x\ELNCY���� ����l��� x\ELNCY���V����x\ELNCY�������������WK��`interface array �g ���V���g �������l��� �g ���V�����g ������������L��`NOTE OUTUT��` WP ��`KParam assignments can only be obtained from non-primitive instance arrays.  Ya@`����V�� Ya@`�� Ya@`\a@` Y@`����V �� Y@`�� Y@`\@`4=AyN@��� ]s��4=AyN@9|C@���#]��9|C@�������l��� 9|C@���]����9|C@�������������W��`expr 4=@yN@���]Z��4=@yN@3DN@���]j���3DN@Zj[``����V ��[``��[``[@n#@_{?����V ���#@_{?��Be{?#@_{?S?��N�d&&d��S?K+Oŗ@���)/v��K+Oŗ@ Y���(/  ��YY+Y+�;variable��d������?��������'�������� UH��ˆ����@�����UH��ˆ��܀�����������Q��"hStructure/Union@ W\UTV��` UH��ˆ����B� ����UH��ˆ���Q  ����l�����d������F��������(�������� UH��ˆ����G�����UH��ˆ��vJ� ����������W[6��"hENamed�  E� vent� :s (supercedes IEEE 1364-2001 26.6.11) UH��ˆ����I� ����UH��ˆ��� ����l�����d������M��������)�������� UH��ˆ����N�����UH��ˆ��„� ����|||������W��"hDTask, Function Declaration (supercedes IEEE 1364-2001 26.6.18). UH��ˆ����P� ����UH��ˆ���1  ����l���K(OƗ@���(/��K(OƗ@ 8\Dĵ����/���8\Dĵ��D\8\\w~��"2�`�����ᮏ(�aG����pS[g~{����y;:K~�pS[g~{��[gpS[gĈ0P���!)��Ĉ0P� 0���!�� 0�埼OP���!��埼OP��������l��� 埼OP���!����埼OP������������W]UTUT��`clocking block Q�@���!���Q�@R`Q�@��s� "��R`Q�@m ɐP��t� !#��m ɐP�dő0��u� "$��dő0�V(/OP��v� #���V(/OP���%%����l��� V(/OP��w� ����V(/OP��������$����WeUTUT��`clocking block S?��O� @��S?d \�d��"�WX��\�d�+\Qi���"5�-�)��Qi��Q1Q(XyQq���"6�-(*��(XyQq��(XyQ9Q JI߿!��"7�.)+C�+�JI߿!j̒UȜJUȜ, path term:^G3c^QT��"8�/*,C*��:^G3c^QT U ��"9�/+-�� U ] ]�< vpiModPathIn `5 ��":�/,.�� `5 hX hX�< vpiModPathOutq���";�0-/��q��k 1.녭{!��"<�/.0J�0�1.녭{!!딕B1.B1module�^QT��"=�//1J/���^QTy[�i��">�002��y[�i�y[yĿy 8�q��"?�013��y 8�q�y 8yG}>y�{��"@�024��y�{�y0y ]GXUF7 !��"A�135B�5�]GXUF7 !jޝ]GX5expr:Ϫ^QT��"B�146B4��:Ϫ^QT ZO7 !��"C�257��ZO7 !Z5exprř{^QT��"D�168��ř{^QTkNX$S���"E�379��kNX$S��{X$kNX$ j)I: ��"F�/8:�� j)I: rL rL�<vpiModDataPathIn YI$!��"G�/9;��YI$!!UYU,mod pathG+t^QT��"H�/:<��G+t^QTnQ���"I�0;=��nQ�� YQnQ ۛ7 !��"J�/<>��ۛ7 !w5exprd``^QT��"K�1=?��d``^QT{YߠIl���"L�0>@��{YߠIl��{Yߠsߠ Y0u2 ��"M�/?A��Y0u2 YeYe�<vpiDelay{YM�1��"N�3@B��{YM�1�{YM{YJM:Ϫ^QU��"O�1AC��:Ϫ^QU45:^G3`^QW��"P�/BD��:^G3`^QW*+hYM�#��"Q�0CE��hYM�#�hYGMhYMkYJM���"R�3DF��kYJM��kYJM{YJM oz��"S�4EH�� oz���GGC����l��� oz��"T����� ozw� ��� ����F����m9��`mod path properties: H��` -> delay ;<��`vpi_get_delays() <��`vpi_put_delays() >9��` -> path type @<C��`int: vpiPathType A9Q��` -> polarity %<\��`int: vpiPolarity .f��`int: vpiDataPolarity 39t��` -> hasIfNone W6<��`bool: vpiModPathHasIfNone @H`dPhQ:��"U�5FJ��@H`dPhQ:���IID����l��� @H`dPhQ:��"V�����@H`dPhQ:��������H����99��` -> direction :<��`int: vpiDirection <9��`-> edge ><��` int: vpiEdge QB��` ^QV��"W�5HK��^QV/0{%-���"X�6JL��{%-��&{%{%XN�Jk��"Y�6KM��{%XN�Jk�{%XN{%M Ί~r ��"Z�.LN��Ί~r Ί)Ί)�< vpiCondition � ��"q�/MO��� ȍ�<� [,!��"�/NPW�P�[,!0J[1 interface+^QT��"�/OWWO��+^QTJS2\@��"y�jR��JS2\@QS9ZN���"z�jQT��QS9ZN����SSh�����l��� QS9ZN���"{�j����QS9ZN����������R����Wh��` mod path 580mӐ���"�jRUV�U�580mӐ��580mJ m%4Cm+���"�jTVVT��%4Cm+��%4CmC_ȹm%4Cm}���"�jU���%4Cm}�TU+^QU��"�5P'��+^QUOPg� >��"�'Z��g� >�vge;<gHd��"�<]��e;<gHd :}fxU$ ��"�.X[��:}fxU$ ::�< vpiInstance rt{!��"�/Z\]�\�rt{!/{1r{11modulem^QT��"�/[]][��m^QTm^QV��"�5\Y��m^QV[\ v$^d2 ��#H�L����v$^d2 -��������_����j<�� -> name ��@ str: vpiName k!�� -> value P*��@ vpi_get_value v$^d2 ��#J�L#���v$^d2 ��^^I����l���Yz��$ �!���Yz���cc�����l���I ��#V����I ���bbi����l��� I ��#W�����I ��������a����WlUTUT��` vpiMembers Yz��$ �!����Yz��������`����WUTUT��` vpiMemory a̯K@��$�Hag��a̯K@K}wG#�ni��$"�H`f��K}wG#�ni�K}w#K}wG#B9m$g���$#�Hej��B9m$g��B9m$gB9mF���$�Hdi��F����hhj����l��� F���$�H����F����������g����Wn��`expr EuK@��$�Hg`��EuK@B9mn�VB��$$�Hfl��B9mn�VB�B9mnB9mQȖ7H���$2�Ho��Ȗ7H��Ȗ7l7 勫mҍ��$&�Hjn�� 勫mҍ���mml����l��� 勫mҍ��$'�H���� 勫mҍ��������l����WoUTUT��` vpiArgument nL���$-�Hlo��nL�yA ��$.�Hnk��yA ���pps����l��� yA ��$/�H����yA ���������o����Wp��` class defn [V���$�O r��[V��[^/OK@��$�Oq��/OK@xzadbE����$�Ov��adbE�����uu�����l��� adbE����$�O����adbE�����������t����Wu��`range _ K@��$�Otx��_ K@2,oE����$�Ovzr�z�2,oE�����yy �����l��� 2,oE����$�O����2,oE�����������x����Wy��`expr /PK@��$�Ox�rx��/PK@���$�Oz����0mq�%r��$�O� ��q�%r�qqCJ\m@��$�O ��CJ\m@��� �����l��� CJ\m@��$�O����CJ\m@�������� ����W~UTUT��` vpiWeight \˸NEu ��$�!O q��\˸NEu �� �����l��� \˸NEu ��$�O����\˸NEu �������� ���� UTUT��` ���`-> vpiDistType ��` vpiEqualDist Q��` vpiDivDist |I!@Gem\@���j���I!@Gem\@S!HJ%pE�����j ��S!HJ%pE�����X�����l��� S!HJ%pE�����j����S!HJ%pE���������������Wd��` cont assign GSDM@���j��GSDM@gGH-N���j��gGH-N���Z�����l��� gGH-N���j����gGH-N�������������Wf��` interface 4Nu6����j ��4Nu6��4NuI@Nu$~Nu°����j ��$~Nu°��$~NuB.Nu$~NuW|����jX��$~NuW|�3TO()N���!rV��TO()N���UU*�����l��� TO()N���!����TO()N��������T������ named event P���@array ZO*$$F����!TX��ZO*$$F����WW+�����l��� ZO*$$F����!����ZO*$$F����������V����W��` named event X|HK@���!VY��X|HK@W|FK���!X]��W|FK\VegA����! � �\VegA����\\,�����l��� \VegA����!����\VegA���������[����W UTUT��` variables  $ ���!Y_�� $ ���^^-�����l��� $ ���!���� $ ��������]����WUTUT��`vpiInternalScope T)}d.K����!]a��T)}d.K����``.�����l��� T)}d.K����!����T)}d.K����������_����W��`reg T{<KK@���!_b��T{<KK@S'1E�����!at��S'1E�����ss3�����l���x*O'A����!Yj��x*O'A����ii0�����l��� x*O'A����!����x*O'A���������h����W UTUT��` task func HK0M@@��� !hk��HK0M@@ÈhP���!jlC�m�ÈhP�પ0���!km��પ0�j߼P���!loCkq�j߼P���nn1�����l��� j߼P���!����j߼P��������m����W UTUT��` named begin cԻ���!mq��cԻ���pp2�����l��� cԻ���!����cԻ��������o����W UTUT��` named fork GgoO@���!orCm��GgoO@GO@���!qT��GO@ S'1E�����!����S'1E�����������b����W ��` reg array S<UK@���!bu��S<UK@@^ ����!tv��@^ ��@^Uhe[T����!uw��e[T��e[SEf[Am[h����!vz��Am[h��Am[L[oi_ٶ U����!��oi_ٶ U��oi_UBi_@^Cڸ����!w{��@^Cڸ��@^CXeCEh|CڋI����!z|��Eh|CڋI��Eh|CQ`CFӸ~����!{��FӸ~��FWc A?�����!|���A?���A?MBT*d:K����!��T*d:K����4�����l��� T*d:K����!����T*d:K���������������W��` array var T<WK@���!���T<WK@S(=E�����!��S(=E�����5�����l��� S(=E�����!����S(=E���������������W��` parameter S<aK@���!��S<aK@@^ ����!��@^ ��@^Ui([����!��([��([SEg[B([����! ��B([��B([L?[ BE@3V����![��BE@3V��BE@NxV@aM@@��� ![ [��V@aM@@V=aM@���! ��V=aM@[ XVA����! ��XVA����6�����l��� XVA����!����XVA��������� ����W UTUT��`scope R@P0M@@��� !  ��R@P0M@@R=P-M@���!��R=P-M@ @^\����!��@^\��@^\Sd\C؜,����!��C؜,��C؜L'؜@^\?���!y��@^\?ECi_ى����!y��ECi_ى��ECi_O=i_@^+�-��1�!��@^+�-�@^+@^YR ) ����!*�� ) ��uŮ ) )  @B@\f@ ���!����@B@\f@ ��������*������`-> name ��` str: vpiName Q��`str: vpiFullName iMQ|N���� N��iMQ|N��Q|NiMQ|NgfQ���� ��gfQ��TfQgfQh K���� (��h K��Kh KdIL��� ��dILUQo���� )+��UQo��UQo@]QoM ��� !��M ��� 7����l��� M ��� ����M �������������W��`io decl KN��� &��KN���""8����l��� KN��� ����KN���������!����W��` udp defn I\K@��� !/��I\K@gfQ���� 4��gfQ��TfQgfQ]���Y� C��]��Qb8]@B@\f@ ���#!(��@B@\f@ ��@�����l���NJ>N��� D��NJ>N���33:����l���SiN@��� >-1�-�SiN@Yh�@���# ,11,��Yh�@��..;����l��� Yh�@��� ����Yh�@���������-����W��`expr QԢ���� &0��QԢ��QԢ,QԢ$,� ��� /;��$,� �$f$,ShN@��� -2��ShN@,-RO"}N@��� 1:@�:�RO"}N@ NJ>N��� ����NJ>N���������+����W��`reg :R ���� (6��:R ��:R LR B`3x�&��-� ����B`3x�&��������6������` -> direction ��`int: vpiDirection ��`-> name  ��` str: vpiName !��` -> scalar "��`bool: vpiScalar #��`-> sign $��`bool: vpiSigned %��`-> size &��` int: vpiSize '��` -> vector (��`bool: vpiVector E��` -> array CD��`bool: vpiArray B`3x�&��/�# 46��B`3x�&��55~����l��� HK]�� ��U� ����HK]�� ��������8����)��`-> name i��` str: vpiName Q$��`str: vpiFullName HK]�� ��W�# 4��HK]�� ��77A�����l���XO"|�@���# 2@@2��XO"|�@��??<����l���bA���� 0=>�=�bA����<<=����l��� bA���� ����bA���������;����W UTUT��` task func __TDM@@��� ;>>;��__TDM@@__TAM@��� =,��__TAM@;= XO"|�@��� ����XO"|�@���������:����W��`expr RO"|N@��� :A��RO"|N@2:]"ca���� @B��]"ca��P:"c]"c]bga���� AC��]bga��P9bg]bg4k���� B)��4k��4k4OR`9H���� +FH�F�R`9H����EE>����l��� R`9H���� ����R`9H����������D����W��`net S7A]O㟎@��� DGHD��S7A]O㟎@TZH[Nf@��� FH��TZH[Nf@R`A\P��� GI��R`A\PDFZb,A���� HKL�K�Zb,A����JJ?����l��� Zb,A���� ����Zb,A���������I����W UTUT��` variable Tq^yM@@��� ILLI��Tq^yM@@Tq^y~M@��� KN��Tq^y~M@IKT`Nzv��ڟ� L��T`NzvgCE�����CiUV�U�gCE�����TTC����l��� gCE�����C����gCE�����������S����W2��`expr 3 K@���CSVVS��3 K@gL���CUW?iW�gLSUxROle@����CVQ?VQ�xROle@��xROllOlլA@���sko�k�լA@��iiE����l���a����jg��a��aLE���o��LE����jb����ޖ�%����ac���%��J�%"NGA����bef�e�"NGA����ddF�����l��� "NGA��������"NGA���������c����W7 UTUT��`scope 8Cp9M@@��� cffc��8Cp9M@@5Cp6M@���ej��5Cp6M@ceaK����]>��aK��ދKaK լA@�������լA@���������Y����W4��`scope R@����f]��R@��R@ޕ@ϨK@���YooY��ϨK@ 1�gq@�������1�gq@i� ��� ��������8��`NOTES 9UTUT��` : ��`6The following callbacks shall be supported on frames: @��`@cbStartOfFrame� : triggers whenever any frame gets executed. A��`^cbEndOfFrame� : triggers when a particular thread is deleted after all storage is deleted. ;UTAUP��` <R�� vComment to editors: Please note that we have changed the � vpiParent�  handle from the LRM. � vpiOrigin�  \���hnow gives the originating scope or task/function call. Note also that this diagram is incompatible with PMUL��@bthe one in IEEE 1364, but the IEEE is currently also making incompatible changes to that diagram. ΨK@���k^��ΨK@YkUQ��Ā��p������a�@���� CgN��x����CgN���K����l��� CgN��y�����CgN�������������Wv��` variables 6?K@��z���6?K@ojW{���{���ojW{��W{ojW{ĨgՐI���|� � �ĨgՐI��Ĩg {glgԦ���}� ��lgԦ��lgTmglgԭ���~� ��lgԭ� Hy@ ���! ��Hy@ �� L����l��� Hy@ �������Hy@ �������� ����w UTUT��` ��` -> packed SB��`bool: vpiPacked ` �g� ��� ^��` �g� ���M����l��� ` �g� �������` �g� �������� ����?��`NOTES CUTUT��` D-��`v� pi_get_value/vpi_put_value � cannot be used to access values of entire unpacked structures and unpacked unions.�  WEUTUR��` I%gr�J���j `��%gr�J�%gN%grN%\����jXq��N%\��N%%X"N%JZ.\@���j`u��JZ.\@Tb1E�����jq���Tb1E�����vvw�����l��� Tb1E�����j����Tb1E�����������u����W��` mod port  6̔Ӑ����ju��6̔Ӑ��6J&̞+����j����&̞+��&DD&̤}����j ��&̤}��W؅1����#jM��W؅1��� z�����l��� W؅1����j����W؅1��������� ����W ��` Interface UI��„@}��U������@}]�D�����Jf\����k�a���Jf\���Jf.X"JfRPZC\@���kHb��RPZC\@XaE O���kae��XaE O���cc"�����l��� XaE O���k����XaE Oϊ���������b����WQ��` cont assign =J@ 'j.���kbf��=J@ 'j.�=J@ PJn- JnY����keq��- JnY��- JnJyJn W؀1C���#kf��W؀1C��rr$�����l��� W؀1C���k����W؀1C��������q����WV��`Program U?��πP���bI����?Pd �cE����HSf@ ��]�)���HSf@ ���)����l��� HSf@ ��^�)����HSf@ ������������?��`-> top module Sn��`bool: vpiTopModule OT\@��`�)��OT\@w[��a�)��w[���*����l��� w[��b�)����w[������������WJUTUT��`vpiInternalScope VaV6N��c�) ��VaV6N���+����l��� VaV6N��d�)����VaV6N�������������WK��a interface n<8Y[\Ԕ���g�) � �<8Y[\Ԕ��<8Y[\Q0[\,[\Ԟ_���h�)  ��,[\Ԟ_��,[\Jx[\OPZg9\@��i�) ��OPZg9\@ViO���j�) ��ViO���� X����l��� ViO���k�)����ViO���������� ����WM��a task func ,[\ԥ~���o�) ��,[\ԥ~� ;n���p�)��;n��;nNn-0nM���q�)��-0nM��-0nH}n-0nW}���r�)��-0nW}�IN\@��v�)��N\@UH5]N��w�)��UH5]N���Z����l��� UH5]N��x�)����UH5]N�������������WO��`port Y6XE����y�)��Y6XE�����[����l��� Y6XE����z�)����Y6XE���������������WP��`scope N.`\@��{�)��N.`\@T5cO��|�) ��T5cO���\����l��� T5cO��}�)����T5cO�������������WQ��`net NhM\@��~�)!��NhM\@T UN���) #��T UN���""]����l��� T UN���)����T UN���������!����WR��` variables Uh }PN����)!%��Uh }PN����$$^����l��� Uh }PN����)����Uh }PN����������#����WS��` net array M}X\@���)#&��M}X\@T =[N����)%(��T =[N����''_����l��� T =[N����)����T =[N����������&����WT��` array var N{\@���)&)��N{\@P˽\@���)(*��P˽\@Lg\@���))+��Lg\@R7vN���)*-��R7vN���,,`����l��� R7vN���)����R7vN���������+����WU��` named event L0+y\@���)+.��L0+y\@GH7,|h@���)-0��GH7,|h@���//a����l��� GH7,|h@���)����GH7,|h@���������.����WV��`named event array Mhdq[���).1��Mhdq[R( @nN���)03��R( @nN���22b����l��� R( @nN���)����R( @nN���������1����WW��`process Thg}tN����)15��Thg}tN����44c����l��� Thg}tN����)����Thg}tN����������3����WX��`module LhQ}q\@���)36��LhQ}q\@Sh T=tN����)58��Sh T=tN����77d����l��� Sh T=tN����)����Sh T=tN����������6����WY��` cont assign O}$>\@���)69��O}$>\@My])\@���)8:��My])\@TH7zݍN���)9<��TH7zݍN���;;e����l��� TH7zݍN���)����TH7zݍN���������:����WZ��` module array H7h@���):>��H7h@���==f����l��� H7h@���)����H7h@���������<����W[��` primitive N[���)<?��N[Q =N���)>A��Q =N���@@g����l��� Q =N���)����Q =N���������?����W\��`primitive array UνN����)?C��UνN����BBh����l��� UνN����)����UνN����������A����W]��`tchk L\@���)AD��L\@S }N����)CF��S }N����EEi����l��� S }N����)����S }N����������D����W^��` mod path O'}\@���)DG��O'}\@N\@���)FH��N\@Oh[���)GI��Oh[Vh}N����)HK��Vh}N����JJj����l��� Vh}N����)����Vh}N����������I����W_��` spec param 9t=1K����)IL��9t=1K��9t=1OG=1Mh}\@���)KM��Mh}\@Th =N����)LO��Th =N����NNk����l��� Th =N����)����Th =N����������M����W`��` parameter +X"=\����)MP��+X"=\��+X"=\Jh =\O(}[���)OQ��O(}[V( =N����)PS��V( =N����RRl����l��� V( =N����)����V( =N����������Q����Wa��` def param 9bu 5K����)QT��9bu 5K��9bu 5O 5,# `����)SU��,# `��,# `J( `O/=[���)TV��O/=[V1N����)UX��V1N����WWm����l��� V1N����)����V1N����������V����Wb��`io decl 85>����)VY]�\�85>��85>O5>M\@���)XZ��M\@T N����)Y\��T N����[[n����l��� T N����)����T N����������Z����Wc��` param assign +X"5i����)Z]]X��+X"5i��+X"5iJr5i+X"5>/�+���)\^��+X"5>/�+X\9,!?K����)]_`�_�9,!?K��9,!?N!?,"u!j����)^``^��,"u!j��,"u!jI]!j,"u!?�+���)_b��,"u!?�+^_.9r}K����)`cl�c�9r}K��9r}O}+ }H����)bdlbd�+ }H��+ }HJ}H9s=!K����)celce�9s=!K��9s=!OG=!,X!=L����)dfldh�,X!=L��,X!=LJh =L92*����)egh�g�92*��92*OǾ*+ U����)fhhf��+ U��+ UJU+ */�+���)gilek�+ */�+fg9l+K����)hjk�j�9l+K��9l+O+,bsV����)ikki��,bsV��,bsVJ2[V,bs+�+���)jllh��,bs+�+ij+ }/8���)km��+ }/8bk9boX=K����)lnw�n�9boX=K��9boX=OX=+X=1����)mowmo�+X=1��+X=1J(X=19"pk K����)npwnp�9"pk K��9"pk Nǻk +k5����)oqwos�+k5��+k5Ik58����)prs�r�8��8OG+>����)qssq��+>��+>J2 >+/�+���)rtwpv�+/�+qr8K����)suv�u�8K��8N +p?����)tvvt��+p?��+p?IX?+p�+���)uwws��+p�+tu+X=/8���)vx��+X=/8mv:5 YK����)wy�y�:5 YK��:5 YOS Y+ ����)xzxz�+ ��+ J 9 M]K����)y{y{�9 M]K��9 M]OTM],M����)z|z~�,M��,MJM9dF f����){}~�}�9dF f��9dF fPTF f+F ����)|~~|��+F ��+F KF +F f/�+���)}{�+F f/�+|}9[2 gK����)~����9[2 gK��9[2 gOd2 g, 2 ����)��, 2 ��, 2 J2 , 2 g�+���)�~��, 2 g�+�9 < ����)��9 < ��9 <PQ <+ g����)��+ g��+ gKi g+ <�+���)��+ <�++ Y/8���)��+ Y/8x9GK����)��9GK��9GOQG+r����)��+r��+rJr9KK����) ��9KK��9KOZRK,jv����) ��,jv��,jvJzv9EbMT����) � �9EbMT��9EbMTORMT+M����) ��+M��+MJģM+MT/�+���) ��+MT/�+ 9YMUK����) ��9YMUK��9YMUO$MU,uM����)  ��,uM��,uMJDM,uMU�+���)��,uMU�+  Ƶ%\����)-��Ƶ%\��Ƶ%+X"% PZ.\@�� �).��PZ.\@P\@�� �)-/��P\@Wa6N�� �).1��Wa6N���00u����l��� Wa6N���)����Wa6N���������/����Wj��`program Zb1E�����)/3��Zb1E�����22v����l��� Zb1E�����)����Zb1E�����������1����Wk��`program array <\ԕ����)148�4�<\ԕ��<\R0\,\ԟ1����)3583��,\ԟ1��,\KJ\PPZ9\@���)46��PPZ9\@Va]<O����)58��Va]<O����77w����l��� Va]<O����)����Va]<O����������6����Wl��`interface array ,\Ԧ~����)69��,\Ԧ~�34;DB����)8:;�:�;DB��;DO+Y����)9;;9��+Y��+I 곽+}����):<��+}�9:<̔Ӑ����);=>�=�<̔Ӑ��<P,̞+����)<>><��,̞+��,JD,̤}����)=?��,̤}�<=PD=[���)>@��PD=[WFN����)?B��WFN����AAx����l��� WFN����)����WFN����������@����m��` alias stmt n���` o���d Qp���d 9J;��� �)@CD�C�9J;��9J;PJ;,X"Jf���!�)BDDB��,X"Jf��,X"JfKrJf,X"J;/�+��"�)CE��,X"J;/�+BCW؁���#�#)DG��W؁���FFy����l��� W؁���$�)����W؁���������E����Wq��`*Module (supercedes IEEE 1364-2001 26.6.1) PY=[��%�)EH��PY=[)([&��&�)GJ��)([&���IIz����l��� )([&��'�)����)([&���������H����Wr��` clocking block 9_=���(�)HKL�K�9_=��9_=P_=,X"_h���)�)JLLJ��,X"_h��,X"_hKr_h,X"_=/�+��*�)KT��,X"_=/�+JKcn���2�)LV��cn����UU|����l��� cn���3�)����cn���������T����t�� concurrent P���@ assertions 9.v=0���4�)TWX�W�9.v=0��9.v=0Pv=0+v=[���5�)VXXV��+v=[��+v=[Kov=[+v=0/�+��6�)W\��+v=0/�+VWQnrY`��:�)X-��QnrY`ȀM-h@R����f��ȀM-h@R���ee~�����l��� ȀM-h@R�������ȀM-h@R��������d����x��`-> access type y��`int: vpiAccessType }��` vipForkJoin Q~��` vpiExtern E[V`@���dg��E[V`@H\O���#f|��H\O��hh�����l��� H\O�������H\O���������g����W��`interface tf decl :�poO@���g}�}�:�poO@A@sBm���#||��A@sBm��~~�����l��� A@sBm�������A@sBm���������}����W��`task :�pmO@���}���:�pmO@|}9_O@�����9_O@@]���#����@]�������l��� @]�������@]�������������W��` function 9]O@�����9]O@�wQ������wQ��wQ:wQ@w|K͎������@w|K͎��@w|4 w|| M������| M��| M;L MPM?M D���� ��PM?M D��PM?4͔M?R�V@ ��� ��R�V@ �/R)}�g`��� ���)}�g`��� �����l��� )}�g`�������)}�g`�������� ������`NOTE UTUT��` !�� tvpiIterate(vpiTaskFunc)�  can return more than one task/function declaration for modport tasks/functions with an R ��@taccess type of � vpiForkJoin� , because the task or function can be imported from multiple module instances. �/�d�������j��Left�d����� ��Right�d������� Reference�d������� ���newFirstd���������HTML�d�����#��HTML�d�����  ��Headings�d����� &��HTML�d�����)��HTML�d����� 8�����d����� �����d����� O��First�d����� �� last left�d����� ,�� boilerplate�d�����/�� title page�d�����Z�� Index.left�d�����b�� Index.right�d�����%j��Cover�d������o��TOC�d����� �����d�����b�����d�����5�����d����������d�����>�����d�����}���bigd���� �:�����d���� �A���bigd���� �D�����d���� �G�����d���� �J�����d����� E�����d�����!n�����d����� "S�����d�����!#�����d�����"$!�����d�����#&b�����d���� �*5��newFirst�d�����$'N�����d�����&(�����d�����')�����d�����(+�����d���� �%�T��big�d�����),y�����d�����+-D�����d�����,.r�����d�����-/Z�����d�����.�`������y�������@��@��������������������� ���������������Q������������Mapping Table Title������. ������@��@��������������������� ���������������Q������������Body������. ��� ��f�@������������������� ���������������a� ��������� $���H���l����������������������� �����D�����h��������������������Body������. ��� ��f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@��������L�A���!!������� ���������������Q���������� �. NumberedList1���� L:<n+>.\tL,NumberedListb. �������@��@������������������� ���������������Q����������� Paragraph������. ��� ��f�@������������������� ���������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. ����f�@���������������������� ���������������a����������9 �� $�� H�� l�� ���� ���� ���� ���� ���� D���� h���� ���� Definition������. ��f�@��������L�A���!!������� ���������������Q���������� �. NumberedList1���� L:<n=1>.\tL,NumberedListb. ��f�@���������������������� ���������������a����������< $�� H�� l�� ���� ���� ���� ���� ���� D���� h���� ���� DefinitionIndent������. ��� ��f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��� ��f�@�������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@��������D����"������� ���������������Q�����������.� DashedList����D:\t�. ��� ��f�@������������������ ���������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. ��f�@��������LA���!!������� ���������������Q�����������. NumberedList1���� L:<n=1>.\tL,NumberedListb. ��� ��f�@������������������� ���������������Q���������� $���H���l����������������������� �����D�����h��������������������Body������. ��f�@��������L�A���!!������� ���������������Q���������� �. NumberedList1���� L:<n=2>.\tL,NumberedListb. ��f�@��������L�A���!!������� ���������������Q���������� �. NumberedList1���� L:<n=3>.\tL,NumberedListb. �� ��f�@�������������"����� ���������������Q���������� �.�H���l����������������������� �����D�����h��������������������Bullet����\t�. ��� �f�@���������������"������� ���������������Q�����������.� �.�0�.�@�.�P�.�`�.�p�.����.����.����.����.����.����.����.����.�����.����.� ���.�0���.�@���.�P���.�`���.�p���.����.����.����.����.����.����.� ExampleCode������. �����@��@��������������������� ���������������Y������������ A�� f�� ���� ���� ���� ���� ���� XCourier12������. �������@��@����������������� ���������������Q����������� Paragraph������. �����f�@���������������"������� ���������������Q���������� �� 6�� Q�� l�� ���� ���� ���� ���� ���� ���� )���� D���� _���� CellBody������. ������f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Body1������. �����f�@���������������"���� ���������������Q� ���������!� CellHeading������. �f�@��������Z��� ������� ���������������Q���������� �� NumberedListb���� Z:(<a+>)\t�. �����f�@��������������"��������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@��������L���������� ���������������Q�����������. NumberedList2���� L:<n+>.\t�. ��� ��f�@��������������"���������������������a� ��������� $���H���l����������������������� �����D�����h��������������������Callout������. ������@��@��������TA���������� ���������������Q� ���������� TableTitle.1����T:Table<$chapnum><n=1>: Body. � ����f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Body1ind������. ��� ��f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��� f�@��������HU��� ������� ���������������Q� ��������� $���H���l����������������������� �����D�����h����������H3,1.1.1���H3H:<2>.<n>.<n+> Body. ���f�@����������T���������� ���������������a� ��������� $���H���l����������������������� �����D�����h���������� H5,1.1.1.1.1���H5�Body. �����f�@��������AE���������� ���������������a� ����������x.Annex.TableTitle.1����A:Table <A><n=1>T,Text. ��f�@��������L����������� ���������������Q�����������. NumberedList2���� L:<n+>.\t�. �����f�@��������AE���������� ���������������a� ����������x.Annex.TableTitle����A:Table <A><n+1>T,Text. �������@��@������������������� ���������������Q������������ Paragraph������. ��� �@��@��������SA���������� ���������������a�����������SyntaxBoxCaption.1����S:Syntax<$chapnum><n=1>Body. ��� f�@��������H�U���������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������H2���H2 H:<n>.<n+> Body. (���f�@������������"������� ���������������Q����������.�.�=�.�BNF_SyntaxItem������. ������f�@�������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Body1������. �����f�@��������������"������� ���������������Q�������������� PageHeader.right������. ������@��@��������������������� ���������������Q�������������Mapping Table Title������. ������@��@��������������������� ���������������Q�������������Mapping Table Cell������. ��� �@��@��������SA���������� ���������������a�����������SyntaxBoxCaption����S:Syntax<$chapnum><n+>Body. ������@��@��������TA���������� ���������������Q� ���������� TableTitle����T:Table<$chapnum><n+>: Body. ���f�@���������T���������� ���������������a� ��������� $���H���l����������������������� �����D�����h���������� H5,1.1.1.1.1���H5�Body. � ����f�@�������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Body1ind������. ��� �f�@��������AU��� ������� ���������������a� ����������x.Annex.H1,A.1���� A:<A>.<n+> T,Text. ������f�@��������������"������� ���������������Q�������������� PageHeader.left������. ������@��@��������T�A���������� ���������������Q� ���������� TableTitle����T:Table<$chapnum><n+>: Body. ������f�@���������������"������� ���������������Q�������������� ���� PageHeader.left������. �����f�@���������������"������� ���������������Q������������ ���� ���� ���� PageFooter.left������. �����f�@���������������"������� ���������������Q������������ ���� ���� ���� PageFooter.right������. ������@��@������������������������������������Q� ����������� �Mapping Table Cell������. ������@��@������������������������������������Q� ����������� �Mapping Table Cell������. ������@��@��������������������� ���������������Q� ����������� �Mapping Table Cell������. ��� ��f�@��������������"���������������������a� ��������� $���H���l����������������������� �����D�����h��������������������Callout������. ��� ��f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. �������@��@������������������������������������Q����������� �Body������. ��� ��f�@��������������"���������������������a� ��������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@�������������"������� ���������������Q����������(�.�<�.�P�.�d�.�x�.����.����.����.����.����.����.����.����.�,���.�@���.�T���.�h���.�|���.����.����.����.����.�Body.Indented.1������. ����f�@��������AE���������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������x.Annex.H2,A.1.1���AH2A:<A>.<n>.<n+> T,Text. ����f�@�������������"����� ���������������Q�����������x.Annex.normative������. �����f�@��������������"������� ���������������Q�������������� ���� PageFooter.left������. �����@��@��������AQ����������� =������������a� ����������x.Annex.Heading���� A:Annex <A+> SectionTitle. ��� f�@���������D����"������� ���������������Q���������� $���H���l����������������������� �����D�����h����������Note����� P1,Normal. �����f�@��������������"������� ���������������Q�������������� ���� PageFooter.right������. ����f�@�������������"������� ���������������Q����������� CellBody.X������. ����f�@��������AE���������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������x.Annex.H3,A.1.1.1���AH3A:<A>.<n>.<n>.<n+> T,Text. ��� �f�@��������BE���������� ���������������Q����������� Bibliography���� B:[B<n+>] �. ���f�@��������������"������� ���������������Y����������$�.�4�.�D�.�T�.�d�.�t�.����.����.����.����.����.����.����.����.����.����.�$���.�4���.�D���.�T���.�d���.�t���.����.����.����.����.����.����.�ExampleCode.Indented������. ��f�@��������D�����"������� ���������������Q�����������.�DashedList.indented����D:\t�. �����f�@�������������"������� ���������������Q�����������CellBody������. ���f�@��������HU���������� ���������������a� ��������� $���H���l����������������������� �����D�����h���������� H4,1.1.1.1���H4H:<$chapnum>.<n>.<n>.<n+> Body. ��f�@��������D�����"������� ���������������Q� ����������.�DashedList.indented����D:\t�. ���� �@��@��������HQ����������� =������������a� ����������SectionHeading����H:Section <$chapnum> SectionTitle. �����f�@��������������"���� ���������������Q� ���������� CellHeading������. ��� f�@���������T��� ����������������������a� ���������� SectionTitle�����Body. �����f�@�������������"����� ���������������Q����������� TableText������. ���f�@�������������"������� ���������������Q���������������M����� CommitteeList������. ��f�@��������D����"������� ���������������Q�����������.�DashedList.indented����D:\t�. ��� �f�@��������AE���������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������x.Annex.H4,A.1.1.1.1���AH4A:<A>.<n>.<n>.<n>.<n+> T,Text. ��� �f�@��������AE���������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������x.Annex.H5,A.1.1.1.1.1���AH5A:<A>.<n>.<n>.<n>.<n>.<n+> T,Text. ��� f�@��������HU���������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������H2���H2 H:<n>.<n+> Body. ��� �f�@��������HE���������� ���������������Q���������� $���H���l����������������������� �����D�����h����������x.BNF.H2��� definition H:<n>.<n+> P1,Normal. ���f�@�������������"����������������������Q�����������Footnote������. ��� �f�@��������HE���������� ���������������Q���������� $���H���l����������������������� �����D�����h����������x.BNF.H3��� definitionH:<n>.<n>.<n+> P1,Normal. ��� �f�@��������HE���������� ���������������Q���������� $���H���l����������������������� �����D�����h����������x.BNF.H4��� definitionH:<n>.<n>.<n>.<n+> P1,Normal. ��� �f�@��������HE���������� ���������������Q���������� $���H���l����������������������� �����D�����h����������x.BNF.H5��� definitionH:<n>.<n>.<n>.<n>.<n+> P1,Normal. ��� ��f�@������������������� ���������������a� ��������� $���H���l����������������������� �����D�����h��������������������Body������. ��f�@��������L����������� ���������������Q�����������. NumberedList2���� L:<n+>.\t�. ��f�@��������L����������� ���������������Q�����������. O�.� NumberedList2���� L:<n+>.\t�. �������@��@������������������� ���������������Q�����������'� Paragraph������. 33�f�@��������ZA��� ������� ���������������Q������������ NumberedListi���� Z:<r=1>)\tNumberedListii. 33�f�@��������Z��� ������� ���������������Q������������ NumberedListii���� Z:<r+>)\t�. ��� �f�@��������AE���������� ���������������a� ����������x.Annex.FigureTitle����A:Figure <A><n+>T,Text. ��� �f�@��������AE���������� ���������������a� ����������x.Annex.FigureTitle.1����A:Figure <A><n=1>T,Text. 33�f�@��������LA���!!������� ���������������Q����������33�� NumberedNote1���� L:<n=1>)\tL,NumberedListb. ��� �@��@��������EA���������� �� =������������a�����������ExampleCaption����E:Example<$chapnum><n+> Body. ��� �@��@��������EA���������� �� =������������a�����������ExampleCaption.1����E:Example<$chapnum><n=1> Body. �����f�@���������������"������� ���������������Q�������������� PageHeader.right������. ��� f�@��������FE���������� ���������������a� ����������FigureCaption.1����F:Figure <$chapnum><n=1> FigCaptionCont. � ��<f�@��������������������� ���������������Q� ���������# $�� H�� l�� ���� ���� ���� ���� ���� D���� h���� ���� P1,Normal������. ����f�@��������������������� ���������������Q����������$ $���H���l����������������������� �����D�����h���������� FL,FlushLeft������. ��� �@��@��������������������� ���������������Q����������&0�������..SectionHeadingTOC������. ������@��@��������������������� ���������������Q����������&�.�*�.�����.. H2,1.1TOC������. ��� �@��@��������������������� ���������������Q����������&����������..H1,1stLevelHeadTOC������. ������@��@��������������������� ���������������Q����������&���-�������..AT,AnnexTitleTOC������. ������@��@��������������������� ���������������Q����������&-���F���Z�������.. AH2,A.1.1TOC������. ���� �@��@��������������������� ���������������Q����������&-���F�������.. AH1,A.1TOC������. ��� �@��@��������������������� ���������������Q����������&-�������..x.Annex.HeadingTOC������. ���� �@��@��������������������� ���������������Q����������&-�������.. AN,AnnexTOC������. ��� ��f�@��������������"���������������������a� ��������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@��������L����������� ���������������Q���������� �. k�.� NumberedList2���� L:<n+>.\t�. �����f�@��������������"��������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout1������. ��� f�@��������FE���������� ���������������a� ���������� FigureCaption����F:Figure <$chapnum><n+> FigCaptionCont. 33�f�@��������L���!!������� ���������������Q����������33�� NumberedNote2���� L:<n+>)\t�. ���� f�@���������T��� ����������������������a� ���������� x.Annex.Title�����T,Text. �����f�@�������������"��������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout1������. �������@��@����������������������������������a����������� Paragraph������. ��� f�@��������H�U��� ������� ���������������a� ���������2 $���H���l����������������������� �����D�����h����������H2,1.���H2H:<n=30>.<n+> Body. ��� ��f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@��������D�����"������� ���������������Q���������� �.�DashedList.indented����D:\t�. ��� f�@��������HU��� ������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������H2,1.���H2H:<n=30>.<n+> Body. ��f�@��������L����������� ���������������Q���������� �. NumberedList2���� L:<n+>.\t�. � � ��f�@������������������� ���������������Q���������� $���H���l����������������������� �����D�����h��������������������Body������. ��f�@��������L����������� ���������������Q���������� �. NumberedList2���� L:<n+>.\t�. � �f�@��������������"������� ���������������Y����������$�.�4�.�D�.�T�.�d�.�t�.����.����.����.����.����.����.����.����.����.����.�$���.�4���.�D���.�T���.�d���.�t���.����.����.����.����.����.����.�ExampleCode.Indented.First������. �����f�@����������������������������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. ��� �f�@��������������"������� ���������������Y�����������.� �.�0�.�@�.�P�.�`�.�p�.����.����.����.����.����.����.����.����.�����.����.� ���.�0���.�@���.�P���.�`���.�p���.����.����.����.����.����.����.�ExampleCodeFirst������. ��� ��f�@������������������� ���������������Q���������� $���H���l����������������������� �����D�����h��������������������Body������. ������f�@����������������������������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. �������@��@�����������������������������������a����������� z-Top of Form������. �����f�@��������������"��������������������Q���������� $���H���l����������������������� �����D�����h��������������������Callout1������. �����f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Body1ind������. �����f�@���������������"������� ���������������Q���������/���� PageHeader.right������. ��� ��f�@��������������"���������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��� ��f�@������������������� ���������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. ��f�@��������L����������� ���������������Q�����������. NumberedList2���� L:<n=1>.\t�. ��� ��f�@������������������� ���������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. ��f�@��������L����������� ���������������Q�����������. NumberedList2���� L:<n+>.\t�. ������f�@��������������"���������������������Q����������0 $���H���l����������������������� �����D�����h��������������������Body1������.  �f�@��������ZA��� ������� ���������������Q���������� �� NumberedLista���� Z:(<a=1>)\t NumberedList2. ��f�@��������L�A���!!������� ���������������Q���������� �. NumberedList1���� L:<n=1>.\tL,NumberedListb. �����f�@���������������������������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. ��� �f�@���������������"������� ���������������Y����������4�.� �.�0�.�@�.�P�.�`�.�p�.����.����.����.����.����.����.����.����.�����.����.� ���.�0���.�@���.�P���.�`���.�p���.����.����.����.����.����.����.� ExampleCode������. ��� ��f�@������������������� ���������������Q����������) $���H���l����������������������� �����D�����h��������������������Body������. ��� f�@��������HU��� ������� ���������������a� ��������� $���H���l����������������������� �����D�����h����������H2,1.1���H2 H:<n+>.<n+> Body. �����f�@��������������"��������������������a���������� $���H���l����������������������� �����D�����h��������������������Callout������. ��f�@��������L����������� ���������������Q� ���������!�. NumberedList2���� L:<n+>.\t�. ��� ��f�@������������������� ���������������a����������< $���H���l����������������������� �����D�����h��������������������Body������. ��� �f�@��������������"������� ���������������Y�����������.� �.�0�.�@�.�P�.�`�.�p�.����.����.����.����.����.����.����.����.�����.����.� ���.�0���.�@���.�P���.�`���.�p���.����.����.����.����.����.����.� ExampleCode������. ��f�@����������A���!!������� ���������������Y����������4�. NumberedList1����\tL,NumberedListb. �����f�@���������������������������������a���������� $���H���l����������������������� �����D�����h��������������������Body������. �� ��������������a� ��������� ��������������Q����������� ��������������Q���������� ��������������Q�������������������������a� ��������� ��������������Q��������������������������a������������������������Q� ������������������3 8���Q� ����������� �������3 8���Q� ����������� ��������������a������������������������Q����������� ��������������Q����������� ��������������Q���������� ��������������a� ������������������������ ��������2.DRAFT5��������������Q�������������������������a���������� ��������������a� ��������� ��������������Q� �����������������������a�������������������������a�������������������������a������������������������a�������������������������a���������� ��������������a�������������������������a� ��������� ��������������Q� ��������� ��������������Y���������� ��������������Q���������� ��������������Q� �����������������������Q���������� ��������������Q� ��������� ��������������Q���������� ��������������Q� ��������� ��������������Q���������� ��������������Q�������������a������������a� ��������� ��������������Q������������������������a�������� arialItalic��������������a� ��������� ��������������a� ��������� ��������������Q� ���������� ��������������Q������������������������Q������������������������a���������� ��������������a� ��������� ��������������Q���������� ��������������Y������������������������a���������� ��������������a� ������������� ����������� ������� BNFkeyword ��������������Q���������� ��������������a���������� ��������������a� ��������arial���������������a��������� arialItalic ��������������a�����������������������a� �������arial ��������������a���������arial�������������a�������� arialRoman��������������a� ��������arial ��������������a���������arial��������������"�������1.DELETE����������������������3.FIX����������������������� BNFitalic ������������Y � �������Keyword ��������������a��������� Superscript ������������Y ��������Code ��������������a� ����������7�����������������Zd��������������Zd������Zd������Zd�����Zd������Zd�����������d�����������d����������������Z�������Z������������������������;���������������������������Zd�������Zd������Zd����Z����������������Zd�������Zd������Zd��������Zd������Zd�����Zd������Zd�������Zd�������Zd�����Zd����Zd�����Zd�����Zd�����Zd�����������d����Zd������Zd�����������d�����������d������������d������Zd�����Zd������Z���������������������������������Z���������������� ���������������Z�������������������������������Z�����Zd����Zd�������Thin����Medium����Double����Thick�@���� Very Thin��������������������� ��4�������0�33�33�33�33�Format A��������������H� Mapping Table� ����4����� ���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��2��3��$z������������4���5��6��7��8��$z������ ������9���:��;��<��=��$z������ ������> ���? ��@ ��A ��B ��$z������ ������C ���D ��E ��F ��G ��$z������ ������H ���I ��J ��K ��L ��$ z��,���� ������M ���N ��O ��P ��Q ��$9z������ ������R ���S ��T ��U ��V ��$Iz������ ������W���X��Y��Z��[��$Yz��,����������\���]��^��_��`��$bz��,����%�����a���b��c��d��e��$��z������%������f���g��h��i��j��$��z������%������k���l��m��n��o��$��z������%������p���q��r��s��t��$��z������%������u���v��w��x��y��$��z������%������z���{��|��}��~��$��z������%������������������$��z������%�����������������$��z������%������ ��� �� �� �� ��$��z������%�����������������$��z�������%����������������$B���� �����%������������$R��������%��������������$b��������%����������� ��$r��������%������!���"��#��$�������� %������$���%��&��$���������%������' ���( ��) ��$$�� �����"(�������*!���+!�,!�-!�$4z������!#(�������."���/"��0"��1"��$Dz��,����"$(������2#���3#��4#��5#��$pz������#%(������6$���7$��8$��9$��$��z��,����$&(������:%���;%��<%��=%��$��z������%'(������>&���?&��@&��A&��$��z��,����&((������B'���C'��D'��E'��$��z������')(������F(���G(��H(��I(��$��z��,����(*(������J)���K)��L)��M)��$$��z������)�(������N*���O*��P*��Q*��$:���� �����,(�������R+���S+�T+�$J��_������+-(�������U,���V,��W,��$Z��_������,.(������X-���Y-��Z-��$j��_������-/(������[.���\.��].��$z��_������.0(������^/���_/��`/��$��_������/�(������a0���b0��c0��$$�� �����2n�������d1���e1�f1�g1�$4_������13n�������h2���i2��j2��k2��$D_������2�n������l3���m3��n3��o3��$Z�� �����5n�������p4���q4�r4�$j������46n�������s5���t5��u5��$z������57n������v6���w6��x6��$��������68n������y7���z7��{7��$��������79n������|8���}8��~8��$��������8:n������9����9��9��$��������9;n������:���:��:��$��������:Cn������;���;��;��$h�� �����= ������� <���<�<�$C)������<> �������=���=��=��$S)������=? ������>���>��>��$i)������>@ ������?���?��?��${)������?A ������@���@��@��$)������@B ������A���A��A��$)������A� ������B��� B��!B��$��������;�n������C��� C��"C����� ��2.0�Inserted��Deleted����1.1�Comment������ �6�67�.�,3���H��L��O��R��z� �~� �� ! ��"# ��$% ��&'��()��89�1�=A�� � �"#��$%�"�()�(�� ����d@ �Black�������T!�White����dd���A�Red���dd�����Green���d�d��� �Blue���d�����Cyan�����d���Magenta����d���� �Yellow���@t�b�@���( Accent40Online 040-660099�@t�b������AccentOnline 040-660099��(@����Gray���Hcc������Dark RedOnline 206- CC0000�P�<������Color 8������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.I.700�� FrameRoman� W.Arial.I.400�� FrameRoman� W.Arial.R.400�� FrameRoman�W.Courier New.R.400�� FrameRoman�W.Times New Roman.R.700�� FrameRoman� W.Arial.R.700�� FrameRoman�W.Times New Roman.I.400�� FrameRoman�W.Courier New.R.700�� FrameRoman���� FrameRoman�@PTimes New RomanX Courier New`Arial Regular Regular BoldRegularItalic���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������椈|:UzHbDA%NbRmZ5FhRc%>wJb i1_'n@MK:Ł|�]j@W[}LH=nJ+84zqGEm/炁DHq{"/! %S|zm6WЇmq+ 㜌$]SR,ȵ4vΛbo�cO2@4ϙǐ՚HMtU瑹_fDc*luO=g*DE@'}>ˇ~$+b5}>2p1(vx)`)h^)}u|X%zxVT/^7| *b.@zV�cPԤ X,_ M[wl$'drK,4ɽX$ Ȍ>uZf67Ŗղ0,~AdP1D=^1Av>K~9WYOlBXg"w6xuS'J0ׁnnhS' Tr}}8ϴ#q-[r lk=a~jcΖ%l$fۮ(+M}m~gm%E[}9,qP 4 f {umV4ΓyQ*.[mCF'yu1hQN˽Épԅ[k$zq148 @Eotg\W5,N[WXɭORU^lXV1caHa0ck٦%bph:XNڂ#,a8Ҋu>fTgSSAѕ20c:vP͉2:.ݮg.Caͨk0KU#aiPPg.p(\ZlNTsu?�p%Ћt<аJ1T����