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

User Tag List

Страница 4 из 41 ПерваяПервая 12345678 ... ПоследняяПоследняя
Показано с 31 по 40 из 403

Тема: Дискуссии вокруг УКНЦ и прочее.

  1. #31
    Master
    Регистрация
    13.07.2018
    Адрес
    г. Переславль-Залесский
    Сообщений
    691
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    44
    Поблагодарили
    40 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Единственный способ нативно преодолеть предел 64К - I/D пространство. И то всего в 2 раза, но с ограничениями...
    В случае VIRTUAL, ключа /V: и прочая - работает диспетчер памяти , он в адресное пространство задачи подсовывает разные кусочки памяти.

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

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

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

  3. #32
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,001
    Спасибо Благодарностей отдано 
    287
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex Посмотреть сообщение
    Единственный способ нативно преодолеть предел 64К - I/D пространство. И то всего в 2 раза, но с ограничениями..
    Но даже там всё основывается на том, что а) нужно делать разные секции б) аккуратно разбросать код и данные, учитывая, что некоторые данные всё равно будут в секции кода и в) поддержку со стороны линкера.

    Цитата Сообщение от Alex Посмотреть сообщение
    В случае VIRTUAL, ключа /V: и прочая - работает диспетчер памяти - он в адресное пространство задачи подсовывает разные кусочки памяти.
    Но управляет этим всё равно программа. Пусть не напрямую изменяя регистры ДП в случае XM/XB/ZM/ZB мониторв в RT и в mapped варианте RSX, но всё равно программа. То есть просто так взять и преодолеть 64 кб - всё равно не получится

    Вдогонку про SPEED. На самом деле я ЗНАЮ одну процессорную плату, на которой на скорость памяти можно забить, но это была специально так спроектирована плата - МС1201.2018 (возможно и .2016)

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

    Цитата Сообщение от Alex Посмотреть сообщение
    Если просто предвыборка, то читаться из памяти инструкции будут не по одному разу... Особенно в коротком цикле...
    В длинном, с многократным повторением - предвыборка менее скажется.
    Скажется, скажется

    Цитата Сообщение от Alex Посмотреть сообщение
    Вариант кэша... Программу в кэш... Данные не в кэше. Потом наоборот
    Всё зависит от того, как работает кэш (у него тоже есть задержки) и какой его размер. Могу сказать пока только про KDJ11-A и KDJ11-B - там, если уместить блок в 8 кб, то можно увидеть скорость в (Частота кварца/4), собстенно, это и позволило мне подвтердить утверждение, что J11 может выдать до 4.5 миллионов оп/с, ну а на моих камнях - и до шести (с кварцев в 24 МГц)

  4. #33
    Master
    Регистрация
    13.07.2018
    Адрес
    г. Переславль-Залесский
    Сообщений
    691
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    44
    Поблагодарили
    40 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Посмотреть и на данные снятые с МС1201.2018 было бы интересно. Как материал для сравнения.
    Предвыборка на сколько инструкций?
    Если у нас много одинаковых команд, можно посчитать на сколько скажется
    Нам никто не мешает взять хоть тысячу, даже десять тысяч команд

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

    можно ещё взять поток команд без обращения к памяти(чисто выборка команд) и поток с обращениями...

    И ещё, в документации по J-11 читал, что есть режим, когда вся память работает по скорости, как кэш...

  5. #34
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,001
    Спасибо Благодарностей отдано 
    287
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex Посмотреть сообщение
    Посмотреть и на данные снятые с МС1201.2018 было бы интересно.
    Да ничего особенного - ВМ3 он и есть ВМ3.

    Цитата Сообщение от Alex Посмотреть сообщение
    Нам никто не мешает взять хоть тысячу, даже десять тысяч команд
    В моём SPEED кодовый блок копируется столько раз, сколько есть свободной памяти, то есть на простых блоках (из одной команды) - там вполне под 40000-45000 команд

    Цитата Сообщение от Alex Посмотреть сообщение
    И ещё, в документации по J-11 читал, что есть режим, когда вся память работает по скорости, как кэш...
    Не так. Там есть сигнал - типа Попали в кэш. Когда на определённом этапе микроцикла (он 4 такта) он выставлен в 1, то чтение (и только чтение) из памяти будет длится 4 такта (один микроцикл). Если он не выставлен, то чтение будет длится 2 микроцикла (8 тактов) минимум - но до появления аналога RPLY
    Вот поэтому маскимальная скорострельность - тактовая делить на 4.
    И правильней будет сказать, что не вся память работает по скорости как кэш, а скорость памяти достаточна, что бы в нужное время (до схема) выставляла сигнал Попали в кэш. Как это сделали на PDP-11/93-94

  6. #35
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,210
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    608
    Поблагодарили
    400 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    И кстати в УКНЦ даже в книжке по прототипу вроде писали что 2 по 32к озу отходят в ЦП, почему у него могут быть адреса до 400000 (я понимаю как это глупо звучит с 16-бит процом)
    Как говорят, пруф в студию. Что-то быстрым поиском в описании прототипа я такого не нашёл. Может быть вы перепутали 40000 с 400000. Но и 40000 поиском не находится, только 140000.

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

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    (но тот их может припамить на ПЗУ, правда вылез косяк что примапить-то он примапливает, но запись идет в ОЗУ, а читается с ПЗУ, Alex_K еще пояснял мол ПЗУ-то быстрее считывается и пофиг что туда припамлено)
    Да, есть такое дело. В диапазоне 100000-117777 ("окно") ПЗУ можно отключить, правда есть одно НО, если вставлен контроллер IDE или ЭД от Электронных Работ, то они при отключении ПЗУ и выборе слота ставят в "окно" свою память. А вот в диапазоне от 120000 до 176777 ПЗУ действительно не отключить и читаться будет быстрее ПЗУ с наложением предыдущего чтения ОЗУ от контроллера ОЗУ ПП. Складываться, из-за инверсной шины, они будут по ИЛИ. Контроллер ОЗУ ПП сначала на шину выставляет свой регистр, а потом прочитывает в него два байта, после даёт RPLY.

  7. #36
    Activist Аватар для BlaireCas
    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    439
    Спасибо Благодарностей отдано 
    111
    Спасибо Благодарностей получено 
    322
    Поблагодарили
    125 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    Начнём с того, что у стандартного MACRO-11 адреса 16-ти битные, так что никуда они выше 177777 не вылезут.
    В самом УКНЦ есть регистровый доступ к памяти. Пишешь в ячейку адрес памяти/2 - в другой ячейке читаешь/пишешь слово данных. Соответственно есть доступ вплоть до адреса 400000. Код понятное дело по высоким адресам не запустить. Но данные-то там можно хранить, почему-бы и нет.

    К сожалению да, стандартный макро-11 тут не годится. Поэтому приходится использовать нестандартный макро-11 (еще и под винду который). Тот позволяет делать адреса выше 177777 (и имеет пару других плюшек навроде метки длинного размера).
    А также писать некий кастомный линкер и к программке прикручивать лоадер свой собственный.

    Нестандартно всё это конечно да и возможно мало кто использует эту верхнюю память (обычно она используется под видеоэкран).
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  8. #37
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,001
    Спасибо Благодарностей отдано 
    287
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    В самом УКНЦ есть регистровый доступ к памяти.
    Это как доп устройство.
    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Но данные-то там можно хранить, почему-бы и нет.
    Данные можно и на диске хранить - почему бы и нет. Вот только основное, чего не хватает на PDP-11 (хотя не хватает - громко сказано) - это прямо адресуемая память больше 64 кб. Но это ограничение архитектуры, с которой никакой ассемблер не поможет.
    Плюс (точнее минус) последствия использования такого ассемблера - с хорошей вероятностью будут проблемы с модулями, написанными под стандартный (и его возможности) MACRO-11. Плюс (снова минус) - а если есть уже оттранслированный (стандартным MACRO-11) модуль - насколько просто будет слинковать его с результатом нестандартного?

    Ну и что касается меня - все варианты нестандартных MACRO-11 для меня заканчиваются ровно на моменте - нет поддержки макросов и/или условной трансляции.

    Что же касается
    Цитата Сообщение от BlaireCas Посмотреть сообщение
    еще и под винду который
    - с RTP это вообще не проблема - доступен ВЕСЬ функционал и ВСЕ программы под RT

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

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Соответственно есть доступ вплоть до адреса 400000.
    Вот прям прямой доступ, да? или всё таки через
    Цитата Сообщение от BlaireCas Посмотреть сообщение
    регистровый доступ
    ?
    А если через регистровый - то какой смысл в нестандартном MACRO-11?

  9. #38
    Activist Аватар для BlaireCas
    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    439
    Спасибо Благодарностей отдано 
    111
    Спасибо Благодарностей получено 
    322
    Поблагодарили
    125 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Как говорят, пруф в студию.
    Извиняюсь. Как-говорится немного не то сказал (..и не в преферанс, и не выиграл, а проиграл

    Картинка

    [свернуть]


    Ну .. почти. Адреса только деленные на 2 указаны.
    Это "«Персональный компьютер укнц» №1 1995 год"

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

    Цитата Сообщение от Hunta Посмотреть сообщение
    какой смысл в нестандартном MACRO-11
    Ну удобно все-же представлять память непрерывной 0-400000 поскольку схемотехнически оно как-то так и сделано. (вон картинка). Другое дело что без костылей такую программу как уже сказал не загрузить в УКНЦ.

    Почему удобно - пишешь в коде:
    .=200000
    DATA01: .word 1,2,3,4,5
    и знаешь что в итоге у тебя по адресу 200000 будут лежать 1,2,3,4,5

    И кстати да, чтобы не уходить в оффтоп - надо будет еще затестировать скорость копирования вот той "верхней" памяти. Правда боюсь все тут станет несколько печальнее..
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  10. #39
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,210
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    608
    Поблагодарили
    400 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    И кстати да, чтобы не уходить в оффтоп - надо будет еще затестировать скорость копирования вот той "верхней" памяти. Правда боюсь все тут станет несколько печальнее..
    Через РА и РД?

  11. #40
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,001
    Спасибо Благодарностей отдано 
    287
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    и знаешь что в итоге у тебя по адресу 200000 будут лежать 1,2,3,4,5
    Правда? Или всё таки

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Другое дело что без костылей такую программу как уже сказал не загрузить в УКНЦ.
    Потому как нефига не будет по адресам 200000 лежать то, что нужно - стандартный линкер не поймёт, а нестандартного, как и загрузчика, как я понял - нету, по крайне мере пока, в природе.

    Технически же, предполагаю работу через регистр УК-НЦ, я могу (только без загрузки данных) организовать это и на стандартном MACRO, а используя свой код (всё равно его писать надо) - и проинить эту "верхнюю" память нужными значениями. А что для из этого предлагает нестандартный MACRO. И самый главный вопрос - а на выходе то у него что?

Страница 4 из 41 ПерваяПервая 12345678 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Материнки от УКНЦ и прочее.
    от tntpro в разделе Барахолка (архив)
    Ответов: 31
    Последнее: 13.06.2011, 23:21
  2. SDCC вокруг да около
    от andrews в разделе Программирование
    Ответов: 8
    Последнее: 26.03.2008, 08:16

Ваши права

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