Klokloze processoren??

Pagina: 1
Acties:
  • 136 views sinds 30-01-2008
  • Reageer

  • Damian
  • Registratie: Maart 2001
  • Laatst online: 22-08 22:00

Damian

Insane Obtrusion

Topicstarter
Kheb net een post gelezen op tweakers, http://www.tweakers.net/nieuws/19188 , en daarin ging het om een processor zonder clock.

Kheb het twee keer doorgelezen, maar ik weet niet hoe ik me dat precies voor moet stellen een processor zonder klok??

Hebben die dingen een klok dan??

FF iemand die dit uit kan leggen??

Ieri ero quiete, perché oggi sarò la tempesta


Verwijderd

:P Das een proc die de tijd niet meer bijhoudt

(kent dus ook geen sluitingstijden van computersjops en kroegen meer) :z

  • DarkSide
  • Registratie: Oktober 2000
  • Laatst online: 22-08 17:56

DarkSide

theres no place like ::1

yep zit een swatch in.
nee het aantal MHzen is je klok.
Per klok cycli kan de cpu iets uitvoeren.
Sommige bewerkingen hebben meerdere klokclycli nodig.
Het is zo dat de cpu ALLEEN wat kan uitvoeren op een klokpuls. Het is daarom logisch dat hoe meer klokpulsen per seconden een cpu aankan hoe sneller hij is.
Maar door de hoge snelheid is het ook van belang dat deze goed geregeld wordt zodat de bewerkingen op het juiste tijdstip ondergaan worden.
Dit kost, schijnbaar, dus 30%.
Zonde van de tijd dus. Een kloklose cpu kan de oplossing bieden.

There are 10 kinds of people in this world..... Those who know binary. And those who don't.


  • QuestGamer
  • Registratie: September 2001
  • Laatst online: 14-05 22:58

QuestGamer

Questje

Inderdaag heel vaag.
Het klinkt wel handig, dat 'ie bijv. sneller draait als ie ingewikkeldere programma's moet draaien ofzo :?

Iemand die het echt weet? *D

Ik stream Poker, Retro Games & Good Vibes op Twitch.tv/Questje :-)


  • Damian
  • Registratie: Maart 2001
  • Laatst online: 22-08 22:00

Damian

Insane Obtrusion

Topicstarter
Ik snap hem nog steeds niet helemaal, hoe kun je dat ding dan bijhouden als het ware, dan krijg je toch hetzelfde effect, dat wanneer je nu een 486 spel op een athlon speelt, dat het spel veels te snel gaat ofniet.

Ik snap er gewoon nog ff geen reet van... :P

Ieri ero quiete, perché oggi sarò la tempesta


  • Damian
  • Registratie: Maart 2001
  • Laatst online: 22-08 22:00

Damian

Insane Obtrusion

Topicstarter
Het verhaal van een cpu met klok snap ik trouwens wel zon beetje, maar zonder klok, dan gaat dat ding toch als de tering van alles doen, en dan is er toch geen "ritme" om het zo maar te testen.

Zijn er trouwens al van die dingen?? cpu's zonder klok?

Ieri ero quiete, perché oggi sarò la tempesta


Verwijderd

Ik heb geen flauw idee hoe klokloze processoren zouden moeten werken maar ik heb zelf wel eens van die schakelingetjes gemaakt met flip-flop circuits en als je bijv. op een knopje drukte dan reageerden die circuits op een bepaalde manier en dat was zonder klok, dus ik neem aan dat cpu's zonder klok op een vergelijkbare wijze zullen werken.

Verwijderd

Een klokloze CPU voert gewoon uit wat 'em gevraagd wordt, in plaats van eerst te wachten tot er een puls van de interne klok voorbij komt. Hoe snel deze interne klok loopt wordt aangeven in MHz.

Verwijderd

Op zaterdag 17 november 2001 19:00 schreef KDZ het volgende:
Zijn er trouwens al van die dingen?? cpu's zonder klok?
Philips gebruikt ze in zakagenda's

Verwijderd

Op zaterdag 17 november 2001 18:59 schreef KDZ het volgende:
hoe kun je dat ding dan bijhouden als het ware, dan krijg je toch hetzelfde effect, dat wanneer je nu een 486 spel op een athlon speelt, dat het spel veels te snel gaat ofniet.
Nou nee, lijkt me niet: je hebt tegenwoordig ook spelletjes die je kunt instellen op bijv. 75 frames per seconde als je computer er ook 200 kan renderen. Je kunt ook een frame laten renderen en dan wachten totdat de monitor klaar is voor het volgende frame.

  • Fox|IA
  • Registratie: Augustus 1999
  • Laatst online: 30-11-2022

Fox|IA

Official Bastard

Ik snap er ook niks van.
Pas nog gelezen dat je zonder klok dynamische hazards krijgt in een systeem waar uiteindelijk de uitgang weer met de ingang zit verbonden..., en hier praten ze erover alsof het de toekomst is. Moet het eerst allemaal nog maar eens zien.

  • TheBigBug
  • Registratie: Januari 2001
  • Laatst online: 17-01-2022

TheBigBug

Erg groot voor een insect!

Wat ik me nu afvraag, hoe meten ze hoe snel zo'n CPU is, het ding heeft immers geen klok... >:)

Peace cannot be kept by force - it can only be achieved by understanding - Albert Einstein


  • xplorer
  • Registratie: Augustus 2001
  • Laatst online: 09-10-2024
Ze zullen dan op snelheid berekend worden in Flops net als die supercomputers (neem ik aan :?)

  • Hahn
  • Registratie: Augustus 2001
  • Laatst online: 23-08 14:44
Een klokloze CPU is een CPU zonder een aantal Mhz. Dingen draaien dan altijd perfect en er is nooit een snellere versie voor nodig (die zullen er dan ook denk ik niet zijn).
Dus als je het allernieuwste spel op een klokloze CPU van 2 jaar oud draait dan zal die niet slomer lopen dan een spel van 2 jaar geleden, want er is op de CPU geen limiet aangegeven. En het is ook niet zo dat oudere dingen dan te snel lopen, want de CPU geeft zoveel snelheid als de software nodig heeft en niet meer. Alleen lijkt me dan dat die dingen gloeiend heet worden door software wat heel veel nodig heeft.
Zo denk ik dat het bedoeld wordt met klokloze CPU's :)

The devil is in the details.


Verwijderd

Zoals Xplorer al zei, ze worden gemeten in aantal MFlops per sec. Hoe koeler ie is hoe sneller ie loopt, dus koelen met stikstof dan loopt ie P4 en Athlon eruit ;).

  • Damian
  • Registratie: Maart 2001
  • Laatst online: 22-08 22:00

Damian

Insane Obtrusion

Topicstarter
Owke dus er is straks maar 1 processor, en wie hem het best koelt heeft de snelste??

Ieri ero quiete, perché oggi sarò la tempesta


  • wij
  • Registratie: Maart 2001
  • Laatst online: 20-08 13:01

wij

De procesor loopt dan op volle snelheid.

Krijg je dan geen effect net als je vroeger pacman speelde met turbo aan.

Verwijderd

Het is processor.

  • Servowire
  • Registratie: September 2000
  • Laatst online: 22-08 11:33

Servowire

prutser:~#

het vobis gehalte is wel weer hoog hier.....

met papier mache kun je alles maken!!


  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Het lijkt mij dat die cpu gewoon meteen uitvoert wat hij krijgt, en dat doet op een snelheid die er gevraagt word, maar ik denk dat hij dan wel degelijk een maximale snelheid heeft. En ik denk dat dat dan aan het nummer van transistors ligt ofzo.

Eppie

Verwijderd

hmm

Verwijderd

Ik zal hier ff een kopietje posten van wat ik eerder al als reactie op het artikel poste:
Bij Philips zijn ze echt al een heel eind met asynchrone processoren. In dec begin ik op het Philips Natlab met mijn afstudeer opdracht en die gaat hoedanook iets met asynchroon VLSI te maken hebben. Op dit moment zijn er nog twee potentiele opdrachten, waarvan ik er één ga doen. Eén van de twee is het ontwerpen van een asynchrone variant van een zeer bekende processor. Een vriend van me is op dit moment ook bezig met het ontwerpen van een asynchrone processor bij Philips, en als alles goed gaat wordt deze volgend jaar al in producten verwerkt. De volledig asynchrone processor van Philips waar over werd gesproken is de asynchrone variant van de wereldberoemde 80C51 processor.
edit:
Ik las in een reactie hierboven dat ze toch een andere bedoelen, maar deze is nog interesanter, want de 80C51 is de meest geproduceerde chip ter wereld!


Echter, anders dan in het artikel wordt vermeld is asynchroon met de huidige techniek meestal NIET sneller dan synchroon. Hier zijn wat vergelijkende waarden tussen de synchrone en asynchrone 80C51:

Oppervlakte:
Syn : 4.1
Async : 5.1

Energie per instructie:
Syn : 1,7
Asyn : 0,39

Performance:
Syn : 5,7
Asyn : 5,6

HET voordeel van asynchroon is dus de enorme energie besparing. Verder geven asynchrone schakelingen véél minder electromagnetische straling af dan synchrone schakelingen.

Deze technologie is er dus gewoon al, en er worden al chips mee ontworpen die ook daadwerkelijk gebruikt worden. Er zijn geen grote obstakels meer, behalve dat het verificatie proces voor asynchrone chips wat lastiger is, en dat het wat lastiger is om een asynchrone chip op een FPGA te prototypen (dit zou het onderwerp zijn van de andere potentiele opdracht die ik ga doen). Ook dataoverdracht binnen de processor is geen probleem. Hier zijn hele mooie 4 fase single rail handshake protocollen voor.
Dus ff voor de duidelijkheid:
Asynchrone processoren zijn op dit moment langzamer en groter dan synchrone, maar ook energiezuiniger en dus minder heet.

De snelheid van een asynchrone processor wordt voornamelijk bepaald door de snelheid van de transistoren (hangt dus af van het productie proces) en het ontwerp van de chip zelf. De enige manier om zo'n chip dus sneller te maken is door een beter productie proces te nemen (b.v. van 0,18 naar 0,13) of door het ontwerp van je chip aan te passen. Bij het aanpassen van het ontwerp bedoel ik dan eigenlijk optimalisaties op gateniveau, want als je de architectuur gaat aanpassen maak je eigenlijk een hele nieuwe chip.

  • The Flying Dutchman
  • Registratie: Mei 2000
  • Laatst online: 21-08 13:44
Ik vraag me af hoe ze zo'n processor zonder klok willen maken.

De klok in de processor zorgt ervoor dat er een bepaald ritme in de handelingen binnen de processor zit. Doordat er bij de opgaande puls en de neergaande puls van de klok bepaalde vaste handelingen worden uitgevoerd weet je zeker dat er bijvoorbeeld niet naar een register wordt geschreven waar tegelijk van gelezen wordt, dus dan weet je zeker dat de goede waarde uit dat register wordt gehaald om verder mee te rekenen.

Hoe men er echter voor wil zorgen dat je zeker weet dat je de goede waarde uit een register haalt zonder dat er een klok in de processor zit, daar ben ik nog niet geheel achter... iemand een idee???

The Flying Dutchman


Verwijderd

Volgens mij is het heel simpel. Je moet alleen even terug naar de basis.

In principe is elk programma gewoon een opeenvolgende reeks van instructies. Stel ik heb een programma:

1 - doe dit
2 - doe dat
3 - doe eens iets anders
4 - klaar

- Tik met je vinger op je bureau en lees elke keer als je een 'tik' geeft een opdracht voor. Dat is de geklokte CPU.

- Lees de bovenstaande opdrachten in volgorde zo snel mogelijk op. Dat is een ongeklokte CPU.

Zoals je ziet maakt dit voor registers etc geen ene ruk uit.

  • The Flying Dutchman
  • Registratie: Mei 2000
  • Laatst online: 21-08 13:44
Ik denk dat dit zeker wel uitmaakt...

Stel dat er een instructie wordt gegeven waarbij de inhoud van 2 registers wordt opgeteld en in een 3e register (noemen we even C) geplaatst wordt. Dan komt er een 2e instructie, deze instructie wil graag de inhoud van register C gebruiken om verder mee te rekenen.

Maar hoe weet je wanneer de inhoud van register C stabiel is en klaar om te gebruiken voor een volgende instructie? Voor hetzelfde staat de oude waarde nog in dat register terwijl je door wilt gaan met de 2e instructie die de nieuwe waarde nodig heeft...

Met een klok weet je 100% zeker op welk tijdstip de goede waarde in een register staat omdat in de opgaande klokflank de registers opnieuw gevuld worden. In de neergaande klokflank beginnen dan de nieuwe instructies weer en dus weet je helemaal zeker dat altijd de goede waarden in de registers staan en krijg je geen fouten.

The Flying Dutchman


Verwijderd

Ehm, het is heel simpel hoor..

1 - CX= AX + BX
2 - Doe iets anders met CX

Als hij klaar is met stap 1 bevat CX de waarde van AX+BX. Hij gaat pas verder bij stap 2 als stap 1 klaar is.

Daar is geen klok voor nodig hoor..

Verwijderd

Op zaterdag 17 november 2001 19:01 schreef DeepFreezer het volgende:
Een klokloze CPU voert gewoon uit wat 'em gevraagd wordt, in plaats van eerst te wachten tot er een puls van de interne klok voorbij komt. Hoe snel deze interne klok loopt wordt aangeven in MHz.
als ik het goed begrijp bedoel je zoiets:

persoon = programma
cpu met klok: persoon wacht op taxi om zo van A naar B te gaan.
cpu met klok: persoon heeft een fiets en doet het zelf

:?

Verwijderd

Nah,

Bij persoon 1 lopen de taxis volgens een vast tijdschema. Bv. om de 5 minuten komen er taxi's langs.

Bij persoon 2 komt er pas een taxi als er een persoon is.

Verwijderd

Dus moeten we het eerder zien als de bus nemen (komt met dezelfde tussenpozen langs) en een taxi nemen (staat daar als je hem nodig hebt).

Dus gewoon de taxi sneller en zuiniger maken dan de bus en we zijn er :)

  • The Flying Dutchman
  • Registratie: Mei 2000
  • Laatst online: 21-08 13:44
Op zondag 18 november 2001 14:29 schreef hezik het volgende:
Ehm, het is heel simpel hoor..

1 - CX= AX + BX
2 - Doe iets anders met CX

Als hij klaar is met stap 1 bevat CX de waarde van AX+BX. Hij gaat pas verder bij stap 2 als stap 1 klaar is.

Daar is geen klok voor nodig hoor..
Dit betekend dat zeer nauwkeurig bekend moet zijn hoe lang het duurt voordat een bepaald proces klaar is. Anders weet je dus niet wanneer de waarde in het register goed is. De processor kan niet zomaar even kijken of een proces klaar is ja of nee... de data gaat over de bussen in de cpu en door bijvoorbeeld de ALU of de FPU en dan weer over de bus terug naar de registers. Dit neemt allemaal een bepaalde tijd in beslag en wil je een klokloze cpu maken, dan moet zeer nauwkeurig bekend zijn hoelang het duurt voordat het gehele proces doorlopen is, want je kunt niet gewoon even 'kijken' of een proces al klaar is ja of nee... hierdoor is een ontwerp met klok gewoon veel gemakkelijker te maken.

Daarbij komt nog eens dat in cpu's meerdere processen tegelijkertijd naast elkaar hebben lopen gezien de gepipelinede structuur van de huidige processoren. Dat maakt het er allemaal niet gemakkelijker op.

The Flying Dutchman


  • _JGC_
  • Registratie: Juli 2000
  • Nu online
vergelijk het maar met een harddisk met clusers. Elk bestand neemt een cluster in beslag, al is het bestand 1 byte, het neemt toch de complete cluster in beslag.

Zo ist ook met een processor met klok: een instructie heeft meerder klokslagen nodig, maar zou de CPU op datzelfde moment van die tweede klokslag niet nog wat extra's kunnen meenemen?

Een CPU zonder clock is vergelijkbaar met een harddisk zonder sectors/clusters: elk bestand neemt in wat ie nodig heeft.

  • maratropa
  • Registratie: Maart 2000
  • Niet online
het menselijk brein zal ook wel klokloos zijn...:)

specs


Verwijderd

Op zondag 18 november 2001 14:57 schreef The_Flying_Dutchman het volgende:
Dit betekend dat zeer nauwkeurig bekend moet zijn hoe lang het duurt voordat een bepaald proces klaar is.
Nee hoor.. lees 't nog eens. Je weet dat het proces klaar is _omdat hij aan het volgende begint_. Heel simpel. Je wilt drie blokken op elkaar stapelen.. Wanneer kun je het 3e blok plaatsen? Heel eenvoudig, nadat je het 2e geplaatst hebt. Daarvoor hoef je niet nog eens extra te gaan kijken of er wel twee blokken staan, je hebt immers 2 blokken geplaatst.

Als hij bewerking A, B en C heeft en in A en B wordt er wat met een register gerommeld welke in C ook gebruikt wordt dan weet hij 'tijdens C' dat dat register gebruikt kan worden, simpelweg _omdat hij met C bezig is en A en B dus geweest zijn_.
Anders weet je dus niet wanneer de waarde in het register goed is. De processor kan niet zomaar even kijken of een proces klaar is ja of nee... de data gaat over de bussen in de cpu en door bijvoorbeeld de ALU of de FPU en dan weer over de bus terug naar de registers. Dit neemt allemaal een bepaalde tijd in beslag en wil je een klokloze cpu maken, dan moet zeer nauwkeurig bekend zijn hoelang het duurt voordat het gehele proces doorlopen is, want je kunt niet gewoon even 'kijken' of een proces al klaar is ja of nee... hierdoor is een ontwerp met klok gewoon veel gemakkelijker te maken.
Imo zit jij veel te veel 'vanuit een kloksituatie' te denken. Het hoeft namelijk totaal NIET bekend te zijn hoe lang iets duurt. Dat is juist de clou van een klokloze CPU, je zit niet meer aan tijdseenheden gebonden. Dat dit anders werkt dan geklokte CPU is duidelijk.

Neem nog een keer het voorbeeld met blokken. Je hebt vijf blokken welke je op elkaar wilt stapelen. Of je er nou 1 per seconde neerlegd of ze gewoon ongetimed alle vijf op elkaar stapelt, het resultaat is hetzelfde. Daarvoor hoef je niet eerst te gaan timen hoe lang het duurt voordat jij een blok op een ander gezet hebt.

Het verhaal wordt idd. wel complexer zodra je met pipelines etc gaat werken, maar de clou blijft hetzelfde. Als de instructie klaar is zijn alle door die instructie bewerkte registers klaar. Eerder is de instructie niet klaar. Het feit dat de CPU dan met de volgende instructie klaar is geeft aan dat hij ook de registers kan gebruiken.
Pagina: 1