Hi zusammen! Ich sitze vor einem schier unlösbaren Problem. Leider werden einige der im .ucf spezifizierten Pins von ISE 12.4 nicht übernommen, sondern anders geroutet. Ich weiß nicht woran das liegen kann, bzw. wie ich die Software zur Übernahme der Vorgaben zwingen kann. Hat jemand von Euch eine Idee? Wäre echt lieb weil ich gerade nicht mehr weiter weiß...
Poste doch mal die Log-Dateien von Map und PAR. Da steht bestimmt was drin dazu.
Da wird es doch sicher eine Warnung zu geben, wenn irgendein Constraint nicht übernommen wir.
Christian R. schrieb: > Poste doch mal die Log-Dateien von Map und PAR. Da steht bestimmt was > drin dazu. Das ucf file wird vom NGDbuild eingelesen. Fehler beim Einlesenen sollten also in desen Log-file zu finden sein (meist *.bld). PAR hat nix mit dem einlesen der LOC-constraints aus dem ucf zu schaffen und MAP baut auf das Ergebniss von ngdbuilt auf. Options zu NGDbuildfindest du hier: http://www.xilinx.com/support/documentation/sw_manuals/xilinx12_1/pp_db_translate_properties.htm Interessant könnte -r sein, der alle dazu führt das alle LOC-Constraints ignoriert werden. Schreib mal irgendeinen Bockmist in das ucf, wenn die tools nicht abbrechen, dann liest er ein anderes ucf als das an dem du editierst. MfG,
Ist die Schreibweise auch konsistent, insb. die Vektorschreibweise? Es gibt auch eine map-Option (XILINX_MAP_LOCWARN=y), die dazu führt, dass im ucf spezifizierte Pins nicht vorhanden sein müssen und nur Warnings produzieren. Das kann zum Testen etc. schon sehr praktisch sein, einen aber auch übel beissen...
Georg A. schrieb: > dass im ucf spezifizierte Pins nicht vorhanden sein müssen > und nur Warnings produzieren. Insbesondere, wenn man "Allow Unmatched LOC Constraints" angekreuzt hat...
Lothar Miller schrieb: >> dass im ucf spezifizierte Pins nicht vorhanden sein müssen >> und nur Warnings produzieren. > Insbesondere, wenn man "Allow Unmatched LOC Constraints" angekreuzt > hat... Das ist so nicht ganz korrekt. Allow Unmatched LOC Constraints bezieht sich nicht auf nicht vorhandende PINS, sondern auf nicht vorhandene (bspw. wegoptimiert da (noch) nicht beschaltet) SIGNALE. Lt. TO gibt es die Signale aber sehr wohl im Schlussdesign, werden aber an andere pins geroutet als vorgegeben ("Leider werden einige der im .ucf spezifizierten Pins von ISE 12.4 nicht übernommen, sondern anders geroutet.") Das klingt m.E. nicht nach einem "Allow Unmatched LOC Constraints" (wegoptimierte IO-Signale). MfG
> Das klingt m.E. nicht nach einem "Allow Unmatched LOC > Constraints" (wegoptimierte IO-Signale). Doch, wenn die Signale nach der Synthese irgendwie anders heissen und die Option an ist. Die im UCF vorgesehenen Pins bleiben für die nicht vorhandenen Signale reserviert, die "falsch" Benannten suchen sich einen freien Platz...
Georg A. schrieb: >> Das klingt m.E. nicht nach einem "Allow Unmatched LOC >> Constraints" (wegoptimierte IO-Signale). > > Doch, wenn die Signale nach der Synthese irgendwie anders heissen und > Die im UCF vorgesehenen Pins bleiben für die nicht > vorhandenen Signale reserviert, die "falsch" Benannten suchen sich einen > freien Platz... Ob es solche Signale gibt, die sich selbst einen Stuhl pardon Pin genommen habeb kann man aus dem PAR-Report ershen (*.par) -> Number of BUFGMUXs 3 out of 8 37% Number of DCMs 1 out of 4 25% Number of External IOBs 102 out of 173 58% Number of LOCed IOBs 102 out of 102 100% Die Pins die in der Zeile " Number of LOCed IOBs" an den 100% fehlen, sind solche. Das die Ports der Top_entity nach der Synthese "irgendwie anders heissen" ist mir noch nicht untergekommen. Grad mal bei den arrays gibts es definierte Umbenennungen. Und das die Pin-Locs für nichtaufgefundene Signal automatisch für diese Implementierung als do not use reserviert sind, ist mir auch neu. Nach meinen Wissen werden pins nur durch das Schlüsselwort PROHIBIT für die anderenen Tools blockiert. Aber ich lasse mich gern durch Zitate der entsprechenden Passagen in der Dok vom Gegenteil überzeugen.
Ich hatte auch mal den gleichen Effekt. Da hatte es geholfen das UCF File mit Remove aus dem Projekt zu entfernen. Und danach wieder mit Add source das File wieder in das Projekt zu nehmen. Dann wurden die Pins richtig zugewiesen.
Tja, das kommt davon, wenn man diesem ISE-GUI-Horror (seit 14 Jahren immer wieder neu, aber dieselbe Sch..sse) vertraut. Ein Makefile und gut ist.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.