211service.com
Programmatūras mikroshēma
Kas ir tas Transmeta izpilddirektoram Deivam Dicelam, kas liek viņam ticēt? Varbūt tas ir veids, kā viņš neapšaubāmi lieto tādus vārdus kā foršs un veikls. Varbūt tas ir tāpēc, ka viņam bija uzdrīkstēšanās izveidot savu jauno mikroshēmu uzņēmumu Intel galvenās mītnes skatā. Varbūt tas ir tāpēc, ka viņš nekad nepabeidz nevienu teikumu, tāpēc viņš ir tik entuziastisks par Krūzo, viņa uzņēmuma mikroprocesoru zīmolu. Kopš pagājušā gada janvāra, kad par Krūzo tika paziņots plašā fanfarā, līdz augusta vidum, kad uzņēmums iesniedza pieteikumu par publiskošanu, Dicels kļuva aizsmacis, stumjot Crusoe mikroshēmu. Neatkarīgi no tā, vai 200 inženieru vai viena reportiera priekšā viņa vēstījums bija nepārspējams: Crusoe — ar Intel saderīgā mikroshēma ar vienu desmito daļu no Pentium III jaudas prasībām — uz visiem laikiem mainīs skaitļošanas pasauli. Krūzo ir mazjaudas, saderīgs un augstas veiktspējas, viņš teica vienā no interviju sērijām, kas tika veiktas pirms augusta iesniegšanas. Tā ir mūsu mantra.
Šovasar uzņēmums un Ditzels klusēja par kluso periodu, kas seko pēc katra sākotnējā publiskā piedāvājuma. Taču līdz tam Krūzo vēstījums bija attīstījis savu dzīvi: kopš Apple iMac Silikona ielejā nebija bijusi tāda kņada kā Krūzo krastā. Nav pārsteigums, ka Valley insaideru lupatas Upside un Red Herring kā savus vāka stāstus vadīja Transmeta pagājušajā pavasarī, taču pirms klusā perioda sākuma Dicels tika citēts arī Time, USA Today un daudzās citās plaša patēriņa publikācijās. Transmeta publicitātes centieni daļēji ir balstīti uz uzņēmuma Linux autora un atvērtā pirmkoda programmatūras guru Linusa Torvaldsa nolīgšanu. Torvalds ir bijis daļa no Transmeta programmatūras izstrādes komandas un pēdējā laikā strādājis pie Linux versijas, kas papildinās Crusoe lietojumprogrammu strauji augošajā mobilo ierīču tirgū.
Šis stāsts bija daļa no mūsu 2000. gada novembra numura
- Skatiet pārējo izdevuma daļu
- Abonēt
IPO pati par sevi ir stulbs, slēpts dokuments, kas maz atklāj Transmeta nākotnes dizaina plānus un ir pilns ar brīdinājumiem par to, kas varētu noiet greizi Transmeta ceļā uz rentabilitāti. Patiešām, šī rakstīšanas laikā neviens Crusoe produkts nav nosūtīts ievērojamā apjomā. Uzņēmums zaudēja 41 miljonu ASV dolāru 1999. gadā un vēl 43 miljonus ASV dolāru 2000. gada pirmajos sešos mēnešos; prospektā ir skaidri norādīts, ka ieguldītājiem nevajadzētu cerēt uz rentabilitāti tuvākajā nākotnē.
Tomēr būtu grūti atrast jaunuzņēmumu, kas sākts daudz labvēlīgāk vai ar labāku sākotnējo klientu loku. Pagājušā gada maijā America Online un Gateway paziņoja, ka Crusoe nodrošinās jaunu sadzīves tehnikas līniju, kurai būs bezvadu tīkla piekļuve. IBM, Hitachi, NEC un Fujitsu sekoja šim piemēram jūnijā, paziņojot par Crusoe bāzes piezīmjdatoriem, kas visu dienu darbosies ar parastajiem akumulatoriem. Sony augustā nāca klajā ar paziņojumu, ka Crusoe nāks klajā ar savu piezīmjdatoru sērijas Vaio PictureBook versiju. Nav slikti mikroshēmu uzņēmumam, kuram nav ražošanas rūpnīcas un nav sasniegumu un kura galvenā vērtība, kā saka Dicels, ir vīzija par labāku veidu, kā izveidot mikroprocesorus.
Sākot no šī brīža, Transmeta pieeja būs visgudrākā, ātrākā, lētākā, uzticamākā un elastīgākā tehnoloģija, lai atrisinātu praktiski jebkuru ar skaitļošanu saistītu problēmu, saka Džons Vārtons, mikroprocesoru dizaina konsultants, Stenfordas profesors un bijušais Intel projektēšanas inženieris. Pirms piecdesmit gadiem vismodernākās sistēmas tika uzbūvētas, izmantojot vakuuma caurules. Pirms desmit gadiem jaunākie sasniegumi bija sarežģīti, pilnībā integrēti megaprocesori, piemēram, Pentium un PowerPC. Es uzskatu, ka Transmeta pārstāv nākamo fundamentālo dizaina tehnoloģiju izrāvienu.
Trasmeta trajektorija novedīs pie mikroshēmām, kas patērē ievērojami mazāk elektroenerģijas. Tās ir labas ziņas ikvienam, kas izmanto klēpjdatoru vai citas pārnēsājamas elektroniskas ierīces. Taču, runājot vēl dziļāk, Transmeta ir atradusi veidu, kā radikāli uzlabot mikroshēmu izstrādātāju spēju veikt izmaiņas savos produktos, neatsvešinot milzīgās programmatūras bibliotēkas, kas ir rakstītas darbam ar noteiktu aparatūru. Viņi savā ziņā ir noņēmuši nepatīkamo gubernatoru no mikroshēmu ražošanas progresa dzinēja.
Atbrīvošanas arhitektūra
Lai gan presē ir daudz ziņots par Transmeta kā jaunu uzņēmumu, bieži vien tiek pazaudēta pati tehnoloģija. Crusoe ir hibrīda programmatūras/aparatūras mikroshēma, kuras vienīgais mērķis ir palaist programmatūru, kas paredzēta citiem mikroprocesoriem. Liela daļa no tā, ko Intel un citi paveic silīcijā, Transmeta ir pārgājusi uz programmatūru. Priekšrocības? Pirmkārt, pašas mikroshēmas ņem mazāk silīcija, padarot tās lētākas. Otrkārt, vienkāršāka mikroshēma patērē mazāk enerģijas — tas ir īpaši svarīgi portatīvajiem datoriem. Bet, iespējams, tālejošākā ietekme ir tāda, ka, izstrādājot Crusoe, Transmeta ir nācis klajā ar novatorisku pieeju, kurā nav daudz problēmu, kas pēdējo divu desmitgažu laikā ir skārušas mikroshēmu dizainu.
Pirms Crusoe katram mikroprocesoram, kas jebkad tika uzbūvēts, bija savs publicēts instrukciju kopums — skaidrs līgums, kas nosaka, kā mikroshēma darbosies ar programmatūru. Instrukciju kopa sola, ka, ja izstrādātāji raksta programmatūru, kas veic X, mikroshēmas darbības rezultātā būs Y — tagad un uz visiem laikiem.
Problēma ir tāda, ka, tiklīdz ir izstrādāta jauna mikroshēma, tā tiek bloķēta laikā. Kad tiek veidots programmatūras krājums mikroshēmai, kļūst gandrīz neiespējami veikt uzlabojumus instrukciju komplektā. Arī programmatūras izstrāde ir apgrūtināta, jo jebkurai jaunai programmai, lai tā darbotos, ir jāievēro mikroshēmas instrukciju kopas likumi. Mikroprocesoru dizaineri vēlas, lai mikroshēmas darbotos ātrāk, taču viņiem ir arī jāpadara tie darboties esošajā programmatūrā. Tāpēc viņi palielina ātrumu, izmantojot tādus trikus kā atkārtota instrukciju secība procesoram. Taču lielu izmaiņu ieviešana ir gandrīz neiespējama. Tās ir kā ļoti sliktas trīskāju sacīkstes, kurās programmatūras un aparatūras inženieri ir sasieti pie gurniem, un viņi nekad nevar ātri virzīties uz vismodernāko produktu pieņemšanu, tāpēc viņi ir tik atkarīgi viens no otra dizaina izvēlēm un iepriekšējo izvēli. paaudzes.
Dicelam pašam ir tieša pieredze ar grūtībām veikt būtiskus uzlabojumus mikroshēmas sākotnējā dizainā. Uzņēmumā Sun Microsystems, kur viņš strādāja pirms Transmeta dibināšanas 1995. gadā, viņš bija atbildīgs par uzņēmuma SPARC zīmola mikroprocesora instrukciju kopas maiņu. Lai gan viņš uzsāka projektu 1990. gadā, tikai pagājušajā gadā jaunais instrukciju komplekts bija gatavs lietošanai. Jums ir nepieciešams laiks, lai nozare panāktu, lai iegūtu programmatūru, lai konvertētu lietojumprogrammas, Dicel teica TR pirms uzņēmuma IPO. Tas ir patiešām liels darījums.
Programmatūras maskēšanās
Lai noņemtu mikroshēmas no novecojušām instrukcijām, mikroprocesoru dizaineri periodiski izmetīs visu un sāks no jauna ar pilnīgi jaunu mikroshēmu, kas papildināta ar pilnīgi jaunu instrukciju komplektu. Tas ir process, ar kuru Intel cīnās ar savu ļoti aizkavēto Itanium mikroprocesoru, kas būs uzņēmuma pirmā mikroshēma, kas maršrutē datus 64 bitu digitālās joslās, tas ir, 64 bitu platumā. Dizaineru atbrīvošana no pašreizējās paaudzes 32 bitu kopnes radīs lielu veiktspējas lēcienu uz priekšu. Bet, sākot no jauna, tiek iegūta arī mikroshēma, kurai sākotnēji nebūs programmatūras, kas tajā darbotos, diez vai tas ir ideāls stāvoklis. Pat ja programmatūras izstrādātāji sadarbojas un sāk rakstīt kodu jaunajai instrukciju kopai, šī pieeja darbojas tikai vienu reizi: tad jūs esat atpakaļ tur, kur sākāt, ar mantoto programmatūru un gadiem ilgu ciklu, lai veiktu jebkādas būtiskas izmaiņas.
Dicels savā karjerā vairāk nekā vienu reizi ir izmēģinājis sākuma pieeju mikroshēmu dizainam. Pirms divām desmitgadēm, būdams Kalifornijas Universitātes Bērklijas maģistrants, viņš bija līdzautors darbam ar nosaukumu The Case for Reduced Instruction Set Computing. Šis pamatdarbs iedvesmoja veselu mikroprocesoru dizaina skolu; šodien visur ir tā saucamie RISC čipi.
Pēc RISC dizaina pabeigšanas Bērklijā viņš sāka izstrādāt RISC mikroshēmas variantu ar nosaukumu CRISP uzņēmumā Bell Labs; Tomēr CRISP nekad nav guvis plašu programmatūras izstrādātāju atbalstu. Pēc tam Dicels veica trešo mēģinājumu izstrādāt jaunu mikroprocesoru, strādājot pie gallija arsenīda mikroshēmas Sun, kas nekad netika ražots. Tas bija tā, it kā es teiktu cilvēkiem: Skatieties! Varat izmantot šo lielisko jauno mikroprocesoru — viss, kas jums jādara, ir jāizmet visa programmatūra un jāsāk no jauna!» sacīja Dicels. Esmu cīnījies šajā cīņā 20 gadus un esmu padevies.
Bet viņš īsti nepadevās. Tā vietā viņš atrada izeju.
Atrodoties Sun 90. gadu sākumā, Dicelu ietekmēja Krievijas superdatoru eksperta Borisa Babajana darbs, ar kuru viņš bija neoficiāli sadarbojies un kuru viņš nosauc par galveno padomdevēju savās domās par mikroshēmu dizainu. Tajā laikā Babajans un viņa uzņēmums Elbrus eksperimentēja ar paņēmienu, kas pazīstams kā dinamiskā binārā tulkošana un kompilācija (kurai Transmeta ir piešķīrusi daudz tirgum draudzīgāku nosaukumu code-morphing — termins, ko viņi kopš tā laika ir apzīmējuši ar preču zīmi).
Koda rakstīšana, lai viena veida programmatūra varētu darboties ar cita veida aparatūru, ir sena ideja: piemēram, IBM to darīja pagājušā gadsimta 60. gados. Tomēr šo mēģinājumu rezultāti vienmēr bija bezcerīgi gausi. Bet čipsi visu laiku kļuva ātrāki. Deviņdesmito gadu sākumā dizaineri postulēja, ka varētu būt veids, kā pārtulkot no vienas instrukciju kopas citā tik ātri, ka veiktspēja gandrīz neciestu. Tā vietā, lai būtu statisks, viens pret vienu katras instrukcijas tulkojums, tehnika varētu būt dinamiska, reāllaikā pārbaudot lietojumprogrammas neefektivitāti, izlabojot tās un atceroties labojumus.
Ir pretrunīgi domāt, ka papildu programmatūras slāņa ievietošana starp lietojumprogrammu un centrālo procesoru nepalēninās darbību — tas ir tāpat kā teikt, ka izliekta līnija starp diviem punktiem ir īsāka nekā taisna līnija. Taču attiecības starp programmatūru un aparatūru vairs nav taisnas līnijas: neefektivitātes dēļ, ko izraisa gadiem ilga viena instrukciju kopas izstrāde, dinamiskā tulkošana teorētiski varētu uzlabot veiktspēju. Runājot par aparatūru, process, kurā mikroshēmā tiek iesprausts arvien vairāk ķēžu, lai iegūtu pēdējo veiktspējas pieaugumu, faktiski var atspēlēties, palēninot darbību. Arī programmatūra reti kad ir tik efektīva, cik tā varētu būt gatava: lietojumprogrammu izstrādātāji, ņemot vērā piegādes datumu, iesaldē kodu, kad tas darbojas, nevis tad, kad tas ir ideāls. Dinamiskā tulkošana teorētiski varētu atrast atslābumu un nostiprināt to.
Pirms Dicels nodibināja Transmeta, tulkošanas metodes tika izmantotas tikai, lai esošā, nesaderīgā programmatūra un aparatūra runātu viena ar otru. Dicels un viņa līdzdibinātāji veica intelektuālu lēcienu: ja papildu programmatūras slānis varētu likt lietojumprogrammām darboties ar nesaderīgu aparatūru, kas viņiem atturētu veikt radikālas izmaiņas pašā pamatā esošajā aparatūrā, izmantojot jaunākās iespējas?
1994. gadā Dicels un līdzdibinātājs Dags Lērds uzsāka Sun projektu, kura mērķis bija uzlabot Windows darbību Sun darbstacijās, izmantojot dinamiskas binārās tulkošanas metodes. Mēs sapratām, ka, ja mēs varētu vienkārši pievienot dažas funkcijas aparatūrai, mēs faktiski varētu padarīt šo lietu diezgan ātri, saka Lairds. Tā bija lieliska ideja, viņš piebilst, atgādinot, ka Sun nebija ieinteresēts mainīt savu procesora dizainu, lai uzlabotu lietojumprogrammu palaišanu, kas bija rakstītas darbam ar standarta Intel mikroshēmām. Dicels un Lērds izrāvās paši. Dicels pieņēma darbā Kolinu Hanteru, cienījamu emulācijas metožu ekspertu, un Robertu Kmeliku, kurš strādāja koda optimizācijas jomā uzņēmumā Sun.
Kā tas bieži notiek tehnoloģiju jauninājumu jomā, prakse izrādījās grūtāka nekā teorija: Transmeta pirmā mikroshēmas dizains darbojās tik lēni, ka operētājsistēmas palaišanai mikroshēmai bija nepieciešama pusstunda. Taču ar katru no četrām mikroshēmu pārskatīšanām komanda uzzināja vairāk par bināro tulkošanu. Piecus gadus ilga rūpīga darba, ko veica 200 inženieru brigāde ar vairākiem simtiem miljonu dolāru riska kapitāla atbalstu, tika izveidota mikroshēma, kas darbojās pietiekami ātri, lai to varētu salīdzināt ar Intel procesoriem. Šī gada janvārī Transmeta paziņoja par pirmajām divām hibrīda silīcija/programmatūras mikroshēmām Crusoe līnijā. Pirmais, ko sauc par TM5400, ir 700 megahercu mikroshēma īpaši plāniem, īpaši vieglajiem Windows piezīmjdatoriem. Tas darbina programmatūru, kas rakstīta Intel mikroshēmām ar daļu no Pentium patērētās jaudas. Otrais, TM3120, ir 400 MHz mikroshēma, kas paredzēta interneta ierīču darbināšanai, izmantojot Linux versiju, ko Torvalds izstrādāja mobilajām ierīcēm.
Abas mikroshēmas programmatūras izstrādātājiem ir pilnībā saderīgas ar Intel procesoru instrukciju kopu. Zem tā ir VLIW mikroshēmas, ļoti gariem norādījumiem, arhitektūra ar 128 bitu platu kopni, kas var apvienot Intel mikroshēmas instrukcijas garākās virknēs un tādējādi tās izpildīt ātrāk. Starp uz āru vērsto instrukciju kopu un pamatā esošo aparatūru atrodas Transmeta koda morfēšanas programmatūra, kas pārveido Intel stila instrukcijas formā, ko var apstrādāt Crusoe, optimizē to izpildi un saglabā optimizētās izpildes atmiņā. Nākamreiz, kad mikroshēma saskarsies ar tādu pašu darbību, tulkošana vairs nav nepieciešama. Koda morfēšanas programmatūra (kas atrodas tikai lasāmās atmiņas mikroshēmā) ir pirmā programma, kas tiek palaista, kad procesors tiek palaists.
Tā kā liela daļa Crusoe funkcionalitātes ir pārvietota no aparatūras uz programmatūru, mikroshēma ir daudz vienkāršāka nekā salīdzināms Pentium procesors, un tai ir nepieciešama tikai viena ceturtā daļa tranzistoru. Papildu ieguvums no mazāka tranzistoru skaita ir tas, ka Crusoe patērē daudz mazāk jaudas, lai darbotos, tāpēc Transmeta nolēma pirmās mikroshēmas mērķēt uz mobilo sakaru tirgu. Vēl viena Crusoe pieejas priekšrocība ir jaunas mikroshēmas izstrādei nepieciešamā laika saīsināšana. Tā kā liela daļa dizaina atrodas programmatūrā, Dicels saka, ka daži klienti jau ir lūguši izmaiņas instrukciju komplektā un ka Transmeta inženieri varētu tās ieviest 24 stundu laikā. Lai gan tas, iespējams, neietver laiku jebkāda veida kļūdu pārbaudei, tomēr ir skaidrs, ka Transmeta ir atradusi veidu, kā krasi saīsināt izstrādes ciklu.
Niks Tredenniks, oriģinālās Motorola 68000 (procesors, kas darbināja pirmos Macintosh datorus) līdzarhitekts un tagad neatkarīgs mikroprocesoru dizaina konsultants, nav vienīgais, kas secina, ka Dicels kaut ko izdomā. Kad es pirmo reizi dzirdēju par Krūzo, es domāju, ka tā ir tikai jaunākā iedoma vai emulācijas atkārtota versija, kas nekad nav bijusi efektīva, saka Tredenniks. Bet, dzirdējis Dicelu runājam, Tredenniks kļuva par konvertētāju. Viņš saka, ka Transmeta dara kaut ko būtiski atšķirīgu no tā, kas ir darīts kopš datora izgudrošanas.
Transmeta mikroshēmas pēc būtības ir vienkāršāk projektējamas nekā parastās, saka Stenfordas Vārtons. Varat veikt programmatūras izmaiņas, iekļaut to testa versijā, palaist to un pārbaudīt, vai tā darbojas, un tas viss notiek vienā pēcpusdienā. Aparatūras jomā izpildes laiks var būt trīs līdz deviņi mēneši. Intel Itanium projektēšanā var ieguldīt 500 vai 1000 cilvēkgadu. Nākamajai Transmeta mikroshēmai var būt nepieciešami 10, 20 vai 50. Tas ir peles rieksti.
Virzība uz tādu mikroshēmu izgatavošanu, kas ir programmatūras un aparatūras hibrīdi, nevis tīrs silīcijs, ir plaši izplatīta. Taču Transmeta, visticamāk, saglabās vadību pārskatāmā nākotnē. Tas ir tāpēc, ka Dicels bija pirmais cilvēks, kurš izņēma šīs idejas no laboratorijas, nolīga 200 darbiniekus, lai tās strādātu, un izveidoja mikroshēmu, kas darbojās. Pa ceļam viņš izveidoja vismaz divus šķēršļus, kas palēninās viņa konkurenci.
Pirmais ir uzņēmuma testēšanas rīki. Patiešām, Transmeta dārgakmeņi, iespējams, nav pat pašas mikroshēmas, bet gan diagnostikas programmatūra, kuru uzņēmums bija spiests izveidot izstrādes procesā. Visi gatavie rīki, kas pastāv parasto mikroshēmu pārbaudei, pieņem, ka pastāv statiska saistība starp programmatūru, mikroshēmu un doto instrukciju. Transmeta bija nepieciešams, lai atrisinātu problēmu, kas saistīta ar mikroprocesora testēšanu, kas dinamiski mainās atkarībā no tā palaistās programmatūras. Citiem uzņēmumiem būs jāsāk no nulles, lai izveidotu savus testēšanas rīkus, kas var ilgt gadu vai ilgāk.
