10.3. Counter-Timer-Circuits - CTC history menue Letztmalig dran rumgefummelt: 09.11.07 07:14:44
CTCs (Counter/Timer - Zähler/zeitgeber-) sind hochintegrierte Schaltkreise, welche eine Kommunikation des Prozessors mit seiner Peripherie auf mehreren Kanälen (je ein In bzw. Out-Signal) gleichzeitig ermöglichen. Dabei sind die Kanäle in der Funktion Zähler und externe Impulse auch kaskadierbar.  Aus Prozessorsicht ist jeder Kanal ein Fangregister für zu zählende Datenwerte nach außen, aus Peripheriesicht ein Fangregister für zu registrierende Anzahl von Impulsen nach innen. Ihr Verhalten (Zähler oder Zeitgeber) ist programmierbar. Sie sind in der Lage, einen Interrupt abhängig vom Ein- und/oder Ausgabezustand an eine übergeordnete Einheit abzugeben. Ausgangsseitig können sie keine Last treiben - sie sind lediglich als Quellen logischer Signale zu verstehen. - diese sind TTL-kompatibel. Die Ausgänge weisen kein Tri-State-Verhalten auf.
CTC-Kanäle zählen übrigens grundsätzlich rückwärts und der Nulldurchgang ist die Ereignisschnittstelle.
  • die Aktivierung vieler Signale geschieht über logisches "L" - das liegt an der MOS-Technologie (Achtung: beim CTC sind aber auch viele externe Signaleingänge in ihrer Aktivitätsflanke programmierbar)
  • jeder Kanal kann in seiner augenblicklichen Funktion frei von den anderen programmiert werden
  • die Kanäle können aber auch funktional miteinander kaskadiert werden - sie müssen dabei nicht die interne Hierarchie der Kanäle einhalten (diese hat nur für das Interruptverhalten des Kanals Bedeutung)
  • CTCs können extern durch einen zu definierenden "TRIGGER"-Impusl gestartet werden ("H" oder "L" programmierbar)
  • die einzelnen Kanäle verfügen über eine interne Prioritätenkette - extern ist es ebenfalls möglich, die Wichtung der Einzelbausteine durch Prioritäten festzulegen
  • das nennt man dann "Daisy Chain"-Kette oder Logik
  • dadurch ergibt sich eine Interrupt-Kaskade
1. Grundsätzliches Prinzip
2. Typische elektrische Beschaltung - Signalspiel - Interruptverhalten
3. Einsatzprinzip
4. Typpalette
5. CTC-Funktion am Beispiel des Z80 CTC (U 857)
6. Verwandte Themen

Logo der CPUs

Informatik-Profi-Wissen


1. CTC-Prinzip history menue scroll up
Prinzip ist, von der CPU-Arbeit unabhängige und vor allem genau bekannte Zeitraster zu schaffen, in deren Abfolge Ereignisse software- und/oder hardwaretechnischer Art ausgelöst werden können. Dabei kann die Signalquelle der interne Systemtakt (evtl. auch schon untersetzt), oder aber ein beliebiges externes Ereignis sein, welches zum Auslöseimpuls für je einen Zählvorgang wird. Die engsten Verwandten der CTC sind Zählerschaltkreise und Frequenzteiler.

Grundsätzlicher CTC-Aufbau

CTC in der Rechner-Gesamtstruktur

Die Leistungsfähigkeit eines CTC wird durch folgende Aspekte bestimmt:

  • maximal mögliche Taktfrequenz - das hat natürlich viel mit der Prozessortaktfrequenz zu tun - beide hängen an einem Signal

  • Breite eines internen Zählkanals - dabei sind acht Bit typisch

  • Anzahl der Kanäle

  • Funktionalität der Kanäle (oft sind bestimmte Kanäle nicht für alle Aufgaben einsetzbar)

  • Zusammenarbeit der Kanäle (können diese evtl. zu Funktionsgruppen zusammengefasst werden?)

  • Aufwand in der Programmierung und damit vor allem Zeit zur Umprogrammierung

  • eigene Interruptsteuerung


2. Typische elektrische Beschaltung - Signalspiel und Interruptverhalten history menue scroll up
Genau definierte Signalfolgen unterhalb der Systemtaktfrequenz können an die Umgebungselektronik oder den Rechnerkern selbst zur weiteren Nutzung übergeben werden. Außerdem können Bausteine dieser Art externe Ereignisse in ihrer Anzahl auch asynchron registrieren und aktuelle Zählerstände weiter verarbeiten.
Aufbau, Funktion und Programmierung des wichtigsten aller CTC - Z80-CTC
Grundsätzlicher CTC-Aufbau CTC in der Rechner-Gesamtstruktur

3. Einsatzprinzip history menue scroll up
Der CTC untersetzt im Wesentlichen die Systemtaktfrequenz und/oder registriert von der Hardware asynchron einlaufende Impulse, wobei er noch zusätzlich mehrere Quellen überwachen und unabhängig voneinander steuern, diese jedoch auch in einer Kaskade (unter zusätzlichem festen Hardwareaufwand) zusammen fassen kann.

und so werden 8-Bit CPUs und CTC miteinander grundsätzlich verschalten

Interner Zeitgeber ohne Zeitkonstante:
  • die Daten werden als 8-Bit Block auf die externen Portleitungen gebracht und es muss garantiert werden, dass sie auch im Verfügbarkeitszeitraum abgeholt werden
  • es werden bei Datenübernahme durch die externen Geräte keine Interrupts ausgelöst, wenn diese nicht ausdrücklich in einer der benötigten Formen programmiert wurde
  • die Quittungssignale reagieren, werden sie jedoch nicht von der peripheren Einheit aufgefangen und ausgewertet, ist von dort auch keine Reaktion zu erwarten
  • ein Beispielprogramm für die Byte-Ausgabe findet man auch hier

4-Kanal-CTC im Zählerbetrieb

ohne Interrupt
  • mit dem Einschreiben des Steuerwortes beginnt der Kanal rückwärts zu zählen, wobei die Taktfrequenz des Systems den Eingang bildet und der Vorteiler den Ausgang darstellt
  • Zero Count Time Out schaltet bei jedem Nulldurchgang von "L" auf "H" mit der Impulslänge des Systemtaktes
  • der Rückwärtszähler sollte nicht eingelesen werden, da er keine sinnvoll wechselnden Zustände enthält
  • die Frequenz der asymmetrischen "L"-"H"-Flanken am ZC/TO-Ausgang des entsprechend programmierten Kanals tkten

 

   
  • die Systemtaktfreuenz wird direkt als Rückzählimpuls genutzt
 

4. Typpalette history menue scroll up
Klasse Bauelemente-Typ Funktion
n-MOS Z80-CTC 3-Kanal-CTC des Z80-Systems

elektrische Bauelemente-Übersicht Zähler und CTCs in verschiedenen Technologien



zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost im Dezember 2004

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist

Diese Seite wurde ohne Zusatz irgendwelcher Konversationsstoffe erstellt ;-)