Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de...

76
SEMINARIO DE EXTENSIÓN DE ISLD – 2017 Clase inicial: Jueves 24 de Agosto, de 8:15 a 10:15 hs, Aula 32. Total 12 clases, días Jueves subsiguientes. Sergio Noriega Diseño y verificación en VHDL de microcontrolador implementado en FPGA uC16

Transcript of Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de...

Page 1: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

SEMINARIO DE EXTENSIÓN DE ISLD – 2017

Clase inicial: Jueves 24 de Agosto, de 8:15 a 10:15 hs, Aula 32. Total 12 clases, días Jueves subsiguientes.

Sergio Noriega

Diseño y verificación en VHDL de microcontrolador

implementado en FPGA

uC16

Page 2: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Alcance del proyecto

uC

Conversor ADC

Controlador de ADC

ROM RAM

Controlador bus I2C

Controlador Display VGA

FPGA

Controlador Display LCD

Entradas DIGITAL

Salidas DIGITAL

Monitor VGA

Memoria serie

EEPROM

Display 16x2 LCD

Contador Universal

Page 3: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MÓDULO 1

Page 4: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

OBJETIVOS

EL PRESENTE SEMINARIO TIENE COMO OBJETIVO, INTRODUCIR A LOS ALUMNOS AL DISEÑO Y VERIFICACIÓN DE CIRCUITOS DIGITALES COMPLEJOS, EMPLEANDO TÉCNICAS BASADAS EN LENGUAJE DE DESCRIPCIÓN DE ALTO NIVEL DE ABSTRACCIÓN ,COMO ES EL VHDL Y EN PARTICULAR, ADENTRARSE EN EL DESARROLLO DE UN SISTEMA MICROPROCESADOR, EL CUAL ESTARÁ TOTALMENTE CONTENIDO DENTRO DE UNA FPGA. A DIFERENCIA DE LOS ESQUEMAS TRADICIONALES DE ENSEÑANZA PARA ENCARAR EL DISEÑO DE UN MICRO, AQUÍ SE EMPLEARÁ UNA FILOSOFÍA BASADA EN DISEÑAR HARDWARE PARA EL CONTROL DE UNA MEMORIA RAM, LA CUAL IRÁ EVOLUCIONANDO PASO A PASO. EN FORMA SECUENCIAL SE IRÁ INCREMENTANDO LA CAPACIDAD DE PROCESAMIENTO DE DICHA UNIDAD DE CONTROL, PUDIENDO SER EXTENSIVO PARA EL CONTROL DE OTROS PERIFÉRICOS, TALES COMO CONVERSORES DE DATOS, GENERADORES PWM, PLL’S, ETC. SE TRABAJARÁ EN BASE A UN MICRO CON ARQUITECTURA TIPO “CISC” DONDE LA CPU SE DISEÑARÁ EN BASE A MÁQUINA DE ESTADOS. DADO QUE EL DISEÑO SE DESARROLLARÁ DE MANERA SECUENCIAL, INCREMENTANDO EN CADA PROYECTO LA COMPLEJIDAD DE FUNCIONES, NO SE CONSIDERARÁN OPTIMIZACIONES EN CUANTO AL REORDENAMIENTO DE ESTADOS REQUERIDOS, (SALVO ALGUNA EXCEPCIÓN) A FIN DE SIMPLIFICAR EL SEGUIMIENTO DE LA EVOLUCIÓN DE LA MÁQUINA DE ESTADOS .

Page 5: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

uP Memoria

+ Periféricos

BUS DE CONTROL

BUS DE DIRECCIONES

BUS DE DATOS

DIAGRAMA EN BLOQUES DE UN SISTEMA BÁSICO DE MICROPROCESADOR

Page 6: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PROYECTO RAM Descripción en VHDL de una memoria SRAM de simple puerto (RAM)

Page 7: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MEM

OR

IA

FPGA

RAM

MEM

OR

IA

RA

M

clock

wren

data

address

q

12

16

GENERADOR DE ESTÍMULOS

DESDE TEST BENCH

BUS DATA MEM IN

BUS DATA MEM OUT

BUS DIR MEM

Page 8: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

ESTA ES UNA DE LAS POSIBLES MANERAS DE DESCRIBIR MEMORIA RAM SINCRÓNICA PARA QUE LUEGO EL COMPILADOR RECONOZCA Y SELECCIONE LOS BLOQUES DE RAM DEDICADOS PARA SU IMPLEMENTACIÓN. VENTAJA: DISEÑO OPTIMIZADO. DESVENTAJA: NO ES PORTABLE A OTRAS FPGA QUE NO TENGAN RAM DEDICADA.

Page 9: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

MODELO DE RAM CONFIGURADA: ADDRESS, DATA IN, WREN = SINCRO. DATA OUT = ASINCRO.

USE RAM DEDICADA

REGISTROS = 4096 ANCHO PALABRA =16

Page 10: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

Page 11: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM CONTENIDO DEL ARCHIVO RAM.HEX PARA ESTE PROYECTO

CONTENIDO EN HEXA DE LA MEMORIA RAM UNA VEZ CREADA.

FILE

EN FILE NEW MEMORY FILES: SE ELIGE EN ESTE CASO, HEXADECIMAL FILE.

Page 12: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM REPORTE FINAL DEL COMPILADOR

DETECCIÓN DEL COMPILADOR DE MEMORIA RAM

Page 13: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

Descripción del testbench en VHDL de la memoria SRAM especificada anteriormente.

Page 14: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

Después de declarar e instanciar la entidad de la memoria a probar, se generan dos procesos concurrentes: 1 – El del reloj, denominado “gen_reloj”. 2 – El de las señales estímulo, denominado “estimulos”.

Page 15: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

LECTURA DE LA RAM ESCRITURA DE LA RAM LECTURA

SE LEEN LAS 10 PRIMERAS POSICIONES DE MEMORIA RAM, LUEGO SE LAS ESCRIBE CON NÚMEROS CONCECUTIVOS Y SE VUELVEN A LEER DESDE EL INICIO LAS 20 PRIMERAS.

Diagrama temporal del TEST de la memoria RAM

Page 16: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

SECUENCIA DE INICIAL DE LECTURA DE DATOS: SE LEEN TODOS X”FFFF” SEGÚN LA INICIALIZACIÓN DE LA MEMORIA.

Page 17: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RAM

LUEGO DE LA SECUENCIA DE ESCRITURA SE LEEN LOS DATOS PREVIAMENTE ESCRITOS.

Page 18: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PROYECTO CU1 Descripción de un control de memoria RAM elemental para escritura-lectura con una máquina de estado y un registro contador.

CU1

Page 19: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

clock

BUS DATA MEM IN

BUS DATA MEM OUT

BUS DIR MEM

MEM

OR

IA

RST CLK

CONTROL

PC

16

FPGA

CU1

MEM

OR

IA

RA

M

X“0

00

0”

clock

wren

data

address

q

X“0

00

0”

opselecpc, clockpc

12

16

16

VALORES CONSTANTES

Page 20: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

FPGA PC16

PC

16

clockpc

entradapc

opselecpc (1..0)

16 16

GENERADOR DE ESTÍMULOS

DESDE TEST BENCH salidapc

Page 21: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Descripción en VHDL de un registro-contador de 16 bits preseteable (PC16)

Page 22: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PC16

Page 23: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PC16

Page 24: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PC16

Page 25: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PC16

Page 26: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU1

INSTANCIACIÓN DE LAS ENTIDADES “RAM” Y “PC16” DESCRIPTAS EN ARCHIVOS SEPARADOS E INVOCADOS AQUÍ COMO “COMPONENTES”

Page 27: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU1

Page 28: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU1

Page 29: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU1 REPORTE DEL COMPILADOR

Page 30: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU1 DIAGRAMA TEMPORAL MOSTRANDO LA EVOLUCIÓN DE LAS SEÑALES

Page 31: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

PROYECTO CU2 Descripción de un control de memoria RAM elemental para escritura-lectura con una máquina de estado y un registro contador y latch para el bus de direcciones.

CU2

Page 32: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

BUS DATA MEM IN

BUS DATA MEM OUT

BUS DIR MEM

MEM

OR

IA

BUS CONTROL

RST CLK

CONTROL

PC

16

MA

R

FPGA CU2

MEM

OR

IA

X”0

00

0”

dat

a

Page 33: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

Trabajos a realizar en este proyecto: 1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16. 3) Leer el dato desde la RAM de la siguiente posición de memoria. 4) Incrementar en ‘1’ el contenido de contador PC16. 5) Leer el dato desde la RAM.

Page 34: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Descripción en VHDL de un registro de 16 bits (MAR16)

Page 35: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

FPGA MAR

MA

R1

6

clockmar

entradamar

escribirmar

16 16

GENERADOR DE ESTÍMULOS

DESDE TEST BENCH salidamar

Page 36: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MAR

Page 37: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MAR

Page 38: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MAR

Page 39: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MAR

Page 40: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

Page 41: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

Page 42: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

CARGO PC16 CON X”0000” PROGRAMO NUEVO ESTADO

DESACTIVO PC16 PROGRAMO NUEVO ESTADO

Page 43: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

ESCRIBO REGISTRO MAR PROGRAMO COMO NUEVO ESTADO

DESACTIVO REGISTRO MAR PROGRAMO COMO NUEVO ESTADO

INCREMENTO PC16 PROGRAMO NUEVO ESTADO

DESACTIVO REGISTRO PC16 PROGRAMO COMO NUEVO ESTADO

Page 44: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

ESCRIBO REGISTRO MAR PROGRAMO COMO NUEVO ESTADO

DESACTIVO REGISTRO MAR PROGRAMO COMO NUEVO ESTADO

Page 45: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2 TEST-BENCH DEL PROYECTO CU2

Page 46: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2 TEST-BENCH DEL PROYECTO CU2

Page 47: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

Page 48: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

MEMORIA RAM PREVIAMENTE INICIALIZADA CON DATOS

Page 49: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU2

Page 50: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

PROYECTO CU3

DISEÑO EN VHDL DE CONTROLADOR DE ESCRITURA Y LECTURA DE UNA MEMORIA RAM.

Page 51: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

BUS DATA MEM IN

BUS DATA MEM OUT

BUS DIR MEM

MEM

OR

IA

BUS CONTROL

RST CLK

CONTROL

PC

16

MA

R

MD

RO

M

DR

I

FPGA CU3

MEM

OR

IA

RX

X”0

00

0”

MAR: MEMORY ADDRESS REGISTER MDRI: MEMORY DATA-IN REGISTER RX: DATA REGISTER MDRO: MEMORY DATA-OUT REGISTER

Page 52: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Descripción en VHDL de un registro de 16 bits (MDRO)

Page 53: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

FPGA

MDRO

MD

RO

clockmdro

entradamdro

escribirmdro

16 16

GENERADOR DE ESTÍMULOS

DESDE TEST BENCH salidamdro

Page 54: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MDRO

Page 55: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MDRO TEST-BENCH DE MDRO

Page 56: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

MDRO

Page 57: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Descripción en VHDL de un registro de 16 bits (MDRI)

Page 58: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

El mismo diseño que MDRO

Page 59: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

FPGA

MDRI

MD

RI

clockmdri

entradamdri

escribirmdri

16 16

GENERADOR DE ESTÍMULOS

DESDE TEST BENCH salidamdri

Page 60: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

TEST-BENCH DE MDRI

Page 61: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Descripción en VHDL de un registro-contador de 16 bits preseteable (RX)

Page 62: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

FPGA RX

RX

clockrx

entradarx

opselecrx (1..0)

16 16

GENERADOR DE ESTÍMULOS

DESDE TEST BENCH salidarx

resetrx

Page 63: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RX

Page 64: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RX TEST-BENCH DE RX

Page 65: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

RX

Page 66: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

Diagrama temporal de la prueba del registro de datos RX

INC DEC LATCH LATCH RESET SINCR.

RX

Page 67: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Page 68: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Page 69: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Page 70: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Carga PC con 0x0000

Habilita MAR

Page 71: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Escribe en MDRI

Page 72: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Carga Rx contenido de MDRI

Incrementa contenido de RX

Page 73: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Modo escritura de RAM

Carga Rx contenido de MDRI

Page 74: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Page 75: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

Page 76: Diseño y verificación en VHDL de microcontrolador ......1) Leer el dato desde la RAM (posición de memoria X”0000”). 2) Incrementar en ‘1’ el contenido de contador PC16.

CU3

1) Se lee la posición de memoria 0x000 que contiene dato = 0x0000 en MDRI. 2) Se escribe el RX con dicho valor. 3) Se incrementa el contenido de RX. 4) Se transfiere el contenido de RX a MDRO. 5) Se configura la RAM para escritura.