Академический Документы
Профессиональный Документы
Культура Документы
DISEÑO DIGITAL
SEGUNDO SEMESTRE
PROFESOR:
JOSÉ LUIS VÁZQUEZ AVILA
INTEGRANTES:
ALBERTO ALCOCER ESPINOSA
JORGE ÁNGEL BARRERA CASTILLO
Nº Descripción Nº Descripción
1 Led indicador de voltajes correctos 9 Botón de reset del FPGA (restaura la
configuración del FPGA)
2 Conectores PMOD 10 Jumper para seleccionar el modo de
configuración
3 Conector PMOD que también puede ser 11 Conector USB HOST
utilizado por el ADC interno del FPGA
4 Pantalla de 7 segmentos de 4 dígitos 12 Conector para monitores VGA
5 Interruptores 13 Conector microUSB utilizado para la
configuración y para comunicaciones
UART
6 LEDs 14 Jumper para alimentación externa
7 Botones pulsadores 15 Interruptor de encendido
8 LED que indica cuando el proceso de 16 Jumper que selecciona cual es la fuente
configuración a terminado de alimentación. Selecciona entre el
conector microUSB o la alimentación
externa.
PASOS DE CALCULADORA BINARIA
UNA VEZ CREADO EL ARCHIVO “CONSTRAINT” BUSCAMOS LA SECCIÓN DE “## SWITCHES” Y “##
LEDS” EMPEZAMOS A DECLARAR LOS PUERTOS (INPUT Y OUTPUT) QUE USAREMOS EN EL BASYS.
DE MANERA QUE NOS QUEDARÁ COMO LO SIGUIENTE:
## This file is a general .xdc for set_property #set_property
the Basys3 rev B board IOSTANDARD LVCMOS33 IOSTANDARD LVCMOS33
[get_ports {a[1]}] [get_ports {sw[13]}]
## To use it in a project:
set_property PACKAGE_PIN V15 #set_property PACKAGE_PIN T1
## - uncomment the lines [get_ports {a[2]}] [get_ports {sw[14]}]
corresponding to used pins
set_property #set_property
IOSTANDARD LVCMOS33 IOSTANDARD LVCMOS33 #set_property
[get_ports {y[2]}] [get_ports {led[15]}] IOSTANDARD LVCMOS33
[get_ports dp]
set_property PACKAGE_PIN V14
[get_ports {y[3]}]
#set_property PACKAGE_PIN U2
set_property ##7 segment display [get_ports {an[0]}]
IOSTANDARD LVCMOS33
[get_ports {y[3]}] #set_property PACKAGE_PIN W7
[get_ports {seg[0]}] #set_property
#set_property PACKAGE_PIN IOSTANDARD LVCMOS33
V13 [get_ports {led[8]}] [get_ports {an[0]}]
#set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN U4
[get_ports {seg[0]}] [get_ports {an[1]}]
#set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN W6
[get_ports {led[8]}] [get_ports {seg[1]}] #set_property
IOSTANDARD LVCMOS33
#set_property PACKAGE_PIN V3 [get_ports {an[1]}]
[get_ports {led[9]}] #set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN V4
[get_ports {seg[1]}] [get_ports {an[2]}]
#set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN U8
[get_ports {led[9]}] [get_ports {seg[2]}] #set_property
IOSTANDARD LVCMOS33
#set_property PACKAGE_PIN W3 [get_ports {an[2]}]
[get_ports {led[10]}] #set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN W4
[get_ports {seg[2]}] [get_ports {an[3]}]
#set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN V8
[get_ports {led[10]}] [get_ports {seg[3]}] #set_property
IOSTANDARD LVCMOS33
#set_property PACKAGE_PIN U3 [get_ports {an[3]}]
[get_ports {led[11]}] #set_property
IOSTANDARD LVCMOS33
[get_ports {seg[3]}]
#set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN U5
[get_ports {led[11]}] [get_ports {seg[4]}] ##Buttons
#set_property
IOSTANDARD LVCMOS33 #set_property
[get_ports {JA[6]}] IOSTANDARD LVCMOS33
##Pmod Header JA [get_ports {JB[4]}]
##Sch name = JA10
##Sch name = JA1 ##Sch name = JB8
#set_property PACKAGE_PIN G3
#set_property PACKAGE_PIN J1 [get_ports {JA[7]}] #set_property PACKAGE_PIN
[get_ports {JA[0]}] A17 [get_ports {JB[5]}]
#set_property
#set_property IOSTANDARD LVCMOS33
IOSTANDARD LVCMOS33 [get_ports {JA[7]}] #set_property
[get_ports {JA[0]}] IOSTANDARD LVCMOS33
[get_ports {JB[5]}]
##Sch name = JA2
##Sch name = JB9
#set_property PACKAGE_PIN L2
[get_ports {JA[1]}] #set_property PACKAGE_PIN
C15 [get_ports {JB[6]}]
##Pmod Header JB
#set_property
IOSTANDARD LVCMOS33 ##Sch name = JB1
[get_ports {JA[1]}] #set_property
#set_property PACKAGE_PIN IOSTANDARD LVCMOS33
##Sch name = JA3 A14 [get_ports {JB[0]}] [get_ports {JB[6]}]
#set_property PACKAGE_PIN J2 ##Sch name = JB10
[get_ports {JA[2]}]
#set_property #set_property PACKAGE_PIN
IOSTANDARD LVCMOS33 C16 [get_ports {JB[7]}]
#set_property [get_ports {JB[0]}]
IOSTANDARD LVCMOS33
[get_ports {JA[2]}] ##Sch name = JB2
#set_property
##Sch name = JA4 #set_property PACKAGE_PIN IOSTANDARD LVCMOS33
A16 [get_ports {JB[1]}] [get_ports {JB[7]}]
#set_property PACKAGE_PIN G2
[get_ports {JA[3]}]
#set_property
#set_property IOSTANDARD LVCMOS33
IOSTANDARD LVCMOS33 [get_ports {JB[1]}]
[get_ports {JA[3]}]
##Sch name = JB3 ##Pmod Header JC
##Sch name = JA7
#set_property PACKAGE_PIN ##Sch name = JC1
B15 [get_ports {JB[2]}]
#set_property PACKAGE_PIN ##Sch name = JC10 #set_property
K17 [get_ports {JC[0]}] IOSTANDARD LVCMOS33
#set_property PACKAGE_PIN [get_ports {JXADC[5]}]
R18 [get_ports {JC[7]}]
##Sch name = XA3_N
#set_property
IOSTANDARD LVCMOS33 #set_property PACKAGE_PIN M1
[get_ports {JC[0]}] #set_property [get_ports {JXADC[6]}]
IOSTANDARD LVCMOS33
##Sch name = JC2 [get_ports {JC[7]}]
#set_property
#set_property PACKAGE_PIN IOSTANDARD LVCMOS33
M18 [get_ports {JC[1]}] [get_ports {JXADC[6]}]
#set_property
IOSTANDARD LVCMOS33
[get_ports {vgaGreen[1]}] #set_property
IOSTANDARD LVCMOS33
#set_property PACKAGE_PIN [get_ports PS2Clk]
G17 [get_ports {vgaGreen[2]}]
#set_property
PULLUP true [get_ports PS2Clk]
#set_property PACKAGE_PIN
D17 [get_ports {vgaGreen[3]}] #set_property
IOSTANDARD LVCMOS33
[get_ports PS2Data]
#set_property #set_property
IOSTANDARD LVCMOS33 PULLUP true [get_ports PS2Data]
[get_ports {vgaGreen[3]}]
#set_property PACKAGE_PIN
P19 [get_ports Hsync]
##Quad SPI Flash
0 0 0 Pass a a
0 0 1 addition a+b
0 1 0 Substraction 1 a-b
0 1 1 Substraction 2 b-a
1 0 0 iinvert Not a
1 0 1 and a and b
1 1 0 or a or b
1 1 1 xor a xor b
PRUEBAS
PROCEDEMOS A HACER LA PRUEBA NUMERO 1 CON EL ALUSEL 000 QUE SERA EL OUTPUT A ÓSEA LA
SALIDA A USAMOS EL NUMERO 4 PARA ESTA OPERACIÓN Y SE MOSTRARA EN LA FOTO SIGUIENTE
COMO SE PONDRA EN LA CALCULADORA A BINARIO.
PASS a
000
0100
PROCEDEMOS A HACER LA PRUEBA NUMERO 2 CON EL ALUSEL 001 QUE SERA EL OUTPUT A ÓSEA LA
SALIDA A+B USAMOS EL NUMERO 4 EN A Y UN 2 EN EL B PARA ESTA OPERACIÓN Y SE MOSTRARA EN
LA FOTO SIGUIENTE COMO SE PONDRA EN LA CALCULADORA A BINARIO Y NOS MOSTRARA LA SUMA
CORRESPONDIENTE A LOS NUMEROS EN BINARIO.
PASS a
001
0010 0100
PROCEDEMOS A HACER LA PRUEBA NUMERO 3 CON EL ALUSEL 010 QUE SERA EL OUTPUT A ÓSEA LA
SALIDA A-B USAMOS EL NUMERO 4 EN A Y UN 2 EN EL B PARA ESTA OPERACIÓN Y SE MOSTRARA EN
LA FOTO SIGUIENTE COMO SE PONDRA EN LA CALCULADORA A BINARIO Y NOS MOSTRARA LA RESTA
CORRESPONDIENTE A LOS NUMEROS EN BINARIO.
PASS a
010
0010 0100
PROCEDEMOS A HACER LA PRUEBA NUMERO 4 CON EL ALUSEL 011 QUE SERA EL OUTPUT A ÓSEA LA
SALIDA B- A USAMOS EL NUMERO 4 EN A Y UN 4 EN EL B PARA ESTA OPERACIÓN Y SE MOSTRARA EN
LA FOTO SIGUIENTE COMO SE PONDRA EN LA CALCULADORA A BINARIO Y NOS MOSTRARA LA RESTA
CORRESPONDIENTE A LOS NUMEROS EN BINARIO.
PASS a
011
0100 0100
PROCEDEMOS A HACER LA PRUEBA NUMERO 5 CON EL ALUSEL 100 QUE SERA EL OUTPUT A ÓSEA LA
SALIDA Not a ESTA SALIDA LO QUE HACE ES INVERTIR TODOS LOS NUMEROS EN EL SISTEMA BINARIO
AQUÍ MOSTRAREMOS UN EJEMPLO A CONTINUACION CON EL NUMERO 4
PASS a
100
0100
PROCEDEMOS A HACER LA PRUEBA NUMERO 5 CON EL ALUSEL 100 QUE SERA EL OUTPUT
A ÓSEA LA SALIDA AND ESTA SALIDA COMPARA LOS NÚMEROS EN EL SISTEMA BINARIO
CON RESPECTO A LA TABLA DE VERDAD QUE SE MOSTRARA, AQUÍ MOSTRAREMOS UN
EJEMPLO A CONTINUACIÓN CON RESPECTO A LA TABLA DE VERDAD SERA LA DICHA
SENTENCIA.
A B
0 0 0
0 1 0
1 0 0
1 1 1
PROCEDEMOS A HACER LA PRUEBA NUMERO 5 CON EL ALUSEL 110 QUE SERA EL OUTPUT
A ÓSEA LA SALIDA OR ESTA SALIDA COMPARA LOS NÚMEROS EN EL SISTEMA BINARIO CON
RESPECTO A LA TABLA DE VERDAD QUE SE MOSTRARA, AQUÍ MOSTRAREMOS UN EJEMPLO
A CONTINUACIÓN CON RESPECTO A LA TABLA DE VERDAD SERA LA DICHA SENTENCIA.
A B
0 0 0
0 1 1
1 0 1
1 1 1
PROCEDEMOS A HACER LA PRUEBA NUMERO 5 CON EL ALUSEL 111 QUE SERA EL OUTPUT
A ÓSEA LA SALIDA Xor ESTA SALIDA COMPARA LOS NÚMEROS EN EL SISTEMA BINARIO
CON RESPECTO A LA TABLA DE VERDAD QUE SE MOSTRARA, AQUÍ MOSTRAREMOS UN
EJEMPLO A CONTINUACIÓN CON RESPECTO A LA TABLA DE VERDAD SERA LA DICHA
SENTENCIA.
A B
0 0 0
0 1 1
1 0 1
1 1 0