Connexion d'une cassette d'ordinateur de style années 80 à un FPGA


9

Je réimplémente un ordinateur Microbee des années 1980 sur un FPGA (voir ici ) et j'essaie de comprendre comment faire le port de cassette. Voici les schémas de l'interface originale de la cassette Microbee:

MicrobeeSchematic
(source: toptensoftware.com )

J'en ai également trouvé la description dans un manuel technique:

La sortie de données de cassette se compose simplement d'un réseau RC qui accepte un signal de DB1, broche 28 du PIO. Le signal est atténué puis découplé avant d'être envoyé à l'entrée MIC du magnétophone. Ce signal apparaît sur la broche 3 de la prise DIN 5 broches.

Le circuit d'entrée de données de cassette est légèrement plus compliqué. L'entrée de la broche 5 de la prise DIN passe d'abord par un découpleur d'attention. Ensuite, un ampli opérationnel CA3140, pour permettre à une large gamme de niveaux d'entrée d'être mis au carré avant que le signal soit transmis à la broche 27 du PIO, DBO. Les deux diodes situées aux entrées inverseuse et non inverseuse de l'ampli op coupent tout signal d'entrée supérieur à la tension directe des diodes dans les deux sens. Le condensateur 47pF est requis par l'ampli op CMOS pour la précompensation.

Mes questions:

  1. Que signifie «découplé» dans la description?
  2. Le même circuit fonctionnerait-il s'il était connecté à deux des broches d'E / S d'un FPGA Xilinx Spartan 6 (via le connecteur PMod d'un Nexys3) et sinon, pourrait-il être adapté pour le faire fonctionner?

Première tentative, basée sur les commentaires dans les réponses, mais la résistance de sortie ne doit pas être en série.

Je laisse ceci ici pour des raisons contextuelles et pédagogiques, veuillez consulter le schéma suivant

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

Nouvelles questions:

  1. La polarité du comparateur est-elle correcte?
  2. Pour le MCP6546 , Vss passe-t-il à la masse et Vdd à 3,3 V?
  3. Je ne sais pas quoi faire de la résistance "pointillée" entre les entrées de bande dans le circuit d'origine.

Intégration d'une rétroaction concernant la sortie du comparateur à drain ouvert:

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

Quelles alternatives pourrais-je utiliser pour le MCP6546, que je n'ai pas pu trouver dans les magasins de détail ici en Australie. Je peux obtenir LM311 ou LM393 qui, d'après ce que je peux dire, sont similaires. Est-ce que cela fonctionnera aussi bien?

Réponses:


6
  1. Les condensateurs de découplage sont connus dans les alimentations des circuits, où ils servent à maintenir la tension d'alimentation propre du bruit (haute fréquence). Mais j'ai l'impression qu'ici, supprimer le contenu DC de votre signal signifie, au moyen d'un condensateur série, comme le fait le C24 pour l'entrée. Ce qui, selon votre point de vue (DC ou AC) peut être appelé un condensateur de couplage. Mais il n'y a aucun condensateur qui fait cela sur votre sortie. La valeur de C23 est également suspecte. La fréquence de coupure avec les résistances R23 et R24 est de 12 kHz, ce qui est inutile, car il s'agira de toute façon de la plage de fréquences de la cassette. Je m'attendrais plutôt à 5 kHz ici. Le texte parle également de l'entrée MIC, mais pour cela le niveau de sortie est trop élevé. Le schéma mentionne l'entrée ligne.

  2. Le CA3140 n'est pas bon. Sa tension de fonctionnement minimale est de 4 V, et à 5 V, la sortie haute ne dépasse pas 3 V, donc pour une alimentation 4 V qui peut être aussi faible que 2 V, et qui peut ne pas être suffisante pour le Spartan. Utilisez plutôt un ampli Rail-To-Rail, ou mieux encore un comparateur.

modifier vos nouvelles questions

  1. La polarité est OK, car cela n'a pas d'importance :-). Vous avez un signal AC allant au-dessus et au-dessous du sol. Comme vous l'avez dessiné, les demi-cycles positifs feront passer la sortie à Vcc, le négatif à la masse. Si vous changez les entrées, vous aurez l'inverse, mais les deux signaux auront la même apparence.

  2. Oui.

  3. Je l'ignorerais. Il ne semble pas avoir de fonction autre que le chargement de la sortie, et en plus, si vous le faites ressortir, vous demandez d'être ignoré :-).

Une chose importante à propos de R1: cela devrait aller à Vcc, votre 3,3 V, pas en série avec la sortie. La sortie à drain ouvert signifie qu'il n'y a qu'un FET commutant la sortie à la masse, donc elle ne peut que la rendre basse, pas haute. La résistance de pull-up rendra la sortie élevée lorsque le FET est désactivé.


"Le découplage signifie normalement la suppression du contenu CC de votre signal au moyen d'un condensateur série" - un capuchon série n'est-il pas un condensateur de couplage? Un capuchon de découplage supprime le contenu AC.
Kellenjb

@Kellen - Oh mon cher. Oui, vous avez raison, surtout si vous songez à découpler les lignes d'alimentation. Ici, je pensais à découpler le DC du signal :-).
stevenvh

@stevenvh Merci pour la réponse détaillée, même si une partie de ce que vous dites me dépasse. J'ai une connaissance limitée de l'électronique, mais j'essaie de la développer, donc je viens de lire sur les circuits RC, les amplis opérationnels et les comparateurs. Je devrais probablement poster ces questions séparément, mais: 1) comment avez-vous trouvé 12Hz, et 2) pourriez-vous recommander un comparateur? J'espère réellement éliminer cela du 3,3 V disponible sur le PMod si possible.
Brad Robinson

De plus, vous avez raison, le Microbee avait une sortie de niveau ligne, pas de niveau micro. Ce qui me rend curieux - comment pouvez-vous modifier cela pour qu'il fonctionne au niveau du microphone (je pense à l'envoyer à un iPhone pour l'enregistrement).
Brad Robinson

@Brad - kHz! pas Hz. Fréquence de coupure = 1 / (2 pi RC), où R est le parallèle de R23 et R24 ( cette réponse explique pourquoi). Donc f = 1 / (2 pi 1,3 k 10nF) = 12,2 kHz. Il s'agit d'un comparateur approprié. Vous devrez ajouter une résistance de rappel de 10k à sa sortie. Ω
stevenvh

3

Les condensateurs série sont normalement appelés condensateurs de «couplage» car ils couplent la composante alternative du signal source à la destination. Les condensateurs de découplage sont des condensateurs shunt conçus pour empêcher le couplage des signaux alternatifs de la source à la détection.

Dans ce contexte, C23 dissocie les composants haute fréquence du PIO à la masse afin que la sortie rectangulaire soit arrondie, c'est-à-dire approximativement sinusoïdale (votre article cité fait référence au `` découplage '' pour décrire la sortie vers le port de bande et doit donc faire référence à C23).


Il fait également référence à un "atténuateur-découpleur" dans l'entrée du magnétophone, ce qui m'a poussé à me demander s'ils l'utilisaient pour signifier deux choses différentes.
Oli Glaser

1

Le circuit tel que dessiné devrait probablement fonctionner avec un FPGA si l'IC35 émet un signal de 0 à 3,3 volts. Une légère mise en garde est que, comme l'entrée de cassette n'a pas d'hystérésis, il est possible qu'un signal qui devrait apparaître comme un seul front montant ou descendant puisse apparaître comme une séquence rapide de fronts montant et descendant qui s'établit ensuite haut ou bas quelques microsecondes plus tard. . Cela ne devrait pas être un problème si vous concevez votre FPGA de sorte qu'il ignore les changements d'entrée qui durent moins de 10 microsecondes, par exemple, et ignore tous les changements d'entrée qui se produisent dans les 20 microsecondes d'un changement détecté, mais si votre logique essaie de mesurer les longueurs d'impulsions d'entrée sans imposer une longueur minimale, il pourrait avoir des problèmes.


1
  1. Le "découplé" dans ce scénario se réfère probablement à la fois au condensateur série qui bloque DC (C24) et à la partie C du RC (C23) bien qu'il devrait s'agir d'un "condensateur de couplage" pour C24 (le découplage est également utilisé pour faire référence à la Fonction de blocage DC, mais je pense que cela devient confus de cette façon, car cela signifie généralement "l'autre sorte" qui shunte AC à la masse) et "découplage" pour C23 (le cas échéant)
    Le capuchon de couplage est utilisé couramment dans les circuits d'amplificateur audio pour permettre à une entrée d'étages d'être polarisée indépendamment du niveau de sortie CC des étages précédents.

  2. Oui, tant que vous fournissez l'ampli-op avec la même tension que les broches FPGA (par exemple 3,3 V, 2,5 V, etc.) plutôt que le 5 V indiqué. Vous devriez pouvoir utiliser à peu près n'importe quel ampli-op pour la fonction de comparateur (rail à rail est préférable pour faciliter les choses, comme le dit Steven, mais pas essentiel tant que vous rencontrez une entrée FPGA min-haute max-basse)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.