Wie sieht ein Van-Neumann Rechner aus? (Programm- u. Datenspeicher, Bus, Control unit, Processing unit)
Probleme davon? (→ sequentielle Instruktionsabarbeitung)
Wie kann man das verbessern? (→ Pipelining, Cache-Hierarchien)
Welche konfigurierbare Hardware gibt es und klassifizieren Sie diese? (→ PAL, PLA, CPLD, FPGA)
Unterschied PAL, PLA und wie sind diese konfigurierbar? (→ PAL: programmierbare UND-Matrix, PLA programmierbare UND- und ODER-Matrix, Konfiguration durch Durchbrennen von Transistoren)
Implementiere Sie mal „AB+C(not D)A+BD“ als PAL.
Wie ist k-LUT in einem SRAM-basierten FPGA aufgebaut? (→ RAM-Zelle mit k LUT-Eingängen als Adressleitung und 2^k Einträgen von je einem Bit als Ausgang)
Implementieren Sie mal „AB+CD+AB(not C)+A“ mit 3-LUTs. (→ erste LUT hat A,B,C als Eingang, zweite LUT hat Ergebnis von erster LUT, C und D als Eingang).
Welche Algorithmen würden dieses Problem lösen? (→ Chortle-crf und Flow-Map)
Was ist der Unterschied bezüglich des Ergebnisses? (→ Chortle-crf minimiert Anzahl der LUTs, Flow-Map minimiert die Latenz)
Was ist die Latenz? (→ Anzahl der LUTs im kritischen Pfad - hier also 2)
1.0-Frage: Wie sieht eine 2-LUT als Netzliste aus? (→ 4 Flipflops mit nachgeschaltetem 4 zu 1 Multiplexer. 2 Inputs der LUT sind Selektor-Eingänge des Multiplexers)
Und wie sieht ein Multiplexer als Netzliste aus? (→ aus UND- und einem ODER-Gatter zusammenpuzzlen - vgl. TI1)