久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3954|回復: 0
打印 上一主題 下一主題
收起左側

verilog實現冒泡排序源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:631487 發表于 2019-10-28 16:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
使用veriog實現冒泡排序

verilog源程序如下:
  1. `timescale 1ns / 1ps
  2. //////////////////////////////////////////////////////////////////////////////////
  3. // Company:
  4. // Engineer:
  5. //
  6. // Create Date:    09:16:46 03/30/2018
  7. // Design Name:
  8. // Module Name:    mian
  9. // Project Name:
  10. // Target Devices:
  11. // Tool versions:
  12. // Description:
  13. //
  14. // Dependencies:
  15. //
  16. // Revision:
  17. // Revision 0.01 - File Created
  18. // Additional Comments:
  19. //
  20. //===============================        說明                =====================================
  21. //        按照地址從小往大遞增的順序,數據是從大到小排列
  22. //================================================================================
  23. module main#(        
  24.                 parameter                                                                   ROW_WIDTH = 8, //行
  25.                 parameter                                                                   COL_WIDTH = 16        //列
  26.                 )
  27.         (
  28.                 input                                clk,
  29.                 input                                rst,
  30.                
  31.                 input                                enable
  32.     );
  33. //--------------------------------------------------------------------------------
  34.         reg                                                        [15:0]                comp_data_i;                   //數據
  35.         reg                                                                                        valid_i;                                           //數據有效

  36.         reg                                                        [15:0]                data                                                [COL_WIDTH:1];
  37.         reg                                                        [7:0]                        count;
  38. //--------------------------------------------------------------------------------
  39.         initial
  40.                 begin
  41.                         data[1]        =        16'd20;
  42. //                        data[2]        =        16'd723;
  43.                         data[2]        =        16'd20;
  44.                         data[3]        =        16'd12;
  45.                         data[4]        =        16'd456;       
  46.                         data[5]        =        16'd278;
  47.                         data[6]        =        16'd9756;
  48.                         data[7]        =        16'd433;
  49.                         data[8]        =        16'd10000;
  50.                         data[9]        =        16'd21;
  51.                         data[10]        =        16'd724;
  52.                         data[11]        =        16'd15;
  53.                         data[12]        =        16'd458;       
  54.                         data[13]        =        16'd279;
  55.                         data[14]        =        16'd9758;
  56.                         data[15]        =        16'd439;
  57.                         data[16]        =        16'd30;
  58.                 end
  59. //--------------------------------------------------------------------------------
  60.                 always@(posedge        clk        or posedge        rst)
  61.                         begin
  62.                                 if(rst)
  63.                                         begin
  64.                                                 count <= COL_WIDTH + 1;
  65.                                                 valid_i        <= 0;
  66.                                                 comp_data_i        <= 0;
  67.                                         end
  68.                                 else        if(enable)
  69.                                         begin
  70.                                                 count <= 1;
  71.                                         end
  72.                                 else        if(count <= COL_WIDTH)
  73.                                         begin
  74.                                                 comp_data_i <= data[count];
  75.                                                 count <= count + 1;
  76.                                                 valid_i <= 1;
  77.                                         end
  78.                                 else
  79.                                         begin
  80.                                                 valid_i        <= 0;
  81.                                                 count <= count;
  82.                                         end
  83.                         end

  84. //--------------------------------------------------------------------------------
  85. //                并行比較排序算法
  86. //--------------------------------------------------------------------------------
  87.         parallel                 u0_parallel (      
  88.                  .clk                                (        clk                        ),
  89.                  .rst                                (        rst                        ),
  90.                  .comp_data_i        (        comp_data_i        ),
  91.                  .valid_i                (        valid_i                )
  92.     );

  93. //--------------------------------------------------------------------------------
  94. //                串行比較排序算法
  95. //--------------------------------------------------------------------------------
  96.         serial                         u1_serial (
  97.                  .clk                                (        clk                        ),
  98.                  .rst                                (        rst                        ),
  99.                  .comp_data_i        (        comp_data_i        ),
  100.                  .valid_i                (        valid_i                )
  101.     );

  102. //--------------------------------------------------------------------------------
  103. //                冒泡法
  104. //--------------------------------------------------------------------------------
  105.         bubbling                 u2_bubbling (
  106.                  .clk                                (        clk                        ),
  107.                  .rst                                (        rst                        ),
  108.                  .comp_data_i        (        comp_data_i        ),
  109.                  .valid_i                (        valid_i                )
  110.     );
  111. //--------------------------------------------------------------------------------
  112. endmodule
復制代碼

所有資料51hei提供下載:
Sort_prj.rar (844 KB, 下載次數: 15)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产美女永久免费无遮挡 | 日韩国产精品一区二区三区 | 欧美精品一二三 | 亚洲国产精品久久 | 国产精品区一区二区三区 | 国产精品视频播放 | 国产亚洲一区二区三区 | 亚洲一区二区视频在线播放 | 欧美性久久 | 欧美日韩在线一区二区三区 | 精品国产亚洲一区二区三区大结局 | 欧美日韩视频网站 | 亚洲国产一区二区视频 | 九九九视频在线 | 国产精品久久免费观看 | 爱综合 | 99久久精品免费看国产四区 | 欧美综合在线视频 | 成人在线电影网站 | 国产精品99久久久久久www | 天天躁天天操 | 亚洲精品视频在线看 | 红桃视频一区二区三区免费 | 视频一区在线 | 国产九九精品 | 97人人超碰 | 欧美精品 在线观看 | 亚洲综合在线播放 | 天天草天天干 | 亚洲天堂中文字幕 | 91看片在线观看 | 久久久久亚洲精品 | 免费观看www | 久久久爽爽爽美女图片 | 日本午夜网 | a免费视频 | 羞羞的视频在线 | 色婷婷激情| 亚洲精品色 | 久久综合国产精品 | 日韩中文字幕 |