User Tag List

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

Тема: Еще один Орион НЕ на ПЛИС или калинка-малинка по-русски

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

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

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

    По умолчанию

    Denn, несколько советов.
    По схеме тактового генератора: в момент записи в порт #FC у сигнала CLK (на выходе 2И-НЕ) в случае разных фаз переключаемых частот однозначно будут глитчи и как их прохавает проц ты, наверное, догадываешься... Поэтому засинхронь сигнал CLK еще одним D-триггером теми же 40 МГц.

    Цитата Сообщение от Denn Посмотреть сообщение
    т.к. ВВ55 и МК физически не смогут даже на 10 МГц, а уж на 20 - и подавно.
    Возьми NEC D8255AC-2, D82C55AC-2, КР1834ВВ55А (длительность nRD >= 150 нс [3 такта 20 МГц], длительность nWR >= 100 нс [2 такта 20 МГц]).

    Цитата Сообщение от Denn Посмотреть сообщение
    Но для работы с таким RAM-диском придётся переключаться на клок 2,5 МГц, т.к. малопотребялющее СОЗУ на клоке 20 МГц работать не будет.
    Цикл чтения/записи памяти от 2 тактов. При 20 МГц это от 100 нс. Сейчас полно низкопотребляющей статики с доступом 35, 55, 70 нс, в том числе и в DIP-корпусе.
    Последний раз редактировалось LeoN65816; 23.03.2019 в 02:13.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

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

  3. #2

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    По схеме тактового генератора: в момент записи в порт #FC у сигнала CLK (на выходе 2И-НЕ) в случае разных фаз переключаемых частот однозначно будут глитчи и как их прохавает проц ты, наверное, догадываешься... Поэтому засинхронь сигнал CLK еще одним D-триггером теми же 40 МГц.
    Насколько я знаком с МП, в них все действия привязаны к тактовым импульсам. Соответственно, программное переключение портов также происходит по клоку.
    Прошу пояснить, откуда могут взяться глитчи?


    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    Возьми NEC D8255AC-2, D82C55AC-2
    Я возьму, а другие посмотрят и скажут "да ну его нафик", ещё какие-то дефицитные микросхемы нужно, побираться по китайским аукционам...

    Впрочем, на порт пользователя таки придётся ставить быструю "ВВ55", но он далеко не всем нужен.


    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    Цикл чтения/записи памяти от 2 тактов. При 20 МГц это от 100 нс. Сейчас полно низкопотребляющей статики с доступом 35, 55, 70 нс, в том числе и в DIP-корпусе.
    У меня есть ОРИОН-ПРО и я знаю вот что. В нём есть два варианта работы ПЗУ Монитора: прямой и с вэйтами. Выбирается джамперами на плате. В аннотации написано, что если ПЗУ "медленная", то нужно выбирать второй вариант. У меня импортная УФ ПЗУ с реакцией 120нс, при прямом подключении, на тактовой 5 МГц комп работает с глюками, а на тактовой 10 МГц не стартует вообще! При переводе на вэйтовый вариант комп работает без проблем. Из чего я делаю вывод, что 120нс не достаточно для МПС с клоком ЦП 10 МГц и даже 5 МГц (нестабильная работа).
    Дальше по аналогии: 70нс памяти не достаточно для 20 и даже 10 МГц.
    Можно конечно собрать на макете и проверить, но мне результатов на Орионе-ПРО достаточно. Это не теория, а честная практика.
    Поэтому для беспроблемной работы на 20 МГц я предпочту ставить 10нс СОЗУ CY7C1049D-10VXI.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  4. #3

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

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    Прошу пояснить, откуда могут взяться глитчи?
    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    в момент записи в порт #FC у сигнала CLK (на выходе 2И-НЕ) в случае разных фаз переключаемых частот однозначно будут глитчи
    1. Смотрим вложение. Длительность глитчей меньше минимально допустимых длительностей единицы или нуля тактовой, во вложении пример для 20 МГц процика. На меньших турбах (10, 5) эти глитчи проц на 20 МГЦ прохавает.
    2. Задержка положительного фронта nPC от текущей тактовой (от положительного фронта? от отрицательного фронта? запись в порт? или триггер маппируется на память? от этого всего и зависит задержка) во вложении идеализирована. В натуре все будет под еще большим вопросом.
    3. Поэтому тут надо делать даже не так, как в начале предложил, а по принципу мастер-помощник. Прямой выход с твоего триггера (мастер) турбы подается на второй D-триггер (помощник) и тактируется nLCLK (то есть загоняем момент переключения в зеленую зону вложения). А уже с него прямой и инверсный по-твоему на вилку комбинаторики. И желательно еще CLK (все-таки это клок) засинхрить теми же 40 МГц (хоть и задержка получается, зато надежно для клока).
    Вложения Вложения
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  5. #4

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    LeoN65816, спасибо за предметный интерес к теме и картинки. Насколько я понял, суть поднятой проблемы в задержках распространения сигнала от порта до логики коммутации.

    Я вижу работу этого узла следующим образом:



    В моём варианте глитчи не получаются. Если где-то неправ, поправьте.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  6. #5

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

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    В моём варианте глитчи не получаются. Если где-то неправ, поправьте.
    Не прав. Нарисуй растактовку счёта ИЕ7 и сравни со своим рисунком. Увидел ошибку?
    А теперь разрисуй все возможные варианты 20 <-> 2.5 (то есть на каждом положительном фронте с учетом задержки nPC). Увидел глитчи?

    PS. Я весь день потратил на рисование того вложения, там все наглядно видно. Но ты, почему-то, упорно не хочешь видеть очевидные вещи...
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  7. #6

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    LeoN65816, теперь я понял, о чём речь.

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    Не прав. Нарисуй растактовку счёта ИЕ7 и сравни со своим рисунком. Увидел ошибку?
    Это не ошибка, а рассмотрены не все возможные ситуации

    Хорошо, а какой вред возможен от паразитной "иголки" в случае переключения при разных "фазах" ?

    Если время импульса клока будет короче возможностей процессора, то он (процессор) изменений сигнала просто не заметит (перезарядка паразитной ёмкости не произойдёт и лог. уровень сигнала для МП не изменится).

    Можно сделать привязку переключения к фазе низшей частоты, и таки да это потребует двух ступеней триггера, но вопрос: насколько оправдано это усложнение схемы?

    В момент той самой "иголки" МП будет завершать отработку команды записи в порт #FC, нам в общем-то без разницы с какой скоростью он отработает один такт машинного цикла.

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

    П.С. "глитчем" я всегда называл коллизию на шине, когда "0" на короткое время "ударяется" с "1"... впрочем, не суть..
    Последний раз редактировалось Denn; 26.03.2019 в 13:14.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  8. #7

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

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    теперь я понял, о чём речь.
    Дык, а что спасибку-то не пнул...

    Цитата Сообщение от Denn Посмотреть сообщение
    Это не ошибка, а рассмотрены не все возможные ситуации
    Ошибка №1: фазы тактовых
    Ошибка №2: "рассмотрены не все возможные ситуации" - так я тебе об этом сразу же и указал (и разрисовал!!!)...

    Цитата Сообщение от Denn Посмотреть сообщение
    Хорошо, а какой вред возможен от паразитной "иголки" в случае переключения при разных "фазах" ?
    Если время импульса клока будет короче возможностей процессора, то он (процессор) изменений сигнала просто не заметит (перезарядка паразитной ёмкости не произойдёт и лог. уровень сигнала для МП не изменится).
    Как минимум, некорректное исполнение текущей инструкции (которая сразу за переключением), а то и вообще висяк.

    Цитата Сообщение от Denn Посмотреть сообщение
    Можно сделать привязку переключения к фазе низшей частоты, и таки да это потребует двух ступеней триггера, но вопрос: насколько оправдано это усложнение схемы?
    Плюс один триггер и один инвертор - это усложнение схемы?... Денис, я тебя таки умоляю!

    Цитата Сообщение от Denn Посмотреть сообщение
    В момент той самой "иголки" МП будет завершать отработку команды записи в порт #FC, нам в общем-то без разницы с какой скоростью он отработает один такт машинного цикла.
    Уф-ф-ф, Денис, ты ошибаешься.

    Цитата Сообщение от Denn Посмотреть сообщение
    П.С. "глитчем" я всегда называл коллизию на шине, когда "0" на короткое время "ударяется" с "1"... впрочем, не суть..
    Глитч - короткий вредный импульс.
    Последний раз редактировалось LeoN65816; 26.03.2019 в 13:42.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

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

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

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

Похожие темы

  1. Эмулятор ZX-Poly
    от Raydac в разделе Эмуляторы
    Ответов: 109
    Последнее: 07.12.2024, 21:42
  2. ОРИОН-2018 на ПЛИС
    от Павел Рябцов в разделе Орион
    Ответов: 125
    Последнее: 06.10.2023, 16:41
  3. Еще один Орион на ПЛИС
    от andreil в разделе Орион
    Ответов: 660
    Последнее: 07.05.2020, 02:02
  4. ОРИОН-2010 на ПЛИС.
    от Ewgeny7 в разделе Орион
    Ответов: 447
    Последнее: 23.11.2016, 12:27
  5. Ещё один Д.Р.
    от GNTB в разделе Поздравления
    Ответов: 4
    Последнее: 19.07.2006, 01:52

Ваши права

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