Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Другие архитектуры »   Использование НМД2 в ДВК
RSS

Использование НМД2 в ДВК

<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 9 10 11 12 13 * 14 15 16 17
Печать
 
andyTh
Гость

Ссылка

В общем нехрен по воскресеньям на работу ходить. И то, за чем пришёл (основное ) не вышло, и игрушка не получилась :(
Мысль о недостаточности чисто программного опроса мучила весь вечер, решил всё таки чуть переделать программу.
Но перед этим ещё раз проверить. И, блин, всё заработало. То, что не работало вчера.
В общем, обмен по шине работает.
По скорости, у меня ARM 32-bit CortexTM-M3 CPU;
Частота тактирования до 120МГц, 150 DMIPS/1,25 DMIPS/МГц (Dhrystone 2.1);
Частота тактирования портов CORE CLK / 2
Реально, пока не поставил программные защёлки на однократный проход шины (по перепаду SSYNC 1 в 0 выполнять проверку только один раз. До этого проверка крутилась в бесконечном цикле) получал в диагностическом терминале удвоенные-утроенные символы.
Типа " ДДООССТТУУППННОООЕЕ ООЗЗУУ"
Да, у меня стенд 1201.03 + КЦГД

Похоже надо теперь прикручивать HX сервер и копать далее.
Может коллега Patron модифицирует НХ загрузчик, что бы я его мог разместить у себя внутри контроллера и грузить систему со второго порта?
Или выкинуть КЦГД и работать с писишкой пока.

Ну и разобраться вот с этим:


А есть ли смысл производить в контроллере разбор протокола HX, когда можно просто считывать с Q-BUS команды и выполнять их.

Тогда проще взять за основу драйвер псевдо-диска HD

Контроллер должен принимать следующие команды от драйвера:

1. Установить номер привода для последующей операции.
2. Установить номер блока для последующей операции.
3. Установить счётчик слов для последующей операции.
4. Выполнить операцию "ЧТЕНИЕ".
5. Выполнить операцию "ЗАПИСЬ".
6. Выполнить операцию "СООБЩИТЬ РАЗМЕР НОСИТЕЛЯ" ( в блоках ).

По командам "ЧТЕНИЕ" и "ЗАПИСЬ" контроллер должен прочитать/записать заданное количество слов через регистр данных.
По команде "СООБЩИТЬ РАЗМЕР НОСИТЕЛЯ" контроллер должен поместить в регистр данных размер носителя в заданном приводе.

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


Если мы используем только 65535 блоков по 512 слов, не маловата ли ёмкость диска выйдет?
Сейчас на форуме
_Patron_
Member


Откуда: Москва
Всего сообщений: 146
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 дек. 2012
AndyTh написал:
[q]
грузить систему со второго порта
[/q]
Но если сам загрузчик попадает в память через посылку команд модификации ячеек в пульт ДВК - сделать это можно только через основной порт или через эмулятор клавиатуры МС 7004, подключенный к КЦГД / КСМ.
andyTh
Гость

Ссылка

У меня "на борту" 512К флеша. Если я могу сделать доступной ячейку с адресом хххх, то так же могу и диапазон хххх-уууу в который положить тело загрузчика и выполнить его затем из адреса хххх.
Ну да ладно, это такое.
Прав ли я на счёт размера "диска" блочного устройства, 65536*512 = 32К?
Или на количество блоков можно выделить несколько 16бит слов?
На что лучше ориентироваться, прикручивая интерфейс?

Есть ли где описание встроенного в 1201.03 MSCP загрузчика?
Сейчас на форуме
_Patron_
Member


Откуда: Москва
Всего сообщений: 146
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 дек. 2012
AndyTh написал:
[q]
положить тело загрузчика и выполнить его затем из адреса хххх
[/q]
А как процессор узнает, что ему надо передать управление на этот адрес..
[q]
65536*512 = 32К?
[/q]
Именно так - это ограничение на максимальный размер диска в RT-11.
andyTh
Гость

Ссылка

_Patron_ написал:
[q]
А как процессор узнает, что ему надо передать управление на этот адрес..
[/q]
Я с консоли наберу xxxxG.


_Patron_ написал:
[q]
Именно так - это ограничение на максимальный размер диска в RT-11.
[/q]
Вот тут у меня переворот мировоззрения :)
Нет, к своему стыду я пока особо не вникал, но вот помнятся мне диски на Э85 в 5 и 10 мег побитые на 2 куска и с RT11.
По крайней мере я так считал, это была машина гораздо более старшего коллеги. ПРОС он снёс, поставил RT11 и возился с каким то специфическим софтом. От машины всех гонял.
...и что нам делать с гигабайтной флешкой...
Сейчас на форуме
Anonymous
Advanced Member


Откуда: Москва(Россия)
Всего сообщений: 2537
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
22 нояб. 2011
Не 32Kb, a 32Mb...

AndyTh написал:
[q]
и что нам делать с гигабайтной флешкой...
[/q]
Диски в RT11 имеют номер привода от 00 до 077 (в восьмеричной системе), т.о. доступно 2Гб для каждого устройства. Для многих устройств можно выборочно переназначать адрес начала каждой из 64 32Мбайтных партиций, получая доступ к гораздо большему объему. Можно переназначение сделать не через SET, а через .SPFUN, тогда из программ собственных будет доступ к пространству более 2Гб.
MM
Advanced Member


Откуда: Павловский Посад Мск.обл.
Всего сообщений: 3418
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
2 авг. 2013
Вот мы и подошли к неприступной скале - софту для работы с регистрами винта.
*
Аппаратный загрузчик предлагаю разместить с адреса 173000....173776 - т.е. для загрузки с винта надо просто набрать 173000G
( В МС1201.03/04 - 17773000G ). Или предусмотреть переключатель адресов расположения текста загрузчика и его вида ( т.к. даже минимальное ПЗУ позволяет сделать несколько вариантов ).
На время разработки там следует поставить эмуль ПЗУ, а после проработки кода - натуральное ПЗУ ( 2 шт. 556РТ7 ).
МС1201.03 имеет режим пуска прямо на 173000 - переключателем на плате, сигнал WO ВМ3 - таким образом надо писать так, что бы произвести подготовку М-ЭВМ с нового старта ( посте вкл. питания ).
Так же не следует забывать пользователей М-ЭВМ, у которых нет терминала 177560 - БК и др. виды ЭВМ.
*
2 Гбайт - очень хорошо, можно даже наделать дров - типа D0.SYS , D1.SYS , D2.sys .....
*
Интересно , в Демос как дела с каталогом/максимальным объемом винта и т.п. фундаментальными ограниченими ?
andyTh
Гость

Ссылка

Anonymous написал:
[q]
Не 32Kb, a 32Mb...
[/q]
А разве блок не 512 байт? Хотя что мешает ему быть 65535 слов. Тогда
65535 блоков * 65535 слов * 2 байта = 8 гиг?
Сейчас на форуме
andyTh
Гость

Ссылка

MM написал:
[q]
Вот мы и подошли к неприступной скале - софту для работы с регистрами винта.
[/q]
Не нужно вам морочиться с регистрами винта. Просто дайте мне номер блока и заберрите данные из буфера или регистра. Остальное я сделаю.
Сейчас на форуме
_Patron_
Member


Откуда: Москва
Всего сообщений: 146
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 дек. 2012
AndyTh написал:
[q]
А разве блок не 512 байт?
[/q]
65536*512 = 32M

А где будет работать сервер HX-протокола..

На борту?

Там неслабые количества кода.
<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 9 10 11 12 13 * 14 15 16 17
Печать
Полигон-2 »   Другие архитектуры »   Использование НМД2 в ДВК
RSS

1 посетитель просмотрел эту тему за последние 15 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS