Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - Français


LOGIC

Logique combinatoire

Aperçu

Description

Le bloc implémente une table de vérité standard pour la modélisation de tableaux de programmation, de circuits digitaux et de toute autre expression booléenne.

L'utilisateur doit spécifier une matrice qui définit toutes les sorties de bloc possibles dans le champ Truth Table. En conséquence, le nombre de lignes doit être une puissance de deux. Chaque ligne de la matrice contient une combinaison logique des éléments d'entrée

L'initialisation du paramètre Truth Table définit le nombre d'entrées et de sorties du bloc de la façon suivante :

  • Le nombre d'entrées est défini par la relation :

    Nombre de lignes = 2(nombre d'entrées)

  • Le nombre de sorties est égal au nombre de colonnes de la matrice.

Ce bloc peut être activé par un événement d'entrée implicite ou hériter de l'horloge à partir de l'entrée régulière (paramètre Accepts inherited events).

Types de données

Le bloc supporte les types de données suivants :

  • Entrée : scalaire. Tout type entier de Scilab.

    Une entrée positive est considérée comme un 1 logique, une entrée négative ou nulle est considérée comme un 0 logique.

  • Sortie : scalaire. Même type que l'entrée.

Paramètres

  • Truth Table

    La matrice des sorties. Les éléments doivent être 0 ou 1. Pour plus d'information voir la partie description.

    Propriétés : Type 'mat' de taille [-1,-2].

  • Accepts Inherited Events (0:No, 1:Yes)

    Spécifie si l'horloge est héritée ou pas. 0 ou 1

    Propriétés : Type 'vec' de taille 1.

Propriétés par défaut

  • always active: non

  • direct-feedthrough: oui

  • zero-crossing: non

  • mode: non

  • regular inputs:

    - port 1 : size [1,1] / type 5

    - port 2 : size [1,1] / type 5

  • regular outputs:

    - port 1 : size [1,1] / type 5

  • number/sizes of activation inputs: 1

  • number/sizes of activation outputs: 0

  • continuous-time state: non

  • discrete-time state: non

  • object discrete-time state: non

  • name of computational function: logic

Exemples

Exemple 1

L'exemple le plus simple à considérer est le OR. Dans ce cas nous avons deux entrées et seulement une sortie. La table de vérité pour cet exemple est :

input 1 input 2 output
0 0 0
0 1 1
1 0 1
1 1 1

et le paramètre Truth Table est écrit :

[0;1;1;1]
Exemple 2

Cet exemple montre l'utilisation du bloc LOGIC en tant que démultiplexeur. Le but est d'envoyer l'entrée constante égale à vrai sur une des quatre sorties en accord avec l'état des deux entrées de sélection : a et b. La table de vérité est la suivante :

Constant a b Q0 Q1 Q2 Q3
0XX0000
1001000
1010100
1100010
1110001

X signifie "indifférent".

Pour mettre cette table dans le paramètre Truth Table, on peut simplement écrire :

[zeros(4,4) ; eye(4,4)]

La figure suivante montre les sorties Q0 à Q3 obtenues pendant la simulation quand les entrées a et b de sélection du bloc sont générées par un compteur binaire.

Fonction d'interfaçage

  • SCI/modules/scicos_blocks/macros/IntegerOp/LOGIC.sci

Fonction de calcul

  • SCI/modules/scicos_blocks/src/c/logic.c

Voir aussi

Report an issue
<< JKFLIPFLOP Palette Entier SHIFT >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 24 11:16:02 CEST 2024