Apprendre Verilog : Une brève série de didacticiels sur la conception électronique numérique FPGA et Verilog HDL (18 / 21 étapes)

Étape 18 : VM 4.1 : le toujours bloquer

Si quelqu'un fait mention des mots « Verilog » et « Comportement » dans la même phrase, votre cerveau doit penser si tout va bien immédiatement « toujours bloquer ». Il n’est pas une vraie traduction entre un toujours bloc et quoi que ce soit dans une langue comme C/C++, mais le concept n’est pas difficile à comprendre. Mais si vous devez avoir une comparaison avec C/C++, un bloc est toujours comme un certain temps en boucle qui a condition du moment d’évaluer est un gâchis d’if déclarations.

En un mot, un bloc est toujours une section de la logique de Verilog codé qui est évaluée, chaque fois que change de condition de déclencheur.

Que cela signifie-t-il ? Regardons un basic toujours bloc pour un circuit à deux entrées, sw0 et sw1.

toujours @ (sw0, sw1)
commencer
fin

Il n’y a aucun code du corps de ce bloc, mais nous allons ignorer que pour l’instant. Avis la ' ce produit « toujours » (« toujours » est un mot clé Verilog). Notez également l’instruction à l’intérieur des parenthèses: « sw0, sw1 ».

À l’aide d’une simple table de vérité, nous savons que pour deux entrées il y a un maximum de 4 Etats uniques les entrées pourraient être dans : deux logique haute, fois, logique faible et un haut un faible pour les deux entrées.

Le "toujours @ (sw0, sw1)" essentiellement dit « si à tout moment, toute entrée modifie son état (c.-à-d. changer de ligne sur la table de vérité) puis ré-évaluer le code suivant: ".

Ce ne serait pas trop simple pour écrire en C/C++, mais en Verilog, c’est aussi simple que cela. Un toujours bloc réévaluera le code dans sa portée (entre les instructions begin et end, suite à la déclaration « toujours ») quand on les déclencheurs (cette liste est appelée liste de sensibilité) soit à partir d’une logique un change à une logique de zéro ou d’une logique de zéro à une logique un. Pouvez vous pensez à un composant de circuit logique commun ou deux (ou un tas!) qui pourrait être mises en œuvre plus facilement dans une toujours bloquer?

L’exemple classique est le multiplexeur ou, mux. Lorsqu’une des entrées sélectionnez Modifier, le mux doit re-décider quelle entrée pour passer à la sortie. Le prochain quelques Modules tutoriel couvrir quel type de code « à l’intérieur », nous pouvons écrire un toujours bloquer.

Conseil du Pro : seul toujours bloc par Verilog module (fichier Kala). Ajuster la liste de sensibilité au lieu d’essayer de faire un autre bloc.

Indice (duplicate): vous ne pouvez définir des valeurs d’un reg dans une toujours bloquer, aucune assignation des valeurs pour les fils de type. Vous pouvez, cependant, plus tard affecter du fil égal à la valeur de la reg.

Articles Liés

Une astuce simple pour ajouter un thermomètre à votre multimètre numérique

Une astuce simple pour ajouter un thermomètre à votre multimètre numérique

vous pouvez obtenir un multimètre numérique pour enlever la saleté bon marché ces jours-ci. Aujourd'hui, je vais parler de l'ajout d'une fonction de thermomètre à ces multimètres peu coûteuses en utilisant le minimum de composants externes et sans af
Conception de la logique séquentielle pour une horloge numérique d’apprentissage

Conception de la logique séquentielle pour une horloge numérique d’apprentissage

Cette instructable est pour deux raisons 1) à comprendre et apprendre que les fondements de la logique séquentielle 2) utilisent ces connaissances pour créer une horloge numérique.Pendules à lecture digitale ont été construits par des amateurs d'élec
8 bits série numérique-convertisseur analogique (gamme 5v) pour les microcontrôleurs (quand TTL et des résistances est tout vous avez)

8 bits série numérique-convertisseur analogique (gamme 5v) pour les microcontrôleurs (quand TTL et des résistances est tout vous avez)

donc j'avais besoin d'un DAC (convertisseur numérique-analogique) à utiliser avec mon pic12F675, et pour ceux d'entre vous qui n'avez jamais entendu parler de ce petit copain, c'est un microcontrôleur 8 broches de Microchip qui a seulement 6 broches
Comment faire pour prendre des clichés numériques limpides à travers une lentille microscope...

Comment faire pour prendre des clichés numériques limpides à travers une lentille microscope...

Mal à avoir trouver une façon de partager vos trouvailles incroyables à travers un microscope ? Tout le monde a vue différente, donc ce que vous voyez peut être totalement différent de ce que l'ami à côté de vous verriez. Pourquoi ne pas prendre une
Une tourelle de changement rapide de AXA taille de montage sur le tour de commande numérique par ordinateur de C6 Syil

Une tourelle de changement rapide de AXA taille de montage sur le tour de commande numérique par ordinateur de C6 Syil

il y a environ 1 an, j'ai acheté un tour CNC C6 Syil utilisé. Après la construction un banc en acier robuste sur lequel monter le tour, j'ai mis sur la configuration d'elle et de se familiariser avec elle.La C6 vient des actions avec un poste d'outil
Comment adapter une visionneuse de porte « objectif Fish-Eye » sur un appareil photo de grande taille

Comment adapter une visionneuse de porte « objectif Fish-Eye » sur un appareil photo de grande taille

nous avons vu des tutoriels sur ce site qui vous montrent comment une visionneuse de porte peu coûteux peut être utilisée comme un objectif Fish-Eye sur un point simple et shoot appareil photo numérique, mais que se passe-t-il si vous voulez essayer
Impressionnez vos amis, apprendre à conduire à une transmission manuelle

Impressionnez vos amis, apprendre à conduire à une transmission manuelle

tout d'abord quand j'apprenais à conduire mes parents ne me laisserait pas faire à moins que je conduisais une transmission manuelle, ou un levier de vitesse véhicule. Bien qu'il peut être frustrant à tout d'abord il peut très facilement devenir une
Projets d’Arduino sur une maquette (aucune série com)

Projets d’Arduino sur une maquette (aucune série com)

Intro :Si vous avez un Arduino Uno et que vous souhaitez démarrer la duplication des projets sans avoir à acheter un Uno chaque fois... Préparez-vous à vivre !  Cette instructable vous montrera comment déplacer vos projets (qui ne nécessitent pas de
Cours de peinture numérique 2: Une plume

Cours de peinture numérique 2: Une plume

ordinateurs ont apporté des changements aux quatre coins de la société moderne. Un de ces angles est art. L'internet regorge de concept art, fonds d'écran et beaucoup d'autres types d'image qui ont été dessinées par certains utilisateurs à un ordinat
Série de Mechanica céleste : conception de boîte de vitesses et de la construction

Série de Mechanica céleste : conception de boîte de vitesses et de la construction

Mechanica céleste est une sculpture en acier cinétique haute 16 pieds de notre système solaire qui représente la danse majestueuse des corps célestes. Il a été créé par une équipe dirigée par Jessika Welz pour Burning Man 2014.(Page facebook du proje
Cours de peinture numérique 1: Les bases d’utiliser une tablette graphique

Cours de peinture numérique 1: Les bases d’utiliser une tablette graphique

ordinateurs ont apporté des changements aux quatre coins de la société moderne. Un de ces angles est art. L'internet regorge de concept art, fonds d'écran et beaucoup d'autres types d'image qui ont été dessinées par certains utilisateurs à un ordinat
Numérisation 3D, rendu 3D des sculptures d’argile en inox par l’intermédiaire de rendus numériques pour une proposition d’art

Numérisation 3D, rendu 3D des sculptures d’argile en inox par l’intermédiaire de rendus numériques pour une proposition d’art

Je suis un artiste possédant une formation en peinture traditionnelle et de la sculpture, après avoir terminé l'école des Arts visuels avec un BFA en peinture.Après avoir travaillé dans un studio de Jeff Koons pour plus de deux ans, je me suis intére
Linkit une utilisation Mobile WIFI hotspot contrôler toutes les broches numériques

Linkit une utilisation Mobile WIFI hotspot contrôler toutes les broches numériques

Son très amusant à contrôler quoi que ce soit avec la radio. Avec linkit Mediatek un son font très facile de contrôler tous les accessoires électriques et électroniques à l'aide de WIFI. Avec le WIFI seul point chaud dans votre téléphone portable en
Testeur de logique numérique de la série 74LS

Testeur de logique numérique de la série 74LS

* Update * présenté sur www.freetronics.com (http://www.freetronics.com/blogs/news/11619617-build-a-74ls-series-digital-logic-tester-with-arduino#.UtgAf9JDumE)!Par la suite instructable, je démontrerai comment concevoir un circuit et écrire un progra