diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 00:59:05 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 00:59:05 +0000 |
commit | d4f912523bae12ffe3cd9cf564cfc7a29567ef4c (patch) | |
tree | 856e4a34ef140d96b221be61207fc52ccac58471 /Master/texmf-dist/doc/fonts/timing | |
parent | f07bb53970ee2ecc53f81a206a3d3a67ef665e4a (diff) |
doc 7
git-svn-id: svn://tug.org/texlive/trunk@86 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/fonts/timing')
-rw-r--r-- | Master/texmf-dist/doc/fonts/timing/tim0594.upl | 5 | ||||
-rw-r--r-- | Master/texmf-dist/doc/fonts/timing/timing.dvi | bin | 0 -> 16016 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/fonts/timing/timing.tex | 242 |
3 files changed, 247 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/timing/tim0594.upl b/Master/texmf-dist/doc/fonts/timing/tim0594.upl new file mode 100644 index 00000000000..de2eb983090 --- /dev/null +++ b/Master/texmf-dist/doc/fonts/timing/tim0594.upl @@ -0,0 +1,5 @@ +Timing-Paket Mai 1994 von May/Leilich. +Dieses Dateipaket enth„lt vier Zeichens„tze sowie einige Makrodefinitionen, +die das Zeichnen von Impulsdiagrammen digitaler Schaltungen unter LaTeX +erlauben. + diff --git a/Master/texmf-dist/doc/fonts/timing/timing.dvi b/Master/texmf-dist/doc/fonts/timing/timing.dvi Binary files differnew file mode 100644 index 00000000000..d55c03a25ac --- /dev/null +++ b/Master/texmf-dist/doc/fonts/timing/timing.dvi diff --git a/Master/texmf-dist/doc/fonts/timing/timing.tex b/Master/texmf-dist/doc/fonts/timing/timing.tex new file mode 100644 index 00000000000..0d6605dac39 --- /dev/null +++ b/Master/texmf-dist/doc/fonts/timing/timing.tex @@ -0,0 +1,242 @@ +\documentstyle[german,verbatim,dina4,titlepage,timing,12pt]{article} +\setlength{\textwidth}{16.5cm} +\setlength{\parindent}{0pt} +\setlength{\parskip}{5pt plus 2pt minus 1 pt} +\frenchspacing + +\begin{document} +\title{TIMING.STY\\Satz von Zeitdiagrammen fr digitale Schaltungen} +\author{Ludwig May\\Jens Leilich} +\maketitle + +\section{Motivation} + +Wir standen bei unserer Studienarbeit vor dem Problem, Zeitdiagramme +einiger Digitalschaltungen darstellen zu mssen. +Als Alternative zu der herk”mmlichen Erstellung durch ein Zeichenprogramm +kam uns die Idee, ein solches Diagramm mit Hilfe eines +speziellen Metafont-Zeichensatzes durch die Aneinanderreihung von +Buchstaben zu realisieren. Durch die Verwendung von Ligaturen sollten so +alle sinnvollen šberg„nge einzelner Logikzust„nde automatisch gezeichnet +werden. + +Diesen Zeichensatz haben wir zun„chst gemeinsam entwickelt. + +Das vorliegende \LaTeX\ Stylefile {\bf TIMING.STY} wurde von Ludwig alleine +entwickelt, um die Benutzung des Zeichensatzes zu vereinfachen. + +Durch die Besch„ftigung an der Berufsbildenden Schule Ludwigshafen wurde von +Jens der Style und die Fonts weiterentwickelt, weil gewisse Features fehlten. + +Es erlaubt die Erstellung und Beschriftung eines Zeitdiagramms. Die einzelnen +Elemente des Diagramms werden dabei ber ein Koordinatensystem angeordnet. +Eine Einheit der Zeitachse entspricht dabei der L„nge eines Buchstabens, +eine Einheit der Y-Achse entspricht dem Abstand von zwei Signalverl„ufen. + +\section{Makros} + +Die im folgenden beschriebenen Makros k”nnen nur innerhalb der +\verb|timing| Umgebung eingesetzt werden. Diese Umgebung ist eine +Erweiterung der \verb|picture| Umgebung, es k”nnen also auch alle +\verb|picture| Befehle verwendet werden (\verb|\unitlength=1sp|). + +Die Umgebung wird durch den Befehl + +\verb|\begin{timing}[|{\em Zeichensatz}\verb|]{|{\em Labelbreite}\verb|}| + +eingeleitet. +Der Parameter {\em Labelbreite} gibt den zu reservierenden Platz fr die +Signalbezeichnung an. +Der Parameter {\em Zeichensatz} w„hlt den Zeichensatz aus. +\verb|1| ist ein schmaler Zeichensatz, der ca.\ 1mm breite Elemente enth„lt, +\verb|2| ist ein breiterer Zeichensatz mit ca.\ 2mm breiten Elementen. +Die Version mit \verb|s| dahinter (\verb|1s| und \verb|2s|) verwendet +schr„ge Flanken im Gegensatz zu den "`normalen"' Zeichens„tzen. +(Man glaubt nicht, wieviele Schwierigkeiten die Schler mit schr„gen +Flanken haben. +Man sagt ihnen: "`Nehmt die Mitte"', aber sie raffen's nicht.) +Normalerweise wird der Zeichensatz \verb|2| verwendet. + +Die Umgebung muá durch + +\verb|\end{timing}| + +abgeschlossen werden. (Mssen wir das erw„hnen ??) + +Eine Diagrammzeile wird durch das Makro + +\verb|\til{|{\em Zeile}\verb|}{|{\em Zeichenkette mit Symbolbuchstaben}\verb|}| + +erzeugt. Die Symbolbuchstaben repr„sentieren den jeweiligen Signalzustand +gem„á Tabelle~\ref{symtab}. Alternativ k”nnen die Makros +\verb|\timingcounter| bzw. \verb|\conttimingcounter| als Argument +bergeben werden. +Bei Verwendung von Symbolbuchstaben sollte darauf geachtet werden, daá nach +einem Symbolwechsel mindestens zwei aufeinanderfolgende Buchstaben gleich +sind, um ein ordnungsgem„áes Arbeiten des Ligaturmechanismus zu +gew„hrleisten. Die Makros + +\verb|\timingcounter{|{\em Zeitmarkenabstand}\verb|}{|{\em Startwert}\verb|}{|{\em Endwert}\verb|}{|{\em Zeitintervall}\verb|}| \hfill und + +\verb|\conttimingcounter{|{\em Zeitmarkenabstand}\verb|}{|{\em Startwert}\verb|}{|{\em Endwert}\verb|}{|{\em Zeitintervall}\verb|}| + +erzeugen eine Ziffernskala. \verb|\conttimingcounter| wird nach einer +Unterbrechung benutzt und erzeugt zus„tzlich den n”tigen Zwischenraum. + + +\begin{table} +\def\timtest#1{{\timon #1- \timons #1- \timtw #1- \timtws #1}} +\centering +\begin{tabular}{|l|l|l|} +\hline +\rule[-4mm]{0pt}{12mm}L & 0 - Pegel & +{\tt HLLLLH} \quad $\to$ \quad \raisebox{-2mm}{\timtest{HLLLLH }} \\ +\hline +\rule[-4mm]{0pt}{12mm}H & 1 - Pegel & +{\tt LHHHHL} \quad $\to$ \quad \raisebox{-2mm}{\timtest{LHHHHL }} \\ +\hline +\rule[-4mm]{0pt}{12mm}F & unbekannter Pegel & +{\tt LFFFFH} \quad $\to$ \quad \raisebox{-2mm}{\timtest{LFFFFH }} \\ +\hline +\rule[-4mm]{0pt}{12mm}L & 0 - Pegel zum Zeichnen & +{\tt hllllh} \quad $\to$ \quad \raisebox{-2mm}{\timtest{hllllh }} \\ +\hline +\rule[-4mm]{0pt}{12mm}H & 1 - Pegel zum Zeichnen & +{\tt lhhhhl} \quad $\to$ \quad \raisebox{-2mm}{\timtest{lhhhhl }} \\ +\hline +\rule[-4mm]{0pt}{12mm}H & Leere Zeile zum Zeichnen & +{\tt ......} \quad $\to$ \quad \raisebox{-2mm}{\timtest{...... }} \\ +\hline +\rule[-4mm]{0pt}{12mm}V & Bus-Leitungen mit gltigen Daten & +{\tt ZVVVVU} \quad $\to$ \quad \raisebox{-2mm}{\timtest{ZVVVVU }} \\ +\hline +\rule[-4mm]{0pt}{12mm}X & Bus-Leitungen mit Zustandswechsel & +{\tt VVVXVV} \quad $\to$ \quad \raisebox{-2mm}{\timtest{VVVXVV }} \\ +\hline +\rule[-4mm]{0pt}{12mm}U & Bus-Leitungen mit ungltigen Daten & +{\tt ZUUUUV} \quad $\to$ \quad \raisebox{-2mm}{\timtest{ZUUUUV }} \\ +\hline +\rule[-4mm]{0pt}{12mm}Z & Bus-Leitungen auf Tristate & +{\tt VZZZZU} \quad $\to$ \quad \raisebox{-2mm}{\timtest{VZZZZU }} \\ +\hline +\rule[-4mm]{0pt}{12mm}T & Kopfzeile mit Zeitmarke & +{\tt TtttTt} \quad $\to$ \quad \raisebox{-0mm}{\timtest{TtttTt }} \\ +\hline +\rule[-4mm]{0pt}{12mm}t & Kopfzeile ohne Zeitmarke & +{\tt TtTtTt} \quad $\to$ \quad \raisebox{-0mm}{\timtest{TtTtTt }} \\ +\hline +\rule[-4mm]{0pt}{12mm}B & Fuázeile mit Zeitmarke & +{\tt BbbbBb} \quad $\to$ \quad \raisebox{-0mm}{\timtest{BbbbBb }} \\ +\hline +\rule[-4mm]{0pt}{12mm}b & Fuázeile ohne Zeitmarke & +{\tt BbBbBb} \quad $\to$ \quad \raisebox{-0mm}{\timtest{BbBbBb }} \\ +\hline +\rule[-4mm]{0pt}{12mm}- & Unterbrechungszeichen & +{\tt UUU-UU} \quad $\to$ \quad \raisebox{-2mm}{\timtest{UUU-UU }} \\ +\hline +\end{tabular} +\caption{M”gliche Symbolbuchstaben in 3 Zeichens„tzen {\tt 1/1s/2/2s}} +\label{symtab} +\end{table} + +Die Signalbezeichnung fr eine Diagrammzeile wird mit dem Makro + +\verb|\tin{|{\em Zeile}\verb|}{|{\em Name}\verb|}| + +zugeordnet. + +Fr Bemerkungen innerhalb des Signalverlaufs dient + +\verb|\tnote{|{\em Zeile}\verb|}{|{\em X-Position}\verb|}{|{\em Bemerkung}\verb|}| + +Die Darstellung der Zeitbeziehungen zwischen einzelnen Signalverl„ufen +erfolgt durch die folgenden Makros: + +\begin{tabular}{ll} +Pfeil nach rechts & \verb|\rarw{|{\em Zeile}\verb|}{|{\em X-Position}\verb|}{|{\em L„nge}\verb|}{|{\em Text}\verb|}| \\ +Pfeil nach links & \verb|\larw{|{\em Zeile}\verb|}{|{\em X-Position}\verb|}{|{\em L„nge}\verb|}{|{\em Text}\verb|}| \\ +senkrechte Linie & \verb|\sline{|{\em Anfangszeile}\verb|}{|{\em X-Position}\verb|}{|{\em Endezeile}\verb|}| \\ +\end{tabular} + +Bei Zeile (bei den Pfeilen) verwenden Sie blicherweise einen um $0.6$ +verminderten Wert. +Bei der Linie meint X-Position die Position, hinter der die Linie sein soll; +das erste Zeichen hat die Nummer 1. + +Die Linienbreite der senkrechten Linien kann dabei wie in der +\verb|picture| Umgebung durch \verb|\linethickness| festgelegt werden. + +Weiterhin existiert ein Faktor, der den Abstand zwischen zwei +Signalverl„ufen bestimmt. \verb|\timescalefactor| kann durch +\verb|\newcommand| auf einen beliebigen Wert gesetzt werden. Defaultwert +ist 2. + +% +% Evtl. n”tige Anpassung fuer Ausrichtung senkrechter Linien +% \timadjust +% + + +\section{Ausblick} + +Die beschriebenen Makros haben ein besseres Ergebnis in der Darstellung +von Zeitdiagrammen gebracht, als wir gehofft haben. Da sie an unserem +Institut an der THD einiges Interesse hervorgerufen haben, m”chten wir +sie der Allgemeinheit ebenfalls nicht vorenthalten. + +Ein Problem besteht in der unterschiedlichen Ausrichtung der senkrechten +Linien durch verschiedene Druckertreiber. Wenn diese Linien nicht mittig +auf den Signal"-ber"-g„ngen sitzen, sollte zun„chst versucht werden, den +Wert \verb|max_drift| des Druckertreibers auf 0 zu setzen (nicht bei allen +Treibern m”glich; bei den dvidrv-Treibern fr em\TeX\ ist die Option +\verb|/fd0| anzugeben). Kann dadurch keine Abhilfe geschaffen werden, +besteht die M”glichkeit, durch den Befehl +\verb|\renewcommand{\timadjust}{|{\em Dimension}\verb|}| vor dem Beginn +einer \verb|timing| Umgebung eine Verschiebung der Linien zu erreichen. + +Fr eine Verbesserung in diesem oder auch anderen Punkten bestehen alle +Freiheiten. Eine weitere Untersttzung von Ludwigs Seite wird es +wahrscheinlich nicht geben, da er, wie die meisten Menschen heutzutage, +wenig Zeit habe und sich das Interesse dieser Makros und des Zeichensatzes +nur auf ein paar Datentechniker und VLSI-Spezialisten beschr„nken drfte. +Jens wird wohl darauf achten, daž ddas Paket up to date bleibt und evtl.\ +weitere Features einbauen, wenn es ihm sinnvoll erscheint. + +Fr eventuelle positive Rckmeldungen an folgende Adressen wrden wir uns +freuen: + +\begin{center} +\parbox{5cm}{ +Ludwig May\\ +Friedrichstrasse 23b \\ +64293 Darmstadt} +\parbox{5cm}{ +Jens Leilich\\ +Oppauer Straže 90\\ +67069 Ludwigshafen} +\end{center} + +Jens Leilich ist aužerdem unter folgender email-Adresse zu erreichen: + +\verb|Jens_Leilich@lu.maus.de| +oder ber BTX 0621667821-1. + +Spenden sind natrlich auch willkommen :-). + +\newpage + +\section{Beispiel} + +\def\nicht#1{$\overline{\mbox{#1}}$} +\input{prozt1} +{\hfill Bild~1 : Beispieldiagramm \hfill} + +\clearpage\newpage + +Definition fr das Beispieldiagramm aus Bild~1 : + +\begin{scriptsize} +\verbatiminput{prozt1} +\end{scriptsize} + +\end{document} |