[elektro] Xilinx, tobb clock

BEREGNYEI Balazs bereg at impulzus.com
Wed Jan 9 16:48:57 CET 2008


Hali,

Adott egy Verilog kod Spartan3-hoz, ami ket jol elkulonitheto reszbol all 
(A es B), koztuk egy dual port Block RAM-on megy a kommunikacio (A 
kuld B-nek). Plusz egy vezeteken A jelez B-nek, hogy kesz vannak az 
adatok a block RAM-ban, viheti.

Problema: ha A es B ugyanolyan orajellel megy (a 20 MHz-es global 
clock-ot egy DCM-mel felszorzom), akkor 150 MHz a plafon. Ha ket kulon 
DCM-mel hajtom A-t es B-t, akkor fele-ketharmada a maximalis sebesseg a 
Webpack szerint. Peldaul a 80 MHz-es A es a 100 MHz-es B mar nem koser.

Szinkronizalas: B-bol A-ba nem kell, mert amig A elokesziti a kovetkezo 
block RAM-nyi adatot, addig B biztosan vegez. A-bol B-be pedig egyetlen 
szinkronizalo flip-flop elegendo, az A 80 MHz-es egy ciklusig fennallo 
jelzeset B siman veszi 100 MHz-en. A block RAM-ot sosem kezelem egyszerre 
mindket oldalarol: vagy A ir a 80 MHz-es porton, vagy B olvas a 100 
MHz-es porton, szigoruan elkulonitve.

Mi lehet a jelenseg oka, miert lassabb a rendszer a Webpack szerint ket 
kulonbozo orajellel?

Koszi,
BB



More information about the Elektro mailing list