Schönen Samstag Abend! Ich bin Anfänger was VHDL und FPGAs angeht. Ich verwende VIvado 2020.1 und das Basys3-Board. Ich habe schon ein paar kleinere Sachen zum Laufen gebracht, aber eine Sache stört mich bzw. macht das Ganze sehr lästig: Vivado scheint den Inhalt der Constraint Datei zu ignorieren. Dort steht nämlich welche physischen Pins welchen FPGA-internen Signalen zugeordnet sind und mit welchen Pegeln diese arbeiten (LVCMOS33 und so). Aber jedes Mal wenn ich ein Design synthetisieren und implementieren lasse dann bekomme ich Fehlermeldungen die besagen dass Pins nicht "fixiert" sind und dass die Pegel der Pins nicht festgelegt sind, obwohl das alles in der Constraint Datei steht. Also muss ich jedes mal wenn ich etwas in meinem Design ändere und neu synthetisiere / implementiere die Pins wieder festlegen. Das ist sehr lästig und irritierend. Wie kann man dieses Problem lösen? Was für eine Einstellung muss ich ändern oder was muss ich in der Constraint Datei tun damit all diese Zuweisungen wirklich verwendet werden?
Tja wie so oft fehlen Details, hier: - Die genaue und vollständige Fehlermeldung - Die .xdc Datei. - Eventuell auch die Toplevel HDL Datei mit der Portbeschreibung.
Gut, hier ist die Constraint Datei und die TopLevel Datei. Die Fehlermeldung ist folgende: [DRC NSTD-1] Unspecified I/O Standard: 12 out of 15 logical ports use I/O standard (IOSTANDARD) value 'DEFAULT', instead of a user assigned specific value. This may cause I/O contention or incompatibility with the board power or connectivity affecting performance, signal integrity or in extreme cases cause damage to the device or the components to which it is connected. To correct this violation, specify all I/O standards. This design will fail to generate a bitstream unless all logical ports have a user specified I/O standard value defined. To allow bitstream creation with unspecified I/O standard values (not recommended), use this command: set_property SEVERITY {Warning} [get_drc_checks NSTD-1]. NOTE: When using the Vivado Runs infrastructure (e.g. launch_runs Tcl command), add this command to a .tcl file and add that file as a pre-hook for write_bitstream step for the implementation run. Problem ports: VgaB[3:0], VgaG[3:0], and VgaR[3:0]. [DRC UCIO-1] Unconstrained Logical Port: 12 out of 15 logical ports have no user assigned specific location constraint (LOC). This may cause I/O contention or incompatibility with the board power or connectivity affecting performance, signal integrity or in extreme cases cause damage to the device or the components to which it is connected. To correct this violation, specify all pin locations. This design will fail to generate a bitstream unless all logical ports have a user specified site LOC constraint defined. To allow bitstream creation with unspecified pin locations (not recommended), use this command: set_property SEVERITY {Warning} [get_drc_checks UCIO-1]. NOTE: When using the Vivado Runs infrastructure (e.g. launch_runs Tcl command), add this command to a .tcl file and add that file as a pre-hook for write_bitstream step for the implementation run. Problem ports: VgaB[3:0], VgaG[3:0], and VgaR[3:0].
Nun, die Namen passen ja auch nicht zusammen. Schreib in deiner Toplevel genau die Namen hin wie sie auch in der .xdc stehen, also: vgaR,vgaG,vgaB: OUT STD_LOGIC_VECTOR(3 downto 0)
Ja, das erklärt einiges .... Danke, es funktioniert jetzt ohne Probleme!
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.