Pipelining in Verilog

A

Aymen

Guest
Esmu rakstisku šo kodu, lai veiktu komplekss daudzkāršošana 2 numuri ar konjugāts ir otrā numurs:
Kods:modulis PipedCompMultConj (CLK, dr1, di1, dr2, di2, drout, diout);

ievade [3:0] dr1, di1, dr2, di2;

ievade CLK;

produkcija [7:0] drout, diout;

stieple [7:0], R1, R2, R3, R4, R5, R6;reg [15:0] IR;

reg [31:0] PR1;

reg [31:0] PR2;

reg [15:0], vai;piešķirt drout = VAI [7:0];

piešķirt diout = VAI [15:8];mult_pipe m1 (IS [3:0], IR [7:4], r1);

mult_pipe m2 (IS [11:8], IR [15:12], r2);

mult_pipe m3 (PR1 [23:20], PR1 [27:24], r3);

mult_pipe M4 (PR1 [19:16], PR1 [31:28], R4);cla8_adder C1 (R5, PR2 [7:0], PR2 [15:8]); / / reālā daļa

cla8_sub c2 (R6, PR2 [23:16], PR2 [31:24]); / / iedomāts daļavienmēr @ (negedge CLK)

sākt

IR <= (di2, di1, dr2, dr1);

PR1 <= (IS, r2, r1);

PR2 <= (R4, r3, PR1 [15:0]);

Vai <= (R6, R5);

beigasendmodule

 
Hi Aymen ,

Es domāju, ka īstenošana ir labi.Varat arī sintēze tā, lai redzētu, kas jums.

 
thank u very much wadaye, I've sintezēt šo kodu, izmantojot Xilinx ar un bez pipelining.Maksimālo biežumu, ko iegūst ar pipelining ir mazāks nekā gadījumā bez pipelining.
!!!???

 
Ar Xilinx FPGA, piemēram, Spartas-3 un Virtex-II, Jums ir jābūt papildu uzmanīgi, pipelining izplatītājiem.Tas pieprasa vairāk reģistru, nekā jūs parasti sagaida.Rūpīgi pārbaudīt sintēze un laika rezultātus, lai redzētu, kas notiek.

Esmu pārliecināts, ka ASIC metodes ir dažādas.

Ar Xilinx instrumentus, var izmantot parasto * - Verilog uzņēmējiem, nevis instantiating aritmētiskajām moduļiem.Es domāju, ka tas padara kods vieglāk lasīt.

Starp citu, jūs varat darīt, sarežģīts reizināšanas ar 3 izplatītājas un 5 papildinātāju.

 
Citāts:

Starp citu, jūs varat darīt, sarežģīts reizināšanas ar 3 izplatītājas un 5 papildinātāju.
 
piemēram
x = a bi
y = c di
reālā = ac-bd
im = (a b) (c d)-ac-bd
iemesls, varbūt maksimālā aiztures starp posmiem, ir tas pats, tas nemaina, lai gan jūs pievienoja extra posms
salīdzinājumā ar unpipeline struktūra, cauruļvadu strucure excute to pašu darbojas vairāki cikli, tāpēc biežums var tikt ātrāk,
kā savu kodu,
lai arī jūs pievienotu papildu stadijā, bet darbojas par maksimālo ceļš dont samazinājums

 
Kādi Xilinx FPGA jūs lietojat?

Kas ir tie mult_piped un cla8 moduļus?Par Xilinx instrumenti neietver jebkādu šādu moduļiem.A pāris minūtēm ...Oh my ak Dievs, jūs, izmantojot šo?
http://www.pldworld.com/_hdl/1/www.doulos.co.uk/models/model_9901.htm

Man nav pētīts, ka kods, bet pēc pirmā acu uzmetiena tas izskatās pārāk sarežģīta, un nepareizi pipelining par Xilinx FPGA.

Vai jums tiešām ir nepieciešams tikai 4-bit reizināšanas?Es domāju, ka viens Xilinx pavairojošu bloķēt var darīt divus nelielus reizināšanas vienlaicīgi.

 
pēc tā, kā tad, ja tikai 4 bitu reizinātājs
izmaksas, datortehnikas un 3 izplatītājas un 5 papildinātāju
varbūt ne labāk, nekā 4 izplatītāju un 2 papildinātāju

 
Citāts:Vai jums tiešām ir nepieciešams tikai 4-bit reizināšanas?
Es domāju, ka viens Xilinx pavairojošu bloķēt var darīt divus nelielus reizināšanas vienlaicīgi.

 
Skatīt app atzīmēt 467, page 6, "Divas izplatītājiem ar vienu primitīvas".Es neesmu to izmēģināju.
http://direct.xilinx.com/bvdocs/appnotes/xapp467.pdf

 

Welcome to EDABoard.com

Sponsor

Back
Top