Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware

Dies ist eine alte Version des Dokuments!


Hardware

Die ersten Massen-CPUs

  • 1974: Intel 8080 ist der Nachfolger des Intel 4004 und Intel 8008, er brauchte als Betriebsspannung +5 V / −5 V / +12 V- einfache Befehle dauern 5 Takte - für den 8080 wurde das Betriebssystem CP/M geschrieben
    • 1976: Intel 8085 ist der 8080 (CPU) + 8224 (Taktgenerator) + 8228 (Buscontroller) in einem einzigen Gehäuse welches nur noch eine Betriebsspannung von 5 Volt benötigte
  • 1975: MOS 6502 (mit 25$ kostete der 6502 weniger als der 8080 und der Z80) ist eine stark vereinfachte Version des Motorola 6800 (1974: 300$), der 12 mal so teuer war
    • Der einfacher gehaltene Befehlssatz führt allerdings dazu, dass 6502-Programme im Normalfall deutlich mehr Speicher benötigen als das Gleiche leistende MC6800- oder Z80-Programme; zudem sind standardkonforme Compiler für höhere Programmiersprachen wie etwa Pascal oder C für den 6502 deutlich schwieriger zu implementieren und erzeugen langsameren Code als entsprechende Compiler für andere 8-Bit-Prozessoren. Die Ursache hierfür ist vor allem die auf 256 Bytes beschränkte Größe des Stapelspeichers des 6502, so dass der für die meisten modernen Hochsprachen nötige größere Stapelspeicher per Software nachgebildet werden muss. Um die Chipfläche klein zu halten, hat der 6502 des Weiteren nur einen Akkumulator im Gegensatz zu den zwei Akkumulatoren A und B im MC6800.
  • 1976: Zilog Z80 ist eine stark erweiterte Version des Intel 8080 und benötigte nur noch eine Betriebsspannung von 5 Volt, auch kostete er weniger als der 8080 - einfache Befehle dauern 4 Takte und hatte eine Taktfrequenz von 2,5 MHz - das Betriebssystem CP/M läuft auch auf dem Z80 - der Z80 ist bis heute lieferbar!
    • Erwurde auch von Mostek unter Lizenz als MK3880 vermarktet.
    • Ein Z80-Klon wurde auch von Sharp als DMG-CPU hergestellt.
    • Ab 1985 stellte Hitachi unter der Bezeichnung HD64180 einen Mikrocontroller vor, der vor allem wegen der Integration zahlreicher Peripheriebausteine sehr erfolgreich war. Später fertigte auch Zilog den Chip als Z180.
      • Der Z180 besitzt einen Prozessorkern, der vollständig Code-kompatibel zum Z80 ist. Erstmals kam hier die Microcode-Technik mit Execution-Pipelining zum Einsatz. Etliche Befehle brauchen weniger Maschinenzyklen als beim Original-Z80. Ein spezieller Interrupt, Reserved Instruction Trap, wird ausgelöst, wenn ein ungültiger Befehl erkannt wird. Die bei einigen Z80-Programmierern beliebten undokumentierten Befehle sind damit für den Z180 tabu. Neu hinzugekommen sind spezielle Instruktionen zur Adressierung der internen Register sowie ein Multiplikationsbefehl.
    • Toshiba vereinte den Z80-Prozessor mit seinen Peripheriebausteinen CTC, SIO und PIO, zusammen mit einer Oszillator- und Watchdog-Funktion in einem 100-Pin-Gehäuse als TMPZ84C015. Das Bauteil wird bis heute gefertigt, mit Zilog als Zweithersteller, Bezeichnung Z84C15.
    • In der DDR wurde aufgrund eines Handelsembargos ein nichtlizenzierter Nachbau des Z80 unter dem Namen U880 entwickelt.
    • In der Sowjetunion wurden ebenfalls nichtlizenzierte Nachbauten unter den Bezeichnungen T34BM1 und KR1858BM1 (russisch Т34ВМ1 und КР1858ВМ1) von verschiedenen Fabriken (u. a. „Elektronika“, „Integral“, „Angstrem“, „Transistor“) bis weit in die 1990er Jahre hergestellt. Es sind Nachbauten mit Datecodes von 1996 bekannt.
    • In Toshibas Mikrocontroller-Familien TLCS-90 und TLCS-870 arbeitet ein Z80-Kern.
    • Der Z80 überflügelte rasch den 8080 und wurde die bisher am weitesten verbreitete 8-Bit-CPU. Wenn man die absolute Größe des Marktes einbezieht, dann ist er die seither erfolgreichste CPU.

siehe auch Mikrokontroller (MCU)

SDR (Software Defined Radio)

robuste Industrielaptops

CPU-Effizienzvergleich

CPU-Größe

Smartphones

meine persönliche Meinung zur Auswahl von PC-Hardware

Grundsätzlich vertrete ich die Meinung, dass man am besten dran ist, wenn man seine PC-Komponenten so auswählt, wie unten beschrieben. Allerdings gibt es in Einzelfällen auch deutliche Abweichungen, beispielsweise wenn es Preissenkungen oder neue Veröffentlichungen gab aber auch wenn man ein Schnäppchen ergattern konnte.

Spiele-PC

Anmerkung aus einer persönlichen Erfahrung heraus: Teure Mainboards (z.B.: Z690- statt B450-Chipsatz) haben den Vorteil, dass die Windows-Treiber eine deutlich bessere (ca. doppelte) Geschwindigkeit (Datendurchsatz) ermöglichen.

PC im Dauerbetrieb (Server)

  • Bedingungen:
    • läuft permanent (24/7) → Hardware-Qualität muss eine hohe Betriebsstabilität im Dauereinsatz gewährleisten
    • Stabilität ist besonders wichtig
    • Grafikleistung
      • ist unwichtig: Grafikeinheit auf der CPU nutzen
      • ist wichtig: dedizierte Grafikkarte nutzen
  • Hardware-Komponenten:
    • CPU-Hersteller: Intel 10. Generation
      • beispielsweise: Intel Core i5-10600T (TDP: 35W, max. 100°C, CPU Benchmark: 11330)
      • beispielsweise: Intel Core i5-10600K (TDP: 125W, max. 100°C, CPU Benchmark: 14558)
        • der "Intel Core i5-10600T CPU @ 2.40GHz" basiert auf der Intel-Comet-Lake-Mikroarchitektur
        • "Comet Lake" ist Intels Entwicklungsname für die vierte 14-nm-Skylake-Architektur-Generation
        • somit hat Intel seine Skylake-Architektur von der 6. bis zur 10. Desktop-CPU-Generation verwendet
        • will man in FreeBSD seine Pakete entsprechend optimieren, dann wäre "CPUTYPE=skylake" die richtige Einstellung für diese CPU-Generation in der /etc/make.conf (würde ich aber nicht tun, weil einige Ports mit der gesetzten Variable CPUTYPE Probleme machen)
    • Grafikkarten-Hersteller: Intel (auf der CPU) / NVIDIA (dedizierte Grafikkarte)
    • Hauptplatinen-Hersteller: Asus, …

allgemeines über Hauptplatinen/Mainboard (MB)

Was bringen teure MB gegenüber billigeren?

Ich hatte mir ein "ASRock B450 Pro4" (DDR4) für ca. 80€ gekauft und einige Zeit später gegen ein "GIGABYTE Z690 UD DDR4" für ca. 200€ ausgetauscht. Geändert wurde dabei im Rechner-System nur das MB+CPU, der Rest (auch die RAM-Bausteine) blieb unverändert auch wurde keine Neuinstallation vorgenommen.

Als erstes ist aufgefallen, dass ich die 32GB RAM jetzt mit voller Taktfrequenz (3,2 GHz) betreiben konnte, was mit dem billigen Board nicht möglich war. Auch die Datendurchsatzrate von meiner SSD (NVMe) stieg auf ca. den doppelten Wert an.

Der Boot-Vorgang dauerte mit dem billigen Board ca. 180 Sekunden, mit dem neuen Board nur noch ca. 90 Sekunden. Auch das starten des Spieles World of Tanks brauchte für den Start mit dem billigen Board in mind. 180 Sekunden, mit dem neuen Board ging das in nur ca. 90 Sekunden.

Mein Eindruck ist, das es zwischen dem billigen Board und dem teuren Board im wesentliche zwei Sachen geändert haben:

  1. nutzbare Taktfrequenz für den RAM
  2. Qualität der MB-Treiber

Wenn jemand auf seinem Rechner nur den Internet-Brwoser oder das Textverarbeitungsprogramm benutzt, dann profitiert er wenig von den Mehrkosten. Macht jemand dagegen Sachen, die den Rechner gelegentlich ausreizen, dann wird er das deutlich merken.

allgemeines über Hauptprozessoren (CPU)

moderne Hauptprozessoren enthalten ernsthafte Fehler

Kategorien von Hauptprozessoren


RAID: Read/Write Policy

Dateigrößenlimit bei USB-Sticks

Ein 16GB USB-Stick hat ein Dateigroessenlimit von 4294967295 Byte.

Da hilft bei großen Dateien nur der Befehl split.

Beispielsweise kann man das Problem so umgehen.

In diesem Beispiel soll die Datei CentOS-5.3-x86_64-bin-DVD.iso per USB-Stick transportiert werden.

Datei auf den USB-Stick laden:

sha512sum CentOS-5.3-x86_64-bin-DVD.iso | tee /media/usb1/centos/CentOS-5.3-x86_64-bin-DVD.sha256
44b4e0e6cbdde6831ebfa4c9a59dd66524e712d8cfebecf33a17ff55010f9fff  CentOS-5.3-x86_64-bin-DVD.iso

split -b 4294967295 CentOS-5.3-x86_64-bin-DVD.iso /media/usb1/centos/CentOS-5.3-x86_64-bin-DVD.iso.

Datei vom USB-Stick runterlesen:

cat /media/usb1/centos/CentOS-5.3-x86_64-bin-DVD.iso.* > CentOS-5.3-x86_64-bin-DVD.iso

Und das vergleichen der Quersummen nicht vergessen, die müssen identisch sein, sonst ist die Datei beschädigt:

sha512sum CentOS-5.3-x86_64-bin-DVD.iso
44b4e0e6cbdde6831ebfa4c9a59dd66524e712d8cfebecf33a17ff55010f9fff  CentOS-5.3-x86_64-bin-DVD.iso

cat /media/usb1/centos/CentOS-5.3-x86_64-bin-DVD.sha256
44b4e0e6cbdde6831ebfa4c9a59dd66524e712d8cfebecf33a17ff55010f9fff  CentOS-5.3-x86_64-bin-DVD.iso

Wichtige CPU-Flags

  • ht - Hyper-Threading bzw. Hyper-Transport
  • htt - Hyper-Threading
  • lm - 64-Bit-CPU
  • vmx - Intels Hardware-Virtualisierung
  • svm - AMDs Hardware-Virtualisierung

Hyper-Threading und Hyper-Transport werden durch die selbe Flag-Abkürzung gekennzeichnet! Manchmal wird Hyper-Threading auch durch das Kürzel htt (Hyper-Threading-Technology) gekennzeichnet.

Leider kann man deshalb nicht eindeutig sagen, dass eine bestimmte CPU Hyper-Threading unterstützt oder nicht.

Nur wenn man in der Datei /proc/cpuinfo mehr als einen CPU-Block findet, bei denen die physical id gleich sind und bei denen auch die core id gleich sind.

Mit dem folgenden Kommando wird genau das für die ID 0 gemacht. Gewöhnlich verursacht Hyper-Threading nur das doppelte zählen eines CPU-Kernes, deshalb sollte das folgende Kommando bei Hyper-Threading-Unterstützung immer eine "2" liefern. Sollte in der Zukunft Hyper-Threading mal zu einem Hyper-Hyper-Threading werden und dadurch das mehrfache (z.B. 3 oder 4) zählen eines CPU-Kernes verursachen, dann sollte hier eine größere Zahl als "2" erscheinen.

awk -v alt='^$' -v neu='#' '{sub(alt, neu)} /physical id|core id|#/ && /0$|#/ {print $NF}' /proc/cpuinfo | uniq -c | awk '!/#|1 0/' | wc -l
2

Die folgende Kommandozeile schreibt im Klartext, ob Hyper-Threading aktiv ist oder nicht:

awk -v alt='^$' -v neu='#' '{sub(alt, neu)} /physical id|core id|#/ && /0$|#/ {print $NF}' /proc/cpuinfo | uniq -c | awk '!/#|1 0/' | wc -l | awk '{$1 > 1}' && echo "Hyper-Threading geht" || echo "kein Hyper-Threading"
Hyper-Threading geht

16/32/64 Bit

Zur Erkennung der CPU, hat jede ein entsprechendes Flag:

  1. Real mode - 16 bit CPU
  2. i286-Protected Mode - 16-bit CPU
  3. i386-Protected Mode - 32-bit CPU
  4. Long mode - 64 bit CPU

Die 64-Bit-CPUs haben das Flag lm (long mode):

grep -E '^flags' /proc/cpuinfo | head -n1 | tr -s ' ' '\n' | grep -E ^lm
lm

CPU's

Museum

Intel oder AMD

Hier kann ich nur aus meinen persönlichen Erfahrungen berichten!

Bis 1995 (Am486) hatte AMD ausschließlich Intel-CPUs nachgebaut, diese CPUs haben auch alle ganz ordentlich funktioniert.

Ab dem Pentium setzte AMD auf eine eigene Architektur (mit RISC-Kern) und brachte den "K5" raus. Der "AMD K5" hatte bei mir nur Probleme gemacht, Abstürze waren an der Tagesordnung und zwar so massiv, dass es sehr nervte. Der "AMD K6" sollte dann stabil laufen (so hieß es), hat bei mir aber auch Probleme gemacht, zwar nicht so massiv wie der K5, aber von "ordentlich funktionieren" konnte nicht dir Rede sein.

Nachdem ich einige Zeit lang problemlos Intel-CPUs genutzt hatte, stieg ich aus Kostengründen wieder auf AMD um und habe die folgenden CPUs dabei verwendet: "AMD Modell 5050e 2,6GHz (mit K8-Kern)", "AMD Athlon II X2 245e (mit K8-Kern)", "AMD Athlon II X4 605e 2,3GHz (mit K8-Kern)", "AMD Ryzen 5 1600". Alle haben mich enttäuscht!!! Wenn man auf ihnen nur Windows betreibt, scheinen sie problemlos zu laufen aber wenn man BSD oder Linux darauf betreibt, dann kommt es immer wieder vor, dass das System einfriert oder einen spontanen Neustart durchführt. Dabei habe ich alles ausprobiert, verschiedene BIOS/EFI, verschiedene Spannungs- und Takt-Einstellungen von RAM und CPU, verschiedene RAM-Module, verschiedene Hauptplatinen, verschiedene Kombinationen von Treibern und verschiedene Grafikkarten. Die Probleme waren erst vom Tisch, als ich (Jahre später, im Jahr 2021) wieder auf Intel-CPU + nVidia-Graka umgestiegen bin.

Stand 2023: Also, ich kaufe nur noch Intel-CPUs für meine PCs. In über 20 Jahren hat die Erfahrung mir gezeigt, dass AMD es nicht kann und bis heute nicht dazu gelernt hat!

2021

AMD Ryzen 5 2600 vs. Intel Core i5-11600K (+22%)

https://www.reddit.com/r/Amd/comments/r6cg6v/gaming_ipc_comparison_of_multiple_amd_and_intel/

2012

  • neu → AMD baut ARM-CPUs mit integriertem Fabric - Bis zum Jahr 2014 sollen die ersten Produkte erscheinen. - Dabei will AMD mehrere Kerne der 64-Bit-Architektur ARM v8 zusammen mit einem Fabric auf einem Chip vereinen. Als Fabric werden bei Servern und Supercomputern die in der Regel proprietären Netzwerkstrukturen bezeichnet, mit denen sich mehrere Prozessorsockel, aber auch Switches und Speichersysteme verknüpfen lassen. - Ein Partner, der Software für die neuen Rechner entwickeln soll, ist auch schon gefunden: Red Hat unterstützt die ARM-Initiative von AMD. Noch wichtiger ist für das Unternehmen aber, dass auch andere Serverhersteller als Seamicro die neuen Prozessoren verbauen wollen. Dell und HP haben sich dazu bereits bekannt. - Eine Abkehr von der x86-Architektur stellt AMDs Ankündigung nicht dar. Die x86-Opterons sollen auch für Server weiterhin angeboten werden, vor allem für technisch/wissenschaftliche Aufgaben. Bei den Clients bleibt das Unternehmen seinen APUs treu, die Kombinationen aus x86-CPU und GPU darstellen.

Wenn es ums Strom sparen geht, denkt man als erstes an Intel's Atom N270, der bei 1,6 GHz nur ca. 5 Watt verbraucht.
Es gibt aber noch jemanden, der das sogar noch besser kann!
Es handelt sich um die, für besonders Strom sparende CPU's bekannte "ARM"-Architektur. Der ARM's Cortex-A9 verbraucht bei 800 MHz nur 0,5 Watt und liefert die gleiche Rechenleistung wie Intel's Atom N270!

Vergleichstabelle:

Hersteller CPU Modell Tacktfrequenz Rechenleistung Leistungsaufnahme DIE-Größe Erscheinungsjahr
Intel Atom N270 1600 MHz 4000 DMIPS 5 Watt 24,18 mm² 2008
Intel Atom N270/Z530 1600 MHz 1904 DMIPS 2,5 Watt (durchschnittlich) 24,18 mm² 2008
ARM Cortex A5 480 MHz 754 DMIPS 0,058 Watt 0,27 mm² 2009
ARM Cortex A5 1000 MHz 1570 DMIPS 0,08 Watt ~0,27 mm² 2009
ARM Cortex A8 1100 MHz 2200 DMIPS 0,5 Watt 3,0 mm² 2005
ARM Cortex A9 800 MHz 4000 DMIPS 0,5 Watt (Aktivmodus) 6,7 mm² 2009
ARM Cortex A9 2000 MHz ~10000 DMIPS 2,5 Watt (Aktivmodus) 6,7 mm² 2009
ARM Cortex A9 2000 MHz ~10000 DMIPS 1,9 Watt (Aktivmodus) 4,9 mm² 2010

Die Angaben zur Energieaufnahme schwanken stark, manchmal wird für den N270 seine Durchschnittliche Leistungsaufnahme angegeben (die zwischen 2 und 5 Watt schwanken), manchmal wird seine maximale Leistungsaufnahme (8 Watt) angegeben.

Hardware-Programmierung

/home/http/wiki/data/attic/hardware.1728848605.txt · Zuletzt geändert: von manfred