《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于龍芯IP核SoC芯片的FPGA驗證技術研究
基于龍芯IP核SoC芯片的FPGA驗證技術研究
來源:電子技術應用2010年第10期
謝 平
西昌學院, 四川 西昌 615000
摘要: 闡述了片上系統(SoC) 設計的發展情況和現場可編程門陣列(FPGA)的獨特優勢,為基于龍芯I號處理器IP核的SoC設計了FPGA驗證平臺,并介紹了怎樣利用該平臺進行軟硬件協同設計、SoC系統移植、IP核驗證和運行實時操作系統。
中圖分類號: TP206
文獻標識碼: B
文章編號: 0258-7998(2010)10-0128-04
Research of FPGA verification technology of SoC chip based on IP core of loongson processor
XIE Ping
Xichang University, Xichang 615000, China
Abstract: This paper introduced development of SoC design and unique advantages of FPGA, designed FPGA verification platform for SoC based on loongson-1 processor, presented how to progress hardware/software co-design, SoC transplant and verification of IP core, and how to run real time operating system.
Key words : IP core of loongson-1 processor; SoC; FPGA; verification technology

    片上系統SoC(Sytem on Chip),即是將整個系統集成在單個的芯片上[1]。與傳統的板級電路不同,SoC集成的完整系統一般包括系統級芯片控制邏輯模塊、微處理器/微控制器CPU內核模塊、數字信號處理器(DSP)模塊、嵌入的存儲器模塊、與外部進行通信的接口模塊、含有ADC/DAC的模擬前端模塊、電源和功耗管理模塊,是一個具備特定功能、服務于特定市場的軟件和硅集成電路的混合體(如WLAN基帶芯片、便攜式多媒體芯片、DVD播放機解碼芯片等)。
    在SoC的設計總時間中,系統驗證的時間約占70%以上。為縮短SoC的設計時間、提高設計質量,需要對驗證技術進行研究開發。軟硬件協同驗證方法與傳統的數字系統仿真驗證方法不同,軟硬件協同仿真驗證是針對軟件和硬件系統模塊進行的混合模擬仿真[2]。目前大多數公司提供的開發驗證系統(開發板)存在兩個不足:一是開發板的性能、規模難以根據特定的設計需求靈活、自由地調節;二是開發板的功能大多數只能進行軟件代碼的調試,即使ARM公司提供的開發平臺也只能調試部分硬件。而現場可編程門陣列(FPGA)作為集成電路設計技術的第三次重大進步的重要標志,可以使RTL綜合的結果直接運行在SoC芯片上,重用性及現場靈活性較好。因此,本文利用Altera公司的FPGA開發工具對基于國產龍芯I號處理器IP核的SoC芯片進行ASIC流片前的系統驗證,全實時方式運行協同設計所產生的硬件代碼和軟件代碼,構建一個可獨立運行、可現場監測的驗證平臺。
1 基于龍芯I號處理器IP核SoC芯片
 龍芯I號CPU IP核是兼顧通用及嵌入CPU特點的32位處理器內核,采用類MIPS Ⅲ指令集,具有7級流水線、32位整數單元和64位浮點單元;具有高度靈活的可配置性,方便集成的各種標準接口。圖1為龍芯I號CPU IP核可配置結構,用戶可根據自己的需求進行選擇配置,從而定制出最適合用戶應用的處理器結構。


    主要的可配置模塊包括:浮點部件、多媒體部件、內存管理、Cache、協處理器接口。浮點部件完全兼容MIPS的浮點指令集合,其相關的系統軟件完全符合ANSI/IEEE 754-1985二進制浮點運算標準。浮點部件主要包括浮點ALU部件和浮點乘法/除法部件,用戶可根據自己的實際應用選擇是否添加。媒體部件復用了MIPS浮點指令的Format域,并復用了浮點寄存器堆,媒體指令集基本對應了Intel SSE媒體指令集合的各種操作。圖2為基于龍芯I號CPU IP核的SoC系統架構。

    該SoC芯片支持通用MIPS32指令集,主頻可達266 MHz;內置MAC網絡,提供MII接口;存儲器接口,芯片同時支持SDRAM接口、NOR Flash/ROM和NAND Flash接口,并特置HPI接口可直接與VOIP CODEC芯片相連;提供豐富的其他外設接口支持,包括I2C接口、UART串口、SPI接口、AC97等接口設備。提供豐富的GPIO接口,能夠為“網絡+語音”以及工業控制應用提供高效的單芯片解決方案。
2 FPGA驗證平臺的設計
2.1 FPGA的開發流程

    FPGA的典型開發流程如圖3所示。在圖3中,邏輯仿真器主要有Modelsim、Verilog-XL等,邏輯綜合器主要有LeonardoSpectrum、Synplify Pro、FPGA Express/FPGA CompilerII等,FPGA廠家工具有Altera公司的Max+PlusII、QuartusII,Xilinx公司的Foundation ISE、Alliance等。設計輸入主要有原理圖輸入和HDL輸入兩種方式,絕大部分設計,FPGA和ASIC的工程師都使用HDL平臺。設計仿真主要包括功能仿真和網表仿真,設計仿真需要RTL代碼或綜合后的HDL網表和驗證程序,有時候還需要測試數據,測試數據可能是代碼編譯后的二進制文件或使用專門的工具采集的數據。布局布線工具利用綜合生成的網表、調用模塊的網表,根據布局布線目標,把設計翻譯成原始的目標工藝,最后得到生成編程比特流所需的數據文件。布局布線一般需要的輸入輸出與調用關系如圖4所示。布局布線目標包括所使用的FPGA具體型號等,約束條件包括管腳位置、管腳電平邏輯(LVTTL、LCMOS等)需要達到的時鐘頻率,有時包括部分模塊的布局、塊RAM的位置等。在一般設計中,只需要注意管腳位置和需要達到的時鐘頻率,邏輯端口與FPGA管腳的對應取決于PCB板的設計。

2.2 驗證平臺的系統設計
    本驗證平臺FPGA采用Altera公司的Cyclone II EP2C70,該器件采用了TSMC領先的90 nm低電介工藝技術生產;支持4個可編程鎖相環(PLL),提供靈活的時鐘管理和頻率合成能力;包含了150個18×18 bit乘法器,可以完成基本的DSP處理;高速外接存儲器接口支持SRAM、DRAM、DDR、DDR2以及QDRII SRAM;支持差分和單端I/O標準,包括接收速率805 Mb/s和發送速率640 Mb/s的LVDS、mini LVDS、LVPECL、差分HSTL和差分SSTL及處理器、ASSP和ASIC接口的64位66 MHz PCI和PCI-X;高達260 MHz工作頻率,真正的雙端口工作(1個讀和1個寫,2個讀或2個寫);與133 MHz PCI-X 1.0標準兼容;用戶最多可用引腳622個;高達402.5 MHz性能的分層時鐘網絡,多達16個全局時鐘線,快速串行配置時間小于100 ms;支持3.3 V、2.5 V或1.8 V多種電壓,可用于視頻、圖像處理(如MPEG4編碼和譯碼、視頻濾波)和無線基礎設備中。基于龍芯I號CPU IP核的SoC的驗證平臺結構如圖5所示。

 圖5 中,外圍電路的主要功能是驗證SoC 中各個接口IP 模塊能否與龍芯I號IP核、外部接口單元、硬件驅動軟件和實時操作系統協調高效地工作。由于接口(如USB接口、UART/IrDA 接口、SPI和LCD接口等)電路結構比較簡單,且很多資料都有介紹,在設計時,除了注意通用的設計規則和印制電路板(PCB) 布局布線外,沒有特別的要求。同時,為了便于分析各個被驗證的IP模塊在任意時刻的狀態, 將Cyclone II EP2C70的大多數I/O引腳都引出到PCB上,以方便SoC開發人員使用邏輯分析儀進行信號實時采集和分析,也可讓信號發生器產生一些特定信號以供系統調試使用。該開發系統在設計PCB時還特別注意了電磁干擾的屏蔽問題。
2.3 SoC到FPGA的系統移植
 使用Altera公司的FPGA開發工具QuartusII,將SoC向Cyclone II EP2C70(FPGA)移植的步驟如下:
 (1)對SoC進行修改,以適合FPGA的開發環境。修改子模塊配置、RAM、FIFO等,添加PLL對所需要的時鐘進行適當的分/倍頻,或提高時鐘信號的質量。
 (2)使用QuartusII內置綜合工具或專用綜合工具(如常見的Synplify_pro)單獨建Project,對RTL進行綜合,生成網表。時鐘工作頻率較高的,要寫綜合約束條件。
 (3)指定每一個輸入輸出信號對應的FPGA管腳和輸入輸出邏輯類型。
 (4)編譯生成的網表以生成sof文件,包括優化、適配、sof文件生成等分步驟。
 (5)進行靜態時序分析,檢查是否滿足預定的時鐘頻率要求,若不能滿足,則重新進行第(2)步。如果多次進行步驟(2)仍不能滿足時序要求,則需要根據關鍵路徑對RTL代碼進行修改。
    關鍵路徑是指延遲最大的路徑,該路徑的延遲限制了時鐘的最大工作頻率。該SoC芯片的最大工作頻率在266 MHz以上,與選用的FPGA Cyclone II EP2C70的總線時鐘速度相當。
3 VxWorks實時操作系統
    本文所設計的SoC硬件平臺上,最終將運行VxWorks操作系統,作為此次嵌入式SoC硬件平臺設計的軟件需求和最終的驗證目標。VxWorks是一個具有可伸縮、可裁減、高可靠性,同時適用于所有流行CPU平臺的實時操作系統[3]。可伸縮性指VxWorks提供了超過1 800個應用編程接口(API)供用戶自行選擇使用;可裁減性指用戶可以根據自己的應用需要對VxWorks進行配置,產生具有不同功能集的操作系統映像;可靠性指VxWorks可以提供非常安全的操作系統平臺。VxWorks的基本構成組件包括BSP(Board Support Package)、微內核Wind、網絡系統、文件系統及I/O系統。本文測試更關注于BSP、Wind以及I/O組件。BSP中包括硬件環境中CPU的初始化及系統各項硬件資源的安裝和配置,如RAM、Clock、網絡接口、中斷控制器等。微內核Wind是WindRiver公司自行開發的一種嵌入式操作系統內核,該內核具有標準的嵌入式實時操作系統的基本特征。
4 驗證平臺的檢驗
 將已經成熟的AMBA總線IP核的Verilog代碼通過Synplify 綜合,利用Altera公司的QUARTUS Ⅱ軟件作布局布線,燒入Cyclone II EP2C70,再用同樣的方式將新開發的EMI IP 核的Verilog 代碼燒入該FPGA,將其中的SDRAM控制器作為驗證示例,選取其中最簡單的訪問方式來驗證該平臺能否使用。上電后,首先要對所有內存區(bank) 預充電,經8個自刷新周期后需要設置訪問模式,即編程模式寄存器。以上三個過程要求如下:
 (1) 預充電命令的發出要求:在時鐘周期的上升沿處,CS、RAS、WE 為低,CAS 為高。
 (2) 自刷新命令的發出要求:在時鐘周期的上升沿處,CS、RAS、CAS 和CKE 保持低,WE為高。
 (3) 模式寄存器的激活:在時鐘的上升沿處,RAS、CAS、CS和WE為低。
   當要驗證各個IP模塊(包括INT 中斷控制器、DMA 控制器、LCD 控制器和AC97控制器等)之間的協同工作時,燒入的代碼較多,占用的FPGA資源也較多,再加上需要實時運行,例如播放PM3實時解碼過程中,時鐘至少要求60 MHz,需要工作的IP核有總線、DMA控制器、INT 中斷控制器、AC97 控制器等,因此在這種情況下,最好使用Multi PointSynthesis 的綜合流程和Timing driven的綜合與優化策略,并使用Logic-lock約束技術和人工干預布局布線,以達到預期目的。使用該平臺對所開發的SoC的各個模塊進行了驗證,并在10 MHz~70 MHz條件下與代碼前(后)仿真結果和SoC實測結果進行了比較,發現該FPGA 驗證平臺在多模塊、高速情況下,性能有所下降,如圖6所示,需進一步提高綜合和布局布線技術。

 本文設計了基于國產龍芯I號處理器IP核的SoC 的FPGA 驗證平臺,介紹了怎樣利用該平臺進行軟硬件協同設計、SoC系統移植、IP核驗證和運行實時操作系統。在電壓設計、模塊選用甚至處理器核的選用方面都考慮了升級擴展技術,可為其他SoC的驗證所借鑒。驗證結果表明,基于龍芯I號CPU IP核的SoC可成功運行Linux嵌入式程序及VxWorks。
參考文獻
[1] KUNKEL J. Embedded computing-toward IP-based system-level soc design[J]. Computer,2003,36(5):88-89.
[2] 嚴迎建,劉明業,片上系統設計中軟硬件協同驗證方法的研究[J].電子與信息學報,2005,27(9):317-321.
[3] Wind River System. VxWorks_BSP_R eference.www.windriver.com.2004.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 青青青国产在线 | 91成人免费 | 国产一级毛片视频在线! | 天天操天天操天天干 | 狠狠干一区| 在线观看黄色网 | 免费高清在线观看a网站 | 欧美黄区 | 深夜影院老司机69影院 | 九一香蕉视频污 | 亚洲成a人片在线网站 | 偷偷狠狠的日日日日 | 天天射天天摸 | 日日操天天 | 在线观看毛片视频 | 国产清纯91天堂在线观看 | 欧美日韩一区二区三区麻豆 | 亚洲欧美日韩在线播放 | 成人免费一级在线播放 | 日韩在线伦理片免费观看 | 日韩亚洲一区二区三区 | 中国野外性xxxx | 天天摸天天添 | 日本a在线视频 | 欧美日韩在线视频免费完整 | 欧美很黄视频在线观看 | 国产综合视频在线 | 亚洲午夜视频 | 国产成人影院 | 九九99| 中文字幕在线观 | 天天做人人爱夜夜爽2020 | 国产精品成人观看视频国产奇米 | 最近中文字幕高清视频2019 | 欧美在线导航 | 亚州视频一区二区 | 一级日韩 | 免费毛片视频网站 | 欧美8一10sex性hd| 免费国产一级特黄久久 | 久久永久免费视频 |