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

User Tag List

Страница 3 из 18 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 180

Тема: 32-разрядный процессор, полностью совместимый с архитектурой PDP-11.

  1. #21
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,964
    Спасибо Благодарностей отдано 
    284
    Спасибо Благодарностей получено 
    626
    Поблагодарили
    527 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    , чтобы всё происходило оптимальным образом
    Цитата Сообщение от Patron Посмотреть сообщение
    если он использует малую часть ОЗУ под таблицы доступа
    Ну то есть пока никакого понимания - как оно всё должно работать.
    Помните, что компьютер - это дурак. Оно что то умеет делать (и его умений мало), но умеет это делать очень быстро. И если у человека в голове нет понимания того, как должна работать его программа (а внутренности проца - это тоже программа) - трудно ждать чего либо вменяемого от программы.

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

    Цитата Сообщение от MM Посмотреть сообщение
    пожалуйста, сделайте полноценную МПИ 24-х бит адрес по ГОСТ
    Смысл?

  2. #22
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MM Посмотреть сообщение
    Не проще ли ограничиться DEC-16 бит и сделать просто надстройку для работы с 32-х битным кодом ?
    Народ хочет разврата ( 4Гб непрерывных адресов памяти вместо 64Кб ).


    Цитата Сообщение от MM Посмотреть сообщение
    И, пожалуйста, сделайте полноценную МПИ 24-х бит адрес по ГОСТ.
    Быстрый 32-битный процессор не станет сам работать с медленной 5-вольтовой шиной - только через блок сопряжения.
    Последний раз редактировалось Patron; 02.09.2017 в 04:56.

  3. #23
    Master Аватар для svinka
    Регистрация
    18.02.2016
    Адрес
    г. Москва
    Сообщений
    618
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    40 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Быстрый 32-битный процессор не станет сам работать с медленной 5-вольтовой шиной - только через блок сопряжения.
    производители плат на 80386/80486 до этого как то не допёрли. Для сведения - VLB и PCI появились позже. А VLB сколько вольт была???
    про 5вольт PCI на частоте 33МГц даже в Википедии написано

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

    Цитата Сообщение от MM Посмотреть сообщение
    можно ограничиться исходной ISA-16
    там 20 бит адреса

    Цитата Сообщение от MM Посмотреть сообщение
    или подобной
    Это какой?
    Последний раз редактировалось svinka; 02.09.2017 в 04:35.

  4. #24
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    Ну то есть пока никакого понимания - как оно всё должно работать.
    А какие у нас альтернативы.. Если взять за образец управление мапингом памяти в PDP-11, то там 64Кб адресного пространства разбиты на 1024 блока по 64 байта, доступные для выделения в виде 8 страниц размером от 64 байт до 8Кб каждая. В случае 32-битного адресного пространства объёмом 4Гб, разбитого на 1024 блока по 4Мб - доступные для выделения 8 страниц могут иметь размер от 4Мб до 512Мб каждая. Для хранения информации о 1024 модах потребуется 1024*8*2*2 = 32Кб PAR+PDR. Это при 16-разрядных регистрах. При 32-разрядных регистрах - адресуемое через них пространство возрастает с 38 бит до 54 бит. Если снизить разрядность адресации до 42 бит - размер блока памяти может быть уменьшен с 4Мб до 512 байт.

    Проще говоря, переход в дековском MMU от 16-разрядных регистров к 32-разрядным - позволяет мапить в 42-битное физическое пространство 8 страниц размером от 512б до 512Мб с шагом 512б. Для хранения в MMU информации о 1024 модах потребуется 1024*8*4*2 = 64Кб PAR+PDR.

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

    Однако, всего 8 страниц по 512 Мб - как-то слишком крупно. Если не обращаться к MMU при каждой смене активного процесса 1000 раз в секунду, а только загружать регистры моды один раз при загрузке процесса в моду, тогда и 8192 страницы с максимальным размером 512Кб - вполне терпимо. Для хранения в MMU информации о 1024 модах в таком случае потребуется 64Мб PAR+PDR.
    Последний раз редактировалось Patron; 02.09.2017 в 05:27.

  5. #25
    Guru Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    г. Воронеж
    Сообщений
    6,210
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    210
    Поблагодарили
    181 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svinka Посмотреть сообщение
    Это какой?
    EISA?
    "Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.

  6. #26
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,964
    Спасибо Благодарностей отдано 
    284
    Спасибо Благодарностей получено 
    626
    Поблагодарили
    527 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    А какие у нас альтернативы
    Отказаться от понятия моды.

    Вы пытаетесь за её счёт решить задачу неперезагрузки дескрипторов отображения памяти при смене контекста (при переключении между процессами). Я пока знаю только две альтернативы - или были придуманы два варианта - или мы экономим служебную (внутриMMU-шную, читай внутрикристальную память) за счёт использования оперативной (и кто то должен загружать дескрипторы - или проц или MMU) или у нас есть (определённый) объём служебной с возможностью первоначальной загрузки и редкой перезагрузкой при переключении контекста.

    Первый сценарий в комбинации со вторым используют современные процы Intel (насколько я в курсе - процом создаётся дескриптор, адрес которого загружается в спец регистр MMU и содержимое которого MMU потом кеширует у себя внутри, что бы не лазить каждый раз в медленное озу, а при переключении контекста загружается адрес нового дескриптора и т.д.).

    Второй сценарий - в чистом виде - PDP-11 с возможностью неперезагрузки дескрипторов MMU при переключении между тремя контекстами (или режимами работы проца или модами - назовите как хотите)

    Первый сценарий замедляет переключение контекста при экономии служебных (быстрых?) ОЗУ
    Второй ускоряет переключение контекста при повышенных расходах служебных (быстрых?) ОЗУ - насколько повышенных - зависит от того сколько аппаратных описаний контекстов собрались реализовать.

    С моей точки зрения, продуманности подхода в предлагаемой модели проца - нет.

    Ещё один момент - микропрограммирование (именно классическое, а не использование традиционного проца - это будет уже эмуляция) - это не классическое программирования и реализовав Ваш проц в эмуляторе - Вы очень мало продвинитесь к созданию проца даже, скажем, на FPGA

  7. #27
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    С моей точки зрения, продуманности подхода в предлагаемой модели проца - нет.
    Для того тема и создана, чтобы продумать подход до его реализации.


    Цитата Сообщение от Hunta Посмотреть сообщение
    процом создаётся дескриптор, адрес которого загружается в спец регистр MMU и содержимое которого MMU потом кеширует у себя внутри, что бы не лазить каждый раз в медленное озу, а при переключении контекста загружается адрес нового дескриптора и т.д.
    Именно это и предлагалось, с учётом того, что дескриптор может находиться в кеше, ОЗУ или свопе и для каждой имеющейся моды ( пусть даже их имеется только три "классических" ) - процессор может загрузить дескриптор заранее и переключать его сменой моды.

    ...

    Пусть даже у нас только три моды, но сколько отдельно настраиваемых страниц памяти хочется иметь в 4Гб адресного пространства каждой моды - 8 ( как у PDP-11 ) или всё-таки больше ?
    Последний раз редактировалось Patron; 02.09.2017 в 15:25.

  8. #28
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,964
    Спасибо Благодарностей отдано 
    284
    Спасибо Благодарностей получено 
    626
    Поблагодарили
    527 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Пусть даже у нас только три моды
    Как мне кажется, основная причина появления режима Supervisor, так же DataSpace - попытка увеличить доступную для приложения память с 64 кб на что то побольшее. Поэтому смысла увеличивать количество режимов работы процессора не вижу. По идее - даже три (как и dataspace) - пока никак не просматривается - для чего? - в 32-битном режиме. Для 16-битном - да, там всё понятно.
    Идём дальше. Почему может понадобиться наличие страниц в адресуемом 4гб пространстве. Я пока вижу след. сценарии:

    - Доступ из ядра в адресное пространство пользовательского процесса
    - Доступ из ядра к странице в/в
    - Доступ из пользовательского процесс в адресное пространства ядра
    - Доступ из пользовательского процесс в адресное пространства другого процесс
    - Доступ из пользовательского процесс к странице в/в
    - Единственная копия библиотеки (типа FCSRES FSCFSL) в памяти и отображение на неё в адресном пространстве ядра или пользовательского процесса
    - Коду ядра или пользовательского процесса выделили кусок памяти при загрузке, оно захотело больше, пробуем расширить, а за сразу за физической памятью, которая была выделена - нужного количества свободного памяти нет - занята другим процессом - возможность строить из ненепрерывных сегментов физической памяти непрерывный сегмент виртуальной памяти окажется в такой ситуации плюсом.

    Первые шесть пунктов по сути описывают один и тот же сценарий. А теперь, внимание, вопрос - возможность отобразить куски своей памяти на память других процессов в количестве 2 в 20 степени штук (реально, конечно, поменьше - примерно так на один - для себя то память тоже надо иметь) - оно в какой ситуации может понадобиться? Даже моя буйная фантазия отказывает. Доступ к памяти пары десятков библиотек и пары десятков других процессов - я думаю покроют 99 процентов возможных сценариев - то есть, скажем 64 сегмента в 4гб-ом адресном пространстве - почти за глаза. Ну, что бы точно гарантировать - пусть будет 1024 сегмента. И то с моей точки зрения уже будет напоминать некоторые современные программные пакету - а давайте сделаем, что бы ВСЁ было.

    Дальше вопрос - откуда взялось адресное пространство на 42 бита? 4Тб - нафига столько?
    Цитата Сообщение от Patron Посмотреть сообщение
    поэтому объём физически доступной виртуальной памяти ограничен только объёмом SSD своп-диска ( для которого 4Тб уже не фантастика ).
    Вы чего такого объёмного собрались напихать в (свопнутую) память и получить дикие тормоза на свопе?

    У меня на комп 64 гига и мне его хватает более чем за глаза за ОДНИМ конкретным сценарием - когда я начинаю развлекаться с виртуалками. Но - о возможностях виртуализации пока никто не вспомнил, это раз, а во вторых - даже пара виртуалок и половина памяти в свопе - это будет крайне "весёлая" развлекуха.

    Вообщем, если не развлекаться виртуалками - много памяти не требуется, если только не идти по пути раздутых приложений и ядра - а основной цимес PDP-11 с моей точки зрения - легковесные по объёму приложения. Извините, для приложений по 4 гига у меня есть Windows и архитектуры x86-x64 - вот пусть там и остаются.

    Цитата Сообщение от Patron Посмотреть сообщение
    Именно это и предлагалось, с учётом того, что дескриптор может находиться в кеше, ОЗУ или свопе
    Цитата Сообщение от Patron Посмотреть сообщение
    или свопе.
    А вот тут мы получим развлекуху покруче варианта пары виртуалок с 16-гигами памяти на 4 гигах физической памяти плюс своп. Даже размещение в основном ОЗУ (которое по определению медленное по сравнению с кэш-память) - уже развлекуха. А кэш к тому добавляет дополнительного куража - MMU закэшировало дескриптор, а потом ядро взяло и изменило дескриптор в озу - получается, надо следить - кто куда и чего записал. Как бэ MMU не потребовался мощней проца.

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

    Да, забыл про расширение памяти. RSX такой подход не использует, про другие системы ничего сказать не могу - если что то и попадалось - память молчит, зараза. Учитывая, что теоретически это ускорило бы выделение памяти (RSX вроде в такой ситуации выгружает в файл подкачки, а потом загружает в новое место с требуемым новым размером) - видимо, что то есть плохое, почему DEC решило так не выделять память. Но.. у меня мыслей на эту тему пока нет

  9. #29
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    откуда взялось адресное пространство на 42 бита?
    Из расчёта = 1024 моды по 32 бита. Win64 поддерживает 44 бита адреса, внутренняя шина адреса у x64 = 52 разряда, внешняя = 40 разрядов ( если правильно понимаю ). А какое принципиальное ограничение максимального объёма ОЗУ, адресуемого данной архитектурой, хотелось бы иметь?


    Цитата Сообщение от Hunta Посмотреть сообщение
    Ну, чтобы точно гарантировать - пусть будет 1024 сегмента.
    Вот и я о том же - 8 сегментов по 512Мб уж слишком мало. 1024 сегмента по 4Мб - уже веселее ( точнее - от 512б до 4Мб с шагом 512б ).


    Цитата Сообщение от Hunta Посмотреть сообщение
    И то с моей точки зрения уже будет напоминать некоторые современные программные пакеты - а давайте сделаем, что бы ВСЁ было.
    С каких-то ориентировочных оценок надо начинать - ведь главные проблемы не в конкретных значениях, а в архитектурных решениях.

  10. #30
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,964
    Спасибо Благодарностей отдано 
    284
    Спасибо Благодарностей получено 
    626
    Поблагодарили
    527 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    А какое принципиальное ограничение максимального объёма ОЗУ
    Это достаточно сложный вопрос.

    Если брать с прицелом на железный проц и если не мультиплексировать данные-адрес то у нас - 32 проводника на данные и 32+неизвестно сколько на адрес, то есть 64+ - вот откуда ещё будет расти ограничение на физической размер памяти

    По поводу Win и x86-x64, ЕМНИП, проблема максимально возможного размера памяти ещё в другом - там вроде бы надо через дескрипторы описать ВСЮ доступную физическую памяти страницами (то есть на каждую страницу - свой элемент в дескрипторе) и даже при странице в 4 мб объем этих дескрипторов получается неприлично большим, если памяти много. Именно поэтому MS и ограничила макс поддерживаемый размер физической памяти не смотря на возможности проца.

    Надо будет попробовать собрать все мои мысли по поводу "PDP-11 моей мечты" в один файл, но боюсь это дело не ближайшего будущего - нужен практический опыт, что бы не спроектировать нереализуемый на практике проц (в FPGA, эмуляторы не в счёт, в эмуляторы можно всё что хочешь наворотить) Поэтому я и хочу поиграться с FPGA пока с "PDP-11 моей юности"

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

    Цитата Сообщение от Patron Посмотреть сообщение
    точнее - от 512б до 4Мб с шагом 512б
    И опять вопрос - с практической точки зрения нафига нам шаг в 512 байт на 4 гигах адресного пространства?

Страница 3 из 18 ПерваяПервая 1234567 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Fuzebox - полностью открытая 8-битная игровая приставка
    от CityAceE в разделе Зарубежные компьютеры
    Ответов: 22
    Последнее: 09.03.2017, 15:35
  2. MSX и EPSON-совместимый принтер
    от ipkin в разделе MSX
    Ответов: 3
    Последнее: 01.12.2011, 19:23
  3. Ответов: 5
    Последнее: 20.06.2011, 03:18
  4. Собрал комп полностью своими руками
    от scooby-do в разделе Зарубежные компьютеры
    Ответов: 14
    Последнее: 27.06.2009, 11:25
  5. Куплю ZX совместимый компьютер.
    от billgilbert81 в разделе Барахолка (архив)
    Ответов: 19
    Последнее: 05.12.2008, 20:33

Ваши права

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