Multioperand Poleg tega je v VHDL?

D

Dra

Guest
Lets Domnevam Q0, p0, p1, Q1 so 8 bitni vektorji nepodpisan.

Želim izračunati izraz:

delta = ((P0-Q0) <<2 (p1-Q1) 4)>> 3
Izraz lahko vrednosti med [-158159],
delta da je treba bit 9 dolžina vključno prijavite 2'complement.

To je mogoče opisati v VHDL multioperand kot dodatek, ne da bi
ločeno izvajanje posameznih tega?Dodano po 37 minutah:In drugo vprašanje multioperand dodatek.
Lets imajo, b, c, d unsigned 8 bit vektorjev in naslednji izraz
Rezultat = a b c d, rezultat mora biti dolg 10 bitov.

Je naslednji izraz pravilno VHDL?
rezultat <= "00" & "00" & b "00" & c "00" in razvoj;

 
Izraz je nepravilen, vzrok in ne več kot je precendence .Needs parantheses.

 
Vi ste popolnoma prav FVM, sem jih pozabil.

Pravilna je:
rezultat <= ( "00" &) ( "00" & b) ( "00" & c) ( "00" & d);

Lets reči na primer, da se 9 bitov, 8 bitov, b, c in d 7 bits 7 bitov nepodpisana in smo jih dodajte v naslednji enačbi:

Rezultat = a b c d.

Največja vrednost izraza zgoraj 1020, tako da rezultat mora biti dolg 10 bitov.
Izraz VHDL bodo:
rezultat <= ('0 '&) b c d;

Ali bo ta izraz pripravi pravilno sintezo rezultatov?

 
y u ne moremo uporabljati unsigned razširitev bitwidth rezultata

 

Welcome to EDABoard.com

Sponsor

Back
Top