Forum: Ausbildung, Studium & Beruf Entwicklung einer digitalen Schaltung


von Max (Gast)


Lesenswert?

Hi!

Ich beschäftige mich gerade aufgrund einer Vorlesung mit SystemC.
Das Thema finde ich recht interessant und hätte Lust eine "richtige" HDL 
zu lernen.

Mich würde mal interessieren, wie der Entwurf einer solchen digitalen 
Schaltung aussieht.

Wir haben im 2. Semester gelernt, wie sich Logikfunktionen mittels 
KV-Diagrammen etc. aufstellen lassen.
Geht man bei einfachen Schaltungen noch von derartigen Modellen aus, und 
setzt sich erstmal hin und zeichnet sich einen Plan mit den Addieren 
etc.?

Grüße,
Max

von Bonner (Gast)


Lesenswert?

Ich habe jetzt nicht so die wirkliche Ahnung wie es het zu Tage von der 
Industrie entwickelt wird, aber ich bin mir ziemlich sicher das nur in 
einzelfällen noch einzelne Logikgatter verbaut werden. Da ist ein µC 
wohl billiger und flexibler.

Des weiteren gibt es FPGA und CPLD. Als HDL gibt es z.B. VHDL und 
Verilog.
In den Programmen, welche die Konfiguration für FPGAs aus der HDL 
erzeugen steckt schon vie "Intelligenz" und es lohnt sich für einen 
Menschen nicht da mit KV optimieren zu wollen. Dafür sind die Projekte 
oft viel zu groß.

Wenn du dich mit der Logik weiter beschäftigen willst guck dir erst mal 
Mealy- und Moor-Automaten an. Kommt aber auch noch im Studium alles vor.

von Max (Gast)


Lesenswert?

Bonner schrieb:
> Ich habe jetzt nicht so die wirkliche Ahnung wie es het zu Tage
> von der
> Industrie entwickelt wird, aber ich bin mir ziemlich sicher das nur in
> einzelfällen noch einzelne Logikgatter verbaut werden. Da ist ein µC
> wohl billiger und flexibler.
>
> Des weiteren gibt es FPGA und CPLD. Als HDL gibt es z.B. VHDL und
> Verilog.
> In den Programmen, welche die Konfiguration für FPGAs aus der HDL
> erzeugen steckt schon vie "Intelligenz" und es lohnt sich für einen
> Menschen nicht da mit KV optimieren zu wollen. Dafür sind die Projekte
> oft viel zu groß.
>
> Wenn du dich mit der Logik weiter beschäftigen willst guck dir erst mal
> Mealy- und Moor-Automaten an. Kommt aber auch noch im Studium alles vor.

Automatentheorie hatten wir auch bereits. Ich frage mich, ob dieses 
Wissen auch eine praktische Relevanz hat. Man versteht schon was 
dahinter steckt, aber zur Anwendung kommt dieses nicht mehr, oder?

von Bonner (Gast)


Lesenswert?

Das ist halt Allgemeinbildun für Ings.
In der Praxis wirst du das nicht mehr brauchen, da es für solche sachen 
Programme gibt.

Willst du z.B. einen Automaten in einem FPGA implementieren tippelt man 
einfach ein paar if anweisungen ein. Das Programm wählt dann die 
Adressierungen und vereinfacht alles.

Du kannst das natürlich auch selbst auf Papier machen und dann die Logik 
mit AND, OR beschreiben. Dies ist aber nicht mehr Problemorientiert.

Ist dein Projekt groß genug, dass der einsatz eines FPGAs gerechtfertigt 
ist, verlierst du sowiesi den Überblick und bist als Mensch halt zu 
Feheleranfällig.

von Guest (Gast)


Lesenswert?

Man benutzt HDLs die man dann mit einem Tool synthetisieren kann. Der 
Entwurf erinnert dann an normale Programmcodes (der Stil nennt sich 
behavioral), man beschreibt also das Verhalten der Schaltung. Das 
Mapping auf Gatter (and,or,not,FFs,luts,etc) und die Optimierung der 
Logik macht dann das Synthesetool. Das was du da als KV Diagramm gelernt 
hast macht also im echten Leben der Synthesizer. Es gibt natuerlich auch 
andere Beschreibungsstile.

von Glück gehabt (Gast)


Lesenswert?

Max schrieb:
> Automatentheorie hatten wir auch bereits. Ich frage mich, ob dieses
> Wissen auch eine praktische Relevanz hat. Man versteht schon was
> dahinter steckt, aber zur Anwendung kommt dieses nicht mehr, oder?

Wenn man eine Statemaschine designen muss, wird man je nach
Problemstellung die eine oder andere Technologie wählen müssen.
Jedes dieser Technologien hat seine Vor-und Nachteile.
FPGAs sind mit ihrer kombinatorischen Logic schnell und
Schaltungstechnisch hochflexibel, was den Programmieraufwand aber
enorm macht und auch nicht zu den günstigsten Lösungen gehört.
(Es gibt sogar CPU-Cores zum impementieren die mir mal angeboten
wurden).
CPUs mit ihrer sequenziellen Logic sind vergleichsweise lahm,
aber relativ leicht flexibel zu programmieren und günstiger
im Kosten-/Nutzenverhältnis, aber für viele Apps ausreichend.

Ungünstig kann sich bei FPGAs bemerkbar machen, dass im fortlaufenden 
Projekt bei einem ausgewählten Chip mal die Recourcen knapp werden
können und man zu einem greifen muss der den Engpass ausgleicht.
Mit dem KV-Diagramm kann man evtl. noch etwas aus dem alten Chip 
herauskitzeln, aber anwendungspraktisch soll bei vier Variablen
Sense sein und mehr man sich nicht antun sollte.
Eine andere Idee wäre, den größten FPGA aus deren Familie zu nehmen
und wenn das Projekt steht, also man das Ende abschätzen kann, einen
Verwandten zu nehmen mit dessen Resourcen die App funktioniert und
man ein gutes Kosten-/Nutzenverhältnis hat.

von Guest (Gast)


Lesenswert?

Glück gehabt schrieb:
> Wenn man eine Statemaschine designen muss, wird man je nach
> Problemstellung die eine oder andere Technologie wählen müssen.
> Jedes dieser Technologien hat seine Vor-und Nachteile.
> FPGAs sind mit ihrer kombinatorischen Logic schnell und
> Schaltungstechnisch hochflexibel, was den Programmieraufwand aber
> enorm macht und auch nicht zu den günstigsten Lösungen gehört.
> [... viel Gelaber ...]
> wenn das Projekt steht, also man das Ende abschätzen kann, einen
> Verwandten zu nehmen mit dessen Resourcen die App funktioniert und
> man ein gutes Kosten-/Nutzenverhältnis hat.

Bist du BWLer? Viele Buzzwords und Fachbegriffe aber offensichtlich 0 
Verstaendnis fuer das grosse Ganze...

von Willi W. (williwacker)


Lesenswert?

Hallo!

Erst mal runterkommen!

Und dann ein kleines "Hello World!"-Programm schreiben, gibt es in quasi 
jeder Sprache. Zugegeben, bei µCs wird das etwas schwierig, da behilft 
man sich dann, eine LED blinken zu lassen. Da könnte man dann 
stundenlang der LED beim Blinken zuschauen.

Und dann so langsam den Schwierigkeitsgrad steigern (beim Blinken: kurz 
aus, lang an, oder nur 10-mal Blinken oder 2 LEDs blinken lassen oder 
was-auch-immer)

Und sich dann ein Ziel setzen (Klassiker ist DIE UHR), natürlich mit 
einer 7-Segment-Anzeige, mit spezieller Ansteuerung

Und dann mal wieder an KV denken.

Also nicht mit der Tür ins Haus fallen, sondern Schritt für Schritt

Und nicht vergessen - Muss Spaß machen. Ich denke, wenn Du schon in 
diesem Forum bist, ist das auch so ........

In diesem Sinne
Willi

von Bonner (Gast)


Lesenswert?

Ich glaube er hat nur nach dem Sinn des im Studium vorkommenden Inhalts 
gefragt.

von genervt (Gast)


Lesenswert?

Bonner schrieb:
> Ich glaube er hat nur nach dem Sinn des im Studium vorkommenden Inhalts
> gefragt.

Das ist ein bissl wie der Blinddarm der Digitaltechnik, eigentlich 
braucht den heutzutage nicht zwingend, aber die wenigsten operieren das 
aus ihren Vorlesungen raus. ;)

von Bonner (Gast)


Lesenswert?

Ja es ist halt Allgemeinbildung.
Man muss vieles nicht wissen, aber um halt dann darauf aufbauende 
Sachverhalte zu verstehen kann es trotzdem hilfreich sein.

Allerdings sollte das dann schon erwähnt werden wie es denn in der 
Praxis gemacht wird. Muss man dann halt aufpassen, keinen zu 
demotivieren indem er denkt: "brauch ich nicht zu wissen"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.