廣東一哥再生資源科技有限公司
一、計劃機體例概論1. 馮諾依曼計劃機構成
長機(cpu+外存),外設(輸出擺設+輸入擺設+外部存儲器),總線(地方總線+數(shù)據(jù)總線+遏制總線)
2. 計劃機檔次構造
運用步調-高檔談話-匯編談話-操縱體例-訓令集框架結構層-微代碼層-硬件論理層
3. 計劃機本能目標
非功夫目標
【字長】呆板一次能處置的二進制位數(shù) ,罕見的有32位或64位【總線寬窄】數(shù)據(jù)總線一次能并行處置的最大消息位數(shù),普遍指演算器與保存器之間的數(shù)據(jù)總線的位數(shù)【主存含量】主存的巨細【保存帶寬】單元功夫內與主存調換的二進制位數(shù) B/s功夫目標
【主頻f】時鐘振動的頻次 Hz;【時鐘周期T】時鐘振動一次的功夫 t【外頻】cpu與主板之間同步的時鐘頻次,體例總線的處事頻次;【倍頻】主頻與外頻的倍數(shù) =主頻/外頻【CPI】clock cycles per instruction,實行一條訓令須要的周期數(shù)(平衡)【MIPS】million instructions per second,每秒實行的訓令總條數(shù) MIPS= f / CPI (忽視單元)二、數(shù)據(jù)表白1. 基礎觀念
真值:+0101,-0100呆板數(shù): [x]原=01012. 幾種呆板數(shù)
原碼:x = -0101,[x]原 = 1101反碼:x = -0101,[x]反 = 1010補碼:x = -0101,[x]補 = 1011移碼:x = -0101,[x]移 = 2^n + x = 0011PS:這邊說說對補碼與移碼本人的領會。補碼是為了化減法為減法簡單計劃機安排演算,移碼是為了簡單比擬巨細,用在浮點數(shù)的階碼中。補碼——任何一個有模的體例中,減法都不妨經(jīng)過加其補碼來表白。最大略的例子即是以12為模的鐘表,比方此刻是3點,那么-5個鐘點就即是+7個鐘點,都是10點。這邊7即是5的補碼。移碼——數(shù)據(jù)對應聯(lián)系一次移動一下場所,使得看上去小的數(shù)真值也小。比方本來0000表白0,此刻表白-128,而后0001表白-127,從來到1111表白+127,如許就簡單比擬了。
3. 確定地點數(shù)與浮點數(shù)
確定地點數(shù):少量點恒定 x.xxxxxx,表演示圍受限,忘懷它吧
浮點數(shù):數(shù)的范疇和精度辨別表白。
普遍方法 :EEEE......EMMM.......M,E局部是階碼(數(shù)的范疇i),M局部是余數(shù)(數(shù)的精度)。缺陷:階碼和余數(shù)位數(shù)不恒定,太精巧了
IEEE754方法:跟我背下來----
32位的是(單精度):1位標記位S + 8位偏指數(shù)E + 23位靈驗余數(shù)M,偏移值為127。
64位的是(雙精度):1位標記位S + 11位偏指數(shù)E + 52位靈驗余數(shù)M,偏移值為1023。
真值即是(32位為例) N = (-1)^S * 2^(E-127) * 1.M
浮點數(shù)的特出情景:
E=0,M=0:呆板零
E=255,M=0:無量大,對應于x/0
E=255,M!=0:非數(shù)值NaN,對應0/0
ps:附上一份IEEE754文書檔案:https://files.cnblogs.com/files/flashsun/7542008-2008.pdf
4. 數(shù)據(jù)校驗
基礎道理:減少冗余碼
碼距:正當源代碼之間各別二進制位數(shù)的最小值
碼距與檢錯、糾錯本領:
碼距 d>=e+1:查看e個缺點碼距 d>=2t+1:矯正t個缺點碼距 d>=e+t+1:同聲查看e個缺點,并矯正t個缺點。(e>=t)PS:這邊說下我的領會,減少碼距即是減少不法源代碼的數(shù)目,看到不法源代碼就算查看墮落誤了,而不法源代碼隔絕哪個正當源代碼比擬進就覺得精確的該當是什么(大略領會,可參考底下的圖),也即是不妨矯正缺點。這邊看到過一個好的好多領會圖,提防品位下:
舉個例子:比方所有有8位,碼距為1則查看不出任何缺點,由于一切源代碼都是正當源代碼。即使碼距為2,那正當源代碼該當像 00000000,00000011,00001100,00001111如許,那即使展示00000001如許的不法源代碼就墮落了,可查看一位錯,但即使兩位同聲錯了,則有大概又跳到另一個正當源代碼上了,就查看不出2位錯。
那即使碼距是3,那正當源代碼該當像 00000000,00000111,00111000,00111111 如許,那即使展示一位錯 00000001,大概兩位錯00000011,都利害法源代碼,都能查看墮落誤,而且此時不妨矯正00000001為00000000,矯正00000011為00000111。然而三位同聲錯就查看不出了。
罕見校驗戰(zhàn)略:奇偶校驗,CRC校驗,海明校驗
ps:海明源代碼最強視頻演練教程:https://www.youtube.com/watch?v=373FUw-2U2k
三、演算本領與演算器1. 確定地點數(shù)演算及溢出
確定地點數(shù)加減法:減法化減法,用補碼徑直相加,忽視進位
溢出:演算截止勝過了那種數(shù)據(jù)典型的表演示圍
溢出檢驗和測定本領:一致思維詳細為正正得負或負負得正則溢出,正負或負正不大概溢出
本領1:V = XYS + XYS(XY為兩個加數(shù)的標記位,S為截止的標記位,_表白非),那么V = 1則為溢出
本領2:V = C0 ⊕ C1(C0是最高數(shù)據(jù)位爆發(fā)的進位,C1是標記位爆發(fā)的進位),那么V = 1則為溢出
本領3:V = Xf1 ⊕ Xf2(數(shù)據(jù)沿用變型補碼 Xf1Xf2 X0X1X2X3... )
PS:之上本領都是運用正正得負負負得正則溢出為動身點的通路安排
2. 補碼一位乘法——Booth算法
[x·y]補 = [x]補·( -y0+∑ yi2-i )
= [x]補·[ - y0 + y12-1 + y22-2 + … + yn2-n]
= [x]補·[ - y0 + (y1 - y12-1) + (y22-1 - y22-2) + … + (yn2-(n-1) - yn2-n)]
= [x]補·[(y1 - y0) + (y2 - y1) 2-1 + … + (yn - yn-1) 2-(n-1) + (0 - yn)2-n]
歸納起來安排數(shù)字通路的準則即是:
為00大概為11的功夫,徑直右移一位為01的功夫,加x的補,而后右移一位為10的功夫,加-x的補,而后右移一位PS:本來第一條龍和結果一條龍都能安排數(shù)字通路,干什么要從第一個格式推到結果一個格式呢?因為有零點:
1)二進制中即使有0,不妨不舉行演算
2)即使有貫串的1不妨縮小計劃度數(shù),比方 a * 001111100 = a * (010000000 - 0000000100)
以是歷次確定 yn+1 - yn就不妨縮小計劃度數(shù)了
參考:https://www.cnblogs.com/xisheng/p/9260861.html
3. 確定地點數(shù)除法 --- 略,沒找到好的材料
4. 浮點數(shù)加減法
(1)求階差,階碼小的對齊大的
(2)余數(shù)加減
(3)截止規(guī)格化
四、保存體例1. 保存體例檔次構造
主存速率慢慢的因為:主存增長速度與CPU各別步,實行訓令功夫屢次考察主存
主存含量不及的因為:
生存規(guī)范主存含量的本領成分:如由CPU、主板等關系本領目標規(guī)則了主存含量運用對主存含量需要連接夸大:window98 -- 8M,windows 8 -- 1G-----> 保存體制構造化檔次: CPU -- Cache1 -- Cache2(處置速率) -- 主存 -- 輔存(處置含量)
保存體制構造化檔次表面普通:
功夫限制性:步調展現(xiàn)為輪回構造空間限制性:步調展現(xiàn)為程序構造2. 主存中的數(shù)據(jù)構造
保存字長:主存的一個保存單位所包括的二進制位數(shù),暫時大普遍計劃機主存按字節(jié)編址,重要由32為和64位
數(shù)據(jù)保存與邊境的聯(lián)系:
按邊境對齊的數(shù)據(jù)保存,未按邊境對齊的數(shù)據(jù)保存邊境對齊與保存地方的聯(lián)系:(32位為例)雙字長邊境對齊:開始地方最末三位為000(8字節(jié)平頭倍)單字長邊境對齊:開始地方最末二位為00(4字節(jié)平頭倍)半字長邊境對齊:開始地方最末一位為0(2字節(jié)平頭倍)大端與小端保存辦法:
大端:最高字節(jié)地方是數(shù)據(jù)地方(0123存成0123)小端:最低字節(jié)地方是數(shù)據(jù)地方(0123存成3210)3. 保存器分門別類
SRAM保存器:存取速率快,但集成度低,功耗大,做緩存DRAM保存器:存取速率慢,但集成度高,功耗低,做主存DRAM革新辦法:會合革新、分別革新、異步革新
4. 主存含量的擴充
位擴充法:8K * 8位 --> 8K * 32位字擴充法:8K * 8位 --> 32K * 8位字位同聲擴充法:8K * 8位 --> 32K * 32位5. Cache的基礎道理
cache的處事進程
數(shù)據(jù):cpu與cache調換字,cache與外存調換塊讀:擲中,不擲中寫:寫穿戰(zhàn)略,寫回戰(zhàn)略寫戰(zhàn)略
寫穿戰(zhàn)略(write through):同聲寫緩存和外存,猶如穿過緩存一律。若不擲中,先寫到主存中,并采用性地同時間配到緩存中(寫調配/非寫調配)寫回戰(zhàn)略(write back):寫到緩存后盡管了,惟有當緩存的實質替代回主存時再管,需有臟位。猶如隔段功夫后再寫回到主存中一律地方映照體制
連接保存器:地方自己包括著場所啊可比擬的消息啊等實質消息,可按照辨別地方實質舉行尋址主存地方 = 塊地方 + 塊內偏移地方 = (Tag + Index) + 塊內偏移地方cache構造許多行,每行與主存塊巨細十分每行 = tag + data + valid + dirty三種映照辦法全連接:cache行號 = random(外存塊號)徑直連接:cache行號 = 外存塊號 % cache行數(shù)組連接:兩者貫串。8行1路組連接即是全連接,8行8路組連接即是徑直連接替代算法
進步先出法-FIFO邇來最不常常運用法-LFU近期最少運用法-LRU隨機替代法6. 假造保存器
處置題目:主存含量不及。蓄意向步調員供給更大(比主存大)的編制程序空間
分門別類:頁式,段式,段頁式
頁式實行辦法:MMU(Memory Management Unit) + 頁表 + TLB(Transaction Lookaside Buffer:地方變換后備緩沖器)
頁式變換進程:假造地方 = 假造頁號 + 頁內偏移 ==> 物理頁號 + 頁內偏移
7. RAID
觀念:獨力磁盤形成的具備冗余本領的陣列(Redundant Arrays Independent Disks)
中心本領:運用異或演算回復數(shù)據(jù) (x⊕y = z --> x = y⊕z)
分門別類:
RAID0:條帶平均散布RAID1:以鏡像為冗余辦法RAID3/4:有校驗盤RAID5:校驗消息散布式RAID10/01:10是先鏡像再條帶化,01是先條帶化再鏡像RAID50:先RAID5,再條帶化五、訓令體例1. 訓令體例基礎觀念
訓令集:一臺呆板一切訓令的匯合。系列機(同一公司各別功夫消費);兼容機(各別公司消費)
訓令字長:訓令中包括的二進制位數(shù),有等長訓令、變長訓令。
訓令分門別類
按照檔次構造:高檔、匯編、呆板、微訓令按照地方碼字段個數(shù):零、一、二、三地方訓令按照操縱數(shù)物理場所保存器-保存器(SS)存放器-存放器(RR)存放器-保存器(RS)按照訓令功效:傳遞、算術演算、位演算、遏制變化訓令方法:操縱碼+數(shù)據(jù)源+尋址辦法
2. 尋址辦法
訓令尋址辦法:程序尋址,騰躍尋址
操縱數(shù)尋址辦法:
登時數(shù)尋址:地方碼字段是操縱數(shù)自己 MOV AX, 200H存放器尋址:地方碼字段是存放器地方 MOV AX, BX徑直尋址:地方碼字段是外存地方 MOV AX, [200H]轉彎抹角尋址:地方碼字段是外存地方的地方 MOV AX, I[200H]存放器轉彎抹角尋址:地方碼字段是存外存地方的存放器地方 MOV AX, [BX]對立尋址:操縱數(shù)地方 + 暫時PC的值壩址尋址:操縱數(shù)地方 + 壩址存放器的值(一段步調中靜止) MOV AX, 32[B]變址尋址:操縱數(shù)地方 + 變址存放器的值(隨步調連接變革) MOV AX, 32[SI]3. MIPS
三種訓令方法
R型訓令I型訓令J型訓令六、中心處置器1. CPU的構成與功效
2. 數(shù)據(jù)通路
觀念:實行元件間傳遞消息的路途,分共享通路(總線)和專用通路
籠統(tǒng)模子:時鐘啟動下,A --> 拉攏論理 --> B
D觸發(fā)器準時模子:
時鐘觸發(fā)前要寧靜一段功夫:建登時間(Setup Time)時鐘觸發(fā)后要寧靜一段功夫:維持功夫(Hold Time)時鐘觸發(fā)到輸入寧靜的功夫:觸發(fā)器推遲(Clk_to_Q)與時鐘周期的聯(lián)系:時鐘周期 > Clk_to_Q + 要害路途時延 + Setup TimeClk_to_Q + 最短路途時延 > Hold Time3. 訓令周期
訓令實行的普遍過程
基礎觀念
時鐘周期 = 節(jié)奏脈沖 = 振動周期呆板周期 = CPU周期 = 從主存讀取一條訓令的最短功夫訓令周期 = 從主存讀訓令并實行訓令的功夫
訓令功夫遏制:
呆板周期數(shù)節(jié)奏數(shù)同步辦法試驗定長訓令周期靜止靜止按呆板周期mips單周期變長訓令周期變變準時鐘周期mips多周期
4. CPU安排
略,確定請拜見《自治CPU系列》
七、總線1. 體例總線的個性及運用
總線觀念:將計劃機體例中各元件貫穿起來
總線分門別類:(外部/里面,體例/非體例,串行/并行,同步/異步...)
①. 按用處分門別類:
保存總線:cpu與保存器體例總線:貫穿保存總線和IO總線的中央總線IO總線:貫穿外部擺設②. 按場所分門別類:
外部總線:USB,前線(IEEE1394)里面總線:PCI(連網(wǎng)卡),AGB(連顯卡)(芯)片內總線:AMBA(ARM處置器)③. 按構成分門別類
數(shù)據(jù)總線:傳數(shù)據(jù),雙向三態(tài)地方總線:傳地方,單向三態(tài)遏制總線:遏制旗號和時序旗號電源線和地線:略2. 總線本能和總線實物
總線的本能參數(shù)
總線頻次:總線處事速度f,單元是MHz總線寬窄:數(shù)據(jù)總線的寬窄w,單元是bit總線傳輸速度:總線傳輸數(shù)據(jù)量BW,單元是MB/s。BW = w / 8 * f總線工作
觀念:從乞求總線到實行運用的操縱序列(乞求 - 判決 - 地方傳輸 - 數(shù)據(jù)傳輸 - 總線開釋)腳色:主擺設(CPU,DMA)和從擺設四個階段:乞求與評斷 - 傳輸 - 尋址 - 中斷罕見總線操縱:讀,寫,讀竄改寫,寫后讀,塊操縱3. 總線貫穿辦法
單總線構造
雙總線構造
多總線構造
總線橋:各別速度總線之間的貫穿,起速率緩沖、電平變換、遏制和議變換的效率多級總線構造(南北橋)
單總線構造
總線構造對體例本能的感化多總線單總線對最大保存含量不感化因要與io共享外存,感化對訓令體例減少IO訓令無IO訓令對含糊量巨細
4. 總線評斷和數(shù)據(jù)傳輸辦法
菊花鏈式串行總線評斷:大略,只有有一個主擺設占用總線,其余就占不了
集選取并行總線評斷:
恒定優(yōu)先級戰(zhàn)略:優(yōu)先級高的主擺設,總會優(yōu)先遏制總線權輪叫式戰(zhàn)略:天子輪番做LRG戰(zhàn)略:邇來贏得遏制權的,再贏得遏制權的優(yōu)先級高(常常用的就更簡單贏得總線遏制權)5. 總線規(guī)范
觀念:計劃機各元件之間運用總線傳輸消息應按照的和議和典型,囊括硬件和軟硬件兩局部
罕見的總線規(guī)范
機箱里面總線:ISA - EISA - VESAISA(Industrial Standard Architecture):最早指定的總線本領規(guī)范,總線寬窄8/16位,頻次5-8MHz,帶寬5-8MB/sEISA:寬窄形成32位VESA:寬窄形成64位PCI(PCIe) - AGP重要用來體例總線和IO總線,代替ISA地方總線和數(shù)據(jù)總線分時復用,扶助即插即用(機動探求啟動步調)32/64位,133/264MB/s機箱外部總線:USB等...八、輸出輸入體例1. 輸出輸入體例概括
構成:外設、接口、總線、處置軟硬件
基礎功效
實行計劃機表里的消息傳播保護CPU精確采用輸入擺設運用緩沖等,實行長機與外設的速率配合特性:異步性、及時性、擺設無干性
輸出進程:CPU把地方值放入總線 --> CPU等待擺設數(shù)占有效 --> CPU從總線讀入數(shù)據(jù)惠存存放器
輸入進程:CPU把地方值放入總線 --> CPU把數(shù)據(jù)值放入總線 --> 擺設等數(shù)占有效取走數(shù)據(jù)
IO體例本能:保存IO、通訊IO
貫穿個性:哪些擺設不妨和IO貫串IO體例含量:IO體例不妨包含的擺設數(shù)相應功夫:從用戶輸出吩咐到獲得截止所花的功夫(s)含糊率:單元功夫實行的IO操縱度數(shù)(用IOP表白)2. 輸出輸入辦法
無前提IO辦法:實行IO訓令時,CPU默許外設仍舊籌備停當,外設很難滿意這一點
步調遏制IO辦法:實行IO訓令時,先獲得擺設狀況(擺設狀況存放器),確定下一步操縱(步調確定)
數(shù)據(jù)要過程CPU,CPU還要濫用洪量功夫查問擺設狀況阻礙IO辦法:外設積極報告CPU接受或輸入數(shù)據(jù),有及時性
DMA辦法:由硬件實行IO,外設籌備好后報告DMA,DMA接收總線,實行數(shù)據(jù)調換
既有阻礙的便宜,又貶低了效勞的開支通道和IO處置機辦法:外設品種很多速率分辨很大,將外設處置處事從CPU總辨別出來
通道自己即是個大略的CPU,實行IO訓令的處置機IO處置機是通道的進一步興盛,更像一個CPU了3. 阻礙乞求與相應
觀念:CPU由里面外部事變惹起CPU阻礙正在運轉的步調,具備隨機性(適合輸出輸入體例個性)
效率:長機與外設并行;妨礙處置;及時處置
典型:
里面阻礙(軟硬件、特殊)外部阻礙(可樊籬阻礙INTR、不行樊籬阻礙NMI)基礎功效:
阻礙旗號的維持與廢除:經(jīng)過存放器存起來,處置完清零阻礙優(yōu)先級:硬件相應優(yōu)先序、軟硬件效勞優(yōu)先序(阻礙效勞步調發(fā)端,樹立本人的阻礙樊籬位)阻礙源辨別:體例調配給每個阻礙源的代號(阻礙號),阻礙號獲得不妨用硬件或軟硬件辦法阻礙處置:相應:每實行完一條訓令,就會確定能否有阻礙乞求處置:生存斷點(歸來地方)、實行阻礙步調、歸來斷點阻礙遏制:阻礙觸發(fā)辦法:指外設以什么論理旗號去請求阻礙(邊際觸發(fā)、電平觸發(fā))阻礙列隊辦法:按優(yōu)先級、輪回輪番列隊阻礙嵌套:阻礙正在實行的阻礙步調,不行樊籬阻礙不許嵌套阻礙樊籬:處置器里面有個觸發(fā)器,“1”時才會相應外部阻礙
4. DMA辦法
道理:數(shù)據(jù)傳遞不過程CPU,由DMA遏制器實行外存和外設、外設和外設之間的徑直趕快傳播
體例形成:
DMA動作主擺設之一
DMA與IO接口集成
DMA供給特意IO總線
DMA的兩種處事狀況:被迫態(tài)(未贏得總線遏制權,受CPU遏制)、積極態(tài)(贏得總線遏制權)
傳輸辦法:
請求:一個擺設接面試圖經(jīng)過總線向另一個擺設發(fā)送數(shù)據(jù),先向CPU發(fā)送DMA旗號相應:CPU收到DMA旗號,暫時總線周期中斷后,按DMA旗號優(yōu)先級相應相映的DMA遏制器數(shù)據(jù)傳遞:DMA收到CPU相應,贏得總線遏制權,發(fā)端徑直數(shù)據(jù)傳遞傳遞中斷:擺設向CPU發(fā)送DMA中斷旗號,調換總線遏制權DMA操縱典型:
數(shù)據(jù)傳遞:源地方數(shù)據(jù)傳到手段地方數(shù)據(jù)校驗:不傳輸,只校驗某數(shù)據(jù)塊里面的每個字節(jié)數(shù)據(jù)檢索:不傳輸,只在擬訂外存地區(qū)內搜索某個要害字或某幾個數(shù)據(jù)位能否生存DMA操縱辦法:
單字節(jié)傳輸形式:歷次DMA操縱傳遞一個字節(jié)塊傳輸形式:歷次傳遞多個字節(jié),有個暫時字節(jié)計數(shù)器,+1 +1 +1乞求傳輸形式:DMA遏制器咨詢外設,當外設乞求旗號失效時,休憩傳輸(不開釋總線);再次靈驗再連接傳輸級聯(lián)傳輸形式:多個DMA級聯(lián),散布式DMA傳輸形式:
遏止CPU考察外存:傳輸速度高的擺設傳輸時有上風周期調用:DMA調用一個或幾個外存周期。若此時CPU不須要訪存則不辯論,若辯論則DMA優(yōu)先DMA與CPU瓜代訪存:徑直瓜代訪存,不須要濫用功夫
專題推薦: