Wissance / ImageCaptureSystem

A Xilinx IP Core and App for line scanner image capture and store
11 stars 5 forks source link

Verilog модуль для считывания данных с линейных сканеров Dragster #2

Closed EvilLord666 closed 7 years ago

EvilLord666 commented 8 years ago

Вся логика по второй части ТЗ заключается именно в этом модуле:

  1. Необходимо сконфигурировать два линейных сканера по SPI, при этом конфигурирование можно осуществлять когда по линии CS2 не выбрано устройство для обмена. Конфигурируются параметры разрядности и коэффициента усиления каждого линейного сканера.
  2. Осуществить считывание всех четных битов матрицы с TAP A сканеров Dragster. Частота сканирования не менее 32000 строк в сек.
EvilLord666 commented 8 years ago

Эту задачу нужно разбить на две две подзадачи по п.1 и 2

EvilLord666 commented 7 years ago

А что, если использовать такой вариант:

localparam PIXEL_CLOCK_PER_PIXEL = 8; // не знаю сколько пиксель клоков нужно

reg [7:0] pixel_clock_counter;

...

initial pixel_clock_counter = 0;

always @ (posedge pixel_clock) begin if(!n_reset) begin load_pulse <= 1'b0;

    sm2_state <= 0;
    sm2_clock_count <= 0;
  end

  else
  // ...
  begin
      if(lval)
      begin
          pixek_clock_counter = pixek_clock_counter + 1;
          if(pixek_clock_counter == PIXEL_CLOCK_PER_PIXEL)
              pixel_captured = 1;
          else 
          begin
              pixel_captured = 0;
              pixel_clock_counter = 0;
          end
      end
  end

end

EvilLord666 commented 7 years ago

если драгстер шлет пиксель каждый пиксель клоктогдла все просто assign pixel_captured = lval ? pixel_clock : 0;