Re: se kdo PLS SLIKA IZ D prob .. (VERILOG MODELLING Čmičak

N

naizath12

Guest
i sestavljajo naslednji program.modul division_try (/ * delitelj, dividende, * / količnik, ostanek);
proizvodnja [3] količnika;
proizvodnja [3] preostanek;
/ / input [3] delitelj;
/ / input [3] dividende;

reg [3] delitelj = 'B10; / / Initialise
reg [3] dividenda = "B1010; / / initalisereg [3] divisor_alias;
začetni
divisor_alias = delitelj;

reg [3] količnika;
začetni
kvocient = dividende;reg aMSB_old;
reg [3] preostanek;
reg [7] concat_aq;
integer n;vedno
začeti

for (n = 0 n <4; n = n 1)
začeti
concat_aq = (preostanek, kvocient);
concat_aq = concat_aq <<1;

if (aMSB_old)
začeti
adder4 / / / / NAPAKA TUKAJ ////////////////////////
A1 (preostanek, divisor_alias, B0, ostanek);
konec

drugje, če (aMSB_old == 0)
začeti
sub4 ///// NAPAKA TUKAJ ////////////////////////
A2 (preostanek, divisor_alias, B0, ostanek);
konec

aMSB_old = preostanek [3];

primeru (aMSB_old)
1: kvocient [0] = 0;
0: kvocient [0] = 1;
endcase
konec

if (aMSB_old)
začeti
adder4 ////// ERRORHERE ////////////////////////
A3 (preostanek, delitelj, "B0, ostanek);
konec

konec
endmodulein ko sem sintetizovani kode (z moduli za adder4 in sub4 ki so si jih drugi klic drugega submodule vsak)
I wasn't sposobni za sintetiziranje

sem dobil naslednje sporočilo o napaki

NAPAKA: HDLCompilers: 26 - "division.v" line 57 nepričakovan žeton: "adder4"
NAPAKA: HDLCompilers: 26 - "division.v" line 63 nepričakovan žeton: "sub4"
NAPAKA: HDLCompilers: 26 - "division.v" line 77 nepričakovan žeton: "adder4"

sem šla v napačno pretoka ??..... so proti ne bi smel uporabljati nepretrgano izjav znotraj procesnih blok ??....( v mojem primeru sem poskusila z uporabo dodeliti-deassign & veljavnosti-releasse ampak tudi v zaman ....

lahko u PPL pomagaj mi ??...Dodano po 4 ure, 1 minut:pPL je težava s pretokom ....statement!!!!!

i so instantiated modul znotraj vedno
izjavo !!!!!

toda hočem, da moja moduli (adder4 in sub4) v sekvenčni način ....
kako naj to naredim?

thnx vnaprej

 
Mislim, da ste poskušal storiti pogojno generacije logika ...Tega ni mogoče storiti z uporabo preprostih Če-ostalo ..Kaj morate storiti, je uporabiti Če-ustvarjajo izkazi, tj pogojena ustvarjajo ...

Koda:ustvari

če

še

endgenerate

 
Poskušal sem z uporabo tat preveč ... ampak zaman ....
Prav tako sem poskusil z uporabo dodeliti-deasign izjave
in tudi veljati sproščanjem (4 simulacija namen) preveč ... ampak
didnt dela ....

kot sem slišal wat FRM a verilog strokovnjak ..

statemnt....

Pravi tat i ne morejo uporabljati modul instantiation znotraj vedno
statemnt ....
.....

vendar ne vem, kako se izvrši koda, ki uporablja različne module v sekvenčni način
.....

 
bodo imenovani zaporedno samodejno, kadar se uporabljajo, če izjavo.
instantiate njimi

 
mislite ..če (pogoj)
začeti
Modul 1;
elseif (stanje)
Modul 2
še
module3
konec

... Poskušal sem tis ... it
doesnt dela .. "je, če coz-drug potrebujestatement!!!!!!....else u get an error like

vedno
izjavo !!!!!!.... drug u javi napako, kot
NAPAKA: HDLCompilers: 26 - "division.v" line 51 pričakoval "endmodule", ugotovljeno "če"

....

 
Živjo,

V nadaljevanju instantiation, lahko spremenite v "B0 do 1'b0 in poskusite ......

A1 (preostanek, divisor_alias, B0, ostanek);

 
Zdravo naizath

Lahko si vizualizirati kaj dejansko poskušal storiti s pogojno instantiating je seštevalniki / subtractors v tem zakoniku.

Na splošno.pogojena instantiation v možnosti v Verilog2001, ampak kot je bilo že omenjeno uporabo ustvari konstrukt.vendar to ni vaš namen, kaj mora biti tukaj.

Poskušate uporabo splošnega programskega koncepta kličoča zahtevane funkcije glede na vhodne ste prejeli.Primeru ni enak v HDL.Tukaj instantiations (četudi pogojno) lahko odvisni samo od vrednosti, ki ne spreminjajo runtime.Tako naj bi instantiations odvisni samo od vrednosti opredeljujejo kot "ali parametrov ali konstante ...

Morala bi razumeti dejstvo, da je posledica strojne opreme ne more imeti noben način ustvarjanja potrebnih seštevalnik / subtractor na lastno pobudo.Moraš instantiate jih za njihovo uporabo.

 
thnx PPL .......
i rešiti problem ...
namesto instantiating moduli i shud've uporabljajo naloge / funkcije (jest svoje rutinski klic )....
Zdaj njegovih delovnih phaka !!!!!

 

Welcome to EDABoard.com

Sponsor

Back
Top