0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

log2在verilog中到底有什么用

玩兒轉(zhuǎn)FPGA ? 來源:玩兒轉(zhuǎn)FPGA ? 作者:東哥 ? 2021-10-08 11:23 ? 次閱讀

很多小伙伴對上一篇文章講的取對數(shù)沒感覺,覺得這個(gè)沒什么用。確實(shí)很多時(shí)候用不著,verilog本身不夠靈活,所以很多時(shí)候我們也就沒想把她寫的多簡介靈活,而且受限于編譯器的支持,很多靈活的語法不能被編譯成電路,所以有這種想法情理之中,畢竟花大把時(shí)間去玩一個(gè)函數(shù)發(fā)現(xiàn)他局限性很大那確實(shí)收益太少。

那么他到底有什么用?

如果大家要設(shè)計(jì)一個(gè)深度1024的fifo,那么地址位寬取多大合適?*╭?( ˙o˙)╯?*

當(dāng)然是10位,log2(1024)

所以可以如下定義

parameter deepth = 1024;

parameter width = $clog2(deepth);

這樣就把兩個(gè)參數(shù)關(guān)聯(lián)起來,調(diào)整代碼的時(shí)候提高了可維護(hù)性也更方便。

但是到此為止了嗎?

不知道大家有沒有對做完fft以后取對數(shù)很苦惱,比如fft輸出實(shí)部虛部各16bit,平方和開根號以后暫且也以16bit表示,那么怎么取對數(shù)呢?第一種方法是查表,第二種是傳到上位機(jī),讓他處理。很多時(shí)候FPGA上確實(shí)不需要取對數(shù)這個(gè)操作,但是如果受限于高速接口,比如萬兆網(wǎng),pcie等接口速率希望壓縮數(shù)據(jù)的時(shí)候?qū)ft結(jié)果取對數(shù)無疑是一個(gè)很有必要的操作。畢竟log10這個(gè)對數(shù)可以把16位的數(shù)壓縮到8位以內(nèi)。所以查表確實(shí)可行,但是位數(shù)是24位呢,那情況就多了太多了,32位呢?

所以取對數(shù)這時(shí)候就有價(jià)值了,但是這是10為底的對數(shù),和2為底的對數(shù)有什么關(guān)系?當(dāng)然有關(guān)系,換底公式啊!

6e1f294c-23b9-11ec-82a8-dac502259ad0.jpg

多數(shù)時(shí)候fft之后我們計(jì)算10*log10或者20*log10,那么就等價(jià)于如下操作

6e7e675e-23b9-11ec-82a8-dac502259ad0.jpg

忽略3后面的小數(shù)影響的話,那么可以近似為

6ef98b50-23b9-11ec-82a8-dac502259ad0.jpg

多震撼的結(jié)論,所以數(shù)學(xué)好真的很有必要啊!當(dāng)然你想更高精度,可以對換底公式以后的分子分母同時(shí)放大10的冪次方倍,然后再往下計(jì)算,這里留給讀者自行思考。

是不是很累,很復(fù)雜?

那么我告訴你,verilog2005有l(wèi)og10的系統(tǒng)函數(shù),哈哈哈哈哈,意不意外???

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1339

    瀏覽量

    109889
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4701

    瀏覽量

    68122

原文標(biāo)題:log2在verilog里面到底有什么用?

文章出處:【微信號:HaveFunFPGA,微信公眾號:玩兒轉(zhuǎn)FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    電阻R2什么用

    電阻R2什么用請各位大俠觀住一下給本人講解一下對次感謝各位觀看
    發(fā)表于 10-26 09:42

    CMOS運(yùn)放的輸入阻抗到底有多高呢?

    都說CMOS運(yùn)放輸入阻抗高,到底有多高呢?可有一個(gè)量化指標(biāo)?
    發(fā)表于 09-06 06:59

    IPv6到底有什么用,給我們生活帶來哪些變化?

    IPv6是下一代互聯(lián)網(wǎng)協(xié)議,與IPv4相比,具有更多的地址空間和更好的性能。隨著互聯(lián)網(wǎng)的普及和發(fā)展,IPv6的用途也越來越廣泛,已經(jīng)在生活中發(fā)揮了重要作用。那IPv6到底有什么用,給我們生活帶來
    的頭像 發(fā)表于 03-29 14:00 ?1067次閱讀
    IPv6<b class='flag-5'>到底有</b><b class='flag-5'>什么用</b>,給我們生活帶來哪些變化?

    網(wǎng)線到底有多少種連接器

    我們在談?wù)摼W(wǎng)線的時(shí)候,聊得最多的,一定是它的連接器,它在連接過程扮演著極為重要的角色。網(wǎng)線到底有多少種連接器?本期我們將從工業(yè)級使用出發(fā),來看看這根似乎普通的網(wǎng)線,連接器上有多么努力。
    的頭像 發(fā)表于 01-26 10:06 ?529次閱讀

    NUC123的USB外設(shè)到底有沒有DMA功能?

    下載最新的TRM 1.07: 最先前的描述以及USB的寄存器章節(jié)都有DMA相關(guān)的內(nèi)容。但是DMA那一章節(jié)里的框圖沒有USB外設(shè)。同時(shí)關(guān)于USB外設(shè)DMA的用法也沒具體說明。所以USB外設(shè)到底有沒DMA功能,若是該怎么
    發(fā)表于 01-16 08:26

    AD9781或是AD9783芯片的DCOP/DCON信號什么用?

    1,AD9781或是AD9783芯片他的DCOP/DCON信號什么用?能舉個(gè)例么,我看了下他們的PDF文檔,好像沒感覺出來他到底有什么用,用在哪些方面?
    發(fā)表于 12-18 06:41

    到底有哪些原因會導(dǎo)致電樞絕緣阻值為零?

    對電機(jī)多大影響,現(xiàn)在這樣能安全使用多長時(shí)間,為什么電樞會是零呢,到底有哪些原因會導(dǎo)致電樞絕緣阻值為零?
    發(fā)表于 12-14 08:30

    天線形狀那么多,到底有什么用?

    天線形狀那么多,到底有什么用? 天線是一種用于無線通信的關(guān)鍵設(shè)備,它們的不同形狀和設(shè)計(jì)具有特定的功能和應(yīng)用。本文中,將詳細(xì)介紹不同形狀的天線及其用途。 1. 垂直天線 垂直天線是最常見的一種天線
    的頭像 發(fā)表于 11-28 15:27 ?1417次閱讀

    pcb仿真技術(shù)什么用

    pcb仿真技術(shù)什么用
    的頭像 發(fā)表于 11-28 15:22 ?1029次閱讀

    為什么有時(shí)PCB走線上串個(gè)電阻?什么用?

    為什么有時(shí)PCB走線上串個(gè)電阻?什么用
    的頭像 發(fā)表于 11-27 14:29 ?857次閱讀
    為什么有時(shí)<b class='flag-5'>在</b>PCB走線上串個(gè)電阻?<b class='flag-5'>有</b><b class='flag-5'>什么用</b>?

    dB到底有多少種不同的含義呢?

    此同時(shí),我們很多有噪聲監(jiān)控的十字路口也可以看到這樣的指示牌:目前路口噪音60dB。那么dB到底有多少種不同的含義呢? 首先要說到dB的起源,所謂dB,指的就是Deci-Bel,也就是1/10個(gè)“Bell
    發(fā)表于 11-27 08:26

    電阻的作用到底有哪些

    電阻作為電子電路最基本的元器件,被應(yīng)用在各個(gè)電子電路。 那為什么電阻可以應(yīng)用在電子電路的各個(gè)地方呢?它的作用到底有哪些?本篇文章將會做一個(gè)精講。 根據(jù)官方對于電阻的百科是——導(dǎo)體對電流的阻礙作用
    的頭像 發(fā)表于 11-06 11:43 ?1317次閱讀
    電阻的作用<b class='flag-5'>到底有</b>哪些

    請問MSP430到底有幾個(gè)時(shí)鐘呀?

    請問MSP430到底有幾個(gè)時(shí)鐘呀
    發(fā)表于 11-03 06:36

    COB與SMD到底有什么不同

    如今應(yīng)用領(lǐng)域,COB和SMD兩種技術(shù)正在“平分春色”,但在微小間距LED領(lǐng)域,COB正在成為各大廠商都在爭相研發(fā)的行業(yè)主流技術(shù)。那么COB與SMD到底有什么不同呢?
    的頭像 發(fā)表于 11-02 09:37 ?2406次閱讀
    COB與SMD<b class='flag-5'>到底有</b>什么不同

    什么是虛擬線程?虛擬線程到底是做什么用的呢?

    虛擬線程是Java并發(fā)領(lǐng)域添加的一個(gè)新概念,那么虛擬線程到底是做什么用的呢?
    的頭像 發(fā)表于 10-29 10:23 ?3006次閱讀
    什么是虛擬線程?虛擬線程<b class='flag-5'>到底</b>是做<b class='flag-5'>什么用</b>的呢?