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

User Tag List

Страница 135 из 271 ПерваяПервая ... 131132133134135136137138139 ... ПоследняяПоследняя
Показано с 1,341 по 1,350 из 2702

Тема: Цифровая археология: 1801 и все-все-все

  1. #1341
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Всем хороша Verilog-модель, но слишком она медленная
    Я вот что подумал - может быть стоит взглянуть на CUDA или OpenCL? Видеокарты то почти у всех есть
    Сам я пока краешком посмотрел OpenCL - мне для анализа микрокода надо 2G вариантов перебирать и анализировать. i4770 думает на одном потоке минут 15. Можно разбить на 8, но анализ еще хочется усложнить, поэтому и задумался над использованием GPU.

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

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Я вот что подумал - может быть стоит взглянуть на CUDA или OpenCL?
    Мне такое не по силам. Можно сделать эмулятор микропрограммного автомата - он должен быть быстрее чистого верилога.

    Если смотреть с принципиальной точки зрения - оптимальным решением является максимально быстрый чёрный ящик, все внешние состояния которого всегда потактово эквивалентны Verilog-модели. Созданная мной супер-быстрая абстрактная модель именно такая - она потактово эквивалентна для любой смеси команд и прерываний при любых значениях задержки RPLY ( больше месяца заняло тестирование всех вариантов сочетаний команд, прерываний и задержек ). Но там нет поддержки ДМА, нет эмуляции мега-глюка, нет эмуляции регистров многопроцессорной поддержки и т.п.

  3. #1343
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    она потактово эквивалентна
    То есть, взяли свою быструю модель и медленную "честную" на базе Верилога, и прогнали сравнения по тактам, а где находили различия - патчили свою быструю модель чтобы появилось соответствие?

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

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    То есть, взяли свою быструю модель и медленную "честную" на базе Верилога, и прогнали сравнения по тактам, а где находили различия - патчили свою быструю модель чтобы появилось соответствие?
    Более того - для каждой команды с каждым типом адресации и каждой из задержек RPLY от 0 до 6 тактов запускались прерывания всех типов на каждом из тактов выполнения команды. Итоговая абстрактная A-модель потактово эквивалентна V-модели во всех этих случаях.

    Если рассмотреть ситуацию в целом - A-модель реализует граф состояний входов и выходов V-модели при помощи машины состояний, осуществляющей переход от одного состояния ( вершины графа ) к другому - при помощи линейной последовательности команд процессора хоста. В момент достижения вершины графа состояние процессора хоста сохраняется, а при приходе следующего фронта эмулируемого тактового сигнала - состояние процессора хоста восстанавливается для текущей вершины графа и выполняется линейная последовательность команд процессора хоста, ведущая к следующей вершине.

    Таком метод эмуляции конечного автомата V-модели очевидно является оптимальным ( что подтверждается значительно более высокой скоростью работы ), вопрос лишь в том, насколько тождественны графы состояний A- и V- моделей, поскольку единственным использовавшимся методом сравнения являлся перебор различных последовательных наборов состояний входных сигналов.

  5. #1345
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    для каждой команды
    Для одной команды это недостаточно. Я почти уверен что времянка может зависеть на такт-другой от предыстории. Ну и, как я понял, фантомных циклов нет? Или получилось сэмулировать?

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

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Для одной команды это недостаточно.
    Проверялись все варианты, какие можно вообразить - все наборы предыдущих и последующих команд и т.д и т.п. Количество затраченных на тестирование человеко-часов вероятно превысило продолжительность разработки первой версии ядра Linux.


    Цитата Сообщение от Vslav Посмотреть сообщение
    Ну и, как я понял, фантомных циклов нет? Или получилось сэмулировать?
    Всё можно легко проверить. Комплект поставки "запускается из коробки" и позволяет получать осциллограммы состояния всех линий МПИ при выполнении любого кода на обеих моделях.

    Пока каких-либо расхождений в поведении A- и V- моделей обнаружить не удалось ( кроме заранее известных, вроде отсутствия эмуляции мега-глюка в A-модели ).

    Или можно просто заглянуть в исходник A-модели - все отклонения поведения процессора от стандартного там описаны на "нормальном человеческом C-языке" :

    Код:
    //
    
    	if( bVM1G ) { nALU_Delay += 3; }
    	else        { nALU_Delay += 8; }
    
    	Make_ALU_Delay();
    Последний раз редактировалось Patron; 16.11.2017 в 15:49.

  7. #1347
    Master
    Регистрация
    19.04.2013
    Адрес
    г. Чебоксары
    Сообщений
    531
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    99 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    ничего "выцеплять" не надо
    К сожалению, для моих целей - надо. Мне нужны максимально упрощенные исходники, не зависящие от UtilsLib.lib
    С уменьшенным наследованием от базовых классов, которые мне непонятно, что делают и для меня на начальном этапе избыточны.
    Я в общем-то даже не пытался ни собрать исходники, ни редактировать в своих целях. Просто сидел и рассматривал их в редакторе, и приходил в уныние от количества наследования классов. Поскольку некоторых конструкторов базовых классов я так и не нашёл, то решил отложить всё это до лучших времён.
    Как мне кажется, в файлах MPI_model.* реализовано именно то, что я долго и безуспешно пытался сделать сам, но так и не смог.
    Я хотел взять MPI_Interface, MPI_DeviceClass, потому, что свои мне совершенно не нравятся, взять MPI_1801VM1, по аналогии с MPI_VE_Timer сделать модель ВП1-037 с массивом памяти, запустить всё это и посмотреть, подойдёт ли полученное как основа для эмулятора БК, и стоит ли прилагать усилия дальше. Это было как раз примерно год назад, потом стало не до того.

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

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    К сожалению, для моих целей - надо. Мне нужны максимально упрощенные исходники, не зависящие от UtilsLib.lib
    Сделал такой вариант: MPI_API_v1.1

    Переделка заняла минут 10, всё остальное время ушло на добавление новых устройств для шины МПИ: SEL1, RAM, ROM, DL11, HD.

    Код:
    HD0 attached to [HDSYS.DSK] 
    MPI_API   v1.0  2017
    
    HD Boot-I-Cold boot..
    
    HD (177720) disk driver  v1.4  2015
    SL V08.00 [SW] Сторожевых С.В. 1988
    KZ V01.00 (C) ВЦ МИЭТ,  НОЯБРЬ 1987
    
    RT-11SB (Y) V05.07  
    
    .SET TT FORM
    
    .SET TT SCOPE
    
    .SET EDIT K52
    
    .SPEED
    
    ТЕСТ БЫСТРОДЕЙСТВИЯ 
    
    КОМАНДА СЛОЖЕНИЯ РЕГИСТР-РЕГИСТР
    БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      360
    
    КОМАНДА СЛОЖЕНИЯ РЕГИСТР-ПАМЯТЬ
    БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      176
    
    .


    Как выяснилось, A-модель быстрее V-модели только в 5 раз, но зато как раз получается реальное быстродействие 1801ВМ1.
    Последний раз редактировалось Patron; 18.11.2017 в 20:10.

  9. #1349
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Сделал такой вариант: MPI_API_v1.0
    а можно немного подробнее что это вообще такое? )
    Я скачал и ничего не понимаю, папка с какимито исходниками (на СИ?) и образ системы для HD в корне архива?
    Честно не понимаю что это и зачем? Возможно я пласт обсуждений какой-то пропустил в очередной раз?
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

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

    По умолчанию

    .

    Выложил релиз версии 1.1 с повышенным быстродействием:

    Код:
    HD0 attached to [HDSYS.DSK] 
    MPI_API   v1.1  2017
    
    HD Boot-I-Cold boot..
    
    HD (177720) disk driver  v1.4  2015
    SL V08.00 [SW] Сторожевых С.В. 1988
    KZ V01.00 (C) ВЦ МИЭТ,  НОЯБРЬ 1987
    
    RT-11SB (Y) V05.07  
    
    .SET TT FORM
    
    .SET TT SCOPE
    
    .SET EDIT K52
    
    .SPEED
    
    ТЕСТ БЫСТРОДЕЙСТВИЯ 
    
    КОМАНДА СЛОЖЕНИЯ РЕГИСТР-РЕГИСТР
    БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      376
    
    КОМАНДА СЛОЖЕНИЯ РЕГИСТР-ПАМЯТЬ
    БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      184
    
    .
    - - - Добавлено - - -

    Цитата Сообщение от hobot Посмотреть сообщение
    а можно немного подробнее что это вообще такое?
    Это потактовый эмулятор всех сигналов шины МПИ с двумя эмуляторами процессора:

    VM1_V - Потактовый эмулятор 1801ВМ1 на базе модели Verilog.

    VM1_A - Потактовый эмулятор 1801ВМ1 на базе абстрактной модели.


    Всё это нужно только тем, кто хочет сделать собственный потактово точный эмулятор БК-0010/БК-0011. Полная эмуляция каждого такта шины МПИ позволяет добиться абсолютно точных времянок при выполнении любых программ.

    Если желания разработать свой собственный потактово точный эмулятор нет - об этом релизе даже думать не надо.

Страница 135 из 271 ПерваяПервая ... 131132133134135136137138139 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 7
    Последнее: 28.06.2014, 17:50
  2. Микросхемы МПК 580,1801,1810 и другие...
    от Alex_Vac в разделе Барахолка (архив)
    Ответов: 44
    Последнее: 07.04.2012, 08:03
  3. ЦИФРОВАЯ МУЗЫКА НА ZX
    от AAA в разделе Музыка
    Ответов: 98
    Последнее: 18.09.2011, 22:33
  4. Учебный стенд УМПК-1801
    от dk_spb в разделе ДВК, УКНЦ
    Ответов: 2
    Последнее: 12.05.2010, 16:52
  5. Цифровая музыка от Вадима Ермеева
    от zxmike в разделе Музыка
    Ответов: 2
    Последнее: 06.08.2007, 23:13

Метки этой темы

Ваши права

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