[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