Wat is het verschil tussen Structural Verilog en Gedragsal Verilog?

Zoals in de titel, wat zijn de belangrijkste verschillen tussen structureel en gedragsverdediging?


Antwoord 1, Autoriteit 100%

Er is geen strikte definitie van deze voorwaarden, volgens de IEEE STD. Maar gewoonlijk, structureel verwijst naar het beschrijven van een ontwerp met behulp van module-instanties (in het bijzonder voor de bouwstenen op de lagere niveau zoals poorten en flip-flops), terwijl gedragsmatig verwijst een ontwerp beschrijven met alwaysblokken.

Gate Netlists zijn altijd structureel en RTL-code is meestal gedragsmatig . Het is gebruikelijk voor RTL om gevallen van klokpoorten en synchronisatorcellen te hebben.


Antwoord 2, Autoriteit 75%

structureel

Hier worden functies gedefinieerd met behulp van basiscomponenten zoals een omvertor,
Een MUX, een opteller, een decoder, standaard digitale logische poorten enz. Het is gewoon
zoals het verbinden en regelen van verschillende delen van circuits die beschikbaar zijn voor
implementeer een functie.

nectious

De gedragsomschrijving in Verilog wordt gebruikt om de functie te beschrijven
van een ontwerp op een algoritmische manier. Gedragsmodellering in Verilog
Gebruikt constructen vergelijkbaar met C-taalconstructen. Verder is dit
verdeeld in 2 subcategorieën.

  • (a) continu

Toewijzing van gegevens aan uitgangen zijn continu. Dit zal zijn
geïmplementeerd met behulp van expliciete “Assign” -afschriften of door een toe te wijzen
waarde voor een draad tijdens de verklaring.
In geval van toewijzing van elke wijziging in de invoer zal
onmiddellijk de uitvoer beïnvloeden. Vandaar dat de uitgang moet worden gedeclareerd als
wire

  • (b) Procedureel

Hier worden de gegevenstoewijzingen niet continu uitgevoerd, maar
gebeurt op specifieke gebeurtenissen die zijn gespecificeerd in de gevoeligheidslijst. Dit soort
modelleringsschema wordt geïmplementeerd met behulp van procedurele blokken zoals:
“altijd” of “eerste” .

Hier moeten uitvoervariabelen worden gedefinieerd als regomdat ze moeten
houd de vorige waarde vast totdat een nieuwe toewijzing plaatsvindt na een wijziging in de gespecificeerde gevoeligheidslijst.

Hopelijk helpt dit 🙂


Antwoord 3

Structurele Verilog wordt meestal verwezen naar een Verilog-code die synthetisch kan worden gemaakt (een nauwkeurige en betekenisvolle hardwarerealisatie heeft) en meestal is geschreven in Register Transfer Level (RTL).
Aan de andere kant is Behavioural Verilog meestal een gedragsbeschrijving van een hardware of functionaliteit op een hoger niveau. gedragscode hoeft niet synthetisch te zijn, bijvoorbeeld wanneer u een vertraging definieert in uw verilog-code geschaald door de tijdschaal, de synthesizer houdt er geen rekening mee wanneer het uw code vertaalt naar logica en hardware, maar heeft eerder simulatiedoeleinden.
Hetzelfde geldt voor structurele en gedragsmatige VHDL.


Antwoord 4

Behavioral gebruikt geen logische poortbeschrijving die u kunt gebruiken And,Or,Not-poorten die al zijn gedefinieerd in verilog
terwijl structureel gebruik maakt van logische poorten beschrijving waar je beschrijft dat je een module wilt genaamd (And/Or/Not) en beschrijft wat het doet & / | / ~.


Antwoord 5

Structurele verilog behandelt de primitieven in eenvoudige woorden zoals en, of, niet enz..
De primitieven worden aangeroepen/afgeleid uit bibliotheken en verbonden met invoer-uitvoerpoorten.
Voorbeeld

module structural(y,a,b);
    input a,b;
    output y;
    and a1 (y,a,b); // and is the primitive inferred and a1 is the instance name.
 endmodule

Behavioral verilog gaat over de logica of het gedrag van een systeem. Het behandelt complexe logische implementatie en daarom implementeren in de industrie allemaal de gedragsmodellen van het systeem dat RTL wordt genoemd. Zodra de gedrags-RTL is gevalideerd door front-end-ingenieurs die SV/UVM gebruiken, wordt deze RTL omgezet in Gate Level, d.w.z. Structural, die voor synthese gaan.

Raadpleeg het boek van verilog geschreven door Samir Palnitkar voor meer details.


Antwoord 6

Verilogis zowel een gedrags- als een structurele taal. De binnenkant van elke module kan worden gedefinieerd op vier abstractieniveaus, afhankelijk van de behoeften van het ontwerp.
Structural Verilog beschrijft hoe een module is samengesteld uit eenvoudigere modules of uit elementaire primitieven zoals poorten of transistors. Gedragsverilog beschrijft hoe de outputs worden berekend als functies van de inputs.

Gedragsniveau
->Dit is het hoogste abstractieniveau van Verilog HDL. voornamelijk construeren met behulp van
“altijd” en “eerste” blok.

Gegevensstroomniveau
-> Op dit niveau wordt de module ontworpen door de gegevensstroom te specificeren. voorwaarde beschrijven met behulp van “toewijzen” trefwoord.

Poort niveau
->De module is geïmplementeerd in termen van logische poorten en onderlinge verbindingen tussen
deze poorten.

Schakelniveau
->Dit is het laagste abstractieniveau van Verilog. Een module kan zijn:
geïmplementeerd in termen van switches, opslagknooppunten en de onderlinge verbindingen
tussen hen.

Other episodes