MOTHERBOARDS: "BIOS"

En la edición pasada vimos la configuración básica del sistema, qué es Flash BIOS, cuáles son las funciones del BIOS, interrupciones. En esta entrega explicaremos las rutinas elementales del BIOS, el Set up BIOS, Post, errores del AMI BIOS, y otros temas de gran importancia, relacionados con los motherboards. Como siempre le decimos, si desea saber más sobre este tema, puede visitar nuestro sitio de internet en www.webelectronica.com.ar, donde encontrará abundante información y las formas de acceder a lo que usted necesita.

Rutinas Elementales del BIOS

Las instrucciones detalladas que gobiernan las operaciones de bajo nivel son provistas por el software grabado en el BIOS. El ROM es una memoria lenta en comparación con la RAM, así que emplean algunas técnicas para mejorar su funcionamiento.

La memoria RAM es de 6 a 8 veces más rápida que la ROM, por lo que el copiar la memoria ROM a una RAM, nos da velocidad. Otra de las ventajas es poder actualizar su contenido mediante programas o “drivers” nuevos. El copiar el BIOS a RAM se le llama Shadow Memory. El ROM BIOS guarda un juego fundamental de programas que proporcionan soporte para la operación de la computadora.

 
SET UP BIOS
Esta sección permite configurar la computadora de acuerdo a las características del hardware de cada motherboard. En las primeras motherboard, esos parámetros se configuraban por medio de DIP switches (pequeños interruptores con valor “conectado o desconectado”) o “jumpers”.

Este sistema se usa para la velocidad del reloj. Al salir las AT, se cambió la configuración por medio de un diskette y posteriormente se activó un menú cuando el usuario presionaba ciertas teclas al mismo tiempo. Al ir aumentando las características del sistema, los parámetros a controlar también crecieron. Desafortunadamente, estos parámetros no se han estandarizado, por lo que cada fabricante utiliza los que considera más convenientes, complicando a los usuarios su utilización. En algunas ocasiones es el BIOS el que los controla, en otros es el Chipset y existen también versiones en la motherboard, que es a través de jumpers.

Algunos tips para optimizar el BIOS de su computadora son:

  1. Asegurarse de que se tienen declarados todos los componentes del sistema (fecha, hora, discos, etc.)

  2. Asegurarse que la/s memoria/ s caché (L1 y L2) está/n habilitada/s.
    Obviamente debe contar con ambas para habilitarlas.

  3. Asegurarse que los estados de espera (wait states) tengan los valores mínimos, si coloca un valor que su sistema no soporta, éste se trabará.

  4. Asegurarse que la memoria Shadow está habilitada. Recuerde que la memoria RAM es más rápida que la ROM.

Si desea borrar el contenido del BIOS, basta con entrar al programa y poner los valores que usted desea. Otra opción es desconectar la batería o poner en “corto” el jumper que normalmente se destina para ello.

 
POST
Cuando el equipo se prende, el BIOS toma el control del sistema y lo primero que hace es una prueba del sistema. Se inicializa el video, se buscan tarjetas instaladas y se prueba la memoria RAM existente. La mayoría de los sistemas realizan los siguientes cuatro pasos:
  1. Se ve en pantalla la información de la tarjeta de video que está siendo usada. Esta información la toma del BIOS de la misma tarjeta. Esta tarjeta está en la primera dirección de memoria que busca el POST.

  2. Se manda el mensaje del fabricante del BIOS y la versión del mismo. Este mensaje es importante porque puede ayudarle a resolver algunos problemas de conflictos.

  3. Se revisa la memoria existente en el sistema.

  4. Una vez que se han verificado los demás componentes del sistema, se corre el “bootstrap”, que es la rutina encargada de llamar al sistema operativo de disco (DOS, Windows, OS-2, etc)

Un cuadro con las características del sistema aparece por breves momentos. En él, se tiene la siguiente información. (Ver tabla de características del sistema).

 
ERRORES DEL AMI BIOS
La compañía AMI ha definido varios tipos de errores que pueden ser identificados mediante sonidos hechos con la bocina del sistema. Recordemos que si existen errores a este nivel, por lo general el monitor no desplegará nada y sería mucho más difícil poder identificarlos; éstos son:

1 beep:
Error en el refresco de la memoria DRAM. El circuito del motherboard no funciona correctamente.

2 beeps:
Se detectó un error de paridad en la memoria.

3 beeps:
Error en los primeros 64k de memoria, no se puede cargar nada.

4 beeps:
El reloj de tiempo real del sistema no funciona correctamente.

5 beeps:
Error en el microprocesador.

6 beeps:
Error en la controladora del teclado. El CPU no puede trabajar en modo virtual.

7 beeps:
El CPU generó un error de interrupción.

8 beeps:
Error de lectura o escritura en tarjeta de video (no reconoce la memoria de video)

9 beeps:
No concuerda la paridad del ROM BIOS, es probable que esté dañado.

10 beeps:
El registro del CMOS está dañado.

11 beeps:
La memoria caché externa está dañada

1 beep largo:
Problemas con la memoria.

1 beep corto y dos largos:
Falló la prueba de video. No hay comunicación con el BIOS de video o el BIOS de la tarjeta no funciona.

1 beep largo y tres cortos:
Falla en la tarjeta de video. Las posibles causas son el DAC, la detección del monitor o la memoria de video.

 
PLUG AND PLAY
La primera aparición del Plugand-Play (PnP) apareció con las especificaciones originales del ISA desarrollado por Intel-Microsoft el 28 de Mayo de 1993. Esto inspiró a otras compañías a unirse a esta nueva tecnología y a asociarse para comenzar a desarrollar los estándares y extenderla a otros problemas en los procesos de configuración, particularmente SCSI, Compaq Computer Corporation and Phoenix Technologies se unieron a Intel para desarrollar las especificaciones de BIOS para plug and play (PnP) y su primera versión fue el 1º de noviembre de 1993. En nuestros días los sistemas plug-and-play (PnP) trabajan cambiando las responsabilidades de recordar y asignar las opciones de configuración del hardware y software de nosotros al sistema Op. de la computadora. Después de todo, una PC probablemente tiene mejor memoria que nosotros. Plug-and-play (PnP) requiere por lo menos 3 elementos del sistema que se encuentran fundamentados en el estándar-PC y su BIOS, el sistema Op, la tarjeta de expansión y los componentes adjuntos a la PC.

Cualquier dispositivo viejo, que no se alinee a los estándares de plug-and-play (PnP), es considerado como un dispositivo legacy. El sistema plug-and- play (PnP) intenta acomodar dispositivos legacy, pero no puede resolver todos los conflictos entre ellos. Para acelerar la muerte de los productos legacy, Intel y Microsoft han dado el manual de soporte para ISA en sus sistemas más recientes.

Todos los sistemas operativos de Microsoft desde Windows 95 tienen plug-and-play (PnP) y aproximadamente todas las tarjetas de expansión PCI se han fabricado para los estándares plug-and-play (PnP). La idea principal de plug-and-play (PnP) es que el sistema se haga responsable de la configuración del hardware y software, que se está agregando. El objetivo era crear PCs sin switches, ni jumpers o headches. El procedimiento básico de plug-and-play (PnP) se resume en un proceso de 3 pasos:

  1. El sistema checa los recursos que cada dispositivo de expansión necesita
  2. Coordina las asignaciones para evitar conflictos
  3. Le dice al sistema y software las elecciones que ha hecho.

El proceso de configuración de Plug-and-play (PnP) es capaz de desactivarse por sí sola en caso de que no responda normalmente, eso es, se desconecta de todos los recursos del sistema evitando cualquier tipo de conflicto. En una tarjeta de expansión, las especificaciones de plugand- play (PnP) definen explícitamente 8 registros de control, y reservan 2 grandes rangos, uno de 24 registros para futuras necesidades del estándar y un segundo rango de 16, que los fabricantes de tarjetas pueden asignar para sus propios propósitos. Además las especificaciones de plug-and-play (PnP) permiten tarjetas que pueden ser configuradas como dispositivos lógicos y les asigna algunos puertos de control. La dirección del puerto le permite al Write Data port seleccionar cuál de los dispositivos lógicos está activo y los recursos del sistema que se encuentra ocupado.

 
FIRMWARE DE LA PC
El sistema operativo actúa como interfase entre los programas en ejecución y los recursos de hardware de la PC, proveyendo además su administración. No obstante, existe un escalón más bajo aún de software, que permite al sistema operativo y a programas entenderse con los dispositivos de hardware. Se trata del BIOS (Basic Input Output System). El BIOS consiste, hablando más propiamente, en firmware, es decir, software grabado en una memoria no volátil y de sólo lectura (ROM). Habitualmente se trata de una PROM o EPROM, en la que se ha grabado el software necesario para garantizar el arranque (star up) del equipo, la carga del sistema operativo y la provisión de “servicios” para la operación de periféricos.

Desde el punto de vista físico, el BIOS reside en una o dos PROMs, normalmente identificadas con el copyright y la versión del Firmware contenido. Considerado como memoria (de sólo lectura), el BIOS se encuentra mapeada en el segmento F000h. Es posible programar algunos equipos para que copien el código de la ROM a algún área del RAM, y ejecuten el BIOS desde allí, con la ventaja de un mejor tiempo de acceso.

 
PASO DE PARAMETROS
Porque pocas interrupciones están disponibles, diferentes funciones están disponibles para muchas interrupciones. Estas funciones están identificadas y técnicamente se llaman parameter passing. Un programa que necesita servicios del BIOS, pasa un número determinado de comandos para ser operados en el BIOS como un parámetro, un valor se mantiene en uno o más de los registros en el tiempo que la interrupción del software se emite. El programa que realiza el llamado decide qué función quiere que el BIOS realice, carga el valor del parámetro, el registro apropiado y ejecuta la interrupción. El código del BIOS examina el registro para determinar qué función es la que quiere el programa. Esta misma técnica es usada para pasar información entre programas que llaman al BIOS. Los datos que son pasados a través de él son simplemente cargados en un registro y el parámetro identifica el comando en el otro registro. Parar regresar los resultados al programa que hizo el llamado, el BIOS carga los datos en un registro al cual se podrá acceder para leerlo.

Usar registros para mover datos dentro de las rutinas del BIOS, tiene sus propios inconvenientes. Los parámetros y funciones están limitadas a aquellas que son comunes entre PCs. Existe un pequeño espacio disponible para los programas que quieran agregar sus propias interrupciones. Más aún, el escaso número de registros en los procesadores Intel limita el número de parámetros, que pueden ser pasados desde y a una función. Muchas rutinas usan un byte de datos individual. Para mover bloques de datos más grandes, algunas rutinas de algunos BIOS, en muchos programas usan la memoria. Un programa que hace un llamado, almacena los valores que quiere pasar a la subrutina en un bloque de la RAM que está direccionado. Y con esto pasa a la subrutina la localidad de los datos y la subrutina trabaja con los datos.

 
LIGAS DE HARDWARE
Controlar el hardware de una PC requiere que el sistema tenga la posibilidad de pasar comandos, datos e información al hardware. Por ejemplo, si se cuenta con un modem, será necesario que podamos mandar comandos, datos e información al hardware; o para marcar un número de teléfono o cambiar su velocidad. Una vez que estamos comunicados, se tiene que mardar bytes, aun más, megabytes de datos al modem y recibir la misma cantidad de byes o más bytes de regreso. Las rutinas del BIOS pueden usar memoria o puertos de E/S para pasar los comandos y datos a los diferentes dispositivos del hardware. Cuando un dispositivo usa un bloque de memoria para intercambiar información, se denomina mapeo de E/S. Las rutinas del BIOS y dispositivos de hardware comparten un rango común de direcciones de memoria, que ellos usan para pasar bytes de información. Los programas usan rutinas del BIOS en lugar de direcciones físicas para alcanzar los dispositivos. El mapeo de E/S usa puertos de Entrada/Salida para intercambiar información. Un puerto de entrada y salida de un microprocesador es un rango especial de direcciones que se encuentran aisladas por la memoria principal y tienen acceso mediante instrucciones especiales. En el esquema de Intel, sus microprocesadores tienen un rango de 65,536 puertos de E/S (comparado a los más de 4 billones de direcciones de memoria discreta que se tienen). Como sea. Gracias a un error en el diseño de la primera tarjeta de expansión para PCs, solo 1,024 son comúnmente asignados a dispositivos que se añaden a las ranuras estándar de expansión de una PC. Para reducir el costo de las primeras tarjetas de expansión, se diseñaron tarjetas para decodificar sólo 10 de 16 líneas de direcciones.

Aunque nuevos buses pueden tomar ventaja del rango de puertos de E/S, las tarjetas de expansión rápidamente consumieron los puertos disponibles o 2 tarjetas pueden tratar de usar el mismo puerto. Tales conflictos entre tarjetas es la razón más común de por qué las tarjetas de expansión no operan apropiadamente. Algunas veces el instalar una tarjeta de expansión crea un conflicto entre puertos que impide que el resto del sistema continúe trabajando del todo correctamente. La siguiente tabla lista algunos de los conflictos más comunes que surgen a la hora de la asignación de puertos de E/S. Puertos comunes de asignación de E/S y conflictos potenciales. Ver tabla 3.

Si nuestra PC se encuentra trabajando con el sistema operativo Windows, nosotros podemos ver los puertos actuales de E/S asignados por nuestra PC. Para ver estas asignaciones, podemos consultar el Administrador de Dispositivos seleccionando el ícono de Sistema en la opción del menú de panel de control. Seleccionamos nuestra computadora en el menú de dispositivos y damos un click derecho y en el menú seleccionamos propiedades. Del Visor de Recursos que aparece en nuestra pantalla, seleccionamos el radio botón E/S, de esta manera podremos ver todos los puertos de E/S que se encuentran en uso y el hardware que los usa. Con dispositivos Plug and Play (PnP), Windows generalmente hará las asignaciones de los puertos de E/S, si queremos reservar uno o más puertos de E/S, para dispositivos que se instalarán después, existe una opción. Buses como el PCI proveen acceso al rango completo de puertos de E/S, reduciendo la probabilidad de la existencia de conflictos, las tarjetas de expansión Plug and Play (PnP) se supone que automáticamente pueden resolver conflictos entre puertos.

 
Sobre un trabajo de Jonás Heriberto Mejía Robles
FIGURA 1
 
FIGURA 2
 
FIGURA 3
 
FIGURA 4
 
TABLA 1
 
TABLA 2
 
 
 
 
 
PROMOCIONES
 
 
PROMOCIONES
 
 
PROMOCIONES
 
 
PROMOCIONES
 
 
PROMOCIONES
 
 
PROMOCIONES