diff --git a/src/main/dig/pld/PLA.dig b/src/main/dig/pld/PLA.dig
index 414ebb126..4a7d1250d 100644
--- a/src/main/dig/pld/PLA.dig
+++ b/src/main/dig/pld/PLA.dig
@@ -455,7 +455,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -465,7 +465,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -479,7 +479,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -493,7 +493,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -507,7 +507,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -517,7 +517,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -531,7 +531,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -545,7 +545,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -559,7 +559,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -573,7 +573,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -583,7 +583,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -593,7 +593,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -607,7 +607,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -621,7 +621,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -635,7 +635,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -645,7 +645,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -867,7 +867,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -881,7 +881,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -895,7 +895,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -909,7 +909,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -919,7 +919,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -929,7 +929,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -939,7 +939,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
@@ -949,7 +949,7 @@ A B C D Y_3
- DiodeForeward
+ DiodeForward
rotation
diff --git a/src/main/dig/pld/WiredOr.dig b/src/main/dig/pld/WiredOr.dig
index f52bef3b9..8867bf268 100644
--- a/src/main/dig/pld/WiredOr.dig
+++ b/src/main/dig/pld/WiredOr.dig
@@ -75,7 +75,7 @@ Z Z 0
- DiodeForeward
+ DiodeForward
rotation
@@ -85,7 +85,7 @@ Z Z 0
- DiodeForeward
+ DiodeForward
rotation
diff --git a/src/main/java/de/neemann/digital/core/pld/DiodeBackward.java b/src/main/java/de/neemann/digital/core/pld/DiodeBackward.java
index 26a0b67bc..3713cb718 100644
--- a/src/main/java/de/neemann/digital/core/pld/DiodeBackward.java
+++ b/src/main/java/de/neemann/digital/core/pld/DiodeBackward.java
@@ -12,7 +12,7 @@ import static de.neemann.digital.core.element.PinInfo.input;
* A diode needed to pull a wire to ground.
* Used to build a wired AND.
*/
-public class DiodeBackward extends DiodeForeward {
+public class DiodeBackward extends DiodeForward {
/**
* The description
diff --git a/src/main/java/de/neemann/digital/core/pld/DiodeForeward.java b/src/main/java/de/neemann/digital/core/pld/DiodeForward.java
similarity index 90%
rename from src/main/java/de/neemann/digital/core/pld/DiodeForeward.java
rename to src/main/java/de/neemann/digital/core/pld/DiodeForward.java
index 3c32864c5..27d60ecb0 100644
--- a/src/main/java/de/neemann/digital/core/pld/DiodeForeward.java
+++ b/src/main/java/de/neemann/digital/core/pld/DiodeForward.java
@@ -11,12 +11,12 @@ import static de.neemann.digital.core.element.PinInfo.input;
* A diode needed to pull a wire to VDD.
* Used to build a wired OR.
*/
-public class DiodeForeward implements Element, Observer {
+public class DiodeForward implements Element, Observer {
/**
* The diodes description
*/
- public static final ElementTypeDescription DESCRIPTION = new ElementTypeDescription(DiodeForeward.class, input("in"))
+ public static final ElementTypeDescription DESCRIPTION = new ElementTypeDescription(DiodeForward.class, input("in"))
.addAttribute(Keys.ROTATE)
.addAttribute(Keys.BLOWN);
@@ -30,7 +30,7 @@ public class DiodeForeward implements Element, Observer {
*
* @param attr the elements attributes
*/
- public DiodeForeward(ElementAttributes attr) {
+ public DiodeForward(ElementAttributes attr) {
this(attr, DESCRIPTION, PinDescription.PullResistor.pullDown);
}
@@ -41,7 +41,7 @@ public class DiodeForeward implements Element, Observer {
* @param description used to set the output pin description
* @param requiredResistor resistor needed at the output net
*/
- protected DiodeForeward(ElementAttributes attr, ElementTypeDescription description, PinDescription.PullResistor requiredResistor) {
+ protected DiodeForward(ElementAttributes attr, ElementTypeDescription description, PinDescription.PullResistor requiredResistor) {
output = new ObservableValue("out", 1, true).setPinDescription(description).setBidirectional();
this.requiredResistor = requiredResistor;
blown = attr.get(Keys.BLOWN);
diff --git a/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java b/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java
index eb5376866..069fc8d41 100644
--- a/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java
+++ b/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java
@@ -11,7 +11,7 @@ import de.neemann.digital.core.flipflops.FlipflopT;
import de.neemann.digital.core.io.*;
import de.neemann.digital.core.memory.*;
import de.neemann.digital.core.pld.DiodeBackward;
-import de.neemann.digital.core.pld.DiodeForeward;
+import de.neemann.digital.core.pld.DiodeForward;
import de.neemann.digital.core.pld.PullDown;
import de.neemann.digital.core.pld.PullUp;
import de.neemann.digital.core.switching.*;
@@ -124,7 +124,7 @@ public class ElementLibrary implements Iterable
.add(BitCount.DESCRIPTION))
.add(new LibraryNode(Lang.get("lib_cplx"))
//.add(Diode.DESCRIPTION) // see class DiodeTest for further information
- .add(DiodeForeward.DESCRIPTION)
+ .add(DiodeForward.DESCRIPTION)
.add(DiodeBackward.DESCRIPTION)
.add(Switch.DESCRIPTION)
.add(Relay.DESCRIPTION)
diff --git a/src/main/java/de/neemann/digital/draw/shapes/ShapeFactory.java b/src/main/java/de/neemann/digital/draw/shapes/ShapeFactory.java
index 2b09c6529..39bd586e2 100644
--- a/src/main/java/de/neemann/digital/draw/shapes/ShapeFactory.java
+++ b/src/main/java/de/neemann/digital/draw/shapes/ShapeFactory.java
@@ -114,7 +114,7 @@ public final class ShapeFactory {
map.put(TestCaseElement.TESTCASEDESCRIPTION.getName(), TestCaseShape::new);
map.put(Diode.DESCRIPTION.getName(), DiodeShape::new);
- map.put(DiodeForeward.DESCRIPTION.getName(), DiodeForewardShape::new);
+ map.put(DiodeForward.DESCRIPTION.getName(), DiodeForewardShape::new);
map.put(DiodeBackward.DESCRIPTION.getName(), DiodeBackwardShape::new);
map.put(PullUp.DESCRIPTION.getName(), PullUpShape::new);
map.put(PullDown.DESCRIPTION.getName(), PullDownShape::new);
diff --git a/src/main/resources/lang/lang_de.xml b/src/main/resources/lang/lang_de.xml
index 9d2a714ed..f750e670d 100644
--- a/src/main/resources/lang/lang_de.xml
+++ b/src/main/resources/lang/lang_de.xml
@@ -343,16 +343,16 @@ Die gesammte Speichergröße beträgt damit damit dx*dy*2 Speicherworte.
Ist der Eingang 0 ist auch der Ausgang 0. In allen anderen Fällen ist der Ausgang hochohmig.
Ist der Eingang 0 ist auch der Ausgang 0. In allen anderen Fällen ist der Ausgang hochohmig.
- Diode zu Plus
- Vereinfachte unidirektionale Diode, die nur genutzt werden kann, um eine Leitung auf Plus zu ziehen.
+ Diode zu Plus
+ Vereinfachte unidirektionale Diode, die nur genutzt werden kann, um eine Leitung auf Plus zu ziehen.
Wird verwendet um ein "Wired Or" zu implementieren. Daher ist am Ausgang ein Pull Down Widerstand erforderlich!
Innerhalb der Simulation verhält sich eine Diode wie ein aktives Gatter mit dreiwerteiger Wertetabelle:
Ist der Eingang 1 ist auch der Ausgang 1. In den anderen Fällen (0 und hochohmig) ist der Ausgang hochohmig (High Z).
Damit können sich antiparallel zusammen geschaltete Dioden gegenseitig im high-Zustand halten, was mit realen
Dioden nicht möglich ist.
Es handelt sich um eine ideale Diode: In Durchlassrichtung gibt es keinen Spannungabfall über der Diode.
- Ist der Eingang 1 ist auch der Ausgang 1. In allen anderen Fällen ist der Ausgang hochohmig.
- Ist der Eingang 1 ist auch der Ausgang 1. In allen anderen Fällen ist der Ausgang hochohmig.
+ Ist der Eingang 1 ist auch der Ausgang 1. In allen anderen Fällen ist der Ausgang hochohmig.
+ Ist der Eingang 1 ist auch der Ausgang 1. In allen anderen Fällen ist der Ausgang hochohmig.
Pull-Up Widerstand
Ein "Weak High".
Ist eine Leitung hochohmig, zieht sie ein Pull-Up Widerstand zu High.
diff --git a/src/main/resources/lang/lang_en.xml b/src/main/resources/lang/lang_en.xml
index 4f0f192bf..4c071be96 100644
--- a/src/main/resources/lang/lang_en.xml
+++ b/src/main/resources/lang/lang_en.xml
@@ -336,15 +336,15 @@
So this is a ideal diode: There is no voltage drop across a forward-biased diode.
If the input is low also the output is low. In all other cases the output is in high z state.
If the input is low also the output is low. In all other cases the output is in high z state.
- Diode to VDD
- A simplified unidirectional diode, used to pull a wire to VDD. It is used to implement a wired OR.
+ Diode to VDD
+ A simplified unidirectional diode, used to pull a wire to VDD. It is used to implement a wired OR.
So it is necessary to connect a pull down resistor to the diodes output.
In the simulation the diode behaves like an active gate with a trivalent truth table:
Is the input high, also the output is high. In all other cases (input is low or high z) the output is in high z state.
So two anti parallel connected diodes can keep each other in high state, which is not possible with real diodes.
This is an ideal diode: There is no voltage drop across a forward-biased diode.
- If the input is high also the output is high. In all other cases the output is in high z state.
- If the input is high also the output is high. In all other cases the output is in high z state.
+ If the input is high also the output is high. In all other cases the output is in high z state.
+ If the input is high also the output is high. In all other cases the output is in high z state.
Pull-Up Resistor
If a net is in a HighZ state, this resistor pulls the net to high. In any other case this component has no effect.
A "weak high".
diff --git a/src/test/resources/dig/test/pld/DiodeForeward.dig b/src/test/resources/dig/test/pld/DiodeForeward.dig
index ff957e8ff..b503c61a0 100644
--- a/src/test/resources/dig/test/pld/DiodeForeward.dig
+++ b/src/test/resources/dig/test/pld/DiodeForeward.dig
@@ -13,7 +13,7 @@
- DiodeForeward
+ DiodeForward
rotation