一锰瘸、第一章 計(jì)算機(jī)組成與體系結(jié)構(gòu)
掌握知識(shí)點(diǎn)
1避凝、計(jì)算機(jī)體系結(jié)構(gòu)特點(diǎn)和應(yīng)用:采用對稱多處理器(symmetric multi-processing SMP),適用于海量并行處理(massive parallel processing眨补,MPP)
2倒脓、構(gòu)成計(jì)算機(jī)的各類部件的功能及其相互關(guān)系,控制器崎弃、運(yùn)算器、存儲(chǔ)器安皱、輸入\輸出設(shè)備
1.1計(jì)算機(jī)的組成
1.1.1 計(jì)算機(jī)6中部件艇炎,控制器腾窝、運(yùn)算器、內(nèi)存存儲(chǔ)器驴娃、外存儲(chǔ)器循集、輸入設(shè)備、輸出設(shè)備咒彤。
- a镶柱、控制器,分析和執(zhí)行指令的部件歇拆,控制計(jì)算機(jī)各部件協(xié)調(diào)工作的中心部件,包括程序計(jì)數(shù)器pc厂庇,指令寄存器输吏、時(shí)序部件、微操作控制信號(hào)和中斷機(jī)構(gòu)
- b炼杖、運(yùn)算器,算術(shù)邏輯單元ALU坤邪,對數(shù)據(jù)進(jìn)行算術(shù)或邏輯運(yùn)算。
- c怎静、內(nèi)存儲(chǔ)器黔衡,存儲(chǔ)現(xiàn)場操作的信息與中間結(jié)果,包括機(jī)器指令和數(shù)據(jù)
- d夜牡、外存儲(chǔ)器侣签,如硬盤,長期存儲(chǔ)
- e影所、輸入\輸出設(shè)備,鼠標(biāo)阴幌、鍵盤\顯示器卷中、打印機(jī)
控制器和運(yùn)算器現(xiàn)在是在CPU中。
1.1.2計(jì)算的分類
關(guān)于分類的幾個(gè)定義:
a背零、指令流无埃,指機(jī)器執(zhí)行的指令序列
b、數(shù)據(jù)流嫉称,指由指令流調(diào)用的數(shù)據(jù)序列
c、多倍性:指在系統(tǒng)性能瓶頸部件上同時(shí)處于同一執(zhí)行階段的指令或數(shù)據(jù)的最大可能個(gè)數(shù)
- 1壳繁、單指令單數(shù)據(jù)流(single instruction and single data stream SISD),就是順序執(zhí)行的單處理器計(jì)算機(jī)蒿赢,每次對一條指令譯碼渣触,只對一個(gè)操作部件分配數(shù)據(jù)。
- 2皂冰、單指令多數(shù)據(jù)流养篓,(SIM(multi)D),以并行處理機(jī)為代表柳弄,按照同一指令流分配不同的數(shù)據(jù)流
- 3、多指令流單數(shù)據(jù)流峻贮,MISD应闯,具有n個(gè)處理單元挂捻,按n條不同指令處理一個(gè)數(shù)據(jù)流
- 4、多指令多數(shù)據(jù)流骨田,MIMD声怔,多處理機(jī)能進(jìn)行多任務(wù)處理
其他的分類法
a、馮氏分類法醋火,單位時(shí)間內(nèi)所能處理的最大二進(jìn)制位數(shù);b柿冲、handler分類法兆旬,根據(jù)計(jì)算機(jī)指令執(zhí)行的并行度和流水線;c宿饱、KUCK分類法,用指令流和執(zhí)行流和多倍性來描述計(jì)算機(jī)系統(tǒng)特征
1.2 多級存儲(chǔ)器體系
計(jì)算機(jī)采用多級存儲(chǔ)器體系巴刻,包括寄存器蛉签、cache、主存儲(chǔ)器碍舍、外部存儲(chǔ)器
存儲(chǔ)器的存取方式:
1、順序存取妈经,按特定的線性順序存儲(chǔ)捧书,如磁帶
2、直接存取爆哑,每個(gè)數(shù)據(jù)塊有唯一的地址標(biāo)識(shí)舆吮,讀寫裝置可直接移動(dòng)到目標(biāo)數(shù)據(jù)塊,存取時(shí)間可變?nèi)缬脖P
3潭袱、隨機(jī)存取锋恬,存儲(chǔ)器的每個(gè)可尋址單元都具有自己唯一的地址和讀取裝置,可在相同時(shí)間內(nèi)對任意存儲(chǔ)單元進(jìn)行訪問与学,內(nèi)存采用隨機(jī)存取
4、相聯(lián)存取蜗巧,是隨機(jī)存取的一種形式蕾盯,選擇一個(gè)單元進(jìn)行讀寫取決于其內(nèi)容而不是地址蓝丙,cache采用這種方式
1.2.1主存儲(chǔ)器
即主存或內(nèi)存望拖,分為下列幾種;
- a说敏、RAM(ramdom access memory)隨機(jī)存取存儲(chǔ)器,斷電后無法保持盔沫,又分為DRAM(dynamic)和-SRAM(static),DRAM信息會(huì)隨時(shí)間消失拟淮,需進(jìn)行定時(shí)刷新谴忧,SRAM不斷電能一直保持信息,DRAM的密度大于SRAM價(jià)格便宜委造,SRAM速度塊簡單均驶,容量小,價(jià)格高亮垫。
- b伟骨、ROM(read only memory)燃异,只讀存儲(chǔ)器,如BIOS
- c回俐、PROM(programmable ROM)可編程ROM仅颇,可使用特殊設(shè)備進(jìn)行寫入
- d、EPROM(erasable PROM)忘瓦,可以寫多次
- e,EEPROM(electrically EPROM)境蜕,電可擦出rom
- f、閃速存儲(chǔ)售滤,與EEPROM相似台诗,U盤
- g、CAM(content addressable memory)相聯(lián)存儲(chǔ)器弊知,一種基于數(shù)據(jù)內(nèi)容進(jìn)行訪問的存儲(chǔ)設(shè)備氏仗。
1.2.2輔助存儲(chǔ)器
用于存儲(chǔ)當(dāng)前不須立即使用的信息,可以和主存儲(chǔ)器交換數(shù)據(jù)呐舔,也叫外存慷蠕,特點(diǎn)是容量大、可靠性高流炕、價(jià)格低。通常的類型有:
- a剑辫、磁帶存儲(chǔ)器渠欺,順序存儲(chǔ)的的設(shè)備
- b、磁盤存儲(chǔ)器胳岂,數(shù)據(jù)存儲(chǔ)于磁道上舔稀,磁道是磁盤上的一組同心圓,最外層為0道产园,每個(gè)磁道存儲(chǔ)的位數(shù)相同,故位密度從外向內(nèi)增加断箫。扇區(qū)秋冰,扇形的存儲(chǔ)區(qū)域,柱面所有盤面上相同位置的磁道組成的一個(gè)柱面埃撵。
存儲(chǔ)容量=nts*b虽另,n為保持?jǐn)?shù)據(jù)盤面數(shù),t為每面磁道數(shù)谣拣、s為扇區(qū)數(shù)族展,b為每個(gè)扇區(qū)的字節(jié)數(shù)
磁盤的存取時(shí)間包括尋道時(shí)間和等待時(shí)間,尋道時(shí)間即尋找磁道的時(shí)間贵涵,等待時(shí)間等到讀寫的扇區(qū)旋轉(zhuǎn)到磁頭下方所用時(shí)間恰画,一般選用磁道旋轉(zhuǎn)一周時(shí)間的一半作為平均等待時(shí)間。
磁盤傳輸速率拴还,單位時(shí)間寫入或讀出的字節(jié)數(shù)片林,R=TB/T,TB為磁道上記錄的字節(jié)數(shù)拇厢,T為磁道旋轉(zhuǎn)一圈所需的時(shí)間 - c孝偎、RAID存儲(chǔ)器
廉價(jià)冗余磁盤陣列(redundant array of inexpensive disks)
RAID0即一個(gè)硬盤存儲(chǔ)凉敲,RAID1即鏡像磁盤寺旺,一個(gè)讀寫一個(gè)備份势决。,RAID2此級別以上帶有校驗(yàn)功能陈莽。
RAID10級虽抄,即建立在RAID0和RAID1之基礎(chǔ)上。 - d私植、光盤存儲(chǔ)器车酣,cd(compact disk)
1.2.3cache緩存
cached的功能是提高CPU數(shù)據(jù)輸入輸出的速率,在CPU和內(nèi)存間設(shè)置cache高速緩存贫悄。
1.cache的基本原理:依據(jù)程序的局部性原理破衔,把內(nèi)存中訪問概率高的放在cache中,CPU先從cache中讀取數(shù)據(jù)嫡丙,cache中無則從內(nèi)存送往cpu和cache读第。
平均存儲(chǔ)周期=t1h+t2(1-h)怜瞒,h是命中率,t1吴汪,t2分別是cache和內(nèi)存的存儲(chǔ)周期
2.映射機(jī)制*
CPU發(fā)出訪問請求,存儲(chǔ)地址送到cache確定是否已在cache中杆融,稱為地址映射霜运。主存和cache將均分成容量相同的塊蒋腮。
直接映射:以隨機(jī)存取存儲(chǔ)器作為cache存儲(chǔ)器池摧,是一種多對一的映射關(guān)系激况。
缺點(diǎn):每個(gè)主存頁只能復(fù)制到某一固定的cache頁,即主存中的每個(gè)區(qū)的第0頁只能進(jìn)入到cache的第0頁宦棺。塊沖突率非常高黔帕。
全相聯(lián)映射方式:使用相聯(lián)存儲(chǔ)器組成的cache存儲(chǔ)器成黄。主存的每一頁可以映射到cache的任一頁。
缺點(diǎn):一一比較主存頁標(biāo)記奋岁,速度慢。
組相聯(lián)映射:以頁為單位可自由映射滨攻。主存和cache都分組光绕,主存中一個(gè)組內(nèi)的頁數(shù)與cache的分組數(shù)相同畜份。
主存中的組與cache的組形成直接映像關(guān)系爆雹,每個(gè)組內(nèi)的也是全相連映射。
3.替換算法
cache已存滿數(shù)據(jù)后慧起,新數(shù)據(jù)必需替換cache中的舊數(shù)據(jù)册倒。
a 隨機(jī)算法,隨機(jī)替換一塊
b 先進(jìn)先出, 類似隊(duì)列的管理管理方式
c 近期最少使用 LRU算法,近期最少使用的塊作為被替換的塊脾歧。
-
寫操作 為保證cache中的數(shù)據(jù)與內(nèi)存中的內(nèi)容一致演熟。
a 寫直達(dá) ,當(dāng)要寫cache時(shí)兄纺,數(shù)據(jù)同時(shí)寫回內(nèi)存
b 寫回 write back化漆,cpu修改一cache的某一塊后,數(shù)據(jù)不立即寫入內(nèi)存疙赠,而是當(dāng)塊從cache中被淘汰時(shí)朦拖,才把數(shù)據(jù)寫回內(nèi)存。寫設(shè)置標(biāo)志位捍岳。
c 標(biāo)記法睬隶,對cache中每一個(gè)數(shù)據(jù)設(shè)置一個(gè)有效位理疙。
1.3流水線
可以實(shí)現(xiàn)多個(gè)任務(wù)的重疊執(zhí)行,提高工作效率砖顷。 這樣就可以實(shí)現(xiàn)多個(gè)任務(wù)的重疊執(zhí)行赃梧,提高工作效率。 這樣就可以實(shí)現(xiàn)多個(gè)任務(wù)的重疊執(zhí)行物咳,提高工作效率蹄皱。
1.3.1 流水線周期
最耗時(shí)的那一段所消耗的時(shí)間為流水先周期芯肤。即最大值压鉴。
1.3.2 計(jì)算流水線執(zhí)行時(shí)間
T=第一條指令執(zhí)行時(shí)間+(n-1)*流水線周期 n代表處理的任務(wù)數(shù)量
1.3.3 流水線吞吐率 through put rate TP
單位時(shí)間內(nèi)流水線所完成的任務(wù)數(shù)量
最大吞吐率為 tpmax=1/t t為流水線周期
1.3.4 流水線加速比
完成同樣一批任務(wù)油吭,不使用流水線所使用的時(shí)間與使用流水線所用的時(shí)間之比稱為加速比 speedup ratio
s=nkt/(k+n-1)t