所以基本上我希望我的监视器显示负斜率线。目前的代码,我写了显示任何正斜线完美但是如果我试图将其变为负数,它不会出现或变成一片。 我为什么它不工作,但如果任何人都可以在正确的方向,将不胜感激指向我一个模糊的概念。我想显示通过VGA系统的Verilog负斜率的直线(正斜线正确显示)
(注:我的VGA驱动程序工作正常,还有VGAWrapper)
这是代码:
module vga_rgb(
input logic [8:0] row_o,
input logic [9:0] column_o,
input logic clk_i,reset_i,
output logic [15:0]rgb_i
);
localparam X1 = 10'd200;
localparam Y1 = 9'd100;
localparam X2 = 10'd400;
localparam Y2 = 9'd300;
wire [15:0] slope = ((Y2-Y1)/(X2-X1));
[email protected](posedge clk_i, posedge reset_i)
if (reset_i)
rgb_i <= 16'b0;
else
if (((row_o-Y1) == (slope * (column_o-X1))) && ((row_o < 300) && (row_o > 100/)))
rgb_i <= 16'b0;
else
rgb_i <= 16'b11111_111111_11111;
我应该提到,显示器是640by480 – DIB98
我怀疑某种整数溢出错误。 – mkrieger1