viernes, 14 de noviembre de 2008

IEEE

Les presento el Documental de La asociación de Ingeneria más grande y prestigiada del mundo:

IEEE

IEEE corresponde a las siglas de The Institute of Electrical and Electronics Engineers, en español seria el Instituto de Ingenieros Eléctricos y Electrónicos, una asociación técnico-profesional mundial dedicada a la estandarización, entre otras cosas. Es la mayor asociación internacional sin fines de lucro formada por profesionales de las nuevas tecnologías, como ingenieros eléctricos, ingenieros en electrónica, científicos de la computación, ingenieros en informática e ingenieros en telecomunicación.

Links De paginas web, relacionadas con El Instituto de Ingenieros Electricos y Electronicos

IEEE Mundial

IEEE SECCIÓN MÉXICOPresa Rodríguez No. 27-B Col. Irrigación Del. Miguel HidalgoC.P. 11500, México, D.F. Multilínea IEEE5395-2222 http://www.ieee.org.mx/IEEE_Seccion_Mexico.html file:///G:/www.ieee.org.mx/ mexico.section@ieee.org.mx

Bibliografia en Wikipedia
Links De Videos, relacionados con El Instituto de Ingenieros Electricos y Electronicos

Su creación se remonta al año 1884, contando entre sus fundadores a personalidades de la talla de Thomas Alva Edison, Alexander Graham Bell y Franklin Leonard Pope. En 1963 adoptó el nombre de IEEE al fusionarse asociaciones como el AIEE (American Institute of Electrical Engineers) y el IRE (Institute of Radio Engineers). A través de sus miembros, más de 360.000 voluntarios en 175 países, el IEEE es una autoridad líder y de máximo prestigio en las áreas técnicas derivadas de la eléctrica original: desde ingeniería computacional, tecnologías biomédica y aeroespacial, hasta las áreas de energía eléctrica, control, telecomunicaciones y electrónica de consumo, entre otras. Según el mismo IEEE, su trabajo es promover la creatividad, el desarrollo y la integración, compartir y aplicar los avances en las tecnologías de la información, electrónica y ciencias en general para beneficio de la humanidad y de los mismos profesionales.

Algunos de sus estándares son:
VHDL
POSIX

Nota: Los contenidos de los estándares se encuentran en las ENTRADAS consecutivas llevado el titulo del mismo, es decir si deseas encontrar la informacion, de estos estandares, en las consecutivas entradas.

Mediante sus actividades de publicación técnica, conferencias y estándares basados en consenso, el IEEE produce más del 30% de la literatura publicada en el mundo sobre ingeniería eléctrica, en computación, telecomunicaciones y tecnología de control, organiza más de 350 grandes conferencias al año en todo el mundo, y posee cerca de 900 estándares activos, con otros 700 más bajo desarrollo.

jueves, 13 de noviembre de 2008

IEEE (POSIX)

POSIX

POSIX es el acrónimo de Portable Operating System Interface; la X viene de UNIX como seña de identidad de la API. El término fue sugerido por Richard Stallman en respuesta a la demanda de la IEEE, que buscaba un nombre fácil de recordar. Una traducción aproximada del acrónimo podría ser "Interfaz de Sistema Operativo Portátil basado en UNIX".


Introducción
Estos son una familia de estándares de llamadas al sistema operativo definidos por el IEEE y especificados formalmente en el IEEE 1003. Persiguen generalizar las interfaces de los sistemas operativos para que una misma aplicación pueda ejecutarse en distintas plataformas. Estos estándares surgieron de un proyecto de normalización de las API y describen un conjunto de interfaces de aplicación adaptables a una gran variedad de implementaciones de sistemas operativos.

Especifica las interfaces de usuario y software al sistema operativo en 15 documentos diferentes. La línea de comandos estándar y las interfaces de scripting se basaron en Korn Shell. Otros programas a nivel de usuario (user-level), servicios y utilidades incluyen AWK, echo, ed y cientos de otras. Los servicios a nivel de programa requeridos incluyen definición de estándares básicos de I/O, (file, terminal, y servicios de red). También especifican una API para las librerías de threading, que es muy popular y muy utilizada en muchos sistemas operativos.
Una serie de pruebas acompañan al estándar POSIX. Son llamadas "PCTS" en alusión al acrónimo "Posix Conformance Test Suite". Desde que la IEEE empezó a cobrar altos precios por la documentación de POSIX y se ha negado a publicar los estándares, ha aumentado el uso del modelo Single Unix Specification. Este modelo es abierto, acepta entradas de todo el mundo y está libremente disponible en Internet. Fue creado por The Open Group.

Partes

POSIX.1,
Core Services (implementa las llamadas del ANSI C estándar). Incluye:
Creación y control de procesos.
Señales.
Excepciones de punto flotante.
Excepciones por violación de segmento.
Excepciones por instrucción ilegal.
Errores del bus.
Temporizadores.
Operaciones de ficheros y directorios (sobre cualquier fs montado).
Tuberías (Pipes).
Biblioteca C (Standard C).
Instrucciones de entrada/salida y de control de dispositivo (ioctl).

POSIX.1b,
extensiones para tiempo real:
Planificación (scheduling) con prioridad.
Señales de tiempo real.
Temporizadores.
Semáforos.
Intercambio de mensajes (message passing).
Memoria compartida.
Entrada/salida síncrona y asíncrona.
Bloqueos de memoria.

POSIX.1c,
extensiones para hilos (threads):
Creación, control y limpieza de hilos.
Planificación (scheduling).
Sincronización.
Manejo de señales.

IEEE (1394)

IEEE 1394

El IEEE 1394 (conocido como FireWire por Apple Inc. y como i.Link por Sony) es un estándar multiplataforma para entrada/salida de datos en serie a gran velocidad. Suele utilizarse para la interconexión de dispositivos digitales como cámaras digitales y videocámaras a computadoras.


Historia
El FireWire fue inventado por Apple Computer a mediados de los 90, para luego convertirse en el estándar multiplataforma IEEE 1394. A principios de este siglo fue adoptado por los fabricantes de periféricos digitales hasta convertirse en un estándar establecido. Sony utiliza el estándar IEEE 1394 bajo la denominación i.Link, que sigue los mismos estándares pero solo utiliza 4 conexiones, de las 6 disponibles en la norma IEEE 1394, suprimiendo las dos conexiones encargadas de proporcionar energía al dispositivo, que tendrá que proveerse de ella mediante una toma separada.


Características
Elevada velocidad de transferencia de información.
Flexibilidad de la conexión.
Capacidad de conectar un máximo de 63 dispositivos.
Su velocidad hace que sea la interfaz más utilizada para audio y vídeo digital. Así, se usa mucho en cámaras de vídeo, discos duros, impresoras, reproductores de vídeo digital, sistemas domésticos para el ocio, sintetizadores de música y escáneres.




Existen tres versiones:


FireWire 400* (IEEE 1394a): tiene una banda ancha de 400 Mbit/s, 30 veces mayor que el USB 1.1 y similar a la del USB 2.0, que alcanza los 480 (el 14 de agosto de 2008 Intel informó que el USB 3.0 que prepara con otras empresas, tendrá velocidad de 4,8 Gbit/s, pero no anunció fecha de lanzamiento).


FireWire 800 ó FireWire 2 (IEEE 1394b): duplica la velocidad del FireWire 400.


FireWire s3200: tiene una banda ancha de 3'2 Gbit/s, cuadruplica la velocidad del Firewire 800.
Así, para usos que requieran la transferencia de grandes volúmenes de información, resulta muy superior al USB 2.0.
Arquitectura altamente eficiente. IEEE 1394b reduce los retrasos en la negociación, gracias a 8b10b (código que codifica 8 bits en 10 bits, que fue desarrollado por IBM y permite suficientes transiciones de reloj, la codificación de señales de control y detección de errores. El código 8b10b es similar a 4B/5B de FDDI (que no fue adoptado debido al pobre equilibrio de corriente continua), que reduce la distorsión de señal y aumenta la velocidad de transferencia. Proporciona, por tanto, una mejor vivencia como usuario.
Da igual cómo conectes tus dispositivos entre ellos, FireWire 800 funciona a la perfección. Por ejemplo, puedes incluso enlazar a tu Mac la cadena de dispositivos FireWire 800 por los dos extremos para mayor seguridad durante acontecimientos en directo.


Compatibilidad retroactiva. Los fabricantes han adoptado el FireWire para una amplia gama de dispositivos, como videocámaras digitales, discos duros, cámaras fotográficas digitales, audio profesional, impresoras, escáneres y electrodomésticos para el ocio. Los cables adaptadores para el conector de 9 contactos del FireWire 800 te permiten utilizar productos FireWire 400 en el puerto FireWire 800. FireWire 800 comparte las revolucionarias prestaciones del FireWire 400.
Flexibles opciones de conexión. Conecta hasta 63 computadoras y dispositivos a un único bus: puedes incluso compartir una cámara entre dos Macs o PCs.


Distribución en el momento. Fundamental para aplicaciones de audio y vídeo, donde un fotograma que se retrasa o pierde la sincronización arruina un trabajo, el FireWire puede garantizar una distribución de los datos en perfecta sincronía.


Alimentación por el bus. Mientras el USB 2.0 permite la alimentación de dispositivos sencillos y lentos que consumen un máximo de 2,5 W, como un mouse, los dispositivos con FireWire pueden proporcionar o consumir hasta 45 W, más que suficiente para discos duros de alto rendimiento y baterías de carga rápida.


Conexiones de enchufar y listo. No tienes más que enchufar un dispositivo para que funcione.
Ahora en muchas tiendas ya venden "kits" con cables que sirven para conectar tu IEEE 1394 con distintos adaptadores para USB, para que los conectes más fácil a tus dispositivos ya sean camaras, celulares, juegos, etc.


Ventajas de FireWire
Alcanzan una velocidad de 400 megabits por segundo (800 en la revisión FireWire 2).
Es hasta cuatro veces más rápido que una red Ethernet 100Base-T y 40 veces más rápido que una red Ethernet 10Base-T.


Soporta la conexión de hasta 63 dispositivos con cables de una longitud máxima de 425 cm.
No es necesario apagar un escáner o una unidad de CD antes de conectarlo o desconectarlo, y tampoco requiere reiniciar el ordenador.


Los cables FireWire se conectan muy fácilmente: no requieren números de identificación de dispositivos, conmutadores DIP, tornillos, cierres de seguridad ni terminadores.
FireWire funciona tanto con Macintosh como con PC.


FireWire 400 envía los datos por cables de hasta 4,5 metros de longitud. Mediante fibra óptica profesional, FireWire 800 puede distribuir información por cables de hasta 100 metros, lo que significa que podrías copiar un CD hasta una computadora en la otra punta de un campo de fútbol cada diez segundos. Ni siquiera se necesita una computadora o dispositivos nuevos para alcanzar estas distancias. Siempre que los dispositivos se conecten a un concentrador FireWire 800, puedes enlazarlos mediante un cable de fibra óptica supereficiente. (Aunque en realidad el uso de esta fibra hace más costoso el sistema, y proporciona velocidades en extremo reducidas en comparación a la capacidad del medio que se utiliza).


Aplicaciones de FireWire


Edición de vídeo digital


La edición de vídeo digital con FireWire ha permitido que tuviera lugar una revolución en la producción del vídeo con sistemas de escritorio. La incorporación de FireWire en cámaras de vídeo de bajo costo y elevada calidad permite la creación de vídeo profesional en Macintosh o PC. Atrás quedan las carísimas tarjetas de captura de vídeo y las estaciones de trabajo con dispositivos SCSI de alto rendimiento. FireWire permite la captura de vídeo directamente de las nuevas cámaras de vídeo digital con puertos FireWire incorporados y de sistemas analógicos mediante conversores de audio y vídeo a FireWire.
Redes IP sobre FireWire


Como explica Apple, "con este software instalado, se pueden utilizar entre computadoras Macintosh y periféricos los protocolos IP existentes, incluyendo AFP, HTTP, FTP, SSH, etcétera. En todos los casos, se puede utilizar Bonjour (Rendezvous) para su configuración, resolución de nombres y descubrimiento." Si unimos la posibilidad de usar las conexiones FireWire para crear redes TCP/IP a las prestaciones de FireWire 2 (FireWire 800), tenemos razones muy serias para que Apple recupere rápidamente la atención de los fabricantes de periféricos para satisfacer las necesidades de los usuarios de aplicaciones que requieren gran ancho de banda en redes locales, como todas las relacionadas con el vídeo digital. Por no hablar de introducirse en un posible mercado nuevo.

IEEE (GPIB)

GPIB

IEEE-488 / HP-IB / GPIB
Conectores apilados IEEE-488
Tipo Bus de datos de propósito general Production history
Diseñador Hewlett-Packard
Diseñado en finales de la década de 1960 estandarizado en 1975
Fabricante Hewlett-Packard
Producido presentado al final de la década de los 1960
Sustituido por HP-IL (principio de la década de 1980)
Especificaciones Externo sí
Señal de Datos Bus de datos paralelo con handshaking
Ancho 8 bits
Ancho de banda 8 Mbps(posteriormente extendido a 64 Mbps)
Max nº dispositivos 15
Protocolo Paralelo
Cable max. 20 metros
Pines 24 (8 datos, 5 gestión del bus, 3 handshake, 8 masa)
Conector Amphenol micro ribbon de 24 pines
Patillaje Conector hembra IEEE-488
Pin 1 DIO1 Data input/output bit.
Pin 2 DIO2 Data input/output bit.
Pin 3 DIO3 Data input/output bit.
Pin 4 DIO4 Data input/output bit.
Pin 5 EOI End-or-identify.
Pin 6 DAV Data valid.
Pin 7 NRFD Not ready for data.
Pin 8 NDAC Not data accepted.
Pin 9 IFC Interface clear.
Pin 10 SRQ Service request.
Pin 11 ATN Attention.
Pin 12 SHIELD
Pin 13 DIO5 Data input/output bit.
Pin 14 DIO6 Data input/output bit.
Pin 15 DIO7 Data input/output bit.
Pin 16 DIO8 Data input/output bit.
Pin 17 REN Remote enable.
Pin 18 GND (emparejado con DAV)
Pin 19 GND (emparejado con NRFD)
Pin 20 GND (emparejado con NDAC)
Pin 21 GND (emparejado con IFC)
Pin 22 GND (emparejado con SRQ)
Pin 23 GND (emparejado con ATN)


El Hewlett-Packard Instrument Bus (HP-IB) es un estándar bus de datos digital de corto rango desarrollado por Hewlett-Packard en los años 1970 para conectar dispositivos de test y medida (por ejemplo multímetros, osciloscopios, etc) con dispositivos que los controlen como un ordenador. Otros fabricantes copiaron el HP-IB, llamando a su implementación General-Purpose Instrumentation Bus (GP-IB). En 1978 el bus fue estandarizado por el Institute of Electrical and Electronics Engineers (IEEE) como el IEEE-488 (488.1).


El IEEE-488 permite que hasta 15 dispositivos inteligentes compartan un simple bus paralelo de 8 bits, mediante conexión en cadena, con el dispositivo más lento determinando la velocidad de transferencia. La máxima velocidad de transmisión está sobre 1 Mbps en el estándar original y en 8 Mbps con IEEE-488.1-2003 (HS-488).

Las 16 líneas que componen el bus están agrupadas en tres grupos de acuerdo con sus funciones: 8 de bus de datos, 3 de bus de control de transferencia de datos y 5 de bus general. Algunas de ellas tienen retornos de corrientes común y otras tienen un retorno propio, lo que provoca un aumento del número de líneas totales (8 masas).
Historia

A finales de la década de 1960, Hewlett-Packard (HP) era un fabricante de equipos de test e instrumentos de medición, como multímetros digitales y analizadores lógicos. HP desarrolló el HP Interface Bus (HP-IB) para permitir una más fácil conexión entre instrumentos y controladores como los ordenadores. el bus es relativamente fácil de implemntar usando la tecnología del momento, y utilizaba un simple bus paralelo y varias líneas de control individual.
Otros fabricantes copiaron el HP-IB, llamando a su implementación el General Purpose Interface Bus (GPIB o bus de interfaz de propósito general).


En 1975 el bus fue estandarizado por el Institute of Electrical and Electronics Engineers como el IEEE Standard Digital Interface for Programmable Instrumentation, IEEE-488-1975 (actualmente 488.1). IEEE-488.1 define los parámetros mecánicos, eléctricos, y el protocolo básico de GPIB, pero no dice nada sobre el formato de los comandos o los datos. El estándar IEEE-488.2, Codes, Formats, Protocols, and Common Commands for IEEE-488.1 (Junio de 1987), proporciona la síntaxis básica y las convenciones de formato, así como los comandos independientes de dispositivo, estructuras de datos, protocolos de error, y similares. IEEE-488.2 se construyó sobre -488.1 sin sustituirlo; los equipos pueden configurarse para -488.1 sin seguir

-488.2.
Mientras que IEEE-488.1 define el hardware, y IEEE-488.2 define la síntaxis, todavía no había estándar para comandos específicos de cada instrumento. Los comandos para controlar la misma clase de instrumento (por ej., multímetros) puede variar entre diferentes fabricantes e incluso modelos. Un estandar para comandos de dispositivo, SCPI, fue introducido en los 90. Debido a su reciente introducción, no ha sido implementado universalmente.
National Instruments introdujo una extensión retro-compatible a IEEE-488.1, conocida originalmente como HS-488. Esta incrementa la velocidad máxima a 8 MB/s, aunque la velocidad disminuye a medida que se conectan más dispositivos al bus. Fue incorporada al estandar en 2003, como IEEE-488.1-2003.

Además del IEEE otros comités han adoptado el HP-IB. El American National Standards Institute (ANSI) lo llama ANSI Standard MC 1.1, y para la International Electrotechnical Commission (IEC) es el IEC Publication 625-1.

Aplicaciones
Al principio, los diseñadores de HP no planearon el IEEE-488 como un estandar de interfaz de periféricos para ordenadores de propósito general. En 1977 la familia Commodore PET/CBM de ordenadores educativos/domésticos/personales conectaban sus unidades de disco, impresoras, modems, etc, mediante el bus IEEE-488. Todos los equipos de 8 bits posteriores de Commodore del VIC-20 al Commodore 128, utilizan un bus serial IEEE-488 propietario (también llamado bus serial Commodore) para sus periféricos, con conectores DIN-6 en lugar de los resistentes conectores HP-IB o un conector de borde de tarjeta en la placa madre (para los ordenadores PET). En él los dispositivos conectados al ordenador hablaban (talking) y escuchaba (listening) las líneas para realizar sus tareas. Los ordenadores de HP también han usado este bus con un protocolo llamado CS-80.

Hewlett-Packard y Tektronix también usaron el IEEE-488 como interfaz de periféricos para conectar unidades de disco, unidades de cinta, impresoras, plotters etc. a sus estaciones de trabajo y a los miniordenadores HP 3000. Mientras que la velocidad del bus se incrementaba a 10 MB para esos usos, la falta de un protocolo de comandos estándar limitó los desarrollos de terceros y la interoperabilidad, y posteriormente, estándares abiertos más rápidos como SCSI acabaron superando a IEEE-488 para la conexión de periféricos.Adicionalmente, algunas de las calculadoras/ordenadores avanzados de HP en la década de 1980, como las series HP-41 y HP-71, pueden trabajar con varios instrumentos mediante una interfaz HP-IB opcional. La interfaz puede conectarse a la calculadora mediante un módulo opcional HP-IL

IEEE (802)

IEEE 802

IEEE 802 es un de estudio de estándares perteneciente al Instituto de Ingenieros Eléctricos y Electrónicos (IEEE), que actúa sobre Redes de Ordenadores, concretamente y según su propia definición sobre redes de área local (RAL, en inglés LAN) y redes de área metropolitana (MAN en inglés). También se usa el nombre IEEE 802 para referirse a los estándares que proponen, y algunos de los cuales son muy conocidos: Ethernet (IEEE 802.3), o Wi-Fi (IEEE 802.11), incluso está intentando estandarizar Bluetooth en el 802.15.
Se centra en definir los niveles más bajos (según el modelo de referencia OSI o sobre cualquier otro modelo), concretamente subdivide el segundo nivel, el de enlace, en dos subniveles, el de enlace lógico, recogido en 802.2, y el de acceso al medio. El resto de los estándares recogen tanto el nivel físico, como el subnivel de acceso al medio.

Contenido

Historia


En febrero de 1980 se formó en el IEEE un comité de redes locales con la intención de estandarizar un sistema de 1 o 2 Mbps, que básicamente era Ethernet (el de la época). Le tocó el número 802. Decidieron estandarizar el nivel físico, el de enlace y superiores. Dividieron el nivel de enlace en dos subniveles: el de enlace lógico, encargado de la lógica de re-envíos, control de flujo y comprobación de errores, y el subnivel de acceso al medio, encargado de arbitrar los conflictos de acceso simultáneo a la red por parte de las estaciones.

Para final de año ya se había ampliado el estándar para incluir el Token Ring (Red en anillo con paso de testigo) de IBM y un año después, y por presiones de grupos industriales, se incluyó Token Bus (Red en bus con paso de testigo), que incluía opciones de tiempo real y redundancia, y que se suponía idóneo para ambientes de fábrica.

Cada uno de estos tres "estándares" tenía un nivel físico diferente, un subnivel de acceso al medio distinto pero con algún rasgo común (espacio de direcciones y comprobación de errores), y un nivel de enlace lógico único para todos ellos.


Después se fueron ampliando los campos de trabajo, se incluyeron redes de área metropolitana (alguna decena de kilómetros), personal (unos pocos metros) y regional (algún centenar de kilómetros), se incluyeron redes inalámbricas (WLAN), métodos de seguridad, etc.
Grupos de Trabajo
• IEEE 802.1 – Normalizacion interfície
• IEEE 802.2 – Control de enlace lógico
• IEEE 802.3 – CSMA / CD (ETHERNET)
• IEEE 802.4 – Token bus
• IEEE 802.5 – Token ring
• IEEE 802.6 – MAN (ciudad) (fibra óptica)
• IEEE 802.7 – Banda ancha
• IEEE 802.8 – FDDI (Fibra óptica)
• IEEE 802.9 – Voz y datos en XAL
• IEEE 802.10 – Seguridad
• IEEE 802.11 – Redes inalámbricas (el Wi-Fi, de nuestras PCs)
• IEEE 802.12 – Demanda prioridad
• IEEE 802.13 – No utilizado
• IEEE 802.14 – Modems de cable
• IEEE 802.15 – Bluetooth
• IEEE 802.16 - Redes de acceso metropolitanas sin hilos de banda ancha (WIMAX)
• IEEE 802.17 – Anillo de paquete elastico
• IEEE 802.18 – Grupo de Asesoria Técnica sobre Normativas de Radio
• IEEE 802.19 – Grupo de Asesoría Técnica sobre Coexistencia.
• IEEE 802.20 – Mobile Broadband Wireless Access
• IEEE 802.21 – Media Independent Handoff
• IEEE 802.22 – Wireless Regional Area Network

IEEE 802.11
El protocolo IEEE 802.11 o Wi-Fi es un estándar de protocolo de comunicaciones del IEEE que define el uso de los dos niveles inferiores de la arquitectura OSI (capas física y de enlace de datos), especificando sus normas de funcionamiento en una WLAN. En general, los protocolos de la rama 802.x definen la tecnología de redes de área local.
La familia 802.11 actualmente incluye seis técnicas de transmisión por modulación, todas las cuales utilizan los mismos protocolos. El estándar original de este protocolo data de 1997, era el IEEE 802.11, tenía velocidades de 1 hasta 2 Mbps y trabajaba en la banda de frecuencia de 2,4 GHz.
El término IEEE 802.11 se utiliza también para referirse a este protocolo al que ahora se conoce como "802.11legacy." La siguiente modificación apareció en 1999 y es designada como IEEE 802.11b, esta especificación tenía velocidades de 5 hasta 11 Mbps, también trabajaba en la frecuencia de 2,4 GHz. También se realizó una especificación sobre una frecuencia de 5 Ghz que alcanzaba los 54 Mbps, era la 802.11a y resultaba incompatible con los productos de la b y por motivos técnicos casi no se desarrollaron productos. Posteriormente se incorporó un estándar a esa velocidad y compatible con el b que recibiría el nombre de 802.11g. La versión final del estándar se publicó en Junio de 2007 y recoge las modificaciones más importantes sobre la definición original; incluye: 802.11a,b,d,e,g,h,i,j
En la actualidad la mayoría de productos son de la especificación b y de la g . El siguiente paso se dará con la norma 802.11n que sube el límite teórico hasta los 600 Mbps. Actualmente ya existen varios productos que cumplen un primer borrador del estándar N con un máximo de 300 Mbps (80-100 estables).
La seguridad forma parte del protocolo desde el principio y fue mejorada en la revisión 802.11i. Otros estándares de esta familia (c–f, h–j, n) son mejoras de servicio y extensiones o correcciones a especificaciones anteriores. El primer estándar de esta familia que tuvo una amplia aceptación fue el 802.11b. En 2005, la mayoría de los productos que se comercializan siguen el estándar 802.11g con compatibilidad hacia el 802.11b.
Los estándares 802.11b y 802.11g utilizan bandas de 2,4 Ghz que no necesitan de permisos para su uso. El estándar 802.11a utiliza la banda de 5 GHz. El estándar 802.11n hará uso de ambas bandas, 2,4 GHz y 5 GHz. Las redes que trabajan bajo los estándares 802.11b y 802.11g pueden sufrir interferencias por parte de hornos microondas, teléfonos inalámbricos y otros equipos que utilicen la misma banda de 2,4 Ghz.

Contenido
• 1 Conceptos Generales
• 2 Protocolos
o 2.1 802.11 legacy
o 2.2 802.11a
 2.2.1 802.11h
o 2.3 802.11b
o 2.4 802.11g
o 2.5 802.11n
o 2.6 802.11e
o 2.7 802.11i
o 2.8 802.11w
• 3 Protocolo propietario
o 3.1 802.11G+
• 4 Canales y frecuencias
o 4.1 IEEE 802.11 b e IEEE 802.11 g
o 4.2 IEEE 802.11 a


Conceptos Generales

• Estaciones: computadores o dispositivos con interfaz inalámbrica.

• Medio: se pueden definir dos, la radiofrecuencia y los infrarrojos.

• Punto de acceso (AP): tiene las funciones de un puente (conecta dos redes con niveles de enlace parecidos o distintos), y realiza por tanto las conversiones de trama pertinente.

• Sistema de distribución: importantes ya que proporcionan movilidad entre AP, para tramas entre distintos puntos de acceso o con los terminales, ayudan ya que es el mecánico que controla donde esta la estación para enviarle las tramas.

• Conjunto de servicio básico (BSS): grupo de estaciones que se intercomunican entre ellas. Se define dos tipos:
1. Independientes: cuando las estaciones, se intercomunican directamente.
2. Infraestructura: cuando se comunican todas a través de un punto de acceso.
• Conjunto de servicio Extendido (ESS): es la unión de varios BSS.

• Área de Servicio Básico (BSA): es la zona donde se comunican las estaciones de una misma BSS, se definen dependiendo del medio.

• Movilidad: este es un concepto importante en las redes 802.11, ya que lo que indica es la capacidad de cambiar la ubicación de los terminales, variando la BSS. La transición será correcta si se realiza dentro del mismo ESS en otro caso no se podrá realizar.

• Límites de la red: los límites de las redes 802.11 son difusos ya que pueden solaparse diferentes BSS.
Protocolos
802.11 legacy

La versión original del estándar IEEE 802.11 publicada en 1997 especifica dos velocidades de transmisión teóricas de 1 y 2 mega bit por segundo (Mbit/s) que se transmiten por señales infrarrojas (IR) en la banda ISM a 2,4 GHz. IR sigue siendo parte del estándar, pero no hay implementaciones disponibles.

El estándar original también define el protocolo CSMA/CA (Múltiple acceso por detección de portadora evitando colisiones) como método de acceso. Una parte importante de la velocidad de transmisión teórica se utiliza en las necesidades de esta codificación para mejorar la calidad de la transmisión bajo condiciones ambientales diversas, lo cual se tradujo en dificultades de interoperabilidad entre equipos de diferentes marcas. Estas y otras debilidades fueron corregidas en el estándar 802.11b, que fue el primero de esta familia en alcanzar amplia aceptación entre los consumidores.

802.11a
En 1997 el IEEE (Instituto de Ingenieros Eléctricos y Electrónicos) crea el Estándar 802.11 con velocidades de transmisión de 2Mbps.
En 1999, el IEEE aprobó ambos estándares: el 802.11a y el 802.11b.
En 2001 hizo su aparición en el mercado los productos del estándar 802.11a.
La revisión 802.11a al estándar original fue ratificada en 1999. El estándar 802.11a utiliza el mismo juego de protocolos de base que el estándar original, opera en la banda de 5 Ghz y utiliza 52 subportadoras orthogonal frequency-division multiplexing (OFDM) con una velocidad máxima de 54 Mbit/s, lo que lo hace un estándar práctico para redes inalámbricas con velocidades reales de aproximadamente 20 Mbit/s. La velocidad de datos se reduce a 48, 36, 24, 18, 12, 9 o 6 Mbit/s en caso necesario. 802.11a tiene 12 canales no solapados, 8 para red inalámbrica y 4 para conexiones punto a punto. No puede interoperar con equipos del estándar 802.11b, excepto si se dispone de equipos que implementen ambos estándares.
Dado que la banda de 2.4 Ghz tiene gran uso (pues es la misma banda usada por los teléfonos inalámbricos y los hornos de microondas, entre otros aparatos), el utilizar la banda de 5 GHz representa una ventaja del estándar 802.11a, dado que se presentan menos interferencias. Sin embargo, la utilización de esta banda también tiene sus desventajas, dado que restringe el uso de los equipos 802.11a a únicamente puntos en línea de vista, con lo que se hace necesario la instalación de un mayor número de puntos de acceso; Esto significa también que los equipos que trabajan con este estándar no pueden penetrar tan lejos como los del estándar 802.11b dado que sus ondas son más fácilmente absorbidas.

802.11h
La especificación 802.11h es una modificación sobre el estándar 802.11 para WLAN desarrollado por el grupo de trabajo 11 del comité de estándares LAN/MAN del IEEE (IEEE 802) y que se hizo público en octubre de 2003. 802.11h intenta resolver problemas derivados de la coexistencia de las redes 802.11 con sistemas de Radares y Satélite
El desarrollo del 802.11h sigue unas recomendaciones hechas por la ITU que fueron motivadas principalmente a raíz de los requerimientos que la Oficina Europea de Radiocomunicaciones (ERO) estimó convenientes para minimizar el impacto de abrir la banda de 5 GHz, utilizada generalmente por sistemas militares, a aplicaciones ISM (ECC/DEC/(04)08).
Con el fin de respetar estos requerimientos, 802.11h proporciona a las redes 802.11a la capacidad de gestionar dinámicamente tanto la frecuencia, como la potencia de transmisión.
Selección Dinámica de Frecuencias y Control de Potencia del Transmisor
DFS (Dynamic Frequency Selection) es una funcionalidad requerida por las WLAN que operan en la banda de 5GHz con el fin de evitar interferencias co-canal con sistemas de radar y para asegurar una utilización uniforme de los canales disponibles.
TPC (Transmitter Power Control) es una funcionalidad requerida por las WLAN que operan en la banda de 5GHz para asegurar que se respetan las limitaciones de potencia transmitida que puede haber para diferentes canales en una determinada región, de manera que se minimiza la interferencia con sistemas de satélite.

802.11b
La revisión 802.11b del estándar original fue ratificada en 1999. 802.11b tiene una velocidad máxima de transmisión de 11 Mbit/s y utiliza el mismo método de acceso CSMA/CA definido en el estándar original. El estándar 802.11b funciona en la banda de 2.4 GHz. Debido al espacio ocupado por la codificación del protocolo CSMA/CA, en la práctica, la velocidad máxima de transmisión con este estándar es de aproximadamente 5.9 Mbit/s sobre TCP y 7.1 Mbit/s sobre UDP.
Aunque también utiliza una técnica de ensanchado de espectro basada en DSSS, en realidad la extensión 802.11b introduce CCK (Complementary Code Keying) para llegar a velocidades de 5,5 y 11 Mbps (tasa física de bit). El estándar también admite el uso de PBCC (Packet Binary Convolutional Coding) como opcional. Los dispositivos 802.11b deben mantener la compatibilidad con el anterior equipamiento DSSS especificado a la norma original IEEE 802.11 con velocidades de bit de 1 y 2 Mbps.

802.11g
En junio de 2003, se ratificó un tercer estándar de modulación: 802.11g. Que es la evolución del estándar 802.11b, Este utiliza la banda de 2.4 Ghz (al igual que el estándar 802.11b) pero opera a una velocidad teórica máxima de 54 Mbit/s, que en promedio es de 22.0 Mbit/s de velocidad real de transferencia, similar a la del estándar 802.11a. Es compatible con el estándar b y utiliza las mismas frecuencias. Buena parte del proceso de diseño del estándar lo tomó el hacer compatibles los dos estándares. Sin embargo, en redes bajo el estándar g la presencia de nodos bajo el estándar b reduce significativamente la velocidad de transmisión.
Los equipos que trabajan bajo el estándar 802.11g llegaron al mercado muy rápidamente, incluso antes de su ratificación que fue dada aprox. el 20 de junio del 2003. Esto se debió en parte a que para construir equipos bajo este nuevo estándar se podían adaptar los ya diseñados para el estándar b.
Actualmente se venden equipos con esta especificación, con potencias de hasta medio vatio, que permite hacer comunicaciones de hasta 50 km con antenas parabólicas apropiadas.

802.11n
En enero de 2004, el IEEE anunció la formación de un grupo de trabajo 802.11 (Tgn) para desarrollar una nueva revisión del estándar 802.11. La velocidad real de transmisión podría llegar a los 600 Mbps (lo que significa que las velocidades teóricas de transmisión serían aún mayores), y debería ser hasta 10 veces más rápida que una red bajo los estándares 802.11a y 802.11g, y cerca de 40 veces más rápida que una red bajo el estándar 802.11b. También se espera que el alcance de operación de las redes sea mayor con este nuevo estándar gracias a la tecnología MIMO Multiple Input – Multiple Output, que permite utilizar varios canales a la vez para enviar y recibir datos gracias a la incorporación de varias antenas (3). Existen también otras propuestas alternativas que podrán ser consideradas y se espera que el estándar que debía ser completado hacia finales de 2006, se implante hacia 2008. A principios de 2007 se aprobó el segundo borrador del estándar. Anteriormente ya había dispositivos adelantados al protocolo y que ofrecían de forma no oficial éste estándar (con la promesa de actualizaciones para cumplir el estándar cuando el definitivo estuviera implantado).

A diferencia de las otras versiones de Wi-Fi, 802.11n puede trabajar en dos bandas de frecuencias: 2,4 GHz (la que emplean 802.11b y 802.11g) y 5 GHz (la que usa 802.11h). Gracias a ello, 802.11n es compatible con dispositivos basados en todas las ediciones anteriores de Wi-Fi. Además, es útil que trabaje en la banda de 5 GHz, ya que está menos congestionada y en 802.11n permite alcanzar un mayor rendimiento.

802.11e
Con el estándar 802.11e, la tecnología IEEE 802.11 soporta tráfico en tiempo real en todo tipo de entornos y situaciones. Las aplicaciones en tiempo real son ahora una realidad por las garantías de Calidad de Servicio (QoS) proporcionado por el 802.11e. El objetivo del nuevo estándar 802.11e es introducir nuevos mecanismos a nivel de capa MAC para soportar los servicios que requieren garantías de Calidad de Servicio. Para cumplir con su objetivo IEEE 802.11e introduce un nuevo elemento llamado Hybrid Coordination Function (HCF) con dos tipos de acceso:
• (EDCA) Enhanced Distributed Channel Access y
• (HCCA) Controlled Access.

802.11i
Está dirigido a batir la vulnerabilidad actual en la seguridad para protocolos de autenticación y de codificación. El estándar abarca los protocolos 802.1x, TKIP (Protocolo de Claves Integra – Seguras – Temporales), y AES (Estándar de Cifrado Avanzado). Se implementa en WPA2.

802.11w
Todavía no concluido. TGw está trabajando en mejorar la capa del control de acceso del medio de IEEE 802.11 para aumentar la seguridad de los protocolos de autenticación y codificación. Las LANs inalámbricas envía la información del sistema en tramas desprotegidos, que los hace vulnerables. Este estándar podra proteger las redes contra la interrupción causada por los sistemas malévolos que crean peticiones desasociadas que parecen ser enviadas por el equipo válido. Se intenta extender la protección que aporta el estándar 802.11i más allá de los datos hasta las tramas de gestión, responsables de las principales operaciones de una red. Estas extensiones tendrán interacciones con IEEE 802.11r e IEEE 802.11u.
Protocolo propietario

802.11G+
Hoy en día el estándar 802.11G+, con una banda de 2.4 Ghz, alcanza una velocidad de transferencia de 125 Mbps. Esto es proporcionado por el chipset Atheros.
Canales y frecuencias
Referencias de documentación de Cisco Systems [1]
IEEE 802.11 b e IEEE 802.11 g
Los identificadores de canales, frecuencias centrales, y dominios reguladores para cada canal usado por IEEE 802.11b e IEEE 802.11g:
Identificador de Canal Frecuencia en MHz Dominios Reguladores
América (-A) EMEA (-E) Israel (-I) China (-C) Japón (-J)
1 2412 × × — × ×
2 2417 × × — × ×
3 2422 × × × × ×
4 2427 × × × × ×
5 2432 × × × × ×
6 2437 × × × × ×
7 2442 × × × × ×
8 2447 × × × × ×
9 2452 × × × × ×
10 2457 × × — × ×
11 2462 × × — × ×
12 2467 — × — — ×
13 2472 — × — — ×
14 2484 — — — — × ç

Los estándares 802.11b y 802.11g utilizan la banda de 2.4 – 2.5 Ghz. En esta banda, se definieron 11 canales utilizables por equipos WIFI, que pueden configurarse de acuerdo a necesidades particulares. Sin embargo, los 11 canales no son completamente independientes (canales contiguos se superponen y se producen interferencias). El ancho de banda de la señal (22MHz) es superior a la separación entre canales consecutivos (5MHz), por eso se hace necesaria una separación de al menos 5 canales con el fin de evitar interferencias entre celdas adyacentes. Tradicionalmente se utilizan los canales 1, 6 y 11, aunque se ha documentado que el uso de los canales 1, 5, 9 y 13 (en dominios europeos) no es perjudicial para el rendimiento de la red [2][3].

Esta asignación de canales usualmente se hace sólo en el Access Point, pues los “clientes” automáticamente detectan el canal, salvo en los casos en que se forma una red “Ad-Hoc” o punto a punto cuando no existe Access Point.

IEEE 802.11 a
Los identificadores de canales, frecuencias centrales, y dominios reguladores para cada canal usado por IEEE 802.11a:
Identificador de Canal Frecuencia en MHz Dominios Reguladores
América (-A) EMEA (-E) Israel (-I) Japón (-J)
34 5170 — × — —
36 5180 × — × —
38 5190 — × — —
40 5200 × — × —
42 5210 — × — —
44 5220 × — × —
46 5230 — × — —
48 5240 × — × —
52 5260 × — — ×
56 5280 × — — ×
60 5300 × — — ×
64 5320 × — — ×
149 5745 — — — —
153 5765 — — — —
157 5785 — — — —
161 5805 — — — —

Pese a que el ensanchado de espectro y la modulación son diferentes, en la banda de 5GHz se mantiene un ancho de banda cercano a los 20MHz, de manera que el requerimiento de separación de 5 canales de la banda de 2,4GHz se mantiene. Para la compatibilidad con sistemas de radar existentes y evitar interferencias con comunicaciones por satélite, en Europa se requiere la implementación de un control dinámico de las frecuencias y un control automático de las potencias de transmisión. Es por eso que para su uso en Europa, las redes 802.11a deben incorporar las modificaciones del 802.11h.

IEEE (punto flotante)

IEEE punto flotante

(Redirigido desde IEEE 754)
El estándar de la IEEE para aritmética en coma flotante (IEEE 754) es el estándar más extendido para las computaciones en punto flotante, y es seguido por muchas de las mejoras de CPU y FPU. El estándar define formatos para la representación de números en punto flotante (incluyendo el cero) y valores desnormalizados, así como valores especiales como infinito y NaN, con un conjunto de operaciones en punto flotante que trabaja sobre estos valores. También especifica cuatro modos de redondeo y cinco excepciones
IEEE 754 especifica cuatro formatos para la representación de valores en punto flotante: precisión simple (32 bits), precisión doble (64 bits), precisión simple extendida (≥ 43 bits, no usada normalmente) y precisión doble extendida (≥ 79 bits, usualmente implementada con 80 bits). Sólo los valores de 32 bits son requeridos por el estándar, los otros son opcionales. Muchos lenguajes especifican qué formatos y aritmética de la IEEE implementan, a pesar de que a veces son opcionales. Por ejemplo, el lenguaje de programación C, ahora permite pero no requiere la aritmética de la IEEE (el tipo de C float es típicamente usado para la precisión simple de la IEEE y el tipo double usa la precisión doble del la IEEE).

El título completo del estándar es IEEE Standard for Binary Floating-Point Arithmetic (ANSI/IEEE Std 754-1985), y también es conocido por IEC 60559:1989, Binary floating-point arithmetic for microprocessor systems (originalmente el número de referencia era IEC 559:1989). [1]
Contenido


Anatomía de un número en punto flotante
Convenciones de Bit usadas en este artículo
Los Bits dentro de una palabra de tamaño W están indexados por enteros en el rango 0 a W−1 inclusive. El bit cuyo índice es 0 se sitúa a la derecha. El menor bit indexado es normalmente el menos significativo.

Precisión simple 32-bits
Un número en punto flotante de precisión simple se almacena en una palabra de 32 bits. 1 8 23 <-- tamaño en bits +-+--------+-----------------------+ S Exp Mantisa +-+--------+-----------------------+ 31 30 23 22 0 <-- índice del bit (0 a la derecha) desplazado +127 donde S es el bit de signo y Exp es el campo exponente. (Para el signo: 0=Positivo ; 1= Negativo).

El exponente es desplazado en el un número en precisión simple, un exponente en el rango −126 a +127 es desplazado mediante la suma de 127 para obtener un valor en el rango 1 a 254 (0 y 255 tienen valores especiales descritos más adelante). Cuando se interpreta el valor en punto flotante, el número es desplazado de nuevo para obtener el exponente real.

El conjunto de valores posibles pueden ser divididos en los siguientes:
ceros
números normalizados
números desnormalizados
infinitos
NaN (¬E, no es un número, como por ejemplo, la raíz cuadrada de un número negativo)
Las clases se distinguen principalmente por el valor del campo Exp, siendo modificada ésta por el campo fracción. Considera Exp y Fracción como campos de números binarios sin signo (Exp se encuentra en el rango 0–255):

Para números normalizados, los más comunes, Exp es el exponente desplazado y Fracción es la parte fraccional de la mantisa (o significando). El número tiene valor v:
v = s × 2e × m

Donde
s = +1 (números positivos) cuando S es 0
s = −1 (números negativos) cuando S es 1
e = Exp − 127 (en otras palabras, al exponente se le suma 127 i se almacena, a esto también se le llama "biased with 127" en inglés)
m = 1.Fracción en binario (esto es, el significando es el número binario 1 seguido por el punto decimal seguido por los bits de Fracción). Por lo tanto, 1 ≤ m < 2.

Notas:
Los números desnormalizados son iguales excepto que e = −126 y m = 0.Fracción. (e NO es -127 : el significando ha de ser desplazado a la derecha por un bit más, de forma que incluya el bit principal, que no siempre es 1 en este caso. Esto se balancea incrementando el exponente a -126 para el cálculo.)
−126 es el menor exponente para un número desnormalizado

Hay dos ceros. +0 (S es 0) y −0 (S es 1)

Hay dos infinitos +∞ (S es 0) y −∞ (S es 1)

Los NaN s pueden tener un signo y un significando, pero estos no tienen otro significado que el que puedan aportar en pruebas de diagnóstico; el primer bit del significando es a menudo utilizado para distinguir NaN s señalizados de NaN s silenciosos
los NaNs y los infinitos tienen todos los bits a 1 en el campo Exp.

Un Ejemplo
Codifiquemos el número decimal -118.625 usando el sistema de la IEEE 754.
Necesitamos obtener el signo, el exponente y la fracción.
Dado que es un número negativo, el signo es "1". Busquemos los demás valores:
Primero, escribimos el número (sin signo) usando notación binaria. Mira el sistema de numeración binario para ver cómo hacer esto. El resultado es 1110110.101.
Ahora, movamos el punto decimal a la izquierda, dejando sólo un 1 a su izquierda.
1110110.101=1.110110101·26 Esto es un número en coma flotante normalizado.
La mantisa es la parte a la derecha del punto decimal, rellenada con ceros a la derecha hasta que obtengamos todos los 23 bits. Es decir 11011010100000000000000.
El exponente es 6, pero necesitamos convertirlo a binario y desplazarlo (de forma que el exponente más negativo es 0, y todos los exponentes son solamente números binarios no negativos).
Para el formato IEEE 754 de 32 bits, el desplazamiento es 127, así es que 6 + 127 = 133. En binario, esto se escribe como 10000101.
Poniendo todo junto: 1 8 23 <-- tamaño en bits +-+--------+-----------------------+ S Exp Mantisa 11000010111011010100000000000000 +-+--------+-----------------------+ 31 30 23 22 0 <-- índice del bit (0 a la derecha) desplazado +127
Precisión doble 64-bits

La precisión doble es esencialmente lo mismo exceptuando que los campos son de mayor tamaño (más bits por campo): 1 11 52 <-- tamaño en bits +-+-----------+----------------------------------------------+ S Exp Mantisa +-+-----------+----------------------------------------------+ 63 62 52 51 0 <-- índice del bit (0 a la derecha) desplazado +1023
Los NaN s y los infinitos son representados con todos los bits de los Exp siendo 1 (2047 en decimal).

Para los números normalizados, el exponente es desplazado +1023 (así nuestro ejemplo anterior es Exp - 1023) Para números denormalizados el exponente es -1022 (el mínimo exponente para un número normalizado— no es 1024 porque los números normalizados tienen un bit a 1 delante del punto binario y los números desnormalizados no). Como antes, ambos infinitos y los ceros contienen signo.

Comparación de números en punto flotante
La comparación de números en punto flotante se realiza generalmente usando instrucciones de punto flotante. Sin embargo esta representación (IEEE 754) hace la comparación de determinados subconjuntos posible byte-por-byte, si comparten el mismo orden de bytes y el mismo signo, y además los NaN s son excluidos.

Por ejemplo, para dos números positivos a y b, a < title="Lenguaje de programación C" href="http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_C">lenguaje de programación c. Este es un ejemplo de ordenación lexicográfica.

Redondeo de números en punto flotante
El estándar de la IEEE tiene cuatro formas diferentes de redondeo:
Unbiased que redondea al número más cercano, si el número cae en medio, este es redondeado al valor más cercano con un valor par (cero) en su bit menos significativo. Este modo es el requerido como por defecto.

Hacia el cero
Hacia el infinito positivo
Hacia el infinito negativo
Revisión del estándar

Nótese que el estándar IEEE 754 esta actualmente en revisión (2004). Ver IEEE 754r

IEEE (VHDL)

VHDL

VHDL es el acrónimo que representa la combinación de VHSIC y HDL, donde VHSIC es el acrónimo de Very High Speed Integrated Circuit y HDL es a su vez el acrónimo de Hardware Description Language.

Es un lenguaje usado por ingenieros definido por el IEEE (Institute of Electrical and Electronics Engineers) (ANSI/IEEE 1076-1993) que se usa para diseñar circuitos digitales. Otros métodos para diseñar circuitos son la captura de esquemas (con herramientas CAD) y los diagramas de bloques, pero éstos no son prácticos en diseños complejos. Otros lenguajes para el mismo propósito son Verilog y ABEL.

Aunque puede ser usado de forma general para describir cualquier circuito se usa principalmente para programar PLD (Programable Logic Device - Dispositivo Lógico Programable), FPGA (Field Programmable Gate Array), ASIC y similares.

Formas de describir un circuito
Dentro del VHDL hay varias formas con las que podemos diseñar el mismo circuito y es tarea del diseñador elegir la más apropiada.
Funcional: describimos la forma en que se comporta el circuito. Esta es la forma que más se parece a los lenguajes de software ya que la descripción es secuencial. Estas sentencias secuenciales se encuentran dentro de los llamados procesos en VHDL. Los procesos son ejecutados en paralelo entre sí, y en paralelo con asignaciones concurrentes de señales y con las instancias a otros componentes.
Flujo de datos: describe asignaciones concurrentes (en paralelo) de señales.
Estructural: se describe el circuito con instancias de componentes. Estas instancias forman un diseño de jerarquía superior, al conectar los puertos de estas instancias con las señales internas del circuito, o con puertos del circuito de jerarquía superior.
Mixta: combinación de todas o algunas de las anteriores.
En VHDL también existen formas metódicas para el diseño de máquinas de estados, filtros digitales, bancos de pruebas etc.
Secuencia de diseño

El flujo de diseño de un sistema podría ser:
División del diseño principal en módulos separados. La modularidad es uno de los conceptos principales de todo diseño. Normalmente se diferencia entre dos metodologías de diseño: top-down y botton-up. La metodología top-down consiste en que un diseño complejo se divide en diseños más sencillos que se puedan diseñar (o describir) más fácilmente. La metodología botton-up consiste en construir un diseño complejo a partir de módulos, ya diseñados, más simples. En la práctica, un diseño usa generalmente ambas metodologías.

Entrada de diseños, pueden usarse diversos métodos tal como VHDL como se vio anteriormente.
Simulación funcional, es decir, comprobaremos que lo escrito en el punto anterior realmente funciona como queremos, si no lo hace tendremos que modificarlo. En este tipo de simulación se comprueba que el código VHDL o Verilog (u otro tipo de lenguaje HDL) ejecuta correctamente lo que se pretende.

Síntesis. En este paso se adapta el diseño anterior (que sabemos que funciona) a un hardware en concreto, ya sea una FPGA o un ASIC. Hay sentencias del lenguaje que no son sintetizables, como por ejemplo divisiones o exponenciaciones con números no constantes. El hecho de que no todas las expresiones en VHDL sean sintetizables es que el VHDL es un lenguaje genérico para modelado de sistemas (no sólo para diseño de circuitos digitales), por lo que hay expresiones que no pueden ser transformadas a circuitos digitales. Durante la síntesis se tiene en cuenta la estructura interna del dispositivo, y se definen restricciones, como la asignación de pins. El sintetizador optimiza las expresiones lógicas con objeto de que ocupen menor área, o bien son eliminados las expresiones lógicas que no son usadas por el circuito.

Simulación post-síntesis. En este tipo de simulación se comprueba que el sintetizador ha realizado correctamente la síntesis del circuito, al transformar el código HDL en bloques lógicos conectados entre sí. Este paso es necesario ya que, a veces, los sintetizadores producen resultados de síntesis incorrectos, o bien realiza simplificaciones del circuito al optimizarlo.

Placement y routing. El proceso de placement consiste en situar los bloques digitales obtenidos en la síntesis de forma óptima, de forma que aquellos bloques que se encuentran muy interconectados entre si se sitúen próximamente. El proceso de routing consiste en rutar adecuadamente los bloques entre si, intentando minimizar retardos de propagación para maximizar la frecuencia máxima de funcionamiento del dispositivo.
Back-annotation. Una vez ha sido completado el placement & routing, se extraen los retardos de los bloques y sus interconexiones, con objeto de poder realizar una simulación temporal (también llamada simulación post-layout). Estos retardos son anotados en un fichero SDF (Standart Delay Format) que asocia a cada bloque o interconexción un retardo mínimo/típico/máximo.
Simulación temporal. A pesar de la simulación anterior puede que el diseño no funcione cuando se programa, una de las causas puede ser por los retardos internos del chip. Con esta simulación se puede comprobar, y si hay errores se tiene que volver a uno de los anteriores pasos.
Programación en el dispositivo. Se implementa el diseño en el dispositivo final y se comprueba el resultado.
Ejemplos de programas

En un diseño en VHDL tenemos dos partes principales: la entidad es como una caja negra en la que se definen entradas y salidas pero no se tiene acceso al interior, y es lo que usa cuanto se reutiliza un diseño dentro de otro; la arquitectura, que es donde se describe el diseño de la forma que se ha visto antes. Otros elementos del lenguaje son las librerías, paquetes, funciones...

Hola Mundo
Programa Hola Mundo
use std.textio.all;
-- bibliotecas entity hola is end entity hola;
architecture ITSA of hola is constant mensaje: string := "hola, saludos de Gordiano";
-- el mensaje begin process is-- proceso -> secuencial variable L: line;
begin write(L, mensaje);
writeline(output, L);
-- escribe todo lo anterior wait;
end process; end architecture ITSA;
Multiplexor

Este ejemplo simula un multiplexor de dos entradas.
Es un ejemplo sencillo que muestra como describir un elemento a partir de su funcionamiento.
entity MUX2a1 is port(a: in std_logic;
b: in std_logic;
sel: in std_logic;
z: out std_logic);
end entity architecture dataflow of MUX2a1 is begin <= a when sel='0' else b; end dataflow;
Un ejemplo algo más complejo es el de un multiplexor de cuatro entradas. Este ejemplo trabaja con vectores para controlar la entrada activa a través de la entrada
sel. entity MUX4a1 is
port(a: in std_logic;
b: in std_logic;
c: in std_logic;
d: in std_logic;
z: out std_logic;
sel: in std_logic_vector(1 downto 0));
end entity;
architecture dataflow of MUX4a1 is beginprocess(a,b,c,d,sel)begin case sel is when "00"=>z<= a;
when "01" => z <= b;
when "10" => z <= c;
when "11" => z <= d;
end case;
end process;
end dataflow;
Contador
Este es un ejemplo de un sistema que contará pulsos de un reloj digital (CLK) hasta llegar a 1000 y entonces volverá a empezar.
La inicialización se consigue con un
reset (RST). library IEEE;
-- bibliotecas use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity CONTADOR is port(RST,CLK: in std_logic;
-- entradas salida: inout std_logic_vector(9 downto 0));
-- salidas end entity;
architecture contador of contador is signal aux: std_logic_vector(9 downto 0);
-- señal auxiliar begin process (CLK,RST) - - programación secuencial begin if RST='1' then -- reset -> inicialización aux<="0000000000";
elsif(clk'event and clk='1') then -- flanco de reloj ascendente if(salida="1111101000") then
-- máxima cuenta aux<=(others=>'0');
-- vuelvo a comenzar else aux<=aux+1;
- cuento uno más end if;
end if;
salida<=aux;
-- saco la salida end process;
end contador;

Después de compilar este programa habría que indicar a la herramienta encargada del diseño las restricciones oportunas para asignar las señales de entrada y salida a las patillas del chip donde se programará o bien usar este diseño dentro de otro.

Herramientas
Warp
Altera
Xilinx
ActiveVHDL
GHDL (GNU)
Max+Plus II
ModelSim/ISE

Otros programas están incluyendo en sus últimas versiones la capacidad de programar FPGA usando sus propios lenguajes, pero también incluyen módulos en VHDL, por ejemplo Protel DXP, Labview o Matlab.