在写滤波程序的时候在网上看了好几篇大佬的笔记,都有提到使用3*3窗口,由于小白一个,看到复杂的理论就惧怕的不行。但是现在不得不上,自己调用移位寄存器ip核然后做了个3*3窗口出来,自己动手作出来忽然感觉到也不难嘛。

       先贴一张ip核模块的接口参数图

xilinx fpga 生成3*3窗口

生成3*3窗口需要两个寄存器,参数设置为数据宽度8,深度一个为4,另一个为3,选sclr端口

然后把两个移位寄存器串联起来就可以了

仿真的时候写好激励就行

放上最后仿真图

xilinx fpga 生成3*3窗口

两条线那会是不是3*3矩阵呀,然后往右推就行。

顶层模块

 1 module shift3by3(
 2 clk,
 3 rst_n,
 4 datain,
 5 dataout
 6 );
 7 input clk;
 8 input rst_n;
 9 input [7:0] datain;
10 output [7:0] dataout;
11 
12 wire [7:0] d_in;
13 wire sclr;
14 
15 
16 shiftip shift2(
17         .clk(clk), 
18         .sclr(~rst_n),
19         .d(datain), 
20         .q(d_in)
21 );
22 
23 shift3 shift3(
24     .clk(clk),
25     .sclr(~rst_n), 
26         .d(d_in), 
27         .q(dataout)
28 );
29 
30 endmodule
View Code

相关文章:

  • 2021-11-17
  • 2021-12-07
  • 2021-11-16
  • 2021-07-13
  • 2022-02-26
  • 2022-12-23
  • 2021-09-09
  • 2021-06-26
猜你喜欢
  • 2021-07-20
  • 2021-11-12
  • 2021-07-09
  • 2021-09-26
  • 2022-01-19
  • 2021-08-07
  • 2022-12-23
相关资源
相似解决方案