User Tag List

Страница 59 из 191 ПерваяПервая ... 555657585960616263 ... ПоследняяПоследняя
Показано с 581 по 590 из 1910

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

  1. #581

    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    147
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fifan Посмотреть сообщение
    Может быть, но я файл взял с проект Орион-2010. У Ewgeny7 таких варнингов нет?
    Есть. Не обращай внимание. Происходит уменьшение разрядности спецпеременных до нужного размера.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  2. #582

    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    735
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    37 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Почему-то ранее не встречал таблички для VHDL, где были бы расписаны
    приоритеты операторов, знаков и т.п., т.е. в какой последовательности
    производится разбор сложных выражений.
    (Это позволит пресечь злоупотребление скобочками, между IF и THEN, например )
    Исправляем ситуацию:

    and, or, nand, nor, xor – самый низкий приоритет

    =, /=, <, <=, >, >=

    +, -, & (бинарные)

    +, - (унарные)

    *, /, mod, rem

    abs, not – высший приоритет

    Операторы с более высоким приоритетом выполняются раньше. Чтобы изменить такой порядок используются скобки.
    Последний раз редактировалось IanPo; 19.08.2010 в 15:11.
    ZXM-Phoenix rev.01 2048K, VG93 hw emulator

  3. #583

    Регистрация
    07.12.2006
    Адрес
    Минск
    Сообщений
    221
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Что может давать такие искажения? если бордер будет черный - искажение мене выражено
    (создано на ФПГА, картинка берется из ПЗУ, вывод на ВГА, тайминги приближены к его стандарту - не скандаблер)
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	2010.08.21-001.jpg 
Просмотров:	419 
Размер:	51.6 Кб 
ID:	20040  
    Последний раз редактировалось aniSKY; 21.08.2010 в 18:04.
    БЭМЗ ПЭВМ БАЙТ 48к
    CAHTAKA.002 48k
    БПК "Элара-Д" 48к +BDI(TR-DOS 5.03)
    SPECCY.2007 48k(2008.09)

  4. #584

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от aniSKY Посмотреть сообщение
    Что может давать такие искажения? если бордер будет черный - искажение мене выражено
    (создано на ФПГА, картинка берется из ПЗУ, вывод на ВГА, тайминги приближены к его стандарту - не скандаблер)
    Может два кадровых синхроимпульса?
    Или строчные синхроимпульсы в этом месте отличаются от других.
    Последний раз редактировалось zx-kit; 21.08.2010 в 18:08.
    "L-256"

  5. #585

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,307
    Спасибо Благодарностей отдано 
    1,033
    Спасибо Благодарностей получено 
    818
    Поблагодарили
    489 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    если бордер будет черный - искажение мене выражено
    Я бы проверил гашение в интервалах между строками.
    Больше игр нет

  6. #586

    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    147
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Файлы нужно смотреть. Похоже на то, что селекторы синхроимпульсов не имеют привязки к клоку.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

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

  8. #587

    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    147
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Похоже на то, что селекторы синхроимпульсов не имеют привязки к клоку.
    По человечески это звучит так.
    Имеются у нас счетчики пикселей/строк. Тактируются клоком. Но при этом после очередного клока эти счетчики еще какое-то время "устаканиваются". Но за это небольшое время их значение будет "колбаситься" весьма основательно, возникают ложные значения. Если формирователь синхры у нас сделан примерно так:

    hsyn<='0' when (vcnt>224) and (vcnt<228) else '1';

    то будут ложные переключения значения hsyn.
    Если так:

    process(vcnt)
    begin
    if vcnt=224 then
    hsyn<='0';
    elsif vcnt=228 then
    hsyn<='1';
    end if;
    end process;


    то результат может быть еще хуже, импульс hsyn может растянуться на изрядное пространство фрейма, притом в неположенном месте. Да и "защелка" ("latch") hsyn лишняя совершенно не нужна, ПЛИСы их очень не любят.

    Поэтому лучше дать кусочек времени счетчикам для "успокоения значения". Для этого применяем тот же клок. В результате мы прочитаем значение на период (или полпериода) позже, зато чётко и надежно. Заодно latch превратится в обычный синхронный триггер, что само по себе очень хорошо :

    process(clk,vcnt)
    begin
    if (clk'event and clk='1') then
    if vcnt=224 then hsyn<='0'; end if;
    if vcnt=228 then hsyn<='1'; end if;
    end if;
    end process;
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  9. #588

    Регистрация
    07.12.2006
    Адрес
    Минск
    Сообщений
    221
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а как тогда задать hsync='1' всегда кроме описанного примера выше, или по другому, до того как сменить значение на '0', hsync должен выдавать '1' ?. или это не нужно ( все равно после первой строки все войдет в норму)?
    у меня сейчас вот так:
    process (CLK,hcnt)
    begin
    if (CLK'event and CLK='1') then
    ---
    if (hcnt>=320 and hcnt<382) then HSYNC<='0';
    else HSYNC<='1';
    end if;
    ---
    if (hcnt>=312 and hcnt<400) then HBLANC<='1';
    else HBLANC<='0';
    end if;
    ---
    if (hcnt>=8 and hcnt<264) then HSCR<='1';
    else HSCR<='0';
    end if;
    ---
    if hcnt=448 then HRST<='1';
    else HRST<='0';
    end if;
    ---
    end if;
    end process;

    но по твоему мне как то больше нравиться, все четко и понятно.
    Последний раз редактировалось aniSKY; 22.08.2010 в 21:49.
    БЭМЗ ПЭВМ БАЙТ 48к
    CAHTAKA.002 48k
    БПК "Элара-Д" 48к +BDI(TR-DOS 5.03)
    SPECCY.2007 48k(2008.09)

  10. #589

    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    147
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от aniSKY Посмотреть сообщение
    все равно после первой строки все войдет в норму
    Правильно. Первый фрейм все равно будет косой, но его никто не увидит
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  11. #590

    Регистрация
    07.12.2006
    Адрес
    Минск
    Сообщений
    221
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    переписал свои селекторы вот так:
    process (CLK,hcnt)
    begin
    if (CLK'event and CLK='1') then
    ---
    if hcnt=320 then HSYNC<='0'; end if;
    if hcnt=382 then HSYNC<='1'; end if;
    -- if (hcnt>=320 and hcnt<382) then HSYNC<='0';
    -- else HSYNC<='1';
    -- end if;
    ---
    if hcnt=312 then HBLANC<='1'; end if;
    if hcnt=400 then HBLANC<='0'; end if;
    -- if (hcnt>=312 and hcnt<400) then HBLANC<='1';
    -- else HBLANC<='0';
    -- end if;
    ---
    if hcnt=8 then HSCR<='1'; end if;
    if hcnt=264 then HSCR<='0'; end if;
    -- if (hcnt>=8 and hcnt<264) then HSCR<='1';
    -- else HSCR<='0';
    -- end if;
    ---
    if hcnt=448 then HRST<='1';
    else HRST<='0';
    end if;
    ---
    end if;
    end process;

    это по горизонтали (закоментил старый вариант)
    и так:
    process (CLK,vcnt)
    begin
    if (CLK'event and CLK='1') then
    ---
    if vcnt=224 then VSYNC<='0'; end if;
    if vcnt=225 then VSYNC<='1'; end if;
    -- if vcnt=224 then VSYNC<='0';
    -- else VSYNC<='1';
    -- end if;
    ---
    if vcnt=216 then VBLANC<='1'; end if;
    if vcnt=241 then VBLANC<='0'; end if;
    -- if (vcnt>=216 and vcnt<241) then VBLANC<='1';
    -- else VBLANC<='0';
    -- end if;
    ---
    if vcnt<192 then VSCR<='1';
    else VSCR<='0';
    end if;
    ---
    if vcnt=264 then VRST<='1';
    else VRST<='0';
    end if;
    ---
    end if;
    end process;

    по вертикали (в коментах также старый вариант)
    и как итог - опять появились срывы, но вот почему только в середине экрана(вторая из трех частей) ума не приложу...... на ЖКИ 22" вайдскрин - теже пилы видны, что и на стареньком ВГА 14". опять в легком тупнике...
    Последний раз редактировалось aniSKY; 22.08.2010 в 22:22.
    БЭМЗ ПЭВМ БАЙТ 48к
    CAHTAKA.002 48k
    БПК "Элара-Д" 48к +BDI(TR-DOS 5.03)
    SPECCY.2007 48k(2008.09)

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

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

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

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

Похожие темы

  1. ДВК (и всё, что с ними связано)
    от Grand в разделе ДВК, УКНЦ
    Ответов: 4575
    Последнее: 17.11.2025, 11:38
  2. PAL/GAL и все что с ними связано.
    от Mick в разделе Клоны на ПЛИС, МК и БМК
    Ответов: 489
    Последнее: 19.09.2025, 18:39
  3. SMUC на дискретах и ПЛИС
    от spensor в разделе Scorpion
    Ответов: 846
    Последнее: 02.05.2025, 08:36
  4. Ответов: 1215
    Последнее: 10.02.2025, 19:04
  5. Вопрос по ПЛИС
    от Zloy в разделе Несортированное железо
    Ответов: 23
    Последнее: 17.10.2015, 17:12

Ваши права

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