Feedback

luxic
Erstie
Erstie
Beiträge: 21
Registriert: 24. Jan 2017 16:09

Feedback

Beitrag von luxic » 21. Feb 2017 11:07

Hallo,
Da nun auch die Klausur hinter uns liegt dachte ich mir, dass ich doch nochmal ein wenig Feedback geben:

Vorlesung: Die Vorlesungen waren alle gut, Prof. Koch ist ein guter & sympathischer Dozent, er hat die Inhalte gut vorgetragen.

Vorlesungsinhalte:
- Entwurf: Dies war jetzt auch interessant, wobei mich persönlich Bluespec nicht sehr gepackt hat.
- Architekturen: SoCs sind interessant, jedoch war meine Erwartung, dass man hier verschieden Prozessorarchitekturen, wie z.B. ARM oder x86 und deren Vor-/Nachteile , sowie andere, typische, Komponenten eines Rechners (Grafikkarten, RAM, Boards) und deren Interaktion gezeigt bekommt (dies ist was ich unter Architekturen von Rechnersystemen verstehe, vielleicht kommt das ja noch in einem anderen Modul(?)).

Übungen: Die Übungen 1-4 waren ok, ich bin damit gut zurecht gekommen. Jedoch wurde es danach sehr abstrakt und meiner Meinung nach war es nicht möglich auf die Lösung zu kommen, ohne sich mit sehr viel Zeit in die Konzepte der Ideen und Bluespec einzuarbeiten (dafür hat mir bei einem 5CP Module schlicht die Motivation gefehlt), vielleicht wäre es hier besser, wenn man die Aufgaben mehr "Step-by-Step" stellt, sodass es leichter ist zu verstehen, was man denn jetzt genau tuen soll. Desweiteren fand ich es, gerade im Hinblick auf die Klausurvorbereitung, schade, dass es nur Bluespec Übungen gab und nicht auch theoretische Übungen.

Klausur: Die Klausur war alles in allem Fair, ein paar Aufgabenstellungen waren für mich ein wenig schwammig gestellt und es war vielleicht eine halbe Aufgabe zu viel (aber das ist ja immer so ;) ).

Organisation: Ich verstehe nicht, warum man nicht einfach Moodle benutzt, dies eignet sich m.M. nach sehr viel besser um Infos seitens der Veranstalter zu verteilen. Ein weiterer Vorteil wäre, dass man dann alle Kurse zentral gesammelt hat, und man für alle Sachen die die Kurse betreffen einfach in Moodle gehen muss und nicht mal hier und mal da.

Über ein Feedback zum Feedback seitens der Organisatoren würde ich mich freuen!

ps: Darf man nach einer geschätzten Korrekturzeit fragen? ;)

JHofmann
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 182
Registriert: 23. Apr 2015 10:43

Re: Feedback

Beitrag von JHofmann » 21. Feb 2017 14:39

Moin,

erst einmal danke für das Feedback :)
luxic hat geschrieben: - Architekturen: SoCs sind interessant, jedoch war meine Erwartung, dass man hier verschieden Prozessorarchitekturen, wie z.B. ARM oder x86 und deren Vor-/Nachteile , sowie andere, typische, Komponenten eines Rechners (Grafikkarten, RAM, Boards) und deren Interaktion gezeigt bekommt (dies ist was ich unter Architekturen von Rechnersystemen verstehe, vielleicht kommt das ja noch in einem anderen Modul(?)).
Leider ist der Platz in einer 5 CP Vorlesung stark beschränkt. Allerdings ist dies die erste Iteration der Veranstaltung und die eine oder andere Änderung wird noch kommen. Insbesondere das was Sie hier aufführen hätten wir auch gerne gebracht und wir werden sehen das wir solche Inhalte auch irgendwo unter bekommen.
luxic hat geschrieben: Übungen: Die Übungen 1-4 waren ok, ich bin damit gut zurecht gekommen. Jedoch wurde es danach sehr abstrakt und meiner Meinung nach war es nicht möglich auf die Lösung zu kommen, ohne sich mit sehr viel Zeit in die Konzepte der Ideen und Bluespec einzuarbeiten (dafür hat mir bei einem 5CP Module schlicht die Motivation gefehlt), vielleicht wäre es hier besser, wenn man die Aufgaben mehr "Step-by-Step" stellt, sodass es leichter ist zu verstehen, was man denn jetzt genau tuen soll. Desweiteren fand ich es, gerade im Hinblick auf die Klausurvorbereitung, schade, dass es nur Bluespec Übungen gab und nicht auch theoretische Übungen.
Die Übungen waren auch so konzipiert das sie eher zu viel Umfang als zu wenig haben, da es letzte Iteration (damals als CMS bekannt) wünsche nach umfangreicheren Übungen gab. Es war also durchaus gewollt, dass Sie sich einige Gedanken zu einer möglichen Architektur machen. Wir werden sehen das wir vielleicht mehr grundlegende Übungen neben den komplizierteren Übungen anbieten.

Bezüglich theoretischer Übungen muss ich mir noch ein Konzept überlegen, reine Frageblätter finde ich nicht sonderlich geeignet.
luxic hat geschrieben: Organisation: Ich verstehe nicht, warum man nicht einfach Moodle benutzt, dies eignet sich m.M. nach sehr viel besser um Infos seitens der Veranstalter zu verteilen. Ein weiterer Vorteil wäre, dass man dann alle Kurse zentral gesammelt hat, und man für alle Sachen die die Kurse betreffen einfach in Moodle gehen muss und nicht mal hier und mal da.
In meiner Studienzeit war es genau andersherum und keiner wollte Moodle verwenden. Sie wurden da wohl anders "Erzogen" :) Aber es ist kein Problem nächstes mal Moodle zu verwenden, das macht für uns keinen größeren Unterschied.
luxic hat geschrieben:ps: Darf man nach einer geschätzten Korrekturzeit fragen? ;)
Der Plan ist, dass die Korrekturen bis Ende März durch sind, wenn nichts dazwischen kommt.

Viele Grüße,

2basti
Erstie
Erstie
Beiträge: 15
Registriert: 17. Okt 2012 18:01

Re: Feedback

Beitrag von 2basti » 21. Feb 2017 16:00

Zum Thema Moodle vs. Forum:
Da es auch noch das normale Moodle gibt, wird es sowieso nie nur eine zentrale Seite geben.
Bei Problemen mit Bluespec haben mir einige Beträge aus dem Archiv geholfen (teilweise auch über google). Bei Moodle wird das Wissen aus den letzten Semestern verloren gehen

0b101101101
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 179
Registriert: 15. Apr 2015 18:24

Re: Feedback

Beitrag von 0b101101101 » 21. Feb 2017 20:54

Stimmt! Das ist irgendwie cool, wenn man eine Bluespec Fehlermeldung bei google eingibt und dann als ersten Treffer das d120 Forum Archiv findet! :D Hat also auch Vorteile.

Aber mit Moodle würde man vllt die beiden "nächste Vorlesung verschoben / fällt aus" Ankündigen per Mail zugeschickt bekommen und somit nicht verpassen, dass so was im Forum stehen könnte :oops:

Ich fand es auch unangenehm, dass es eigentlich nur Bluespec Übungen gab, die nur ungefähr 50% der Klausur darstellen und man für den Rest dann einfach nur lernen muss, ohne eine Idee zu haben was eigentlich interessant oder wichtig ist.


Und ich hätte noch einen konkreten Kommentar bezüglich der Bluespec-Übungen:

+ Jede Aufgabe sollte erwähnen welche Module man importieren muss. Server, FIFO, Vektor, PutGet, StmtFSM, etc. . So würde man erfahren wie der import heißt, so dass man besser das Packet suchen und nachschlagen kann. Außerdem muss man auch wissen, dass man sie überhaupt importieren muss, denn es gibt ja auch Sachen im Preludium, die man nicht importieren muss.

+ Es sollte deutlicher unterschieden werden:
1. wenn ein Interface aus der Standardbibliothek ist und bereits einen Implementierung hat, die man nutzen soll, (RWire, CReg)
2. wenn ein Interface aus der Standarbibliothek ist und man diese ignorieren soll und eine eigene schreiben soll (FIFO)
3. wenn ein Interface nur in der Aufgabenstellung angegeben wurde, und man es selbst implementieren soll. (CalcUnit)
Das war jedesmal merkwürdig, weil es eigentlich immer gleich klang:
"Verwenden Sie dafür einen Zähler und ein PulseWire mit folgender Definition. interface PulseWire; ..." (benutzen)
"Nutzen Sie dafür zwei RWire, die in einer gemeinsamen Rule abgefragt und in den entsprechenden Methoden gesetzt werden: interface RWire; ..." (benutzen)
"Nutzen Sie das folgende Interface: interface CalcUnit; ..." (selbst implementieren)
"Verwenden Sie folgendes Interface, denken Sie an passende Guards um das Überschreiben von Werten zu verhindern. interface FIFO; ..." (Standard ignorieren und selbst implementieren...)
Das sollte einfach umsetzen sein. Phrasen wie "nutzen sie dafür [das Modul aus der Standardbibliothek] FIFO [im Package FIFO :: *]" oder "Nutzen[Implementieren] Sie für diese Aufgabe selbst folgendes Interface" sollte reichen.

+ In der Lösung von Aufgabe 4.2 gab es ein paar Beispiel-Eingaben und Ausgaben. Es wäre schon wenn in den Aufgaben bei denen man Testen soll, mindestens eine davon in der Aufgabenstellung erwähnt wird, oder bei den Aufgabenstellung 5,6,7 wo man mit Bluecheck etwas testen soll, es einen zusätzlich Tipp gibt, mit was man den Code vergleichen könnte.

+ Ich fande die Aufgaben 5,6,7 waren irgendwie anders als die anderen.
Die Aufgabe 1 hatte das Ziel einem einfachen Bluespec Code schreiben zu lassen.
In der Aufgabe 2 konnte man dann FSMs, FIFOs, Vectoren, RWires/CRegs, Maybe benutzen.
In Aufgabe 3 hat man BlueCheck kennen gelernt.
In Aufgabe 4 konnte man dann Server und extend/pack/unpack ausprobieren.
In Aufgabe 5 habe ich dann die meisten Zeit über den Sortieralgorithmus nachgedacht und dann aufgegeben (eigentlich kein Thema von AER oder?).
In Aufgabe 6 ging es dann um MMIO.
In Aufgabe 7 ging es dann um Streams.
Hier erkennt man, dass in 5,6,7 nichts bluespec-mäßig-neues mehr als Hauptthema behandelt wurde! Wenn ich mir herausnehmen dürfte, dann würde ich behaupt das bezüglich Bluespec es hätte interessant sein könnte, in der Übung 5 mehrere Instanzen von Typklasse anzulegen, und in der Übung 6 mehrere Provisos zu schreiben. Immerhin wurden diese ja dann auch abgefragt, obwohl sie nur nebenbei benutzt wurden.

+ Bezüglich der Sortier/Median Aufgabe: Wie man mit 3Sortieren das größte und das kleinste Element von 9 Elementen findet, konnte ich mir denken. Aber ich habe es nicht geschafft, den Median zu finden. Auch als ich dann die Lösung gelesen hatte, ist mir noch ein bisschen schleierhaft, wie ich beweisen könnte, dass jetzt wirklich der Median von allen 9 gleich dem Median von (das größte Elemten von den linken 3, das Mittlere der mittleren 3, und das Kleinste der rechten 3) sein soll.
Vllt hätte man hier den Schwerpunkt der Aufgabe auf Bluespec legen können und den Algorithmus einfach vollständig vorgeben können, oder vllt einen ganz anderen einfacheren Algorithmus vorstellen können? Zum Beispiel mit 2-Eingang-Sortieren statt 3-Eingang-Sortieren kann man einfach abwechselnd bei 0 beginnend und bei 1 beginnend alle nebeneinanderliegenden Werte sortieren, bis man so oft gewechselt hat, dass das linkste Element bis ganz nach rechts hätte wandern können.

+ Bei Übung 6 werden erst lauter Signale in einer Tabelle erwähnt, und dann steht als nächstes da, dass man die Hälfte davon eh wieder vergessen darf, weil Bluespec die Valid-, Ready-Signale selbst generiert. Überhaupt verstehe ich auch nicht, warum die ersten 150 Zeilen des Lösungscode so kompliziert aussehen. Senden und Empfangen klingt doch eindeutig nach Server/Client Interface. Schließlich macht der Code da gar nichts, sondern tut irgendwie nur Daten von hier nach da weiterleiten. Sollte das nicht schon die toPut und toGet Methoden auch ohne diese Module schaffen? -- Es sieht sowieso so aus, als könnte man das ganze einfacher mit dem bereits bekannten Funktionen von Server, Client, PutGet, und mkConnection schreiben. Mein Versuche sah so aus:

Code: Alles auswählen

  typedef 8 AddrSize;
  typedef Bit#(AddrSize) Addr;
  typedef Bit#(16) Data;

  // Rq request; Rp response
  typedef struct { Addr addr; Data data; } WriteRq deriving (Eq, Bits, FShow);
  typedef Bool WriteRp;
  typedef Addr ReadRq;
  typedef Data ReadRp;

  interface Slave; // Slave bekommt RQs und sendet RPs
    interface Server#(WriteRq, WriteRp) write;
    interface Server#(ReadRq,  ReadRp)  read;
  endinterface

  interface Master; // Master sendet RQs und bekommt RPs
    interface Client#(WriteRq, WriteRp) write;
    interface Client#(ReadRq, ReadRp)   read;
  endinterface

  instance Connectable#(Master, Slave);
    module mkConnection#(Master m, Slave s)();
      mkConnection(m.write, s.write);
      mkConnection(m.read, s.read);
    endmodule
  endinstance
Hm... Ich schick das mal ab, vllt fällt mir später noch was zur Klausur ein ein. :)

Roey
Mausschubser
Mausschubser
Beiträge: 54
Registriert: 29. Apr 2015 16:20

Re: Feedback

Beitrag von Roey » 22. Feb 2017 10:33

An sich fand ich die Vorlesung gut, hätte jedoch paar Punkte zu bemängeln.

-Ich stimme meinen Vorrednern zu, dass Moodle evtl. eine bessere Plattform gewesen wäre. Allerdings ist das fast schon ein Luxusproblem
-Es wäre nett gewesen, wenn die Übungen in Kleingruppenform gehalten worden wären. (Allerdings gab es vllt. Tutorenmangel da zuvor CMS Verilog beinhaltete?)
-Es wurden leider Themen klausurrelevant, die man sich ausschließlich selbst erarbeiten musste (die ganzen Strukturen aus Bluespec wie Server,Vectors, (...)). Es wäre gut gewesen, wenn man hierfür auch etwas Zeit in der Vorlesung gefunden hätte.

Da ich nicht nur meckern will.
Ich fand es sehr gut, dass die Vorlesungen aufgezeichnet wurden. Es passiert halt immerwieder, dass man es zeitlich nicht zur VL schafft (oder Krank ist , oder (...) ) und alleine mit dem Skript zu arbeiten ist häufig anstrengender. Zusätzlich bieten die Aufnahmen auch eine gute Möglichkeit zur Wiederholung einzelner Themen. Wäre aber vllt. sinnvoll, neben den Aufnahmen die besprochenen Kapitel bzw Themen zu schreiben, sodass man diese nicht alle durchsuchen muss wenn man eig. nur nach einem Thema sucht.

Smith
Mausschubser
Mausschubser
Beiträge: 53
Registriert: 13. Apr 2015 15:45

Re: Feedback

Beitrag von Smith » 22. Feb 2017 18:54

Eine Sache, die ich hier noch hinzufügen mag:

Ich fand es ziemlich schwierig das Niveau der Klausuraufgaben vorab einschätzen zu können.
So waren die Übungen immer schwerer und haben einem Alarmsignale schlagen lassen, dass man sich ja nicht auf Basics ausruhen sollte,
während die Beispielaufgaben zur Klausur das Gegenteil bewirkt haben.
Schließlich war die Klausur meiner Meinung nach durch die Beispielaufgaben schwerer als erwartet.

Ich hatte das Gefühl, dass die Beispielaufgaben alles mögliche an Basic-Fragen schon vorweggenommen hatten, so dass diese nicht mehr in die Klausur aufgenommen werden konnten. Wenn das so war, würde ich das das nächste Mal umgekehrt machen und bei den Beispielaufgaben etwas mehr ins Detail gehen, damit die Klausur im Vergleich dann leicht scheint.

Das ist sicherlich subjektiv, aber vielleicht ja nicht nur (?)

An sich fand ich die VL aber sehr gut gehalten - ziemlich eindringlich und mit wenig Hast und vielen guten Erklärungen!
Phil

Antworten

Zurück zu „Archiv“