999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于FPGA的SOC設計與實現

2014-03-16 09:21:52黃海生
電子設計工程 2014年9期
關鍵詞:調試系統設計

曹 蓓,黃海生

(西安郵電大學 陜西 西安 710061)

近年來,SOC[1]技術得到了快速的發展,逐漸成為微電子行業的主流。SOC稱為系統級芯片,是一個有專用目標的集成電路,能集成數字電路、硬件專用電路、存儲器、微處理器等多種異構模塊,實現多個復雜的應用功能,具有速度快、集成度高、功耗低、開發周期短等優點。

隨著集成電路速度的加快和設計復雜性提高,新的技術不斷被引進,國內外相繼開展了SOC技術及器件的研究,其中一個顯著的特點就是將SOC的可靠性和低成本與FPGA的靈活性等優勢結合起來[2],在業界中知名的FPGA芯片公司中,如Altera公司的CycloneⅤ和ArriaⅤ系列[3],Xilinx公司的 Zynp系列[4],Actel公司的 M7A3P1000,其都內嵌了 ARM微處理器,在邏輯設計、片上系統中都有廣泛的應用。

本文選用Actel公司的FPGA器件,型號為M7A3P1000,采用該器件對SOC進行設計驗證。該器件采用Flash結構,相比于采用靜態隨機存儲器 (SRAM)結構的Altera和Xilinx公司的FPGA器件,其下載的程序在掉電后不丟失,因此不需專用的配置芯片,故在PCB設計中可降低設計的復雜度,減少面積的開銷。此外,該器件所具有的的加密功能,可有效的保護知識產權。設計中,首先在該芯片中搭建基于ARM7的SOC系統,最后用兩種方法驗證該SOC系統的正確性:一是用該系統對片外存儲器進行擦寫操作;二是用該系統測試用戶定制邏輯外設。

1 系統原理

在SOC設計中,常見的架構都是以微處理器或數字信號處理器(DSP)為中心,加上存儲器,外設等,再通過片上總線把處理器和外設進行互連,本設計采用的FPGA型號為M7A3P1000芯片,因其內嵌一個基于AMBA總線架構、且完全兼容ARM7微處理器[5],故可以在非常低的功耗下安全、可靠地運行。上述的AMBA總線架構,是ARM公司設計的一種高性能嵌入式系統總線的標準,因其具有的高速度、低功耗等特點,故其在SOC設計中已被廣泛采用,典型的基于AMBA架構的SOC核心部分如圖1。

由圖1中可看出,AMBA規范中定義了兩種不同類型的總線[6]:先進的高速總線(AHB)、先進的系統總線(ASB)和先進的外圍總線(APB)。其中AHB適用于高性能和高時鐘頻率的系統模塊,主要用于高性能和高吞吐量設備之間的連接,如片上存儲器、DSP、直接存儲器訪問(DMA)、高速片外存儲器控制器 (該部件用于連接片外存儲器Flash和SRAM)等設備;ASB和AHB屬同一功能類型總線,只不過AHB總線是ASB總線的升級版,增強了對性能、綜合及時序驗證的支持;APB總線主要用于連接低速、低帶寬的外圍器件,如集成電路總線(IIC)接口、計數器(Timer),通用輸入輸出(GPIO)、通用異步收發器(UART)等。下文將以此架構,進行SOC設計。

2 系統設計

2.1 SOC設計流程

采用Actel公司的Libero IDE 8.6集成開發環境,設計基于ARM7的SOC。SOC包括硬件和軟件設計兩部分,在硬件設計中,一般將系統經行分模塊設計,之后針對各模塊功能,逐個進行功能驗證,待各模塊功能準確后,依據總線架構,組成要設計的目標系統,最后通過軟硬件協同調試,證明系統功能的完備性。其SOC設計的主要流程[7]如圖2。

圖2 SOC設計的主要流程Fig.2 Themain process in SOC design

在圖2顯示的SOC設計流程中,若要設計一個模塊或系統,首先對其進行功能/需求分析,下來針對虛線框內的步驟 , 其 中 步 驟 HDL-Editor,User-Testbench,Modelsim Simulator,可用于模塊的設計、功能仿真,若再增加步驟Synthesis,Compile,Layout,Programming Genetation, 可對所設計的模塊進行實際驗證,待各模塊功能驗證準確后,就可以依據指定的互連結構組成系統,然后結合相應的軟件代碼,進行系統功能調試、驗證。

2.2 SOC設計搭建

本文采用在Libero IDE 8.6集成開發環境中內嵌的Coreconsole軟件[8],搭建基于ARM7的SOC系統,搭建的系統如圖3所示。

如圖3所示,在Coreconsole環境中搭建的系統,包括總線,微處理器,外圍器件,以及驅動和頂層端口,其中1)CoreMP7:32/16位精簡指令集架構處理器、支持32位ARM指令和16位Thumb指令、三級流水線,32位即4G尋址范圍等;2)CoreMP7Bridge:橋接器,連接 CoreMP7 和 CoreAHB,它將CoreMP7處理器發出的信號轉換成一個適合AHB總線連接的信號,且包含一組聯合測試行動小組(JTAG)信號接口,JTAG接口用于下載程序和軟件調試。3)CoreAHBLite:先進的高速總線,一般連接DMA、DSP、SRAM等設備。包含16個AHB從器件節點,每個從器件依次占有256MB地址空間,在本設計中,片外的Flash和SRAM分別連接在節點0和節點1上。2.1部分中用到的片外Flash就是通過外部存儲器接口連 接 在 節 點0上 , 故 其 基 地 址 是 0x00000000;4)CoreMemCtrl:外部存儲器控制器,用于連接片上系統與外部寄 存 器 , 如 對 片 外Flash、SRAM進 行 讀 寫 訪 問 ;5)CoreAHBtoAPB: 橋接器。 連接 CoreAHB和 CoreAPB;6)CoreAPB:先進的外圍總線,一般連接 UART、GPIO、IIC等外設。包含16個APB從器件節點,每個從器件依次占有16MB地址空間,地址計算公式是:物理地址=基地址+偏移地址。7)驅動和頂層端口包括:16 MHz系統時鐘SYSCLK;系統低電平復位端口NSYSRESET,程序下載和調試端口JTAG,外部存儲器連接端口ExternalMomoryInterface,串口通信接口等,圖中底色為灰色的是一般的輸入輸出(PIO)模塊,該模塊的設計和驗證將在3.2部分詳細說明。至此,文中介紹了基于AMBA總線架構的SOC中涉及到的時鐘、復位、總線、微處理器、外部存儲器及外圍輸入輸出端口,即最小系統框架,在圖3中清晰地確定了SOC系統的互連結構,實現了各模塊之間的通信功能。

圖3 基于ARM7的SOC系統Fig.3 The SOC system based on ARM7

3 實際驗證

下面將對所搭建的SOC系統進行驗證,通過對系統翻譯、編譯、綜合、分配管腳、生成下載文件,最后將下載文件燒寫到FPGA片中。為驗證該系統的準確性,本設計采用兩種方法對其進行測試驗證,詳細過程見3.1和3.2部分。

3.1 搭建的系統對片外Flash的擦寫操作

本測試主要是在已經搭建好的SOC系統的基礎上,在外部存儲器控制器接口連接外部存儲器Flash,通過能否對Flash進行正常的擦寫操作來驗證系統的準確性,測試選用的片外Flash芯片型號Numonyx公司是28F640J3D,它是64M的16位只讀存儲器,分配的基地址是0x00000000,由于該芯片16位模式的訪問特性,地址線0位拉低不予鏈接,其余地址線管腳依次連接到頂層外部寄存器控制器的地址端口。

FS2是一款集合了大量指令和可用軟件、用以調試基于ARM的SOC系統內核的工具,利用該工具對片外Flash進行配置和擦寫操作,來驗證系統的準確性。測試首先對片外Flash進行配置,進而對指定存儲空間進行擦除操作,然后對該存儲空間進行寫操作,最后觀察此存儲空間中的數據,具體過程如圖4所示。

圖4 片外Flash的擦寫演示過程Fig.4 Wipe the demonstration process of outside Flash

在圖4中顯示的是FS2工具的用戶界面,設計中用到的八條指令,分別是:1>、2>、3>、......8>,其中指令 1>、2>用來配置片外Flash芯片;指令3>用來選擇將要擦寫的存儲空間,由圖中可知,本設計中要進行的讀寫操作的存儲空間是0x00000000-0x003FFFFF;指令4>用來對Flash指定的存儲空間進行擦除操作;指令5>用來把已經準備好的二進制文件寫到上述存儲空間中,設計中使用的二進制文件名是QUICK.HEX;指令6>是用來顯示指定存儲空間中的內容,從圖中可看出,寫到存儲空間0x00000000-0x0000003F的內容是 18、F0、9F......、12、E3;指令 7>執行對上述存儲空間寫入的數據的擦除操作;指令8>顯示上述存儲單元擦除后的內容。

通過對上述過程的分析可知,所搭建的SOC系統可準確實現片外Flash的擦寫操作,進而說明了該系統的準確性。

3.2 搭建的系統對外設接口的讀寫操作

本測試在遵循ARM7先進外圍總線APB的讀寫時序的前提下,定制用戶邏輯外設PIO,通過該系統對PIO接口進行讀寫操作來進一步驗證設計的準確,驗證中的用到的APB總線的讀寫時序如圖5。

下面將主要遵循系統中先進的外圍總線APB的讀寫時序,首先采用硬件描述語言和C代碼,定制八位的用戶邏輯外設PIO,然后將PIO的輸入端口接到開關Switch0-Switch7,輸出端口接到八個發光二極管Led0-Led7,通過軟硬件調試,使八位開關的輸入電平顯示到八個發光二極管上,以此來進一步驗證設計中搭建的SOC系統的準確,針對上述過程及要求,為了更直觀地展示驗證結果,制作了簡單的實驗板,當開關鍵在高電平時,發光二極管變亮,否則,發光二極管不亮。其中定制用戶邏輯外設的主要步驟如下:

1)規劃元件的硬件功能;

2)使用硬件描述來描述硬件邏輯[9-10];

3)單獨驗證元件的硬件功能;

4)描述寄存器的C頭文件來為軟件定義硬件寄存器映像;

5)將元件集成到ARM7系統中,使用ARM7來測試寄存器的訪問是否正確,并為該元件編寫軟件驅動[11];

圖5 APB總線的讀寫時序Fig.5 The read timing and write timing of APB bus

6)執行系統級的驗證等。

圖6是在Actel公司的調試軟件Softconsole和實驗板上的實際調試結果。

圖6 調試結果Fig.6 Debugging results

由圖6顯示的調試結果可知,八位開關Switch0-Switch7的輸入分別是11001011和11100101,這個和八個發光二極管Led0-Led7的輸出結果一致,由此進一步驗證了設計的準確性。

4 結束語

本文通過對基于ARM7的SOC系統的設計,介紹了一種Flash結構的FPGA器件及其片上系統的設計方法,進而給出了兩種驗證該片上系統準確性的方法,通過實際驗證,該系統不僅能準確進行片外存儲器的擦寫,而且可以準確進行外設接口的讀寫的操作,由此驗證了設計的準確性。文中所搭建SOC系統,可以與符合ARM公司的AHB2.0協議的北斗基帶芯片無縫連接,在北斗接收機的設計、測試中有重要的參考價值。

[1]陸小艷.基于AMBA2.0的SOC總線平臺的設計 [D].西安:西安電子科技大學,2012.

[2]袁野.基于平臺的SOC設計方法研究 [J].計算機與數字工程,2013,41(1):56-59.YUAN Ye.Research on Platform-Based SOC Design Methododology [J].Computer&Digital Engineering,2013,41(1):56-59.

[3]周立功.SOPC嵌入式系統基礎教程 [M].北京:北京航空航天大學出版社,2006.

[4]鐘洪.基于FPGA的SOC設計研究[J].機電元件,2013,33(3):13-18.ZHONG Hong.Based on FPGA SOC Design Research[J].Electromechanical Components,2013,33(3):13-18.

[5]周立功.ARM嵌入式系統基礎教程[M].2版.北京:北京航空航天大學出版社,2008.

[6]時偉,周子昂.SOC片上系統總線分析與研究[J].電子世界,2012(3):20-21.SHIWei,ZHOU Zi-ang.Analysis and Research on SOC Bus[J].Electronic World,2012(3):20-21.

[7]郭煒,魏繼增,郭箏,等.SOC設計方法與實現 [M].2版.北京:電子工業出版社,2011.

[8]韓煜,李洪海.基于IP核技術的SOC設計[J].微處理機,2012(2):14-16.HAN Yi,LI Hong-hai.SOC Design Based on IP Core Technology[J].Microprocessors,2012(2):14-16.

[9]李鑫,黃海生,張斌,等.一種E1時鐘數據恢復電路的設計[J].西安郵電學院學報,2012,17(3):67-72.LIXin,HUANG Hai-sheng,ZHANG Bin,et al.A design for clock data recovery circuit of E1 [J].Journal of xi’an Univerity of Posts and Telecommunications,2012,1(3):67-72.

[10]黃海生.一種數字分頻器的分析及性能分析[J].西安郵電學院學報,2000,5(1):39-40.HUANG Hai-sheng.Performance Analysis of A Digital Divider [J].Journal of Xi’an Univerity of Posts and Telecommunications,2000,5(1):39-40.

[11]虞致國,魏敬和.一種基于8051核SOC引導程序的設計與實現[J].微計算機信息,2008,25(3-2):133-135.YU Zhi-guo,WEI Jing-he.Design and Implementation of Bootloader for a SOC Based on 8051[J].Microcomputer Information,2008,25(3-2):133-135.

猜你喜歡
調試系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
基于航拍無人機的設計與調試
電子制作(2018年12期)2018-08-01 00:47:44
FOCAS功能在機床調試中的開發與應用
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
無線通信中頻線路窄帶臨界調試法及其應用
電子制作(2017年19期)2017-02-02 07:08:38
主站蜘蛛池模板: 色国产视频| 毛片免费在线视频| 精品久久综合1区2区3区激情| 99久久国产综合精品2023| 婷婷成人综合| 亚洲AⅤ波多系列中文字幕| 亚洲欧美在线精品一区二区| 蝌蚪国产精品视频第一页| 国产精品私拍在线爆乳| 麻豆国产精品视频| 女同久久精品国产99国| 国产男女免费完整版视频| 亚洲Va中文字幕久久一区 | 狠狠色丁婷婷综合久久| 国产乱码精品一区二区三区中文 | 成人国产一区二区三区| 午夜福利视频一区| 成人综合在线观看| 国产成人在线无码免费视频| 一本大道香蕉中文日本不卡高清二区| 亚洲香蕉在线| 黄色国产在线| 91福利片| 久久中文无码精品| 99人妻碰碰碰久久久久禁片| 久久久久久尹人网香蕉| 欧美成一级| 在线另类稀缺国产呦| 成人午夜网址| 国产黄在线观看| 国产在线无码av完整版在线观看| 在线观看av永久| 99在线视频网站| 午夜啪啪网| 日韩免费毛片| 凹凸国产分类在线观看| 国产丰满成熟女性性满足视频| 亚洲国产中文综合专区在| 国产无码高清视频不卡| 免费不卡在线观看av| 国产尹人香蕉综合在线电影| 日本黄网在线观看| 亚洲日本一本dvd高清| 成人小视频网| 国产91蝌蚪窝| 亚洲日本中文字幕乱码中文 | AV网站中文| 伊人久久大香线蕉综合影视| 国产黑丝一区| 四虎永久免费地址在线网站| 91青青草视频在线观看的| 一区二区三区高清视频国产女人| 国产精品成人一区二区不卡| 久久人体视频| 99在线免费播放| 亚洲欧洲日韩综合| 欧美日韩国产在线观看一区二区三区| 亚洲视频在线青青| 色哟哟国产精品| 精品一区二区三区水蜜桃| 日韩国产欧美精品在线| 亚洲国语自产一区第二页| 国产av色站网站| 午夜日b视频| 亚洲欧洲自拍拍偷午夜色无码| 亚洲天堂网在线播放| 亚洲成av人无码综合在线观看| 国产尹人香蕉综合在线电影| 国产迷奸在线看| 国产精品流白浆在线观看| 国产亚洲精品自在久久不卡| 手机在线免费毛片| 婷婷色一二三区波多野衣| 色亚洲激情综合精品无码视频 | 午夜老司机永久免费看片| 91www在线观看| 国产91视频免费观看| 在线观看免费人成视频色快速| 手机精品福利在线观看| 国产精品女熟高潮视频| 污污网站在线观看| 国产aⅴ无码专区亚洲av综合网|