freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第四部分intel網(wǎng)絡(luò)處理器-全文預(yù)覽

  

【正文】 數(shù)據(jù)包的包頭,凈荷數(shù)據(jù)來(lái)自于 DRAM存儲(chǔ)設(shè)備,作為數(shù)據(jù)包的包體。 ? 控制單元從 Full Element List中取出一個(gè) RBUF單元,從Receive_Thread_Freelist中取出一個(gè)空閑線程,創(chuàng)建該單元的接收狀態(tài)字,送到空閑線程的傳輸寄存器,然后通知空閑線程處理數(shù)據(jù)包。MAC硬件及微引擎軟件負(fù)責(zé)將包劃分成 mpacket。 ? BUF按照傳輸方向分為 RBUF和 TBUF。 ? 微引擎只需向 SRAM控制器發(fā)送指令,具體的數(shù)據(jù)讀 /寫(xiě)操作由 SRAM控制器完成。 ? 如果用軟件實(shí)現(xiàn)以上數(shù)據(jù)結(jié)構(gòu),比如將一個(gè)數(shù)據(jù)包放入發(fā)送隊(duì)列: ? 先從 SRAM中讀該發(fā)送隊(duì)列的描述符(隊(duì)列頭指針及尾指針) ? 修改尾指針使指向新的數(shù)據(jù)包 ? 將修改后的隊(duì)列描述符寫(xiě)回 SRAM ? 軟件實(shí)現(xiàn)的缺點(diǎn): ? 操作復(fù)雜 ? 涉及多次 SRAM讀寫(xiě),延遲大,效率低 ? 這些數(shù)據(jù)結(jié)構(gòu)需要被頻繁使用,影響處理速度。 ? SRAM控制器具有復(fù)雜的硬件功能結(jié)構(gòu),支持: ? 一般的數(shù)據(jù)讀 /寫(xiě)操作 ? 原子操作:設(shè)置 /清除比特位,遞增 /遞減,數(shù)據(jù)交換 ? 支持對(duì)鏈表、環(huán)緩沖器等復(fù)雜數(shù)據(jù)結(jié)構(gòu)的自動(dòng)操作 ? SRAM存儲(chǔ)設(shè)備通常用于存儲(chǔ)如發(fā)送隊(duì)列、數(shù)據(jù)包描述符、緩沖區(qū)鏈表等重要而復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。 ? FSM管腳檢查 bank操作符及 DRAM地址是否符合規(guī)范,若符合,驅(qū)動(dòng)相應(yīng)的地址引腳,將數(shù)據(jù)從 DRAM存儲(chǔ)器中讀出。 ? 訪問(wèn) DRAM的指令格式: ? dram [cmd, xfer, src_op1, src_op2, ref_t], sig1, sig2 DRAM讀指令的執(zhí)行過(guò)程 ? 微引擎發(fā)送指令至命令總線, DRAM控制器從命令總線接收指令。 DRAM控制器的特點(diǎn) ? 支持 1個(gè) DRAM通道, 64比特?cái)?shù)據(jù)寬度, 2GB存儲(chǔ)空間。 ? SHaC集成了許多 CSR,對(duì)這些 CSR的訪問(wèn)是通過(guò) SHaC中的 CAP進(jìn)行的。 CAP操作 ? 設(shè)備的控制狀態(tài)寄存器( CSR)被映射到 XScale的地址空間,但其中的一部分 CSR是本地的(并不對(duì)應(yīng)一個(gè)外部設(shè)備),本地 CSR用于控制微引擎及記錄微引擎的狀態(tài) 。 ? 哈希單元有兩個(gè)輸入緩沖器,微引擎可以用一條指令發(fā)射1~3個(gè)哈希請(qǐng)求, SHaC順序地將請(qǐng)求傳遞給哈希單元。 ? SHaC單元向微引擎發(fā)送信號(hào),告知操作完成。 Scratchpad的讀 /寫(xiě)過(guò)程 ? 以將微引擎中的數(shù)據(jù)寫(xiě)入 Scratchpad為例: ? 微引擎將數(shù)據(jù)寫(xiě)入傳輸寄存器,將指令 “ scratch [wr, xfer, src_op1, src_op2, ref_t], opt_tok”發(fā)送到命令總線。 ? 容量為 16KB,組織成 4K長(zhǎng)字。 SHaC單元的概念組織 SHaC單元與芯片其余部分的主要連接: ? 到控制總線的連接,接收命令。 ? 改變存儲(chǔ)器地址需要三個(gè)指令周期,地址建立后存 /取操作只需一條指令,遞增 /遞減尋址模式允許快速順序訪問(wèn)。 ? 容量小: 2560字節(jié)。 ? 鄰居寄存器可由上一個(gè)鄰居微引擎寫(xiě)入數(shù)據(jù),也可由自身微引擎寫(xiě)入數(shù)據(jù)。 ? 傳輸寄存器可以使用絕對(duì)地址或相對(duì)地址進(jìn)行編址。 ? 指令的兩個(gè)源操作數(shù)分別來(lái)自 A Bank 和 B Bank。 ? 每個(gè)線程分配 32個(gè)專(zhuān)用的寄存器:不需要互斥。 ? 控制存儲(chǔ)器中的程序從 IXP2xxx的 ROM中讀入,在 XScale控制下完成。 ? 專(zhuān)用指令存儲(chǔ)器:無(wú)競(jìng)爭(zhēng),要求較多空間。 ? 每個(gè)線程有兩個(gè)本地寄存器,分別記錄需要等待的事件信號(hào)和已經(jīng)到來(lái)的事件信號(hào)。 ? 休眠狀態(tài):等待某個(gè)外部事件的到來(lái)。 硬件線程和上下文切換 ? 每個(gè)微引擎支持 8個(gè)執(zhí)行線程 ? 硬件為每個(gè)線程維護(hù)不同的狀態(tài)信息(如一個(gè)程序計(jì)數(shù)器,一組信號(hào)事件) ? 硬件可以在線程之間迅速切換而不需要軟件的支持,上下文切換為零開(kāi)銷(xiāo)或最多一個(gè)時(shí)鐘周期的開(kāi)銷(xiāo) ? 概念上,微引擎線程就像傳統(tǒng)操作系統(tǒng)中的線程一樣操作。 ? 支持 16比特和 32比特的 CRC運(yùn)算。 ? 控制存儲(chǔ)器和數(shù)據(jù)通道寄存器均位于微引擎內(nèi)部,取指令或取操作數(shù)都在單個(gè)時(shí)鐘周期內(nèi)完成,所以執(zhí)行數(shù)據(jù)通道執(zhí)行一條指令只需要一個(gè)時(shí)鐘周期。通常情況下,微引擎硬件繼續(xù)取下一條指令裝入流水線,就好像沒(méi)有分支一樣。 ? 例如: ? sram [cmd, xfer, src_op1, src_op2, ref_t], opt_tok ? dram [cmd, xfer, src_op1, src_op2, ref_t], sig1, sig2 ? scratch [cmd, xfer, src_op1, src_op2, ref_t], opt_tok ? 程序員必須為每個(gè)數(shù)據(jù)項(xiàng)選擇將要放入的存儲(chǔ)器。 主要內(nèi)容 ? Intel網(wǎng)絡(luò)處理器概述 ? XScale核 ? 微引擎 ? 其它功能單元 ? 編程模型 ? 參考設(shè)計(jì) 微引擎的用途 ? 在 IXP2xxx的處理器體系中,微引擎構(gòu)成了最低層的可編程處理器。 ? 微引擎不使用 XScale的地址空間, XScale必須處理所有的地址轉(zhuǎn)換。 ? 可配置大端 /小端模式的的 32位算術(shù)運(yùn)算: ? 處理器引導(dǎo)時(shí)配置端模式。 數(shù)據(jù)訪問(wèn)單位 ? 每種物理存儲(chǔ)器都定義了訪問(wèn)單位的長(zhǎng)度(也稱(chēng)可尋址數(shù)據(jù)單位): ? 字( word): 2字節(jié)的單位( 16比特) ? 長(zhǎng)字( longword): 4字節(jié)的單位( 32比特) ? 四倍長(zhǎng)字( Quadword): 8字節(jié)的單位( 64比特) ? 盡管微引擎和 XScale可以為每個(gè)字節(jié)產(chǎn)生地址,但是底層機(jī)制總是一次讀 /寫(xiě)一個(gè)訪問(wèn)單位長(zhǎng)度的數(shù)據(jù)。 IXP2xxx處理器體系(續(xù)) ? 嵌入式 RISC處理器( XScale Core):不是快路徑的一部分,用于管理微引擎、提供一個(gè)可以下載程序和配置芯片的接口、處理高層協(xié)議及例外的包,運(yùn)行常規(guī)嵌入式操作系統(tǒng)。 ? 采用分布式的硬件結(jié)構(gòu)(即多主控 +多目標(biāo)),不同的硬件功能單元各司其職,負(fù)責(zé)專(zhuān)門(mén)的數(shù)據(jù)處理,可以并行操作。 ? 慢端口連接:訪問(wèn)ROM/FlashROM等外部硬件單元。 ? PCI總線接口:連接 I/O設(shè)備及傳統(tǒng) CPU。 ? IXP2800: 16個(gè)微引擎,主要面向邊緣網(wǎng)和核心網(wǎng)應(yīng)用,可用于骨干網(wǎng)的路由與交換、無(wú)線設(shè)備、 10Gbps的企業(yè)交換和路由等。 ? 高性能(高可擴(kuò)放性): ? 使用多個(gè)可并行操作的微引擎,通過(guò)增加微引擎的數(shù)目、提高微引擎及 XScale核的時(shí)鐘頻率、采用各種減小訪存延遲的技術(shù)及增加專(zhuān)用的硬件功能單元,可支持高達(dá) OC192的高端處理速度。 ? IXA的三個(gè)重要組成部分: ? 微引擎( Microengine, ME): Intel網(wǎng)絡(luò)處理器的核心部件,在其它功能單元的支持下執(zhí)行快路徑上的操作。 ? IXA包括控制面和數(shù)據(jù)面處理,定義了硬件抽象、應(yīng)用編程接口和互連機(jī)制,但沒(méi)有給出細(xì)節(jié)。 IXA的特性 ? 靈活性: ? 微引擎完全可編程,在低層硬件設(shè)備的支持下可實(shí)現(xiàn)許多復(fù)雜的網(wǎng)絡(luò)處理功能,具有較好的功能靈活性。 ? IXP典型地包括: ? 一個(gè) XScale核 ? 多個(gè)微引擎 ? 片上存儲(chǔ)單元 ? 若干硬件功能單元 ? 與各種外部連接的接口 ? 內(nèi)部總線 第二代 IXP網(wǎng)絡(luò)處理器 ? IXP2400: 8個(gè)微引擎,主要面向網(wǎng)絡(luò)接入和邊緣網(wǎng)應(yīng)用,可用于 WAN多服務(wù)交換、 DSLAM、基站控制器和網(wǎng)關(guān)、 4~7層交換、 VoIP網(wǎng)關(guān)、多服務(wù)接入平臺(tái)等。 IXP2xxx的主要部件 ? 一個(gè) IXP網(wǎng)絡(luò)處理器是一塊獨(dú)立的芯片,包含一組復(fù)雜的可編程及不可編程的處理器和功能單元: ? 一個(gè)嵌入式 RISC處理器( XScale Core) ? 8到 16個(gè)可編程包處理器(微引擎) ? 多條獨(dú)立的片上總線:提供芯片內(nèi)部各功能單元之間的高速通道 ? 處理器同步機(jī)制 ? 共享和不共享的片上存儲(chǔ)器 ? 一個(gè)低速串行接口:連接到 XScale Core,用于控制和管理 ? 多個(gè)外部存儲(chǔ)器接口:連接外部 SRAM、 DRAM及 ROM等 ? 多個(gè)外部 I/O總線接口 ? 計(jì)算哈希和加密的協(xié)處理器 ? 其它功能單元 IXP的外部連接 ? 串行接口:連接到XScale Core,用于控制和管理。 ? SRAM總線接口:提供多條 SRAM總線。 ? 引入命令總線仲裁器對(duì)各主控單元發(fā)出的命令進(jìn)行排隊(duì)判優(yōu),保證指令的優(yōu)先級(jí),避免指令的沖突和擁塞。 ? 物理接口硬件:不是 IXP2xxx的一部分, Intel提供專(zhuān)門(mén)的芯片實(shí)現(xiàn)第一層和第二層的處理。 IXP2xxx使用的存儲(chǔ)器 存儲(chǔ)器類(lèi)型 最大容量 是否在 典型用途 芯片上? GP Registers 256 4bytes 是 中間運(yùn)算 Inst. Cache 32Kbytes 是 最近使用過(guò)的指令 Data Cache 32Kbytes 是 最近使用過(guò)的數(shù)據(jù) Mini Cache 2Kbytes 是 重用過(guò)一次的數(shù)據(jù) Write buffer 未指定 是 寫(xiě)緩沖區(qū) Local memory 2560bytes/微引擎 是 本地緩存 Scratchpad 16Kbytes 是 進(jìn)程間通信和同步 Inst. Store 4Kbytes/微引擎 是 存放微引擎指令 FlashROM 未指定 否 用于啟動(dòng) SRAM 64Mbytes/通道 否 存放表或包頭 DRAM 2Gbytes/通道 否 存儲(chǔ)包 四種主要存儲(chǔ)器的特性 類(lèi)型 訪問(wèn)單位 相對(duì)訪問(wèn) 特性 (字節(jié)) 延時(shí) Local 4 1 用 LM_ADDR寄存器訪問(wèn) Scratchpad 4 10 支持原子操作、進(jìn)程間通信、微引擎之間的 通信 SRAM 4 150 支持原子操作、隊(duì)列和環(huán)、比特操作 DRAM 8 300 連接到 XScale、微引擎和 PCI總線控制器 ? LM:提供最小的訪存時(shí)間 ? Scratchpad和 SRAM:支持原子操作,可用來(lái)同步并行處理器 ? SRAM:支持隊(duì)列和環(huán),適合于存放包頭或包鏈表 ? DRAM:有對(duì) I/O設(shè)備的直接傳輸路徑,容量大,帶寬高,適合存放包。 ? 異常處理:不匹配任何分類(lèi)規(guī)則的包,產(chǎn)生出錯(cuò)消息的包 ? 高層協(xié)議處理:負(fù)責(zé)處理發(fā)給本地系統(tǒng)的包(如 TCP) ? 應(yīng)用程序(需要的話) XScale的主要特性 ? 精簡(jiǎn)指令集計(jì)算( RISC): ? 包含較少的指令,指令被設(shè)計(jì)為能夠很快執(zhí)行,依靠寄存器獲得高速度,保證每個(gè)時(shí)鐘周期能夠完成一條指令。 ? 有一些存儲(chǔ)器是 XScale和微引擎共享的,如Scratchpad、 SRAM、 DRAM,可以用來(lái)在XScale和微引擎之間傳遞數(shù)據(jù)。 ? 性能監(jiān)視單元: ? 監(jiān)視指令 cache不命中率、 TLB不命中率、指令流水線中的停頓、軟件引起的分支指令數(shù)目。 ? 例 1:算術(shù)運(yùn)算 ? 傳統(tǒng) CPU上的指令: add R2, R3 ? 微引擎上的指令: alu [dest, A_op, alu_op, B_op] ? alu_op包括 12種運(yùn)算符( +、 +1 + +carry、 BA、 B、 ~B、AND、 ~AND、 AND~、 OR、 XOR) ? 例 2:內(nèi)存引用 ? 傳統(tǒng) CPU上的指令: load R3, X ? 微引擎上的指
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1