OpenCores
URL https://opencores.org/ocsvn/phr/phr/trunk

Subversion Repositories phr

[/] [phr/] [trunk/] [doc/] [informe-tesis/] [reports/] [PPS/] [maximiq/] [manual usuario/] [tex/] [phr.tex] - Rev 146

Go to most recent revision | Compare with Previous | Blame | View Log

 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%NEW CHAPTER  NEW CHAPTER  NEW CHAPTER  NEW CHAPTER  NEW CHAPTER%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\chapter{La placa PHR}
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%NEW SECTION  NEW SECTION  NEW SECTION  NEW SECTION  NEW SECTION%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\section{El chip FPGA}
 
\section{Memoria del FPGA}
 
\section{Interfaz JTAG}
 
\section{Fuentes de \textsl{clock}}
 
 
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%NEW SECTION  NEW SECTION  NEW SECTION  NEW SECTION  NEW SECTION%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\section{Periféricos}
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\subsection{LEDs}
 
En la placa se encuentran ocho LEDs de montaje superficial indicados con el numero 9 en la Fig. \ref{intro:componentes}. Son etiquetados desde LED1 a LED8 y su relación con los pines de la FPGA se muestra en la Tabla \ref{phr:LEDpins}.
 
 
\begin{table}[h]
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|}
	\hline
	\textbf{Periférico} & LED1 & LED2 & LED3 & LED4 & LED5 & LED6 & LED7 & LED8 \\	\hline
	\textbf{Pin}        & 84   & 86   & 89   & 93   & 98   & 3    & 5    & 7    \\	\hline
\end{tabular}
\end{center}
\caption[Pines para los LEDs]{Correspondencia entre los  pines de la FPGA y los LEDs (periféricos).}
\label{phr:LEDpins}
\end{table}
 
Los cátodos de cada LED se conectan a potencial cero y los ánodos se conectan a los pines respectivos de la FPGA mediante un resistencia de 330 $\Omega$. Para enecender un determinado LED basta con poner en alto la señal de control.
 
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\subsection{Pulsadores (\textsl{Tact switches})}
 
Están disponibles cuatro botones pulsadores como los esquematizados en la Fig. \ref{phr:tact} y son identificados con el numero 12 en la Fig. \ref{intro:componentes}. Los mismos son etiquetados como PBTN1, PBTN2, PBTN3 y PBTN4. Los pines de la FPGA relacionados con éstos periféricos se identifican en la Tabla \ref{phr:PBTNpins}. El esquemático detallado del circuito puede encontrarse en el Apéndice \ref{appendix:sche}.
 
\begin{figure}[b]
\begin{center}
  \includegraphics{./img/phr/tact_switch.pdf}
\end{center}
\caption{\textsl{Tact switches}.}
\label{phr:tact}
\end{figure}
 
\begin{table}[h]
\begin{center}
\begin{tabular}{|c|c|c|c|c|}
	\hline
	\textbf{Periférico} & PBTN1 & PBTN2 & PBTN3 & PBTN4 \\	\hline
	\textbf{Pin}        & 77    & 78    & 82    & 83    \\	\hline
\end{tabular}
\end{center}
\caption[Pines para los \textsl{tact switches}]{Correspondencia entre los  pines de la FPGA y los botones.}
\label{phr:PBTNpins}
\end{table}
 
Cuando se presiona alguno de los botones se genera un valor lógico alto en el pin asociado de la FPGA. No hay circuito antirrebote y ésto debe ser tenido en cuenta al momento de escribir el código que luego vaya a cargarse en el dispositivo.
 
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\subsection{Llaves DIP}
 
Alternativamente a los pulsadores se puede optar como periféricos de entrada a unas llaves DIP como se muestran en la Fig. \ref{phr:DIP}. La ubicación de las llaves en la placa PHR se muestra con el índice numero 10 en la Fig. \ref{intro:componentes}. El circuito de éstas llaves puede consultarse en el Apéndice \ref{appendix:sche} y los pines de la FPGA que los controlan se revelan en la Tabla \ref{phr:DIPpins}.
 
\begin{table}[h]
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|}
	\hline
	\textbf{Periférico} & SW1 & SW2 & SW3 & SW4 & SW5 & SW6 & SW7 & SW8 \\	\hline
	\textbf{Pin}        & 85  & 88  & 90  & 94  & 97  & 4   & 6   & 9   \\	\hline
\end{tabular}
\end{center}
\caption[Pines para las llavess]{Correspondencia entre los  pines de la FPGA y las llaves.}
\label{phr:DIPpins}
\end{table}
 
Cuando una llave se coloca en la posición de \emph{encendido}, el pin de la FPGA correspondiente se pone a un valor lógico \emph{alto}. En contraposición, si la llave se coloca en la posicion \emph{apagado}, la FPGA leerá un valor lógico \emph{bajo}. Al igual que con el caso de los botones pulsadores, no se provee un circuito antirrebote, y debe ser tenido en cuenta en el diseño del sistema.
 
\begin{figure}[h]
\begin{center}
  \includegraphics{./img/phr/DIPswitch.pdf}
\end{center}
\caption{\textsl{DIP switches}.}
\label{phr:DIP}
\end{figure}
 
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\subsection{Displays de 7 segmentos}
 
La placa PHR cuenta con un display de siete segmentos cuádruple de \emph{ánado comun} indicado con el índice 13 en la Fig. \ref{intro:componentes}. El circuito de conexión entre la FPGA y el display se muestra en la Fig. \ref{phr:quad7seg} y se resalta la denominación alfabética para los segmentos de cada display. 
 
Ésta misma figura además muestra como ejemplo, el estado de los pines de la FPGA para indicar el numero 3 en la posición 2. Al tener ésta configuración, cada LED encenderá con un \emph{nivel bajo} en el pin correspondiente al segmento pero además necesitará que el ánodo del caracter particular esté energizado. Éste ultimo también es activo por bajo (\textsl{active low}).
 
\begin{figure}[h]
\begin{center}
  \includegraphics{./img/phr/quad7seg.pdf}
\end{center}
\caption[Circuito del display de siete segmentos]{Conexionado del display de siete segmentos cuádruple.}
\label{phr:quad7seg}
\end{figure}
 
Para dar el efecto deseado de representar cuatro caracteres distintos a la vez, se recurre a la técnica de multiplexación en el dominio del tiempo. La técnica consiste en mostrar uno a uno y ciclicamente cada caracter a una frecuencia lo suficientemente alta para que el ojo humano persiva una imagen completa. Un diagrama temporal de las señales se muestra en la Fig. \ref{phr:multiplex}.
 
\begin{figure}[h]
\begin{center}
  \includegraphics{./img/phr/multiplex.pdf}
\end{center}
\caption[Diagrama temporal de la multiplexación]{Diagrama temporal de la multiplexación.}
\label{phr:multiplex}
\end{figure}
 
Si bien el método requiere algo mas de complejidad que la conexion directa a cada segmento de cada display, reduce el numero de pines necesarios de $8 \times 4=32$ a $8+4=12$ lo cuál representa un significativo ahorro en recursos de hardware.
 
La Tabla \ref{phr:quad7seg:pines} muestra los pines de conexión de la FPGA a las distintas entradas del periférico. La Fig \ref{phr:quad7seg:chars} muestra las representaciones de los caracteres comunes en los displays de siete segmentos. Además de los dígitos, se pueden utilizar los caracteres desde la A a la F para representar numeros en notación hexadecimal.
 
\begin{table}[h]
\begin{center}
 
\begin{tabular}{|c|c|c|c|c|}
	\hline
	\textbf{Periférico} & Caracter1 & Caracter2 & Caracter3 & Caracter4 \\	\hline
	\textbf{Pin}        & 59        & 57        & 61        & 60        \\	\hline
\end{tabular}
 
\vspace{.2cm}
 
\begin{tabular}{|c|c|c|c|c|c|c|c|c|}
	\hline
	\textbf{Segmento} & A  & B  & C  & D  & E  & F  & G  & DP  \\	\hline
	\textbf{Pin}      & 65 & 64 & 72 & 70 & 68 & 62 & 73 & 71  \\	\hline
\end{tabular}
 
\end{center}
\caption[Pines para el diplay de segmentos]{Conexionado del diplay de 7 segmentos cuádruple a la FPGA.}
\label{phr:quad7seg:pines}
\end{table}
 
\begin{figure}[h]
\begin{center}
  \includegraphics{./img/phr/chars.pdf}
\end{center}
\caption[Caracteres comunes en los displays de 7 segmentos]{Representación de caracteres comunes en los displays de siete segmentos.}
\label{phr:quad7seg:chars}
\end{figure}
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\subsection{Puerto serie}
 
La placa PHR dispone de un puerto serial RS-232. El conector DB9 hembra/macho se señala con el numero 14 en la Fig. \ref{intro:componentes}. La placa representa un \textsl{Data Communications Equipment} (DCE) y se puede conectar a una computadora personal con un cable serial derecho.
 
La Fig. \ref{phr:3232} muestra el circuito de la interfaz entre la FPGA y el conector DB9. Un chip (ST3232) permite una alimentación de entre 3V y 5.5V y utiliza un conjunto de capacitores para alcanzar los niveles de tensión RS-232, garantizando tasas de transferencia de hasta 250 kbps.
 
El control de flujo por hardware está desabilitado. Las lineas de DCD, DTR y DSR se conectan entre sí. Analogamente para las señales RTS y CTS.
 
Los pines de la FPGA que controlan las señales seriales se muestran en la Tabla \ref{phr:RS232pins}.
\begin{figure}[h]
\begin{center}
  \includegraphics{./img/phr/3232.pdf}
\end{center}
\caption[Circuito de la interfaz RS-232]{Circuito de la interfaz RS-232.}
\label{phr:3232}
\end{figure}
 
\begin{table}[h]
\begin{center}
\begin{tabular}{|c|c|c|}
	\hline
	\textbf{Señal serial}   & RX & TX  \\	\hline
	\textbf{Pin en la FPGA} & 52 & 56  \\	\hline
\end{tabular}
\end{center}
\caption[Pines para la conexión RS-232]{Correspondencia entre los  pines de la FPGA y el puerto serie RS-232.}
\label{phr:RS232pins}
\end{table}
 
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%NEW SECTION  NEW SECTION  NEW SECTION  NEW SECTION  NEW SECTION%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 
\section{Entradas y salidas de propósito general}
 
Para que el usuario realice prototipos,  use placas de expansión de terceros o diseñe sus propias placas de expansión, se proveen dos conectores, uno macho y otro hembra, que pueden reconocerse respectivamente con los numeros 2 y 3 en la Fig. \ref{intro:componentes}. Una imagen ampliada se muestra en la Fig. \ref{phr:gpio} indicando además la numeración de los pines. La mayoria de éstos pines estan conectados directamente al chip FPGA tal como lo muestra la Tabla \ref{phr:GPIOpins}. También se proveen pines de alimentación de 3.3V y GND.
 
\begin{figure}[h]
\begin{center}
  \includegraphics{./img/phr/gpio_header.pdf}
\end{center}
\caption[Conectores de propósito general]{Conectores para entradas y salidas de propósito general.}
\label{phr:gpio}
\end{figure}
 
\begin{table}[h]
\begin{center}
\begin{tabular}{|r|c|c|l|}
	\hline
	\multicolumn{4}{ |c| }{\emph{Conector macho}} \\
	\hline
	\hline
	\textbf{Conectado a} & \textbf{Pin} & \textbf{Pin} & \textbf{Conectado a} \\ \hline\hline
	FPGA Pin 39 &  1 &  2 & FPGA Pin 50 \\ \hline
	FPGA Pin 37 &  3 &  4 & FPGA Pin 49 \\ \hline
	FPGA Pin 36 &  5 &  6 & FPGA Pin 46 \\ \hline
	FPGA Pin 35 &  7 &  8 & FPGA Pin 34 \\ \hline
	FPGA Pin 33 &  9 & 10 & FPGA Pin 32 \\ \hline
	FPGA Pin 31 & 11 & 12 & FPGA Pin 30 \\ \hline
	FPGA Pin 29 & 13 & 14 & +3.3V       \\ \hline
	FPGA Pin 28 & 15 & 16 & No conectado\\ \hline
	FPGA Pin 27 & 17 & 18 & GND         \\ \hline
\end{tabular}
\hspace{.1cm}
\begin{tabular}{|r|c|c|l|}
	\hline
	\multicolumn{4}{ |c| }{\emph{Conector hembra}} \\
	\hline
	\hline
	\textbf{Conectado a} & \textbf{Pin} & \textbf{Pin} & \textbf{Conectado a} \\ \hline\hline
	FPGA Pin 21 & 1 &  2 & FPGA Pin 20 \\ \hline
	FPGA Pin 19 & 3 &  4 & FPGA Pin 16 \\ \hline
	FPGA Pin 15 & 5 &  6 & FPGA Pin 13 \\ \hline
	FPGA Pin 12 & 7 &  8 & +3.3V       \\ \hline
	FPGA Pin 10 & 9 & 10 & GND         \\ \hline
\end{tabular}
\end{center}
\caption[Pines para las \textsl{GPIO}]{Conexión de los pines para las entradas/salidas de propósitogeneral.}
\label{phr:GPIOpins}
\end{table}
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.