小编ras*_*124的帖子

用于C++的Threadsafe Vector类

有谁知道c ++的快速和脏线程安全矢量类?我正在多线程处理一些代码,我相信我遇到的问题与使用向量的方式有关.我打算重写代码,但在我疯狂重做代码之前,我想用线程安全向量来测试它.我还想知道如果有这样的东西,它会比写我自己的版本容易得多.

c++ multithreading thread-safety

14
推荐指数
2
解决办法
2万
查看次数

在verilog中使用带有for循环的参数进行位选择

我在Verilog中设计一些硬件,但为了保持灵活性,我使用参数来设置宽度,这样我就可以根据需要修改宽度而无需修改代码.我遇到的一个问题是在一段代码中我希望能够并行写入多个单元格.

parameter DATA_WIDTH = 16;
parameter BUFFER_SIZE = 16;
parameter LOAD_WIDTH = DATA_WIDTH*BUFFER_SIZE;

input [LOAD_WIDTH-1:0] i_load_data;

reg [DATA_WIDTH-1:0]    r_data_buf[BUFFER_SIZE-1:0];

...

always@(posedge clk) begin
....
    else if (i_load_flag) begin
        for(i = 0; i < BUFFER_SIZE; i = i + 1)
            r_data_buf[i] <= i_load_data[i * BUFFER_SIZE + BUFFER_SIZE - 1:i * BUFFER_SIZE];
    end
end
Run Code Online (Sandbox Code Playgroud)

我需要将r_data_buf保留为数组,因为必须读取数据的方式.我也不清楚为什么verilog不喜欢这个代码,因为在编译时一切都是常量,或者我如何修复它并仍然得到我想要的行为.

parameters for-loop verilog hdl

3
推荐指数
1
解决办法
6113
查看次数