NLT-module DIGITALE TECHNIEK voor HAVO - niutec.nl Techniek-UVA/Hoofdstuk 9 en 10 NLT.pdf ·...

27
NLT-module DIGITALE TECHNIEK voor HAVO Ontwerpen van digitale schakelingen met SIM-PL op een PC Ben Bruidegom © 2007 AMSTEL instituut Universiteit van Amsterdam Kruislaan 404 1098 WV Amsterdam

Transcript of NLT-module DIGITALE TECHNIEK voor HAVO - niutec.nl Techniek-UVA/Hoofdstuk 9 en 10 NLT.pdf ·...

NLT-module DIGITALE TECHNIEK voor HAVO Ontwerpen van digitale schakelingen met SIM-PL op een PC

Ben Bruidegom © 2007 AMSTEL instituut Universiteit van Amsterdam Kruislaan 404 1098 WV Amsterdam

2

3 Voorwoord Onze leefomgeving is tegenwoordig ondenkbaar zonder tal van elektronische apparaten. Deze apparaten bestaan uit digitale schakelingen. Ontwerpen van digitale schakelingen Het doel van dit cursusmateriaal is om zelf een schakeling te kunnen ontwerpen, bouwen en testen. Hardware benadering Er is gekozen om dit onderwerp vanuit de ‘hardware’ te benaderen. Dit houdt in dat alle voorbeelden van schakelingen en systemen ook echt gebouwd kunnen worden in hardware. Software De cursus berust op simulaties van digitale schakelingen. Met de gebruikte software, SIM-PL, kunnen op een eenvoudige manier door scholieren schakelingen en componenten worden ontworpen, gebouwd en getest. Er is een bibliotheek met een groot aantal componenten en schakelingen aanwezig. De software wordt ook in het hoger onderwijs gebruikt. Website De nieuwste versie van de software en de componenten behorende bij dit materiaal kunnen worden gedownload via: ► URL5. Kies Voortgezet onderwijs/NLT. Voor wie? Het materiaal is vooral geschikt voor leerlingen met interesse voor moderne technieken. Het materiaal kan worden ingezet voor leerlingen bij de havo-module Digitale techniek van het vak Natuur, Leven en Technologie. Hoofdstuk 9 is o.a. een introductie in SIM-PL. Hoofdstuk 10 is gericht op het zelf ontwerpen van schakelingen. Het materiaal is zeer geschikt voor leerlingen die van plan zijn een studie in de technische informatica, informatica of e-technology te gaan volgen. Auteur De auteur is veel dank verschuldigd aan Wouter Koolen-Wijkstra. Wouter ontwikkelt de SIM-PL-software en bouwde de meeste van de geavanceerde architecturen. Wij hopen dat je veel plezier aan dit materiaal zal beleven. Ben Bruidegom.

4

Inhoudsopgave Hoofdstuk 9 Poorten en logische schakelingen .............................................................................. 5

9.1 Leerdoelen ............................................................................................................................ 5 9.2 De bit..................................................................................................................................... 5 9.3 Poorten ................................................................................................................................. 5 9.4 Logische schakeling en bijbehorende ‘formule’ .................................................................... 7 9.6 Werken met SIM-PL ............................................................................................................. 9

Werken met de SIM-PL-Editor ............................................................................................. 10 9.7 Bouw en test je eigen multiplexer ....................................................................................... 13

Hoofdstuk 10: Hoe ontwerp je een digitale schakeling? ............................................................... 15 10.1 Leerdoelen ........................................................................................................................ 15 10.2 Het ontwerpen van een Majority Voter.............................................................................. 15

Stap 1: Van probleem naar waarheidstabel ......................................................................... 15 Stap 2: Van waarheidstabel naar formule ............................................................................ 16 Stap 3: Het vereenvoudigen van de formule m.b.v regels uit de Boole- algebra ................. 16 Stap 4: De schakeling realiseren met behulp van NAND-poorten........................................ 18

10.3 Een basiscomponent maken vanuit een bestaande component met SIM-PL .................. 18 10.4 Schakelalgebra ................................................................................................................. 19 10.5 Vier ontwerpopdrachten: pas je kennis toe in de praktijk ................................................. 21

Het ontwerpen van een “hotelschakeling” met NAND-poorten............................................. 21 Het herontwerpen van de multiplexer uit hoofdstuk 1 met het ic 7400................................. 22 Foutdetector met pariteitbit................................................................................................... 23 Veerman, wolf, kool en geit .................................................................................................. 25

Bijlagen.......................................................................................................................................... 27 Bijlage 1: URL ........................................................................................................................... 27 Bijlage 2: Begrippenlijst............................................................................................................. 27

Hoofdstuk 9 .......................................................................................................................... 27 Hoofdstuk 10 ........................................................................................................................ 27

5

Hoofdstuk 9 Poorten en logische schakelingen

9.1 Leerdoelen Aan het einde van dit hoofdstuk weet je:

• wat een logische schakeling is,

• wat een waarheidstabel is,

• wat een Inverter is en wat AND, OR en XOR-poorten zijn;

• wat een multiplexer is. Aan het einde van dit hoofdstuk kun je:

• van een logische schakeling een waarheidstabel maken;

• van een formule een logische schakeling tekenen;

• met de SIM-PL-executer een schakeling testen;

• met de SIM-PL-editor een schakeling bouwen.

9.2 De bit Een computer werkt alleen met ‘nullen’ en ‘enen’. Is deze uitspraak waar? Ja, want een 0 of een 1 hoeft namelijk niet per se een getal voor te stellen. Het is mogelijk daar ook een andere betekenis aan toe te kennen. Voorbeeld: een computerchip bevat miljoenen transistoren. Deze transistoren werken als schakelaars. De spanning op de uitgang van een schakelaar is 0 Volt of 5 Volt. Aan deze spanningsniveaus kennen we een waarde toe: 0 Volt = ‘0’ en 5 Volt = ‘1’. Een voorbeeld uit de logica: een 0 kan betekenen dat een ‘bewering’ niet waar is (FALSE). De waarde 1 zou dan betekenen dat de bewering wel waar is (TRUE). Hieronder nog enkele voorbeelden van toestanden of signalen die twee mogelijke waarden kunnen aannemen: Dicht / Open Uit / Aan Laag (lage spanning) / Hoog (hoge spanning). De term 'bit' is afkorting van: 'binary digit'. Deze term duidt op een beperking tot twee onderscheiden situaties. Gewoonlijk worden deze aangeduid met de symbolen '0' en '1'.

9.3 Poorten Een poort is een logische schakeling met één of meer ingangen en één uitgang. De belangrijkste poorten zijn: de inverter, de AND-poort, de OR-poort en de XOR-poort. De bij deze poorten behorende logische operatoren zijn respectievelijk NOT, AND, OR en XOR. Operatoren zijn bewerkingen op getallen. In het geval 12 + 23 is het teken + de rekenkundige operator voor optellen. Om de relatie tussen de waarden op de ingangen en de uitgang van een poort te beschrijven wordt een waarheidstabel gebruikt. In de linkerkolom van de tabel staan alle mogelijke combinaties van ingangswaarden en in de rechterkolom staat de bijbehorende uitgangswaarde. Ieder type poort heeft een eigen symbool. In figuur 98 is het symbool van een OR-poort met twee ingangen weergegeven. Het symbool bestaat uit een vierkant. De twee lijnen links van dit vierkant zijn ingangen. De willekeurig gekozen letters v en w geven iedere ingang een naam. De lijn rechts van het vierkant is de uitgang. Deze heeft de hoofdletter Z als naam.

De tekst in het vierkant, hier ≥1, geeft de relatie tussen ingangen en

uitgang aan (≥ 1 betekent hier minstens 1). De symbolen zijn die van de IEC-standaard (International Electrotechnical Commission). In dit hoofdstuk komen de volgende poorten voor:

Figuur 97: Een logische schakeling…

Figuur 98: Symbool van een OR-poort.

6 Inverter

Een inverter heeft één ingang. Het signaal op deze ingang wordt geïnverteerd (‘1’ wordt ‘0’ ofwel ‘hoog’ wordt ‘laag’ en omgekeerd). De waarde van de uitgang Z is de logische

omkering (negatie, ontkenning, inverse) van de ingang v. Het ‘bolletje’ bij de uitgang Z van het symbool geeft de inversie aan. Er geldt: Z = NOT v. (3) AND-poort

De AND-poort heeft twee of meer ingangen. Alle ingangssignalen moeten ‘hoog’ zijn om een hoog uit-gangssignaal te verkrijgen. Een AND-poort met twee ingangen is hier weergegeven. Het symbool & (ampersand) wordt vaak gebruikt als ‘en’-teken.

Er geldt: Z = v AND w. (4) OR-poort

De OR-poort heeft twee of meer ingangen. Indien één of meer ingangen ‘1’ zijn, is de uitgang ‘1’. Alleen als alle ingangen ‘0’ zijn, is de uitgang ‘0’. Een OR-poort met

twee ingangen is hier weergegeven. Het symbool ≥1 betekent minstens 1.

Er geldt: Z = v OR w. (5) OR-poort met drie ingangen

AND- en OR-poorten kunnen meer dan twee ingangen hebben. Hiernaast is de OR-poort met drie ingangen weergegeven. Er geldt: Z = v OR w OR x. (6) Doordat deze poort drie ingangen heeft, zijn er acht (2*2*2 = 2³) combinaties van verschillende waarden voor v, w en x mogelijk. De tabel heeft dus acht regels.

XOR-poort De XOR-poort (eXclusive OR) heeft altijd twee ingangen. Alleen als precies één van de ingangen ‘1’ is, wordt de uitgang ‘1’. De tekens =1 in het symbool betekenen hier: precies 1. Er geldt: Z = v XOR w. (7)

V Z 0 1 1 0

v w Z 0 0 0 0 1 0 1 0 0 1 1 1

v w Z 0 0 0 0 1 1 1 0 1 1 1 1

v w x Z 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1

v w Z 0 0 0 0 1 1 1 0 1 1 1 0

Figuur 99: Waarheidstabel Inverter.

Figuur 100: Symbool van een Inverter.

Figuur 101: Waarheidstabel AND-poort.

Figuur 102: Symbool van een AND-poort.

Figuur 103: Waarheidstabel OR-poort.

Figuur 104: Symbool van een OR-poort.

Figuur 106: Symbool van een OR-poort met drie ingangen.

Figuur 105: Waarheidstabel OR-poort met drie ingangen.

Figuur 108: Symbool van een XOR-poort.

Figuur 107: Waarheidstabel XOR-poort.

7 Voorbeelden: Jan woont of in Maastricht of in Groningen; Jan is jarig op 1 november of op 1 oktober. De ene mogelijkheid sluit de ander uit.

9.4 Logische schakeling en bijbehorende ‘formule’ In figuur 109 is rechts een combinatie van een AND-poort en een OR-poort weergegeven. Een dergelijke combinatie wordt een logische schakeling genoemd. In de bijbehorende tabel (links in figuur) is een extra kolom weergegeven. Het punt P, van probe (testpunt), geeft de waarde weer van de uitgang van de AND-poort. Van schakeling ���� formule De ‘formule’ die bij de schakeling hoort, is:

Y = (a AND b) OR c. (8) Ook de formule:

Y = c OR (a AND b) (9) hoort bij deze schakeling. Het is nodig in formules haakjes te plaatsen. Worden deze weggelaten zodat:

Y = a AND b OR c (10) dan kunnen we dat ook interpreteren als:

Y = a AND (b OR c). (11) Dit is een formule die bij een andere schakeling hoort.

Van formule ���� schakeling Stel: van de formule 8 (Y = (a AND b) OR c) moet een schakeling worden getekend. Hoe pak je dit aan?

• werk van links naar rechts;

• teken eerst de AND-poort, teken poortingangen altijd links en de poortuitgang rechts;

• voeg op dezelfde wijze de OR-poort toe;

• teken op de juiste manier de nodige verbindingen en aftakkingen.

Twee aftakkingen worden bij voorkeur weergegeven door twee ‘driesprongen’ en niet als één ‘viersprong’. Dit om verwarring met kruisende lijnen te voorkomen. Kruisende lijnen maken onderling geen contact.

a b c P Y 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 0 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1

Twee aftakkingen Juiste weergave

Twee aftakkingen Onjuiste weergave

Kruisende lijnen Geen verbinding tussen c en W

AND- en OR-poort

Figuur 109: Waarheidstabel combinatie AND-poort en OR-poort (links) en schematische weergave van de combinatie.

Figuur 110: Let op hoe je schakelingen tekent!

8 Opdracht 42 42.1 Combinatie OR/AND-poort De schakeling in figuur 111 heeft drie ingangen: a, b en c en een uitgang: Y. a Geef de formule die bij deze schakeling hoort. Y = ………….. b Vul de waarheidstabel in figuur 112 verder in.

42.2 Combinatie AND/OR/Inverter De schakeling weergegeven in figuur 113 heeft drie ingangen: a, b en c en een uitgang: Y. a De formule bij de schakeling van figuur 113 is: Y = ……………. b Vul de waarheidstabel in figuur 114 in.

42.3 Van formule naar schakeling met drie poorten Ontwerp een schakeling voor de volgende formule: Y = (NOT a) AND (b OR c) (12) Geef het resultaat weer in figuur 115. Maak gebruik van IEC-symbolen! 42.4 Van formule naar schakeling met vier poorten Ontwerp een schakeling voor de volgende formule: Y = (a AND (NOT b)) XOR (c AND d) (13) Geef het resultaat weer in figuur 116. Maak gebruik van IEC-symbolen!

a b c P Y 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

a b c P1 P2 Y 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

AND/OR/Inverter

Figuur 112: Waarheidstabel bij opgave 42.1 b.

Figuur 113: Schema combinatie AND/OR/Inverter-poort.

Figuur 114: Waarheidstabel bij opgave 42.2 b.

Figuur 115: Leeg schema voor opgave 42.3.

Figuur 116: Leeg schema voor opgave 42.4.

Figuur 111: Schema combinatie OR/AND-poort

OR- en AND-poort

9 42.5 Symmetrisch opgebouwde poortschakeling De schakeling in figuur 117 heeft twee ingangen: a en b en een uitgang: Y. a Vul de waarheidstabel in figuur 118 in. b Met welke poort komt deze tabel overeen als je kijkt naar de kolommen a, b en Y? Antwoord: Dit is de tabel van de ……… -poort. c Wat is de formule van deze schakeling? Antwoord: Y = …………..

9.6 Werken met SIM-PL SIM-PL heeft de volgende gereedschappen: Een simulator. Met de simulator, executer genoemd, worden schakelingen en hun gedrag gesimuleerd. Een editor. Met de editor kunnen logische schakelingen worden gebouwd.

Werken met de SIM-PL-simulator Opdracht 43 Open de folder SIM-PL2.1.1. Dubbelklik op de file Executer.jar. Klik op de icoon: Hierdoor wordt een bestaand werkblad (worksheet) geopend. Klik op Components � PoortenH9 � AND_OR_Inverter.sim-pl-ws. De schakeling die op je scherm verschijnt, is opgebouwd uit één OR-poort en één AND-poort. De schakeling heeft drie ingangen a, b en c en één uitgang Y. Alle beginwaarden, ook die van de uitgang en van probe P zijn 1. De waarden van P en Y kunnen onjuist zijn omdat de simulator de schakeling nog niet heeft doorgerekend. Om een simulatie uit te voeren zijn er vier knoppen met pijlen die de volgende betekenis hebben:

Initialisatie. De simulator keert terug naar zijn begintoestand. Alle in- en uitgangen krijgen hun beginwaarde ‘1’. Step. Hiermee wordt de kleinst mogelijke simulatiestap gegeven. Cycle. Hiermee worden alle simulatiestappen tot de volgende klokpuls gegeven. Multiple Cycles. Hiermee worden alle simulatiestappen gedurende een zelf te kiezen aantal klokpulsen gegeven.

Een simulatie uitgaande van de begintoestand met de “Step”-functie Opdracht 44 a Klik twee keer op de groene pijl (Step). De uitgang van de AND-poort en van de Inverter zijn nu doorgerekend. P1 is ‘1’ gebleven en P2

a b P1 P2 P3 P4 Y 0 0 0 1 1 0 1 1

Figuur 118: Waarheidstabel bij opgave 42.5 a.

Symmetrische schakeling

Figuur 117: Schema van schakeling bij opgave 42.5.

10 is ‘0’ geworden. De volgende “Step” rekent de OR-poort door. De simulatie is nu voltooid. b Klik op de rode pijl. Alle waarden zijn nu weer ‘1’ geworden. c Klik nu op de bruine pijl (Cycle). De simulatie wordt nu in één keer uitgevoerd. Het invoeren van nieuwe waarden op de ingangen Opdracht 45 a Klik op ingang b en verander de waarde in ‘0’. b Doe hetzelfde met ingang c. c Verander ingang a niet. Klik weer twee keer op de groene pijl. P1 is ‘0’ geworden en P2 is ‘1’ geworden. d Bedenk voordat je de volgende “Step” geeft wat uitgang Y zal worden. e Voer de volgende ingangswaarden in: a = ‘0’, b = ’1’ en c = ‘1’. f Voorspel de waarden van P1, P2 en Y voordat je de simulatie uitvoert. g Voer daarna de simulatie uit. De menu-optie waarheidstabel Opdracht 46 a Ga naar de menu-optie Tools � Show Truth-table. b Is de waarheidstabel in overeenstemming met de waarheidstabel die je ingevuld hebt bij opdracht 42.2? Het aansturen van de simulator met een programma Opdracht 47 a Laad de schakeling met de filenaam: SymmetrischeSchakeling.sim-pl-ws in de executer. Deze file kun je vinden in de folder: Components/PoortenH9 b Ga naar het window: Program Editor. Ga naar File � Open � TestProgramSymSchak.sal. Het programma bestaat uit drie kolommen. De linker kolom geeft het tijdstip aan wanneer de simulatie wordt uitgevoerd. De andere kolommen geven de waarden aan die de ingangen a en b krijgen op die tijdstippen. Om commentaar aan het programma toe te voegen gebruik je het #-symbool. c Klik op ‘Compile’. Het programma wordt hierdoor vertaald naar een soort machinetaal. Als de code correct is verschijnt het groene vinkje. d Klik op de rode pijl. Het programma wordt hierdoor geladen en de eerste programmaregel licht op. e Voer het programma instructie voor instructie uit met behulp van de bruine pijl. Controleer of de uitkomst van iedere programmaregel overeen komt met de overeenkomstige rij van de tabel van opdracht 42.5. f Gebruik de rode pijl om een nieuwe simulatie te starten. g Klik op de gele pijl en type ‘4’ in. De vier programmaregels worden nu in één keer uitgevoerd. Het zelf ‘genereren’ van een programma Met de optie File � Generate Truth Table van de Program Editor kan automatisch een programma worden gemaakt dat de schakeling aanstuurt.

Werken met de SIM-PL-Editor Het bouwen van een schakeling met bestaande componenten

Mijn AND-poort keling

Figuur 120: Schema AND-poort.

AND/OR/Inverter

Figuur 119: Schema AND/OR/Inverter poort.

11 Mijn AND-poort 48 Opdracht Deze opdracht is het nabouwen van de in figuur 120 weergegeven schakeling. a Open de folder SIM-PL2.1.1. b Dubbelklik op de file Editor.jar. c Klik op de icoon “Create a new, empty component”. Er verschijnt het hiernaast weergegeven window. d Kies de optie ‘Complex’. Met deze optie kan een poortschakeling worden gemaakt met bestaande poorten. e Geef de component de naam “MijnANDpoort”. Klik op OK. Er verschijnt nu een leeg tekenblad in beeld. f Sla de (lege) component op in de folder Componenten/PoortenH9 en voorzie de component van een filename. De “default filename” is dezelfde als de naam van de component. Gereedschappen om een schakeling te maken Boven het lege tekenblad staan een aantal iconen met de volgende functies:

Component. Een icoon om componenten aan de schakeling toe te voegen. Een component kan zowel een poort zijn als een bestaande poortschakeling.

Ingang; Uitgang. Iconen om de schakeling te voorzien van ingangen en uitgangen. De linker icoon is voor ingangen en de rechter voor uitgangen.

Verbindingen. Een icoon om verbindingen te maken tussen de ingangen van de schakeling en (sub)componenten, tussen (sub)componenten onderling en tussen (sub)componenten en de uitgang(en) van de schakeling. Probe. Een icoon om ‘probes’ aan de schakeling toe te voegen. Deze probes worden geplaatst op een verbinding. Zij geven de toestand van de verbinding weer tijdens de simulatie.

Iconen om de lay-out van de schakeling te maken en teksten toe te voegen.

Select. Een icoon om een onderdeel van de schakeling te selecteren.

49 Opdracht Het editen van de schakeling Componenten Verzamel eerst de benodigde poorten. Begin met de OR-poort. a Klik op de icoon “component”. b Klik binnen het tekenblad. c Selecteer de component ‘2-inputOR’. Klik op ‘Open’. Er verschijnt een nieuw window. d Verander de naam van de component in OR-poort en klik op OK.

Figuur 121: Stap d en e uit opdracht 48.

12 De component verschijnt nu op het tekenblad. e Klik nogmaals binnen het tekenblad. Selecteer de component ‘Inverter’. f Verander de naam in InverterLB (Links Boven). g Klik nogmaals binnen het tekenblad en selecteer nog twee keer een ‘Inverter’. Geef deze inverters verschillende namen bijvoorbeeld InverterLO (LO Links Onder) en InverterR (R Rechts). h Klik op het icoon ‘Select’ en sleep de componen-ten naar de gewenste positie. In- en uitgangen i Klik op de icoon ‘Ingang’ en voorzie de schakeling van twee ingangen. Geef de beide ingangen de namen a respectievelijk b. j Klik op de icoon ‘Uitgang’. Geef de uitgangen van de schakeling de naam Y. Verbindingen k Klik op de icoon ‘Verbindingen”. Maak de eerste verbinding door te klikken op een uitgang van een poort en daarna te klikken op een ingang van een andere poort. De verbinding heeft de naam “Wire” gekregen. Links op het scherm bij “Property” kun je deze naam aanpassen tot bijv. OutputWire. Ook de dikte en de kleur van de lijn kun je hier instellen. l Maak ook alle andere verbindingen tussen de poorten en de in- en uitgangen van de schakeling. Probes m Breng probes aan op die verbindingslijnen van de schakeling waarvan je tijdens de simulatie de waarde wilt waarnemen. Lay-out component n Gebruik de ‘tekentools’ om de lay-out van de schakeling te verbeteren en tekst toe te voegen. De opdracht is nu gereed. o ‘Save’ de schakeling. 50 Opdracht Mijn ORpoort a Gebruik de ‘Save As’-optie om de schakeling op te slaan onder de naam ‘MijnORpoort’ in de folder PoortenH9. b Verwijder de OR-poort. Alle draden waarmee de OR-poort is verbonden verdwijnen nu ook. c Open de component “2-inputAND.xml” en zet deze op de plaats van de OR-poort. d Sluit de in- en uitgangen op dezelfde wijze aan als in de eerste opdracht en verander de tekst in “Mijn OR-poortschakeling”. e Save de schakeling en sluit de Editor. Maken van een nieuw werkblad f Start de Executer. Klik hiertoe op het icoon voor het maken van een nieuw werkblad. g Ga naar Components � PoortenH9 � MijnANDpoort.SIM-PL. h Klik het “Time Sequence Diagram” weg en configureer de overige windows naar eigen smaak. i Save de worksheet. Testen van MijnANDpoort j Test de schakeling. Gebruik ook de optie ‘Tools � Show Truth Table. Als de schakeling correct is nagebouwd blijkt dat de waarheidstabel van de schakeling overeenkomt met die van een AND-poort.

Figuur 122: Stap c uit opdracht 49.

Figuur 123: Stap d uit opdracht 49.

13 k Test ook ‘MijnORpoort’. l Met welke poort komt deze schakeling overeen? Tekstbron 9: De wetten van De Morgan De schakelingen bewijzen dat de wetten van De Morgan geldig zijn. Afgeleide vormen van deze twee wetten uit de logica zijn: a AND b = NOT ((NOT a) OR (NOT b)) (14) a OR b = NOT ((NOT a) AND (NOT b)) (15) 51 Opdracht De wetten van De Morgan Controleer de wetten van De Morgan ook door het invullen van de volgende tabellen:

Tekstbron 10: Propositielogica Achter de structuur van Nederlandse zinnen gaan logische vormen schuil. Zo is de bewering “Het regent of het regent niet” waar en de bewering “Het regent en het regent niet” onwaar. Ga na of de volgende twee beweringen overeen komen: Ik ga zeilen als het waait en als jij meegaat. Ik ga niet zeilen als het niet waait of als jij niet meegaat.

9.7 Bouw en test je eigen multiplexer Een veel voorkomende toepassing van poortschakelingen is het schakelen van datastromen. Een mechanisch equivalent van een multiplexer, een wisselschakelaar, is in figuur 126 afgebeeld. De stand van de schakelaar wordt bepaald door ingang S. S staat voor Select. Als S = ‘0’, wordt de waarde op ingang b doorgelaten naar uitgang Y. Deze stand van de schakelaar is in figuur 126 weergegeven. Als S = ‘1’, wordt de waarde op ingang a doorgelaten naar Y. Deze schakeling wordt multiplexer of dataselector genoemd. De naam multiplexer wordt vaak afgekort tot Mux. Formule De formule die bij deze schakeling hoort is: Y = (a AND S) OR (b AND (NOT S)) (16) Tekstbron 11: verkrijgen formule De manier waarop deze formule is verkregen wordt in dit hoofdstuk niet behandeld. Dit vereist een methode om uit een tabel een formule te maken en kennis van regels uit de Boole-algebra

a b NOT a NOT b (NOT a) OR (NOT b) NOT ((NOT a) OR (NOT b)) a AND b 0 0 0 1 1 0 1 1

a b NOT a NOT b (NOT a) AND (NOT b) NOT ((NOT a) AND (NOT b)) a OR b 0 0 0 1 1 0 1 1

Figuur 124: Tabel voor controleren wet a.

Figuur 125: Tabel voor controleren wet b.

Figuur 126: Een wisselschakelaar.

14 om de ontstane formule te vereenvoudigen. Deze wat moeilijker onderwerpen, worden in het hoofdstuk 4: “Ontwerpen van digitale schakelingen” behandeld. 52 Opdracht a Vul de waarheidstabel in figuur 127 in voor de multiplexer. b Ontwerp de schakeling en geef je ontwerp weer in figuur 128. c Implementeer je ontwerp met de SIM-PL-editor. Haal de benodigde poorten uit de folder PoortenH9. Sla de schakeling op onder de naam MijnMux. d Test je ontwerp m.b.v. de SIM-PL-executer. Gebruik hierbij de optie “Truth Table” . e Schrijf een programma om de schakeling te testen. Gebruik hiervoor de optie File ( Generate Truth Table van de Program Editor om automatisch een programma te genereren.

S a b a AND S b AND (NOT S) Y

0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

Figuur 128: Leeg schema bij opdracht 52 b.

Figuur 127: Waarheidstabel bij opdracht 52 a.

15

Hoofdstuk 10: Hoe ontwerp je een digitale schakeling?

10.1 Leerdoelen Aan het eind van dit hoofdstuk weet je:

• wat een Majority Voter is;

• wat een redundant systeem is;

• wat enkele wetten uit de Boole-algebra betekenen;

• wat een NAND-poort is;

• wat een pariteitbit is;

• hoe pariteit gebruikt wordt om fouten in data op te sporen. Aan het einde van dit hoofdstuk kun je:

• van een probleem een waarheidstabel maken;

• van deze waarheidstabel een formule maken;

• deze formule vereenvoudigen met regels uit de Boole Algebra;

• deze formule omzetten in een vorm zodat deze met NAND-poorten kan worden geïmplementeerd;

• een schakeling realiseren met allen maar NAND-poorten als bouwstenen;

• met SIM-PL nog niet bestaande poorten bouwen;

• een programma schrijven om je ontworpen schakeling te testen.

10.2 Het ontwerpen van een Majority Voter.

Stap 1: Van probleem naar waarheidstabel In figuur 129 is een automatisch systeem weergegeven waarmee een kraan kan worden opengestuurd die onderin een vat is gemonteerd. Als sensoren zijn bovenin het vat drie ‘vlotterschakelaars’ gemonteerd. Deze detecteren of het vat vol met vloeistof is. Als het vloeistofniveau een vlotter heeft bereikt wordt een schakelaar omgezet. De schakelaar geeft ‘1’ als de sensor in de vloeistof is gedompeld en ‘0’ wanneer dit niet zo is. Om te voorkomen dat een kapotte sensor een overstroming van het vat ten gevolge heeft, zijn er niet één maar drie

Majority Voter

Klep controle

a b c

K

Vat

klep

c b a

Figuur 129: Automatische kraanopening systeem: wat komt er bij kijken?

16 sensoren gemonteerd. De ‘meerderheid’ van de sensoren bepaalt of de klep wordt open gestuurd. Dus als minstens twee sensoren een ‘1’ geven, krijgt K de waarde ‘1’ en wordt de klep open gestuurd. In de andere gevallen is K ‘0’. Figuur 130 geeft de waarheidstabel van de Majority Voter weer. Tekstbron 12: Redundantie Redundantie (letterlijk: overbodigheid) is het zodanig meervoudig uitvoeren van onderdelen of systemen, dat het geheel goed blijft functioneren wanneer één of meer van deze onderdelen of systemen defect raken of verloren gaan. Het aanbrengen van meer dan één sensor is dus een geval van redundantie.

Stap 2: Van waarheidstabel naar formule Het recept is als volgt: Beschouw alleen die gevallen in de tabel in figuur 130 waarbij K ‘1’ is. K is bijvoorbeeld ‘1’ als a ‘1’ is en b ‘1’ is en c ‘1’ is (rij 7 van de tabel). Een formule voor K die bij deze rij hoort is:

K = a AND b AND c (17) K is ook ‘1’ a is ‘0’ en b = ‘1’ en c = ‘1’. (rij 3 van de tabel) Als a = ‘0’ dan is NOT a gelijk aan ‘1’. Een formule voor K die bij rij 3 hoort is:

K = NOT(a) AND b AND c (18) Er zij vier gevallen dat K de waarde ‘1’ heeft. K is ‘1’ in het geval 0,1,1 of in het geval 1,0,1 of in het geval 1,1,0 of in het geval 1,1,1. De volledige formule die bij de Majority Voter hoort: K = ((NOT a) AND b AND c) OR (a AND (NOT b) AND c) OR (a AND b AND (NOT c)) OR (a AND (NOT b) AND c) (19)

Stap 3: Het vereenvoudigen van de formule m.b.v regels uit de Boole- algebra Hoe eenvoudiger de formule, des te minder poorten er nodig zijn om een schakeling te realiseren. Voor het vereenvoudigen van formules maken we gebruik van enkele regels uit de zogenaamde Boole-algebra. De formule voor de Majority Voter bestaat uit vier ‘drietermen’. Het zal blijken dat deze formule vereenvoudigd kan worden tot drie ‘tweetermen’. In het vakgebied gebruikelijke symbolen In de digitale techniek worden voor het ontwerpen van schakelingen andere symbolen gebruikt voor de operatoren NOT, AND en OR.

• het symbool voor de NOT-operator is een streep boven de variabele: bijvoorbeeld: a .

• het symbool voor de AND-operator is “.”.

• het symbool voor de OR-operator is “+”. Volgorde van bewerkingen De volgorde voor de verschillende bewerkingen is:

NOT,

. AND + OR . Dus eerst de NOT-bewerking uitvoeren en dan de AND-bewerking en daarna de OR-bewerking. Deze volgorde kan worden gewijzigd met haken, zoals dat in de algebra ook gebeurt.

rij a b c K 0 0 0 0 0 1 0 0 1 0 2 0 1 0 0 3 0 1 1 1 4 1 0 0 0 5 1 0 1 1 6 1 1 0 1 7 1 1 1 1

Figuur 130: Waarheidstabel Majority Voter.

17 Voorbeeld:

(y.z)py.z p +=+ (20)

De AND-bewerking wordt eerst uitgevoerd. Moet eerst de OR-operatie worden uitgevoerd dan is de notatie: (p + y).z

De formule van de Majority Voter wordt met deze symbolen:

c . .b a c . b . a c . b . a c . b .a K +++= (21)

Buiten haakjes halen De formule kan vereenvoudigd worden door termen buiten haakjes te halen:

c) c.( b . a c . .b a c . b . a +=+ (22)

De bewering: Het regent of het regent niet is altijd waar dus:

'1' c c =+ (23)

De formule wordt dan:

.b.1 a c . b . a c . b .a 1 . b . a c . b . a c . b .a K ++=++= (24)

a.b.1 is gelijk aan a.b. De formule wordt dan:

.b a c . b . a c . b .a K ++= (25)

Absorptie wet De Boole algebra kent een aantal regels waarbij een term uit een formule kan worden weggelaten. Dit worden absorbtiewetten genoemd. Eén van de absorptiewetten luidt:

p y p y . p +=+ (26)

53 Opdracht Bewijs deze wet door de tabel in figuur 131 in te vullen. Deze wet passen we toe op de laatste twee termen van de formule voor K. Eerst halen we a buiten haakjes en daarna passen we de absorptiewet toe en werken de haakjes weer weg.

b . a c . a c . b . a b) .(c a c . b . a b) c . b( a. c . b . a .b a c . b . a c . b . a K ++=++=++=++=

(27) Passen we dit recept nog een keer toe op de eerste twee termen dan geldt voor K:

b . a a . c b . c a.b a) c.(b a.b a) . b .a( . c b . a c . a c . b .a K ++=++=++=++= (28)

Dit is gelijk aan:

c . b c . a .b a K ++= (29)

In figuur 132 is schakeling van de Majority Voter weergegeven.

y p p .y p p y . p + y + p

0 0 0 1 1 0 1 1

Majority Voter with AND’s and OR

Figuur 131: Tabel bij opdracht 53.

Figuur 132: Majority Voter schakeling.

18

Stap 4: De schakeling realiseren met behulp van NAND-poorten Halfgeleider chips met miljoenen transistoren zijn relatief eenvoudig te maken als deze chips een regelmatige structuur hebben. Dit wordt bereikt door op de chip slechts één type poort te zetten. Meestal wordt hiervoor de NAND-poort (NOT-AND-poort) gekozen omdat hiermee alle andere poorten kunnen worden gerealiseerd. Een NAND-poort is een AND-poort waarvan de uitgang is aangesloten op een inverter. NAND-poort

De NAND-poort heeft twee of meer ingangen. Als één van de ingangen ‘0’ is de uitgang ‘1’. Een NAND-poort met twee ingangen is hier weergegeven. Het ‘bolletje’ bij de uitgang Z geeft de NOT-operator aan. Formule:

Z = NOT( v AND w) (30) of

w. v Z = (31)

Wet van De Morgan Om de schakeling met alleen NAND-poorten te kunnen realiseren mag er geen OR-operator ( “+’-teken) meer in de formule voorkomen. Dit kunnen we bereiken met behulp van de volgende wet van De Morgan:

w . v wv =+ (32)

Deze wet geldt ook voor meer dan twee termen. Passen we de wet van De Morgan toe op de formule voor de Majority Voter dan wordt K:

c b. . c . a . b . a c . b c . a .b a K =++= (33)

De schakeling bestaat uit drie NAND-poorten met twee ingangen en één NAND-poort met drie ingangen. In figuur 135 is de poortschakeling voor de Majority Voter met NAND-poorten weergegeven. De figuren 132 en 135 hebben dus dezelfde waarheidstabel en zijn functioneel gezien gelijk aan elkaar.

10.3 Een basiscomponent maken vanuit een bestaande component met SIM-PL De NAND-poort met drie ingangen is niet aanwezig en zal dus geconstrueerd moeten worden.

We passen hiertoe de bestaande NAND-poort met twee ingangen aan tot een NAND-poort met drie ingangen.

v w Z 0 0 1 0 1 1 1 0 1 1 1 0

Majority Voter with NAND’s

Figuur 133: Waarheidstabel NAND-poort.

Figuur 134: Symbool van een NAND-poort.

Figuur 135: Majority Voter schakeling met NAND-poorten.

Figuur 136: Symbool van een NAND-poort met twee ingangen.

Figuur 137: Symbool van een NAND-poort met drie ingangen.

19

54 Opdracht

a Open m.b.v. het icoon (Open a new component) de file 2-inputNAND.xml in de folder OntwerpenH10. b Gebruik de ‘Save as’-optie om de file op te slaan als: 3-inputNAND.

Naam van de component c Geef de component de naam: 3-inputNAND door in het linker menu op ‘2-inputNAND’ te klikken en de tekst in het bijbehorende veld ‘name’ aan te passen. Extra ingang d Voorzie de component van een extra ingang x. Aanpassen van de lay-out e Pas de lay-out van de component aan door de rechthoek te vergroten en een lijn van ingang x naar de rechthoek te maken. Herprogrammeren van de component f Klik op ‘Internals’. De ‘delay’ blijft de waarde 1 houden. g Klik op ‘INPUT_CHANGE’ en ‘Edit Code’. h Vervang de bestaande code: Z = !(v && w); door de nieuwe code: Z = !(v && w && x); De poort is gereed. Toepassen van de component i Bouw de Majority Voter met NAND-poorten volgens figuur 135. Testen schakeling j Maak een nieuw werkblad om de schakeling te testen. Gebruik de optie Tools/Show Truth Table of de tabel overeen komt met figuur 130.

10.4 Schakelalgebra Boole algebra wordt ook wel schakelalgebra genoemd. In onderstaande voorbeelden wordt dit duidelijk gemaakt.

Figuur 138: Stap c in opdracht 54.

Figuur 140: Twee schakelaars in serie.

20 In figuur 140 zijn twee schakelaars in serie weergegeven. De lamp L brandt als van beide schakelaars de contacten zijn gesloten. We stellen het volgende: L = ‘1’ dan brandt lamp. L = ‘0’ dan lamp brandt niet. p = ‘1’ dan is contact gesloten. p = ‘0’ dan is contact niet gesloten. Hetzelfde geldt voor y. De formule die bij deze schakeling hoort is:

L = p . y (34) In figuur 141 zijn twee schakelaars parallel weergegeven. De lamp brandt als het contact van minstens één van beide schakelaars is gesloten. De formule die bij deze schakeling hoort is:

L = p + y (35) In figuur 142 is een serie-parallelschakeling weergegeven.

De twee schakelaars p en p zijn afhankelijk van elkaar. Als contact p

gesloten is dan is contact p open en andersom.

De formule die bij deze schakeling hoort is:

p y . pL += (36)

Tabel 9.2 leverde het bewijs dat deze formule vereenvoudigd kan worden door het toepassen van de absorptiewet:

p y p y . p +=+ (37)

Uit de volgende beweringen volgt een tweede bewijs van bovengenoemde absorptiewet: Als p = ‘1’ dan brandt de lamp. De andere tak van de schakeling kan daar niets aan veranderen.

Als p = ‘0’ dan is het contact van p gesloten en het contact van p is open. Of de lamp brandt wordt

in dit geval bepaald door y.

Conclusie: De schakelaar p is dus overbodig en kan worden weggelaten.

Figuur 141: Twee schakelaars parallel.

Figuur 142: Twee schakelaars in serie.

21

10.5 Vier ontwerpopdrachten: pas je kennis toe in de praktijk

Het ontwerpen van een “hotelschakeling” met NAND-poorten In figuur 144 is een zogenaamde “hotelschakeling” weergegeven. Met deze schakeling kun je met twee “wisselschakelaars” het licht op twee plaatsen aan- of uitschakelen. Deze schakeling wordt vaak toegepast bij trapportalen en in slaapkamers.

55 Opdracht Stap 1: Van probleem naar waarheidstabel In de getekende stand zijn p en y beide ‘0’. a Geef van de schakeling van figuur 144 de waarheidstabel.

Stap 2: Van waarheidstabel naar formule b Pas het recept toe dat is gebruikt voor de Majority Voter. Het resultaat is een formule bestaande uit twee tweetermen. L = …….…+……..… c Met welke poort komt deze formule overeen? …. Stap 3: Vereenvoudigen van de waarheidstabel Het is niet mogelijk deze formule te vereenvoudigen. Stap 4: De schakeling realiseren met behulp van alleen NAND-poorten d Gebruik De Morgan om de OR-operator om te zetten in een AND-operator. L = …….… Je hebt geen inverter ter beschikking. e Hoe kun je een signaal inverteren met een NAND-poort met twee ingangen? Wat moet je doen met de tweede ingang van de poort? Er zijn twee oplossingen mogelijk. f Geef je ontwerp weer in figuur 145.

p y L 0 0 0 1 1 0 1 1

Figuur 143: Waarheidstabel voor opdracht 55. Figuur 144: Hotelschakeling.

Figuur 145: Leeg schema bij opdracht 55 f.

22

Het herontwerpen van de multiplexer uit hoofdstuk 9 met het ic 7400 56 Opdracht Als tweede opdracht wordt de multiplexer uit hoofdstuk 9 ontworpen met NAND-poorten. Stap 1: Van probleem naar waarheidstabel

De stand van de schakelaar wordt bepaald door ingang S. Als S = ‘0’, wordt de waarde op ingang b doorgelaten naar uitgang Y. In de tabel in figuur 146 zijn de bijbehorende waarden voor uitgang Y ingevuld. Als S = ‘1’, wordt de waarde op ingang a doorgelaten naar Y. a Vul in figuur 146 de waarde voor Y in als S = ‘1’.

Stap 2: Van waarheidstabel naar formule b Pas het recept toe dat is gebruikt voor de Majority Voter. Het resultaat is een formule bestaande uit vier drietermen. Y = …….…+……..…+…..……+…..….. Stap 3: Vereenvoudigen van de waarheidstabel Het is mogelijk deze vier termen ‘op een slimme manier’ twee aan twee bij elkaar te nemen. Door ‘buiten haakjes te halen’ blijven er slechts twee tweetermen over. c Schrijf de vereenvoudiging van de formule op. Y = … d Komt deze formule overeen met die van de multiplexer uit hoofdstuk 9? Stap 4: De schakeling realiseren met behulp van NAND-poorten e Gebruik De Morgan om de OR-operator in de formule om te zetten in een AND-operator. Y = …… f Ontwerp de bijbehorende schakeling met NAND-poorten en geef deze weer in figuur 148. Stap 5: De schakeling realiseren met behulp van het ic 7400 Ic is de afkorting van integrated circuit. Het type 7400 bevat vier NAND-poorten die allemaal twee ingangen hebben. De 7400 was het eerste ic uit een hele reeks waarmee vanaf de jaren 70 van de vorige eeuw schakelingen worden gebouwd. Het ic heeft 14 aansluitpinnen, 12 voor de vier poorten en twee voor de voeding (pin 7 en pin 14). Het ic is afgebeeld in figuur 149. g Realiseer de schakeling met de SIM-PL-editor. Gebruik de component 7400 uit de folder “OntwerpenH10”. h Test met SIM-PL-executer de schakeling en geef in figuur 149 het “bedradingschema” van de schakeling weer.

S a b Y 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 0 1 1 1 0 1 1 1

Figuur 146: Waarheidstabel multiplexer.

Figuur 147: Een multiplexer.

Figuur 148: Leeg schema bij opdracht 56 f.

23

Foutdetector met pariteitbit Pariteit is het even of oneven zijn van een getal. Pariteit wordt gebruikt bij het versturen van gegevens tussen computers. Er wordt aan ieder datawoord dat wordt verzonden een extra bit toegevoegd, het zogeheten pariteitbit P. Dit extra bit is bedoeld voor foutdetectie. We onderscheiden twee vormen van pariteit: even of oneven. Bij even pariteit is het aantal enen in een woord dat verzonden wordt even. Dit aantal enen is inclusief het pariteitbit. Bij oneven pariteit is het aantal enen oneven. In figuur 150 is een schakeling afgebeeld die aan de zenderkant een pariteitbit toevoegt aan drie bits data (a, b en c).

Figuur 149: Schema IC SN7400.

Figuur 150: Schakeling die pariteitbit toevoegt.

24 57 Opdracht a Vul onderstaande waarheidstabel behorende bij figuur 150 in. a b c Y = a XOR b P = (a XOR b) XOR c Totaal aantal

enen in a, b en c

Totaal aantal enen in A, B, C en P

0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

Beantwoord de volgende vragen: b Het aantal ‘enen’ in a, b en c is even is. Wat is in dat geval P? c A, B, C en het pariteitbit P wordt verzonden naar een ontvanger (Receiver). Is in dit geval sprake van even of oneven pariteit? d Ontwerp voor deze ontvanger een schakeling die vaststelt of tijdens het datatransport een fout is opgetreden. De uitgang ‘Data NOT OK’ moet in dat geval ‘1’ worden. Geef je ontwerp weer in figuur 152. e Bouw de Parity Checker met de SIM-PL-editor en test deze schakeling met de SIM-PL-executer. Gebruik hierbij de ‘optie’ Truth Table. f Bouw en test een complete zend-ontvang-schakeling met controle van de pariteit door de schakelingen in figuur 150 en 152 in één enkele schakeling onder te brengen. Simuleer een draadbreuk tussen zender en ontvanger door datalijn B weg te laten (deze lijn is in figuur 153 gestippeld weergegeven). Beschrijf bij welke gegevens het verzenden ervan niet goed gaat. De vraag anders gesteld: in welke gevallen is het Data NOT OK-bit ‘1’?

Figuur 151: Waarheidstabel voor opdracht 57 a.

Figuur 152: Leeg schema bij opdracht 57 d.

Figuur 153: Schema bij opdracht 57 f.

25 Tekstbron 13 Wat gebeurt er als er een draadbreuk optreedt? Voor de SIM-PL-simulator is een draadbreuk hetzelfde als een niet-aangesloten ingang en deze gedraagt zich alsof er een ‘1’ op staat. Digitale schakelingen gebouwd met ic’s uit 7400 TTL-serie (TTL = Transistor-Transistor Logica) en 7400 LSTTL-series vertonen ditzelfde gedrag. Transmissiefouten van meerdere bits Stel: er ‘vallen twee bits om’ bij het transporteren van gegevens van de zender naar de ontvanger. Dat wil zeggen: twee van de vier bits die worden verzonden hebben een andere waarde gekregen als ze bij de ontvanger aankomen. g Worden twee fouten door de pariteitcontrole gedetecteerd? Antwoord ……, omdat …….

Veerman, wolf, kool en geit Probleemstelling:

Een veerman krijgt de opdracht om met een wolf, een kool en een geit een rivier over te steken. De boot is echter zo klein dat de veerman slechts één van de drie tegelijk kan overzetten. Probleem is echter dat als de geit met de wolf zonder veerman op één van de oervers achterblijft, de geit door de wolf wordt opgegeten. Ook het samenzijn van geit en kool zonder veerman gaat mis. Nu wordt de kool door de geit opgegeten. Natuurlijk gaat het helemaal mis als wolf, kool en geit zonder veerman samen op één oever verblijven. 58 Opdracht a Geef een waarheidstabel van het probleem weer. Ken aan veerman, wolf, kool en geit een ‘0’ toe als zij zich op de linker oever bevinden en een ‘1’ als ze de rechteroever zijn. b Ontwerp met de SIM-PL editor een combinatorische schakeling die er voor zorg draagt dat een ‘foute combinatie’ wordt gesignaleerd. Het ontwerp mag alleen NAND-poorten bevatten. Je hebt o.a. een NAND-poort met vier ingangen nodig. Deze is niet in de folder OntwerpenH10 aanwezig. Je kunt hem maken door de NAND-poort met twee ingangen van extra ingangen te voorzien en de ‘code’ van de poort

aan te passen (zie paragraaf 10.3). c Organiseer een veilige overtocht door een opeenvolging van juiste codes aan de schakeling aan te bieden. Schrijf hiertoe een programma. Gebruik hierbij het Window “Program Editor”. d Lever een document in waarvan de inhoud bestaat uit:

• een waarheidstabel (16 rijen),

• de bijbehorende uitdrukking in termen van Boole-algebra,

• de vereenvoudiging van deze uitdrukking,

• een afdruk van het schema en

• het “programma” dat een veilige overtocht regelt.

Formule: gkwvgkwvgkwvgkwvgkwvgkwvF .................. +++++= (38)

gkwvgwvgwvgkwvgkwvkkgwvkkgwvgkwvF .............).(..).(..... +++=+++++=

(39) Passen we een absorptiewet toe op de eerste twee termen van F dan geldt:

v w k g F 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0

Figuur 154: Waarheidstabel bij opdracht 58.

26

wgvkgvwkgvwkwgvgwvgkwv ....).(.)..(...... +=+=+=+ (40)

Doen we dat ook met de laatste twee termen van F dan geldt:

kgvwgvkwgvkwwgvgkwvgwv ....)..(.)...(...... +=+=+=+ (41)

Plakken we de twee delen weer aan elkaar dan wordt F:

wgvkgvkgvwgvF ........ +++= (42)

De implementatie vindt plaats met NAND-poorten. We passen daarom de wet van De Morgan toe om de ‘+’-operator om te zetten naar een ‘.’-operator:

.g.wv . .g.kv . k.g v.. w.gv......... =+++= wgvkgvkgvwgvF (43)

Voor de oplossing hebben we 4 inverters, 4 NAND-poorten met drie ingangen en één NAND-poort met vier ingangen nodig. De inverters beschouwen we als NAND-poorten met één ingang. Opmerking: er zijn ook andere oplossingen mogelijk

Figuur 155: Schema bij opdracht 58.

27

Bijlagen

Bijlage 1: URL 5 Universiteit van Amsterdam, SIM-PL www.science.uva.nl/amstel/SIM-PL/

Bijlage 2: Begrippenlijst

Hoofdstuk 9

Bit. Afkorting van: 'binary digit'. Deze term duidt op een beperking tot twee onderscheiden situaties. Gewoonlijk worden deze aangeduid met de symbolen '0' en '1'. Inverteren. Van logische waarde wisselen. Logische schakeling. Schakeling (ook wel circuit) die is samengesteld uit poorten. Multiplexer. Schakeling met minimaal twee gegevensingangen, één of meer selectie-ingangen en één uitgang. De code op de selectie-ingang(en) bepaalt welke van de gegevensingangen wordt doorverbonden met de uitgang. Een selectie-ingang wordt ook wel een adresingang genoemd. Poort. Logische schakeling met één of meer ingangen en één uitgang, waarbij een eenduidig verband bestaat tussen de ingangswaarden en de uitgangswaarde. Waarheidstabel. Beschrijft de relatie tussen de waarden op de ingangen en de uitgang(en) van een poort of een logische schakeling.

Hoofdstuk 10

NAND-poort. Not-AND-poort. De uitgang is ‘1’ als één der ingangen ‘0’ is. Pariteit. Het even of oneven zijn van een getal. Pariteit wordt gebruikt bij het oversturen van gegevens tussen computers. Er wordt aan ieder datawoord een extra bit toegevoegd, het zogeheten pariteitbit. Dit extra bit is bedoeld voor foutdetectie. Pariteitbit. De eenvoudigste foutdetecterende code voor digitale gegevens. Redundant systeem. Meervoudig uitgevoerd systeem dat blijft functioneren wanneer één of meer van zijn onderdelen of systemen defect raken of verloren gaan.