summaryrefslogtreecommitdiff
path: root/2004/n/fpga/doc/dcd/interrupt/interrupt.tex
diff options
context:
space:
mode:
Diffstat (limited to '2004/n/fpga/doc/dcd/interrupt/interrupt.tex')
-rw-r--r--2004/n/fpga/doc/dcd/interrupt/interrupt.tex41
1 files changed, 32 insertions, 9 deletions
diff --git a/2004/n/fpga/doc/dcd/interrupt/interrupt.tex b/2004/n/fpga/doc/dcd/interrupt/interrupt.tex
index 6abbe3e..af9cf61 100644
--- a/2004/n/fpga/doc/dcd/interrupt/interrupt.tex
+++ b/2004/n/fpga/doc/dcd/interrupt/interrupt.tex
@@ -71,23 +71,46 @@ consulter l'architecture physique sur la figure \ref{archi_interrupt} page
\label{archi_interrupt}
\end{figure}
-%
-% Fonctionnement du bloc d'interface ISA
-Lorsque ce signal arrive, le séquenceur prévient le \textbf{module
-d'interfaçage} avec le bus ISA. Ce module, qui jusqu'à présent avait ses
-sorties à l'état haut, recopie alors sur en sorties (sur le bus ISA) ses
-entrées. On attend alors plus que l'\textit{acquittement} de l'ordinateur pour
-recommencer le cycle.
+Comme on peut le constater, ce module est très simple. En effet, celui-ci est
+composé uniquement de 3 bloc OR à huit entrées, d'un bloc OR à trois entrées
+et de 3 bloc three-state à huits entrées chacun.
+Son fonctionnement interne est donc le suivant. Lorsqu'une interruption arrive
+sur un des blocs, un signal IRQ est généré par les blocs OR. Lorsque le PC
+désire consulter qui a généré une interruption, il active successivement les
+blocs three-state qui passent alors d'un état haute impédance à un état dans
+lequel sont recopiées en sortie les entrées.
+\subsection{Décomposition RTL}
+% Ici, détailler chaque petit bloc et mettre le code VHDL correspondant.
+\subsubsection{Les blocs OR logiques : OR3 et OR8}
+\subsubsection{Le bloc trois-états : tristate}
-\subsection{Décomposition RTL}
+Pour la lecture des valeurs sur les entrées / sorties, un composant nommé
+\textit{tristate} est utilisé. L'entity de ce module est la suivante :
+
+\begin{itemize}
+\item{8 signaux d'entrée}
+\item{8 signaux de sortie}
+\item{1 signal enable}
+\end{itemize}
+
+Ce composant est en fait un module asynchrone composé de huits composants
+trois états. Son comportement est donc le suivant :
+
+\begin{itemize}
+\item{Si enable (représenté par cs\_read\_output sur le schéma) est à un état
+bas, les sorties sont dans un état haute impédance (noté 'Z')}
+\item{Si enable est à l'état bas on recopie les entrées / sorties sur le bus
+de données}
+\end{itemize}
+
+Le listing de ce composant se trouve en annexe .
-% Ici, détailler chaque petit bloc et mettre le code VHDL correspondant.
\subsection{Simulation}