Notes
des auteurs :
Cette page "Fonctionnement" n'a pas la prétention, ni la vocation d'être le
recueil
exhaustif des choix technologiques
employés tout au long de la mise au point du présent dispositif. Une page seule
n'y suffirait pas... En revanche, elle offre une vision globale du
fonctionnement en faisant référence au schéma structurel, si le besoin s'en fait
sentir...
Synoptique
de l'analyseur logique :
Description
des différents étages
de l'analyseur logique :
Le signal d'horloge CLK
délivré par la carte oscillateur est
appliqué simultanément aux broches 2
référencées CLK des compteurs
binaires synchrones à 4 bits U2, U6 et
U10. De la sorte, les sorties binaires Q0 à Q4 fournissent un
signal rectangulaire divisé par 2, par 4, par
8 et par 16. La structure en cascade des trois compteurs
binaires permet d'obtenir 11
facteurs de division compris entre
2 en broche 14 de U1 et 2048 en broche
12 de U10. Ces
11 sorties vont donc constituer
l'ensemble du bus
d'adresses chargé de faire évoluer
l'adressage des RAM U1 et U20.
A la fin de
l'acquisition en RAM des 2048 échantillons, les
différents compteurs sont repositionnés
à zéro via la broche
1 référencée MR afin de procéder à la
lecture du contenu des RAM, jusqu'à la prochaine phase d'acquisition.
Il est légitime de s'interroger sur l'utilité d'employer des
74F161 en lieu et place d'un compteur binaire de type CMOS 4040. Ce
choix fut nécessaire car il faut absolument que toutes les adresses changent d'état à un même
instant. Or dans le cas de compteurs
asynchrones de type 4040, les bits de comptage de poids fort ont un retard
important sur les bits de poids faibles. Il apparait alors en sortie de ces
compteurs une adresse
erronée pendant un temps très bref mais
suffisant pour produire un glitch (état transitoire
aléatoire) en sortie. On peut associer ce décalage au temps de propagation des
circuits 4040. En revanche, la technologie 74F161 offre un temps de
propagation moyen de 8ns
qui reste bien inférieur au
16,7ns correspondant à une fréquence d'échantillonnage maximale de
30MHz. Ainsi, seule la technologie 74F161 est capable de respecter les conditions précédentes.
En écriture, la RAM référencée UM61M256k-15
nécessite un état logique stable
sur son bus de données durant un laps de
temps minimum de 9ns pour un cycle
d'écriture supérieur ou égal à
15ns. Dans notre cas, cette condition est aussi respectée puisque
l'échantillon N disponible sur le bus de données est présent durant
16,7ns (donc supérieur à 15ns) pour une fréquence d'échantillonnage
maximale de 30MHz. D'où l'importance de choisir des RAM avec un
cycle d'écriture de 15ns.
Le multiplexeur U19
est chargé de sélectionner
l'impulsion amorçant l'acquisition des
échantillons en fonction
de l'entrée trigger choisie au sein du logiciel sous Windows : sur
un octet ou à partir de l'entrée de
synchronisation externe J5.
Un comparateur de magnitude
U12 permet d'effectuer une synchronisation sur un octet par
comparaison entre l'octet appliqué sur
les entrées 1 à 8 et
l'octet déterminé par l'utilisateur
via l'expanseur de bus U14. Lorsque les
deux octets sont égaux, un créneau est délivré en sortie 19 de
U12 générant la commande d'amorce de l'acquisition des
échantillons.
La logique de contrôle (portes
logiques U16, U17
et U13) effectue l'ensemble
du processus d'acquisition
des données en RAM en fonction de la
fréquence d'échantillonnage délivrée par l'étage oscillateur à fréquence
variable de 60Hz à 30MHz. Le
microcontrôleur U15 aura dans ce cas, un rôle de subalterne puisqu'il gère
uniquement l'amorce et la fin
du processus d'acquisition. Lors de
la phase de restitution
des échantillons mémorisés en RAM, le
microcontrôleur U15 fait basculer la logique de contrôle dans le
mode lecture des
données en fournissant un signal
d'horloge spécifique dédié aux différents compteurs binaires U2,
U6 et U10.
Les buffers U9 (entrées 1 à 8) et
U18 (entrées 9 à 16) sont interconnectés entre le bus de données du
microcontrôleur et les mémoires RAM référencées U1 et U20. En effet,
durant la phase d'acquisition les buffers laissent passer les données provenant
des entrées 1 à 16 de l'analyseur jusqu'aux RAM U1 et
U20. En revanche, lors de la phase de restitution les signaux appliqués
sur les entrées
1 à 8 et
9
à 16
sont isolés
afin de permettre la lecture par le microcontrôleur des échantillons mémorisés
en RAM.
Le microcontrôleur reçoit sur ses
ports B et D les deux bus de données chargés de véhiculer
respectivement les échantillons des entrées 1 à 8 et 9 à 16. Ensuite,
les données parallèles sur 8 bits
sont sérialisées par le programme
implanté dans U15 puis transférées vers le PC au moyen de l'interface USB
équipant ce microcontrôleur. L'avantage indéniable de la liaison USB est
d'atteindre des débits de transmission entre l'analyseur et le PC bien
supérieurs à ceux obtenus par une liaison RS232
classique. U15 est aussi chargé de piloter l'ensemble des commutations
de la logique de contrôle à partir du bus I²C (SDA et SCL) mais aussi
de gérer les synchronisations. |