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

基于MicroBlaze的AXI總線實時時鐘IP核設計

2014-08-12 08:46:10薩其日娜
單片機與嵌入式系統應用 2014年8期
關鍵詞:按鈕用戶設計

薩其日娜

(內蒙古魯電電力工程有限公司,內蒙古 010000)

基于MicroBlaze的AXI總線實時時鐘IP核設計

薩其日娜

(內蒙古魯電電力工程有限公司,內蒙古 010000)

應用MicroBlaze軟核作為CPU的硬件平臺,在此平臺上設計了基于AXI總線的通用實時時鐘IP核。給出了創建IP核的過程和導入IP核的方法。介紹了實時時鐘的IP核結構,給出了IP核的結構框圖。介紹了實時時鐘的原理,給出了實時時鐘各個模塊的核心代碼。

AXI;IP核;實時時鐘;MicroBlaze

引 言

MicroBlaze是可以嵌入到FPGA中的RISC處理器軟核,具有運行速度快、占用資源少、可配置性強等優點,廣泛應用于通信、軍事、高端消費市場等領域。Xilinx公司的MicroBlaze 32位軟處理器核是支持CoreConnect總線的標準外設集合。MicroBlaze處理器運行在150 MHz時鐘下,適合設計針對網絡、電信、數據通信和消費市場的復雜嵌入式系統。

AXI是ARM公司提出的AMBA3.0協議中最重要的部分,是一種面向高性能、高帶寬、低延遲的片內總線。AXI 總線技術不但使片上系統面積更小功耗更低,同時還獲得了更加優異的性能。AXI 能達到這樣的技術指標的一個主要原因,就是它的單向通道體系結構。單向通道體系結構使得片上的信息流只以單方向傳輸,減少了延時。AXI 技術滿足超高性能和復雜的片上系統設計的需求,因此AXI的與應用也越來越廣泛[1]。隨著ARM公司與Xilinx公司的合作逐步加強,Xilinx開始逐步在FPGA產品中大力推廣AXI總線技術。AXI在Xilinx公司的MicroBalze等CPU上面得到越來越重要的支持,必將成為未來的主流技術。

1 IP核的創建與導入

Xilinx的MicroBlaze軟核為用戶提供了大量的可用IP核,方便用戶開發縮短開發周期,降低成本。但是用戶的需求千差萬別,官網提供的IP核不可能滿足所有人的需求。因此開發環境支持用戶自定義IP核,根據用戶的不同需求,用戶可以通過定制的方式開發自己需要的IP核。在測控裝置的研發過程中,筆者發現插件上設計的RTC時鐘芯片,雖然具有掉電保持時間的功能。但是在完成裝置界面對時等功能時,對RTC芯片的讀寫操作顯示到界面上后,會有一定的延時,界面無法精確的顯示當前的時間。因此設計一個通過自定制IP核的形式,實現實時時鐘時鐘的功能解決上述問題。開發環境中的Xilinx Platform Studio為IP核的定值與導入提供了向導。

創建IP核的步驟如下:選擇Hardware→Create or Import Peripheral Wizward來打開創建和引入外設向導。單擊Next按鈕。選擇Create templates for a new peripheral。默認情況下新的外設將被存在pcores文件夾中方便查找。然后再次單擊Next按鈕。在Create Peripheral-Name and Version對話框中,輸入定制的IP核的名字,這里輸入本次定制IP核名稱為soft_rtc。下面是版本控制,可以根據需要修改。界面如圖1所示。

圖 1

單擊Next按鈕,在Create Peripheral-Bus Interface 對話框中,選擇AXI4,這是新的外設將要連接的總線。對于簡單設計可以選擇AXI4_Lite;下一步在IPIF (IP 接口) 配置,這里配置接口的一些屬性,如是否是AXI 主/從設備等。所定制的IP是一個從設備,因而不需要使用主設備接口。數據寬度選擇默認的32位,下一步選擇需number of use memory ranges數量,這里選1。界面如圖2所示。

圖 2

接下來就是IPIC(IP 互聯),也就是IP的接口信號。接下來需要使用需要使用BFM總線功能模型對外設進行仿真,本例不要使用。最后,需要選擇HDL類型、ISE工程支持和軟件驅動模板。此處使用Verilog模板,選擇后需IP接口仍然是VHDL編寫,只是用戶邏輯改用Verilog。如果不需要使用軟件驅動模板,可以不選。最后給出了外設的信息summary。完成上述步驟后,自定制的soft_rtc IP核的模版創建完成,只需根據需求對user_logic文件索要實現的功能編寫應用代碼,并配置相應的引腳。

完成user_logic的代碼編寫后,需要將完成的IP核導入工程。大致步驟如下:再次使用Hardware Create or Import Peripheral, 并單擊Next按鈕。選擇Import existing peripheral項,單擊Next按鈕再次輸入名稱soft_rtc,單擊Next按鈕,選擇Yes按鈕。下一步選中第一項HDL source files單擊Next按鈕,然后下一步驟選中第二項Use existing Peripheral Analysis Order files(*pao), Browse到相應的目錄下,選中.pao文件,單擊打開,然后單擊Next按鈕;出現圖3所示的窗口時,選中左側AXI4Lite選項,然后單擊Next按鈕后面都選擇默認選項直到出現結束窗口時選擇結束按鈕Finish按鈕。 這樣通過上述步驟完成了IP核的創建與導入。最后將IP核加入到工程中與AXI4Lite總線連接。完成IP核模版的創建與導入后,下一步就要進行完成IP核user_logic文件的代碼設計。

圖 3

2 soft_rtc IP核的設計

soft_rtc IP核中主要分為與上層接口的寄存器管理模塊、為IP核提供精確時鐘的 Clock分頻模塊和RTC的核心邏輯模塊[2]。IP核接口如圖4所示。

圖 4

開發板上提供有25 MHz的晶振和16.384 MHz的晶振。為了計時的精度,將16.384 MHz的輸入信號引入soft_rtc模塊。Clock 分頻模塊將輸入的16.384 MHz準晶振時鐘4分頻得到4.096 MHz的時鐘信號。分頻核心代碼如下:

always @(posedge clk_in)

begin

if(clk_div == 4'b0011)

clk_div <= 4'b0110;

else if(clk_div == 4'b0110)

clk_div <= 4'b1100;

else if(clk_div == 4'b1100)

clk_div <= 4'b1001;

else

clk_div <= 4'b0011;

end

寄存器控制模塊的主要功能是實現對RTC 模塊內部各個寄存器的讀寫控制并為整個IP 模塊提供控制信號。提供上層應用代碼與IP核代碼之間的接口。在這個模塊內部包含對每個內部功能寄存器的讀寫進行控制的子模塊和對各個子模塊時鐘的總體分布控制[3]。本設計中一共定義了16個寄存器,主要有控制寄存器、狀態寄存器以及毫秒的讀寄存器、毫秒的寫寄存器;秒的讀寄存器、秒位寫寄存器、分位的讀寄存器、分位的寫寄存器、小時位的讀寄存器、小時位的寫寄存器、以及年月日的讀與寫寄存器等。

設置RTC核心代碼如下:

always @(posedge Bus2IP_Clk)

begin

if(Bus2IP_CS[0] && Bus2IP_WrCE[0] && (Bus2IP_Addr[9:2] == SETSECOND_Addr))

SetSecondRegister <= Bus2IP_Data[5:0];

……

end

讀RTC核心代碼如下:

assign IP2Bus_Data[15:0] = (Bus2IP_CS[0] && Bus2IP_RdCE[0] && (Bus2IP_Addr[9:2] == MSECOND_Addr))?{6'h00,GetMsecondRegister}:16'hzzzz;

……

RTC的核心邏輯模塊主要完成的功能就是精確計時。IP核中通過計數器的控制,毫秒逢1000進位,秒、分和小時逢60進位,月逢12進位。設計時要全面考慮實際情況,注意對閏年以及不同月份天數不一樣等情況的處理。RTC計時的核心代碼如下:

always @(posedge SETTIME or posedge clk_jg)

begin

if(SETTIME)

SecondRegister <= SetSecondRegister;

else if((SecondRegister_B < 59) && Msecond_Carry)

SecondRegister <= SecondRegister + 1;

else if(Msecond_Carry)

SecondRegister <= 6'h00;

else

SecondRegister <= SecondRegister;

end

……

當時鐘上升沿到來或者應用程序發出設置時間指令后,進行判斷:秒位如果小于59并且毫秒位有進位,此時秒位計數器加1;如果秒位計數器大于或等于59時毫秒位有進位則將秒位清零。其他情況秒位計數器保持原來數值。 其他的分、小時、日月年等計數依次類推。

結 語

[1] 田澤,曹慶年,劉天時,等. 嵌入式處理器S3C2440 Windows CE的RTC模塊設計與實現[J]. 計算機應用與軟件,2007,24(3):31-33.

[2] 周飚, 謝曉陽. 有限狀態機在RTC設計中的分析與應用[J].計算機系統應用,2008,17(5):77-80.

[3] 戚戰鋒. RTC技術在系統集成中的應用研究 [J].信息通信,2012(6):37-38.

薩其日娜(工程師),從事電網自動化研究。

Real-time Clock IP Core Based on AXI Bus and MicroBlaze

Saqirina

(Inner Mongolia Ludian Electric Power Engineering Corp. Ltd., Nei Menggu 010000, China)

MicroBlaze was used as embedded hardware system. In this embedded hardware system, the real time clock IP core was based on AXI bus. The method of creating and importing the IP core was provided. The structure of the IP core was introduced. At the same time the structured flowchart of the IP core was provided. The theory of the real time clock was introduced, and the core code of the modules was provided.

AXI; IP core;real time clock;MicroBlaze

TP399

A

2014-02-25)

猜你喜歡
按鈕用戶設計
這些按鈕能隨便按嗎?
當你面前有個按鈕
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
內心不能碰的按鈕
商業評論(2014年9期)2015-02-28 04:32:41
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 欧美啪啪一区| 日本AⅤ精品一区二区三区日| 日韩大乳视频中文字幕| 日韩在线永久免费播放| a级毛片免费网站| 亚洲免费福利视频| 波多野结衣中文字幕一区二区| 亚洲色婷婷一区二区| 久久精品国产精品国产一区| 久久鸭综合久久国产| 成人欧美日韩| 欧美日韩激情在线| 亚洲区欧美区| 波多野结衣爽到高潮漏水大喷| 97超碰精品成人国产| 免费在线国产一区二区三区精品| 国产成人1024精品| 九九热视频精品在线| 国产区免费| 欧美国产日韩在线| 精品久久蜜桃| 91麻豆精品国产91久久久久| 欧美日韩免费观看| 午夜免费小视频| 欧美精品亚洲精品日韩专区va| 精品国产电影久久九九| 亚洲 成人国产| 免费看的一级毛片| 国产一二三区在线| 激情网址在线观看| 国产成人艳妇AA视频在线| 伊人AV天堂| 日韩人妻精品一区| 国产成人欧美| 亚洲美女一区| 国产乱子伦一区二区=| 51国产偷自视频区视频手机观看| 亚洲最新网址| 亚洲天堂成人| 色偷偷男人的天堂亚洲av| 国产二级毛片| 国产小视频网站| 国产99视频精品免费观看9e| 欧美专区在线观看| 一个色综合久久| 国产美女人喷水在线观看| 国产精品亚洲一区二区三区z | 久久久久久高潮白浆| 中文字幕在线欧美| 精品无码国产一区二区三区AV| 精品在线免费播放| 暴力调教一区二区三区| a级免费视频| 久久黄色免费电影| 精品国产香蕉伊思人在线| 亚洲乱码视频| 精品一區二區久久久久久久網站| 亚洲欧美日韩另类在线一| 免费无码AV片在线观看国产| 精品91自产拍在线| 无码免费试看| 日韩小视频在线观看| 二级毛片免费观看全程| 69av免费视频| 一级香蕉视频在线观看| 精品三级在线| 激情综合五月网| 日韩在线播放欧美字幕| 日本免费一区视频| 99资源在线| 久久亚洲天堂| AⅤ色综合久久天堂AV色综合| 欧美成人日韩| 狼友视频国产精品首页| 青青草一区| 91国内视频在线观看| 54pao国产成人免费视频| 国产大全韩国亚洲一区二区三区| 97视频免费在线观看| 丰满人妻一区二区三区视频| 国产一二三区视频| 香蕉精品在线|