Problemy z implementacją w CPLD

Nie widze innej metody na zapisanie danych "w locie". Zbocze narastajace nWE musi wystąpić raz na okres zegara przecież. Piszesz, że to twój ulubiony moment walki ?!? A jak walczyć? Jeżeli już wiem, który sygnał powoduje błąd to jak go wyeliminować?

pozdrawiam Sludig

Reply to
Sludig
Loading thread data ...

raczej adres NIE moze sie zmieniac na obu zboczach :) musisz zapewnic stabilny adres co najmnie 0ns przed opadajacym zboczem we i co najmniej 0ns po rosnacym zboczem;

optymista jestes; one-hot jest zwykle szybszym kodowaniem, a to sugeruje, ze poprawne dzialanie zalezy od jakis opoznien w fpga, nieprzewidywalnych i co wazniejsze niepowtarzalnych; moze sie zdarzyc, ze na 5 kosciach bedzie dzialac, na szostej nie bedzie; albo odwrotnie;

ta szpilka swiadczy o zlym rozwiazaniu; domyslam sie, ze nWriteEnable to nWR, czyli 'aktywny' jest puls: H-L-H; czyli bardziej pogladowo byloby: !nWriteEnable <= !nWriteToMem AND !Clock AND nReadFromMem; szpilka wynika prawdopodobnie z tego, ze nWriteToMem lub nReadFromMem tez jest zapisywany opadajacym zboczem Clock, a to jest pewnie efektem tego, ze fsm pedzisz odwroconym zegarem; a ten xilinx ma pll w sobie ? JA

Reply to
JA

Chodzi o to, ze przy logice kombinatoryjnej generujesz opoznienia ktore sa przenoszone 'dalej'. Zmniejsza to Fmax (nie ma duzego znaczenia dla CPLD, ale w fpga to czasem jest 'killer' predkosci).

Jak musi, to o tym wiesz. Jak o tym wiesz, to zrob ladnego if coby dff wygenerowal - 90% ze rozwiazesz sprawe (nawet bez wdawania sie w szczegoly).

Nie masz sygnalu ktory powoduje blad. Masz po prostu blad w projekcie (cos jak memory leak przy pisaniu programow). Po prostu nie zawsze sie objawia.

Nie da rady nic wiecej powiedziec nie widzac kodu - wiec proponuje EOT.

Aha: sprawdz to jeszcze raz zanim zrobisz tego 10.000 sztuk ;-)

Reply to
Jerry1111

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.