Tomate el bus



La historia de los bus de datos es bastante interesante y sin embargo la pasamos por alto, probablemente porque al único que le puede parecer interesante es a un nardogeek, o tal vez porque todo sucede "ahí adentro", pero para hacer una comparación, es como hacer una historia de los cilindros y los motores de un auto.

El bus de datos es lo que conecta todo, por donde la información realmente pasa. Un procesador se conecta a la memoria mediante un bus, se conecta al northbridge y southbridge por otros buses, que se conectan a los distintos dispositivos mediante otro bus, este otro, es el más importante porque es prácticamente la única forma de ver que sucede ahí adentro.

Trataré de hacer un repaso de las más importantes tecnologías que usamos para conectar cosas dentro de una PC, obviamente existen muchas más y de diversos tipos, pero la mayoría ha oído alguna vez hablar de ISA, VESA, PCI, AGP y PCIe así que de esas estaré comentando a continuación.



En los comienzos de la era de la PC el primer bus que diseño IBM (a.k.a. inmensa bola de mierda) para los x86 fue el famoso ISA (Industry Standard Architecture), era algo primitivo pero suficiente para la velocidad de los procesadores de esa época.

Cuando todavía medíamos las velocidades en unidades de megahertz el ISA era un bus paralelo de 8 bits (más adelante de 16) con una frecuencia de 8Mhz que permitía conectar hasta 6 dispositivos. No existía nada como el Hotplug o interfaces externas en 1981, pero con esto las primeras XT y AT tuvieron más que suficiente expansión.


El antiquísimo y muy usado ISA


Logró el bus ISA abrirle las puertas a una innumerable cantidad de pequeñas pymes tecnológicas ya que cualquier PC contaba con varios puertos ISA disponible para cualquier aplicación. Desde placas de sonido hasta de video, sintonizadoras a escáners, impresora o joystick, las primeras placas de red accesibles, modems, etc. Cualquiera podía crear su propia placa mientras respetase este bus standard.

En 1984 ampliaron el bus a 16 bits para las nuevas IBM AT y para 1987 era evidente que el ancho de banda de 8Mhz se había quedado muy corto para las aplicaciones posibles de la plataforma, hacía falta algo nuevo.

IBM intentó volver a tomar el control del mercado, tanta apertura le habia hecho perder mucho de la torta en manos de empresas más pequeñas con mejores precios, la apertura de la arquitectura x86 le permitió existir a tantos que hasta la existencia de IBM se vio amenazada, así que propusieron el MCA (Micro Channel Architecture).

El problema con el MCA es que, a diferencia de ISA que había sido publicado como especificación abierta y hasta con planos, el MCA era completamente cerrado y buscaba el pago de licencias para poder usarlo, era mucho más avanzado y ya poseía alguna de las características de posterior PCI, pero la industria tenía otra cosa en mente, extendieron el ISA a 32 bits y lo llamaron EISA, era mucho más barato, abierto y no requería pagar nuevas licencias de nada. y lo que era mejor, era compatible hacia atrás.

Durante mucho tiempo uno pudo conectar un modem viejo a una 386 gracias a esta extensión de ISA, y mientras IBM trataba de vender sus PS/2 con MCA la tecnología no fue adoptada por la mayoría de la industria que fue optando por lo más económicamente rentable, EISA.

EISA era casi igual a ISA pero con el bus a 32 bits. Permitía que más de un procesador compartiese el bus, aunque su velocidad seguía siendo reducida (8.33Mhz) el mayor ancho en bits y al ser un puerto paralelo, permitían mayor cantidad de datos. La tasa de transferencia teórica era de 33Mbps aunque llegaba a unos prácticos 20Mbps.

Para cuando llegaron las 486 hubo una nueva extensión, muchos de mis lectores habrán tenido una 486 DX2 o similar con el famoso VESA Local Bus. Llegado un punto hacía falta llegar más rápido al procesador, las placas de video necesitaban un espacio nuevo y acceder a la memoria más rápidamente.

Lo bizarro de las placas VESA era su tamaño, debido a la poca densidad de los circuitos de la época la placa era enorme, casi no entraba en ningún gabinete, tuve una, pero permitía cosas que hasta esa época nadie había visto en un hogar (video, juegos como el Wolfestein 3D o el Duke Nukem), también de 32 bits, con la misma velocidad que el procesador que use y como extensión del ISA pero con un diseño muy dependiente del 80486 para el cual había sido diseñado tuvo una pronta muerte.


Típica placa VESA gigante


El problema era ese diseño tan 486dependiente, al nacer el Pentium prácticamente quedó inutilizado ya que era un cambio de arquitectura total, empezó la era del PCI.

Cuando Intel se mete en algo lo hace a lo grande y la idea del PCI (Peripheral Component Interconnect) era originalmente para dar un paso adelante de ISA, MCA y EISA en el ambiente de servidores. Recién en 1994 cuando los Pentium llegaron al mercado hogareño pudo vencer a VESA y hacerse del mercado masivo.

El bus PCI combinaba varias de las tecnologías que MCA no había podido imponer, con un ancho de 32 a 64 bits y velocidades de 133Mbps (a 33Mhz) hasta 533 MBps (a 66 Mhz/64-bits) fue más que suficiente para casi todas las aplicaciones que se necesitaron durante casi una década. Era paralelo como sus antecesores pero permitía Hotplug, algo que Bill Gates quiso demostrar en la presentación de Windows 98, creo, y colgó a PC, si, esa presentación :D

PCI ha sido por lejos el bus más exitoso, las primeras placas de video 3D reales, las de red ethernet, SCSI, etc. Todo tenía su bus PCI, pero aun así la velocidad de avance en la tecnología terminó pidiéndoe más y PCI no podía ofrecerlo tan fácil, necesitaba una revisión que se estaba tardando en llegar.


Slots PCI


El mercado más exigente en ese momento fue el Gaming y las aplicaciones profesionales de video, y esto fue casi apenas haber logrado PCI conquistar el mercado, nació AGP (Accelerated Graphics Port) pensado exclusivamente para el video.

Con un ancho de 32 bits pero una tasa de hasta 2133 MB/s era realmente todo lo rápido que requería una placa de video. Al no compartir el bus con nadie más no necesitaba la cantida de señalización del PCI que estaba pensado para múltiples placas en un mismo bus. AGP permitía acceso directo al procesador y su memoria.


Slot AGP


Por ejemplo, una placa PCI si quería dibujar una textura debía tomarla de la memoria RAM, copiarla al framebuffer de la placa de video y recién ahí mostrarla. Vía AGP se podía utilizar el Graphics Address Remapping Table (GART) y tomar la textura directo de la RAM.

Con AGP no era imposible tener dos placas de video, pero ese tipo de sistemas se reservaron para servidores solamente, era muy costoso para una PC de escritorio. Actualmente el AGP está en desuso aunque todavía quedan en el mercado algunas placas de video con este puerto.

Pero no alcanzaba, se necesitaba algo más universal y a la vez lo suficientemente moderno, con más flexibilidad.

Así para el 2004 se adoptó un nuevo estandar: PCI-E (no confundir con PCI-X que era una versión extendida del PCI normal para servidores).

El actualmente utilizado PCIe fue diseñado para reemplazar tanto AGP como PCI y PCI-X, la idea era cubrir un rango más amplio y para ello se cambió sustancialmente la topología, pasaron de ser buses paralelos a un esquema serial de links punto a punto.

Es interesante porque se pueden usar "lineas" para cada dispositivo, así un modem no necesita más que 1x una placa de video puede usar 16x que en la versión 3.0 del protocolo llega a 16Gb/s de ancho de banda.

Además esta topología permite una cantidad mayor de dispositivos conectados y switchear entre cada línea sin problemas. Curiosamente a nivel software es totalmente compatible hacia atrás con PCI y PCI-X para fomentar el paso a la nueva tecnología, aun así no se puede instalar una placa PCI en un slot PCIe lo que implicó una nueva serie de motherboards y chipsets.


PCI Express


Como la mayoría de las placas de audio, red, modems y dispositivos en general no necesitan tanto ancho de banda es muy común que la mayoría de los motherboards cuenten con puertos PCI tradicionales, sorprendente o no el viejo PCI se mantiene vivo ya que tanta velocidad no hace falta para todo.

En cambio el PCIe permitió genialidades como los múltiples GPU (SLI de nVIDIA y Crossfire de Ati) logrando configuraciones de hasta cuatro placas de video simultáneamente o arrays de discos de alta velocidad, etc.

En los últimos 30 años pasamos de interfaces primitivas de 8 bits y 8Mhz a bestialidades de 32 o 64 bits con anchos de banda de 16Gb/s y no termina ahí, esto es tan sólo a nivel conectividad periférica, a nivel procesador tenemos otros casos como HyperTransport 3 con hasta 409Gb/s si, de 8mbps a 409.000mbps, un crecimiento impresionante y clarísimo que hace tan sólo 30 años y menos usábamos menos del 0,01% de la capacidad de un bus de datos actual y aun así todo funcionaba muy bien Guiño

Si te gustó esta nota podés...
Invitame un café en cafecito.app

Categoría: Tecnología Etiquetas:  agp bus de datos informática isa pci pcie pcix tecnología

Otros posts que podrían llegar a gustarte...

Comentarios

  • Jeremías     14/07/2010 - 13:47:48

    Loco, se me pianta un lagrimón. Me hiciste recordar muuuucho!. Gracias!

  • Sir Ramza -     14/07/2010 - 13:56:05

    estos son los post nardogeeks que me gustan :D

  • chimango     14/07/2010 - 14:28:30

    ey, que yo todavía tengo mi placa de video AGP! (una Geforce 6800 en la computadora desde donde escribo esto, desde que uso linux no cambio la computadora, ya van a ser 7 años...)

  • dieguitofernandez     14/07/2010 - 14:38:31

    Muy buen post!
    Los conozco todos los que nombras, pero pense que habia mas entre los ISA y los PCI.

    Muy bueno

  • Neri     14/07/2010 - 14:54:41

    nerd, te luciste hoy con este post. Tantos recuerdos!

  • Neri     14/07/2010 - 14:55:27


    Sir Ramza - dijo:

    estos son los post nardogeeks que me gustan :D

    totalmente!

  • riel     14/07/2010 - 15:03:01

    Ufffff que recuerdos, 486 DX2 66mhz con una trident vesa de 2mb (Si, a un amigo se le quema la misma trident y le saque el modulo de memoria y se la puse a mia) configurando el refresh del Samsung Syncmaster 3 lo pude poner al Güindors en 1024x768.... Todo un desafio en aquellas epocas!!! Al micromachines le podia cambiar la resolución y no se moria.... Se me pianta el lagrimon!!!

  • DrM!     14/07/2010 - 15:09:57

    Genialmente explicado!!!! Felicitaciones! Solo una cosa... me parece que cuando a Bill se le piantó el Windows fue con el tema de los USB, no con los PCI.

  • Arielito     14/07/2010 - 16:39:46


    DrM! dijo:

    Genialmente explicado!!!! Felicitaciones! Solo una cosa... me parece que cuando a Bill se le piantó el Windows fue con el tema de los USB, no con los PCI.


    Nop, en Efecto... presentación Windows 98, estaba "demostrando" el plug&play de un scanner.... hasta que aparecio la BSOD (Blue Screen of Death) Risa total del auditorio y el Ingeniero que desarrollo la libreria ahora debe estar en Pekin haciendo "Casio´s"

  • Fabio     14/07/2010 - 17:06:25


    Arielito dijo:

    DrM! dijo:
    Genialmente explicado!!!! Felicitaciones! Solo una cosa... me parece que cuando a Bill se le piantó el Windows fue con el tema de los USB, no con los PCI.


    Nop, en Efecto... presentación Windows 98, estaba demostrando el plug&play de un scanner.... hasta que aparecio la BSOD (Blue Screen of Death) Risa total del auditorio y el Ingeniero que desarrollo la libreria ahora debe estar en Pekin haciendo Casio´s


    claro, y recordemos que sucedió DOS veces, por ahí la segunda era con los usb, yo recuerdo la primera que fue la demo del plug&play con los PCI

  • gorlok     14/07/2010 - 19:21:03

    Muy bueno. Te podrías mandar más adelante un informe similar con los IDE/SCSI/SATA/SAS en servidor/desktop/móvil que tiene un historia similar y paralela muy interesante también.
    ¿Conociste las multi-ide de las 286? Eran IDE, paralelo, puerto de juegos, etc., todo en uno, en una modesta "plaquita" ISA :D ¡¡¡que no se fuera quemar o estabas al horno!!! :D

  • Goncha     14/07/2010 - 20:30:11

    Te felicito. ESTOS son los post q nos gusta ver cada tanto por acá, esto y los de la universidad de garchford jeje

  • R4F431     14/07/2010 - 23:05:12

    Coincido, estos posts se extrañaban mucho. Por cierto en algún lugar de mi casa tengo un tendal de placas vesa juntando tierra, no las puedo tirar :D

  • Dario     14/07/2010 - 23:27:33

    Excelente post Fabio!

    Yo también arranqué con una 486 DX4, con la querida Cirrus Logic Vesa Local Bus... y lo que más recuerdo es que era casi imposible insertarla en el slot: si entraba de un lado, se salia del otro.

    Cuantos recuerdos

  • Fabio     15/07/2010 - 00:31:58


    gorlok dijo:

    Muy bueno. Te podrías mandar más adelante un informe similar con los IDE/SCSI/SATA/SAS en servidor/desktop/móvil que tiene un historia similar y paralela muy interesante también.
    ¿Conociste las multi-ide de las 286? Eran IDE, paralelo, puerto de juegos, etc., todo en uno, en una modesta plaquita ISA :D ¡¡¡que no se fuera quemar o estabas al horno!!! :D


    seee, las conocía, eran un martirio, el día que se jodían se empezaba a romper todo en un mismo día :D

  • Adrian Ramiro     15/07/2010 - 02:58:30

    gorlok, cuando se quemaban las IDE´s esas eran reemplazables, hoy quemas un USB on board y estas al horno, en esa época te palmaba un RS232 o el FDC y cambiabas la placa, o agregabas otra para tener múltiples LPT :P

    Volviendo sobre las VESA, eran un despelote, más de una ves daban problemas. Hasta no hace mucho tuve una Sound Blaster AWE 32 tan larga como una placa VESA, aunque solo era ISA y me obligó a hacer malabares para ponerla en algunos mothers

  • Omar     15/07/2010 - 12:07:20

    Excelente post!!! Un genial resumen histórico

  • Sergio     15/07/2010 - 14:32:22

    che esta bueno como reseña

    y con respecto a las multi-ide jaja si eran un embole me acuerdo

    tengo un monton en cajas en un galpon en casa y varias mothers de 486, estaba pensando en pegarlas y hacer alguna obrita de arte o algo asi


    p/d quedo bueno el fondito de la chica con la pistola abajo xD

  • Nachox     15/07/2010 - 15:16:04

    Justamente lo que me hacia falta para terminar de sentirme viejo...
    :|

  • RFM     15/07/2010 - 18:37:35

    Muy copado me gustan los post para geeks jeje

  • Diego Diego     17/07/2010 - 18:02:06

    Esto está muy bueno, gracias.

  • DAGO     19/07/2010 - 01:34:05

    Lo que estaba enchufando Bill Gates en aquella presentación era un Escaner USB, acá tenes el video http://www.youtube.com/watch?v=TrAD25V7ll8

Deje su comentario:

Tranquilo, su email nunca será revelado.
La gente de bien tiene URL, no se olvide del http/https

Negrita Cursiva Imagen Enlace


Comentarios ofensivos o que no hagan al enriquecimiento del post serán borrados/editados por el administrador. Los comentarios son filtrados por ReCaptcha V3.