3) Logique séquentielle Table des matières 1 Définitions 1.1 Logique séquentielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Chronogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Niveau logique vs front . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 2 2 2 Les bascules RS (ou SR) 2 3 Temporisateur 3 4 Monostables 4.1 Monostable non redéclenchable . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Monostable redéclenchable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 4 5 Chronogrammes et équations 4 6 Opérations numériques 6.1 Définition . . . . . . 6.2 Masquage . . . . . . 6.3 Décalage . . . . . . . 6.4 Rotation . . . . . . . sur des . . . . . . . . . . . . . . . . . . . . mots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Compteur 8 CodeSys et la logique 8.1 Généralités . . . . 8.2 Fronts . . . . . . . 8.3 Bascules RS et SR 8.4 Temporisations . . 8.5 Compteurs . . . . . 4 4 5 5 5 6 séquentielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6 6 6 7 7 3) Logique séquentielle 1 1.1 Définitions Logique séquentielle La logique séquentielle, contrairement à la logique combinatoire fait intervenir le temps. La valeur d’une variable logique à l’instant t+dt dépend de celles qu’avaient les variables logiques à l’instant t. Exemple : s(t+dt) = a(t) + b(t).s(t) que l’on notera : s = a + b.s Remarque : On voit alors que s peut dépendre de s. 1.2 Chronogramme Le chronogramme est une représentation graphique de l’évolution temporelle d’un signal électrique ou logique. On trouve sur l’axe des abscisses le temps, sur l’axe des ordonnées l’état (0 ou 1) des variables étudiées. 1 s 0 1.3 0 1 2 3 4 temps 5 6 7 8 9 10 Niveau logique vs front Une variable logique s peut avoir deux niveaux ; le niveau logique haut (vrai) et le niveau logique bas (faux). Quand elle passe du niveau bas vers le niveau haut, elle définit le front montant. Dans le cas contraire, elle définie le front descendant. 1 Front s 0 Front Descendant Montant 0 1 2 3 4 temps 5 6 7 8 9 10 Remarque : Le front montant de a correspond au front descendant de ā et vis-versa. ↑ a =↓ ā et ↓ a =↑ ā 2 Les bascules RS (ou SR) Une bascule est un circuit logique doté d’une sortie et d’une ou plusieurs entrées. Les changements d’état de la sortie sont déterminés par les signaux appliqués aux entrées. Ce qui différencie les bascules des circuits logiques combinatoires, c’est que la sortie maintient son état même après disparition du signal de commande, la bascule a une ’mémoire’. La bascule est l’élément de base de la logique séquentielle. En effet, en assemblant des bascules, on peut réaliser des compteurs, des registres, des registres à décalage, des mémoires. La bascule RS à deux entrées, une pour mettre sa sortie Q à 1 ; S (set) et une pour mettre sa sortie Q à 0 ; R (reset). S Q R Représentation cira83.com SR/Q 00 01 11 10 0 0 0 * 1 1 1 0 * 1 * : Selon priorité Set prioritaire : Q = S + Q.R̄ ou ↑ Q = S et ↓ Q = R.S̄ Reset prioritaire : Q = (S + Q)R̄ ou ↑ Q = S.R̄ et ↓ Q = R 2/7 0 Q⇤ ⇥ t t ⇥ 1 BTS CIRA0 3) Logique séquentielle ⇥ temps ⇥ Chap. III : Logique séquentielle temps 2 Les bascules RS (ou SR) Temporisateur 4Une 3bascule Temporisateurs ou un basculeur est un circuit logique doté d’une sortie et d’une ou plusieurs entrées. Les changements d’état de la sortie sontmontant déterminés les signaux aux Ce qui différencie les Le temporisateur retarde le front d’unpar signal T d’unappliqués et leentrées. du même Le temporisateur retarde le front montant d’un signal Ttemps d’un atemps afront et ledescendant front descendant bascules destemps circuits combinatoires, c’est que la sortie maintient son état même après disparition du signal b. logiques dud’un même signal d’un temps b. Le chronogramme sera alors le suivant : signal de commande, la bascule a une ’mémoire’. La bascule est l’élément de base de la logique séquentielle. Schématisation : En effet, en assemblant des bascules, on peut réaliser des compteurs, des registres, des registres à décalage, a b des mémoires. Q = a/T /b a b Q T Q ⇥ La bascule RS à deux entrée, une pour mettre sa sortie Q à un ; S (set), et une pour mettre sa sortie Q à ⇥T 0 ; R (reset). Q̄ a/T /b = b/T̄ /a Schématisation : Représentation Le chronogramme sera alors le suivant S: T ⇤ R 1 0 Table de vérité : Q ⇤ a R S b⇥ 0 0 0 1 1 0 1 1 ⇥ 1 0 Q ⇥ temps Qn+1 Qn 1 0 Interdit ⇥ temps Monostables Monostables 53 4Opérations numériques sur des mots Comme son nom l’indique ce composant ne connaît qu’un seul état stable. C’est l’état pour Q estlequel à 0 etsa sa sortie sortie Q̄ 1. àUn0.front positifpositif ou négatif sur son entrée T peut provoquer l’état instable qui Q àest Un front sur son entrée T provoque l’état instable qui dure dure un temps déterminé t. Il existe des monostables redéclenchables et des non redéclenchables. Un mot, en informatique, est l’unité de base manipulée par un microprocesseur. La taille d’un mot s’exprime un temps déterminé t. Il existe des monostables redéclenchables et des non redéclenchables. Schématisation : et est souvent utilisée pour classer les microprocesseurs (8 bits, 16 bits. . .). Toutes en bits ou en octets, choses égales par ailleurs, un microprocesseur est d’autant plus rapide que ses mots sont longs, car les 4.1 Monostable non1 redéclenchable données qu’il traite à chaque opération sontQplus longues. (d’après Wikipédia) Q ⇥ ⇥ ⇥T ⇥T Le front de T déclenche le monostable et la sortie Q passe à 1 pendant une durée t même 1 0Q̄ 0 1 0 0 1 1 Q̄ si l’impulsion est plus longue. Les fronts de T n’ont aucune influence quand Q et à 1. Le Mot de 8 bits monostable doit revenir dansnon sonredéclenchable état stable pour être redéclenché. Monostable Monostable redéclenchable Comme son nom l’indique ce composant ne connaı̂t qu’un seul état stable. C’est l’état pour lequel sa sortie 5.1 Définition 1 3.1 Q = (Q + T ).t/Q Q Monostable nonTredéclenchable ou une :↑Q = T tet ↓Q= t/Q Le front de T déclenche le monostable et la sortie Q passe à 1 pendant durée même si l’impulsion est plus longue. Les fronts Représentation de T n’ont aucune influence quand Q et à 1. Le monostable doit revenir dans son état stable pour être redéclenché. 4 T ⇤ 1 0 Q ⇤ ⇥ t temps ⇥ 1 0 ⇥ temps 3/7 cira83.com 3 3) Logique séquentielle 4.2 4.2 Monostable redéclenchable Monostable redéclenchable Le front de T déclenche le monostable quelque soit la valeur de la sortie Q qui passe ou reste à 1 pendant une durée t même si l’impulsion est plus longue. BTS CIRA Chap. III : Logique séquentielle T 3.2 Q Q =↑ T /t Monostable redéclenchable Représentation Le front de T déclenche le monostable quelque soit la valeur de la sortie Q qui passe ou reste à 1 pendant une durée t même si l’impulsion est plus longue. T⇤ 1 0 Q⇤ ⇥ t t ⇥ temps ⇥ 1 0 ⇥ temps Chronogrammes et équations 4 5Temporisateurs Le temporisateur retarde le front montant d’un signal T d’un temps a et le front descendant du même Monostable Front retardé Retard repos Retard travail signal d’un temps b. Q =↑ I/t Q =↓ (↑ I/t) Q = I/t Q = t/I Schématisation : I I I ⇥ ⇥T Q Q t a b Q Q t I Q̄ t Q t Le chronogramme sera alors le suivant : T ⇤ Temporisation 1 0 6 Temporisation Monostable redéclenchable Monostable + Front descendant ⇥ temps Opérations numériques sur des mots a b Q ⇤ ⇥ ⇥ 6.1 1 Définition 5 5.1 ⇥ 0 temps Un mot, en informatique, est l’unité de base manipulée par un microprocesseur. La taille d’un mot s’exprime en bits ou en octets et est souvent utilisée pour classer les microprocesseurs (8 bits, 16 bits. . . ). Toutes choses égales par ailleurs, un microprocesseur est d’autant plus rapide que ses mots sont numériques longs, car les données traite à chaque opération sont plus longues. Opérations surqu’il des mots (d’après Wikipédia) Définition 1 0 1 0 1 0 0 0 Mot de 8 Un mot, en informatique, est l’unité de base manipulée parbits un microprocesseur. La taille d’un mot s’exprime en bits ou en octets, et est souvent utilisée pour classer les microprocesseurs (8 bits, 16 bits. . .). Toutes cira83.com 4/7 choses égales par ailleurs, un microprocesseur est d’autant plus rapide que ses mots sont longs, car les données qu’il traite à chaque opération sont plus longues. (d’après Wikipédia) 5.2 5.2 Masquage Masquage 0 0 0ET 0 1 1 1 1 Les opérateurs opérateurs logiques logiques (NON, (NON, ET, ET, OU0exclusif) exclusif) que nous avonsvu vuprécédemment, précédemment,peuvent peuven 0 OU, 0OU,0OU 1 =1que 1nous 1 avons Les appliqué sur sur un un mot, mot, bit bit par par bit. bit. appliqué 0 0 0= 0 0 0 1 1 3) Logique séquentielle 6.2 Masquage Exemple : Exemple : 0 0 0 0 0 0 1 1 e de fonction est très utilisé pour masquer une partie d’un mot. Dans l’exemple citrèsMasquage utilisé pour masquer Dans l’exemple ci-dessu 1 00 00d’un 1 6.2 dse fonction forts sontest masqués. 11 00 une 00 1partie 11 1mot. ET orts sont ET rque : masqués. Les opérateurs logiques (NON, ET, OU, OU exclusif) que nous avons vu précédemment, 0 0 0 0 0 0 0 0 1 11 1: 1 11 peuvent être appliqué sur un mot, bit par bit. Exemple ue : K = M , cette égalité permet de faire du1codage K) de mots avec une clef privée = = K = M , cette égalité permet de faire avec une clef privée K. 10 00 du 10 0codage 01 0 01 00de01 mots 0 0 0 0 0 ET 0 1 1 0 0 une 0unepartie 1 1 d’un 1 1mot. Ce type type de de fonction fonction est est très très utilisé utilisé pour pour0masquer masquer partie d’un mot.Dans Dansl’exemple l’exempleci-dessus, ci-dessus,les les4 Ce = de poids poids forts forts sont sont masqués. masqués. de Décalage 0 0 0 0 1 0 0 0 Remarque :: écalage Remarque (M consiste K) Ce Ktype M cette égalité égalité permet demot faire ducodage codage ded’un mots avec une clefprivée privée K. de,, cette fonction estbits très utilisé masquer une partie mot. Dans l’exemple ci-dessus, (M K) K M permet de faire du de mots avec une clef K. alage à==décaler les d’unpour soit vers la droite, soit vers la gauche et ge consiste àlesdécaler les bits d’unmasqués. mot soit vers: la la gauche 4 bits de poids forts sont Remarque (M droite, ⊕ K) ⊕ Ksoit = M ,vers cette égalité permetet de de re acante par un bit à 0 ou 1. faire à du0codage ante par un bit ou 1.de mot avec une clef privé K. 5.3 Décalage Décalage ⇥ 6.3 Décalage ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ àà décaler ⇥vers Le décalage décalage consiste décaleràles les bits d’un d’un mot soit droite, soitvers versvers gauche rempla Le consiste bits mot soit droite, soit lalagauche etetde remplac 1 ou 0 ⇥ ⇥ Le décalage consiste décaler les bits d’un motvers soitlala vers la droite, soit la gauche etde de 1 ou 0 1 ou 01 ou ⇥ ⇥ ⇥ ⇥ place vacante vacante par un bit à 0 ou 1. place par un bit à 0 ou 1. remplacer un bit à 0 ou 1. ⇥ la place ⇥ vacante ⇥ par⇥ Décalage la droite Décalage versvers la⇥⇥ droite ⇥ ⇥ ⇥ ⇥ ou 00 11 ou Rotation otation Décalage vers la gauche Décalage vers la gauche ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ou0 0 11ou ⇥ ⇥ Décalage vers la droite Décalage droite Décalage vers vers laladroite Décalage versla gauche Décalage lalagauche gauche Décalage vers vers tion une permutation circulaire bit d’un rotation faitvers soitlav on est uneRotation permutation circulaire bit àbit bitàd’un mot.mot. CetteCette rotation se faitsesoit Rotation 5.4est 6.4 Rotation gauche. uche. est une permutation circulaire bitd’un à bitmot. d’unCette mot. rotation se soit fait vers La est une circulaire bit rotation sesefait vers laladroite La rotation rotationLa estrotation une permutation permutation circulaire bitààbit bit d’un mot. CetteCette rotation fait soitsoit vers droit la droite, soit vers la gauche. vers vers la la gauche. gauche. ⇥ ⇥ ⇥ ⇥ ⇥⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥⇥ ⇥ ⇥ ⇥ ⇥ ⇥⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ ⇥ Rotation vers la droite Rotation vers la droite Rotation vers la droite Rotation vers la droite Rotation vers la droite 5/7 ⇥ ⇥⇥ Rotation vers gauche Rotation verslala gauche Rotation vers gauche Rotation vers la gauche Rotation vers lala gauche cira83.com 3) Logique séquentielle 7 Compteur Un compteur est un ensemble de n bascules interconnectées par des portes logiques. Il peux donc mémoriser des entiers codés en binaire naturel sur n bits. Il est généralement muni : — d’une entrée RAZ pour le mettre à 0 ; — d’une entrée CU, pour incréménter le compteur ; — d’une entrée CD pour le décrémenter ; — d’une mémoire pour mémoriser la présélection CP ; — d’une sortie débordement décomptage E ; — d’une sortie présélection atteinte D ; — d’une sortie débordement comptage F. 8 8.1 CodeSys et la logique séquentielle Généralités Vous devez fournir un nom (placé au-dessus) pour tous les composants de logique combinatoire que vous utilisez. Vous pourrez utiliser toutes les sorties des composants en utilisant leur nom, soit N OM _DU _COM P OSAN T.N OM _DE_LA_SORT IE. 8.2 Fronts Entrée CLK BOOL Sortie Q BOOL Front montant 8.3 Front descendant Bascules RS et SR Entrées SET ou SET1 BOOL RESET ou RESET1 BOOL Set prioritaire cira83.com Sortie Q BOOL Reset prioritaire 6/7 3) Logique séquentielle 8.4 8.4 Temporisations Temporisations IN PT Tempo travail 8.5 Entrées BOOL TIME T#5s Q ET Sortie BOOL TIME Tempo repos Monostable Compteurs CU CD RESET LOAD PV Entrées BOOL Si ↑ CV=VC+1 BOOL Si ↑ CV=VC-1 BOOL Si TRUE CV=0 BOOL Si TRUE CV=PV WORD Incremente uniquement Q BOOL Q BOOL QU BOOL QD BOOL CV WORD Sortie CTU : TRUE si CV >= PV CTD : TRUE si CV = PV TRUE si CV >= PV TRUE si CV = PV Décremente uniquement Incrémente et décrémente 7/7 cira83.com