fast punkt underskrevet multiplikation

S

siva_7517

Guest
Hej, jeg i øjeblikket laver en FFT til 8 point. Dybest set, har jeg problemer med fast punkt multiplikation, fordi der er en udvidet tegn smule før indsættelse. Jeg har ingen idé om, hvordan man skriver dette i Verilog kode. Jeg forsøger med denne Verilog kode: tildele A = B * C, men det giver et forkert svar. eksempel på beregningen er vist nedenfor: ----------------- 1,110 ____________ -0,25 B -------------- x 0,110 ____________ 0,75 C - ---------------------- ---------------- 0000 ----------- -111110 -------------------> udvidede tegn lidt ------------ 11110 ------------ ---------> udvidede tegn lidt ----------+ 0000 ------------------------- ---- ---------- 11110100 _______________-0,1875 A Når vi laver et fast punkt multiplikation der er ekstra tegn bit i indsættes før indsættelse er færdig. Jeg har svært ved om, hvordan man intepret dette i verilog.thanx Siva
 
Et eksempel på tegn forlængelse: input [07:00] a, b, reg [08:00] signed_a, signed_b, altid (.. noget ..) begynder signed_a = {a [7], a}; signed_b = {b [7], b}; .. noget andet ende
 
Hej, Thanx for vejledning. Jeg er lidt forvirret i kodningen på sammenkædningsoperatoren, der er blevet brugt. Kan jeg få forklaring på det? På forhånd tak Siva
 
Den konkatenere operatør kombinerer MSB af en (og b) med at danne en 9-bit værdi. For eksempel en = 8'b1000_0111; {a [7], a} = 9'b1_1000_0111;
 

Welcome to EDABoard.com

Sponsor

Back
Top