Sistemas embebidos basados en FPGAs para instrumentación

Documentos relacionados
PicoBlaze (1) Diseño de Sistemas con FPGA Patricia Borensztejn

Sistemas embebidos basados en FPGAs para instrumentación

Introducción al Picoblaze

PicoBlaze(3) Interfaces de Entrada/Salida. Diseño de Sistemas con FPGA 1er cuatrimestre 2009 Patricia Borensztejn

Microprocesadores, Tema 2:

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

Arquitectura de Computadores II

El nivel ISA (II)! Conjunto de Instrucciones

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistemas Digitales basados en Microprocesador

Introducción a la arquitectura de computadores

Sistemas embebidos. Implementación en una FPGA de un sistema con el microcontrolador PicoBlaze.

Instituto Tecnológico de Morelia

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

Técnicas Digitales III

La arquitectura del 8086/8088

UNIDAD 3 ARQUITECTURA DEL Z80. Microprocesadores Otoño 2011

FPGA embedded Soft and Hard IP cores

Del PicoBlaze al MicroBlaze

Arquitectura de Computadores

TEMA 4. ARQUITECTURA IA-64

Unidad I: Organización del Computador. Ing. Marglorie Colina

Relación de Problemas I

Arquitectura de Computadores II Clase #3

FUNCIONAMIENTO DEL ORDENADOR

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI

Contenido TEMA 2 ENTRADA / SALIDA. Interfaz HW: buses del sistema. Interfaz HW de E/S

Arquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA

Organización del Computador I Verano. Control Multiciclo. Basado en el capítulo 5 del libro de Patterson y Hennessy

Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación

Tema 1: Introducción a los Sistemas Empotrados

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN

Esquema de partida. Maximum Operating Supply Voltage 5.5V USB 1 USART 1

Tema: Microprocesadores

UNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL SAN NICOLÁS INGENIERIA ELECTRÓNICA TÉCNICAS DIGITALES III

Tema 7: Esquema del Funcionamiento de una Computadora. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

TRAB. PRÁCTICO Nº 3: UNIDAD CENTRAL DE PROCESAMIENTO (C.P.U.)

Arquitectura (Procesador familia 80 x 86 )

ESTRUCTURA BÁSICA DE UN ORDENADOR

Winide y Kit EVALQTY CDM 2011

AUTOMATIZACIÓN INDUSTRIAL

MICROPROCESADORES PARTES DE UN MICROPROCESADOR

TEMA 1: Concepto de ordenador

Lenguaje binario. Código ASCII. Medidas de la información

MC. Christian Aldaco González. Microcontroladores

Arquitectura de Computadores

Estructura del Computador

Microprocesadores, Tema 8:

Análisis general de un Microprocesador

UNIVERSIDAD DE ANTIOQUIA DISEÑO DE SISTEMAS DIGITALES COMPLEJOS LABORATORIO 1 INTRODUCCIÓN AL MICROBLAZE Y AL ENTORNO EDK

Tema 2: Lenguaje máquina. La interfaz entre el hardware y el software

Laboratorio de Sistemas Embebidos Conceptos generales (2009)

Diseño del núcleo de un procesador AVR de 8 bits utilizando lógica programable de Altera

Estructura de un Ordenador

Arquitecturas vectoriales, SIMD y extensiones multimedia

Tema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel.

Microcontroladores PIC de Microchip: generalidades

INEL 4206 Microprocesadores Texto: Barry B Brey, The Intel Microprocessors: 8va. Ed., Prentice Hall, 2009

GRADO EN INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA INDUSTRIAL

MARCA: SIN MARCA MODELO: SIN MODELO

1. Introducción a la Arquitectura de Computadoras

Mapas de Memoria y E/S

Tutorial de ModelSim PE Student Edition

Nombre de la asignatura: Clave de la asignatura: SIB Carrera:

DISEÑO DE SISTEMAS ELECTRÓNICOS DIGITALES AVANZADOS

3 - Arquitectura interna de un up

Sistemas de 32 bits. Panorámica actual del mercado de los sistemas embebidos. Sistemas Embebidos, S.A.

Circuito de refresco de un Display

Organización del Computador I. Introducción e Historia

3.8 Construcción de una ALU básica

Tópicos Especiales de Mecatrónica

Procesador. Memoria. Ejemplo de un Procesador: MU0. Instrucciones. Direcciones. Registros. Datos. Instrucciones y datos SETI Tr.

Organizacion del Computador

Organización n del Computador. CPU (ISA) Conjunto de Instrucciones de la Arquitectura

Estructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez

Entradas y Salidas. Componentes básicos de una PC

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2

1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura

1.2.- EL MICROPROCESADOR.

28/09/2012. Interfaz con Dispositivos de Salida. Interfaz con Dispositivos de Entrada. Port Mapped. Memory mapped. Interfaz con Dispositivos I/O

ART: 8210 POSICIONADOR ELECTRO/NEUMATICO LINEAL LINEAR ELECTRO/PNEUMATIC POSITIONER

Emtech_FTHL. Descripción de la placa. Autor

Microcontroladores de Atmel

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)

TARJETA DE DESARROLLO DE SISTEMAS CON TECNOLOGÍA FPGA.

Prefacio...xiii Introducción... 1 Microprocesadores...1 Arquitectura Von Neumann...1 RISC vs CISC...2 Wait-states...3 Arquitectura Harvard...

Módulo I. Conceptos Introductorios. 1. Concepto de Computadora: Son esencialmente orientadas al Cálculo. Unica operación que realiza es la Suma.

Tópicos Especiales de Mecatrónica

1-Componentes Físicos y Lógicos de un Ordenador.

Registros SFR vistos hasta ahora: Microcontroladores PIC

Terminal Industrial de Mano (TIM)

Tema 15 ELECTRÓNICA DIGITAL. PROCESADORES DIGITALES (PARTE 2A) Arquitecturas Harvard y Von Neumann. Tipos de procesadores digitales

Velocidades Típicas de transferencia en Dispositivos I/O

Arquitectura Segmentada: Conceptos básicosb

Diseño de Hardware con VHDL

SASE MARZO PRELIMINAR. TDP Inertial Reference Unit

Ciclos de máquina. Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp

Transcripción:

Sistemas embebidos basados en FPGAs para instrumentación Introducción a los procesadores empotrados en FPGAs. PicoBlaze Guillermo Carpintero del Barrio

Arquitectura de un Procesador CPU Memoria Programas/Datos E/S Buses 2

Soft Cores Implementación sobre FPGA Requiere la descripción hardware de varios elementos nuevos: Procesador (Soft Core) PicoBlaze (gratuito) MicroBlaze (IP) Interfases E/S LEDs y 7-segmentos LCD IP CORE RS232 For different applications, avoids design of customized FSM hardware in each by keeping the same hardware (processor core) and using customized software 3

4

Características Básicas Datos CPU de 8-bits 16 registros de datos 64 posiciones de memoria de datos (dirección de 6-bit) @ 50 MHz, 25 MIPS Instrucciones ALU de 8-bits con flags C (carry) y Z (zero) 256puertos de entrada y 256puertos de salida 57 Instrucciones de 18-bits 1024 posiciones de memoria de instrucciones (dirección de 10-bits) 2 CPI (ejecución) y 5 CPI (una fuente de interrupción) Procesador sencillo para aplicaciones: Procesado sencillo de datos (en operaciones no críticas) Interfases E/S Escáner de teclado 5

Diagrama de Bloques (I) Harvard E/S Dirección: port_id Data: out_port in_port Direccionamiento Inmediato Instrucciones Call/Return 6

Bloques de síntesis KCPSM = Constant Coded Programable State Machine embedded_kcpsm3.vhd 7

8

El ensambladorde PicoBlazegenera un ficherovhdl en el quese define un bloquede 1K de RAM y suscontenidosiniciales(el programa). Este ficherovhdl se puedeutilizaren la síntesisy en la simulación. Si nuestro programa se llama test.psm, el ensamblador genera un fichero ROM que en vez de ser prog_rom.vhd es test.vhd 9

Diagrama de Bloques (II) CLAVES sx, sy registros internos del procesador (X, Y = 0x00 a 0x0F) pc contador de programa c, z, i carry, zero, interrupt flags 10

Interface del Procesador Name Direction Size Function clk input 1 System clock signal. reset input 1 Reset signal. address output 10 Address of the instruction memory. Specifies address of the instruction to be retrieved. instruction input 18 Fetched instruction. port_id output 8 Address of the input or output port. in_port input 8 Input data from I/O peripherals. read_strobe output 1 Strobe associated with the input operation. out_port output 8 Output data to I/O peripherals. write_strobe output 1 Strobe associated with the output operation. interrupt input 1 Interrupt request from I/O peripherals. interrupt_ack output 1 Interrupt acknowledgment to I/O peripherals 11

Flujo de diseño del sistema embebido 12

Juego de Instrucciones - Claves Sintaxis Rango Ejemplo Definition - sx 0 a f s7 Valor en registro 7 KK 0 a ff ab Valor hexab (0xAB) PORT(KK) 0 a ff PORT(2) Valor de entrada en puerto 2 PORT((sX)) 0 a f PORT((sa)) Valor de entrada en puerto indicado por registro a RAM(KK) 0 a f RAM(4) Valor en dirección 4 de la RAM 13

Juego de Instrucciones Repertorio (I) 14

Juego de Instrucciones Repertorio (II) 15

Juego de Instrucciones Repertorio (III) 16

Modelo del Programador (top of stack) 17

Juego de Instrucciones Movimiento de Datos 18

Juego de Instrucciones Modos de Direccionamiento Modo Directo INPUT s5, 2a ADD sa, sf Modo Inmediato ADDCY s2, 08 SUB s7, 7 Modo Indirecto INPUT s9, (s2) STORE s3, (sa) PORT(2a) s5 sa + sf sa s2 + 08 + C s2 s7 7 s7 PORT((s2)) s9 s3 RAM((sa)) 19

Juego de Instrucciones Users Guide Information (I) 1. Información completa sobre el Juego de Instrucciones 2. Información sobre operaciones no implementadas en el Juego de Instrucciones Complementar un Registro XOR sx,ff Complementar(Toggle) un Bit Puestaa 0 (Clear) un Registro Set Bit Clear Bit Nop XOR sx, <bit_mask> ; 1 en bit a complementar XOR sx, sx; sets ZERO flag LOAD sx,00 ; ZERO flag unaffected OR sx, <bit_mask> ; 1 en bit a activar AND sx, <bit_mask> ; 0 en bit a desactivar LOAD sx, sx 20

Juego de Instrucciones Users Guide Information (II) 21

Interrupciones Hay una única línea de solicitud de interrupción. Si necesitamos múltiples fuentes, podemos utilizar la FPGA para construir un sistema de gestión. La activación de la interrupción, causa la ejecución de CALL 3FF (última posición memoria prog). 22

Interrupciones 23

www.xilinx.com/picoblaze 24

Registered PicoBlaze Lounge @ www.xilinx.com KCPSM3.zip 25

KCPSM3.zip 26

KCPSM3 files txt editor Consultar el fichero KCPSM3_Manual.pdf 27

PicoBlaze IDE 28

Directivas del Ensamblador Equating symbolic name for an I/O port ID. N/A keyboard DSIN $0E switch DSIN $0F LED DSOUT $15 29

Diferencias en los Nemónicos Ensamblador 30

Diferencias en los Nemónicos Ensamblador (III) 31

Utilidades en pblaze IDE 32

http://www.mediatronix.com/pblazeide.htm 33

El objetivo final de todo esto..... El Hardware!! 34

Entradas y Salidas, mapeadas 35

36

Micro 37

MicroBlaze 38