Considerando a sua disposição o detector da questão anterior, siga os seguintes passos:
- Projete um circuito sequencial síncrono do tipo Mealy, no qual a saída depende do estado atual e da entrada. O circuito deverá possuir uma entrada
e uma saída
. A saída
será igual a 1 sempre que a sequência
for recebida. Para qualquer outra sequência de entrada, a saída
será 0 .
- Em seguida, projete um detector de sequência para
(o primeiro bit recebido é o mais à direita) utilizando os circuitos projetados nas questões anteriores.
Passo 1
Beleza, vamos resolver esse exercício juntos! A gente precisa projetar um circuito sequencial síncrono do tipo Mealy e depois um detector de sequência específica. O assunto aqui envolve circuitos sequenciais, especialmente máquinas de estados Mealy, onde a saída depende tanto do estado atual quanto da entrada. Vamos precisar entender como criar estados que reconheçam a sequência “110” e depois montar um detector para a sequência “010110”.
Passo 2
Primeiro, vamos focar no circuito Mealy que detecta a sequência “110”. Em uma máquina Mealy, a saída Z depende do estado atual e da entrada X. Então, precisamos definir estados que representem o progresso na detecção da sequência “110”.
Passo 3
Vamos definir três estados:
- S0: Estado inicial, onde nada foi detectado.
- S1: Já recebemos um ‘1’.
- S2: Já recebemos “11”.
A saída Z será 1 somente quando chegarmos no estado que confirma “110”.
Passo 4
Agora, vamos definir as transições entre os estados com base na entrada X:
-
De S0:
- Se X=1, vai para S1.
- Se X=0, permanece em S0.
-
De S1:
- Se X=1, vai para S2.
- Se X=0, volta para S0.
-
De S2:
- Se X=0, volta para S0 e Z=1 (porque completamos “110”).
- Se X=1, permanece em S2.
Passo 5
Com base nisso, podemos construir a tabela de estados para a máquina Mealy:
Estado Atual | Entrada X | Próximo Estado | Saída Z |
---|---|---|---|
S0 | 0 | S0 | 0 |
S0 | 1 | S1 | 0 |
S1 | 0 | S0 | 0 |
S1 | 1 | S2 | 0 |
S2 | 0 | S0 | 1 |
S2 | 1 | S2 | 0 |
Passo 6
Com essa tabela, podemos desenhar o diagrama de estados e depois implementar a lógica para as transições e para a saída Z usando flip-flops e portas lógicas. Porém, como só precisamos da estrutura lógica, vamos seguir para a próxima parte.
Passo 7
Agora, vamos projetar um detector para a sequência “010110”. Vamos usar o circuito Mealy que já criamos para detectar “110” e adaptar para essa sequência específica.
Passo 8
Para detectar “010110”, precisamos reconhecer que ela termina com “110”. Então, podemos configurar uma máquina que primeiro detecta “010” e, em seguida, utiliza o detector “110” que já projetamos.
Passo 9
Vamos definir uma nova máquina de estados que integra esses dois passos:
- S0: Estado inicial.
- S1: Detectou ‘0’.
- S2: Detectou ‘01’.
- S3: Detectou ‘010’.
- S4: Detectou ‘0101’.
- S5: Detectou ‘01011’.
- S6: Detectou ‘010110’.
A saída será 1 apenas no estado S6.
Passo 10
Com todos os estados definidos, criamos as transições baseadas nas entradas para alcançar S6 apenas quando a sequência completa “010110” for detectada.
Resposta
A máquina de estados para detectar a sequência “010110” foi projetada com os estados S0 a S6, onde a saída Z é 1 somente quando a sequência completa é reconhecida no estado S6. Assim, o detector funcionará corretamente para identificar “010110” conforme especificado.