fiksēto punktu parakstīto reizināšanas

S

siva_7517

Guest
Čau,

Es šobrīd dara FFT 8 punktu.Būtībā es
ir problēma ar fiksētu punktu reizināšanas jo
ir pagarināts zīmes bits pirms pievienošanas.Es esmu
nav ideju par to, kā rakstīt to verilog kodu.

Mēģinu šo verilog kods:

uzdot = B * C

bet tā dod nepareizu atbildi.piemērs aprēķins ir parādīts zemāk:----------------- 1,110 ____________ -0,25 B
-------------- x 0.110 ____________ 0,75 C
-----------------------
---------------- 0.000
------------ 111.110 -------------------> pagarināts zīmes bits
------------ 11.110 ---------------------> pagarināts zīmes bits
---------- 0.000
-----------------------------
---------- 11110100 _______________-0,1875Kad mēs fiksētas reizināšanas nav papildus zīmes bits ir ievietota pirms pievienošanas tiek darīts.Man ir grūti par to, kā intepret to verilog.thanx

Siva

 
Piemēram zīmju tipu:

ievade [7:0], b;

reg [8:0] signed_a, signed_b;

vienmēr (.. kaut ..) sākas
signed_a = ([7],);
signed_b = (b [7], b);
..kaut kas cits
beigas

 
Čau,

Paldies par guide.Es esmu mazliet sajaukt kodēšanas par konkatenācijas operators, kas ir izmantotas.Vai man ir skaidrojums par to?
Thanks in advance

Siva

 
Saķēdēt operators apvieno MSB par (un b) kopā ar veidlapu 9-bitu vērtību.Piemēram,

= 8'b1000_0111;

([7],) = 9'b1_1000_0111;

 

Welcome to EDABoard.com

Sponsor

Back
Top