Elektronika.lt

Elektronika.lt - elektronikos, informacinių ir
ryšių technologijų portalas

Adresas: http://www.elektronika.lt
El. paštas: info@elektronika.lt
 Atspausdinta iš: http://www.elektronika.lt/straipsniai/elektronika/2930/betakciai-procesoriai/spausdinti/

Betakčiai procesoriai

Publikuota: 2005-12-20 07:37
Tematika: Elektronika, technika
Skirta: Mėgėjams
Autorius: Rūta Makūnaitė
Aut. teisės: el. paštas ©Lietuvos Rytas, UAB
Inf. šaltinis: el. paštas Kompiuterija – PC World

Įrangos gamintojai mėgina atgaivinti betakčius procesorius ir juos ketina rengti mobiliuosiuose telefonuose, delninukuose ir kituose našiuose baterija maitinamuose prietaisuose. Betakčiai procesoriai pateikia operacijų rezultatus ne numatytu taktu, o baigę operaciją. Jie efektyviai naudoja energiją, generuoja nedaug elektrinių trukdžių.


Įrangos gamintojai mėgina atgaivinti betakčius procesorius ir juos ketina rengti mobiliuosiuose telefonuose, delninukuose ir kituose našiuose baterija maitinamuose prietaisuose.

Betakčiuose procesoriuose (jie dar vadinami asinchroniniais arba nustatančiais veikimo trukmę) nėra virpesius kuriančio kristalo, veikiančio kaip tiksintis laikrodis ir nustatančio veiksmų atlikimo trukmę įprastuose sinchroniniuose procesoriuose. Net jei nieko neišmanote apie procesoriaus veikimo principus, turbūt žinote, kas yra taktinis dažnis. Jau daugelį metų procesoriaus taktinį dažnį kompanija „Intel“ naudoja kaip rinkodaros priemonę, prilygindama procesoriaus našumą jo taktiniam dažniui.

Betakčiai procesoriai pateikia operacijų rezultatus ne numatytu taktu, o baigę operaciją. Jie efektyviai naudoja energiją, generuoja nedaug elektrinių trukdžių, todėl juos ketinama įrengti pranešimų gavikliuose, daugiafunkcinėse kortelėse, mobiliuosiuose aparatuose.

Tačiau betakčių procesorių plėtrą stabdo priemonių ir specialistų stoka. Be to, kyla problemų derinant asinchroninius lustus su sinchroniniais. Dar vienas svarbus aspektas – paprasta nustatyti didžiausią sinchroninio procesoriaus našumą – reikia tik suskaičiuoti taktus, reikalingus operacijai atlikti. Gerokai sudėtingiau apskaičiuoti asinchroninių procesorių našumą, o tai yra didelis trūkumas bandant juos parduoti.

Sinchroniniai procesoriai

Modernių technologijų pradininkai galimybę kurti asinchroninius procesorius svarstė jau 1946 metais, tačiau nusprendė plėtoti sinchroninę įrangą, nes tuo metu sinchroniniai procesoriai atrodė patikimesni, potencialiai našesni, paprastesni projektuoti ir bandyti.

Sinchroniniuose procesoriuose įrengtas taktų generatorius (ritmiklis) nustato laiko intervalą, per kurį visi lusto elementai turi baigti atliekamas užduotis. Procesoriaus darbo sinchronizatorius – tai kristalas, vibruojantis pastoviu dažniu, priklausančiu nuo to, kokia įtampa veikia kristalą. Visos procesoriaus atliekamos užduotys derinamos sinchronizatoriumi, siunčiančiu signalus visoms elektros grandinėms, valdančiu registrus, duomenų srautus ir nustatančiu tvarką, kuria procesorius atlieka užduotis.

Tvarka, kuria sinchroninį procesorių pasiekia signalai, yra nesvarbi. Tai vienas didžiausių šių procesorių privalumų. Signalai gali atkeliauti į procesorių nesibaigus taktui, tačiau prieš juos apdorodami registrai laukia kito takto. Taigi signalai apdorojami tinkama tvarka tik laiku pasiekę registrus iki kito sinchronizavimo etapo. Sinchroninių procesorių kūrėjams nereikia rūpintis, kad veikiant įtaisui susidarytų panašaus ilgio elektros grandinės. Inžinieriai gali nesirūpinti duomenų sinchronizavimu ir sutelkti visas jėgas į procesoriaus našumą, todėl daugiau nei 30 metų procesorių našumas didėja eksponentiškai.

Tačiau, įrangai pasiekus tam tikrą dažnio ribą, našumas kinta nežymiai, todėl 1000 MHz procesorius neveikia dukart sparčiau už 500 MHz procesorių. Sinchronizatorius milijonams tranzistorių koordinuoti sugaišta nemažai laiko, be to, milijardus kartų per sekundę siųsdamas valdymo signalus dešimtims milijonų tranzistorių, jis eikvoja daug energijos, kurios didesnė dalis virsta šiluma.

Kiekvienas taktas turi būti gana ilgas, kad per jį signalas spėtų atkeliauti ilgiausiomis elektros grandinėmis. Tačiau veiksmai gretimose procesoriaus dalyse atliekami daug sparčiau, nei trunka taktas.

Didėjant procesorių taktiniam dažniui, patys procesoriai didėja ir tampa vis sudėtingesni, todėl vis sunkiau sukurti tokį procesorių, kuriame visos elektros grandinės laiku perduotų signalus. Šiai problemai spręsti projektuotojai pasitelkia sudėtingą magistralių hierarchiją, elektros grandines, keičiančias atskirų komponentų taktinį dažnį. Pastarosios ilgina sinchronizavimo etapus, kad visos grandinės spėtų persiųsti ir gauti duomenis.

Sinchroninių procesorių registrai nuolat persijungia, kad kiekvieno takto pradžioje galėtų priimti naują informaciją. Taigi jie eikvoja energiją, net jei neturi ko apdoroti.

Asinchroniniai procesoriai

Šiuo metu dar nesukurta visiškai asinchroninių procesorių. Šiuolaikiniai asinchroniniai lustai iš tiesų yra sinchroniniai su asinchroniniais elementais. Jiems taikoma tobula sinchronizacija – grandinės įsijungia tik tada, kai turi užduočių, o ne kiekvieno takto metu.

Įprastą sinchronizaciją asinchroniniuose procesoriuose keičia „rankų paspaudimo“ algoritmai. Skaityti skirtų duomenų adresą asinchroninis procesorius nurodo adresų magistralėje ir išsiunčia prašymą duomenims gauti. Atmintinė nuskaito informaciją iš adresų magistralės, randa reikiamus duomenis, perkelia juos į duomenų magistralę ir patvirtina perskaičiusi informaciją. Procesorius pasiima duomenis iš duomenų magistralės. Ryšio kanalų ir FIFO („first in – first out“) eilės valdikliai atsakingi už duomenų ir instrukcijų seką.

Duomenys priimami ir siunčiami bet kokia sparta. Priėmimo spartai viršijus siuntimo spartą, elektros grandinė nepriima naujų duomenų tol, kol jų pakankamai išsiunčia.

Pagal „rankų paspaudimo“ algoritmą veikiantys įtaisai eikvoja daugiau energijos nei sinchronizatorius, tačiau asinchroniniai lustai vis tiek jos naudoja gerokai mažiau, nes jų grandinėms energija tiekiama tik tada, kai apdorojami duomenys.

Sinchroniniuose procesoriuose duomenys persiunčiami kiekvieno sinchronizavimo etapo pradžioje, todėl atsiranda įtampos šuolių. Asinchroniniuose procesoriuose duomenys siunčiami ne vienu metu, todėl įtampa mažiau svyruoja, o lustas skleidžia mažiau elektrinių trukdžių. Kuo mažiau elektrinių trukdžių, tuo mažiau dėl triukšmo atsirandančių klaidų būna grandinėse ir mažiau sąveikaujama su aplinkiniais įtaisais.

Kadangi asinchroniniai procesoriai eikvoja mažiau energijos, jie puikiai tinka baterija maitinamiems prietaisams. Asinchroniniai lustai neskleidžia periodinio signalo, jie gali šifruoti duomenis sunkiau atpažįstamais ir įveikiamais („crack“) būdais. Dėl tobulesnio šifravimo asinchroninius lustus galima diegti į plastikines korteles, kuriose laikoma slapta medicininė, finansinė ar asmeninė informacija.

Asinchroniniai procesoriai sužadina tik tas grandines, kurios reikalingos turimiems duomenims apdoroti, todėl nenaudojamos grandinės gali atlikti kitas užduotis. Šie procesoriai mažiau kaista, juose mažiau ir rečiau svyruoja įtampa, todėl mažesnė įtaisų perkaitimo tikimybė.

Kadangi betakčiai procesoriai veikia pagal „rankų paspaudimo“ algoritmus, persiunčiamiems duomenims pakanka laiko nusistovėti, taigi procesorius veikia patikimiau.

Nors projektuoti asinchroninius procesorius sudėtinga, tačiau jie suteikia daugiau galimybių. Projektuotojai turi daugiau laisvės pasirinkti sistemų dalis. Pakeitus bet kurią sistemos dalį spartesne, sparčiau veikia visa sistema.

Naujausi patobulinimai

Nors ir neribojami sinchronizacijos, asinchroniniai procesoriai tradiciškai veikė nenašiai. Daugumai jų buvo taikomas ankstyvasis logikos būdas, sukurtas būsenų atpažinimo teorijos pagrindu ir įgyvendinamas didesniais bei lėtesniais p-tranzistoriais. Betakčiai procesoriai buvo dideli ir nespartūs.

Pritaikius vadinamąją domino logiką ir reguliuojamo vėlinimo režimą, asinchroniniuose procesoriuose darbas organizuojamas konvejerio principu.

Domino logika padidina procesoriaus našumą, nes vieno ciklo metu vietoj įprasto vieno srauto procesorius gali apdoroti keletą duomenų eilių. Dar vienas domino logikos pranašumas – apdorojami ne visi, o tik operacijos metu pasikeitę duomenys.

Reguliuojamo vėlinimo režimas leidžia nustatyti skirtingą atskirų loginių blokų veikimo spartą. Tokiu būdu registrai tarpusavyje bendrauja didžiausia sparta. Jei vienas loginis blokas veikia lėtai, kitas sulėtina savo spartą. Loginiams blokams pakanka laiko duomenims apdoroti ir patikrinti prieš juos persiunčiant. Dėl to mažesnė klaidų tikimybė.

Keblumai

Šiuolaikiniuose betakčiuose procesoriuose veikia asinchroniniai ir sinchroniniai elementai, todėl kyla problemų juos derinant, ypač naudojantis atmintine ir sisteminėmis magistralėmis. Taigi reikalingos specialios grandinės, pritaikančios asinchroninį darbą prie sinchroninio komponento taktinio dažnio.

Viena didžiausių kliūčių, stabdančių asinchroninių procesorių plėtrą, yra ta, kad trūksta automatizuotų priemonių betakčių procesorių projektavimui spartinti.

Asinchroninių procesorių projektuotojai susiduria su „vištos ir kiaušinio“ problema: kadangi nėra didelės asinchroninių procesorių rinkos, nekuriamos priemonės tokiems procesoriams projektuoti. Kadangi nėra priemonių tokiems procesoriams projektuoti, nėra galimybių sukurti kokybiškų procesorių.

Trūksta ne tik priemonių procesoriams projektuoti bei bandyti, bet ir asinchroninių procesorių projektavimą išmanančių specialistų. Asinchroninių procesorių projektavimas neįtrauktas į inžinierius rengiančių mokymo įstaigų studijų programas. Asinchroninių procesorių kūrėjai turi geriau už dabartinius sinchroninių procesorių specialistus išmanyti procesorių sandarą.

Perspektyvos

Asinchroninius arba iš dalies asinchroninius lustus kuria bendrovės „Sun Microsystems“, „Intel“, „Theseus Logic“, „Philips Electronics“, „Self-timed solutions“, „Fulcrum Microsystems Inc.“. „Fulcrum Microsystems Inc.“ šių metų gegužės mėnesį gavo 20 milijonų dolerių tokiems procesoriams tobulinti ir projektuoti.

Specialistų prognozės betakčių lustų atžvilgiu skiriasi. Vienų nuomone, netrukus pasirodysiančiuose procesoriuose bus asinchroninių elementų su bendru sinchronizatoriumi, reguliuojančiu duomenų perdavimo spartą. Tokiu būdu procesoriai įgytų dalį betakčių procesorių privalumų.

Kitų specialistų teigimu, bus kuriami „lokalūs sinchroniniai, globalūs asinchroniniai“ procesoriai. Sinchroninės „salelės“ veiks skirtingais dažniais, o tarpusavyje pagal „rankų paspaudimo“ algoritmus bendraus per asinchronines laikinąsias kaupyklas. Kadangi bus sudėtinga paskleisti sinchroninį signalą visame luste, sinchronizatoriai bus naudojami atskirose procesoriaus srityse, kurios bendraus asinchroniškai.

Asinchroniniai lustai už sinchroninius pranašesni tuo, kad efektyviau išnaudoja laiką. Sinchroniniai procesoriai turi pasirūpinti, kad bet kuri operacija būtų atlikta per vieną taktą. Taigi taktas trunka ne tiek, kiek vyksta operacija, o ilgiau. Prie operacijos trukmės pridedama atsarga, atsižvelgus į tai, kiek ilgiausiai galėtų trukti operacija (blogiausias atvejis – vidutinis atvejis), dėl trukdžių kilę sinchronizatoriaus taktų svyravimai ir gamybos proceso metu arba dėl aplinkos įtakos atsiradę nukrypimai.

Sinchroninės (kairėje) ir asinchroninės (dešinėje) „Philips 80C51“ lusto versijų energijos sklaidos palyginimas. Abu procesoriai atlieka vienodas užduotis. Raudoni taškai rodo sritis, skleidžiančias karštį – energiją. Asinchroniniame luste karštį skleidžia gerokai mažiau sričių.

Šaltinis – „Fulcrum Microsystems Inc.“


‡ 1999–2024 © Elektronika.lt LTV.LT - lietuviškų tinklalapių vitrina Valid XHTML 1.0!