Conexão de um cassete de computador do estilo dos anos 80 a um FPGA


9

Estou reimplementando um computador Microbee dos anos 80 em um FPGA (veja aqui ) e tentando descobrir como fazer a porta do cassete. Aqui estão os esquemas para a interface de cassete Microbee original:

MicrobeeSchematic
(fonte: toptensoftware.com )

Eu também encontrei essa descrição em um manual técnico:

A saída de dados do cassete consiste meramente em uma rede RC que aceita um sinal do DB1, pino 28 do PIO. O sinal é atenuado e depois desacoplado antes de enviá-lo para a entrada MIC do gravador de cassetes. Este sinal aparece no pino 3 do soquete DIN de 5 pinos.

O circuito de entrada de dados do cassete é um pouco mais complicado. A entrada do pino 5 do soquete DIN passa primeiro para um desacoplador de atenuador. A seguir, está um amplificador operacional CA3140, para permitir que uma ampla gama de níveis de entrada seja elevada ao quadrado antes que o sinal seja passado para o pino 27 do PIO, DBO. Os dois diodos, através das entradas inversora e não inversora, para o amplificador operacional, emitem qualquer sinal de entrada maior que a tensão direta dos diodos em qualquer direção. O capacitor de 47pF é exigido pelo amplificador operacional CMOS para pré-compensação.

Minhas perguntas:

  1. O que significa "desacoplado" na descrição?
  2. O mesmo circuito funcionaria se conectado a dois dos pinos de E / S em um FPGA Xilinx Spartan 6 (através do conector PMod em um Nexys3) e, se não, poderia ser adaptado para fazê-lo funcionar?

Primeira tentativa, com base nos comentários nas respostas, mas o resistor de saída não deve estar em série.

Estou deixando isso aqui por motivos contextuais e instrucionais. Consulte o próximo esquema

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

Novas perguntas:

  1. A polaridade do comparador está correta?
  2. Para o MCP6546 , o Vss vai para o solo e o Vdd para 3.3V?
  3. Não sei ao certo o que fazer com o resistor "pontilhado" nas entradas de fita no circuito original.

Incorporando feedback sobre o resultado do comparador sendo dreno aberto:

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

Que alternativas eu poderia usar para o MCP6546, que não consegui encontrar em lojas de varejo aqui na Austrália. Posso obter LM311 ou LM393 que, pelo que sei, são semelhantes. Será que isso funciona tão bem?

Respostas:


6
  1. Os capacitores de desacoplamento são conhecidos nas fontes de alimentação dos circuitos, onde servem para manter a tensão de alimentação limpa do ruído (alta frequência). Mas tenho a impressão de que aqui a remoção do conteúdo DC do seu sinal significa, por meio de um capacitor em série, como C24 faz para a entrada. Que, dependendo do seu ponto de vista (CC ou CA), pode ser chamado de capacitor de acoplamento. Mas não há capacitor que faça isso na sua saída. O valor de C23 também é suspeito de baixo. A frequência de corte com os resistores R23 e R24 é de 12 kHz, o que é inútil, porque, de qualquer maneira, essa será a faixa de frequência da fita. Eu prefiro esperar 5 kHz aqui. O texto também fala da entrada MIC, mas para isso o nível de saída é muito alto. O esquema menciona a entrada da linha.

  2. O CA3140 não é bom. Sua voltagem mínima de operação é de 4 V e, a 5 V, a saída alta não ultrapassa os 3 V, portanto, para uma alimentação de 4 V que pode ser tão baixa quanto 2 V e que pode não ser suficiente para o Spartan. Use um opamp Rail-to-Rail, ou melhor ainda, um comparador.

edite suas novas perguntas

  1. A polaridade é boa, pois não importa :-). Você tem um sinal CA acima e abaixo do solo. Como você desenhou, os semiciclos positivos farão a saída ir para Vcc, a negativa para o solo. Se você alternar as entradas, terá o inverso, mas ambos os sinais terão a mesma aparência.

  2. Sim.

  3. Eu ignoraria isso. Parece não ter uma função além de carregar a saída e, além disso, se você a pontuar, está pedindo para ser ignorada :-).

O importante sobre o R1: isso deve ir para Vcc, seu 3,3 V, não em série com a saída. A saída de dreno aberto significa que há apenas um FET alternando a saída para o terra, para que ela possa apenas torná-la baixa, não alta. O resistor pull-up aumentará a saída quando o FET estiver desligado.


"Desacoplar normalmente significa remover o conteúdo DC do seu sinal por meio de um capacitor em série" - uma tampa em série não é um capacitor de acoplamento? Uma tampa de desacoplamento remove o conteúdo da CA.
Kellenjb

@Kellen - Oh querida. Sim, você está certo, especialmente se você pensa em desacoplar as linhas de fonte de alimentação. Aqui eu estava pensando em separar o DC do sinal :-).
Stevenvh 17/07/12

@stevenvh Obrigado pela resposta detalhada, embora parte do que você diz vá além da minha cabeça. Eu tenho conhecimento limitado de eletrônica, mas estou tentando aumentá-lo, então acabei de ler sobre circuitos RC, amplificadores operacionais e comparadores. Provavelmente, devo postá-las como perguntas separadas, mas: 1) como você criou 12Hz e 2) você poderia recomendar um comparador? Na verdade, eu espero tirar isso dos 3.3V disponíveis no PMod, se possível.
23812 Brad Robinson

Além disso, você está certo, o Microbee tinha saída no nível da linha, não no nível do microfone. O que me deixa curioso - como você pode modificar isso para funcionar no nível do microfone (estou pensando em enviar isso para um iPhone para gravação).
23412 Brad Robinson

Ω

3

Os capacitores da série são normalmente chamados capacitores de 'acoplamento', pois acoplam o componente CA do sinal da fonte ao destino. Os capacitores de desacoplamento são capacitores de derivação projetados para impedir o acoplamento de sinais CA da fonte à detinação.

Nesse contexto, C23 desacopla os componentes de alta frequência do PIO ao terra para que a saída de onda quadrada se torne arredondada, isto é, aproximadamente sinusoidal (o artigo citado se refere a 'desacoplamento' na descrição da saída da porta de fita e, portanto, deve estar se referindo a C23).


Também se refere a um "atenuador-desacoplador" na entrada do gravador, que foi o que me fez pensar sobre eles usá-lo para significar duas coisas diferentes.
Oli Glaser

1

O circuito como desenhado provavelmente deve funcionar com um FPGA se o IC35 emitir um sinal de 0 a 3,3 volts. Uma pequena ressalva é que, como a entrada do cassete não possui histerese, é possível que um sinal que deva aparecer como uma única borda ascendente ou descendente possa aparecer como uma sequência rápida de bordas ascendentes e descendentes, que depois se estabiliza alta ou baixa alguns microssegundos mais tarde . Isso não deve ser um problema se você projetar seu FPGA para que ele ignore as alterações de entrada que duram menos de 10 microssegundos e ignore quaisquer alterações de entrada que ocorram dentro de 20 microssegundos de uma alteração detectada, mas se sua lógica tentar medir os comprimentos de pulsos de entrada sem impor um comprimento mínimo, pode haver problemas.


1
  1. O "desacoplado" neste cenário provavelmente se refere tanto ao capacitor em série que bloqueia DC (C24) quanto à parte C do RC (C23), embora deva ser "capacitor de acoplamento" para C24 (o desacoplamento também é usado para se referir ao Função de bloqueio de CC, mas acho que fica confuso dessa maneira, pois geralmente significa o "outro tipo" que desvia CA para terra) e "desacoplamento" para C23 (se houver alguma coisa)
    A tampa de acoplamento é comumente usada em circuitos de amplificador de áudio para permitir que a entrada de um estágio seja influenciada independentemente do nível de saída CC dos estágios anteriores.

  2. Sim, desde que você forneça ao opamp a mesma tensão que os pinos do FPGA (por exemplo, 3,3V, 2,5V, etc.), em vez dos 5V mostrados. Você deve poder usar praticamente qualquer opamp para a função de comparador (o trilho ao trilho é preferível para facilitar as coisas, como Steven diz, mas não é essencial, desde que você atenda à entrada FPGA min-alta max-baixa)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.