.
RUN=0
Aus FIFO.XOUT wird der XIN ausgegeben, der als
letzter vorgegeben war, und zwar solange, bis dein
N erreicht ist.
--> wie bei deinem DELAY-Baustein
RUN=1
Auf den letzten Wert von SUM wird der Wert aufaddiert,
den der DRITTletzte XIN gehabt hat.
Zeile 4:
XIN = 3 aus Zeile 3 und N = 1 --> FIFO.XOUT = 3
Zeile 5
XIN = 3 aus Zeile 3 und N =2 --> FIFO.XOUT = 3
Zeile 6
XIN = 3 aus Zeile 3 und N =3 --> FIFO.XOUT = 3
Zeile 7
XIN = 4 aus Zeile 4 und N =4 --> FIFO.XOUT = 4
Und SUM in Zeile 6 errechnet sich aus dem vorherigen SUM-Wert
zuzüglich dem in dieser Zeile gültigen Wert aus FIFO.XOUT.
Also vorherige SUM=12 + FIFO.XOUT=3 macht SUM=15
Du musst erkennen, dass das N jeweils bei RUN = 0 oder 1
anders benutzt wird.
Bei RUN=0 wird XIN damit multipliziert, um SUM zu ermitteln.
Bei RUN=1 wird der XIN[Zeilennummer um N vermindert] genommen
und auf SUM aufaddiert.
.
Ich verstehe nur Bahnhof.
Was ich verstehe ist:
-RUN = 0 und XIN = 1 --> XIN wird so wie er ist an FIFO.XOUT weitergegeben.
--> Die Summe ergibt sich aus N*XIN = 3*1=1
--> Der XOUT ergibt sich aus "Summe / N" oder einfach der Wert aus FIFO.XOUT
Das Ganze ist auch bei RUN := 0 und XIN= 2 und 3.
-------------------------------------------------------------------------
Das Nächste sehe ich so:
- RUN = 1 und XIN = 4 --> der XIN ergibt sich aus dem XIN aus Zeile 3 addiert mit 1 = 4
--> aber wie komme ich auf FIFO.XOUT = 3 ?
------------------------------------------------------------------------------------------------------
Du schreibst in Absatz 2 das auf den SUM der 3. letzte Wert aufaddiert wird. Das ist in Zeile 4 --> 9 ( SUM aus Zeile 3 )+1= 10. Die 10 wird dann in SUM der Zeile 4 geschrieben. Bis zur Zeile 5. Da steht die 12.
In Zeile 6 wird nun die SUM anders berechnet, und zwar mit dem SUM-Wert aus Zeile 5 addiert dem FIFI.XOUT-Wert aus Zeile 5. Das ergibt 15.
Warum wird da nun anders gerechnet??
Im letzten Absatz schreibst Du, das bei RUN=1 der XIN um N ( also 3 ) vermindert genommen und auf die SUM aufaddiert wird.
Bis Zeile 6 passt das auch aber ab Zeile 7 hätte ich einen Wert von 19 ( 7-3=4 ; 15+4=19 ).
Die restlichen Zeilen wären dann auch falsch.
Und wie ich ab Zeile 4 au fden FIFO.XOUT komme verstehe ich auch nicht.
Muß gleich zur Arbeit. Werde mich morgen nochmal dransetzen.
MfG