User Tag List

Показано с 1 по 10 из 661

Тема: Еще один Орион на ПЛИС

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    На картинке не вижу ничего "нехорошего", нет других сигналов, от которых зависят счётчики...
    Цитата Сообщение от andreil Посмотреть сообщение
    Делал так - в итоге получаю глитчи в реале из-за асинхронности счётчиков и полный разлад всего видеотракта, поскольку возникают "левые" импульсы для счётчика строк.
    На всякий случай напомню о синхронности: у счётчиков строк и столбцов должен быть один (!), единственный (!!), общий (!!!) клок, и это должен быть пиксельклок. А вот разрешения клока у счётчиков столбцов и строк должны быть разными, являющимися комбинаторной функцией от предыдущего состояния. Причём, функция разрешения счёта/сброса счётчика столбцов должна являться переменной для функции разрешения счёта/сброса счётчика строк. Вот посмотри и проникнись :
    Код:
    module HVSync (
      input wire PixClock,
      output reg HSync,
      output reg VSync,
      output reg [2:0] R,
      output reg [2:0] G,
      output reg [2:0] B);
     
      parameter HVA = 1024;		// Visible Area
      parameter HFP = 24;		// Front Porch
      parameter HST = 136;		// Sync Time
      parameter HBP = 160;		// Back Porch
     
      parameter VVA = 768;		// Visible Area
      parameter VFP = 3;			// Front Porch
      parameter VST = 6;			// Sync Time
      parameter VBP = 29;		// Back Porch
    
      //variables  
      reg [10:0] PC = 0;			// Pixel Counter (Column, X)
      reg  [9:0] LC = 0;			// Line Counter (Row, Y)
    
      wire VA = (PC <HVA) & (LC < VVA);						// Visible Area on screen
    
    always @(posedge PixClock)
    begin
    //  VA <= ((PC < HVA-1) | (PC == HVA+HFP+HST+HBP-1)) & ((LC < VVA) | (LC == VVA+VFP+VST+VBP-1));
    
      HSync <= (PC >= HVA+HFP-1) & (PC < HVA+HFP+HST-1);
     
      if (PC < (HVA+HFP+HST+HBP-1))
        PC <= PC + 1'b1;
      else begin
        PC <= 0;
    	 VSync <= (LC >= VVA+VFP-1) & (LC < VVA+VFP+VST-1);
    	 if (LC < (VVA+VFP+VST+VBP-1))
    	   LC <= LC + 1'b1;
    	 else
    	   LC <= 0;
      end
    end
    
    
    
    // Color Image
     
    always @(posedge PixClock)
    begin
      if (VA)
      begin
    	 if  ((PC[7:0]==0) | (PC[7:0]==255) | (LC[7:0]==0) | (LC[7:0]==255))
    	 begin
    		R <= 7;
    		G <= 7;
    		B <= 7;
    	 end
    	 else begin
    	   if (LC[7:6]==0)
    		begin
    		  R <= ~PC[9:7];
    		  G <= 0;
    		  B <= 0;
    		end
    	   if (LC[7:6]==1)
    		begin
    		  R <= 0;
    		  G <= PC[8:6];
    		  B <= 0;
    		end
    	   if (LC[7:6]==2)
    		begin
    		  R <= 0;
    		  G <= 0;
    		  B <= ~PC[7:5];
    		end
    	   if (LC[7:6]==3)
    		begin
    		  R <= PC[6:4];
    		  G <= PC[6:4];
    		  B <= PC[6:4];
    		end
    	 end
      end
      else begin
    	 R <= 0;
    	 G <= 0;
    	 B <= 0;
      end		
    end
    
    endmodule
    Результат здесь.
    Последний раз редактировалось LeoN65816; 12.07.2018 в 09:44.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Эмулятор ZX-Poly
    от Raydac в разделе Эмуляторы
    Ответов: 109
    Последнее: 07.12.2024, 21:42
  2. ОРИОН-2010 на ПЛИС.
    от Ewgeny7 в разделе Орион
    Ответов: 447
    Последнее: 23.11.2016, 12:27
  3. Еще один Ленинград 48
    от Ewgeny7 в разделе Ленинград
    Ответов: 0
    Последнее: 16.10.2007, 22:31
  4. Ещё один Д.Р.
    от GNTB в разделе Поздравления
    Ответов: 4
    Последнее: 19.07.2006, 01:52
  5. Ещё один подраздел
    от CityAceE в разделе Форум
    Ответов: 2
    Последнее: 22.05.2005, 11:57

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •