Hardware Reference
In-Depth Information
entity
Komplexgatter
is
generic
(tau:delay_length:=
100ps
;
bn1, bn2, bn3, bn4, bn5:real:=
1.0
;
bp1, bp2, bp3, bp4, bp5:real:=
1.0
);
port
(x1, x2, x3, x4, x5:
in
std_logic;
y:
out
std_logic);
end entity
;
architecture
Sim
of
Komplexgatter
is
signal
yy;std_logic;
begin
process
(x1, x2, x3, x4, x5)
variable
n, p: tRelB;
begin
-- relative Transistorbreite
p := ((To_RelB(
not
x1, bn1)
or
To_RelB(
not
x2, bn2))
and
To_RelB(
not
x3, bn3))
or
(To_RelB(
not
x4, bn4)
and
To_RelB(
not
x5, bn5));
n := ((To_RelB(x1, bn1)
and
To_RelB(x2, bn2))
or
To_RelB(x3, bn3))
and
(To_RelB(x4, bn4)
or
To_RelB(x5, bn5));
-- Zuweisung Folgewert 'X' nach th
if
yy=
'0'
and
p.bmax>
0.0
then
yy <=
'X'
after
(
2.0
/p.bmax)*tau;
elsif
yy=
'1'
and
n.bmax>
0.0
then
yy <=
'X'
after
(
1.0
/n.bmax)*tau;
end if
;
-- Zuweisung des Folgewerts '1' bzw. '0' nach td
if
n.bmax=
0.0
and
p.bmin>0.0
then
yy <=
transport
'1'
after
(
2.0
/p.bmin)*tau;
elsif
p.bmax=
0.0
and
n.bmin>
0.0
then
yy <=
transport
'0'
after
(
1.0
/n.bmin)*tau;
end if
;
y <= yy;
end process
;
end architecture
;
U
V
x
1
x
3
x
2
x
4
x
5
y
x
4
x
5
x
2
x
1
x
3
⇒
Web-Projekt:P4.2/Komplexgatter.vhdl
Abb. 4.38. Simulation mit geschalteten Transistorbreiten
in der Weckliste beschrieben. Aus den Reihen- und Parallelschaltungen sind
für die beiden Netzwerke folgende logische Funktionen ablesbar:
n = ((x
1
x
2
) _x
3
) (x
4
_x
5
)
p = ((x
1
_ x
2
) x
3
) _ (x
4
x
5
)
Im Simulationsmodell werden die logischen Eingabewerte zuerst in relati-
ve Transistorbreiten konvertiert und dann mit den überladenen UND- und
ODER-Operatoren in derselben Weise wie in den logischen Ausdrücken zu-
sammengefasst. Die Berechnung der Wertänderung für das Ausgabesignal be-