0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于DDMP數(shù)據(jù)驅(qū)動(dòng)處理器的計(jì)算及其設(shè)計(jì)應(yīng)用

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-09-23 08:03 ? 次閱讀

1 、數(shù)據(jù)驅(qū)動(dòng)計(jì)算概述

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

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

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

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

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

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

基于DDMP數(shù)據(jù)驅(qū)動(dòng)處理器的計(jì)算及其設(shè)計(jì)應(yīng)用

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

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

2 、數(shù)據(jù)驅(qū)動(dòng)處理器DDMP

數(shù)據(jù)驅(qū)動(dòng)處理器是基于數(shù)據(jù)驅(qū)動(dòng)計(jì)算模型設(shè)計(jì)的、內(nèi)部包含多個(gè)處理單元、使用超長自定時(shí)流水線和異步電路結(jié)構(gòu)的并行處理器,具有超強(qiáng)的計(jì)算能力和極低的功耗。

2.1 DDMP內(nèi)部結(jié)構(gòu)

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

基于DDMP數(shù)據(jù)驅(qū)動(dòng)處理器的計(jì)算及其設(shè)計(jì)應(yīng)用

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

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

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

2.2 DDMP的特點(diǎn)

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

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

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

3、 開發(fā)環(huán)境

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

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

基于DDMP數(shù)據(jù)驅(qū)動(dòng)處理器的計(jì)算及其設(shè)計(jì)應(yīng)用

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

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

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

4 、基于數(shù)據(jù)驅(qū)動(dòng)計(jì)算的防火墻設(shè)計(jì)

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

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

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

基于DDMP數(shù)據(jù)驅(qū)動(dòng)處理器的計(jì)算及其設(shè)計(jì)應(yīng)用

基于DDMP數(shù)據(jù)驅(qū)動(dòng)處理器的計(jì)算及其設(shè)計(jì)應(yīng)用

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

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

5 、總結(jié)

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


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19384

    瀏覽量

    230488
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7519

    瀏覽量

    164083
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7525

    瀏覽量

    88317
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    詢問DSP和處理器的開發(fā)環(huán)境等問題

    只能完成采集工作而無法完成同步計(jì)算功能。所以我想問下ADI的DSP性能是否適合這樣的工作要求?處理器的主要工作是完成采集ADC轉(zhuǎn)換數(shù)據(jù)工作(盡量不丟失數(shù)據(jù)),然后同步
    發(fā)表于 11-02 09:18

    什么是微型計(jì)算機(jī)微處理器

    什么是微處理器兩個(gè)芯片分別用于儲(chǔ)存程序和數(shù)據(jù),另一個(gè)芯片集成運(yùn)算可控制及一些寄存。2.什么是微型計(jì)
    發(fā)表于 12-08 08:21

    ARM微處理器的應(yīng)用領(lǐng)域及其特點(diǎn)

    ):公司名/對(duì)一類微處理器的統(tǒng)稱/一種技術(shù)的名字1.2 ARM微處理器的應(yīng)用領(lǐng)域及其特點(diǎn)1.應(yīng)用領(lǐng)域①工業(yè)控制領(lǐng)域 :基于ARM核的微控制芯片②無線通信領(lǐng)域 :超過85%的無線通信設(shè)
    發(fā)表于 12-14 07:38

    AMD處理器驅(qū)動(dòng)下載

    AMD處理器驅(qū)動(dòng)下載1.3.2.6 WHQL多語言版
    發(fā)表于 04-09 15:35 ?4次下載

    多核處理器及其對(duì)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的影響

    摘要:多核技術(shù)成為當(dāng)今處理器技術(shù)發(fā)展的重要方向,已經(jīng)是計(jì)算機(jī)系統(tǒng)設(shè)計(jì)者必須直面的現(xiàn)實(shí)。從計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的角度探討了同構(gòu)與異構(gòu)、通用與多用等多核處理器類型,分析了典型多核
    發(fā)表于 02-27 16:03 ?38次下載

    DARPA眼里的未來節(jié)能計(jì)算:模擬處理器

    美國國防部高級(jí)研究計(jì)劃署(DARPA)資助了UPSIDE項(xiàng)目,旨在調(diào)查不采用數(shù)字處理器的新計(jì)算方式,研究遠(yuǎn)比今天的數(shù)字處理器更節(jié)能的模擬處理器。
    的頭像 發(fā)表于 08-27 16:09 ?3529次閱讀
    DARPA眼里的未來節(jié)能<b class='flag-5'>計(jì)算</b>:模擬<b class='flag-5'>處理器</b>

    新型處理器數(shù)據(jù)密集型計(jì)算

    針對(duì)急劇上升的大規(guī)模數(shù)據(jù),傳統(tǒng)的數(shù)據(jù)密集型計(jì)算已經(jīng)無法再在此種場(chǎng)景下適用.對(duì)此,大量的學(xué)者們對(duì)算法進(jìn)行不斷的改進(jìn),并提出利用新型的處理器來進(jìn)行復(fù)雜的
    發(fā)表于 01-10 14:08 ?0次下載

    服務(wù)處理器與家用處理器有什么區(qū)別

    處理器計(jì)算機(jī)作業(yè)的核心設(shè)備,它是整個(gè)機(jī)器的大管家,具有計(jì)算機(jī)數(shù)據(jù)運(yùn)算和命令執(zhí)行的功能,但是不同設(shè)備的處理器功能也不盡相同。企業(yè)商務(wù)使用的
    發(fā)表于 06-02 09:07 ?1649次閱讀

    npu處理器有什么用

    NPU是一種專門應(yīng)用于網(wǎng)絡(luò)應(yīng)用數(shù)據(jù)包的處理器,采用了“數(shù)據(jù)驅(qū)動(dòng)并行計(jì)算“的架構(gòu),可以用來處理視頻
    發(fā)表于 12-04 14:33 ?1.2w次閱讀

    AD9923A: CCD 信號(hào)處理器,內(nèi)置垂直驅(qū)動(dòng)器和Precision Timing發(fā)生 數(shù)據(jù)手冊(cè)

    AD9923A: CCD 信號(hào)處理器,內(nèi)置垂直驅(qū)動(dòng)器和Precision Timing發(fā)生 數(shù)據(jù)手冊(cè)
    發(fā)表于 03-19 06:53 ?1次下載
    AD9923A:  CCD 信號(hào)<b class='flag-5'>處理器</b>,內(nèi)置垂直<b class='flag-5'>驅(qū)動(dòng)器</b>和Precision Timing發(fā)生<b class='flag-5'>器</b> <b class='flag-5'>數(shù)據(jù)</b>手冊(cè)

    DPU(數(shù)據(jù)處理器)能做什么?

    了解DPU數(shù)據(jù)處理器的基礎(chǔ)知識(shí):它們是什么、它們做什么、誰在制造它們以及誰在采用它們。然后決定您的數(shù)據(jù)中心是否有朝一日會(huì)使用。 數(shù)據(jù)處理器是針對(duì)數(shù)據(jù)處理和以
    的頭像 發(fā)表于 04-19 15:38 ?2826次閱讀

    邊緣計(jì)算處理器有哪些

    邊緣計(jì)算處理器是指用于邊緣計(jì)算的特定處理器。邊緣計(jì)算是一種將計(jì)算任務(wù)從傳統(tǒng)的云
    的頭像 發(fā)表于 12-27 15:19 ?1232次閱讀

    處理器的定義和種類

    處理器,作為計(jì)算機(jī)系統(tǒng)的核心部件,承載著執(zhí)行指令、處理數(shù)據(jù)的重要任務(wù)。隨著信息技術(shù)的飛速發(fā)展,處理器的種類和性能也在不斷提升。本文將對(duì)
    的頭像 發(fā)表于 05-12 18:12 ?2779次閱讀

    處理器如何控制計(jì)算機(jī)系統(tǒng)

    處理器,作為計(jì)算機(jī)系統(tǒng)的核心部件,承擔(dān)著控制整個(gè)計(jì)算機(jī)系統(tǒng)運(yùn)行的重要任務(wù)。它不僅是計(jì)算機(jī)的運(yùn)算中心,還是控制中心,負(fù)責(zé)執(zhí)行程序指令、處理
    的頭像 發(fā)表于 08-22 14:21 ?543次閱讀

    計(jì)算數(shù)據(jù)中心AI處理器市場(chǎng):從高速增長邁向應(yīng)用驅(qū)動(dòng)的新紀(jì)元

    在科技日新月異的今天,云計(jì)算數(shù)據(jù)中心作為數(shù)字經(jīng)濟(jì)的基石,正以前所未有的速度推動(dòng)著全球信息化的浪潮。而在這股浪潮中,人工智能(AI)處理器的角色愈發(fā)關(guān)鍵,它們不僅為云計(jì)算
    的頭像 發(fā)表于 08-29 16:04 ?536次閱讀