PICOBLAZE RESUMEN: Softmicro de 8 bits Xilinx. 1 Introducción 2 Arquitectura Picoblaze 3 Programación en ensamblador Picoblaze 4 Integración con VHDL.

April 4, 2018 | Author: Anonymous | Category: Documents
Report this link


Description

Diapositiva 1 PICOBLAZE RESUMEN: Softmicro de 8 bits Xilinx Diapositiva 2 1 Introducción 2 Arquitectura Picoblaze 3 Programación en ensamblador Picoblaze 4 Integración con VHDL Procesadores Embebidos de 8 bits Diapositiva 3 Picoblaze Microprocesador de 8 bits Empotrado en un FPGA Xilinx Soft core Optimizado ocupa 200 celdas lógicas Menos del 5% Spartan 3s200 Aplicaciones Debido a que el desarrollo del software es usualmente mas fácil que crear hardware a la medida, la opción de un microcontrolador es preferida para aplicaciones no criticas en el tiempo. Picoblaze requiere 2 ciclos para completar una instrucción Si el reloj del sistema es de 50 MHz, Picoblaze ejecuta 25 millones de instrucciones por segundo Diapositiva 4 Diagrama de un fsmd y un microprocesador Diapositiva 5 Bus de datos de 8 bits ALU de 8 bits con banderas de acarreo e indicación de cero 16 registros de propósito general de 8 bits 64 byte de memoria de datos Formato de instrucciones de 18 bits Bus de direcciones de 10 bits (1024 instrucciones) Stack de 31 palabras 256 puertos de entrada 256 puertos de salida 2 ciclos de reloj por instrucción 5 ciclos de reloj para respuesta de interrupcion Organización básica Diapositiva 6 Diagrama a bloques de picoblaze Diapositiva 7 Top Level HDL modules Picoblaze es un sistema organizado en 2 módulos de alto nivel en HDL El modulo KCPSM3 es el procesador Picoblaze Diapositiva 8 KCPSM3 clk (entrada 1 bit), señal de reloj del sistema reset (entrada 1 bit), señal de reset address (salida 10 bits), dirección de la memoria de instrucciones, especifica la localidad de donde se va a leer la instrucción instruction ( entrada 18 bits), instrucción port_id(salida 8 bits), dirección del puerto de entrada o puerto de salida in_port(entrada 8 bits), datos de entrada de los periféricos de entrada /salida read_strobe(salida 1 bit), strobe asociado con la operación de entrada Diapositiva 9 o out_port( salida 8 bits), datos de salida hacia los periféricos de entrada/salida o write_strobe (salida 1 bit) strobe asociado con las operaciones de salida o interrupt ( entrada 1 bit) solicitud de interrupción de los periféricos de entrada/salida o interrupt_ack (salida 1 bit), reconocimiento de la interrupción hacia los periféricos de entrada/salida KCPSM3 Diapositiva 10 El segundo modulo es para la memoria de instrucciones Durante el desarrollo usualmente almacenamos el código ensamblado en la memoria y se configura como una ROM en el lenguaje de descripción de hardware. Diapositiva 11 Diapositiva 12 CONJUNTO DE INSTRUCCIONES 57 INSTRUCCIONES Instrucciones del tipo: Lógicas Aritméticas De prueba y comparación Corrimiento y rotación Movimiento de datos Control del flujo de programa Relacionadas con las interrupciones MODELO DE PROGRAMACIÓN Diapositiva 13 FORMATO DE INSTRUCCIÓN Diapositiva 14 Diapositiva 15 Comparación y Test Comp: comparan 2 registros o bien reg – cte y las banderas de Z y C se ponen a 1 Diapositiva 16 Diapositiva 17 FORMATO DE INSTRUCCIÓN Diapositiva 18 Diapositiva 19 Diapositiva 20 Instrucciones tipo lógicas Diapositiva 21 Aritméticas Diapositiva 22 De prueba y comparación Diapositiva 23 Corrimiento y rotación Diapositiva 24 Diapositiva 25 Movimiento de datos Diapositiva 26 Control del flujo de programa Diapositiva 27 Diapositiva 28 Diapositiva 29 Relacionadas con las interrupciones Diapositiva 30 Diapositiva 31 Diapositiva 32 Diapositiva 33 Diapositiva 34 Diapositiva 35 Diapositiva 36 Diapositiva 37 Diapositiva 38 Diapositiva 39 Diapositiva 40 Diapositiva 41 Diapositiva 42 Diapositiva 43 Diapositiva 44 Diapositiva 45 Diapositiva 46 Diapositiva 47 Diapositiva 48 Directivas pblaze ide Diapositiva 49 Diferencias entre la sintaxis del kcpsm3 y Pblaze Ide Diapositiva 50 En matlab: Xlpb_as Otra manera de ensamblar un programa es a través de MATLAB. Para esto, ejecutamos en la ventana de comandos >> cd c:\assembler; xlpb_as -p 'diego.psm' La primera instrucción cd c:\assembler es para ubicarnos en la carpeta donde guardamos el programa y la segunda xlpb_as -p 'diego.psm' es para ensamblar el programa (se puede explorar en detalle el comando xlpb_as ejecutando type xlpb_as en la ventana de comandos de MATLAB). Si el programa no presenta errores, se tiene la siguiente presentación en pantalla: Diapositiva 51


Comments

Copyright © 2025 UPDOCS Inc.