Download - PICOBLAZE
![Page 1: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/1.jpg)
PICOBLAZE
RESUMEN:Softmicro de 8 bits Xilinx
![Page 2: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/2.jpg)
1 Introducción2 Arquitectura Picoblaze3 Programación en ensamblador Picoblaze4 Integración con VHDL
Procesadores Embebidos de 8 bits
![Page 3: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/3.jpg)
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
![Page 4: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/4.jpg)
Diagrama de un fsmd y un microprocesador
![Page 5: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/5.jpg)
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
![Page 6: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/6.jpg)
Diagrama a bloques de picoblaze
![Page 7: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/7.jpg)
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
![Page 8: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/8.jpg)
KC
PSM
3
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
![Page 9: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/9.jpg)
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
KC
PSM
3
![Page 10: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/10.jpg)
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.
![Page 11: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/11.jpg)
![Page 12: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/12.jpg)
CONJUNTO DE INSTRUCCIONES57 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
![Page 13: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/13.jpg)
FORMATO DE INSTRUCCIÓN
![Page 14: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/14.jpg)
FORMATO DE INSTRUCCIÓN
![Page 15: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/15.jpg)
Comparación y Test
Comp: comparan 2 registros o bien reg – cte y las banderas de Z y C se ponen a 1
![Page 16: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/16.jpg)
![Page 17: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/17.jpg)
FORMATO DE INSTRUCCIÓN
![Page 18: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/18.jpg)
FORMATO DE INSTRUCCIÓN
![Page 19: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/19.jpg)
FORMATO DE INSTRUCCIÓN
![Page 20: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/20.jpg)
Instrucciones tipo lógicas
![Page 21: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/21.jpg)
Aritméticas
![Page 22: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/22.jpg)
De prueba y comparación
![Page 23: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/23.jpg)
Corrimiento y rotación
![Page 24: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/24.jpg)
![Page 25: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/25.jpg)
Movimiento de datos
![Page 26: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/26.jpg)
Control del flujo de programa
![Page 27: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/27.jpg)
![Page 28: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/28.jpg)
![Page 29: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/29.jpg)
Relacionadas con las interrupciones
![Page 30: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/30.jpg)
![Page 31: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/31.jpg)
![Page 32: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/32.jpg)
![Page 33: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/33.jpg)
![Page 34: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/34.jpg)
![Page 35: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/35.jpg)
![Page 36: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/36.jpg)
![Page 37: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/37.jpg)
![Page 38: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/38.jpg)
![Page 39: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/39.jpg)
![Page 40: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/40.jpg)
![Page 41: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/41.jpg)
![Page 42: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/42.jpg)
![Page 43: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/43.jpg)
![Page 44: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/44.jpg)
![Page 45: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/45.jpg)
![Page 46: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/46.jpg)
![Page 47: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/47.jpg)
![Page 48: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/48.jpg)
Directivas pblaze ide
![Page 49: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/49.jpg)
Diferencias entre la sintaxis del kcpsm3 y Pblaze Ide
![Page 50: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/50.jpg)
En matlab: Xlpb_as
Otra manera de ensamblar unprograma es a través de MATLAB. Paraesto, ejecutamos en la ventana decomandos >> cd c:\assembler; xlpb_as-p 'diego.psm'La primera instrucción cdc:\assembler es para ubicarnos en lacarpeta donde guardamos el programa yla segunda xlpb_as -p 'diego.psm' espara ensamblar el programa (se puedeexplorar en detalle el comando xlpb_asejecutando type xlpb_as en la ventanade comandos de MATLAB). Si elprograma no presenta errores, se tiene lasiguiente presentación en pantalla:
![Page 51: PICOBLAZE](https://reader033.vdocumento.com/reader033/viewer/2022051401/56813aec550346895da35982/html5/thumbnails/51.jpg)