芯片资讯
热点资讯
- FPGA排序-冒泡排序(Verilog版)介绍
- Infineon品牌SLE 4432 C芯片IC EEPROM 256BYTE CHIP的技术和方案应用介绍
- 深度解析索尼的多重曝光HDR技术
- FPGA浮点IP内核究竟有哪些优势呢?
- EEPROM的数据保持时间有多长?
- Microchip微芯半导体AT97SC3205T-X3A1C20B芯片FF COM I2C TPM 4.4MM TSS
- 聊一聊MEMS先生的微机电系统
- Melexis品牌MLX81113KDC-BAB-000-RE芯片IC LIN RGB CTRLR 32KB 4CH 8
- Melexis品牌MLX81150LLW-DAA-000-RE芯片IC LIN SLAVE 32K FLASH 32QF
- Melexis品牌MLX81150LLW-DAA-000-SP芯片IC LIN SLAVE 32K FLASH 32QF
你的位置:EEPROM带电可擦可编程IC存储器芯片大全-亿配芯城 > 芯片资讯 > FPGA排序-冒泡排序(Verilog版)介绍
FPGA排序-冒泡排序(Verilog版)介绍
- 发布日期:2023-12-31 12:31 点击次数:381
在之前的推文中介绍了冒泡排序的实现,但是分享的代码使用的是SpinalHDL,最近有好多小伙伴后台私信问有没有Verilog版的代码。今天就给大家贴出来,具体原理参考FPGA排序--冒泡排序这篇之前的文章。
仍然以8个8bit的数为例来介绍冒泡排序,因此数据的输入和输出位宽均为64bit(8*8bit),使用valid信号来标识数据有效,整个实现采用流水线的方式。
`timescale 1ns / 1ps
module bubble(
input clk ,
CMOS图像传感器集成电路芯片
input rst ,芯片交易网IC交易网
input [63:0] data_in ,
EEPROM带电可擦可编程存储器芯片大全
input data_in_valid ,
ATMEGA系列ATMEL芯片COM
output [63:0] data_out ,
电子元器件PDF资料大全
output data_out_valid
);
reg [ 3:0] data_in_valid_ff;
reg [63:0] data_in_ff[3:0] ;
reg v[7:0][7:0] ;
reg [ 1:0] sum_1[7:0][3:0] ;
reg [ 2:0] sum_2[7:0][1:0] ;
reg [ 3:0] sum_3[7:0] ;
reg [7:0] data_out_temp[7:0] ;
reg data_out_valid_temp;
genvar i;
genvar j;
always @(posedge clk ) begin
if(rst == 1'b1)begin
data_in_valid_ff = data_in[j*8 +: 8];
v[j][i]
在代码中用了大量的生成语句,EEPROM带电可擦可编程存储器芯片大全这样可以降低我们的代码量,这些生成语句帮我们生成了大量的重复性电路,我们并不需要有什么担心。

仿真代码:
`timescale 1ns / 1ps
module tb_bubble(
);
reg clk;
reg rst;
reg [7:0] data_in_0;
reg [7:0] data_in_1;
reg [7:0] data_in_2;
reg [7:0] data_in_3;
reg [7:0] data_in_4;
reg [7:0] data_in_5;
reg [7:0] data_in_6;
reg [7:0] data_in_7;
wire [63:0] data_in;
reg data_in_valid;
wire [63:0] data_out;
wire data_out_valid;
initial begin
clk = 1'b0;
rst = 1'b1;
#50
rst = 1'b0;
end
always #5 clk = !clk;
always @(posedge clk ) begin
if(rst == 1'b1)begin
data_in_0
仿真结果:

可以看到每个时钟周期输出8个排好序的数字。

消耗的资源如上。如果我们不需要流水输出的话,使用的资源可以进一步进行压缩,这个就看具体的需求了,资源和性能的平衡。
审核编辑:刘清
相关资讯
- 全球FPGA芯片市场布局2025-10-08
- Microchip微芯半导体AT17LV002A-10CU芯片IC FPGA EEPROM 2M ALTERA 8LAP的技术和方案应用介绍2025-10-06
- Microchip微芯半导体AT17LV002-10TQU芯片IC FPGA EEPROM 2M 10MHZ 44TQFP的技术和方案应用介绍2025-10-05
- Microchip微芯半导体AT17N512-10SI芯片IC FPGA 512K CONFIG MEM 20SOIC的技术和方案应用介绍2025-10-04
- Microchip微芯半导体AT17N512-10SC芯片IC FPGA 512K CONFIG MEM 20SOIC的技术和方案应用介绍2025-09-29
- Microchip微芯半导体AT17N512-10PI芯片IC FPGA 512K CONFIG MEM 8DIP的技术和方案应用介绍2025-09-28
