7、芯片发展
第一臺(tái)繼電器式計(jì)算機(jī)由康德拉.楚澤制造(1910-1995),這臺(tái)機(jī)器使用了二進(jìn)制數(shù),但早期版本中使用的是機(jī)械存儲(chǔ)器而非繼電器,使用老式35毫米電影膠片進(jìn)行穿孔編程。
同一時(shí)期,哈佛大學(xué)研究生霍華德.艾肯 要尋找大量的重復(fù)計(jì)算的方法,正式他的這一需求促使哈佛與IBM合作,并最終在1943年創(chuàng)造出一臺(tái)自動(dòng)連續(xù)可控計(jì)算機(jī),也就是聞名于世的Harvard Mark I。這是一臺(tái)可以打印表格的數(shù)字計(jì)算機(jī)。Mard II 是最大的繼電式計(jì)算機(jī),使用了13000個(gè)繼電器。哈佛大學(xué)計(jì)算機(jī)實(shí)驗(yàn)室當(dāng)時(shí)的主任是艾肯,也正式他講授了計(jì)算機(jī)科學(xué)的第一次課。
繼電器不是完美的,因?yàn)樗麄兪菣C(jī)械性的,利用金屬片的彎曲和伸直狀態(tài)進(jìn)行工作,而頻繁的工作可能導(dǎo)致其斷裂。1947年人們?cè)贛arkII計(jì)算機(jī)的繼電器中發(fā)現(xiàn)了一只飛蛾。格蕾絲.莫瑞.赫柏于1944加入艾肯的團(tuán)隊(duì),他將上面提到的那只飛蛾用帶子綁在計(jì)算機(jī)日志上,并在其邊上著名“第一個(gè)被發(fā)現(xiàn)有生命的bug”。
?
真空管是一種可以替代繼電器的元件,它由約翰.安布羅斯.弗萊明 和 李.德.福雷斯特 在進(jìn)行無(wú)線電通信鏈接時(shí)研發(fā)出來(lái)的。到20世紀(jì)40年代,真空管已廣泛應(yīng)用于放大電話信號(hào),那時(shí)期,美國(guó)的幾乎美國(guó)家庭都有一臺(tái)帶有發(fā)光二極管可控收音機(jī)。他們能放大無(wú)線信號(hào),并且把他們變成還原為人們能聽(tīng)見(jiàn)的聲音。真空管同樣可以鏈接成與門、或門、與非門,以及與或門——這點(diǎn)很像繼電器。
真空管價(jià)格昂貴、耗電量大、以及產(chǎn)生的熱量太多、最大的問(wèn)題是真空管最終會(huì)被燒壞。擁有真空管收音機(jī)的人們習(xí)慣于定期更換真空管。一臺(tái)計(jì)算機(jī)擁有數(shù)量巨大的真空管,按統(tǒng)計(jì)學(xué)來(lái)分析,每隔幾分鐘就會(huì)燒壞一個(gè)。
用真空管最大的好處在于真空管的狀態(tài)可以在百萬(wàn)分之一秒內(nèi)發(fā)生轉(zhuǎn)變,速度比繼電器快1000倍。不過(guò)當(dāng)時(shí),速度并不在主要考慮范圍內(nèi)。
1945年,真空管已經(jīng)完全取代了繼電器。雖然繼電器計(jì)算機(jī)被稱為電動(dòng)機(jī)械計(jì)算機(jī),但真空管是第一臺(tái)電子計(jì)算機(jī)的基礎(chǔ)。
在英國(guó),巨像計(jì)算機(jī)用來(lái)破譯德國(guó)名為“Enigma”代碼生成器產(chǎn)生的代碼,艾倫.M.圖靈 為這個(gè)項(xiàng)目做出了巨大的貢獻(xiàn),圖靈撰寫了兩篇非常有影響的論文,這使他如今成為計(jì)算機(jī)領(lǐng)域的鼎鼎大名的人物。第一篇論文發(fā)表于1937年,首次提出了“可計(jì)算性”這個(gè)概念,用來(lái)分析哪些事情計(jì)算機(jī)可以做到,哪些做不到。他為計(jì)算機(jī)構(gòu)想了一個(gè)抽象模型,這就是現(xiàn)在為人所熟知的圖靈機(jī)。圖靈第二篇非常有名的論文是關(guān)于人工智能的,這篇論文中,他介紹了一種測(cè)試機(jī)器智能的方法,即現(xiàn)在為人熟知的圖靈測(cè)試法。
在摩爾電子工程學(xué)院,J.普利斯普.埃克特和約翰.莫克利設(shè)計(jì)了ENIAC(電子數(shù)字積分計(jì)算機(jī)),使用了18000個(gè)真空管并最終在1945年底完成。按全部噸位算(大約30噸),ENIAC是曾經(jīng)(或許也是以后)制造出來(lái)的最大計(jì)算機(jī)。到1977年,人們可以在Radio Shack買到速度更快的計(jì)算機(jī)。埃克特和莫克利想為計(jì)算機(jī)申請(qǐng)專利,可是卻被競(jìng)爭(zhēng)者約翰.V.安塔納索夫阻擾了,他更早一步設(shè)計(jì)了一臺(tái)電子計(jì)算機(jī),但它運(yùn)行得并不順暢。
ENIAC吸引了數(shù)學(xué)家約翰.馮.諾依曼的眼球,從1930年開(kāi)始,出生在匈牙利的馮.諾依曼就定居在美國(guó)。作為一名令公眾矚目的任務(wù),因僅憑自己的大腦就能進(jìn)行復(fù)雜的數(shù)學(xué)計(jì)算而聞名。馮諾依曼當(dāng)時(shí)是普林斯頓高級(jí)研究院的一名數(shù)學(xué)教授,研究范圍很廣,從量子力學(xué)到游戲應(yīng)用,甚至到經(jīng)濟(jì)理論。
約翰.馮.諾依曼協(xié)助設(shè)計(jì)的ENIAC的后續(xù)產(chǎn)品EDVAC。在1946年與亞瑟.W.博克斯和何曼.葛思庭共同執(zhí)筆的題為“電子計(jì)算器件邏輯設(shè)計(jì)的初步分析與討論“的論文中,他描述了EDVAC比ENIAC更加先進(jìn)的特點(diǎn)。EDVAC的設(shè)計(jì)者們感覺(jué)計(jì)算機(jī)內(nèi)部應(yīng)當(dāng)使用二進(jìn)制數(shù),而ENIAC使用的是十進(jìn)制數(shù)。同時(shí)他們認(rèn)為計(jì)算機(jī)中應(yīng)當(dāng)擁有盡可能大容量的存儲(chǔ)器,這些存儲(chǔ)器應(yīng)該用來(lái)存儲(chǔ)程序代碼和程序執(zhí)行中產(chǎn)生的數(shù)據(jù)(這些在ENIAC中都不能實(shí)現(xiàn),對(duì)于ENIAC來(lái)說(shuō),編程不過(guò)是扳動(dòng)開(kāi)關(guān)和插拔電線的事情)。這些指令在存儲(chǔ)器中是順序存放的,而且可以由程序計(jì)數(shù)器進(jìn)行尋址,但允許條件跳轉(zhuǎn)。這就是著名的”存儲(chǔ)程序概念“。
這些設(shè)計(jì)上的決策是計(jì)算機(jī)歷史中非常重要的一個(gè)進(jìn)化階段,現(xiàn)在我們稱之為”馮.諾依曼結(jié)構(gòu)“。前一節(jié)介紹的就是經(jīng)典的馮.諾依曼計(jì)算機(jī),伴隨著馮.諾依曼結(jié)構(gòu),又出現(xiàn)馮.諾依曼瓶頸。在馮.諾依曼計(jì)算機(jī)中,為了執(zhí)行指令通常需要花費(fèi)大量的時(shí)間先將這些指令從存儲(chǔ)器中取出來(lái),我們回憶一下,前一節(jié)中,最后設(shè)計(jì)的計(jì)算機(jī)需要花費(fèi)3/4的時(shí)間用來(lái)取指令。
?
克勞德.香農(nóng)是另外一個(gè)非常有影響力的思想家,他的1938年的碩士論文,確定了開(kāi)關(guān)、繼電器以及布爾代數(shù)之間的關(guān)系。1948年為貝爾實(shí)驗(yàn)室工作期間,他發(fā)表了一篇為”通信過(guò)程中的代數(shù)理論“的文章,這篇文章中,他不僅將”位“的概念介紹給世界,更開(kāi)創(chuàng)了一個(gè)新的研究領(lǐng)域,即著名的”信息論“。信息論研究的是數(shù)字信息在有噪聲的情況下傳輸,如何彌補(bǔ)因噪聲產(chǎn)生的損失。1949年,他撰寫了第一篇關(guān)于如何編程可以讓計(jì)算機(jī)下棋的文章,1952年他設(shè)計(jì)了一個(gè)通過(guò)繼電器控制的機(jī)械鼠,它可以在一個(gè)迷宮中記住路徑。
諾博爾特.韋納從哈佛大學(xué)獲得數(shù)學(xué)博士學(xué)位時(shí)只有18歲,其撰寫的Cybernetics,or Control and Communication in the Animal and Machine(1948年)一書使他聞名于世。他使用新詞匯”控制論“(cybernetics:源于希臘語(yǔ)舵手)表示人類和動(dòng)物的生物過(guò)程同計(jì)算機(jī)和機(jī)器人原理之間的關(guān)系。大眾文化中,人們普遍使用cyber作為前綴表示與計(jì)算機(jī)相關(guān)的一切,最著名的一個(gè)詞,數(shù)百萬(wàn)臺(tái)計(jì)算機(jī)通過(guò)因特網(wǎng)相連被稱作”cyberspace“(網(wǎng)絡(luò)空間),這個(gè)次源于計(jì)算機(jī)科幻小說(shuō)作家威廉.吉布森在1984年發(fā)表的小說(shuō)Neuromancer中的“cyberpunk”一詞。
1948年,埃克特與莫奇利計(jì)算機(jī)公司(后來(lái)成為雷明頓蘭德公司一部分)開(kāi)始開(kāi)發(fā)第一臺(tái)商用計(jì)算機(jī)——通用自動(dòng)計(jì)算機(jī),或者成為UNIVAC。這臺(tái)計(jì)算機(jī)與1951年完成,此后就被送到了人口普查局。UNIVAC在網(wǎng)絡(luò)應(yīng)用方面的首次亮相在哥倫比亞廣播公司,它被用來(lái)測(cè)試1952年的總統(tǒng)選舉結(jié)果。沃爾特.克朗凱特將UNIVAC稱作“electronic brain”(電腦)。同樣是在1952年,IBM發(fā)布了其第一個(gè)商用計(jì)算機(jī)系統(tǒng),代號(hào)701.
自此開(kāi)始了漫長(zhǎng)的公司和政府計(jì)算機(jī)歷史。盡管這段歷史很有趣,但我們要追蹤另一段歷史——如何縮減計(jì)算機(jī)成本和體積以及讓其走入尋常百姓家,這開(kāi)始于1947年一個(gè)鮮為人知的電子技術(shù)突破。
當(dāng)時(shí)AT&T(美國(guó)電話電報(bào)公司)正式將科學(xué)與技術(shù)的研究同其他業(yè)務(wù)分割時(shí),1925年1月1日成立了貝爾實(shí)驗(yàn)室。最初目的是發(fā)展改良電話系統(tǒng)相關(guān)技術(shù),幸運(yùn)的是在這種非常模糊的目標(biāo)下可以研究很多技術(shù),對(duì)于電話系統(tǒng)而言,一個(gè)顯而易見(jiàn)的長(zhǎng)期目標(biāo)是通過(guò)電線不失真的傳播語(yǔ)音信號(hào)。
從1912年開(kāi)始,貝爾系統(tǒng)致力于真空放大器的研究,為了能讓電話系統(tǒng)使用真空管,對(duì)其進(jìn)行了相當(dāng)數(shù)量的研究和設(shè)計(jì)方面的改進(jìn)。盡管做了大量的工作,真空管仍然有許多必須改進(jìn)的地方。真空管體積太大、耗能大,并且最終會(huì)燒毀,但是,它們?cè)诋?dāng)時(shí)是唯一的選擇。
1947年12月16日,當(dāng)貝爾實(shí)驗(yàn)室的兩個(gè)物理學(xué)家 約翰·巴丁和沃爾特·布蘭坦制作出另一種放大器時(shí),所有一切都發(fā)生了改變。這種新型的放大器用一塊鎘(一種半導(dǎo)體元素)平板和一條黃金薄片制成。一周之后,他們將這個(gè)東西演示給他們的老板威廉·肖克利。這就是第一個(gè)“晶體管”,它被一些人稱作20世紀(jì)最重要的發(fā)明之一。
晶體管并不是憑空產(chǎn)生的,早在8年前(1939年12月29日)肖克利在他的筆記本上寫道“今天我突然想到,使用半導(dǎo)體來(lái)制作放大器從原理上講比真空管更為可能”在晶體管誕生后的幾十年里,人們不斷完善它。1956年肖克利、巴丁和布蘭坦“因?yàn)樗麄冊(cè)诎雽?dǎo)體上的研究以及晶體管效應(yīng)的發(fā)現(xiàn)”獲得了當(dāng)年的諾貝爾物理學(xué)獎(jiǎng)。
導(dǎo)體因?yàn)樗鼈兛梢杂欣陔娏鞯耐ㄟ^(guò)而得名。銅、銀以及金都是很好的導(dǎo)體,元素周期表中這三種元素同屬一列并非巧合。
原子中的電子分布在原子核外,并圍繞原子核運(yùn)動(dòng)。這三種導(dǎo)體的共同特征是在原子核最外層都有一個(gè)單獨(dú)的電子,而這個(gè)電子可以很容易的與原子中的其他電子剝離,因此可以自由移動(dòng)形成電流。與導(dǎo)體對(duì)應(yīng)的是絕緣體——比如橡膠和塑料——幾乎不能導(dǎo)電。
鎘元素和硅元素(以及一些化合物)被稱為“半導(dǎo)體”,因?yàn)樗麄兊膶?dǎo)電系數(shù)可以通過(guò)多種方式操控而得名。半導(dǎo)體的原子核在最外層有4個(gè)電子,是外層所能擁有的最大電子數(shù)目的一半。純半導(dǎo)體中,原子之間形成穩(wěn)定的化學(xué)鍵以及類似金剛石的結(jié)構(gòu)。這種半導(dǎo)體不是良好的半導(dǎo)體。
但是半導(dǎo)體可以摻入一些雜質(zhì),即與某些雜質(zhì)組合。一種類型的雜質(zhì)稱作N型(N表示negative)半導(dǎo)體,他們?yōu)樵又g的結(jié)合提供額外的電子。另一種雜質(zhì)被稱作P型半導(dǎo)體。
把一P型半導(dǎo)體夾在兩個(gè)N型半導(dǎo)體之間可以使之成為一個(gè)放大器。這就是著名的NPN晶體管,其三部分分別為集電極、基極以及發(fā)射極。
下面的NPN晶體管的原理示意圖
在基極施加微小的電壓就可以控制非常大的電壓從集電極到發(fā)射極。如果在基極沒(méi)有施加電壓,那么晶體管將不起作用。
晶體管通常封裝在直徑為四分之一英寸的小金屬罐中,并伸出三根金屬線,外形如下:
晶體管開(kāi)創(chuàng)了固態(tài)電子器件的時(shí)代,即指晶體管不再需要真空而是使用固體制造,尤其是使用半導(dǎo)體以及當(dāng)今最為常見(jiàn)的硅來(lái)制造。除了體積比真空管更小,晶體管需要的電量更小,產(chǎn)生的熱量更少,而且持久耐用。1954年,德州儀器公司,半導(dǎo)體革命中一個(gè)非常重要的公司,制作了第一批可以隨身攜帶的晶體管收音機(jī)。
可是,晶體管真正的商業(yè)應(yīng)用卻始于助聽(tīng)器,為了紀(jì)念亞歷山大·格雷厄姆·貝爾為聾人奉獻(xiàn)畢生精力,AT&T公司允許助聽(tīng)器制造商無(wú)償使用晶體管技術(shù)。晶體管電視機(jī)誕生于1960年,到現(xiàn)在的電子管的應(yīng)用幾乎已經(jīng)消失了(一些高保真音響愛(ài)好者以及電子吉他彈奏者熱衷于真空管放大器產(chǎn)生的音質(zhì)),1956年,肖克利離開(kāi)了貝爾實(shí)驗(yàn)室成立的肖克利半導(dǎo)體實(shí)驗(yàn)室。他回到了自己出生的地方,加利福尼亞帕羅奧圖市,他的公司是第一個(gè)落戶于該地區(qū)的大公司。其他半導(dǎo)體和計(jì)算機(jī)公司立刻也在該地區(qū)建立基業(yè),舊金山南部的這個(gè)地區(qū)現(xiàn)在被人們成為硅谷。
開(kāi)發(fā)真空管的目的是為了放大電信號(hào),但是他們同樣可以應(yīng)用在邏輯門的開(kāi)關(guān)上,作用與晶體管一樣。下面是非常類似于繼電器形式的由晶體管構(gòu)造的與門。
繼電器、真空管以及晶體管最初都是為了開(kāi)發(fā)放大器設(shè)計(jì)的,但是通過(guò)相似的方式可以組成邏輯門,而計(jì)算機(jī)則是由這些部件構(gòu)成的。1956年誕生了第一臺(tái)晶體管計(jì)算機(jī)。
晶體管可以在更小的空間里安裝更多的邏輯門,但是無(wú)法將計(jì)算機(jī)結(jié)構(gòu)變得更簡(jiǎn)單。晶體管更加小而且不容易控制。
一對(duì)晶體管可以連接成門,而門常常可以連接成振蕩器、加法器、選擇器以及解碼器。振蕩器可以組成多位鎖存器或者RAM陣列。如果把晶體管預(yù)先連接成常見(jiàn)的構(gòu)件,再用其來(lái)組裝計(jì)算機(jī)會(huì)更加容易。
這種設(shè)想由英國(guó)物理學(xué)家杰利佛在1952年5月一次演講中提出。
1958年7月,德州儀器公司的杰克·基爾比想到了一個(gè)可以在一塊硅片制造出多個(gè)晶體管、電阻和其他電子元件的方法,而且他并不知道杰里佛預(yù)言。6個(gè)月過(guò)后,也就是1959年1月,羅伯特·諾伊斯也想到了類似的方法。諾伊斯起初是為肖克利半導(dǎo)體實(shí)驗(yàn)室工作,但在1957年,他與其他7位科學(xué)家離開(kāi)了肖克利半導(dǎo)體實(shí)驗(yàn)室創(chuàng)辦了仙童半導(dǎo)體公司。
在技術(shù)發(fā)展史中,同時(shí)產(chǎn)生一項(xiàng)發(fā)明是較常見(jiàn)的,這可能超出了人們的想象。盡管基爾比 比 諾伊斯早6個(gè)月發(fā)明了這種設(shè)備,而且德州儀器公司先于仙童公司申請(qǐng)專利,但卻是諾伊斯首先獲得了專利。因此產(chǎn)生了法律的糾紛,但過(guò)了10年后,問(wèn)題才得到令雙方都滿意的解決。盡管基爾比和諾伊斯并沒(méi)有在一起共事,但他們倆被稱為集成電路,或者叫做IC的共同發(fā)明者。
?集成電路需要經(jīng)過(guò)非常復(fù)雜的工藝流程才可以制造出來(lái),包括將硅片分層,然后非常精確的摻入雜質(zhì)以及蝕刻不同的區(qū)域形成微小組件。開(kāi)發(fā)一種新的集成電路盡管很昂貴,但可以大量生產(chǎn)中獲得效益——產(chǎn)量越大,價(jià)格就越便宜。
實(shí)際上,硅片是薄而且易碎的,因此它必須被安全的封裝起來(lái),這樣不僅可以起到保護(hù)作用,還可以為芯片內(nèi)部的部件與其他芯片之間的連接提供某種便利。集成電路有幾種不同的封裝方式,但最為常見(jiàn)的是采用矩形塑料雙排直插式(DIP),提供14、16或者40個(gè)管腳。
上圖,芯片凹槽朝左,從左下角開(kāi)始,環(huán)繞到右端,依次為1-16.管腳之間的距離正好是1/10英寸。
1965年,戈登·E·摩爾(當(dāng)時(shí)在仙童工作,后來(lái)成為英特爾合伙創(chuàng)辦人)發(fā)現(xiàn)從1959年以后,技術(shù)以這樣一種方式在發(fā)展:同一塊芯片上可以集成的晶體管數(shù)目每年翻一倍。他預(yù)測(cè)這種趨勢(shì)將會(huì)持續(xù)。真實(shí)的發(fā)展速度比摩爾發(fā)現(xiàn)稍慢一些,因此摩爾定律被修正為:每18個(gè)月同一塊芯片上集成的晶體管數(shù)目就會(huì)翻一倍。這仍是一個(gè)令人吃驚的速度,它解釋了為什么剛剛過(guò)了幾年,家用的計(jì)算機(jī)好像已經(jīng)過(guò)時(shí)了。
20世紀(jì)70年代中期,有兩個(gè)制作集成電路的組件的”家族“盛行:TTL和CMOS
TTL代表transistor-transistor logic(晶體管-晶體管邏輯)。20世紀(jì)70年代中期,數(shù)字電路設(shè)計(jì)師人手一本《TTL工程師設(shè)計(jì)數(shù)據(jù)手冊(cè)》,下面簡(jiǎn)稱《TTL數(shù)據(jù)手冊(cè)》。這是一本德州儀器和其他幾個(gè)公司出售的TTL集成電路7400系列完整的參考書,這樣稱呼因?yàn)檫@個(gè)IC”家族“的每一名”成員“都是以數(shù)字74開(kāi)頭。
7400系列中的每一個(gè)集成電路都是由特定方式連接的預(yù)留邏輯門組成。一些芯片提供簡(jiǎn)單的預(yù)留的邏輯門,設(shè)計(jì)者可以利用它們來(lái)組成更大規(guī)模的組件;另外一些芯片則提供通用組件,例如:觸發(fā)器、加法器、選擇器以及解碼器。
7400系列中第一個(gè)集成電路標(biāo)號(hào)即為7400,在《TTL數(shù)據(jù)手冊(cè)》中這樣描述它——”四個(gè)雙輸入正與非門“。這意味著這個(gè)特殊的集成電路包含四個(gè)雙輸入與非們。”正“與門則是指1對(duì)應(yīng)為有電壓,而0對(duì)應(yīng)沒(méi)有電壓。下面是一個(gè)14管腳的芯片,數(shù)據(jù)手冊(cè)中的一張小圖顯示了管腳對(duì)應(yīng)的輸入與輸出。
上圖為芯片俯視圖,小凹槽在左邊。
14管腳Vcc,與符號(hào)V一樣,用來(lái)表示電壓(大寫字母V的雙下標(biāo)代表電壓源。下標(biāo)字幕C指晶體管的電壓輸入端,即集電極,collector)。GND代表接地。
拿TTL7400系列來(lái)說(shuō),Vcc值必須介于4.75V和5.25V之間。換句話講,電壓必須在5V±5%的范圍。電壓低于4.75V時(shí),芯片將無(wú)法工作。高于5.25V,芯片將被燒壞。即便有個(gè)5V電池也不能用來(lái)對(duì)TTL進(jìn)行供電,因?yàn)殡姵氐碾妷翰豢赡軇偤眠m合這些芯片。通常情況下,TTL需要從墻上接入電源。
7400芯片中每一個(gè)與非門有兩個(gè)輸入端和一個(gè)輸出端,且相互獨(dú)立工作。輸入端電壓0-0.8v區(qū)間為邏輯0,2~5v區(qū)間為邏輯1。0.8~2V范圍電壓應(yīng)當(dāng)避免。
TTL典型輸出是以0.2V表示邏輯“0”,以3.4V表示邏輯“1”。考慮到電壓不穩(wěn)定,有時(shí)會(huì)有一些波動(dòng),集成電路的輸入和輸出端有時(shí)不用“0”和“1”表示,而是用“低”和“高”表示。此外,有時(shí)候低電壓可以表示邏輯“1”,而高電壓則可以表示邏輯“0”,這種配置稱為“負(fù)邏輯”。7400是正邏輯。
?TTL的典型輸出0.2V代表邏輯“0”,3.4V代表邏輯“1”,那么這個(gè)輸出是TTL可以隔離噪聲的原因。
影響一個(gè)集成電路性能最重要的因素可以認(rèn)為是傳播時(shí)間,也就是輸入端發(fā)生變化引起輸出端發(fā)生相應(yīng)變化所需要的時(shí)間。
通常以納秒來(lái)衡量芯片的傳播時(shí)間,縮寫為nsec,即ns。十億分之一秒被稱為納秒。7400芯片中與非門的傳播時(shí)間應(yīng)該保證小于22ns。
納秒使計(jì)算機(jī)成為可能,計(jì)算機(jī)處理器遲鈍的做著簡(jiǎn)單的事情——從存儲(chǔ)器取出一個(gè)字節(jié)放到寄存器,再將兩個(gè)字節(jié)相加,然后再將結(jié)果存放回存儲(chǔ)器,沒(méi)有納秒是很慢的。
繼續(xù)閱讀《TTL數(shù)據(jù)手冊(cè)》會(huì)發(fā)現(xiàn)書中很多熟悉的小條目。7402芯片有4個(gè)雙輸入或非門,7404芯片有6個(gè)反相器,7408芯片有4個(gè)雙輸入與門,7432芯片有4個(gè)雙輸入或門,以及7430芯片有一個(gè)8輸入與非門,如下圖:
Nc表示無(wú)連接(no connection)。
7474芯片是另一個(gè)較熟悉的芯片,它是一個(gè)“帶預(yù)置和清零的雙D型正邊沿觸發(fā)器”,如下圖:
《TTL數(shù)據(jù)手冊(cè)》中甚至還囊括了這個(gè)芯片中每個(gè)觸發(fā)器的邏輯圖:
邏輯表如下:
繼續(xù)閱讀《TTL數(shù)據(jù)手冊(cè)》會(huì)發(fā)現(xiàn),7483芯片是一個(gè)4位二進(jìn)制全加法器,74151是一個(gè)8-1的數(shù)據(jù)選擇器,74154芯片是一個(gè)4-16的解碼器,74161芯片是一個(gè)4位同步二進(jìn)制計(jì)數(shù)器,以及74175芯片是一個(gè)帶清零的4輸入D型觸發(fā)器。從上述芯片中挑出兩種可以制作一個(gè)8位鎖存器。
將TTL反相器的輸出連接到輸入,就會(huì)獲得一個(gè)振蕩器,而且其震蕩頻率更容易計(jì)算。這種振蕩器使用石英晶體制造相當(dāng)簡(jiǎn)單,石英晶體放在帶有兩個(gè)引線的密封小扁罐中。這些石英晶體的震蕩頻率在一個(gè)特定的值,通常情況下是每秒至少振蕩一百萬(wàn)個(gè)周期,稱1兆赫茲,縮寫為MHz。如果要使用TTL制造前面說(shuō)的計(jì)算機(jī),需要時(shí)鐘頻率為10MHz才可以使其運(yùn)行良好,每條指令執(zhí)行時(shí)間為400ns。
芯片家族中另一位明星(至今仍是)是CMOS,CMOS表示互補(bǔ)金屬氧化物半導(dǎo)體。相應(yīng)的有一本20世紀(jì)70年代中期的《CMOS數(shù)據(jù)手冊(cè)》。書中涵蓋了CMOS家族中的4000系列的IC的信息。
TTL供電電壓要求在4.75~5.25V范圍內(nèi)。而對(duì)于CMOS來(lái)說(shuō),范圍在3~18V內(nèi)的電壓均可,非常靈活。此外,CMOS相比TTL需要更少的能量,這使得電池運(yùn)行小型CMOS電路變得可行。CMOS的缺點(diǎn)是速度慢,比如,在供電電壓為5V的情況下,CMOS4008 4位全加器可以保證的傳播時(shí)間只有750ns,但仍不能與TTL4位加法器的24ns的傳播時(shí)間相媲美(今天TTL已經(jīng)擁有了低功率版本而CMOS也有了告訴版本)。
在實(shí)際應(yīng)用中,芯片的連接是在一個(gè)塑料“面包板”完成的,如下:
每一短行有5個(gè)孔,在塑料板背面這5個(gè)孔通過(guò)電線相連。把芯片插入到面包板中,芯片將橫跨在中間長(zhǎng)槽兩側(cè),芯片的管腳則分別插到槽兩側(cè)的孔里,這樣芯片的每一個(gè)管腳都會(huì)與其他四個(gè)孔里的管腳相連接,通過(guò)在孔之間連接電線可以實(shí)現(xiàn)芯片之間的連接。
使用一種叫“鋼絲包裝”的技術(shù)可以使芯片之間的連接更加牢固,芯片插入到帶有幾個(gè)長(zhǎng)長(zhǎng)的方柱的插槽中,如下:
每個(gè)柱體對(duì)應(yīng)一個(gè)管腳,插口本身插入到事先穿孔的薄板中。在板子另一面,使用特殊的鋼絲包裝槍將每一個(gè)柱體周圍緊緊包上絕緣線。柱體的直角邊緣則從絕緣線中破出,與導(dǎo)線相連。
如果實(shí)際應(yīng)用中使用的集成電路制造一個(gè)特定的電路,那可能會(huì)用到“印刷電路板”。很久以前,這是集成電路愛(ài)好者做的事情。這種電路板上布滿了洞,并且被一層薄銅片覆蓋。基本上,可以讓防酸物質(zhì)覆蓋銅片上所有你想保護(hù)的地方,而使用酸蝕刻剩余的部分,接著就可以將集成電路的插口(或者是集成電路本身)直接焊接到電路板上的銅片上,但由于集成電路中存在很多相互連接,僅覆蓋一層銅片通常情況下無(wú)法完成電路,所以商業(yè)制造的印刷電路板有多層互連。
到20世紀(jì)70年代早期,使用集成電路在一塊電路板上制造一個(gè)完整的計(jì)算機(jī)處理器變得可能,實(shí)際上這距離將整個(gè)處理器放入一塊芯片中,只是一個(gè)時(shí)間問(wèn)題。雖然德州儀器公司在1971年為一塊單芯片計(jì)算機(jī)提交了專利申請(qǐng),但真正制造出一塊這種單片機(jī)芯片的榮譽(yù)卻屬于英特爾公司。1970年,英特爾發(fā)售了第一款產(chǎn)品,一個(gè)可以存儲(chǔ)1024位數(shù)據(jù)的芯片,在當(dāng)時(shí)這是單一芯片中可以存儲(chǔ)的最大位數(shù)。
英特爾在為日本吉康公司生產(chǎn)的可編程計(jì)算器設(shè)計(jì)芯片過(guò)程中,決定采取一種不同的方法。正如英特爾工程師特德·霍夫說(shuō)的:我想讓它成為一個(gè)具有通用功能的計(jì)算機(jī),進(jìn)而可以通過(guò)編程成為一個(gè)計(jì)算器,而不是使這個(gè)設(shè)備成為一個(gè)只有一些編程能力的計(jì)算器。 ? 這導(dǎo)致了Intel4004的產(chǎn)生,它是第一塊”計(jì)算機(jī)芯片“或者叫”微處理器“。1971年11月,4040芯片已經(jīng)可以得到試用,它擁有2300個(gè)晶體管(摩爾定律)。
我們已經(jīng)知道4004芯片包含的晶體管數(shù)目,下面是4004芯片另外三種重要的特征。自4004芯片開(kāi)始,在比較微處理器性能時(shí),通常采用三個(gè)衡量標(biāo)準(zhǔn)。
第一個(gè)標(biāo)準(zhǔn):4004是一個(gè)4位微處理器,意味著處理器中數(shù)據(jù)通路寬度只有4位。每次做加、減運(yùn)算時(shí),它只能處理4位數(shù)字。對(duì)比看來(lái),之前我們說(shuō)的計(jì)算機(jī)數(shù)據(jù)通路是8位,因此被稱為8位處理器。我們即將看到8位處理器很快就超越了4位處理器。但技術(shù)并沒(méi)有停止。20世紀(jì)70年代末期,16位微處理器已經(jīng)得到應(yīng)用。回想之前講的8位處理器中進(jìn)行兩個(gè)16位加法所必須的指令碼,就知道16位處理器帶來(lái)的優(yōu)勢(shì)。到20世紀(jì)80年代中期,32位微處理器誕生了。
第二個(gè)標(biāo)準(zhǔn):4004每秒最大的時(shí)鐘頻率為108000周期,即108KHz。始終頻率是指連接到微處理器并驅(qū)動(dòng)它運(yùn)行的振蕩器的最大頻率,超過(guò)此時(shí)鐘頻率,微處理器將不能正常工作。到1999年,家用計(jì)算機(jī)的微處理器已經(jīng)達(dá)到了500MHz——比4004要快5000倍。
第三個(gè)標(biāo)準(zhǔn):4004的可尋址存儲(chǔ)器只有640字節(jié),現(xiàn)在來(lái)看這個(gè)數(shù)字小得有點(diǎn)荒唐,但這與當(dāng)時(shí)可得的存儲(chǔ)芯片的容量是一致的。1999年英特爾生產(chǎn)的芯片可以尋址 64TB的空間。
上述三個(gè)數(shù)字指標(biāo)并不能影響一臺(tái)計(jì)算機(jī)的計(jì)算能力。比如,4位處理器同樣可以實(shí)現(xiàn)32位數(shù)字加法,只不過(guò)是將其簡(jiǎn)單拆分為4位的數(shù)來(lái)進(jìn)行。某種意義上講,所有的數(shù)字計(jì)算機(jī)都是相同的,如果一臺(tái)處理器從硬件上無(wú)法做到另外一臺(tái)可以做到的事情,那么它可以通過(guò)軟件途徑做到,最終他們可以完成相同的事情,這是1937年圖靈在論文里面關(guān)于可計(jì)算性的一種定義。
然而,速度是處理器之間的根本不同點(diǎn),同事速度也是我們使用計(jì)算機(jī)的一大原因。
最大時(shí)鐘頻率,也成為主頻,是影響處理器速度的決定性因素之一。始終頻率決定了執(zhí)行一條指令所需要的時(shí)間,處理器的數(shù)據(jù)位寬也影響處理器的速度。盡管4位處理器可以完成32位數(shù)字的加法,但速度是不能與32位處理器想媲美的。然而,令人感到迷惑的是,處理器可尋址存儲(chǔ)器的最大空間對(duì)處理器速度也是有影響的,首先,可尋址存儲(chǔ)器看上去只反映了處理器的某些能力,尤其是在需要大容量存儲(chǔ)器的前提下進(jìn)行數(shù)據(jù)處理能力,而與處理器速度無(wú)關(guān)。但其實(shí),處理器可以利用某些存儲(chǔ)器地址去控制其他的介質(zhì)來(lái)存取信息,這樣就繞開(kāi)了存儲(chǔ)器容量的限制。可是這種處理方法會(huì)降低整個(gè)計(jì)算機(jī)的速度。
20世紀(jì)70年代中期,雖然4004有很多局限性,但畢竟只是個(gè)開(kāi)始。1972年4月,英特爾發(fā)布了8008芯片——一個(gè)時(shí)鐘頻率為200KHz、可尋址空間為16KB的8位微處理器。1974年5月,英特爾公司和摩托羅拉公司同時(shí)發(fā)布8008微處理器的改進(jìn)版,正是兩款芯片改變了整個(gè)世界。
轉(zhuǎn)載于:https://www.cnblogs.com/Garin/p/7421243.html
總結(jié)
- 上一篇: linux-Centos7安装nginx
- 下一篇: go map数据结构