處理器體系結(jié)構(gòu)

一個處理器支持的指令和指令的字節(jié)級編碼稱為ISA(指令集體系結(jié)構(gòu))祥国,不同的處理器”家族“都有不同的ISA。一個程序編譯成一種機器上運行桐汤,就不能再另一種機器上運行垢夹。另外溢吻,同一個家族里也有許多不同類型的處理器。因此果元,ISA在編譯器編寫者和處理器設(shè)計員之間提供了一個概念抽象層促王,編譯器編寫者只需要知道允許哪些指令,以及如何編碼而晒;而處理器設(shè)計者必須建造出執(zhí)行這些指令的處理器蝇狼。

Y86處理器是基于順序操作、功能正確倡怎,但有點不實用迅耘。

一贱枣、Y86指令集體系結(jié)構(gòu)

Y86程序中每條指令都會讀取或修改處理器狀態(tài)的某些部分。Y86的處理器有8個寄存器:%eax,%ecx,%edx,%ebx,%esi,%edi,%esp,%ebp颤专,處理器每個程序寄存器存儲一個字纽哥。寄存器%esp被入棧、出棧栖秕、調(diào)用和返回指令作為棧指針春塌。而其他寄存器沒有固定的含義或固定值。有三個一位的條件碼:ZF簇捍、SF只壳、OF,保存有關(guān)最近的算術(shù)或邏輯指令造成影響的信息暑塑。程序計數(shù)器(PC)存放著當前正在執(zhí)行指令的地址吼句。存儲器,從概念上說是一個很大的字節(jié)數(shù)組事格,保存著程序和數(shù)據(jù)惕艳。Y86程序用虛擬地址來引用存儲器位置。硬件和操作系統(tǒng)軟件結(jié)合起來將虛擬地址翻譯成明數(shù)據(jù)實際存在存儲器中哪個地方的實際或物理地址分蓖。


Y86程序員可見狀態(tài).jpg

二尔艇、邏輯設(shè)計和硬件控制語言HCL

在硬件設(shè)計中尔许,電子電路被用來計算位的函數(shù)么鹤,以及在各種存儲器元素中存儲位。大多數(shù)現(xiàn)代電路設(shè)計都是用信號線上的高電壓或低電壓來表示不同的位值味廊。通常的技術(shù)中蒸甜,邏輯1是用1.0伏特左右的高電壓表示,邏輯0是用0.0伏特左右的低電壓表示余佛。要實現(xiàn)一個數(shù)字系統(tǒng)需要三個主要的組成部分:計算位的函數(shù)的組合邏輯柠新、存儲位的存儲器元素、以及控制存儲器元素更新的時鐘信號辉巡。

1.邏輯門

邏輯門是數(shù)字電路的基本計算元素恨憎。它們產(chǎn)生的輸出,等于他們輸入位值的某個布爾函數(shù)郊楣,AND,OR,NOT憔恳。邏輯門總是活動的,一旦一個門的輸入變化了净蚤,在很短時間內(nèi)钥组,輸出就會相應(yīng)地變化。

2.存儲器和時刻控制

組合電路從本質(zhì)上來講今瀑,不存儲任何信息程梦。相反只是簡單地相應(yīng)輸入信號点把,產(chǎn)生等于輸入的某個函數(shù)輸出。為了產(chǎn)生時序電路屿附,有狀態(tài)并在在這個狀態(tài)上進行計算的系統(tǒng)郎逃,引入了按位存儲信息的設(shè)備。

  • 時鐘寄存器存儲單個位或字挺份。
  • 隨機訪問存儲器存儲多個字衣厘,用地址選擇讀或該讀哪個字。硬件和軟件系統(tǒng)結(jié)合起來使處理器可以在很大的地址空間訪問任意的字压恒。

在硬件中影暴,寄存器直接將它的輸入和輸出線連接到電路其他部分。在機器編程級別探赫,寄存器代表CPU中為數(shù)不多的可尋址的字型宙,這里的地址是寄存器ID。分別稱這兩類寄存器為“硬件寄存器”和”程序寄存器“伦吠。

(a) 硬件寄存器

大多數(shù)時候妆兑,寄存器保持在穩(wěn)定狀態(tài)(用x表示),產(chǎn)生的輸出等于它當前狀態(tài)毛仪。只要時鐘是低電位搁嗓,寄存器的輸出狀態(tài)保持不變。當時鐘變成高電位箱靴,輸入信號加載到寄存器腺逛,成為下一個狀態(tài)y,這個狀態(tài)就成為寄存器的新輸出衡怀。


硬件寄存器.jpg

(b) 程序寄存器

下面展示典型的寄存器文件棍矛,寄存器文件有兩個讀端口(A和B),還要一個寫端口(W)抛杨。這樣一個多端口隨機訪問存儲器允許同時進行多個讀和寫操作够委。在圖中,電路可以讀兩個程序寄存器的值怖现,同時更新第三個寄存器的狀態(tài)茁帽。每個端口都有一個地址輸入,表明選擇哪個程序寄存器屈嗤,另外還有一個數(shù)據(jù)輸出或?qū)?yīng)程序寄存器的輸入值潘拨。


程序寄存器.jpg

三、硬件結(jié)構(gòu)

實現(xiàn)所有Y86指令所需要的計算可以被組織成六個基本階段:取指恢共、解碼战秋、執(zhí)行、訪存讨韭、寫回和更新PC脂信。

  • 取指:將程序計數(shù)器寄存器作為地址癣蟋,指令存儲器讀取一個指令的字節(jié),增加程序計數(shù)器
  • 解碼: 寄存器文件有兩個讀端口A和B,從這兩個端口同時讀寄存器值valA和valB.
  • 執(zhí)行:執(zhí)行階段根據(jù)指令的類型,將算術(shù)/邏輯單元(ALU)用于不同的目的狰闪。對整數(shù)操作疯搅,它需要執(zhí)行指令所指定的運算。對其他指令埋泵,它會作為一個加法器來計算增加或減少棧指針幔欧,或者有效地址,或者只是簡單地加0丽声,將一個輸入傳遞到輸出礁蔗。
  • 訪存:在執(zhí)行訪存操作時,數(shù)據(jù)存儲器讀出或?qū)懭胍粋€存儲字雁社,指令和數(shù)據(jù)會根據(jù)條件碼或轉(zhuǎn)換碼類型來計算分支信號Bch
  • 寫回:寄存器文件有兩個寫端口浴井,端口E用來寫ALU計算出來的值,端口M用來寫從數(shù)據(jù)寄存器中讀出的值霉撵。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末磺浙,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子徒坡,更是在濱河造成了極大的恐慌撕氧,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喇完,死亡現(xiàn)場離奇詭異伦泥,居然都是意外死亡,警方通過查閱死者的電腦和手機何暮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進店門奄喂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人海洼,你說我怎么就攤上這事「焕埃” “怎么了坏逢?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長赘被。 經(jīng)常有香客問我是整,道長,這世上最難降的妖魔是什么民假? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任浮入,我火速辦了婚禮,結(jié)果婚禮上羊异,老公的妹妹穿的比我還像新娘事秀。我一直安慰自己彤断,他們只是感情好,可當我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布易迹。 她就那樣靜靜地躺著宰衙,像睡著了一般。 火紅的嫁衣襯著肌膚如雪睹欲。 梳的紋絲不亂的頭發(fā)上供炼,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機與錄音窘疮,去河邊找鬼袋哼。 笑死,一個胖子當著我的面吹牛闸衫,可吹牛的內(nèi)容都是我干的先嬉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼楚堤,長吁一口氣:“原來是場噩夢啊……” “哼疫蔓!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起身冬,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤衅胀,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后酥筝,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體滚躯,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年嘿歌,在試婚紗的時候發(fā)現(xiàn)自己被綠了掸掏。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡宙帝,死狀恐怖丧凤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情步脓,我是刑警寧澤愿待,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站靴患,受9級特大地震影響仍侥,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鸳君,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一农渊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧或颊,春花似錦砸紊、人聲如沸传于。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽格了。三九已至,卻和暖如春徽鼎,著一層夾襖步出監(jiān)牢的瞬間盛末,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工否淤, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留悄但,地道東北人。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓石抡,卻偏偏與公主長得像檐嚣,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子啰扛,可洞房花燭夜當晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容