Conectar un casete de computadora estilo 80's a un FPGA

9

Estoy reimplementando una computadora Microbee de la década de 1980 en un FPGA (consulte aquí: enlace ) y trato de descubrir cómo Para hacer el puerto de cassette. Aquí están los esquemas para la interfaz original del casete Microbee:

MicrobeeSchematic http://www.toptensoftware.com/fpgabee/MicrobeeCassettePortSchematic.png

También encontré esta descripción en un manual técnico:

  

La salida de datos del cassette consiste meramente en una red RC que   Acepta una señal de DB1, pin 28 del PIO. La señal es   atenuado y luego desacoplado antes de enviarlo al cassette   grabadora de entrada MIC. Esta señal aparece en el pin 3 del DIN 5 pin.   enchufe.

     

El circuito de entrada de datos del cassette es un poco más   Complicado. La entrada desde el pin 5 de la toma DIN pasa primero a   Un atenuador -acoplador. A continuación se encuentra un amplificador operacional CA3140, para   Permite que una amplia gama de niveles de entrada se cuadren antes de la señal   Se pasa al pin 27 del PIO, DBO. Los dos diodos a través del   invirtiendo y no invirtiendo entradas al op-amp clip cualquier entrada   Señales mayores que la tensión directa de los diodos en cualquier dirección.   El condensador de 47 pF es requerido por el op-amp CMOS para   precompensación.

Mis preguntas:

  1. ¿Qué significa "desacoplado" en la descripción?
  2. ¿Funcionaría el mismo circuito si estuviera conectado a dos de los pines de E / S en un Xilinx Spartan 6 FPGA (a través del conector PMod en un Nexys3) y si no, podría adaptarse para que funcione?

Primer intento, basado en comentarios en las respuestas, pero la resistencia de salida no debería estar en serie.

Lo dejo aquí por razones de instrucción y de contexto, consulte el siguiente esquema

MicrobeeSchematic2 http://www.toptensoftware.com/fpgabee/MicrobeeCassettePortSchematic2.png

Nuevas preguntas:

  1. ¿Es correcta la polaridad del comparador?
  2. Para MCP6546 , ¿Vss va a tierra y Vdd a 3.3V?
  3. No estoy seguro de qué hacer con la resistencia "punteada" a través de las entradas de cinta en el circuito original.

Incorporación de comentarios con respecto a la salida del comparador con drenaje abierto:

MicrobeeSchematic3 http://www.toptensoftware.com/fpgabee/MicrobeeCassettePortSchematic3.png

¿Qué alternativas podría usar para el MCP6546, que no he podido encontrar en las tiendas minoristas aquí en Australia? Puedo obtener LM311 o LM393 que, por lo que puedo decir, son similares. ¿Funcionarán igual de bien?

    
pregunta Brad Robinson

4 respuestas

6
  1. Los condensadores de desacoplamiento se conocen en las fuentes de alimentación de los circuitos, donde sirven para mantener la tensión de alimentación limpia de ruido (alta frecuencia). Pero tengo la impresión de que aquí se entiende la eliminación del contenido de CC de su señal, por medio de un condensador en serie, como lo hace C24 para la entrada. El cual, según su punto de vista (CC o CA), se puede llamar un condensador de acoplamiento. Pero no hay condensador que haga esto en su salida. El valor de C23 también es sospechosamente bajo. La frecuencia de corte con las resistencias R23 y R24 es de 12 kHz, lo cual es inútil, porque de todos modos eso será aproximadamente el rango de frecuencia del cassette. Prefiero esperar 5 kHz aquí. También el texto habla de la entrada de MIC, pero para eso el nivel de salida es demasiado alto. El esquema menciona la entrada de línea.

  2. El CA3140 no es bueno. Su voltaje de operación mínimo es de 4 V, y a 5 V la salida alta no sube a más de 3 V, por lo que para una fuente de 4 V puede ser tan baja como 2 V, y puede no ser suficiente para el Spartan. En su lugar, use una plataforma de Rail-to-Rail, o incluso mejor un comparador.

editar vuelve a tus nuevas preguntas

  1. La polaridad está bien, ya que no importa :-). Tiene una señal de CA que va por encima y por debajo del suelo. Como lo has dibujado, los semiciclos positivos harán que la salida vaya a Vcc, la negativa a tierra. Si cambia las entradas, tendrá lo contrario, pero ambas señales se verán igual.

  2. Sí.

  3. Lo ignoraría. Parece que no tiene una función que no sea cargar la salida, y además, si la descartas, estás pidiendo que la ignores :-).

Lo importante de R1: debe ir a Vcc, su 3.3 V, no en serie con la salida. La salida de drenaje abierto significa que solo hay un FET que cambia la salida a tierra, por lo que solo se puede reducir, no a alta. La resistencia de pull-up hará que la salida sea alta cuando el FET está desactivado.

    
respondido por el stevenvh
3
Los condensadores de la serie

se denominan normalmente condensadores de "acoplamiento", ya que acoplan el componente de CA de la señal de origen al destino. Los condensadores de desacoplamiento son condensadores de derivación diseñados para evitar el acoplamiento de señales de CA de la fuente a la detinación.

En este contexto, C23 desacopla los componentes de alta frecuencia del PIO a tierra, de modo que la salida de onda cuadrada se redondea, es decir, aproximadamente sinusoidal (su artículo citado se refiere al "desacoplamiento" al describir la salida al puerto de cinta, por lo que refiriéndose a C23).

    
respondido por el MikeJ-UK
1

El circuito dibujado probablemente debería funcionar con un FPGA si el IC35 emite una señal de 0 a 3.3 voltios. Una pequeña advertencia es que debido a que la entrada del casete no tiene histéresis, es posible que una señal que debe aparecer como un solo borde ascendente o descendente pueda aparecer como una secuencia rápida de bordes ascendentes y descendentes que luego se establezca alta o baja unos pocos microsegundos después . Eso no debería ser un problema si diseñas tu FPGA para que ignore los cambios de entrada que duren menos que, por ejemplo. 10 microsegundos, e ignora los cambios de entrada que se producen dentro de los 20 microsegundos de un cambio detectado, pero si su lógica intenta medir la longitud de los pulsos de entrada sin imponer una longitud mínima, podría tener problemas.

    
respondido por el supercat
1
  1. El "desacoplado" en este escenario probablemente se refiere tanto al condensador en serie que bloquea DC (C24) como a la parte C del RC (C23) aunque debería ser un "condensador de acoplamiento" para C24 (el desacoplamiento es también se utiliza para referirse a la función de bloqueo de CC, pero creo que se confunde de esta manera, ya que generalmente significa el "otro tipo" que desvía la CA a tierra) y el "desacoplamiento" para C23 (en todo caso)
    La tapa de acoplamiento se usa comúnmente en los circuitos de amplificadores de audio para permitir que una entrada de etapas se cargue independientemente del nivel de salida DC de las etapas anteriores.

  2. Sí, siempre y cuando suministre el opamp con el mismo voltaje que los pines FPGA (por ejemplo, 3.3V, 2.5V, etc.) en lugar de los 5V que se muestran. Debería poder usar prácticamente cualquier opamp para la función de comparación (es preferible que el riel a el riel sea más fácil, como dice Steven, pero no es esencial siempre que cumpla con la entrada de FPGA min-high max-low)

respondido por el Oli Glaser

Lea otras preguntas en las etiquetas