在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

分享一些FPGA常見IP核

jf_78858299 ? 來源:大盛唐電子 ? 作者:大盛唐電子 ? 2023-01-21 12:06 ? 次閱讀

隨著FPGA的集成度越來越高,規模越來越大,設計越來越復雜,IC行業的競爭也越來越激烈,產品的交付周期越來越短,這與人類有限的設計能力形成了巨大矛盾。如果FPGA設計還是全部由設計者從最底層的代碼寫起,那么必然不能在越來越苛刻的開發周期內完成相關項目。

而IP核的出現,解決了這個問題。IP核是一段具有特定電路功能的硬件描述語言程序,該程序通常與集成電路工藝無關,可以移植到不同的半導體工藝中去生產集成電路芯片。由于IP核將一些在數字電路中常用,但比較復雜的功能塊設計成可修改參數的模塊,因此FPGA的設計人員可以通過調用相關IP核來完成所需邏輯功能,從而節省了大量的開發時間。調用IP核能避免重復勞動,大大減輕設計人員的負擔,因此使用IP核必然成為將來FPGA設計的一個發展趨勢。

按IP核的硬件描述級實現程度,可將它分為三類:即軟核、硬核、固核。

IP軟核一般指的是用硬件描述語言描述的功能塊,它并不涉及用什么具體電路元件實現這些功能,軟核的代碼直接參與設計的編譯流程,就像我們自己編寫的HDL代碼一樣,雖然一般會對軟核的RTL代碼進行加密,但是其保密性還是比較差。

IP硬核是以經過完全的布局布線的網表形式提供,由于不再參與設計的編譯流程,因此它的性能具有很強的可預見性,并且保密性好,不過移植性差。

IP固核是軟核與硬核的一個折中,它只對描述功能中一些比較關鍵的路徑進行預先的布局布線,而其他部分仍然可以任由編譯器進行相關優化處理。例如,當你使用IP核生成一個8x8的乘法器時,如果選擇使用邏輯資源塊來實現的話,那么此時的乘法器IP核就相當于一個軟核;

如果你選擇使用DSP資源來實現的話,那么此時的乘法器IP核就相當于一個硬核;如果你要用DSP資源生成一個36x36的乘法器時,那么FPGA恐怕需要若干DSP資源來實現,這時候,每個DSP核的布局布線是固定的,但是到底選擇那幾個DSP資源來實現是可以由編譯器來決定的,因此此時的乘法器IP核就相當于一個固核。

PLL(Phase Locked Loop): 為鎖相回路或鎖相環,用來統一整合時鐘信號,使高頻器件正常工作,如內存的存取資料等。PLL用于振蕩器中的反饋技術。許多電子設備要正常工作,通常需要外部的輸入信號與內部的振蕩信號同步。

一般的晶振由于工藝與成本原因,做不到很高的頻率,而在需要高頻應用時,由相應的器件VCO,實現轉成高頻,但并不穩定,故利用鎖相環路就可以實現穩定且高頻的時鐘信號。鎖相環路是一種反饋控制電路,簡稱鎖相環(PLL,Phase-Locked Loop)。

鎖相環的特點是:利用外部輸入的參考信號控制環路內部振蕩信號的頻率和相位。因鎖相環可以實現輸出信號頻率對輸入信號頻率的自動跟蹤,所以鎖相環通常用于閉環跟蹤電路。鎖相環在工作的過程中,當輸出信號的頻率與輸入信號的頻率相等時,輸出電壓與輸入電壓保持固定的相位差值,即輸出電壓與輸入電壓的相位被鎖住,這就是鎖相環名稱的由來。鎖相環通常由鑒相器(PD,Phase Detector)、環路濾波器(LF,Loop Filter)和壓控振蕩器(VCO,Voltage Controlled Oscillator)三部分組成。

圖片

FIFO: 是英文First In First Out 的縮寫,是一種先進先出的數據緩存器,他與普通存儲器的區別是沒有外部讀寫地址線,這樣使用起來非常簡單,但缺點就是只能順序寫入數據,順序的讀出數據, 其數據地址由內部讀寫指針自動加1完成,不能像普通存儲器那樣可以由地址線決定讀取或寫入某個指定的地址。

FIFO的分類根均FIFO工作的時鐘域,可以將FIFO分為同步FIFO和異步FIFO。同步FIFO是指讀時鐘和寫時鐘為同一個時鐘。在時鐘沿來臨時同時發生讀寫操作。異步FIFO是指讀寫時鐘不一致,讀寫時鐘是互相獨立的。

圖片

FIFO的寬度: 也就是英文資料里常看到的THE WIDTH,它指的是FIFO一次讀寫操作的數據位,就像MCU有8位和16位,ARM32位等等,FIFO的寬度在單片成品IC中是固定的,也有可選擇的,如果用FPGA自己實現一個FIFO,其數據位,也就是寬度是可以自己定義的。FIFO的深度:THE DEEPTH,它指的是FIFO可以存儲多少個N位的數據(如果寬度為N)。如一個8位的FIFO,若深度為8,它可以存儲8個8位的數據,深度為12 ,就可以存儲12個8位的數據,FIFO的深度可大可小,個人認為FIFO深度的計算并無一個固定的公式。

在FIFO實際工作中,其數據的滿/空標志可以控制數據的繼續寫入或讀出。在一個具體的應用中不可能由一些參數精確算出所需的FIFO深度為多少,這在寫速度大于讀速度的理想狀態下是可行的,但在實際中用到的FIFO深度往往要大于計算值。

一般來說根據電路的具體情況,在兼顧系統性能和FIFO成本的情況下估算一個大概的寬度和深度就可以了。而對于寫速度慢于讀速度的應用,FIFO的深度要根據讀出的數據結構和讀出數據由那些具體的要求來確定。

ADC/DAC: adc是analog-to-digital converter的縮寫,指模擬/數字轉換器。我們常用的模擬信號,如溫度、壓力、電流等,如果需要轉換成更容易儲存、處理的數字形式,用模/數轉換器就可以實現這個功能。

adc將模擬輸入信號轉換成數字信號的電路或器件。模數轉換器的實例有逐次逼近adc,電壓-頻率(v/f)轉換器,雙斜率adc和高速閃爍adc。模數轉換器也稱為數字化儀。a/d轉換的作用是將時間連續、幅值也連續的模擬量轉換為時間離散、幅值也離散的數字信號,因此,a/d轉換一般要經過取樣、保持、量化及編碼4個過程。

在實際電路中,這些過程有的是合并進行的,例如,取樣和保持,量化和編碼往往都是在轉換過程中同時實現的。dac是digital-to-analog converter的縮寫,指數字/模擬轉換器。數字量是用代碼按數位組合起來表示的,對于有權碼,每位代碼都有一定的位權。

為了將數字量轉換成模擬量,必須將每1位的代碼按其位權的大小轉換成相應的模擬量,然后將這些模擬量相加,即可得到與數字量成正比的總模擬量,從而實現了數字/模擬轉換。dac主要由數字寄存器、模擬開關、位權網絡、求和運算放大器和基準電壓源(或恒流源)組成。用存于數字寄存器的數字量的各位數碼,分別控制對應位的模擬電子開關,使數碼為1 的位在位權網絡上產生與其位權成正比的電流值,再由運算放大器對各電流值求和,并轉換成電壓值。

圖片

圖片


IP代表知識產權,從它的名字我們就能猜到IP核應該不是可以隨便使用的。事實上,大部分IP核都是需要付費的,例如RS編碼器、FIR濾波器、SDRAM控制器、PCI接口等。不過仍有很多免費的IP核資源,這其中最主要的就是每個FPGA廠商都會為自己的軟件集成開發環境提供一些比較基本的免費的IP核來增加自家產品的行業競爭力。例如最最常用的FIFO模塊、PLL模塊等等。對于我們平常的設計來說,利用好這些免費的IP核就能達到事半功倍的效果。

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

    關注

    1630

    文章

    21759

    瀏覽量

    604340
  • IC
    IC
    +關注

    關注

    36

    文章

    5965

    瀏覽量

    175795
收藏 人收藏

    評論

    相關推薦

    新手福音:概述學習FPGA一些常見誤區

    很多剛開始學習FPGA的朋友們經常會遇上一些誤區而無從解決,FPGA為什么是可以編程的?通過HDL語言怎么看都看不出硬件結構?...本文就這個方面進行解析。
    發表于 09-27 17:14 ?8244次閱讀

    關于FPGA IP

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

    FPGAIP使用技巧

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

    FPGA IP的相關問題

    我用的是xinlinx spartan6 FPGA,我想知道它的IPRAM是與FPGA獨立的,只是集成在了起呢,還是占用了
    發表于 01-10 17:19

    mig生成的DDR的IP的問題

    請教各位大神,小弟剛學FPGA,現在在用spartan-3E的板子,想用上面的DDR SDRAM進行簡單的讀寫,用MIG生成DDR之后出現了很多引腳,看了一些資料也不是很清楚,不知道怎么使用生成的這個
    發表于 06-20 20:43

    關于fpgaIP

    quartus ii9.0創建的ip,生成的一些文件,(.qip、 add_sub_bb.v、add_sub.v)這些文件都有用嗎,想在其他工程里調用這些IP
    發表于 07-02 17:20

    如何在我的VHDL頂級模塊中使用該IP一些示例?

    作為我項目的部分,我需要將ADC與7系列FPGA接口,我有個SelectIO?接口向導的IP。但是,我的整個項目都在VHDL中,IPi
    發表于 05-21 12:31

    基于IPFPGA設計方法是什么?

    的分類和特點是什么?基于IPFPGA設計方法是什么?
    發表于 05-08 07:07

    FPGAIP學習的正確打開方式

    的情況時,總會遇到一些以前未曾接觸過的新內容,這些新內容會讓我們感到陌生和恐懼,不知道該如何下手。 那么今天以xilinx vivado 為例分享學習FPGAIP的正確打開方式
    發表于 11-17 11:09

    FPGAIP的生成

    FPGAIP的生成,簡單介紹Quartus II生成IP的基本操作,簡單實用挺不錯的資料
    發表于 11-30 17:36 ?11次下載

    基于FPGAIP設計技術

    FPGAIP設計技術的系列資料,大家可以收集看下,這些都是我看過過濾后留下的,感覺不錯,希望對大家有幫助
    發表于 11-30 17:49 ?6次下載

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

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

    VCS獨立仿真Vivado IP一些方法總結

    前年,發表了篇文章《VCS獨立仿真Vivado IP一些方法總結》(鏈接在參考資料1),里面簡單講述了使用VCS仿真Vivado IP
    的頭像 發表于 03-22 10:31 ?4288次閱讀

    FIFO的一些基礎知識

    FPGA廠商提供了豐富的IP,基礎性IP都是可以直接免費調用的,比如FIFO、RAM等等。
    的頭像 發表于 08-07 15:41 ?2391次閱讀
    FIFO的<b class='flag-5'>一些</b>基礎知識

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

    Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP,比如數學類的IP,數字信號處理使用的
    的頭像 發表于 12-05 15:05 ?1805次閱讀
    主站蜘蛛池模板: aa在线免费观看| 久久久久四虎国产精品| 免费久久久久| 超级碰碰青草久热国产| 日本黄色片黄色片| 亚洲最大的成人网| 天天操夜夜夜| www天堂网| 一级高清| 成人看的一级毛片| 久久久久久久国产精品电影| 久操福利视频| 欧美日韩一区二区三区视频 | 69色视频| 高清一级毛片一本到免费观看| 天天干夜夜艹| 成人18毛片| 我要色综合网| 99草视频| 国产一级特黄aa大片在线| 欧美videosex性欧美成人| 深爱激情五月网| 亚洲美女爱爱| 一区二区三区免费视频网站| 国产一区中文字幕| 亚洲一级毛片免费看| 日韩欧美高清色码| 国产人人看| 国产日日干| 亚洲 午夜在线一区| 中文字幕一区二区视频| 性欧美69| 欧美激情伊人| tube69xxxxhd日本| 黑人xxxx精品| baoyu污污网站入口免费| 欧美不卡在线视频| 国产精品丝袜| avtt亚洲一区中文字幕| 在线看片成人| 亚洲第九页|