per suposat que si són ells o escriure en una forma en què ha de ser
és una idea simple
no inclouen el retard en el bucle ja que els retards no es synthesis
For (i = 0, i <10, i )
Crec que funciona .....
mentre que aquest ......
For (i = 0, i <k, i )
on k és una variable de canvis durant la simulació ......... .....
No penso que serà synthesis ........
Sí!
Per bucle synthesize només si és "k" és constant variable ..
nombre ha de ser limitat a 32 bits de valor!o v
s'ha de definir de longitud variable de 32 bits o 64 bits, mentre que declarar ...
És synthesize però sempre és aconsellable per als bucles que no són per ser utilitzats en la codificació de RTL.Això és degut a que consumeix gran quantitat de recursos (com la zona etc.etc).U Tanmateix pot utilitzar en la codificació del comportament becuse no sintetitzar codis de conducta.
l'ús de bucles (i quan) consumeix gran quantitat de hardware i aleshores es planteja en general la freqüència de pèrdua.per tant, és aconsellable evitar els bucles de codificació a RTL.i l'eina de síntesi també exerceix un paper mojor.
per Verilog HDL, com el seu nom ho diu, és un llenguatge per descriure un circuit.per la qual cosa no pot dependre de l'eina per a generar la síntesi del seu circuit abans de dissenyar el circuit itself.
tals com el codi
For (i = 0, i <k, i )
¿Has vist tal circuit?si no ho han fet, com pot vostè demanar a un mathine per generar un circuit per a tu?
És synthesize però sempre és aconsellable per als bucles que no són per ser utilitzats en la codificació de RTL.
Això és degut a que consumeix gran quantitat de recursos (com la zona etc.etc).
U Tanmateix pot utilitzar en la codificació del comportament becuse no sintetitzar codis de conducta.
És evident que un ha de tenir cura per fer bucles synthesize (bàsicament, assegureu-vos que la terminació de circuit es troba en alguns constant).
Voldria aprofitar qüestió que "no ha d'usar" ...aparentment a causa que "consumeixen excessiu espai".Ells tenen el seu lloc a la simplificació de codificació.Un exemple seria la realització de detecció de vores en una matriu de valors, per exemple:
sencer i;
sempre @ (posedge CLK)
començar
for (i = 0, i <NUMBER_OF_PORTS, i = i 1)
començar
port_was <= port_is ;
if (port_was == 1'b0 & & port_now == 1'b1)
port_edge_hi_detected <= 1'b1;
una mica més
port_edge_hi_detected <= 1'b0
final
final
Tingueu en compte que sempre la @ no pot estar dins del bucle for.
Aquest és un estil de codificació.Que consumeix res més lògic que si jo havia tallat i enganxat les còpies de les clàusules ...I ...que permet la constant de ser un paràmetre,
per la qual cosa el codi pot expandir /
contreure per a determinats usos.NUMBER_OF_PORTS ha de resoldre a una constant en temps de compilació.
Aquests dies, qualsevol eina de síntesi val res ha de gestionar aquest tipus d'ús sense problemes.
Això és synthesis, però no és útil quan
s'utilitza el codi de bloqueig cessió.Té l'efecte de la còpia membres [0] per als membres [1] ..membres [6] i la reducció a zero membres [7].Un bucle de HDL no és mai "executant forma seqüencial", que s'avalua, però en seqüència executats en paral lel.
Ús de nonblocking "<=" cessió, el codi seria bàsicament un canvi de registre, que sona més significativa per a la meva opinió.Sobreescriptura de memòria [7] que encara es produeixen, però.
Això és synthesis, però no és útil quan s'utilitza el codi de bloqueig cessió.
Té l'efecte de la còpia membres [0] per als membres [1] ..
membres [6] i la reducció a zero membres [7].
Un bucle de HDL no és mai "executant forma seqüencial", que s'avalua, però en seqüència executats en paral lel.Ús de nonblocking "<=" cessió, el codi seria bàsicament un canvi de registre, que sona més significativa per a la meva opinió.
Sobreescriptura de memòria [7] que encara es produeixen, però.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.