*   >> Lezen Onderwijs artikelen >> education >> college and university

WinCupl - gal20v8a - Codevoorbeelden - synchrone toestand machine

De g20v8a is een programmeerbare logische inrichting (PLD), die 8 input en output pinnen bevat. Bij het opstarten van een programma in WinCupl de pinnen in om manieren kan worden gedefinieerd; in een groep of individueel. Bellow toont het verschil tussen de twee

Groep. /* Output pinnen * /PIN [15..

21] = [a, b, c, d, e, f, g]; Pin 2 = res ;

Individueel: /* output pinnen * /PIN 15 = a; PIN 16 = b; PIN 17 = c; PIN 18 = d; PIN 19 = e; PIN 20 = f; PIN 21 = g; Pin 2 = res;

Er is geen echt verschil tussen input en output pin elkaar de input pinnen beginnen bij pin 2, terwijl de uitgang begint bij pin 15.

In het volgende voorbeeld van de code implementeert een synchrone state machine gecodeerd voor een 7-segment display

Ten eerste moet u alle output pinnen in een groep te plaatsen.

veld count = [a, b, c, d, e, f, g ];

Dan definieert u alle staten die de groep kan worden in NB: In de gal20v8a er is een maximum van 8 available staten die kunnen worden gemaakt.. Voor meer landen een hogere orde chip nodig zou zijn.

$ definiëren S0 'b'0110000 $ definiëren S1' b'1101101 $ definiëren S2 'b'1111001 $ definiëren S3' b'0110011 $ definiëren S4 'b '1011011 $ definiëren S5' b'1011111 $ definiëren S6 'b'1001111

De staten hierboven zijn gecodeerd voor een 7-segment display. Merk op dat de landen aftellen 1-6, dan laten E.

Now dat alle variabelen en staten zijn gemaakt van het programma kan worden geschreven. Voor een synchrone machine de klok wordt automatisch aangenomen dat Pin 1 en hoeft niet te worden gedefinieerd, noch wordt CLK of Pin 1 waarnaar wordt verwezen in overal in de code

{aanwezig S0 als res volgende S1.

!; als res volgende S0; S1 aanwezig als res volgende S2!; als res volgende S0; huidige S2 als res volgende S3!; als res volgende S0; huidige S3 als res volgende S4!; als res volgende S0; huidige S4 als res volgende S5!; als res volgende S0; huidige S5 als res volgende S6!; als res volgende S0; huidige S6 als res volgende S0!; als res volgende S0;}

Ga naar de volgende pagina >> Problemen die zich voordoen en andere manieren om hetzelfde resultaat acheive

.


Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.