Que signifient bord et niveau déclenchés?

35

J'étudie l'architecture du microprocesseur 8085 et le mot edge déclenché et le niveau déclenché me déroutent vraiment beaucoup. Quelqu'un peut-il m'expliquer cela avec des mots profanes?

En étudiant les interruptions de 8085 nommées RST 7.5, RST 6.5, RST 5.5 et TRAP, je suis tombé sur ces mots et ils m'ont confondu. Ici, j'ai joint un lien de document à partir duquel je lisais et j'ai mentionné mes diagrammes de confusion.

dans le document RST 7.5 -> Edge déclenché RST 5.5 -> Niveau déclenché. TRAP -> Edge déclenché et Niveau déclenché. (pourquoi? cela fait-il une différence?).

le lien du document

Trapaank
la source
Ce n'est pas un pdf.
starblue
oui, c'est un lien vers le document pdf. J'ai apporté les modifications correctes.
Trapaank

Réponses:

34

Je ne vous ai pas vraiment lu le document, mais je peux comprendre pourquoi vous êtes confus. Mais c'est vraiment un concept très simple. Laissez-moi expliquer.

Déclenchement: Cela signifie rendre un circuit actif. Rendre un circuit actif signifie permettre au circuit de prendre une entrée et de donner une sortie. Comme par exemple supposé que nous avons une volte-face. Lorsque le circuit n'est pas déclenché, même si vous fournissez des données d'entrée, cela ne modifiera pas les données stockées dans la bascule, ni la sortie Q ou Q '. Maintenant, il existe essentiellement deux types de déclenchement. Le déclenchement est donné sous forme d'impulsion d'horloge ou de signal de déclenchement. En fonction du type de mécanisme de déclenchement utilisé, le circuit deviendra actif à des états spécifiques de l'impulsion d'horloge.

  1. Déclenchement de niveau: lors du déclenchement de niveau, le circuit devient actif lorsque le déclenchement ou l'impulsion d'horloge est à un niveau particulier. Ce niveau est décidé par le concepteur. On peut avoir un déclenchement de niveau négatif dans lequel le circuit est actif lorsque le signal d'horloge est bas ou un déclenchement de niveau positif dans lequel le circuit est actif lorsque le signal d'horloge est haut.

  2. Déclenchement de front : lors du déclenchement de front, le circuit devient actif sur le front négatif ou positif du signal d'horloge. Par exemple, si le circuit est déclenché par un front positif, il prendra en entrée exactement au moment où le signal d'horloge passe de bas à haut. De même, l'entrée est prise exactement au moment où le signal d'horloge passe de haut en bas en déclenchement sur front négatif. Mais gardez à l'esprit qu'après l'entrée, il peut être traité à tout moment jusqu'à la prochaine entrée.

C’est la description générale des mécanismes de déclenchement et ceux-ci s’appliquent également aux interruptions 8085.

Rick_2047
la source
bien .. en ce qui concerne le déclenchement de bord, vous devez généralement avoir les données stables pendant un court instant au moins un certain temps avant le bord (consulter les fiches techniques) et le maintenir stable pendant un certain temps (consulter les fiches techniques) mais ces temps sont généralement assez courts.
JustJeff
Je comprends ce que vous vouliez expliquer, mais une autre question que j’ai mentionnée est celle de 8085 TRAP est à la fois déclenchée par le bord et déclenchée par le niveau (voir le document). Alors, quelle est la fonctionnalité dans un tel cas lorsque le circuit est à la fois sensible au niveau et déclenché sur le bord.
Trapaank
Dans ce cas, il souhaite que l’avantage dépasse également un certain niveau. Nous avons donc besoin de quelque chose comme un front montant et un niveau> 3V
Steven Goldade
7

Sur un 8085, TRAP est une interruption non masquable normalement utilisée pour gérer des erreurs telles qu'une panne de courant.

S'il était déclenché au niveau, son code ne pourrait jamais s'exécuter car il s'agit d'une interruption non masquable. Le gestionnaire commencerait à s'exécuter quand il est devenu actif, mais il le serait toujours. Le gestionnaire commencerait donc à s'exécuter, mais il resterait toujours actif, donc le gestionnaire commencerait à s'exécuter, etc., etc. Il doit donc être déclenché par un front. .

Cependant, le déclenchement de bord est un problème lorsque la ligne peut avoir des problèmes. Des problèmes peuvent amener le gestionnaire à être appelé plusieurs fois, tout comme la ligne. C'est un très gros problème avec TRAP car il est non masquable et donne lieu à un RST.

En guise de compromis, le TRAP fonctionne comme s'il était déclenché par un niveau, sauf qu'il n'est reconnu que lorsqu'il est faible depuis la dernière fois. Cela garantit que le gestionnaire TRAP n'est appelé qu'une fois.

C'est ce qu'ils entendent par "bord déclenché et niveau déclenché".

D Krueger
la source
2

* Déclencher * signifie rendre un circuit actif. En déclenchement de niveau, le circuit devient actif lorsque le déclenchement ou l'impulsion d'horloge est à un niveau particulier. En déclenchement sur front, le circuit devient actif sur les fronts négatif ou positif du signal d'horloge.

Engr Hira Nasir
la source
3
C'est à peu près ce qui a été dit ci-dessus.
Brian Carlton
-1

Golaž et vsz le disent bien:

C'est exactement ce qui est dit.

Si l'interruption de front est définie, l'ISR ne sera déclenché que sur le front descendant / montant d'une impulsion. Tandis que si l’interruption sensible au niveau (comme vous le dites) est définie, l’ISR est déclenché à chaque fois qu’un signal de niveau bas / haut est présent sur la broche correspondante.

En bref, les interruptions de bord ne sont déclenchées que sur des bords changeants, tandis que les interruptions de niveau sont déclenchées tant que le pouls est faible ou élevé.

Ainsi, si vous avez défini une interruption de niveau bas, la MCU continuera d’exécuter le rapport de recherche internationale tant que la broche est faible.

C'est-à-dire qu'il va quitter et rentrer dans l'ISR encore et encore, tant que la broche est basse.

Mon impression est que personne n'a vraiment répondu à ce que signifie être déclenché à la fois par niveau et par bord. Et moi non plus.

La réponse de D Krueger explique correctement ce que signifie être déclenché à la fois par le niveau et par le bord. (Du moins, sa réponse me semble correcte, même si je ne connais pas bien le 8085.) La réponse de Golaz et de vsz suppose que l'interruption est masquée. Je ne sais toujours pas comment "sauf qu'il n'est reconnu que lorsqu'il est bas depuis la dernière fois qu'il a été reconnu". diffère d'être déclenché par un bord, cependant.

Josiah Yoder
la source
Merci pour votre réponse, mais je pense qu'OP est passé à autre chose et a probablement une femme et des enfants depuis que la question a été posée et répondue il y a 5 ans. Pourquoi n'essayez-vous pas de répondre à de nouvelles questions à la place?
MaximGi
3
@ MaximGi: Je ne suis pas d'accord. Il n’ya rien de mal à répondre à de vieilles questions, les forums ne sont pas seulement destinés aux affiches, mais aussi à d’autres qui se retrouvent ici à chercher eux-mêmes des réponses à la même question. Les nouvelles réponses doivent simplement ajouter plus d’informations à celles qui existent déjà.
Monsieur Mystère
1
@ MisterMystère Je n'ai jamais dit qu'il y avait quelque chose qui n'allait pas en répondant à de vieilles questions. Mais cette réponse tardive n’ajoute aucun contenu utile, la question a déjà été répondue correctement. En outre, la dernière déclaration est fausse et contraire aux règles.
MaximGi
@MaximGi En regardant de plus près, je vois que vous avez raison: ma dernière déclaration était fausse. Je l'ai corrigé. Ma citation de Golaz et de vsz sera peut-être utile pour les nouveaux utilisateurs qui ne sont pas familiers avec ce que signifie «sensible à la limite ou au niveau».
Josiah Yoder