VHDL: Zähler

author-image

Von

VHDL: Verhaltensmesser

Dieses Beispiel implementiert einen Verhaltenszähler mit Load-, Clear- und Up/Down-Funktionen. Es wurde nicht für eine bestimmte Gerätearchitektur optimiert, daher kann die Leistung variieren. Intel® FPGA empfiehlt die Verwendung der lpm_counter Funktion zur Implementierung eines Zählers (siehe VHDL: Down Counter). Dieses Beispiel zeigt die Counter-Implementierung, die das LPM nicht erfordert.

Weitere Informationen zur Verwendung dieses Beispiels in Ihrem Projekt siehe:

counters.vhd

ENTITY-Zähler IST
    PORT(       d: IN    INTEGER-BEREICH 0 BIS 255;     clk: IN    BIT;
        löschen:   IN    BIT;
        laden:    IN    BIT;
        up_down: IN    BIT;      qd: OUT INTEGER RANGE   0 BIS 255);
END-Zähler;

ARCHITECTURE a OF counters IS
BEGIN
    – Ein up/down counter
    PROCESS (clk)
         VARIABLE    cnt:       INTEGER RANGE 0 TO 255;
         VARIABLE    Richtung: INTEGER;
    BEGIN
        IF (up_down = "1") DANN  --Generate up/down counter
            direction := 1;
                ELSE-Richtung:= -1;
        END-IF;
            IF (clk'EVENT AND clk = '1') DANN
                IF (load = '1') THEN         --Generate loadable 
                    cnt := d;                --counter. Nehmen Sie diese                     ELSE-Zeilen heraus, um die Leistung zu steigern.
                    cnt := cnt + richtung; 
                 END-IF;
                --Die folgenden Zeilen erzeugen eine synchrone 
                --clear auf dem Zähler
                  IF (clear = '0') THEN     
                     cnt := 0;
                  END-IF;
             END-IF;
    qd <= cnt;   --Outputs
    END PROCESS generieren;
ENDE a;

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.