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

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

3天內不再提示

用FPGA實現雙調排序的方法(2)

FPGA技術驛站 ? 來源:FPGA技術驛站 ? 2024-03-21 10:28 ? 次閱讀

在上篇文章中我們介紹了如何對雙調序列進行排序,操作過程如下圖所示。

其特征是每次分割都是將原始的序列分成兩個等長序列。

例如:原始序列長度為16,第1次分割將其分為2個長度為8的序列;第2次分割將第1次分割的排序結果(長度仍為16)分為4個長度為4的序列;第3次分割將第2次分割的排序結果分為8個長度為2的序列;第4次分割將第3次分割的排序結果分為16個長度為1的序列。

圖中相鄰的綠色標記和藍色標記序列構成一組進行比較。

d8ffce8a-e71e-11ee-a297-92fbcf53809c.jpg

為進一步說明,我們定義操作符?,如下圖所示。

兩個操作符?由雙向箭頭連接,表示彼此之間共享數據,即下方的?可接收上方的?對應操作數op1,同時上方的?可接收下方的?對應操作數op2。

位于上方的?輸出op1與op2中的較小者,位于下方的?輸出op1與op2的較大者,簡言之?表示對兩個輸入數據進行升序排序。

此外,還有一個關鍵點就是圖中虛線的含義。

可以看到op1與min(op1,op2)在一條直線上,op2與max(op1,op2)在一條直線上。

同一條直線上的兩個數據其位置是相同的。

即若op1是0號數據,那么min(op1,op2)也必須放到0號位置上,這就是所謂的原位(In-place)運算。

d91a304a-e71e-11ee-a297-92fbcf53809c.jpg

在?操作符的定義下,長度為16的雙調序列的排序過程如下圖所示。

圖中第1列為二進制數,表示序列中每個元素在序列中的位置也就是地址,用于體現原位運算的特征。

整個排序過程分為4個階段完成對應圖中的Stage 0~Stage3。

在Stage 0中,?的兩個操作數的地址間距為8(例如,3來自0號地址,95來自8號地址);在Stage 1中間距為4;在Stage 2中間距為2;在Stage 3中間距為1。




審核編輯:劉清

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

    關注

    1608

    文章

    21367

    瀏覽量

    594663
  • 比較器
    +關注

    關注

    14

    文章

    1547

    瀏覽量

    106575

原文標題:用FPGA實現雙調排序(2)

文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    FPGA排序-冒泡排序介紹

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

    基于FPGA口RAM實現及應用

    的高速數據采集和在線測試對現代工業測控系統和儀器儀表的功能和性能提更高要求。CPU并行工作(單片機系統)方式得到廣泛應用。為了使2個單片機能夠快速有效交換信息,充分利用系統資源,采用口RAM
    發表于 04-24 09:44

    labview對數組排序方法

    號)變動情況,所以問題的關鍵是找出變化后的位置(索引號)這樣根據索引號的變化,就可以對對應的ARRAY2,ARRAY3進行相應的排序其實我們可以下面更簡單的方法`
    發表于 11-21 17:37

    FPGA實現口ram的問題

    我想用fpga實現一個口的ram,有8位的數據和地址線,他們是共享的,分時復用,請問怎么解決這個問題,另外讀寫沖突的問題怎么解決應該,哪位高手指點一下,謝謝啦。
    發表于 07-10 11:21

    怎么實現6通道電源排序

    怎么辦呢?有沒有一個簡單的方法對這些系統進行排序呢?謝天謝地,還真有!你可以將2個LM3880集成電路 (IC) 級聯在一起,以實現6通道加電和斷電
    發表于 09-04 11:55

    詳解 FPGA 電源排序的四種方案

    的缺點是其并不實施斷電排序。方法三:模擬上電 / 斷電排序器實施上電排序會比實施斷電排序更加容易。為了
    發表于 06-10 08:30

    四種FPGA 電源排序方案

    FPGA 引腳之間增設幾個 AND 門,就能給圖 4 中的電路添加受監視的排序功能。在該例中,PS2 僅在PS1超過其終值的90% 的情況下使能。這種方法可提供一種低成本、受監視的
    發表于 09-17 14:22

    如何選擇FPGA電源排序?這幾個方法交給你

    以上不等。通過遵循推薦的電源序列,可以避免在啟動期間吸取過大的電流,這反過來又可防止器件受損。對一個系統中的電源進行排序可采用多種方法來完成。本文將詳細說明可根據系統所要求的復雜程度來實現的電源
    發表于 04-27 07:00

    算法的原理是什么?基數排序是如何實現的?

    算法的原理是什么?基數排序是如何實現的?有哪幾種方法可以實現基數排序?
    發表于 07-05 07:42

    冒泡排序法的具體實現方法是什么?

    什么是冒泡排序?冒泡排序法的具體實現方法是什么?
    發表于 07-15 06:48

    關于電源排序的解決方案你了解嗎

    的缺點是其并不實施斷電排序。方法三:模擬上電 / 斷電排序器實施上電排序會比實施斷電排序更加容易。為了
    發表于 11-24 06:30

    基于FPGA的串并集合排序在雷達系統中的應用

    基于FPGA的串并集合排序在雷達系統中的應用
    發表于 01-04 14:59 ?0次下載

    分析FPGA 電源排序的四種方案介紹

    不等。 通過遵循推薦的電源序列,可以避免在啟動期間吸取過大的電流,這反過來又可防止器件受損。對一個系統中的電源進行排序可采用多種方法來完成。本文將詳細說明可根據系統所要求的復雜程度來實現的電源
    發表于 09-15 07:22 ?774次閱讀

    用于實現電源排序的各種方法

    電子發燒友網站提供《用于實現電源排序的各種方法.pdf》資料免費下載
    發表于 09-14 11:02 ?0次下載
    用于<b class='flag-5'>實現</b>電源<b class='flag-5'>排序</b>的各種<b class='flag-5'>方法</b>

    FPGA實現雙調排序方法詳解

    根據數據流的關系,我們可以采用單路徑延遲反饋(Single-pathDelay Feedback, SDF)運算單元流水結構,SDF單元如下圖所示。
    發表于 03-28 10:45 ?159次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>實現</b>雙調<b class='flag-5'>排序</b><b class='flag-5'>方法</b>詳解
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>