畢業(yè)設計--片上網絡路由器ip核的設計與實現_第1頁
已閱讀1頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  片上網絡路由器IP核的設計與實現</p><p><b>  作 者 姓 名:</b></p><p><b>  指 導 教 師:</b></p><p>  學 院 名 稱:信息科學與工程學院</p><p>  專 業(yè) 名 稱:電子信息工程</p>

2、<p><b>  2011年6月</b></p><p>  Design and realization of the routing IP</p><p>  Core based on NoC</p><p><b>  by </b></p><p>  Supervisor:

3、</p><p><b>  June 2011</b></p><p>  畢業(yè)設計(論文)任務書</p><p>  片上網絡路由器IP核的設計與實現</p><p><b>  摘要</b></p><p>  隨著半導體技術以及集成電路技術的飛速發(fā)展,單個芯片中IP(

4、Intellectual Property)核數量越來越多。這時基于片上總線的SoC(System-on-a-Chip)在設計上遇到了全局時鐘難以同步、地址空間有限、無法支持多節(jié)點并行通信等問題。將計算機網絡技術引入SoC設計領域,以片上網絡的形式從體系結構上徹底解決上述問題已成為該領域的研究熱點。片上網絡的可升級和易擴展性很好的滿足了新設計的要求,并逐漸發(fā)展成為片上總線之外的一種新的通信結構。目前片上網絡的大部分研究基于軟件模擬器和F

5、PGA快速還原系統(tǒng)。軟件模擬器的模擬速度和精度不能兼顧?;贔PGA的快速原型系統(tǒng)能夠準確快速的模擬片上網絡的各種行為,但目前各FPGA廠商和片上網絡研究機構均未提供支持片上網絡設計的路由器IP核,這增加了片上網絡原型設計的復雜性。</p><p>  本文設計了一種具有完整的路由功能、統(tǒng)一的對外接口、靈活的參數設定、具有全面的狀態(tài)監(jiān)測功能的片上網絡路由器IP核。該路由器IP核具有如下功能:能夠連接總線和用戶邏輯

6、兩種接口、路由延時可變、路由算法和數據包格式可選、緩存深度可由用戶配置、能夠搭建片上網絡快速原型系統(tǒng)。該路由器IP核主要由四個功能模塊組成:總線命令轉換模塊、延時可變路由模塊(路由子模塊、仲裁子模塊和交換陣列模塊),路由狀態(tài)檢測模塊、用戶自定義邏輯模塊。</p><p>  本文主要通過modelsim仿真工具對所設計的路由節(jié)點各個功能模塊進行了仿真,并在Xilinx的VirtexII Pro XUP的FPGA開

7、發(fā)板上通過串口監(jiān)測路由節(jié)點的狀態(tài)。</p><p>  關鍵詞:片上網絡;拓撲結構;路由算法;路由節(jié)點;FPGA設計 </p><p>  The design of routing IP Core based on NoC</p><p><b>  Abstract</b></p>

8、;<p>  As the growing development of semiconductor technology and intergrated circuits, more and more IP cores integrated on one single chip. Some problems have become difficult to be solved in designing SoC based

9、 on chip bus. Firstly, synchronization of global clock is impossible.Secondly, address space is limited. Thirdly, chip bus can not support multi-node parrallel communication. As a consequence, the technology of computer

10、networks was transplanted into SoC design to sovle systematic problems of </p><p>  This paper designed a router with a complete routing function, unified external interface and flexible parameter settings,

11、with a comprehensive condition monitoring function. The IP core router has the following features: the ability to connect the user logic bus and two interfaces, routing, variable delay time, optional routing algorithms a

12、nd packet formats, user-configurable cache depth. The router IP core mainly consists of four functional modules: the bus command conversion module, a variabl</p><p>  The simulatin of this routing node was t

13、ested using the simulatin tool— Modelsim in 3*3 Mesh topology strcture. At the same time,the state of the routing node was detected by serial port in the hardware of Xilinx VirtexII Pro XUP development board. Finally, th

14、is thesis analysed the performance and improving critical tecnology of this routing node.</p><p>  Key words:Network on Chip; Topology; Routing Algorithm; Routing node; FPGA Design</p><p><b&

15、gt;  目錄</b></p><p>  畢業(yè)設計(論文)任務書3</p><p><b>  摘要4</b></p><p>  Abstract5</p><p><b>  目錄6</b></p><p><b>  第一章 緒論8&l

16、t;/b></p><p>  1.1 課題的提出、目的及意義8</p><p>  1.2 國內外現狀8</p><p>  1.3 系統(tǒng)設計內容10</p><p>  1.4 論文組織結構10</p><p>  第二章 相關技術11</p><p>  2.1 片上總線與

17、片上網絡概述11</p><p>  2.1.1 片上總線11</p><p>  2.1.2 片上總線的優(yōu)缺點11</p><p>  2.1.3 片上網絡12</p><p>  2.2 FPGA技術與IP核簡介17</p><p>  2.2.1 FPGA技術簡介17</p><p

18、>  2.2.2 IP核簡介18</p><p>  2.2.3 Xilinx ISE開發(fā)工具簡介18</p><p>  2.2.4 Xilinx EDK開發(fā)工具簡介19</p><p>  2.3 本章小結20</p><p>  第三章 路由器IP Core的設計與實現21</p><p>  3

19、.1 路由器IP Core的設計21</p><p>  3.1.1 功能說明及模塊劃分21</p><p>  3.1.2 路由器IP Core同步時序設計22</p><p>  3.1.3 數據包的格式 23</p><p>  3.1.4 參數化設計23</p>

20、<p>  3.2 各功能模塊的設計與實現24</p><p>  3.2.1 總線命令轉換模塊24</p><p>  3.2.2 延時可變路由模塊24</p><p>  3.2.3 路由狀態(tài)監(jiān)測模塊29</p><p>  3.2.4 用戶自定義邏輯模塊30</p><p>  3.3 本章小

21、結30</p><p>  第四章 測試與結果分析31</p><p>  4.1 路由節(jié)點的驗證流程31</p><p>  4.2 各個功能模塊仿真驗證31</p><p>  4.2.1 輸入緩沖區(qū)模塊仿真31</p><p>  4.2.2 路由仲裁模塊的仿真32</p><p&

22、gt;  4.2.3 單一路由節(jié)點的仿真33</p><p>  4.2.4 狀態(tài)檢測模塊的仿真33</p><p>  4.3 快速原型系統(tǒng)34</p><p>  4.4 本章小結35</p><p>  第五章 結論與展望36</p><p>  5.1 本設計的貢獻和主要工作36</p>

23、<p>  5.2 未來工作36</p><p>  5.2.1 路由策略的進一步擴展36</p><p>  5.2.2 延時可變路由模塊的進一步擴展37</p><p><b>  參考文獻38</b></p><p><b>  致謝40</b></p>

24、<p><b>  緒論</b></p><p>  本章將從課題提出的目的及意義、國內外現狀、系統(tǒng)設計的主要內容等幾個方面對本課題進行闡述。</p><p>  課題的提出、目的及意義</p><p>  隨著半導體工藝和芯片技術的飛速發(fā)展,系統(tǒng)級芯片內能夠集成越來越多的功能,導致芯片內總線結構的互連方式已經無法滿足日益增長的通信需

25、求。 20世紀末,為了解決傳統(tǒng)總線結構帶來的設計問題,國外的幾個研究小組提出了一種全新的集成電路體系結構片上網絡(Networks-on-chip,NoC),其主要的設計思想就是將發(fā)展的較成熟的計算機網絡技術運用到芯片設計中來,以實現體系結構上的改變,從而徹底解決總線結構所帶來的問題。</p><p>  眾所周知,芯片產業(yè)在過去的幾十年中一直遵守著摩爾定律,那就是每隔十八個月芯片的體積縮小一倍,芯片上晶體管的數

26、量增加一倍,但是近幾年半導體工藝很難在保持這個速度,原因是以往的速度提升主要靠器件尺寸的減小,但是到了13nm以下,線路延時開始超過門的傳輸延時,整個系統(tǒng)的延遲變得特別嚴重。片上網絡正是為了解決傳統(tǒng)總線架構在芯片設計上的瓶頸問題而被提出的。片上網絡被預測能在科技快速發(fā)展的今天,取代傳統(tǒng)的總線架構,從而突破芯片設計中的瓶頸,使摩爾定律繼續(xù)保持下去。</p><p>  通常,片上網絡的研究基于軟件的模擬器或FPGA

27、實現的快速原型系統(tǒng)。軟件模擬器具有易操作的特點,但模擬速度和模擬精度無法兼顧。采用FPGA實現的快速原型系統(tǒng)更貼近于實際的片上網絡,能夠精確的模擬片上網絡的各種行為。并且由于采用硬件模擬,模擬速度較快。目前各FPGA廠商和研究機構均未提供支持片上網絡設計的IP(Intellectual Property)核,這增加了片上網絡原型設計的復雜性。本文將設計并實現一個片上網絡路由器的IP核,該IP核將具有完整的路由功能、統(tǒng)一的對外接口、靈活的

28、參數設定以及全面的狀態(tài)監(jiān)測。該核能夠使用戶快速的建立所需的片上網絡,為片上網絡的研究帶來方便。</p><p><b>  國內外現狀</b></p><p>  自從二十世紀末片上網絡被首次提出,在過去的十幾年里,對于片上網絡的研究得到了飛速的發(fā)展。路由器是片上網絡的重要組成部分,也是本文要重點研究的內容。關于路由器的設計,國內外已有一些相關工作。[1]介紹了能準確

29、模擬現代路由器關鍵技術的延時路由器模型,這種模型考慮到了現代路由器的流水線性質,以及流控可信路徑的延遲和在虛擬通道上對交叉端口的共享等問題,基于這個模型,該文章提出了一種適用于隨機虛擬通道的體系結構,這種體系結構相比于蟲洞網絡結構在一定程度上減少了路由器延時,并且用這種模型得到的仿真結果相比于蟲洞路由器來說,每一跳的延時相同,但是網絡中的吞吐量提升了大約40%。</p><p>  眾所周知,基于數據包的片上網絡

30、正越來越多的被采用在復雜的片上系統(tǒng)設計時的同構和異構模塊中,這些片上網絡的體系結構不僅要求提供超低的延時,而且要占據較小的空間和盡可能小的能耗。未來在深亞微米時代中,由于加速老化和制造/測試的挑戰(zhàn),可靠性變得越來越重要。[2]中針對特定目標設計低延遲、低能耗、可靠的片上通信網絡,文中提出了一種新的細粒度模塊化的路由器體系結構,此架構采用解耦并行仲裁和更小的交叉電路來減小輸出端口的競爭。此外,路由器采用一種全新的交換分配技術來減小仲裁深度

31、和改善并行性,這種模塊化設計允許在永久失效事件中片上網絡的適度的解耦,同時也有助于減小動態(tài)能耗。[2]中的仿真結果表明在8*8的mesh網絡中,這種體系結構在降低了4-40%的包傳輸延時和6-20%的能耗。</p><p>  隨著片上系統(tǒng)設計中的部署的復雜程度的提升,SoC的設計受到了片上總線互連的制約。作為一種有潛力的解決方法,片上網絡的提出很大程度上改善了芯片的性能和功耗。[3]中提出了一種利用自適應路由并

32、且維持一個低延遲的體系結構。這個兩階段的流水線架構應用前端路由算法,隨機分配和優(yōu)化的輸出路徑選擇,其中的路由算法按照阻塞的流控,做出更好的路由決策。[3]中的仿真結果表明這種體系結構在保持性能和片上網絡功耗上面是有效的。</p><p>  當今,由于半導體技術進入深亞微米和納米時代,數億個晶體管這種復雜設計面臨著諸多問題,片上網絡作為一種靈活的全局通信構造以減輕芯片設計師的壓力,在短期內,這種通信架構可以提供廣

33、泛的芯片通信同時也能夠減少處理多周期通信的復雜程度。從長遠角度來看,這個網絡也可以變成優(yōu)化能耗,數據傳輸和可調度計算的主要工具。[4]中設計并實現了一個低延遲的片上網絡,其中的路由節(jié)點在最好的情況下可以在一個單時鐘周期里路由一個分片從而減小了片上通信的延遲并且優(yōu)化了緩沖資源的有效性。[4]只是提供了一種理論,而[5]則在[4]的基礎上從關鍵路徑上移除了控制的開銷(router and arbitration logic)從而減小周期時間

34、和延遲。[5]的仿真結果表明,這個控制開銷的減小可以保證分片在一個單周期內被路由而且能夠最大化有限的緩沖區(qū)資源的有效性。</p><p>  綜上所述,目前片上網絡的研究主要集中于體系結構和路由策略的改進,對可復用的、可配置的、能用于搭建快速原型系統(tǒng)的路由器IP核并沒有相關研究,本文將設計并實現這種路由器IP核,期望能夠為片上網絡實驗平臺的搭建和芯片的開發(fā)提供依據和便利。</p><p>

35、<b>  系統(tǒng)設計內容</b></p><p>  本文將實現一個具有完整的路由功能、統(tǒng)一的對外接口、靈活的參數設定、具有全面的狀態(tài)監(jiān)測功能的片上網絡路由器IP核。本文將在Xilinx的XUPV2P開發(fā)板上用VHDL硬件描述語言設計并實現一個片上網絡路由器IP核以及用該IP核搭建的片上網絡快速原型系統(tǒng)。利用EDK和ISE在FPGA上搭建片上網絡原型系統(tǒng)以實現此IP核的基本邏輯功能—路由,同

36、時將通過讀寫RAM的方式實現對路由器的監(jiān)測狀態(tài)的存儲和讀取,另外還要對此核進行基本的封裝,使其具有統(tǒng)一的對外接口和靈活的參數設定。最后,要用該IP核搭建片上網絡快速原型系統(tǒng),以測試該IP的功能。</p><p><b>  論文組織結構</b></p><p>  第一章主要介紹本文中設計的片上網絡路由器IP核的背景、目的以及國內外現狀、系統(tǒng)設計內容等。</p&

37、gt;<p>  第二章主要介紹與本文設計的路由器IP核相關的知識和技術,便于系統(tǒng)設計與實現章節(jié)的闡述。</p><p>  第三章從整體和局部闡述了整體路由器IP核的設計與實現,以及各個模塊的設計思想和實現過程。</p><p>  第四章主要通過modelsim仿真和硬件電路調試驗證了本文所設計的路由器IP核的正確性和可用性。</p><p>  

38、第五章主要介紹了整個畢業(yè)設計階段的主要工作和未來工作中需要對此路由器IP核進行改善和提高的不足之處。</p><p><b>  相關技術</b></p><p>  本章主要介紹了與本文相關的各種技術,其中包括片上總線與片上網絡的概述、FPGA技術與IP核簡介、仿真工具與設計平臺等。</p><p>  片上總線與片上網絡概述</p&g

39、t;<p><b>  片上總線</b></p><p>  隨著超大規(guī)模集成電路的迅速發(fā)展,半導體工業(yè)進入深亞微米時代,器件特征尺寸越來越小,芯片規(guī)模越來越大,可以在單芯片上集成上百萬到數億只晶體管。如此密集的集成度使我們現在能夠在一小塊芯片上把以前由CPU和若干I/O接口等數塊芯片實現的功能集成起來,由單片集成電路構成功能強大的、完整的系統(tǒng)(SoC-片上系統(tǒng))。通常,SoC

40、的設計中需要大量的IP核復用,因為這種技術減少了大型系統(tǒng)設計的復雜度。而(On-Chip Bus-片上總線)是實現SoC中IP核連接最常見的技術手段,它以總線方式實現IP核之間數據通信。相比傳統(tǒng)的板上系統(tǒng),片上總線不用驅動底板上的信號和連接器,使用更簡單,速度更快。一個片上總線規(guī)范一般需要定義各個模塊之間初始化、仲裁、請求傳輸、響應、發(fā)送接收等過程中驅動、時序、策略等關系。</p><p>  眾所周知,基于IP

41、核設計的SoC是面相互連的,因此互連通信技術將成為IP核設計的關鍵性技術。通常,我們熟悉的互連通信結構有三種:總線互連,點到點互連,片上網絡互連。圖1具體展示了上述三種互連通信結構。</p><p>  (1)總線互連 (2)點對點互連 (3)片上網絡互連</p><p>  圖2.1 三種基本的互連通信結構</p>&l

42、t;p><b>  片上總線的優(yōu)缺點</b></p><p>  片上總線的意義在于SoC中各個CPU Core,IP Core間的互聯通訊,對于大規(guī)模SoC設計而言也是性能瓶頸所在。其主要優(yōu)點如下:</p><p>  (1)簡化了硬件的設計:便于采用模塊化結構設計方法,面向總線的微型計算機設計只要按照這些規(guī)定制作cpu插件、存儲器插件以及I/O插件等,將它們

43、連入總線就可工作,而不必考慮總線的詳細操作。</p><p>  (2)簡化了系統(tǒng)結構:整個系統(tǒng)結構清晰。連線少,底板連線可以印制化。</p><p>  采用總線結構的缺點是利用總線傳送具有分時性。當有多個主設備同時申請總線的使用是必須進行總線的仲裁。然而隨著微電子技術的發(fā)展,CMP逐漸朝著多核化(幾十或上百個核)和異構化(即包含不同類型的核)的方向發(fā)展,傳統(tǒng)的總線結構面臨的諸多問題,逐

44、漸成為了影響CMP性能的主要瓶頸。問題如下所述:</p><p>  (1)帶寬限制:總線是一種共享介質的互連結構,某一時刻只允許一個設備使用總線。仲裁邏輯允許高優(yōu)先級的設備獲得總線的使用權,在總線被占用期間,所有其他的請求被阻塞,直到總線空閑。如果成百上千個IP核爭用一條總線,結果難以想象。這就導致了系統(tǒng)并發(fā)性能低和吞吐率低。</p><p>  (2)全局同步:全局連線上的信號延遲決定

45、了系統(tǒng)的時鐘周期,并且全局時鐘會帶來時鐘歪斜的問題,驅動遍布整個芯片的全局時鐘信號線需要消耗很多的能量,為了保持甚至提高系統(tǒng)的時鐘頻率,解決時鐘歪斜問題,和解決龐大時鐘樹所帶來的功耗問題,未來大規(guī)模多核的SoC設計必須使用全局異步局部同步(Global Asynchronous Local Synchronous, GALS)機制,每一個代理模塊工作在自己的時鐘域,而不同的資源節(jié)點之間則通過片上互連網絡進行異步通訊。</p>

46、<p>  (3)信號集成度:更低的電源電壓,更小的線寬,使得整個VLSI系統(tǒng)對電流中的噪聲更加敏感。而共享介質上的更多功能部件則進一步加重了噪聲。</p><p>  (4)信號延遲:隨著特征尺寸的下降,連線延遲成為影響信號延遲的主要因素??偩€結構是全局控制的。在10億晶體管時代,全局的線延遲會大于時鐘周期??偩€結構的全局連線使得時鐘的偏移很難管理。</p><p>  為

47、了突破片上總線在大規(guī)模SoC系統(tǒng)上的瓶頸,片上網絡這個通信結構被提出已解決上述傳統(tǒng)總銜接夠面臨的問題。</p><p><b>  片上網絡</b></p><p>  自上個世紀90代末片上網絡的概念被提出以來,它被認為是未來集成工藝下多核技術發(fā)展的必然方向。因為基于片上網絡的系統(tǒng)能夠很好的適應大規(guī)模SoC設計中常用的全局異步局部同步的時鐘機制。其獨特的片上通信架構

48、最早來自于并行計算機的互連網絡,但不同的是片上網絡是一個芯片上的網絡,所以片上網絡幾乎所有的拓撲結構都能在計算機網絡中找到相應的原型,這樣對片上網絡的研究提供了很大的方便。片上網絡以其諸多的特點和優(yōu)勢成為研究的熱點,具體優(yōu)勢有如下幾個方面:</p><p> ?。?)片上網絡可以跨越同步和異步時鐘域或者使用不受時間約束的異步邏輯。片上網絡將計算機網絡原理和方法應用于芯片上的設計,相比于傳統(tǒng)的芯片設計方法提高了系統(tǒng)

49、芯片的可擴展性并且降低了芯片的功率和能耗。</p><p> ?。?)片上網絡的電路的鏈接中有許多共享的信號。因為所有鏈接可以同時傳送不同的數據包,從而可以實現數據的并行化,這相比于傳統(tǒng)的總線通信架構對吞吐量和可擴展性有了很好的改善。</p><p> ?。?)片上網絡實現了計算節(jié)點和通信節(jié)點的隔離,通過一個標準接口支持模塊化和IP復用,為系統(tǒng)測試和芯片開發(fā)提供了便利的服務,因此提高了工程

50、效率。</p><p>  下面將分別介紹片上網絡的拓撲結構、包交換技術、路由策略和映射。</p><p><b>  片上網絡的拓撲結構</b></p><p>  所謂的片上網絡拓撲結構就是指片上網絡中各個節(jié)點之間的相互連接方式。片上網絡的拓撲在片上網絡體系結構中是十分重要的部分,因為它直接決定了片上網絡中所采用的路由方式,仲裁算法以及IP

51、核的分布。通常片上網絡拓撲結構分為兩類,一類是直接型網絡拓撲,另一類是間接型網絡拓撲。因為本論文是基于直接型網絡拓撲中的2D Mesh做的片上網絡快速還原系統(tǒng)和IP核,所以在此詳細介紹一下2D Mesh。</p><p>  二維網狀網絡(2D Mesh)是目前片上網絡研究中最常用的拓撲結構。其結構是每個資源和一個通訊節(jié)點相連,而一個通訊節(jié)點與四個相鄰的通訊節(jié)點和一個資源相連。通訊節(jié)點是路由功能,并作為每個相鄰的

52、資源節(jié)點的網絡接口。本論文實驗所做的IP核就是基于2D Mesh結構上實現路由功能的通訊節(jié)點。圖2.2給出了一個4*4的2D Mesh 結構。</p><p>  圖2.2 4*4的2D Mesh結構</p><p>  其中的IP模塊可以是芯片上的處理器核,內存,也可以是用戶自定義的邏輯電路。路由器與路由器之間,路由器與IP模塊之間是由一對輸入輸出通道連接,這種連接可以實現數據傳輸時的良

53、好并行性。在眾多拓撲結構中,規(guī)則的2D Mesh結構并不是最優(yōu)的,但其以結構簡單,易于實現和良好的復用性等特點,被大多數片上網絡研究人員采用??偟膩碚f,直接型拓撲結構部署簡單,可擴展性強,便于設計簡單高效的路由算法。</p><p>  片上網絡的包交換技術</p><p>  片上網絡上的包交換和計算機網絡中的包交換原理上大致相同,都是將數據包按照特定方法從輸入端口交換到輸出端口,片上網

54、絡系統(tǒng)內常用的包交換技術主要有四種:存儲轉發(fā)(Store-and-Forward)、虛擬直通(Virual Cut Though)、蟲洞路由(Wormhole Routing)和偏轉路由(Deflection Routing)。下面分別介紹上述幾種包交換技術的相關概念和問題。</p><p> ?。?)存儲轉發(fā)是先將數據完全存儲,然后進行路由決策,最后在轉發(fā)到下一個節(jié)點的交換機制。這種交換方式能夠保證傳輸過程中數

55、據的完整性,但是在片上網絡系統(tǒng)中需要較大的存儲空間,同時又存在較大的延遲。</p><p> ?。?)虛擬直通是將數據包劃分為多個flit,并按順序排好,將所需的路由信息放入head filt(頭微片,后續(xù)微片成為數據微片),其余的flits跟隨head之后,以“流水”的方式通過網絡中的路由節(jié)點。當發(fā)生阻塞時,數據包就存儲于發(fā)生阻塞的路由節(jié)點緩存中,這樣每個路由節(jié)點只需要一個數據包大小的緩存空間即可,從而節(jié)省了大

56、量的緩存資源。圖2.4就是將數據包分片然后通過交換電路傳輸出去的流程。</p><p>  圖2.4. 數據包分片示意圖</p><p> ?。?)蟲洞路由是目前片上網絡中的主流交換機制,它和虛擬直通的思想基本相同,傳輸數據時也分被分為多個flit,當傳輸head flit時,路由節(jié)點選擇一條最優(yōu)路徑,記錄下數據包類型,并保持路徑通暢,知道整個數據包flit傳輸完畢。在網絡中沒有阻塞的情況

57、下,虛擬直通和蟲洞路由是完全一樣的。兩者的區(qū)別是發(fā)生阻塞是對被阻塞的數據包的處理:虛擬直通是將整個數據包存儲在緩沖區(qū)中;而蟲洞路由是將各個flit分散到各個節(jié)點存儲。</p><p> ?。?)偏轉路由并不緩存任何數據包,所有進來的數據包被立即轉發(fā),這樣不需要為一個特定數據包保持一條通路,一個數據包中的不同分片可以同時傳輸,提高了系統(tǒng)利用率。當接收數據時,分片到達順序可能不同于發(fā)送順序,這就需要為每個分片編號,再

58、接收端重新組裝。此方式的網絡接口設計較為復雜,同時需要一個良好的擁塞控制方式來避免數據的丟失和重傳。</p><p><b>  片上網絡的路由策略</b></p><p>  片上網絡的路由策略要選擇一條最合適的路徑將數據包從源地址發(fā)送到目的地址。通常,路由算法按照不同的標準可以分為如下幾類:確定性路由、自適應路由、部分自適應路由。本文的路由算法是基于確定性路由中的

59、XY、YX和XY-YX維序路由算法。</p><p>  表2.1 一種二位網格的維序路由機制</p><p>  確定性路由的路由路徑只與源地址和目的地址有關,只要數據包中的源地址和目的地址確定了,與當前的網絡狀態(tài)無關。而典型的確定性路由就是維序路由,在維序路由中,每個數據包一次只在一個維上路由,當在這個維上到達了恰當的坐標后,才按由低維到高維的順序在另外的維上路由。表1則為XY維序路由

60、算法的具體示意圖,簡要概括,XY維序路由算法是先X方向,后Y方向傳送數據包。YX維序路由算法不同于XY的是先Y方向,后X方向傳送數據包。而XY—YX路由算法是根據當前節(jié)點和目的節(jié)點的坐標來確定數據包的傳送方向。 </p><p>  自適應路由其主要特點就是路由路徑除了與源地址和目的地址有關外,還與網絡的狀態(tài)有關。即對同一源/目的地址的數據包,在不同的網絡狀態(tài)下,它們的路由

61、路徑有可能不同。其中主要包括Christopher提到的旋轉模型路由和Chiu提到的奇偶旋轉模型路由[6]。這兩種路由算法不僅體現了自適應路由的提高網絡帶寬飽和值的特性,而且還避免了自適應路由在網絡擁塞情況下的死鎖問題[7].</p><p>  部分自適應的路由算法[9-11]被Hu提出。該算法將XY算法與自適應算法相結合,當網絡未發(fā)生擁塞時,使用XY路由算法,獲得低的傳輸時延;當網絡發(fā)生擁塞時,使用自適應的F

62、CFS 路由算法避免擁塞。</p><p><b>  片上網絡的映射</b></p><p>  片上網絡是解決片上系統(tǒng)之間各個IP核通信的主要方法。其中片上網絡的映射是整個片上網絡設計過程中最為關鍵的步驟之一。映射結果的好壞直接影響體系結構的性能。片上網絡的映射問題由Hu等人首次提出[12]。該論文解決了一組應用映射到一個規(guī)則片上網絡上的問題,文中提出的映射算法同

63、時考慮了應用性能和能源消耗的優(yōu)化問題。在該論文中作者首先用形式化的方法對映射問題建模,之后采用分支定界的方法通過限制映射搜索序列的長度來解決映射狀態(tài)空間爆炸的問題。Hu將以上的映射算法擴展到不規(guī)則片上網絡和固定IP(Intellectual Property)的設計中[13].之后又有很多學者對片上網絡映射算法做了研究,如兩步遺傳算法、進化技術算法以及蟻群算法等.使用這些啟發(fā)式算法進行片上網絡映射后,映射往往存在停滯現象或搜索速度慢等缺

64、陷。而[14]在基本蟻群映射算法中引入了遺傳算法及解變換等優(yōu)化策略并得到了更好的優(yōu)化結果。</p><p>  FPGA技術與IP核簡介</p><p><b>  FPGA技術簡介</b></p><p>  FPGA是英文Field Progranmmable Gate Array的縮寫,即現場可編程門陣列,是一種新興的可編程邏輯器件,同時

65、也是PLD(Programmable Logic Device)與ASIC(Application Specific Intergrated Circuits)兩種技術相結合的成果。與SPLD和CPLD相比,具有更高的密度,更快的工作速度和更大的編程靈活性,被廣泛應用在各種電子類產品中。</p><p>  FPGA是由存放在片內RAM中的程序來設置其工作狀態(tài)的,因此,工作時需要對片內的RAM進行編程。用戶可以根

66、據不同的配置模式,采用不同的編程方式。加電時,FPGA芯片將EPROM中數據讀入片內RAM中,配置完成后,FPGA進入工作狀態(tài)。掉電后,FPGA恢復成白片,所以在調試期間可用下載電纜配置芯片,調試完成后,將數據固化在專用的EPROM中。</p><p>  圖2.5. FPGA的基本結構</p><p>  由于本文的實驗是基于Xilinx的VirtexII pro系列的FPGA器件,所以

67、在此介紹一下Xilinx公司FPGA的內部結構,如圖5所示,典型的FPGA主要由三部分組成:可配置邏輯塊CLB,可編程輸入輸出塊IOB,可編程內部連線PI。其中CLB是FPGA的基本邏輯單元,它提供了用戶所需要的邏輯功能:函數功能發(fā)生器、配置RAM功能、快速進位邏輯。通常規(guī)則的排列成一個陣列,散布于整個芯片;IOB是為芯片外部引腳或內部邏輯提供接口的模塊,它可編程為輸入、輸出、雙向三種方式,通常排列于芯片的四周;PI是帶有可編程節(jié)點和開

68、關矩陣的內部金屬線段,這些線段為內部各個CLB,IOB提供了連線資源,構成特定功能的電路。改變各個CLB的功能或改變各個CLB與IOB的連接組合都能改變整個芯片的功能。由此可見,FPGA的功能是非常強大和靈活的。</p><p><b>  IP核簡介</b></p><p>  IP(Intellectual Property)就是我們常說的知識產權,IP核(IP

69、core)就是將一些在數字電路中常用但比較復雜的功能塊,設計成可修改參數的通用模塊,這樣其他用戶可以直接調用這些模塊,方便地構建不同系統(tǒng)。</p><p>  廣義上來說,IP核可以采用軟核和硬核兩種形式提供給客戶,這兩種方式可以幫助用戶獲得在功能上經過驗證的設計。軟核也被稱為可綜合內核,需要由客戶進行綜合,并在其SoC上實現。而硬核則已完全實現(完成了版圖設計),可以直接用于制造。從技術上來說,一種設計只有生產

70、后才能實現,但是在使用硬核的情況下,實現的意思是指安排布局并可直接投入生產,而用戶只需將硬核像單個集成電路片那樣植入芯片即可,較之軟核方式更為簡單。在FPGA行業(yè),還存在一種介于軟核與硬核之間的固核,這種IP核針對摸個系列的FPGA進行布線、優(yōu)化,以網表的形式提供給用戶,習慣上也認為固核屬于硬核范疇。</p><p>  硬核具有速度快、效率高、使用簡便等優(yōu)點,但針對性非常強。軟核具有技術獨立性和可移植性強、定制

71、性強,易于集成等優(yōu)點,但效率相對較低。在FPGA設計中,大部分可使用的IP核以軟核的形式提供,少部分以固核的形式提供,也有個別以硬核形式提供,如Power-PC405處理器核。</p><p>  Xilinx ISE開發(fā)工具簡介</p><p>  圖2.6 ISE 開發(fā)設計流程</p><p>  Xilinx ISE具有界面良好、操作簡單的特點。ISE提供了包

72、括代碼編寫、庫管理以及HDL綜合、仿真、下載等幾乎所有FPGA開發(fā)所需的功能。ISE開發(fā)流程大概分為設計輸入、綜合、仿真、實現和下載等五部分。如圖6所示。</p><p>  (1)圖形或文本輸入(Design Entry)</p><p>  常用的設計輸入方法是硬件描述語言和原理圖設計輸入方法。原理圖輸入是一種常用的基本的輸入方法,其是利用元件庫的圖形符號和連接線在ISE的圖形編輯器中

73、作出設計原理圖。硬件描述語言輸入是利用HDL編輯器進行自頂而下的設計輸入方法,較之原理圖輸入,有可移植性好,通用性強等優(yōu)點。</p><p>  (2)綜合(Synthesis)</p><p>  綜合是將行為和功能層次表達的電子系統(tǒng)轉化為低層次模塊的組合。一般來說,綜合是針對VHDL來說的,即將VHDL描述的模型、算法、行為和功能描述轉換為FPGA/CPLD基本結構相對應的網表文件,即

74、構成對應的映射關系。</p><p>  (3)仿真(Implementation)</p><p>  ISE常使用的仿真工具主要由Modelsim和測試激勵生成器等。Modelsim是一個獨立的仿真工具,ISE集成開發(fā)環(huán)境為Modelsim預留了軟件接口,通過該接口可以從ISE直接啟動Modelsim工具進行仿真。仿真包括綜合后仿真和功能仿真,功能仿真就是對設計電路的邏輯功能通過Mod

75、elsim等仿真工具進行模擬測試,通常是通過時序圖顯示輸入信號與輸出信號的關系。</p><p>  (4)實現(Verification)</p><p>  實現是根據所選的芯片的型號將綜合輸出的邏輯網表適配到具體器件上。ISE的實現過程分為:翻譯、映射、布局布線三個步驟。</p><p>  (5)下載(Download)</p><p&g

76、t;  下載就是將已經仿真實現的程序下載到開發(fā)板上,進行在線調試。</p><p>  Xilinx EDK開發(fā)工具簡介</p><p>  EDK是Embedded Development Kit的縮寫,即嵌入式開發(fā)套件。Xilinx在EDK集成開發(fā)環(huán)境中,為設計人員提供了使用方便而完備的軟件編譯調試工具。主要包括XPS工具和SDk工具,XPS工具完成主要軟/硬件設計調試工作,SDK工具

77、用于設計和調試應用軟件。利用EDK進行設計的完整流程包括硬件設計與調試,軟件設計與調試,以及仿真等。具體流程圖如圖2.7所示。</p><p>  (1)硬件設計與調試</p><p><b>  1)創(chuàng)建硬件平臺。</b></p><p>  2)定制IP核,用戶自主設計符合需求的專用外設。</p><p>  3)生

78、成硬件流文件,生成網表和比特流文件。</p><p>  4)下載硬件流文件,使用JTAG編程電纜燒錄在FPGA上。</p><p>  5)生成仿真文件,可選擇行為級、結構級、時序級仿真方式。</p><p>  (2)軟件設計與調試</p><p>  1)設置軟件屬性,使用EDK工具確定軟件的操作系統(tǒng)、庫、外設驅動等屬性。</p&

79、gt;<p>  2)生成可執(zhí)行軟件代碼,編譯并生成elf格式的可執(zhí)行代碼。</p><p>  3)生成BSP和庫文件。</p><p>  4)使用XMD工具調試,通過JTAG編程電纜在線調試,下載可執(zhí)行軟件代碼,控制執(zhí)行,并監(jiān)控相關信息。</p><p>  圖2.7 EDK設計流程圖</p><p><b> 

80、 本章小結</b></p><p>  本章主要從片上總線與片上網絡的概述、FPGA技術與IP核簡介、仿真工具與設計平臺等方面對本課題中要涉及到的相關理論背景及技術進行了簡要介紹,同時針對其中的每一方面又分小節(jié)有所側重地做了詳細說明,便于后續(xù)章節(jié)中相關內容的闡述。</p><p>  路由器IP Core的設計與實現</p><p>  本章主要介紹了路

81、由器IP Core的設計與實現,其中包括路由器IP Core的模塊的劃分、各個功能模塊的設計與實現、設計中涉及到的算法與思想等。</p><p>  路由器IP Core的設計</p><p>  此路由器IP核是基于Xilinx公司的VirtexII Pro XUP的實驗板設計的,主要采用VHDL硬件描述語言設計并實現一個路由器IP核以及用該IP核搭建的片上網絡快速原型系統(tǒng)。利用EDK和

82、ISE在FPGA上搭建硬件模型以實現此IP核的基本邏輯功能-路由。該IP核是人們廣義上定義的軟核,因此,此IP核的設計就應該體現出軟核的靈活性、可移植、可定制性等特點。對不同的網絡拓撲結構與不同的路由算法,網絡路由單元的結構會有所不同,本實驗將針對較為直觀、且最常用的2D Mesh網絡結構進行設計。為了滿足以上特點,同時又因為FPGA有豐富的系統(tǒng)資源,所以我們采用了一種基于存儲轉發(fā)的路由策略,該結構有如下特點:控制結構簡單、系統(tǒng)開銷小;

83、提供基于優(yōu)先級調度的確保通信服務,為片上網絡提供更高的服務質量;采用維序路由算法,以避免死鎖的發(fā)生;提供統(tǒng)一的對外接口、靈活的參數設定,方便快速建立用戶所需的片上網絡;采用局部同步設計思想,以消除電路中可能產生的毛刺現象。</p><p><b>  功能說明及模塊劃分</b></p><p>  該路由器IP核具有如下功能:能夠連接總線和用戶邏輯兩種接口、路由延時可

84、變、路由算法和數據包格式、緩存深度可由用戶配置、能夠搭建片上網絡快速原型系統(tǒng)。如圖3.1所示,根據IP核要實現的功能,本IP核可以分成四個功能模塊,各個模塊所要完成的功能如下:</p><p>  (1)總線命令轉換功能</p><p>  總線命令轉換模塊通過總線接口將Power PC處理器發(fā)來的數據包暫存在用戶可見的寄存器中,并按照時序轉換規(guī)則將其轉化為該路由器IP核可識別的時序命令,

85、同時還可將路由器IP核接收的時序命令轉化為數據包存放于寄存器中。這樣,用戶就能夠從相應的寄存器中將接收到的數據包讀取出來。</p><p> ?。?)延時可變路由功能</p><p>  延時可變路由器主要由兩部分組成,一部分是快速的路由模塊,另一部分是延時模塊,其中,快速路由模塊是實現具體的路由功能,主要由三部分構成:輸入緩沖區(qū)、路由仲裁模塊、交換陣列。當其接收到直連接口和總線接口發(fā)來的

86、數據包后,首先將數據包路由信息(源地址、目的地址、數據包ID)從數據包提取出來,發(fā)送至路由仲裁模塊,若仲裁出的輸出端口空閑,則將這個數據包通過交換陣列由此端口發(fā)送出去,若忙碌,則等待直至輸出端口空閑??焖俾酚赡K在沒有輸出端口競爭的情況下會在三個時鐘上升完成沿將數據包轉發(fā)出去的工作,第一個時鐘上升沿在輸入緩沖區(qū)用于對輸入端口的數據包的緩存,第二個時鐘上升沿在路由仲裁模塊用于對輸入數據包的路由,第三個時鐘上升沿在交換陣列用于將數據包發(fā)送至

87、輸出端口。而延時模塊是根據用戶設定的時間進行延時,延時之后將執(zhí)行路由功能。另外,此路由器又是可變的,即用最短的時間完成所需的功能,若用戶設定的時間比完成功能的時間長,則用延時模塊延時到用戶設定的時間。</p><p>  圖3.1 IP核設計框圖</p><p> ?。?)監(jiān)測狀態(tài)存儲功能</p><p>  監(jiān)測狀態(tài)監(jiān)測模塊通過開發(fā)板上的雙口RAM將路由器IP核中

88、的數據包ID、數據包接收時刻、數據包發(fā)出時刻進行存儲,用戶可以通過另一個接口將存儲的內容讀取出來以便實時監(jiān)測。</p><p> ?。?)用戶自定義邏輯功能</p><p>  如圖8所示,此路由器IP核有兩種接口,一種是總線接口,另一種是用戶自定義邏輯。設計這種接口有兩個目的,一是實驗所用開發(fā)板上的的硬處理器核PPC只有兩個,要是僅僅使用兩個PPC來發(fā)送數據包,顯然搭建片上網絡快速原型系

89、統(tǒng)是明顯不夠的。另一目的是因為用戶自定義邏輯完全是采用純邏輯電路設計的,所以此路由器IP Core既可以使用在具有處理器的系統(tǒng)中,又可以使用在純邏輯電路系統(tǒng)中了.</p><p>  路由器IP Core同步時序設計</p><p>  數字時序電路一般分為異步時序和同步時序。異步時序電路采用組合邏輯,它的特點是任意時刻的穩(wěn)定輸出僅取決于該時刻的輸入信號,而與時鐘信號沒有任何關系。同步時序

90、電路一般采用觸發(fā)器,它的特點是任一時刻的輸出不僅決定于該時刻的輸入,而且和電路的原狀態(tài)有關。通常,它的輸出邏輯被同一個時鐘的上升沿(或者下降沿)控制。異步邏輯的輸出會由于不同信號到達最后一個組合邏輯單元傳輸延遲的不同而產生毛刺現象。而由于時鐘端口、清零和置位端口對毛刺信號十分敏感,任何一點毛刺都可能使系統(tǒng)出錯。因此,在IP Core的設計中盡可能使用同步電路。</p><p>  在此IP Core的硬件電路設計

91、中,輸入緩沖區(qū)的數據存儲和讀取、路由仲裁中的定時器以及交換陣列的數據交換都發(fā)生在時鐘上升沿,來實現信號的同步。因此,每個路由節(jié)點從數據包的接收到數據包的轉發(fā)大概需要3個時鐘的延遲。</p><p>  數據包的格式 </p><p>  圖3.2 數據包格式示意圖</p><p>  由于VirtexII Pro XU

92、P開發(fā)板總線PLB具有64位數據總線,支持32/64位主從操作。為了搭建不同規(guī)模的片上網絡快速原型系統(tǒng),應該盡量減少每個IP核占用的開發(fā)板資源。所以,此IP核的設計采用32位的數據包。在header中,包括源地址SA(Source Address)、目的地址DA(Destination Address)和數據包ID。其中數據包ID用來唯一標識某一數據包,以便狀態(tài)檢測模塊能夠記錄哪個數據包何時到達何時發(fā)出這個狀態(tài),這樣,在數據包的傳輸過程

93、中,就可以實時記錄一些狀態(tài)量,保證最后統(tǒng)計結果的有效性。源地址和目的地址則是被路由算法進行譯碼后判定路由路徑使用的。其余bit位則是我們要發(fā)送的源數據。本文所采用的數據包格式分為兩種,如圖3.2所示。用戶可根據其需要搭建的網絡大小選擇數據包格式,第一種數據包的SA、DA地址各占4個bit位,適用于4*4一下規(guī)模的片上網絡快速原型系統(tǒng),而第二種數據包格式的SA、DA地址各占8位,能夠支持此IP核搭建更大的片上網絡快速原型系統(tǒng)。</p

94、><p><b>  參數化設計</b></p><p>  隨著FPGA制造工藝的不斷進步,越來越多的應用可以在FPGA中實現,設計的可移植性成為十分重要的問題。用于FPGA設計的HDL語言具有很好的可移植性,但是進行完整的參數化設計才能充分利用芯片的資源,使設計具有更好的可移植。采用參數化的方法進行FPGA設計,可以為不同規(guī)模的芯片動態(tài)指定不同數目的運算單元。<

95、/p><p>  基于綜合工具的參數化是指應用綜合工具提供的參數化功能,通過VHDL語句完成對關鍵變量的參數化。綜合工具參數化的優(yōu)點在于,使用VHDL的參數化指令,無需要編寫第三方程序,操作方便,方法簡單,參數化代價較小。VHDL中有兩種參數化語句:GENERATE與GENERIC。設計的參數化需要對這兩個語句進行組合應用,GENERATE語句可以對語句進行批量執(zhí)行,但只節(jié)省了重復書寫相似語句的機械勞動,只有與GEN

96、ERIC語句結合之后才能完成對設計的參數化。</p><p>  本文中設計的路由器IP核采用完全參數化的設計,在VHDL程序中可對此IP核的Buffer深度,路由延時時間,數據包格式、路由策略進行選擇。然后,程序將會根據用戶的選擇配置此IP核,這樣用戶加載的IP核將會按照其需要的方式進行數據包的緩存,路由和延時。</p><p>  各功能模塊的設計與實現 </p

97、><p>  由圖3.1所示,本系統(tǒng)要實現各功能模塊分別是:總線命令轉換模塊、延時可變路由器模塊、路由狀態(tài)監(jiān)測模塊和用戶自定義邏輯。其中,延時可變路由器模塊是核心,因為其肩負著此路由器IP Core的基本功能-路由。下面將分別介紹這四個功能模塊的設計與實現。 </p><p><b>  總線命令轉換模塊</b></p><p>  圖3.

98、3 總線命令轉換框圖</p><p>  如圖3.3所示,總線命令轉換模塊是將Power PC的PLB總線命令轉化為延時可變路由模塊可識別的時序命令。</p><p>  如果需要CPU訪問自定義外設,有兩種方式,一是通過IO,二是通過總線。IO訪問比較簡單,它可以通過軟件模擬出各種時序的總線,但它的速度和易用性都不是很好,因此需要自定義IP,將自定義外設與總線連接起來。這時,總線接口就顯

99、示出了其特有的作用,它可以將PLB總線發(fā)送的時序命令存放在用戶可見的寄存器當中,因此用戶便能在軟件和硬件編程時通過寄存器對總線上傳輸的數據進行控制和處理。</p><p>  本模塊的工作流程如上所述:數據包通過PLB總線的數據總線傳送,此模塊接收到數據包后,首先將數據包暫存在EDK開發(fā)工具上軟硬件都可調用的寄存器slv_reg中,然后將寄存器中的32位數據變?yōu)橐环N通過請求應答傳送數據包的時序,這樣做的目的是便于

100、延時可變路由模塊的識別和處理。其中的請求應答是對延時可變路由模塊中的輸入緩沖區(qū)的請求和應答。當然,總線命令轉換模塊還可以根據延時可變路由模塊發(fā)送的時序命令得到相應的數據包存入寄存器中,繼而通過PLB總線傳給處理器PowerPC進行計算或處理。</p><p><b>  延時可變路由模塊</b></p><p>  延時可變路由模塊是此路由器IP核的核心所在,其負責數

101、據包的輸入緩存、路由算法的實現、仲裁中的優(yōu)先級確定等方面。如圖3.4所示,其端口配置為五個輸入端口(East、West、South、 North、Local)、五個輸出端口(East、West、South、North、Local)。功能實現主要有輸入緩沖區(qū)、路由仲裁、交換陣列三個模塊組成。其中的定時器和比較器結構簡單,是組成路由仲裁模塊的一部分。在此進行說明,具體實現中就不在贅述。定時器的設計采用異步清零同步使能的時序,同步使能能夠保證

102、各個輸入方向的計時開始時間都發(fā)生在時鐘的上升沿,這有利于比較器的比較結果準確有效。而異步清零可使計時器立刻停止計時,相比于同步清零來講,減少了一個周期的延遲。比較器的設計完全是采用異步,這樣做的目的也是為了減少路由仲裁模塊的延遲時間。</p><p>  圖3.4 路由器IP核的延時可變模塊框圖</p><p><b>  輸入緩沖區(qū)模塊</b></p>

103、<p>  圖3.5 緩沖區(qū)模塊示意圖</p><p>  如圖3.5所示,存儲RAM其實就是用戶可自定義緩存深度的一維數組。這個緩存深度用戶可以在VHDL程序中通過常量進行設定,數組中每個元素的大小為32位。在進行這個模塊的設計時,采用VHDL語言中最為熟悉的元件例化,方便此模塊在各個方向上輸入緩沖區(qū)模塊的重復利用。其中,req是上一級路由節(jié)點或處理器節(jié)點發(fā)送當前路由節(jié)點的請求信號,ack則是當前路

104、由節(jié)點反饋給上一級的應答信號。datain[32]是來自總線命令轉換模塊或者用戶自定義邏輯用于緩存的數據包。oreq是本模塊向下一個模塊-路由仲裁模塊發(fā)送的處理請求,oack是路由仲裁模塊的反饋信號。dataout[32]是從緩沖區(qū)中讀出的數據包。</p><p>  本文設計的IP Core采用存儲轉發(fā)的方式。為了減少緩存的資源開銷和提高路由器的轉發(fā)速度,此路由單元僅在輸入端口進行數據緩存。輸入緩沖區(qū)模塊主要用

105、于對發(fā)送到當前路由單元的數據包的緩存。具體的程序設計采用狀態(tài)機實現。如圖3.6所示,在接到請求信號時,如果緩沖區(qū)空閑,則發(fā)出應答信號至上一級路由節(jié)點,表示同意接受數據包。若緩沖區(qū)數據已滿,則等待直至緩沖區(qū)空閑時才發(fā)出應答信號。數據包存入緩沖區(qū)后向路由仲裁模塊發(fā)出請求信號,在獲得應答后,才將數據包發(fā)送到交換陣列模塊。</p><p>  圖3.6 輸入緩沖區(qū)狀態(tài)轉換圖</p><p><

106、;b>  路由仲裁模塊</b></p><p>  表3.1 路由仲裁模塊端口設置</p><p>  路由仲裁模塊是延時可變路由模塊的核心。該模塊的作用是通過路由算法控制交換陣列實現對數據包的轉發(fā),同時根據輸入端口的計時器進行優(yōu)先級的仲裁以保證等待時間長的數據包優(yōu)先發(fā)送。表3.1為路由仲裁模塊的端口示意圖,其中,req[0 to 4]和ack[0 to 4]分別是來自五

107、個方向上輸入緩沖區(qū)模塊的請求和對其的應答,head[0 to 4]是五個輸入方向上的數據包中的路由信息,而o_req[0 to 4]和o_ack[0 to 4]分別是五個方向上向下一個路由節(jié)點發(fā)出的請求信號和接收到的應答信號,output[0 to 4]則是五個輸入方向上發(fā)送至輸出端口的數據包。</p><p>  圖3.7 路由仲裁結構圖</p><p>  如圖3.7所示,路由仲裁模塊

108、首先檢查各個方向是否有請求信號,若某方向有請求信號,則說明有數據包要轉發(fā),此時,對發(fā)送來的包頭進行譯碼,譯碼完成后,對其進行路由算法的處理,同時將發(fā)送請求信號方向上的計時器觸發(fā),使其開始計時。然后,根據路由算法得出的輸出端口進行判斷,如果發(fā)生了幾個輸入方向上在同一輸出端口的競爭,那么就根據各個方向上的計時器來判定優(yōu)先級,計時器的時間長的優(yōu)先發(fā)送。如果沒有發(fā)生競爭,那么就直接發(fā)送數據包。在向輸出端口發(fā)送數據包之前,要先對其進行請求,這個請

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論