[請益]使用 Verilog寫算平均的電路問題請教
小弟目前在學習使用verilog寫一些電路
但最近寫影像處理Mean Filter,需要算九宮格的平均值
但電路模擬後卻無法產生Output
以下是我的code
module Mean(
input [9:0] DAGray,
input CLKin,
input iRES_N,
input iDVAL,
output reg oDVAL,
output [9:0] oDATA);
reg [7:0] pos [800*3-1:0];
reg [11:0] count;
reg chg;
integer i;
always@(posedge CLKin or negedge iRES_N)
begin
if(!iRES_N)
begin
oDVAL<=0;
chg<=0;
end
else begin
oDVAL <= iDVAL;
if(iDVAL) begin
for(i=2399;i>=1;i=i-1)
begin
pos[i]<=pos[i-1];
end
pos[0]<=DAGray[9:2];
end
if(count < 12'b011001000010) //1602
chg<=1'b0;
else begin
if(count > 12'b100101011111) //2399
begin
count<=12'b011001000001; //1601
end
chg<=1'b1;
end
count<=count+1;
end
end
reg [11:0] a;
reg [11:0] b;
reg [11:0] sub;
reg [9:0] out;
always@(posedge CLKin or negedge chg)
begin
if(!chg)
out<=10'b0;
else begin
/////////下面是將9個pixel相加除以9
a<=pos[1602]+pos[1602-1]+pos[1602-2]+pos[1602-800]+pos[1602-801]+pos[1602-802]+pos[1602-1600]+pos[1602-1601]+pos[1602-1602];
b<={3'b0,a[11:3]};
sub<=a-b;
out={1'b0,sub[11:3]};
end
end
assign oDATA=out;
endmodule
請各位大大幫幫小弟!!!!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.234.232
※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1506672320.A.9D1.html
→
09/29 16:09, , 1F
09/29 16:09, 1F
推
09/29 19:02, , 2F
09/29 19:02, 2F
→
09/29 20:45, , 3F
09/29 20:45, 3F
→
09/29 20:46, , 4F
09/29 20:46, 4F
推
09/29 21:42, , 5F
09/29 21:42, 5F
→
10/02 21:36, , 6F
10/02 21:36, 6F
→
10/03 13:44, , 7F
10/03 13:44, 7F
→
10/03 13:45, , 8F
10/03 13:45, 8F
→
10/04 00:33, , 9F
10/04 00:33, 9F
→
10/04 11:51, , 10F
10/04 11:51, 10F
推
10/04 20:26, , 11F
10/04 20:26, 11F
→
10/04 20:27, , 12F
10/04 20:27, 12F
→
10/04 20:27, , 13F
10/04 20:27, 13F
→
10/04 20:28, , 14F
10/04 20:28, 14F
推
10/06 01:26, , 15F
10/06 01:26, 15F
→
10/07 12:34, , 16F
10/07 12:34, 16F