Habe folgendes Problem beim Kombilieren erkennt er nicht das operator '=' if iSel= "000" then oY <= iInput(1); elsif iSel = "001" then oY <= iInput(2); elsif iSel = "010" then oY <= iInput(3); elsif iSel = "011" then..... Fehlermeldung: # ** Error: C:/Documents and Settings/BOSS/My No feasible entries for infix operator "=". # ** Error: C:/Documents and Settings/BOSS/My Type error resolving infix expression "=" as type std.standard.boolean. Habe einen Subtype in Package erstellt: subtype sSelect is unsigned (0 to 2); .... iSel:in sSelect; .... Mit Case Statements funktioniert es! Finde den Fehler nicht. Funktioniert auch mit std_match nicht, findet die Funktion nicht.
Wie willst du einen skalaren Typ mit einem Vektor vergleichen? Hinweis: unsigned (0 To 2) ist kein Vektor von 3 unsigneds (das wäre Array(0 To 2) of unsigned), sondern ein auf den Wertebereich 0 bis 2 eingeschränktes unsigned.
Ohne Ahnung sollte man vielleicht keine Antwort geben ... diesen Operator gibts nicht in VHDL. Die Meldung bedeutet, dass der "="-Operator nicht für die verwendeten Datentypen existiert. Versuch mal iSel als std_logic_vector(0 to 2) zu verwenden und nicht als unsigned(0 to 2).
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.