1.
Operaciones
externas del bus
En este apartado se analizan las diferentes formas de acceso del DSP, a través de los buses de dirección y datos de que dispone, a dispositivos de memoria y otros periféricos externos.
Un sistema microprocesador debe entenderse como sistema digital en el que existe un único maestro o master (el microprocesador) y multitud de esclavos o slaves (periféricos de almacenamiento de programas y datos, de conversión analógico-digital y digital-analógico, etc.). El maestro es el dispositivo que se encarga de gestionar la comunicación en el sistema digital y de controlar la transferencia de información por los buses del sistema. Toda transferencia de información que se realice en el sistema digital comienza cuando lo decida el microprocesador y concluye cuando lo desee el mismo microprocesador que comenzó la comunicación. De esta forma, el microprocesador activa, en modo lectura o escritura, y termina el acceso al periférico al que desee acceder mediante las líneas asociadas a los buses de control y dirección, siguiendo un estricto diagrama de tiempo suministrado por el fabricante, leyendo (o escribiendo) información del (en el) bus de datos del sistema.
El diseño de un sistema microprocesador requiere, por parte del diseñador, la consideración de dos aspectos. El primero, ya analizado en el primer parcial, consiste en evitar conflictos en los buses del sistema (dos dispositivos no pueden, bajo ningún concepto, activar, en el mismo instante de tiempo, la misma línea pues crearían un cortocircuito). El segundo aspecto está relacionado con la estructura maestro-esclavo del sistema microprocesador. Se ha comentado que es el maestro el que controla, en todo momento, la comunicación. La transferencia de los datos es iniciada y terminada por el maestro del sistema microprocesador, en nuestro caso, el DSP. Por ello, y para que la comunicación sea fiable, es preciso que al esclavo le dé tiempo a responder al maestro.
Figura 2.25. Estructura maestro-esclavo en un sistema
microprocesador.
Para que la
comunicación sea fiable o efectiva (y, por tanto, el maestro consigue leer el dato o instrucción que requiere del esclavo o escribir el dato que desea
almacenar en el esclavo) es necesario
que el sistema digital se diseñe de forma que el tiempo que transcurre desde
que se inicia el acceso hasta que éste termina () sea mayor que el tiempo que tarda en responder el esclavo (
). Es decir, si el microprocesador desea leer un dato o una
instrucción de un periférico externo y, para ello, comienza un acceso externo a
través del bus principal o del de expansión, al periférico le tiene que dar
tiempo a poner el dato requerido en el bus de datos antes de que el DSP
concluya el acceso al exterior para que el DSP lea correctamente el dato. Si el
microprocesador quiere escribir un dato en un periférico externo, debe de mantener
el dato en el bus de datos el tiempo que al periférico le haga falta para
almacenarlo en su interior. En caso contrario, el DSP no leería la instrucción
o el dato deseado y no almacenaría el dato en el periférico externo y, por
tanto, el sistema digital no funcionaría, o al menos no lo haría correctamente.
La segunda
condición básica necesaria para un diseño adecuado de un sistema
microprocesador se puede resumir, por tanto, en el cumplimiento de la siguiente
desigualdad: .