HaDePrak WS 05/06 3. Versuch
|
|
- Wilhelmine Bergmann
- vor 7 Jahren
- Abrufe
Transkript
1 HaDePrak WS 05/06 3. Versuch 1 Entwurf eines Rechners In diesem Versuch beginnen wir mit dem Entwurf eines einfachen Rechners: In einem ersten Schritt sollen zunächst die Hardwarekomponenten entworfen werden. Ziel der späteren Versuchen wird es sein, auf Basis dieser Hardware einen vollständigen Rechner zu realisieren und einen eigenen Prozessor zu implementieren. Es werden die Schaltpläne eines Rechners names RESA (REchenanlage SAarbrücken) entwickelt. Als Prozessor wird eine Variante des DLX-Prozessors implementiert. 1.1 Komponenten Wir betrachten einen modular aufgebauten Rechner. Über einen gemeinsamen Bus sind die einzelnen Module miteinander verbunden. Diesen Bus bezeichnet man wegen seines Aufbaus auch als Backplane- Bus. Die Backplane ist die Rückwand, in die alle Karten eingeschoben werden. Entsprechend ihrer Funktionsweise unterscheiden wir zwischen Prozessor, Speicher und Ein /Ausgabe-Einheiten (I/O). Hier eine Übersicht aller Komponenten: Der Prozessor arbeitet gemäß den Anweisungen eines Programms, welches im Hauptspeicher abgelegt ist. Es wird jeweils eine Instruktion geladen (fetch) und anschließend ausgeführt (execute). Zum Laden der Instruktion bzw. zum Laden und Speichern von Daten kann der Prozessor dabei über den Bus auf den Hauptspeicher zugreifen. Der Speicher des Rechners wird durch Adressen auskodiert. Über den Bus kann auf die verschiedenen Adressen zugegriffen werden. Es wird zwischen Nur-Lese-Speicher (ROM) und Schreib-Lese-Speicher (RAM) unterschieden. I/O-Einheiten dienen zur Kommunikation des Rechners mit der Außenwelt. Es können hierüber Programme oder Daten geladen bzw. Ergebnisse von Berechnungen wieder ausgegeben werden. Um I/O-Einheiten über den Bus anzusprechen, werden den einzelnen Kontrollregistern einer solchen Einheit wiederum Adressen zugeordnet.
2 V4 1.2 RESA-Hardware RESA-Hardware Grundlage des weiteren Hardware-Design-Praktikums bildet der Hardware-Prototyp eines existierenden Rechners. Abbildung 1 zeigt den groben Aufbau dieser Maschine. CPU MEM FPGA RAM ROM C PC I/O BusCtrl C A, D, C Abbildung 1: Aufbau der RESA Die RESA/DLX wurde speziell für den Einsatz im Praktikum entwickelt. Der Prozessor wird hierbei in einem speziellen IC, einem sogenannten FPGA (field programmable gate array) implementiert. Der verwendete Baustein ist rekonfigurierbar und kann mit den Praktikum-Designs des RESA-Prozessors programmiert werden. Neben den Standardkomponenten sind mehrere Erweiterungen für den Praktikumsbetrieb zusätzlich implementiert. Hierzu zählen insbesondere ein Hostinterface mit Hilfe dessen von einem PC auf den RESA-Bus und alle Komponenten zugegriffen werden kann. Eine erweitere Buskontrolle überwacht die Aktivitäten des Prozessors auf dem Bus. Im Praktikum wird der Hardware-Prototyp dazu verwendet werden, einen einfachen Rechner aufzubauen. In den folgenden Abschnitten wird dabei zunächst darauf eingegangen werden, wie die einzelnen Komponenten eines solchen Rechners funktionieren und in Hardware realisiert werden können. 2 Busse Ein zentraler Bestandteil eines Rechners sind Busse. Sie dienen der Kommunikation zwischen den einzelnen Komponenten. Wir werden im folgenden zunächst auf sogenannte Tristate-Busse eingehen. Eine weitere Möglichkeit der Implementierung sind gemultiplexte Busse, auf die jedoch erst in den Abschnitten des Prozessordesigns eingangen wird. 2.1 Tristate-Treiber und Busse In digitalen Schaltungen wird zumeist zwischen den Zuständen low und high eines Ausgangs unterschieden. Einige Bausteine mit sogenannten Tristate-Ausgängen können noch einen weiteren Zustand annehmen. Im HIGH-Z-Zustand wird der Ausgang elektrisch isoliert betrieben, d.h. am Ausgang fließt im kein bedeutender Strom. Es gibt Treiber, die man unter Kontrolle eines zusätzlichen Eingangs /OE (output enable) in diesen Zustand überführen kann. Solche Bausteine heißen Tristate-Treiber. Ist der Ausgang im Zustand HIGH-Z, nennen wir den Treiber deaktiviert (disabled), andernfalls aktiviert (enabled). Beispiele für einen solchen Treiber ist der Baustein F244. Seine genaue Funktionsweise kann dem FAST-Datenbuch entnommen werden. Im Gegensatz zu gewöhnlichen Gattern kann man die Ausgänge von Tristate-Treibern gewinnbringend zusammenschalten, solange zu jeder Zeit höchstens ein Treiber aktiviert ist. Eine Leitung, welche die
3 V4 2.2 RESA-Backplane-Bus 3 Ausgänge mehrerer Treiber verbindet, nennt man einen Bus. Werden die Ausgänge von n-bit Treibern zusammengefaßt, spricht man von einem n-bit breiten Bus. Ein Kurzschluß, den man dadurch erzeugt, daß man mehrere Treiber auf einem Bus gleichzeitig aktiviert, bezeichnet man auch als bus contention. Offensichtlich sind k Treiber auf einem Bus von der Funktionsweise identisch mit einem k fachen Multiplexer. Es gibt jedoch mehrere Gründe, warum man dennoch Treiber einsetzt: Die Verzögerungszeit ist bis auf den Einfluß der kapazitativen Last von k unabhängig. Wenn man einen Bus von vornherein mit vielen Steckverbindern ausstattet, kann man sehr einfach die Anzahl der Treiber erhöhen: Man steckt einen neuen Treiber mit Hilfe eines Steckers auf den Bus. Auf dem gleichen Prinzip beruht der ISA oder PCI-Bus in einem PC. Man kann auf den gleichen Leitungen zu verschiedenen Zeiten Daten in verschiedene Richtungen transportieren Wired OR Tristate-Treiber können auch dazu benutzt werden, das logische ODER low-aktiver Signale auf einem Bus zu berechnen. Abbildung 2 zeigt den Aufbau. Alle Treiber sind am Eingang mit GND (low) verbunden. Ist keiner der Treiber aktiviert, d.h. kein Signal OE [k 1..0] aktiv, zieht der Pullup-Widerstand die Leitung nach VCC und damit auf einen high-pegel. Ist mindestens ein Treiber aktiviert, wird die Leitung durch den Treiber auf low gezogen. Der Zustand des Busses ist damit genau dann aktiv, wenn mindestens ein OE [k 1..0] aktiv ist. Obige Schaltung wird deshalb auch häufig auch als Wired-Or bezeichnet. VCC R /OE 0 GND /OE 1 GND /OE k-1 GND Abbildung 2: Wired or Es gibt Gatter, die speziell die Berechnung des Wired-Or unterstützen. Ihre Ausgänge können nur einen low-pegel treiben. Diese Ausgänge heißen open-collector-ausgänge. Der Versuchsbeschreibung begefügt sind die Datenblätter eines 74LS07 open-collector-treibers. 2.2 RESA-Backplane-Bus Alle Module der RESA werden über den sogenannten RESA-Backplane-Bus (kurz: RESA-Bus) miteinander verbunden. Die einzelnen Verbindungen werden über 96-polige Steckverbinder auf eine Verbindungsplatine Backplane geführt. Zur Spezifikation des RESA-Busses zählen neben der Belegung der Leitungen auch ein Busprotokoll und mehrere Kontrollsignale, über welche die Buszugriffe gesteuert werden. Der RESA-Bus umfaßt zwei 32 Bit breite Busse für Adressen (A[31..0]) und Daten (D[31..0]). Zugriffe auf den Bus erfolgen synchron zu einem gemeinsamen Takt, welcher ebenfalls über die Backplane verteilt wird. Zum Kontrollbus C des RESA-Busses zählen Signale zur Busarbitrierung (BR[4..1], BG[4..1]) sowie die Signale /AS, /WR, /ACK und /TIMEOUT.
4 V4 2.3 Busprotokoll Busprotokoll Um Daten korrekt über den Bus zu übertragen, haben Zugriffe einem bestimmten Protokoll zu entsprechen. Aufgabe des Busprotokolls ist es gleichzeitig bus contentions zu vermeiden und Setup und Holdzeiten der verschiedenen Module zu gewährleisten. Eine einzige Steuerungeinheit, die sowohl die CPU als auch verschiedene, in ihren Antwortzeiten unterschiedlich schnelle Komponenten (Speicher, I/O, usw.) kontrolliert, würde sehr kompliziert werden. Deshalb führt man mehrere getrennte Einheiten ein: eine für den jedes Modul (Prozessor, Speicher, I/O). Zusätzlich werden Regeln verabreden, nach denen die Kontrolleinheiten Informationen austauschen. Man muß beispielsweise festlegen, wie die CPU mitteilt, daß sie Daten braucht, und wie sie erfährt, daß die Daten vom Speicher auf den Bus gelegt wurden oder nicht. Einheiten, welche Anfragen, d.h. Adressen auf den Bus legen, bezeichnet man auch als Master. Einheiten, welche die Anfragen bearbeiten werden als Slave bezeichnet. Eine fest verabredete Menge von Regeln, nach denen Maschinen oder Programme Informationen austauschen, heißt Protokoll. Wir beschreiben für den RESA-Bus ein synchrones Busprotokoll. Hierbei gilt, daß Kontrollsignale jeweils nur zu steigenden Flanken des Bustaktes CK erkannt (registriert) werden. Analog hierzu werden Signale auch nur zu solchen Flanken aktiviert oder deaktiviert. Für die einzelnen Kontrollsignale werden folgende Regeln vereinbart: Die Signale BR i und BG i, 1 i 4, dienen der Busarbitrierung. Diese ist prinzipiell nur dann notwendig, wenn eine RESA mit mehreren CPUs parallel betrieben werden soll und wird hier nur der Vollständigkeit halber erwähnt. Im Falle einer einzelnen CPU (während des gesamten HaDePraks) soll davon ausgegangen werden, daß keine Busarbitrierung stattfindet und die CPU immer auf den Bus zugreifen darf. Für mehrere Prozessoren gilt: Eine CPU j darf nur dann auf den Bus zugreifen, wenn das Signal BG j (bus grant) aktiv ist. Es wird durch die Buskontrolle sichergestellt, daß zu jedem Zeitpunkt maximal eine CPU (master) auf den Bus zugreift, wobei die Anfragen BR i (bus request) aller CPU der Reihe nach bearbeitet werden. Ein Buszugriff wird von der CPU initiiert durch das Aktivieren von /AS (address strobe) an einer steigenden Flanke von CK. Während eines Schreibzugriffs ist zusätzlich das Signal /WR (write/read) aktiv, ansonsten inaktiv. Die CPU beendet den Zugriff, indem /AS an einer steigenden Flanke wieder deaktiviert wird. Nach Aktivieren von /AS garantiert die CPU spätestens zur nächsten steigenden Flanke von CK gültige Adressen und Daten (Schreibzugriff) auf dem Bus. Zugriffe auf Module werden jeweils an steigenden Flanken über die Adressen auskodiert und an einer steigenden Flanke von CK durch Aktivieren von ACK (acknowledge) für genau einen Takt quittiert. Mit Quittieren eines Lesezugriffs garantiert ein Modul spätestens zur nächsten steigenden Flanke gültige Daten auf dem Datenbus. Konnte bei einem Zugriff kein Modul auskodiert werden, quittiert die Buskontrolle nach 128 Bustakten selbst den Zugriff und aktiviert gleichzeitig das Signal /TIMEOUT in diesem Takt. Während eines Zugriffs garantieren CPU bzw. Speicher gültige Addressen und Daten auf dem Bus. Diese werden noch bis zur fallenden Flanke nach dem Deaktivieren von /AS gehalten. Danach wechseln Adress und Datenbus wieder in den HIGH-Z-Zustand. Abbildung 3 zeigt die entsprechenden Timingdiagramme für (a) Lese und (b) Schreibzugriffe. Wie Du siehst arbeiten Master (CPU) und Slave (Speicher oder I/O) jeweils gepipelined, d.h. wird ein Signal an einer Flanke aktiviert, so wird dies erst zur nächsten positiven Flanke erkannt. Beim Aufbau einer solchen Pipeline ist darauf zu achten, daß alle Einheiten synchron getaktet werden und daß die Holdbedingungen der beteiligen Kontrollsignale eingehalten werden. Im Falle der RESA wird hierzu ein gemeinsamer Takt über den Bus verteilt. Spezielle Clock-Treiber stellen auf den Modulen sicher, daß an alle getaketen Bauteilen der gleiche Takt mit nur minimaler
5 V4 2.4 Businterface 5 Flanken-Verschiebung ( 5ns) anliegt. CK CK /AS /AS /WR read /WR write A valid A valid /ACK D valid D valid /ACK (a) Lesezugriff (b) Schreibzugriff Abbildung 3: Timing-Diagramm des Busprotokolls der RESA 2.4 Businterface An dieser Stelle gehen wir kurz auf die elektrischen Eigenschaften und die notwendige Hardware ein, die Master und Slave-Module am RESA-Bus benötigen. Es gilt: Die Leitungen /AS und /ACK sind Open-Collector-Verbindungen. Sie berechnen sich als das Wired or aller Module und werden nur getrieben, wenn sie aktiv (low) sind. Um die Fanout-Bedingungen auf dem Bus zu gewährleisten, darf jedes Modul ein Signal maximal zweimal abgreifen. Werden Signale öfter benötigt, so müssen sie nochmals auf der Platine getrieben werden. Ebenso müssen die Treiberausgänge auf den Bus garantieren, daß alle Eingänge aller Module getrieben werden können. Die CPU funktioniert als Master auf dem Bus. Der Prozessor übernimmt dabei die Berechnung der notwendigen Kontrollsignale. Diese werden über entsprechende Treiber auf den Bus gelegt. Für Adressen A[31..0] und das Signal /WR genügt ein unidirektionaler Treiber, die Treiber für den Datenbus sind bidirektional. Signale vom Bus an den Prozessor werden ebenfalls getrieben und intern im Prozessor verarbeitet (getaktet). Slaveeinheiten werden aufgrund gültiger Adressen auskodiert. Um einen Zugriff zu erkennen, müssen bei aktiven /AS zunächst die Bits des Adreßbusses mit den Adressen des Moduls mittels eines Komperators oder GALs verglichen werden. Im allgemeinen werden zu Kodierung des Moduls die höherwertigen Adreßbits verwendet (Basisadresse), niederwertige Bits können dazu benutzt werden einzelne Speicherzellen oder Register innerhalb des Moduls zu selektieren. Für alle Module muß sichergestellt werden, daß über die Basisadresse jeweils nur disjunkte Adreßbereiche auskodiert werden, d.h. bei einem Zugriff immer nur ein einzelnes Modul adressiert werden kann. Die Kontrolleinheit erkennt zur steigenden Flanke einen Zugriff. Mittels eines bidirektionalen Treibers können wiederum Daten vom Bus abgegriffen oder getrieben werden. Nachdem der Zugriff bearbeitet wurde, signalisiert der Slave dies, indem er für genau einen Takt /ACK aktiviert. Die Datentreiber bleiben hiernach noch bis zur fallenden Flanke nach Deaktivieren von /AS offen.
6 V4 6 Abbildung 4 skizziert auf der linken Seite eine Beschaltung für eine CPU, welche als Master auf den Bus zugreifen kann. Auf der rechten Seite ist das zugehörige Businterface einer Slave-Einheit abgebildet. CK CK /AS /ACK Slave A[31..XX] Base Addr =? Steuerung CPU /WR (Master) A[31..0] Speicher D[31..0] D[31..0] (Slave) Abbildung 4: RESA-Bus-Interface 3 Speicher Man unterscheidet zwei Arten von Speicher: Nur-Lese-Speicher (ROM) und Schreib-Lese-Speicher (RAM). Im ersten Fall können die enthaltenen Daten nur ausgelesen werden. Der Speicherinhalt kann durch die CPU nicht geändert werden. Dafür ist ihr Inhalt permanent und bleibt bei Wegfall der Versorgungsspannung erhalten. Speicherzellen des RAMs können auch geschrieben werden. Ihr Inhalt erlischt jedoch bei Abschalten der Stromversorgung. In allen hier vorgestellten Speichertypen wird der Inhalt einer Speicherzelle über die Adresse der Zelle ausgewählt. 3.1 Speicherbausteine Im folgenden sollen die Bausteine kurz vorgestellt werden, mit Hilfe derer der Speicher der RESA aufgebaut wird. Die genauen Spezifikationen und die Funktionsweise sind den Datenblättern zu entnehmen, die diesem Versuch beigefügt sind EPROM Zur Realisierung des ROM-Speichers werden EPROMs (Erasable Programmable Read Only Memory) des Typs TMS27C210A verwendet. Diese Bausteine können mit einem EPROM-Programmiergerät programmiert und durch Bestrahlung mit ultraviolettem Licht wieder gelöscht werden. Um ein Datum auszulesen, müssen nur die Adressen der gewünschten Speicherzelle angelegt werden. Bei aktivem output enable und chip enable erscheint nach kurzer Verzögerung (70ns bis 250ns) das entsprechende Datum am Ausgang DRAM DRAM (dynamic random access memory) ist heutzutage eine der gebräuchlichsten Technologien zum Aufbau von Schreib-Lese-Speichern. Ihre Vorteile liegen insbesonderen in einem sehr günstigen Preis und gleichzeitig in der guten Verfügbarkeit großer Speicherbausteine.
7 V4 3.2 Aufbau der Speicherkarte 7 Im Gegensatz zu sogenannten statischen RAMs (SRAM), welche mit FlipFlops aufgebaut werden, verwendet man bei DRAM Kondensatoren, um die einzelnen Datenbits zu speichern. Bei einem Lesezugriff entladen sich diese und müssen intern neu aufgeladen (recharge) werden. Da sich die Kondensatoren auch von selbst entladen, ist es notwendig alle Zellen des RAMs innerhalb einer gewissen Zeitspanne mindestens einmal auszulesen (refresh) oder zu schreiben und damit die Kondensatoren neu aufzuladen. Speicherzellen eines DRAMs sind intern in Zeilen und Spalten organisiert. Die Adressen einer Speicherzelle werden hierbei gemultiplext zunächst für die Zeile und danach für die Spalte angelegt. Beim Anlegen der Zeilenadresse werden alle Zellen dieser Zeile gleichzeitig gelesen; über die Spaltenadresse wird hiernach die eigentliche Speicherzelle ausgewählt und nach außen gelegt. Um die Speicherzellen einer Zeile zu aufzufrischen ist es daher ausreichend, auf nur eine einzelne Speicherzelle in dieser Zeile zuzugreifen. In der RESA wird eine fortgeschrittenere Variante, sogenanntes enhanced DRAM (EDRAM, nicht zu verwechseln mit EDO-RAM) eingesetzt. Verwendet werden SIMM Module des Typs DM1M32SJ- 15 der Firma Ramtron. Neben einem sehr schnellen DRAM (35ns Zugriffszeit) enthält jeder Chip zusätzlich ein 2 KByte großes SRAM als Cache. Bei einem Zugriff auf eine Speicherzelle wird jeweils die entsprechende vollständige Zeile des DRAMs in den Cache übernommen. Die Daten und insbesondere weitere Zellen der gleichen Zeile können hiernach sehr schnell (in 15ns) ausgelesen bzw. geschrieben werden. Zusätzlich beinhalten diese Bausteine einen interen Refresh-Zähler über welchen die Zeilen des DRAM während eines Refreshs automatisch adressiert werden können. Ein Refresh kann als sogenannter hidden refresh gleichzeitg während Zugriffen auf Speicherzellen des Caches ausgeführt werden. 3.2 Aufbau der Speicherkarte Der Speicher der RESA kann aus mehreren Speichermodulen aufgebaut werden. Diese arbeiten jeweils als Slave auf dem Bus und werden aufgrund ihrer Basisadressen unterschieden. Eine Speicherkarte der RESA beinhaltet: EDRAM: 2 Bänke à 1M x 32Bit mit internem Cache: 512 Worte pro Bank, EPROM: 64K x 32Bit. Die Basisadresse kann aus den oberen 12 Bit der Adresse über DIP-Schalter ausgewählt werden. Für beide RAM-Bänke und das EPROM können unterschiedliche Basisadressen eingestellt werden. Zur Adressierung des RAMs/EPROMs werden die 20 bzw. 16 niederwertigsten Bits des Adressbusses verwendet. Bis zu einem Bustakt von 16MHz kann dabei auf Speicherzellen des RAMs ohne Waitstate zugegriffen werden. Darüber hinaus (maximal 32MHz) wird 1 Waitstate benötigt. Zugriffe auf das EPROM werden immer mit 2 Waitstates ausgeführt. 4 CPU-Karte Der Prozessor der RESA wird mit Hilfe eines FPGA der Xilinx XC4000 Familie realisiert. Der verwendete Baustein XC4025E-PQ240-2 bietet ausreichende Resourcen für die Implementierung eines vollständigen Prozessors. Auf der CPU-Karte der RESA befinden sich außer dem FPGA mehrere Treiber mit deren Hilfe auf den RESA-Bus zugriffen werden kann. Abbildung 5 zeigt eine Skizze der Datenpfade. Die Kontrollogik der CPU-Karte ist in zwei Teile unterteilt: 1. Die Buskontrolle schaltet die Verbindung zwischen FPGA und dem RESA-Backplane-Bus. Falls das FPGA nicht oder fehlerhaft konfiguriert ist, schützt es den RESA-Backplane-Bus vor bus contention. Ansonsten leitet es alle Anforderungen des FPGA-Prozessors an den RESA- Backplane-Bus weiter. 2. Die FPGA-Kontrolle gestattet Slave-Zugriffe auf die RESA CPU-Karte. Die CPU-Karte kann so als normale I/O-Einheit angesprochen werden und gestattet so die Rekonfiguration des FPGAs.
8 V4 4.1 Konfiguration des FPGAs 8 Ist das FPGA als Prozessor konfiguriert, so beinhaltet die Kontrollogik zusätzliche Steuersignale für die Operationen Reset, Halt und Einzelschrittmodus der CPU. Einige der freien Pins des FPGAs, die nicht durch den Prozessor belegt werden, sind an einen 50- poligen Erweiterungsstecker angeschlossen. Im Rahmen des Praktikums können diese Pins dazu verwendet werden, interne Kontrollsignale des FPGA-Designs nach außen zu legen und mit dem Logikanalysator aufzuzeichnen. Bus-Master Teil EPROM Bus-Slave Teil config, control FPGA Control decode A D C Bus- Control C Expansion Port FPGA (XC4025) A A 32 D D 32 Abbildung 5: Datenpfade der RESA CPU-Karte RESA-Backplane-Bus 4.1 Konfiguration des FPGAs Das FPGA kann sowohl über den RESA-Bus, als auch aus einem auf der CPU-Karte befindlichen EPROM konfiguriert werden. Soll die RESA ohne Hostrechner betrieben werden, so sind die Konfigurationsdaten des FPGA in diesem EPROM gespeichert und werden nach einem Reset geladen. Im Rahmen des Praktikums wird das FPGA über den Bus der RESA mit Hilfe des Hostrechners konfiguriert. Das aktuelle Prozessordesign wird auf den Praktikumsrechnern erstellt und anschließend auf den Hardware-Prototypen der RESA geladen. Der konfigurierte Prozessor beginnt dann seine Arbeit und kann Programme ausführen - sofern er keine Entwurfsfehler enthält. Das EPROM enthält ein Referenzdesign des Prozessors. Mit diesem Design kann das FPGA konfiguriert werden, um z.b. zu Überprüfen ob eine fehlerhafte Programmausführung an Eurem Prozessor oder an Eurem Programm liegt. 4.2 Buszugriffe des FPGA Zwischen FPGA und RESA-Bus befinden sich Treiber, die durch die Buskontrolle der CPU-Karte gesteuert werden. Hierbei sind die Steuersignale /AS, /ACK und /WR des Prozessordesigns mit der Buskontrolle verbunden. Bei einem Zugriff der CPU übernimmt die Buskontrolle die Arbitrierung (Anforderung des Multiprozessor-Busses) des Busses und erst nachdem der Bus freigegeben wurde, wird der Zugriff des FPGA über die Treiber auf den Bus weitergeschaltet. Aus Sicht eines Prozessors erfolgen Zugriffe so, als ob der Prozessor der CPU-Karte der einzige Master auf dem Bus sei. Gibt es mehrere Master, so erscheint dies für die CPU wie ein Zugriff auf einen langsameren Speicher. Die Zeit für Busarbitrierung und die Wartezeit bei belegtem Bus addieren sich zu der Zeit des eigentlichen Buszugriffs.
9 V4 9 5 Programmierbare Logik Teil II Im Rahmen des Praktikums konnten bisher einfache Schaltwerke mit Hilfe von GALs realisiert werden. Die Vorteile dieser Bauteile lagen insbesondere darin, daß sie einfach programmiert werden konnten und zum Aufbau einer Schaltung der Verdrahtungsaufwand relativ gering war. Müssen komplexere Schaltungen aufgebaut werden, ergibt sich jedoch auch hier das Problem, daß eine Logik in mehrere GALs verteilt und diese fest miteinander verdrahtet werden müssen. Zum Aufbau komplexerer Schaltungen wurden deshalb größere Bausteine entwickelt. Der heutige Stand der Technik erlaubt es, selbst einen vollständigen Prozessor in einem einzelnen, programmierbaren Chip (FPGA = field programmable gate array) aufzubauen. 5.1 Informationen zu FPGAs Im Rahmen des Praktikums werden FPGA des Typs XC4025E der Firma Xilinx eingesetzt. Die relevanten Seiten dieses Datenbuches sind in der HaDePrak-Arbeitsmappe enthalten. In den praktischen Übungen dieses Versuchs solltest Du erste Erfahrungen im Umgang mit diesen Bausteinen und ihrer Programmierung machen. Um Dich auf den Versuch vorzubereiten, studiere im Datenbuch die Funktionsweise, den internen Aufbau und die Konfiguration eines solchen FPGAs. Lies hierzu die Seiten: Seiten 14-5 und -6: Allgemeine Einführung Seiten 6-7 bis -14 und 6-20 bis -23: Die Funktionsweise des FPGAs Seiten 6-30 bis -33: Die Interconnect Matrix des FPGAs Seiten 6-47 bis -66: Die Konfiguration des FPGAs Die angegebenen Seitenzahlen bezeichnen dabei nur, auf welchen Seiten das Wissen steht, das in Übungen und Klausur abgefragt wird. Es ist aber ratsam und für das genaue Verständnis notwendig, auch die übrigen Seiten zu lesen. 5.2 Programmierung des FPGAs Der Entwurf des FPGA-Prozessors erfolgt mit Hilfe der Xilinx Foundation Software. Dieses Programm umfaßt den Schematic Entry, den Ihr in ähnlicher Form bereits bei OrCAD gesehen habt, einen Editor für ABEL Gleichungen, einen sehr guten Simulator und Synthesetools zum Erzeugen der Konfigurationsdaten des FPGAs. Die Funktionsweise und die für den FPGA-Entwurf zur Verfügung stehenden Macros (Vorgegeben Bauteilelemente, wie z.b. Flip-Flops, AND-Gatter, etc.) werden während der praktischen Übung erklärt. Die Beschreibungen der zum FPGA-Design zur Verfügung stehenden Bauteile befinden sich in der HaDePrak-Arbeitsmappe im Kapitel Xilinx FPGA Library Elements. 6 Hausaufgaben Aufgabe 1 (4+1 Punkte) Entwirf ein einfaches I/O-Interface für die RESA. Es soll insgesamt vier Register R i geben, welche über die untersten Adressleitungen selektiert werden:
10 V4 10 Register Name Bedeutung R0 data out In dieses Register schreibt die CPU Daten, die für die Peripherie-Einheit bestimmt sind. R1 data in Aus diesem Register liest die CPU Daten, die von der Peripherie-Einheit kommen. R2 command In dieses Register schreibt die CPU Befehle an die Peripherieeinheit. R3 status Aus diesem Register liest die CPU Status-Informationen, die vom Peripheriegerät kommen. 1 a) Skizziere die notwendigen Datenpfade, Register und Treiber um ein solches I/O-Interface am Bus der RESA zu betreiben. Gib eine Kontrollogik und eine Schaltung an, mittels derer die einzelnen Register selektiert und Daten gelesen bzw. geschrieben werden können. Zeichne die entsprechenden Timingdiagramme Deiner Kontrollsignale für einen Lese und einen Schreibzugriff (inklusive CK, /AS und /ACK). b) Gib für ein Slave-Interface mit 0 bzw. 3 Waitstates die entsprechenden GAL-Gleichungen des Signals /ACK an. Aufgabe 2 (6 Punkte) Entwirf Datenpfade und Kontrollogik einer einfachen CPU-Karte. Folgende Beschränkungen sollen gelten: Es gibt nur einen Master (CPU) auf dem Bus, d.h. es findet keine Busarbitrierung statt. Die CPU darf immer auf den Bus zugreifen. Die Konfiguration des FPGA erfolgt im master parallel mode, d.h. Konfigurationen werden nur aus einem EPROM geladen. Nach einem Reset wird das FPGA jeweils neu konfiguriert. Alle Steuersignale, Daten und Adressen werden über FAST-Bausteine auf den Bus getrieben bzw. von dort abgegriffen (jedes Signal darf auf dem Bus nur maximal einmal abgegriffen werden). Zeichne die Datenpfade und gib an, welche Bausteine Du außer dem FPGA verwenden willst. Gib für die Steuersignale Deiner Karte und des FPGAs an, wo diese generiert werden (FPGA, GAL) und wann diese aktiv sind. Aufgabe 3 (4+4 Punkte) a) Entnimm dem Xilinx-Datenbuch die Konfigurationsmöglichkeiten für CLBs und IOBs. Skizziere hierzu die aktiven Datenpfade der Abbildungen 1 (Seite 6-12) und 15 (Seite 6-23) des Xilinx-Datenbuchs für: ein einzelnes Register (ohne die Funktionsgeneratoren zu benutzen). ein kombinatorisches Ausgangssignal (X) mit vier Eingängen und einem Funktionsblock ein registertes Ausgangssignal (XQ) mit maximal vier Eingängen und einem Funktionsblock zwei unabhängige Funktionen (X,Y) mit jeweils vier Eingängen eine kombinatorische Funktion (X) mit neun Eingängen einen Eingangstreiber ein Eingangsregister einen Tristate-Ausgang (kombinatorisch) Hinweis: Es wurde in den einzelnen Aufgaben bewußt nicht genannt, auf welchen der beiden Funktionsblöcke sie sich beziehen. Die Aufgaben sind dennoch eindeutig lösbar ohne neue Bauteile in die Funktionsblöcke einzuzeichnen! 1 Typische Bedeutungen von Bits in diesem Register ist, ob in R 1 ein neues Datum steht, oder ob nach R 0 ein neues Datum geschrieben werden kann.
11 V4 11 b) Unter dem Routing eines FPGAs versteht man die Verschaltung von Ein und Ausgängen der CLBs und IOBs. Entnimm dem Kapitel Programmable Interconnect des Xilinx-Datenbuchs, welche Resourcen in einem Chip der XC4000E-Serie für das Routing von CLBs zur Verfügung stehen. Gib für die einzelnen Verbindungsarten an, welches die jeweiligen Vorteile sind und für welche Signalarten sie vorgesehen wurden. Aufgabe 4 (6 Punkte) Entwirf einen 16-Bit-Binärzähler in einem FPGA. Gib hierfür die vollständige Schaltung des FPGA an (inklusive aller I/O-Anschlüsse). Verwende in Deiner Schaltung nur Symbole der XC4000-Bibliothek. Das FPGA soll als Eingang nur ein Taktsignal besitzen, welches über einen Eingangspin (IPAD) angeschlossen und über einen BUFGP im Chip verteilt wird. Verwende für die Register des Zählers Register mit Clock-Enable (FDCE). Die Ausgänge der Register werden über OBUFs nach außen auf Pins (OPAD) getrieben. In jedem Takt soll der Zähler um Eins erhöht werden. Implementiere den Zähler wie folgt: Der Takt (Ausgang BUFGP) wird an alle Register verteilt. Die Register werden jeweils als Toggle-Register betrieben. Der Eingang ist hierbei über einen Inverter mit dem Ausgang gekoppelt. Das Clock-Enable (CE) eines Registers soll aktiviert werden, wenn die Ausgänge aller Vorgänger high sind, d.h. im nächsten Schritt ein Übertrag auf dieses Bit erfolgen wird. Für das niederwertigste Bit ist der CE-Eingang immer aktiv. Σ = 25 Punkte 7 Praktische Übungen Aufgabe 5 Im Praktikum erhälst Du zwei Macro-Bausteine zusätzlich zur 4000er Library. Diese Macros enthalten die Pinzuordnungen zum RESA-Bus (Macro IO LOGIC) und zur LA Card (Macro LA CON). Vervollständige die Schaltung des Zählers durch Verbindungen mit diesen beiden Macros. Simuliere Deine Schaltung mit der Xilinx Foundation Software. Erzeuge ein Konfigurationsfile für ein XC4025E-PQ240-2 FPGA. Hochintegrierte Bauteile können durch elektrostatische Entladungen leicht zerstört werden. Um dies zu vermeiden, ist es nötig sich bei Arbeiten mit solchen Bausteinen zu erden. An jedem Praktikumsplatz liegt ein entsprechendes blaues Anti-Statik-Armband. Dieses sollte bei allen Versuchen mit der RESA-Hardware (FPGA) getragen werden. Falls Ihr sehen solltet, wie ein Bremser diese Sicherheitsmaßnahme nicht beachtet: Er HAT sie beachtet - auch wenn Ihr nicht gesehen habt wie! (Bei kurzzeitigen Arbeiten genügt es, sich durch einen Griff an großflächige metallische Gegenstände zu entladen. Diese Vorgehensweise ist Euch aber nicht gestattet!) Für Euch gilt aber immer: Wir wollen SEHEN, wie Ihr die Sicherheitsmaßnahmen beachtet!
Teil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Tri-State Ausgangslogik Ausgang eines
MehrVersuch D3: Busse, Speicher und Ampelsteuerung mit Speicher
Versuch D3: Busse, Speicher und Ampelsteuerung mit Speicher Version D3_16 vom 25.05.2016 Ziel dieses Versuches: Entwicklung einer Ablaufsteuerung mit einem 32 * 4 bit Speicherbaustein, um eine flexible
Mehr13 Programmierbare Speicher- und Logikbausteine
13 Programmierbare Speicher- und Logikbausteine Speicherung einer Tabelle (Programm) Read Only Memory (ROM) Festwertspeicher Nichtflüchtig Nichtlöschbar: ROM PROM bzw. OTP-ROM Anwender programmierbares
MehrHalbleiterspeicher. Halbleiterspeicher. 30.09.2008 Michael Kuhfahl 1
Halbleiterspeicher 30.09.2008 Michael Kuhfahl 1 Gliederung I. FF als Speicher (1 Bit) II. Register als Speicher (n Bit) III. Anordnung der Speicherzellen IV. SRAM V. DRAM VI. ROM VII. PROM VIII. EPROM
MehrSpeicher: RAMs, ROMs PROMS, EPROMs, EEPROMs, Flash EPROM
Speicher: RAMs, ROMs PROMS, EPROMs, EEPROMs, Flash EPROM RAMs (Random Access Memory) - Schreib-Lese-Speicher RAMs sind Speicher mit der Aufgabe, binäre Daten für eine bestimmte Zeit zu speichern. Diese
MehrDigital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1
Entwicklung der DRAMs Richard Roth / FB Informatik und Mathematik Speicher 1 Entwicklung der DRAMs in Zukunft Richard Roth / FB Informatik und Mathematik Speicher 2 DRAM Speicherzelle (Trench Technology)
Mehr5 Zusammengesetzte und reguläre Schaltungsstrukturen
5 Zusammengesetzte und reguläre Schaltungsstrukturen regelmäßig aufgebaute (reguläre) Schaltungsstrukturen implementieren jeweils eine größere Zahl an Gatterfunktionen wichtigste Vertreter: Speicher, programmierbare
Mehra. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF
ITS Teil 2: Rechnerarchitektur 1. Grundschaltungen der Digitaltechnik a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF b. Zähler (Bsp. 4-Bit Zähler) - Eingang count wird zum Aktivieren
MehrBesprechung des 7. Übungsblattes Speicheraufbau Speichertypen DRAM Speicherbelegung
Themen heute Besprechung des 7. Übungsblattes Speicheraufbau Speichertypen DRAM Speicherbelegung Besprechung des 7. Übungsblattes Aufgabe 4a Der eigentliche Sprung erfolgt in der MEM-Phase (4. Pipeline-Stufe),
MehrArithmetische und Logische Einheit (ALU)
Arithmetische und Logische Einheit (ALU) Enthält Blöcke für logische und arithmetische Operationen. n Bit Worte werden mit n hintereinander geschalteten 1 Bit ALUs bearbeitet. Steuerleitungen bestimmen
MehrGAL 16V8. 4. Laboreinheit - Hardwarepraktikum SS 2002 VCC / +5V. Eingang / Clock. 8 konfigurierbare Ausgangszellen. 8 Eingänge GND / 0V.
1. Versuch Programmierbare Logik 4. Laboreinheit - Hardwarepraktikum SS 2002 Am Beispiel des GAL16V8 und eines GAL Development Systems werden die Möglichkeiten und Einsatzgebiete von programmierbare Logikbausteine
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrZENTRALEINHEITEN GRUPPE
31. Oktober 2002 ZENTRALEINHEITEN GRUPPE 2 Rita Schleimer IT für Führungskräfte WS 2002/03 1 Rita Schleimer TEIL 1 - Inhalt Zentraleinheit - Überblick Architekturprinzipien Zentralspeicher IT für Führungskräfte
MehrPraktikum Digitaltechnik
dig Datum : 1.06.2009 A) Vorbereitungsaufgaben 1) Was unterscheidet sequentielle und kombinatorische Schaltungen? Kombinatorische ~ Sequentielle ~ Ausgänge sind nur vom Zustand der Eingangsgrößen abhängig
Mehr8. SPS Komponenten: Beschreibung der Hardware-Komponenten einer SPS samt deren Eigenschaften
8. SPS Komponenten: Beschreibung der Hardware-Komponenten einer SPS samt deren Eigenschaften Automatisierungsgerät: Zentralbaugruppe mit Prozessor Kommunikationsbaugruppe (Feldbusanschaltung) Bussysteme
Mehr2.2 Rechnerorganisation: Aufbau und Funktionsweise
2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise
MehrEin- Ausgabeeinheiten
Kapitel 5 - Ein- Ausgabeeinheiten Seite 121 Kapitel 5 Ein- Ausgabeeinheiten Am gemeinsamen Bus einer CPU hängt neben dem Hauptspeicher die Peripherie des Rechners: d. h. sein Massenspeicher und die Ein-
MehrMikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)
Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.
MehrBericht. Digitallabor. Hochschule Karlsruhe N1. Aufgabe 5.6 Stoppuhr. Teilnehmer: Natalia Springer, Tong Cha. Datum:
Bericht Digitallabor Hochschule Karlsruhe N1 Aufgabe 5.6 Stoppuhr Teilnehmer: Natalia Springer, Tong Cha Datum: 09.01.08 5.6.1 4 Dekadenzähler Aufgabe: Es soll ein 4 Dekaden- Zähler entworfen werden, dessen
MehrTeil VIII Von Neumann Rechner 1
Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only
MehrHalbleiterspeicher. Halbleiterspeicher
Halbleiterspeicher Liers - PEG-Vorlesung WS2/2 - Institut für Informatik - FU Berlin Halbleiterspeicher RAM Random Access Memory Schreib-Lese-Speicher SRAM statischer RAM DRAM dynamischer RAM Liers - PEG-Vorlesung
MehrTechnische Grundlagen der Informatik Kapitel 5. Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt
Technische Grundlagen der Informatik Kapitel 5 Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt Kapitel 5: Themen Speicherarchitekturen RAM-, ROM-Speicher Flash-Speicher Logikimplementierung
MehrEnterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13
UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 4 Cache el0100 copyright W.
MehrIntegrierte Schaltungen
Integrierte Schaltungen Klassen von Chips: SSI (Small Scale Integrated) circuit: 1 bis 10 Gatter MSI (Medium Scale Integrated) circuit: 10 bis 100 Gatter LSI (Large Scale Integrated) circuit: 100 bis 100
MehrTutorium Rechnerorganisation
Woche 3 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrDigitaltechnik. 6 Speicherelemente. Revision 1.4
Digitaltechnik 6 Speicherelemente A Revision 1.4 Übersicht Adressen Read-Only Memory ROM Random Access Memory RAM Datenbusse Caches Speicher Memory ROM: read-only memory RAM: random-access memory (besser
MehrSemestralklausur Einführung in Computer Microsystems
Semestralklausur Einführung in Computer Microsystems 07. Juli 2008 Dr.-Ing. Wolfgang Heenes Name (Nachname, Vorname) Matrikelnummer Unterschrift Prüfung Bitte ankreuzen Anzahl abgegebene Zusatzblätter:
MehrProgrammierbare Logik CPLDs. Studienprojekt B Tammo van Lessen
Programmierbare Logik CPLDs Studienprojekt B Tammo van Lessen Gliederung Programmierbare Logik Verschiedene Typen Speichertechnologie Komplexe Programmierbare Logik System On a Chip Motivation Warum Programmierbare
MehrLösung 5. Mikroprozessor & Eingebettete Systeme 1
Lösung 5 Mikroprozessor & Eingebettete Systeme 1 WS2015 / 2016 Hinweis: Die folgenden Aufgaben erheben nicht den Anspruch, eine tiefergehende Kenntnis zu vermitteln; sie sollen lediglich den Einstieg in
MehrTutorium Rechnerorganisation
Woche 9 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrVorlesung Rechnerarchitektur. Einführung
Vorlesung Rechnerarchitektur Einführung Themen der Vorlesung Die Vorlesung entwickelt an Hand von zwei Beispielen wichtige Prinzipien der Prozessorarchitektur und der Speicherarchitektur: MU0 Arm Speicher
MehrWie in der Skizze zu sehen ist, bleibt die Periodendauer / Frequenz konstant und nur die Pulsweite ändert sich.
Kapitel 2 Pulsweitenmodulation Die sogenannte Pulsweitenmodulation (kurz PWM) ist ein Rechtecksignal mit konstanter Periodendauer, das zwischen zwei verschiedenen Spannungspegeln oszilliert. Prinzipiell
MehrGrundlegendes zum PC
Grundlegendes zum PC Grundsätzlicher Aufbau eines PC Bild eines PC Beschreibung Eingabegeräte Ausgabegeräte Speicher Sonstige Bild eines PC Beschreibung Sind alle gleich die PC Sind in 3 bereiche eingeteilt:
Mehr<ruske.s@web.de> Oliver Liebold. NAND (negierte Undverknüpfung) L L H L H H H L H H H L
Elektronische Grundlagen Versuch E7, Grundelemente der Digitaltechnik Praktikumsgruppe IngIF, 04. Juni 2003 Stefan Schumacher Sandra Ruske Oliver Liebold
MehrDigitalelektronik. Philipp Fischer. 9. Dezember 2002
Digitalelektronik Philipp Fischer 9. Dezember 2002 1 Inhaltsverzeichnis Einfache TTL-Schaltungen 4 EOR-Logik 5 Realisation verschiedener Logiken 5 Addierer 6 Parity-Check 6 Multiplexer 7 Basis Flip-Flop
MehrSerielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI)
Serielle Kommunikation mit dem Arduino Teil 1: Das Serial Peripheral Interface (SPI) Axel Attraktor e.v. 4. Juni 2012 Axel (Attraktor e.v.) 5. Arduino-Stammtisch 4. Juni 2012 1 / 25 Serielle Kommunikation
MehrSoftware ubiquitärer Systeme
Software ubiquitärer Systeme Übung 2: Speicherarchitekturen in Mikrocontrollern und AOStuBS Christoph Borchert Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund http://ess.cs.uni-dortmund.de/~chb/
MehrRechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7
1 Vortrag Atmega 32 Von Urs Müller und Marion Knoth Urs Müller Seite 1 von 7 Inhaltsverzeichnis 1 Vortrag Atmega 32 1 1.1 Einleitung 3 1.1.1 Hersteller ATMEL 3 1.1.2 AVR - Mikrocontroller Familie 3 2 Übersicht
MehrMicrocontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1
Microcontroller Kurs 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Was ist ein Microcontroller Wikipedia: A microcontroller (sometimes abbreviated µc, uc or MCU) is a small computer on a single integrated
MehrEinführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung
MehrTietze, Schenk: Halbleiterschaltungstechnik (Kap. 10) Keller / Paul: Hardwaredesign (Kap. 5) L. Borucki: Digitaltechnik (Kap.
6 Versuch Nr. 5 6.1 Anmerkungen zum Versuch Nr. 5 In den bisherigen Versuchen haben Sie sich mit kombinatorischen Schaltkreisen beschäftigt, in denen die Ausgänge bisher nicht auf die Eingänge zurückgeführt
Mehr3. Rechnerarchitektur
ISS: EDV-Grundlagen 1. Einleitung und Geschichte der EDV 2. Daten und Codierung 3. Rechnerarchitektur 4. Programmierung und Softwareentwicklung 5. Betriebssyteme 6. Internet und Internet-Dienste 3. Rechnerarchitektur
MehrRam/Rom/EPRom WIRTSCHAFTSINGENIEURSWESEN. Ausbildungsschwerpunkte: BETRIEBSMANAGEMENT LOGISTIK. Xaver Schweitzer. Jahr: 2011/12
Name: Klasse: Xaver Schweitzer 1BHWI Jahr: 2011/12 Ram/Rom/EPRom Abb. 1 Abb. 2 Abb. 3 Ram Rom EPRom 22.09.2011 1 von 10 Inhaltsverzeichnis INHALTSVERZEICHNIS... 2 EINLEITUNG... 3 RAM... 4 SRAM - Static
MehrREFERAT ÜBER RAM-MODULE:
REFERAT ÜBER RAM-MODULE: I N H A L T : M O D U L F O R M E N R A M - T y p e n T A K T R A T E N D A T E N R A T E N B U R S T - M O D I D Y N A M I S C H E S - R A M S T A T I S C H E S - R A M C O L
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrGrundlagen der Informatik 2. Grundlagen der Digitaltechnik. 5. Digitale Speicherbausteine
Grundlagen der Informatik 2 Grundlagen der Digitaltechnik 5. Digitale Speicherbausteine Prof. Dr.-Ing. Jürgen Teich Dr.-Ing. Christian Haubelt Lehrstuhl für Hardware-Software Software-Co-Design Grundlagen
MehrAlle Speicherplatinen können als Programm- bzw. Arbeitsspeicher
-1-1. Überblick Das System.009 umfaßt programmierbare binäre Steuereinrichtungen für den industriellen Einsatz. Charakteristisch ist, daß die BOOLEschen Gleichungen, die den konkreten Steueralgorithmus
MehrKlassifizierung der Halbleiterspeicher
Klassifizierung der Halbleiterspeicher Halbleiterspeicher nicht flüchtig flüchtig AM nicht löschbar OM POM löschbar EPOM EEPOM statisch AM dynamisch AM abei bedeuten die Abürzungen: OM AM POM EPOM EEPOM
MehrDas große All-in-All CPLD/FPGA Tutorial
Das große All-in-All CPLD/FPGA Tutorial Mit diesem Tutorial sollen die ersten Schritte in die Welt der programmierbaren Logik vereinfacht werden. Es werden sowohl die Grundlagen der Logik, die benötigte
MehrRechner Architektur. Martin Gülck
Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard
MehrÜbersicht. Busse. Übersicht. Bus, Bridge, I/O-Controller. Einleitung Hersteller-Konfiguration Manuelle Konfiguration Programmierbare Konfiguration
Übersicht 1 Busse Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 2 Bus-Konfiguration 3 Bus-Arbitrierung Busse 1/40 2008-10-13
MehrSpeicherung von Signalen - Flipflops, Zähler, Schieberegister
Lehrbehelf für Prozessregelung und echnerverbund, 3. Klasse HTL Speicherung von Signalen - Flipflops, Zähler, Schieberegister S - Flipflop Sequentielle Schaltungen unterscheiden sich gegenüber den kombinatorischen
MehrDer Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel
2 Der Mikrocontroller Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel 1 beschrieben. Auf dem Chip sind die, ein ROM- für das Programm, ein RAM- für die variablen
MehrEHP Einführung Projekt A
Volker Dörsing EHP Einführung Projekt A email: doersing@uni-jena.de praktische Übung www: http://users.minet.uni-jena.de/~ehp-head Vorbereitung, Durchführung, Kolloquium Infos zur Veranstaltung, Versuchsanleitung
MehrVersuch P1-63 Schaltlogik Vorbereitung
Versuch P1-63 Schaltlogik Vorbereitung Gruppe Mo-19 Yannick Augenstein Versuchsdurchführung: 16. Januar 2012 1 Inhaltsverzeichnis Einführung 3 1 Grundschaltungen 3 1.1 AND.......................................
MehrAufgabe 1 Minimieren Sie mit den Gesetzen der Booleschen Algebra 1.1 f a ab ab 1 = + + Aufgabe 2. Aufgabe 3
Logischer Entwurf Digitaler Systeme Seite: 1 Übungsblatt zur Wiederholung und Auffrischung Aufgabe 1 Minimieren Sie mit den Gesetzen der Booleschen Algebra 1.1 f a ab ab 1 = + + 1.2 f ( ) ( ) ( ) 2 = c
MehrElektrizitätslehre und Elektronik. Halbleiterspeicher
1/5 Halbleiterspeicher Ein Halbleiterspeicher ist ein Datenspeicher, der aus einem Halbleiter besteht, in dem mittels der Halbleitertechnologie integrierte Schaltkreise realisiert werden. Die Daten werden
MehrATmega169 Chip: Pin-Layout
ATmega169 Chip: Pin-Layout Die logische Schnittstelle der Funktionseinheit MCU (Microcontroller Unit) entspricht der physikalischen Schnittstelle der Baueinheit (Chip). Für die Maschinenbefehle sind nur
Mehr1. Praktische Übung zur Vorlesung Technische Informatik I
Friedrich-Alexander-Universität Erlangen-Nürnberg Informatik 12 Am Weichselgarten 3 91058 Erlangen 1. Praktische Übung zur Vorlesung Technische Informatik I Aufgabe 1 (NAND-chaltfunktion) Es soll ein chalternetzwerk
MehrUNIVERSITÄT LEIPZIG. Studentenmitteilung 3./4. Semester - WS 2006/ SS 2007. Aufgaben zum Elektronik Grundlagenpraktikum. 4.
UNIVERSITÄT LEIPZIG Institut für Informatik Studentenmitteilung 3./4. Semester - WS 2006/ SS 2007 Abt. Technische Informatik Gerätebeauftragter Dr. rer.nat. Hans-oachim Lieske Tel.: [49]-0341-97 32213
MehrSchaltungshinweise zum Linux Control System mit DIL/NetPC DNP/7520
Schaltungshinweise zum Linux Control System mit DIL/NetPC DNP/7520 Das Linux Control System ist eine typische Anwendung für das Linux Control Modul DIL/NetPC DNP/7520. Die Abbildung 1 zeigt die Blockschaltung.
MehrFachhochschule Kaiserslautern Fachbereich Angewandte Ingenieurwissenschaften WS2010/11. Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10.
Lehrprozessor: Coldfire MCF-5272 Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10.45 Uhr Raum: Aula Bearbeitungszeit: 180 Minuten Erlaubte Hilfsmittel: Gedrucktes Vorlesungsskript von Prof. Neuschwander mit
MehrBeim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen:
1 ADRESSIERUNG IN MMIX Beim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen: no base address is close enough to the address A! relative address
MehrÜbersicht aktueller heterogener FPGA-SOCs
Fakultät Informatik, Institut für Technische Informatik, Professur VLSI-Entwurfssysteme, Diagnostik und Architektur Übersicht aktueller heterogener FPGA-SOCs Vortrag zum Lehrstuhlseminar Tilo Zschau tilo.zschau@mailbox.tu-dresden.de
MehrBetriebssysteme Vorstellung
Am Anfang war die Betriebssysteme Vorstellung CPU Ringvorlesung SE/W WS 08/09 1 2 Monitor CPU Komponenten eines einfachen PCs Bus Holt Instruktion aus Speicher und führt ihn aus Befehlssatz Einfache Operationen
MehrJohann Wolfgang Goethe-Universität
Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory
MehrEmulation und Rapid Prototyping. Hw-Sw-Co-Design
Emulation und Rapid Prototyping Hw-Sw-Co-Design Simulation von komplexen ICs Design level Description language Primitives Simulation time (instructions/cycle) Algorithm HLL Instruction sets 10-100 Architecture
MehrEmulation und Rapid Prototyping
Emulation und Rapid Prototyping Hw-Sw-Co-Design Simulation von komplexen ICs Design level Description language Primitives Simulation time (instructions/cycle) Algorithm HLL Instruction sets 10-100 Architecture
Mehr3 Arithmetische Schaltungen
. Schaltungselemente Arithmetische Schaltungen. Schaltungselemente Logikgatter Treiber; gibt am Ausgang denselben Logikpegel aus, der auch am Eingang anliegt Inverter; gibt am Ausgang den Logikpegel des
MehrVersion: Multi - XR. Kontakt-Multiplexer für USV-Schnittstellen. Benutzerhandbuch. GENEREX Systems GmbH Germany
Multi - XR Kontakt-Multiplexer für USV-Schnittstellen Benutzerhandbuch GENEREX Systems GmbH Germany Copyright 2016 Funktionsbeschreibung Der Multi XR ist ein Schnittstellenmultiplexer für USV-Geräte mit
Mehr8.0 Erweiterung mit dem 8 Bit D/A Maxim MAX5382
8.0 Erweiterung mit dem 8 Bit D/A Maxim MAX5382 Der MAX5382 ist ein 8 Bit DA Wandler im SOT23 Gehäuse. Der MAX5380 besitzt eine interne Referenzspannung von 2 V, der MAX5381 von 4 Volt und der verwendete
MehrIT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1
IT für Führungskräfte Zentraleinheiten 11.04.2002 Gruppe 2 - CPU 1 CPU DAS TEAM CPU heißt Central Processing Unit! Björn Heppner (Folien 1-4, 15-20, Rollenspielpräsentation 1-4) Harald Grabner (Folien
MehrProzessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel
Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle
MehrStudiengang Maschinenbau, Schwerpunkt Mechatronik (früher: Automatisierungstechnik) Seite 1 von 8
Studiengang Maschinenbau, Schwerpunkt Mechatronik (früher: Automatisierungstechnik) Seite 1 von 8 Hochschule München Fakultät 03 Zugelassene Hilfsmittel: alle eigenen, Taschenrechner Viel Erfolg!! Komponenten
MehrSpeicherung digitaler Signale
Speicherung digitaler Signale von Fabian K. Grundlagen Flipflops Bisher: Schaltungen ohne Speichermöglichkeit Jetzt: Speichermöglichkeit durch Flipflops Flipflops Grundlagen Flipflops Was sind Flipflops?
MehrRechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 14/15 Prof. Dr Jian-Jia Chen Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-.de http://ls1-www.cs.tu-.de Übersicht
Mehr6 Speicherelemente. Digitaltechnik. Übersicht. Adressen. Read-Only Memory ROM. Random Access Memory RAM. Datenbusse. Caches.
A Digitaltechnik 6 Speicherelemente Übersicht n Read-Only Memory ROM Random Access Memory RAM Datenbusse Revision 1.4 Caches Speicher Memory RAM in PCs ROM: read-only memory RAM: random-access memory (besser
MehrMikroprozessor als universeller digitaler Baustein
2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen
MehrMakros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler die Datein verarbeitet.
U4 4. Übung U4 4. Übung Besprechung Aufgabe 2 Makros Register I/O-Ports U4.1 U4-1 Makros U4-1 Makros Makros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 4 AM 21.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
Mehra) Wie viele ROM-Bausteine benötigen Sie für den Aufbau des 64x16 ROMs? c) Wie viele Bytes Daten können im 64x16 ROM insgesamt gespeichert werden?
VU Technische Grundlagen der Informatik Übung 4: Schaltwerke 83.579, 24W Übungsgruppen: Mo., 24.. Mi., 26..24 Aufgabe : ROM-Erweiterung Ein 64x6 ROM soll aus mehreren 32x4 ROMs (vgl. Abbildung rechts:
MehrBesprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur
Themen heute Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur Besprechung des 8. Übungsblattes Aufgabe 2.6. In diesem
MehrGrundlagen der Digitaltechnik GD. Aufgaben und Musterlösungen
DIGITALTECHNIK GD KLAUSUR VOM 19. 3. 2014 AUFGABEN UND MUSTERLÖSUNGEN SEITE 1 VON 9 Name: FH Dortmund Matr.-Nr.: FB Informations- und Elektrotechnik Grundlagen der Digitaltechnik GD Klausur vom 19. 3.
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation (ÜGRa)
Übungen zu Grundlagen der Rechnerarchitektur und -organisation (ÜGRa) Aufgabenblatt 07 Ausgabe: 2016-06-13 Abgabe: 2016-06-27 Aufgabe 1: Die MIPS-Architektur ist eine typische Register-Register-Architektur
MehrVorlesung: Technische Informatik 3
Rechnerarchitektur und Betriebssysteme zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme zhang@informatik.uni-hamburg.de Inhaltsverzeichnis 4. Computerarchitektur........................235
Mehr9. Elektronische Logiksysteme ohne Rückführung, kombinatorische Schaltungen
Fortgeschrittenenpraktikum I Universität Rostock - Physikalisches Institut 9. Elektronische Logiksysteme ohne Rückführung, kombinatorische Schaltungen Name: Daniel Schick Betreuer: Dipl. Ing. D. Bojarski
MehrEinführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Was ist ein Rechner? Maschine, die Probleme für
MehrSchaltwerke Schaltwerk
Schaltwerke Bisher habe wir uns nur mit Schaltnetzen befasst, also Schaltungen aus Gattern, die die Ausgaben als eine Funktion der Eingaben unmittelbar (durch Schaltvorgänge) berechnen. Diese Schaltnetze
MehrEinführung in Computer Microsystems 8. Speicher, PLLs, Busse
Einführung in Computer Microsystems 8. Speicher, PLLs, Busse Prof. Dr.-Ing. Sorin A. Huss Fachbereich Informatik Integrierte Schaltungen und Systeme SS 2009 Integrierte Schaltungen und Systeme Einführung
MehrProtokoll zum Versuch Flip-Flop
Naturwissenschaft Torben Pfaff Protokoll zum Versuch Flip-Flop Praktikumsbericht / -arbeit Praktikum zu Elektronische Bauelemente und Schaltungstechnik Protokoll zum Versuch Flip-Flop Versuch Flip-Flop
MehrVorbereitung zum Versuch
Vorbereitung zum Versuch Schaltlogik Armin Burgmeier (1347488) Gruppe 15 6. Januar 2008 1 Gatter aus diskreten Bauelementen Es sollen logische Bausteine (Gatter) aus bekannten, elektrischen Bauteilen aufgebaut
MehrAufgabe 2 - Erweiterung um PIC und Interrupts
Aufgabe 2 - Erweiterung um PIC und Interrupts Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS2010/2011 Aufgabe 2 - Erweiterung um
MehrCls. Der Aufbau der Schaltung geschieht mit dem HWPRAK-Altera-Board, das in diesem Versuch nun aus den folgenden Komponenten besteht:
9 Versuch Nr. 7 9.1 Anmerkungen zum Versuch Nr. 7 In den letzten drei Versuchen haben Sie die wichtigsten Bestandteile eines Rechners kennen gelernt, in der Software MAX+PlusII eingegeben und in den Baustein
Mehr1 Anmerkungen zur Entwicklung von GALs mit LOG/iC
1 Anmerkungen zur Entwicklung von GALs mit LOG/iC 1.1 Generic Array Logic (GAL) - Prinzip Ein GAL (Generic Array Logic) stellt ein (wieder)programmierbares UND- Array mit einem festen ODER Array dar. Zusätzlich
MehrTBE332 Controller. Produktbeschreibung
TBE332 Controller Produktbeschreibung Bei der Entwicklung der TBE332 Steuerung wurde auf die Erfahrung unserer jahrelangen Planung und Realisierung verschiedenster Steuerungs- und Regelungseinrichtungen
Mehr80C535-Mikrocontroller-Board im Streichholzschachtelformat
RIBU 18. A-8160 Weiz. Tel. 03172/64800. Fax 03172/64806 RIBUMühlgasse ELEKTRONIK VERSAND e-mail: office@ribu.at. Internet: http://www.ribu.at 80C535-Mikrocontroller-Board im Streichholzschachtelformat
MehrAufgabe 2 - Erweiterung um PIC und Interrupts
Aufgabe 2 - Erweiterung um PIC und Interrupts Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Erweiterung
MehrProtokoll zu Grundelemente der Digitaltechnik
Protokoll zu Grundelemente der Digitaltechnik Ronn Harbich 22. uli 2005 Ronn Harbich Protokoll zu Grundelemente der Digitaltechnik 2 Vorwort Das hier vorliegende Protokoll wurde natürlich mit größter Sorgfalt
Mehr