21.07.2013 Aufrufe

1. Einleitung - FG Mikroelektronik, TU Berlin

1. Einleitung - FG Mikroelektronik, TU Berlin

1. Einleitung - FG Mikroelektronik, TU Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Kapitel 6 EVL-Unit<br />

in der Registerfile (Counter_RF als RAM-Zelle, 32x13 Bits). Das Rücksetzen der Register<br />

in der Registerfile geschieht aufgrund der RAM-Struktur aber leider nicht in einem Takt,<br />

sondern benötigt so viele Takte wie die Anzahl der Register, nämlich 32.<br />

Nach der Initialisierung geht die FSM in den Wartezustand, hier als „Start“ genannt,<br />

über. Hier muss die FSM ständig nach Request-Signalen „horchen“, selbstverständlich in<br />

der Reihenfolge der vergebenen Prioritäten. Das Prinzip ähnelt dem eines Bus-Arbiters.<br />

Insgesamt gibt es fünf verschiedene Request-Forderungen an die EVL-FSM:<br />

(1) ATN1 feuert und eine oder beide Delays sind di >1, i = 1 oder 2<br />

(2) ATN2 feuert und eine oder beide Delays sind di >1, i = 1 oder 2<br />

(3) Ein BP-Neuron wurde mit einer Verzögerung Fire-Next >1 berechnet<br />

(4) Die Daten des Blockes [TS+1] in der Eventliste (EVL-Speicher) müssen zur<br />

SNT-Unit (bei ASN, <strong>1.</strong> Zeile) und TNT-Unit (bei ASN, 2. Zeile und bei BP-<br />

Neuronen) übertragen werden<br />

(5) Die Zeitscheibe wechselt, d. h. TS erhöht sich um eins.<br />

Da es bei der „Integrate_and_Fire Unit“ (IFU) zwei Prozessoreinheiten PE1 und PE2 gibt,<br />

die zwei ATN parallel behandeln können, sind hier ATN1 und ATN2 Neuronen gemeint,<br />

die in den genannten Prozessoreinheiten im Augenblick in Behandlung stehen.<br />

Das Schreiben eines ASN und der zugehörigen Empfängerparameterzeile (Fall 1 oder 2)<br />

benötigt insgesamt 5 Takte. In den ersten drei Takten werden die entsprechenden Daten<br />

und Adressen vorbereitet. Im Takt 4 und 5 (insgesamt zwei Zeilen) werden die vorbereitete<br />

Informationen zum SRAM (EVL) geschickt. Parallel wird im Takt 5 der ausgelesene<br />

Zähler um 2 inkrementiert und in das entsprechende Register in der Registerfile<br />

(Counter_RF, Bild 6.4) zurückgeschrieben. Das Schreiben eines BP-Neurons (Fall 3)<br />

erfordert hingegen nur 4 Takte, da es keine Parameterzeile besitzt. Das Entleeren des<br />

Blockes [TS+1] geschieht in Abhängigkeit vom Zählerstand eines Dekrementierers (Fall<br />

4). Ist dieser Stand größer 0, dann sollte der Block [TS+1] erst ausgelesen werden, wenn es<br />

keine andere Requests gibt. Das bedeutet, dass diese Request die niedrigste Priorität hat.<br />

Bei jedem dieser Auslesevorgänge werden stets zwei Zeilen geholt. Insgesamt benötigt<br />

diese Prozedur auch 5 Takte. In den ersten beiden Takten werden die Lese-Adressen<br />

generiert. In Takt 2 und 3 werden die generierten Adressen an den SRAM angelegt und in<br />

den letzten beiden Takten die Daten abgeholt. Das Entleeren eines Blockes funktioniert<br />

nach dem „Last-In-First-Out“-Prinzip, d.h. das zuletzt eingetragene Datum wird nun zuerst<br />

wieder ausgelesen. Der Zähler läuft also rückwärts und heißt deshalb Dekrementierer. Zu<br />

SPINN-Chip: NTC/TNC-Modul 53

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!