User Tag List

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

Тема: LEN2PENT: как доработать тайминги ?

Комбинированный просмотр

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

    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,375
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    384
    Поблагодарили
    346 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от valerium Посмотреть сообщение
    В len2pen2.pdf есть некая "схема VAV" с реистором, где номинал указан как "н10" - это что означает ?
    100пф

    Цитата Сообщение от valerium Посмотреть сообщение

    Serg6845, или все-так на инвертированный /БС, как предложено выше ?
    вот сижу играюсь. можно и так, но тогда int слишком рано приходит. надо задерживать.

    Цитата Сообщение от valerium Посмотреть сообщение
    У меня еще такие мысли по поводу цифрового варианта: если то, что видим "на глаз" (задержка КС на 68 тактов H0) действительно так, то можно 17-разрядным счетчиком, тактированным по H0, на 71680-68=71612 (или 71611 ? считаем с нуля) такте включать /INT - тут мы должны попасть в начало телевизионной строк, а на 71679 выключать (и выполнять сброс счетчика). Либо то же самое по H2 и вчетверо короче (счетчик уже 15-разрядный). "Жирно" по железу, но если засунуть в простаивающую часть ПЛИСки, то вроде и не страшно ).
    Если разбег в несколько тактов останется, его можно дошлифовать условиями формирования INT.
    Жизнеспособно, как думаете ?

    И как можно по схеме точнее посчитать время сдвижки /КС ? В тактах сигналов H*, желательно. Я как ни силился, только запутал сам себя (
    у меня пока ближе всего к идеалу (по демке Rage) получилось вот так (5 нога D5 - на инверсном /BS):

    http://sksb3.no-ip.org:8085/lenin_int.png

    вся схема запускается по /КС, значение счетчика, выставленное на элементе and4 - активирует int, значение на and6 - деактивирует. можно добавить разрядов счетчика и взять вместо h1 например h0, вобщем есть с чем поиграть...

    по поводу задержки - считать лень, можно просто вбить кусок схемы в тот же квартус и смоделировать...

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

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

  3. #2

    Регистрация
    03.05.2020
    Адрес
    г. Челябинск
    Сообщений
    796
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    274
    Поблагодарили
    145 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Serg6845 Посмотреть сообщение
    100пф
    ...было бы, если б это был конденсатор, а не резистор ))

  4. #3

    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,375
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    384
    Поблагодарили
    346 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от valerium Посмотреть сообщение
    ...было бы, если б это был конденсатор, а не резистор ))
    в том месте резистор как-то смысла не имеет... кондюк мелкий от звона - еще может быть.

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

    Цитата Сообщение от valerium Посмотреть сообщение
    ...было бы, если б это был конденсатор, а не резистор ))
    в том месте резистор как-то смысла не имеет... кондюк мелкий от звона - еще может быть.


    хотя разве что 100 Ом - тогда к10, ошибка распознавания. но в таком случае верхний резистор не нужен.

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

  5. #4

    Регистрация
    03.05.2020
    Адрес
    г. Челябинск
    Сообщений
    796
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    274
    Поблагодарили
    145 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Serg6845 Посмотреть сообщение
    у меня пока ближе всего к идеалу (по демке Rage) получилось вот так (5 нога D5 - на инверсном /BS):

    http://sksb3.no-ip.org:8085/lenin_int.png

    вся схема запускается по /КС, значение счетчика, выставленное на элементе and4 - активирует int, значение на and6 - деактивирует. можно добавить разрядов счетчика и взять вместо h1 например h0, вобщем есть с чем поиграть...
    Этот вариант попытался понять, но он требует столько ног на сигналы с выходов от всех счетчиков, что их в моей ситуации просто неоткуда взять.
    Прикинул модуль счетчика со сбросом, счетчик пока 17-разрядный, тактируется от H0 (3,5МГц). Сбрасывается по активному /КС, точнее счет начинается только с момента, когда /КС становится неактивным (=1).
    Здесь 71612 - это кол-во тактов от нашего задержанного кадрового синхроимпульса до момента генерации INT следующего кадра,
    из него вычитается 3584 такта самого кадрового импульса, т.к. счетчик во время его активности не будет увеличиваться;
    а выключение активного INT (здесь он прямой) выполняется через 36 тактов (или правильная длительность 32 ?).

    CLK - тактовая 3,5МГц
    nKS - это /KS
    INT - это соот-но INT

    Код:
    library ieee;
    use ieee.std_logic_1164.all;
    use ieee.numeric_std.all;
    
    entity INT_GEN is
       port
       (
           CLK                    : in  std_logic;
           nKS                    : in  std_logic;
           INT                    : out  std_logic
       );
    end INT_GEN;
    
    architecture RTL of INT_GEN is
       signal COUNTER : integer range 0 to 71680;
    begin
       
      process (CLK, nKS)
      begin
         if (rising_edge(CLK)) then  
      
            if (COUNTER < 71680) then  
                 COUNTER <= COUNTER + 1;
            end if;
    
            if (COUNTER = 71612-3584) then  
                INT <= '1';
            end if;
    
            if (COUNTER = 71612-3584+36) then  
                INT <= '0';
            end if;
    
            if (nKS = '0') then
               COUNTER <= 0;
            end if;
    
         end if;
       end process;               
    
    end architecture;
    Компилируется в 18 макроячеек,добавил модуль в проект и создал "блок" на BDF для его подключения - остатка ПЛИСки вполне хватает.
    Но паять и проверять сегодня некогда, это отложим на следующий раз.

  6. #5

    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,375
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    384
    Поблагодарили
    346 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от valerium Посмотреть сообщение
    Этот вариант попытался понять, но он требует столько ног на сигналы с выходов от всех счетчиков, что их в моей ситуации просто неоткуда взять.
    откуда? этот вариант требует ровно два сигнала - /KS (он у меня называется vs) и h1. все остальные - формируются непосредственно в схеме. ну и на всякий случай - zero=gnd, one=vcc.

    Цитата Сообщение от valerium Посмотреть сообщение
    Прикинул модуль счетчика со сбросом, счетчик пока 17-разрядный, тактируется от H0 (3,5МГц). Сбрасывается по активному /КС, точнее счет начинается только с момента, когда /КС становится неактивным (=1).
    Здесь 71612 - это кол-во тактов от нашего задержанного кадрового синхроимпульса до момента генерации INT следующего кадра,
    из него вычитается 3584 такта самого кадрового импульса, т.к. счетчик во время его активности не будет увеличиваться;
    а выключение активного INT (здесь он прямой) выполняется через 36 тактов (или правильная длительность 32 ?).

    CLK - тактовая 3,5МГц
    nKS - это /KS
    INT - это соот-но INT


    Компилируется в 18 макроячеек,добавил модуль в проект и создал "блок" на BDF для его подключения - остатка ПЛИСки вполне хватает.
    Но паять и проверять сегодня некогда, это отложим на следующий раз.
    работать будет, а потом захочется еще что-нибудь впихнуть - а места нету... вот как у меня - запихал speccyboot, BDI, 256k, divmmc - а kempston mouse уже не лезет... порядка 10 ячеек не хватает.

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

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

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

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

Похожие темы

  1. А что если доработать SMUC?
    от AmoNik в разделе Scorpion
    Ответов: 21
    Последнее: 16.06.2015, 20:24
  2. Тайминги Leningrad-1
    от ZXMAK в разделе Ленинград
    Ответов: 17
    Последнее: 14.06.2013, 03:09
  3. Тайминги DENDY
    от evgs в разделе Nintendo
    Ответов: 7
    Последнее: 01.11.2011, 22:59
  4. Как доработать "Пентагон-128"?
    от AlexBel в разделе Pentagon
    Ответов: 36
    Последнее: 18.09.2011, 15:11

Ваши права

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