松耦合式可編程復(fù)雜SoC的設(shè)計(jì)實(shí)現(xiàn)
隨著科技的發(fā)展,信號(hào)處理系統(tǒng)不僅要求多功能、高性能,而且要求信號(hào)處理系統(tǒng)的開(kāi)發(fā)、生產(chǎn)周期短,可編程式專(zhuān)用處理器無(wú)疑是實(shí)現(xiàn)此目的的最好途徑。可編程專(zhuān)用處理器可分為松耦合式(協(xié)處理器方式,即MCU+協(xié)處理器)和緊耦合式(專(zhuān)用指令方式,即ASIP),前者較后者易于實(shí)現(xiàn),應(yīng)用較廣。本文就是介紹一款松耦合式可編程專(zhuān)用復(fù)雜SoC設(shè)計(jì)實(shí)現(xiàn),選用LEON3處理器作為MCU,Speed處理器作為CoProcessor。
本文引用地址:http://www.ex-cimer.com/article/150604.htmLEON3及Speed
LEON3是由歐洲航天總局旗下的Gaisler Research開(kāi)發(fā)、維護(hù),目的是擺脫歐空局對(duì)美國(guó)航天級(jí)處理器的依賴(lài)。目前LEON3有三個(gè)版本(如表1),其中LEON3FT(LEON3 Fault-tolerant)只有歐空局內(nèi)部成員可以使用。LEON3 (basic version)是遵循GNC GPL License的開(kāi)源處理器,和SPARC V8兼容,采用7級(jí)Pipeline,硬件實(shí)現(xiàn)乘法、除法和乘累加功能,詳細(xì)特性請(qǐng)參考相關(guān)技術(shù)文檔[1]。
表1 LEON3的不同版本
目前,LEON3處理器因?yàn)殚_(kāi)源、高性能、采用AMBA總線易擴(kuò)展及軟件工具完備等因素,在國(guó)內(nèi)外大學(xué)(如UCB、UCLA、Princeton University等)及科研院所的科研活動(dòng)中得到廣泛應(yīng)用。
Speed(又名GA3816)是一款我國(guó)自主研發(fā)、處于同時(shí)代國(guó)際先進(jìn)水平、可重構(gòu)、可擴(kuò)展的面向FFT、IFFT、FIR及匹配濾波應(yīng)用的信號(hào)處理器,其內(nèi)部結(jié)構(gòu)如圖1所示,具有以下特點(diǎn)[2~4]:
1)Speed在追求運(yùn)算速度的同時(shí)兼顧通用性,通過(guò)設(shè)置64位控制字,器件內(nèi)部資源可根據(jù)不同應(yīng)用進(jìn)行重組;
2)可以實(shí)現(xiàn)FFT、IFFT、FFT-IFFT、FIR、滑窗卷積等運(yùn)算,峰值運(yùn)算能力達(dá)256億次浮點(diǎn)乘累加/秒;3)由160個(gè)實(shí)數(shù)浮點(diǎn)乘法累加運(yùn)算器組成40個(gè)復(fù)數(shù)乘法累加器陣列,1Mbit的雙口SRAM,8個(gè)512×32bit系數(shù)ROM,兩個(gè)直角到極坐標(biāo)轉(zhuǎn)換電路,兩個(gè)對(duì)數(shù)變換電路及其它輔助電路和控制電路。
圖1 Speed的內(nèi)部模塊結(jié)構(gòu)
Speed傳統(tǒng)的工作方式是通過(guò)片外FPGA輸入控制信號(hào)和待處理數(shù)據(jù),這不僅增大了PCB板級(jí)布線、調(diào)試的工作量,而且FPGA不能用C等高級(jí)語(yǔ)言編程,算法改動(dòng)起來(lái)不靈活。另一方面,隨著半導(dǎo)體工藝、微電子技術(shù)的發(fā)展,大規(guī)模的復(fù)雜SoC實(shí)現(xiàn)技術(shù)逐漸成熟,因此有必要將板級(jí)FPGA + Speed改進(jìn)為芯片級(jí)MCU + Speed,這樣既能實(shí)現(xiàn)真正的可編程增大靈活性,又能加快用戶(hù)開(kāi)發(fā)信號(hào)處理系統(tǒng)的速度。利用AHB實(shí)現(xiàn)通信
為了實(shí)現(xiàn)可編程,需要將C/C++程序表達(dá)的信息經(jīng)過(guò)編譯器、LEON3處理器、AHB總線、DMA控制器和必要的HDL代碼,轉(zhuǎn)化成Speed能夠識(shí)別的信息,進(jìn)入Speed模塊中,如圖2。其中AHB總線是LEON3 Core和Speed Core結(jié)合的關(guān)鍵。
圖2 實(shí)現(xiàn)軟件可編程的過(guò)程
評(píng)論