▷ Microcontroller Architecture #PIC #16F877A based on #FPGA
⭐⭐⭐⭐⭐ Microcontroller Architecture #PIC #16F877A based on #FPGA
- ➡️ #DigitalSystems #DigitalElectronic #DigitalCircuits #HDL #VHDL #FPGA
- ⭐ https://github.com/vasanza/MSI-VHDL
✅ Objectives:
- Replicar la arquitectura del microcontrolador #16F877A en una #FPGA.
- Implementar un downloader capaz de recibir instrucciones por puerto serial.
- Medir los tiempos de procesamiento, % de #CPU utilizado y % de memoria utilizada, en el procesador #NIOSII, #ARM ó ambos, según sea el caso (radar chart).
✅ Goals:
- Implementar un Sistema Embebido basado en #FPGA que simule el comportamiento de un microprocesador capaz de recibir por comunicación serial el programa de bajo nivel o sea capaz de leer un archivo (.hex) con el programa de bajo nivel almacenados en memoria Double Data Rate 3 Synchronous Dynamic Random-Access Memory #DDR3_SDRAM, el acceso a la memoria o al puerto serial #UART se lo realizará a través del Hard Processor System #HPS. El sistema deberá tener como salida un monitor VGA ó HDMI que muestre el estado de los registros, banderas, acumuladores, etc. del microprocesador en tiempo real. El sistema basado en #FPGA es quien ejecuta de forma concurrente todos los bloques del microcontrolador #PIC #16F877A, pero los grupos que tengan estudiantes de telemática, no usarán la salida #VGA ó HDMI sino deberán acceder a la interfaz visual por medio de una aplicación web desplegada en un servidor de aplicaciones web corriendo en un sistema operativo linux con procesador #ARM.
✅ Abstract:
- Los microprocesadores en su arquitectura interna tienen un microprocesador cuyos bloques principales son: Unidad de entrada, unidad de salida, memoria, unidad de control y unidad, aritmética y lógica. Dentro de la #ALU existe un decodificador de instrucciones que interpreta los códigos de bajo nivel de las instrucciones cargadas en la memoria de programa [1].
- Los principales componentes del #PIC16F877A son:
- MDCU: responsable de la decodificación y control de comportamiento de los registros pipeline R1-R3, registros de trabajo W y registros de funciones especiales SFR.
- NEXTPC y NEXTSP: circuitos combinatoriales que determinan el siguiente valor de PC y el siguiente valor del puntero de pila.
- GPRs: bancos de memoria RAM llamados registros de propósito general.
- AD: decodificador de direcciones y buses de control para los GPRs, también controla el multiplexor que lleva el primer operando a la ALU.
- ALU: El primer operando puede provenir de bancos GPR o registros SFR o un valor de puerto de entrada o de los 8 bits menos significativos del bus de INSTRUCCIÓN. El segundo operando proviene de un registro W.
- Registro W: acumulador.
- R4: Registro paralelo de 8 bits que toma los valores presentes en el puerto A.
- R5: Registro paralelo de 8 bits que toma los valores presentes en el puerto B.
- R6: Registro paralelo de 8 bits que toma los valores presentes en el puerto C.
- PAout, PBout, PCout: puertos de salida de 8 bits.
- TMR0: temporizador 0 con preescalador.
✅ Reference:
✅ Hardware:
- (1) #DE10_Standard o #DE10_Nano
- (1) Monitor VGA / HDMI
✅ Database:
✅ Experts: srios, rdsolis
- Leer temas relacionados:
- ⭐ Projects Digital Systems Design #FPGA
- ✅ Introduction
- ✅ Programming
- ✅ #Proteus #PCB Design
- ✅ Paper: Monitoring of system memory usage embedded in #FPGA
- ✅ Embedded System Projects
- ➡️ End Device #Arduino #FreeRTOS
- ➡️ End Device + Coordinator #Raspberry Pi #Python
- ➡️ #Proteus #PCB Design
- ✅ TinyOS for sensor networks #XBEE
- ✅ Electronic Prototype Development using #ALTIUM #CircuitMaker
- ✅ Instalación de #ALTIUM #CircuitMaker y especificaciones del módulo #ESP32
- ✅ Microcontrollers Application using #Labview
- ✅ Práctica 1: Salidas Digitales #Arduino
Comentarios
Publicar un comentario