FR2716277A1 - Analyseur logique à sur-échantillonnage. - Google Patents

Analyseur logique à sur-échantillonnage. Download PDF

Info

Publication number
FR2716277A1
FR2716277A1 FR9501767A FR9501767A FR2716277A1 FR 2716277 A1 FR2716277 A1 FR 2716277A1 FR 9501767 A FR9501767 A FR 9501767A FR 9501767 A FR9501767 A FR 9501767A FR 2716277 A1 FR2716277 A1 FR 2716277A1
Authority
FR
France
Prior art keywords
signal
data
blocking
input
samples
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9501767A
Other languages
English (en)
Other versions
FR2716277B1 (fr
Inventor
Tim E Sauerwein
Craig L Overhage
Donald C Kirkpatrick
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tektronix Inc
Original Assignee
Tektronix Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tektronix Inc filed Critical Tektronix Inc
Publication of FR2716277A1 publication Critical patent/FR2716277A1/fr
Application granted granted Critical
Publication of FR2716277B1 publication Critical patent/FR2716277B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/25Testing of logic operation, e.g. by logic analysers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3177Testing of logic operation, e.g. by logic analysers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

Un analyseur logique acquiert toutes les données et toutes les entrées de signal d'horloge de façon asynchrone à vitesse élevée en utilisant un système à entrée rapide, sortie lente (FISO) numérique (10) pour produire une pluralité d'échantillons de données haute vitesse parallèles lors de chaque cycle d'une horloge système interne (95). La pluralité d'échantillons de données haute vitesse parallèles décrivent le comportement séquentiel de l'un des signaux d'entrée pendant une période de l'horloge système interne. L'un de la pluralité d'échantillons de données haute vitesse parallèles est ensuite choisi pour être l'unique échantillon de données qui est stocké dans la mémoire d'acquisition (80) pour ce cycle d'horloge. Le processus de sélection inclut un réglage de dérive (20), une détection et une sélection de front d'horloge (50), un alignement de l'échantillon associé au front d'horloge détecté et sélectionné par rapport à un emplacement de référence (60) et la sélection (70) en tant qu'unique échantillon qui doit être stocké de l'échantillon présentant une relation par rapport à l'emplacement de référence qui est déterminée par des données de réglage d'élaboration et de blocage.

Description

ANALYSEUR LOGIQUE A SUR-ECHANTILLONNAGE
La présente invention concerne le domaine des instruments d'acquisition de données numériques connus en tant qu'analyseurs logiques et plus particulièrement, une nouvelle approche vis-à-vis de la conception des analyseurs logiques utilisant un sur-échantillonnage asynchrone des signaux d'entrée pour obtenir un certain nombre de nouvelles fonctionnalités.
Les analyseurs logiques sont des instruments d'acquisition de données numériques qui permettent à un utilisateur d'acquérir et d'analyser des données numériques à partir d'un nombre important de signaux logiques tels que tous les signaux d'adresse, de données et de commande associés à un microprocesseur. Chaque signal logique est comparé à un seuil ou à des seuils logique(s) et est résolu selon l'un de deux états logiques, soit haut ou bas, un ou zéro, vrai ou faux. Le comportement de groupes de ces signaux peut alors être surveillé pour analyser le comportement du circuit soumis à un test.
L'instant auquel l'état des signaux logiques soumis à analyse est résolu selon une forme binaire est déterminé par un signal d'horloge. Si ce signal d'horloge est généré par l'analyseur logique et est indépendant du système soumis à un test, l'acquisition est dite être "asynchrone". Si le signal d'horloge est dérivé à partir du système soumis à un test de manière à être porteur d'une relation de cadencement prédéterminée vis-à-vis d'une partie de l'activité dans ce système, I'acquisition est dite être "synchrone".
Des données qui sont originellement synchrones vis-à-vis de l'horloge système utilisateur doivent être resynchronisées selon l'horloge interne de l'analyseur logique pour un traitement ultérieur. Le brevet des EtatsUnis d'Amérique n 4 949 361 de Jackson "Digital Data Transfer Synchronization Circuit and Method" décrit un circuit permettant de réaliser cette tâche de façcon très efficiente.
Typiquement, une acquisition de données asynchrone est relativement rapide et elle est utilisée pour analyser le "cadencement" des composants du circuit. Par ailleurs, une acquisition de données synchrone est typiquement relativement plus lente et elle est utilisée pour analyser "l'état" du système pendant une exécution de logiciel. Le brevet des Etats- Unis d'Amérique n 4 425 643 de Chapman et suivants "Multi-Speed Logic Analyser" décrit un analyseur logique muni de deux sections pouvant fonctionner en conjonction avec deux horloges différentes. Ce type d'architecture permet la coordination d'une analyse d'état et d'une analyse de cadencement.
Une fois que des données sont acquises à partir de deux signaux d'horloge différents (également connus en tant que "bases de temps") qui sont asynchrones l'un par rapport à l'autre et qui sont par conséquent "non liés", des procédés doivent être trouvés pour rendre la relation qui lie leurs cadencements relatifs disponible pour l'opérateur de l'analyseur logique. Le brevet des Etats-Unis d'Amérique n 4 558 422 de DenBeste et suivants "Digital Signal Sampling System with Two Unrelated Sampling Timebases" et le brevet des Etats-Unis d'Amérique n 4 578 666 de Anderson "Method of Comparing Data with Asynchronous Timebases décrivent tous deux des façons de manipuler des données de telle sorte qu'un affichage précis des relations de cadencement soit présenté à l'opérateur.
Une autre approche pour garder trace de l'instant d'créchantillonnage associé à différents événements est constituée par l'utilisation de "marquages temporels". Les marquages temporels sont une valeur de comptage qui est stockée lorsque chaque échantillon est acquis et qui peut être ensuite utilisée à une certaine variété d'utilisations. Le brevet des Etats-Unis d'Amérique n 4 731 768 de Easterday "Autoranging Time Stamp Circuit" décrit une approche pour une génération de marquages temporels.
Les données dans le système soumis à analyse peuvent souffrir d'une certaine variété de défauts qui les distinguent de données numériques théoriquement idéales, c'est-à-dire des données qui passent d'un état logique stable bien défini à un autre état logique stable bien défini selon une transition appropriée. Les données peuvent contenir des "pointes de tension" ou peuvent être instables d'une quelconque autre façon ou la transition de données peut souffrir d'une croissance lente ou d'une durée de décroissance trop longue ou peut présenter d'autres comportements qui sont loin d'être idéaux. Le brevet des Etats-Unis d'Amérique n 4 353 032 de Taylor "Glitch Detecto'r" mentionne l'existence de pointes de tension et décrit un circuit permettant de capturer une information les concernant. Le brevet des Etats-Unis d'Amérique n 4 968 902 de Jackson "Unstable Data Recognition Circuit for Dual Threshold Synchronous Data" décrit un circuit permettant de détecter lorsqu'un ou plusieurs signaux soumis à analyse ne se comportent pas de façon appropriée. Le brevet des Etats-Unis d'Amérique n 5 043 927 qui est également dû à Jackson, "'Digital Signal Quality Analysis Using Simultaneous Dual-Threshold Data Acquisition", décrit un procédé permettant de trouver une certaine variété d'anomalies de signal dans un signal répétitif en utilisant deux seuils lors crd'une succession de mesures.
Puisque les analyseurs logiques acquièrent des signaux sur un nombre important de canaux simultanément et que les voies de signal au travers du circuit d'entrée de l'analyseur logique ou les sondes utilisées pour réaliser une connexion sur le système utilisateur ne peuvent pas être toutes exactement équivalentes électriquement, les temps de propagation de signaux qui passent sur ces différentes voies ne peuvent pas être tous les mêmes. Lorsque ce phénomène est observé, un signal est dit présenter "une dérive" par rapport à un autre signal. Le brevet des Etats-Unis d'Amérique n 4 646 297 de Palmquist et suivants "Skew Detector" décrit un circuit permettant de détecter cette condition. Le brevet des Etats- Unis d'Amérique n 4 481 647 de Gombert et suivants "Method and Apparatus of Compensation for Variations in Signal Propagation Time Existing Within the Channels of a Multi-Channel Device" décrit un moyen pour corriger des erreurs de dérive.
La "résolution" d'un analyseur logique est typiquement la même que la période d'horloge d'acquisition, par exemple 10 ns pour une horloge à MHz. Le brevet des Etats-Unis d'Amérique n 4 979 177 de Jackson "Enhanced Counter/Timer Resolution in a Logic Analyzer" décrit un analyseur logique ayant pour capacité d'utiliser deux phases de l'horloge système pour acquérir des données puis pour maintenir la résolution améliorée résultante pendant que les données sont manipulées en utilisant de façon interne une horloge monophase. Le résultat est une résolution qui est de fait doublée, par exemple 5 ns pour une horloge à 100 MHz. Une autre approche est décrite dans le brevet des Etats-Unis d'Amérique n 4 777 616 de Moore et suivants "Increased Resolution Logic Analyzer Using Asynchronous Sampling". Cette approche repose sur un échantillonnage répété d'un signal répétitif de façon asynchrone afin d'augmenter la résolution effective.
A l'évidence, la façon la plus directe d'augmenter la résolution consiste à augmenter la fréquence du signal d'horloge d'acquisition lui- même. L'un des obstacles qui est rencontré avec cette approche est constitué par les limitations de vitesse de la mémoire d'acquisition. Le brevet des Etats-Unis d'Amérique n 4 903 240 de Von Flue "Readout Circuit and Method for Multiphase Memory Array" décrit un schéma permettant de démultiplexer les données de signal d'entrée dans un réseau de mémoires et un circuit permettant de lire les contenus de ces mémoires.
L'acquisition rapide de données est même davantage un défi lorsque le niveau analogique du signal d'entrée doit être déterminé, au lieu de déterminer simplement sa relation vis-à-vis d'un seuil de niveau logique.
Ce défi est toujours présent dans des oscilloscopes analogiques haute vitesse tels que celui de la génération la plus récente qui est décrit dans le brevet des Etats-Unis d'Amérique n 5 144 525 de Saxe et suivants "Analog Acquisition System Including a High Speed Timing Generator". Un autre système d'acquisition entrée rapide, sortie lente (FISO) haute vitesse est décrit dans le brevet des Etats-Unis d'Amérique n 4 271 488 de Saxe "High-Speed Acquisition System Employing an Analog Memory Matrix'.
Dans le brevet des Etats-Unis d'Amrique n 5 144 525, chaque cellule du réseau est sélectionnée séquentiellement pour effectuer un échantillonnage à une vitesse très rapide. Des rangées de ce réseau de cellules sont sélectionnées par des signaux à cadencement lent générés par un registre à décalage lent tandis que des cellules individuelles contenues dans chaque rangée sont sélectionnées par des signaux d'échantillonnage-blocage rapides générés selon une certaine variété d'autres façons.
Une certaine variété de procédés pour générer des signaux de blocage produits rapidement font l'objet d'une discussion dans le brevet no 5 144 525. Cependant, même le plus rapide et le plus réglable de ces procédés présente des limitations quant à la vitesse et quant à sa capacité de réglage. On connait par ailleurs un générateur de signal d'échantillonnage-blocage perfectionné présentant de très courts intervalles de retard entre des transitions de signal échantillonnageblocage successives et une capacité de réglage à la fois au niveau du cadencement des transitions individuelles par rapport à un signal de cadencement de référence et au niveau du retard collectif de la totalité d'une rangée de signaux de cadencement rapides.
Tous les circuits numériques synchrones nécessitent un certain degré de stabilité de leurs entrées afin de garantir un comportement approprié fiable de leurs sorties. La durée pendant laquelle des entrées doivent être stables avant un événement de synchronisation afin d'assurer un fonctionnement approprié est connue en tant que "durée d'élaboration" tandis que la durée pendant laquelle des entrées doivent être stables après l'événement de synchronisation pour assurer un fonctionnement approprié est connue en tant que "durée de blocage". Un analyseur logique présente également des temps d'élaboration et de blocage de son propre fait.
Normalement, le temps d'élaboration d'un analyseur logique est aussi court que possible et son temps de blocage est de zéro. Dans l'idéal, cette "fenêtre" d'élaboration et de blocage doit pouvoir être réglée de telle sorte qu'elle puisse être positionnée comme l'utilisateur le souhaite.
Un analyseur logique classique effectue typiquement un certain traitement d'un signal d'horloge utilisateur avant de l'utiliser pour acquérir des données synchrones. Puisque ce traitement prend un certain temps, les signaux de données qui doivent être cadencés doivent également être retardés afin de positionner la fenêtre temporelle d'élaboration et de blocage o il convient. La mise en oeuvre de lignes de retard sur chaque canal ajoute un coût conséquent à l'analyseur logique. En outre, I'égalisation des retards résultants conduit à l'ajout d'une dépense et d'une complexité supplémentaires. Si chaque ligne de retard est réglable, la dérive canal à canal peut être minimisée et la fenêtre d'élaboration et de blocage peut être minimisée et même déplacée par rapport au signal d'horloge d'acquisition. Cependant, le fait de mettre en oeuvre des lignes de retard réglables sur chaque canal est relativement coûteux. Néanmoins, ceci constitue l'approche qui a été fréquemment utilisée pour faire en sorte qu'un analyseur logique présente des spécifications appropriées. Puisque le temps d'élaboration et de blocage pour un groupe de canaux est seulement aussi bon que le temps correspondant le pire de ces canaux, la dérive canal à canal dégrade la performance temporelle d'élaboration et de blocage globale de l'analyseur logique de même qu'elle présente une certaine variété d'autres effets défavorables.
Récemment, au moins un fabricant d'analyseurs logiques (Hewlett-Packard) a adopté un sur-échantillonnage synchrone de signaux d'entrée dans l'un de ses analyseurs logiques, soit le HP 16517A (On pense que cette approche a été tout d'abord développée par Outlook Technology, qui fait maintenant partie de Biomation, au début des années 1980). Selon cette approche, un signal d'horloge utilisateur est utilisé pour commander une boucle à verrouillage de phase (PLL) qui est accordée pour produire un signal d'horloge d'acquisition à une fréquence qui est un multiple de la fréquence d'horloge utilisateur. Cette approche permet une meilleure appréhension de différences de cadencement fines entre les canaux mais souffre de plusieurs limitations majeures par rapport à la présente invention. Du fait de l'utilisation de la PLL, le signal d'horloge utilisateur doit être périodique et supérieur à une fréquence minimum, et l'analyseur logique qui l'utilise doit être mis en oeuvre selon une technologie haute vitesse, faible coût et faible densité de circuit pour supporter cette vitesse. Une quelconque gigue dans le signal d'horloge utilisateur provoque des erreurs d'échantillonnage dans les données acquises. Du fait que la synchronisation interne de l'analyseur logique est également commandée par l'horloge utilisateur, toutes les mesures temporelles sont indirectes, c'est-à-dire le produit d'une valeur de comptage d'horloge et d'une période moyenne mesurée du signal d'horloge utilisateur.
Un objet de la présente invention consiste à proposer un analyseur logique présentant des exigences de temps d'élaboration et de blocage réglables.
Un autre objet de la présente invention consiste à proposer un analyseur logique permettant de détecter des violations d'élaboration et de blocage moyennant une résolution sans précédent.
Un autre objet de la présente invention consiste à proposer un analyseur logique dans lequel le réglage de la dérive canal à canal puisse être aisément réalisé de manière à ne pas nécessiter des lignes de retard pour chaque canal d'entrée de données.
Un autre objet de la présente invention consiste à proposer un analyseur logique permettant d'obtenir des durées d'échantillonnage extrêmement précises pour les données acquises.
Un autre objet de la présente invention consiste à proposer un analyseur logique qui permette d'acquérir les mêmes signaux à la fois de façon synchrone et de façon asynchrone simultanément sans double saisie par sonde Un objet de la présente invention consiste à proposer un analyseur logique muni d'une détection de pointe de tension perfectionnée qui utilise un circuit numérique au lieu d'utiliser un circuit analogique.
Par conséquent, la présente invention propose un analyseur logique dans lequel toutes les données et toutes les entrées de signaux d'horloge sont acquises de façon asynchrone à vitesse élevée par un FISO numérique afin de produire une pluralité d'échantillons de données haute vitesse parallèles lors de chaque cycle d'une horloge système interne. La pluralité d'échantillons de données haute vitesse parallèles décrivent le comportement séquentiel de l'un des signaux d'entrée pendant une période de l'horloge système interne. L'un de la pluralité d'échantillons de données haute vitesse parallèles est ensuite sélectionné pour être l'unique échantillon de données qui est stocké dans la mémoire d'acquisition pour chaque cycle d'horloge synchrone valide ou pour chaque cycle d'horloge pendant des acquisitions asynchrones. Le processus de sélection inclut un réglage de dérive, une détection et une sélection de front d'horloge, un alignement de l'échantillon associé au front d'horloge détecté et sélectionné vis-à-vis d'un emplacement de référence et la sélection en tant qu'unique échantillon qui doit être stocké d'un échantillon présentant, vis-à-vis de l'emplacement de référence, une relation qui est déterminée par des données de réglage d'élaboration et de blocage.
Selon un autre aspect de l'invention, un détecteur de pointe de tension complètement numérique et synchrone surveille les échantillons de données haute vitesse parallèles après qu'ils sont réglés du point de vue de la dérive et après qu'ils ont été référencés par rapport à un front d'horloge utilisateur et à partir de ces échantillons, génère un signal de pointe de tension lorsque des pointes de tension ont été observés.
Selon un autre aspect de l'invention, un dispositif de vérification de violation d'élaboration et de blocage détecte des transitions dans le signal d'entrée à partir des échantillons de données haute vitesse parallèles après qu'ils ont été réglés du point de vue de la dérive et qu'ils se sont vus associer un front d'horloge. Les transitions détectées sont validées et soumises à une logique OU afin de produire un signal de violation d'élaboration et de blocage seulement si ces transitions sont dans l'intervalle établi par un jeu de signaux de masque de fenêtre d'élaboration et de blocage.
Une caractéristique de l'invention est constituée par le fait que le cadencement entre différents canaux de données peut être réglé pendant le processus de sélection afin de minimiser la dérive canal à canal et afin de minimiser les temps d'élaboration et de blocage intrinsèques de l'analyseur logique.
Une autre caractéristique de l'invention est constituée par le fait que le cadencement entre un canal d'horloge et des canaux de données peut être réglé pendant le processus de sélection pour permettre aux temps d'élaboration et de blocage effectifs de l'acquisition d'être amenés à varier et pour permettre la détection de violations d'élaboration et de blocage moyennant une résolution sans précédent.
Une autre caractéristique de l'invention est constituée par le fait que des marquages temporels "fins" peuvent être associés à des échantillons de données pendant le processus de sélection de telle sorte que des données à dérive réglée soient porteuses d'une information de marquage temporel hautement précise.
Une autre caractéristique de l'invention est constituée par le fait que des pointes de tension peuvent être détectées moyennant une résolution numérique augmentée du fait de l'échantillonnage supplémentaire qui est réalisé avant la sélection de l'unique bit qui doit être stocké.
Une autre caractéristique de l'invention est constituée par le fait que les avantages mentionnés ci-avant peuvent être obtenus moyennant une résolution de cadencement qui excède nettement la vitesse intrinsèque de la technologie sous-jacente, d'o l'obtention d'une performance améliorée ou d'une réduction des coûts ou d'une quelconque combinaison de ces deux éléments, en fonction des compromis réalisés.
Les objets et avantages de la présente invention mentionnés ci- avant ainsi que d'autres apparaîtront à la lumière de la description détaillée qui suit que l'on lira en relation avec les dessins parmi lesquels: la figure 1 est un schéma fonctionnel d'un circuit perfectionné d'analyseur logique utilisé pour la mise en oeuvre d'un mode de réalisation de l'invention; la figure 2 est un schéma fonctionnel simplifié du bloc de circuit de détection de front d'horloge 50 représenté sur la figure 1; la figure 3 est un schéma d'une version simplifiée du bloc logique de sélection de front 58 représenté sur la figure 2; la figure 4 est un schéma partiel du dispositif de vérification d'élaboration et de blocage 100 représenté sur la figure I1; et la figure 5 est un schéma du détecteur de pointe de tension 200 représenté sur la figure 1.
Par report à la figure 1, chaque canal d'entrée d'analyseur logique, en incluant à la fois les signaux de données et les signaux d'horloge, est traité par un circuit tel que celui représenté sur cette figure. La totalité du circuit représenté sur la figure I fonctionne de façon synchrone en réponse à des signaux d'horloge système recçus depuis l'horloge à 250 MHz 95 représentée au niveau de la partie inférieure droite. Les connexions de signaux d'horloge sont omises par souci de clarté. Le circuit à la droite de la ligne en pointillés verticale tel que le générateur de marquage temporel 90 fait partie de l'art antérieur disponible dans les analyseurs logiques classiques. Par ailleurs, une partie de l'analyseur logique classique qui n'est pas représentée sur la figure 1 est un système de sélection qui surveille les données arrivant sur la partie classique de l'analyseur logique et qui commande le stockage de données et diverses autres opérations.
Un circuit d'acquisition à entrée rapide, sortie lente (FISO) 10 ressemble de très près à celui décrit dans le brevet US n 5 144 525 dont il a été discuté ci-avant. Le FISO modifié 10 représenté ici contient des bascules bistables en tant qu'éléments de stockage numérique au lieu des cellules de stockage analogique décrites dans le brevet US n 5 144 525. Il acquiert des échantillons selon une fréquence de 2 GHz, ce qui est huit fois plus rapide que la fréquence d'horloge interne de l'analyseur logique qui constitue le premier mode de réalisation de la présente invention. L'horloge interne de cet analyseur logique fonctionne à 250 MHz. Ainsi, le FISO effectue des échantillonnages conformément à un facteur de suréchantillonnage N qui présente une valeur de 8 dans la mise en oeuvre particulière présentée ici.
La sortie du FISO 10 est constituée par 8 bits d'échantillons de données haute vitesse parallèles synchronisés sur l'horloge interne à 250 MHz. Cet échantillon haute vitesse parallèle à 8 bits est appliqué sur l'entrée d'un décaleur de retard de réglage de dérive 20. Le décaleur 20 bloque trois jeux séquentiels d'échantillons sur 8 bits à la fois et produit une sortie sur 8 bits de bits consécutifs en partant d'un emplacement déterminé par une entrée de données d'étalonnage qui joue le rôle de pointeur. Les 8 bits consécutifs de la sortie peuvent démarrer n'importe o dans les 24 bits bloqués par le décaleur de telle sorte que la fonction réalisée consiste à décaler la référence temporelle du train de données en décalant les frontières des blocs de bits sur 8 bits.
Le décalage réalisé par le décaleur de retard de réglage de dérive aligne chaque canal de données sur une référence temporelle commune pour compenser une dérive de canal à canal au niveau des retards de propagation depuis l'extrémité de sonde jusqu'au FISO 10. Ainsi, la sortie de ce circuit est constituée par des données haute vitesse parallèles alignées temporellement qui présentent une largeur de 8 bits. Pour crd'autres facteurs de sur-échantillonnage N, ces données parallèles présenteraient une largeur de N bits.
De façon interne, le décaleur de retard de réglage de dérive 20 contient un certain nombre de registres d'une largeur N qui décalent les données arrivant selon des groupes de N bits tout en maintenant la séquence originale calée sur la base de temps. En plus d'être appliquées sur le registre à N bits interne suivant, les sorties de ces registres sont toutes agencées pour former un registre série long depuis lequel un groupe de bits d'une largeur de N bits qui part d'un quelconque emplacement arbitraire peut être choisi en tant que sortie parallèle de N bits finale du décaleur de retard de réglage de dérive 20, soit les données haute vitesse parallèles alignées temporellement.
Le processus de soumission à une logique de porte qui produit le groupe de bits d'une largeur de N bits en commençant au niveau de il n'importe quel emplacement arbitraire peut être mis en oeuvre en utilisant N multiplexeurs "S à 1" o S est le nombre total de bits disponibles pour le décalage. Chaque multiplexeur a ses entrées qui sont décalées d'un emplacement supplémentaire pour chaque position qu'elles occupent dans la sortie. Ainsi, lorsque les signaux de données d'étalonnage sont appliqués sur les entrées de sélection de ces multiplexeurs "S à 1", leur valeur binaire globale détermine quels N bits contigus sont disponibles sur leurs sorties.
Les signaux de données haute vitesse parallèles alignés temporellement d'une largeur de N bits provenant du décaleur de retard de réglage de dérive 20 sont entrés sur trois circuits, soit la mémoire haute vitesse 30, l'élément de retard numérique 40 et le circuit de détection et de sélection de front d'horloge 50. L'élément de retard numérique 40 s'adapte au retard rendu nécessaire par le bloc de détection et de sélection de front d'horloge 50 pour calculer le "numéro de position".
La mémoire haute vitesse 30 enregistre en continu dans un tampon circulaire les quelques centaines ou milliers de groupes de signaux de données haute vitesse parallèles alignés temporellement d'une largeur de N bits les plus récents. Suite à la réception du signal de stockage haute vitesse, la mémoire haute vitesse 30 cesse de sur-écrire le contenu de son tampon circulaire et préserve de ce fait son contenu.
Le circuit de détection et de sélection de front d'horloge 50 détermine un numéro de position à partir de la sélection utilisateur des signaux de "validation de croissance et de décroissance" et à partir des signaux de données haute vitesse parallèle alignés temporellement d'une largeur de N bits associés à un nombre M-1 d'autres canaux et à partir du canal courant. La figure 2 est un schéma fonctionnel simplifié d'un bloc de circuit de détection de front d'horloge 50 représenté sur la figure 1.
Par report maintenant à la figure 2, les signaux de données haute vitesse parallèles alignés temporellement d'une largeur de 8 bits, soit TPH0 à TPH7, sont stockés dans un registre 52. "TPH" représente des signaux "haute vitesse parallèle alignés temporellement". Le registre 52 présente ces signaux à une logique de détection de front 54 qui reçoit également des signaux de validation de croissance et de décroissance. L'utilisateur choisit des canaux d'entrée et le type de transition (croissance ou décroissance) sur les canaux que l'analyseur logique utilise en tant qu'entrée d'horloge synchrone et le microprocesseur d'analyseur logique (non représenté) applique au circuit de détection et de sélection de front d'horloge 50 du canal approprié les signaux de validation de croissance et de décroissance correspondants. Une logique de détection de front 54 comporte 16 sorties, un signal XRISING et XFALLING correspondant à chacune des entrées de signaux de données haute vitesse parallèles alignés temporellement appliqués par le registre 52.
Chaque paire de signaux XRISING et XFALLING est surveillée par une porte OU telle qu'une porte OU 56 qui surveille les signaux 7RISING et 7FALLING. Chacune de ces portes OU reçoit également les signaux XRISING et XFALLING provenant des M-1 autres canaux et produit un signal de transition de canal de sortie de niveau haut chaque fois que leur type de transition, soit croissant ou décroissant, est observé sur l'un quelconque des M canaux qui est surveillé. Ces signaux de transition de canaux, soit 7XNTN à OXNTN, sont des entrées appliquées sur le bloc logique de sélection de front 58.
Le bloc logique de sélection de front 58 produit un signal de "données de validation" actif chaque fois que l'une quelconque de ses entrées est active. Il calcule également une sortie "numéro de position" basée sur ses entrées conformément à l'algorithme suivant: identification en tant que front d'horloge actif de la première transition qui est observée comme étant égale ou supérieure à 4 ns (8 échantillons) depuis la dernièretransition identifiée. Pour la mise en oeuvre présentement décrite, TPHO représente les premières données observées tandis que TPH7 représente celles observées en dernier. L'effet de cet algorithme consiste à produire seulement une valeur de numéro de position par intervalle d'horloge système et à disposer d'un numéro qui décrit un emplacement temporel qui se situe au moins une période d'horloge complète après l'instant décrit par le numéro de position précédent. Ainsi, le numéro de position joue le rôle des bits de poids faible d'une valeur de marquage temporel plus importante pour laquelle il assure une résolution temporelle significativement améliorée. A l'exception de l'addition de ces trois bits de poids faible supplémentaires, I'opération de marquage temporel utilisée avec la présente invention est la même que celle utilisée dans les analyseurs logiques de l'art antérieur.
Reportons-nous maintenant à la figure 3 qui est un schéma d'une version simplifiée 58' de la logique de sélection de front du bloc 58 de la figure 2. Par souci de simplification de l'illustration des principes mis en jeu, la logique de sélection de front 58' représentée sur la figure 3 a été simplifiée pour manipuler seulement quatre signaux d'entrée, soit OXNTN à 3XNTN, au lieu de la totalité des 8 rendus nécessaires par le contexte représenté sur la figure 2. Les bascules bistables 60, 62, 64 et 66 bloquent respectivement chaque état des sorties de portes ET 68, 72, 76 et 80 pendant une seule période d'horloge système de telle sorte qu'une information d'état précédent puisse être utilisée pour déterminer les sorties courantes des portes ET 68, 72, 76 et 80. Ceci est nécessaire pour que des fronts détectés pendant l'état précédent invalident des fronts de l'état courant qui sont observés en un emplacement qui représente un instant qui se situe dans une période d'horloge système du front précédent.
On suppose maintenant pour l'illustration qu'une bascule bistable 62 est établie et que les autres bascules bistables 60, 64 et 66 sont remises à l'état initial, ce qui indique que pendant l'intervalle temporel représenté par les données manipulées pendant la dernière période d'horloge, un front valide a été trouvé comme étant associé à une entrée de niveau haut sur 2XNTN. On suppose également par souci de simplification de l'illustration que 1XNTN et 3XNTN sont à un niveau haut, ce qui indique que pendant la période d'horloge courante, il y a eu des transitions logiques associées aux second et quatrième sous-intervalles temporels. OXNTN et 2XNTN sont supposés être à un niveau bas à cet instant et par conséquent, des portes ET 80 et 72 sont invalidées. Les signaux de niveau haut 1XNTN et 3XNTN valident les portes ET 76 et 68 de telle sorte que leurs sorties sont déterminées respectivement par leurs autres entrées provenant de portes NON-OU 78 et 70.
Moyennant les conditions mises en exergue, la porte NON-OU 78 est en train de recevoir une entrée de niveau haut depuis la sortie Q de la bascule bistable 62 et la sortie de niveau bas résultante de la porte NON- OU 78 invalide la porte ET 76. C'est le résultat souhaité conformément à l'algorithme mis en exergue ci-avant, c'est-à-dire une séparation minimum d'une période d'horloge complète entre les fronts actifs sélectionnés. Les entrées appliquées sur la porte NON-OU 70 sont toutes à un niveau bas puisque les portes ET 80 et 72 sont invalidées respectivement par les niveaux bas sur OXNTN et 2XNTN et que la porte ET 76 est invalidée par la sortie de niveau bas de la porte NON-OU 78. Par conséquent, la sortie de la porte NON-OU 70 est à un niveau haut et la sortie de la porte ET 68 est à un niveau haut. Ceci est également le but souhaité puisque notre algorithme nécessite la sélection de la première indication de front actif qui est observée au moins une période d'horloge système complète après une période précédente. Ainsi, lors du front d'horloge système suivant, la bascule bistable 60 s'établit et les autres bascules bistables 60, 64 et 66 sont toutes remises à l'état initial ou restent toutes remises à l'état initial. La sortie du codeur binaire 1 en 4 86 passe de "10" qui est son état lorsque la bascule bistable 62 est établie à "11" qui est le code pour le cas o la bascule 60 est en train de produire seulement l'entrée active (de niveau haut). Les sorties de données valides de la porte OU 84 sont à un niveau haut chaque fois que l'une quelconque des bascules bistables 60, 62, 64 ou 66 est établie de telle sorte que ce signal reste à un niveau haut pour l'ensemble des deux intervalles d'horloge système dans cet exemple.
Il est convient de mentionner la façon dont le résultat de l'illustration précédente est altéré si l'état initial de toutes les bascules bistables est à un niveau bas, ce qui indique qu'aucun front d'horloge utilisateur digne d'intérêt n'a été détecté pendant l'intervalle d'horloge système précédent.
Lorsqu'aucune des bascules bistables 60, 62, 64 ou 66 n'est établie, les données valides sont à un niveau bas et la sortie numéro de position du codeur binaire 1 en 4 est à "00". L'absence d'une entrée de niveau haut sur la porte NON-OU 78 fait que sa sortie passe à un niveau haut, ce qui valide la porte ET 76 et qui fait que sa sortie passe à un niveau haut en réponse au niveau haut sur l'entrée 1XNTN. La sortie de niveau haut de la porte ET 76 fait que la sortie de la porte NON-OU 70 prend un niveau bas, ce qui invalide la porte ET 68. Ainsi, lors du front d'horloge système suivant, la bascule 64 est la seule bascule établie et la sortie binaire 1 en 4 passe à "01" (au lieu du code "11" atteint à cet instant temporel lorsque nous avons démarré avec la bascule bistable 62 établie). Ainsi, lorsque la sortie associée à l'emplacement "01" n'est pas bloquée par l'activité pendant le cycle précédent, elle devient la sortie active et elle bloque la génération d'une sortie "11".
Bien que la figure 3 représente une version 58' d'une largeur de 4 bits de la logique de sélection de front 58 représentée sur la figure 2, une version d'une largeur de 8 bits suit les mêmes principes de mise en oeuvre.
Dans la version à 8 bits de ce circuit, chacune des portes NON-OU 70, 74, 78 et 82 comporte 4 entrées supplémentaires, comme c'est le cas pour la porte OU 84 du codeur binaire 1 en 4 86. Dans la version à 8 bits, il y a 4 signaux d'entrée de plus, soit 4XNTN à 7XNTN, et 4 jeux en plus de portes NON-OU, de portes ET et de bascules bistables qui leur sont associés.
Comme dans la version réellement décrite, la porte NON-OU 82 associée à l'entrée la plus récente (OXNTN) reçoit la totalité de ses entrées depuis les sorties des bascules bistables. Par ailleurs, la porte NON-OU associée à l'entrée la plus éloignée dans le temps (7XNTN) dérive toutes ses entrées à partir des sorties des portes ET associées à une information plus proche temporellement. Comme dans la version décrite, les portes NON-OU associées à des bits intermédiaires comportent des entrées mixtes, davantage d'entrées provenant des données courantes et moins d'entrées provenant des données précédentes, à mesure que l'emplacement de signal associé devient moins courant. Dans la version à 8 bits de ce circuit, le codeur binaire I en 4 comporte trois bits de sortie, soit le nombre nécessaire pour coder le contenu de 8 lignes d'entrée.
Par report à nouveau à la figure 1, le signal de données valides informe le détecteur de pointe de tension 200, la mémoire d'acquisition à 250 MHz 80 et le dispositif de vérification de violation d'élaboration et de blocage 100 lorsqu'il y a la survenue d'un front d'horloge utilisateur dans l'intervalle temporel d'un jeu particulier de données de 32 bits provenant du décaleur de sélection d'échantillon 60. Le signal de données valides peut nécessiter diverses valeurs de retard pour réaliser de façon appropriée cette fonction en différents endroits. Par exemple, la mémoire d'acquisition à 250 MHz reçoit son entrée après le retard du circuit de sélection de réglage d'élaboration et de blocage et ainsi, elle doit retarder le signal de données valides de la même valeur.
La sortie numéro de position du circuit de détection et de sélection de front d'horloge 50 est appliquée en tant qu'entrée de commande sur le décaleur de sélection d'échantillon 60. Le décaleur de sélection d'échantillon 60 fonctionne de la même manière que le décaleur de retard de réglage de dérive 20 à ceci près qu'il produit une sortie sur 32 bits. Cette sortie a été décalée de telle sorte que l'échantillon identifié par le numéro de position, soit le bit de référence, est toujours en un emplacement connu, lequel est typiquement centré. Ce bit de référence est le premier qui a été échantillonné après une transition d'une horloge utilisateur telle que reconstituée par le circuit de détection et de sélection de front d'horloge 50.
Les autres 31 bits sont les données qui sont observées avant et après la transition de l'horloge utilisateur. Ces autres bits conservent leur relation de séquence temporelle par rapport au bit de référence.
La sortie sur 32 bits du décaleur de sélection d'échantillon 60, avec son bit de référence centré, est l'entrée appliquée sur le détecteur de pointe de tension 200, sur le dispositif de vérification de violation d'élaboration et de blocage 100 et sur le circuit de sélection de réglage d'élaboration et de blocage 70. Le circuit de sélection de réglage d'élaboration et de blocage produit en tant que son unique bit de sortie un bit porteur d'une relation vis-à-vis du bit "parfait" qui est déterminé par le contenu du signal de réglage d'élaboration et de blocage. (Bien que seulement un unique bit soit produit ici, davantage de bits pourraient être aisément produits conformément au même principe de fonctionnement). Pour la mise en oeuvre représentée, moyennant 16 bits disponibles suivant chaque direction et 500 ps par échantillon, le bit sélectionné peut représenter la valeur du signal d'entrée telle qu'observée jusqu'à 8 ns, soit en avance soit en retard. Le bit (ou les bits) sélectionné(s) est ou sont ensuite stocké(s) dans la mémoire d'acquisition à 250 MHz 80 si le signal de données valides est actif. Selon un autre mode de réalisation, toutes les données sont stockées mais sont repérées conformément au contenu du signal de données valides.
Reportons-nous maintenant à la figure 4 qui représente un schéma partiel du dispositif de vérification de violation d'élaboration et de blocage représenté sur la figure 1. L'entrée sur 32 bits appliquée sur le dispositif de vérification de violation d'élaboration et de blocage 100 est constituée par les 16 bits observés avant que le signal d'horloge utilisateur n'effectue une transition et par les 16 bits observés après cette transition. Le bit de référence ou bit "parfait" est le premier bit observé après la transition.
Des portes OU-exclusif (OUX) 102 surveillent chaque paire adjacente de signaux d'entrée et produisent une sortie active lorsque ces deux signaux ne sont pas dans le même état. Ainsi, si l'état du signal d'entrée qui est modifié pendant l'intervalle de 16 ns dont des échantillons sont représentés par l'entrée à 32 bits, au moins l'une des portes OU-exclusif 102 produit une sortie active (niveau haut).
Des portes ET 104 sont partiellement validées par des signaux de masque de fenêtre qui présentent de façcon générale le motif: 00011111000..., soit un motif qui définit une fenêtre temporelle d'élaboration et de blocage. Il est à noter que cette fenêtre n'a pas nécessairement à inclure le bit de référence; c'est-à-dire que les instants d'élaboration et de blocage négatifs peuvent être définis par cette fenêtre.
Une porte OU 106 produit une sortie active chaque fois qu'une transition telle que détectée par les portes OU-exclusif 102 passe au travers de portes ET validées 104. Si le signal de données valides est actif et qu'il valide la porte ET 108, la sortie de la porte OU 106 est présentée au reste du circuit en tant que signal de violation d'élaboration-blocage actif par une porte ET 108.
Le signal de violation d'élaboration-blocage est une entrée appliquée sur une porte OU 84 dans l'analyseur logique classique représenté sur la partie droite de la figure 1. La porte OU reçoit également des signaux de violation d'élaboration-blocage similaires (non représentés) depuis d'autres canaux et les combine selon un signal de violation d'élaboration et de blocage sur un groupe de canaux digne d'intérêt pour l'opérateur.
Reportons-nous maintenant à la figure 5 sur laquelle un schéma du détecteur de pointe de tension 200 de la figure 1 est représenté. Les entrées appliquées sur ce circuit sont les 9 premiers bits se produisant après la transition d'horloge utilisateur, soit DT+1 à DT+9. DT+1 est le bit de référence ou "parfait". Des portes ET 201 à 216 présentant une entrée inversée forment deux groupes de détecteurs de front, chacun observant des transitions de polarités opposées sur les signaux d'entrée. Les sorties du groupe de portes ET observant les fronts descendants sont toutes connectées aux entrées d'une porte OU 218. Les sorties du groupe de portes ET observant des transitions décroissantes sont toutes connectées sur les entrées de la porte OU 220.
Lorsque le signal de données valides est actif, le multiplexeur 224 a son entrée "1" sélectionnée pour la sortie. L'entrée "1" du multiplexeur 224 est le bit "parfait" ou de référence DT+1. Ainsi, lors de la survenue de chaque horloge 17, la bascule 226 prend l'état du bit de référence. La sortie de la bascule 226 est couplée à l'entrée de sélection du multiplexeur 222 et à l'entrée "0" du multiplexeur 224. Puisque le multiplexeur 224 a son entrée "0" sélectionnée pour la sortie lorsque le signal de données valides est à un niveau bas, lorsque le signal de données valides est à un niveau bas, l'entrée de la bascule 226 est sa propre sortie et la bascule 226 maintient l'état de son entrée au dernier instant o le signal de données valides était à un niveau haut actif.
On suppose maintenant par souci de simplification de rillustration que lorsque le front de la dernière bascule dcrhorloge système 226 a été établi à un niveau haut par un bit de référence de niveau haut et par un signal de données valides actif, les entrées courantes sur DT+1 à DT+9 sont toutes à un niveau haut, ce qui indique que le signal d'entrée est resté en continu à un niveau haut pendant l'intervalle que ces données représentent, c'est-à-dire qu'aucune pointe de tension n'était présente pendant cet intervalle. Moyennant ces conditions, aucune des portes ET 210 à 216 ne produit une sortie active et par conséquent, ni la porte OU 218 ni la porte OU 220 ne produit une sortie active et peu importe quelle entrée appliquée sur le multiplexeur 222 est sélectionnée par la sortie de la bascule 226 puisque sa sortie est à un niveau bas (inactif) dans les deux cas. Une sortie de niveau bas provenant du multiplexeur 222 place un niveau bas sur le "1" du multiplexeur 228. Si nous supposons que le signal de données valides est toujours à un niveau haut, ce niveau bas est la sortie sélectionnée sur l'entrée "D" de la bascule 230 et cette bascule 230 produit une sortie de niveau bas lors de l'impulsion d'horloge système suivante sauf si elle est remise à l'état initial par le signal d'invalidation de tension de pic connecté à son entrée de remise à l'état initial.
On suppose maintenant que pendant l'intervalle d'horloge système qui suit, les entrées DT+9 à DT+1 restent toutes au niveau haut sauf DT+5 qui passe au niveau bas, ce qui indique qu'environ à mi-chemin de l'intervalle de 4 ns couvert par ces entrées, une tension de pic présentant une largeur inférieure à 1 ns a été observé. Le niveau bas de DT+5, en conjonction avec le niveau haut de DT+4 et DT+6, font que les sorties des portes ET 209 et 208 passent à un niveau haut. Une sortie de niveau haut provenant de la porte ET 209 provoque l'émission d'un front décroissant de niveau haut depuis la porte OU 218. Une sortie de niveau haut provenant de la porte ET 208 provoque une sortie de front croissant de niveau haut depuis la porte OU 220. Du fait que les deux entrées appliquées sur le multiplexeur 222 sont à un niveau haut, un signal de niveau haut est maintenant appliqué sur l'entrée "1" du multiplexeur 228, indépendamment de l'état de la bascule 226 et de la sélection effectuée par le multiplexeur 222. Par exemple, on suppose que le signal de données valides est resté à un niveau haut et que par conséquent, le multiplexeur 228 a son entrée "1" sélectionnée. Par conséquent, le signal sur l'entrée "D" de la bascule 230 est à un niveau haut et sa sortie, soit le signal de tension de pic, est à un niveau haut après le signal d'horloge système suivant si l'on suppose que l'invalidation de tension de pic reste dans son état bas normal.
Lorsque le signal de données valides passe à un niveau bas, ce qui indique l'absence d'une horloge utilisateur pendant l'intervalle de 4 ns courant, les entrées "0" des deux multiplexeurs 224 et 228 sont sélectionnées. Moyennant les entrées "0" appliquées sur ces multiplexeurs 224 et 228 sélectionnés, les sorties des bascules 226 et 230 sont connectées à leurs entrées de telle sorte qu'elles peuvent maintenir l'état qu'elles avaient pendant la durée pendant laquelle le signal de données valides est inactif (bas). Dans le cas de la bascule 230, la sortie de la bascule 230 est soumise à une logique OU avec la sortie du multiplexeur 222 avant qu'elle n'atteigne l'entrée "0" du multiplexeur 228. Ceci permet de faire passer un signal de tension de pic inactif (bas) dans son état actif au moyen d'un front décroissant ou croissant à un niveau haut mais un état actif de tension de pic est maintenu sur la bascule 230 qui a été établie sans considération des variations de l'état du front descendant ou du front croissant.
La sortie de la bascule 223 reflète l'état de DT+1 pendant l'intervalle de 4 ns précédent. Si la sortie de la bascule 226 est à un niveau haut, le multiplexeur 222 applique le signal de front croissant sur la porte OU 232 et l'entrée "1" du multiplexeur 228. Si la sortie de la bascule 226 est à un niveau bas, le multiplexeur 222 applique le signal de front décroissant sur la porte OU 232 et l'entrée "1" du multiplexeur 222. Ainsi, lorsque DT+1 a été précédemment à un niveau haut, un front croissant pendant l'intervalle de 4 ns courant produit une sortie de tension de pic tandis que lorsque DT+1 a été précédemment à un niveau bas, un front décroissant pendant l'intervalle de 4 ns courant produit la sortie de tension de pic.
Par report à nouveau à la figure 1, certaines alternatives de conception font l'objet d'une discussion complémentaire. Le décaleur de sélection d'échantillon 60 et le dispositif de sélection de réglage d'élaboration et de blocage 70 peuvent être mis en oeuvre selon l'ordre inverse à celui décrit ici ou peuvent être combinés en une seule opération.
Dans le dernier cas, le facteur de réglage d'élaboration et de blocage est ajouté au numéro de position et le décalage-sélection est déterminé par le nombre résultant. Cependant, cette approche nécessite un circuit et du temps pour réaliser l'addition et ne permet pas la réalisation d'une détection de tension de pic ni une vérification de violation d'élaboration et de blocage, comme effectué dans la mise en oeuvre représentée sur la figure 1. Le décaleur combiné doit être de dimension plus importante que l'un et l'autre des deux éléments séparés mais il sera de dimension plus petite que la somme de leurs deux dimensions.
La discussion menée ci-avant s'est focalisée sur une acquisition synchrone selon laquelle les signaux utilisateur sont détectés et sélectionnés pour devenir un front d'horloge virtuel et pour déterminer un numéro de position. Afin d'utiliser le même circuit pour un fonctionnement asynchrone, le circuit de détection et de sélection de front d'horloge 50 peut être rendu tel qu'il produise un numéro de position de "000" et un signal de données valides de niveau haut constamment lorsqu'un fonctionnement asynchrone est sélectionné. Un numéro de position constant de '"00" force alors le décaleur de sélection d'échantillon 60 à toujours conserver le bit TPH0 en tant que bit de référence pour sa sortie et le signal de données valides de niveau constamment haut force le reste du circuit aval à traiter un échantillon pour chaque horloge système. Ceci permet d'obtenir un résultat équivalent à un fonctionnement asynchrone dans un analyseur logique classique. Et en rendant le signal de données valides périodique, les données asynchrones peuvent être en outre éclatées pour réaliser des acquisitions asynchrones à débit réduit.
Selon la description présentée ci-avant, certains détails de cadencement et de réalisation de pipeline logique qui peuvent être nécessaires pour éviter des conditions de conflit ont été omis par souci de simplicité mais ces techniques sont bien connues de l'homme de l'art expérimenté dans la conception de circuits numériques.
Bien qu'un mode de réalisation préféré de la présente invention ait été présenté et décrit, il apparaîtra à l'homme de l'art que de nombreuses variantes et modifications peuvent être apportées sans que l'on s'écarte de l'invention dans ses aspects les plus larges.

Claims (16)

REVENDICATIONS
1. Analyseur logique comportant un moyen d'acquisition de données numériques, une mémoire d'acquisition et un moyen pour afficher des représentations de données numériques binaires de données acquises, caractérisé en ce que le moyen d'acquisition de données numériques comprend: un moyen d'échantillonnage haute vitesse (10) pour acquérir de façon asynchrone une pluralité d'échantillons de données haute vitesse parallèles lors de chaque cycle d'une horloge interne (95), la pluralité d'échantillons de données haute vitesse parallèles contenant une information concernant le comportement séquentiel d'un signal d'entrée pendant une période de l'horloge interne; et un moyen (20 à 70) pour sélectionner l'un de la pluralité d'échantillons de données haute vitesse parallèles en tant qu'échantillon de données sélectionné en vue d'un stockage dans la mémoire d'acquisition.
2. Analyseur logique selon la revendication 1, caractérisé en ce que le moyen de sélection comprend un moyen de retard de réglage de dérive (20) pour recevoir la pluralité d'échantillons de données haute vitesse parallèles et pour produire des échantillons de données haute vitesse parallèles alignés temporellement.
3. Analyseur logique selon la revendication 2, caractérisé en ce que le moyen de sélection comprend en outre une mémoire haute vitesse (30) pour stocker des échantillons de données haute vitesse parallèles alignés temporellement.
4. Analyseur logique selon la revendication 1, caractérisé en ce que le moyen de sélection comprend: un moyen pour une détection de front d'horloge (50) pour surveiller les échantillons de données haute vitesse parallèles alignés temporellement et pour produire un signal de numéro de position pour identifier l'un de la pluralité d'échantillons haute vitesse parallèles en tant qu'unique échantillon de données interne; et un moyen pour une sélection d'échantillon de référence (60) pour recevoir la pluralité d'échantillons haute vitesse parallèles et le signal de numéro de position et pour produire un jeu d'échantillons parallèles avec un échantillon de référence en une position prédéterminée.
5. Analyseur logique selon la revendication 4, caractérisé en ce que le signal de numéro de position est combiné à une valeur de marquage temporel grossière pour produire une valeur de marquage temporel fine.
6. Analyseur logique selon la revendication 4, caractérisé en ce que le moyen de sélection comprend un moyen de sélection de réglage d'élaboration et de blocage (70) pour recevoir le jeu d'échantillons parallèles avec l'échantillon de référence en la position prédéterminée et pour produire l'échantillon de données sélectionné conformément aux données de réglage d'élaboration et de blocage.
7. Analyseur logique selon la revendication 1, caractérisé en ce que le moyen de sélection comprend un moyen de sélection de réglage d'élaboration et de blocage (70) pour recevoir des échantillons parallèles dérivés à partir de la pluralité d'échantillons de données haute vitesse parallèles et pour produire l'échantillon de données sélectionné conformément à des données de réglage d'élaboration et de blocage.
8. Analyseur logique selon la revendication 2, caractérisé en ce que le moyen de sélection comprend un moyen de sélection de réglage d'élaboration et de blocage (70) pour recevoir les échantillons de données haute vitesse parallèles alignés temporellement et pour produire l'échantillon de données sélectionné conformément à des données de réglage d'élaboration et de blocage.
9. Analyseur logique selon la revendication 4, caractérisé en outre en ce qu'il comprend un moyen de vérification de violation d'élaboration et de blocage (100) pour recevoir une information de masque de fenêtre d'élaboration et de blocage et le jeu d'échantillons parallèles avec l'échantillon de référence à la position prédéterminée et pour produire un signal de violation d'élaboration et de blocage lorsque le jeu d'échantillons parallèles indique la survenue d'une transition au niveau du signal d'entrée pendant l'intervalle représenté par le masque de fenêtre d'élaboration et de blocage.
10. Analyseur logique selon la revendication 4, caractérisé en ce qu'il comprend en outre un moyen pour une détection de tension de pic (200) pour recevoir le jeu d'échantillons parallèles avec l'échantillon de référence en la position prédéterminée et pour produire un signal de tension de pic conformément au contenu du jeu d'échantillons parallèles.
11. Analyseur logique selon la revendication 10, caractérisé en ce que le moyen de détection de tension de pic comprend: un moyen pour détecter (201 à 216) des transitions d'états croissantes ou décroissantes dans le jeu d'échantillons de données et pour produire un signal de transition croissante lorsqu'une transition croissante est détectée et un signal de transition décroissante lorsqu'une transition décroissante est détectée; et un moyen pour évaluer (224 à 230) quelles transitions d'états croissantes ou décroissantes détectées correspondent à des tensions de pic et pour produire une sortie de signal de tension de pic lorsque ces transitions sont observées.
12. Analyseur logique selon la revendication 11, caractérisé en ce que le moyen d'évaluation comprend: une première bascule bistable (230) qui contient un bit de tension de pic et qui produit la sortie de signal de tension de pic conformément à une entrée de signal de transition lors de la survenue d'un signal d'horloge système; une seconde bascule bistable (226) sensible à une entrée de signal de données valides; un premier multiplexeur (222) comportant une première entrée couplée pour recevoir le signal de transition croissante et une seconde entrée couplée pour recevoir le signal de transition décroissante et pour produire une sortie de signal de transition correspondant à soit le signal de transition croissante soit le signal de transition décroissante en fonction de l'état de la seconde bascule
bistable.
13. Analyseur logique selon la revendication 12, caractérisé en ce que le moyen de détection de pic comprend en outre: un second multiplexeur (228) comportant une première entrée pour recevoir un signal soumis à une logique OU et une seconde entrée pour recevoir un signal de transition et pour produire en tant que sortie soit le signal de transition soit le signal soumis à une logique OU en fonction de l'état d'un signal de données valides, l'entrée de signal soumise à une logique OU étant la sortie de la première bascule bistable soumise à une logique OU avec l'entrée de signal de transition.
14. Analyseur logique selon la revendication 12, caractérisé en ce que le moyen de détection de pic comprend en outre: un second multiplexeur (224) comportant en tant que première entrée la sortie de la seconde bascule bistable et en tant qu'autre entrée un échantillon de données le plus récent pris parmi la série d'échantillons de données et produisant en tant que sortie sur l'entrée de la seconde bascule bistable un signal correspondant soit à la sortie de la seconde bascule bistable soit à l'échantillon de données le plus récent en fonction de l'état du signal de données valides.
15. Analyseur logique selon revendication 9, caractérisé en ce que le moyen de vérification de violation d'élaboration et de blocage comprend: un moyen pour présenter (60) en parallèle une série d'échantillons de données représentatifs d'états logiques d'un signal d'entrée sur un intervalle temporel; un moyen pour détecter (102) une non égalité d'échantillons de données adjacents dans la série d'échantillons de données et pour produire un bit de modification associé à l'emplacement de cette non égalité lorsque cette non égalité est détectée; et un moyen pour valider sélectivement (104) des bits de modification conformément au contenu d'un jeu de signaux de masque de fenêtre d'élaboration et de blocage; et un moyen pour soumettre à une logique OU (106) des bits de modification validés afin de produire un signal de violation d'élaboration et de blocage.
16. Analyseur logique selon la revendication 15, caractérisé en ce que le moyen de vérification de violation d'élaboration et de blocage comprend en outre un second moyen de logique OU (108) pour combiner une pluralité de signaux de violation d'élaboration et de blocage afin de produire un signal de violation d'élaboration et de blocage multi-canaux.
FR9501767A 1994-02-16 1995-02-16 Analyseur logique à sur-échantillonnage. Expired - Lifetime FR2716277B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/197,421 US5526286A (en) 1994-02-16 1994-02-16 Oversampled logic analyzer

Publications (2)

Publication Number Publication Date
FR2716277A1 true FR2716277A1 (fr) 1995-08-18
FR2716277B1 FR2716277B1 (fr) 1997-05-16

Family

ID=22729360

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9501767A Expired - Lifetime FR2716277B1 (fr) 1994-02-16 1995-02-16 Analyseur logique à sur-échantillonnage.

Country Status (4)

Country Link
US (1) US5526286A (fr)
JP (1) JP2819007B2 (fr)
FR (1) FR2716277B1 (fr)
GB (1) GB2286687B (fr)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687865B1 (en) 1998-03-25 2004-02-03 On-Chip Technologies, Inc. On-chip service processor for test and debug of integrated circuits
US5965819A (en) * 1998-07-06 1999-10-12 Csi Technology Parallel processing in a vibration analyzer
US6463392B1 (en) * 1999-08-16 2002-10-08 Agilent Technologies, Inc. System and method for adjusting a sampling time in a logic analyzer
DE10048895A1 (de) * 1999-10-01 2001-06-13 Schlumberger Technologies Inc Testverfahren und -vorrichtung für quellensynchrone Signale
TW463080B (en) * 2000-03-24 2001-11-11 Winbond Electronics Corp Clock generating device which can adjust clock skew and method
GB2362473B (en) * 2000-05-18 2002-08-21 3Com Corp On-chip detector of clock glitches
DE10039001A1 (de) * 2000-08-10 2002-02-21 Philips Corp Intellectual Pty Anordnung zum Testen eines integrierten Schaltkreises
FR2818423B1 (fr) * 2000-12-20 2003-04-04 Chauvin Arnoux Procede d'acquisition par echantillonage de signaux analogiques et systeme d'acquisition pour la mise en oeuvre de ce procede
US6904551B1 (en) * 2001-02-20 2005-06-07 Cypress Semiconductor Corporation Method and circuit for setup and hold detect pass-fail test mode
US6775798B2 (en) 2001-11-28 2004-08-10 Lsi Logic Corporation Fast sampling test bench
US7198197B2 (en) * 2002-11-05 2007-04-03 Rambus, Inc. Method and apparatus for data acquisition
US7315593B2 (en) * 2003-05-09 2008-01-01 Tektronix, Inc. Hyperfine oversampler method and apparatus
US6912474B2 (en) * 2003-06-19 2005-06-28 Tektronix, Inc. Method and apparatus for high-speed synchronous digital acquisition derived in real -time from analog samples
US7477078B2 (en) * 2004-02-02 2009-01-13 Synthesys Research, Inc Variable phase bit sampling with minimized synchronization loss
JP5254794B2 (ja) * 2005-09-23 2013-08-07 テラダイン・インコーポレーテッド デジタル信号のタイミングを試験するためのストローブ技法
US7529641B2 (en) * 2006-04-21 2009-05-05 Tektronix, Inc. Mixed signal display for a measurement instrument
KR20100034030A (ko) 2007-06-27 2010-03-31 가부시키가이샤 어드밴티스트 검출 장치 및 시험 장치
US7526395B2 (en) * 2007-09-05 2009-04-28 Tektronix, Inc. Logic analyzer using a digital filter
US8667473B2 (en) * 2007-10-31 2014-03-04 Microsoft Corporation Analyzing video game performance using non-intrusive capture and storage of run-time game data
US8552764B2 (en) 2009-01-05 2013-10-08 Freescale Semiconductor, Inc. Clock glitch detection circuit
US8519768B2 (en) 2009-03-31 2013-08-27 Freescale Semiconductor, Inc. Clock glitch detection
TW201213826A (en) * 2010-09-16 2012-04-01 Peregrine Technology Co Ltd Data preview device of logic analyzer and method thereof
US8850259B2 (en) 2011-01-07 2014-09-30 Anue Systems, Inc. Systems and methods for precise generation of phase variation in digital signals
US8683254B2 (en) 2011-01-07 2014-03-25 Anue Systems, Inc. Systems and methods for precise event timing measurements
US8788867B2 (en) 2011-01-07 2014-07-22 Anue Systems, Inc. Systems and methods for playback of detected timing events
US8533518B2 (en) 2011-01-07 2013-09-10 Anue Systems, Inc. Systems and methods for precise timing measurements using high-speed deserializers
CN105116318B (zh) * 2015-09-02 2018-02-02 电子科技大学 一种逻辑分析仪中实现毛刺检测的方法
WO2023224024A1 (fr) * 2022-05-17 2023-11-23 三菱電機株式会社 Circuit analyseur logique, circuit intégré et système de circuit intégré

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420398A2 (fr) * 1989-09-29 1991-04-03 Tektronix Inc. Procédé d'acquisition de données dans un analyseur logique
EP0455294A2 (fr) * 1990-05-01 1991-11-06 Fluke Corporation Système d'échantillonnage à auto-alignement et analyseur logique muni d'une pluralité de tels systémes d'échantillonnage

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4107651A (en) * 1976-11-08 1978-08-15 Hewlett-Packard Company Glitch detector
US4271488A (en) * 1979-04-13 1981-06-02 Tektronix, Inc. High-speed acquisition system employing an analog memory matrix
US4353032A (en) * 1980-06-02 1982-10-05 Tektronix, Inc. Glitch detector
JPS6030898B2 (ja) * 1981-05-15 1985-07-19 テクトロニクス・インコ−ポレイテツド ロジツク・アナライザの入力装置
US4425643A (en) * 1981-06-08 1984-01-10 Tektronix, Inc. Multi-speed logic analyzer
JPS58106464A (ja) * 1981-12-21 1983-06-24 Advantest Corp グリツチ検出測定器
US4558422A (en) * 1983-03-23 1985-12-10 Tektronix, Inc. Digital signal sampling system with two unrelated sampling timebases
US4578666A (en) * 1983-03-23 1986-03-25 Tektronix, Inc. Method of comparing data with asynchronous timebases
JPS59186415A (ja) * 1983-04-08 1984-10-23 テクトロニクス・インコ−ポレイテツド スキユ−検出器
US4777616A (en) * 1986-05-12 1988-10-11 Outlook Technology, Inc. Increased resolution logic analyzer using asynchronous sampling
US4731768A (en) * 1986-09-15 1988-03-15 Tektronix Autoranging time stamp circuit
US4903240A (en) * 1988-02-16 1990-02-20 Tektronix, Inc. Readout circuit and method for multiphase memory array
US4949361A (en) * 1989-06-26 1990-08-14 Tektronix, Inc. Digital data transfer synchronization circuit and method
US4968902A (en) * 1989-08-02 1990-11-06 Tektronix, Inc. Unstable data recognition circuit for dual threshold synchronous data
US5043927A (en) * 1989-09-18 1991-08-27 Tektronix, Inc. Digital signal quality analysis using simultaneous dual-threshold data acquisition
US4979177A (en) * 1989-10-26 1990-12-18 Tektronix, Inc. Enhanced counter/timer resolution in a logic analyzer
US5144525A (en) * 1990-09-27 1992-09-01 Tektronix, Inc. Analog acquisition system including a high speed timing generator

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420398A2 (fr) * 1989-09-29 1991-04-03 Tektronix Inc. Procédé d'acquisition de données dans un analyseur logique
EP0455294A2 (fr) * 1990-05-01 1991-11-06 Fluke Corporation Système d'échantillonnage à auto-alignement et analyseur logique muni d'une pluralité de tels systémes d'échantillonnage

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"TEK TEAM BLENDS OLD AND NEW TO CREATE LOGIC SCOPE", COMPUTER DESIGN, vol. 32, no. 9, 1 September 1993 (1993-09-01), pages 94, 97/98, 100, XP000395888 *
GROSSLIGHT J: "OVERSAMPLING PUSHES LOGIC-ANALYZER RESOLUTION TO NEW HIGHS", ELECTRONIC DESIGN, vol. 41, no. 13, 24 June 1993 (1993-06-24), pages 99 - 100, 102, 104, 106, 108, XP000378459 *

Also Published As

Publication number Publication date
US5526286A (en) 1996-06-11
GB2286687B (en) 1997-11-05
GB9502868D0 (en) 1995-04-05
GB2286687A (en) 1995-08-23
JPH07244078A (ja) 1995-09-19
FR2716277B1 (fr) 1997-05-16
JP2819007B2 (ja) 1998-10-30

Similar Documents

Publication Publication Date Title
FR2716277A1 (fr) Analyseur logique à sur-échantillonnage.
EP1080432B1 (fr) Systeme d'acquisition de donnees comprenant des moyens d'analyse et de stockage en temps reel
US7574632B2 (en) Strobe technique for time stamping a digital signal
EP0645888B1 (fr) Ligne à retard numérique
US7573957B2 (en) Strobe technique for recovering a clock in a digital signal
KR101239743B1 (ko) 디지털 신호를 타임 스탬핑하기 위한 스트로브 기술
US7856578B2 (en) Strobe technique for test of digital signal timing
FR2462760A1 (fr) Systeme de memoire pour une forme d'onde electromagnetique
EP3375092B1 (fr) Procédé de synchronisation de convertisseurs de données par un signal transmis de proche en proche
JPH06201787A (ja) ロジックアナライザのメモリ割当方法
EP0020999B1 (fr) Procédé de mesure du temps d'accès d'adresse de mémoires, mettant en oeuvre la technique de recirculation des données, et testeur en résultant
JP4319146B2 (ja) 半導体試験装置
TW200811445A (en) High-speed signal testing system having oscilloscope functionality
JP2003315428A (ja) 半導体試験装置
FR2960977A1 (fr) Generateur de sequence a sollicitation variable pour circuit d'autotest integre
US20110154171A1 (en) Blanking Primitives Masking Circuit
US7143323B2 (en) High speed capture and averaging of serial data by asynchronous periodic sampling
US6912474B2 (en) Method and apparatus for high-speed synchronous digital acquisition derived in real -time from analog samples
US6768703B2 (en) Eye diagram analyzer with fixed data channel delays and swept clock channel delay
FR2610154A1 (fr) Generateur de signaux de cadencement, notamment pour les systemes informatises de test de circuits integres
US7327302B2 (en) Equivalent time asynchronous sampling arrangement
CA2445372A1 (fr) Echantillonneur analogique rapide a grande profondeur memoire
FR2729500A1 (fr) Systeme d'acquisition de donnees a grande vitesse
FR2610742A1 (fr) Generateur de signaux de temps
EP0336336B1 (fr) Circuit de mesure de taux d'erreurs pour équipement de transmission numérique synchrone