BOP con FPGA Junta (6 / 7 paso)

Paso 6: VHDL Descripción de módulos

Temporizador contador:

Temporizador depende de algunas variables. La variable principal es el at, que ha sido hablado en la máquina de estados finitos. Este es el programa que asegura que después de cierto tiempo de ciclo (en nuestro caso 4), el programa termina. Si la en = 1, entonces el módulo añade uno a un número binario de 3 bits, que es inicialmente cero, en el levantamiento de clk. de otra manera el contador se restablece a cero. También hay una salida para ver si el tiempo o si ha pulsado el botón derecho.

Contador de puntuación:

Funcionalmente, el contador suma 1 a la puntuación total si recibe una señal del partido. De lo contrario la puntuación se establece en la puntuación anterior. La puntuación se establece inicialmente en cero. El resultado es que se restablece a cero en el estado de inactividad de la máquina de estados finitos.

Comparador:

El comparador toma en dos autobuses de pedacito 3 y compara a autobuses cuando el at es 1. De los autobuses representa los btns y el otro es el LED. Este comparador básicamente es comprobar si los LEDs y los btns coinciden. Si lo hacen, envía una señal de partido, de lo contrario no señal del partido está siendo enviar. Si la comparación considera que el btn no han sido la prensa, no dando igualar o no coincide con ninguna señal.

sseg_dec:

Código ha sido creado por Bryan Mealy. Este código tiene pocos componentes. Se convierte de binario a decimal, gestiona el displays de siete segmentos con el valor de entrada, y también contiene un divisor de reloj.

División de reloj:

El código de divisor de reloj ha sido escrito por Bryan Mealy. Un divisor de reloj disminuye o aumenta la frecuencia del reloj. Hemos ajustado los valores máximos para que la estructura de tiempo / ciclo estabas buscando. Nuestro divisor del reloj modificado se ejecuta en un cuarto al segundo período.

Decodificadores:

Tenemos sólo un decodificador que asigna el valor al azar de 8 bit a bit 3 diferentes valores. El representa número de 8 bits el valor aleatorio que estamos recibiendo del generador de bit al azar que habló más sobre en detalles más adelante. El número de bit 3 representa el LED que se iluminan.

Controlador de LED:

Este módulo estaba destinado a ser el controlador para el botón y el tempo del LED indicador. El tempo LED simplemente copia la señal de reloj lentas de nuestro divisor de reloj y brilló al ritmo del juego. El indicador LED del botón parpadea en para los dos primeros de los cuatro golpes que se muestra por el indicador de tempo, como copian la señal de nuestro reloj super lento (período de cuatro tiempos).

Selector de botón al azar:

El selector de botón al azar que habíamos usado un pseudo al azar poco generador, creado por un registro de cambio linear de regeneración (LFSR o para abreviar). Este LFSR es simplemente una cadena d-flip flops con unas salidas de seleccionar flip-flop en puertas XOR que conducen al primera d-flip flop. Esta cadena crea una secuencia semi-aleatoria que se repetirá en algún momento (pero no que rápidamente). Este LFSR crea un número binario de bits al azar de ocho (en decimal, entre 0 y 255), que luego enviamos a nuestro decodificador para seleccionar un botón. (Nuestra PRBG fue modelada después PRBG de 16 bits de Debashish Mohapatra, que se puede encontrar en herehttp://www.debashish.info/index.php/e-learning/vlsi-design/vhdl-codes/174-prbs-pseudo-random-binary-sequence-generator-vhdl-code-and-vhdl-testbench-creation)

Artículos Relacionados

Aprender Verilog: Una breve serie de tutoriales sobre diseño de electrónica Digital con FPGAs y Verilog HDL

Aprender Verilog: Una breve serie de tutoriales sobre diseño de electrónica Digital con FPGAs y Verilog HDL

Esta breve serie de lecciones semi cortos en Verilog se significa como una introducción a la lengua y a que los lectores para profundizar en el diseño FPGA.Estos tutoriales asumen que está familiarizado con los circuitos de lógica básicos y ecuacione
Entrada controlada Parking sistema usando el Motor Servo y PIR con la Junta un LinkIt

Entrada controlada Parking sistema usando el Motor Servo y PIR con la Junta un LinkIt

En este Instructable, podremos implementar entrada controlada Parking usando el Motor Servo y PIR con la Junta un LinkIt.Un servomotor es un actuador o un actuador linear que permite un control preciso de posición angular o lineal, velocidad y aceler
AirHockey Robot con FPGA Zybo Junta

AirHockey Robot con FPGA Zybo Junta

ResumenHoy aprenderemos cómo construir un AirHockey Robot (tabla incluida) basado en el enfoque de José Julio.Aquí tenéis un vídeo sobre cómo todo esto comenzó:Cosas que necesitará:Robot:1 x Digilent ZYBO Zynq™-70003 x A4988 de controlador de Motor p
Aviónica del cohete de sondeo con FPGA

Aviónica del cohete de sondeo con FPGA

Hola a todos rocketeer de nosotros,Mi nombre es Mert Kahyaoğlu y amigos me llamo Emre Erbuğa nosotros somos estudiantes de la Universidad técnica de Estambul.Es miembro del equipo ROCKET de la UIT. EQUIPO ROCKET de la UIT se unió a competiciones inge
Primeros pasos con fpga de xilinx

Primeros pasos con fpga de xilinx

Campo programable Gate Arrays (FPGAs) son dispositivos semiconductores que se basan en una matriz de bloques de lógica configurables (CLBs) conectado vía programable interconecta. En este tutorial voy a explicar cómo programar FPGAs de Xilinx usando
Alta velocidad de encargo sistema DAQ con FPGA

Alta velocidad de encargo sistema DAQ con FPGA

Este tutorial describe un método muy eficiente de la construcción de una tarjeta de adquisición de datos de alta velocidad. Este proyecto representa una solución muy barata de la construcción de un osciloscopio digital, así como una manera de medir a
Cómo hacer pequeños robots con nRover Junta

Cómo hacer pequeños robots con nRover Junta

El nRover, es un tablero pequeño diseñado para construir pequeños robots como UGV (vehículos terrestres no tripulados), seguidor de línea o automatización del hogar, puede ser controlado por wifi, Bluetooth o radio control. El objetivo principal es e
La construcción del circuito práctico con tira Junta

La construcción del circuito práctico con tira Junta

Este Instructable documenta el 'mínimas' herramientas necesarias para crear circuitos electrónicos de calidad razonable y da consejos de construcción pragmática con un ejercicio práctico de diseño.Se supone todos los componentes son de baja potencia
Para empezar con la Junta de Tinusaur

Para empezar con la Junta de Tinusaur

La Tinusaur es una pequeña tabla que tiene un zócalo DIP-8 para un Atmel ATtiny85 (o ATtiny25/45, incluso 13) microcontrolador con las piezas necesarias mínimas para trabajar que es más o menos 2 condensadores de la fuente de energía y una resistenci
Hacer fuego del pistón con la Junta del hilo de rosca

Hacer fuego del pistón con la Junta del hilo de rosca

fabricación de pistón de fuego no es muy difícil como parece. Sólo la materia a seguir algunas condiciones, tales como...1. el cilindro de diámetro no debe ser más de 1/2", si más entonces su se convierte en casi imposible crear la presión necesaria
Juego de pong con fpga kit

Juego de pong con fpga kit

Hola cada uno. Aquí compartí el proyecto "pong juego utilizando fpga kit". FPGA es arreglo de compuertas programables en campo. es una tecnología que podemos diseñar cualquier dispositivo digital por programación. eso significa que el kit de fpg
Para empezar con la Junta de arranque ESP-12 Daflabs ESP8266

Para empezar con la Junta de arranque ESP-12 Daflabs ESP8266

Esta guía es una rápida guía que muestra cómo utilizar el ESP-12 Breakout junta con el CP2102.Lo que necesitarás:1. Daflabs ESP-12 Breakout Junta2. CP2102 USB para módulo Serial UART3. jumper cables4. protoboard (opcional)Paso 1: sobre el tableroESP-
Cómo controlar un motor paso a paso con un FPGA

Cómo controlar un motor paso a paso con un FPGA

Este instructivo le guiará por el proceso y algunos conocimientos sobre cómo conseguir un motor paso a paso trabajando en una FPGA. Específicamente un Motor de pasos a Nema, Digilent Basys 3 y Digilent PmodSTEP.Actualmente soy profunda en el proceso
Primeros pasos con Intel® Edison Mini Breakout Junta

Primeros pasos con Intel® Edison Mini Breakout Junta

Intel proporciona 2 plataformas de hardware diferentes para trabajar con la Junta de desarrollo de Intel® Edison.El módulo de núcleo de Intel® Edison se llama Edison calcular módulo de Intel®, mientras que los tableros de 2 extensión se llaman Intel®