Error esquemático del contador ascendente BCD

0

Cuando intento simular mi esquema para mi contador, me aparece el error

  

Net "Net-name" no se puede conectar ni a un puerto de entrada ni a un pin de salida de instancia.

Aquí está mi esquema

Estoy bastante seguro de que el error se debe a cómo la salida de los flip flops se envía nuevamente a la entrada, pero pensé que así es como se supone que se implementará el diseño de un contador ascendente. ¿No es eso cierto?

Encontré esto al buscar el error, que dice:

  

"Error: DesignEntry: 222" indica que un marcador de E / S con una polaridad de puerto de entrada está conectado a un pin de salida de una de las instancias de símbolos en el dibujo esquemático. Esto no está permitido, ya que crearía un conflicto de fuente eléctrica.

Creo que este es mi problema, pero no estoy seguro de qué hacer al respecto. Agradecería cualquier ayuda, gracias.

    
pregunta LurkDog

2 respuestas

3

" Até las salidas a las entradas para que el estado actual afecte al siguiente estado (de modo que si el estado actual es 0000, ese número pasará por mi lógica y el próximo estado saldrá de los flip flops como 0001). "

Mealy Machines

Está en lo cierto al afirmar que la próxima entrada de una máquina que se encuentra en la mealy se ve afectada por el estado actual y las entradas , pero lo está haciendo de manera incorrecta.

No puedes simplemente vincular la salida a la línea de entrada. Eso no tiene ningún sentido, porque tiene 2 elementos de conducción para una sola línea. Si su línea de entrada no coincide con la línea de salida vinculada a ella, ¡tiene un corto!

Ya que estás aprendiendo sobre máquinas mealy, estoy seguro de que ya has hecho diagramas de estado.

No les enseñan sin razón .

Debes comenzar con un diagrama de estado de tu máquina harinosa, como este:

Dibujaunaburbujaparacadaestadoposible,flechasentretransicionesquedeterminanquécambiodeestadoseproducesegúnelestadoactualylaentrada.Verásnúmeroscomo0/0.Estosignificaquelaentradafueun0,ylasalidadurantelatransiciónfueun0.Porlotanto,eneldiagramaanterior,enelestadoS0conunaentradade0,elestadocambiaaS1ylasalidaesun0.

Unavezquehayacompletadoundiagramadeestado,puedecrearunatabladetransicióndeestado.

Tabladetransicióndeestado

Completa la tabla de transición de estado a partir de los valores en tu diagrama de estado.

También necesita codificar sus estados en alguna forma binaria, como en una tabla de codificación de estado

Consusestadosahoracodificados,puedesustituirlosvalorescodificadosensutabladeestadoanterioryterminarconalgocomoesto:

Observe cómo ahora, en lugar de una sola columna para el siguiente estado, tiene 2 columnas para cada bit del siguiente estado.

Por lo general, agrego los resultados al lado derecho de mi tabla de estado codificada, pero también necesitas los valores para tus resultados.

Estas imágenes no son del mismo ejemplo, por lo que no tendrán sentido juntas. Son solo ejemplos de las tablas

Enestepunto,puedetraducirlosamapasdeKarnaughodeducirlalógicaquenecesitaráparaelcircuito.

KarnaughMaps

Situlógicaesbastantecompleja,losmapasdeKarnaughseránlamejormaneradehacerlo.

Necesitarácrearunmapadekarnaughparacadabitdelsiguienteestadoycadabitdelasalida.

Entonces,porejemplo,enlastablasanteriores(excluyendolaúltima),hay2bitsdelsiguienteestado,porloquenecesitaríaunmapadekarnaughseparadoparacadaunodeesosbits.Entoncesnecesitaríaotroparaelbitdesalida.Cadamapapuedetenerunejehorizontalqueseaambosbitsdeestadoactualyunejeverticalqueseaambosbitsdeentrada.

Enrevisión,aquíestánlospasosquedebeseguir,enorden

Finalmente, puedes terminar con algo que se parece a esto (pero quizás más complejo):

Entonces, sí, hay una retroalimentación en la que la salida afecta al siguiente estado, pero no solo se vincula directamente a la línea de entrada. Lo más probable es que entre en alguna lógica combinatoria, como una puerta que se comparte con la entrada

Crédito de la foto Todas las imágenes provienen del texto Diseño digital y arquitectura de computadora, 2ª edición , de David Money Harris y Sarah L. Harris, págs. 133-140

    
respondido por el krb686
0

Parece que desea que los valores de retención estén determinados por las entradas en algunas situaciones y por los valores actuales de retención en otros casos. Para lograrlo, sugeriría alimentar cada entrada junto con la salida de cierre correspondiente en un circuito de multiplexación 2: 1; haga que los cuatro circuitos de multiplexación seleccionen entre las cuatro salidas de retención y las cuatro entradas de datos, en función del estado de una entrada de "carga" adicional. Dependiendo de dónde se colocan los multiplexores, golpear el reloj con "carga" alta y algún patrón de bits en la entrada puede cargar la entrada especificada directamente o cargar el estado que sigue después del patrón de bits especificado.

    
respondido por el supercat

Lea otras preguntas en las etiquetas