URL
https://opencores.org/ocsvn/phr/phr/trunk
Subversion Repositories phr
[/] [phr/] [trunk/] [doc/] [financiamiento/] [adec/] [informes/] [informe_final/] [informe_final.tex] - Rev 250
Go to most recent revision | Compare with Previous | Blame | View Log
\documentclass[a4paper]{article} \usepackage[utf8]{inputenx} \usepackage[spanish]{babel} \usepackage[pdftex]{graphicx} \usepackage{caption} \usepackage{subcaption} \usepackage[a4paper]{geometry} \usepackage{fancyhdr} \usepackage{balance} \title{Plataforma de hardware reconfigurable en diseño de sistemas electrónicos\\[1cm]\textsc{\LARGE Informe Final}} \author{Luis A. Guanuco} \date{Octubre 2013} \addtolength{\textheight}{3cm} \addtolength{\voffset}{-1cm} \addtolength{\textwidth}{1cm} \begin{document} \maketitle{} %\tableofcontents{} % \begin{figure}[h] % \centering % \includegraphics[width=0.3\textwidth]{images/logov2_ES} %\end{figure} \thispagestyle{empty} \begin{abstract} En el presente informe se presentará como se finalizó el proyecto \textbf{\emph{Plataforma de hardware reconfigurable en diseño de sistemas electrónicos}}, se describirán los aciertos como los inconvenientes que se presentaron en el desarrollo. En primer lugar se describirán las versiones finales del \textsl{hardware}. Luego se detalla las herramientas y desarrollos de \textsl{software} que complementa el proyecto. Debido a la decisión de utilizar \textbf{\textsl{Software} Libre}, no se ha tenido gastos en licencias. La totalidad de los recursos económicos se han invertido en materiales físicos (\textsl{hardware}). Por último se realizarán las conclusiones, además se adjuntará documentación complementaria a fines de cumplir con los requerimientos en el proceso de evaluación. \end{abstract} \tableofcontents{} \section{Hardware} \label{chap:hw} El \textsl{hardware} hace referencia a los recursos físicos (tangibles) de un sistema determinado. En nuestro caso, el \textsl{hardware} se representa en las \emph{placas electrónicas}, que a su vez están formadas por varios componentes electrónicos. Se podría nombrar las placas electrónicas desarrolladas como: \begin{itemize} \item Placa principal, \emph{PHR (Plataforma de Hardware Reconfigurable)}. \item Placa de potencia, \emph{S3Power}. \item Placa programadora, \emph{OOCDLink}. \end{itemize} El desarrollo de una placa sigue un proceso que se podría describir como la Figura \ref{fig:hw-ciclo}. Cada una de estas etapas se encuentra documentada y ha sido utilizada para el presente informe. La interacción entre las diferentes etapas se representa por flechas. De aquí se puede obtener otra información sobre la metodología de trabajo, que es el sentido en que se comparte información. Por ejemplo, la etapa denominada \emph{Especificaciones generales} proporciona información a las etapas de \emph{Diseño del esquemático} y la etapa \emph{Diseño de la placa electrónica}, y a su vez estas últimas ofrecen información a la primera para asegurar que determinados aspectos definidos inicialmente se estén cumpliendo. Se hace una breve descripción de las etapas. \begin{figure}[h] \centering \includegraphics[width=1\textwidth]{images/hardware_ciclo_diseno} \caption{Proceso de diseño de las placas} \label{fig:hw-ciclo} \end{figure} \begin{description} \item[Especificaciones generales] En el diseño de un circuito electrónico se deben determinar las pautas y características que éste debe cumplir. Por ejemplo, tecnología a utilizar, dimensiones, costo, etc.. \item[Diseño del esquemático] Con la utilización de herramientas de \textsl{software}, en este caso kiCAD\footnote{kiCAD es un entorno de \textsl{software} usado para el diseño de circuitos electrónicos. El paquete kiCAD posee licencia GNU GPL (licencia libre).}, se realiza el diseño del esquema de conexiones del circuito eléctrico. Aquí se representan los componentes electrónicos con símbolos y bloques en vez de sus verdaderas formas físicas, lo que facilita su interpretación. \item[Diseño de la placa electrónica] Luego de obtener el circuito esquemático, se debe convertir dicho esquema en su equivalente real. Aquí sí se tiene un modelo de los dispositivos electrónicos reales (dimensiones y formas), con la ventaja que las conexiones eléctricas se encuentran ya definidas. Lo importante de esta etapa es definir la dimensión de la placa, como así también la disposición de cada componente electrónico. \item[Selección de componentes electrónicos] En esta etapa se lleva un registro de los dispositivos electrónicos a utilizar. Para el caso de la generación del circuito esquemático, se determina que simbología utilizar en la representación de los componentes. Y en el caso de la generación de la placa, cada símbolo debe tener su representación física real. Gran parte de esta etapa se basa en documentación para generar la compra de los materiales necesarios. \item[Armado y pruebas funcionales] El montaje de los componentes electrónicos sobre las placas requieren toda la documentación previa generadas en las etapas anteriores. Una vez que se logran ensamblar todos los dispositivos, se realizan pruebas sobre éstas, donde se registran e intentan resolver los inconvenientes que se presenten. Es esta etapa clave donde se define si el desarrollo ha sido exitoso o deben realizarse modificaciones, lo que implica volver al comienzo, desde la etapa \emph{Especificaciones generales}. \item[Modificaciones] El desarrollador evalúa la ``gravedad'' de los inconvenientes presentados en la etapa de \emph{Armado y pruebas funcionales}. También se aclara que resulta fundamental la documentación en esta etapa ya que servirá para describir como se ha llegado a una versión funcional. \item[Versión Final] En el caso ideal, luego de que se hayan realizado las pruebas correspondientes sobre la placa, y todas éstas hayan sido exitosas, la documentación final se referencia a dicha versión. \end{description} A continuación se realiza breve descripción de las diferentes placas que conforman el proyecto \emph{Plataforma de hardware reconfigurable en diseño de sistemas electrónicos}. Para los detalles técnicos de cada uno de estos desarrollos, se debe leer el \emph{Manual de Usuario}. Esta documentación, conjuntamente con las placas, son los materiales que se entregan al \emph{Laboratorio de Técnicas Digitales e Informáticas}\footnote{El Laboratorio de Técnicas Digitales e Informática (LTDI), es la institución beneficiaria del desarrollo. Este Laboratorio se encuentra en la Facultad Regional Córdoba -- Universidad Tecnológica Nacional}. \subsection{Plataforma de Hardware Reconfigurable (PHR)} \label{sec:phr} La placa \emph{PHR (Plataforma de Hardware Reconfigurable)} es el desarrollo central del proyecto. Si bien, el uso de la \emph{PHR} necesita tanto la placa \emph{S3Power} como también la \emph{OOCDLink}, en la placa \emph{PHR} se dispone de todos los recursos de \textsl{hardware} (también denominados ``periféricos'') que serán utilizados por los estudiantes en el diseño de sistemas digitales. \subsubsection{Recursos de \textsl{hardware}} \label{sec:phr-recursos-hw} Cuando se hace referencia a los \textbf{recursos de \textsl{hardware}}, en éstos tipos de sistemas electrónicos, se refiere a los dispositivos que pueden ser utilizados para su manipulación (tanto actuadores como transductores). En el caso de los actuadores, dispositivos de salida, permite visualizar u ofrecer información al exterior de la placa (por ejemplo: los diodos LED, Display, etc.). Los transductores, dispositivos de entrada, adquieren información para ser procesada o manipulada por la placa (por ejemplo: Llaves, pulsadores, etc.). A continuación se describe los periféricos con los que cuenta la \emph{Plataforma de Hardware Reconfigurable}. \begin{itemize} \item 8 indicadores LED (\textsl{Light-Emitting Diode}). \item Display de 4 dígitos (cada dígito con 7 segmentos y 4 transistores que controla cada dígito). \item 8 llaves de conmutación. \item 4 pulsadores. \item 3 diferentes entradas de reloj (utilizando un divisor de frecuencia). \item 1 Oscilador de 50Mhz. \item 1 conector con señales de entradas y salidas para usos generales. \item 1 conector con señales de entradas y salidas para usos especiales. \item Puerto de comunicación RS-232. \end{itemize} \subsubsection{Esquemático} \label{sec:phr-dia-electrico} Debido a la cantidad de dispositivos electrónicos que integran la \emph{PHR}, se jerarquiza el diagrama para su mejor comprensión. La Figura \ref{fig:phr-sch-top} representa el esquemático a un nivel general. Además se distinguen dos bloques denominados \textbf{Power} y \textbf{IOports}, ambos agrupan varios dispositivos que forman parte del proyecto en general. En la Figura \ref{fig:phr-sch-power} se encuentran los componentes de la etapa de potencia y en la Figura \ref{fig:phr-sch-ioports} se puede apreciar las conexiones eléctricas de gran parte de los periféricos con los que cuenta la \emph{PHR}. \begin{figure}[h] \centering \includegraphics[width=0.95\textheight,angle=90]{images/PHRboard} \caption{Esquemático TOP de la placa \emph{PHR}.} \label{fig:phr-sch-top} \end{figure} \begin{figure}[h] \centering \includegraphics[width=0.95\textheight,angle=90]{images/PHRboard-Power} \caption{Bloque interno al diagrama TOP, denominado ``power'' debido a que contiene la conexión con la placa \emph{S3power} y capacitores que evitan interferencias eléctricas.} \label{fig:phr-sch-power} \end{figure} \begin{figure}[h] \centering \includegraphics[width=0.95\textheight,angle=90]{images/PHRboard-IOports} \caption{Bloque con todos los periféricos. Aquí se observa la ventaja del diseño jerarquizado, pues si se tendrían todos estos componentes junto a los de la Figura \ref{fig:phr-sch-top} y \ref{fig:phr-sch-power}, presentaría inconvenientes para su entendimiento.} \label{fig:phr-sch-ioports} \end{figure} \subsubsection{\textsl{Printed Circuit Board} (PCB)} \label{sec:phr-pcb} La denominación \textbf{PCB}, de sus siglas en inglés (\textsl{Printed Circuit Board}), hace referencia a la placa donde serán montados los componentes electrónicos. En base a la Figura \ref{fig:hw-ciclo}, la obtención del \emph{PCB} es una consecuencia de seguir una metodología de trabajo donde previamente se ha verificado la funcionalidad del esquema electrónico. Cada placa tiene diferentes dimensiones, características tecnológicas y de fabricación.\\ En la Figura \ref{fig:phr-pcb-pcbnew-top} se puede ver la distribución de los componentes. Quizá las Figuras \ref{fig:phr-pcb-3d-1} y \ref{fig:phr-pcb-3d-2} resulten más relevante pues es una representación en 3D de la placa. En las Figuras \ref{fig:phr-pcb-foto-1} a la \ref{fig:phr-pcb-foto-2} se muestra fotografías de la placa \emph{PHR} final. Una mayor descripción del proceso de obtención de estas placas se puede obtener del \emph{Manual de Usuario}, documento adjunto a este informe. \begin{figure}[h] \centering \includegraphics{images/PHRboard_layers} \caption{Distribución de los componentes en la placa.} \label{fig:phr-pcb-pcbnew-top} \end{figure} \begin{figure}[h] \centering \includegraphics[width=12cm]{images/PHRboard_3d_1} \caption{Modelo en 3D de la placa \emph{PHR} (Perspectiva 1).} \label{fig:phr-pcb-3d-1} \end{figure} \begin{figure}[h] \centering \includegraphics[width=12cm]{images/PHRboard_3d_2} \caption{Modelo en 3D de la placa \emph{PHR} (Perspectiva 2).} \label{fig:phr-pcb-3d-2} \end{figure} \begin{figure}[h] \centering \includegraphics[width=12cm]{images/DSCN4528} \caption{Fotografía de la placa \emph{PHR} (Perspectiva 1).} \label{fig:phr-pcb-foto-1} \end{figure} \begin{figure}[h] \centering \includegraphics[width=12cm]{images/DSCN4529} \caption{Fotografía de la placa \emph{PHR} (Perspectiva 2).} \label{fig:phr-pcb-foto-2} \end{figure} \clearpage{} \subsection{S3Power} \label{sec:s3power} La placa \emph{PHR} no tiene un circuito de alimentación, debido al elevado consumo de energía en su funcionamiento pleno, se utiliza otra placa que sea capaz de ofrecer potencia a todos los dispositivos electrónicos. La placa \emph{S3Power} fue diseñada por el grupo UTIC (INTI)\footnote{La Unidad Técnica de Instrumentación y control (UTIC) es uno de los sectores del Centro de Electrónica e Informática del INTI - Instituto Nacional de Tecnología Industrial}. Esta placa está basada en un circuito integrado (chip) capaz de abastecer los máximos niveles de consumo de energía al dispositivo central de la placa \emph{PHR}. Como un ejemplo de las ventajas de la utilización de \textbf{\textsl{hardware} y \textsl{software} libre}, el desarrollo realizado por el UTIC fue liberado a la comunidad con una licencia libre, lo que implica la posibilidad de que cualquier pueda hacer uso de este desarrollo como realizarle modificaciones personalizadas, etc.. \subsubsection{Esquemático y PCB} \label{sec:s3power-sch-pcb} El esquema de conexiones de la placa se puede ver en la Figura \ref{fig:s3power-sch}. En la Figura \ref{fig:s3power-pcb-layers} se observa la placa y la disposición de los componentes. En las Figuras \ref{fig:s3power-pcb-3d-1} y \ref{fig:s3power-pcb-3d-2} se tiene los modelo en 3D y por último tenemos las fotografías de las placas terminadas en las Figuras \ref{fig:s3power-foto-1} y \ref{fig:s3power-foto-2}. \begin{figure}[ht] \centering \includegraphics[width=0.6\textheight,angle=90]{images/S3Proto_Power} \caption{Esquemático de la placa \emph{S3Power}.} \label{fig:s3power-sch} \end{figure} \begin{figure}[ht] \centering \includegraphics[width=10cm]{images/S3Power_layers} \caption{Distribución de los componentes en la placa.} \label{fig:s3power-pcb-layers} \end{figure} \begin{figure}[h] \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/s3power_pcb_3d_1} \caption{Perspectiva 1.} \label{fig:s3power-pcb-3d-1} \end{subfigure} % --- \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/s3power_pcb_3d_2} \caption{Perspectiva 2.} \label{fig:s3power-pcb-3d-2} \end{subfigure} \caption{Modelo en 3D de la placa \emph{S3Power}.} \label{fig:s3power-pcb-3d} \end{figure} \begin{figure}[h] \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/s3power_foto_1} \caption{Perspectiva 1.} \label{fig:s3power-foto-1} \end{subfigure} % -- \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/s3power_foto_2} \caption{Perspectiva 2.} \label{fig:s3power-foto-2} \end{subfigure} \caption{Fotografías de la placa \emph{S3Power}.} \label{fig:s3power-foto} \end{figure} \clearpage{} \subsection{OOCDLink} \label{sec:oocdlink} Gran parte del desarrollo del proyecto se basa en el diseño y armado de placas electrónicas (\textsl{hardware}) en donde los estudiantes puedan embeber los diseños digitales que realicen mediante la utilización de una herramienta de \textsl{software}. Para lograr esto se necesita un interfaz que interaccione entre el \textsl{hardware} y el \textsl{software}, la placa \emph{OOCDLink} cumple esta función. La placa \emph{OOCDLink} establece una conexión entre la PC (mediante el puerto USB) y el puerto de programación de la placa \emph{PHR}, a través del protocolo JTAG\footnote{JTAG, un acrónimo para \textsl{Joint Test Action Group}, es el nombre común utilizado para la norma IEEE 1149.1 titulada \textsl{Standard Test Access Port and Boundary-Scan Architecture} para \textsl{test access ports} utilizada para testear PCBs utilizando escaneo de límites.}. \subsubsection{Esquemático y PCB} \label{sec:oocdlink-sch-pcb} En la Figura \ref{fig:oocdlink-sch} se puede ver el circuito esquemático de la placa \emph{OOCDLink}. En la Figura \ref{fig:oocdlik-pcb-layers} se muestra el PCB con la distribución de los componentes. En las Figuras \ref{fig:oocdlink-pcb-3d-1} y \ref{fig:oocdlink-pcb-3d-2} se tienen los modelos en 3D de la placa. La versión final de la placa, con los componentes montados, se puede ver en las Figuras \ref{fig:oocdlink-foto-1} y \ref{fig:oocdlink-foto-2}. \begin{figure}[h] \centering \includegraphics[width=0.6\textheight,angle=90]{images/OOCD_placa} \caption{Esquemático de la placa \emph{OOCDLink}.} \label{fig:oocdlink-sch} \end{figure} \begin{figure}[ht] \centering \includegraphics[width=8cm]{images/OOCDLink-pcb-layers} \caption{Distribución de los componentes en la placa \emph{OOCDLink}.} \label{fig:oocdlik-pcb-layers} \end{figure} \begin{figure}[hb] \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/OOCDLinks-pcb-3d-1} \caption{Perspectiva 1.} \label{fig:oocdlink-pcb-3d-1} \end{subfigure} % -- \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/OOCDLinks-pcb-3d-2} \caption{Perspectiva 2.} \label{fig:oocdlink-pcb-3d-2} \end{subfigure} \caption{Modelo en 3D de la placa \emph{OOCDLink}.} \label{fig:oocdlink-pcb-3d} \end{figure} \begin{figure}[h] \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/OOCD_placa-foto-1} \caption{Perspectiva 1.} \label{fig:oocdlink-foto-1} \end{subfigure} % -- \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=\textwidth]{images/OOCD_placa-foto-2} \caption{Perspectiva 2.} \label{fig:oocdlink-foto-2} \end{subfigure} \caption{Fotografías de la placa \emph{OOCDLink}.} \label{fig:oocdlink-foto} \end{figure} \clearpage{} \subsection{Gastos en recursos de \textsl{hardware}} \label{sec:hw-gastos} Con el avance en la industria de la manufacturación de dispositivos electrónicos, hoy en día es posible adquirir tecnología que hace unos 10 años atrás resultaba difícil poseer. Otro factor importante fue el avance en el desarrollo de \textsl{software} para el diseño de sistemas electrónicos, estos programas se denominan EDA (\textsl{Electronic Design Automation}).\\ Actualmente en Argentina no hay industria que fabrique componentes electrónicos con las especificaciones requeridas para el proyecto. Existen empresas proveedoras de dispositivos electrónicos pero el costo para el pedido de componentes específico es muy alto. \\ En la evaluación del pre-proyecto, por parte de los desarrolladores, se consideraron la factibilidad en la adquisición de los materiales necesarios para llevar adelante el proyecto. Se pidió presupuesto de los principales componentes electrónicos, en los proveedores locales, y se realizó un estimativo del costo total si se adquiría todos los materiales necesarios por estas empresas. Lo que llevó a considerar la importación de los componentes por cuenta propia. A continuación se describen los procesos y etapas que atravesó el proyecto en lo que hace a la adquisición de insumo. \subsubsection{Distribuidor de componentes electrónicos} \label{sec:hw-distribuidor} Existen muchas empresas internacionales que realizan la distribución de componentes electrónicos. Particularmente se optó por aquellas que son proveedoras de las empresas locales que son, \begin{itemize} \item Digi-Key (http://www.digikey.com.ar/) \item Farnell (http://www.farnell.com/) \end{itemize} Debido a la experiencia y facilidades en el soporte comercial, se elige adquirir los componentes a través de \emph{Digi-Key}. Además cuenta con un sistema informático que permite realizar las cotizaciones en linea, lo que resultó importante para la estimación de los gastos en el comienzo del proyecto. \subsubsection{Empresas de trasporte} \label{sec:hw-transporte} Al igual que el proceso de compra de los componentes electrónicos, la contratación de una empresa de transporte fue determinada por referencias tanto de miembros del grupo de investigación y desarrollo donde se lleva adelante el proyecto (CUDAR), como también empresas locales que adquieren componentes en el extranjero. Las principales empresas de transporte son, \begin{itemize} \item FedEx (http://www.fedex.com/ar/) \item UPS (http://www.ups.com/content/ar/es/index.jsx) \end{itemize} Para cualquier de las empresas mencionadas se necesita tener una cuenta de usuario registrado lo que, en principio, parecía ser un inconveniente puedo ser solucionado con la colaboración de un tercero, miembro del CUDAR, que ofreció su cuenta en FedEx para registrar el envío desde la empresa distribuidora de componentes electrónicos (Digi-Key) hasta Córdoba. El costo del envío depende del peso del paquete como así también de sus dimensiones. Además uno puede seleccionar el tiempo que tardará la entrega, obviamente que mientras menos tiempo tarda el envío es más costoso. El tiempo de entrega ha sido importante en el diagrama temporal de actividades, pues hasta que no se tuvo los componentes, se paralizó los trabajos relacionados con el \textsl{hardware}. \subsubsection{Fabricante de PCB} \label{sec:hw-fabricacion-pcb} Los diseños de \textsl{hardware} fueron fabricados en el exterior de país, los factores por influyeron fueron el \textbf{costo} de las placas y el \textbf{tiempo} que le tomaba a las empresas locales en obtener el producto final. Seguramente si los diseños fueran un poco más sencillos se podría realizar en el país, pero debido a las especificaciones tecnológicas de los dispositivos semiconductores utilizados no fue posible, por lo menos con el presupuesto asignado. Hay una gran oferta en la fabricación de \emph{PCB} pero se contaba con una buena experiencia comercial con \emph{PCBWING}\footnote{http://www.pcbwing.com/}, pues ya se habían pedido la fabricación de placas en otros proyectos. Al igual que la empresa distribuidora de componentes electrónicos (\emph{Digi-Key}), \emph{PCBWING} dispone de un sistema informático que presupuesta las posibles órdenes que quiera uno fabricar y se puede realizar el envío por \emph{FedEx}. \subsection{Observaciones} \label{sec:hw-obs} No todo los recursos de \textsl{hardware} fueron adquiridos en el extranjero en forma directa. Los dispositivos comunes se compraron en el país (directamente en Córdoba Capital). Esto permitió que se pudiera agilizar el trámite de facturación, y dicho costos fueron adjudicados a la contra-parte del proyecto (Departamento de Ingeniería Electrónica) \footnote{Universidad Tecnológica Nacional -- Facultad Regional Córdoba}.\\ Al adquirir componentes del extranjero, se tuvo que designar tiempos de ``espera'' hasta la llegada tanto de los componentes electrónicos como las placas (PCB). Es aquí donde resultó de suma utilidad el uso de \textbf{\emph{Diagramas de Gantt}}. El \emph{diagrama de Gantt} es una popular herramienta gráfica cuyo objetivo es mostrar el tiempo de dedicación previsto para diferentes tareas o actividades a lo largo de un tiempo total determinado. A pesar de esto, el diagrama de Gantt no indica las relaciones existentes entre actividades.\\ Los tiempos que requerían los envíos debían ser asignados de forma tal que se pudiera seguir trabajando en el desarrollo del proyectos sin necesitar ninguno de los paquetes pedidos. Un ejemplo de esto se puede ver en la Figura \ref{fig:hw-envio-gantt}, donde se puede ver como se ubicaron las tareas de envíos. \subsubsection{Inconvenientes} \label{sec:hw-obs-problem} Los principales problemas que se presentaron en el proyecto, ajenos a lo meramente técnico, fueron de índole comerciales. Al realizar compra en el exterior se tuvo que contar con cuenta corriente o tarjetas de créditos internacionales. Además de los impuesto de importación, se tuvo que pagar intereses que graban al uso de divisa extranjera. Todos estos costos agregados no fueron considerados a la hora de estimar el gasto total del proyecto.\\ En base a la documentación que ofrece el fabricante de los dispositivos electrónicos principales, se debía cumplir con determinadas especificaciones en el diseño de las placas. Lo que llevó al estudio de nuevas tecnologías, que demandó horas en la búsqueda de complementos de \textsl{software} (por ej.:librerías para KiCAD) como así también recopilación de información por parte de los proveedores de los componentes electrónicos y el fabricante de PCB. \begin{figure}[ht] \centering \includegraphics[width=\textheight,angle=90]{images/PHRboard-gantt} \caption{Diagrama de Gantt para el desarrollo de la placa \emph{PHR}.} \label{fig:hw-envio-gantt} \end{figure} \clearpage{} \section{Software} \label{chap:sw} Los desarrollos y herramientas de \textsl{software} que se integran en el proyecto son complementarios a los recursos de \textsl{hardware}. Se han requerido varios programas informáticos en todo el proceso. Si bien no es el objetivo del presente informe realizar una descripción de cada uno de los \textsl{software} utilizados, resulta necesario hacer una breve descripción de los mismos.\\ \emph{Todas los \textsl{software} utilizados son programas con \textbf{Licencias Libres}. Las motivaciones de esta elección son varias, la más importante es que el proyecto será transferido a una institución académica, por lo que es imprescindible la libertad en el acceso de estas herramientas. El \textbf{Software Libre} le otorga libertades al usuario del programa y no plantea ninguna restricción en el aprendizaje como sí lo hacen los \textsl{software} con licencias privativas.} \subsection{Herramientas utilizadas} \label{sec:herramientas-sw} Las herramientas de \textsl{software} utilizadas para el desarrollo son, \begin{description} \item[Debian] Debian o Proyecto Debian (en inglés \textsl{Debian Project}) es una comunidad conformada por desarrolladores y usuarios, que mantiene un sistema operativo GNU basado en \textsl{software} libre. El sistema se encuentra precompilado, empaquetado y en un formato deb para múltiples arquitecturas de computador y para varios núcleos. \item[KiCAD] KiCad es un entorno de \textsl{software} usado para el diseño de circuitos eléctricos, muy flexible y adaptable, en el que se pueden crear y editar un gran número de componentes y usarlos en Eeschema. KiCad permite el diseño de circuitos impresos modernos de forma sencilla e intuitiva. Además, en Pcbnew, los circuitos se pueden diseñar con múltiples capas y ser visualizados en 3D. \item[Emacs] Emacs es un editor de texto con una gran cantidad de funciones, muy popular entre programadores y usuarios técnicos. Gnu Emacs es obviamente parte del proyecto GNU y la versión más popular de Emacs con una gran actividad en su desarrollo. El manual de GNU Emacs lo describe como "un editor extensible, personalizable, auto-documentado y de tiempo real." \item[subversion] Subversion (SVN) es un sistema de control de versiones diseñado específicamente para reemplazar al popular CVS. Es \textsl{software} libre bajo una licencia de tipo Apache/BSD y se le conoce también como svn por ser el nombre de la herramienta utilizada en la línea de comando. \item[OpenCores] OpenCores es la comunidad más grande del mundo de \textsl{hardware open source} de desarrollo digital a través de herramientas EDA (\textsl{Electronic Design Automation}). \item[\LaTeX] \LaTeX es un sistema de composición de textos, orientado especialmente a la creación de libros, documentos científicos y técnicos que contengan fórmulas matemáticas. \item[Inkscape] Inkscape es un editor de gráficos en formato vectoriales SVG, gratuito, libre y multiplataforma. Las características de SVG soportadas incluyen formas básicas, trayectorias, texto, canal alfa, transformaciones, gradientes, edición de nodos, exportación de SVG a PNG, agrupación de elementos, etc. \item[LibreOffice] LibreOffice es una suite ofimática libre y de código abierto desarrollada por \textsl{The Document Foundation}. Se creó como bifurcación de OpenOffice.org en 2010. \item[Bash] Bash (\textsl{Bourne again shell}) es un programa informático cuya función consiste en interpretar órdenes. \end{description} Los \textsl{software} anteriormente enunciados representan la mayoría de los utilizados en el proyecto. Existen otros \textsl{software} específicos, con diferentes lenguajes, que no se describen. \subsection{Desarrollo de \textsl{Scripts}} \label{sec:scripts-sw} La sección \ref{sec:herramientas-sw} hace referencia a las herramientas utilizadas. En la presente sección se describe la función que cumple la generación de código de programa necesarios para acceder al \textsl{hardware}. Estos código de programa, también se los llama \textsl{scripts}. Los \textsl{scripts} se refieren a un grupo de texto en un determinado orden que son interpretados por un programa para ser procesados. En nuestro caso, los programas que se utilizan son \textbf{\emph{OpenOCD} y \emph{xc3sprog}}. La Figura \ref{fig:scripts-diagrama} representa la vinculación entre los recursos de \textsl{Software} y \textsl{Hardware}. \begin{figure}[h] \centering \includegraphics[width=0.7\textwidth]{images/software_ciclo} \caption{Diagrama en bloque de la conexión entre el \textsl{Software} y el \textsl{Hardware}.} \label{fig:scripts-diagrama} \end{figure} La estructura de los \textsl{scripts} son definidos por el \textsl{software} con el cual procesar (\emph{OpenOCD} o \emph{xc3sprog}). Se dispone de gran información sobre estos programas en los sitios web oficiales como así también en listas de correos que se conforma por usuarios y desarrolladores de los \textsl{software}. En el \emph{Manual de Usuario} se describen la forma en que se utilizan los programas. \subsection{Repositorio del proyecto} \label{sec:sw-repo} Para llevar adelante un proyecto de desarrollo de \emph{hardware/software} (HW/SW), es sumamente importante disponer de un repositorio donde alojar toda la información. De forma que uno pueda acceder a ellos en forma segura y sin pérdidas de información. Además contar con la posibilidad de que se lleve un registro de los cambios que se vayan realizando sobre cada archivo. En nuestro caso se utiliza un repositorio \emph{SVN} que se encuentra alojado en los servidores de \emph{OpenCores}\footnote{http://opencores.org/project,phr}.\\ Existen muchos sitios en la red que ofrecen este tipo de servicios informáticos, tanto gratis como pagos. Una gran parte de los sitios que dan alojamiento a proyectos en forma gratuita son sustentados por empresas tecnológicas y aportes voluntarios de la comunidad. Además cada sitio tiene diferentes requerimientos para dar alojamiento a un nuevo proyecto (por ejemplo: tipo de licencia, tamaño de archivos, etc.). Como se ha dicho antes en la Sección \ref{sec:herramientas-sw}, OpenCores es uno de los sitios web que hospeda a una gran cantidad de proyectos de HW/SW abiertos de todo el mundo. Otros sitios interesantes donde disponen de infraestructura para alojar proyectos abiertos son, \begin{itemize} \item SourceForge (https://sourceforge.net/) \item GitHub (https://github.com/) \item CodeGoogle (http://code.google.com/) \end{itemize} \subsection{Observaciones} \label{sec:sw-obs} Los programas que se utilizan para interactuar con el \textsl{hardware}, \emph{OpenOCD} y \emph{xc3sprog}, no disponen de un entorno gráfico. La forma en que se manipulan es mediante lineas de comando \emph{Bash}. Esto no genera imposibilidades alguna al usuario, pero sí la implementación de un entorno gráfico podría ayudar o facilitar su uso (por ejemplo: con el empleo de botones, visualización del estado del \textsl{hardware}, etc.).\\ Otra observación que se documenta es la posibilidad de integrar las herramientas del fabricante del dispositivo a programar, en nuestro caso Xilinx Inc., con las herramientas que disponemos (\emph{OpenOCD} y \emph{xc3sprog}). El ciclo completo por parte de los usuarios del proyecto arranca con el diseño de un circuito con un lenguaje de programación descriptivo (VHDL o Verilog), luego se sintetiza con una herramienta del fabricante del dispositivo y luego con el archivo que genera se lo debe cargar al \textsl{hardware}. Estos últimos pasos podrían realizarse con nuevos \textsl{scripts} que se agregan a los ya utilizados. \section{Transferencia} \label{sec:transferencia} Todo el desarrollo se transfiere al \emph{Laboratorio de Técnicas Digitales e Informática} (LTDI). El LTDI es un organismo que responde al Departamento de Ingeniería Electrónica, el cual ofrecer recursos físicos en la realización de prácticos que se desarrollan a lo largo de la carrera de Ingeniería Electrónica. Además cuenta con personal calificado en el área de la informática que ofrece el asesoramiento a los estudiantes como también realiza mantenimiento de dicho laboratorio. Sus principales recursos físicos son computadoras, instrumentos electrónicos y plataformas de desarrollo para sistemas digitales. La mayoría de estas plataformas fueron adquiridas en el extranjero con un alto costo de importación y debido a los precios que los mismos tienen, se cuentan con un número reducido.\\ En la sección \ref{sec:sw-repo} se comento que el proyecto se encuentra alojado en \emph{OpenCores}, donde cualquiera puede acceder al desarrollo. Lo que asegura el acceso y la transfernecia de toda la documentación. Los recursos físicos que serán transferido al Laboratorio serán, \begin{itemize} \item Placa PHR \item Placa S3Power \item Placa OOCDLink \item Conectores JTAG y Alimentación \item Manual de Usuario \end{itemize} Como documentación válida para la evaluación final por parte de ADEC, el LTDI y el Departamento de Ingeniería Electrónica expiden un documento donde describen la recepción del proyecto como así también las condiciones en las que se transfieren sus partes. Además de una nota con sus respectivas observaciones sobre este tipo de convenios entre el área de la industria y las instituciones académicas. \section{Conclusiones} \label{chap:conclusiones} La tecnología de los sistemas electrónicos dan pasos agigantados, por lo que las Instituciones Académicas deben constantemente ir en búsqueda de nuevas técnicas y herramientas que permitan a los Estudiantes no sufrir la falta de capacidades a la hora de insertarse en el ámbito laboral.\\ Si bien el proceso de actualización en los contenidos en los programas universitarios no se corresponden con la avance tecnológico, es responsabilidad tanto de los Docentes como los Estudiantes no limitarse y salir en búsqueda de conocimientos.\\ El proyecto \textbf{\emph{Plataforma de hardware reconfigurable en diseño de sistemas electrónicos}} ha sido motivado por la demanda de una actualización en los recursos tecnológicos que son utilizados para el dictado de las clases de los últimos niveles de las Cátedras de la Carrera Ingeniería Electrónica. Se logró cumplir con los objetivos propuestos en un principio. Actualmente no se encuentra limitaciones en la posibilidad de acceder a las nuevas tecnologías, quizá los limites son económicos pero no más que eso. Con iniciativas propias (por parte de alumnos y docentes), y la búsqueda de organismos impulsores de proyectos nuevos, es posible lograr desarrollos de gran aporte territorial tanto regional como internacional.\\ \emph{Por último se agradece a la \textbf{Agencia para el Desarrollo Económico de la ciudad de Córdoba} (ADEC)\footnote{http://www.adec.org.ar/} por su apoyo tanto económico como el asesoramiento en proceso de desarrollo del proyecto. El programa articulado por ADEC, ``Córdoba Innovadora -- Programa de Desarrollo Territorial del Área Metropolitana de Córdoba'' permite la vinculación entre sectores estratégicos (Universidad -- Industria), y es quizá la motivación más grande que se tuvo a la hora de la postulación del proyecto}. \clearpage{} \appendix{} \section{Colaboración} \label{sec:app-participacion} En la Sección \ref{sec:hw-obs-problem} se comentó sobre los problemas que se presentaron en la disponibilidad de medios de pago para la compra en el extranjero. Aquí se detalla quienes colaboraron en la transacciones financieras. Algunas de las facturas se encuentran al nombre de \emph{Sergio Daniel OLMEDO} y \emph{Federico Nicolas PAREDES}, quienes son docentes investigadores del centro (CUDAR). Por cualquier información requerida por los evaluadores, los anteriormente nombrados están a disposición en el caso de requerir alguna documentación anexa. \section{Agradecimiento} \label{sec:app-agradecimiento} Son varias las personas que colaboraron con el proyecto en las diferentes fases. Además de las comunidades del \textsl{software} que dieron soporte en el proyecto en forma indirecta. \begin{itemize} \item Universidad Tecnológica Nacional -- Facultad Regional Córdoba \begin{itemize} \item Candiani Carlos \item Cavallero Rodolfo \item Cayuela Pablo \item Gonzalez Eduardo \item Olmedo Sergio \item Paredes Federico \end{itemize} \item Agencia para el Desarrollo Económico de la ciudad de Córdoba \begin{itemize} \item Gallo Humberto \item Pellicci Jorge \end{itemize} \item Comunidades de \textsl{hardware} y \textsl{software} Libres \begin{itemize} \item OpenOCD \item xc3sprog \item FpgaLibre \item KiCAD \end{itemize} \end{itemize} \end{document}
Go to most recent revision | Compare with Previous | Blame | View Log