架構(gòu)備戰(zhàn)之計(jì)算機(jī)原理 flynn分類法
1、概念
在1966 年,由Michael.J.Flynn 提出根據(jù)指令流、數(shù)據(jù)流的多倍性特征對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行分類(通常稱為 Flynn 分類法)。
- 指令流:機(jī)器執(zhí)行的指令序列
- 數(shù)據(jù)流:由指令流調(diào)用的數(shù)據(jù)序列,包括輸入數(shù)據(jù)和中間結(jié)果,不包括輸出數(shù)據(jù)。
Flynn根據(jù)不同的指令-數(shù)據(jù)流,將計(jì)算機(jī)系統(tǒng)分為四種。
了解四種之前我們了解一下指令和數(shù)據(jù)的英文縮寫。
指令:Instruction,簡(jiǎn)稱:I
數(shù)據(jù):Data,簡(jiǎn)稱:D
而計(jì)算機(jī)中的指令和數(shù)據(jù)可能存在單個(gè)或者多個(gè)。
單個(gè)的英文為Single,簡(jiǎn)稱S;
多個(gè)的英文為multiple,簡(jiǎn)稱:M。
經(jīng)過簡(jiǎn)單的排列組合后得到如下四種。
- SISD(單指令流單數(shù)據(jù)流)
單條指令處理單條數(shù)據(jù)??刂破?,處理器,主存均只有一個(gè)。比如單處理器系統(tǒng)。
- SIMD(單指令流多數(shù)據(jù)流)
- 單條指令處理多條數(shù)據(jù)。一個(gè)控制器,多個(gè)處理器和主存。比如并行處理機(jī)(矩陣處理機(jī)),超級(jí)向量處理機(jī)。
- MISD(多指令流單數(shù)據(jù)流)
- 多條指令處理單條數(shù)據(jù)。多個(gè)控制器,一個(gè)處理器和多個(gè)主存(已被證實(shí)不可能)。例子:目前沒有,有文獻(xiàn)稱流水線計(jì)算機(jī)為此類
- MIMD(多指令流多數(shù)據(jù)庫)
- 多條指令處理多條數(shù)據(jù)??刂破鳎幚砥?,主存均是多個(gè)。
- 能實(shí)現(xiàn)作業(yè),任務(wù),指令等全面并行。
- 例子:多核處理器,多處理機(jī)。
2、了解硬件組成
硬件通常就是我們看得見,摸得著的設(shè)備。
原始的設(shè)備是馮?諾依曼(VonNeumann)計(jì)算機(jī),它以運(yùn)算器為核心。發(fā)展到現(xiàn)在,以存儲(chǔ)器為核心。
- 控制器:是分析和執(zhí)行指令的部件,也是統(tǒng)一指揮并控制計(jì)算機(jī)各部件協(xié)調(diào)工作的中心部件,所依據(jù)的是機(jī)器指令。就是老大,要分配其他小弟干活的。
程序計(jì)數(shù)器(PC): 存儲(chǔ)下一條要執(zhí)行指令的地址
指令寄存器(IR): 存儲(chǔ)即將執(zhí)行的指令
指令譯碼器(ID): 對(duì)指令中的操作碼字段進(jìn)行分析解釋
時(shí)序部件: 提供時(shí)序控制信號(hào)
- 運(yùn)算器:也稱為算術(shù)邏輯單元(ArithmeticandLogicUnit, ALU),其主要功是在控制器的控制下完成各種算術(shù)運(yùn)算和邏輯運(yùn)算。說白了,就是控制器的小弟,專門干活的。
- 算術(shù)邏輯單元 ALU:數(shù)據(jù)的算術(shù)運(yùn)算和邏輯運(yùn)算
- 累加寄存器 AC:為ALU提供一個(gè)工作區(qū),用在暫存數(shù)據(jù)
- 數(shù)據(jù)緩沖寄存器 DR:寫內(nèi)存時(shí),暫存指令或數(shù)據(jù)
- 狀態(tài)條件寄存器 PSW:存狀態(tài)標(biāo)志與控制標(biāo)志(有爭(zhēng)議:也有將其歸為控制器的)
- 主存儲(chǔ)器:也叫內(nèi)存或者主存。存儲(chǔ)當(dāng)前操作的信息和中間結(jié)果,包括機(jī)器指令和數(shù)據(jù)。
- 輔助存儲(chǔ)器:也叫輔存或者外存。需要存儲(chǔ)長(zhǎng)期保存的信息。
- 輸入設(shè)備:比如鍵盤鼠標(biāo)等
- 輸出設(shè)備:將程序執(zhí)行結(jié)果輸出計(jì)算機(jī)給人或其他設(shè)備。比如打印機(jī),數(shù)據(jù)轉(zhuǎn)換裝置等。
3、小結(jié)
本此主要了解什么是flynn分類法,并且由flynn分類涉及到的概念,了解什么是運(yùn)算器和控制器,主存等概念的了解。