¿Cómo programar un vídeo para el contestador automático?
Entrada a, b, c, d, e;
Entrada res, clk, clk 1;
salida[7:0]fila, ra;
salida[3:0] ]q 1;
Salida q1, q2, q3, q4, q5, pitido;
reg q1, q2, q3, q4, q5, pitido;
reg[7:0]fila,ra;
reg[3:0]q 1;
reg[2:0]Y;
siempre @(res o q1 o q2 o q3 o q4 o q5)
comenzar
if (!res)
comenzar q 1 lt;=0 ;q2 lt=0; q3 lt=0; q4 lt=0; q5 lt=0;
Fin
Otros
Inicio
if(q1||q2||q3||q4||q5)
comenzar q 1 lt;= q 1;q2 lt= q2q3 lt= q3q4 lt= q4q5 lt= q5
Fin
Otro
Inicio
Si (a)
comienza q 1 lt;=1;
Finalizar
De lo contrario si (b)
Iniciar el segundo trimestre lt=1;
Finalizar
De lo contrario si (c)
Iniciar el tercer trimestre lt=1;
Fin
else if(d)
Iniciar el cuarto trimestrelt .
=1;
Fin
En caso contrario si (e)
Inicio q5 lt=1;
Fin
Fin
Fin
Fin
Siempre@(posedgeclock)
Inicio
si(q 1 lt ; 4'b1000)
q 1 lt;= q 1 1;
Otros
q 1 lt;= 4' b0000
Si (q1)
Inicio
Caso (Q1)
0: fila inicial lt= 8' b 01111111; ra lt= 8' b 00011000 ; Fin
1: Línea inicial lt= 8 ' b 10111111; ra lt= 8 ' b 00011000; Fin
2: Línea inicial lt= 8 ' b 11011111; ' b 00011000; fin
3: línea inicial lt= 8 ' b 11101111; ra lt= 8 ' b 00011000; fin
4: línea inicial lt= 8 ' b 11110111 ; ra lt= 8 ' b 00011000; fin
5: línea de inicio lt= 8 ' b 11111011; ra lt= 8 ' b 00011000; caso
Fin
si no (q2)
Inicio
Caso (Q1)
0: inicio línea lt= 8 ' b 01111111; ra lt= 8 ' b 11111111; final
1: Línea inicial lt= 8 ' b 10111111; ra lt= 8 ' b 11111111; > 2: Línea inicial lt= 8' b 11011111; ra lt= 8' b 00000011; Fin
3: Línea inicial lt= 8' b 11101111; ra lt= 8' b 11111111; p >
4: Línea de inicio lt= 8 ' b 11110111; ra lt= 8 ' b 11111111; Fin
5: Línea de inicio lt= 8 ' b 11111011; ; Fin
6: Línea inicial lt= 8 ' b 11111101; ra lt= 8 ' b 11111111; Fin
7: Línea inicial lt= 8 ' b 11111110; 8 ' b 11111111; fin
fin de caso
fin
si no (q3)
inicio
case (Q1)
0: Línea inicial lt= 8 ' b 01111111; ra lt= 8 ' b 11111111; Fin
1: Línea inicial lt= 8 ' b 10111111; lt = 8 ' b 11111111; Fin
2: Línea de inicio lt= 8 ' b 1101111
1; ra lt= 8 ' b 00000011; fin
3: línea de inicio lt= 8 ' b 11101111; ra lt= 8 ' b 11111111; = 8' b 11110111; ra lt= 8' b 11111111; final
5: Línea inicial lt= 8' b 11111011; ra lt= 8' b 00000011; : línea inicial lt= 8 ' b 11111101; ra lt= 8 ' b 11111111; final
7: línea inicial lt= 8 ' b 11111110;
Finalizar caso
Fin
si no (q4)
Iniciar
Caso (Q1)
0: Línea inicial lt= 8' b 01111111; ra lt= 8' b 11000011; Fin
1: Línea inicial lt= 8' b 10111111; ra lt= 8' b 11000011; p>
p>
2: Línea inicial lt= 8 ' b 11011111; ra lt= 8 ' b 11000011; Fin
3: Línea inicial lt= 8 ' b 11101111; = 8 ' b 11111111 ; Fin
4: Línea inicial lt= 8 ' b 11110111; ra lt= 8 ' b 11111111; Fin
5: Línea inicial lt= 8 ' b 11111011; ra lt= 8 ' b 00000011; fin
6: línea de inicio lt= 8 ' b 11111101; ra lt= 8 ' b 00000011; = 8 ' b 11111110 ;ra lt= 8 ' b 00000011;Fin
Fin de caso
Fin
si no(q5)
Inicio
Caso (Q1)
0: Línea inicial lt= 8 ' b 01111111; ra lt= 8 ' b 11111111; Fin
1: Inicio línea lt= 8 ' b 10111111; ra lt= 8 ' b 11111111; final
2: línea inicial lt= 8 ' b 11011111; ra lt= 8 ' b 11000000; >3: línea de inicio lt= 8 ' b 11101111; ra lt= 8 ' b 11111111; final
4: línea de inicio lt= 8 ' b 11110111; ra lt= 8 ' b 11111111; p>
5: Línea de inicio lt= 8 ' b 11111011; ra lt= 8 ' b 00000011; Fin
6: Línea de inicio lt= 8 ' b 11111101; ; Fin
7: Línea inicial lt= 8 ' b 11111110; ra lt= 8 ' b 11111111; Fin
Fin caso
Fin
Otro
Inicio
Caso (Q1)
<p>0: línea inicial lt= 8 ' b 01111111; ra lt= 8 ' b00000000 final
1: línea inicial lt= 8 ' b 10111111; ra lt= 8 ' b00000000 final
2: Línea de inicio lt= 8' b 11011111; ra lt= 8' b00000000 final
3: Línea de inicio lt= 8' b 11101111; ra lt= 8' b00000000 final
4: Línea de inicio lt= 8 ' b 11110111; ra lt= 8 ' b00000000 final
5: Línea de inicio lt= 8 ' b 11111011; ra lt= 8 ' b00000000 final
6: Línea de inicio lt= 8' b 11111101; ra lt= 8' b00000000 final
7: Línea de inicio lt= 8' b 11111110; ra lt= 8' b00000000 final
Finalizar caso
Fin
Fin
Siempre @(posedge clk1)
Inicio
if( RES amp;(a||b||c||d||e))
Inicio
if(Y lt; 2)beep = ' b 1; p> p>
else beep = ' b0
Y = Y 1; fin
if (!(res amp amp(a | | b | | c | | d | e)))beep = ' B0;
Fin
Fin del módulo