本實用新型專利技術公開了一種并行元胞自動機處理系統,包括主控制機和并行元胞自動機處理設備(通過FPGA開發板實現),并行元胞自動機處理設備包括FPGA芯片以及與FPGA芯片連接的外圍設備;其中,FPGA芯片包括外圍設備控制器以及通過Avalon總線連接的NiosII軟核處理器和元胞自動機并行計算模塊;NiosII軟核處理器接收主控制機發送的待計算的數據,將待計算的數據發送給元胞自動機并行模塊,并從元胞自動機并行計算模塊中讀取計算結果發送給主控制機。本實用新型專利技術可提高元胞自動機的模擬計算效率,顯著提高模擬的速度,縮短實驗周期,系統結構相對簡單,成本較低。(*該技術在2022年保護過期,可自由使用*)
【技術實現步驟摘要】
本技術涉及元胞自動機,特別涉及一種并行元胞自動機處理系統。
技術介紹
兀胞自動機(CellularAutomata 或 Cellular Automaton,簡稱 CA)是 John VonNeumann提出的一種完全并行的計算模型(1950s)。CA模型包括一個由若干元胞構成的離散的元胞空間,每個元胞的狀態由有限數量的信息位組成,在同一時鐘驅動下,按照相同的局部演化規則,同步(并行)更新每個元胞的狀態。一方面,CA模型具有通用計算性質,用自動機演化規則可以模擬任何計算流程(理論上可以模擬任何復雜的自然行為),另一方面,CA模型足夠簡單,它直接根據系統的微觀作用機制設計局部演化規則來模擬復雜現象,因此,CA模型在物理、化學、生物和人工智能等問題研究中得到廣泛的應用?!A模型的實現是一項重要的實用技術,目前CA模型的大多數應用都是基于現代數字計算機,它不同于CA的體系結構,其設計思想基于Turing機理論(1936),是一種串行計算的數學模型。元胞自動機本身的并行性與現代數字計算機的串行體系結構是CA應用中的內在矛盾,這極大限制了 CA模型的計算效率。在CA模型的應用中,現代數字計算機普遍存在“10/90瓶頸”,即計算程序中10%的并行計算代碼占用了 90%的執行時間。為了克服已有串行計算技術在實現CA模型上的缺點,利用CA模型本身具有的并行性,采用的并行計算技術有以下三種方式第一種方式是設計完全并行的CA計算機,例如T. Toffoli和M. H. Margolus開發出第一臺通用元胞自動機計算機CAM-6 (1987),后來又將其發展為CAM-8 (1994-1999),它具有適用于CA模型的并行的、可擴展的體系結構,提供了相當于當時巨型計算機的計算能力。該方式硬件系統復雜,設計和實現的難度大、成本高,目前已較少使用。第二種方式是通過分布式集群系統或多核心的高性能計算機實現CA模型的并行計算,將元胞空間劃分為多個計算的子區間,分發到集群系統的分布式計算終端或高性能計算機的計算核心上,采用并行編程環境提供的消息傳遞接口 MPI (Message PassingInterface)和并行虛擬機PVM (Parallel Virtual Machine)實現各子區間計算時的邊界數據交換。該方式對軟硬件環境要求較高,目前使用廣泛,它在一定程度上實現了 CA模型的并行計算,但每一個子區間內部的計算仍然是串行的,并且當子區間數量較多時,有很大的通訊開銷。第三種方式是采用中央處理器CPU (Central Processing Unit)與圖形處理器GPU (Graphic Processing Unit)異構計算模型,利用計算統一設備架構CUDA (ComputeUnified Device Architecture)和開放運算語言 OpenCL (Open Computing Language)等編程框架來實現元胞自動機的并行計算,將空間數據單元(元胞)映射到GPU的線程計算單元(流處理器)上,通過共享存儲單元獲得鄰域元胞的信息,即一個元胞對應一個計算線程實現元胞數據的并行計算。該方式并行度較高,但消耗大量系統資源,當元胞空間較大時無法滿足計算要求。
技術實現思路
本技術要解決的技術問題針對現有元胞自動機模型的實現技術中存在的計算效率較低,速度較慢,實驗周期較長,系統結構復雜,成本高的缺陷,提供一種可提高元胞自動機模擬的計算效率,顯著提高模擬的速度,縮短實驗周期,系統結構相對簡單,成本較低的并行元胞自動機處理系統。本技術解決其技術問題所采用的技術方案是提供一種并行元胞自動機處理系統,包括主控制機和與該主控制機連接的并行元胞自動機處理設備,并行元胞自動機處理設備通過FPGA (Field-Programmable GateArray)開發板實現,包括FPGA芯片以及與FPGA芯片連接的外圍設備;其中,FPGA芯片包括Nios II軟核處理器、元胞自動機并行計算模塊和外圍設備控制器,外圍設備控制器通過Avalon總線與Nios II軟核處理器、元胞自動機并行計算?!K相連接;Nios II軟核處理器接收主控制機發送的待計算的數據,將待計算的數據發送給元胞自動機并行計算模塊,并從元胞自動機并行計算模塊中讀取計算結果發送給主控制機。本技術所述的并行元胞自動機處理系統中,外圍設備包括USB (UniversalSerial Bus)接口芯片,與外圍設備控制器和主控制機連接;外圍設備還包括作為程序運行的存儲區 SDRAM (Synchronous Dynamic Random Access Memory),保存運行程序的 Flash和存儲FPGA配置文件的配置器件。本技術所述的并行元胞自動機處理系統中,元胞自動機并行計算模塊包括控制模塊、數據地址產生模塊、流水線處理模塊、并行計算模塊和數據存儲模塊,控制模塊又包括狀態控制器和計算控制器。本技術所述的并行元胞自動機處理系統中,狀態控制器包括狀態機,狀態機的輸出信號控制數據存儲模塊和計算控制器的工作。本技術所述的并行元胞自動機處理系統中,數據存儲模塊包括4個雙口 RAM存儲器。實施本技術具有以下有益效果通過并行元胞自動機處理設備,既可以利用主控制機強大的邏輯處理能力進行人機交互,又利用FPGA的可編程能力實現不同應用的硬件計算加速,提高元胞自動機的模擬計算效率,利用FPGA芯片實現的元胞自動機處理設備具有很好的擴展性。附圖說明下面將結合附圖及實施例對本技術作進一步說明,附圖中圖I是本技術實施例的并行元胞自動機處理系統的結構示意圖;圖2是本技術實施例的并行元胞自動機處理系統中元胞自動機并行計算模塊的原理框圖;圖3是本技術實施例的并行元胞自動機處理系統的元胞自動機并行計算模塊的狀態控制器的狀態轉移圖;圖4是本技術實施例的并行元胞自動機處理系統的元胞自動機并行計算模塊的數據存儲模塊的數據映射圖;圖5是本技術實施例的并行元胞自動機處理系統的元胞自動機并行計算模塊的計算控制器的工作流程圖。具體實施方式為了使本技術的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本技術進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本技術,并不用于限定本技術。如圖I所示,本技術實施例中,并行元胞自動機處理系統包括主控制機100和與該主控制機100連接的并行元胞自動機處理設備200,并行元胞自動機處理設備200通過現場可編程門陣列FPGA開發板實現,本技術實施例采用Terasic公司的DE2開發板,包括Altera公司的FPGA芯片210以及與FPGA芯片210連接的外圍設備220 ;其中FPGA芯片210配置成包括一個Nios II軟核處理器211、元胞自動機并行計算模塊212和外圍設備·控制器213的Nios II系統,其中外圍設備控制器213通過Avalon總線214與Nios II軟核處理器211、元胞自動機并行計算模塊212相連接。Nios II軟核處理器211接收主控制機100發送的待計算的數據,將待計算的數據發送給元胞自動機并行計算模塊212,并從元胞自動機并行計算模塊2本文檔來自技高網...
【技術保護點】
一種并行元胞自動機處理系統,包括主控制機和與該主控制機連接的并行元胞自動機處理設備,并行元胞自動機處理設備通過FPGA開發板實現,其特征在于,并行元胞自動機處理設備包括FPGA芯片以及與FPGA芯片連接的外圍設備;其中,FPGA芯片包括Nios?II軟核處理器、元胞自動機并行計算模塊和外圍設備控制器,外圍設備控制器通過Avalon總線與Nios?II軟核處理器、元胞自動機并行計算模塊相連接;Nios?II軟核處理器接收主控制機發送的待計算的數據,將待計算的數據發送給元胞自動機并行計算模塊,并從元胞自動機并行計算模塊中讀取計算結果發送給主控制機。
【技術特征摘要】
【專利技術屬性】
技術研發人員:墻威,張良,曹蕙,
申請(專利權)人:中國地質大學武漢,
類型:實用新型
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。