рдпрд╣ рдХрдорд╛рдВрдб рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдорд╛рд░реЗ рдХрдИ рдореБрдлреНрдд рдСрдирд▓рд╛рдЗрди рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди рдЬреИрд╕реЗ рдХрд┐ рдЙрдмрдВрдЯреВ рдСрдирд▓рд╛рдЗрди, рдлреЗрдбреЛрд░рд╛ рдСрдирд▓рд╛рдЗрди, рд╡рд┐рдВрдбреЛрдЬ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдпрд╛ рдореИрдХ рдУрдПрд╕ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдирд╡рд░реНрдХреНрд╕ рдлреНрд░реА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХрд╛рд░реНрдпрдХреНрд░рдо:
рдирд╛рдо
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ - рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдХреЛ C++/SystemC рдореЗрдВ рдмрджрд▓реЗрдВ
SYNOPSIS
рд╡реЗрд░рд┐рд▓реЗрдЯрд░--рдорджрдж
рд╡реЗрд░рд┐рд▓реЗрдЯрд░--рд╕рдВрд╕реНрдХрд░рдг
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ --cc [рд╡рд┐рдХрд▓реНрдк] [top_level.v]... [opt_c_files.cpp/c/cc/a/o/so]
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ --sc [рд╡рд┐рдХрд▓реНрдк] [top_level.v]... [opt_c_files.cpp/c/cc/a/o/so]
рд╡реЗрд░рд┐рд▓реЗрдЯрд░--рд▓рд┐рдВрдЯ-рдУрдирд▓реА [top_level.v]...
рд╡рд░реНрдгрди
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд (рд╡реНрдпрд╡рд╣рд╛рд░рд┐рдХ рдирд╣реАрдВ) рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб, рд╕рд╛рде рд╣реА рдХреБрдЫ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ,
SystemVerilog рдФрд░ Verilog AMS рдЕрднрд┐рдХрдердиреЛрдВ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рдЙрдкрд╕рдореБрдЪреНрдЪрдп, C++ рдпрд╛ SystemC рдХреЛрдб рдореЗрдВред рдпрд╣
рдпрд╣ рдПрдХ рдкреВрд░реНрдг рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рд╣реИред
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЛ рдЬреАрд╕реАрд╕реА, рдХреИрдбреЗрдВрд╕ рд╡реЗрд░рд┐рд▓реЙрдЧ-рдПрдХреНрд╕рдПрд▓/рдПрдирд╕реА-рд╡реЗрд░рд┐рд▓реЙрдЧ, рдпрд╛ рдХреЗ рд╕рдорд╛рди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рд╕рд┐рдиреЛрдкреНрд╕рд┐рд╕ рдХрд╛ рд╡реА.рд╕реА.рдПрд╕. рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ, рдЙрд╕реЗ рд▓рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рддрд╛ рд╣реИ
рдХрд╡рд░реЗрдЬ рдФрд░ рддрд░рдВрдЧрд░реВрдк рдЕрдиреБрд░реЗрдЦрдг рдХреЛрдбред C++ рдФрд░ SystemC рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ .cpp рдФрд░ .h рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддрд╛ рд╣реИ
рдлрд╛рдЗрд▓реЗрдВ.
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдлрд┐рд░ C++ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдереЛрдбрд╝рд╛ рд╕реА++ рд▓рд┐рдЦрддрд╛ рд╣реИ
рд░реИрдкрд░ рдлрд╝рд╛рдЗрд▓, рдЬреЛ рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЗрдВрд╕реНрдЯреЗрдВрдЯ рдХрд░рддреА рд╣реИ, рдФрд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЛ рдкрд╛рд╕ рдХрд░рддреА рд╣реИ
рдХрдорд╛рдВрдб рд▓рд╛рдЗрдиред рдЗрди C рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ C++ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ Verilated рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкрд░рд┐рдгрд╛рдореА рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рд┐рдореБрд▓реЗрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛ред
рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, "рдЙрджрд╛рд╣рд░рдг C++ рдирд┐рд╖реНрдкрд╛рджрди" рдкрд░ рдЬрд╛рдПрдВред
рддрд░реНрдХ рд╕рд╛рд░рд╛рдВрд╢
рдпрд╣ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЗ рддрд░реНрдХреЛрдВ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕рд╛рд░рд╛рдВрд╢ рд╣реИред рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рджреЗрдЦреЗрдВ
рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓реЗ рдЕрдиреБрднрд╛рдЧред
{file.v} рд╡реЗрд░рд┐рд▓реЙрдЧ рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдлрд╝рд╛рдЗрд▓ рдирд╛рдо
{file.c/cc/cpp} рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ C++ рдлрд╝рд╛рдЗрд▓реЗрдВ
{file.a/o/so} рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ C++ рдлрд╝рд╛рдЗрд▓реЗрдВ
+1364-1995рдПрдХреНрд╕рдЯ+ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рд╡реЗрд░рд┐рд▓реЙрдЧ 1995 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
+1364-2001рдПрдХреНрд╕рдЯ+ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рд╡реЗрд░рд┐рд▓реЙрдЧ 2001 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
+1364-2005рдПрдХреНрд╕рдЯ+ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рд╡реЗрд░рд┐рд▓реЙрдЧ 2005 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
+1800-2005ext+ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде SystemVerilog 2005 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
+1800-2009ext+ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде SystemVerilog 2009 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
+1800-2012ext+ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде SystemVerilog 2012 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
--assert рд╕рднреА рджрд╛рд╡реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдСрдЯреЛрдлреНрд▓рд╢ рд╕рднреА $рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЗ рдмрд╛рдж рдлреНрд▓рд╢ рд╕реНрдЯреНрд░реАрдо
--bbox-sys рдмреНрд▓реИрдХрдмреЙрдХреНрд╕ рдЕрдЬреНрдЮрд╛рдд $system рдХреЙрд▓
--bbox-unsup рдмреНрд▓реИрдХрдмреЙрдХреНрд╕ рдЕрд╕рдорд░реНрдерд┐рдд рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ
--рдмрд┐рди рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдмрд╛рдЗрдирд░реА рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВ
-CFLAGS рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП C++ рдХрдВрдкрд╛рдЗрд▓рд░ рдлрд╝реНрд▓реИрдЧ
--cc C++ рдЖрдЙрдЯрдкреБрдЯ рдмрдирд╛рдПрдВ
--рд╕реАрдбреАрд╕реА рдХреНрд▓реЙрдХ рдбреЛрдореЗрди рдХреНрд░реЙрд╕рд┐рдВрдЧ рд╡рд┐рд╢реНрд▓реЗрд╖рдг
--рдХреНрд▓рдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдШрдбрд╝реА рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдВ
--рдХрдВрдкрд╛рдЗрд▓рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ C++ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрди рдХрд░реЗрдВ
--рдЕрднрд┐рд╕рд░рдг-рд╕реАрдорд╛ рд╕реБрд░ рдЕрднрд┐рд╕рд░рдг рд╕рдордп рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВ
--рдХрд╡рд░реЗрдЬ рд╕рднреА рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдХрд╡рд░реЗрдЬ-рд▓рд╛рдЗрди рд▓рд╛рдЗрди рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдХрд╡рд░реЗрдЬ-рдЯреЙрдЧрд▓ рдЯреЙрдЧрд▓ рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдХрд╡рд░реЗрдЬ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрд╕рд╡реАрдПрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдХрд╡рд░реЗрдЬ-рдЕрдВрдбрд░рд╕реНрдХреЛрд░ _рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
-рдбреА [= ] рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕реЗрдЯ рдХрд░реЗрдВ
--рдбреАрдмрдЧ рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдбреАрдмрдЧ-рдЪреЗрдХ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЕрднрд┐рдХрдерди рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдбреАрдмреБрдЧреА рдХрд┐рд╕реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реНрддрд░ рдкрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдбрд┐рдмреБрдЧреА- рдХрд┐рд╕реА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рд╕реНрддрд░ рдкрд░ рдбреАрдмрдЧ рдХрд░рдирд╛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛
+рдкрд░рд┐рднрд╛рд╖рд┐рдд+ = рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕реЗрдЯ рдХрд░реЗрдВ
--dump-tree рдбрдВрдкрд┐рдВрдЧ .tree рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдбрдВрдк-treei рдПрдХ рд╕реНрддрд░ рдкрд░ .tree рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдбрдВрдк рдХрд░рдирд╛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдбрдВрдк-рд╡реГрдХреНрд╖- рдПрдХ рд╕реНрддрд░ рдкрд░ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдкрд░ рдбрдВрдкрд┐рдВрдЧ .tree рдлрд╝рд╛рдЗрд▓ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
-рдИ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕, рд▓реЗрдХрд┐рди рд╕рдВрдХрд▓рд┐рдд рди рдХрд░реЗрдВ
--рддреНрд░реБрдЯрд┐-рд╕реАрдорд╛ рдЗрддрдиреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рдж рдирд┐рд░рд╕реНрдд рдХрд░реЗрдВ
--exe рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ
-рдПрдл рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рддреБрд▓рдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ
-рдПрдл рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ
--gdb рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рд░реВрдк рд╕реЗ GDB рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЪрд▓рд╛рдПрдБ
--gdbbt рдмреИрдХрдЯреНрд░реЗрд╕ рдХреЗ рд▓рд┐рдП GDB рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЪрд▓рд╛рдПрдБ
--help рдЗрд╕ рд╕рд╣рд╛рдпрддрд╛ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
-рдореИрдВ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
--рдЕрдЧрд░-рдЧрд╣рд░рд╛рдИ IFDEPTH рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдЯреНрдпреВрди рдХрд░реЗрдВ
+incdir+ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
--рдЗрдирд╣рд┐рдмрд┐рдЯ-рд╕рд┐рдо рд╕рд┐рдо рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдПрдВ
--рдЗрдирд▓рд╛рдЗрди-рдорд▓реНрдЯреА рдореЙрдбреНрдпреВрд▓ рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рдХреЛ рдЯреНрдпреВрди рдХрд░реЗрдВ
-рдПрд▓рдбреАрдлрд╝реНрд▓реИрдЧреНрд╕ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХрд░ рдкреНрд░реА-рдСрдмреНрдЬреЗрдХреНрдЯ рдлрд╝реНрд▓реИрдЧ
-рдПрд▓рдбреАрдПрд▓рдЖрдИрдмреАрдПрд╕ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлрд╝реНрд▓реИрдЧ
--рднрд╛рд╖рд╛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛ рдорд╛рдирдХ
+libext+ +[ext]... рдореЙрдбреНрдпреВрд▓ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдЯреЗрдВрд╢рди
--рд▓рд┐рдВрдЯ-рдХреЗрд╡рд▓ рд▓рд┐рдВрдЯ, рд▓реЗрдХрд┐рди рдЖрдЙрдЯрдкреБрдЯ рди рдмрдирд╛рдПрдВ
--MMD .d рдирд┐рд░реНрднрд░рддрд╛ рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рдПрдВ
--рдПрдордкреА рдирдХрд▓реА рдирд┐рд░реНрднрд░рддрд╛ рд▓рдХреНрд╖реНрдп рдмрдирд╛рдПрдВ
--рдорджрд┐рд░ рдЖрдЙрдЯрдкреБрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдирд╛рдо
--рдореЙрдб-рдЙрдкрд╕рд░реНрдЧ рдирд┐рдЪрд▓реА рдХрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдкрд╣рд▓реЗ рдЬреЛрдбрд╝рдиреЗ рд╡рд╛рд▓рд╛ рдирд╛рдо
--рдиреЛ-рдХреНрд▓рдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдШрдбрд╝реА рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХреЗрдВ
--no-pins64 64-33 рдмрд┐рдЯ рд╕рд┐рдЧ рдХреЗ рд▓рд┐рдП vluint64_t рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ
--рдиреЛ-рд╕реНрдХрд┐рдк-рд╕рдорд╛рди рд╕рдорд╛рди рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
+рдиреЛрдЯрд┐рдВрдЧрдЪреЗрдХ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛
-O0 рдЕрдиреБрдХреВрд▓рди рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
-O3 рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рдЕрдиреБрдХреВрд▓рди
-рдУ рдЪрдпрди рдпреЛрдЧреНрдп рдЕрдиреБрдХреВрд▓рди
-рдУ рдЕрдВрддрд┐рдо рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХрд╛ рдирд╛рдо
--рдиреЛ-рдСрд░реНрдбрд░-рдХреНрд▓реЙрдХ-рд╡рд┐рд▓рдВрдм рдСрд░реНрдбрд░ рджреЗрдиреЗ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ, рдХреНрд▓реЙрдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдЖрдЙрдЯрдкреБрдЯ-рд╡рд┐рднрд╛рдЬрди .cpp рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ
--рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ-рд╕реАрдлрдВрдХреНрд╕ рд╕реНрдкреНрд▓рд┐рдЯ .cpp рдлрд╝рдВрдХреНрд╢рдВрд╕
--рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ-рд╕реАрдЯреНрд░реЗрд╕ рд╕реНрдкреНрд▓рд┐рдЯ рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди
-рдкреА -рдИ рдХреЗ рд╕рд╛рде рдкрдВрдХреНрддрд┐ рд╕рдВрдЦреНрдпрд╛ рдФрд░ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
--рдкрд┐рдиреНрд╕-рдмреА.рд╡реА рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреЗ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
--pins-sc-uint рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
--pins-sc-biguint рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
--pins-uint8 рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
--рдкрд╛рдЗрдк-рдлрд╝рд┐рд▓реНрдЯрд░ рд╕рднреА рдЗрдирдкреБрдЯ рдХреЛ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВ
рдЙрдкрд╕рд░реНрдЧ рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдХрдХреНрд╖рд╛ рдХрд╛ рдирд╛рдо
--profile-cfuncs рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдирд╛рдо рдлрд╝рдВрдХреНрд╢рди
--рдирд┐рдЬреА рдбрд┐рдмрдЧрд┐рдВрдЧ; рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВ
--рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбрд┐рдмрдЧрд┐рдВрдЧ; рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВ
--рд░рд┐рдкреЛрд░реНрдЯ-unoptflat UNOPTFLAT рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдирд┐рджрд╛рди
--savable рдореЙрдбрд▓ рд╕реЗрд╡-рд░рд┐рд╕реНрдЯреЛрд░ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--sc SystemC рдЖрдЙрдЯрдкреБрдЯ рдмрдирд╛рдПрдВ
--рдЖрдБрдХрдбрд╝реЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ
--stats-vars рдЪрд░реЛрдВ рдкрд░ рдЖрдБрдХрдбрд╝реЗ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ
-sv SystemVerilog рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
+systemverilogext+ +1800-2012ext+ рдХрд╛ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреА
--рд╢реАрд░реНрд╖-рдореЙрдбреНрдпреВрд▓ рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдЗрдирдкреБрдЯ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдирд╛рдо
--рдЯреНрд░реЗрд╕ рддрд░рдВрдЧрд░реВрдк рдирд┐рд░реНрдорд╛рдг рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдирд┐рд╢рд╛рди-рдЧрд╣рд░рд╛рдИ рдЕрдиреБрд░реЗрдЦрдг рдХреА рдЧрд╣рд░рд╛рдИ
--рдЯреНрд░реЗрд╕-рдореИрдХреНрд╕-рдРрд░реЗ рдЕрдиреБрд░реЗрдЦрдг рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рдмрд┐рдЯ рдЪреМрдбрд╝рд╛рдИ
--рдЯреНрд░реЗрд╕-рдЕрдзрд┐рдХрддрдо-рдЪреМрдбрд╝рд╛рдИ рдЕрдиреБрд░реЗрдЦрдг рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рд╕рд░рдгреА рдЧрд╣рд░рд╛рдИ
--trace-params рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдкреИрд░рд╛рдореАрдЯрд░ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--trace-structs рд╕рдВрд░рдЪрдирд╛ рдирд╛рдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
--рдЯреНрд░реЗрд╕-рдЕрдВрдбрд░рд╕реНрдХреЛрд░ _рд╕рд┐рдЧреНрдирд▓реНрд╕ рдХреА рдЯреНрд░реЗрд╕рд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
-рдпреВ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд
--рдЕрдирд░реЛрд▓-рдЧрд┐рдирддреА рдЕрдзрд┐рдХрддрдо рд▓реВрдк рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЛ рдЯреНрдпреВрди рдХрд░реЗрдВ
--рдЕрдирд░реЛрд▓-рдПрд╕рдЯреАрдПрдордЯреАрдПрд╕ рдЕрдзрд┐рдХрддрдо рд▓реВрдк рдмреЙрдбреА рдЖрдХрд╛рд░ рдХреЛ рдЯреНрдпреВрди рдХрд░реЗрдВ
--рдЕрдкреНрд░рдпреБрдХреНрдд-regexp рдЕрдкреНрд░рдпреБрдХреНрдд рд▓рд┐рдВрдЯ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдЯреНрдпреВрди рдХрд░реЗрдВ
-V рд╡рд░реНрдмреЛрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
-v рд╡реЗрд░рд┐рд▓реЙрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА
+verilog1995ext+ +1364-1995ext+ рдХрд╛ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреА
+verilog2001ext+ +1364-2001ext+ рдХрд╛ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреА
-рдЖрддрдВрдХ- рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рддреНрд░реБрдЯрд┐ рдореЗрдВ рдмрджрд▓реЗрдВ
-Wрднрд╡рд┐рд╖реНрдп- рдЕрдЬреНрдЮрд╛рдд рд╕рдВрджреЗрд╢ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
-рдирд╣реАрдВ- рдЪреЗрддрд╛рд╡рдиреА рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
-рдиреЛ-рд▓рд┐рдВрдЯ рд╕рднреА рд▓рд┐рдВрдЯ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
-Wno-style рд╕рднреА рд╢реИрд▓реА рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
-рдиреЛ-рдШрд╛рддрдХ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдкрд░ рдШрд╛рддрдХ рдирд┐рдХрд╛рд╕ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
--x-рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдЗрд╕ рдорд╛рди рдкрд░ Xs рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ
--x-initial-edge рдкреНрд░рд╛рд░рдВрднрд┐рдХ X->0 рдФрд░ X->1 рдПрдЬ рдЯреНрд░рд┐рдЧрд░ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
-рдп рдореЙрдбреНрдпреВрд▓ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛
рдмрд╣рд╕
{рдлрд╝рд╛рдЗрд▓.рд╡реА}
рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╢реАрд░реНрд╖ рдореЙрдбреНрдпреВрд▓ рд╡рд╛рд▓реА рд╡реЗрд░рд┐рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
{file.c/.cc/.cpp/.cxx}
рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡реИрдХрд▓реНрдкрд┐рдХ C++ рдлрд╝рд╛рдЗрд▓реЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ C++ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ
рдЗрд╕ рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВ, рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдореЗрдВ рдПрдХ рдореЗрдХ рдирд┐рдпрдо рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ рдЬреЛ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдореЙрдбреНрдпреВрд▓
рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп. рдмрд┐рдирд╛ рдХрд┐рд╕реА C++ рдлрд╝рд╛рдЗрд▓ рдХреЗ, Verilator рдпрд╣реАрдВ рд░реБрдХ рдЬрд╛рдПрдЧрд╛ рдореЙрдбреНрдпреВрд▓__ALL.рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп,
рдФрд░ рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рд▓рд┐рдЦреЗ рдЧрдП рдирд┐рдпрдореЛрдВ рд╕реЗ рдЬреБрдбрд╝рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗред рдпрд╣ рднреА рджреЗрдЦреЗрдВ
-CFLAGS рд╡рд┐рдХрд▓реНрдк.
{file.a/.o/.so}
рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡реИрдХрд▓реНрдкрд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдпрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
-LDFLAGS рдХреЗ рд▓рд┐рдП рдЖрд╢реБрд▓рд┐рдкрд┐ " "ред рдпрджрд┐ рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдЧрдИ рд╣реИ, Verilator
рдЗрд╕рдореЗрдВ рдПрдХ рдореЗрдХ рдирд┐рдпрдо рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ рдЬреЛ рд▓рд┐рдВрдХ рдХрд░рддреЗ рд╕рдордп рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдореЙрдбреНрдпреВрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдпред
рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рддрднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдЬрдм --exe рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
+1364-1995рдПрдХреНрд╕рдЯ+ext
+1364-2001рдПрдХреНрд╕рдЯ+ext
+1364-2005рдПрдХреНрд╕рдЯ+ext
+1800-2005рдПрдХреНрд╕рдЯ+ext
+1800-2009рдПрдХреНрд╕рдЯ+ext
+1800-2012рдПрдХреНрд╕рдЯ+ext
рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рднрд╛рд╖рд╛ рдорд╛рдирдХ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ, ext.
рдЕрдиреНрдп рд╕рд┐рдореБрд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЗ рд▓рд┐рдП, рд╕рдорд╛рдирд╛рд░реНрдердХ рд╢рдмреНрдж "+verilog1995ext+" рднреА рджреЗрдЦреЗрдВредext,
"+verilog2001ext+"ext, рдФрд░ "+systemverilogext+"ext.
рдХрд┐рд╕реА рднреА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП, рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рднрд╛рд╖рд╛ рдХреЛ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреА рдЬрд╛рддреА рд╣реИ
"--рдбрд┐рдлрд╝реЙрд▓реНрдЯ-рднрд╛рд╖рд╛" рдпрд╛ "--рднрд╛рд╖рд╛" рд╡рд┐рдХрд▓реНрдкреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рднрд╛рд╖рд╛ред
рдпреЗ рд╡рд┐рдХрд▓реНрдк рдЙрд╕реА рдХреНрд░рдо рдореЗрдВ рдкреНрд░рднрд╛рд╡реА рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рд╕ рдХреНрд░рдо рдореЗрдВ рдЙрдирдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реЛрдЧрд╛
"рдПрд╡реА" рдХреЗ рд▓рд┐рдП рд╡реЗрд░рд┐рд▓реЙрдЧ 1995 рдФрд░ "рдмреАрд╡реА" рдХреЗ рд▓рд┐рдП рд╡реЗрд░рд┐рд▓реЙрдЧ 2001 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ ... +1364-1995ext+v av +1364-2001ext+v bv
рдЗрди рдЭрдВрдбреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рд╡рд┐рд░рд╛рд╕рддреА рдорд┐рд╢реНрд░рд┐рдд рднрд╛рд╖рд╛ рдбрд┐рдЬрд╝рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдмреЗрд╣рддрд░ рд╣реИ
рд╡рд┐рдХрд▓реНрдк рдирдП рдХреАрд╡рд░реНрдб рдХреЛ рд╕реБрдзрд╛рд░рдиреЗ рдпрд╛ рдЙрдкрдпреБрдХреНрдд рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реИ
"`begin_keywords"ред
рдиреЛрдЯ "`begin_keywords" рдПрдХ SystemVerilog рдирд┐рд░реНрдорд╛рдг рд╣реИ, рдЬреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХреЗрд╡рд▓ рдХреЗ рдЬреЛ
рдХреАрд╡рд░реНрдб рдХреЗ рд╕реЗрдЯ рдХреЛ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛рдирд╛ рд╣реИред рдЬреЛ рднреА рд╕реЗрдЯ рдЪреБрдирд╛ рдЬрд╛рдПрдЧрд╛, рд╢рдмреНрджрд╛рд░реНрде рд╡рд╣реА рд╣реЛрдЧрд╛
SystemVerilog рдХреЗ. рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд "+1364-1995ext+" рдЖрджрд┐ рджреЛрдиреЛрдВ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░
рд╢рдмреНрджрд╛рд░реНрде рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред
--рдЬреЛрд░ рджреЗрдВ
рд╕рднреА рджрд╛рд╡реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ.
рдпрд╣ рднреА рджреЗрдЦреЗрдВ --x-assign рдФрд░ --x-initial-edge; рд╕реЗрдЯрд┐рдВрдЧ "--x-рдЕрд╕рд╛рдЗрди рдпреВрдирд┐рдХ" рдФрд░/рдпрд╛
"--x-рдкреНрд░рд╛рд░рдВрднрд┐рдХ-рдХрд┐рдирд╛рд░реЗ" рд╡рд╛рдВрдЫрдиреАрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
--рдСрдЯреЛрдлреНрд▓рд╢
рдкреНрд░рддреНрдпреЗрдХ $display рдпрд╛ $fdisplay рдХреЗ рдмрд╛рдж, рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдХреЛ рдлреНрд▓рд╢ рдХрд░реЗрдВред рдпрд╣ рдЙрд╕рдХрд╛ рдмреАрдорд╛ рдХрд░рддрд╛ рд╣реИ
рд╕рдВрджреЗрд╢ рддреБрд░рдВрдд рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗ рд▓реЗрдХрд┐рди рдкреНрд░рджрд░реНрд╢рди рдХрдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ; рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХрд░реЗрдВ
рдореБрдЦреНрдп рд╕реА рд▓реВрдк рдореЗрдВ рдХрднреА-рдХрднреА "fflush(stdout)"ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдВрдж рд╣реИ, рдЬреЛ рдмрдлрд╝рд░ рдХрд░реЗрдЧрд╛
рд╕рд╛рдорд╛рдиреНрдп C stdio рдХреЙрд▓ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЖрдЙрдЯрдкреБрдЯред
--рдмреЙрдХреНрд╕-sys
рдХрд┐рд╕реА рднреА рдЕрдЬреНрдЮрд╛рдд $system рдХрд╛рд░реНрдп рдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреЛ рдмреНрд▓реИрдХ рдмреЙрдХреНрд╕ рдХрд░реЗрдВред рд╕рд┐рд╕реНрдЯрдо рд╕рдВрдмрдВрдзреА рдХрд╛рд░реНрдп рд╕рд░рд▓рддрд╛ рд╕реЗ рд╣реЛрдВрдЧреЗ
рдПрдирдУрдкреАрдб, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдЕрдирд╕рд╛рдЗрдЬрд╝реНрдб рд╢реВрдиреНрдп рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдРрд╕реЗ рдореЗрдВ рддрд░реНрдХ
рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдиреНрдпрдерд╛ рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред рдпрд╣ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ рдЬрдм
рдХрдВрдкрдиреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреАрдПрд▓рдЖрдИ рдХреЙрд▓реЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓рд╛рдЗрдирд┐рдВрдЧред
--рдмреАрдмреЙрдХреНрд╕-рдЕрдирд╕реБрдк
рдмреНрд▓реИрдХ рдмреЙрдХреНрд╕ рдореЗрдВ рдХреБрдЫ рдЕрд╕рдорд░реНрдерд┐рдд рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ, рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпреВрдбреАрдкреА рдЯреЗрдмрд▓ рдФрд░ рд╕реАрдПрдордУрдПрд╕ рдЖрджрд┐
рдЯреНрд░рд╛рдВрд╕ рдЧреЗрдЯ рдЖрджрд┐рдоред рдЗрд╕рд╕реЗ рд╢реЗрд╖ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рддрдм рднреА рд▓рд╛рдЗрдирд┐рдВрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЕрд╕рдорд░реНрдерд┐рдд рдирд┐рд░реНрдорд╛рдг рдореМрдЬреВрдж рд╣реИрдВред
--рдмрд┐рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВред рдЬрдм рдПрдХ рдирд┐рд░реНрднрд░рддрд╛
(.d) рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдПрдХ рд╕реНрд░реЛрдд рдирд┐рд░реНрднрд░рддрд╛ рдмрди рдЬрд╛рдПрдЧрд╛, рдЬреИрд╕реЗ рдХрд┐ a
рдЗрд╕ рдмрд╛рдЗрдирд░реА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдЖрдЙрдЯрдкреБрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рд╣реЛрдЧрд╛ред
-CFLAGS рдЭрдВрдбреЗ
рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдореЗрдХрдлрд╝рд╛рдЗрд▓реНрд╕ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реА рдХрдВрдкрд╛рдЗрд▓рд░ рдлрд╝реНрд▓реИрдЧ рдЬреЛрдбрд╝реЗрдВред рдЬрдм рдореЗрдХ рдкрд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдЗрдиреНрд╣реЗрдВ C++ рдХрдВрдкрд╛рдЗрд▓рд░ (gcc/g++/msvc++) рдХреЛ рдкрд╛рд╕ рдХрд░ рджреА рдЬрд╛рдПрдЧреАред
--рд╕реАрд╕реА
SystemC рдЖрдЙрдЯрдкреБрдЯ рдореЛрдб рдХреЗ рдмрд┐рдирд╛ C++ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ; рдпрд╣ рднреА рджреЗрдЦреЗрдВ--рдПрд╕.рд╕реА.
--CDC
рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ. рдХреБрдЫ рдХреНрд▓реЙрдХ рдбреЛрдореЗрди рдХреНрд░реЙрд╕рд┐рдВрдЧ рдЬрд╛рдБрдЪреЗрдВ рдХрд░реЗрдВ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдЬрд╛рд░реА рдХрд░реЗрдВ
(CDCRSTLOGIC) рдФрд░ рдлрд┐рд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ; рдпрджрд┐ рд╕реАрдбреАрд╕реА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддреЛ рдПрдХ рдмрдирд╛рдПрдВ
рджреВрд╕рд░рд╛ рд░рди --рд▓рд┐рдВрдЯ-рдУрдирд▓реА рдХреЗ рд╕рд╛рдеред рдЕрддрд┐рд░рд┐рдХреНрдд рдЪреЗрддрд╛рд╡рдиреА рд╕реВрдЪрдирд╛ рднреА рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИ
рдлрд╝рд╛рдЗрд▓ {рдЙрдкрд╕рд░реНрдЧ}__cdc.txt.
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рдЖрдЗрдЯрдо рдХреА рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрдиреНрдп рд╕реАрдбреАрд╕реА рдЙрдкрдХрд░рдг рд╕реЗ рдЫреВрдЯ рдЧрдП рд╣реИрдВ; рдпрджрд┐ рдЖрдкрдХреА рд░реБрдЪрд┐ рд╣реИ
рдЕрдзрд┐рдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╕реАрдбреАрд╕реА рдЬрд╛рдБрдЪ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рд▓реЗрдЦрдХреЛрдВ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВред
--рдХреНрд▓рдХ рд╕рдВрдХреЗрдд-рдирд╛рдо
рдХрднреА-рдХрднреА рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рдШрдбрд╝реА рдХреЗ рд╕рдВрдХреЗрддреЛрдВ рдХреЛ рдЕрдиреНрдп рд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛ рдХрд╛рдлреА рдХрдард┐рди рд╣реЛрддрд╛ рд╣реИ
рдбреЗрдЯрд╛ рд╕рд┐рдЧреНрдирд▓. рдХрднреА-рдХрднреА рдШрдбрд╝реА рдХреЗ рд╕рд┐рдЧреНрдирд▓ рдЬрд╛рдБрдЪ рд╕реВрдЪреА рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ
рд╕рдВрдХреЗрдд рдЬреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдЧреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдЗрд╕рд╕реЗ рднрд╛рд░реА рдЧрд┐рд░рд╛рд╡рдЯ рд╣реЛрдЧреА
рд╕рддреНрдпрд╛рдкрд┐рдд рдореЙрдбрд▓ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди.
-рдХреНрд▓рдХ рдХреЗ рд╕рд╛рде , рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореЙрдбрд▓ рдореЗрдВ рд░реВрдЯ рдХреНрд▓реЙрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдлрд┐рд░ рд╡реЗрд░рд┐рд▓реЗрдЯрд░
рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдХреНрд▓реЙрдХрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдХреНрд▓реЙрдХрд░ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рдЪрд╛рд░рд┐рдд рдХрд░реЗрдЧрд╛
рдЙрд╕рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЕрдиреНрдп рд╕рдВрдХреЗрддред рдЗрд╕ рддрд░рд╣ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд▓реЗрдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдЧрд╛
рдЬрд╛рдБрдЪ рд╕реВрдЪреА рдореЗрдВ рдХреНрд▓реЙрдХрд░ рд╕рд┐рдЧреНрдирд▓ред
рдиреЛрдЯ рд╕рд┐рдЧреНрдирд▓-рдирд╛рдо рдЖрд░рдЯреАрдПрд▓ рдкрджрд╛рдиреБрдХреНрд░рдо рдкрде рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, v.foo.bar. рдЕрдЧрд░
рд╕рд┐рдЧреНрдирд▓ рд╢реАрд░реНрд╖-рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЗрдирдкреБрдЯ рд╣реИ, рд╕реАрдзреЗ рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рдирд╛рдоред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдкрд╛ рд▓реЗрддреЗ рд╣реИрдВ
рд╕рдЯреАрдХ рдирд╛рдо рдвреВрдВрдврдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд░рдЯреАрдПрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ "/*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреНрд▓реЙрдХрд░*/" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ
рд╕рд┐рдЧреНрдирд▓ рдХреЛ рд╕реАрдзреЗ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдВ.
--рдХрдВрдкрд╛рдЗрд▓рд░ рдХрдВрдкрд╛рдЗрд▓рд░-рдирд╛рдо
рдирд┐рд░реНрджрд┐рд╖реНрдЯ C++ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрдирд┐рдВрдЧ рдФрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред
рдмрдЬрдирд╛
рдмрдЬрдиреЗ рдХреА рдзреБрди. рдЗрд╕рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рдЧрддрд┐ рдХрдо рд╣реЛ рд╕рдХрддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрдИ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ
рдХреНрд▓реИрдВрдЧ рдореЗрдВ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рд╣рд╛рд░реНрдбрдХреЛрдбреЗрдб рд╕реАрдорд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рдореЗрдВ рдЧрд╣рд░реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рддреЛрдбрд╝рдирд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ
рдПрдордПрд╕рд╡реАрд╕реА рдХреЗ рд▓рд┐рдП рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЬреАрдПрдирдпреВ рд╕реА++ рдХреЗ рд▓рд┐рдП рдЬреАрд╕реАрд╕реА рдЯреНрдпреВрди, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдб рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдЕрдиреБрд░реВрдк рд╕реА++ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
рд╕рдВрдХрд▓рдХ. рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ.
рдПрдордПрд╕рд╡реАрд╕реА
рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реА++ рдХреЗ рд▓рд┐рдП рдЯреНрдпреВрди рдХрд░реЗрдВред рдпрд╣ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрди рдЧрддрд┐ рдХреЛ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ
MSVC++ рдореЗрдВ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рд╣рд╛рд░реНрдбрдХреЛрдбреЗрдб рд╕реАрдорд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рдорд╛рдзрд╛рдиред рдпрд╣ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ
рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд╣рд░рд╛рдИ рд╕реЗ рдирд┐рд╣рд┐рдд рдХреЛрд╖реНрдардХ рдореЗрдВ рд░рдЦреЗ рдЧрдП рднрд╛рд╡реЛрдВ рдХреЛ рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдирд╛
рддреНрд░реБрдЯрд┐ C1009, рдФрд░ рддреНрд░реБрдЯрд┐ C1061 рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд╣рд░реЗ рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдореЗрдВ рддреЛрдбрд╝рдирд╛ред
--рдЕрднрд┐рд╕рд░рдг-рд╕реАрдорд╛
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд░рдирдЯрд╛рдЗрдо рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
рдореЙрдбрд▓ рддреНрд░реБрдЯрд┐ рдПрдХрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред 100 рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯред
--рдХрд╡рд░реЗрдЬ
рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╡рд░реЗрдЬ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ, рдЙрдкрдирд╛рдо "--рдХрд╡рд░реЗрдЬ-рд▓рд╛рдЗрди --рдХрд╡рд░реЗрдЬ-рдЯреЙрдЧрд▓
--рдХрд╡рд░реЗрдЬ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛"ред
--рдХрд╡рд░реЗрдЬ-рд▓рд╛рдЗрди
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдмреБрдирд┐рдпрд╛рджреА рдмреНрд▓реЙрдХ рд▓рд╛рдЗрди рдХрд╡рд░реЗрдЬ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛрдб рдбрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХрд╡рд░реЗрдЬ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдб рдкреНрд░рд╡рд╛рд╣ рдкрд░рд┐рд╡рд░реНрддрди рдмрд┐рдВрджреБ рдкрд░ рдХрдерди рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ рд╣реИрдВ
IF рдФрд░ CASE рдХрдердиреЛрдВ рдХреА рд╢рд╛рдЦрд╛рдПрдБ, рд╕рд╛рдорд╛рдиреНрдп рд╡реЗрд░рд┐рд▓реЙрдЧ рд▓рд╛рдЗрди рдХрд╡рд░реЗрдЬ рдХрд╛ рдПрдХ рд╕реБрдкрд░-рд╕реЗрдЯред рдкрд░
рдРрд╕реА рдкреНрд░рддреНрдпреЗрдХ рд╢рд╛рдЦрд╛ рдореЗрдВ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдХрд╛рдЙрдВрдЯрд░ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЕрдВрдд рдореЗрдВ, рдХрд╛рдЙрдВрдЯрд░
рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рдЙрдВрдЯрд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдФрд░ рд▓рд╛рдЗрди рдирдВрдмрд░ рдХреЗ рд╕рд╛рде рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ
рд▓реЙрдЧ/рдХрд╡рд░реЗрдЬ.pl.
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрди рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рдХрд╡рд░реЗрдЬ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ $stop рд╣реЛрддрд╛ рд╣реИ
рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ $stop рд╢рд╛рдЦрд╛рдУрдВ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдЬрд╛рдВрдЪ рд╣реЛрддреА рд╣реИ рдЬреЛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдП /*рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛
рдХрд╡рд░реЗрдЬ_рдмреНрд▓реЙрдХ_рдСрдл*/ рдЯрд┐рдкреНрдкрдгреА рдЙрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдХрд┐рд╕реА рднреА рдХреЛрдб рдкрд░ рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░реЗрдЧреА
рдпрд╛ рдиреАрдЪреЗ, рдпрд╛ /*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрд╡рд░реЗрдЬ_рдСрди/рдХрд╡рд░реЗрдЬ_рдСрдл*/ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╡рд░реЗрдЬ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрдЧрд╛
рдХреЛрдб рдХрд╛ред
рдиреЛрдЯ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЙрди рдмреНрд▓реЙрдХреЛрдВ рдкрд░ рдХреЙрдореНрдмрд┐рдиреЗрдЯреЛрд░рд┐рдпрд▓ (рдиреЙрди-рдХреНрд▓реЙрдХреНрдб) рдмреНрд▓реЙрдХреЛрдВ рдХреА рдЕрдзрд┐рдХ рдЧрд┐рдирддреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдРрд╕реЗ рд╕рд┐рдЧреНрдирд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЬрд┐рдирдореЗрдВ UNOPTFLAT рдЪреЗрддрд╛рд╡рдиреА рдЕрдХреНрд╖рдо рд╣реИ; рд╕рдмрд╕реЗ рд╕рдЯреАрдХ рдХреЗ рд▓рд┐рдП
рдкрд░рд┐рдгрд╛рдо рдХрд╡рд░реЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдЕрдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
--рдХрд╡рд░реЗрдЬ-рдЯреЙрдЧрд▓
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рдЧреНрдирд▓ рдЯреЙрдЧрд▓ рдХрд╡рд░реЗрдЬ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛрдб рдбрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕рд┐рдЧреНрдирд▓ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдмрд┐рдЯ рдореЗрдВ рдПрдХ рдХрд╛рдЙрдВрдЯрд░ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рд╣реИред рдХрд╛рдЙрдВрдЯрд░ рд╣реЛрдЧрд╛
рд╕рдВрдмрдВрдзрд┐рдд рдмрд┐рдЯ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХрд┐рдирд╛рд░реЗ рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ рд╡реГрджреНрдзрд┐ред
рд╕рд┐рдЧреНрдирд▓ рдЬреЛ рдХрд╛рд░реНрдпреЛрдВ рдпрд╛ рдЖрд░рдВрдн/рдЕрдВрдд рдмреНрд▓реЙрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ
рдХрд╡рд░ рдирд╣реАрдВ рд╣реИрдВ. рдЬреЛ рд╕рд┐рдЧреНрдирд▓ рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ, рд╡реЗ рдкреВрд░реНрдгрд╛рдВрдХ рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╛ рдмрд╣реБрдд рд╡рд┐рд╕реНрддреГрдд рд╣реЛрддреЗ рд╣реИрдВ
(>рд╕рднреА рдЖрдпрд╛рдореЛрдВ рдореЗрдВ рдХреБрд▓ рд╕рдВрдЧреНрд░рд╣рдг 256 рдмрд┐рдЯреНрд╕) рднреА рдХрд╡рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдпрджрд┐ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХрдИ рдмрд╛рд░ рддреНрд╡рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ,
рдХрд╡рд░реЗрдЬ рдХреЛ рдЙрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рднреА рддрд╛рддреНрдХрд╛рд▓рд┐рдХрддрд╛рдУрдВ рдореЗрдВ рдЙрд╕ рдмрд┐рдЯ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рд╕рдорд╛рди рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ. рд╡рд┐рднрд┐рдиреНрди рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдЗрдВрд╕реНрдЯреЗрдВрдЯрд┐рдЕрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рдореЙрдбреНрдпреВрд▓ рд╣реИ
рдПрдХ рдЕрд▓рдЧ рдореЙрдбреНрдпреВрд▓ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЕрд▓рдЧ рд╕реЗ рдЧрд┐рдирд╛ рдЬрд╛рдПрдЧрд╛ред
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕рд┐рдЧреНрдирд▓ рдХрд┐рд╕ рдХреНрд▓реЙрдХ рдбреЛрдореЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдиреНрдпреВрдирддрдо-рдмреБрджреНрдзрд┐рдорд╛рди рдирд┐рд░реНрдгрдп рд▓реЗрддрд╛ рд╣реИ
рдкрд░ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рдЙрд╕ рдШрдбрд╝реА рдбреЛрдореЗрди рдореЗрдВ рдХрд┐рдирд╛рд░реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХрд┐рдирд╛рд░реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ
рдпрджрд┐ рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реЛ рдХрд┐ рдХрд┐рдирд╛рд░реЗ рдХреЛ рдкреНрд░рд╛рдкреНрдд рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдХрднреА рдирд╣реАрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣
рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ. рд╢реБрджреНрдз рдкрд░рд┐рдгрд╛рдо рдпрд╣ рд╣реИ рдХрд┐ рдХрд╡рд░реЗрдЬ рдЗрд╕рд╕реЗ рдХрдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдирд┐рд╢рд╛рдиреЛрдВ рдХреЛ рджреЗрдЦрдХрд░ рдХреНрдпрд╛ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдХрд╡рд░реЗрдЬ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реИ
рдбрд┐рдЬрд╝рд╛рдЗрди рдореЗрдВ рдкреНрд░реЛрддреНрд╕рд╛рд╣рди рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ред
рдореЙрдбрд▓ рдХреЗ рд╕реНрдерд┐рд░ рд╣реЛрдиреЗ рдкрд░ рд╕рдордп рд╢реВрдиреНрдп рдХреЗ рдирд┐рдХрдЯ рдХрд┐рдирд╛рд░реЛрдВ рдХреА рдЧрд┐рдирддреА рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ
рдРрд╕реА рдЧрд┐рдирддреА рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд░реАрд╕реЗрдЯ рдЬрд╛рд░реА рдХрд░рдиреЗ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ рд╕рднреА рдХрд╡рд░реЗрдЬ рдХреЛ рд╢реВрдиреНрдп рдХрд░рдиреЗ рдХрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ
рд╡реНрдпрд╡рд╣рд╛рд░.
рдП /*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрд╡рд░реЗрдЬ_рдСрдл/рдСрди */ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди рд╕рд┐рдЧреНрдирд▓реЛрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ
рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рдЯреЙрдЧрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ RAM рдФрд░ рд░рдЬрд┐рд╕реНрдЯрд░ рдлрд╝рд╛рдЗрд▓реЗрдВред
--рдХрд╡рд░реЗрдЬ-рдЕрдВрдбрд░рд╕реНрдХреЛрд░
рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрдХреЗрддреЛрдВ рдХрд╛ рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░реЗрдВред рдЖрдо рддреМрд░ рдкрд░, рдпреЗ рд╕рдВрдХреЗрдд рд╣реЛрддреЗ рд╣реИрдВ
рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реБрдЖред рдпрд╣ рднреА рджреЗрдЦреЗрдВ--рдЯреНрд░реЗрд╕-рдЕрдВрдбрд░рд╕реНрдХреЛрд░ред
--рдХрд╡рд░реЗрдЬ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХрд╡рд░реЗрдЬ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╕рднреА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХрд╡рд░реЗрдЬ рдмрд┐рдВрджреБ
рдПрд╕рд╡реАрдП рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ --assert рдХреЗ рд╕рд╛рде рдЕрд▓рдЧ рд╕реЗ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдерди рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╡рд░реЗрдЬ рдмрд┐рдВрджреБ рдЬреЛрдбрд╝ рджреЗрдЧрд╛
"рдбрд┐рдлрд╝реЙрд▓реНрдЯрдХреНрд▓реЙрдХ":
рдбрд┐рдлреЙрд▓реНрдЯрдХреНрд▓реЙрдХ: рдХрд╡рд░ рдкреНрд░реЙрдкрд░реНрдЯреА (@(possge clk) cyc==3);
-Dрдерд╛=рдореВрд▓реНрдп
рдЕрдиреБрдорддрд┐ рджрд┐рдП рдмрд┐рдирд╛, рджрд┐рдП рдЧрдП рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдкреНрд░рддреАрдХ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред +рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЗ рд╕рдорд╛рди; +рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ
рд╡реЗрд░рд┐рд▓реЙрдЧ рдЯреВрд▓реНрд╕ рдореЗрдВ рдХрд╛рдлреА рдорд╛рдирдХ рд╣реИ рдЬрдмрдХрд┐ -рдбреА рдЬреАрд╕реАрд╕реА рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рд╣реИред
- рджрд╛рдврд╝
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреА рдбрд┐рдмрдЧ рдирд┐рд░реНрдорд┐рдд рдЫрд╡рд┐ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ (рдпрджрд┐ рдЙрдкрд▓рдмреНрдз рд╣реЛ), рдФрд░ рдЕрдзрд┐рдХ рдЖрдВрддрд░рд┐рдХ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
рдЕрднрд┐рдХрдерди ("--рдбреАрдмрдЧ-рдЪреЗрдХ" рдХреЗ рд╕рдорддреБрд▓реНрдп), рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдбрд┐рдмрдЧ рдХрд░рдирд╛ (рд╕рдордХрдХреНрд╖)ред
"--рдбреАрдмрдЧреА 4"), рдФрд░ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдлреЙрд░реНрдо рдбрдВрдк рдлрд╝рд╛рдЗрд▓реЗрдВ ("--рдбрдВрдк-рдЯреНрд░реАрдИ 3" рдХреЗ рдмрд░рд╛рдмрд░)ред
--рдбреАрдмрдЧ-рдЪреЗрдХ
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдбрд┐рдмрдЧ рдмрджрд▓реЗ рдмрд┐рдирд╛, рдЖрдВрддрд░рд┐рдХ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЕрднрд┐рдХрдерди рдЬрд╛рдВрдЪ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
рд╡рд╛рдЪрд╛рд▓рддрд╛. --debug рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрдиреЗ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
--рдбреАрдмреБрдЧреА
--рдбрд┐рдмреБрдЧреА-
рдбреЗрд╡рд▓рдкрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП - рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛред рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрддрд░ рдкрд░ рдЖрдВрддрд░рд┐рдХ рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕реНрддрд░ рд╕реЗрдЯ рдХрд░реЗрдВ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбрд┐рдмрдЧ рд╕реНрддрд░ (1-10) рдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реЗрдЯ рдХрд░реЗрдВ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реНрддрд░ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "--debugi-V3Width 9")ред рдЙрдЪреНрдЪ рд╕реНрддрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЙрддреНрдкрд╛рджрди рдХрд░рддреЗ рд╣реИрдВ
рд╕рдВрджреЗрд╢.
--рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛ рдореВрд▓реНрдп
рдкреНрд░рддреНрдпреЗрдХ рд╡реЗрд░рд┐рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╕рдордп рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рднрд╛рд╖рд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред
рднрд╛рд╖рд╛ рдХрд╛ рдорд╛рди "1364-1995", "1364-2001", "1364-2005", "1800-2005" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
"1800-2009" рдпрд╛ "1800-2012"ред
рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕реЗ рдЬреБрдбрд╝реА рдХреЛрдИ рднреА рднрд╛рд╖рд╛ (рд╡рд┐рднрд┐рдиреНрди + рджреЗрдЦреЗрдВ)редlangрд╡рд┐рд╕реНрддрд╛рд░+
рд╡рд┐рдХрд▓реНрдк) рдХрд╛ рдЙрдкрдпреЛрдЧ --рдбрд┐рдлрд╝реЙрд▓реНрдЯ-рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рднрд╛рд╖рд╛ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
--рдбрд┐рдлрд╝реЙрд▓реНрдЯ-рднрд╛рд╖рд╛ рдзреНрд╡рдЬ рдХреЗрд╡рд▓ рдЙрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реАрдЧреЗрд╕реА рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╣реИ
рд╕рднреА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рднрд╛рд╖рд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ
рдирдП рдХреАрд╡рд░реНрдб, рдпрд╛ рдЙрдкрдпреБрдХреНрдд "`begin_keywords" рдЬреЛрдбрд╝реЗрдВред рд╡рд┐рд░рд╛рд╕рдд рдорд┐рд╢реНрд░рд┐рдд рднрд╛рд╖рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рд▓рд┐рдП,
рд╡рд┐рднрд┐рдиреНрди +langext+ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрджрд┐ рдХреЛрдИ рднрд╛рд╖рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕ рдзреНрд╡рдЬ рдпрд╛ + рджреНрд╡рд╛рд░рд╛langext+ рд╡рд┐рдХрд▓реНрдк, рдлрд┐рд░ рдирд╡реАрдирддрдо
SystemVerilog рднрд╛рд╖рд╛ (IEEE 1800-2012) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
+рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ+рдерд╛=рдореВрд▓реНрдп
+рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ+рдерд╛=рдореВрд▓реНрдп+рд╡рд░рейрежрелрен=value2...
рдкреНрд▓рд╕рд╕ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рджрд┐рдП рдЧрдП рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдкреНрд░рддреАрдХ, рдпрд╛ рдПрдХрд╛рдзрд┐рдХ рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
-рдбреА рдХреЗ рд╕рдорд╛рди; рд╡реЗрд░рд┐рд▓реЙрдЧ рдЯреВрд▓реНрд╕ рдореЗрдВ +рдбрд┐рдлрд╛рдЗрди рдХрд╛рдлреА рдорд╛рдирдХ рд╣реИ рдЬрдмрдХрд┐ -D рдПрдХ рдЙрдкрдирд╛рдо рд╣реИ
рдЬреАрд╕реАрд╕реА рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЗ рд▓рд┐рдП.
--рдбрдореНрдк-рд╡реГрдХреНрд╖
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдбрдВрдкрд┐рдВрдЧ рд╕реНрддрд░ 3 рдХреЗ рд╕рд╛рде .tree рдбрд┐рдмрдЧ рдлрд╝рд╛рдЗрд▓реЗрдВ рд▓рд┐рдЦрдирд╛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ, рдЬреЛ рдбрдВрдк рдХрд░рддрд╛ рд╣реИ
рдорд╛рдирдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░рдг. рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЗрдВрдЯрд░рдирд▓реНрд╕ рджреЗрдЦреЗрдВ
рдирд┐рдпрдорд╛рд╡рд▓реАред --рдбрдВрдк-рдЯреНрд░реА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ --debug рдХреЗ рд╕рд╛рде рд╕рдХреНрд╖рдо рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП "--debug
--рдиреЛ-рдбрдВрдк-рдЯреНрд░реА" рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдбрдВрдк рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдбрд╝реА рд╣реИрдВ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рдирд╣реАрдВ рд╣реИрдВред
--рдбрдВрдк-treei
--рдбрдВрдк-рд╡реГрдХреНрд╖-
рдбреЗрд╡рд▓рдкрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП - рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛред рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрддрд░ рдкрд░ рдЖрдВрддрд░рд┐рдХ рд╡реГрдХреНрд╖ рдбрдВрдкрд┐рдВрдЧ рд╕реНрддрд░ рдХреЛ рд╕реЗрдЯ рдХрд░реЗрдВ
рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбрдВрдкрд┐рдВрдЧ рд╕реНрддрд░ рдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВ
рд╡реГрдХреНрд╖ рдбрдВрдкрд┐рдВрдЧ рд╕реНрддрд░ (рдЬреИрд╕реЗ "--рдбрдВрдк-рдЯреНрд░реАрдЖрдИ-рд╡реА3рдСрд░реНрдбрд░ 9")ред рд▓реЗрд╡рд▓ 0 рдбрдВрдк рдХреЛ рдбрд┐рд╕реЗрдмрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣реИ
"--рдиреЛ-рдбрдВрдк-рдЯреНрд░реА" рдХреЗ рдмрд░рд╛рдмрд░ред рд╕реНрддрд░ 9 рд╣рд░ рдЪрд░рдг рдХреА рдбрдВрдкрд┐рдВрдЧ рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред
-рдИ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рд╕рдВрдХрд▓рд┐рдд рди рдХрд░реЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ 'рдЬреАрд╕реАрд╕реА -рдИ' рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИред рдЖрдЙрдЯрдкреБрдЯ рд▓рд┐рдЦрд╛ рд╣реИ
рдорд╛рдирдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП. рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рд╕реЗ рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рднреА рдЬрд╛рдПрдВрдЧреЗ
рдорд╛рдирдХ рдмрд╛рд╣рд░ред
--рддреНрд░реБрдЯрд┐-рд╕реАрдорд╛
рдЗрддрдиреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдБ рдпрд╛ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рд╕рд╛рдордиреЗ рдЖрдиреЗ рдХреЗ рдмрд╛рдж рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 50.
--рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╝рд╛рдЗрд▓
рдПрдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ. рдЖрдкрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд .cpp рдлрд╝рд╛рдЗрд▓реЗрдВ рднреА рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА
рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЬреЛ рдЖрдкрдХреЗ рд╕рд┐рдореБрд▓реЗрд╢рди рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд▓реВрдк рд▓рд╛рдЧреВ рдХрд░рддреА рд╣реИред
-F рдкрдЯреНрдЯрд┐рдХрд╛
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдкрдврд╝реЗрдВ, рдФрд░ рдХрд╛рд░реНрдп рдХрд░реЗрдВ рдЬреИрд╕реЗ рдХрд┐ рдЙрд╕рдХреЗ рдЕрдВрджрд░ рдХрд╛ рд╕рднреА рдкрд╛рда рдХрдорд╛рдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рд▓рд╛рдЗрди рдкреИрд░рд╛рдореАрдЯрд░. рдХреЛрдИ рднреА рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рдпреБрдХреНрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛрддрд╛ рд╣реИ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓. рдпрд╣ рднреА рджреЗрдЦреЗрдВ -рдПрдл. рдиреЛрдЯ -рдПрдл рд╡реЗрд░рд┐рд▓реЙрдЧ рдЯреВрд▓реНрд╕ рдореЗрдВ рдХрд╛рдлреА рдорд╛рдирдХ рд╣реИред
-f рдкрдЯреНрдЯрд┐рдХрд╛
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдкрдврд╝реЗрдВ, рдФрд░ рдХрд╛рд░реНрдп рдХрд░реЗрдВ рдЬреИрд╕реЗ рдХрд┐ рдЙрд╕рдХреЗ рдЕрдВрджрд░ рдХрд╛ рд╕рднреА рдкрд╛рда рдХрдорд╛рдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рд▓рд╛рдЗрди рдкреИрд░рд╛рдореАрдЯрд░. рдХреЛрдИ рднреА рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рдпрд╣ рд╕рднреА рджреЗрдЦреЗрдВ
-рдПрдлред рдиреЛрдЯ -f рд╡реЗрд░рд┐рд▓реЙрдЧ рдЯреВрд▓реНрд╕ рдореЗрдВ рдХрд╛рдлреА рдорд╛рдирдХ рд╣реИред
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ // рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдкрдВрдХреНрддрд┐ рдХреЗ рдЕрдВрдд рддрдХ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдИ рднреА $VAR,
$(VAR), рдпрд╛ ${VAR} рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
--рдЬреАрдбреАрдмреА
рдПрдХ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ GDB (рдпрд╛ VERILATOR_GDB рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░) рдХреЗ рдиреАрдЪреЗ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЪрд▓рд╛рдПрдБ
рдореВрд▓реНрдп) рд╕рддреНрд░ред рдпрд╣ рднреА рджреЗрдЦреЗрдВ --gdbbt.
--gdbbt
рдпрджрд┐ --рдбреАрдмрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ, рддреЛ рдЬреАрдбреАрдмреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдиреАрдЪреЗ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЪрд▓рд╛рдПрдВ рдФрд░ рдмреИрдХрдЯреНрд░реЗрд╕ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ
рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдкрд░, рддреБрд░рдВрдд GDB рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред --рдбреАрдмрдЧ рдХреЗ рдмрд┐рдирд╛ рдпрд╛ рдпрджрд┐ рдЬреАрдбреАрдмреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ,
рдЗрд╕ рдЭрдВрдбреЗ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдмреИрдХрдЯреНрд░реЗрд╕ рдХреЗ рдЖрд╕рд╛рди рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИ; рдЕрдиреНрдпрдерд╛
--gdb рдзреНрд╡рдЬ рджреЗрдЦреЗрдВ.
--рдорджрдж
рдпрд╣ рд╕рдВрджреЗрд╢ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддрд╛ рд╣реИред
-IрджреАрд░
рдлрд┐рд░ рдорд┐рд▓реЗрдВрдЧреЗред
--рдЕрдЧрд░-рдЧрд╣рд░рд╛рдИ рдореВрд▓реНрдп
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рд╡рд╣ рдЧрд╣рд░рд╛рдИ рд╕реЗрдЯ рдХрд░реЗрдВ рдЬрд┐рд╕ рдкрд░ IFDEPTH рдЪреЗрддрд╛рд╡рдиреА рд╕рдХреНрд░рд┐рдп рд╣реЛрдЧреА, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ 0
рдЬреЛ рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддрд╛ рд╣реИ.
+рдЗрдВрджрд┐рд░+рджреАрд░
рдлрд┐рд░ рдорд┐рд▓реЗрдВрдЧреЗред
--рдЗрдирд╣рд┐рдмрд┐рдЯ-рд╕рд┐рдо
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЛ рд╕рдХреНрд╖рдо рдФрд░ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ "рдЗрдирд╣рд┐рдмрд┐рдЯрд╕рд┐рдо(рдмреВрд▓)" рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдПрдВред
рдпрд╣ рдКрдкрд░реА рд╕реНрддрд░ рдХреЗ рдЯреЗрд╕реНрдЯрдмреЗрдВрдЪ рдХреЛ рдЙрди рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИрдВ
SystemC рдореЙрдбреНрдпреВрд▓ рдХреЛ рдкреБрди: рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдпрд╛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛, рд╕рд┐рдореБрд▓реЗрд╢рди рджрд┐рдпрд╛ рдЧрдпрд╛
рддреНрд╡рд░рд┐рддред
--рдЗрдирд▓рд╛рдЗрди-рдорд▓реНрдЯреА рдореВрд▓реНрдп
рдореЙрдбреНрдпреВрд▓ рдХреА рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рдХреЛ рдЯреНрдпреВрди рдХрд░реЗрдВред 2000 рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ 2000 рддрдХ рдирдпрд╛
рдЗрд╕ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдиреЗ рдкрд░ рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдСрдкрд░реЗрд╢рди рдХреЛ рдореЙрдбрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдЧрд╛, рдореЙрдбреНрдпреВрд▓ рдЗрдирд▓рд╛рдЗрди рдирд╣реАрдВ рд╣реИред рдмрдбрд╝реЗ рдорд╛рди, рдпрд╛ рдорд╛рди <= 1
рд╣рд░ рдЪреАрдЬрд╝ рдХреЛ рдЗрдирд▓рд╛рдЗрди рдХрд░ рджреЗрдЧрд╛, рд╕рдВрдХрд▓рди рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧреЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рддреЗрдЬрд╝
рд░рдирдЯрд╛рдЗрдо. рдмрд╣реБрдд рдЫреЛрдЯреЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рд╡реЗ рд╣рдореЗрд╢рд╛ рд░рд╣реЗрдВрдЧреЗ
рдпрджрд┐ рдЕрдиреБрдорддрд┐ рд╣реЛ рддреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░реЗрдВред
-рдПрд▓рдбреАрдПрдлрдПрд▓рдЬреАрдПрд╕ рдЭрдВрдбреЗ
рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдореЗрдХрдлрд╝рд╛рдЗрд▓реНрд╕ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реА рд▓рд┐рдВрдХрд░ рдлрд╝реНрд▓реИрдЧ рдЬреЛрдбрд╝реЗрдВред рдЬрдм рдореЗрдХ рдкрд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдЗрдиреНрд╣реЗрдВ рдкреНрд░рд╛рдердорд┐рдХ рдХреЗ рдмрд╛рдж *C++ рд▓рд┐рдВрдХрд░ (ld) рдХреЛ рдкрд╛рд╕ рдХрд░ рджреА рдЬрд╛рдПрдЧреА
рдлрд╝рд╛рдЗрд▓ рд▓рд┐рдВрдХ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ. рдЗрд╕ рдЭрдВрдбреЗ рдХреЛ -LDFLAGS рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕рдХрд╛ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдирд╛рдо рд╣реИ
рд╕рд┐рдореБрд▓реЗрдЯрд░; рдЗрд╕реЗ рдПрд▓рдбреАрдПрд▓рдЖрдИрдмреАрдПрд╕ рдХрд╣рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рд╡реИрд░рд┐рдПрдмрд▓ рд╣реИ
рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ. (рдореЗрдХ рдореЗрдВ, LDFLAGS рдкрд╣рд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдкрд╣рд▓реЗ рд╣реИ, LDLIBS рдмрд╛рдж рдореЗрдВред -L
рд▓рд╛рдЗрдмреНрд░реЗрд░реАрдЬрд╝ рдХреЛ рдореЗрдХ рд╡реЗрд░рд┐рдПрдмрд▓ LDLIBS рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, LDFLAGS рдореЗрдВ рдирд╣реАрдВред)
--рднрд╛рд╖рд╛: рд╣рд┐рдиреНрджреА рдореВрд▓реНрдп
рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдФрд░ рдкрд╣рд▓реЗ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЗ рд▓рд┐рдП "--рдбрд┐рдлреЙрд▓реНрдЯ-рд▓реИрдВрдЧреЗрдЬ" рдХрд╛ рдПрдХ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреА
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгред
+рд▓рд┐рдмреЗрдХреНрд╕реНрдЯ+ext+ext...
рдореЙрдбреНрдпреВрд▓ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдпрджрд┐ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓
x рд╕рдВрджрд░реНрднрд┐рдд рд╣реИ, рдореЗрдВ рджреЗрдЦреЗрдВ x.ext. рдиреЛрдЯ +libext+ рд╡реЗрд░рд┐рд▓реЙрдЧ рдореЗрдВ рдХрд╛рдлреА рдорд╛рдирдХ рд╣реИ
рдФрдЬрд╛рд░ред .v рдФрд░ .sv рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯред
--рдХреЗрд╡рд▓-рд▓рд┐рдВрдЯ
рдХреЗрд╡рд▓ рд▓рд┐рдВрдЯ рдЙрд▓реНрд▓рдВрдШрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ, рдХреЛрдИ рдЕрдиреНрдп рдЖрдЙрдЯрдкреБрдЯ рди рдмрдирд╛рдПрдВред
рдЖрдк рдЙрди рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП -рд╡реЙрд▓ рд╡рд┐рдХрд▓реНрдк рднреА рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╢реИрд▓реАрдЧрдд рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ
рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ.
рдпрджрд┐ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ рддреЛ --bbox-sys рдФрд░ рднреА рджреЗрдЦреЗрдВ
--рдмреАрдмреЙрдХреНрд╕-рдЕрдирд╕рдЕрдк рд╡рд┐рдХрд▓реНрдкред
--рдПрдордПрдордбреА
.d рдирд┐рд░реНрднрд░рддрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдЬреАрд╕реАрд╕реА -рдПрдордПрдордбреА рд╡рд┐рдХрд▓реНрдкред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --no-MMD рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
--рдПрдордкреА
--MMD рдХреЗ рд╕рд╛рде .d рдирд┐рд░реНрднрд░рддрд╛ рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рддреЗ рд╕рдордп, рдирдХрд▓реА рд▓рдХреНрд╖реНрдп рдмрдирд╛рдПрдВред рдЬреАрд╕реАрд╕реА-рдПрдордкреА рдХреЗ рд╕рдорд╛рди
рд╡рд┐рдХрд▓реНрдк.
--рдорджрд┐рд░ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА
рдореЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рд╕рднреА рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЗрдВ рд░рдЦреА рдЬрд╛рдПрдВрдЧреА
рдЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ. рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ "obj_dir" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ рдпрджрд┐
рдпрд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рдФрд░ рдореВрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдБ рдореМрдЬреВрдж рд╣реИрдВ; рдЕрдиреНрдпрдерд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ Mdir рдмрдирд╛рдПрдБ
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ.
--рдореЙрдб-рдЙрдкрд╕рд░реНрдЧ рд╢реАрд░реНрд╖рдирд╛рдо
рд╕рднреА рдирд┐рдЪрд▓реЗ рд╕реНрддрд░ рдХреА рдХрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдкрд╣рд▓реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрд╕реА рдХреЗ рд╕рдорд╛рди рд╣реИ
--рдЙрдкрд╕рд░реНрдЧ.
--рдиреЛ-рдХреНрд▓рдХ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдШрдбрд╝реА рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХреЗрдВред рджреЗрдЦреЗрдВ "--рдХреНрд▓рдХ"ред
--рдиреЛ-рдкрд┐рди64
"--рдкрд┐рдВрд╕-рдмреАрд╡реА 33" рдХреЗ рд▓рд┐рдП рдкрд┐рдЫрдбрд╝рд╛ рд╕рдВрдЧрдд рдЙрдкрдирд╛рдоред
--рдиреЛ-рд╕реНрдХрд┐рдк-рд╕рдорд╛рди
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдпрджрд┐ рд╕рднреА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рддреЛ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдЫреЛрдбрд╝рдирд╛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддрд╛ рд╣реИ
рд╕рдорд╛рди, рдФрд░ рд╕рднреА рдЖрдЙрдЯрдкреБрдЯ рдлрд╝рд╛рдЗрд▓реЗрдВ рдирдИ рддрд╛рд░реАрдЦреЛрдВ рдХреЗ рд╕рд╛рде рдореМрдЬреВрдж рд╣реИрдВред
+рдиреЛрдЯрд┐рдВрдЧрдЪреЗрдХ
рдЕрдиреНрдп рд╕рд┐рдореБрд▓реЗрдЯрд░реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
-O0 рдореЙрдбрд▓ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред
-O3 рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рдпрдВ рдЙрддреНрдкрдиреНрди рдХрд┐рдП рдЧрдП рдХреЛрдб рдХреЗ рд▓рд┐рдП рдзреАрдореЗ рдЕрдиреБрдХреВрд▓рди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ (рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд)ред
"-CFLAGS -O3" рдЬреЛ C рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред -O3 рд╕рд┐рдореБрд▓реЗрд╢рди рдХреЛ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рд╕рдВрдХрд▓рди рд╕рдордп рдХреА рдХреАрдордд рдкрд░ рд░рдирдЯрд╛рдЗрдоред рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ --inline-mult -1 рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
-OрдЕрдиреБрдХреВрд▓рди-рдкрддреНрд░
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде, рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдХреВрд▓рди рдХреЛ рд╕рдХреНрд╖рдо рдпрд╛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ
рдкрд╛рд░рд┐рдд рдкрддреНрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЪрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдПрдХ рдЫреЛрдЯрд╛ рдЕрдХреНрд╖рд░ рдПрдХ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддрд╛ рд╣реИ, рдФрд░
рдЕрдкрд░ рдХреЗрд╕ рд▓реЗрдЯрд░ рдЗрд╕реЗ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╣реИ; рд╕реНрд░реЛрдд рджреЗрдЦреЗрдВ
-O рдЕрдХреНрд╖рд░реЛрдВ рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдХреА рд╕рдВрд╕реНрдХрд░рдг-рдирд┐рд░реНрднрд░ рдореИрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдбред
-рдУ
рдпрджрд┐ --exe рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдирд┐рд░реНрдорд┐рдд рдЕрдВрддрд┐рдо рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЗ рд▓рд┐рдП рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ
--рдЙрдкрд╕рд░реНрдЧ рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИред
--рдХреЛрдИ-рдСрд░реНрдбрд░-рдШрдбрд╝реА-рд╡рд┐рд▓рдВрдм рдирд╣реАрдВ
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рджреЗрд░реА рд╕реЗ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдШрдбрд╝реА рдХреЗ рдСрд░реНрдбрд░ рдХреЗ рд▓рд┐рдП рдмрдЧ рдлрд┐рдХреНрд╕ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ
рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯред рдЗрд╕ рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рддрднреА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЬрд╛рдПред
--рдЖрдЙрдЯрдкреБрдЯ-рд╡рд┐рднрд╛рдЬрди рдмрд╛рдЗрдЯреНрд╕
рдЖрдЙрдЯрдкреБрдЯ .cpp/.sp рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХрд╛рдзрд┐рдХ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдЬрдм рдПрдХ C++ рдлрд╝рд╛рдЗрд▓
рд╕рдВрдЪрд╛рд▓рди рдХреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдиреЗ рдкрд░, рдЕрдЧрд▓реА рдмрд╛рд░ рдПрдХ рдирдИ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЬрд╛рдПрдЧреА
рдХрд╛рд░реНрдп рд╕реАрдорд╛. рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрд┐рд╕реА рднреА рдзреАрдореА рджрд┐рдирдЪрд░реНрдпрд╛ рдХреЛ __рдзреАрдореА рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕рд╕реЗ рд╕рдВрдХрд▓рди рдореЗрдВ рддреЗрдЬреА рдЖрддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдзреАрдореА рджрд┐рдирдЪрд░реНрдпрд╛ рдкрд░ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ,
рдФрд░ рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕рдорд╛рдирд╛рдВрддрд░ рдорд╢реАрдиреЛрдВ рдкрд░ рд╕рдВрдХрд▓рд┐рдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВред --рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдХреЗрд╡рд▓ рдорд╛рдореВрд▓реА рдкреНрд░рднрд╛рд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред 3.3GHz Opteron рдкрд░ GCC 2 рдХреЗ рд╕рд╛рде,
--рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ 20000 рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓рдЧрднрдЧ рдПрдХ-рдорд┐рдирдЯ-рд╕рдВрдХрд▓рди рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реЛ рдЬрд╛рдПрдЧрд╛
рдорд╛рддреНрд░рд╛ред
--рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ-рд╕реАрдлрдВрдХреНрд╕ рдмрдпрд╛рди
рдЖрдЙрдЯрдкреБрдЯ .cpp/.sp рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдХрдИ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред
рдЬрдм рдХреЛрдИ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдлрд╝рдВрдХреНрд╢рди рд╕рдВрдЪрд╛рд▓рди рдХреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди
рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред --рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ рдХреЗ рд╕рд╛рде, рдпрд╣ рдЬреАрд╕реАрд╕реА рдХреЛ рддреЗрдЬреА рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░реЗрдЧрд╛
рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЫреЛрдЯреА рд╣рд╛рдирд┐ рдЬреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдореВрд▓реНрдпреЛрдВ рдореЗрдВ рдХрдореА рдХреЗ рд╕рд╛рде рдмрджрддрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐
рдпрд╣ рд╡рд┐рдХрд▓реНрдк --рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ рд╕реЗ рдЗрд╕ рдЕрд░реНрде рдореЗрдВ рдЕрдзрд┐рдХ рдордЬрдмреВрдд рд╣реИ рдХрд┐ --рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛
рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВред
--рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ-рд╕реАрдЯреНрд░реЗрд╕ рдмрдпрд╛рди
рдЖрдЙрдЯрдкреБрдЯ .cpp/.sp рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЯреНрд░реЗрд╕ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдПрдХрд╛рдзрд┐рдХ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ
рдХрд╛рд░реНрдп. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ --рдЖрдЙрдЯрдкреБрдЯ-рд╕реНрдкреНрд▓рд┐рдЯ-рд╕реАрдлрдВрдХреНрд╕ рдЬреИрд╕реА рд╣реА рд╕реЗрдЯрд┐рдВрдЧ рд╣реЛрддреА рд╣реИред
-рдкреА -рдИ рдХреЗ рд╕рд╛рде, рдЬреАрд╕реАрд╕реА-рдкреА рдзреНрд╡рдЬ рдХреЗ рд╕рдорд╛рди, `рд▓рд╛рдЗрди рдорд╛рд░реНрдХрд░ рдФрд░ рд░рд┐рдХреНрдд рд▓рд╛рдЗрдиреЛрдВ рдХреА рдкреАрдврд╝реА рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред
--рдкрд┐рдиреНрд╕64
"--рдкрд┐рдВрд╕-рдмреАрд╡реА 65" рдХреЗ рд▓рд┐рдП рдкрд┐рдЫрдбрд╝рд╛ рд╕рдВрдЧрдд рдЙрдкрдирд╛рдоред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ 65 рд╣реИ, 64 рдирд╣реАрдВред
--рдкрд┐рдиреНрд╕-рдмреА.рд╡реА рдЪреМрдбрд╛рдИ
рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдЙрд╕рдХреЗ рдмрд░рд╛рдмрд░ рдХреЗ SystemC рдЗрдирдкреБрдЯ/рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдЪреМрдбрд╛рдИ рдмрд┐рдЯреНрд╕ рдЪреМрдбрд╝реЗ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП
uint32/vluint64_t рдХреЗ рдмрдЬрд╛рдп sc_bv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ "--рдкрд┐рдВрд╕-рдмреАрд╡реА 65" рд╣реИред рд╕рдВрд╕реНрдХрд░рдгреЛрдВ
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ 3.671 рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ "--рдкрд┐рдВрд╕-рдмреАрд╡реА 33"ред рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ sc_bv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЙрддрдирд╛ рд╣реА рдмреБрд░рд╛ рд╣реЛрдЧрд╛
рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП. рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "/*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ sc_bv*/" рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
sc_bv рд╣реЛ.
--рдкрд┐рдВрд╕-рдПрд╕рд╕реА-рдпреВрдЗрдВрдЯ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ 2 рдмрд┐рдЯ рд╕реЗ рдЕрдзрд┐рдХ рдЪреМрдбрд╝рд╛рдИ рд╡рд╛рд▓реЗ SystemC рдЗрдирдкреБрдЯ/рдЖрдЙрдЯрдкреБрдЯ рдХреЛ sc_uint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
2 рдФрд░ 64 рдХреЗ рдмреАрдЪред рдЬрдм рдЗрд╕реЗ "--рдкрд┐рдВрд╕-рдПрд╕рд╕реА-рдмрд┐рдЧреБрдЗрдВрдЯ" рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛрддрд╛ рд╣реИ
sc_uint рдореЗрдВ 2 рдФрд░ 64 рдХреЗ рдмреАрдЪ рдФрд░ sc_biguint рдореЗрдВ 65 рдФрд░ 512 рдХреЗ рдмреАрдЪ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
--рдкрд┐рди-рдПрд╕рд╕реА-рдмрд┐рдЧреБрдЗрдВрдЯ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ 65 рдмрд┐рдЯ рд╕реЗ рдЕрдзрд┐рдХ рдЪреМрдбрд╝рд╛рдИ рд╡рд╛рд▓реЗ SystemC рдЗрдирдкреБрдЯ/рдЖрдЙрдЯрдкреБрдЯ рдХреЛ sc_biguint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
65 рдФрд░ 512 рдХреЗ рдмреАрдЪ, рдФрд░ sc_bv 513 рд╕реЗ рдКрдкрд░ рдХреА рдУрд░ред рдХреЗ рд╕рд╛рде рд╕рдВрдпреБрдХреНрдд рд╣реЛрдиреЗ рдкрд░
"--pins-sc-uint" рд╕рдВрдпреЛрдЬрди, рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк sc_uint рдХрд╛ рдЙрдкрдпреЛрдЧ 2 рдФрд░ 64 рдХреЗ рдмреАрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░
sc_biguint рдХрд╛ рдЙрдкрдпреЛрдЧ 65 рдФрд░ 512 рдХреЗ рдмреАрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
--рдкрд┐рдВрд╕-рдпреВрдЗрдВрдЯ8
SystemC рдЗрдирдкреБрдЯ/рдЖрдЙрдЯрдкреБрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдЬреЛ --pins-bv рд╕реЗрдЯрд┐рдВрдЧ рдФрд░ 8 рд╕реЗ рдЫреЛрдЯреЗ рд╣реЛрддреЗ рд╣реИрдВ
рдмрд┐рдЯреНрд╕ рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рдХреЛ uint8_t рдХреЗ рдмрдЬрд╛рдп uint32_t рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕реА рддрд░рд╣ 9-16 рдЪреМрдбрд╝рд╛рдИ рдХреЗ рдкрд┐рди рднреА рд▓рдЧреЗрдВрдЧреЗ
uint16_t рдХреЗ рдмрдЬрд╛рдп uint32_t рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
--рдкрд╛рдЗрдк-рдлрд╝рд┐рд▓реНрдЯрд░ рдЖрджреЗрд╢
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЖрд╡рд╢реНрдпрдХ рдФрд░ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╣реЛред рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрдорд╛рдВрдб рдХреЛ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛
рд╕рдмрдкреНрд░реЛрд╕реЗрд╕ рдкрд╛рдЗрдк, рдХрдорд╛рдВрдб рдХреЛ рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдкрд░ рдХрд╕реНрдЯрдо рд╕рдВрдкрд╛рджрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ.
рдкреНрд░рддреНрдпреЗрдХ рд╡реЗрд░рд┐рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЛ рдЙрдкрдкреНрд░реЛрд╕реЗрд╕ рдореЗрдВ рднреЗрдЬ рджреЗрдЧрд╛ред
'read_verilog' рдХреЗ рд╕рд╛рде stdin "'. рдлрд╝рд┐рд▓реНрдЯрд░ рддрдм рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдХреЛрдИ рднреА рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдЬреЛ рд╡рд╣ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдФрд░ рдирдИ рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕реНрдЯрдбрдЖрдЙрдЯ рдкрд░ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЛ рд╡рд╛рдкрд╕ рдлрд╝реАрдб рдХрд░рддрд╛ рд╣реИ
'рд╕рд╛рдордЧреНрд░реА-рд▓рдВрдмрд╛рдИ' рдХреЗ рд╕рд╛рде. рдлрд╝рд┐рд▓реНрдЯрд░ рд╕реЗ stderr рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд╝реАрдб рд╣реЛрддрд╛ рд╣реИ
stdout рдФрд░ рдпрджрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ рдЧреИрд░-рд╢реВрдиреНрдп рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддрд╛ рд╣реИ рддреЛ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рджреЗрдЦреЗрдВ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП t/t_pipe_filter рдкрд░реАрдХреНрд╖рдгред
рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕реНрдб рдЖрдЙрдЯрдкреБрдЯ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП -E рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
рдЙрдкрд╕рд░реНрдЧ рд╢реАрд░реНрд╖рдирд╛рдо
рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рд╡рд░реНрдЧ рдФрд░ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ V рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ
--рдЯреЙрдк-рдореЙрдбреНрдпреВрд▓ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдирд╛рдо, рдпрд╛ V рдкрд╣рд▓реЗ рд╡реЗрд░рд┐рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ
рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред
--рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓-cfuncs
рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓рд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЧрдП C++ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВред рдХрд╛рд░реНрдп рд╣реЛрдВрдЧреЗ
рдПрдХ "рдмреБрдирд┐рдпрд╛рджреА" рдХрдерди, рдЖрдо рддреМрд░ рдкрд░ рдПрдХ рд╣рдореЗрд╢рд╛ рдмреНрд▓реЙрдХ рдпрд╛ рддрд╛рд░ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдирддрдо рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ
рдХрдердиред (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛ ~5% рддрдХ рдзреАрдорд╛ рдХрд░ рджреЗрдЧрд╛ред) рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛,
рдлрд╝рдВрдХреНрд╢рди рдирд╛рдо рдХреЛ рд╡реЗрд░рд┐рд▓реЙрдЧ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмреЗрд╕рдирд╛рдо рдФрд░ рд▓рд╛рдЗрди рдирдВрдмрд░ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛
рдХрд╛ рдмрдпрд╛рди рдЖрдпрд╛. рдпрд╣ gprof рдпрд╛ oprofile рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдХреЛ рд╕рд╣рд╕рдВрдмрджреНрдз рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рдореВрд▓ рд╡реЗрд░рд┐рд▓реЙрдЧ рд╕реНрд░реЛрдд рдХрдердиред
--рдирд┐рдЬреА
--рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреЗ рд╡рд┐рдкрд░реАрддред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИ; рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдкрд╢реНрдЪрдЧрд╛рдореА рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИред
--рд╕рд╣ рд▓реЛрдХ
рдпрд╣ рдХреЗрд╡рд▓ рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдбрд┐рдмрдЧ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╣реИред рдЗрд╕рдХреЗ рдкреНрд░рдпреЛрдЧ рд╕реЗ рдЧрд▓рдд рдЕрдиреБрдХрд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЙрддреНрдкрдиреНрди рдШрдбрд╝рд┐рдпрд╛рдБ.
рд╕рднреА рд╕рд┐рдЧреНрдирд▓ рдФрд░ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдШреЛрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рд╕рд┐рдЧреНрдирд▓ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛
рдпрджрд┐ рд╕рднреА рд╕рд┐рдЧреНрдирд▓реЛрдВ рдореЗрдВ /*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдкрдмреНрд▓рд┐рдХ*/ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдФрд░ рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рд╣реЛред рдпреЗ рднреА рдкрд▓рдЯреЗрдЧрд╛
рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рдмрдВрдж рдХрд░реЗрдВ рдЬреИрд╕реЗ рдХрд┐ рд╕рднреА рдореЙрдбреНрдпреВрд▓ рдореЗрдВ /*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ public_module*/ рдерд╛, рдЬрдм рддрдХ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рди рд╣реЛ
рдЗрд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ /*рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЗрдирд▓рд╛рдЗрди_рдореЙрдбреНрдпреВрд▓* рдХреЗ рд╕рд╛рде рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЧрдпрд╛/.
--рд░рд┐рдкреЛрд░реНрдЯ-рдЕрдирдСрдкреНрдЯрдлреНрд▓реИрдЯ
UNOPTFLAT рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдирд┐рджрд╛рдиред рдЗрд╕рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд▓реВрдк рдХреЗ рд▓рд┐рдП 10 рд╕рдмрд╕реЗ рдЪреМрдбрд╝реЗ рд▓реВрдк рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
рд▓реВрдк рдореЗрдВ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕, рдФрд░ рд▓реВрдк рдореЗрдВ 10 рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рд╕рд╛рд░рд┐рдд рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ред рдпреЗ
рд▓реВрдк рдХреЛ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдореНрдореАрджрд╡рд╛рд░реЛрдВ рдХреЛ рдХрдИ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдВрдкреВрд░реНрдг рдордЬрдмреВрддреА рд╕реЗ рдЬреБрдбрд╝реЗ рдШрдЯрдХреЛрдВ рдХреА рдПрдХ рдЧреНрд░рд╛рдлрд╝рд╡рд┐рдЬрд╝ рдбреАрдУрдЯреА рдлрд╝рд╛рдЗрд▓ рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ
рдкреНрд░рддреНрдпреЗрдХ рд▓реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ рд╕реНрд░реЛрдд рдХреЗ рднреАрддрд░ред рдЪрд╛рд╣реЗ рдХреБрдЫ рднреА рд╣реЛ рдЗрд╕рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
--рдбрдВрдк-рдЯреНрд░реА рд╕реЗрдЯ рд╣реИред рдРрд╕реЗ рдЧреНрд░рд╛рдлрд╝ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрдбрд╝рд╛.
рдбреАрдУрдЯреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рдЙрдирдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдХрдорд╛рдВрдб рдореМрдЬреВрдж рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдбреЙрдЯ
рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рд┐рдВрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдбреАрдУрдЯреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреАрдбреАрдПрдл рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
рдбреЙрдЯ-рдЯреАрдкреАрдбреАрдПрдл-рдУ Vt_unoptflat_simple_2_35_unoptflat.dot
DOT рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдПрдХ рдкреАрдбреАрдПрдл Vt_unoptflat_simple_2_35_unoptflat.dot.pdf рдЙрддреНрдкрдиреНрди рд╣реЛрдЧрд╛ред
- рдмрдЪрд╛рдиреЗ рдпреЛрдЧреНрдп
рдЬрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдореЙрдбрд▓ рдореЗрдВ рд╕реЗрд╡ рдФрд░ рд░рд┐рд╕реНрдЯреЛрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛрдб рдХреЛ рддрдм VerilatedSerialize рдпрд╛ VerilatedDeserialze рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛
рдЙрддреНрдкрдиреНрди рдореЙрдбрд▓ рдФрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЗрдЯрд╛ рдкрд░ << рдпрд╛ >> рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛
рд╕рд╣реЗрдЬреЗ/рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
рд╢реВрдиреНрдп рд╕реЗрд╡_рдореЙрдбрд▓(рд╕реНрдерд┐рд░рд╛рдВрдХ рдЪрд╛рд░* рдлрд╝рд╛рдЗрд▓ рдирд╛рдо) {
VerilatedSave рдУрдПрд╕;
рдУрдПрд╕.рдУрдкрди(рдлрд╝рд╛рдЗрд▓рдирд╛рдордИрдкреА);
рдУрдПрд╕ << рдореБрдЦреНрдп_рд╕рдордп; // рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛрдб рдХреЛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдЖрджрд┐ рд╕рд╣реЗрдЬрдирд╛ рд╣реЛрдЧрд╛
рдУрдПрд╕ << *рдЯреЙрдк;
}
рд╢реВрдиреНрдп рдкреБрдирд░реНрд╕реНрдерд╛рдкрдирд╛_рдореЙрдбрд▓(рд╕реНрдерд┐рд░рд╛рдВрдХ рдЪрд╛рд░* рдлрд╝рд╛рдЗрд▓ рдирд╛рдо) {
VerilatedRestore рдУрдПрд╕;
рдУрдПрд╕.рдУрдкрди(рдлрд╝рд╛рдЗрд▓рдирд╛рдордИрдкреА);
рдУрдПрд╕ >> рдореБрдЦреНрдп_рд╕рдордп;
рдУрдПрд╕ >> *рдЯреЙрдк;
}
--рдЕрдиреБрд╕реВрдЪрд┐рдд рдЬрд╛рддрд┐
SystemC рдЖрдЙрдЯрдкреБрдЯ рдореЛрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ; рдпрд╣ рднреА рджреЗрдЦреЗрдВ --cc.
--рдЖрдБрдХрдбрд╝реЗ
{prefix}__stats.txt рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рдЖрдБрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдбрдВрдк рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИред
--рдЖрдБрдХрдбрд╝реЗ-рд╡рд░реНрд╕
рдЖрдХрд╛рд░ (рд╕рд╛рджрд╛) рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рднреА рдЪрд░реЛрдВ рдХреА рд╕реВрдЪреА рд╕рд╣рд┐рдд рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЖрдБрдХрдбрд╝реЗ рдмрдирд╛рддрд╛ рд╣реИ
--рдЖрдБрдХрдбрд╝реЗ рд╕рд┐рд░реНрдл рдПрдХ рдЧрд┐рдирддреА рджреЗрддрд╛ рд╣реИ)ред рджреЗрдЦреЗрдВ--рдЖрдБрдХрдбрд╝реЗ, рдЬреЛ рдЗрд╕рд╕реЗ рдирд┐рд╣рд┐рдд рд╣реИред
-sv рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ SystemVerilog рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП; "--рднрд╛рд╖рд╛" рдХреЗ рд╕рдорддреБрд▓реНрдп
1800-2005"ред рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИ
рдЕрдиреНрдп рд╕рд┐рдореБрд▓реЗрдЯрд░.
+systemverilogext+ext
"+1800-2012ext+" рдХрд╛ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреАext.
--рд╢реАрд░реНрд╖-рдореЙрдбреНрдпреВрд▓ рд╢реАрд░реНрд╖рдирд╛рдо
рдЬрдм рдЗрдирдкреБрдЯ рд╡реЗрд░рд┐рд▓реЙрдЧ рдореЗрдВ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдореЙрдбреНрдпреВрд▓ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХрд╛ рд╡реЗрд░рд┐рд▓реЙрдЧ рдореЙрдбреНрдпреВрд▓ рд╢реАрд░реНрд╖ рдмрди рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ if --prefix рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ
рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдПрдХ рд╢реАрд░реНрд╖ рд╡рд╛рд▓реЗ рдорд╛рдирдХ рдбрд┐рдЬрд╝рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
--рдЯреНрд░реЗрд╕
рдореЙрдбрд▓ рдореЗрдВ рд╡реЗрд╡рдлреЙрд░реНрдо рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдХреЛрдб рдЬреЛрдбрд╝рддрд╛ рд╣реИред рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛
{prefix}__Trace*.cpp рдлрд╝рд╛рдЗрд▓реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА
verilated_vcd_sc.cpp (SystemC рдЯреНрд░реЗрд╕ рдХреЗ рд▓рд┐рдП) рдпрд╛ verilated_vcd_c.cpp (рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рд╕рдВрдХрд▓рд┐рдд рдФрд░ рд▓рд┐рдВрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдпрджрд┐ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЬреЗрдирд░реЗрдЯреЗрдб рдореЗрдХрдлрд╝рд╛рдЗрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рдпреЗ рд╣реЛрдВрдЧреЗ
рдЖрдкрдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рд▓рдХреНрд╖реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред рдпрджрд┐ рдЖрдк рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдореЗрдХрдлрд╝рд╛рдЗрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк
рдЗрдиреНрд╣реЗрдВ рдЖрдкрдХреА рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред
рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдХреБрдЫ рдЫреЛрдЯреЗ рдкреНрд░рджрд░реНрд╢рди рдиреБрдХрд╕рд╛рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА
рдореЙрдбрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рддрд░рдВрдЧрд░реВрдк рдЪрд╛рд▓реВ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
--рдирд┐рд╢рд╛рди-рдЧрд╣рд░рд╛рдИ рд╕реНрддрд░
рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд╣рд░реЗ рд╕реНрддрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП --рдЯреНрд░реЗрд╕-рд▓реЗрд╡рд▓ 1 рд╕реЗ
рдХреЗрд╡рд▓ рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреЗ рд╕рд┐рдЧреНрдирд▓ рджреЗрдЦреЗрдВред рд╕рдВрдкреВрд░реНрдг рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ. рдЫреЛрдЯреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рджреГрд╢реНрдпрддрд╛ рдХрдо рд╣реЛ рдЬрд╛рдПрдЧреА, рд▓реЗрдХрд┐рди рд░рдирдЯрд╛рдЗрдо рдФрд░ рдЯреНрд░реЗрд╕ рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛ред
--рдЯреНрд░реЗрд╕-рдореИрдХреНрд╕-рдРрд░реЗ рдЧрд╣рд░рд╛рдИ
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдХрд┐рд╕реА рд╕рд┐рдЧреНрдирд▓ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рд░рдгреА рдЧрд╣рд░рд╛рдИ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬрд┐рд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
32 рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ, рдХреНрдпреЛрдВрдХрд┐ рдмрдбрд╝реЗ рдПрд░реЗ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд░рдиреЗ рд╕реЗ рдЯреНрд░реЗрд╕ рдХрд┐рдП рдЧрдП рд╕рд┐рдореБрд▓реЗрд╢рди рдХрд╛рдлреА рдзреАрдорд╛ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
--рдЯреНрд░реЗрд╕-рдЕрдзрд┐рдХрддрдо-рдЪреМрдбрд╝рд╛рдИ рдЪреМрдбрд╛рдИ
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдХрд┐рд╕реА рд╕рд┐рдЧреНрдирд▓ рдХреА рдЕрдзрд┐рдХрддрдо рдмрд┐рдЯ рдЪреМрдбрд╝рд╛рдИ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬрд┐рд╕реЗ рдЯреНрд░реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ 256 рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдмрдбрд╝реЗ рд╡реИрдХреНрдЯрд░реЛрдВ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд░рдиреЗ рд╕реЗ рдЯреНрд░реЗрд╕ рдХрд┐рдП рдЧрдП рд╕рд┐рдореБрд▓реЗрд╢рди рдХреА рдЧрддрд┐ рдХрд╛рдлреА рдзреАрдореА рд╣реЛ рд╕рдХрддреА рд╣реИред
--рдиреЛ-рдЯреНрд░реЗрд╕-рдкреИрд░рд╛рдореНрд╕
рдкреИрд░рд╛рдореАрдЯрд░реНрд╕ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ.
--рдЯреНрд░реЗрд╕-structs
рдкреИрдХреНрдб рд╕рдВрд░рдЪрдирд╛, рдпреВрдирд┐рдпрди рдФрд░ рдкреИрдХреНрдб рдРрд░реЗ рдлрд╝реАрд▓реНрдб рдХрд╛ рдирд╛рдо рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрд╕рд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ,
рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рдВрдпреБрдХреНрдд рдЦрдЪрд╛рдЦрдЪ рднрд░реА рдмрд╕ рдХреЗ рдмрдЬрд╛рдпред рд╡реАрд╕реАрдбреА рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд░реВрдк рдмрд╛рдзрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЯреНрд░реЗрд╕ рд╕рдордп рдХрд╛рдлреА рдзреАрдорд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдбрд╝реА рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред
--рдЯреНрд░реЗрд╕-рдЕрдВрдбрд░рд╕реНрдХреЛрд░
рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрдХреЗрддреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВред рдЖрдо рддреМрд░ рдкрд░, рдпреЗ рд╕рдВрдХреЗрдд рд╣реЛрддреЗ рд╣реИрдВ
рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рдЖрдЙрдЯрдкреБрдЯ рдирд╣реАрдВред рдпрд╣ рднреА рджреЗрдЦреЗрдВ--рдХрд╡рд░реЗрдЬ-рдЕрдВрдбрд░рд╕реНрдХреЛрд░ред
-Uрдерд╛
рджрд┐рдП рдЧрдП рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдкреНрд░рддреАрдХ рдХреЛ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
--рдЕрдирд░реЛрд▓-рдЧрд┐рдирддреА рдЫреЛрд░реЛрдВ
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рд▓реВрдк рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
BLKLOOPINIT рдЪреЗрддрд╛рд╡рдиреА рднреА рджреЗрдЦреЗрдВред
--рдЕрдирд░реЛрд▓-рдПрд╕рдЯреАрдПрдордЯреАрдПрд╕ рдмрдпрд╛рди
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдЙрд╕ рд▓реВрдк рдХреЗ рд▓рд┐рдП рд▓реВрдк рдореЗрдВ рдХрдердиреЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛ рдЬрд╛рдУ. BLKLOOPINIT рдЪреЗрддрд╛рд╡рдиреА рднреА рджреЗрдЦреЗрдВред
--рдЕрдкреНрд░рдпреБрдХреНрдд-regexp regexp
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. * рдФрд░ ? рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд░рд▓ regexp рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдХреЛрдИ рд╕рд┐рдЧреНрдирд▓ рдирд╛рдо рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ
рдЕрдкреНрд░рдпреБрдХреНрдд рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рджрдмрд╛ рджреЗрдЧрд╛. рдбрд┐рдлрд╝реЙрд▓реНрдЯ "*рдЕрдкреНрд░рдпреБрдХреНрдд*"ред рдЗрд╕реЗ "" рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЕрдХреНрд╖рдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ
рдореЗрд▓ рдорд┐рд▓рд╛рдирд╛ред
-V рд╡рд░реНрдмреЛрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬрд╛рдирдХрд╛рд░реА рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ
рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛ред (рдкрд░реНрд▓-рд╡реА рдХреЗ рд╕рдорд╛рди)
-v рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо
рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЛ рд╡реЗрд░рд┐рд▓реЙрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдкрдврд╝реЗрдВред рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрд┐рд╕реА рднреА рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕реЗрд▓ рдЗрдВрд╕реНрдЯреЗрдВрдЯреЗрд╢рди рдХреЛ рд╣рд▓ рдХрд░реЗрдВ, рдЕрдиреНрдпрдерд╛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдиреЛрдЯ-v рдирд┐рд╖реНрдкрдХреНрд╖ рд╣реИ
рд╡реЗрд░рд┐рд▓реЙрдЧ рдЯреВрд▓ рдореЗрдВ рдорд╛рдирдХред
+рд╡реЗрд░рд┐рд▓реЙрдЧ1995рдПрдХреНрд╕рдЯ+ext
+рд╡реЗрд░рд┐рд▓реЙрдЧ2001рдПрдХреНрд╕рдЯ+ext
"+1364-1995ext+" рдХреЗ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреАext рдФрд░ "+1364-2001ext+"ext рдХреНрд░рдорд╢
-рджреАрд╡рд╛рд░
рдХреЛрдб рд╢реИрд▓реА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рд╕рд╣рд┐рдд рд╕рднреА рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ рдЬреЛ рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдЕрдХреНрд╖рдо рд╣реЛрддреА рд╣реИрдВ
рдЪреВрдХред
-рдЖрддрдВрдХ-message
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рдХреЛ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдореЗрдВ рдмрджрд▓реЗрдВред рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рд╣реИ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рд╛рдЗрдЯ-рд╡реНрдпрд╛рдкреА рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рдиреЗ рд╕реЗ рд╣рддреЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдирд╛
"-Werror-NOUNOPTFLAT"ред
-Wрднрд╡рд┐рд╖реНрдп-message
рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд░реВрд░рдд рдкрдбрд╝реЗ. рдЕрдЬреНрдЮрд╛рдд рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдпрд╛ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рджрд┐рдП рдЧрдП рд╢рдмреНрджреЛрдВ рд╕реЗ рджрдмрд╛рдПрдБ
рд╕рдВрджреЗрд╢ рдХреЛрдб. рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдЧреНрдорд╛рд╕ рдХреЗ рд╕рд╛рде рд▓рд┐рдЦреЗ рдЧрдП рдХреЛрдб рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдЪрд▓реЗрдЧрд╛; рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрджреЗрд╢ рдХреЛрдб рдХреЗ рд▓рд┐рдП -Wfuture- рддрд░реНрдХ рдЬреЛрдбрд╝реЗрдВ
рдпрд╛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рдХрд┐ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЙрд╕ рдЪреАрдЬрд╝ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдкреБрд░рд╛рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
-рдирд╣реАрдВ-message
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ. рдпрд╣ рдХрд┐рд╕реА рднреА lint_on рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рджреЗрдЧрд╛
рд╕реНрд░реЛрдд, рдпрд╛рдиреА рдЪреЗрддрд╛рд╡рдиреА рдЕрднреА рднреА рдореБрджреНрд░рд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред
-рд╡рдиреЛ-рд▓рд┐рдВрдЯ
рд╕рднреА рд▓рд┐рдВрдЯ рд╕рдВрдмрдВрдзрд┐рдд рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢реЛрдВ рдФрд░ рд╕рднреА рд╢реИрд▓реА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред рдпрд╣ рд╕рдорддреБрд▓реНрдп рд╣реИ
рд╕реЗ "-рд╡рдиреЛ-ALWCOMBORDER -WрдиреЛ-рдХреЗрд╕рдЕрдкреВрд░реНрдг -рд╡рдиреЛ-рдХреЗрд╕рдУрд╡рд░рд▓реИрдк -рд╡рдиреЛ-рдХреЗрд╕рдПрдХреНрд╕ -рд╡рдиреЛ-рдХреЗрд╕рд╡рд┐рдердПрдХреНрд╕
-Wno-CMPCONST -Wno-ENDLABEL -Wno-IMPLICIT -Wno-Litendian -Wno-PINCONNECTEMPTY
-Wno-рдкрд┐рдирдорд┐рд╕рд┐рдВрдЧ -Wno-SYNCASYNCNET -Wno-рдЕрдирдбреНрд░рд╛рдЗрд╡ -Wno-рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд -Wno-рдЕрдкреНрд░рдпреБрдХреНрдд -Wno-Width"
рд╕рд╛рде рд╣реА Wno-рд╢реИрд▓реА рдХреЗ рд▓рд┐рдП рджрд┐рдЦрд╛рдИ рдЧрдИ рд╕реВрдЪреАред
рдпрд╣ рджреГрдврд╝рддрд╛рдкреВрд░реНрд╡рдХ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЕрдкрдирд╛ рдХреЛрдб рд╕рд╛рдлрд╝ рдХрд░реЗрдВ, рдРрд╕рд╛ рд╣реИ
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреЛрдб рдХреЗ рдкрд░реАрдХреНрд╖рдг-рдорд╛рдорд▓реЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред
-рд╡рдиреЛ-рд╢реИрд▓реА
рд╕рднреА рдХреЛрдб рд╢реИрд▓реА рд╕рдВрдмрдВрдзреА рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИрдВ
рдЕрдХреНрд╖рдо)ред рдпрд╣ "-Wno-DECLFILENAME -Wno-DEFPARAM -Wno-INCABSPATH" рдХреЗ рд╕рдорддреБрд▓реНрдп рд╣реИ
-Wno-рдкрд┐рдирдХрдиреЗрдХреНрдЯрдЯреЗрдореНрдкреНрдЯреА -Wno-PINNOCONNECT -Wno-SYNCASYNCNET -Wno-рдЕрдирдбреНрд░рд╛рдЗрд╡ -Wno-рдЕрдкреНрд░рдпреБрдХреНрдд
-Wno-VARHIDDEN"ред
-рдирд╣реАрдВ-рдШрд╛рддрдХ
рдЬрдм рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХрд╛ рдкрддрд╛ рдЪрд▓реЗ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рд╕реЗ рдмрд╛рд╣рд░ рди рдирд┐рдХрд▓реЗрдВред
рдмрд┐рд▓реНрдб рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рд░рдЦрдирд╛ рдЯреЗрдврд╝рд╛рдкрди рд╣реИред рдЖрдкрдХреЛ рд╕рдлрд╝рд╛рдИ рдХрд░рдиреЗ рдХреА рдкреБрд░рдЬреЛрд░ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ
рдЕрдкрдирд╛ рдХреЛрдб, рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЗрдирд▓рд╛рдЗрди lint_off рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдпрд╛ -Wno-... рдлрд╝реНрд▓реИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
-рдЪреЗрддрд╛рд╡рдиреА-message
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ.
-рд╡рд╛рд░реНрди-рд▓рд┐рдВрдЯ
рд╕рднреА рд▓рд┐рдВрдЯ рд╕рдВрдмрдВрдзрд┐рдд рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдХреНрд╖рдо рд╣реИрдВ),
рд▓реЗрдХрд┐рди рд╢реИрд▓реА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рди рдХрд░реЗрдВ. рдпрд╣ "-Wwarn-ALWCOMBORDER" рдХреЗ рд╕рдорддреБрд▓реНрдп рд╣реИ
-рдЪреЗрддрд╛рд╡рдиреА-рдорд╛рдорд▓рд╛рдЕрдкреВрд░реНрдг -рдЪреЗрддрд╛рд╡рдиреА-рдХреЗрд╕рдУрд╡рд░рд▓реИрдк -рдЪреЗрддрд╛рд╡рдиреА-рдХреЗрд╕рдПрдХреНрд╕ -рдЪреЗрддрд╛рд╡рдиреА-рдХреЗрд╕рд╡рд┐рдердПрдХреНрд╕ -рд╡рд╛рд░реНрди-рд╕реАрдПрдордкреАрдХреЙрдиреНрд╕реНрдЯ
-рд╡рд╛рд░реНрди-рдПрдВрдбрд▓реЗрдмрд▓ -рд╡рд╛рд░реНрди-рдЗрдореНрдкреНрд▓рд┐рд╕рд┐рдЯ -рд╡рд╛рд░реНрди-рд▓рд┐рдЯреЗрдВрдбрд┐рдпрди -рд╡рд╛рд░реНрди-рдкрд┐рдирдорд┐рд╕рд┐рдВрдЧ -рд╡рд╛рд░реНрди-рд░рд┐рдпрд▓рд╡реАрдЯреА
-рдЪреЗрддрд╛рд╡рдиреА-рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд -рдЪреЗрддрд╛рд╡рдиреА-рдЪреМрдбрд╝рд╛рдИ"ред
-рдЪреЗрддрд╛рд╡рдиреА рд╢реИрд▓реА
рд╕рднреА рдХреЛрдб рд╢реИрд▓реА рд╕рдВрдмрдВрдзреА рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ. рдпрд╣ "-рд╡рд╛рд░реНрди" рдХреЗ рд╕рдорддреБрд▓реНрдп рд╣реИ
рдЕрд╕рд╛рдЗрдиреНрдбрд▓реА -рд╡рд╛рд░реНрди-рдбрд┐рдХреНрд▓рдлрд╛рдЗрд▓рдирд╛рдо -рд╡рд╛рд░реНрди-рдбреЗрдлрдкрд░рдо -рд╡рд╛рд░реНрди-рдЗрдирдХреИрдмрд╕реНрдкреИрдЯ -рд╡рд╛рд░реНрди-рдкрд┐рдирдиреЛрдХрдиреЗрдХреНрдЯ
-рд╡рд╛рд░реНрди-рд╕рд┐рдВрдХреИрд╕рд┐рдирдиреЗрдЯ -рд╡рд╛рд░реНрди-рдЕрдирдбреНрд░рд╛рдЗрд╡рди -рд╡рд╛рд░реНрди-рдЕрдкреНрд░рдпреБрдХреНрдд -рд╡рд╛рд░реНрди-рд╡рд╛рд░реНрдирд╣рд┐рдбрди"ред
--x-рдЕрд╕рд╛рдЗрди 0
--x-рдЕрд╕рд╛рдЗрди 1
--x-рддреЗрдЬрд╝реА рд╕реЗ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ)
--x-рдЕрд╕рд╛рдЗрди рдЕрджреНрд╡рд┐рддреАрдп
рджреЛ-рдЕрд╡рд╕реНрдерд╛ рд╡рд╛рд▓реЗ рдорд╛рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ X рдХреЛ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдорд┐рд▓рдиреЗ рдкрд░ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
--x-assign=fast, рдбрд┐рдлрд╝реЙрд▓реНрдЯ, рд╕рднреА Xs рдХреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрддреНрддрдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИред
--x-assign=0 рд╕рднреА Xs рдХреЛ 0s рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рддреЗрдЬрд╝ рднреА рд╣реИред --x-assign=1 рд╕рднреА Xs рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ
1s, рдпрд╣ рд▓рдЧрднрдЧ 0 рдЬрд┐рддрдирд╛ рддреЗрдЬрд╝ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдХреНрд░рд┐рдп рдЙрдЪреНрдЪ рдХреЗ рд░реВрдк рдореЗрдВ рд░реАрд╕реЗрдЯ рдмрдЧ рдорд┐рд▓рдиреЗ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ
рддрд░реНрдХ рдЖрдЧ рдЙрдЧрд▓реЗрдЧрд╛. --x-assign=unique, рдорд╛рди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧрд╛
рд░реАрд╕реЗрдЯ рдмрдЧ рдвреВрдВрдврдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдПрдХреНрд╕ рдХреЗ рд░реИрдВрдбрдорд╛рдЗрдЬреЗрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рдмрд╕реЗ рдзреАрдорд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ
рдХреЛрдб рдореЗрдВ рд░реАрд╕реЗрдЯ рдмрдЧ рдвреВрдВрдврдирд╛ред
рдпрджрд┐ --x-рдЕрд╕рд╛рдЗрди рдпреВрдирд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЬрдирд░реЗрдЯрд░ рдХреЛ рд╕реАрдб рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВ
рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рддрд┐рдЧрдорди рд░рди рдХреЛ рдПрдХ рдЕрд▓рдЧ рдпрд╛рджреГрдЪреНрдЫрд┐рдХреАрдХрд░рдг рдЕрдиреБрдХреНрд░рдо рдорд┐рд▓рддрд╛ рд╣реИред рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
srand48() рдпрд╛ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╕рд░рдВрдб () рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдХрд░реЗрдВ. рд╢рд╛рдпрдж рдЖрдк рднреА рдЪрд╛рд╣реЗрдВрдЧреЗ
рдЪрдпрдирд┐рдд рдХрд┐рд╕реА рднреА рдмреАрдЬ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ, рдФрд░ рдЙрд╕реА рдмреАрдЬ рдХреЗ рд╕рд╛рде рдкреБрди: рдЪрд▓рд╛рдиреЗ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдбрд╛рд▓реЗрдВ рддрд╛рдХрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░ рд╕рдХреЗрдВ
рдмрдЧ рдкреБрдирд░реБрддреНрдкрд╛рджрд┐рдд рдХрд░реЗрдВред
рдиреЛрдЯреНрд╕ред рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдХреЗрд╡рд▓ рдЙрди рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ X рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВ
рд╡реЗрд░рд┐рд▓реЙрдЧ рд╕реНрд░реЛрдд рдХреЛрдбред рдШрдбрд╝рд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди 0 рдкрд░ рд╕реЗрдЯ рд╣реИ рдЬрдм рддрдХ рдХрд┐ --x-рдкреНрд░рд╛рд░рдВрднрд┐рдХ-рдХрд┐рдирд╛рд░реЗ рди рд╣реЛ
рдирд┐рд░реНрджрд┐рд╖реНрдЯ. рдЕрдиреНрдп рд╕рднреА рд░рд╛рдЬреНрдп рд╣реЛрд▓реНрдбрд┐рдВрдЧ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рд╡реИрд╕реЗ рд╣реА рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ
--x-assign рдЕрджреНрд╡рд┐рддреАрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
--x-рдкреНрд░рд╛рд░рдВрднрд┐рдХ-рдХрд┐рдирд╛рд░рд╛
рдЗрд╡реЗрдВрдЯ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╕рд┐рдореБрд▓реЗрдЯрд░ рдХреЗ рдЕрдиреБрдХрд░рдг рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдЖрдо рддреМрд░ рдкрд░ рдмрдврд╝рдд рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ
X рд╕реЗ 1 ("рдкреЛрдЬрд╝реЗрдЬ") рдпрд╛ X рд╕реЗ 0 ("рдиреЗрдЧреЗрдЬ") рдореЗрдВ рд╕рдВрдХреНрд░рдордгред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб,
рдЬрд╣рд╛рдВ "rst_n" рдЕрдкреНрд░рд╛рд░рдВрднреАрдХреГрдд рд╣реИ, рд╡рд╣рд╛рдВ "rst_n" рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдкрд░ "res_n" рдХреЛ "1'b1" рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рд╢реВрдиреНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:
reg res_n = 1'b0;
рд╣рдореЗрд╢рд╛ @(negedge rst_n) рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ
рдпрджрд┐ (rst_n == 1'b0) рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ
res_n <= 1'рдмреА1;
рд╕рдорд╛рдкреНрдд
рд╕рдорд╛рдкреНрдд
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдореЗрдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЕрдкреНрд░рд╛рд░рдВрднреАрдХреГрдд рдШрдбрд╝рд┐рдпреЛрдВ рдХреЛ рд╢реВрдиреНрдп рдХрд╛ рдорд╛рди рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд
"рд╣рдореЗрд╢рд╛" рдмреНрд▓реЙрдХ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рдирд╣реАрдВ рд╣реИ, рдХреБрдЫ рдбрд┐рдЬрд╝рд╛рдЗрди рдРрд╕реЗ рд╣реИрдВ рдЬреЛ XX 0 рдкрд░ рдирд┐рд░реНрднрд░ рд╣реЛрдХрд░ рдЯреНрд░рд┐рдЧрд░ рд╣реЛрддреЗ рд╣реИрдВ
"рдиреЗрдЧреЗрдЬ", рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд░реАрд╕реЗрдЯ рдЕрдиреБрдХреНрд░рдореЛрдВ рдореЗрдВред рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде --x-initial-edge рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛
рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджреЛрд╣рд░рд╛рдПрдБ. рдпрд╣ рдпрд╣ рднреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ XX 1 рдПрдХ "рдкреЛрдЬрд╝реЗрдЬ" рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИред
рдиреЛрдЯреНрд╕ред рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдмрддрд╛рдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЕрднрд┐рд╕рд░рдг рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрддреНрдпрд╛рджрд┐
рдЕрднрд┐рд╕рд░рдг рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП --converge-limit рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпрд╛рдБ рдпрд╣ рдореЙрдбрд▓ рдХрд┐рдП рдЧрдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдПрдХ рдФрд░ рд╕рдВрдХреЗрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП.
-y рджреАрд░
рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЙрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЦреЛрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдирдореЗрдВ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
рдпрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп. рддреАрди рдЭрдВрдбреЛрдВ -y, +incdir рдФрд░ -I рдХрд╛ рдкреНрд░рднрд╛рд╡ рд╕рдорд╛рди рд╣реИ; +incdir рдФрд░ +y
рд╡реЗрд░рд┐рд▓реЙрдЧ рдЯреВрд▓реНрд╕ рдореЗрдВ рдХрд╛рдлреА рдорд╛рдирдХ рд╣реИрдВ рдЬрдмрдХрд┐ -I рдЬреАрд╕реАрд╕реА рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рд╣реИред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ ("-yред") рдФрд░ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ --Mdir рдкрд░ рдбрд┐рдлреЙрд▓реНрдЯ рдХрд░рддрд╛ рд╣реИ
рдЗрди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрдереЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдмрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ '-y' рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рдпрджрд┐ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рд╡рд╛рдВрдЫрд┐рдд рд╣реИрдВ рддреЛ "$(pwd)"' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рд╕рд╛рдкреЗрдХреНрд╖ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо.
рдЙрджрд╛рд╣рд░рдг рд╕реА + + рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рд╣рдо рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ C++ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВрдЧреЗред
mkdir test_our
рд╕реАрдбреА рдкрд░реАрдХреНрд╖рдг_рд╣рдорд╛рд░рд╛
рдмрд┐рд▓реНрд▓реА < рд╣рдорд╛рд░рд╛.рд╡рд┐
рдореЙрдбреНрдпреВрд▓ рд╣рдорд╛рд░рд╛;
рдЖрд░рдВрднрд┐рдХ рдЖрд░рдВрдн $рдкреНрд░рджрд░реНрд╢рди('рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб'); $рдЦрддреНрдо; рдЕрдВрдд
endmodule
EOF
рдмрд┐рд▓реНрд▓реА < sim_main.cpp
#рд╢рд╛рдорд┐рд▓ рд╣реИ "Vour.h"
#рд╢рд╛рдорд┐рд▓ рд╣реИ "verilated.h"
int рдореБрдЦреНрдп(int argc, char **argv, char **env) {
Verilated::commandArgs(argc, argv);
рд╡реЛрд░* рд╢реАрд░реНрд╖ = рдирдпрд╛ рд╡реЛрд░;
рдЬрдмрдХрд┐ (!рд╕рддреНрдпрд╛рдкрд┐рдд::рдЧреЙрдЯрдлрд┐рдирд┐рд╢()) { рд╢реАрд░реНрд╖->eval(); }
рд╢реАрд░реНрд╖ рд╣рдЯрд╛рдПрдВ;
рдирд┐рдХрд╛рд╕; (0)
}
EOF
рдпрджрд┐ рдЖрдкрдиреЗ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЛ рдХрд┐рд╕реА рд╕реНрд░реЛрдд рдпрд╛ рдЯрд╛рд░рдмреЙрд▓ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдкрдиреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ
рд╕рд┐рд╕реНрдЯрдо (рдЖрд░рдкреАрдПрдо рдХреЗ рд░реВрдк рдореЗрдВ), рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдХрд┐рдЯ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
рдирд┐рд░реНрдпрд╛рдд VERILATOR_ROOT=/path/to/where/verilator/рдерд╛/рд╕реНрдерд╛рдкрд┐рдд
рдирд┐рд░реНрдпрд╛рдд PATH=$VERILATOR_ROOT/bin:$PATH
рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдЫреЛрдЯреЗ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВред
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ -рд╡реЙрд▓ --cc our.v --exe sim_main.cpp
рд╣рдо рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ "obj_dir" рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЕрдиреБрднрд╛рдЧ рджреЗрдЦреЗрдВ
рдмрдирд╛рдИ рдЧрдИ рдХреБрдЫ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдгред
ls -l obj_dir
рдлрд┐рд░ рд╣рдо рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╕реАрдбреА obj_dir
рдореЗрдХ -рдЬреЗ -рдПрдл рд╡реЛрд░.рдПрдордХреЗ рд╡реЛрд░
(рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдореЗрдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрдХрд▓рди рдирд┐рдпрдо рдФрд░ рд▓рд┐рдВрдХ рдирд┐рдпрдо рд╢рд╛рдорд┐рд▓ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ --exe рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛ рдФрд░ a рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдерд╛
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ .cpp рдлрд╝рд╛рдЗрд▓ред рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдВрдХрд▓рди рдирд┐рдпрдо рднреА рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ
рд╣рдо SYSTEMC рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рджрд┐рдЦрд╛рдПрдВрдЧреЗред)
рдФрд░ рдЕрдм рд╣рдо рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ
рд╕реАрдбреА ..
obj_dir/Vour
рдФрд░ рд╣рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓рддрд╛ рд╣реИ
рдирдорд╕реНрддреЗ рд╡рд┐рд╢реНрд╡
- рд╣рдорд╛рд░рд╛.v:2: рд╡реЗрд░рд┐рд▓реЙрдЧ $рдлрд┐рдирд┐рд╢
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдкрдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдм рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдХрдлрд╝рд╛рдЗрд▓ рд▓рд┐рдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред рдлрд┐рд░, рдЬрдм рдЖрдкрдХрд╛
рд╕реНрд░реЛрдд рдмрджрд▓рддрд╛ рд╣реИ рддреЛ рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрди рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рдПрдЧрд╛ред рдЗрд╕рдореЗрдВ test_c рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреЗрдЦреЗрдВ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рддрд░рдг.
рдЙрджрд╛рд╣рд░рдг рд╕рд┐рд╕реНрдЯрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдпрд╣ рдЙрдкрд░реЛрдХреНрдд рдХреЗ рд╕рдорд╛рди рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рд▓реЗрдХрд┐рди SystemC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред
mkdir test_our_sc
рд╕реАрдбреА рдкрд░реАрдХреНрд╖рдг_рд╣рдорд╛рд░рд╛_рдПрд╕рд╕реА
рдмрд┐рд▓реНрд▓реА < рд╣рдорд╛рд░рд╛.рд╡рд┐
рдореЙрдбреНрдпреВрд▓ рд╣рдорд╛рд░рд╛ (рд╕реАрдПрд▓рдХреЗ);
рдЗрдирдкреБрдЯ рдХреНрд▓реЙрдХ; // рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдХреНрд░рд┐рдпрдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдШрдбрд╝реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рд╣рдореЗрд╢рд╛ @ (рдкреЛрдЬреЗрдЬ рдХреНрд▓рд░реНрдХ)
$ рдбрд┐рд╕реНрдкреНрд▓реЗ рд╢реБрд░реВ рдХрд░реЗрдВ ("рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб"); $рдЦрддреНрдо; рдЕрдВрдд
endmodule
EOF
рдмрд┐рд▓реНрд▓реА < sc_main.cpp
#рд╢рд╛рдорд┐рд▓ рд╣реИ "Vour.h"
int sc_main(int argc, char **argv) {
Verilated::commandArgs(argc, argv);
рдПрд╕рд╕реА_рдХреНрд▓реЙрдХ рдХреНрд▓реЙрдХ ("рд╕реАрдПрд▓рдХреЗ",10, 0.5, 3, рд╕рддреНрдп);
рд╡реЛрд░* рд╢реАрд░реНрд╖;
рд╢реАрд░реНрд╖ = рдирдпрд╛ рд╡реЛрд░ ("рд╢реАрд░реНрд╖"); // SP_CELL (рд╢реАрд░реНрд╖, рд╡реЛрд░);
рд╢реАрд░реНрд╖->рд╕реАрдПрд▓рдХреЗ(рд╕реАрдПрд▓рдХреЗ); // SP_PIN (рд╢реАрд░реНрд╖, clk, clk);
рдЬрдмрдХрд┐ (!рд╕рддреНрдпрд╛рдкрд┐рдд::рдЧреЙрдЯрдлрд┐рдирд┐рд╢()) { рдПрд╕рд╕реА_рд╕реНрдЯрд╛рд░реНрдЯ(1, рдПрд╕рд╕реА_рдПрдирдПрд╕); }
рд╢реАрд░реНрд╖ рд╣рдЯрд╛рдПрдВ;
рдирд┐рдХрд╛рд╕; (0)
}
EOF
рдпрджрд┐ рдЖрдкрдиреЗ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЛ рдХрд┐рд╕реА рд╕реНрд░реЛрдд рдпрд╛ рдЯрд╛рд░рдмреЙрд▓ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдкрдиреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ
рд╕рд┐рд╕реНрдЯрдо (рдЖрд░рдкреАрдПрдо рдХреЗ рд░реВрдк рдореЗрдВ), рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдХрд┐рдЯ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
рдирд┐рд░реНрдпрд╛рдд VERILATOR_ROOT=/path/to/where/verilator/рдерд╛/рд╕реНрдерд╛рдкрд┐рдд
рдирд┐рд░реНрдпрд╛рдд PATH=$VERILATOR_ROOT/bin:$PATH
рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдЫреЛрдЯреЗ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВред
verilator -Wall --sc our.v
рдлрд┐рд░ рд╣рдо рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдореЗрдХ -j -f Vour.mk Vour__ALL.a
make -j -f Vour.mk ../sc_main.o verilated.o
рдФрд░ SystemC рд╕реЗ рд▓рд┐рдВрдХ рдХрд░реЗрдВред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рддрдХ рдЖрдкрдХрд╛ рдкрде рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдоред
рдирд┐рд░реНрдпрд╛рдд SYSTEMC_LIBDIR=/path/to/where/libsystemc.a/exists
рдирд┐рд░реНрдпрд╛рдд LD_LIBRARY_PATH=$SYSTEMC_LIBDIR:$LD_LIBRARY_PATH
# рдпрджрд┐ SystemC 2.3.0 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ
рдирд┐рд░реНрдпрд╛рдд SYSTEMC_CXX_FLAGS=-pthread
g++ -L$SYSTEMC_LIBDIR ../sc_main.o Vour__ALL*.o рд╕рддреНрдпрд╛рдкрд┐рдд.o \
-рдУ рд╡реЛрд░ -рдПрд▓рд╕рд┐рд╕реНрдЯрдорд╕реА
рдФрд░ рдЕрдм рд╣рдо рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ
рд╕реАрдбреА ..
obj_dir/Vour
рдФрд░ рд╣рдореЗрдВ C++ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рди рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓рддрд╛ рд╣реИ:
рдирдорд╕реНрддреЗ рд╡рд┐рд╢реНрд╡
- рд╣рдорд╛рд░рд╛.v:2: рд╡реЗрд░рд┐рд▓реЙрдЧ $рдлрд┐рдирд┐рд╢
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдкрдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдм рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдлрд┐рд░, рдЬрдм рдЖрдкрдХрд╛ рд╕реНрд░реЛрдд
рдкрд░рд┐рд╡рд░реНрддрди рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрди рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рдПрдЧрд╛ред рдореЗрдВ test_sc рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреЗрдЦреЗрдВ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рддрд░рдг.
рдмреЗрдВрдЪ рдорд╛рд░реНрдХрд┐рдВрдЧ & OPTIMIZATION
рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП, рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХреЛ "-O3 --x-assign=fast --noassert" рдлрд╝реНрд▓реИрдЧ рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдПрдБред
-O3 рдзреНрд╡рдЬ рдХреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдФрд░ --x-assign=fast рдХрд╛ рдЬреЛрдЦрд┐рдо рдмрдврд╝ рд╕рдХрддрд╛ рд╣реИ
рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрджрд▓реЗ рдмрдЧ рд░реАрд╕реЗрдЯ рдХрд░реЗрдВ; рдЗрди рдЭрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВред
рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдореЗрдВ рдорд╛рдореВрд▓реА рдмрджрд▓рд╛рд╡ рднреА рдмрдбрд╝реА рдЬреАрдд рджрд┐рд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ UNOPTFLAT рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рд╕реЗ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ. рдЗрди рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рд╕реЗ рдмрдбрд╝реЗ рд╕реБрдзрд╛рд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ; рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛
рдЧреЗрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдШрдбрд╝реА рдХреА рдХреБрдВрдбреА рдореЗрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдХреЗ рдЙрдирдХреА рдПрдХ UNOPTFLAT рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛
рдШрдбрд╝рд┐рдпрд╛рдБ рдФрд░ 60% рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ Verilated рдореЙрдбрд▓ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдЕрдзрд┐рдХрддрд░ рдЖрдкрдХреЗ C++ рдХрдВрдкрд╛рдЗрд▓рд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ
рдЖрдкрдХреЗ рд╕реАрдкреАрдпреВ рдХреЗ рдХреИрд╢ рдХрд╛ рдЖрдХрд╛рд░ред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, lib/verilated.mk рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдмрдВрдж рд╣реИред рдпрд╣ рдХреЗ рд▓рд┐рдП рд╣реИ
рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдн, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд░рдирдЯрд╛рдЗрдо рдХреА рдХреАрдордд рдкрд░ рд╕рдВрдХрд▓рди рд╕рдордп рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдЬрдорд╛ рдХрд░рдирд╛
рдЕрдиреБрдХреВрд▓рди рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рддреАрди рдЪрд░, OPT, OPT_FAST, рдпрд╛ OPT_SLOW рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗрдЯ рдХрд░реЗрдВ
lib/verilated.mk. рдпрд╛, рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрдорд╛рдВрдб рдкрд░ -CFLAGS рдФрд░/рдпрд╛ -LDFLAGS рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рдЭрдВрдбреЗ рдХреЛ рд╕реАрдзреЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдпрд╛ рд▓рд┐рдВрдХрд░ рддрдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдиред рдпрд╛, рдХреЗрд╡рд▓ рдПрдХ рд░рди рдХреЗ рд▓рд┐рдП, рдкрд╛рд╕ рдХрд░реЗрдВ
рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░:
OPT_FAST='-O2' -f Vour.mk Vour__ALL.a рдмрдирд╛рдПрдВ
OPT_FAST рдЙрди рдкреНрд░реЛрдЧреНрд░рд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрдзрд┐рдХрддрд░ рддреЗрдЬрд╝ рдкрде рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрддреЗ рд╣реИрдВ
рдХреЛрдб рдЬреЛ рд╣рд░ рдЪрдХреНрд░ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддрд╛ рд╣реИред OPT_SLOW рдзреАрдореА-рдкрде рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
(рдкреНрд▓рд╕ рдЯреНрд░реЗрд╕рд┐рдВрдЧ), рдЬреЛ рдХрднреА-рдХрднрд╛рд░ рд╣реА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдлрд┐рд░ рднреА рдЗрдиреНрд╣реЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд▓рдВрдмрд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ
рдЕрдиреБрдХреВрд▓рди рдЪрд╛рд▓реВ. рдУрдкреАрдЯреА рд╕рдордЧреНрд░ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рднреА рд╕рдВрдХрд▓рдиреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ
рд╡реЗ OPT_FAST рдФрд░ OPT_SLOW рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП, OPT='-O2' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ рдХрд░реЗрдВ
"-рд╕реНрдереИрддрд┐рдХ"ред рдмреЗрд╣рддрд░ рд╕рдВрдХрд▓рди рд╕рдордп рдХреЗ рд╕рд╛рде рд▓рдЧрднрдЧ рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ
OPT_FAST='-O1 -рдлрд╕реНрдЯреНрд░рд┐рдХреНрдЯ-рдЕрд▓рд┐рдпрд╛рд╕рд┐рдВрдЧ'ред рдЙрдЪреНрдЪ рдЕрдиреБрдХреВрд▓рди рдЬреИрд╕реЗ "-O3" рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреАрд╕реАрд╕реА
рдордзреНрдпрдо рдЖрдХрд╛рд░ рдХреЗ рдбрд┐рдЬрд╝рд╛рдЗрдиреЛрдВ рдкрд░ рднреА O3 рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд╕рдВрдХрд▓рди рд╕рдордп рдЕрддреНрдпрдзрд┐рдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдХреБрдЫ
рдмрдбрд╝реЗ рдбрд┐рдЬрд╝рд╛рдЗрди "-рдУрдПрд╕" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддреЗ рд╣реИрдВред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, SystemC рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдХрд▓рди рдореЗрдВ рджреЗрд░реА рд╣реЛ рд╕рдХрддреА рд╣реИ
рдХрдИ рдорд┐рдирдЯред (SystemC рд▓рд╛рдЗрдмреНрд░реЗрд░реАрдЬрд╝ рдореЗрдВ рдХрдИ рдЫреЛрдЯреЗ рдЗрдирд▓рд╛рдЗрди рдлрд╝рдВрдХреНрд╢рдВрд╕ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВ
рдХрдВрдкрд╛рдЗрд▓рд░ рдирдЯ.)
рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП, GCC 3.3 рдпрд╛ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред GCC 3.2 рдФрд░ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдмрдЧ рд╣реИрдВ
рдкреЙрдЗрдВрдЯрд░ рдЕрд▓рд┐рдпрд╛рд╕рд┐рдВрдЧ рдбрд┐рдЯреЗрдХреНрд╢рди, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк 2x рдкреНрд░рджрд░реНрд╢рди рд╣рд╛рдирд┐ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдпрджрд┐ рдЖрдк рдПрдХ рд╣реА рд╕рдВрдХрд▓рди рдкрд░ рдХрдИ рд╕рд┐рдореБрд▓реЗрд╢рди рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдлреАрдбрдмреИрдХ рдЖрдзрд╛рд░рд┐рдд рдЬрд╛рдВрдЪ рдХрд░реЗрдВ
рд╕рдВрдХрд▓рди. рдЬреАрд╕реАрд╕реА рдХреЗ рд╕рд╛рде, -fprofile-arcs рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, -fbranch-рд╕рдВрднрд╛рд╡рдирд╛рдПрдБ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдВрдЧреА
рдЕрдиреНрдп 15% рдпрд╛ рддреЛред
рдЖрдзреБрдирд┐рдХ рдХрдВрдкрд╛рдЗрд▓рд░ рд▓рд┐рдВрдХ-рдЯрд╛рдЗрдо рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди (рдПрд▓рдЯреАрдУ) рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдЖрдк рдбреАрдкреАрдЖрдИ рдХреЛрдб рдореЗрдВ рд▓рд┐рдВрдХ рдХрд░реЗрдВред рдЬреАрд╕реАрд╕реА рдкрд░ рдПрд▓рдЯреАрдУ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдВрдХрд▓рди рдФрд░ рд▓рд┐рдВрдХ рджреЛрдиреЛрдВ рдореЗрдВ "-flto" рдкрд╛рд╕ рдХрд░реЗрдВред
рдиреЛрдЯ LTO рдмрдбрд╝реЗ рдбрд┐рдЬрд╝рд╛рдЗрдиреЛрдВ рдкрд░ рдЕрддреНрдпрдзрд┐рдХ рд╕рдВрдХрд▓рди рд╕рдордп рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдореЗрдХрдлрд╝рд╛рдЗрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк Verilated рдХреЛрдб рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВ
-DVL_INLINE_OPT=рдЗрдирд▓рд╛рдЗрди. рдпрд╣ рдЗрдирд▓рд╛рдЗрди рдлрд╝рдВрдХреНрд╢рди рдХрд░реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рднреА рд╕реА.рдкреА.рдкреА. рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рд╣реА рдХрдВрдкрд╛рдЗрд▓рд░ рд░рди рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЖрдк рд╡реЗрд░рд┐рд▓реЙрдЧ рдХреЛрдб рдХреА рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдХрд░рдХреЗ рдЖрдЧреЗ рдХреА рдЯреНрдпреВрдирд┐рдВрдЧ рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдЧ
рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрд╛ --profile-cfuncs, рдлрд┐рд░ GCC рдХрд╛ -g -pgред рдлрд┐рд░ рдЖрдк рдпрд╛ рддреЛ рдУрдкреНрд░реЛрдлрд╛рдЗрд▓ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛
gprof рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ C++ рдХреЛрдб рдореЗрдВ рд╕рдордп рдХрд╣рд╛рдБ рд╡реНрдпрддреАрдд рд╣реБрдЖ рд╣реИред gprof рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рд╛рдПрдБ
verilator_profcfunc рдФрд░ рдпрд╣ рдЖрдкрдХреЛ рдмрддрд╛рдПрдЧрд╛ рдХрд┐ рд╡реЗрд░рд┐рд▓реЙрдЧ рд▓рд╛рдЗрди рдирдВрдмрд░ рдХрд┐рд╕ рдкрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╣реИрдВ
рд╕рдордп рд╡реНрдпрддреАрдд рд╣реЛ рд░рд╣рд╛ рд╣реИ.
рдЬрдм рдкреВрд░рд╛ рд╣реЛ рдЬрд╛рдП, рддреЛ рдХреГрдкрдпрд╛ рд▓реЗрдЦрдХ рдХреЛ рдкрд░рд┐рдгрд╛рдо рдмрддрд╛рдПрдВред рдореБрдЭреЗ рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдирд╛ рдкрд╕рдВрдж рд╣реИ
рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрдзрд╛рд░ рд╕реБрдЭрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
onworks.net рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдирд▓рд╛рдЗрди рд╡реЗрд░рд┐рд▓реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ