嵌入式_cpu微架構、互連結構與總線

一、cpu微架構

(一)、定義

處理器微架構又稱爲微體系結構/微處理器體系結構,是在計算機工程中,將一種給
定的 指令集架構在處理器中執行的方法和具體硬件實現方案。
• 一種給定指令集可以在不同的微架構中執行。實施中可能因應不同的設計目的和技
術提升而有所不同。
• 計算機架構是微架構和指令集設計的結合。

(二)、分類

1、X86架構

X86架構是微處理器執行的計算機語言指令集,基於Intel 8086且向後兼容的中央處理器指令集架構,包括Intel 8086、80186、80286、80386以及80486,由於以“86”作爲結尾,因此其架構被稱爲“x86”。
應用領域:個人計算機、服務器等
類別:
IA:Intel(英特爾)處理器的服務器稱之爲IA(Intel Architecture)架構服務器
IA-32:英特爾32位體系架構,X86從16位到32位是在原有的架構基礎上進行修改(Intel稱之爲IA32)
x86-32:現如今Intel把x86-32稱爲IA-32
x86-64:
AMD64:x86架構的64位拓展,向後兼容於16位及32位的x86架構。x64於1999年由AMD設計,AMD首次公開64位集以擴展給x86,稱爲“AMD64”,AMD64和Intel64基本上一致。
Intel64:EM64T(Extended Memory 64 Technology)擴展64bit內存技術,本質上和AMD64一樣都是IA-32的增強版本。
IA-64:1999年推出的64位的英特爾安騰架構(Intel Itanium architecture),不屬於X86架構

2、IA-64

64位的英特爾架構,英特爾安騰架構(Intel Itanium architecture),使用在
Itanium處理器家族上的64位指令集架構,由英特爾公司與惠普公司在1999年共同
開發。IA是Intel Architecture(英特爾架構)的縮寫,64指64位系統。使用這種
架構的CPU,包括Itanium和Itanium 2。此架構與x86及x86-64並不相容,操作系
統與軟件需使用IA-64專用版本。
• intel採用EPIC技術的服務器CPU安騰Itanium(開發代號即Merced)就是IA-64系
列中的第一款。
• IA-64 在很多方面來說,都比x86有了長足的進步。突破了傳統IA-32架構的許多限
制,在數據的處理能力,系統的穩定性、安全性、可用性、可管理性等方面獲得了
突破性的提高。
• IA-64微處理器最大的缺陷是它們缺乏與x86的兼容,而Intel爲了IA-64處理器能夠
更好地運行兩個朝代的軟件,它在IA-64處理器上(Itanium、Itanium2 ……)引入
了x86-to-IA-64的解碼器,這樣就能夠把x86指令翻譯爲IA-64指令。這個解碼器並
不是最有效率的解碼器,也不是運行x86代碼的最好途徑(最好的途徑是直接在x86
處理器上運行x86代碼),因此Itanium 和Itanium2在運行x86應用程序時候的性能
非常糟糕。這也成爲X86-64產生的根本原因。

3、ARM架構

ARM架構:精簡指令集機器RISC(Advanced RISC Machine,更早稱作:Acorn RISC Machine),是一個32位精簡指令集(RISC)處理器架構,廣泛地使用在許多嵌入式系統設計。由於節能的特點,ARM處理器非常適用於移動通訊領域,符合其主要設計目標爲低耗電的特性。ARM家族佔了所有32位嵌入式處理器75%的比例,使它成爲佔全世界最多數的32位架構之一。
應用領域:手機、PAD、導航系統、網絡設備、電腦周邊設備(硬盤、桌上型路由器)甚至在導彈的彈載計算機等軍用設施中都有他的存在。目前世界上使用最廣泛的CPU就是ARM。
ARM架構的特點:

  1. 體積小,低功耗,低成本,高性能;
  2. 支持 Thumb ( 16 位) /ARM ( 32 位)雙指令集,能很好的兼容8 位 /16 位器件;
  3. 大量使用寄存器,指令執行速度更快;
  4. 大多數數據操作都在寄存器中完成;
  5. 尋址方式靈活簡單,執行效率高;
  6. 指令長度固定;
  7. 流水線處理方式
  8. Load_store結構:在RISC中,所有的計算都要求在寄存器中完成。而寄存器和內存的通信則
    由單獨的指令來完成。而在CSIC中,CPU是可以直接對內存進行操作的。
4、PowerPC架構

PowerPC 是一種精簡指令集(RISC)架構的中央處理器(CPU),其基本的設計源自IBM(國際商用機器公司)的IBM PowerPC 601 微處理器POWER(Performance Optimized With Enhanced RISC;《IBM Connect 電子報》2007年8月號譯爲“增強RISC性能優化”)架構。二十世紀九十年代,
IBM(國際商用機器公司)、Apple(蘋果公司)和Motorola(摩托羅拉)公司開發PowerPC芯片成功,並製造出基於PowerPC的多處理器計算機。PowerPC架構的特點是可伸縮性好、方便靈活。
PowerPC 處理器有廣泛的實現範圍,包括從諸如 Power4 那樣的高端服務器 CPU 到嵌入式 CPU 市場(任天堂 Gamecube 使用了 PowerPC)。PowerPC 處理器有非常強的嵌入式表現,因爲它具有優異的性能、較低的能量損耗以及較低的散熱量。除了象串行和以太網控制器那樣的集成 I/O,該嵌入式處理器與“臺式機”CPU 存在非常顯著的區別。
PowerPC相比ARM的優勢
1、整合度高以及技術先進性,現在PowerPC 處理器集成USB,PCI,DDR控制器,SATA控制器,千兆網口控制器,CAN控制器,RapidIO以及PCI_Express控制器,IEEE1588通信協議,支持各種通信協議CPM協處理器 ,DMA,SPI,I2C.UART等,客戶無須設計複雜的外圍電路,減少設計複雜程度以及物料使用。
2、芯片可選範圍大,性能高,升級容易,從50M-1.7G都有處理器,而且POwerPC將象多核處理器發展,如已經推出集成雙e500 core MPC8572,MIPS性能高達6897,ARM 大概是 1.1 MIPS/MHz,Power Architecture 是大於2.0MIPS/MHz,所以PowerPC在高端嵌入式應用,佔有很大比例。

5、MIPS架構

MIPS是世界上很流行的一種開源RISC處理器。MIPS的意思是“無內部互鎖流水級的微處理器”(Microprocessor without interlocked piped stages),其機制是儘量利用軟件辦法避免流水線中的數據相關問題。它最早是在80年代初期由斯坦福(Stanford)大學Hennessy教授領導的研究小組研製出來的。MIPS公司的R系列就是在此基礎上開發的RISC工業產品的微處理器。這些系列產品爲很多計算機公司採用構成各種工作站和計算機系統。
應用領域:工作站等計算機平臺,目前國內龍芯主要使用MIPS架構機器。
與ARM架構相比,MIPS的優勢主要有以下幾點:
1、 MIPS支持64bit指令和操作,ARM目前只到32bit
2.、MIPS有專門的除法器,可以執行除法指令
3、 MIPS的內核寄存器比ARM多一倍,所以同樣的性能下MIPS的功耗會比ARM更低,同樣功耗下性能比ARM更高MIPS指令比ARM稍微多一點,稍微靈活一點
與ARM架構相比,MIPS架構也存在着以下幾點不足:
MIPS的內存地址起始有問題,這導致了MIPS在內存和cache的支持方面都有限制,現在的MIPS處理器單內核面對高容量內存時有問題MIPS今後的發展方向是並行線程,類似INTEL的超線程,而ARM未來的發展方向是物理多核,目前來看物理多核佔優。MIPS雖然結構更加簡單,但是到現在還是順序單發射,ARM已經進化到了亂序雙發射,甚至NV的丹佛已經是亂序三發射了。

5、RISC-V,大道至簡,芯片中的網紅戰鬥機

RISC-V是2015年12月一個由U.C. Berkeley開發的開源和模塊化RISC指令集,“V”包含兩層意思,一是這是Berkeley從RISC I開始設計的第五代指令集架構,
二是它代表了變化(variation)和向量(vectors)。
負責帶隊研製這些RISC指令集的正是伯克利分校的圖靈獎得主David Patterson教授,RISC指令集的真正創始人。
• RISC-V 基金會的會員包括谷歌、英偉達、高通、Rambus、三星、恩智浦、美光、IBM、GlobalFoundries、UltraSoC 和西門子等。
• 鑑於我們國家芯片研發長期受制於人,利用開源的RISC-V架構,對於我國做出基本自主知識產權的芯片具有重大意義。
• 2018年10月,中國RISC-V產業聯盟成立。
• 中科院計算所、華爲、阿里巴巴集團等在內的20多個國內企事業單位,選擇加入了RISC-V基金會。
• 華米的黃山1號,可穿戴人工智能芯片。

二、總線

(一)、定義

定義1(片面觀點):總線是連接各個功能部件的公共導線。
定義2(全面觀點):完整的總線應當包含連接各個功能部件的導線、各個功能部件內部的接口電路以及可能存在的總線控制與管理部件。
傳輸媒介(導線) + 分散於各個模塊( 內部的接口電路) + 總線控制與管理(總線申請,總線仲裁,總線傳輸,總線釋放等協議與規範

(二)、總線規範

總線是一組信號線的集合,是一種在各部件間傳送信息的公共通路。總線規範就是對總線的描述,一般都要包括物理特性、功能特性、電氣特性、時間特性幾個部分定義。

(三)、總線分類

1、按數據格式分類

按總線數據格式分爲串行總線、並行總線兩種。
1).串行總線:以串行方式傳輸數據的總線。
2).並行總線:以並行方式傳輸數據的總線。

2. 按時序控制方式分類(共享時鐘信號)

按照總線的時序控制方式分類,總線可分爲同步總線、異步總線兩種。
1).同步總線互連的計算機部件間均通過統一的時鐘進行同步,即所有互連部件都必須使用同一個時鐘(同步時鐘),在規定的時鐘節拍內進行規定的總線操作,來完成部件之間的信息交換。
2).異步總線指沒有統一的時鐘而依靠各部件內部定時操作,所有部件是以信號握手的方式進行,即發送方和接受方互用請求和確認信號來協調動作,總線操作時序不固定。

3. 按照總線內部信息傳輸的性質分

•數據總線:DB 用於傳送數據信息
•地址總線:AB 是專門用來傳送地址的
•控制總線:CB 控制總線包括控制、時序和中斷信號線
•電源總線:PB 用於向系統提供電源

4. 按總線在系統結構中的層次位置

•片內總線 (On-Chip Bus)
在集成電路的內部,用來連接各功能單元的信息通路。芯片(CPU)內部的總線,用於連接芯片內部各元件(ALU、寄存器、指令部件)。芯片(CPU)內部的總線,用於連接芯片內部各元件(ALU、寄存器、指令部件)。
•系統總線 (System Bus):又稱內部總線用於計算機內部模塊(板)之間通信
•局部總線(Local Bus):連接計算機硬件系統的某一個子系統或部分部件的總線。一般將具有總線仲裁能力的多主控模塊之間的總線稱爲系統總線,將不具有總線仲裁能
力的多主控模塊之間的總線稱爲局部總線。
•外部總線 (External Bus):又稱通訊總線用於計算機之間或計算機與設備之間通信。通信總線又稱外部總線或外設總線,如RS-232C、RS-485、USB總線、IIC總線、SPI總線、CAN總線等。

5、俗稱:

• CPU內部的總線稱爲片內總線
• CPU與北橋之間的總線稱爲前端總線FSB,
• 內存與北橋的總線稱爲內存總線
• 通過北橋與CPU相連的總線稱爲局部總線,
• 把與南橋相連的總線成爲I/O總線。

6、通信總線按數據同時傳輸方向可分爲單工、半雙工、全雙工通信三種:

• 單工通信:是指消息只能單方向傳輸的工作方式,只能有一個方向的通信而沒有反方向的交互;
• 半雙工通信:是指數據可以沿兩個方向傳送,但同一時刻一個半雙工總線結構信道只允許單方向傳送,因此又稱爲雙向交替通信;
• 全雙工通信:通信的雙方可以同時發送和接收信息,又稱雙向同時通信。
在這裏插入圖片描述

(四)、總線的性能指標

需要引入某種技術指標,就像描述計算機性能的MIPS和MFLOPS那樣,可以描述總線的性能。
• 總線頻寬:總線本身所能達到的最高傳輸率
總線頻寬(MB/s) = 總線頻率f× 數據線寬度W
• 總線傳輸率:1個時鐘週期能傳輸的數據的數量。
總線傳輸率Q = 總線頻率f × 傳輸數據寬度W / 傳輸一次數據所需時鐘週期個數N
其它常見指標:總線時鐘頻率,總線可掛接設備數量,最大物理長度,數據寬度,地址寬度。

(五)、總線工作原理

• 先從總線結構談起
• 完整的總線應當包含連接各個模塊之間的連接導線、各個模塊內部的
總線接口電路以及可能存在的總線控制與管理部件。
• 這種結構導致總線工作具有如下特徵:

  1. 共享媒介
  2. 媒介爭用與總線仲裁
  3. 集中式仲裁和分佈式仲裁
  4. 總線接口和設備接口相配合

• 常見的總線結構至少包括這樣三部分:

  1. 地址部分
    • 如果是I/O地址,一般在0000H-FFFFH之間
    • 如果是內存地址,則與芯片架構有關
    • 20 bits (8086/8088), 24 bits (80286), 32 bits (80386DX, 486, Pentium,
    Pentium Pro / II / III)
  2. 數據部分
    • 8 bits (8088), 16 bits(8086, 80286, …Pentium), 64 bits (Pentium/ Pro/II/III)
  3. 控制部分
    • 不可缺少的四根控制線:MRDC, MWRC, IORC, IOWC
    • 經常還會有:總線請求、傳輸響應、中斷控制 (INT / INTA),DMA控制 (DREQ,
    DACK)
    • 其它:總線鎖定LOCK

(六)、如何傳輸數據

• 總線傳輸四階段:總線申請,總線仲裁,總線傳輸,總線釋放
• 總線仲裁:鏈式查詢,計數器查詢和獨立請求
• 數據傳輸:同步方式、異步方式和半同步方式
• 總線驅動
• 出錯處理
1、總線仲裁
• 連接到總線上的功能模塊有主動(主方)和被動(從方)兩種形態
• 主方可以啓動一個總線週期
• 從方只能響應主方請求
• 每次總線操作,只能有一個主方,但是可以有多個從方。
• 總線佔用期:主方持續控制總線的時間。
• 爲了解決多個功能模塊爭用總線的問題,必須設置總線仲裁部件。
• 仲裁策略:
• 公平策略
• 優先策略

三、互連結構

(一)、如何應用總線實現計算機內部各個模塊之間的互連?

• 最簡單的方式:將各個模塊通過“插槽”直接連接到總線上
• 擴展方式:中繼(Repeater)、級聯(Uplink)和堆疊(Stack)
• 中繼就是通過連接將信號從一箇中繼點傳遞到下一個中繼點,實現信號的增強,最終達到延伸信號傳播距離和範圍的目的。
• 級聯就是把二個以上的總線設備通過某種方式連接起來,能起到擴容和傳輸距離和範圍的效果。
• 堆疊是把兩個相同或相近的總線設備組合起來形成一個整體設備,起到擴容的效果。
• 不同總線之間的轉換:橋接器(Bridge)

(二)、交換

1、定義:
• 類比:電話系統的交換機(交換原理)
• 交換取消了對傳輸媒介的共享,提高了並行使用情況下單個端口的帶寬(數據傳輸率)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章