1計算機概述
1.1 發展簡史
一階段(1946~1957)
電子管計算機
電子管
第一代計算機"ENIAC"
世界上第一台電子計算機"ENIAC"于1946年2月14日在美國賓夕法尼亞大學誕生,美國人莫克利(JohnW.Mauchly)和艾克特(J.PresperEckert)發明,主要是有大量的電子管組成,主用于科學計算。
主要特點:
- 以電子管作為元器件,是以稱電子管計算機
- 用了18000個電子管,占地150平方米,足有兩間房子大,重達30噸,耗電功率約150千瓦,每秒鐘可進行5000次運算
- 電子管空間占用大,耗電量大,易發熱,因而工作的時間不能太長
- 使用機器語言,無系統軟體
- 采用磁鼓、小磁芯作為儲存器,存儲空間有限
- 輸入/輸出裝置簡單,采用穿孔紙帶或卡片,操作複雜,更換程式需要接線
- 主要用于科學計算,當時美國國防部用它來進行彈道計算
二階段(1957~1964)
半導體計算機
- 半導體
第二代計算機采用的主要元件是半導體,稱為半導體計算機。計算機軟體有了較大發展,程式語言也出現了Fortran,Cobol計算機進階語言,采用了監控程式,這是作業系統的雛形。
1、內建度較高,體積小
2、運算速度快,功耗更低
3、操作簡單,互動友善(有顯示器了)
三階段(1964~1980)
中小規模內建電路計算機。
德州儀器的工程師發明了內建電路(IC)
內建電路可在幾平方毫米的單晶矽片上內建十幾個甚至上百個電子元件。計算機開始采用中小規模的內建電路元件,這一代比上一代更小,耗電更少,功能更強,壽命更長,領域擴大,性能比上一代有很大提高。
1、體積更小,壽命更長。
2、運作計算速度更快。
3、外圍裝置考試出現多樣化。
4、有類似作業系統和應用程式,進階語言進一步發展。
5、應用範圍擴大到企業管理和輔助設計等領域。
四階段(1980~至今)
超大規模內建電路計算機。
這時期的計算機的體積、重量、功耗進一步減少,運算速度、存儲容量、可靠性都有很大提高。
1、采用了大規模和超大規模內建電路邏輯元件,體積與第三代相比進一步縮小,可靠性更高,壽命更長。
2、運算速度加快,每秒可達集千萬次到幾十億次。
3、系統軟體和應用軟體獲得了巨大的發展,軟體配置豐富,程式設計部分自動化。
4、計算機網絡技術、多媒體技術、分布式處理技術有了很大的發展,微型計算機大量進入家庭,産品更新速度加快。
5、計算機在辦公自動化、資料庫管理、圖像處理、語言設别和專家系統等各個領域得到應用,電子商務已開始進入家庭,出現個人電腦(PC),計算機的發展進入到了一個新的曆史時期。
未來的計算機
超導計算機、納米計算機、光計算機、DNA計算機、量子計算機和神經網絡計算機等,體積更小,運算速度更快,更加智能化,耗電量更小。
程式的CPU執行時間 = 指令數×CPI×Clock Cycle Time
是以提升計算機的性能,可以通過指令數/CPI,好像都太難了。
是以工程師們,就在CPU上多放半導體,不斷提升CPU的時鐘頻率,讓CPU更快,程式的執行時間就會縮短。
- 從1978年Intel釋出的8086 CPU開始,計算機的主頻從5MHz開始,不斷攀升
- 1980年代中期的80386能夠跑到40MHz
- 1989年的486能夠跑到100MHz
- 直到2000年的奔騰4處理器,主頻已經到達了1.4GHz
1.2 分類
超級計算機
功能最強、運算速度最快、存儲容量最大的計算機,多用于國家高科技領域和尖端技術研究。
計算速度機關 TFlop/s。1TFlop/s= 1萬億次浮點計算/s
Intel® Core™ 10090K CPU
5.3GHz = 59.45 GFlop/s = 0.05945TFlop/s
大型計算機
又稱大型機、大型主機、主機等,具有高性能,可處理大量資料與複雜的運算。該領域下IBM占據大份額。IBM Z9,NASA的最後一台大型機,使用的Red Hat Enterprise Linux。
但是造價太高,阿裡巴巴提出去 I(IBM)O(Oracle)E(EMC)這種高代價的存儲系統維護,而且伸縮性差。
迷你計算機(伺服器)
也稱為小型機,普通伺服器。不需要特殊的空調場所,具備不錯的算力,可以完成較複雜的運算。
普通伺服器已替代傳統的大型機,成為大規模企業計算的核心。
工作站
高端的通用微型計算機,提供比個人計算機更強大的性能。類似于普通台式電腦, 體積較大,但性能強勁。
微型計算機
即個人計算機,是最普通的一類計算機,如桌上型電腦,筆記本和一體機。
1.3 馮·諾伊曼結構
早期計算機僅含固定用途程式,如果改變程式就得更改結構、重新設計電路。是以需要把程式存儲起來,并設計通用電路,即存儲程式指令設計通用電路。
- 把需要的程式和資料送至計算機中
- 長期記憶程式、資料、中間結果及最終運算結果的能力
- 具備算術、邏輯運算和資料傳送等資料加工處理的能力
- 按照要求将處理結果輸出給使用者
馮·諾伊曼瓶頸(von Neumann bottleneck)
在CPU與存儲器之間的流量(資料傳輸率)與存儲器的容量相比起來相當小,在現代電腦中,流量與CPU的工作效率相比之下非常小,在某些情況下(當CPU需要在巨大的資料上運作一些簡單指令時),資料流量就成了整體效率非常嚴重的限制。CPU将會在資料輸入或輸出存儲器時閑置。由于CPU速度遠大于存儲器讀寫速率,是以瓶頸問題越來越嚴重。
在CPU與存儲器間的緩存存儲器緩解馮·諾伊曼瓶頸。分支預測(branch prediction)算法的建立也幫助緩和了此問題。
程式翻譯與程式解釋
2 CPU的極限-功耗
奔騰4的CPU主頻從來沒有達到過10GHz,最終定格在3.8GHz奔騰4主頻雖高,但實際性能卻配不上同樣的主頻。
于是不僅讓AMD獲得喘息之機,更代表“主頻時代”終結。後面幾代Intel CPU主頻不但沒上升,反而下降。
至今的最高配置Intel X 系列 CPU
主頻也不過5GHz。
相較于1978年到2000年,這20年裡300倍的主頻提升,從2000年到現在的20 年,CPU的主頻大概提高3倍。
奔騰4時CPU主頻進入瓶頸期
就是因為功耗。CPU,也稱作超大規模內建電路,Very-Large-Scale Integration,VLSI。
CPU就是讓半導體裡面的“開關”不斷“打開”/“關閉”,組合完成各種運算和功能。
提高CPU計算速度:
-
增加密度
同樣的面積,多放半導體。如果CPU的面積大,半導體之間的距離變更大,電信号傳輸的時間就會變長,運算速度自然就慢了。
-
提升主頻
讓半導體“打開”/“關閉”更快,但是動作快,就要出汗散熱,是以有了CPU上的矽脂、風扇、水冷。但裝置散熱效果也有極限。
是以,CPU裡能夠放下的半導體數量和半導體的“開關”頻率也有限。
一個CPU的功率,可以用這樣一個公式來表示:
功耗 ≈ 1/2 ×負載電容 × 電壓的平方 × 開關頻率 × 半導體數量
為提升性能,要不斷增加半導體密度,就要把半導體造得小一點,即提升“制程”。從28nm到5nm,還要提升主頻,讓開關頻率變快。
但功耗過多,CPU散熱就跟不上,公式裡功耗和電壓平方成正比,即可降低電壓。
從5MHz主頻的8086到5GHz主頻的Intel X,CPU電壓從5V下降到了1V。