首頁 游戲

紅白機(jī)大時代

第三十九章 準(zhǔn)十六位,雙核6502(中)

紅白機(jī)大時代 生煎包子 2126 2019-05-10 00:09:00

  日夲客戶希望英特爾幫助他們設(shè)計和生產(chǎn)八種專用集成電路芯片,用于實現(xiàn)桌面計算器。英特爾的工程師發(fā)現(xiàn)這樣做有兩個很大的問題。

  其一,英特爾已經(jīng)在全力開發(fā)三種內(nèi)存芯片了,沒有人力再設(shè)計八種新的芯片。其二,用八種芯片實現(xiàn)計算器,將大大超出預(yù)算成本。

  于是,英特爾的一個名叫特德-霍夫(Ted Hoff)的工程師仔細(xì)分析了日夲同行的設(shè)計。他發(fā)現(xiàn)了一個現(xiàn)象:這八塊芯片各實現(xiàn)一種特定的功能。

  當(dāng)用戶使用計算器時,這些功能并不是同時都需要的。比如,用戶需要計算一百個數(shù)的和,它會重復(fù)地輸入一個數(shù),再做一次加法,一共做一百次,最后再打印出來。

  而在這個時候,負(fù)責(zé)輸入、相加和打印的電路并不同時工作。也就是說,當(dāng)一塊芯片在工作時,其他芯片可能是空閑的。

  于是霍夫有了一個想法:為什么不能用一塊通用的芯片,加上程序來實現(xiàn)幾塊芯片的功能呢?當(dāng)需要某種功能時,只需要把實現(xiàn)該功能的一段程序代碼(稱為子程序)加載到通用芯片上,其功能與專用芯片會完全一樣。

  經(jīng)過幾天的思考后,霍夫繪制出計算器新的體系結(jié)構(gòu)圖,其中包含四塊芯片。

  一塊通用處理器芯片,實現(xiàn)所有的計算和控制功能;一塊可讀寫內(nèi)存(RAM)芯片,用來存放數(shù)據(jù);一塊只讀內(nèi)存(ROM)芯片,用來存放程序;一塊輸入輸出芯片,實現(xiàn)鍵入數(shù)據(jù)和操作命令、打印結(jié)果等等功能。

  這枚新的通用芯片,就是最早期CPU的雛形。可以說:CPU就是一種用來代替專用集成電路的器件。

  說通俗一點(diǎn),如果把sel信號看做“程序”的話,這個電路就像一個“CPU”能根據(jù)“程序”執(zhí)行不同的“操作”。如此一來,通過“程序”(sel信號),電路就能夠?qū)崿F(xiàn)復(fù)用。因為程序就是硬件電路的延伸。

  這就和人的大腦控制身體的電子信號是一個原理。

  比如人坐在電腦前看電影,同時也會吃零食,喝飲料,手會給身體不適應(yīng)的地方抓癢。其中,看電影這項主要“程序”,就是“計算功能”,而其他的次要“程序”,就是“控制功能”。

  可見,控制功能和電腦的重復(fù)運(yùn)算,在理論上是非常接近的。它們可以稱之為人類的重復(fù)運(yùn)算,也就是習(xí)慣動作。

  比如,我們給電腦輸入兩個指令:

  mov eax,0

  repeat:inc eax

  jmp repeat

  ——

  int main()

  {

  unsigned int i = 0;

  while(1)

  i++;

  }

  電腦產(chǎn)生了一個從0不斷增加的序列,會一直加到溢出閾值,又從0開始。這個閾值取決于計算機(jī)的字長,也就是多少位的CPU。

  這樣的重復(fù)數(shù)據(jù),就相當(dāng)于人類的習(xí)慣控制動作。比如吃飯,不需要大腦作為特別細(xì)致的計算,只吃到達(dá)到閾值,也就是飽腹為止。

  同樣,我們再給電腦輸入另外兩個指令:

  mov eax,0

  repeat:dec eax

  jmp repeat

  ——

  int main()

  {

  unsigned int i = 0;

  while(1)

  i--;

  }

  這是一個遞減序列。我們可以理解為人的手為自己抓癢,同樣是一個習(xí)慣性動作,大腦也不用刻意去指揮運(yùn)算。人會抓到達(dá)到閾值,也就是“消除癢”數(shù)據(jù)為止。

  人做習(xí)慣性動作時,一般是不會占用大腦的思維空間的,電腦也是一樣。開機(jī)進(jìn)入界面之后,非運(yùn)算程序不再占用CPU的讀取空間,硬盤也停止跳響。

  霍夫最初生產(chǎn)的集成芯片,就完成了這樣的設(shè)計理論。它擁有四個運(yùn)算子程序的芯片,可以理解為四位元。CPU的指令也由此分為了兩種。

  一種是RISC(Reduced Instruction Set Computer),即精簡指令集計算機(jī),也就是重復(fù)運(yùn)算。

  一種是CISC (Complex Instruction Set Compute),復(fù)雜指令集計算機(jī),也就是控制運(yùn)算。

  RISC,即重復(fù)運(yùn)算,既是取決于CPU的位元。四位元CPU可以同時進(jìn)行四種不同的重復(fù)運(yùn)算,八位元CPU可以同時進(jìn)行八種不同的重復(fù)運(yùn)算。

  就像一個人,可以邊抽煙,邊喝酒,邊說話,嘴里嚼著檳榔,人坐在馬桶上拉便便,手上拿著手機(jī)刷劇,耳朵里還能聽歌;而腦子里則在關(guān)心國家大事。

  但如何保證在重復(fù)運(yùn)算的時候,信息不會發(fā)生錯位呢?比如不小心把馬桶里的水喝了?人腦靠的是自覺,電腦靠的則是CPU的周期頻率。

  CPU的周期頻率,是外頻與倍頻的積。CPU通過外部的晶振產(chǎn)生一個時鐘信號,然后再通過內(nèi)部的電路(鎖相環(huán)),倍頻至需要的頻率。

  不同的時鐘信號,可以產(chǎn)生不同的頻率。這讓不同的重復(fù)運(yùn)算,在同一個電路中能夠做到相安無事。你走你的,我走我的,它們以電流的光速移動傳遞運(yùn)算結(jié)果。

  率先研發(fā)出十六位元CPU的,是一九八三年誕生的蘋果LISA。但這款處理器尚未解決CISC運(yùn)算成本,價格高達(dá)一萬美元,于一九八六年淘汰。

  因為一九八六年的中國長城,研發(fā)出更有成本優(yōu)勢的十六位元計算機(jī)。

  同年,IBM研發(fā)出80386CPU,即三十二位元處理器。但它同樣沒有根本性的解決成本問題。所以到八十年代末,游戲CPU基本上還停留在八位元。

  所謂的準(zhǔn)十六位CPU,不過是因為晶體管單方面的升級,讓外頻能夠發(fā)射出區(qū)別于原周期頻率的信號。而實際上,它并不能完成十六個絕對相同的重復(fù)運(yùn)算,也不能完成十六個絕對不相同的重復(fù)運(yùn)算。

  這就是PCE的主機(jī)性能。

  而CISC,即控制運(yùn)算,它才是CPU的真正核心。它相當(dāng)于人類大腦真正的思維正中,真正在辦理的主要事件。無論是作為人還是機(jī)器,CISC都是無可取代的“核”。

  除去吃零食,喝飲料,抓癢這些可有可無的RISC,增加一個看電影的CISC更重要。從某種意義上來說,CISC就相當(dāng)于第二顆大腦。

  對CPU來講,這就是雙核。

  在位元沒有真正普及的時代,這才是提升機(jī)能最行之有效的辦法了。

  “雙核,原來如此。王君也好,哈德森也好,他們都是邁向新位元的理論先驅(qū)!這位王君,真是了不起啊?!蓖砩?,橫井俊平幾乎徹夜未眠,一直坐在書桌前。

  他的手上,依然拿著日志本。如今的這本日志,已經(jīng)寫滿了一百多頁,全部都是橫井俊平和王秋陽一個月以來交流的成果。

  王秋陽二十一世紀(jì)的思維,讓他再也難以放下這份提案。

按 “鍵盤左鍵←” 返回上一章  按 “鍵盤右鍵→” 進(jìn)入下一章  按 “空格鍵” 向下滾動
目錄
目錄
設(shè)置
設(shè)置
書架
加入書架
書頁
返回書頁
指南