Tvivl om tilfælde erklæring i VHDL / Verilog

H

harisachin

Guest
Den almindeligt anvendte Case-sætningen: Sag my_signal er, når a => ...; når b => ...; når andre => ...; ende sag; Er der nogen forskel mellem den ovenstående kode og følgende kode, i hensyn til syntese optimering? Sag '1 'er, når (my_signal = a) => ...; når (my_signal = b) => ...; når (andre) => ...; ende tilfælde, jeg kom til at kende fra 1 højtstående person i industrien, at sidstnævnte kode er faktisk en fordel for en eller anden grund. Jeg var ikke i stand til at få grunden fra ham på grund af omstændigheder. Han sagde, at 1. kode vil syntheisze i mere komparatorer ... Kan nogen venligst hjælpe mig med at finde årsagen til, at 2. Kode er bedre end 1. en?
 
dette ligner VHDL. I VHDL, ser det temmelig meningsløst. tilfælde '1 'kun har 1 option (når noget = '1'). Og de sager Arnt lovligt bedriften til dette, fordi de vurderer til sand / falsk, som er en anden type fra '1 'bit. Nu, kan det have hjulpet i dage, hvor camparaters omkostningerne større mængder logik i form af en procentdel, men nu-adays med moderne udstyr er meget meget bedre at skrive kode, der giver mening i stedet for at forsøge at redde de ulige LUT / tilmeld dig her og der.
 
Den anden konstruktion er hverken juridisk VHDL eller Verilog syntaks, så det er ikke lige klart, hvilken forskel du refererer til. I modsætning til Verilog, ikke VHDL ikke kender parallelle sager (overlappende betingelser). Endelig, hvis to konstruktioner er funktionelt tilsvarende, er de højst sandsynligt ender i den samme gate niveau netlist duting syntese.
 

Welcome to EDABoard.com

Sponsor

Back
Top