VOZ logo

Interrupciones y las ventajas del PCI-Express

Hace un par de semanas Digium anunció dos modelos nuevos de tarjetas de primarios con una característica especial: PCI-Express.
Hacía bastante tiempo que estábamos esperando estas nuevas tarjetas y es que ofrecen unas ventajas importantes frente a los mismos modelos PCI.

La principal, y que seguro que al usuario le interesa más, es que son mucho más baratas.
Otra ventaja es que no hace falta cambiar nada de la configuración el driver sigue siendo el mismo.
Pero seguro que al personal técnico le gusta más esta última ventaja: No dan conflictos de IRQ.

Pasaré a explicar el porqué:

Una placa base está dividida en dos partes: Zona norte y zona sur.

Esquema Placa Base

La zona norte es donde se encuentra el procesador, la memoria, la tarjeta gráfica y algunos otros dispositivos estándar. Todos estos dispositivos se comunican mediante un bus que llevan toda la información hasta el procesador y se unen en un controlador llamado «Controlador Norte«.

La zona sur es donde se encuentran los slots PCI, PCI-X, PCI-Express, USB, discos duros, etc. y la información que se envía y recibe desde estos componentes se comunican entre sí gracias a un controlador llamado «Controlador Sur»

Ambas zonas se comunican entre sí mediante un bus rápido y ámplio para poder pasar gran cantidad de información desde una PCI-X hasta el procesador. Este bus se conoce como «Bus de Entrada/Salida«.
Pues bien, la conexión del Controlador Sur con los slots PCI se produce mediante un enlace compartido: el mismo para todos los slots PCI.

Por este motivo, cuando instalamos dos tarjetas que están continuamente enviando información (como es el caso de las tarjetas de comunicaciones) en el bus que une los slots PCI  con el Controlador Sur se produce un «cuello de botella» que no deja pasar toda la información en el momento, y ha esperar su turno para poder ser enviada desde el Controlador Sur al Controlador Norte.

Esquema PCI PCIe


En este caso, cuando tenemos varias tarjetas de comunicaciones, ocurre lo mismo, los datos se bloquean en el cuello de botella provocando, en el caso de las analógicas: cortes de audio, y en el caso de las digitales: pérdidas de tramas, incluida la de sincronización lo que podría ocasionar en el reinicio de todo el primario.

Las IRQ sería el orden en el que las tarjetas pueden utilizar ese bus y claro, si dos tarjetas comparten interrupciones con otros dispositivos, el cuello de botella aumenta ocasionando problemas casi con toda certeza.

En el caso de las PCI-Express este funcionamiento cambia radicalmente, ya que el bus que comunica los slots con el controlador sur es único para cada slot, eliminando ese cuello de botella y permitiendo que pasen todos los datos con garantía de llegada en el momento establecido.

Entre la explicación (que habrá que leerla despacito) y las imágenes, espero que se haya comprendido. 🙂

Anterior artículoFreePBX 2.3.0 beta1 Released!
Siguiente artículo 788-787Asterisk 1.4.6 y 1.2.20 Released!