《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于FPGA的SPI總線在軟件接收機上的應用
基于FPGA的SPI總線在軟件接收機上的應用
現代電子技術
胡 剛,李 冰,陳 沖,潘樹國,王 浩
摘要: 在軟件接收機的研究中,為了實現在GPS或者北斗模式下基帶對射頻前端數據的采集,在Altera公司的CycloneⅢ系列FPGA器件上采用VERILOG語言編寫了SPI總線協議,完成了對射頻前端芯片GPS/北斗兩種工作模式的切換,
Abstract:
Key words :

摘要:在軟件接收機的研究中,為了實現在GPS或者北斗模式下基帶射頻前端數據的采集,在Altera公司的CycloneⅢ系列FPGA器件上采用VERILOG語言編寫了SPI總線協議,完成了對射頻前端芯片GPS/北斗兩種工作模式的切換,使基帶可以隨時獲得兩種模式下的數據。通過驗證,采集來的數據與期望的結果一致。同時為工程設計提供了一種原型,也為進一步的工程開發奠定了基礎。
關鍵詞:SPI總線協議;FPGA;射頻前端;基帶

    隨著現代技術的發展,SPI接口總線已經成為了一種標準的接口,由于協議實現簡單,并且I/O資源占用少,為此SPI總線的應用十分廣泛。目前,SPI接口的軟件擴展方法雖然簡單方便,但若用來通信,則速度受到限制。因此,我們采用ALTERA公司的FPGA器件設計SPI總線的通信接口,該總線接口具有高速、配置靈活等優點,大大地縮短了系統的開發周期。

1 SPI總線原理
1.1 SPI總線協議簡介
    SPI總線是一種全雙工同步串行接口,能夠實現微控制器與外設通信。它采用主從模式架構,支持多slave模式應用,并且只占用芯片上四個管腳,節省了芯片的引腳。
1.2 SPI總線接口
    SPI是一個環形總線結構,通常有4條線:串行時鐘(SCK)線、主機輸入/從機輸出(MISO)數據線,主機輸出/從機輸入(MOSI)數據線和低電平有效的從機選擇線(CS)。
    SPI總線在與外設進行數據交換時,可根據外設的工作要求,配置SCK的相位和極性,從而產生不同的數據格式。如果時鐘相位CPFIA=0,數據在時鐘脈沖的前沿被采樣;如果時鐘相位CPHA=1,數據在時鐘脈沖的后沿被采樣。如果時鐘的極性CPOL=0,串行數據的移位操作由時鐘的正脈沖觸發;如果時鐘的極性CPOL=1,串行數據的移位操作由時鐘的負脈沖觸發。因此,SPI主模塊和從模塊的時鐘相位和極性應該一致。

2 開發平臺介紹
    本文主要介紹在FPGA中實現基帶對射頻前端數據的采集,通過SPI總線實現對射頻前端模式的轉換。當射頻前端被配置為GPS模式時,采集到的數據來自GPS衛星;當被配置為北斗模式時,采集到的數據來自北斗衛星。本文選用的芯片為杭州中科微有限公司HZG09V2D和ALTERA公司Cyclone III系列中的EP3C40Q240C8。接口之問的連接關系如圖1所示。

a.jpg


    HZG09V2D是杭州中科微有限公司的一款射頻芯片,它是一款工作在L1頻段的多模式衛星導航射頻前端接收芯片,可支持L1頻段中國北斗二代、美國GPS、俄羅斯GLONASS、歐洲伽利略等多個導航系統。
    EP3C40Q240C8是Altera公司CycloneⅢ系列中的一款FPGA芯片,它前所未有地同時實現了低功耗、低成本和高性能。其中CycloneⅢFPGA在布局上提供豐富的存儲器和乘法器資源,并且所有體系結構都含有非常高效的互聯。

3 FPGA實現與調試結果
3.1 實現步驟
    首先使用ModelSim SE 6.2對所編寫的Verilog代碼進行編譯仿真,從而得到對功能的驗證。再用QuartusⅡ軟件進行編譯后,將生成的編程文件.sof文件通過JTAG下載到Altera公司CycloneⅢ系列EP3C40Q240C8運行,在數字示波器的輔助分析下都得到了正確的結果。
3.2 模塊設計
3.2.1 分頻模塊
    由于SPI總線協議要求的SCK時鐘頻率與FPGA時鐘頻率不一致,所以對基帶時鐘進行分頻。本文中,基帶時鐘頻率為40 MHz,SPI總線時鐘頻率為1 MHz,故需要進行40倍分頻。
3.2.2 發送數據模塊
    在片選信號拉低之前,時鐘信必須為低電平。當片選信號拉低后,SCK開始工作,然后寫八位地址,接著寫32位數據;發送操作結束后,片選信號拉高,SCK=0。代碼如下:
    b.jpg
         
3.2.3 接收數據模塊
    當片選拉低后,SCK=0,同時寫八位地址并且使SDA為高阻,再讀32位數據;當片選拉高時,CS=1,SCK=0,此外,在片選信號拉低之前,SCK必須為低電平。代碼如下:
    d.jpg
3.2.4 配置模塊
    配置模塊發送GPS/Compass模式配置命令給SPI功能模塊,從而實現一次完整的射頻前端工作模式配置。其中,射頻前端有5個與SPI相關的配置寄存器,具體模式配置命令如下:
    e.jpg
3.3 仿真結果
    在GPS模式下,實現了寄存器的讀寫時序,如圖2所示。

f.jpg


    在GPS/Compass模式下,實現了5個地址的寫操作和讀操作。在基帶處理中,將讀出來的數據與設定好的配置的數據進行對比,當結果一致后,就完成了一次正確的配置操作。如圖3所示。
3.4 RTL視圖
    RTL視圖由兩個模塊組成,分別為ModeSet和newspi,其中ModeSet模塊的功能是發送命令來配置射頻前端的模式,newspi模塊實現射頻前端和基帶之間具體的數據讀寫。如圖4所示。

g.jpg

4 結語
    在現代SPI總線得到了廣泛的應用,它能夠有效地與FPGA編程結合在一起,利用FPGA的靈活性,將大大減少了電子設計的開發周期。本文通過FPGA實現了射頻前端GPS/北斗模式的切換,為將來射頻前端多模設計奠定了基礎,并且可通過外部器件查看讀寫操作是否完成,從而實現了實時配置。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 伊人免费在线观看| 自慰被室友看见强行嗯啊男男| 老司机亚洲精品影视www| 女人18毛片a级毛片免费视频 | 别急慢慢来在线观看| 777奇米四色| 欧美性猛交xxxx乱大交蜜桃| 国产chinasex对白videos麻豆| 97精品人妻一区二区三区香蕉| 日本午夜免费福利视频| 亚洲欧美日韩中文字幕一区二区三区 | 一级做α爱过程免费视频| 欧洲精品码一区二区三区| 免费观看的毛片手机视频| 国产男女野战视频在线看| 天堂√在线中文最新版| 久久午夜福利无码1000合集| 波多野结衣一区二区免费视频| 国产亚洲欧美精品久久久| 91嫩草视频在线观看| 成人免费一区二区三区| 亚洲AV最新在线观看网址| 精品无码国产自产拍在线观看蜜 | 男同在线观看免费网站| 国产亚洲精品精品国产亚洲综合| 北条麻妃久久99精品| 天天躁夜夜躁狠狠躁2021西西 | 久久亚洲精精品中文字幕| 欧美黑人又粗又大久久久| 四虎国产精品永久在线看| 狠狠色先锋资源网| 在线视频www| 中文国产成人精品久久96| 曰批全过程免费视频在线观看无码| 亚洲黄在线观看| 老婆~我等不及了给我| 国产一级淫片免费播放电影| 亚洲情综合五月天| 国产精品亚洲精品日韩已方 | 午夜高清啪啪免费观看完整| 黄色性生活毛片|