Rechapter

This commit is contained in:
flyingscorpio@arch-desktop 2021-09-22 19:59:24 +02:00
parent df2e76cb66
commit a45e64021e

View file

@ -12,9 +12,12 @@
\tableofcontents
\clearpage
\section{Algèbre de Boole}
\subsection{Logique booléenne}
\section{Pré-requis}
\subsection{Algèbre de Boole}
\subsubsection{Logique booléenne}
Un composant discret n'a pas plus de 4 portes en alimentation continue.
7400 (gamme commerciale) ou 5400 (gamme militaire)
@ -66,7 +69,7 @@
\end{itemize}
\subsubsection{Suiveur}
\paragraph{Suiveur}
\begin{multicols}{2}
@ -90,7 +93,7 @@
\end{center}
\subsubsection{Inverseur}
\paragraph{Inverseur}
\begin{multicols}{2}
@ -113,7 +116,7 @@
\end{center}
\subsubsection{OU logique --- \texttt{OR} ($+$)}
\paragraph{OU logique --- \texttt{OR} ($+$)}
\begin{multicols}{2}
@ -161,7 +164,7 @@
a + \bar{a} &= 1 \\
\end{align*}
\subsubsection{ET logique --- \texttt{AND} ($\cdot$)}
\paragraph{ET logique --- \texttt{AND} ($\cdot$)}
\begin{multicols}{2}
@ -201,7 +204,7 @@
\end{center}
\subsubsection{OU exclusif --- \texttt{XOR} ($\oplus$)}
\paragraph{OU exclusif --- \texttt{XOR} ($\oplus$)}
\begin{multicols}{2}
@ -246,7 +249,7 @@
a \oplus \bar{a} &= 1 \\
\end{align*}
\subsubsection{Non OU --- \texttt{NOR} ($\overline{+}$)}
\paragraph{Non OU --- \texttt{NOR} ($\overline{+}$)}
\begin{multicols}{2}
@ -286,7 +289,7 @@
\end{center}
\subsubsection{Non ET --- \texttt{NAND} ($\overline{\cdot}$)}
\paragraph{Non ET --- \texttt{NAND} ($\overline{\cdot}$)}
\begin{multicols}{2}
@ -326,7 +329,7 @@
\end{center}
\subsubsection{Non OU exclusif --- \texttt{NO XOR} ($\overline{\oplus}$)}
\paragraph{Non OU exclusif --- \texttt{NO XOR} ($\overline{\oplus}$)}
\begin{multicols}{2}
@ -364,8 +367,7 @@
\end{center}
\clearpage
\subsection{Algèbre booléenne}
\subsubsection{Algèbre booléenne}
Le ET est prioritaire sur le OU\@.
@ -406,8 +408,7 @@
\bottomrule
\end{tabularx}
\clearpage
\subsection{Fonctions booléennes}
\subsubsection{Fonctions booléennes}
On cherche à simplifier les fonctions pour limiter le nombre de portes logiques utilisées.
@ -444,7 +445,7 @@
\end{center}
\subsubsection{Minterme, maxterme}
\paragraph{Minterme, maxterme}
Soit $f(x,y,z)$.
@ -467,7 +468,7 @@
\bottomrule
\end{tabular}
\subsubsection{Première forme canonique --- Forme disjonctive}
\paragraph{Première forme canonique --- Forme disjonctive}
On peut dire qu'une fonction est le OU logique des mintermes associés aux vecteurs pour lesquels la fonction vaut 1.
Par exemple~:
@ -502,7 +503,7 @@
\end{center}
\subsubsection{Deuxième forme canonique --- Forme conjonctive}
\paragraph{Deuxième forme canonique --- Forme conjonctive}
On peut aussi dire que la fonction est le ET logique des maxtermes associés aux vecteurs pour lesquels la fonction vaut 0.
Avec le même exemple~:
@ -537,7 +538,7 @@
\end{center}
\subsubsection{Simplification des fonctions booléennes --- Tableau de Karnaugh}
\paragraph{Simplification des fonctions booléennes --- Tableau de Karnaugh}
Soit $S$ la fonction définie par le tableau de vérité et l'expression suivants~:
@ -572,7 +573,7 @@
Pour créer un tableau de Karnaugh, on reproduit une table de vérité sous forme d'un tableau à double entrée selon le code Gray (un seul bit change entre deux entrées adjacentes).
\paragraph{Exemple}
Exemple~:
\begin{multicols}{2}
@ -597,10 +598,9 @@
On peut ainsi regrouper 2, 4 voire 8 cases (= 1, 2 ou 3 mintermes).
\clearpage
\section{Logique combinatoire}
\subsection{Logique combinatoire}
\subsection{Les codeurs}
\subsubsection{Les codeurs}
Un codeur possède $2^n$ entrées pour $n$ sorties.
Donc 8 entrées pour 3 sorties, 4 entrées pour 2 sorties, etc.
@ -614,7 +614,7 @@
\includegraphics[width=0.3\textwidth]{./img/codeur.png}
\end{center}
\subsection{Encodeur de priorité}
\subsubsection{Encodeur de priorité}
Même principe que le pour le codeur, mais plusieurs entrées peuvent être actives en même temps.
Dans ce cas, on décide d'un ordre de priorité, et l'encodeur s'arrête de lire les entrées quand il rencontre l'entrée active la plus prioritaire.
@ -645,7 +645,7 @@
La colomne $V$ (validation) indique au système l'interruption à traiter.
Elle est active quand une entrée à été lue.
\subsection{Décodeurs d'adresses}
\subsubsection{Décodeurs d'adresses}
Il se comporte à l'inverse du codeur.
Il lit l'entrée en binaire, puis active la sortie correspondant à la valeur décimale correspondante~:
@ -667,7 +667,7 @@
\end{multicols}
\subsection{Décodeur 7 segments}
\subsubsection{Décodeur 7 segments}
Il est utilisé pour les horloges numériques.
@ -677,7 +677,7 @@
Il suffit de programmer quelles DELs en sortie vont s'allumer par rapport aux entrées binaires.
\subsection{Multiplexeurs}
\subsubsection{Multiplexeurs}
Aux entrées s'ajoutent des signaux de sélection, qui indiquent quelle donnée sera transmise en sortie.
@ -698,7 +698,7 @@
\end{multicols}
\subsubsection{Multiplexeur générateur de fonction logique}
\paragraph{Multiplexeur générateur de fonction logique}
Un multiplexeur peut être représenté par une fonction logique~:
@ -728,7 +728,7 @@
\end{multicols}
\subsection{Démultiplexeurs}
\subsubsection{Démultiplexeurs}
Même chose dans l'autre sens~: une entrée (et des entrées de sélection) et plusieurs sorties, correspondant aux représentations décimales des entrées de sélection pour choisir sur quel canal envoyer l'entrée.
@ -745,19 +745,18 @@
\bottomrule
\end{tabularx}
\clearpage
\section{Logique séquentielle}
\subsection{Logique séquentielle}
En logique combinatoire, à chaque instant, les sorties ne dépendent que des entrées.
En logique séquentielle, les sorties dépendent des entrées et de l'état dans lequel le système se trouvait à l'instant précédent.
On parle alors d'effet mémoire car le système garde en mémoire l'état précédent, ce qui est réalisé par une rétroaction de la ou des sorties sur l'entrée grâce au temps de propagation des signaux.
\subsection{Les bascules}
\subsubsection{Les bascules}
\subsubsection{La bascule asynchrone RS}
\paragraph{La bascule asynchrone RS}
\paragraph{Table de vérité}
Table de vérité~:
$R =$ Reset, $S =$ Set
@ -772,13 +771,13 @@
\bottomrule
\end{tabular}
\paragraph{Chronogramme}
Chronogramme~:
\begin{center}
\includegraphics[width=0.8\linewidth]{./img/chronogramme-rs.png}
\end{center}
\subsubsection{La bascule synchrone D}
\paragraph{La bascule synchrone D}
La sortie recopie l'entrée D lorsque le signal de synchronisation est actif.
@ -796,15 +795,16 @@
\end{multicols}
\paragraph{Chronogrammes}
Chronogrammes~:
\begin{center}
\includegraphics[width=\linewidth]{./img/chronogramme-d.png}
\end{center}
\subsubsection{La bascule synchrone JK}
\paragraph{La bascule synchrone JK}
\clearpage
\section{Register Transfer Level (RTL)}
Le RTL est le niveau au dessus des couches physiques et logique, mais en dessous des couches algorithmique de haut niveau.