Technologie
Menschen Wissenschaft Politik Mystery Kriminalfälle Spiritualität Verschwörungen Technologie Ufologie Natur Umfragen Unterhaltung
weitere Rubriken
PhilosophieTräumeOrteEsoterikLiteraturAstronomieHelpdeskGruppenGamingFilmeMusikClashVerbesserungenAllmysteryEnglish
Diskussions-Übersichten
BesuchtTeilgenommenAlleNeueGeschlossenLesenswertSchlüsselwörter
Schiebe oft benutzte Tabs in die Navigationsleiste (zurücksetzen).

Fragen zur Computertechnik

130 Beiträge ▪ Schlüsselwörter: Technik ▪ Abonnieren: Feed E-Mail

Fragen zur Computertechnik

16.12.2010 um 19:50
/dateien/it68609,1292525441,MOSFET@suchard
@libertarian
Zitat von suchardsuchard schrieb:Hast du schon rausgefunden wie Transistoren funktionieren??
Ich hab heute Früh eine einfache Erklärung verfasst und als ich sie posten wollte hat Der Bitfresser in meiner Internetverbindung zugeschlagen - jetzt aber...

Ich beschränke mich hier erst mal auf eine vereinfachte Beschreibung von MOSFETS inklusive einer einfachen Zeichnung:

(Die Zeichnung hänge ich jetzt an, Erklärung folgt morgen früh, ich habe vor Weihnachten so verdammt viel zu tun :( )


melden

Fragen zur Computertechnik

17.12.2010 um 11:21
Viel wichtiger als eine Erklärung wie ein MOSFET funktioniert, ist eine Beschreibung des Verhaltens.

Ein MOSFET ist nämlich, im Gegensatz zu einem bipolaren Transistor, ein spannunggesteuerter Verstärker/Schalter (je nach externer Beschaltung). Ein bipolarer Transistor dagegen, ist ein stromgesteuerter Verstärker/Schalter.

Das ist ein großer, großer Unterschied und erklärt die anderen Anwendungen und Vorteile dieses Bauteils. Den da wo kein Strom fließt, wird auch keine Leistung umgesetzt. Und so wird bei einem MOSFEt keine Steuerleistung benötigt.


1x zitiertmelden

Fragen zur Computertechnik

17.12.2010 um 11:24
Vergleicht man das dagegen mit häufig verwendeten stromgesteuerten Bauteilen, dann sieht man den gewaltigen Unterschied. Bei z.B. einem Tyristor (ein erweiterter Transistor sozusagen) wird z.B. teilweise locker mal 10%-25% der Ausgangsleistung als Steuerleistung benötigt. Und da Thyristoren typische Leistungshalbleiter sind (fette große Motorensteuerung), kann man sich leicht vorstellen wie aufwändig und leistungsfressend da die Steuerschaltungen sind.


melden

Fragen zur Computertechnik

17.12.2010 um 13:41
@UffTaTa
Zitat von UffTaTaUffTaTa schrieb:Ein MOSFET ist nämlich, im Gegensatz zu einem bipolaren Transistor, ein spannunggesteuerter Verstärker/Schalter (je nach externer Beschaltung). Ein bipolarer Transistor dagegen, ist ein stromgesteuerter Verstärker/Schalter.
Genau das stand in meiner vom Internet gefressenen Erklärung :) (die kommt demnächst nochmals)

Sehr wichtig ist besonders für die Digitaltechnik auch, dass bei niedrigen Betriebsspannungen das Gate bis auf VDD angehoben werden kann und man daher einen MOSFET zumindest Prinzipiell mit einem einzigen Widerstand (der durch einen zweiten MOSFET ersetzt bar ist) als Inverter einsetzen kann.

Weiters ist der Isolationswiderstand zwischen Gate und Channel sehr hoch, das heßt, man kann einen MOSFET durch einen Spannungsimpuls am Gate einschaltenund dieser bleibt so lange eingeschaltet, bis die Ladung des Gate/Substrat - Kondensators durch den winzigen Leckstrom abgebaut ist. Das nützt man in DRAMs aus.


melden

Fragen zur Computertechnik

17.12.2010 um 14:34
@libertarian
@UffTaTa
Und alle, die es interessiert:

Ok, also hier nochmals:

Links in der Zeichnung siehst Du eine stark vereinfachte Zeichnung eines MOSFET (Enhancement - Typ)

Sehen wir uns zunächst das Gate an. Es besteht aus einer extrem dünnen Matalloxidschichte (durch die schwarze Linie angedeutet) und darüber einer dünnen Metallschichte, die mit dem Anschluss - Pin verbunden ist.

Unter der Oxidschichte liegt der Channel, ein Teil des Silizium - Chips, der bei einem Enhancement - MOSFET so dotiert (gezielt verunreinigt) ist, dass er im Ruhezustand nicht leitet.

Das darunter liegende Substrat, ein weiterer Teil des Siliziumchips, ist so dotiert, dass es Ladungsträger enthält.

Wird nun an das Gate eine positive Spannung angelegt (bei einem N-Channel MOSFET) oder eine negative (bei einem P-Channel MOSFET) dann entsteht zwischen Gate und Substrat ein elektrisches Feld, genau wie in einem Kondensator.

Dabei fliesst kein Strom in das Gate - dieses ist ja völlig vom Rest des Chips isoliert,

Wenn das Gate positiv gegen das Substrat ist, dann "zieht" dieses Feld Elektronen, also negative Ladungsträger aus dem Substrat in den Channel hinein und dieser wird elektrisch leitend, der MOSFET wird also eingeschaltet.

Bei einem P-Channel MOSFET geschieht ähnliches, nur werden dort "Löcher", also positive Ladungsträger durch eine negative Spannung am Gate in den Channel gezogen.

Dass an das Gate eine Spannung angelegt werden kann ohne dass ein Strom fliesst bedeutet, dass man MOSFETS, ebenso wie Verstärkerröhren, steuern kann ohne dass man dafür elektrische Leistung aufbringen muss. (Bei Verstärkerröhren kann in bestimmten Fällen ein Gitterstrom fliessen - but that's another story.

Naja - theoretisch. In der Praxis, besonders dann, wenn der MOSFET auf hohen Frequenzen arbeiten muss, wird schon eine gewisse Blindleistung fällig, Gate/Substrat ist ja im Grund nichts anderes als ein Kondensator, noch dazu einer, dessen dielektrische Eigenschaften sich mit der angelegten Spannung ändern. Für unsere Betrachtungen können wir dies aber vernachlässigen. Wir wollen hier ja keine Gigahertz - Schaltung entwickeln :)

So weit die Enhancement - Typen. Enhancement heißen sie deshalb, weil die Leitfähigkeit erst durch anlegen einer Spannung an das Gate erreicht wird.

Depletion - Typen arbeiten im Prinzip gleich, nur ist dort der Channel so dotiert, dass er im Ruhezustand leitend ist und die Ladungsträger durch anlegen einer negativen (be N-Channel) oder positiven (bei P-Channel) Spannung aus dem Channel hinausgedrängt und dessen Leitfähigkeit dadurch verringert oder ganz ausgeschaltet wird


melden
libertarian Diskussionsleiter
ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Fragen zur Computertechnik

17.12.2010 um 19:23
@OpenEyes
Soweit noch dabei :)


melden

Fragen zur Computertechnik

17.12.2010 um 20:09
@libertarian

Super :)
Geduld bis morgen bitte, ich bin trotz Pension jetzt vor Weihnachten als (auch) Musiker ziemlich eingesetzt und mein Tag hat so 14 bis 16 Stunden. Die beste Art jung und müde zugleich zu bleiben :D


melden

Fragen zur Computertechnik

18.12.2010 um 08:22
@libertarian

So, ich habe jetzt eine Zeichnung gemacht in der Du eine einfaches FlipFlop, ein aus AND und OR - Gates aufgebautes XOR und einen 3 - Bit -Full Adder sehen kannst.

Erklärung der Funktion folgt noch, ich muss wieder weg.

Zu den Symbolen - ich habe die verwendet, welche (inklusive Wahrheitstabellen) auf Seite 2 gepostet wurden.

Zu den Formeln:
& bedeutet AND (UND)
v bedeutet OR (ODER)
! bedeutet NOT (NICHT)

A1 bis A3 sind die Bits der ersten Zahl
B1 bis B3 sind die Bits der zweiten Zahl
Q1 bis Q3 sind die Bits des Ergebnisses
CI ist Carry in
CO1 bis CO3 ist Carry out (Übertrag)

Versuch doch mal selbst, herauszufinden wie das Flipflop funktioniert. R und S sind Reset und Set Eingang, Q und Qquer die Ausgänge.

@UffTaTa
@suchard
@WyattGillette
@interpreter
@Lufton
@Fennek
Bitte schreien, wenn ihr einen Fehler findet :)

Der Adder ist zwar ein FullAdder aber natürlich ohne Carry-Lookahead und wäre in der Praxis dadurch relativ langsam.

Hat einer von Euch Lust, ein Toggle - FlipFlop zu erklären und daraus einen Zähler zu "Bauen"?

Dann hätten wir eigentlich schon fast alle Elemente aus denen eine ganz einfache ALU (Arithmetic Logic Unit besteht)


melden

Fragen zur Computertechnik

18.12.2010 um 08:23
/dateien/it68609,1292657015,FlipFlopAdderUps, Zeichnung vergessen:


melden

Fragen zur Computertechnik

18.12.2010 um 10:10
@libertarian
@UffTaTa
@suchard
@WyattGillette
@interpreter
@Lufton
@Fennek

Bei allem was ich ab jetzt als Zeichnungen oder Formeln hereinstelle gehe ich von positiver Logik aus, das heisst
Betriebsspannung == 1
0 Volt == 0
Und ich werde so weit wie sinnvoll AND und OR anstelle von NAND und NOR verwenden, das macht glaube ich das Verständnis einfacher.

Hier eine kurze Erklärung zum Adder:
Die beiden XOR - Gates machen die eigentliche Addition. Am Ausgang Q liegt dann eine 1 an, wenn entweder 1 oder 3 Eingangssignale (A, B, Carry in) 1 sind.
A XOR B ist genau dann 1 wenn entweder A oder B, nicht aber beide 1 sind
Dieser Ausgang XOR Carry in ist wiederum genau dann 1, wenn entweder der Ausgang des erten XOR oder das Carry in, nicht aber beide 1 sind. Also:
A B CI Q CO
0 0 0.....0 0...0 + 0 ohne Übertrag von vorheriger Stelle = 0
1 0 0.....1 0...1 + 0 ohne Übertrag von vorheriger Stelle = 1
0 1 0.....1 0...0 + 1 ohne Übertrag von vorheriger Stelle = 1
1 1 0.....0 1...1 + 1 ohne Übertrag von vorheriger Stelle = 0 und Übertrag
0 0 1.....1 0...0 + 0 mit Übertrag von vorheriger Stelle = 1
1 0 1.....0 1...1 + 0 plus Übertrag von vorheriger Stelle = 0 und Übertrag
0 1 1.....0 1...0 + 1 plus Übertrag von vorheriger Stelle = 0 und Übertrag
1 1 1.....1 1...1 + 1 plus Übertrag von vorheriger Stelle = 1 und Übertrag

Mit den 3 AND Gates und dem OR wird festgestellt ob ein Übertrag in die nächste Stelle entsteht
(mindestens zwei Eingänge sind 1)
A&B oder A&Carry oder B&Carry

Das Flipflop zu erklären überlasse ich zumindest für heute einem Kollegen :)
Vielleicht kann auch einer von Euch ein Toggle - FlipFlop zeichnen und erklären....


melden
libertarian Diskussionsleiter
ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Fragen zur Computertechnik

18.12.2010 um 21:34
@OpenEyes
Nimm dir ruhig Zeit, das ganze ist vollkommen unverbindlich :D :)


melden

Fragen zur Computertechnik

19.12.2010 um 12:06
@libertarian

Das ist mir klar :)
Ich möchte gern sicher sein, dass das was ich bisher geschrieben habe für Dich wiklich klar ist ehe ich weitermache. Gerade diese Grundlagen sind in der Digitaltechnik Voraussetzung dafür, dass man dann auch komplexere Systeme versteht.

Vielleicht hat ja der eine oder andere Teilnehmer hier auch etwas beizutragen..

Ein Denkanstoß - wir können jetzt mit dem von mir gezeichneten Adder Zahlen addieren.

Wie schaut es aber mit subtrahieren, multiplizieren und dividieren aus?


1x zitiertmelden

Fragen zur Computertechnik

19.12.2010 um 12:15
Zitat von OpenEyesOpenEyes schrieb:Vielleicht hat ja der eine oder andere Teilnehmer hier auch etwas beizutragen..
Würde ich ja gerne, aber da man sowas fehlerfrei machen sollte, benötigt das eben Zeit. Und im Augenblick bin ich zu sehr mit Renovieren beschäftigt. Aber sei dir sicher, ich lese aufmerksam mit ;-)


melden

Fragen zur Computertechnik

19.12.2010 um 12:26
@UffTaTa

Falls Du einen Fehler bemerkst, bitte sofort anmeckern :)
Renovieren kommt bei mir im Frühling dran - meine Muskeln schmerzen jetzt schon, wenn ich nur daran denke. :D


melden
libertarian Diskussionsleiter
ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Fragen zur Computertechnik

19.12.2010 um 17:14
@OpenEyes
/dateien/it68609,1292775275,img3

Soweit komme ich noch mit - allerdings musste ich mir ein zusätzliches Bild anschauen, da ich anfangs nicht verstand, was du mit "A B CI Q CO" meinst :)

Unter Division und Multiplikation kann ich mir wahrlich noch nichts vorstellen, aber Subtraktion wird doch einfach umgekehrt definiert werden, oder...falsch??? :)


melden

Fragen zur Computertechnik

19.12.2010 um 18:25
@libertarian

Mea Culpa, ich hatte die Liste der Bezeichnungen die ich verwende 2 Beiträge früher hereingestellt, im Beitrag von gestern 8:22
Sorry.

Da Du auch ein Symbol - Schaltbild eines Adder mit gepostet hat können wir glaube ich jetzt dazu übergehen, die Sachen nicht mehr in Transistoren und AND - Gates aufzulösen

Die Carry – Logik in Deinem Schaltplan macht übrigens genau das selbe wie diejenige, die ich gezeichnet habe (Wenn ich beim Zeichnen keinen Fehler gemacht habe). Für viele logische Verknüpfungen gibt es mehrere Schaltungs - Varianten und welche man verwendet liegt zum Teil im Ermessen des Designers, zum anderen Teil davon, welche Version ein einfacheres Routing der Verbindungen auf dem Chip oder auf einem PC - Board ergibt und noch ein paar andere Kriterien.

Ummit einem solchen Adder zu subtrahieren brauchst Du eine Stufe mehr und an jedem B - Eingang einen Inverter.
Die Zusätzliche Stufe enthält dann nicht ein weiteres Bit sondern das Vorzeichen. Eine 0 in dieser Stufe bedeutet +, eine 1 bedeutet -

Wann Du nun eine Zahl an den B -Eingängen von einer Zahl an den A - Eingängen subtrahieren willst schickst Du sie einfach über die Inverter, dann liegt an den B - Eingängen das Komplement (nicht Kompliment :) ) der Zahl an. zu dieser Zahl musst Du nicht 1 addieren, das geschieht am einfachsten indem du auch das Carry in aktivierst. Diesen Vorgang nennt man Zweier - Komplement. Warum wir das brauchen wirst Du gleich sehen

Schauen wir uns das mal in Binärzahlen an. ich subtrahiere mal 2 von 5,das Ergebnis muss also 3 sein.

A: 0101 (die Null ganz links ist das Vorzeichen)
B: 0010 (noch nicht invertiert)
B: 1101 (invertiert)
jetzt addieren wir von rechts nach links:
0101+
1101

1 + 1 = 0, und Übertrag
0 + 0 + Übertrag = 1 kein Übertrag
1 + 1 = 0 und Übertrag
1 + 0 + Übertrag = 0 und Übertrag - den Übertrag hier ignorieren wir, er wird in der Praxis verwendet umzuprüfen, ob das Ergebnis nicht zu klein für den Adder war.

So, unser Ergebnis ist also 0010, dezimal 2

Hoppla, da ist was faul im Staate Dänemark. Siehst Du, und genau deshalb brauchen wir auch das Carry in. Was wir gemacht haben war, das Einer - Komplement zu addieren. Damit das Ergebnis stimmt müssen wir aber das Zweier - Komplement addieren

Also
B: 1101 (invertiert)
B: 1110 (mit Carry in)

Und jetzt addieren wir:

0101+
1110

1 + 0 = 1, kein Übertrag
0 + 1 = 1, kein Übertrag
1 + 1 = 0 und Übertrag
1 + 0 + Übertrag = 0

Unser Ergebnis ist also 0011, dezimal 3

Und genau das wollten wir ja :)

Schau Dir das mal an und versuch's vielleicht mit einem anderen Beispiel zu überprüfen.
Und als Vorbereitung für die Multiplikation zunächst eine Vor - Überlegung:

Wie kannst Du am einfachsten eine beliebige Dezimalzahl mit 10 multiplizieren?
und mit 100?, mit 1000?

Und wenn Du jetzt eine Zahl mit 11, 101 oder 1001 auf ähnliche Art multiplizieren willst?

Viel Spaß beim Tüfteln :D


melden

Fragen zur Computertechnik

19.12.2010 um 18:35
@libertarian

Blöder Tippfehler:
Zahl musst Du nicht 1 addieren
soll natürlich heißen
Zahl musst Du noch 1 addieren.

Grrrrrrr :(


melden

Fragen zur Computertechnik

20.12.2010 um 09:52
Während @libertarian sich mit dem Adder beschäftigt, für etwaige Zaungäste ein weinig ZUsatzinformation:

So ein Adder ist eine ziemlich universelle Schaltung. Wie wir gesehen haben kann man damit addieren und subtrahieren. Wie multiplizieren und dividieren gelöst werden kann werden wir später noch sehen.

Mit ein paar zusätzlichen Gates und einem Register kann ein Adder auch als Befehlszähler eingesetzt werden.
Wie?
Ganz einfach. Um den Befehlszähler zum nächsten Befehl hochzusdchalten brauchen wir nur die A-Eingänge mit den Ausgängen zu verbinden, die B-Eingänge alle auf 0 zu setzen und Carry in zu aktivieren.
Sprungadressen können als Differenz zwischen aktueller Adresse und Zieladresse einfach auf die B-Eingänge gelegt werden, die A-Eingänge werden mit den Ausgängen verbunden und die Addition durchgeführt.

Nebenbei, und für das gerade gesagte wichtig:
Zu allen Dingen die ein Adder kann braucht man zusätzlich zum Adder selbst mindestens einen, im Allgemeinen aber zwei Taktimpulse. Mit diesen werden Eingänge und Ausgänge des Adders zu genau definierten Zeitpunkten geöffnet ("getaktet"), damit nicht am Ausgang ein Bitsalat serviert wird.

Eine weitere Einsatzmöglichkeit ist ein Vergleicher. Um zwei Zahlen zu vergleichen subtrahiert man einfach die eine Zahl von der anderen. Ist das Ergebnis Null, dann sind die beiden Zahlen gleich, bei negativem Ergebnis ist die zweite Zahl größer, bei positivem Ergebnis die erste.

Z1 Z2...Erg.
5...5... 0....Gleich
5...6... -1...Z2 ist größer
5...2 ... 3...Z2 ist kleiner

Eine weitere Einsatzmöglichkeit ist ein XOR von 2 Zahlen oder Flag - Registern. Dazu braucht man nur die Carries zu "killen", also zu blockieren. Darüber hinaus bedeutet beim XOR ein Ergebnis von Null dass die beiden Zahlen gleich sind.

So viel für jetzt.
Mitleser bitte etwaige Fehler gleich anmeckern :)


melden
libertarian Diskussionsleiter
ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Fragen zur Computertechnik

20.12.2010 um 23:26
@OpenEyes
Nun, von mir aus kanns weiter gehen :)


melden

Fragen zur Computertechnik

21.12.2010 um 08:13
@libertarian

Ok, dann schauen wir und jetzt die Multiplikation an:

Wie ich weiter oben schon angedeutet habe kann man am einfachsten und schnellsten multiplizieren indem man an Zahlen Nullen anhängt. Beim Dezimalsystem bewirkt das Anhängen einer Null eine Multiplikation mit 10, im Binärsystem eine Multiplikation mit 2:

0000101 x 2 = 0001010

Man braucht also die Zahl, wenn man sie mit 2, 4, 8, 16, 32 und so fort multiplizieren will die Zahl in einem Register (das ist eine Reihe von FlipFlops, in der PC - Praxis meist 32 oder 64) um 1, 2, 3, 4 und so fort nach links verschieben.

Natürlich wollen wir nicht nur mit 2, 4, 6, 8 und so weiter multiplizieren sondern auch mit 3, 5, 6, 7 undso weiter. Das können wir mit mehrfach verschieben und Addieren der Zwischenergebnisse erreichen. Eine Multiplikation mit 7 zum Beispiel wäre

Zahl um 2 nach links verschoben + Zahl um 1 nach links verschoben + Zahl
(Zahl x 4 + Zahl x 2 + Zahl)

Um das durchführen zu können brauchen wir natürlich zusätzlich zum Adder eine Menge Gates und FlipFlops, oder wir haben einen "Mikroprogrammierten" CPU - Chip oder eine RISC (Reduced Instruction Set Cumputer) Maschine. Dann brauchen wir nur den Adder und ein Schieberegister, den Rest macht das Mikroprogramm oder, bei einer RISC - Maschine die Software.

für die Division, die ja eine Umkehrung der Multiplikation ist, können ebenfalls Schiebeoperationen eingesetzt werden. Hier kann ich mir einen langen Text sparen, auf folgendem Link:

http://www.informatik.uni-ulm.de/ni/Lehre/SS01/TI/folien/arithC2.pdf (Archiv-Version vom 18.07.2013)

gibt es eine wie ich glaube leicht verständliche Erklärung, schau sie Dir mal an und frag, wenn etwas nicht klar ist.

Zum Thema RISC:
Eine RISC - Maschine verfügt nur über einen sehr einfachen Befehlssatz, (meist 16) diese Befehle können im Allgemeinen aber in nur einer einzigen Taktzeit ausgeführt werden, sind also sehr schnell. Da man davon ausgehen kann, dass ein großer Teil der Software aus eben diesen einfachen Befehlen besteht, nimmt man in Kauf, dass bei einer solchen Maschine komplexere Befehle langsamer sind - unter dem Strich ist das ganze Ding dann doch etwa so schnell wie ein CISC (Complex Instruction Set Computer) wie etwa der in den PCs verwendete Pentium. Die Erstellung der Software erfordert aber eben mehr Aufwand.

Die in alten Apple - Computern verwendeten Motorola CPUs der 68000 - Serie waren RISC - CPUs.

Zum Thema Mikroprogrammierung:
Im Prinzip handelt es sich dabei um etwas Ähnliches wie das in einer RISC - Maschine angewandte Verfahren, jedoch meist direkt auf dem Chip implementiert, so dass dieser zwar intern einen kleineren Befehlssatz aufweist und die Hardware weniger komplex ist, sich nach außen aber verhält wie ein CISC - Chip.

Viele alte Großrechner (z.B. HITACHI 7/78, UNIVAC 90/30) waren mikroprogrammiert, wobei bei diesen das Mikroprogramm beim Einschalten von einer Diskette geladen wurde. Ebenso mikrprogrammiert waren Disk- und Tape-Controller


melden