精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用MicroBlaze調用AXI IP核詳細解析

FPGA之家 ? 來源:FPGA2嵌入式 ? 作者:淺擱 ? 2021-04-27 11:17 ? 次閱讀

在一個項目中,當你使用microblaze作為控制器來進行系統調度的時候,一般是建議將所有模塊封裝成AXI形式的IP核,這樣好管理,也容易調試。不過在初期的時候是不建議這樣做的,因為你的模塊并沒有完全被驗證是沒問題的,所以還是使用.v文件,等后面這一功能驗證通過,再把它封裝成IP核形式。

1. AXI IP核簡介

用過Microblaze或者看例程的人肯定都知道,Xilinx提供了很多AXI形式的IP核,像常用的UART、IIC、SPI等IP核。我們只要把他們在畫布里調出來,然后使用自動連接形式,便能把對應接口連接起來,接著在軟件上調用其相應的函數便可以工作了。

7c9b8938-a67e-11eb-aece-12bb97331649.jpg

但是當我們自己封裝了一個AXI形式的IP核后,又該怎么去使用呢?這不是官方IP,沒有相應的函數呀?不知道大家是否有印象,上一篇文章介紹IP封裝的時候說過,封裝成AXI形式的IP核,會生成一些東西,如下圖所示,這個可千萬別去刪,大有用處的。

7ca6f39a-a67e-11eb-aece-12bb97331649.png

里面的drivers這個文件夾其實放的就是AXI的驅動函數。例如我們生成一個AXI的IP核(紅框處)

7cb481c2-a67e-11eb-aece-12bb97331649.jpg

編譯通過后生成軟核工程,可以看到,我們自己加入的IP核是有被關聯進來的。在“Axi_Device_DNA_v1_0”這個文件夾下包含有.c和.h文件,這個就是我們添加的IP核對應的驅動,它和iic、定時器、uart等IP核在同一個庫里。這些都是IP核必須使用到的函數文件。

7d47608c-a67e-11eb-aece-12bb97331649.png

2. AXI IP核使用

看見自制的IP核都能給你生成驅動函數是不是覺得很高級,很爽呢!如果這樣想那你就確實too young too simple了。打開它的.c和.h文件給你看看吧。

7d50073c-a67e-11eb-aece-12bb97331649.jpg

寄存器定義

7d7e5e20-a67e-11eb-aece-12bb97331649.png

獲取DNA數據高位、低位數據的函數

80828c18-a67e-11eb-aece-12bb97331649.jpg

讀寫函數

是的,就只有這些,沒有了!所以別以為能像IIC之類的IP核一樣,會給你很全的函數,讓你一次寫一大串或讀一大串數據的,如果真能根據不同IP功能給你定制不同函數,那就智能到逆天了···

不過人家都給你讀寫寄存器的函數和寄存器的定義,也就已經夠了,都說下層基礎決定上層建筑,有了這兩個基本函數,你想自己做什么功能還不行?MCU控制的本質不也就是讀寫對應的寄存器,偷懶也得有個度的哈哈~就像這樣,自己封裝個函數就行了。

808f3ef4-a67e-11eb-aece-12bb97331649.png

當然,你也可以不用Xilinx給你生成的讀寫函數,自己寫也是可以的,不過不建議這么做,畢竟人家都給了,一方面可以給你節省編碼時間,另一方面也保證了函數的穩定性,避免開發出錯。

3. 總結

在封裝成AXI IP 核時會有一個頂層的AXI時序代碼,這個用戶一定要熟悉,并且對應的寄存器要設置好,這樣使用起來才不會有錯誤。不然容易出現寄存器讀寫不成功或者操作錯寄存器導致數據不對。總之還是一句話,實踐出真知,想了解深入得去用了才知道才會使用。
編輯:lyn

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Xilinx
    +關注

    關注

    71

    文章

    2163

    瀏覽量

    121005
  • MicroBlaze
    +關注

    關注

    3

    文章

    68

    瀏覽量

    21533
  • IP核
    +關注

    關注

    4

    文章

    326

    瀏覽量

    49428

原文標題:使用MicroBlaze調用AXI IP核

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Vivado中FFT IP的使用教程

    本文介紹了Vidado中FFT IP的使用,具體內容為:調用IP>>配置界面介紹>>IP
    的頭像 發表于 11-06 09:51 ?364次閱讀
    Vivado中FFT <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用教程

    芯驛電子 ALINX 推出全新 IP 產品線,覆蓋 TCP/UDP/NVMe AXI IP

    10GBe/40GBe UDP 協議棧 IP 、10GbE TCP/IP 協議棧 IP 和 NVMe
    的頭像 發表于 10-30 17:39 ?246次閱讀
     芯驛電子 ALINX 推出全新 <b class='flag-5'>IP</b> <b class='flag-5'>核</b>產品線,覆蓋 TCP/UDP/NVMe <b class='flag-5'>AXI</b> <b class='flag-5'>IP</b> <b class='flag-5'>核</b>

    芯驛電子ALINX推出全新IP產品線

    /40GBe UDP 協議棧 IP 、10GbE TCP/IP 協議棧 IP 和 NVMe AXI
    的頭像 發表于 10-30 11:53 ?181次閱讀
    芯驛電子ALINX推出全新<b class='flag-5'>IP</b><b class='flag-5'>核</b>產品線

    Xilinx DDS IP的使用和參數配置

    用RAM實現一個DDS,從原理上來說很簡單,在實際使用的時候,可能沒有直接使用官方提供的IP來的方便。這個博客就記錄一下,最近使用到的這個DDS IP
    的頭像 發表于 10-25 16:54 ?374次閱讀
    Xilinx DDS <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用和參數配置

    如何申請xilinx IP的license

    在使用FPGA的時候,有些IP是需要申請后才能使用的,本文介紹如何申請xilinx IP的license。
    的頭像 發表于 10-25 16:48 ?200次閱讀
    如何申請xilinx <b class='flag-5'>IP</b><b class='flag-5'>核</b>的license

    MicroBlaze V軟處理器的功能特性

    本指南提供了有關 AMD Vivado Design Suite 中包含的 32 位和 64 位 MicroBlaze V 軟處理器的信息。該文檔旨在用作為處理器硬件架構的指南,隨附《RISC-V 指令集手冊》第一卷和第二卷。
    的頭像 發表于 10-16 09:17 ?389次閱讀
    <b class='flag-5'>MicroBlaze</b> V軟<b class='flag-5'>核</b>處理器的功能特性

    基于TI Sitara系列AM5728工業開發板——FPGA視頻開發案例分享

    MicroBlaze可通過對應地址對IP進行控制。 編輯 圖 23 本案例分別支持CameraLink Full模式(工程為cameralink_display_full_xx
    發表于 07-12 17:24

    esp32在靜態IP下,域名無法解析怎么解決?

    _info 1esp32使用dhcp,正常獲取IP連接網絡,可以解析域名. 2esp32使用靜態IP,正常獲取IP連接網絡,無法解析域名。
    發表于 06-25 07:56

    FPGA的IP使用技巧

    FPGA的IP使用技巧主要包括以下幾個方面: 理解IP的概念和特性 : IP是指用硬
    發表于 05-27 16:13

    關于FPGA IP

    對于深入學習使用FPGA的小伙伴們,特別是一些復雜的、大規模的設計應用,適宜的IP核對開發能起到事半功倍的作用。IP的概念與我們sdk里庫的概念相似。IP即電路功能模塊,用戶可以直接
    發表于 04-29 21:01

    AMD FPGA的MicroBlaze固化過程詳解

    MicroBlaze是AMD FPGA推出的一款32/64位軟嵌入式處理器,其高度可配置,可滿足通信、工業、醫療、汽車、以及消費類各場景需求。
    的頭像 發表于 03-21 17:08 ?2069次閱讀
    AMD FPGA的<b class='flag-5'>MicroBlaze</b>固化過程詳解

    AMBA總線之AXI設計的關鍵問題講解

    首先我們看一下針對AXI接口的IP設計,在介紹之前我們先回顧一下AXI所具有的一些feature。
    的頭像 發表于 02-20 17:12 ?1619次閱讀
    AMBA總線之<b class='flag-5'>AXI</b>設計的關鍵問題講解

    FPGA優質開源模塊-SRIO IP的使用

    本文介紹一個FPGA常用模塊:SRIO(Serial RapidIO)。SRIO協議是一種高速串行通信協議,在我參與的項目中主要是用于FPGA和DSP之間的高速通信。有關SRIO協議的詳細介紹網上有很多,本文主要簡單介紹一下SRIO IP
    的頭像 發表于 12-12 09:19 ?2101次閱讀
    FPGA優質開源模塊-SRIO <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用

    FPGA實現基于Vivado的BRAM IP的使用

    Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP,比如數學類的IP,數字信號處理使用的IP
    的頭像 發表于 12-05 15:05 ?1551次閱讀

    AMD Versal系列CIPS IP建立示例工程

    接著上一篇“AMD Versal系列CIPS IP介紹”文章來進一步講解如何來建立CIPS IP核示例工程。
    的頭像 發表于 12-05 13:34 ?627次閱讀
    AMD Versal系列CIPS <b class='flag-5'>IP</b><b class='flag-5'>核</b>建立示例工程