01 微型計算機總線 - 最全的接口技術提綱


微型計算機總線

接口與計算機交互方式

計算機控制接口和外部

  1. 軟件發出I/O寫指令
  2. CPU及譯碼電路產生數據/控制信號
  3. 接口電路產生對外設的數據信號和控制信號

計算機獲得外部信息

  1. 外設的數據和運行狀態
  2. 接口電路
  3. CPU
  4. I/O讀指令將數據或狀態送到軟件

基礎概念

  • 端口:是指接口電路中可以進行讀/寫的寄存器
  • 接口:是若干個端口加上相應的控制邏輯電路組成
  • 接口數據類型:數據信息、控制信息和狀態信息
  • 端口類型 (CPU通過輸入指令(IN)可以從有關端口中讀出信息,通過輸出指令(OUT)可以把信息寫入有關端口):
    • 數據端口:存放數據信息的寄存器
    • 控制端口:存放控制命令的寄存器,只進行輸出操作 (OUT)
    • 狀態端口:存放狀態信息的寄存器,只進行輸入操作 (IN)

微型計算機總線

  • 分類:XT、ISA、PCI、PCI-E

總線概述

基本概念

總線是一種在多於兩個模塊(設備或子系統)間傳送信息的公共通路。

  • 物理:總線是一組傳輸公共信號線的集合,是傳輸地址、數據和控制信號的公共通路,由一組導線和相關的控制(協議)驅動電路組成。
  • 實體:在主板上安裝有若干個插槽,允許插入各個模塊(CPU板、存儲器板和I/O板等)。主板上的印制電路線將各插槽的相應點連接起來,即為總線。

總線標准

指芯片之間、擴展卡之間以及系統之間,通過總線進行連接和傳輸信息時,應該遵守的一些協議與規范

接口標准

外設接口的規范,涉及接口信號線定義、信號傳輸速率、信號傳輸方向和拓撲結構,以及電氣特性和機械特性等多個方面。

總線與接口的區別

  • 總線標准具有公用性、接口標准大多是專用的
  • 總線往往以主板上的總線擴展槽形式提供使用,接口一般是以接口插座(頭)形式提供使用。
  • 總線一般是並行傳輸; 接口有並行傳輸,也有串行傳輸。目前兩者均明顯表現出串行發展趨勢。
  • 總線定義的信號線多,而且齊全,有分離的控制總線、數據線和地址線; 接口的信號線少,而且不齊全,一般是控制線、數據線和地址線共用。

總線特性

  • 物理特性:指總線的物理連接方式,包括總線的根數,總線的插頭、插座的形狀,引腳線的排列方式等。(以便於設計者進行設計)
  • 功能特性:描述總線中每一根線的功能。
  • 電氣特性:定義每一根線上信號的傳遞方向及有效電平范圍。送入CPU的信號叫輸入信號(IN),從CPU發出的信號叫輸出信號(OUT)。
  • 時間特性:定義了每根線在什么時間有效。規定了總線上各信號有效的時序關系,CPU才能正確無誤地使用。

總線的主要性能參數

  • 總線頻率:MHz表示的工作頻率,是總線頻率的一個重要參數。

  • 總線寬度:指數據總線的位數。

  • 總線的數據傳輸率=(總線寬度/8位)×總線頻率

    例: 若PCI總線的總線頻率為33.3MHz,總線寬度64位的情況下,總線數據傳輸率為266MB/s

總線分類

結構分

  • 單總線:所有模塊都連接到單一總線上
    • 結構簡單便於擴充
    • 可能成為計算機的瓶頸
  • 雙總線:系統總線與I/O總線分開的雙總線結構
    • 將速度較低的I/O設備從總線上分出去
  • 三總線:在系統總線和擴展總線之間增加一條高速總線
    • 將圖形、視頻和網絡等連到高速總線上,而慢速I/O設備仍連到擴展總線

功能和信號傳輸類型分

  • 數據傳送線
    • 地址總線(Address Bus)- 單向(由 CPU 發出),可傳:
      • CPU要執行的下一條指令地址
      • 計算所需的操作數存儲地址
      • 要存放計算結果的存儲單元地址
      • 准備發送數據的某台輸入設備的地址
      • 准備接收數據的某台輸出設備的地址
      • 存儲器的兩個存儲區之間、存儲器與外設之間、兩個外設之間傳送數據時的有關地址。
    • 數據總線(Data Bus)- 雙向,可傳:
      • 數值數據、指令、設備碼、控制字、狀態字
    • 控制總線(Control Bus)- 分為:
      • 讀出命令和寫入命令信號線
      • 中斷請求線和中斷響應線
      • 同步(選通或時鍾)信號線
      • 保持、等待就緒(准備好)信號線
  • 仲裁總線
  • 中斷和同步線
  • 公用線(現代總線結構)

層次分

不同傳輸要求的設備“分類”連接在不同性能的總線上,合理地分配系統資源,滿足不同設備的不同需要

  • CPU內部總線
    • 微機系統中速度最快的總線,主要在CPU內部,連接CPU內部各部件,在CPU周圍的小范圍內也分布該總線,提供系統原始的控制和命令
  • 局部總線
    • 在系統總線和CPU總線之間的一級總線,提供CPU和主板器件之間以及CPU到高速外設,之間的快速信息通道
  • 系統總線
    • 也稱為I/O總線,是傳統的通過總線擴展卡連接外部設備的總線。由於速度慢,其功能已逐漸被局部總線替代
  • 通信總線 - 並行/串行:
    • 也稱為外部總線,是微機與微機,微機與外部設備(如打印機、硬盤設備)、儀器儀表之間的通信通道

總線標准化

芯片、擴展卡與系統之間通過總線連接和通信時,應當遵循的協議和規范

  • 總線負載能力:指當總線接上負載后必須不影響總線輸入/輸出的邏輯電平

增強總線負載能力的一般方法

在總線與負載間加接緩沖器或驅動器,常用三態緩沖器,其作用是驅動和隔離。(在板卡,即適配器上帶有緩沖驅動器,或在接口芯片內部有緩沖驅動器單元)

系統總線發展

基礎知識

指令周期、總線周期、時鍾周期

  • 指令周期:不同指令的指令周期是不等的。一個指令周期由一個或若干個總線周期組成。
  • 總線周期:CPU通過總線與外部進行信號輸入、輸出交換信息所需的時間。
  • 時鍾周期:時鍾脈沖的重復周期。可見時鍾周期是CPU的時間基准。又叫T狀態。

XT 總線

PC/XT總線是將8088 CPU的引腳經過8282鎖存器、8286發送接收器、8288總線控制器、8259中斷控制器、8237DMA控制器以及其他邏輯電路的重新驅動和組合控制而形成的。

總線信號線共62條

  • 8條雙向數據線D7~D0 ;
  • 20條單向地址線A19~A0 ;
  • 控制線:
    • 6條中斷請求線;
    • 3對DMA申請線和4條DACK線;
    • 4條 存儲器和I/O設備的讀寫命令線;
    • 1條系統時鍾信號線、1條I/O奇偶檢測線、1條I/O就緒線及其他聯絡信號線。
  • 4種電源(±5V、±12V)共8條線。
主要總線信號
  • 地址信號 A15- A0
  • 數據總線信號 D7-D0
  • 控制總線信號 -IOR,-IOW,AEN

ISA總線

ISA 插槽由基本的62線8位插槽和擴展的36線插槽兩部分組成

特點

信號分類

  • 1K字節的I/O地址空間(0000H~03FFH)
  • 24位存儲器地址
  • 8位或16位數據存取
  • 15級硬件中斷
  • 7級DMA通道
  • 產生I/O等待狀態

多主控

它是一種多主控(MultiMaster)總線。除主CPU外,DMA控制器、DRAM刷新控制器和帶處理器的智能接口控制卡都可以成為ISA總線的主控設備

支持8種類型的總線周期

  • 8位或16位的存儲器讀周期
  • 8位或16位的存儲器寫周期
  • 8位或16位的I/O讀周期
  • 8位或16位的I/O寫周期
  • 中斷請求和中斷響應周期
  • DMA 周期
  • 存儲器刷新周期
  • 總線仲裁周期
主要總線信號
  • 數據線D0~D15:雙向三態
  • 低位地址線A0~A19:輸出,可尋址1MB,帶鎖存
  • 高位地址線LA17~LA23:輸出,尋址范圍16MB,不帶鎖存,A19~A17不復用,提高數據傳輸率
  • 地址鎖存允許信號ALE:輸出,高電平有效
  • 中斷請求信號IRQ2~IRQ7、IRQ10~IRQ14:輸入,上升沿有效
  • 地址使能信號AEN:輸出,高電平有效。高電平表示DMA周期。CPU控制總線時,該信號保持低電平
  • I/O讀信號IOR#:輸出,低電平有效
  • I/O寫信號IOW# :輸出,低電平有效
  • 存儲器讀 MEMR#:輸出,低電平有效
  • 存儲器寫MEMW#:輸出,低電平有效
  • 數據總線高字節使能 SBHE# :輸出,低電平有效
  • 16位I/O片選信號I/OCS16#:輸入,低電平有效
  • 16位存儲器片選MEMCS16#:輸入,低電平有效

PCI總線

(Peripheral Component Interconnect,外圍部件互連總線)於1991年由Intel公司首先提出

分類
PCI 類型 總線寬度 (位) 總線時鍾 (MHz) 帶寬 MB/sec
PCI 32 33 133
PCI 66M 32 66 266
PCI 64位 64 33 266
PCI 66M/64位 64 66 533
PCI-X 1.0 32/64 66~133 266~1,066
PCI-X 2.0 32/64 66~533 266~4,267
特點
  • 獨立於CPU工作,PCI總線通過主橋路和處理器相連,因此通過改變主橋路,可與不同的處理器相連。
  • 突發傳輸模式,確保總線數據不斷地處於滿載狀態。
  • 自動配置功能,每個PCI設備上都有256字節的配置空間支持;PCI設備的即插即用

突發傳輸是兩設備之間不間斷的連續數據傳送。這種傳輸方式可以由某個地址起讀、寫大量數據,地址自動加1.

規范
  • PCI總線規范定義了5V和3.3V兩種工作電源電壓
  • 連接器有32位和64位兩種
  • 5V的連接器用於3.3V時,需要旋轉180度
  • PCI接口卡的金手指根據需要可設計成5V通用、5V/32位、5V/64位以及3.3V通用、3.3V/32位、3.3V/64位等多種形式
PCI系統結構
  • Host / PCI 橋(North Bridge) 連接主處理器和基礎PCI總線的橋。
  • PCI / ISA 橋 (South Bridge) 連接基礎PCI總線和ISA 總線的橋,通常包含中斷控制器、IDE控制器、USB控制器和DMA控制器。
  • PCI / PCI 橋 連接基礎PCI和擴展PCI的橋。在基礎PCI總線或PCI插卡上,可連接或嵌入一個或多個PCI /PCI 橋。
PCI設備
  • PCI主設備:可通過總線仲裁獲得PCI總線的使用權,主動地向其他PCI設備或者主存儲器發起存儲器讀寫請求
  • PCI從設備:被動地接收來自HOST主橋,或者其他PCI設備的讀寫請求
  • 橋設備:管理下游的PCI總線,並轉發上下游總線之間的總線事務
PCI總線接口信號

線號類型

  • IN:表示輸入信號
  • OUT:表示輸出信號
  • T/S:表示雙向三態I/O信號
  • S/T/S:表示持續的低電平有效的三態信號。
  • O/D:表示漏極開路,以線或方式允許多個設備共享
系統接口信號

CLK IN:

PCI系統總線時鍾
最高33MHz/66MHz,最低0Hz
PCI大部分信號在CLK的上升沿有效

AD[31:00] T/S:

地址、數據多路復用信號
在FRAME#有效的第1個時鍾,AD[31:00]上傳送的是32位地址,稱為地址期
在IRDY#和TRDY#同時有效時,AD[31:00]上傳送的為32位數據,稱為數據期

C/BE[3:0]# T/S:

總線命令和存儲體選擇(BANK ENABLE)復用信號。
地址期內表示總線命令;數據期內表示字節使能信號,指明AD[31:00]上哪些數據有效。

C/BE[3:0]# 命令類型說明 C/BE[3:0]# 命令類型說明
0000 中斷應答(中斷識別) 1000 保留
0001 特殊周期 1001 保留
0010 I/O讀(從I/O口地址中讀數據) 1010 配置讀
0011 I/O寫(從I/O口地址中寫數據) 1011 配置寫
0100 保留 1100 存儲器多行讀
0101 保留 1101 雙地址周期
0110 存儲器讀(從內存空間映像中讀數據) 1110 存儲器讀行
0111 存儲器寫(從內存空間映像中寫數據) 1111 存儲器寫並無效

PAR T/S:針對AD[31:00]和C/BE[3:0]#進行奇偶校驗的校驗位

接口控制信號

FRAME# S/T/S:

幀周期信號
FRAME#信號無效→有效,表示一幀傳輸開始;
FRAME#有效的第1個時鍾為地址期,其后為若干數據期;
FRAME#信號有效→無效,表示傳輸進入最后一個數據期。

STOP# S/T/S:從設備發出的要求主設備終止當前的數據傳送的信號。
LOCK# S/T/S:鎖定信號
IDSEL IN:初始化設備選擇信號,訪問配置空間的時候作為片選。
DEVSEL# S/T/S:設備選擇信號,由常規訪問期間被選中的從設備驅動。
IRDY# S/T/S:主設備准備好信號
TRDY# S/T/S:從設備准備好信號

仲裁接口信號

REQ# T/S:總線占用請求信號
GNT# T/S:總線占用允許信號

錯誤報告接口信號

PERR# S/T/S:數據奇偶校驗錯誤報告信號
SERR# O/D:系統錯誤報告信號

中斷接口信號

INTA#、INTB#、INTC#、INTD# :

4條中斷線
電平觸發
多功能設備可以任意選擇一個或多個中斷線,單功能設備只能用INTA#。

PCI地址空間
分類
  • 內存地址空間
  • I/O地址空間
  • 配置地址空間
    • 配置空間是PCI所特有的一個物理空間。由於PCI支持設備即插即用,所以PCI設備不占用固定的內存地址空間或I/O地址空間,而是由操作系統決定其映射的基址。
      • 所有的PCI設備必須實現配置空間,從而能夠實現參數的自動配置,實現真正的即插即用。
    • 系統加電時,BIOS檢測PCI總線,確定所有連接在PCI總線上的設備以及它們的配置要求,並進行系統配置。
      • 配置軟件讀取設備的配置寄存器(配置讀操作總線周期);
      • 確定設備所需地址空間;
      • 分配中斷以及主設備對總線的訪問要求等。

PCI總線的每個設備都有自己的地址譯碼邏輯
支持正向、負向兩種地址譯碼方式

  • 正向譯碼:每個設備都監視地址總線上訪問地址是否落在它的地址范圍內
  • 負向譯碼:未被其他設備在正向譯碼中接受的所有譯碼要等總線上其他所有設備都拒絕之后才能確定,總線上只能有一個設備采用此種方式。如標准擴展總線
PCI配置空間

一個物理PCI設備(簡稱設備)可能包含多個功能塊(簡稱功能),每個功能均有一個配置空間,但(總線標准規定最多8個功能)共用一個IDSEL信號;
配置空間大小256B(64個雙字),其中頭區域大小64B。

設備識別信息:廠商、設備、版本、分類等

頭標類型 設備
2 PCI-CardBus橋
1 PCI-PCI橋
0 除上述橋外的所有設備

設備控制信息: I/O訪問、MEM訪問、特殊周期、錯誤響應、等待周期等

設備狀態信息:運行環境、錯誤標志、DEVSEL#時序等

基址寄存器:為簡化設備配置過程、達到配置空間的映射與設備無關的目標而設計的。PCI設備最多申請6段32位地址區域空間。

  • 最大/最小存儲映射地址空間:2GB(231) ~ 16B
  • 最大/最小I/O映射地址空間:256B ~ 4B

基址寄存器的值=FFF00000h

  • 位0=0,表示是一個存儲器地址空間映射
  • 位[2:1]=00b,它使能32位存儲器映射
  • 位3=0,表示它不是預取存儲器。
  • 位[31:4]第一個為1的是位20,表示映射的存儲空間為1MB=220。表示存儲映射的基地址應該起始於1MB、2MB、3MB等的邊界上。

系統經過權衡后再向該基址寄存器寫入實際映射的空間基址(低20位為0,寫入12位到[31:20]位)

基址寄存器的值=FFFFFF01h

  • 位0=1,表示是一個I/O地址空間映射
  • 位[31:2],第一個為1的是位8,表示映射的I/O空間為256。表示I/O地址映射的基地址應該起始於256的整數倍。
配置空間訪問的實現方法

Intel x86不能對配置空間寄存器直接讀/寫

配置機構(PCI協議規定):將處理器發出的I/O訪問轉換為配置訪問的轉換機構。

  • 配置機構實現方法:用兩個特定的32位I/O端口對應兩個配置寄存器。
    • 配置地址端口寄存器 ( I/O地址為0CF8H~0CFBH)
    • 配置數據端口寄存器(I/O地址為0CFCH~0CFFH)

配置操作實現步驟

  1. 將要訪問的總線號、設備號、功能號和雙字地址寫到配置地址端口寄存器。
  2. 執行一次對配置數據端口寄存器的I/O訪問。

配置地址信息格式

例子:讀PCI總線的1號擴展槽(設備號)2號功能設備的廠商標志(寄存器號)

MOV DX,0CF8H
MOV EAX, 80000A00H  //1 0000000 00000000 00001 010 000000 00
OUT DX,EAX
MOV DX,0CFCH
IN  EAX,DX

例子:給總線號為7的PCI總線的4號擴展槽 0號功能設備的基址寄存器4分配8個I/O地址空間。(寫)

MOV DX,0CF8H
MOV EAX, 80072010H  //1 0000000 00000111 00100 000 000100 00
OUT DX,EAX
MOV DX,0CFCH
MOV EAX, FFFFFFF9H  //1111 1111 1111 1111 1111 1111 1111 1001
OUT DX, EAX

PCI-Express

簡稱PCI-E,或PCIe,是PCI總線的發展,與PCI的主要不同是物理連接不同

  • 通信模型及程序方法采用分層協議
  • 雙向的1位串行差分對的點對點物理傳輸機制
  • 可以以類似模塊化的模式擴展
  • 采用多個串行差分對並行工作以提高傳輸帶寬,由1、2、4、8、16、32個差分對構成的PCI-E分別被稱為PCI-E ×1、×2、×4、×8、×16、×32標准

與PCI總線的尋址方式兼容

  • 將PCI的配置空間從256B擴大到4KB,原有PCI設備的驅動程序可運行
  • 提供了一個新的信息地址空間,這可以使PCI Express設備相互交換信息
技術特點
  • 串行差分傳輸:PCI Express總線采用高速串行差分點對點物理連接,大幅度減少引腳,同時提高傳輸速度;
  • 時鍾植入同步技術:省略同步時鍾信號,將8位數據轉化為10位(8b/10b編碼同步)后自帶同步信息(3.0版除外);
  • 可變的傳輸速率:可以根據所連接的硬件設備的不同,使用不同的頻率與其通信;
  • 連接靈活: PCI Express總線可以“走出機箱”。 PCI Express可以如同現在的USB一樣作為計算機接口同設備進行連接;
  • 熱拔插:它還具有高級電源管理和監視功能,這樣所有的PCI Express設備都會支持熱插拔;
  • 糾錯:PCI Express具備循環冗余校驗能力,可以實現傳輸糾錯。
系統結構

PCI-Express從下到上分別為:物理層(Physical Layer)、數據鏈路層(Link Layer)、處理層(Transaction Layer,事務處理層)和軟件層(Software Layer)。

處理層
  • 作用:接收從軟件層送來的讀、寫請求,建立一個請求包傳送到數據鏈路層。處理層同時接收從數據鏈路層傳來的響應包,並與原始的軟件請求關聯。
  • 結構:包括4個地址空間,其中3個是PCI接口原有的,如內存、I/O和配置地址空間,另外一個是PCI Express接口新增加的,它就是信息空間。
數據鏈路層
  • 作用:確保數據包的完整性,確保數據包可靠、正確地傳輸。它在數據包前添加序列號和在數據包后添加冗余校驗碼。
物理層
  • 作用:決定總線接口的物理特性,如點對點串行連接、差分信號驅動、熱撥插、可配置帶寬等。使用信號的跳變來同步,不需要使用單獨的同步時鍾信號。
系統硬件

包括根組件(Root Complex)、交換器(Switch)和PCIE-PCI橋各種終端設備。

  • 根組件可以集成在存儲控制中心(MCH)芯片中,用於處理器和內存子系統與I/O設備之間的連接。
  • 新增交換器(Switch),取代PCI架構中的I/O橋接器,用來連接各種設備或PCI Express擴展插槽。交換器可以提供2個或多個端口,每個端口可以連接一個PCI Express設備,實現多個設備的互連。
    • 而從系統軟件的角度上看,Switch內部由多個PCI-to-PCI橋組成,其中每一個上游和下游端口都對應一個虛擬PCI橋。在一個Switch中有多個端口,在其內部就有多少個虛擬PCI橋,就有多少個PCI橋配置空間。值得注意的是,在Switch內部還具有一條虛擬的PCI總線,用於連接各個虛擬PCI橋,系統軟件在初始化Switch時,需要為這條虛擬PCI總線編號。

USB總線

特點
  • 速度快:USB 1.1傳輸速率12Mbps,USB 2.0傳輸速率480Mbps
  • 連接簡單快捷:直接連接,無需關機、重新啟動、打開機箱等操作
  • 無需外接電源:USB提供內置電源,能向低壓設備提供5V的電源
  • 支持多連接:USB支持多設備連接,
  • 良好的兼容性:USB接口標准有良好的向下兼容性
  • 低功耗
概述
  • USB總線:由VCC、GND、D+、D-四根線組成,D+和D-通過差分方式作為一根數據線(半雙工)使用
  • USB事務:USB總線上最基本的一次數據交換操作
  • USB邏輯地址:邏輯地址不通過連線實現;每個USB集線器和USB設備(不連接到PCI總線),均不占用I/O地址空間(無I/O地址),只具有一個惟一的USB邏輯地址(USB系統自動配置所分配);
  • USB端口:連接USB總線的連接器;
  • USB端點:集線器或設備的內部寄存器(仿照I/O端口起名,又要與USB端口區分),編號在0~15之間。
系統結構

樹型結構,最多可連接127個設備

系統硬件
USB主控制器/根集線器

主控制器(Host Ctrl):

  • 連接到PCI總線,可作為主設備通過PCI總線直接與MEM交換數據;
  • 功能:實現並-串轉換、創建USB事務、管理USB事務傳輸過程(在根集線器與主機MEM間傳遞結果)。
  • 占用一定數量I/O地址空間,受CPU控制。

根集線器(Root Hub):

  • 連接到主控制器
  • 功能:控制USB端口電源、啟用/禁止USB端口、識別連接的設備、設置和報告端口的狀態等。
  • 只占用一個USB邏輯地址,受主控制器控制。
USB集線器(USB Hub)
  • 由控制器和中繼器組成,最多支持4個USB端口;可集成在USB設備內部,不作為獨立硬件出現;有高速(支持USB2.0)和全速(USB1.x)2種類型;
  • 每個USB HUB占用一個USB邏輯地址;具有一定數量(≤16)的USB端點。
USB設備
  • 可分為HUB設備(USB集線器)和功能設備兩種。
    • 功能設備類型:有高速、全速或低速三種類型。
  • 每個USB設備占用一個USB邏輯地址;具有一定數量(≤16)的USB端點。
系統軟件
USB設備驅動程序

將某用戶操作請求轉換成幾個IRP(I/O請求包),以IRP形式送給USB驅動程序。

USB驅動程序
  • 功能:將I/O系統的操作轉換成USB系統的操作;
  • 實現:根據USB設備特性、IRP類型等特征,將IRP組織(轉換)成幾個USB事務(用USB事務的傳輸描述符表示),送給USB主控制器驅動程序。
  • 傳輸描述符:包括USB設備地址、USB事務類型(I/O/S等)、傳輸數據大小、處理速度(傳輸速度)、內存緩沖區位置等
USB主控制器驅動程序

將這些USB事務調度到一系列事務列表中;USB主控制器定時讀取一個列表信息並執行。

  • 調度思想:各USB設備在一定時長內得到服務的機會均等。

  • 調度方法:

    • 一定時長:USB 1.x為1ms,USB 2.0為125μs;該時長稱為幀/微幀

      • 通信幀(定長):由幀開始包和若干事務的包組成。

    • 機會均等:一定時長內的事務可為不同設備的事務,即各事務占時有限(1個IRP→多個USB事務的原因)。

  • 調度依據:設備速度和事務類型、已等待事務類型和數量等。

運作方式

USB包

USB事務的執行通過包交換(一次傳輸)完成。一個USB事務由1~3個USB包組成,包的數量由傳輸類型決定。

一般格式

所有信息段(CRC除外)均是從低位→高位發送

  • SYNC:同步序列,並行數據為10000000
  • PID:包分類碼,由PID類型碼及其反碼組成,順序如下
    • PID0、PID1、PID2、PID3、PID0#、PID1#、PID2#、PID3#

標志包

  • 類型:幀開始包、接收包、發送包、設置包。
  • 發送方:主機(主控制器)。
PID名稱 PID[3:0] 描述
OUT 0001b 具有PID、類型檢查、設備地址、端點號和CRC域的宿主到功能設備的發送包
IN 1001b 功能設備到宿主的接收包,具有和發送包一樣的域
SOF 0101b 幀開始包
SETUP 1101b 主機發給設備的設置包,用於控制傳輸的設置

數據包

  • 發送方:主機或設備。
PID名稱 PID[3:0] 描述
DATA0 0011b 數據包0
DATA1 1011b 數據包1
DATA2 0111b 在微幀中高速、高帶寬的等時交換的數據包
MDATA 1111b 為分離的高速和高帶寬等時交換中的數據包

握手包

  • 發送方:主機或設備,即數據的接收方發送。
PID名稱 PID[3:0] 描述
ACK 0010b 接收設備發的接受數據正確的應答包
NAK 1010b 接收設備無法接受數據或沒有數據返回個宿主
STALL 1110b 設備已經被掛起,需要主機插手解決故障
NYET 0110b 接收器無應答

特殊包

  • 發送方:主機。
  • 包格式:與握手包相同,PID不同。
PID名稱 PID[3:0] 描述
PRE 1100b (Token)預告包,預告將以低速方式與低速設備通信
ERR 1100b (Handshake)分離交換錯誤的握手信號
SPLIT 1000b 高速分離交換標志
PING 0100b 為批或控制端點傳輸而設置的高速流控制探測
Reserved 0000b 保留

作業

一、簡答題

1. XT總線與ISA 比較?

答:

  • XT總線是將8088 CPU的引腳經過8282鎖存器、8286發送接收器、8288總線控制器、8259中斷控制器、8237DMA控制器以及其他邏輯電路的重新驅動和組合控制而形成的。總線信號線共62條:8條雙向數據線D7~D0、20條單向地址線A19~A0、相關控制線與4種電源(±5V、±12V)共8條線。主要總線信號有地址信號、數據總線信號、控制總線信號。
  • ISA總線插槽由基本的62線8位插槽和擴展的36線插槽兩部分組成,其62線功能與XT總線相似。它具有1K字節的I/O地址空間(0000H~03FFH)、24位存儲器地址、8位或16位數據存取、15級硬件中斷、7級DMA通道,可產生I/O等待狀態。它是一種多主控總線,除主CPU外,DMA控制器、DRAM刷新控制器和帶處理器的智能接口控制卡都可以成為ISA總線的主控設備,支持8種類型的總線周期,分別是:8位或16位的存儲器讀周期、8位或16位的存儲器寫周期、8位或16位的I/O讀周期、8位或16位的I/O寫周期、中斷請求和中斷響應周期、DMA 周期、存儲器刷新周期、總線仲裁周期。擴展的32線里:
    • 增加的LA17~LA23這7根地址線可提高數據傳輸率
    • 原XT總線上的-MEMR和-MEMW定義為-SMEMR和-SMEMW。只有當存儲器的地址譯碼信號低於1MB的存儲空間時,這兩個信號才會有效。-MEMR和-MEMW ,ISA新增的信號,在所有的存儲器讀或寫周期內有效

2.PCI總線支持在PC機與存儲器或I/O接口之間以數據傳輸的速率是多少?

答:對於標准的66MHz時鍾(66.6MHz),峰值傳輸速率為264 MBytes/s(266MBytes/s)

3.什么是“即插即用”? PCI總線系統上的C/BE#線的用途是什么?

答:

  • “即插即用”即在系統加電時,BIOS檢測PCI總線,能確定所有連接在PCI總線上的設備以及它們的配置要求,並自動進行系統配置。PCI設備依靠其配置空間實現。
  • C/BE#線是總線命令和存儲體選擇(BANK ENABLE)復用信號,地址期內表示總線命令,數據期內表示字節使能信號,指明AD[31:00]上哪些數據有效。

4.PCI總線怎樣的信號組合啟動一個總線的訪問周期,又怎樣結束一個訪問周期?它的AD0~AD31同CPU的同名引腳有何不同?

答:

  • PCI總線啟動與結束:
    • PCI總線上的主設備總線使用權后,將FRAME#置為有效,表示一個總線周期的開始。
    • 主設備發出都最后一組數據的命令后,FRAME#信號置為無效,表示數據傳輸即將結束。傳送最后一組數據后主設備撤銷IRDY#信號 ,從設備撤銷TRDY#和DEVSEL#信號,一次PCI傳輸結束。
  • PCI總線信號獨立於CPU,使用獨立的時鍾信號。
    • CPU是PCI的使用設備之一,在CPU通過PCI總線訪問設備時,CPU發出的地址信號經過Host-PCI橋緩沖后,按照PCI的時序周期發送到PCI總線中。
    • 進行DMA傳輸時,PCI總線上AD0-AD31上的數據來源於DMA控制器。

二、選擇題

1.CPU在執行IN AL,DX指令時,DX的內容輸出到(D)。

A.地址總線 B.數據總線 C.存儲器 D.寄存器

2.USB是一種(A)

A.通用的串行總線接口 B.通用的並行總線接口 C.新型的微機內部總線 D.新外設標准插頭

3.PCI的含義是(A)

A.局部總線 B.系統總線 C.外圍元件互聯 D.圖形加速器

4.如果按層次結構分類,微機系統中的總線可分為(C)

A.地址總線,數據總線,控制總線 B.PCI總線,AGP總線,USB總線 C.CPU內部總線,局部總線,系統總線,通信總線 D.CPU內部總線,系統總線,外設總線

5.計算機系統總線中,可用於傳送讀、寫控制信號的是(C)

A.地址總線 B.數據總線 C.控制總線 D.通信總線

6.PCI總線的寬度為(BC)位(多選)

A.16 B.32 C.64 D.8

三、填空題

地址總線用AB表示,數據總線用DB表示,控制總線用CB表示。

四、主觀題

如果工作頻率為16MHZ,總線位寬為32位,最大傳輸速率是多少?

答:16MHz × 32位 / 8 = 64 MBPS


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM