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

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

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

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

排序算法在FPGA上的實(shí)現(xiàn)

lhl545545 ? 來源:FPGA開發(fā)之路 ? 作者:FPGA開發(fā)之路 ? 2022-09-05 10:31 ? 次閱讀

做項(xiàng)目實(shí)現(xiàn)某個(gè)feature時(shí)經(jīng)常會(huì)考慮一個(gè)問題,硬件實(shí)現(xiàn)還是軟件實(shí)現(xiàn),還是軟硬件結(jié)合。

要想回答好這個(gè)問題,就要理解硬件和軟件的各自的優(yōu)劣勢。

優(yōu)劣勢

軟件程序其實(shí)是運(yùn)行在CPU上的,所有的程序都要分解為一條一條的機(jī)器指令去運(yùn)行。CPU作為一種通用的架構(gòu),它最大的優(yōu)勢自然也是通用,擅長復(fù)雜的邏輯和運(yùn)算操作。但也因?yàn)槠渫ㄓ玫募軜?gòu),使得CPU在某些特定的應(yīng)用場景性能不足,比如視頻渲染,不然也不會(huì)出現(xiàn)GPU

FPGA則恰恰相反。FPGA非常擅長并行計(jì)算,同時(shí)能夠提供極低的延遲。但是卻不擅長復(fù)雜的邏輯和數(shù)學(xué)運(yùn)算操作,比如調(diào)度算法,甚至某些看起來比較簡單的排序算法在FPGA上實(shí)現(xiàn)也比較麻煩。

軟硬件結(jié)合的經(jīng)典設(shè)計(jì)

計(jì)算機(jī)系統(tǒng)中的地址翻譯可以看做一個(gè)經(jīng)典設(shè)計(jì)。

地址翻譯是將虛擬地址轉(zhuǎn)換為物理地址。這個(gè)過程是通過查找表(頁表)的方式實(shí)現(xiàn)的。頁表中存儲(chǔ)著物理地址,那么要存儲(chǔ)哪些物理地址,哪個(gè)物理地址存儲(chǔ)在哪一個(gè)表項(xiàng),是一個(gè)比較復(fù)雜的邏輯,這個(gè)過程是通過操作系統(tǒng)即軟件來實(shí)現(xiàn)的。當(dāng)程序或者進(jìn)程在運(yùn)行期間需要訪問某一個(gè)地址,我們希望用最快的速度來實(shí)現(xiàn)地址翻譯,這個(gè)過程用到的便是硬件,硬件讀取頁表的內(nèi)容獲得物理地址即可。

最后回到最初的問題,用硬件還是用軟件,一句話總結(jié),復(fù)雜的對(duì)性能要求較低的交給軟件,簡單的性能要求高的交給硬件。

審核編輯:彭靜

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

    關(guān)注

    1626

    文章

    21678

    瀏覽量

    602037
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3260

    瀏覽量

    66132
  • 排序算法
    +關(guān)注

    關(guān)注

    0

    文章

    52

    瀏覽量

    10053

原文標(biāo)題:硬件(FPGA)vs 軟件

文章出處:【微信號(hào):FPGA開發(fā)之路,微信公眾號(hào):FPGA開發(fā)之路】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Python實(shí)現(xiàn)的常見內(nèi)部排序算法

    排序算法可以分為內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部
    發(fā)表于 07-06 12:35 ?341次閱讀
    Python<b class='flag-5'>實(shí)現(xiàn)</b>的常見內(nèi)部<b class='flag-5'>排序</b><b class='flag-5'>算法</b>

    FPGA排序-冒泡排序介紹

    排序算法是圖像處理中經(jīng)常使用一種算法,常見的排序算法有插入排序、希爾
    發(fā)表于 07-17 10:12 ?1065次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>排序</b>-冒泡<b class='flag-5'>排序</b>介紹

    十大排序算法總結(jié)

    排序算法是最經(jīng)典的算法知識(shí)。因?yàn)槠?b class='flag-5'>實(shí)現(xiàn)代碼短,應(yīng)該廣,面試中經(jīng)常會(huì)問到排序
    的頭像 發(fā)表于 12-20 10:39 ?1088次閱讀

    求助-FPGA實(shí)現(xiàn)retinex算法

    求助大神,FPGA實(shí)現(xiàn)retinex算法 。。。
    發(fā)表于 05-08 23:29

    基于FPGA的中值濾波算法實(shí)現(xiàn)

    ` 本帖最后由 ninghechuan 于 2017-9-1 07:04 編輯 在這一篇開篇之前,我需要解決一個(gè)問題,一篇我們實(shí)現(xiàn)了基于FPGA的均值濾波算法
    發(fā)表于 09-01 07:04

    算法的原理是什么?基數(shù)排序是如何實(shí)現(xiàn)的?

    算法的原理是什么?基數(shù)排序是如何實(shí)現(xiàn)的?有哪幾種方法可以實(shí)現(xiàn)基數(shù)排序
    發(fā)表于 07-05 07:42

    C語言實(shí)現(xiàn)常用排序算法是什么?

    C語言實(shí)現(xiàn)常用排序算法是什么?
    發(fā)表于 10-19 06:41

    雷達(dá)視頻積累算法FPGA實(shí)現(xiàn)

    雷達(dá)視頻積累算法FPGA實(shí)現(xiàn) 1 引 言 由于雷達(dá)所處的環(huán)境的復(fù)雜性,除了地物、云雨、鳥群等干擾外,還可能來自臨近的雷達(dá)異步干擾、
    發(fā)表于 11-09 16:08 ?741次閱讀
    雷達(dá)視頻積累<b class='flag-5'>算法</b><b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>上</b>的<b class='flag-5'>實(shí)現(xiàn)</b>

    FPGA實(shí)現(xiàn)CRC算法的程序

    Xilinx FPGA工程例子源碼:FPGA實(shí)現(xiàn)CRC算法的程序
    發(fā)表于 06-07 15:07 ?28次下載

    實(shí)用的排序算法 - 交換排序

    實(shí)用的排序算法 - 交換排序
    的頭像 發(fā)表于 03-20 09:53 ?1724次閱讀
    實(shí)用的<b class='flag-5'>排序</b><b class='flag-5'>算法</b> -  交換<b class='flag-5'>排序</b>

    排序算法分享:歸并排序說明

    我們今天繼續(xù)給大家分享排序算法里面的另外一種排序算法:歸并排序
    的頭像 發(fā)表于 12-24 14:34 ?755次閱讀

    淺談希爾排序算法思想以及如何實(shí)現(xiàn)

    01 希爾排序算法思想 希爾排序也是一種插入排序,是簡單插入排序改進(jìn)后的一個(gè)更高效版本,同時(shí)也是首批突破O(n^2)
    的頭像 發(fā)表于 06-30 10:05 ?2009次閱讀

    php版冒泡排序是如何實(shí)現(xiàn)的?

    無論學(xué)習(xí)哪一種編程語言,進(jìn)行算法方面的訓(xùn)練時(shí)都繞不開“排序”。排序進(jìn)階編程中有非常廣泛的應(yīng)用,要想成為編程高手,排序
    的頭像 發(fā)表于 01-20 10:39 ?900次閱讀
    php版冒泡<b class='flag-5'>排序</b>是如何<b class='flag-5'>實(shí)現(xiàn)</b>的?

    怎么用FPGA算法 如何在FPGA實(shí)現(xiàn)最大公約數(shù)算法

    FPGA算法是指在FPGA(現(xiàn)場可編程門陣列)實(shí)現(xiàn)算法
    的頭像 發(fā)表于 08-16 14:31 ?2829次閱讀
    怎么用<b class='flag-5'>FPGA</b>做<b class='flag-5'>算法</b> 如何在<b class='flag-5'>FPGA</b><b class='flag-5'>上</b><b class='flag-5'>實(shí)現(xiàn)</b>最大公約數(shù)<b class='flag-5'>算法</b>

    FPGA實(shí)現(xiàn)雙調(diào)排序算法的探索與實(shí)踐

    雙調(diào)排序(BitonicSort)是數(shù)據(jù)獨(dú)立(Data-independent)的排序算法,即比較順序與數(shù)據(jù)無關(guān),特別適合并行執(zhí)行。了解雙調(diào)排序
    發(fā)表于 03-14 09:50 ?573次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>實(shí)現(xiàn)</b>雙調(diào)<b class='flag-5'>排序</b><b class='flag-5'>算法</b>的探索與實(shí)踐