Converters between 2-,3-,4- and 9-valued logic
The Converter BooleanToLogic, LogicToBoolean, RealToLogic, and LogicTo Real components are not standard logic components. They were designed to easily convert from or to Boolean or Real valued signals. The LogicToX01, LogicToX01Z and LogicTo UX01 converters correspond to standard logic functions. They transform 9-valued logic to 3- or 4-valued logic.
Extends from Modelica.Icons.Package (Icon for standard packages).
Name | Description |
---|---|
LogicToX01 | Conversion to X01 |
LogicToX01Z | Conversion to X01Z |
LogicToUX01 | Conversion to UX01 |
BooleanToLogic | Boolean to Logic converter |
LogicToBoolean | Logic to Boolean converter |
RealToLogic | Real to Logic converter |
LogicToReal | Logic to Real converter |
LogicToXO1 | This model will be removed in future Modelica versions, use 'LogicToX01' instead! |
LogicToXO1Z | This model will be removed in future Modelica versions, use 'LogicToX01Z' instead! |
Conversion to X01
Conversion of a nine valued digital input into a X01 digital output without any delay according to IEEE 1164 To_X01 function.
Conversion Table:
input output 'U' (coded by 1) 'X' (coded by 2) 'X' (coded by 2) 'X' (coded by 2) '0' (coded by 3) '0' (coded by 3) '1' (coded by 4) '1' (coded by 4) 'Z' (coded by 5) 'X' (coded by 2) 'W' (coded by 6) 'X' (coded by 2) 'L' (coded by 7) '0' (coded by 3) 'H' (coded by 8) '1' (coded by 4) '-' (coded by 9) 'X' (coded by 2)
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |
Conversion to X01Z
Conversion of a nine valued digital input into a X01Z digital output without any delay according to IEEE 1164 To_X01Z function.
Conversion Table:
input output 'U' (coded by 1) 'X' (coded by 2) 'X' (coded by 2) 'X' (coded by 2) '0' (coded by 3) '0' (coded by 3) '1' (coded by 4) '1' (coded by 4) 'Z' (coded by 5) 'Z' (coded by 5) 'W' (coded by 6) 'X' (coded by 2) 'L' (coded by 7) '0' (coded by 3) 'H' (coded by 8) '1' (coded by 4) '-' (coded by 9) 'X' (coded by 2)
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |
Conversion to UX01
Conversion of a nine valued digital input into a UX01 digital output without any delay according to IEEE 1164 To_UX01 function.
Conversion Table:
input output 'U' (coded by 1) 'U' (coded by 1) 'X' (coded by 2) 'X' (coded by 2) '0' (coded by 3) '0' (coded by 3) '1' (coded by 4) '1' (coded by 4) 'Z' (coded by 5) 'X' (coded by 2) 'W' (coded by 6) 'X' (coded by 2) 'L' (coded by 7) '0' (coded by 3) 'H' (coded by 8) '1' (coded by 4) '-' (coded by 9) 'X' (coded by 2)
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |
Boolean to Logic converter
Conversion of a Boolean input into a digital output without any delay according to:
input output true '1' (coded by 4) false '0' (coded by 3)
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |
Logic to Boolean converter
Conversion of a digital input into a Boolean output without any delay according to:
input output 'U' (coded by 1) false 'X' (coded by 2) false '0' (coded by 3) false '1' (coded by 4) true 'Z' (coded by 5) false 'W' (coded by 6) false 'L' (coded by 7) false 'H' (coded by 8) true '-' (coded by 9) false
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |
Real to Logic converter
Conversion of a real input into a digital output without any delay according to:
condition output first check: input greater upp lupp second check: input larger low llow else lmid
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
upper_limit | upper limit |
lower_limit | lower limit |
upper_value | output if input > upper_limit |
lower_value | output if input < lower_limit |
middle_value | output else |
Name | Description |
---|---|
x[n] | |
y[n] |
Logic to Real converter
Conversion of a digital input into a Real output without any delay according to:
input output 'U' (coded by 1) val_U 'X' (coded by 2) val_X '0' (coded by 3) val_0 '1' (coded by 4) val_1 'Z' (coded by 5) val_Z 'W' (coded by 6) val_W 'L' (coded by 7) val_L 'H' (coded by 8) val_H '-' (coded by 9) val_m
The values val... are given by parameters.
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
value_U | value for digital U (uninitialized) |
value_X | value for digital X (Forcing Unknown) |
value_0 | value for digital 0 (Forcing 0) |
value_1 | value for digital 1 (Forcing 1) |
value_Z | value for digital Z (High Impedance) |
value_W | value for digital W (Weak Unknown) |
value_L | value for digital L (Weak 0) |
value_H | value for digital H (Weak 1) |
value_m | value for digital m (Do not care) |
Name | Description |
---|---|
x[n] | |
y[n] |
This model will be removed in future Modelica versions, use 'LogicToX01' instead!
This model will be removed in future versions of the Modelica Standard Library. Instead the model LogicToX01 shall be used.
Conversion of a nine valued digital input into a X01 digital output without any delay according to IEEE 1164 To_X01 function.
Conversion Table:
input output 'U' (coded by 1) 'X' (coded by 2) 'X' (coded by 2) 'X' (coded by 2) '0' (coded by 3) '0' (coded by 3) '1' (coded by 4) '1' (coded by 4) 'Z' (coded by 5) 'X' (coded by 2) 'W' (coded by 6) 'X' (coded by 2) 'L' (coded by 7) '0' (coded by 3) 'H' (coded by 8) '1' (coded by 4) '-' (coded by 9) 'X' (coded by 2)
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |
This model will be removed in future Modelica versions, use 'LogicToX01Z' instead!
This model will be removed in future versions of the Modelica Standard Library. Instead the model LogicToX01Z shall be used.
Conversion of a nine valued digital input into a X01Z digital output without any delay according to IEEE 1164 To_X01Z function.
Conversion Table:
input output 'U' (coded by 1) 'X' (coded by 2) 'X' (coded by 2) 'X' (coded by 2) '0' (coded by 3) '0' (coded by 3) '1' (coded by 4) '1' (coded by 4) 'Z' (coded by 5) 'Z' (coded by 5) 'W' (coded by 6) 'X' (coded by 2) 'L' (coded by 7) '0' (coded by 3) 'H' (coded by 8) '1' (coded by 4) '-' (coded by 9) 'X' (coded by 2)
If the signal width is greater than 1 this conversion is done for each signal.
Name | Description |
---|---|
n | signal width |
Name | Description |
---|---|
x[n] | |
y[n] |