116 lines
4.4 KiB
TeX
116 lines
4.4 KiB
TeX
\documentclass[a4paper,french,12pt]{article}
|
|
|
|
\title{Logique Programmable --- TP}
|
|
\author{Adam Belghith et Tunui Franken}
|
|
\date{\small Dernière compilation~: \today{} à \currenttime}
|
|
|
|
\usepackage{../../cours}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{automata, arrows.meta, positioning}
|
|
|
|
\begin{document}
|
|
|
|
\maketitle
|
|
|
|
\section{Algorithmique}
|
|
|
|
\subsection{Étude de la liaison série UART-RS232}
|
|
|
|
\paragraph{%
|
|
Après recherche, décrivez ce protocole de communication.
|
|
(Combien de fils sont nécessaires, quels signaux transportent-ils, est-il synchrone ou asynchrone, combien de bits de data pour combien de bits de ``contrôle'', quel débit\ldots)
|
|
Représentez une trame UART et explicitez-la.
|
|
}
|
|
|
|
Le protocole RS232 comporte deux types de connecteurs~: \texttt{DE-9}, qui compte 9 fils et \texttt{DB-25}, qui compte 25 fils.
|
|
Deux de ces fils sont nécessaires pour les données (un dans chaque sens).
|
|
|
|
Il transporte des signaux dont le voltage est compris soit entre -15V et -3V, soit entre +3V et +15V.
|
|
Ils sont codés en série temporelle de bits.
|
|
|
|
Le standard permet une transmission asynchrone (pas d'envoi de clock).
|
|
|
|
RS232 utilise huit bits de données, dont un peut être un bit de parité, et deux bits de contrôle~: un bit de démarrage et un bit d'arrêt.
|
|
|
|
\includegraphics[width=\linewidth]{./img/trame-rs232.png}
|
|
|
|
Les bits de \texttt{0} à \texttt{7} sont les bits de données.
|
|
Ils sont encadrés par le bit de démarrage, qui est à 0, et le bit d'arrêt, qui est à 1.
|
|
|
|
Le débit est de 115200 bb/s.
|
|
|
|
\subsection{Conception de l'automate}
|
|
|
|
\paragraph{%
|
|
Retrouvez l'oscillateur d'après la documentation.
|
|
Quelle est sa fréquence et le nom de son symbole~?
|
|
Sur quelles broches du FPGA sont connectées les LED~?
|
|
Sur quelles broches du FPGA sont connectés les fils concernant la liaison série~?
|
|
}
|
|
|
|
La clock prend le nom de \texttt{E3}, et sa fréquence est de 100MHz.
|
|
|
|
Les 4 LED monochromes sont connectées aux broches \texttt{H5}, \texttt{J5}, \texttt{T9} et \texttt{T10} du FPGA\@.
|
|
Les 4 LED RGB sont connectées aux broches \texttt{G6}, \texttt{F6}, \texttt{E1}, \texttt{G3}, \texttt{J4}, \texttt{G4}, \texttt{J3}, \texttt{J2}, \texttt{H4}, \texttt{K1}, \texttt{H6} et \texttt{K2}.
|
|
|
|
Les fils de cette liaison série sont connectés aux broches \texttt{A9} et \texttt{D10} du FPGA\@.
|
|
|
|
\paragraph{%
|
|
Définir les entrées et les sorties d'un automate destiné à être implanté sur la carte FPGA permettant la réception de données série et l'affichage sur les LED\@.
|
|
}
|
|
|
|
Entrées~:
|
|
\begin{itemize}
|
|
\item clk
|
|
\item rst
|
|
\item rx
|
|
\end{itemize}
|
|
|
|
Sorties~:
|
|
\begin{multicols}{3}
|
|
\begin{itemize}
|
|
\item ld0\_r
|
|
\item ld0\_g
|
|
\item ld0\_b
|
|
\item ld1\_r
|
|
\item ld1\_g
|
|
\item ld1\_b
|
|
\item ld2\_r
|
|
\item ld2\_g
|
|
\item ld2\_b
|
|
\item ld3\_r
|
|
\item ld3\_g
|
|
\item ld3\_b
|
|
\item ld4
|
|
\item ld5
|
|
\item ld6
|
|
\item ld7
|
|
\end{itemize}
|
|
\end{multicols}
|
|
|
|
\paragraph{%
|
|
Définissez un fonctionnement haut niveau de votre automate (nombre d'états, condition de transition).
|
|
}
|
|
|
|
\begin{center}
|
|
\begin{tikzpicture}[->,on grid,auto,node distance=7cm]
|
|
|
|
\node(0)[state, initial above, initial text={}] {IDLE};
|
|
\node(1)[state, below left = of 0] {START};
|
|
\node(2)[state, below right = of 1] {LECT};
|
|
\node(3)[state, below right = of 0] {STOP};
|
|
|
|
\path
|
|
(0) edge [bend left] node {0} (1)
|
|
(1) edge [bend left] node {1} (0)
|
|
(1) edge node[left] {0 and T/2} (2)
|
|
(2) edge [loop below] node {0,1 and T and count<8} (2)
|
|
(2) edge node[right] {1 and T and count>7} (3)
|
|
(2) edge node[right] {0 and T and count>7} (0)
|
|
(3) edge node {T} (0)
|
|
;
|
|
|
|
\end{tikzpicture}
|
|
\end{center}
|
|
|
|
\end{document}
|