summaryrefslogtreecommitdiff
path: root/2004/n/fpga/doc/dcd
diff options
context:
space:
mode:
authorgalmes2004-04-06 08:30:49 +0000
committergalmes2004-04-06 08:30:49 +0000
commit58c437a67f7f323d919c90563bbc6bcdac0dd9c0 (patch)
treee50e743a549bb92fd5a9751142432daebb73ef93 /2004/n/fpga/doc/dcd
parent4f69fe37535fd78879bb62c1d453586a49dead5b (diff)
GPIO : doc : Terminé de faire la doc sur la partie RTL. Reste à faire (la
simulation et la synthèse). ANNEXES : penser à mettre en annexe les packages (nono_const et isa_const).
Diffstat (limited to '2004/n/fpga/doc/dcd')
-rw-r--r--2004/n/fpga/doc/dcd/gpio/gpio.tex45
-rw-r--r--2004/n/fpga/doc/dcd/rapport.tex7
2 files changed, 44 insertions, 8 deletions
diff --git a/2004/n/fpga/doc/dcd/gpio/gpio.tex b/2004/n/fpga/doc/dcd/gpio/gpio.tex
index 25fc3bc..10709c7 100644
--- a/2004/n/fpga/doc/dcd/gpio/gpio.tex
+++ b/2004/n/fpga/doc/dcd/gpio/gpio.tex
@@ -264,25 +264,58 @@ Le listing de ce composant est le suivant :
\lstinputlisting{../../src/three-state/tristate.vhd}
+\subsubsection{Le gestionnaire de direction : gpio\_direction}
+
+Lors de la conception du cahier des charges du bloc du module GPIO, nous
+avions bien spécifié le fait que chaque pins devait être configurable soit en
+entrée, soit en sortie. C'est le rôle de ce bloc.
+
+Celui ci fonctionne donc de la manière suivante. Pour ce faire, celui-ci
+possède deux "bus" de 8 entrées chacun. Le premier de ces bus est destiné au
+masque de direction. Le deuxièmes bus est destiné aux données.
+
+Le masque est une série de "flags". Si un bit est dans un état haut, alors, ce
+bit est considéré être en sortie. Ainsi, pour ce flag à l'état haut, on
+recopiera sur la sortie le bit du bus de données.
+
+Les pins autre n'étant pas définies comme des sorties par le masque sont
+positionnés dans un état haute-impédance 'Z'. Ci-dessous, le listing
+correspondant au gestionnaire de direction.
+
+\lstinputlisting{../../src/gpio/gpio_direction.vhd}
+
+
+% TODO : continuer icicicicicicicicici
\subsubsection{Les gestionnaires d'interruptions : gpio\_it\_detect\_up et
gpio\_it\_detect\_down}
-% TODO : continuer icicicicicicicicici
+Le but de ces deux modules est de générer les interruptions. Le premier est
+chargé de générer une interruptions si il y a un front motant. Le deuxième
+fait la même chose, mais pour les fronts descendants.
-\lstinputlisting{../../src/gpio/gpio_it_detect_up.vhd}
+Chacune des 8 pins devant être configurable pour déclencher une interruption
+ou non, nous avons recours à des masques. Chaque gestionnaire à son propre
+masque. De cette manière, on peut définir les masques de telle manière qu'une
+pin puisse générer une interruption, sur front montant, descendant ou sur les
+deux.
-\lstinputlisting{../../src/gpio/gpio_it_detect_down.vhd}
+Voici le code associé au gestionnaire d'interruption sur front montant.
+\lstinputlisting{../../src/gpio/gpio_it_detect_up.vhd}
+
+Voici le code associé au gestionnaire d'interruption sur front descendant.
+\lstinputlisting{../../src/gpio/gpio_it_detect_down.vhd}
\subsubsection{Le module gpio}
Ce bloc est celui dont le comportement aura été décrit précédement dans les
-section en rapport avec l'architecture physique. On pourra d'ailleurs se
-rapporter aux différents schémas précédement vus. Ci-dessous, se trouve le
-listing correspondant à ce module.
+sections en rapport avec l'architecture physique. On pourra d'ailleurs se
+rapporter aux différents schémas précédement vus. Ce bloc est donc
+l'assemblage des différents modules qui viennent d'être décrits. Ci-dessous,
+se trouve le listing correspondant à ce module.
\lstinputlisting{../../src/gpio/gpio.vhd}
diff --git a/2004/n/fpga/doc/dcd/rapport.tex b/2004/n/fpga/doc/dcd/rapport.tex
index b3d8d8a..692d660 100644
--- a/2004/n/fpga/doc/dcd/rapport.tex
+++ b/2004/n/fpga/doc/dcd/rapport.tex
@@ -98,9 +98,9 @@ Cf schéma de l'architecture globale, figure \ref{archiglobale} page
\input{./portserie/portserie.tex}
\pagebreak
-\section{Les sorties servo}
+%\section{Les sorties servo}
%\input{./servo/servo.tex}
-\pagebreak
+%\pagebreak
\section{Le bloc PWM}
\input{./pwm/pwm.tex}
@@ -114,5 +114,8 @@ Cf schéma de l'architecture globale, figure \ref{archiglobale} page
\section {Conclusion}
+% TODO : Annexes
+
+% Mettre nono_const et ISA_const
\end{document}