Strukturelle VHDL-Code für SR Flip-Flop

B

BlackOps

Guest
Hallo, ich bin versucht, VGA-Controller zu bauen. es wird 2 10 Bit bis Zähler haben und 4 Flip-Flops. Ich habe bereits eine schematische davon. Jetzt habe ich zu notieren komplette VHDL strukturellen Code für meine SR-Flip-Flop möchten, werfen Sie bitte einen Blick auf das Bild des Flip-Flops, die ich brauche in meinem Controller. Als ich aus dem Enoch Buch zu sehen, SR-Flip-Flop ist einfach D-Flip-Flop geändert werfen Sie bitte einen Blick auf die zweite pic. jetzt brauche ich, um VHDL-Code für SR-Flip-Flop zu ändern, aber ich muss auch asynchrone klares Signal gehören, wie auf dem ersten Bild gezeigt, ... für den VGA-Controller .. Hier ist mein Code:
Code:
 - definiert den Betrieb des 2-Eingangs-NAND-Gatter LIBRARY IEEE; VERWENDEN IEEE.STD_LOGIC_1164.ALL; ENTITY NAND_2 IS PORT (I0, I1: IN std_logic; O: OUT std_logic); END NAND_2 ; ARCHITECTURE Dataflow_NAND2 DER NAND_2 IS BEGIN O
 
SR und CLK? library IEEE; Verwendung ieee.std_logic_1164.all; Einheit FDRS ist Port (Q: out std_ulogic; C: in std_ulogic; R: in std_ulogic; S: in std_ulogic; Clear: in std_ulogic); Ende FDRS, Architektur FDRS_arch der FDRS ist zu beginnen Verfahren (C, Clear) beginnen if (steigende Flanke (Clear)) then Q
 
Meiner Meinung nach, Sie "erfand" eine neue Art von SR-Flipflop - mit einer Uhr. Ich habe es nie zuvor.
 
ich habe nichts erfunden! havent u lesen ein Buch von Enoch Hwang? diese Bilder auf meinem Post sind aus diesem Buch! so? .... irgendwelche Ideen? und was u über diese VHDL-Code denken?
 
Hallo, OK, ich sehe, dass SR-Flipflop von Enoch und anderswo verwendet wird. Ich fand jedoch, dass verschiedene Implementierungen vorliegen, unterscheiden sich hinsichtlich des Verhaltens mit R und S beide H Henoch sagt "SR-Flip-Flops kann einen undefinierten Zustand gelangen, wenn beide Eingänge gleichzeitig behauptet". In constrast seinen vorgestellte Schaltung ist gut definiert Verhalten zu erreichen Priorität für S-Eingang. Altera MaxPlus hat SR-Flipflop, die mit S-und R Umschalten ist sowohl H und den Code mstrcosmos geschrieben hat Priorität für R-Eingang. Abgesehen von diesem speziellen Problem scheint der VHDL-Code korrekt. Anstelle der Verwendung von "strukturellen" Code, der teilweise unklaren Verhalten hat, würde ich lieber eine klare Beschreibung. Die erforderliche Priorität für SR-Flip-Flop kann tatsächlich anders. Mit D-Flip-Flops haben Sie, um die beabsichtigte Logik explizit definieren. Das SR-Flipflop Beschreibung von mstrcosmos nicht synthetisierbaren auf diese Weise, denn es hat zwei flankensensitiv Signale. Die übliche Konstrukt mit asynchronouos klare sollte stattdessen verwendet werden. Wie schon gesagt, unterscheidet es sich von Ihrem Code über R versus S Priorität.
Code:
-Verfahren (C, Clear) beginnen, wenn (Clear), dann Q
 
u haben Verhaltenskodex vorgesehen ... kann ich es verwenden, um VGA-Controller für meine Virtex2 pro Chip zu bauen, mit ISE? und i legen Sie sie in einem anderen .. "Header"-Datei .. , so dass ich werde nicht in Haupt-Controller Quellcode zu verwenden?
 
Ich überprüfte die original "strukturelle" Code. Es ist absolut ungeeignet für die Synthese (wenn richtig so weit, das ich nicht vollständig überprüfen). Synthetisierbaren Code (soweit wie Clock synchronouos Aktion bestimmt wird) muss auf D-FF Logikelemente jeweils taktsynchrone HDL Konstrukte basieren. PS: Ich nahm an, Ihren Code für die Synthese in Hardware gedacht ist, aber du hast es nicht erwähnt. Ich verstehe jetzt, dass Sie kodiert die strukturelle D-FF Ansicht von Enochs Buch. Die Ansicht im Grunde gibt eine Idee, wie ein D-FF in Hardware zu betreiben, aber es ist weder sinnvoll für die Synthese noch Simulation meiner Meinung nach. Eine Synthese-Tool, das in der Regel arbeitet auf einer höheren Abstraktionsebene als einzelne Toren, würden die meisten wahrscheinlich nicht erkennen, es in einer Weise, die ein D-FF nutzt am Gate-Ebene. Ein Simulationswerkzeug sollte grundsätzlich Reproduzieren des Verhaltens, sondern auch viel Aufwand verursachen im Vergleich zu einem höheren Niveau Beschreibung (Verhaltens-oder mit Hardware D-FF). Behavioral Beschreibungen hat zwei Einschränkungen: Einige Konstrukte sind nicht synthetisierbaren, zB Verzögerung und Verlustrechnung und kann es nicht geben, optimale Ergebnisse in allen Fällen, in denen besondere Logik Hardware-Ressourcen zur Verfügung stehen. Aber, um die Leistung mit strukturellen Code zu verbessern, muss er prüfen, die besondere Logik-Hardware, in der Regel durch herstellerneutrale Bibliotheken.
 
thank u! ok ich habe es kodiert, wie Sie zeigte mir, hier ist der Verhaltenskodex:
Code:
 LIBRARY IEEE; VERWENDEN IEEE.STD_LOGIC_1164.ALL; ENTITY SRFF IS PORT (S, R, Uhr, klar: std_logic; Q: OUT std_logic) ; END SRFF; ARCHITECTURE Verhalten SRFF IS BEGIN PROCESS (Clock, Clear) - Empfindlichkeit Liste wird BEGIN IF (löschen = '1 ') THEN Q
 
Es sollte funktionieren beim Instanziieren des SR-FF in strukturellen Code. Haben Sie bemerkt, dass der VGA-Controller von Enoch O. Hwang Website www.cs.lasierra.edu/ ~ ehwang wird in der Regel mit "behavioral" Codierung? Meiner Meinung nach ist es viel funktioneller und besser lesbar.
 
yeah, bemerkte ich, danke .. aber ich bin nicht sicher, wird es, wenn ich will einfach kopieren und fügen Sie es auf meine ISE arbeiten ... für synthesation .. Auch Stifte mustbe zugeordnet .. thats, warum ich alles von Grund auf strukturell-Code zu bauen, aber was sich auf die Schaltpläne des Enoch.
 
Ich würde erwarten, dass die Altera beispielsweise mit Xilinx so gut funktionieren, bewirken, dass der VGA-Controller selbst nutzt nur gemeinsame VHDL Konstrukte. Mit Ihrer "strukturelle" Beschreibung, sollten Sie ein Verständnis der strukturellen Elemente sind eigentlich in FPGA zur Verfügung. Dies sind nicht Toren nicht LUT basierte Logikblöcke ., Wo ein D-FF eine elementare Funktion ist Das Ignorieren dieser Tatsachen, können Sie zB bewirken, dass der HDL-Compiler, um eine kombinatorische Logik-Schleife anstelle eines Flip-Flops, möglicherweise nicht funktionsfähig, da der Timing-Probleme.
 
Ich habe strukturelle SR FF-Code kompiliert und kam zu wissen, 1. Sie addierte Signal "clear" in Structural_SR_FF, warum? auch das Signal nicht referrred anywhere else?
 

Welcome to EDABoard.com

Sponsor

Back
Top