Descargar

Picoblaze: Microcontrolador Embebido de 8 bits

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    Picoblaze Es un microcontrolador de 8 bits, muy simple, orientado inicialmente para FPGAs de la familia Spartan 3 Está optimizado para este tipo de FPGAs. Se puede conseguir como softcore, provisto por Xilinx Una de sus características principales es que ocupa muy pocos recursos (5% en las 3S200 y menos del 0,3% en las 3S5000)

    edu.red

    Picoblaze FSMD (Finite State Machine with Data Path)

    edu.red

    Picoblaze FSMD (Finite State Machine with Data Path)

    edu.red

    Picoblaze FSMD (Finite State Machine with Data Path)

    edu.red

    Picoblaze Bloque Picoblaze y su memoria de instrucciones

    edu.red

    Picoblaze Características

    Tamaño de programa Utiliza un solo bloque de memoria que puede alojar 1024 instrucciones de 18 bits (direcciones de 10 bits)

    Registros Cuenta con 16 registros de propósito general de 8 bits, especificados como ‘s0’ .. ‘sF’. En el código assembly se pueden renombrar. Las operaciones pueden trabajar indistintamente con cada uno de los 16 registros. No existen registro reservados para ninguna tares en especial No cuenta con un acumulador, ya que cualquier registro puede cumplir con esa función.

    edu.red

    Picoblaze Características

    ALU Todas las operaciones son realizadas con un operando almacenado en un registro. El resultado es volcado en el mismo registro Para operaciones que necesiten dos operandos los mismos pueden ser especificados a través de un segundo registro o de una constante de 8 bits Las operaciones de suma/resta tienen la opción de incluir el flag de carry como entrada Las operaciones COMPARE y TEST permiten verificar el contenido de los registros sin alterarlos También incluye las operaciones LOAD, AND, OR, XOR, SHIFT y ROTATE

    edu.red

    Picoblaze Características

    Flags y Control del flujo del programa El resultado de la ALU determina el valor de los flags de carry y cero El flag de carry se pone en ‘1’ cuando existe un overflow en una operación aritmética. También se usa para capturar el bit desplazado en las operaciones de desplazamiento y rotación En la operación TEST el flag de carry indica si el contenido de un registro tiene paridad impar Los flags pueden ser utilizados para controlar la secuencia de ejecución de un programa por medio de instrucciones de control de flujo condicionales o incondicionales

    edu.red

    Picoblaze Características

    Reset El reset fuerza al procesador a pasar al estado inicial. El programa se ejecutará desde la posición 0 y las interrupciones serán deshabilitadas Los flags de estado serán reseteados, como así también la pila asociada a las instrucciones CALL/RETURN. El contenido de los registros no se altera

    edu.red

    Picoblaze Características

    Entrada / Salida Posee 256 puertos de entrada y 256 puertos de salida Para acceder a un puerto se debe fijar el valor de una dirección de 8 bits especificada por PORT_ID. Esta dirección puede ser especificada como un valor absoluto o, de manera indirecta, por medio del contenido de un registro La operación de entrada INPUT transfiere el valor existente en el puerto de entrada a uno de los 16 registros Una operación de entrada se indica a través de un pulso de la señal READ_STROBE. Esta señal indica que el procesador adquirió correctamente el dato La operación de salida OUTPUT transfiere el valor existente en uno de los 16 registros al puerto de salida Una operación de salida se indica a través de un pulso de la señal WRITE_STROBE. Usualmente, esta señal es utilizada como un habilitador de clock o de escritura

    edu.red

    Picoblaze Características

    Memoria Scratch Pad Es una memoria interna de propósito general de 64 bytes Con la instrucción STROE se puede cargar en cualquiera de sus 64 posiciones el valor de cualquiera de los 16 registros Con la instrucción FETCH se puede escribir en cualquiera de los 16 registros el valor almacenado en cualquiera de las 64 direcciones La dirección de 6 bits puede ser especificada por un valor absoluto o, de manera indirecta, por el valor contenido en un registro. En este último caso sólo se tienen en cuenta los 6 bits menos significativos Interrupción Existe una única señal de entrada de interrupción Por defecto las interrupciones están deshabilitadas (enmascaradas). Desde el programa pueden ser habilitadas y deshabilitadas

    edu.red

    Picoblaze Características

    Número de ciclos constante Todas las instrucciones bajo todas las condiciones se ejecutan en dos ciclos de reloj Esta caracterísitca (tasa de ejecución constante) es muy importante al momento del cálculo del tiempo de ejecución de un programa, particularmente cuando el procesador se encuentra embebido en un escenario de tiempo real Interrupción Existe una única señal de entrada de interrupción Por defecto las interrupciones están deshabilitadas (enmascaradas). Desde el programa pueden ser habilitadas y deshabilitadas

    edu.red

    Picoblaze Diagrama en bloques

    edu.red

    Picoblaze Movimiento de los datos

    edu.red

    Picoblaze Operaciones de entrada: Lógica de la interfaz

    edu.red

    Picoblaze Operaciones de entrada: Lógica de la interfaz

    Partes: 1, 2
    Página siguiente