VHDL: Wahrheitstabelle in der Bibliothek ieee std_logic

Ich habe untersucht, wie IEEE seine Bibliotheken definiert. Als ich aufgemacht habestdlogic BibliothekIch habe ein paar Wahrheitstabellen gesehen, die als konstant definiert sind. Ich habe keine Ahnung, wie die Wahrheitstabellen funktionieren. Bitte erläutern Sie anhand der Wahrheitstabelle, wie das Ergebnis zurückgegeben wird. Hier ist, was ich für "UND" Tor gefunden habe:

TYPE stdlogic_table IS ARRAY(std_ulogic, std_ulogic) OF std_ulogic;

-- truth table for "and" function
CONSTANT and_table : stdlogic_table := (
--      ----------------------------------------------------
--      |  U    X    0    1    Z    W    L    H    -         |   |  
--      ----------------------------------------------------
        ( 'U', 'U', '0', 'U', 'U', 'U', '0', 'U', 'U' ),  -- | U |
        ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ),  -- | X |
        ( '0', '0', '0', '0', '0', '0', '0', '0', '0' ),  -- | 0 |
        ( 'U', 'X', '0', '1', 'X', 'X', '0', '1', 'X' ),  -- | 1 |
        ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ),  -- | Z |
        ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ),  -- | W |
        ( '0', '0', '0', '0', '0', '0', '0', '0', '0' ),  -- | L |
        ( 'U', 'X', '0', '1', 'X', 'X', '0', '1', 'X' ),  -- | H |
        ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' )   -- | - |
);

FUNCTION "and"  ( l : std_ulogic; r : std_ulogic ) RETURN UX01 IS
BEGIN
    RETURN (and_table(l, r));
END "and";

"UX01" ist definiert als

SUBTYPE UX01 IS resolved std_ulogic RANGE 'U' TO 'Z';

Ich habe keine Ahnung, wie das Schlüsselwort "gelöst" verwendet wird. "gelöst" ist als eine Funktion in der Bibliothek definiert

FUNCTION resolved (s: std_ulogic_vector) RETURN std_ulogic;

Ich habe eine Weile gegoogelt, wie die Wahrheitstabelle funktioniert, aber kein Glück, eine Erklärung zu finden. Bitte erläutern Sie, wie die Tabelle die Eingaben bewertet. Danke vielmals

Antworten auf die Frage(1)

Ihre Antwort auf die Frage