Важная информация

User Tag List

Страница 164 из 191 ПерваяПервая ... 160161162163164165166167168 ... ПоследняяПоследняя
Показано с 1,631 по 1,640 из 1901

Тема: ПЛИС и всё что с ними связано

  1. #1631
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от omercury Посмотреть сообщение
    Если считать с нуля и использовать счётчики развёрток, то задержка будет всегда.
    Если все сигналы на выводе будут иметь эту задержку, то в итоге этой задержки как бы и нет. По ресурсам дешевле задержать какой-нибудь однобитный сигнал, чем выёживаться с условиями других. Нужно просто иметь представление о цели, которую тебе нужно достичь а решение само нарисуется естественным путём, вот и всё. Если говорить за другие системы, то PPU от Денди вообще то, что считал из памяти выводит с задержкой на 8 точек. Но из-за грамотной позиции синхроимпульсов относительно растра телевизор все подравнивает и получается красиво. Надеюсь, понятно какую мысль я хочу донести?

  2. #1632
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Надеюсь, понятно какую мысль я хочу донести?
    Надеюсь.

    Картинка достаточно красивая?



    Дефайнами выбрать желаемое разрешение (сейчас стоит 640х480, оно же по умолчанию, если закомментить все дефайны),
    параметр DelayX задаёт упреждение чтения памяти относительно растра (положительное число, сейчас 1 такт),
    параметр MovSSI сдвигает весь растр влево/вправо (отрицательное/положительное число, сейчас без сдвига).
    Тактовую для синхрогенератора и HDMI установит само, для этого надо подключить к проекту вложенную PLL.
    Для циклона 4, входная частота 50МГц.
    Вложения Вложения
    Последний раз редактировалось omercury; 28.09.2019 в 22:48. Причина: забыл указать тактовую...

  3. #1633
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    omercury,

  4. #1634
    Veteran Аватар для dosikus
    Регистрация
    29.03.2005
    Адрес
    Ярославль
    Сообщений
    1,102
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    omercury, Пришлось отложить все до выходных -на работе был завал .

    Прикрутил к своему топу на VHDL, выставил 800х600.
    В настройках vpll - вижу - c0 540MHz , с1 -108MHz , - где я напортачил?


    Картинко




    [свернуть]



    Топ такой:

    Код в VHD


    Код:
    library ieee;
    use ieee.std_logic_1164.all;
    use ieee.std_logic_unsigned.all;
    use ieee.numeric_std.all;
    
    
    entity test_top is
        port(
            -- master clock 50.0 MHz
            CLK_50MHZ   : in std_logic;
    
            -- HDMI
            TMDS        : out std_logic_vector(7 downto 0);
    
            -- USB Host (VNC2-32)
            USB_NRESET  : in std_logic);
    
    
      
    end test_top;
    
    architecture rtl of test_top is
        
        signal reset : std_logic;
        signal areset : std_logic;
        signal locked0 : std_logic;
    
        signal clk_vga : std_logic;
        signal clk_tmds : std_logic;
        signal clk_spi : std_logic;
    
        signal vga_hsync: std_logic;
        signal vga_vsync: std_logic;
        signal vga_blank : std_logic;
        signal vga_r : std_logic_vector(7 downto 0);
        signal vga_g : std_logic_vector(7 downto 0);
        signal vga_b : std_logic_vector(7 downto 0);
    	 
    	 signal vga_out : std_logic_vector(7 downto 0);
    	 
    	 signal hcnt		: std_logic_vector(11 downto 0) := "000000000000"; 	-- horizontal pixel counter
        signal vcnt		: std_logic_vector(11 downto 0) := "000000000000"; 	-- vertical line counter
    	 signal shift		: std_logic_vector(7 downto 0);
    	 
    	 signal  px_y     : std_logic_vector(9 downto 0);
    	 signal  px_x     : std_logic_vector(9 downto 0);
    	 signal  vaddr    : std_logic_vector(19 downto 0);
    	 
    
    
    component vga_sync 
    port (
    
    clk_in : in std_logic;                   -- Input 25.175 MHz clock, this is a pixel clock for this VGA mode
    
    
    picselclock : out std_logic;            -- Output horizontal sync signal
    hdmi_clock : out std_logic;           -- Output vertical sync signal
    
    vga_hsync : out std_logic;            -- Output horizontal sync signal
    vga_vsync : out std_logic;           -- Output vertical sync signal
    
    disp_enable: out std_logic;          -- Set when a writable portion of display is enabled:
    
    
    v_addr : out std_logic_vector(7 downto 0)
          );
    end component;
    
    
    begin
    
    
                
                                     
    
        U_HDMI: entity work.hdmi
            generic map (
                FREQ        => 25200000,
                FS          => 48000,
                CTS         => 25200,
                N           => 6144)
            port map (
                I_CLK_VGA   => clk_vga,
                I_CLK_TMDS  => clk_tmds,       -- 472.6 MHz max
                I_HSYNC     => not vga_hsync,
                I_VSYNC     => not vga_vsync,
                I_BLANK     => not vga_blank,
                I_RED       => vga_out(7 downto 5)& vga_out(7 downto 5)& vga_out(7 downto 6),
                I_GREEN     => vga_out(4 downto 2) & vga_out(4 downto 2)& vga_out(4 downto 3),
                I_BLUE      => vga_out(1 downto 0) & vga_out(1 downto 0)& vga_out(1 downto 0)& vga_out(1 downto 0),
                I_AUDIO_PCM_L   => "0000000000000000",
                I_AUDIO_PCM_R   => "0000000000000000",
                O_TMDS      => TMDS);
    
    				
    				
    				VGA_SYN: vga_sync
    				 port map(
    					clk_in =>CLK_50MHZ,
    					picselclock => clk_vga,
    					hdmi_clock => clk_tmds,
    				    vga_hsync => vga_hsync,
    				    vga_vsync => vga_vsync,
    				    disp_enable	=>  vga_blank,
    					v_addr =>vga_out
    					 );
    	 
    	 
    
    end rtl;
    [свернуть]


    - - - Добавлено - - -

    UP , ставлю 640х480 - настройки PLL не меняются , те же 540 и 108...


    И еще - где в Quartus выбирается кодировка? Все комменты на кириллице пох***ись...
    Последний раз редактировалось dosikus; 05.10.2019 в 10:28.
    ZXM-Phoenix 1024+PROF ROM+SMUC+VGA
    Profi 1024+CF+CPM+VGA
    ATARI 800XL+SIO2PC+SIO2SD
    RK86@Maximite

  5. #1635
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dosikus Посмотреть сообщение
    В настройках vpll - вижу - c0 540MHz , с1 -108MHz , - где я напортачил?
    Пересохранил и убил все параметры. Верни v_pll.v в исходное состояние и больше визардом его не открывай.

    Просто наводи мыша на нужный модуль в проект навигаторе и увидишь все параметры.
    Последний раз редактировалось omercury; 05.10.2019 в 11:18.

  6. #1636
    Veteran Аватар для dosikus
    Регистрация
    29.03.2005
    Адрес
    Ярославль
    Сообщений
    1,102
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вон оно как ...
    ZXM-Phoenix 1024+PROF ROM+SMUC+VGA
    Profi 1024+CF+CPM+VGA
    ATARI 800XL+SIO2PC+SIO2SD
    RK86@Maximite

  7. #1636
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #1637
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dosikus Посмотреть сообщение
    И еще - где в Quartus выбирается кодировка? Все комменты на кириллице пох***ись...
    Не нашлось такого.
    Если переоткрытие файла не помогает, открой блокнотом (я обычно пользуюсь Notepad++), скопируй в русской раскладке и вставь в Квартус обязательно в русской раскладке.
    enjoy

  9. #1638
    Veteran Аватар для dosikus
    Регистрация
    29.03.2005
    Адрес
    Ярославль
    Сообщений
    1,102
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Облом, нет ни изображения ни синхро.

    Отбой, все шЫкарно.
    Забыл disp_enable проинвертировать.
    Засел переписывать топ на верилог...

    Но вопрос - v_pll_bb.v лишнее?
    Последний раз редактировалось dosikus; 05.10.2019 в 12:34.
    ZXM-Phoenix 1024+PROF ROM+SMUC+VGA
    Profi 1024+CF+CPM+VGA
    ATARI 800XL+SIO2PC+SIO2SD
    RK86@Maximite

  10. #1639
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dosikus Посмотреть сообщение
    Облом, нет ни изображения ни синхро.

    Отбой, все шЫкарно.
    Забыл disp_enable проинвертировать.
    вот и я думаю...



    Цитата Сообщение от dosikus Посмотреть сообщение
    Но вопрос - v_pll_bb.v лишнее?
    В принципе, да.
    Его визард по-умолчанию предлагает создать)))

  11. #1640
    Veteran Аватар для dosikus
    Регистрация
    29.03.2005
    Адрес
    Ярославль
    Сообщений
    1,102
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Хочу пока задействовать vaddr для выхлопа на HDMI (пока без памяти) как в VHDL:
    Код:
    I_RED       => vga_out(7 downto 5)& vga_out(7 downto 5)& vga_out(7 downto 6),
                I_GREEN     => vga_out(4 downto 2) & vga_out(4 downto 2)& vga_out(4 downto 3),
                I_BLUE      => vga_out(1 downto 0) & vga_out(1 downto 0)& vga_out(1 downto 0)& vga_out(1 downto 0),
    Как мне соединить выход v_addr с входами RGB - ругается что-то насчет неупакованного массива.

    Код:
    module vga_gen 
    (         
      input wire clk_50MHz,
      output	wire	[7:0]		TMDS 
    
    );
    
    
    wire h_sync;
    wire v_sync; 
    wire picselclock; 
    wire hdmi_clock;
    wire blank;
    reg vaddr[7:0];
    
    
    vga_sync  VGA_SYN 
    ( .clk_in (clk_50MHz), 
      .picselclock(picselclock) , 
      .hdmi_clock(hdmi_clock),
      .vga_hsync (h_sync),
      .vga_vsync (v_sync),
      .disp_enable (blank),
      .v_addr (vaddr[7:0])
    	);
    
    
     hdmi #(
    .FREQ(5200000),
    .FS(48000),
    .CTS(25200),
    .N(6144))
    HDMI1 (
    .I_CLK_VGA (picselclock),
    .I_CLK_TMDS (hdmi_clock),
    .I_HSYNC (h_sync),
    .I_VSYNC (v_sync),
    .I_BLANK (~blank),
    //.I_RED (8'b11111111),
    .I_RED <=vaddr,
    .I_GREEN (1'b0),
    .I_BLUE (1'b0),
    .I_AUDIO_PCM_L (1'b0),
    .I_AUDIO_PCM_R	(1'b0),
     .O_TMDS	(TMDS)
    );
    
    
    
    endmodule
    Последний раз редактировалось dosikus; 05.10.2019 в 15:18.
    ZXM-Phoenix 1024+PROF ROM+SMUC+VGA
    Profi 1024+CF+CPM+VGA
    ATARI 800XL+SIO2PC+SIO2SD
    RK86@Maximite

Страница 164 из 191 ПерваяПервая ... 160161162163164165166167168 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. ДВК (и всё, что с ними связано)
    от Grand в разделе ДВК, УКНЦ
    Ответов: 4534
    Последнее: 04.04.2024, 23:32
  2. Ответов: 1187
    Последнее: 22.12.2023, 20:53
  3. PAL/GAL и все что с ними связано.
    от Mick в разделе Клоны на ПЛИС, МК и БМК
    Ответов: 487
    Последнее: 01.12.2023, 00:30
  4. SMUC на дискретах и ПЛИС
    от spensor в разделе Scorpion
    Ответов: 844
    Последнее: 15.05.2023, 12:31
  5. Вопрос по ПЛИС
    от Zloy в разделе Несортированное железо
    Ответов: 23
    Последнее: 17.10.2015, 17:12

Ваши права

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