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

User Tag List

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

Тема: >64k на 16-ти разрядной шине?

  1. #1
    Junior
    Регистрация
    29.04.2008
    Адрес
    Нижний Новгород
    Сообщений
    4
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию >64k на 16-ти разрядной шине?

    уже давно интересует вопрос:
    каким образом в спектруме реализуется 128k памти ведь у z80 16-ти разрядная шина памяти?
    Последний раз редактировалось fadey; 05.05.2008 в 12:23. Причина: (ключевые слова) 64k 64кБ A16 16 FFFF смещение база 128k 128 кБ 1024k 1024 кБ z80 КР580ВМ80А

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

  3. #2
    Guru Аватар для SAM style
    Регистрация
    28.02.2005
    Адрес
    Великий Новгород
    Сообщений
    2,055
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    218
    Поблагодарили
    92 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    RTFM на тему "страничная адресация памяти". 64К - это видимый в данный момент кусок памяти, он и адресуется 16 битами адресной шины. Остальное, пока его не подключишь, не видно. Подключается оно через порт расширения памяти кусками по 16К в адреса #C000-#FFFF
    Все любят гипножабу

  4. #3
    Junior
    Регистрация
    29.04.2008
    Адрес
    Нижний Новгород
    Сообщений
    4
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    спасибо за ответ, рад што ктото это понимает.
    "порт расширения памяти" - мне это не понятно.
    про RTFM: а можно этот самый FM мне кинуть? ([email protected])
    и еще:
    страничная есть и у интела но там просто формально в командах работы с памятью стоит 2 регистра (база смещение) а ножек то на проце 20 и адресация прямая. поэтому я и не понимаю. и еще интересен регистр номера команды. он естественно разрешает только коды до 64к - так?

  5. #4
    Guru Аватар для SAM style
    Регистрация
    28.02.2005
    Адрес
    Великий Новгород
    Сообщений
    2,055
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    218
    Поблагодарили
    92 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Уточню - "страничная адресация памяти на ZX"
    На примере 128К.
    64К видимой и непосредственно адресуемой памяти делятся на 4 куска по 16К
    ram0: #0000-#3FFF
    ram1: #4000-#7FFF
    ram2: #8000-#BFFF
    ram3: #C000-#FFFF
    часть 0 обычно "затеняется" ПЗУ.
    теперь представь, что у тебя имеется 8 кусков памяти по 16К (банки, или страницы памяти, обозначим page0, page1, ... page7).
    Так повелось, что в ram1 всегда поставлена page5, в ram2 - page2
    а вот в ram3 мы можем ставить какую угодно из имеющихся страниц памяти. для этого необходимо вывести ее номер (и кое-что ещё) в порт #7FFD - порт расширения памяти для 128К.
    Вот так и получается - одновременно в памяти у нас только 4 страницы (64К), а остальные ждут, когда их подключат.

    порылся малость.
    http://ivr.webzone.ru/articles/call/index.htm (немного теории)
    Последний раз редактировалось SAM style; 30.04.2008 в 12:47.
    Все любят гипножабу

  6. #5
    Junior
    Регистрация
    29.04.2008
    Адрес
    Нижний Новгород
    Сообщений
    4
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а начинаю понимать.
    опуская формальности выглядит так
    проц может адресовать 64k
    есть контроллер памяти к нему подключено 128k с одной стороны
    и проц 16 адресов + data c другой как всегда

    если обратиться к памяти то контроллер напрямую переадресует к памяти (к той которая выбрана) а если обратиться по данному порту токонтроллер прекинет стрелку на другой кусок памяти.
    т.е. данный порт (7FFD) действует как расширение памяти (значение в него записанное это эффективно еще несколько бит адреса).
    Последний раз редактировалось fadey; 30.04.2008 в 13:23.

  7. #6
    Veteran Аватар для icebear
    Регистрация
    05.05.2005
    Адрес
    Германия
    Сообщений
    1,614
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fadey Посмотреть сообщение
    если обратиться к памяти то контроллер напрямую переадресует к памяти (к той которая выбрана) а если обратиться по данному порту токонтроллер прекинет стрелку на другой кусок памяти.
    т.е. данный порт (7FFD) действует как расширение памяти (значение в него записанное это эффективно еще несколько бит адреса).
    принцип действия обычного мультиплексора знаком? вот по такому же принципу работает порт #7ffd и схема расширения памяти.
    Who are you to fucking lecture me?

  8. #7
    Junior
    Регистрация
    29.04.2008
    Адрес
    Нижний Новгород
    Сообщений
    4
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    не знаком.
    только и, или, не и тригеры. больше ничего не знаю.
    ...правда по моему больше ничего и не надо.
    но в целом я ведь правильно понял?

  9. #8
    Veteran Аватар для icebear
    Регистрация
    05.05.2005
    Адрес
    Германия
    Сообщений
    1,614
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fadey Посмотреть сообщение
    не знаком.
    только и, или, не и тригеры. больше ничего не знаю.
    ...правда по моему больше ничего и не надо.
    но в целом я ведь правильно понял?
    ну да, только там автоматики нет (либо я неправильно понял твою фразу "а если обратиться по данному порту токонтроллер прекинет стрелку на другой кусок памяти"). что запишешь в #7ffd - то и будет включено в участок #C000-#FFFF и будет оставаться включеным до непосредственной перезаписи #7ffd.
    Who are you to fucking lecture me?

  10. #9
    Guru
    Регистрация
    16.11.2005
    Адрес
    Санкт-Петербург
    Сообщений
    2,893
    Спасибо Благодарностей отдано 
    1,125
    Спасибо Благодарностей получено 
    343
    Поблагодарили
    190 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fadey Посмотреть сообщение
    спасибо за ответ, рад што ктото это понимает.
    Я вот, например, этого не в курсе, как и многие, думаю гггг

  11. #10
    Guru Аватар для rasmer
    Регистрация
    20.01.2005
    Адрес
    Саранск
    Сообщений
    2,195
    Записей в дневнике
    2
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а я вот тока недавно немного стал разбираться
    Мои интры: [Kukarachess][Super boot rmx][tRUSHE MOSAIc][BLAZE]
    Мои игры: [Overload][Removal]

    Список игр для ZX-Spectrum: [2015] [2014]

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

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

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

Похожие темы

  1. О шине данных процессора...
    от ILoveSpeccy в разделе Несортированное железо
    Ответов: 25
    Последнее: 01.08.2007, 16:42

Ваши права

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