بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
توابع
üتوابع درون ماژول ها تعریف می شوند.
üتوابع به عنوان متغیر محلی ماژول در نظر گرفته می شوند.
üتوابع جزء ساختار سلسله مراتبی طرح محسوب می شوند.
اسلاید 2 :
üتوابع به تمام متغیرهای ماژول دسترسی دارند.
üدرون توابع می توان متغیر محلی (به غیر از نوع wire) تعریف کرد.
üدرون توابع نمی توان از بلوک های initial و always استفاده کرد.
ü
ü
اسلاید 3 :
üمی توان توابع را در بلوک های رفتاری فرا خواند.
üفراخوانی توابع، فراخوانی با مقدار است.
üدر Verilog توابع می توانند به صورت task و یا function تعریف شوند.
ü
اسلاید 4 :
üبا کلمات کلیدی task و endtask تعریف می شود.
üکاربرد آن در این موارد است:
.1در مواقعی که خروجی های مورد نیاز یا بیش از یکی باشد و یا اصلاً خروجی نیاز نباشد.
.2تابع دارای آرگومان ورودی نباشد.
.3در توالی اجرای تابع نیاز به زمان بندی بر اساس تاخیر باشد.
ü
اسلاید 5 :
üدرون آن می توان توابع دیگری را فرا خواند.
üپورت ها می توانند علاوه بر نوع input، از نوع inout و یا output نیز باشند.
اسلاید 6 :
üفرمت کلی تعریف:
task <taskname>;
<input,output and inout declarations>
<local variable declarations>
<statements>
endtask
اسلاید 7 :
üتعریف پورت ها مشابه پورت های ماژول است.
üورودی توسط آرگومان های input و inout اعمال می شوند.
üپس از اجرا، آرگومان های خروجی مقدار می گیرند.
ütask می تواند متغیر های ماژول را تغییر دهد.
اسلاید 8 :
üبا کلمات کلیدی function و endfunction تعریف می شود.
üکاربرد آن در این موارد است:
.1در مواقعی که فقط مقدار خروجی نیاز باشد.
.2حداقل یک آرگومان ورودی باشد.
.3نیازی به ساختار کنترل زمان و یا رخداد نباشد.
ü
اسلاید 9 :
üدرون آن تنها می توان توابع از نوع function را فرا خواند.
üپورت ها تنها می توانند از نوع input باشند.
اسلاید 10 :
üفرمت کلی تعریف:
function <range_or_type> <function_name>;
<input arguments>
<local variable declarations>
<statements>
endfunction