《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 松耦合式可編程復雜SoC的設計實現
松耦合式可編程復雜SoC的設計實現
摘要: 隨著科技的發展,信號處理系統不僅要求多功能、高性能,而且要求信號處理系統的開發、生產周期短,可編程式專用處理器無疑是實現此目的的最好途徑。可編程專用處理器可分為松耦合式(協處理器方式,即MCU+協處理器)和緊耦合式(專用指令方式,即ASIP),前者較后者易于實現,應用較廣。本文就是介紹一款松耦合式可編程專用復雜SoC設計實現,選用LEON3處理器作為MCU,Speed處理器作為CoProcessor。
關鍵詞: SoPC SOC 可編程 StratixII
Abstract:
Key words :

      隨著科技的發展,信號處理系統不僅要求多功能、高性能,而且要求信號處理系統的開發、生產周期短,可編程式專用處理器無疑是實現此目的的最好途徑。可編程專用處理器可分為松耦合式(協處理器方式,即MCU+協處理器)和緊耦合式(專用指令方式,即ASIP),前者較后者易于實現,應用較廣。本文就是介紹一款松耦合式可編程專用復雜SoC設計實現,選用LEON3處理器作為MCU,Speed處理器作為CoProcessor。

  LEON3及Speed

  LEON3是由歐洲航天總局旗下的Gaisler Research開發、維護,目的是擺脫歐空局對美國航天級處理器的依賴。目前LEON3有三個版本(如表1),其中LEON3FT(LEON3 Fault-tolerant)只有歐空局內部成員可以使用。LEON3 (basic version)是遵循GNC GPL License的開源處理器,和SPARC V8兼容,采用7級Pipeline,硬件實現乘法、除法和乘累加功能,詳細特性請參考相關技術文檔[1]。

  表1 LEON3的不同版本

  

LEON3的不同版本

 

  目前,LEON3處理器因為開源、高性能、采用AMBA總線易擴展及軟件工具完備等因素,在國內外大學(如UCB、UCLA、Princeton University等)及科研院所的科研活動中得到廣泛應用。

  Speed(又名GA3816)是一款我國自主研發、處于同時代國際先進水平、可重構、可擴展的面向FFT、IFFT、FIR及匹配濾波應用的信號處理器,其內部結構如圖1所示,具有以下特點[2~4]:

  1)Speed在追求運算速度的同時兼顧通用性,通過設置64位控制字,器件內部資源可根據不同應用進行重組;

  2)可以實現FFT、IFFT、FFT-IFFT、FIR、滑窗卷積等運算,峰值運算能力達256億次浮點乘累加/秒;3)由160個實數浮點乘法累加運算器組成40個復數乘法累加器陣列,1Mbit的雙口SRAM,8個512×32bit系數ROM,兩個直角到極坐標轉換電路,兩個對數變換電路及其它輔助電路和控制電路。

  

Speed的內部模塊結構

 

  圖1 Speed的內部模塊結構

  Speed傳統的工作方式是通過片外FPGA輸入控制信號和待處理數據,這不僅增大了PCB板級布線、調試的工作量,而且FPGA不能用C等高級語言編程,算法改動起來不靈活。另一方面,隨著半導體工藝、微電子技術的發展,大規模的復雜SoC實現技術逐漸成熟,因此有必要將板級FPGA + Speed改進為芯片級MCU + Speed,這樣既能實現真正的可編程增大靈活性,又能加快用戶開發信號處理系統的速度。利用AHB實現通信

  為了實現可編程,需要將C/C++程序表達的信息經過編譯器、LEON3處理器、AHB總線、DMA控制器和必要的HDL代碼,轉化成Speed能夠識別的信息,進入Speed模塊中,如圖2。其中AHB總線是LEON3 Core和Speed Core結合的關鍵。

  

實現軟件可編程的過程

 

  圖2 實現軟件可編程的過程

 

AHB總線及AHB控制器

  AMBA總線是一種應用廣泛的層次化總線結構,有高速的AHB和低速APB之分,其中AHB是一種流水式高速總線結構,地址和數據總線相互獨立,可掛載16個Master和Slaver設備,常用來組織和連接高性能模塊,如處理器、DMA控制器、協處理器等[5~7]。AHB總線的核心是AHB控制器,主要包括仲裁器,譯碼器和多路復用器,其中仲裁器選擇AHB Master,而譯碼器選擇AHB Slave,實現寫數據WDATA和讀數據RDATA分開,如圖3所示。

  

AHB總線

 

  DMA控制器

  DMA是指設備直接對計算機存儲器進行讀寫操作的方式。這種方式下數據的讀寫無需CPU執行指令,也不經過CPU內部寄存器,而是利用系統的數據總線直接在源地址和目的地址之間傳送數據,達到極高的傳輸速率。DMA控制器一方面可以接管總線,即可以像CPU一樣視為總線的主設備,這是DMA與其它外設最根本的區別;另一方面,作為一個I/O器件,其DMA控制功能正式通過初始化編程來設置。當CPU對其寫入或讀出時,它又和其它的外設一樣成為總線的從屬設備。本文中為了實現DMA和AHB密切配合,即啟動DMA后大量原始數據通過AHB總線從數據存儲器進入Speed模塊,需要DMA控制器內部包含AHB Master模塊,如圖4所示。另外需要說明的是,LEON3為了實現AHB上設備的plug&play需要在0xFFFFF000-0xFFFFF800地址空間添加設備信息[8~9],所以DMA 控制器和Speed協處理器亦要如此,以便LEON3的軟硬件協調一致。在C語言實現DMA時,向DMA的控制寄存器寫入相應的信息,即可啟動DMA傳輸,如圖5所示。

  

DMA與AHB Master的關系

 

  圖4 DMA與AHB Master的關系

  

啟動DMA的C代碼示意

 

  圖5 啟動DMA的C代碼示意

  Speed的AHB接口

  為了使Speed可以順利接收LEON3傳送過來的控制字或DMA傳送過來的原始數據,需要在原有的Speed core模塊頂層添加AHB Slaver協議來接收AHB上傳送的數據,以及產生相應波形的HDL代碼來將C程序的信息生成Speed所能識別的信號波形進入Speed模塊內部,即從圖6中的控制字,轉化成圖7中的時序。

  

C語言描述的Speed控制字

 

  圖6 C語言描述的Speed控制字

  

Speed core所需的配置時序

 

  圖7 Speed core所需的配置時序

  同理于控制字,濾波系數和原始數據的輸入亦需要一定的HDL代碼來實現指令或數據向時序圖的轉化,其本質相當于譯碼,實現起來難度不大,此處就不再累述。Speed處理后數據通過狀態信號(zero_flag)下降沿觸發LEON3的中斷響應,實現向外部存儲器的輸出,此過程和數據輸入類似。

  

關鍵字:SOC 松耦合

 

 

    編程、編譯及仿真

 

  用戶在C編程時,只需要按照Speed所需的啟動方式,先設置控制字、再輸入濾波系數、然后啟動DMA輸入原始數據。值得注意的地方是,為了實現Speed的運算與DMA中原始數據輸入同步,需要在C代碼的不同指令間插入一定的延遲指令,此延遲間隔可根據軟硬件的響應速度來計算。

  Gaisler Research公司提供完整的LEON3開發套件,包括C代碼編譯器sparc-elf-gcc,大大方便了軟硬件開發和聯合調試。 將LEON3和Speed的SoC硬件HDL描述,及編譯后的二進制指令調入Modelsim進行軟件仿真,再利用FPGA進行硬件仿真,其結果如圖8、9、10所示。

  

從C語言控制字產生的配置時序

 

  圖8 從C語言控制字產生的配置時序

  

觸發中斷響應的zero

 

  圖9 觸發中斷響應的zero_flag信號

  

在Altera <a class=StratixII 2S180中的仿真結果" height="90" src="http://files.chinaaet.com/images/20110611/ecc89b3a-5288-49a4-af3f-a1355931aaee.jpg" width="465" />

 

  圖10 在Altera StratixII 2S180中的仿真結果

  結語

  本項目利用LEON3的高性能、易編程、開源等優點,開發了AHB總線接口和DMA控制器,實現了Speed專用信號處理器的軟件可編程,大大簡化了Speed用戶的開發過程。有待改進之處是,1)當前Speed可處理40bit數據,而Leon3是32bit,沒有最大限度發揮Speed的運算能力;2)如果在LEON3上運行RTEMS (Real Time Executive for MultiProcessor Systems) 操作系統,將進一步方便用戶擴展LEON3的利用價值。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 黄色性生活毛片| 999久久久免费精品国产| 日韩女同互慰专区| 亚洲国产综合自在线另类| 男人肌肌捅女人肌肌视频| 国产97在线视频| 香瓜七兄弟第二季| 国产欧美日韩另类精彩视频| 69xx免费观看视频| 在线看免费毛片| gav男人天堂| 就去吻亚洲精品欧美日韩在线| 久久99国产一区二区三区| 日韩字幕一中文在线综合| 亚洲av永久无码精品网站| 欧美成人免费观看久久| 亚洲福利视频一区| 特级毛片A级毛片免费播放| 免费观看性欧美大片无片| 精精国产xxxx视频在线播放| 国产乡下三级全黄三级bd| 麻豆国产尤物av尤物在线观看| 国产欧美日韩亚洲一区二区三区 | 欧美成人精品第一区二区三区| 亚洲精品自在在线观看| 狠狠色综合色综合网络| 免费一级毛片正在播放| 精品人无码一区二区三区| 又硬又粗又长又爽免费看| 美女奶口隐私免费视频网站 | 992tv国产人成在线观看| 国产真乱全集mangent| 色狠台湾色综合网站| 国产精品免费看久久久无码| 2021国产精品久久久久| 国产精品视频yy9099| 67pao强力打造高清免费| 国产网站麻豆精品视频| 337p欧洲大胆扒开图片| 国产精品第一区第27页| 51国产偷自视频区视频|