TWI291655B - Formation method of parallel processing system - Google Patents
Formation method of parallel processing system Download PDFInfo
- Publication number
- TWI291655B TWI291655B TW093118572A TW93118572A TWI291655B TW I291655 B TWI291655 B TW I291655B TW 093118572 A TW093118572 A TW 093118572A TW 93118572 A TW93118572 A TW 93118572A TW I291655 B TWI291655 B TW I291655B
- Authority
- TW
- Taiwan
- Prior art keywords
- parallel
- parallel processing
- input
- elements
- data
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 144
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000015572 biosynthetic process Effects 0.000 title description 2
- 239000000203 mixture Substances 0.000 claims description 7
- 238000004088 simulation Methods 0.000 claims description 2
- 210000004556 brain Anatomy 0.000 claims 1
- 238000005094 computer simulation Methods 0.000 claims 1
- 238000003780 insertion Methods 0.000 claims 1
- 230000037431 insertion Effects 0.000 claims 1
- 230000033001 locomotion Effects 0.000 claims 1
- 239000011159 matrix material Substances 0.000 description 33
- 239000000872 buffer Substances 0.000 description 7
- 238000013461 design Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 235000016068 Berberis vulgaris Nutrition 0.000 description 1
- 241000335053 Beta vulgaris Species 0.000 description 1
- 244000241257 Cucumis melo Species 0.000 description 1
- 235000015510 Cucumis melo subsp melo Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Devices For Executing Special Programs (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Microcomputers (AREA)
- Advance Control (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Description
1291655 玖、發明說明: 【發明所屬之技術領域】 本發明係有關平行處理系統之設計、依據定義文件 (definition file)以形成平行處理系統之硬體構成資訊的方 法及裝置,並為有關依據定義文件以模擬(simulate)平行處 理糸統之方法者。 【先前技術】 在LSI或ASIC之設計上係使用有幾種語言。而稱為c «σ。專之抽象度南的南階語言(high level language )者係 過程之層級(procedure level )的語言,適合於用以表示每 1命令如何順序地執行全體處理。此層級之描述,通常並 無硬體依存性’乃係能以適當的電腦來處理的應用 (application )程式,被運用在LSI之特性、或者在lSI 要執行之處理全體予以作一般性的描述。Vcrii〇g — HDL或 VHDL 等之硬體描述語言(Hardware description language) (HDL )亦有被稱為RTL,為寄存器傳送層級 (register-transfer level ),係被運用在依特定的硬體而執行 特定命令之資料路徑(data path )及用以描述驅動路徑的 順序(sequence ) ° 异法(algorithm)係用以解問題而被明確地規定,作為 由被賦予順序之有限個規則所成的集合而被定義著,以 往’平行處理係在順序地推進由算法所描述之處理全體 (application)之後,將可獨立地執行的部份(處理)予以 1291655 平仃地執行,且以縮短處理時間為目的而被使用著。在利 用具備有預先適用平行處理之硬體資源的系統來執行雇用 之場合,制編譯n (eGmpile〇等,可平行處理的部份係 被平行化,嘗試將執行速度提升。 又,在設計以執行特定的應用$目的之硬體的場合 時’係把能獨立地執行的部份予以平行地處理般地設計回 路且以縮短處理時間為目標。日本國專利特開平10一 U63〇2遽公報中所記載的技術為,依平行處理及同步通传 等以可描述未決定執行時間的處理之祖來設計回路之^ 法所明的同步通h為,在平行地執行2個機能(fusion) ’、在紅側a成包含於其等之程序(pr_ss)準備以前 受信侧係等待,且在通信完了之後,程序係進行。因此, =能即便是被平行地描述也不被獨立地執行,而成為 執行時間為可變的處理一方面,未執行同步通信的處理 為平行處理而被獨立地執行。此等乃係把原始語言 (—η㈣e)所賦予的處理全體當中’把在原始資料 source)上平行執行般記載的處理,在硬體設計中以平行地 ^用同步通信來執行,以縮短執行周期(⑽uti_ycie) 數為目的的技術。 近年來,係提供有能利用軟體而將構成⑶的回路之 -部份予以重組態之硬體。再者,國際公開專利胸 0 0 71 5 5 號中 # 揭 + | ^ ^ 、羅辑w 的基本單位設定為具備有從 =錢(gatelevel)到⑽等之某程度規模之算術機能 的异*早兀,且將複數種類之算術單元配置成矩陣狀,並 1291655 縮短重組態所需要的時間之技術。然而將複數個算術單元 作矩陣狀配置的系統因為各個算術單元能平行地執行處 理,所以可採用具備有適用於龐大數量的平行處理之硬體 資源的系統。然而,現今並未提供有適用於設計此種平行 處理的系統之設計系統。 適用在C語言等之軟體設計的高階語言為,算法係以 把包含在算法内的規則作時間的順序處理為前提。因此, 係使程式计數器推進而命令係被按序(seqUential )地執行 之構成’其係難以導入所谓的非按序的平行概念。即便是 容許將命令作平行地描述,此係於時間的順序上不招致不 一致的範圍内,把可獨立地執行的·處理作空間性平行展開 而執行之程度,並不能積極地使用適於平行處理的硬體資 源。且若為兩階語言,因為係描述不依存於硬體的命令, 所以平行地描述的命令在硬體中之實際被開始或結束的時 序並不明確。因此,即使將可處理的範圍放寬,設計者也 實際不能定義平行處理在硬體上到底如何被執行且亦無從 掌握。 HDL因為係用以描述獨立地動作的回路構成,所以本 來係用以描述平行處理者。x,因為硬體變得明確,所以 可調查及調整執行處理之時序。因此可將實現由高階語古 所賦予的算法的HDL予以描述。然而,相反的,因為係以 特疋的硬體為前提而被描述’所以不具汎用性,且若硬體 不同就不能實現相同的算法。又,若不能辨識以祖為對 象的硬體則亦不能理解包含在HDL之算法。 1291655 在將㊉階語言編譯騎定㈣用之結以謂得之微 程式的層級中,係具有平行描述可完全獨立地執行的命令 之VUW技術’同時地提取(feteh)複數個命令而找出可 平行執行的命令以執行的超純量(superscalar)技術。此 卓在時間上作排列的處理當中,有關為執行其所準備之複 數個管道(pipeline)以將可作空間性平行執行予以平行處 理而改善執行速度之技術上,係與在時間的順序上不招致 不-致的範_作空間性展開這點上與高階語言沒有不 同。亦即,微程式亦為程式語言,同樣有需要在凡⑽及 超純量甲使程式計數器推進再將命令順序地執行之按序的 處理。再者,微程式係以特定的硬體為前提,肖H 汎用性不高。 银 士如此’在推進程式計數H而執行的程式語言方面,若 為高階語言即具有汎用'味’雖然容易執行軟體設計,但θ 可,平行處理中展開的部份,即使是使程式計數器推進2 僅&局⑽可獨立執行的處理’難以有效地制適於 平行處理的算術單元。而沒有硬體依存性的高階語言中, 更因為不了解平行處理之時序,所以使矩陣狀配置之 :算術單元平行地動作而將應用有效地執行的料係不可 ,。-方面,HDL雖然可以作平行處理之描述,但是即便 是描述算法也僅是在以特定的硬體為前提才能描述算法, 所以特定的硬體知識係為必要。因此,使軟體技術:理 ::矩陣狀配置的多種類算術單元之機能及輸入輸出的時序 等,且以HDL來設計應用係稍有勉強之處。 1291655 示複數個不同硬體構成之資訊的硬體構成資訊。 ,在依據定義文件以形成平行處理系統之際可實施幾個 最佳化。在複數個平行描述為包含有(用以規定包含有與 由第3平行描述所規定的第3平行處理之至少一部份的共 k處理之第2平仃處理)之第2平行描述的場合,在第1 步驟,對共通處理’形成包含有複數種類的要素之至少任 I的共通之回路構成’第2步驟中,將用以執行第2平行 处理及共通處理之差分的回路構成作為用以執行第工平行 2處二之Γ構成’可加人延遲要素。其係、因為用以執行第 2千^亍處理及共通虛王审夕i 、、處理之差分的回路構成與第丨平行處理 二樣:具備有複數個資料輸入之故。依此,可抑制 耗。 乂接、突要素的配線等之硬體資源的消 、構成平彳于處理系統之複數種類的算術單元也可且 =依外部輸入而變換處理的手段。而與其對應地,作成 =數個平^述中包含有用以描述依外部輸 變更之平行處理的係較佳。成為即使是未變更網路= 了又“變更處理内容之平行處理系統。也可盘網 =或回路配線—起變更算術單元的處理内容,更可彈性地 设汁可重組態的平行處理系統。 複數: = 之定義文件,可模擬具備有平行地動作之 複數種類的要素之系統。依據定義文件 動作之複數種類的要素之系統予以模擬之方法::千仃地 係具有將包含在定義文件之複數個半::方法及模擬器, 義文件之稷數個千仃處理予以同步地執 15 1291655 之可重組態處理器(RP,Re configurable Processor)。此 RP 2 Ο 係具備有:依據由程式等所賦予之命令設定以執行包含錯 誤處理(error processing)的沉用處理之沉用的構成之基本 處理器2 1 ;依矩陣狀配置之算術或邏輯元件以可變地形成 有適合特定資料處理之1個或複數個資料路徑(資料流或 偽(pseudo )資料流)之 AAP ( Adaptive Application Processor)單元(以下稱為AAP )5 0;用以控制來自此AAP50 之中斷處理(interrupt processing )的中斷控制單元22 ;對 AAP50供給作動用之時鐘信號的時鐘產生部28 ;用以使在 此RP20可提供之算術回路的彈性(flexibility)更加提升 之FPGA單元27 ;以及控制對外部之資料的輸入輸出之匯 流排控制單元29。基本處理器21與AAP50係由在此等間 可交換資料的資料匯流排24a,以及用以從基本處理器2 1 控制AAP50之構成及動作之命令匯流排24b所接續著。 且,由AAP50經由信號線25對中斷控制單元22供給中斷 信號,形成AAP50中之處理結束,或在處理中發生錯誤時 可將AAP50之狀態回授至基本處理器·21。 ΑΑΡ50和FPGA27之間也由資料匯流排26所接續著, 由ΑΑΡ50對FPGA27供給資料以執行處理,形成使其結果 返回ΑΑΡ50。然後,ΑΑΡ50係依載入匯流排23a及儲存匯 流排23b而與匯流排控制單元29接續著,形成在RP20之 外部的資料匯流排之間可交換資料。基本處理器21也由匯 流排2 1 a而與匯流排控制單元29接續著,且可在外部之資 料路徑之間交換資料。 17 !291655 第3圖係表示AAP5〇之概要。AAp5〇係具備有:用以 輯單複,個算術及/或邏輯算術之邏輯要素(邏輯塊或邏 乂後稱為元件))為以矩陣狀作配置之矩陣部5 1 ; ’、矩陣部51供給資料之輸入緩衝器52a;將矩陣部51 所輸出之杳伞立工 . 哭 、4予以儲存的輸出緩衝器52b。此等輸入緩衝 ^ *輸出緩衝器52b係各自自4個小容量之輸入記憶 -所構成,經由存取調停單元54而被接續在輸入輸出匯流 排 23a 及 23b。 、,此矩陣部5 1係成為使資料路徑或資料流為可重組態 之平仃處理系統的中心之積體電路區劃,平行動作之複數 種類的算術單元之元件55係構成為在縱向構成4條線般地 作陣歹]狀或矩陣狀配置。然後,包含在矩陣5 1之複數種類 勺元件之=貝汛係被儲存在硬體館3。此矩陣部5 1係具備有 在此等之元件55之間配置的橫向延伸的行配線群57,以 及縱向延伸的列配線群58。列配線群58為,分設在排列 於列方向之算術單元55的左右之配線群58x及58y係形成 1對。仃配線群57及列配線群58之交點係配置有交換單 70 59,形成為可將行配線群57之任意的通道切換而接續 在列配線群58之任意的通道。各個交換單元59係具備有 用以σ己隐5又定之組態(configuration ) RAM,依由處理器 部21所供給的資料藉由重寫組態RAM之内容,可任意動 態地控制行配線群57和列配線群58之接續。因此,於此 矩陣部51中,複數個元件55之全部或一部份為依配線群 57及58而接續形成之資料流的構成係可任意地作動態變 1291655 件,係具備有資料路徑部(BLA) 56a,其具備有適用在產 生用以塊載入(block loading)的位址之内部資料路徑。而構 成矩陣5 1之所有的元件55係形成為内部資料路徑之構成 或初始值等可作某程度之變更。其設定為,經由控制匯流 排24b利用來自基本處理器21之控制信號以指示各個元件 55之組態RAM。
配置在第3行之元件55b係具備資料路徑部(LDa) 56b,用以產生由各個輸入RAM將所期望的資料載入矩陣 部5 1之輸入讀出位址。配列在第4行及第5行之元件55〇 係具備有適用在算術及邏輯算術之資料路徑部(sma ) 56c。此資料路徑部56c係具備有,例如移位回路、掩蔽 (mask)回路、以及設定在邏輯算術單元ALu及alu處 理之算術的組態RAM。因此,依處理器21所寫入的命令处 可將輸入至矩陣部5 1之資料作加法或減法、作比較、或者 取邏輯和或邏輯積,其結果係作為元件55的輪出信號而被 輸出。 '
^隹丹卜打之兀件55d係具備有資料路徑部(ι 56d,其適於用以延遲資料被傳送的時序之處理。而配 其下行的元件55e係具備有資料路徑部(Mul) 56e, 於包含有乘法器等之乘法處理。在 6 #刀不同的元件55 面,也準備著具備有與矩陣部51 <外"卩所準備的FPC 之介面用的資料路徑部56f之元件, 丨卞在將資料暫時供 FPGA27而作處理之後,再度返 處理。 矩陣心而可繼續 20 1291655 可重組態之積體電路區劃的矩陣部51更配置右,g 3,具備 有適合產生儲存用之位址的資料路徑部56g及56h之元件 55g及55h。此等係經由輸出緩衝器52b以執行對外部穿置 輸出資料之控制。然後,在最下段係配列有具備適合輪出 資料儲存用之資料路徑部(ST) 56s的元件55。因此,使 用矩陣部5 1,藉由將元件55之接續作動態地變更而可彈 性地構成各種資料流,且可執行各種處理。 第4圖(a)及第4圖(b)係表示DIDL之簡單例子。 第4圖(a)所示之DIDL1〇a係具有2行之平行描述山 及lib。平行描述ua係規定在變數&代入變數b之處理 12a。又,平行描述Ub係規定在變數c代入變數a之處理 。因此,處理12b係將其他之處理12&的輸出資料$為 資料輸入之處理。此等之處s⑵及⑶係依平行動作之 要素而同步獨立地執行之平行處理,mDLiGa係表示將其 等之平行處理12a & 12b作同步獨立地執行之硬體構成。 在依此DIDLl0a所定義的硬體中,在某周期若變數(Η, 〇為U,2’ 3),則在次一周期u,變數(a,b,幻係 成為(2,2,1 )。 一万面,在判讀此DIDL10a的記載為程式i9a時,因 為變數C係成為2 ’所以可獲得的結果係不同。然而,在接 雜:t之後的★一周期t2中’依DIDL10a所定義的硬 豆文數(a ’ b ’ 〇係成為(2,2,2),可獲得與判讀 職心之記载為程式19a之場合相同的結果。 第4圖⑴所示之DIDU〇a,為平行描述⑴及⑴ 21 I291655 係包合有,系統、在本例中為用以表示輸入至矩陣部$ 1之 變數的描述lie、用以表示内部變數的描述Ud、以及表示 力去之描述lie。當此DIDL1〇b被讀入編譯器2作處理之 '/係如第7圖(|3)所不’形成具有具備著可算術的資料 路':6c的算術元件55。之回路構成⑽。此回路構成⑽ #術7L件55c具備有被輸入變數b和c之2個資料輸 入,及被輸入變數a之資料輸出。 第8圖(a)係表示另一不同的DmL之例子。此 除了與變數相關的描述lle及Ud以外,係更包含用以表 DIDLIOc —被靖入铯嘴抑。 g 此 y 貝入編澤益2,則因為平行處理12f及12s 係包含共通的處理,所以在 从1 艾騍32係對共通的部份形成 、通之回路構成17c。亦即,# 一 I DIDLIOc係如第8圖( 不,平行處理12g係被最佳化成平行處理%、 執行差分的處理之平行處理12g/俜 輸入有其他平行處理12fw “糸成為具備有包含被 十仃處理12f之輸出資料「a」的 被輸入有未經其他平行虛 一 ^ ,和 的資料「4」之資料於 複數個資料輸入之第j 貝抖輪入的 „ 1?. 仃處理。因此,用以執行平行處 g之回路構成所包含的 ^ 變數a之輸入及被供 :“糸具備被供給有 輸入矩陣部51的變數^ n變數&相對於被 叮艾数b及c,係僅會 處理周期份之變數。又,辦叙 夂遲斤術兀件55c之 欠数又,變數d係與其他變數^ 被輸入至矩陣51之變數。為 c同打 马此,在步驟33 Φ,去 被輸入至用以執行平行處 為了調整 2g的几件55c之變數a和變 25 1291655 數d之等待時間’係被插入延遲元件5 5 d,使得被輸入到 矩陣部51之變數d僅延遲了用以執行平行處理i2f之算術 元件55c的周期數份。 以算術元件55c執行加法之場合所消耗的周期數係儲 存在硬體館3。因此,步驟33中,依據儲存在硬體館3之 資訊,消耗相當於在加法的元件所消耗的周期數之周期的 延遲元件55d係被追加至DDDL4。其結果,dddl4係包含 並形成第8圖(c)所示之回路構成18。的硬體構成資訊, 在步驟34中由編譯器2被輸出。此外,在以下當中,為將 說明簡單化,只要未特別記載,纟^件中係以i周期所處 理的來作說明。 在第9圖(a)係再例示不同的DIDL之例子。此DIDL1〇d 除了與變數相關的描述llc及Ud以外,更包含有用以表 示4個平行處理12h〜12k之平行描述m〜m。當此
DmL1〇c被讀人編譯器2時,首先,在形成回路構成之步 驟_32巾,係形成使用有用以執行平行處理12h〜12k的算 術兀件55C之回路構成。被輸入至平行處理12k之1個變 數c係把被輸入至矩陣51之變數(以後稱為系統輸入變數) a作為輸人之平行處理m的輸出。又,被輸人至平行處理 瓜之其他的變數6係把系統輸入變數a及b作為輸入之平 行處理12 i的輪山as力^从士人 出再作為輸入之平行處理12j•的輸出。 此’在調整等待時間 之乂驟33中,為調整被輸入至平行處 理12k之變數c與 丁處 數之專待訏間,係追加使變數c對 交數e延遲且對執行 丁取後的加法之元件55c的資料輸入作 26 1291655 的平行描述ilm、和使計數詩進之平行處理i2n的平行 描述山、以在處s 12n之言十數值到達既定的數 (num〇fData)時用以輸出處理12m的最大值&之平行處理 12〇的平行描述llGe於處理12。,為吸收上述之處理心 及…所要的周期數之差,係插入延遲元件以調整2個被 供給ί料輸入之變數的等待時間。 第11圖係以模式地表示此DIDL i 〇e被編譯的硬體構成 心。在形成回路構成之步驟32中,平行處理12m係使用 算術元件55c而構成回路,平行處理12n係使用位址形成 用之元件55b而構成回路,平行處理12。係使用2個算術 元件55c而構成回路,且表示其等之回路構成的〇〇〇乙4係 被形成在執行處理12m的算術元件55c中所被消耗的周 期數係比執行處理12n之計數處理的元件5讣中所消耗的 周期數還多。因此,延遲元件55d係被追加在要輸入平行 處理12〇的計數值之侧。依此,被供給至平行處理12〇之 資料輸入的資料,亦即,處理12m之輸出和處理12n之輸 出的等待時間係會被調整。此外,處理12〇之輸出側所配 置之2個延遲元件55d為,矩陣部51分成3個區段 (segment)’最初的區段因為構成處理12m〜12〇之回路, 所以為用以通過其他的區段而對輸出用的元件56s轉送資 料者。 第12圖係表示於配置在第3圖所示之矩陣部51的元 件55上分配第11圖所示之回路構成的狀態。在本例中, 於將元件55作矩陣狀配置之可重組態之處理器2〇的矩陣 29 1291655 第2圖係表示可重組態的平行處理系統之概要。 第3圖係表示獨立地平行動作之複數個元件為作矩陣 狀配置之平行處理系統。 第4圖(a)係表示DIDL之例子,第4圖(b)係表 示DIDL之不同例。 第5圖係表示編譯之概略處理的流程。 第6圖係表示編譯之概略構成的方塊圖。 第7圖(a)係表示DIDL之例,第7圖(b)係表示 與其對應之回路構成。 第8圖(a)係表示DIDL之不同例,第8圖(b)係 表示最佳化的例子,第8圖(c)係表示與其對應之回路構 成。 第9圖(a)係表示DIDL之另一不同例,第9圖 係表示與其對應之回路構成。 第1〇圖係表示DIDL之另一不同例。 第11圖係表示與第1〇圖所示之DIDL作對應之回路 構成。 第12圖係表示將第u圖所示之回路構成以矩陣單元 作陳設的狀態。 第13圖係表示以DIDL層級作模擬的概略構成。 第14圖係表示DIDL層級之模擬器的處理之概要的流 程。 主要元件符號 2··編譯器;3.·硬體館;4••硬體構成資訊;5••程式製品; 33 1291655 9.J凡用電腦;lla,lib··平行描述;12a,m,i2h,12j 處理,18b··回路構成;I9a,19b,19d程式;2〇可重組 恶處理器,21··基本處理器;22·.中斷控制單元;23a.·輸入 匯流排,23b··輸出匯流排;24a,26··資料匯流排;24b·.控 制匯流排,27·.FPGA單元;28··時鐘產生部;29··匯流排控 制單元,50..AAP單元;51··矩陣部;52a••輸入緩衝器;52b·· 輸出緩衝器,53··選擇器;55,55d,55f,55g,5 5h,55e.. 元件;56·.内部資料路徑部;56a.·資料路徑部(BLA); 56b·· 貝料路徑部(LDA) ; 56c··資料路徑部(smA) ; 56d··資料 路梭部(DEL) ; 56e··資料路徑部(muL) ; 56g,56h··資料 路相:部;56ι··資料路徑部(ld) ; 56s··資料路徑部(ST); 57..行配線群;58..列配線群;58乂,58广配線群;59..交換 單凡,a,b,c_.變數;35,36, 37, 38··機能;55c··算術元 件,55d·.延遲元件;lic〜llg,llh〜llk,⑴描述;Hm 〜ll0··平行描述;12f,12g,i2g^,l2h〜12k,12m,12η.. 平行處理;17c’ 回路構成;18e••硬體構成;67··模擬 器;68··程式 34
Claims (1)
- 拾、申請專利範圍: 2005年12月修正 拾、申請專利範圍: 2005年12月修正 成具 的形 -種平行處理系統的形成方法,係按定義文件以形 備有平行動作之複數種類的要素之平行處理系統 成方法, 該定義文件係具有把被獨立地執行之複數個平行 處理予以各自規定之複數個平行描述,該複數個平行 描述係包含用以表示第!平行處理的第】平行描述, 該第1平行處理具備有複數個資料輸入,該複數個資 料輸入至夕包含被輸入其他平行處理之輸出資料的資 料輸入, 第1步驟,依據記錄有該複數種類之要素的資訊 之硬體館,以形成包含該複數種類之要素的至少任一 的之硬體構成資訊,該回路構成係用以執行該定義文 件之平行描述所規定的平行處理, 第2步驟,係以對用以執行該第丨平行處理之回 路構成之複數個資料輸入,可輸入在被輸入到該平行 處理系統之後其等待時間會相同的資料的方式,對該 硬體構成資訊加入延遲要素。 2·如申請專利範圍第【項之平行處理系統的形成方法,其 中該平行處理系統係依改變該複數種類之要素的接續 而可將不同的硬體構成重組態,該硬體構成資訊係具備 有表示複數個不同的硬體構成之資訊。 3 ·如申請專利範圍第丨項之平行處理系統的形成方法,其 中該複數種類之要素係包含有,為單體且可處理規定於 35 129162〇〇5年12月修正 該定義文件之1個平行描述的平行處理之規模的複數 種類的算術單元。 4如申叫專利摩&圍第1項之平行處理系統的形成方法,其 中該複數種類之要素係包含有能以位元組或字單位來 執行不同算術之複數種類的算術單元。 5如申明專利範圍第i項之平行處理系統的形成方法,其 中該硬體館館存著包含有在各個豸複數種類之要素所 消耗的周期數之資訊, 在該第2步驟中,加入與在該複數種類之要素的 至夕任一中消耗的周期數相當之該延遲要素。 6如申明專利如圍帛1項之平行處理系、统的形成方法,其 中該複數個平行描述係包含用以規定第2平行處理之 第2平行描述,該第2平行處理包含有與由第3平行描 述所規疋之第3平行處理的至少一部份相同的共通處 理, 該第1步驟中,對該共通處理,形成包含有該複 數種類之要素至少任一的共通之回路構成, 該第2步驟中,把用以執行該第2平行處理及該 共通處理的差分之回路構成,作為用以執行該第丨平行 處理之回路構成,加入該延遲要素。 7 種平行處理系統的形成裝置,係按定義文件以形成具 備有平行動作之複數種類的要素之平行處理系統的裝 置’其特徵為包含: 3620〇5年12月修正 該定義文件係具有將獨立被執行之複數個平行處 理予以各自規定的複數個平行描述,該複數個平行描述 係包含第1平行描述,該第1平行描述係用以表示第i 平行處理’而第1平行處理係具備有複數個資料輸入, 該複數個資料輸入至少包含被輸入其他的平行處理之 輸出資料, 第1手段’依據記錄有該複數種類之要素的資訊 之硬體館,以形成包含有具備該複數種類之要素的至少 任一之回路構成的硬體構成資訊,該回路構成係用以執 行由該定義文件之平行描述所規定的平行處理, 第2手段’係以用以執行該第1平行處理之回路 構成之複數個資料輸入,可輸入在被輸入到該平行處理 系統之後其等待時間會相同的資料的方式,對該硬體構 成資訊加入延遲要素。 8 ·如申請專利範圍第7項之平行處理系統的形成裝置,其 中該平行處理系統係依改變該複數種類的要素之接續 而可將不同的硬體構成重組態,該硬體構成資訊係具備 有用以表示複數個不同的硬體構成之資訊。 9 · 一種儲存有一程式的可電腦讀取之記錄媒體,該程式係 利用電腦以執行設計具備有按定義文件而平行地動作 之複數種類的要素之系統的程序之程式,其特徵為包 含: 該定義文件係具有把獨立地被執行的複數個平行 處理予以各自規定的複數個平行描述,該複數個平行插 3712916 ^ * 2005年12月修正 :係包含有第1平行描述’該第1平行描述係用以表; P平行處理,而該第1平行處理係、具備有複數個資料 輪入,該減個資料輸人至少包含被“其他平行處理 的輸出資料之複數個資料輸入, 用以設計該系統之程序係依據記錄有該複數種類 之要素的資訊之硬體館,以形成包含有具備該複數種類 的要素之至少任一的回路構成的硬體構成資訊第i牛 驟,該回路構成係用以執行被該定義文件的平行描述二 規定之平行處理, 第2步驟’係以用以執行該第1平行處理之回路 構成之複數個資料輸人,可輸人在被輸人到該平行處理 系統之後其等待時間會相同的資料的方式,對該硬體構 成資訊加入延遲要素。 10· -種可:腦讀取之記錄媒體,記錄有定義文件,包含 肖定義文件具有複數個平行描述,用以各自規定 依具備有平行地動作之複數個要素的系統而同步地獨 立執行之複數個平行處理,該複數個平行描述係用以表 不第1平订處理之第1平行描述’該第1平行處理具備 有複數個資料輸入,該複數個資料輸入至少包含會被輸 广其他平仃處理的輸出資料,第】平行描述係表示對其 等複數個資科輸人,輸人有被輸人到該系統之後其等待 時間會相同的資料。 申、月專利圍第! 0項之可電腦讀取之記錄媒體,其 中該複數個平行描述係把與該複數個要素所動作的時 38 11 * 1291 與————一 _】>泰/ . ?丨 , ξ ^ ' ! 20〇5年12月修正 ^λ·,.-.·..-1:—. - :- -. . -. - .. . . .,.,< 鐘同步地被執行之該複數個平行處理予以各自規定。 12 · —種模擬方法,係按定義文件以模擬具備有平行動作 之複數種類的要素之系統的方法, 該定義文件係具有把被獨立地執行之複數個平行 處理予以各自規定之複數個平行描述,該複數個平行 描述係包含用以表示第丨平行處理的第丨平行描述, 該第1平行處理具備有至少包含被輸入其他平行處理 之輸出資料的資料輸入之複數個資料輸入, 具有把該定義文件所規定之該複數個平行處理作 同步地執行之步驟,在此步驟,係對該第i平行處理 之複數個資料輸入,輸入在被輸入到該系統之後其等 待時間會相同的資料。 u •一種儲存有一程式的可電腦讀取之記錄媒體,該程式, 係利用電腦,按定義文件以模擬具備有平行動作之複 數種類的要素之系統的程式, I疋義文件係具有把被獨立地執行之複數個平行 處理予以各自規定之複數個平行描述,該複數個平行 描述係包含用以表示第1平行處理的第1平行插述, 該第1平行處理具備有複數個資料輸入,該複數個資 科輸入至少包含被輸入其他平行處理之輸出資枓的資 料輸入,' 在把該定義文件所規定之該複數個平行處理作同 步地執行的步驟,於電腦中作模擬之際,係對該第i 392005年12月修正 平行處理之複數個資料輸入,輸入在被輸入到該系統 之後其等待時間會相同的資料作輸入。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003185481A JP2005018626A (ja) | 2003-06-27 | 2003-06-27 | 並列処理システムの生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200508974A TW200508974A (en) | 2005-03-01 |
TWI291655B true TWI291655B (en) | 2007-12-21 |
Family
ID=33549667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW093118572A TWI291655B (en) | 2003-06-27 | 2004-06-25 | Formation method of parallel processing system |
Country Status (5)
Country | Link |
---|---|
US (2) | US20060253836A1 (zh) |
EP (1) | EP1640885A4 (zh) |
JP (1) | JP2005018626A (zh) |
TW (1) | TWI291655B (zh) |
WO (1) | WO2005001723A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI383617B (zh) * | 2008-10-31 | 2013-01-21 | Ind Tech Res Inst | 具排列架構之無線通訊方法及系統 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8286128B2 (en) | 2007-04-24 | 2012-10-09 | Intel Corporation | Methods for type analysis in systems for code generation |
US8286130B2 (en) * | 2007-04-24 | 2012-10-09 | Intel Corporation | Methods and systems for using type models to generate an implementation of a type |
US9785700B2 (en) | 2008-02-11 | 2017-10-10 | Nuix Pty Ltd | Systems and methods for load-balancing by secondary processors in parallelized indexing |
US8359365B2 (en) | 2008-02-11 | 2013-01-22 | Nuix Pty Ltd | Systems and methods for load-balancing by secondary processors in parallel document indexing |
US9928260B2 (en) | 2008-02-11 | 2018-03-27 | Nuix Pty Ltd | Systems and methods for scalable delocalized information governance |
JP2011180841A (ja) * | 2010-03-01 | 2011-09-15 | Ricoh Co Ltd | 半導体設計支援装置 |
JP6021342B2 (ja) * | 2012-02-09 | 2016-11-09 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 並列化方法、システム、及びプログラム |
US8893080B2 (en) * | 2012-08-15 | 2014-11-18 | Telefonaktiebolaget L M Ericsson (Publ) | Parallelization of dataflow actors with local state |
JP5714622B2 (ja) * | 2013-02-21 | 2015-05-07 | トヨタ自動車株式会社 | 制御装置 |
EP2960727B1 (en) | 2013-02-21 | 2018-05-30 | Toyota Jidosha Kabushiki Kaisha | Control device design method and control device |
WO2014132608A1 (ja) * | 2013-02-26 | 2014-09-04 | 日本電気株式会社 | 並列処理装置、並列処理方法、および並列処理プログラム記憶媒体 |
JP6249360B2 (ja) * | 2013-05-17 | 2017-12-20 | 国立大学法人 筑波大学 | ハードウェア設計装置,及びハードウェア設計用プログラム |
US10826930B2 (en) | 2014-07-22 | 2020-11-03 | Nuix Pty Ltd | Systems and methods for parallelized custom data-processing and search |
US9672182B2 (en) * | 2014-08-21 | 2017-06-06 | Infineon Technologies Ag | High-speed serial ring |
US9710876B2 (en) | 2015-01-16 | 2017-07-18 | Intel Corporation | Graph-based application programming interface architectures with equivalency classes for enhanced image processing parallelism |
US9818166B2 (en) | 2015-01-16 | 2017-11-14 | Intel Corporation | Graph-based application programming interface architectures with producer/consumer nodes for enhanced image processing parallelism |
US11200249B2 (en) | 2015-04-16 | 2021-12-14 | Nuix Limited | Systems and methods for data indexing with user-side scripting |
WO2021130876A1 (ja) * | 2019-12-24 | 2021-07-01 | 太陽誘電株式会社 | 生成装置、生成方法およびプログラム |
US11631135B2 (en) * | 2021-02-16 | 2023-04-18 | Exegy Incorporated | Methods and systems for low latency automated trading using a canceling strategy |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998019259A1 (en) * | 1996-10-25 | 1998-05-07 | Ipf, Inc. | System and method for managing and serving consumer product related information over the internet |
US5950173A (en) * | 1996-10-25 | 1999-09-07 | Ipf, Inc. | System and method for delivering consumer product related information to consumers within retail environments using internet-based information servers and sales agents |
US5933642A (en) * | 1995-04-17 | 1999-08-03 | Ricoh Corporation | Compiling system and method for reconfigurable computing |
US5708709A (en) * | 1995-12-08 | 1998-01-13 | Sun Microsystems, Inc. | System and method for managing try-and-buy usage of application programs |
JPH1115761A (ja) * | 1997-06-02 | 1999-01-22 | Internatl Business Mach Corp <Ibm> | 赤外線通信機能を持つ情報処理装置及びその制御方法 |
US6091956A (en) * | 1997-06-12 | 2000-07-18 | Hollenberg; Dennis D. | Situation information system |
US6009525A (en) * | 1997-08-29 | 1999-12-28 | Preview Systems, Inc. | Multi-tier electronic software distribution |
US6226776B1 (en) * | 1997-09-16 | 2001-05-01 | Synetry Corporation | System for converting hardware designs in high-level programming language to hardware implementations |
US6243692B1 (en) * | 1998-05-22 | 2001-06-05 | Preview Software | Secure electronic software packaging using setup-external unlocking module |
US6363366B1 (en) * | 1998-08-31 | 2002-03-26 | David L. Henty | Produce identification and pricing system for checkouts |
JP2000293494A (ja) * | 1999-04-09 | 2000-10-20 | Fuji Xerox Co Ltd | 並列計算装置および並列計算方法 |
WO2001050225A2 (en) * | 1999-12-30 | 2001-07-12 | Nextaudio, Inc. | System and method for multimedia content composition and distribution |
US6625797B1 (en) * | 2000-02-10 | 2003-09-23 | Xilinx, Inc. | Means and method for compiling high level software languages into algorithmically equivalent hardware representations |
DE10128494A1 (de) * | 2000-04-07 | 2002-01-17 | Ibm | Persönlicher digitaler Einkaufswagen |
US20010049636A1 (en) * | 2000-04-17 | 2001-12-06 | Amir Hudda | System and method for wireless purchases of goods and services |
AU2001281164A1 (en) * | 2000-08-07 | 2002-02-18 | Altera Corporation | Inter-device communication interface |
US20020026474A1 (en) * | 2000-08-28 | 2002-02-28 | Wang Lawrence C. | Thin client for wireless device using java interface |
US20020123971A1 (en) * | 2000-12-11 | 2002-09-05 | Maritzen L. Michael | Method and system of conducting network-based transactions |
US7000213B2 (en) * | 2001-01-26 | 2006-02-14 | Northwestern University | Method and apparatus for automatically generating hardware from algorithms described in MATLAB |
US20020103833A1 (en) * | 2001-01-26 | 2002-08-01 | Travis Parry | Electronic book kiosk |
US20030037321A1 (en) * | 2001-01-29 | 2003-02-20 | Matt Bowen | System, method and article of manufacture for extensions in a programming lanauage capable of programming hardware architectures |
US7584269B2 (en) * | 2001-03-09 | 2009-09-01 | International Business Machines Corporation | Method for providing kiosk service offerings in a personal area network |
TWI234737B (en) * | 2001-05-24 | 2005-06-21 | Ip Flex Inc | Integrated circuit device |
JP4846924B2 (ja) * | 2001-05-31 | 2011-12-28 | キヤノン株式会社 | パターン認識装置 |
TW577020B (en) * | 2001-07-12 | 2004-02-21 | Ip Flex Inc | Integrated circuit device |
US6988192B2 (en) * | 2002-02-11 | 2006-01-17 | Hewlett-Packard Development Company, L.P. | Method and apparatus for compiling source code to configure hardware |
US20030110094A1 (en) * | 2002-07-25 | 2003-06-12 | Sony Corporation | System and method for wireless viral software distribution |
US6983456B2 (en) * | 2002-10-31 | 2006-01-03 | Src Computers, Inc. | Process for converting programs in high-level programming languages to a unified executable for hybrid computing platforms |
US8224636B2 (en) * | 2002-12-17 | 2012-07-17 | Cadence Design Systems, Inc. | Method and system for implementing parallel execution in a computing system and in a circuit simulator |
-
2003
- 2003-06-27 JP JP2003185481A patent/JP2005018626A/ja active Pending
-
2004
- 2004-06-25 US US10/562,767 patent/US20060253836A1/en not_active Abandoned
- 2004-06-25 WO PCT/JP2004/009000 patent/WO2005001723A1/ja active Application Filing
- 2004-06-25 EP EP04746469A patent/EP1640885A4/en not_active Withdrawn
- 2004-06-25 TW TW093118572A patent/TWI291655B/zh not_active IP Right Cessation
-
2011
- 2011-03-22 US US13/053,835 patent/US8527972B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI383617B (zh) * | 2008-10-31 | 2013-01-21 | Ind Tech Res Inst | 具排列架構之無線通訊方法及系統 |
Also Published As
Publication number | Publication date |
---|---|
TW200508974A (en) | 2005-03-01 |
JP2005018626A (ja) | 2005-01-20 |
EP1640885A1 (en) | 2006-03-29 |
EP1640885A4 (en) | 2006-09-13 |
WO2005001723A1 (ja) | 2005-01-06 |
US20110197047A1 (en) | 2011-08-11 |
US20060253836A1 (en) | 2006-11-09 |
US8527972B2 (en) | 2013-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI291655B (en) | Formation method of parallel processing system | |
JP5842255B2 (ja) | プログラミング言語による論理回路記述から論理回路を生成するための装置及び方法 | |
Vijayaraghavan | Bounded dataflow networks and latency-insensitive circuits | |
Carloni et al. | A methodology for correct-by-construction latency insensitive design | |
Steiner et al. | Torc: towards an open-source tool flow | |
Elliott | Understanding behavioral synthesis: a practical guide to high-level design | |
US9335977B2 (en) | Optimization of a data flow program based on access pattern information | |
Rose et al. | The VTR project: architecture and CAD for FPGAs from verilog to routing | |
US6044211A (en) | Method for graphically representing a digital device as a behavioral description with data and control flow elements, and for converting the behavioral description to a structural description | |
Compton et al. | Reconfigurable computing: a survey of systems and software | |
Weaver et al. | Post-placement C-slow retiming for the Xilinx Virtex FPGA | |
Gschwind et al. | FPGA prototyping of a RISC processor core for embedded applications | |
US20070219771A1 (en) | Branching and Behavioral Partitioning for a VLIW Processor | |
US8977994B1 (en) | Circuit design system and method of generating hierarchical block-level timing constraints from chip-level timing constraints | |
Gibiluka et al. | A bundled-data asynchronous circuit synthesis flow using a commercial EDA framework | |
de Oliveira Conceição et al. | Transistor count reduction by gate merging | |
Zhao et al. | Using vivado-HLS for structural design: A NoC case study | |
Folmer et al. | High-level synthesis of digital circuits from template haskell and sdf-ap | |
Tan et al. | The design of an asynchronous VHDL synthesizer | |
Burns et al. | A structured visual approach to GALS modeling and verification of communication circuits | |
Caspi | Design automation for streaming systems | |
Horváth et al. | A proposed synthesis method for application-specific instruction set processors | |
Magyar | Improving FPGA Simulation Capacity with Automatic Resource Multi-Threading | |
Kupriyanov et al. | An Architecture Description Language for Massively Parallel Processor Architectures. | |
JP4276911B2 (ja) | 集積回路の回路要素の配置方法および配置プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MK4A | Expiration of patent term of an invention patent |