attachment_id=35 - tonil

tonil.org
  • Keine Tags gefunden...

attachment_id=35 - tonil

4.2 MODULE siebensegmentTITLE 'Siebensegmentanzeige'declarationsequationsENDx0,x1,x2,x3 PIN 2,3,4,5; "Deklaration der EingängeA,B,C,D,E,F,G PIN 23,22,21,20,19,18,17 istype 'com'; "Deklaration der AusgängeA=x3#x1#(x2&x0)#(!x2&!x0); "Definition der FunktionsgleichungenB=!x2#(!x0&!x1)#(x1&x0);C=!x1#x0#x2;D=x3#(!x0&!x2)#(x1&!x0)#(x1&!x2)#(x0&!x1&x2);E=(!x0&!x2)#(x1&!x0);F=x3#(x2&!x0)#(!x1&x2)#(!x0&!x1);G=x3#(x2&!x1)#(x1&!x2)#(!x0&x1);Die Source File wurde mit ispLEVER zuerst auf ihre Syntax überprüft, dann die Logikreduziert und kompiliert. Anschließend wurde das JEDEC-File erzeugt und mit Abel auf denGAL22V10B gebrannt. Der Baustein wurde dann auf den Versuchsaufbau gesteckt, und seineFunktion erfolgreich überprüft.4.3 MODULE modulo5


TITLE 'Modulo-5 Zähler'declarationsequationsENDCLK PIN 1; "Zählereingang zuweisenZR PIN 2; "Eingang für Zählrichtung zuweisend0,d1,d2 PIN 23,22,21 istype'reg';"Eingänge zuweisend=[d2,d1,d0]; "Vektordeklarationd.clk=CLK; "Clock PIN mit intern verbindend0=(d1.fb&!d0.fb)#(d2.fb&ZR)#(!d0.fb&!d2.fb&!ZR);d1=(d0.fb&!d1.fb&!ZR)#(d1.fb&ZR&d0.fb)#(!d0.fb&!ZR&d1.fb)#(d2.fb&ZR);d2=(ZR&!d0.fb&!d2.fb&!d1.fb)#(d0.fb&d1.fb&!ZR);Auch bei diesem Programm wurde die Source überprüft, kompiliert und als JEDEC per Abelauf den Baustein gebrannt. Die Funktion wurde anhand des Versuchsaufbaus auch hiererfolgreich überprüft.4.4 MODULE waschen


TITLE 'Waschstraße'declarationsequationsCLK PIN 1; "Deklaration des Clock-PINx1,x2,x3,x4,x5,x6 PIN 2,3,4,5,6,7; "zuweisen der Eingängey1,y2,y3,y4,y5,y6,y7 PIN 23,22,21,20,19,18,17 istype'com'; "zuweisen der Ausgängez0,z1,z2 PIN 16,15,14 istype 'reg'; "Eingänge für Zustandskodierung bzw.Ausgängez=[z2,z1,z0]; "VektordeklarationSTATUS=z; "Deklaration der Zustände als Vektorenruhezustand=0;bereit=1;belegt=2;transportbandbetrieb=3;waschen=4;geblaese=5;z.clk=CLK; "Takt für Register festlegenstate_diagram STATUSstate ruhezustand: "Umsetzung der Funktionsgleichungenif x1&!x2&!x3&!x4&!x5&!x6 then bereitelse if !x1 then ruhezustandelse ruhezustand;state bereit:y1=1;if x1&!x2&x3&!x4&!x5&!x6 then belegtelse if !x1 then ruhezustandelse bereit;state belegt:y2=1; y3=1;if x1&x2&x3&!x4&!x5&!x6 then transportbandbetriebelse if !x1 then ruhezustandelse belegt;state transportbandbetrieb:y2=1; y4=1;if x1&!x2&!x3&x4&!x5&!x6 then waschenelse if !x1 then ruhezustandelse transportbandbetrieb;state waschen:y2=1; y4=1; y5=1; y6=1;if x1&!x2&!x3&!x4&x5&!x6 then geblaese


else if !x1 then ruhezustandelse waschen;state geblaese:y2=1; y4=1; y7=1;if x1&!x2&!x3&!x4&!x5&x6 then bereitelse if !x1 then ruhezustandelse geblaese;ENDZuletzt wurde die Funktion dieses Programms anhand des Versuchsaufbaus erfolgreichüberprüft.5.1 Chip Report (Beiblätter)5.2 FazitAuf dem Chip Report wird angezeigt welche Dateien zu einem Projekt gehören, dieABEL Datei, und die zum GAL22V10 gehörige library file, sowie die ausgegebenenDateien, also die Chip- Report und die JEDEC Datei.Darunter wird die programmierte Logik dargestellt, nachdem sie mit „reduce logic“bearbeitet wurde.Im Chip Diagram ist eine grafische Darstellung des Chips zu erkennen und wo, welcheAus- bzw. Eingänge angelegt sind. Darunter ist in tabellarischer Form angegeben, wieviele Aus- bzw. Eingänge verwendet, bzw. nicht verwendet werden.In der „product Terms Distribution“ wird angegeben auf welchem PIN welches Signalanliegt, wie viel Terme es benötigt, und wie viele noch frei wären.Dann wird eine Angabe über die Inputs gemacht, also welches Signal auf welchem PINliegt, und wie es im Programm bezeichnet ist.Und zum Schluss wird noch angezeigt, welche PINs nicht belegt sind.Mit Hilfe des ispLEVER Programms und der „check Syntax“, ist es einfacher einenFehler zu finden, als wenn man die Schaltung analog aufgebaut hat und dort jedesKabel überprüfen muss. Zudem können die Schaltungen viel schneller umgesetztwerden, auch Änderungen sind schnell zu bewerkstelligen. Ein Grund dafür ist , dassman die Funktionsgleichungen im Abel- Code kaum von denen in derStandardschreibweise abweichen, und man nicht lange umdenken muss. Zudem istder Materialbedarf geringer, da nur ein GAL Baustein gebraucht wird, wo man mehrereLogikbausteine benötigen würde, von deren Verbindungen zwischen denLogikbausteinen ganz abgesehen.

Weitere Magazine dieses Users
Ähnliche Magazine