Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 73 reacties

Een man uit Cambridge heeft de eerste drie modules gereed van een processor die zo groot wordt dat hij een complete wand beslaat. De man wil de werking van een processor inzichtelijk maken door hem extreem groot te maken.

De man, James Newman, begon vorig jaar met de bouw van de processor, die, eenmaal gereed, een oppervlakte van 14 bij 2 meter moet innemen. De 'megaprocessor' bestaat uit verschillende modules, die elk een groot frame beslaan en een onderdeel van de processor vormen.

In februari wist hij de State & Status-module met onder andere het statusregister af te ronden, gevolgd door de alu in mei. Zondag slaagde hij erin de general purpose registers gereed te krijgen. Nu moet hij onder andere nog werken aan de modules met special purpose registers, de decodeersectie, de input-output, ram en rom, allemaal op grote schaal. Eigenlijk hoopte Newman zijn project eind 2014 al af te kunnen ronden, maar de nieuwe deadline is op 'zomer 2015' gezet.

De drijfveer van de technicus is dat hij wil laten zien hoe computers precies werken. "Probleem is dat we niet kunnen krimpen om erin rond te lopen, maar we kunnen omgekeerd wel dat ding groot genoeg maken", schrijft hij. Bovendien wil hij met leds zichtbaar maken hoe de data zich voortbeweegt in de megaprocessor.

De processor gaat uit ongeveer 14.000 transistors bestaan, minder dan de 8086 van Intel, die in 1976 29.000 transistors op een oppervlakte van 33mm² wist te proppen. De 16bit-megaprocessor, met een externe bus van 8bit breed, krijgt verder een ram- en prom-hoeveelheid van 256 bytes. Er is een 500W-voeding nodig voor de aandrijving, maar vooral de 3500 leds zouden flink wat energie nodig hebben.

MegaprocessorMegaprocessorMegaprocessorMegaprocessorMegaprocessorMegaprocessorMegaprocessorMegaprocessor

Moderatie-faq Wijzig weergave

Reacties (73)

Heel gaaf project dit. Ondanks dat ik van computers redelijk weet hoe en wat, is de interne werking van een processor mij (op dit niveau in ieder geval) een raadsel. Ik heb dan ook vaak naar bijv. complete 8-bit CPU's gebouwd in Minecraft gekeken op YouTube. Lijkt me erg gaaf om dit een keer te bewonderen!
Hier is een fimpje wat een goede uitleg geeft hoe een cpu werkt, welke onderdelen het heeft en hoe het samenwerkt met ram in IO:
https://www.youtube.com/watch?v=cNN_tTXABUA
Het prachtige aan Tweakers blijft dat niet alleen de nieuwsartikelen leerzaam blijken, de comments zijn dat eveneens. Een 8-bit CPU in Minecraft nagebouwd? Ik had het idee dat dat spel een soort Lego voor gevorderden was :+

Ik ga maar eens wat googlen vermoed ik.
Absoluut! Hierbij de link (het ziet er wel uit alsof iemand hier jaren aan heeft gewerkt, zoveel "steentjes"): https://www.youtube.com/watch?v=HPU0p8sIAUI

Er zijn er overigens nog veel meer gebouwd, als je op YouTube zoekt op "Minecraft 8 bit computer".

[Reactie gewijzigd door adamvansanten op 22 juni 2015 14:29]

Wij maakte deze machines vroeger binnen minecraft als een soort sport. De server waar ik op zat, the Redstone Development Foundation, zat vol met dit soort machines.
Helaas is de community wat verminderd nadat de RDF een doorstart maakte als ORE (Open Redstone Foundation). Veel kennis verloren doordat leden die een lange tijd lid waren (denk jij en ik ;) ) wel wat nuttigers hadden te doen dan dagen lang minecraften.

Maar idd, CPU's, ALU's, FPU's, Program counters, Registers, RAM, hele instructiesets. Het was allemaal mogelijk in MC.

EDIT: Voor degene die het interessant vinden, link naar een van de grote redstone community's: http://openredstone.org. Indien je een MC account heb kan je even inloggen op de server en gewoon rondkijken en vragen stellen. Weliswaar engels maar een van de betere wanneer het gaat om Redstone machines.

[Reactie gewijzigd door Yariva op 22 juni 2015 15:27]

Komt mijn MC account toch weer eens van pas.
Vroeger zag ik dit soort 'computers' in minecraft ook wel. Ik heb ook geprobeerd er zelf een paar te bouwen, met weinig succes.

Misschien gaat het me nu, 3 jaar later, wel lukken! :P

Tegenwoordig is heel MC gebaseerd op Commandblocks. Jammer. :-(
Kijk aan, een proof of concept dat wij ook misschien in een simulatie leven ;)
Lol @ vroeger.. zo oud is MC nog niet hoor.
Minecraft Infdev (toen werelden oneindig werden) kwam rond deze tijd 2010 uit. Dat is alweer 5 jaar geleden.
Daarom. Nauwelijks "vroeger" ;)
Sorry ik ben bijdehand:
1vroe·ger (bijwoord) 1in voorbije tijden; eertijds
Voor pc spellen vind ik dit zeker wel vroeger, een spel dat al 5 jaar lang wordt door ontwikkeld en je blijft maar updates krijgen terwijl je er maar één keer 10, of 20 euro aan hebt besteed. Dat is uitzonderlijk lang en daarom mag het best vroeger genoemt worden:)
Wat heeft het ontwikkelen en het uitgeven van geld te maken met het feit of iets vroeger is of niet..
Persoonlijk vind ik alles ouder dan 10 jaar pas vroeger.
Er zit inderdaad en heleboel werk in, maar het meeste werk is het ontwerp. Het 'bouwen' word denk ik gedaan in programma's die MineCraft-savegames kunnen editen.
Ontopic: wauw, dit is eigenlijk perfect voor het leren hoe een CPU nu eigenlijk precies in elkaar steekt!

Offtopic: in Minecraft heb je het zogenaamde "Redstone" wat eigenlijk een "kabel" is. Redstone kan 2 statussen hebben:
- uit = 0
- aan = 1

Eigenlijk zoals de bits die we normaal in computertaal gebruiken. Je kunt door middel van Redstone Torches enkele logic gates maken (and/or/nor etc.) alsmede de belangrijke "flipflops" die als geheugen dienen.

Er zijn heel efficiënte designs waarbij een 8bit adder op relatief kleine oppervlakte gebouwd kan worden, je zit met 8 bit binair aan maximaal het decimale getal (0+1+2+4+8+16+32+64+128=) 255
Of die getallen natuurlijk vermenigvuldigen, maar daar zijn ingewikkeldere ALU's voor nodig.

Je zult op video's van die gigantisch lange en brede banen met Redstone zien, iedere baan is 1bit, 8 bit is dus 8 breed, 64 bit is (vrijwel onmogelijk) 64 breed maal 2 omdat je 1 blok tussenruimte moet laten.

Ik zal ongetwijfelt fouten hebben gemaakt, de laatste keer dat ik een 4bit heb gebouwd is alweer een jaar of 2 geleden. Maar, Minecraft is in dat opzicht wel een leuke manier om dingen te leren.
Zeer uitgebreide uitleg kuusj98, dankjewel. Voor mij is het allemaal iets te complex, maar ik heb dan ook een gebrekkige wiskundige achtergrond (VWO A2).
Hoe moet ik mij nu voelen met vmbo>mbo en nu hbo ?
als computers interessant zijn zou ik zeker aanraden een beetje binair rekenen te gaan leren, en dan word een hexeditor ook een stuk logischer (en hopla, voor je het weet ben je games "patchen")
Het was absoluut niet denigrerend of uit de hoogte bedoeld CodeAsm, meer dat ik zelf niet extreem technisch opgeleid ben (en op HTML na van programmeren bijvoorbeeld ook weinig snap). Verder heb ik in mijn middelbare schooltijd wel een beetje met hexeditors enzo gespeeld, maar ik start toch liever een game of Photoshop op ;)
;) Is ok, ik had het iets anders kunnen verwoorden.
Wat ik eigenlijk had willen zeggen is dat het niet heel moeilijk is om computers dieper te leren begrijpen. Het is vooral de interesse die je mag hebben, en Minecraft of gamemaker kunnen een eventuele drempel een heel stuk verlagen.

Html mag dan eigenlijk een lay-out taal zijn, het is een heel klein stapje in de richting van programmeren. Want sommige effecten of mogelijkheden krijg je alleen voor elkaar met javascript of php (of andere) en die leer je dan kennen. Je gaat eens kijken hoe die werken en of dat nu moeilijk is of niet. Of in iedergeval, terug in 1997 toen ik mijn eerste html toverde, kwam ik javascript tegen en wilde er wel meer van weten.

En voor kinderen (en heel heel mischien sommige hier, voornamelijk door de simpelheid en kleurtjes... Kleurtjes :3 Scratch https://scratch.mit.edu/ )
Inderdaad niet uit de hoogte, eerder zelfspot?
Overigens is HTML geen programmeertaal.
@adamvansanten ik zou je willen aanraden om GameMaker (Studio) ergens goedkoop te zoeken. Je kan erin zelf games "tekenen" of je photoshopjes inladen. En ze daarna met functie blokken laten "leven". Wanneer je dat door hebt begin je zelf (uit noodzaak of interesse) met de ingebouwde GML programmeertaal, die vele malen begrijpelijker is dan hex :')
Ik ga eens kijken FuaZe, bedankt voor de tip.
Op Coursera is er een course "From Nand to Tetris", waarbij je de basis leert hoe een CPU werkt. Erg interessant en zeker aan te raden als je meer over de werking van CPU's wilt weten!
Ja aanrader. Die laat ik altijd los op mijn betere VWO 6 informatica leerlingen.
Je begint met de NAND operator en bouwt zo langzaam alle logische poorten, complexere schakelingen zoals adders en geheugens en uiteindelijk een ALU en processor.

Als je deze af hebt ga je aan de slag met de machinecode van deze zelfgebouwde computer. Hier komen dan compilers, asseblers etc. aan bod. Een mooie dwarsdoorsnede van alle abstractielagen van de moderne computer.

Alle info op http://www.nand2tetris.org/
Bedankt voor de tip, dat ga ik zeker even Googlen!
Inderdaad een onwijs gaaf project, zeker als je bedenkt dat we die-shrinks tegenwoordig als de normaalste zaak van de wereld zien maar eigenlijk geen idee hebben hoe het in realiteit werkt en welke technologische uitdagingen er liggen op dit gebied.
Super dat Tweakers ook hieraan de nodige aandacht schenkt.
Ik kijk uit naar een volgend artikel en mogelijk een video-report als dit project klaar is 8-) _/-\o_
Zal het aan mijn gebrek van kennis liggen of zou het niet beter zijn om zoiets met de huidige types processors te maken. Ik neem aan dat de rekenkracht in een 8086 niet te groot is? Begrijp mij niet verkeerd, het is een knappe prestatie.
Het probleem is vooral schaalbaarheid, de 8086 bevatte 29k transistoren een i7 van tegenwoordig bevat al snel meer dan 700 miljoen tranistoren. Het is gewoon niet haalbaar om dit op leesbare schaal te tonen.
ik denk dat een i7 wel een paar miljard transistoren bevat....en ja , dat is i.d.d. meer dan 700 miljoen , en niet haalbaar op deze schaal .
De eerste i7's uit 2008 zitten rond de 731 miljoen transistors, hedendaagse Haswells doen het echter met 1.4 miljard transistors. Tegen de tijd dat je die nagebouwd hebt zijn kwantumcomputers mainstream en kan je opnieuw beginnen ;) .

Bron (Wikipedia, maar ik vond snel niks beters...):
https://en.m.wikipedia.org/wiki/Transistor_count
Hangt een beetje af van welke versie maar de eerste i7 processoren zaten rond de 700miljoen. De nieuwe generaties gaan al vlot boven de miljard transistoren. Bron: https://en.wikipedia.org/wiki/List_of_Intel_microprocessors
De serieuze weg vooruit is het printen van processors op één of andere sheet, en deze dan te stapelen, dat kunnen best nog wel circuits printen met redelijk rekenkracht lijk mij zo.

Tijd voor een Printable Open Processor community project.
Het is nu al 14 bij 2 meter...
Stel je eens voor dat hij zoals de huidige CPU's 3 cache levels moet maken... of Hyperthreading oversteunen.

Hij heeft voor zo een "licht" ontwerp gekozen omdat het nu al zoveel tijd in beslag neemt... en als je dit snapt je makkelijker op voort kunt borduren.

Of bedoel je "waarom gebruikt hij geen PIC"? Dan zou de oefening van dit geheel verloren gaan. :)
en als je dit snapt je makkelijker op voort kunt borduren.
Ik denk dat dit heel essentieel is, heel veel mensen denken een processor te begrijpen, maar komen niet veel verder dan wat het doet en niet hoe het geheel werkt. Juist een 'simpel' design maakt het begrijpbaar als leermiddel imho. Een letterlijke zee van een paar miljoen lichtjes zou niet meer begrijpbaar zijn voor de meerderheid van de mensen waarvoor dit bestemd is.
Je wilt een bekende processor nemen, maar ook een die niet te groot is. 8086 is nog te doen met de hand. Een pentium of een processor van de huidige generatie hebben al veel meer transistoren, dus dat is niet te doen met de hand.
Er is geen enkele reden om een bekende processor te nemen, er staat ook niet dat hij dat gedaan heeft.

Als je toch een bekende moderne architectuur zoekt met extreem weinig transistoren, kom je haast vanzelf op de ARM uit. Bouw je daar een wat smallere versie van, dan is 14.000 transistoren waarschijnlijk haalbaar.
Dat heeft niet met het ontwerp te maken, meer de uitvoering. Hoe snel kan data (stroom, licht?) zich verplaatsen. Als dat snel genoeg gebeurd is ieder simpel ontwerp prima
Voor de werking maakt het niet uit welke CPU je neemt. Ook moderne CPUs hebben een ALU, RAM en general/special purpose registers. Maar als je 2 miljard transistoren moet visualiseren heeft ie wel meer nodig dan een muurtje. Dus dan kun je maar beter klein en simpel beginnen.
Begrijp mij niet verkeerd, het is een knappe prestatie.
Dit is een knappe prestatie, maar als hij een moderne processor op zijn muur zou willen nabouwen, dan zou het absoluut niet passen en was hij bovendien de rest van zijn leven bezig.
Hoewel er veel dingen verandert zijn is de basis nog min of meer het zelfde en is het mooi om op deze manier inzicht te geven in hoe een simpele processor werkt. Als je een Core i7 op zo'n schaal maakt dan denk ik niet dat je er veel van zal snappen laat staan dat het een bult stroom zal vreten (een van de redenen waarom dingen kleiner gemaakt worden).
Ja, ik vermoed dat het aan uw gebrek aan kennis ligt ;-)
Het is op zich al straf dat hij de x86-architectuur gebruikt als bouwsteen en niet bijvoorbeeld de Motorola 68000. Het gaat hem hier niet om snelheid en complexiteit, maar om duidelijkheid.
Een 8086 heeft misschien "slechts" een klokfrequentie van pakweg 4Mhz, maar dat zijn nog altijd 4 000 000 bewerkingen/sec. Maw, je zult zijn ledjes wel zien knipperen als dit eens werkt ;-)
Of je ziet ze niet meer knipperen natuurlijk ;)
Het is op zich al straf dat hij de x86-architectuur gebruikt als bouwsteen en niet bijvoorbeeld de Motorola 68000.
Waar staat welke architectuur hij gebruikt?
Je hebt gelijk. Het staat er niet. Er staat enkel een vergelijking met het aantal transistoren van een intel 8086, niet dat het ook over deze architectuur gaat
De echte 8086 zal wel 4Mhz lopen. Deze Muur uitvoering uiteraard niet.
Een 100Hz of 4Khz computer.

Of zo laag dat 1/2 tot 2 sec om de compute flow te kunnen volgen.
Deze bevat nu al minder tansistoren dan een 8086: 14k vs 29k
Als je een recetere versie gaat nemen, neem de hypermoderne 486 ;) (deze had tot 1.6 miljoen transistoren: https://nl.wikipedia.org/wiki/Intel_80486), mits je dezelfde transistordichtheid kunt aanhouden, ga je een oppervlakte nodig hebben die 1000 maal groter is. Nog maar te zwijgen van de vele koperkabel die je nodig hebt om alles te verbinden.
En dat kan je nog wel even verder zetten naar echt moderne CPU's: https://en.wikipedia.org/wiki/Transistor_count

De essentie blijft echter dezelfde. Het gaat niet over snelheid o.i.d. maar om de basis werking zichtbaar te maken. Want zeg nu zelf, hieruit ga je niet veel wijzer worden: http://i.stack.imgur.com/QK4gm.jpg
Hij bouwt nu een CPU met 14.000 transistors. Een Core i5 4250u (nog lang niet het paradepaardje) heeft meer dan een miljard transistoren. Zelfs heel groot uitgewerkt is het voor een techneut dan nog steeds niet te volgen denk ik. Juist omdat de schaal van dit project nog enigszins te overzien is is het geweldig om zo het concept achter een CPU (proberen) te snappen.

Geweldig gaaf dit, wat een 'Steve Wozniak' momentje moet die gast hebben als hij het straks af heeft en het werkt!
Qua absolute basis is er niet héél veel veranderd, we zitten nog steeds op 1-en en 0-llen. Het is echter vrijwel onmogelijk om een moderne CPU zo gedetailleerd als deze te maken, omdat ze miljarden transistors hebben, deze enkele 10 duizenden transistors heeft.
Erg bedankt voor alle uitleg. Dit was mij even onduidelijk. Leuk om te lezen dat wij qua technologie al een groot stuk zijn gegroeid in 40 jaar.
Stel dat je alles op behangfolie kan printen als grote uitvergroting 8086 or 8088, even muur behangen, draden in de hoeken prikken en draaien maar. :+

Waarom geen Z80 of 8080, die zijn iets kleiner en simpeler toch? Veel minder transistoren en dus eerder klaar.
Als je een bestaande processor moest kiezen zou ik zeggen 6502. Maar hij maakt zijn eigen (16 bit) architectuur, wat natuurlijk nog veel leuker is dan iets namaken.
Nee, juist niet. De Z80 is al veel complexer volgens mij.
https://en.wikipedia.org/wiki/Transistor_count
8500 voor de Z80, 4500 voor de 8080 :)
Maar dan heb je nog geen RAM, wat ook de nodige transistoren kost.
Ik hoop dat ze kabelbomen mooier maken dan op foto vier. Zo'n zooitje dat het echt niet inzichtelijk word mijns inziens.
Een nette kabelboom is opzich een goede eis, maar ze zitten niet voor niets aan de achterkant, dus voor het inzicht werd het door de bouwer waarschijnlijk niet noodzakelijk geacht.
Heel vet en erg knap van deze meneer!
HEEEL Bijzonder. Ik hoop dat daar een tv programma van gemaakt wordt!
Zéér knap! Maar ik kreeg toch een kleine bibber over mijn ruggengraat toen ik dit zag... de vloek van mijn opleiding "basiskennis" was het boek "Van 0 en 1 tot Microprocessor", en daar wordt het spul dat hier getoond wordt, in uitgelegd :o

edit: leestekens voor duidelijkheid :)

[Reactie gewijzigd door AlterEgo1973 op 22 juni 2015 15:29]

Ik denk dat het zinvoller is om de "software" toer op te gaan, zie http://www.visual6502.org/JSSim.
Probleem is dat we niet kunnen krimpen om erin rond te lopen, maar we kunnen omgekeerd wel dat ding groot genoeg maken

Ik moest gelijk denken aan de Oculus Rift (of andere vr). Volgens mij is het binnenkort virtueel wel mogelijk... En dan hoef ik er niet eens uit mijn luie stoel!
Super cool natuurlijk... Maar ik heb hetzelfde beeld gehad in software voor het ontwikkelen van CPU's en dan is hij met een beamer natuurlijk ook wand-vullend, zonder hardware issues kun je dan de werking van de CPU prima nagaan.

Wel cool voor mensen die nog verwonderd moeten worden - het echte leren kan denk ik beter met emulatiesoftware. En vet behang natuurlijk.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True