《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于Spartan3在SoPC上實現波形發生器
基于Spartan3在SoPC上實現波形發生器
摘要: SoPC可編程片上系統是一種特殊的嵌入式微處理器系統。首先,它是片上系統(SoC),即由單個芯片完成整個系統的主要邏輯功能;其次,它是可編程系統,以FPGA為硬件基礎,具有靈活的設計方式,可裁減、可擴充、可升級,并具備軟硬件系統在線可編程的功能。
Abstract:
Key words :

       引 言

  SoPC可編程片上系統是一種特殊的嵌入式微處理器系統。首先,它是片上系統(SoC),即由單個芯片完成整個系統的主要邏輯功能;其次,它是可編程系統,以FPGA為硬件基礎,具有靈活的設計方式,可裁減、可擴充、可升級,并具備軟硬件系統在線可編程的功能。

  IP(Intellectual Property)知識產權是SoC設計中非常重要的內容。資源復用(IP Reuse)是指在集成電路設計過程中,通過繼承、共享或購買所需的部分或全部知識產權內核(IP Core)進行設計、綜合和驗證,從而加速流片設計過程的設計方法。IP技術包含兩個方面的內容:IP核的生成和IP核的重用。本設計中采用VHDL語言,構建一個功能強大的完整DDS模塊,并根據IBM CoreConnect總線連接規范,在DDS模塊外面添加OPB(Onchip Peripheral Bus)片上外設總線接口,封裝為自定義IP,添加到硬件系統中。

  對于本設計來說,利用SoPC和IP的優勢是可以利用最少的元器件,創建一個易配置、易擴展、易修改并且易于繼

 

承使用的集成系統。該系統的創建是基于Xilinx公司提供的嵌入式開發工具包EDK(Embedded Development Kit)來實現的。EDK自帶了MicroBlaze軟核和PowerPC硬核微處理器及大量免費IP,有利于構建簡易系統。針對MicroBlaze及PowerPC提供的C語言編譯器,可使系統的功能實現更加簡易。對基于MicroBlaze的系統,MicroBlaze通過OPB總線與外設IP及外部存儲器控制接口相連接,通過LMB(Local Memory Bus)總線與FPGA片上塊存儲器BRAM(Block RAM)相連接,還可以通過EMC(External Memory Control)等存儲器控制IP擴展片外RAM或ROM。

       1 系統的架構

  本設計采用SoPC可編程片上系統的思想,利用Xilinx的Spartan3系列XC3S400 FPGA,通過EDK開發工具包的集成開發環境XPS(Xilinx Platform Studio)完成了FPGA硬件系統設計及基于此硬件系統的軟件開發。圖1是基于EDK的系統開發設計流程圖,設計分為硬件設計和軟件設計兩部分。硬件設計符合基于HDL硬件描述語言的EDA開發流程,是根據硬件系統合理使用總線IP和外設IP,并為各個實例定義地址范圍以及輸出端口和時鐘,經過綜合及布線后形成硬件配置文件。軟件設計與傳統的嵌入式軟件開發設計類似,是在硬件設計的基礎上根據處理器所支持的指令集以及編譯環境編寫程序代碼,然后對代碼編譯燒寫及調試。

      

EDK系統開發流程圖

                                                          圖1EDK系統開發流程圖

  該設計通過FPGA實現所有數字部分。系統的示意圖如圖2所示。

      

系統示意圖

                                                                 圖2系統示意圖

    

FPGA內部的硬件系統

&nbs p;                                                     圖3 FPGA內部的硬件系統



  

MicroBlaze處理器架構圖

                             

 

                        圖4 MicroBlaze處理器架構圖

  在FPGA內部,以MicroBlaze為控制核心,以DDS IP為波形發生功能實現核心,同時加入了其他的IP核,諸如調試用的MDM(Microprocessor Debug Module),用于與PC進行通信的UART(Universal Asynchronous Receiver & Transmitter)通用異步傳輸模塊,以及LCD顯示和4×4按鍵控制模塊,實現了系統的高度集成。FPGA硬件系統為數字系統產生數字量,外圍電路加上高速數模轉換器件DAC902,把波形數據轉換為模擬波形,即實現了完整的可編程片上系統的波形發生器。

       2 硬件系統的具體實現

  本設計以32位MicroBlaze軟核處理器為系統的核心部分,負責指令的執行。各種IP包括自主編寫的以及EDK自帶的,使用XPS下的ADD/Edit Cores工具,通過相應類型的總線連接到MicroBlaze上。其中UART、LCD、GPIO和自主編寫的DDS的IP都是通過OPB(Onchip Peripheral Bus)片上外設總線連接到處理器上的。程序存儲器RAM則是由FPGA內部的BRAM實現,并通過LMB(Local Memory Bus)本地存儲器總線與MicroBlaze相連接。自主編寫的IP與總線間的接口符合CoreConnect規范,實現了IP間的無縫結合,方便了數據的讀寫及時序控制。圖3給出了在FPGA內部由各種IP組合成的可編程硬件系統。

  硬件系統所包含的器件如圖3右部分所示。Microblaze_0是該系統的CPU,其中的debug_module為調試模塊,dlmb_cntlr和 ilmb_cntlr為片上BRAM控制器。Lmb_bram為片上BRAM,它通過LMB總線與 BRAM控制器相連,接受CPU的讀寫訪問。DDFS是為實現DDS編寫的IP模塊。RS232為UART模塊,用于與其他設備的通信以及程序調試。LCD IP負責128×64點陣液晶的顯示控制。 COL和ROW是例化后的GPIO接口,用于連接4×4鍵盤。

       2.1 MicroBlaze軟核處理器

  MicroBlaze是Xilinx提供的32位微處理器IP核,是哈佛結構的RISC微處理器,有較高的性能。它可以在性價比很高的SpartanIII系列FPGA上實現。EDK為其提供了MBGCC,支持C及C++語言。 MicroBlaze架構如圖4所示。

  該處理器含有32個32位的通用寄存器,2個專用寄存器,獨立的32位數據和指令總線,并與IBM的OPB總線完全兼容,具有32位的指令寬度支持三個操作數和兩種尋址模式,以及可選的硬件乘除法及浮點運算單元。

       2.2 DDS IP的實現

  數字直接頻率合成技術(Direct Digital Frequency Synthesis,簡稱DDS或DDFS)的基本原理是利用采樣定理,通過查表法產生波 形,其基本電路原理如圖5所示。
 


  DDS的頻率及步進容易控制,且合成的頻率取決于累加器及查找表的速度,采用FPGA可以很好的發揮這項優勢,獲得精細的步進及寬頻帶。使用HDL硬件描述語言,可以很方便的描述出DDS的FPGA硬件實例。在基本的DDS模塊上,添加相應的控制寄存器,通過向不同的寄存器內寫入相應的控制字,實現頻率以及幅度的可控性。最后通過IBM CoreConnect技術,在DDS模塊外面添加總線接口,作為自定義IP,成功地將其掛載到系統總線上,便可以方便的對其進行讀寫操作,實現DDS模塊與MicroBlaze的通信。圖6是從用戶邏輯到成為符合IBM CoreConnect技術規范的DDS IP的實現過程。

  DDS的VHDL代碼作為子模塊與opb_core_ssp0_ref.vhd模塊共同構成opb_DDS IP Core,其中ipif(IP InterFace )符合IBM CoreConnect規范,負責DDS邏輯與OPB總線之間的通信。在EDK中,通過Create/Import IP工具把opb_DDS添加到系統中,并為其分配地址,建立端口連接,之后就可以使用該IP了。DDS IP配合控制程序可產生各種波形,并對頻率、幅

 

度進行精確的控制。

       2.3 其余部分

  系統所需要的LCD顯示、DAC控制等模塊,均通過與生成DDS IP相同的方式,編寫為符合IBM CoreConnect總線規范的IP,以供使用。

  在硬件系統構建完畢之后,使用Platgen工具生成網表文件和Bitgen工具生成相應的硬件配置文件。若將工程導入到ISE軟件中,可以進行優化設置,還可以將工程導入到其他的綜合工具如Synplify Pro進行實現。IP核的編寫是在ISE中完成的。無論對于整個系統還是一個單獨的IP,都可以利用Modelsim工具進行行為及時序仿真。最后,為此系統描寫XBD(Xilinx Board Description)板級描述文件,通過此文件,EDK可以通過BSB(Base System Builder)模式自動生成基本的硬件系統,并對所添加的端口進行約束,這樣可以實現資源的繼承性使用。
 

DDS原理硬件實現圖

                                                             圖5 DDS原理硬件實現圖

        

DDS IP的實現方式示意圖

                                                             圖6 DDS IP的實現方式示意圖

       3 軟件系統的實現

  EDK提供了免費的GNU C Compiler,可以支持標準C。同時,EDK為多種IP以API的形式提供了驅動函數,有利于程序的開發。XPS所集成的軟件工程管理工具允許在一個硬件平臺上同時開發多個軟件工程。完成軟件代碼的編寫后,使用EDK集成的XMD和GDB調試器對代碼進行仿真和調試,也可以配合ChipScope(片內邏輯分析儀)進行硬件及軟件的協同調試。XMD通過MDM模塊和JTAG口連接目標板上的CPU,GDB可以對程序進行單步調試或斷點設 置。針對本設計及應用,編寫了系統控制及液晶顯示程序。程序編譯后生成為elf文件,通過Update bitstream工具把程序同硬件配置文件合成為Download.bit文件,把此文件下載到目標板后,FPGA首先根據硬件配置信息建立硬件系統,并把程序代碼映射到片內BRAM中,最后啟動MicroBlaze,運行程序。



       4 總結

  本系統基于FPGA,以MicroBlaze為核心,加入具有良好特性的DDS IP,并輔以必要的外圍電路,構成了高度集成化的系統。另外,SoPC系統的柔性配置,使得可以基于此系統擴展片外存儲器,并可以實現RTOS操作系統的移植,以實現更豐富的功能和完成更復雜的任務。

參考文獻
1 徐欣,盧啟中,于紅旗. 基于FPGA的嵌入式系統設計. 北京:機械工業出版社,2004
2 高吉祥,丁文霞. 電子技術基礎實驗課程與設計. 北京:電子工業出版社,2002
3 Xilinx Software tools User Guide
 

 

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国产亚洲欧美日韩精品| 老牛国产精品一区的观看方式| 这里只有精品在线播放| 很黄很黄激情成人| 欧美福利一区二区三区| 亚洲丰满少妇videoshd| 最近中文字幕日韩精品| 国语自产精品视频在线看8查询8| 久久久国际精品| 欧美精品一卡二卡| 亚洲国产精品热久久| 亚洲欧洲日夜超级视频| 老鸭窝91久久精品色噜噜导演| 夜夜嗨av一区二区三区四季av| 欧美日本国产| 欧美日一区二区三区在线观看国产免| 可以看av的网站久久看| 久久久亚洲影院你懂的| 午夜精品影院在线观看| 制服诱惑一区二区| 国产一区二区中文字幕免费看| 欧美日韩另类视频| 国产精品白丝黑袜喷水久久久| 美女视频黄a大片欧美| 欧美一区日韩一区| 国产精品va在线播放我和闺蜜| 亚洲人成在线免费观看| 亚洲国产日韩精品| 亚洲图片自拍偷拍| 亚洲欧美日韩在线观看a三区| 久久国产视频网| 亚洲综合欧美| 午夜精品久久99蜜桃的功能介绍| 一区二区三区高清不卡| 国产精品成人一区| 欧美片在线观看| 亚洲全部视频| 国产午夜精品全部视频在线播放| 亚洲国产欧美一区二区三区久久| 激情综合色综合久久综合| 欧美日韩国产bt| 在线看日韩欧美| 亚洲精品之草原avav久久| 日韩网站在线看片你懂的| 激情久久久久久久| 国产欧美日韩另类视频免费观看| 亚洲精品永久免费| 久久久夜色精品亚洲| 欧美成人一区二区三区在线观看| 久久久之久亚州精品露出| 国产欧美日韩另类视频免费观看| 欧美/亚洲一区| 亚洲第一精品影视| 午夜精品久久久久久久男人的天堂| 日韩天堂在线观看| 国产精品久久久久久久久果冻传媒| 中文亚洲字幕| 国产女同一区二区| 国产乱码精品一区二区三| 久久免费视频网站| 欧美一级大片在线观看| 国产麻豆午夜三级精品| 亚洲视频中文| 性色一区二区三区| 免费不卡在线观看| 男人的天堂亚洲| 亚洲美女在线看| 亚洲激情小视频| 欧美激情按摩| 在线观看不卡| 女女同性精品视频| 国产精品青草久久久久福利99| 亚洲一区999| 久久久999国产| 久久嫩草精品久久久精品一| 裸体丰满少妇做受久久99精品| 欧美日韩美女在线观看| a91a精品视频在线观看| 毛片一区二区三区| 亚洲欧美日韩国产| 久久影院午夜论| 最新国产の精品合集bt伙计| 国产精品人人做人人爽人人添| 亚洲精品乱码久久久久久蜜桃麻豆| 最新国产拍偷乱拍精品| 欧美日本韩国在线| 噜噜噜91成人网| 在线亚洲免费视频| 欧美日本免费| 亚洲一区精品在线| 国产精品成人观看视频国产奇米| 亚洲无亚洲人成网站77777| 国产精品久久久久国产a级| 亚洲午夜一级| 国产精品美女久久久| 国产亚洲一二三区| 亚洲特级片在线| 在线看日韩欧美| 伊人精品成人久久综合软件| 国产乱码精品一区二区三区五月婷| 欧美色网一区二区| 欧美另类高清视频在线| 免费毛片一区二区三区久久久| 亚洲精品免费看| 欧美午夜电影完整版| 亚洲国产精选| 久久福利视频导航| 欧美日本一道本在线视频| 欧美1级日本1级| 韩国欧美一区| 亚洲综合视频在线| 国产欧美日韩一区二区三区在线| 99精品热视频| 9l视频自拍蝌蚪9l视频成人| 香港成人在线视频| 黄色亚洲大片免费在线观看| 国产精品色在线| 欧美黑人国产人伦爽爽爽| 在线免费高清一区二区三区| 国产欧美韩国高清| 久久久精品tv| 久久九九久精品国产免费直播| 免费成人高清| 欧美日韩综合精品| 永久免费毛片在线播放不卡| 欧美一区二区三区免费看| 久热综合在线亚洲精品| 欧美揉bbbbb揉bbbbb| 亚洲一区二区高清| 欧美激情欧美激情在线五月| 亚洲私人黄色宅男| 亚洲人成7777| 欧美激情一区二区三区不卡| 欧美精品97| 久久国产精品高清| 亚洲主播在线观看| 欧美日韩国产综合视频在线观看| 国产精品欧美久久久久无广告| 亚洲私人影院| 欧美日韩在线三区| 亚洲毛片在线免费观看| 狠狠色综合色综合网络| 亚洲精品少妇网址| 亚洲欧美另类久久久精品2019| 亚洲国产精品欧美一二99| 久久精品一区二区国产| 亚洲一级网站| 好吊成人免视频| 亚洲激情成人| 在线看视频不卡| 性色av一区二区怡红| 欧美日韩综合网| 最新国产精品拍自在线播放| 欧美精品久久久久久久久老牛影院| 精品电影在线观看| 欧美高清视频一区二区三区在线观看| 欧美成人免费一级人片100| av成人福利| 欧美日韩一区在线| 一区二区视频免费完整版观看| 久久久久久久综合日本| 欧美日韩午夜在线| 国产午夜精品理论片a级大结局| 国产精品久久久久天堂| 国产精品主播| 国际精品欧美精品| 久久青草欧美一区二区三区| 欧美国产激情| 亚洲精品久久嫩草网站秘色| 国产精品免费区二区三区观看| 欧美黄色网络| 欧美激情一区二区三区不卡| 一本色道**综合亚洲精品蜜桃冫| 亚洲视频成人| 国产欧美日韩在线播放| 亚洲一区二区三区成人在线视频精品| 亚洲视频在线观看| 亚洲在线黄色| 国产偷国产偷精品高清尤物| 日韩午夜av电影| 国产日韩欧美成人| 亚洲精品视频在线看| 久久激情综合网| 黄色国产精品一区二区三区| 亚洲欧美国产va在线影院| 亚洲激情啪啪| 亚洲免费人成在线视频观看| 亚洲精品社区| 欧美另类久久久品| 在线观看日韩| 亚洲欧美日韩久久精品| 欧美日韩精品欧美日韩精品| 香蕉乱码成人久久天堂爱免费| 一区二区不卡在线视频 午夜欧美不卡在| 国产精品欧美经典| 99re6热在线精品视频播放速度| 欧美影院成年免费版| 午夜精品在线看| 欧美色综合网| 女同性一区二区三区人了人一| 欧美护士18xxxxhd| 欧美午夜精品一区二区三区| 中文一区二区| 国产三区精品| 国产麻豆一精品一av一免费| 亚洲免费视频观看| 久久国产综合精品| 男女视频一区二区| 男女av一区三区二区色多| 国产麻豆日韩| 久久久亚洲综合| 欧美美女bbbb| 亚洲午夜精品| 国产亚洲欧洲一区高清在线观看| 欧美日韩国产专区| 欧美视频导航| 国产在线播精品第三| 午夜在线精品| 国产日韩精品一区二区| 国产一区二区电影在线观看| 国产精品麻豆va在线播放| 亚洲欧美日韩精品一区二区| 欧美a级一区二区| 亚洲欧美日本精品| 狠狠色丁香婷婷综合影院| 欧美黄色视屏| 一区福利视频| 国产精品白丝av嫩草影院| 欧美日韩mv| 亚洲国产免费| 亚洲人成在线观看一区二区| 久久久久久伊人| 亚洲国产精品va| 亚洲国产日韩欧美在线图片| 国产精品久久久久9999| 久久深夜福利免费观看| 国产日韩av在线播放| 国产免费观看久久| 欧美岛国激情| 久久成人一区二区| 亚洲国产精品黑人久久久| 欧美一级在线亚洲天堂| 国产午夜精品视频免费不卡69堂| 国产精品视频一| 噜噜噜91成人网| 亚洲午夜激情网页| 欧美日本国产视频| 欧美a级在线| 亚洲激情第一区| 国产精品嫩草久久久久| 国产日韩1区| 美女视频黄免费的久久| 亚洲欧洲精品一区| 久久综合网络一区二区| 亚洲欧美日韩一区二区三区在线观看| 国产精品日韩欧美一区二区| 久久久久88色偷偷免费| 国产亚洲成av人片在线观看桃| 国产精品久久亚洲7777| 国产精品一区二区久久| 在线免费观看视频一区| 午夜精品久久久久久久99樱桃| 一区二区日韩精品| 一区二区三区三区在线| 国产中文一区二区三区| 在线一区二区三区做爰视频网站| 欧美二区不卡| 国产日韩欧美a| 国产亚洲福利| 国产精品亚洲第一区在线暖暖韩国| 亚洲欧洲精品成人久久奇米网| 国产亚洲视频在线| 亚洲一区二区三区精品视频| 亚洲黄色视屏| 国产精品久久一区二区三区| 午夜国产精品影院在线观看| 欧美午夜女人视频在线| 国产精品午夜电影| 欧美日韩亚洲91| 小嫩嫩精品导航| 久久国产精品一区二区三区四区| 久久久精品国产免大香伊| 欧美aa国产视频| 国产一区再线| 99热这里只有精品8| 久久综合中文字幕| 欧美精品在线网站| 在线观看日韩av先锋影音电影院| 亚洲无亚洲人成网站77777| 欧美日韩一区二区三区在线| 亚洲国产日韩欧美一区二区三区| 国产精品日本欧美一区二区三区| 欧美日韩综合不卡| 午夜亚洲激情| 黑人巨大精品欧美一区二区小视频| 久久一本综合频道| 亚洲黄页视频免费观看| 免费精品视频| **欧美日韩vr在线| 欧美喷潮久久久xxxxx| 欧美精品在线观看| 欧美日韩卡一卡二| 在线观看成人av电影| 亚洲精品视频中文字幕| 久久riav二区三区| 一二美女精品欧洲| 免费不卡在线视频| 亚洲国产影院| 欧美三级免费| 免费一级欧美在线大片| 欧美一区二区三区男人的天堂| 亚洲无限乱码一二三四麻| 亚洲国产日韩欧美综合久久| 欧美日韩精品在线视频| 欧美丝袜一区二区| 国产亚洲日本欧美韩国| 亚洲欧美福利一区二区| 韩日欧美一区二区| 久久综合色88| 欧美h视频在线| 国产精品毛片a∨一区二区三区|国| 亚洲区一区二| 国产精品欧美激情| 亚洲欧美三级在线| 激情成人在线视频| 久久久久久久久久久久久9999| 宅男噜噜噜66一区二区66| 午夜视频一区在线观看|