SPI:盛開的奇葩
——
SCSI通過向后兼容性(backward-compatible),可從一定程度上保護用戶的投資利益。
從1982年SCSI的前身SASI(Shugart Associates Systems Interface)到1986年被ANSI接受為標準(X3.131-1986),再到目前乃至將來各種SCSI相關標準和技術的不斷推出,這項高性能計算機I/O技術已經走過了20多年的歷程。不能不說它是計算機發(fā)展史中的一朵奇葩!
SCSI-3體系結構模型
SCSI是一種規(guī)范,是一組協(xié)議族。第三代SCSI最初被稱為SCSI-3,以區(qū)別于SCSI-2。但當SCSI-3體系結構模型SAM(SCSI-3 Architecture Model)被修改時,這種體系結構模型就被稱為SAM-2了。SCSI-3中各種協(xié)議在現在和將來都會不斷地得到修改和完善,但字面意義上的SCSI-4是不會出現的。
并行SCSI(區(qū)別于串行SCSI相關協(xié)議),即SCSI-3 Parallel Interface(SPI)只是這個協(xié)議族中的一員,也是本文的主題。目前最新的SCSI Parallel Interface(SPI)是第五代,即SPI-5,也就是商業(yè)領域統(tǒng)稱的Ultra 640。
有關SCSI-3協(xié)議族的成員情況如圖1所示。從圖1可以看出,整個SCSI體系結構實際上包含了三部分:命令集(Command Set),主要涉及具體媒介的各種SCSI命令;協(xié)議(Protocol),定義了數據交換和傳輸方式;互聯標準(Interconnect Standard),定義了設備的物理連接。
概說SPI
我們通常所說的SCSI是指并行SCSI,即SCSI-3 Parallel Interface(SPI)。最初的SPI文檔分為協(xié)議(Protocol)、物理層(Physical Layer)、Fast-20三個內容,可以作為SPI-1。其中Fast-20定義了20MHz總線信號,提供高達40MB/s的速率。這個文檔在1999年被SPI-2代替了。
應該明確的是,通常所說的Ultra SCSI或Wide Ultra SCSI與這里所討論的SPI實際上是一個問題的不同提法。前者是一個商業(yè)術語,往往側重于并行SCSI的信號速率;而后者則是一個比較規(guī)范的學術術語,除了表明并行SCSI信號的速率外,還涉及到并行SCSI所采用的具體電纜情況,例如是50芯的A-Cable還是68芯的P-Cable等。
SPI與其他幾種I/O技術的帶寬比較如圖2所示。
1.SCSI-3 Parallel Interface-2(SPI-2)
SPI-2就是通常所謂的第二代SCSI-3 Parallel Interface。SPI-2定義了一些新的特性,主要包括以下幾點:
● Fast-40數據傳輸率 在Fast-20的基礎上將總線信號頻率由20MHz提升到40MHz,這樣就可達到8位通道下的40MB/s、16位通道下的80MB/s傳輸速率。
● 低電壓差分LVD信號(Low Voltage Differential Signaling) 這是一項把傳統(tǒng)SE信號(Single-ended Signaling)與高電壓差分HVD信號(High Voltage Differential Signaling)相融合的技術。
● 多模式操作 定義了可自動工作于LVD和SE總線上的設備。
● 高密度連接器 定義了一個比較小的高密度68芯連接器。
與SPI-2相對應的是Ultra2 SCSI和Wide Ultra2 SCSI。
2.SCSI-3 Parallel Interface-3(SPI-3)
SPI-3主要包括以下幾個要點:
● Fast-80雙倍傳輸率 不是通過將并行SCSI總線的頻率由40MHz提升到80MHz,而是通過雙倍轉換時鐘(Double Transition Clocking)分別達到8位通道和16位通道下的80MB/s和160MB/s。
● 循環(huán)冗余校驗(CRC) 伴隨著傳輸速率的提高,誤碼率也不斷增加,而通過CRC校驗可以很好地保證高速率下數據的正確傳輸。
● 域確認(Domain Validation)機制 通過這種機制,可以校驗總線上的SCSI設備與SCSI控制器之間硬件連接的互操作性,不同的SCSI設備可以選擇最佳的數據傳輸速率。
● 快速仲裁和選擇(Quick Arbitration and Selection,QAS) 通過這個特性,SCSI設備可以確定哪個設備在控制總線,減少了總線上的空閑時間,從一定程度上提高了系統(tǒng)性能。
● 包封裝SCSI機制 通過這種機制可以降低數據傳輸的代價,也可在一定程度上提高系統(tǒng)性能。
3.SCSI-3 Parallel Interface-4(SPI-4)
SPI-4或稱Ultra320 SCSI是SCSI技術發(fā)展過程中的重要里程碑。由上述討論可以知道,SPI-4包括了三個主要特性,分別為雙倍率時鐘、域確認和CRC校驗。SPI-4在SPI-3的基礎上增添了不少新的特性,通過這些新特性,并行SCSI在降低系統(tǒng)開銷的同時大幅提高了系統(tǒng)I/O的性能。
SPI-4主要包含以下重要特性:
● Fast-160雙倍傳輸速率 通過雙倍傳輸,SCSI總線速率高達320MB/s。
● 包封裝SCSI機制 包含了對包協(xié)議(Packet Protocol)的支持,通過新的包封裝機制,大大降低了并行SCSI總線在傳輸命令、數據以及狀態(tài)信息過程中的命令負荷。SPI-4的包封裝機制是通過雙倍速率轉換數據相位而不是通過較低異步相位來實現的。這樣可以通過最大化提高SCSI總線利用率和最小化降低命令負荷,以獲取較高的I/O性能。包協(xié)議可以使多個SCSI命令在單一連接上傳輸。在SPI-4中,數據以160MB/s的同步相位模式傳輸,而命令和狀態(tài)信息則仍舊以比較慢的異步模式來傳輸,并且每一個連接上只能局限于單一傳輸。
● QAS 這個機制降低了從一個并行SCSI設備到另外一個并行SCSI設備由釋放總線控制權所帶來的命令開銷。
● 讀寫數據流(Read and Write Data Streaming) 通過允許目標器跟在多個數據包之后發(fā)送一個數據流LUN Q-TAG(LQ)包來降低數據傳輸的開銷。在一個非流數據傳輸中,每一個數據包之后都有一個LQ包。由于在每一個LQ包和數據包之間沒有發(fā)生總線轉向延遲,因此寫數據流性能也得到了提高。
● 流控機制 該機制允許起始器在寫數據過程中優(yōu)化數據預取,在讀取數據過程中取數據FIFOs。目標器將指明何時最后一個數據流中的數據包將被發(fā)送。一旦目標器指明了這個最后發(fā)送的數據包,起始器將終止數據預取或開始取數據FIFOs。
20年來,SCSI應用的廣度和深度都在不斷拓展。無論是SPI-4還是SPI-5,在繼承SCSI傳統(tǒng)優(yōu)勢的同時,也為并行SCSI在21世紀的廣泛應用奠定了堅實的基礎。從最初的5MB/s到SPI-4的320MB/s乃至SPI-5的640MB/s,無疑證明了并行SCSI技術在過去、現在和將來都有著廣闊的發(fā)展空間。
由于采用了包封裝SCSI、QAS等新技術,SCSI提供了更安全更可靠的性能,進而從整體上提高了系統(tǒng)的I/O性能。伴隨著PCI-X2.0、PCI Express等高性能計算機局部總線技術的不斷應用,SPI-4、SPI-5將充分挖掘高性能局部總線的優(yōu)勢以獲取更高的系統(tǒng)I/O帶寬。
可以說,SCSI Parallel Interface的技術優(yōu)勢今天仍毋庸置疑。目前SPI-4已投入應用,SPI-5也在不斷完善。我們相信,并行SCSI,即SPI必將得到更為廣泛、深入的應用。
評論