
PC на Z80!
Moderator: Shaos
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Вообще Вам дали ссылочку, но Вы, похоже, их не читаете...Shadovv13 wrote:Кинте пожалуйста ссылку с описанием 589ИК14, а то что то найти не могу.
Микропроцессоры и микропроцессорные комплекты
интегральных микросхем: Справочник. Том 1.

http://knigi.tr200.ru/f.php?f=%F1%EF%F0 ... %EE%E2&p=0
Содержит описание как 580-го комплекта, так 589-го и др.
В том числе описание 589ИК14 там есть. Какая ещё ссылка Вам нужна?
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
Извините пожалуйста
Есть у меня эта книга, в печатном виде. Почти нею не пользовался, поверхностное описание функционала и назначение виводов, вот пожалуй единственный от нее толк!
589ИК14 как контролер прерываний не подходит!
Вот если бы 8259 заставить выдавать только младший байт адреса, вот это по делу!

Есть у меня эта книга, в печатном виде. Почти нею не пользовался, поверхностное описание функционала и назначение виводов, вот пожалуй единственный от нее толк!

589ИК14 как контролер прерываний не подходит!
Вот если бы 8259 заставить выдавать только младший байт адреса, вот это по делу!
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
Взвесил все за и против, решил использовать микроконтроллер, для упрощения схемы и повышения функциональности. В наличии имеется ATmega8-16PU. Легко заменимая на другие этой серии, так что проблем с нахождением деталей для повторения, возникнуть не должно.
В мегу думаю воткнуть обработку прерываний, таймер, ловушку для команд(переключение страниц) и SPI(ну это попоже).
Жду критику такого решения!
В мегу думаю воткнуть обработку прерываний, таймер, ловушку для команд(переключение страниц) и SPI(ну это попоже).
Жду критику такого решения!

-
- Maniac
- Posts: 287
- Joined: 05 Nov 2008 19:47
- Location: 81.28.208.238
Можно в Мегу записать прикладную программу (обработчик прерыванй), и процессор вехнего уровня пофиг...Shadovv13 wrote:Взвесил все за и против, решил использовать микроконтроллер, для упрощения схемы и повышения функциональности. В наличии имеется ATmega8-16PU. Легко заменимая на другие этой серии, так что проблем с нахождением деталей для повторения, возникнуть не должно.
В мегу думаю воткнуть обработку прерываний, таймер, ловушку для команд(переключение страниц) и SPI(ну это попоже).
Жду критику такого решения!
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Зависит от устройства же. Именно поэтому, придумали реагировать на уровень (тогда устройству надо удерживать до подтверждения прерывания) или на перепад (очень хорошо для периодичных прерываний: просто подключаем к нужной частоте). Так что конкретнее вопросы задавай.Shadovv13 wrote:Подскажите пожалуйста, когда устройство в ПС видает сигнал прерывания на одну из линий IRQ, сколько времени устройство удерживает сигнал активным???
-
- God
- Posts: 1343
- Joined: 13 Nov 2010 04:06
Добавлю ещё, что метода формирования и снятия запроса на прерывание устройством описывается в доке на это устройство. Очень часто (к примеру, для 580ВВ55, ВВ51, ВВ79, ВГ75) запрос на прерывание снимается устройством после прочтения определённого регистра в этом устройстве (регистр состояния) или записи в определённый регистр (регистр передачи, к примеру).
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
Здравствуйте! Снова я с своими вопросами.
У меня немного нехватка времени, но затеи не бросил.
Вопрос, как правильно организовать адресное пространство памяти?
Сначала думал так.
ПЗУ 8К - ОЗУ 16К(НЕИЗМЕНЯЕМОЕ) - ОЗУ 32К(страничное)
То есть верхние 32К выбирается через порт, в моем случае через не док. команды.
Может кто может предложить какие варианты, более конструктивны!
У меня немного нехватка времени, но затеи не бросил.
Вопрос, как правильно организовать адресное пространство памяти?
Сначала думал так.
ПЗУ 8К - ОЗУ 16К(НЕИЗМЕНЯЕМОЕ) - ОЗУ 32К(страничное)
То есть верхние 32К выбирается через порт, в моем случае через не док. команды.
Может кто может предложить какие варианты, более конструктивны!
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Под такую конфигурацию у тебя даж СР/М не встанет, как мне кажется...Shadovv13 wrote:Здравствуйте! Снова я с своими вопросами.
У меня немного нехватка времени, но затеи не бросил.
Вопрос, как правильно организовать адресное пространство памяти?
Сначала думал так.
ПЗУ 8К - ОЗУ 16К(НЕИЗМЕНЯЕМОЕ) - ОЗУ 32К(страничное)
То есть верхние 32К выбирается через порт, в моем случае через не док. команды.
Может кто может предложить какие варианты, более конструктивны!
Лучше - сверху BIOS - примерно 2К в окне, общем для всех страниц.
Страницы - ОЗУ по 60К - 2К ОЗУ окно процессора для всех страниц.
Примерно так...
Впрочем лучше прочти Хардыча в ветке "Специалист" - он там зело рассудительно про конфигуацию ОЗУ написал.
А твоя раскадка сильно напоминает "Спектрум" - но ведь ты сам хотел от его архитектуры уйти...
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
Перечитал я ветку о "специалист", все заюзано для поддержания совместимости, а мне никакой совместимости как рас и не надо, а скорее наоборот, избавится от издержек.
Мне кажется 2к окна будет мало? Видь надо разместить ОСь, (стек, константы, обработчик прерываний, и много других подпрограмм)
Зайду на перед, я планирую в своем проекте VGA(в слоте) с разрешением 640х480х8(256 цветов). Так как это около 320к памяти, и перерисовка всего дисплея займет много времени, на видео будет тоже проц с набором подпрограмм для облегчения работы ЦП.
Мне кажется 2к окна будет мало? Видь надо разместить ОСь, (стек, константы, обработчик прерываний, и много других подпрограмм)
Зайду на перед, я планирую в своем проекте VGA(в слоте) с разрешением 640х480х8(256 цветов). Так как это около 320к памяти, и перерисовка всего дисплея займет много времени, на видео будет тоже проц с набором подпрограмм для облегчения работы ЦП.
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Для поддержания совместимости - это всё что "Специалиста" касается, а об СР/М и выборе окна разговор был отдельный.Shadovv13 wrote:Перечитал я ветку о "специалист", все заюзано для поддержания совместимости, а мне никакой совместимости как рас и не надо, а скорее наоборот, избавится от издержек.
Мне кажется 2к окна будет мало? Видь надо разместить ОСь, (стек, константы, обработчик прерываний, и много других подпрограмм)
Так что совместимость никто не навязывает.
ПЗУ и окно ОЗУ лучше вверху, поскольку ты планируешь прерывания, а их вектора - удобнее внизу...
2к окна - вполне достаточно для перехода между страницами с обменом информацией.
Нет нужды совать туда обработчик прерываний, и много других подпрограмм, главное чтоб из этих 2к был доступ ко всем страницам.
Хотя это во многом зависит от ОСи, которую ты собираешься написать...
-
- Novelist
- Posts: 40
- Joined: 06 Jul 2011 11:19
- Location: 95.135.142.82
А как быть к примеру с стартом, если ПЗУ в верху?
Получается процессор перебирая адреса и выполняя NOP добирается потихоньку до ПЗУ, или при старте подключается ПЗУ в нижний адрес?
Да и NMI вроде по адресу 66Н, как быть?
К примеру обработка NMI размещена в 1 странице, а выбрана 2-я!!?
Несомненно проблему решить можно, но зачем такие трудности?
Получается процессор перебирая адреса и выполняя NOP добирается потихоньку до ПЗУ, или при старте подключается ПЗУ в нижний адрес?
Да и NMI вроде по адресу 66Н, как быть?
К примеру обработка NMI размещена в 1 странице, а выбрана 2-я!!?
Несомненно проблему решить можно, но зачем такие трудности?
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
ПЗУ при старте включается в нижние адреса (по сути во все адреса)Shadovv13 wrote:А как быть к примеру с стартом, если ПЗУ в верху?
Получается процессор перебирая адреса и выполняя NOP добирается потихоньку до ПЗУ, или при старте подключается ПЗУ в нижний адрес?
Да и NMI вроде по адресу 66Н, как быть?
К примеру обработка NMI размещена в 1 странице, а выбрана 2-я!!?
Несомненно проблему решить можно, но зачем такие трудности?
и первая команда - JMP вверх в BIOS - приём известный, и здесь его многократно обсуждали...
Да и NMI вроде по адресу 66Н - как раз будет хорошо заменяемый вектор, если он в ОЗУ...
И прерывания удобно организовать по RST N.
Не вижу принципиальных трудностей, тем более, если есть желание написать ОС самому, хотя я не навязываю свою точку зрения.