Basiskennis digitale techniek

basiskennis digitale techniekRond 1970 begon mijn belangstelling voor digitale techniek maar dit stond in die tijd nog in de kinderschoenen. De eerste digitale rekenmachines waren net op de markt en waren zeer duur en computers waren machines die enorm groot en onbetaalbaar waren. In deze tijd kocht ik mijn eerste boekje over digitale techniek en hier stond duidelijk de basis van nullen en enen, and, or en not poort en de werking van flipflops en counters. Alles nog met weerstanden, diodes en transistors opgebouwd. Het was grappig dat deze kennis mij heel nuttig gebleken is in mijn hele loopbaan. Op de MTS bouwden we nog flipflop schakelingen met transistors en schakelden deze in serie om een digitale teller te maken. Ook moesten we nog binaire logica leren en complexe digitale logica schema's uitwerken en vereenvoudigen. Aan de andere kant van de wereld waren op dat moment knappe koppen de eerste microprocessors aan het ontwikkelen met dezelfde technologie. Mijn eerste computers waren echte zelfbouwprojecten en later heb ik jarenlang meegewerkt aan het ontwikkelen van computer hardware en interfaces. Telkens kwam alles weer neer op basiskennis digitale techniek. Aangezien er tegenwoordig niet zoveel Nederlandstalige documentatie over dit onderwerp meer te vinden is, voel ik me geroepen om dit toch weer te delen. Vriendelijke groet, Hein Pragt.


Elektrische nullen en enen

basiskennis digitale techniek nullen en enenDigitale schakelingen werken met nullen en enen, waarbij we bijvoorbeeld kunnen zeggen dat een positieve spanning een 1 is en geen spanning een 0. Als voorbeeld kunnen we een batterij met een schakelaar en een lamp nemen. Wanneer de schakelaar open is zal er geen stroom lopen en zal de lamp niet branden, dit kunnen we als 0 of laag definiëren. Wanneer we de schakelaar sluiten zal er stroom gaan lopen en de lamp gaan branden, dit kunnen we als 1 of hoog definiëren. Door de schakelaar te openen of te sluiten kunnen we dus logische nullen en enen genereren. Door meerdere lampen (leds) en meerdere schakelaars te combineren kunnen we dus al een digitale schakeling bouwen. Vaak gebruiken we ook nu nog vaak een led om een logisch weer te geven in een elektronische schakeling.

basiskennis digitale techniek ttl niveauIn de praktijk werkt men meestal met een spanning onder en bepaalde waarde als een 0 en een spanning boven een bepaalde waarde als een 1. Om het verschil duidelijk te laten zijn zit ertussen deze drempelwaarden een zogenaamd verboden gebied dat niet gebruikt mag worden. Als voorbeeld gebruiken we hier de TTL logica die op een voedingsspanning van 5 V werkt. Een TTL ingang herkent een logische 1 bij een spanning van tenminste 2,0 V en een logische 0 bij een spanning van ten hoogste 0,8 V. Het gebied tussen 0.8 en 2.0 volt is het zogenaamde verboden gebied. Oudere computers waren vaak voor een groot deel uit deze TTL chips opgebouwd. Een ander type chips zijn de CMOS chips, deze hebben een ruimere voedinspanning en werken met 0 als 0 tot 1/3 van de voedingspanning en 1 vanaf 2/3 van de voedingspanning. Ook hier is het gebied tussen 1/3 en 2/3 van de voedingspanning het verboden gebied. We kunnen dus door middel van elektrisch spanning (en hierdoor dus elektrische stroom) een logische waarde 0 of 1 maken.

Er zijn maar drie basiscomponenten waarmee alle digitale schakelingen gemaakt kunnen worden, inclusief complexe microprocessoren en dat zijn de AND, de OR en de NOT poort. Deze die componenten zal ik al eerste beschrijven. Ook laat ik het logische symbool, de waarheidstabel (tabel met invoer waarden en bijbehorende uitvoer waarden) zien en het nieuwe officiële schema symbool waar ik helaas (net als velen met mij) niet aan kan wennen. Vroeger gebruikten we in schematekeningen voor alle poorten het logische symbool waardoor je in één oogopslag kon zien hoe de schakeling in elkaar zat, met de nieuwe symbolen moet ik eerst in het symbool kijken wat het doet en dat is niet zo duidelijk. Ik denk dat veel mensen het met mij eens zijn want ook in veel nieuwe schema's zie ik nog steeds de oude logische symbolen. Maar het is goed om ook de nieuwe symbolen te kunnen lezen.


De AND poort

De AND poort bevat een aantal ingangen en één uitgang, alleen wanneer ALLE ingangen hoog (1) zijn zal de uitgang ook hoog (1) zijn. In een formule schrijven we de AND poort als: X = A .B of X = AB. Hier onder staan het oude schema symbool (het logische symbool), de waarheidstabel en als laatste het officiële IEC symbool.

and poort
and poort waarheidstabel

De OR poort

De OR poort bevat een aantal ingangen en één uitgang, wanneer ÉÉN of meer ingangen hoog (1) zijn zal de uitgang ook hoog (1) zijn. In een formule schrijven we de OR poort als: X = A + B. Hier onder staan het oude schema symbool (het logische symbool), de waarheidstabel en als laatste het officiële IEC symbool.

or poort
or poort waarheidstabel

De INVERTER poort

De INVERTER (omkeer) poort bevat één ingang en één uitgang, wanneer de ingang hoog (1) is zal de uitgang laag (0) en wanneer de ingang laag (0) is zal de uitgang hoog (1) zijn. In een formule schrijven we de INVERTER poort als: A = X. Hier onder staan het oude schema symbool (het logische symbool), de waarheidstabel en als laatste het officiële IEC symbool.

inverter poort
inverter poort waarheidstabel

Nu zou ik eigenlijk duizend keer moeten schrijven, "Ik mag geen halve waarheden verkondigen!", want er zijn nog twee veelgebruikte comnponenten, die eigenlijk een samenvoeging van twee van de bovenstaande comnponenten zijn, maar die zo vaak gebruikt worden dat ze een eigen symbool hebben. Ook komen deze componenten als een (samengevoegd) component voor in IC's.


De NAND poort

De NAND (not and) poort bevat een aantal ingangen en één uitgang, alleen wanneer ALLE ingangen hoog (1) zijn zal de uitgang laag (0) zijn. In een formule schrijven we de NAND poort als: X = A .B. Hier onder staan het oude schema symbool (het logische symbool), de waarheidstabel en als laatste het officiële IEC symbool.

nand poort
nand poort waarheidstabel

De NOR poort

De NOR (not or) poort bevat een aantal ingangen en één uitgang, wanneer alle ingangen laag (0) zijn zal de uitgang hoog (1) zijn. In een formule schrijven we de NOR poort als: X = A + B. Hier onder staan het oude schema symbool (het logische symbool), de waarheidstabel en als laatste het officiële IEC symbool.

nor poort
nor poort waarheidstabel
nor poort IEC symbool

Met de combinatie van deze logische componenten kunnen we elke complexe logische schakeling (zoals optel schakelingen e.d.) maken. In de bovenstaande voorbeelden hebben de poorten slechts twee ingangen, dit aantal ingangen kan ook meer zijn, er zijn zelfs IC's met AND poorten met wel 8 ingangen. Ook kunnen we met twee AND poorten met elk twee ingangen een AND poort met drie ingangen realiseren. Kijken eens goed of u dit begrijpt, dit is essentieel om complexe digitale schakelingen te kunnen begrijpen. Dit lijkt wat omslachtig maar vaak hebben IC's bijvoorbeeld zes AND poorten aan boord en is het gebruiken van twee AND poorten met twee ingangen efficiënter en goedkoper dan het weer bijplaatsen van een extra IC met AND poorten met drie ingangen.


De 3 x AND poort

Hier is een voorbeeld van een enkele AND poort met drie ingangen en de vervanging met twee kleinere AND poorten met elk twee ingengen.

3 input and poort
3 input and poort waarheidstabel

De EXCLUSIVE OR poort

De volgende complexe poort is de Exclusive OR poort. Dit is een redelijk complexe bouwsteen die ook u ook als IC met een aantal van deze bouwstenen kun kopen. Deze exclusive OR functie is de belangrijkste bouwsteen van een schakeling die twee binaire getallen kan optellen. De poort geeft alleen een hoog (1) op de uitgang als slechts één van de ingangen hoog (1) is. Wanneer beide ingangen gelijk zijn, is de uitgang laag (0). In het IEC symbool blokje wordt deze poort aangegeven met een = teken wat een beetje onlogisch overkomt. Maar gezien mijn kritiek op deze tekens sluit dit er weer mooi op aan. De XOR poort heet ook wel logisch verschil (logical difference) maar ook "half adder" waarmee een opteller zonder carry wordt bedoeld. Dit is een voorzetje op de echte optel schakeling die we hierna gaan bespreken.

xor poort
xor poort waarheidstabel

Ik gaf eerder al aan dat dit soort complexe poorten op te bouwen (en meestal echt intern zo opgebouwd) zijn met de drie standaard logische bouwstenen, de AND de OR en de INVERTER. Hier onder staat het schema van een XOR poort maar dan opgebouwd met de drie standaard logische poorten.

xor poort opbouw

De logische ADDER

We gaan nu een stuk complexer naar een basisbouwsteen van een processor in de vorm van een opteller van twee 4 bits getallen. Het optellen van twee bits is relatief eenvoudig , een 0 plus een 0 is 0, een 0 plus een 1 is 1 en een 1 plus een 1 is 10. Dit is dus een 0 met 1 onthouden (carry) en deze carry moeten we dus bij het optellen van de volgende twee bits weer erbij tellen. De volgende logische schakeling kan twee bits bij elkaar optellen en de carry in meetellen en een carry uit genereren. Bekijk deze logische schakeling eens goed en probeer deze te doorgronden voor u verder leest.

adder logische schakeling
adder waarheidstabel

Wanneer we vier van deze blokken samenvoegen kunnen we een vier bits opteller maken waarbij we de carry telkens doorgeven aan het volgende blok. Voor hele grote binaire getallen is dit nogal traag omdat de carry in bepaalde gevallen door alle poorten moet lopen, daarom worden in een echte processor vaak meerdere 4bit adders naast en achter elkaar gezet. In een processor kijkt men niet op een logisch poortje meer of minder, de snelheid is meestal belangrijker.

4 bit adder logische schakeling

De MULTIPLEXER

Nog een veelgebruikt complexe logische schakeling (die ook als standaard IC verkrijgbaar is) is een multiplexer. Deze worden binnen een processor ook veel gebruikt. Wanneer we twee invoer lijnen hebben en we willen om en om naar een van de twee sets kijken dan hebben we een soort omschakelaar nodig. Door middel van de select lijn kiezen we of we de eerste set ingangen met de uitgangen doorverbinden of de twee set ingangen. Zie hier ook het nuttige gebruik van een inverter in de select lijn die ervoor zal zorgen dat altijd één van beide set ingangen geselecteerd zal zijn, en nooit beide tegelijk. Dit blok komt ook voor als 8 bit multiplexer, alleen neemt het aantal aansluitpinnen enorm toe. We kunnen ook twee 4 bit multiplexers parallel zetten om een 8 bits multiplexer te maken.

2 bit multiplexer

De DECODER

Nog een veel voorkomende functie is de decoder die veel voorkomt binnen een processoren. Een voorbeeld is een twee naar vier decoder. Met twee bits zijn vier verschillende combinaties bits mogelijk, wanneer we deze vier combinaties willen vertalen naar vier uitvoerlijnen, kunnen we dit door middel van een decoder doen. Een ander bekend voorbeeld is de vier bit naar zeven segment decoder (ook als enkelvoudig IC verkrijgbaar) waarmee een vier bit waarde naar een cijfer op een zogenaamd zeven segment display omgezet kan worden.

2 naar 4 bit decoder

Voorbeeld zeven segment display.

zeven segment display cijfers
zeven segment decoder

 

Boeken over digitale techniek

boekboek bestellenDigitale elektronica vormt het hart van de moderne techniek. In dit boek worden basisschakelingen met poorten, flipflops en tellers uit de CMOS-4000-familie gebruikt om de beginselen van de digitale elektronica te verduidelijken. Van elk van de vijftig beschreven experimenten worden een volledig schema en een gedetailleerde componentenopstelling (op experimenteerboard) gegeven. De eerste stappen op het terrein van de digitale elektronica kunnen het beste aan de hand van ‚tastbare‘ experimenten worden gezet; en als het even kan moet het uivoeren van die experimenten niet alleen leerzaam zijn, maar ook leuk. Veel van de in dit boek beschreven schakelingen kunnen ook in de dagelijkse praktijk worden toegepast. En zodra u de nodige ervaring hebt opgedaan, kunt u voor elke taak de beste, eenvoudigste en goedkoopste digitaal-elektronische oplossing vinden. Dit boek richt zich vooral tot studenten en hobby-elektronici die in de digitale elektronica geïnteresseerd zijn en al degenen die met de digitale besturingstechniek te maken (gaan krijgen. De kennis die dit boek aanreikt, vormt de basis voor verdergaande experimenten en projecten op het gebied van microcontrollers en programmering. Voor dit boek is een 50-delige starterkit samengesteld waarmee de lezer direct aan de slag kan met de beschreven experimenten. Deze kit is verrkijgbaar via de website van de uitgever (www.elektor.nl).


Last update: 05-03-2015
 Binnen dit thema



 Meer thema's


 Lees hier de privacyverklaring van deze site.

Disclaimer.

Hoewel de heer Hein Pragt de informatie beschikbaar op deze pagina met grote zorg samenstelt, sluit de heer Pragt alle aansprakelijkheid uit met betrekking tot de informatie die, in welke vorm dan ook, via zijn site wordt aangeboden. Het opnemen van een afbeelding of verwijzing is uitsluitend bedoeld als een mogelijke bron van informatie voor de bezoeker en mag op generlei wijze als instemming, goedkeuring of afkeuring worden uitgelegd, noch kunnen daaraan rechten worden ontleend. Op de artikelen van de heer Pragt op deze Internetsite rust auteursrecht. Overname van informatie (tekst en afbeeldingen) is uitsluitend toegestaan na voorafgaande schriftelijke toestemming van de rechthebbende. Voor vragen over copyright en het gebruik van de informatie op deze site kunt u contact opnemen met: (email: mail@heinpragt.com). Dit is mijn