2008年2月2日 星期六

電腦的數位電路實現

以上所說的這些概念性設計的物理實現是多種多樣的。如同我們前述所及,一臺存儲程式式電腦既可以是巴比奇的機械式的,也可以是基於數字電子的。但是,數字電路可以透過諸如繼電器之類的電子控制開關來實現使用2進位數的算術和邏輯運算。香農的論文正是向我們展示了如何排列繼電器來組成能夠實現簡單布林運算的邏輯閘。其他一些學者很快指出使用真空管可以代替繼電器電路。真空管最初被用作無線電電路中的放大器,之後便開始被越來越多地用作數字電子電路中的快速開關。當電子管的一個針腳被通電後,電流就可以在另外兩端間自由透過。

透過邏輯閘的排列組合我們可以設計完成很多複雜的任務。舉例而言,加法器就是其中之一。該器件在電子領域實現了兩個數相加並將結果保存下來—在電腦科學中這樣一個透過一組運算來實現某個特定意圖的方法被稱做一個演算法。最終,人們透過數量可觀的邏輯閘電路組裝成功了完整的ALU和控制器。說它數量可觀,只需看一下CSIRAC這台可能是最小的實用化電子管電腦。該機含有2000個電子管,其中還有不少是雙用器件,也即是說總計合有2000到4000個邏輯器件。

真空管對於製造規模龐大的門電路明顯力不從心。昂貴,不穩(尤其是數量多時),臃腫,能耗高,並且速度也不夠快—儘管遠超機械開關電路。這一切導致20世紀60年代它們被電晶體取代。後者體積更小,易於操作,可靠性高,更省能耗,同時成本也更低。
整合電路是現今電子計算機的基礎20世紀60年代後,電晶體開始逐漸為將大量電晶體、其他各種電器元件和連線導線安置在一片矽板上的積體電路所取代。70年代,ALU和控制器作為組成CPU的兩大部分,開始被整合到一塊晶片上,並稱為「微處理機」。沿著積體電路的發展史,可以看到一片晶片上所整合器件的數量有了飛速增長。第一塊積體電路只不過包含幾十個部件,而到了2006年,一塊Intel Core Duo 處理機上的電晶體數目高達一億五千一百萬之巨。

無論是電子管,電晶體還是積體電路,它們都可以透過使用一種觸發器設計機制來用作存儲程式體系結構中的「存儲」部件。而事實上觸發器的確被用作小規模的超高速存儲。但是,幾乎沒有任何電腦設計使用觸發器來進行大規模資料存儲。最早的電腦是使用Williams電子管向一個電視屏或若干條水銀延遲線(聲波透過這種線時的走行速度極為緩慢足夠被認為是「存儲」在了上面)發無線電子束然後再來讀取的方式來存儲資料的。當然,這些儘管有效卻不怎麼優雅的方法最終還是被磁性存儲取而代之。比如說磁芯存儲器,代表資訊的電流可在其中的鐵質材料內製造恆久的弱磁場,當這個磁場再被讀出時就實現了資料恢復。動態隨機存儲器(DRAM)亦被發明出來。它是一個包含大量電容的積體電路,而這些電容器件正是負責存儲資料電荷—電荷的強度則被定義為資料的值。

資料來源:
http://zh.wikipedia.org/w/index.php?title=%E9%9B%BB%E8%85%A6&variant=zh-tw

沒有留言: