1
0
mirror of git://projects.qi-hardware.com/nn-usb-fpga.git synced 2025-01-10 09:00:16 +02:00
nn-usb-fpga/course/.docs/cambio_categoria/introduction.tex.backup

47 lines
8.4 KiB
Plaintext
Raw Normal View History

2010-09-13 03:57:04 +03:00
\chapter{Introducci<63>n}
La industria de los semiconductores ha crecido velozmente durante los <20>ltimos a<>os, su campo de acci<63>n se ha extendido a casi todas las actividades del ser humano (Entretenimiento, salud, seguridad, transporte, educaci<63>n, etc); los tiempos de los procesos de dise<73>o son cada vez mas cortos, lo cual require herramientas Hardware, Software y metodolog<6F>as de dise<73>o que ayuden a cumplir con las exigencias impuestas al sistema.
Esta \textit{invasi<73>n} digital ha sido posible gracias a la industria de los semiconductores y a las empresas desarrolladoras de software, las primeras haciendo uso de un alt<6C>simo grado de integraci<63>n ponen a disposici<63>n de los dise<73>adores \textit{Systems On Chip} (SoC) en los cuales se integran procesadores de 32 bits con una gran variedad de perif<69>ricos tales como: Controladores de dispositivos de red (cableada e inal<61>mbricos), controladores de video, procesadores aritm<74>ticos, controladores de memorias (Flash, SDRAM, DDR, USB, SD), codecs de audio, controladores de touch screen, etc; lo cual permite la implementaci<63>n de aplicaciones completas dentro de uno de estos SoCs.
Por otro lado, las empresas desarrolladoras de SW crean herramientas de programaci<63>n que permiten manejar toda la capacidad de estos SoCs. colocando a disposici<63>n de los dise<73>adores: compiladores, simuladores, emuladores, librer<65>as, Sistemas Operativos y drivers. Lo cual permite realizar desarrollos complejos en tiempos cortos.
En la actualidad existe un gran n<>mero de sistemas operativos (OS) disponibles tanto comerciales como \textit{open source}. La figura \ref{os} muestra la utilizaci<63>n actual de OS comerciales en aplicaciones embebidas; si sumamos los sistemas operativos basados en linux se obtiene un valor del 19.3 \% lo cual hace ganador al sistema operativo de libre distribuci<63>n \cite{CLSB05}. La figura \ref{os2} muestra un cuadro comparativo de la utilizaci<63>n de herramientas comerciales y linux; de nuevo se observa que linux es el preferido por los dise<73>adores. Este resultado es interesante ya que uno de los supuestos puntos d<>biles del software de libre distribuci<63>n es el soporte, lo cual no lo hace tan agradable a la hora de realizar aplicaciones comerciales, sin embargo, esto es solo un mito, ya que gracias a que el c<>digo fuente est<73> disponible, es posible comprender perfectamente su funcionamiento, lo cual no sucede con el software comercial; adem<65>s, existen muchos foros de dise<73>adores y desarrolladores que se encargan de responder las inquietudes, estos foros almacenan todos los mensajes recibidos e incluyen herramientas de b<>squeda para poder consultarlos, por regla general de estos foros, se debe buscar primero en estos archivos hist<73>ricos, muy seguramente alguien m<>s pregunt<6E> lo mismo antes que nosotros.
El caracter gratutito de las herramientas de libre distribuci<63>n no significa, ni mucho menos, mala calidad, todo lo contrario, existen muchas personas que escudri<72>an su c<>digo fuente en b<>squeda de posibles errores, y realizan cambios con el f<>n de eliminarlo; por lo tanto, se cuenta con miles de personas que est<73>n constantemente depurando y perfeccionando una determinada aplicaci<63>n; esto no ocurre con el software comercial, normalmente el soporte hay que pagarlo y las perosnas involucradas en el desarrollo no son tantas como las que tienen acceso al c<>digo fuente del software libre. Por esta raz<61>n empresas como PALM, han dejado de lado productos propietarios como el PALM OS para utilizar linux, SUN Microsystems, liber<65> el c<>digo fuente de su sistema operativo Solaris, ya que no era comparable con linux y est<73> en el proceso de liberar uno de sus procesadores.
\begin{figure}[h]
\begin{center} \includegraphics[scale=.45, angle=90]{./images/Current_OS} \end{center}
\caption{Utilizaci<63>n actual de OS para aplicaciones embebidas: Fuente \cite{JT04}.}\label{os}
\end{figure}
\begin{figure}
\begin{center} \includegraphics[scale=1]{./images/OS_embedded} \end{center}
\caption{Utilizaci<63>n actual de OS para aplicaciones embebidas: Fuente http://www.linuxdevices.com/articles/AT7070519787.html.}\label{os2}
\end{figure}
De lo anterior se deduce que el mundo de los sistemas digitales ha cambiado en forma considerable, y que en la actualidad existen grandes facilidades para el desarrollo de productos de forma r<>pida y econ<6F>mica \footnote{En la actualidad cerca del 60\% de los ingenieros trabajan en compa<70><61>as con menos de 10 desarrolladores de SW \cite{VDC06}}. Desafortunadamente estas tendencias no se han aplicado a<>n en Colombia; existen varias razones para esto:
\begin{enumerate}
\item Desactualizaci<63>n de los programas aced<65>micos: En muchas de las Universidades de Colombia se utilizan tecnolog<6F>as obsoletas que impiden la aplicaci<63>n de metodolog<6F>as de dise<73>o modernas adem<65>s de impedir el desarrollo de aplicaciones comerciales, un ejemplo de este tipo de tecnolog<6F>as es la l<>gica TTL (74XX) y sus equivalentes en CMOS. Aunque vale la pena aclarar que este tipo de tecnolog<6F>a es <20>til a la hora de ense<73>ar conceptos b<>sicos, no puede ser utilizada como <20>nica herramienta de implementaci<63>n. Un ejemplo de desactualizaci<63>n de metodolog<6F>as de dise<73>o lo encontramos en las herramientas de programaci<63>n para microcontroladores, una gran cantidad de Universidades utilizan lenguaje ensamblador, lo cual impide la re-utilizaci<63>n de c<>digo y crea dependencias con el HW utilizado.
\item Falta de inter<65>s de la Industria: Un gran porcentaje de la industria Colombiana es consumidora de tecnolog<6F>a, es decir, no generan sus propias soluciones, no cuentan con departamentos de Investigaci<63>n y Desarrollo; esto se debe a la falta de confianza en los productos nacionales y en algunos casos a la inexistencia de producci<63>n nacional. Por otro lado, la cooperaci<63>n entre la Universidad y la industria es muy reducida, debido a falta de pol<6F>ticas en las Universidades que regulen esta actividad y a la poca inversi<73>n por parte de las empresas.
\item Pol<6F>ticas del Estado: Casi la totalidad de estos nuevos dispositivos semiconductores deben ser importados, ya que en Colombia no existen distribuidores, por lo tanto, es necesario pagar una serie de impuestos que no desalientan su utilizaci<63>n, estos impuestos est<73>n por el orden del 26\% del valor del producto. Por otro lado la apertura econ<6F>mica permite que ingresen productos a bajo precio, con los que no pueden competir los pocos productos desarrollados en el pais, eso sumado a la falta de protecci<63>n por parte de las pol<6F>ticas estatales condena a los desarrolladores de estos sistemas a la quiebra econ<6F>mica.
\end{enumerate}
Este proyecto resume el trabajo realizado durante los <20>ltimos cuatro a<>os en el <20>rea de la electr<74>nica digital y m<>s exactamente en el estudio de las metodolog<6F>as de dise<73>o modernas con aplicaciones comerciales y es presentado para cumplir parcialmente los requisitos de cambio de categor<6F>a de profesor asistente a asociado. El presente informe est<73> dividido de la siguiente forma:
\begin{itemize}
\item En el cap<61>tulo 1 se realiza una breve descripci<63>n de los sistemas embebidos, se enumeran sus caracter<65>sticas, aplicaciones y se hace una descripci<63>n de las herramientas HW y SW necesarias para el dise<73>o de los mismos. En los cap<61>tulos siguientes se desarrollan casos de estudio encaminados a la comprensi<73>n de estos sistemas:
\item En el cap<61>tulo dos se trabaja con una plataforma comercial de bajo costo: El GameBoy de Nintendo, (gracias a los elevados vol<6F>menes de producci<63>n el costo de este dispositivo es bajo alrededor de 40 USD) esta plataforma nos permite desarrollar conceptos b<>sicos como la compilaci<63>n cruzada, la interfaz HW-SW y los sistemas operativos.
\item En el cap<61>tulo tres se muestra la implementaci<63>n de la primera plataforma de desarrollo para sistemas embebidos dise<73>ada en la Universidad Nacional, a pesar de ser muy sencilla permite dar un gran paso en el proceso de fabricaci<63>n de este tipo de dispositivos.
\item En el cap<61>tulo cuatro se realiza la implementci<63>n de una plataforma de desarrollo que utiliza el sistema operativo linux sobre un arreglo de compuertas programable en campo (FPGA) y se muestran los resultados de una aplicaci<63>n en el <20>rea del Hardware Reconfigurable.
\item El cap<61>tulo cinco es una gu<67>a de adaptaci<63>n del sistema operativo linux para una arquitectura ARM.
\end{itemize}
Por <20>ltimo se muestra como algunos de los resultados de este estudio han sido introducidos a los cursos del <20>rea de los sistemas digitales en la Universidad Nacional de Colombia y como se ha realizado su difusi<73>n en otras Universidades de Colombia.