Propuesta 1: BÚSQUEDA DE DATOS
Propuesta 2-3: ORDENAMIENTO DE DATOS
Propuesta 4: Microprocessor Architecture.
⭐ For more information visit our blog:
https://vasanza.blogspot.com/
2. Propuesta 1:
BÚSQUEDA DE DATOS
2
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Sistemas Digitales II
Seleccionar unas de las siguientes funcionalidades y hacer los ajustes
necesarios a las arquitecturas propuestas.
3. Sistemas Digitales II
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
3
La siguiente partición funcional que incluye una Maquina Secuencial Sincrónica (MSS),
debe realizar la búsqueda en una memoria RAM del valor Máximo y el valor Mínimo. El
ingreso de estos valores de 8 bits se debe realizar de uno a uno en la memoria RAM, estos
valores se ingresan por el puerto “Data”. Mientras se están ingresando los datos, la MSS
pone en alto la salida “WritingData”, indicando que este proceso está siendo ejecutado y el
mismo no terminará hasta completar el ingreso de los 255 valores. La búsqueda del valor
Máximo y Mínimo se deberá realizar utilizando dos registros que almacenen estos valores,
para lo cual se recomienda usar el “Reg_Sost_1” para almacenar el valor Máximo y el
“Reg_Sost_2” para almacenar el valor Mínimo.
Sistema Digital
Búsqueda de Datos
Start
WriteData
clk
resetn
WritingData
Done
Qmaximo
Qminimo
6. Sistemas Digitales II
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
6
VHDL:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
library work;
use work.mylibrary.all;
entity ExamenFinal is
port( Resetn,Clk,Start,WriteData: in std_logic;
Data: in std_logic_vector(7 downto 0);
WritingData,Done: out std_logic);
end ExamenFinal;
architecture comportamiento of ExamenFinal is
--Contadores
signal Q_Contador_Up_j: std_logic_vector(7 downto 0);
--Comparador –In1 “AmenB” e In2 “AmayorB”
signal finj,In1,In2 :std_logic;
--Multiplexor 2 y 3
signal Q_Mux2a1_2, Q_Mux2a1_3: std_logic_vector(7 downto 0);
--Registros
signal Q_Reg_Sost_1,Q_Reg_Sost_2: std_logic_vector(7 downto 0);
--RAM
signal Q_RAM: std_logic_vector(7 downto 0);
7. Sistemas Digitales II
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
7
VHDL:
begin
Contador_up_j: Contador_up port map ("00000000",Clk,Enj,Ldj,'1',Q_Contador_Up_j);
Comparador_j: Comparador port map ("11111111", Q_Contador_Up_j,finj);
Comparador_3: Comparador port map (Q_RAM, Q_Mux2a1_3,In1,In2);
MUX2a1_2: MUX2a1 port map (Data, Q_Mux2a1_3, Sel2,Q_Mux2a1_2);
MUX2a1_3: MUX2a1 port map (Q_Reg_Sost_1,Q_Reg_Sost_2,Sel3, Q_Mux2a1_3);
RAM: RAM port map (Clk,S1, Q_Contador_Up_j, Q_Mux2a1_2,Q_RAM);
Reg_Sost_1: Reg_Sost port map(Q_RAM,Clk,'1',EnReg1, Q_Reg_Sost_1);
Reg_Sost_2: Reg_Sost port map(Q_RAM,Clk,'1',EnReg2, Q_Reg_Sost_2);
MSS: MSS port map (Resetn,Clk,Start,WriteData, finj,In1,In2,EnReg1,EnReg2,Sel2,Sel3…
,Enj,Ldj,WritingData,Done,S1);
end comportamiento;
8. 8
Documentation
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Avance 1 (mitad del primer parcial):
• Introducción: Descripción de la problemática de búsqueda de datos basados y su coste computacional, utilizar referencias
bibliográficas de papers actualizados en los cuales otros autores demuestran la importancia de afrontar la solución del
problema propuesta en este proyecto. Realizar una descripción de dos párrafos (mínimo) en los cuales se incluya a menos
2 referencias.
• Trabajos relacionados: Aquí se describirá en dos párrafos (mínimo) como otros autores han realizado la implementación
de búsqueda de datos basados en FPGA, para ello utilizar al menos 2 referencias bibliográficas de papers en las que se
demuestre esta implementación.
• Metodología experimental (MSI): En esta sección de al menos dos párrafos (mínimo), se describirá el proceso de
implementación de todos los bloques MSI en VHDL que componen la arquitectura propuesta. Además, se deberá incluir
imágenes con detalles de simulación de la MSS en un archivo .VWF.
Avance 2 (finales del primer parcial):
• Metodología experimental (Arquitectura): En esta sección de al menos dos párrafos (mínimo), se describirá la
arquitectura completa del buscador de datos en el archivo .BDF. Además, se deberá incluir la imagen con diagrama de
bloques de la arquitectura propuesta. Detallando el algoritmo de búsqueda a ser ejecutadas por la MSS.
Presentación final (hasta una semana después de entregar el proyecto):
• Resultados obtenidos: Realizar una descripción de al menos cuatro párrafos (mínimo) basados en el análisis del archivo
.VWF que describe el comportamiento de la arquitectura propuesta. Incluir la imagen del editor de forma de onda .VWF
donde esté siendo ejecutadas al algoritmo de búsqueda.
• Conclusiones: En esta sección de al menos dos párrafos (mínimo), se deberá incluir una crítica comparativa de las
simulaciones obtenidas vs los trabajos reportados por otros autores indicados en la sección de trabajos relacionados.
Archivos: Incluir link de repositorio GitHub con todos los archivos de simulación y códigos. Además incluir un enlace al video
de youtube donde explique completamente los puntos indicados en este documento.
• Nota: Durante la sustentación, el profesor le solicitará realizar cambios en su circuito, además le realizará preguntas
específicas).
• Para este informe técnico usar un formato tipo paper (https://www.ieee.org/conferences/publishing/templates.html).
Sistemas Digitales II
9. Propuesta 2-3:
ORDENAMIENTO DE DATOS
9
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Sistemas Digitales II
• Hacer los ajustes necesarios a las arquitecturas propuestas para
lograr obtener un Sistema de Ordenamiento de Menor a Mayor
basado en el algoritmo Bubble Sort.
• Otro propuesta es, proponer un algoritmo de ordenamiento
diferente al Bubble Sort para Mayor a Menor o Menor a Mayor.
10. Sistemas Digitales II
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
10
La siguiente partición funcional que incluye una Maquina Secuencial Sincrónica (MSS),
debe realizar un ordenamiento de 255 valores de Mayor a Menor. El ingreso de estos
valores de 8 bits se debe realizar de uno a uno, estos valores ingresan por el puerto “Data”,
mientras se están ingresando los datos, la MSS pone en alto la salida “WritingData”,
indicando que este proceso está siendo ejecutado y el mismo no terminará hasta completar
los 255 valores. El ordenamiento de los números ingresados previamente se deberá realizar
de mayor a menor, para lo cual se recomienda usar el contador_up “j” y el contador_up “i”
en el proceso de búsqueda y comparación.
Sistema Digital
Ordenamiento de Datos
Start
WriteData
clk
resetn
WritingData
Done
13. Sistemas Digitales II
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
13
VHDL:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
library work;
use work.mylibrary.all;
entity ExamenFinal is
port( Resetn,Clk,Start,WriteData: in std_logic;
Data: in std_logic_vector(7 downto 0);
WritingData,Done: out std_logic);
end ExamenFinal;
architecture comportamiento of ExamenFinal is
--Contadores
signal Q_Contador1,Q_Contador2: std_logic_vector(7 downto 0);
-- Sumador
signal Q_Suma1: std_logic_vector(7 downto 0);
--Comparador
signal finj,fini,AmenB :std_logic;
--Multiplexor
signal Sel, Sel2, Sel3: std_logic;
signal Q_Mux1,Q_Mux2,Q_Mux3: std_logic_vector(7 downto 0);
--Registros
signal Q_Reg1,Q_Reg2: std_logic_vector(7 downto 0);
--RAM
signal Q_RAM: std_logic_vector(7 downto 0);
14. Sistemas Digitales II
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
14
VHDL:
begin
Contador_up_1: Contador_up port map ("00000000",Clk,Enj,Ldj,'1',Q_Contador1);
Suma_1: Suma_1 port map (Q_Contador1,Q_Suma1);
Contador_up_2: Contador_up port map (Q_Suma1,Clk,Eni,Ldi,'1',Q_Contador2);
Comparador_1: Comparador port map ("11111111",Q_Contador1,finj);
Comparador_2: Comparador port map ("11111111",Q_Contador2,fini);
Comparador_3: Comparador port map (Q_RAM,Q_Reg1,AmenB);
MUX2a1_1: MUX2a1 port map (Q_Contador1,Q_Contador2,Sel,Q_Mux1);
MUX2a1_2: MUX2a1 port map (Q_Reg1,Q_Reg2,Sel2,Q_Mux2);
MUX2a1_3: MUX2a1 port map (Data,Q_Mux2,Sel3,Q_Mux3);
RAM: RAM port map (Clk,S1,Q_Mux1,Q_Mux3,Q_RAM);
Reg_Sost_1: Reg_Sost port map(Q_RAM,Clk,'1',EnReg,Q_Reg1);
Reg_Sost_2: Reg_Sost port map(Q_RAM,Clk,'1',EnReg2,Q_Reg2);
MSS: MSS port map (Reset,Clk,Start,WriteData,AmenB,finj,fini,EnReg,Sel,Eni,Ldi…
,Enj,Ldj,WritingData,Done,S1,EnReg2,Sel2,Sel3);
end comportamiento;
15. 15
Documentation
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Avance 1 (mitad del primer parcial):
• Introducción: Descripción de la problemática de ordenamiento de datos basados y su coste computacional, utilizar
referencias bibliográficas de papers actualizados en los cuales otros autores demuestran la importancia de afrontar la
solución del problema propuesta en este proyecto. Realizar una descripción de dos párrafos (mínimo) en los cuales se
incluya a menos 2 referencias.
• Trabajos relacionados: Aquí se describirá en dos párrafos (mínimo) como otros autores han realizado la implementación
de ordenamiento de datos basados en FPGA, para ello utilizar al menos 2 referencias bibliográficas de papers en las que
se demuestre esta implementación.
• Metodología experimental (MSI): En esta sección de al menos dos párrafos (mínimo), se describirá el proceso de
implementación de todos los bloques MSI en VHDL que componen la arquitectura propuesta. Además, se deberá incluir
imágenes con detalles de simulación de la MSS en un archivo .VWF.
Avance 2 (finales del primer parcial):
• Metodología experimental (Arquitectura): En esta sección de al menos dos párrafos (mínimo), se describirá la
arquitectura completa del buscador de datos en el archivo .BDF. Además, se deberá incluir la imagen con diagrama de
bloques de la arquitectura propuesta. Detallando el algoritmo de ordenamiento a ser ejecutadas por la MSS.
Presentación final (hasta una semana después de entregar el proyecto):
• Resultados obtenidos: Realizar una descripción de al menos cuatro párrafos (mínimo) basados en el análisis del archivo
.VWF que describe el comportamiento de la arquitectura propuesta. Incluir la imagen del editor de forma de onda .VWF
donde esté siendo ejecutadas al algoritmo de ordenamiento.
• Conclusiones: En esta sección de al menos dos párrafos (mínimo), se deberá incluir una crítica comparativa de las
simulaciones obtenidas vs los trabajos reportados por otros autores indicados en la sección de trabajos relacionados.
Archivos: Incluir link de repositorio GitHub con todos los archivos de simulación y códigos. Además incluir un enlace al video
de youtube donde explique completamente los puntos indicados en este documento.
• Nota: Durante la sustentación, el profesor le solicitará realizar cambios en su circuito, además le realizará preguntas
específicas).
• Para este informe técnico usar un formato tipo paper (https://www.ieee.org/conferences/publishing/templates.html).
Sistemas Digitales II
21. 21
Goal
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
• La arquitectura del microprocesador genérico, incluye los
siguientes bloques:
• Maquina Secuencial Sincrónica (MSS)
• Registros de propósito general
• Contador de programa
• Registro de instrucciones
• Decodificador de Instrucciones
• Unidad Aritmética lógica (ALU)
• Memoria SRAM de Datos
• Memoria FLASH de código de instrucciones
• Multiplexores
• Cada bloque será un bloque MSI programado en lenguaje
VHDL.
• Simular el comportamiento de la MSS en un archivo .VWF.
• Realizar la implementación completa de esta arquitectura
usando el archivo .BDF.
• Simular el comportamiento la arquitectura del
microprocesador diseñada en el archivo .BDF en un
archivo .VWF.
https://microchipdeveloper.com/8avr:avrcore
AVR Core
Sistemas Digitales II
23. 23
Documentation
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Avance 1 (mitad del primer parcial):
• Introducción: Descripción de la arquitectura AVR y todos sus bloques, utilizar referencias bibliográficas de papers
actualizados en los cuales otros autores demuestran la importancia de afrontar la solución del problema propuesta en
este proyecto. Realizar una descripción de dos párrafos (mínimo) en los cuales se incluya a menos 2 referencias.
• Trabajos relacionados: Aquí se describirá en dos párrafos (mínimo) como otros autores han realizado la implementación
de una arquitectura de microprocesador basados en FPGA, para ello utilizar al menos 2 referencias bibliográficas de
papers en las que se demuestre esta implementación.
• Metodología experimental (MSI): En esta sección de al menos dos párrafos (mínimo), se describirá el proceso de
implementación de todos los bloques MSI en VHDL que componen la arquitectura de un microprocesador. Además, se
deberá incluir imágenes con detalles de simulación de la MSS en un archivo .VWF.
Avance 2 (finales del primer parcial):
• Metodología experimental (Arquitectura): En esta sección de al menos dos párrafos (mínimo), se describirá la
arquitectura completa del microprocesador en el archivo .BDF. Además, se deberá incluir la imagen con diagrama de
bloques de la arquitectura propuesta. Detallando las cuatro instrucciones seleccionadas para ser ejecutadas en la ALU.
Presentación final (hasta una semana después de entregar el proyecto):
• Resultados obtenidos: Realizar una descripción de al menos cuatro párrafos (mínimo) basados en el análisis del archivo
.VWF que describe el comportamiento de la arquitectura completa del microprocesador. Incluir la imagen del editor de
forma de onda .VWF donde estén siendo ejecutadas las cuatro instrucciones seleccionadas para ser ejecutadas por la
ALU.
• Conclusiones: En esta sección de al menos dos párrafos (mínimo), se deberá incluir una crítica comparativa de las
simulaciones obtenidas vs los trabajos reportados por otros autores indicados en la sección de trabajos relacionados.
Archivos: Incluir link de repositorio GitHub con todos los archivos de simulación y códigos. Además incluir un enlace al video
de youtube donde explique completamente los puntos indicados en este documento.
• Nota: Durante la sustentación, el profesor le solicitará realizar cambios en su circuito, además le realizará preguntas
específicas).
• Para este informe técnico usar un formato tipo paper (https://www.ieee.org/conferences/publishing/templates.html).
Sistemas Digitales II
24. 24
•✅ #FPGA projects for Engineering Students
•Phrases recognition with Machine Learning #ML (InnovateFPGA)
•Example: Access control system (2)
•Example: Access control system (1)
•✅ 2020 Paper: Monitoring of system memory usage embedded in #FPGA
•✅ 2020 Paper: Implementation of a Classification System of #EEG Signals
Based on #FPGA
•✅ 2020 Paper: Behavioral Signal Processing with Machine Learning based on
#FPGA
•✅ Instalación de #ALTIUM #CircuitMaker y especificaciones del módulo
#ESP32
•✅ Modular design approach in #Altium Designer
•Create a Schematic in Altium Designer
•Create a #PCB in #Altium Designer
Leer temas relacionados
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Sistemas Digitales II
25. 25
Recursos:
• Algunos contenidos vistos en clase como presentaciones,
ejercicios resueltos, entre otros. Serán almacenados y
compartidos en el siguiente Drive:
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Repositorio:
• https://github.com/vasanza/MSI-VHDL
• https://github.com/vasanza/DigitalSystems
Sistemas Digitales II