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

Subversion Repositories phr

[/] [phr/] [trunk/] [doc/] [informe-tesis/] [phd-thesis-template-master/] [ProyectoPHR/] [ProyectoPHR.tex] - Blame information for rev 281

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

Line No. Rev Author Line
1 136 guanucolui
 
2
\chapter{El proyecto PHR}
3
\label{chap:proy-phr}
4
 
5 273 guanucolui
\ifpdf
6
    \graphicspath{{ProyectoPHR/Figs/Raster/}{ProyectoPHR/Figs/PDF/}{ProyectoPHR/Figs/}}
7
\else
8
    \graphicspath{{ProyectoPHR/Figs/Vector/}{ProyectoPHR/Figs/}}
9
\fi
10
 
11
En la actualidad todos los desarrollos en recursos físicos basados en dispositivos lógicos programables son de origen extranjero. Se puede encontrar desarrollos nacionales pero estos no son comercializados por ningún emprendimiento local. Esta situación no es necesariamente por falta de recursos humanos calificados, sino por la demanda de la industria nacional. De todas formas el proyecto \emph{Plataforma de Hardware Reconfigurable} pretende abrir camino hacia el desarrollo de plataformas educativas que permitan la difusión del diseño digital utilizando estos dispositivos PLDs.
12
 
13
Los desarrolladores de este proyecto, la mayoría de ellos miembros investigadores del CUDAR\footnote{Centro Universitario de Desarrollo en Automoción y Robótica -- Universidad Tecnológica Nacional - Facultad Regional Córdoba.}, cuentan con experiencia en el manejo de plataformas evaluadoras basadas en CPLDs/FPGAs. Además, como se describió en el Capítulo \ref{chap:antecedentes}, el Centro tiene antecedentes en el desarrollo de plataformas educativas y la transferencia de recursos físicos a Laboratorios e Instituciones Académicas.
14
 
15 280 guanucolui
\section{Desarrollos comerciales}
16 136 guanucolui
\label{sec:desa-referencia}
17
 
18 273 guanucolui
En el mercado internacional existen varias empresas desarrolladoras de plataformas evaluadoras con dispositivos PLDs. Las principales empresas fabricantes de sistemas embebidos basados en dispositivos PLDs son Xilinx, Altera y Digilent. Estos fabricantes desarrollan plataformas para determinados perfiles de usuarios. En la Sección \ref{sec:infl-program} se realiza un análisis sobre la importancia de la flexibilidad que presentan los dispositivos programables como las FPGAs, y esta posibilidad de reconfigurar su arquitectura permite implementar esta tecnología en diferentes aplicaciones. Las líneas de desarrollo más destacadas son,
19
 
20
\begin{itemize}
21
\item Sistemas de comunicaciones digitales
22
\item Procesamiento de Señales Digitales (DSP)
23
\item Automoción
24
\end{itemize}
25
 
26 276 guanucolui
A continuación se describe algunas de los desarrollos fabricados por las empresas anteriormente nombradas. De esta manera se pretende dilucidar los perfiles de plataformas y lo que se ofrece en el mercado.
27 273 guanucolui
 
28 276 guanucolui
\subsection{Xilinx Spartan-6 FPGA LX9 MicroBoard}
29
\label{sec:placa-xilinx-avnet}
30 273 guanucolui
 
31 276 guanucolui
La plataforma \emph{Spartan-6 FPGA LX9 MicroBoard} ofrece un completo entorno de \textsl{hardware} para que los diseñadores aceleren su tiempo de desarrollo y comercialización. Este kit presenta una estable plataforma para desarrollar y testear diseños de bajo costo/consumo de potencia sobre la familia de FPGA Xilinx Spartan-6. Esta placa contiene las siguientes características\footnote{La características se las describe tal cual las hojas de datos publicadas por los fabricantes, con su idioma original.}.
32
 
33
\begin{itemize}
34
\item FPGA
35
  \begin{itemize}
36
  \item Xilinx Spartan-6 XC6SLX9-2CSG324C FPGA
37
  \end{itemize}
38
\item Clocks
39
  \begin{itemize}
40
  \item Triple output, user programmable, Texas Instruments CDCE913 clock
41
  \item  Optional user installable Maxim DS1088LU-66+, low-cost, fixed-frequency oscillator
42
  \end{itemize}
43
\item Memory
44
  \begin{itemize}
45
  \item  32 Mb x 16 (512 Mb) Micron LPDDR Mobile SDRAM component.
46
  \item  128 Mb Micron Multi-I/O SPI Flash
47
  \end{itemize}
48
\item Communication
49
  \begin{itemize}
50
  \item  One USB 2.0, Full Speed USB-to- JTAG bridge via Atmel AT90USB162, Digilent JTAG firmware, and Tyco USB-A connector
51
  \item  One USB 2.0, Full Speed USB-to-UART bridge via Silicon Labs CP2102 and Tyco Micro-B connector.
52
  \item  One 10/100 Ethernet port via National Semiconductor DP83848J PHY and Tyco RJ45 connector with Integrated Magnetics.
53
  \end{itemize}
54
\item User I/O and Expansion Connectors
55
  \begin{itemize}
56
  \item Two Digilent 12-pin, 0.245mm pitch, Peripheral Module (PMOD) headers support 3rd party expansion modules.
57
  \end{itemize}
58
\item User Interfaces
59
  \begin{itemize}
60
  \item  Four user LEDs
61
  \item  Four configurable FPGA user DIP switches
62
  \item  Two system push-button switches: one tied to user I/O and used for logical reset in the factory test image, one hardwired for FPGA program initialization.
63
  \end{itemize}
64
\item Power
65
  \begin{itemize}
66
  \item  Texas Instruments TPS65708 PMU multi-channel regulator, with 5V input supplied by either USB connection.
67
  \end{itemize}
68
\item Configuration
69
  \begin{itemize}
70
  \item  128Mb SPI Configuration Flash
71
  \item  On-board USB Programming/Configuration based on the Digilent USB Full Speed JTAG design utilizing the Atmel AT90USB162
72
  \item  Xilinx Compatible JTAG Cable
73
  \end{itemize}
74
\end{itemize}
75
 
76
\begin{figure}
77
  \centering
78
  \includegraphics[width=0.5\textwidth]{AES-S6MB-LX9}
79
  \caption{Placa Xilinx Spartan-6 FPGA LX9 MicroBoard.}
80
  \label{fig:xilinx-avnet-lx9}
81
\end{figure}
82
 
83
\subsection{Altera DE0-Nano}
84
\label{sec:altera-de0-nano}
85
 
86
La placa \emph{DE0-Nano} presenta una plataforma de desarrollo FPGA en un tamaño compacto adecuado para un gran rango de diseños portables, tales como robótica y móviles. EL DE0-Nano es ideal para usar con \textsl{soft processors} embebidos. Esto se debe a las potentes características que presenta con la FPGA Altera Cyclone IV (con 22,230 celdas lógicas), 32MB de SDRAM, 2 Kb de EEPROM, y un dispositivo de memoria de configuración serial de 64Mb. En fin, es un desarrollo completo con todos los recursos físicos necesarios para la evaluación y prueba de sistemas embebidos. A continuación se listan lo que ofrece esta plataforma.
87
 
88
\begin{itemize}
89
\item Featured device
90
  \begin{itemize}
91
  \item Altera Cyclone® IV EP4CE22F17C6N FPGA
92
  \item 153 maximum FPGA I/O pins
93
\end{itemize}
94
\item Configuration status and set-up elements
95
  \begin{itemize}
96
  \item On-board USB-Blaster circuit for programming
97
  \item Spansion EPCS64
98
  \end{itemize}
99
\item Expansion header
100
  \begin{itemize}
101
  \item Two 40-pin Headers (GPIOs) provide 72 I/O pins, 5V power pins, two 3.3V power pins and four ground pins
102
  \end{itemize}
103
\item Memory devices
104
  \begin{itemize}
105
  \item 32MB SDRAM
106
  \item 2Kb I2C EEPROM
107
  \end{itemize}
108
\item General user input/output
109
  \begin{itemize}
110
  \item 8 green LEDs
111
  \item 2 debounced pushbuttons
112
  \item 4-position DIP switch
113
  \end{itemize}
114
\item G-Sensor
115
  \begin{itemize}
116
  \item ADI ADXL345, 3-axis accelerometer with high resolution (13-bit)
117
  \end{itemize}
118
\item A/D Converter
119
  \begin{itemize}
120
  \item NS ADC128S022, 8-Channel, 12-bit A/D Converter
121
  \item 50 Ksps to 200 Ksps
122
  \end{itemize}
123
\item Clock system
124
  \begin{itemize}
125
  \item On-board 50MHz clock oscillator
126
  \end{itemize}
127
\item Power Supply
128
  \begin{itemize}
129
  \item USB Type mini-AB port (5V)
130
  \item DC 5V pin for each GPIO header (2 DC 5V pins)
131
  \item 2-pin external power header (3.6-5.7V)
132
  \end{itemize}
133
\end{itemize}
134
 
135
\begin{figure}
136
  \centering
137
  \includegraphics[width=0.5\textwidth]{de0-nano}
138
  \caption{Placa DE0-Nano.}
139
  \label{fig:altera-de0-nano}
140
\end{figure}
141
 
142
 
143
\subsection{Digilent Spartan-3 Board}
144
\label{sec:digilent-spartan3-board}
145
 
146 280 guanucolui
La placa \emph{Spartan-3 Starter Board} proporciona una potente y autónoma plataforma de desarrollo para diseños basados en la FPGA Spartan-3 de Xilinx. Ésta cuenta con 200K compuertas, dispositivos de entrada y salidas, y una memoria SRAM rápida de 1MB; haciendo esta una perfecta plataforma para experimentar con diferentes diseños desde simples circuitos lógicos a implementación de procesadores embebidos. La placa también contiene un dispositivo PROM programable por JTAG, por lo que los diseños puede fácilmente ser no volátiles. Las características de esta plataforma se describen a continuación.
147 276 guanucolui
 
148 280 guanucolui
\begin{itemize}
149 276 guanucolui
 
150 280 guanucolui
\item 200,000-gate Xilinx Spartan-3 XC3S200 FPGA in a 256-ball thin Ball Grid Array package (XC3S200FT256)
151
  \begin{itemize}
152
    \item 4,320 logic cell equivalents
153
    \item Twelve 18K-bit block RAMs (216K bits)
154
    \item Twelve 18x18 hardware multipliers
155
    \item Four Digital Clock Managers (DCMs)
156
    \item Up to 173 user-defined I/O signals
157
  \end{itemize}
158 276 guanucolui
 
159 280 guanucolui
\item 2Mbit Xilinx XCF02S Platform Flash, in-system programmable configuration PROM
160
\item   1Mbit non-volatile data or application code storage available after FPGA configuration
161 276 guanucolui
 
162 280 guanucolui
\item 1M-byte of Fast Asynchronous SRAM
163
  \begin{itemize}
164
  \item   Two 256Kx16 ISSI IS61LV25616AL-10T 10 ns SRAMs
165
  \item   Configurable memory architecture
166
    \begin{itemize}
167
    \item Single 256Kx32 SRAM array, ideal for MicroBlaze code images
168
    \item Two independent 256Kx16 SRAM arrays
169
    \end{itemize}
170
  \item   Individual chip select per device
171
  \item   Individual byte enables
172
  \end{itemize}
173 276 guanucolui
 
174 280 guanucolui
\item 3-bit, 8-color VGA display port
175 276 guanucolui
 
176 280 guanucolui
\item 9-pin RS-232 Serial Port
177
  \begin{itemize}
178
  \item   DB9 9-pin female connector (DCE connector)
179
  \item   RS-232 transceiver/level translator
180
  \item   Uses straight-through serial cable to connect to computer or workstation serial port
181
  \item   Second RS-232 transmit and receive channel available on board test points
182
  \end{itemize}
183
 
184
\item PS/2-style mouse/keyboard port
185
\item Four-character, seven-segment LED display
186
\item Eight slide switches
187
\item Eight individual LED outputs
188
\item Four momentary-contact push button switches
189
\item 50 MHz crystal oscillator clock source
190
\item Socket for an auxiliary crystal oscillator clock source
191
\item FPGA configuration mode selected via jumper settings
192
\item Push button switch to force FPGA reconfiguration (FPGA configuration happens automatically at power-on)
193
\item LED indicates when FPGA is successfully configured
194
 
195
\item Three 40-pin expansion connection ports to extend and enhance the Spartan-3 Starter Kit Board
196
  \begin{itemize}
197
  \item   See www.xilinx.com/s3boards for compatible expansion cards
198
  \item   Compatible with Digilent, Inc. peripheral boards
199
  \item   FPGA serial configuration interface signals available on the A2 and B1 connectors
200
    \begin{itemize}
201
    \item   PROG\_B, DONE, INIT\_B, CCLK, DONE
202
    \end{itemize}
203
  \end{itemize}
204
 
205
\item JTAG port      for low-cost download cable
206
\item Digilent JTAG download/debugging cable connects to PC parallel port
207
\item JTAG download/debug port compatible with the Xilinx Parallel Cable IV and MultiPRO Desktop Tool
208
\item AC power adapter input for included international unregulated +5V power supply
209
\item Power-on indicator LED
210
\item On-board 3.3V, 2.5V, and 1.2V regulators
211
\end{itemize}
212
 
213
\begin{figure}
214
  \centering
215
  \includegraphics[width=0.5\textwidth]{S3BOARD-top}
216
  \caption{Placa S3BOARD.}
217
  \label{fig:digilent-s3board}
218
\end{figure}
219
 
220
Todos los desarrollos anteriormente vistos, como se mencionó al comienzo de este Capítulo, son manufacturados en el exterior del país. Los requerimientos tecnológicos para poder lograr estos productos son complejos pero no necesariamente alejado a la realidad de nuestra región. En el país se tiene algunas experiencias de plataformas basadas en FPGA.
221
 
222
\section{Desarrollos nacionales}
223
\label{sec:desarrollos-nacionales}
224
 
225
En nuestra región las tecnologías PLD se encuentran integradas en varias líneas de investigación y desarrollos hace algunos años. Instituciones gubernamentales de defensa como es el \emph{Instituto de Investigación Científica y Técnicas para la Defensa} que en una de sus líneas de desarrollo implementa algunos sistemas electrónicos de adquisición de datos controlados con FPGA. Así también otros organismos vinculados al área aeroespaciales y comunicaciones como la \emph{Comisión Nacional de Actividades Espaciales} están implementando dispositivos como FPGAs y CPLDs en sus sistemas electrónicos. Además existe una constante actualización por parte de las instituciones académicas en los programas analíticos de las carreras relacionadas a los sistemas embebidos. El Instituto Nacional de Tecnología Industrial impulsa un proyecto denominado \emph{FPGALibre}. Este proyecto busca desarrollar y brindar herramientas de \textsl{software} libre y diseños de \textsl{hardware} abiertos para trabajar con tecnologías FPGA.
226
 
227
\subsection{S2PROTO}
228
\label{sec:s2proto}
229
 
230
Desarrollado por el \emph{Instituto Nacional de Tecnología Industrial} (INTI), el S2PROTO es el resultado de un laboratorio de \emph{Software Libre} de dicha organización estatal. La \emph{Unidad Técnica en Informática y Control} (UTIC) sostiene un proyecto libre llamado FPGALibre que alberga a desarrolladores que tengan intensiones de compartir sus proyectos basados en PLDs.
231
 
232
\begin{figure}
233
  \centering
234
  \includegraphics[width=0.5\textwidth]{S2PROTO}
235
  \caption{Placa S2PROTO.}
236
  \label{fig:inti-s2proto}
237
\end{figure}
238
 
239
Algunas de las principales características del circuito son,
240
\begin{itemize}
241
\item Diseño brindado bajo licencia GPL para permitir su libre utilización, implementación, modificación y comercialización.
242
\item Diseño ensamblado y probado.
243
\item Desarrollado y probado con herramientas de software libre: Kicad y GNU jtag.
244
\item Impreso doble faz de 12x10 cm de fácil fabricación en el país y posibilidad de montaje manual de los componentes.
245
\item Soporte para dispositivos Xilinx Spartan II PQ208 (hasta XC2S150 equivalente a 150.000 compuertas).
246
\item Puerto de niveles RS-232 para implementar transmisión y recepción serie.
247
\item Puerto JTAG compatible con el cable Parallel III de Xilinx, también conocido como DLC5. Circuito realizado en Kicad, y también disponible en el proyecto FPGA Libre.
248
\item 152 pines de I/O disponibles para el usuario, distribuidos en cinco conectores. Estos permiten conectar plaquetas adicionales con pulsadores, leds, displays, etc.
249
\item Conector USB tipo B y driver para soportar niveles estándares USB.
250
\item Alimentación simple de 5 V CC.
251
\end{itemize}
252
 
253
\subsection{S3PROTO-MINI}
254
\label{sec:s3proto-mini}
255
 
256
Continuando con las ideas abordadas en la S2PROTO se encaró un proyecto con Spartan-3 y encapsulado BGA. El primer resultado es la S3PROTO-MINI.
257
 
258
La tarjeta S3PROTO-MINI es una plataforma básica y simple de hardware libre para desarrollo con FPGA. Posee un dispositivo Xilinx Spartan 3E (XC3S1600E) con encapsulado BGA de 320 pads. Utiliza el módulo de alimentación triple S3Proto, también disponible como hardware libre.
259
 
260
\begin{figure}
261
  \centering
262
  \includegraphics[width=0.5\textwidth]{S3PROTO-MINI}
263
  \caption{Placa S3PROTO-MINI.}
264
  \label{fig:inti-s2proto-mini}
265
\end{figure}
266
 
267
Las principales características de esta plataforma son,
268
\begin{itemize}
269
\item Dispositivo FPGA Xilinx Spartan 3E (XC3S1600E) de 33.192 celdas lógicas.
270
\item 2 Memorias de configuración XCF04S (4+4 Mbit).
271
\item USB Transceiver TUSB1106 de 12 Mb/s (Full Speed) con conector tipo B.
272
\item 2 Puertos seriales RS232 de hasta 300Kbps (ST3232). Uno con conector DB-9.
273
\item 4 Pulsadores.
274
\item 5 Dip switch.
275
\item 4 LEDs.
276
\item 1 Puerto JTAG.
277
\item 26 Pines de I/O.
278
\item Oscilador con zócalo.
279
\item Alimentación simple de 5V.
280
\item Dimensiones de 7x7 cm.
281
\end{itemize}
282
 
283 281 guanucolui
Estas primeras experiencias locales resulta alentadoras para realizar nuestros propios recursos académicos para la enseñanza de tecnologías programables como son los PLDs. Si bien los proyectos realizados por el INTI aún no se encuentran comercializados, se encuentran antecedentes de la transferencia de estos desarrollos a instituciones académicas.
284 280 guanucolui
 
285 281 guanucolui
Tantos los desarrollos comerciales como los académicos presentan perfiles de \textsl{hardware} similares y no es casualidad pues son los recursos que se necesitan para la enseñanza y ejercitación en un ámbito académicos y de protipado. Por lo tanto son estos diseños que nos sirven como referencias para plantear y definir que recursos físicos se debe disponer para la \emph{Plataforma de Hardware Reconfigurable}.
286
 
287 136 guanucolui
\section{Estructura general del proyecto}
288
\label{sec:estruct-gral}
289
 
290 281 guanucolui
Al comienzo de la década de los 90s surgieron varios trabajos donde se planteaba la necesidad de una plataforma educativa orientada a la implementación de diseños lógicos digitales basados en PLDs. Los principales demandantes eran diseñadores de arquitecturas de microprocesadores, desarrollos que años anteriores resultaban dificultosos por el costo de la implementación en \textsl{hardware}. El avance en el proceso de integración de los circuitos integrados ha llevado a que se desarrollen plataformas más complejas que ofrecen una gran cantidad de recursos de hardware. Al día de hoy se han generado varios proyectos desarrollados por instituciones académicas, otras con especificaciones abiertas y también con fines comerciales. Todos estos trabajos tienen algunas características en común\footnote{La caracterización anterior no es un intento de generalizar a todas las plataformas educativas basadas en PLDs, pero sí resulta útil para definir el perfil de la plataforma que se describe en este trabajo.}:
291
 
292
\begin{itemize}
293
\item El dispositivo lógico programable central es una FPGA
294
\item Poseen Memoria de configuración de la FPGA
295
\item El acceso al dispositivo es a través de JTAG
296
\item Disponen de algún software para interactuar con la plataforma desde una computadora
297
\item Tienen dos perfiles de diseño:
298
  \begin{itemize}
299
  \item Para la implementación de sistemas lógicos generales
300
  \item Orientado a un área específica
301
  \end{itemize}
302
\end{itemize}
303
 
304
En función del perfil del usuario de la plataforma se definen los dispositivos que se utilizarán. La Tabla \ref{tab:rec-plataforma} ilustra una clasificación de los recursos que ofrecen diferentes plataformas basada en dispositivos PLDs. A niveles iniciales en el estudio de la lógica digital se requieren periféricos básicos como ser llaves conmutadoras de estados lógicos, pulsadores, dispositivos indicadores como diodos LED, etc. A un nivel medio se manejan controladores para display gráficos LCD/LED, comunicaciones entre varios dispositivos mediante SPI, I2C, etc. Y por último, en la formación de especialistas de sistemas embebidos, se requieren recursos como interfaces físicos para ethernet, controladores HDMI, USB, y otros más.
305
 
306
\begin{table}[!t]
307
\renewcommand{\arraystretch}{1.3}
308
\caption{Recursos de hardware en función de los niveles de aprendizaje}
309
\label{tab:rec-plataforma}
310
\centering
311
\begin{tabular}{|l|c|c|c|}
312
\hline
313
\multirow{2}{*}{Nivel} & Llaves/pulsadores & ADC\&DAC/SPI & USB/ETH \\
314
                       & Diodos LED & Display LCD/VGA & HDMI \\
315
\hline
316
Inicial & $\checkmark$ & & \\
317
\hline
318
Medio & $\checkmark$ & $\checkmark$ & \\
319
\hline
320
Avanzado & $\checkmark$ & $\checkmark$ & $\checkmark$ \\
321
\hline
322
\end{tabular}
323
\end{table}
324
 
325
La estructura del proyecto \emph{Plataforma de Hardware Reconfigurable} debe ser un proyecto a medida de las necesidades en la  enseñanza de los sistemas digitales lógicos en las cátedras iniciales. Se debe ofrecen recursos básicos para que los estudiantes interactúen con la tecnología de los dispositivos PLDs, pero también dispone de puertos para conectar otros recursos físicos permitiendo que estudiantes avanzados puedan hacer uso de ellas sin limitaciones. Al ser publicado bajo licencia libre/abierta permitirá que el diseño, o parte de él, sirva como referencia a otras instituciones académicas que se encuentren en búsqueda de una plataforma para implementar en sus diferentes cátedras.
326
 
327 136 guanucolui
\section{Definición de estructura de las placas}
328
\label{sec:def-estr-placas}
329
 
330 281 guanucolui
Las dimensiones y disposiciones de las diferentes placas que forman este proyecto también ha requerido un previo análisis por parte de los desarrolladores. Si bien parece un tema trivial, las consecuencias de las definiciones a tomar implican alteraciones tanto funcionales como económicas.
331
 
332
Como se describió en la Sección \ref{sec:estruct-gral}, en esta parte del desarrollo se conoce que dispositivos electrónicos se van a incluir en nuestro proyecto como así también las dimensiones y distribuciones que se puede tomar. Los principales dispositivos que requieren mayor importancia y que definirán la estructura física del diseño son:
333
 
334
\begin{itemize}
335
\item Dispositivo Lógico Programable (FPGA)
336
\item Memoria de programación
337
\item Interfaz USB-JTAG
338
\item Sistema de alimentación
339
\item Periféricos
340
\end{itemize}
341
 
342
Las primeras observaciones que se hicieron sobre estos puntos fue la posibilidad de dar el mayor uso y flexibilidad a todos los recursos a implementar. Por ejemplo, para el caso del interfaz USB-JTAG se podría implementar en forma aislada a la placa principal del proyecto. Eso permitiría que reutilizar esta interfaz con otros proyectos. Pero si esto se realizara se incrementaría el costo del proyecto pues se necesitaría fabricar una placa aislada que, si bien puede que ocupe el mismo área que si se integraría el diseño a la placa principal, los costos de fabricación son mayores. Además, por el perfil del proyecto, se intentó implementar diseños publicados en forma libre por la comunidad de \emph{Hardware Libre}. Un ejemplo de esto es la decisión de utilizar el sistema de alimentación desarrollado por el Instituto Nacional de Tecnología Industrial, lo que se describirá con mayor detalle en secciones futura. En definitiva, todos los análisis llevaron a la diseño e implementación de tres placas que integran todos los requerimientos planteados al iniciar el desarrollo.
343
 
344 136 guanucolui
\section{Selección de dispositivos principales}
345
\label{sec:sel-disp-prin}
346
 
347 281 guanucolui
 
348
Dispositivo seleccionado – Familia Spartan A/AN
349
Características
350
                -Bajo Costo
351
                        Posee muchas prestaciones dependiendo del dispositivo, éstos son:
352
                        +Spartan-3A
353
                        +Spartan-3A DSP
354
                        +Spartan-3AN
355
Dependiendo de la aplicación debemos recurrir a la documentación del fabricante donde se especifica los recursos que tiene cada tipo de Spartan-3 como ser Cantidad de bloques lógicos, pines, I/O disponibles, uP embebidos, Voltage de alimentación, modo de configuración, DSP, etc.
356
Datos interesantes en las características,
357
        \_Vin\_máx: 4,6V. Compatible con fuentes de 3.3V +/- 10%
358
        \_señales estándar: LVCMOS, LVTTL, HSTL y SSTL.
359
        \_driver de salida hasta 24mA.
360
        \_tasa de transferencia 622Mb/s.
361
        \_18x18 multiplicadores dedicados con pipeline opcional
362
        \_Puerto programación/debug JTAG IEEE 1149.1/1532.
363
        \_Digital Clock Manager (DCMs) /*BUSCAR*/
364
                Rango de frecuencia 5Mhz hasta 300Mhz.
365
        \_ Ocho global clock.
366
        \_Interface de configuración para PROMs estándar.
367
                -PROM flash SPI, bajo costo.
368
                -PROM flash NOR paralelo x8 o x8/x16.
369
        \_reconfiguración automática Multi-boot entre dos archivos.
370
        \_Package de bajo costo QFP y BGA
371
Resumen de la arquitectura
372
        La arquitectura de la Spartan-3 consiste de cinco elementos fundamentales funcionales programables:
373
                \_Configurable Logic Block (CLBs) contienen flexibles Look-Up Tables (LUTs) que implentan elementos lógicos usados como flip-flop o latch.
374
                \_Input/Output Blocks (IOBs) controla el flujo de datos entre los pines de I/O y la lógica interna del dispositivo. Los IOBs soportan flujo de datos bidireccionales además de operaciones 3-state.
375
                \_Block RAM provee almacenamiento de datos en la forma de bloques dual-port de 18Kbit.
376
                \_Multiplier Blocks toma dos números binarios de 18bit como entrada y calcula el producto. La línea Spartan-3A DSP incluye bloques especiales DSP.
377
                \_Digital Clock Manager (DCM) Block proporciona auto-calibración, retardos, multiplicadores, divisores, y señales de clock de cambio de fase (phase-shifting).
378
Configuración
379
        La generación de FPGAs Spartan-3 son programadas por la carga de datos de configuración en dispositivos sólidos, reprogramables, static CMOS configuration latches (CCLs) que en conjunto controla todo los elementos funcionales y designan las fuentes. El dato de configuración de las FPGA es almacenado en dispositivos externos como una PROM o algún dispositivo no-volátil.
380
Capacidades de I/O
381
        Aquí es interesante ver el consumo de cada familia, el mejor de todos es la Spartan-3, hasta 24mA para 3.3V y el peor de todos es la Spartan-3E con una corriente máxima de 16mA a 3.3V. /* RECORDAR QUE ÉSTO DEPENDE TAMBIÉN SI UTILIZAMOS LAS I/O A MODO COMÚN O DIFERENCIAL.*/
382
 
383
Utilizando los recursos Globales de Clock.
384
        Especifican los recursos que ofrecen todas las familias de Spartan-3, especificaciones tanto de conexionado como de rendimiento.
385
En la figura 2-1 se observa cuál es el camino que sigue las señales de clock. Una aplicación interesante del DCM es introducirlo entre el GCLK pad  y el BUFGMUX para manejar la frecuencia del clock (por ej. divisor).
386
=Entrada de clock Spartan-3E
387
        En ésta familia, evitar usar la entrada global clock GCLK1 ya que siempre es compartido con el pin selector M2. Las entradas global clock GCLK0, 2, 3, 12, 13,14 y GCLK15 tiene funcionalidades compartidas en algunos modos de configuración, y todas las entradas RHCLK comparten funcionalidades con líneas de direccionamiento en el modo BPI. Asegurar que no exista conflicto entre el uso de lo spines durante la configuración es algo que siempre se aconseja.
388
También en la familia Spartan-3E, algunos de los pines pad son solo pines de entrada como se indica en la sección "Pinout Descriptions"  de la hoja de datos. Esto podría ser más útil como entrada de clock ya que éstos pines no requiere usar el modo pin I/O.
389
Utilizando recursos I/O
390
        Todas las señales que entran y salen de la FPGA deben pasar a través de los recursos I/O, conocidos como IOBs. Ya que las FPGAs son usadas en muchas aplicaciones complejas, éstos dispositivos deben soportan un incremento variable de I/O. La revolucionaría SelectIO (patentado por xilinx), que contiene la Spartan-3 reúne ésta necesidad proporcionando una enorme configurabilidad, alto performance de recursos adecuados para aplicaciones como son memorias de alta velocidad y interfaces de placas complejas programables.
391
 
392
La generación de FPGA Spartan-3 simplifica diseños de alto-performance ofreciendo un seleccionable diseño I/O estándar para entrada y salida. Más de 20 diferentes estándares son soportados en cada familia, con diferentes especificaciones de corriente, voltaje, I/O baffering, y terminaciones técnicas. Como un resultado, la generación de FPGA Spartan-3 puede ser usada para transformadas integrales discreta y drive direccional en muchas placas avanzadas, buses, y memorias. Directamente proporciona el interface estándar necesario no solo para eliminar el costo externo de traslación, sino también mejora significativamente la velocidad de chip-to-chip y reduce el consumo de potencia.
393
 
394 136 guanucolui
\section{Descripción de las placas}
395
\label{sec:desc-placas}
396
 
397
\subsection{PHR}
398
\label{sec:phr-placa}
399
 
400
\subsection{S3Power}
401
\label{sec:s3power-placa}
402
 
403
\subsection{OOCDLink}
404
\label{sec:oocdlink-placa}
405
 

powered by: WebSVN 2.1.0

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