Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
ורילוג - ויקיפדיה

ורילוג

מתוך ויקיפדיה, האנציקלופדיה החופשית

ורילוג או Verilog הינה שפת תכנות, המאפשרת תכנון של מעגלים חשמליים דיגיטליים, בצורה המזכירה קידוד בשפת C.

הצורך בשפה לתיאור החומרה התפתח עם המעבר לתכנון שבבים (צ'יפים) המכילים מאות אלפי טרנזיסטורים. תכנון בסדר גודל כזה נקרא: VLSI (ראשי תיבות: Very Large Scale Integration). בשלב הזה אי אפשר היה עוד להסתפק בתכנון המסורתי הסכמטי, ונוצר צורך אצל מתכנני המעגלים הדיגיטליים בשפה שתאפשר תכנון מהיר של מעגלים, על ידי תאור מעגלים מורכבים ברמה אבסטרקטית, במונחים של פונקציונליות וזרימת נתונים. השפות הקיימות בעת פיתוח השפה, כמו C ו־Pascal, לא איפשרו בנייה של מעגלים חשמליים בצורה נוחה, כיון שהן אינן מותאמות לתיאור של חומרה.

שפת הורילוג מותאמת לתיאור חומרה ומאפשרת כתיבה ברמות שונות של אבסטרקציה: מהרמה החשמלית (switch level) שהיא הקרובה ביותר לחומרה, דרך השערים הלוגים (gate level), רמת זרימת הנתונים (RTL) ועד לרמת האלגוריתם (behavioural) שהיא רמת האבסטרקציה הגבוהה ביותר המתארת את הפונקציונליות ודומה בצורת הקידוד לשפות כמו C.

ורילוג היא שפה קלה ללימוד ולשימוש, ונתמכת על ידי כלים רבים המשמשים בתהליך התכנון של השבב- כלי הסימולציה וכלי הסינתזה.

השפה התפתחה בשנת 1983.

קיימות שפות מתחרות לורילוג, בהן VHDL.

להלן דוגמה לקוד פשוט בשפת ורילוג, המתאר מימוש של "ממספר אוטומטי" (קאונטר):

module Div20x (rst, clk, cet, cep, count,tc);
//TITLE   'Divide-by-20 Counter with enables'

//enable CEP is a clock enable only
//enable CET is a clock enable and enables the TC output

//a counter using the Verilog language

    parameter size = 5;
    parameter length = 20;

    input rst;  // These inputs/outputs represent connections to
    input clk;  // the module.  
    input cet;
    input cep;

    output [size-1:0] count; 
    output tc;

    reg [size-1:0] count;  // Signals assigned within an always (or initial) block
                           // must be of type reg
    wire tc;               // Other signals are of type wire
    
    // The always statement below is a parallel execution statement that
    // executes any time the signals rst or clk transition from low to high
    always @ (posedge rst or posedge clk) 
        begin                             
            if (rst)             // This simulates a reset of the counter                   
                count <= 5'b0;
            else if (cet && cep) // This simulates the enables both being true
            begin
                if (count == length-1)
                begin
                    count <= 5'b0;
                end
                else
                    count <= count + 5'b1;  // 5'b1 is 5 bits wide and 
            end                             // equal to the value 1.
        end

    // the value of tc is continuously assigned the value of the expression
    assign tc = (cet && (count == length-1));

endmodule

[עריכה] קישורים חיצוניים

ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום לויקיפדיה ולהרחיב אותו.
Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com