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

Subversion Repositories phr

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /phr/trunk
    from Rev 160 to Rev 161
    Reverse comparison

Rev 160 → Rev 161

/doc/informe-tesis/reports/schedule_2013-03-20/schedule.toc
14,8 → 14,8
\contentsline {subsubsection}{\numberline {3.2.1}Configuraci\IeC {\'o}n del \textsl {interface}}{8}
\contentsline {subsubsection}{\numberline {3.2.2}Dispositivos soportados}{9}
\contentsline {subsubsection}{\numberline {3.2.3}Comandos b\IeC {\'a}sicos}{10}
\contentsline {subsection}{\numberline {3.3}Programaci\IeC {\'o}n \ac {CPLD}}{12}
\contentsline {subsection}{\numberline {3.4}\textsl {Debugging}}{12}
\contentsline {section}{\numberline {4}Documentaci\IeC {\'o}n}{12}
\contentsline {section}{\numberline {A}Acr\IeC {\'o}nimos}{13}
\contentsline {section}{\numberline {B}Repositorio de proyecto}{13}
\contentsline {subsection}{\numberline {3.3}Programaci\IeC {\'o}n \ac {CPLD}}{13}
\contentsline {subsection}{\numberline {3.4}\textsl {Debugging}}{13}
\contentsline {section}{\numberline {4}Documentaci\IeC {\'o}n}{13}
\contentsline {section}{\numberline {A}Acr\IeC {\'o}nimos}{14}
\contentsline {section}{\numberline {B}Repositorio de proyecto}{14}
/doc/informe-tesis/reports/schedule_2013-03-20/schedule.pdf Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream
/doc/informe-tesis/reports/schedule_2013-03-20/schedule.aux
129,12 → 129,12
\bibcite{openocd-manual-autoprobing}{2}
\acronymused{CPLD}
\acronymused{CPLD}
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Programaci\IeC {\'o}n \ac {CPLD}}{12}}
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}\textsl {Debugging}}{12}}
\@writefile{toc}{\contentsline {section}{\numberline {4}Documentaci\IeC {\'o}n}{12}}
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Programaci\IeC {\'o}n \ac {CPLD}}{13}}
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}\textsl {Debugging}}{13}}
\@writefile{toc}{\contentsline {section}{\numberline {4}Documentaci\IeC {\'o}n}{13}}
\acronymused{openocd}
\acronymused{openocd}
\@writefile{toc}{\contentsline {section}{\numberline {A}Acr\IeC {\'o}nimos}{13}}
\@writefile{toc}{\contentsline {section}{\numberline {A}Acr\IeC {\'o}nimos}{14}}
\newacro{PHR}[\AC@hyperlink{PHR}{PHR}]{Plataforma de Hardware Reconfigurable}
\newacro{openocd}[\AC@hyperlink{openocd}{OpenOCD}]{\textsl {Open On-Chip Debugger}}
\newacro{jtag}[\AC@hyperlink{jtag}{JTAG}]{\textsl {Joint Test Action Group}}
146,4 → 146,4
\newacro{SO}[\AC@hyperlink{SO}{SO}]{sistema operativo}
\newacro{GPL}[\AC@hyperlink{GPL}{GPL}]{\textsl {General Public License}}
\newacro{UTN-FRC}[\AC@hyperlink{UTN-FRC}{UTN-FRC}]{Universidad Tecnol\IeC {\'o}gica Nacional -- Facultad Regional C\IeC {\'o}rdoba}
\@writefile{toc}{\contentsline {section}{\numberline {B}Repositorio de proyecto}{13}}
\@writefile{toc}{\contentsline {section}{\numberline {B}Repositorio de proyecto}{14}}
/doc/informe-tesis/reports/schedule_2013-03-20/schedule.tex
219,7 → 219,7
 
Es decir, se agrega los TAPs recorriendo la cadena JTAG desde el pin TDO al pin TDI desde el interface, aquí sería desde la placa OOCDLink.
 
\subsection{Programación \ac{CPLD}}
\subsection{Programación del \ac{CPLD}}
Para los \ac{CPLD}, primero se debe tener el archivo \ac{SVF}, que es generado por la herramienta con la que se diseña y sintetiza el código VHDL o Verilog. En éste caso se utiliza el \textsl{software} ISE Xilinx. Una vez que se tiene el archivo \ac{SVF}, desde \ac{openocd}, se corre el siguiente comando;
\begin{lstlisting}
svf -tap tap_name file.svf quiet
462,31 → 462,57
\end{lstlisting}
En este comando, lo principal es definir que \emph{cable} se utilizará de la lista que tenemos en el archivo \texttt{cablelist.txt}. Para esto, se debe indicar luego del \texttt{-c} el nombre de la lista de \textsl{interfaces}. Una vez definido el cable, se concatenan demás tareas que debe procesar el xc3sprog, pero ya teniendo referencia a que tipo de \textsl{interface} está conectado. Los tareas son,
\begin{description}
\item[\textbf{\texttt{-j}}] Detecta la cadena JTAG e imprime una lista de dispositivos encontrados. La numeración de la posición del dispositivo en la cadena se cuenta desde el dispositivo conectado al pin TDO del \textsl{interface}.
\item[\textbf{\texttt{-p val}}] Define a que dispositivo de la cadena JTAG se está por acceder, donde \texttt{val} es el número que ocupa en la cadena y es visualizado por el comando \texttt{-j}. El valor por defecto de \texttt{val} es 0.
\item[\textbf{\texttt{-T n}}] Testea la cadena JTAG \texttt{n} veces. Cuando se corre en modo ISF, se testea la conexión SPI.
\item[\texttt{-j}] Detecta la cadena JTAG e imprime una lista de dispositivos encontrados. La numeración de la posición del dispositivo en la cadena se cuenta desde el dispositivo conectado al pin TDO del \textsl{interface}.
\item[\texttt{-p val}] Define a que dispositivo de la cadena JTAG se está por acceder, donde \texttt{val} es el número que ocupa en la cadena y es visualizado por el comando \texttt{-j}. El valor por defecto de \texttt{val} es 0.
\item[\texttt{-T n}] Testea la cadena JTAG \texttt{n} veces. Cuando se corre en modo ISF, se testea la conexión SPI.
\begin{itemize}
\item Si \texttt{n} no se específica, el valor por defecto es de 10,000 veces.
\item Si \texttt{n = 0} se mantendrá en un testeo para siempre.
\end{itemize}
\item[\textbf{\texttt{-J freq}}] Ejecuta a una frecuencia específica el clock del JTAG (\texttt{freq} se encuentra en Hz). Si no se proporciona este dato, o \texttt{freq = 0}, el \textsl{interface} trabajará a la máxima frecuencia que soporte y se encuentre definido en el archivo \texttt{cablelist.txt} (véase \ref{sec:xc3sprog-cablelist}).
\item[\textbf{\texttt{-e}}] Borra el dispositivo seleccionado por el parámetro \texttt{-p}.
\item[\textbf{\texttt{-I file}}] Define si se trabaja en modo ISF para programar una memoria serial \textsl{flash} interna. La memoria \textsl{flash} está junta al dispositivo JTAG primario, pero no es accesible directamente mediante la cadena JTAG. El \textsl{interface} JTAG primario es usado como un \emph{proxy} para enviar datos sobre SPI a la memoria \textsl{flash}. Si se especifica el argumento \texttt{file}, se comenzará por programar el bitfile especificado en el \textsl{interface} JTAG primario (típicamente una FPGA).
\item[\textbf{\texttt{-R}}] Envía un comando de reconfiguración al dispositivo de memoria del \textsl{hardware} utilizado (por ejemplo: XVC, XCF, XCFP para las FPGA o directamente a los dispositivos XC3S, XC6S, XC2V).
\item[\textbf{\texttt{-m mapdir}}] Búsqueda de archivos de mapeo (XC2C) en el directorio especificado por \texttt{mapdir}. Los archivos de mapeo (\textsl{map files}) son requeridos para manejar archivos JEDEC durante la programación de los CPLDs. Si se especifica el directorio, por defecto el valor que se toma es \texttt{\$XC\_MAPDIR}.
\item[\textbf{\texttt{-d /dev/parportN}}] Especifica el puerto paralelo a utilizar. Si no es especificado, por defecto se utiliza el valor \texttt{\$XCPORT} o \texttt{/dev/parport0}.
\item[\textbf{\texttt{-s serialnum}}] Utiliza el puerto USB con \textsl{string} de número de serie específico.
\item[\textbf{\texttt{-L}}] Usa el controlador \emph{libFTD2XX} en luag de \emph{libftdi} para acceder a un \textsl{interface} basados en los dispositivos FTDI.
\item[\textbf{\texttt{-D}}] Genera los archivos \texttt{cablelist.txt} y \texttt{devlist.txt} en el directorio actual. Si ya existiesen, xc3sprog intentará generar los mismos archivos pero agregando al nombre de los archivos un número que incrementará.
\item[\textbf{\texttt{-v}}] Habilita la salida formal detallada (\textsl{verbose}).
\item[\textbf{\texttt{-h}}] Imprime un texto de ayuda para el programa.
\item[\texttt{-J freq}] Ejecuta a una frecuencia específica el clock del JTAG (\texttt{freq} se encuentra en Hz). Si no se proporciona este dato, o \texttt{freq = 0}, el \textsl{interface} trabajará a la máxima frecuencia que soporte y se encuentre definido en el archivo \texttt{cablelist.txt} (véase \ref{sec:xc3sprog-cablelist}).
\item[\texttt{-e}] Borra el dispositivo seleccionado por el parámetro \texttt{-p}.
\item[\texttt{-I file}] Define si se trabaja en modo ISF para programar una memoria serial \textsl{flash} interna. La memoria \textsl{flash} está junta al dispositivo JTAG primario, pero no es accesible directamente mediante la cadena JTAG. El \textsl{interface} JTAG primario es usado como un \emph{proxy} para enviar datos sobre SPI a la memoria \textsl{flash}. Si se especifica el argumento \texttt{file}, se comenzará por programar el bitfile especificado en el \textsl{interface} JTAG primario (típicamente una FPGA).
\item[\texttt{-R}] Envía un comando de reconfiguración al dispositivo de memoria del \textsl{hardware} utilizado (por ejemplo: XVC, XCF, XCFP para las FPGA o directamente a los dispositivos XC3S, XC6S, XC2V).
\item[\texttt{-m mapdir}] Búsqueda de archivos de mapeo (XC2C) en el directorio especificado por \texttt{mapdir}. Los archivos de mapeo (\textsl{map files}) son requeridos para manejar archivos JEDEC durante la programación de los CPLDs. Si se especifica el directorio, por defecto el valor que se toma es \texttt{\$XC\_MAPDIR}.
\item[\texttt{-d /dev/parportN}] Especifica el puerto paralelo a utilizar. Si no es especificado, por defecto se utiliza el valor \texttt{\$XCPORT} o \texttt{/dev/parport0}.
\item[\texttt{-s serialnum}] Utiliza el puerto USB con \textsl{string} de número de serie específico.
\item[\texttt{-L}] Usa el controlador \emph{libFTD2XX} en luag de \emph{libftdi} para acceder a un \textsl{interface} basados en los dispositivos FTDI.
\item[\texttt{-D}] Genera los archivos \texttt{cablelist.txt} y \texttt{devlist.txt} en el directorio actual. Si ya existiesen, xc3sprog intentará generar los mismos archivos pero agregando al nombre de los archivos un número que incrementará.
\item[\texttt{-v}] Habilita la salida formal detallada (\textsl{verbose}).
\item[\texttt{-h}] Imprime un texto de ayuda para el programa.
\end{description}
 
Luego de reconocer los diferentes comandos que permiten ejecutarse con xc3sprog, se presenta a continuación algunas acciones posibles que se pueden correr. Cada una de estas acciones está compuesta de un archivo \texttt{filename} seguido opcionalmente por atributos de la forma:
\begin{lstlisting}
<filename:action:offset:style:length>.
\end{lstlisting}
\begin{description}
\item[\texttt{filename}] Corresponde al archivo que será escrito por el dispositivo seleccionado, o también puede ser el archivo que almacena el dato para luego ser leído por el dispositivo que se encuentra en la cadena JTAG.
\item[\texttt{action}] Es una letra que indica si se escribe, lee, o verifica el dispositivo. Si es especificado, la acción de escritura es indicado por defecto.
\begin{description}
\item[\texttt{w}] Borra, luego escribe los datos desde el archivo al dispositivo y por último verifica.
\item[\texttt{W}] Escribe con un tipo de borrado \textsl{auto-sector}, luego verifica. Este modo permite borrar solo el espacio necesario.\\
\item[\texttt{v}] Verifica el dato del dispositivo comparando el un archivo especificado.
\item[\texttt{r}] Lee los datos desde el dispositivo y los escribe al archivo (sin sobre-escritura).
\item[\texttt{R}] Lee los datos desde el dispositivo y los escribe al archivo, si ya existe el archivo lo sobreescribe.
\end{description}
\item[\texttt{offset}] El desplazamiento interno en \textsl{byte} del dispositivo donde la escritura/lectura deberá comenzar. Solo soportado para dispositivos SPI, XCFxxS y XMEGA.
\item[\texttt{style}] Define el formato del archivo especificado.
\begin{description}
\item[\texttt{BIT}] Formato de archivo de Xilinx \texttt{.BIT}. Por defecto para los dispositivos FPGA, XCF y memorias SPI.
\item[\texttt{BIN}] Archivo binario.
\item[\texttt{MCS}] Formato de archivo de Xilinx \texttt{.MCS}.
\item[\texttt{IHEX}] Formato de Intel \texttt{HEX}. También usado por los formatos PROMGEN de Xilinx cuando escribe archivos MCS. Por defecto para los archivos XMEGA.
\item[\texttt{HEXRAW}] Secuencia en bruto de dígitos hexadecimales.
\item[\texttt{JEDEC}] Por defecto para los dispositivos CPLDs.
\end{description}
\item[\texttt{length}] El número de \textsl{bytes} a programar/leer. Solo soportado para SPI, XCFxxS y XMEGA.
\end{description}
 
\subsection{Programación \ac{CPLD}}
\subsection{Programación de la \ac{FPGA}}
 
 
\subsection{\textsl{Debugging}}
\subsection{Programación del \ac{CPLD}}
 
\section{Documentación}
La documentación resulta fundamental en ésta etapa del desarrollo. Si bien se quiere lograr el correcto funcionamiento de las placas, la documentación sirve para realizar correciones a las versiones futuras de cada placa. Otro objetivo es documentar el funcionamiento de cada dispositivo que sirvan al reporte final como así también a los usuarios de la \emph{Plataforma de Hardware Reconfigurable}.
/doc/informe-tesis/reports/schedule_2013-03-20/schedule.log
1,4 → 1,4
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=pdflatex 2013.3.7) 19 MAR 2014 14:03
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=pdflatex 2013.3.7) 19 MAR 2014 17:22
entering extended mode
%&-line parsing enabled.
**schedule.tex
632,13 → 632,18
[6] [7] [8] [9] [10]
LaTeX Font Info: Font shape `OT1/cmtt/bx/n' in size <10.95> not available
(Font) Font shape `OT1/cmtt/m/n' tried instead on input line 465.
[11] [12]
Overfull \hbox (8.15585pt too wide) in paragraph at lines 520--522
[11]
Underfull \hbox (badness 10000) in paragraph at lines 494--495
 
[]
 
[12] [13]
Overfull \hbox (8.15585pt too wide) in paragraph at lines 546--548
\OT1/cmr/m/n/10.95 ac-ce-der a los re-po-si-to-rios me-dian-te el si-guien-te l
ink, \OT1/cmtt/m/n/10.95 http://opencores.org/project,phr
[]
 
[13] (./schedule.aux) )
[14] (./schedule.aux) )
Here is how much of TeX's memory you used:
6972 strings out of 494999
92193 string characters out of 1180817
662,9 → 667,9
amsfonts/cm/cmsy9.pfb></usr/share/texmf-texlive/fonts/type1/public/amsfonts/cm/
cmti10.pfb></usr/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt10.pfb>
</usr/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt9.pfb>
Output written on schedule.pdf (13 pages, 282905 bytes).
Output written on schedule.pdf (14 pages, 286682 bytes).
PDF statistics:
116 PDF objects out of 1000 (max. 8388607)
119 PDF objects out of 1000 (max. 8388607)
0 named destinations out of 1000 (max. 500000)
6 words of extra memory for PDF output out of 10000 (max. 10000000)
 

powered by: WebSVN 2.1.0

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