<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 計算機系統中數據驅動(dòng)的計算及其應用

計算機系統中數據驅動(dòng)的計算及其應用

作者: 時(shí)間:2008-08-05 來(lái)源:網(wǎng)絡(luò ) 收藏

  數據驅動(dòng)計算概述

  計算機體系結構可以分為控制流計算機和??刂屏饔嬎銠C又稱(chēng)為馮o諾依曼計算機,其程序的運算執行順序是預先設置好的,按照編程者的控制(程序指針)逐條執行?,F在實(shí)際應用的計算機都使用控制流機制,而運算的執行順序取決于數據間的互相依賴(lài)關(guān)系和操作數的有效性,指令間沒(méi)有固定的順序,不需預先設定,更符合人們的思維習慣。

  又可以分為兩類(lèi):數據驅動(dòng)和需求驅動(dòng)。數據驅動(dòng)計算機運算執行的順序由輸入數據的有效性決定,需求驅動(dòng)計算機運算執行的順序依賴(lài)于數據的需求。目前絕大多數數據流計算機都采用數據驅動(dòng)計算技術(shù)。

  數據驅動(dòng)是一種不同于傳統馮o諾依曼結構的先進(jìn)計算結構,可以簡(jiǎn)單方便地挖掘出運算的時(shí)間并行性和空間并行性,不需要程序指針和進(jìn)程調度機制。使用這種非傳統的計算結構將有助于提高系統的安全性和處理能力。

  如圖1所示,分別用馮o諾依曼計算模型和數據驅動(dòng)計算模型實(shí)現下式的運算:

  R=frac{AB-CD}{AC+BD}

  具體實(shí)現如圖1所示:

  

  在數據驅動(dòng)概念中,運算單元(如加減乘除等運算)稱(chēng)為節點(diǎn),連接節點(diǎn)之間的通道稱(chēng)為弧。從圖1可以看出,傳統的馮o諾依曼計算結構使用程序指針控制程序的順序執行;而數據驅動(dòng)計算結構的計算順序只由數據的依賴(lài)關(guān)系決定,只要數據到達就可以進(jìn)行計算,有效地挖掘了程序的時(shí)間并行性和空間并行性,非常適合于并行處理。

  數據流計算的不是預先確定的,而是在程序運行時(shí)動(dòng)態(tài)確定,采用運行時(shí)的數據依賴(lài)性作為的判定機制。所以,數據流計算機沒(méi)有程序指針,而是直接編譯和運行。編譯器產(chǎn)生一組操作數;每個(gè)操作的結果有一個(gè)或多個(gè)目的地;只要操作數有效,操作將會(huì )被安排盡快進(jìn)行。

  數據驅動(dòng)處理器

  數據驅動(dòng)處理器是基于數據驅動(dòng)計算模型設計的、內部包含多個(gè)處理單元、使用超長(cháng)自定時(shí)流水線(xiàn)和結構的并行處理器,具有超強的計算能力和極低的功耗。

  內部結構

  是Sharp公司開(kāi)發(fā)的一款數據驅動(dòng)處理器,內部結構如圖2所示,包含10個(gè)并行處理單元nPE#0~nPE#9,這些處理單元通過(guò)一個(gè)高速路由器連接起來(lái),每個(gè)處理單元內部具有40~60級異步流水線(xiàn),該流水線(xiàn)全部采用自定時(shí)時(shí)鐘機制,該芯片是一個(gè)真正的多處理器系統。

  

  DDMP是一款可以商用的處理器,采用0.25μm工藝,性能為8600MOPS,供電電壓為2.5V。在DDMP芯片中,10個(gè)基本數據驅動(dòng)處理單元以線(xiàn)性結構排列,組成多處理單元系統,基本處理單元通過(guò)網(wǎng)絡(luò )互連。

  DDMP中一個(gè)處理單元Nano PE的基本結構圖中,數據首先從處理器的輸入端口進(jìn)入處理器,接著(zhù)發(fā)往合并模塊(M)。到達匹配存儲器(MM)后被暫時(shí)儲存起來(lái),直到另外一個(gè)操作數到達。如果匹配(另一個(gè)操作數到達),這兩部分會(huì )結合成一個(gè)操作數據包(包括、目的地、顏色標志和一對操作數),被分發(fā)到適當的功能處理單元(FP)或者算數邏輯單元()進(jìn)行運算。指定的操作完成后,產(chǎn)生一個(gè)操作結果并送往緩沖存儲器(CPS)。最后,分發(fā)單元(D)按目的地將操作結果分發(fā)到相應的處理器或輸出,并將舊目的地址換成新目的地址。

  DDMP一個(gè)處理單元的內部各個(gè)模塊(例如MM、FP和CPS)都采用自定時(shí)時(shí)鐘機制,進(jìn)行獨立工作。在數據處理過(guò)程中,不需要任何控制,只需進(jìn)行數據匹配即可。需強調的是在上述實(shí)現中,主要功能(例如MM、FP和CPS)完成的任務(wù)是相互獨立的。所以,在這樣的處理器中,不需要使用集中控制機制來(lái)實(shí)現運算的協(xié)調,不需要定時(shí)器來(lái)保證運算的順序,唯一需要的是各功能模塊中適當的匹配數據速率。

  DDMP的特點(diǎn)

  首先,DDMP數據驅動(dòng)處理器內部具有10個(gè)并行的處理單元,具有強大的處理能力,適合圖像處理、網(wǎng)絡(luò )協(xié)議處理等復雜的應用。

  其次,DDMP采用實(shí)現,功耗極低?,F在大部分處理器都使用實(shí)現,同步系統擁有同一個(gè)時(shí)鐘驅動(dòng),在電路運行過(guò)程中,即使是暫時(shí)不工作的部分也會(huì )隨著(zhù)時(shí)鐘的翻轉一起消耗能量。而數據驅動(dòng)處理器使用實(shí)現,沒(méi)有統一的時(shí)鐘,其中的超長(cháng)流水線(xiàn)使用自定時(shí)機制,即保證了高性能,又降低了功耗。

  另外,DDMP為非馮o諾依曼結構的處理器,其實(shí)現原理與目前廣泛使用的馮·諾依曼結構完全不同,使用專(zhuān)用的指令集、具有獨特的專(zhuān)用開(kāi)發(fā)環(huán)境和語(yǔ)言。其開(kāi)發(fā)方法和過(guò)程與傳統的計算機有本質(zhì)的區別。因此,使用傳統技術(shù)的黑客很難對數據驅動(dòng)計算系統進(jìn)行有效攻擊,從而提高了系統的安全性。

  開(kāi)發(fā)環(huán)境

  軟件開(kāi)發(fā)環(huán)境

  對于數據驅動(dòng)計算來(lái)說(shuō),使用圖形化的編程語(yǔ)言更直觀(guān)、自然,能夠充分體現出運算中的并行性和數據依賴(lài)性。DDMP處理器的程序設計就使用專(zhuān)用的語(yǔ)言,用來(lái)編制各種算法的。軟件開(kāi)發(fā)界面如圖3所示,不僅能夠進(jìn)行的編制,還可以進(jìn)行程序的編譯、調試和仿真。

  

  硬件開(kāi)發(fā)環(huán)境

  為了將編制好的數據流圖真正在硬件上調試和實(shí)現,需要有相應的硬件開(kāi)發(fā)平臺。目前,DDMP的硬件開(kāi)發(fā)平臺有兩種,分別基于PCI總線(xiàn)和基于USB接口。DDMP通過(guò)PCI接口或USB接口與計算機通信;可以從計算機給DDMP和FPGA進(jìn)行初始化、下載程序和輸入數據,初始化外部存儲器,并得到硬件輸出的計算結果。

  在基于PCI總線(xiàn)的開(kāi)發(fā)平臺中,DDMP和兩個(gè)FPGA組成一個(gè)單向的通信環(huán)路,DDMP可以給FPGA1發(fā)送數據,FPGA1可以給FPGA2發(fā)送數據,FPGA2可以給DDMP發(fā)送數據。DDMP、FPGA1和FPGA2分別帶有外部SDRAM;為了提高外部存儲器的訪(fǎng)問(wèn)速度,FPGA配有外部SRAM。

  基于數據驅動(dòng)計算的防火墻設計

  數據驅動(dòng)處理器的并行處理能力強、功耗低、安全性高,適用于圖像和視頻等多媒體處理、網(wǎng)絡(luò )安全與協(xié)議處理等運算復雜度和并發(fā)性較高的應用。

  嵌入式防火墻用于保護主機安全,要求自身安全性高、體積小、功耗低。DDMP可滿(mǎn)足這些要求。

  嵌入式防火墻的基本結構如圖4所示。首先,進(jìn)入主機的數據包被儲存在緩沖區中;同時(shí),該數據包的IP頭和TCP/UDP頭被傳送到動(dòng)態(tài)包過(guò)濾功能模塊中處理。在動(dòng)態(tài)包過(guò)濾模塊中,使用TCP頭來(lái)確定該數據包是否屬于一個(gè)新的連接。如果屬于,則在數據表中建立一個(gè)新的連接表項;包分類(lèi)模塊(分類(lèi)器)使用過(guò)濾規則庫檢查該數據包。如果該數據包屬于已有連接,則數據包狀態(tài)檢測器(SPI)檢測該數據包是否為非法狀態(tài)轉移。UDP是一種無(wú)連接協(xié)議,可以使用IP地址和端口號來(lái)建立一個(gè)虛擬連接。因此,對于UDP數據包,SPI會(huì )使主機更安全。對第四層數據包頭部的狀態(tài)檢測之后,只有安全合法的數據包進(jìn)入應用層過(guò)濾器(AF)中,AF檢查數據包的內容,包括URL或者E-mail附件等等。最后,合法的數據包從緩沖區中提取并通過(guò)防火墻。

  

  嵌入式防火墻中各模塊的數據依賴(lài)關(guān)系如圖5所示,包括進(jìn)程創(chuàng )建、執行和刪除、分類(lèi)器、數據包狀態(tài)監測器SPI和應用層過(guò)濾器APF、高速數據包緩沖等等。把這些數據流變成數據流圖,裝入DDMP處理器,就是數據驅動(dòng)防火墻系統的設計要點(diǎn)。

  通過(guò)軟件仿真和硬件測試比較,基于DDMP數據驅動(dòng)處理器的嵌入式防火墻的SPI模塊超過(guò)千兆的包處理能力,可滿(mǎn)足千兆以太網(wǎng)的需求。

  總結

  數據驅動(dòng)計算以及數據驅動(dòng)處理器,具有并行性高、處理能力強、功耗低、安全性能好的優(yōu)點(diǎn),雖然目前還未廣泛使用,但相關(guān)的研究和開(kāi)發(fā)工作一直在進(jìn)行和發(fā)展。本文介紹的DDMP處理器就是基于數據驅動(dòng)原理、采用異步電路和自定時(shí)流水線(xiàn)技術(shù)的多核心處理器,已經(jīng)在圖像處理、網(wǎng)絡(luò )安全等方面取得了較好的研究成果。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>