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

User Tag List

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

Тема: Специалист: Тест памяти

  1. #31
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от vinxru Посмотреть сообщение
    Сейчас
    A0 A1 A2 A3 A4 A5 A6 0
    A7 A8 A9 A10 A11 A12 A13 1

    Будет
    A0 A1 A2 A3 A4 A5 A6 A7
    A8 A9 A10 A11 A12 A13 0 1
    Можно не всё сдвигать:
    A0 A1 A2 A3 A4 A5 A6 A7
    A13 A8 A9 A10 A11 A12 0 1
    ну и с процессора аналогично.

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

  3. #32
    Banned
    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ага, так проще

  4. #33
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,403
    Спасибо Благодарностей отдано 
    314
    Спасибо Благодарностей получено 
    595
    Поблагодарили
    441 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Читай выше: дикая особенность РУ5 - достаточно перебирать А0-А6.
    Видимо там 4 одинаковых поля по 16Кбит, а А7 мультиплексирует шину данных.
    В какой-то кнжке я читал, что действительно, у РУ5 4 матрицы от РУ6. Только, А7 там коммутирует не шину данных, а номер блока (это как выбор - пречердж банка в новых синхронных драмах).
    Однако, есть успешный опыт замены РУ5 в Экспрессе на буржуйские без какой-либо переделки, о чем я писал на соседнем форуме:
    Цитата Сообщение от HardWareMan
    Когда я переделал свой Специалист для загрузки с карты (ну чтобы с ПЗУ не париться), я освободил ОЗУ с адресов C000H по EFFFH, которое было в тени. Но загрузка стандартного монитора была какой-то странной: некоторые команды работали нормально, команда М крашилась однозначно, а некоторые команды приводили к неадекватным последствиям. Сначала я списал это на несовершенный код оригинального монитора и, возможно, он пытался писать в себя, ну а так как в оригинале ПЗУ не записывается, то все ок. Но дизассемблировав и разобрав по полочкам понял - дело не в этом. Сейчас, занявшись этим компом обратно вспомнил и начал копать глубже. В какой-то момент я вспомнил слова руководителя, сказанные еще в 90х, что ОЗУ РУ5Д на самом деле самое плохое и, как правило, имеет дефект в матрице. А если стоит цифра после буквы Д (РУ5Д1 или РУ5Д2), то она вообще означает только соответствующую рабочую половину. И я решил проверить ОЗУ - БИНГО!

    Ошибочный бит в памяти оказался всего в единственном месте и он всегда был равен 1! После уменьшения диапазона сканирования я вычислил его адрес: CDAAH, бит D4. Вернувшись в дизассемблер я нашел этот адрес:

    Да, это директива М. Буду менять ОЗУ. У меня как раз есть пару десятков LH21256 (аналог РУ7), оставшихся от моей первой 286й машины с 2МБ на борту. Паяльник к бою!

    Отпаял я все памятюшки и начал искать донора с сокетками для DIP16. И тут попался мне на глаза мой старый добрый Геркулес MGA:

    Эта карта имела ровно 64КБ на борту (аналоги РУ5), правда у моей чипы были MCM6665BP20. Перекинул панельки и решил найти, какая же все таки РУшка косячила. В компе стояли 7 "пиленных" РУшек и одна как раз РУ5Д:

    Опыт показал - битый бит давала именно она. В общем, перекочевали буржуйские РУшки в мой спец комплектом:

    Но я заметил кое-что: когда я вытащил РУ5Д, начала срываться синхронизация видео. Когда я заменил все РУшки - синхра так и сбивалась, особенно когда на экране все белое. Пришлось подкрутить подстроечник. Оказалось, битая РУ5Д (а может и другие тоже, но заметно стало когда я вытащил именно ее) жрет так, что стабилизатор чуток просаживал. После замены всей линейки ОЗУ питание стало ровно 4.98 вольт. Ну и еще заметил, что у буржуйских памятей паттерн запуска другой, забавный:

    Монитор теперь работает как надо, можно продолжать мучить SD карту.
    Последний раз редактировалось HardWareMan; 02.08.2015 в 08:49.

  5. #34
    Moderator Аватар для fifan
    Регистрация
    30.05.2007
    Адрес
    г. Лянтор, Сургутского р-на, ХМАО
    Сообщений
    4,165
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    125
    Поблагодарили
    71 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Обыскал весь подфорум Специалиста и не нашёл тему про неправильную работу теста RAM-диска. Пишу сюда.

    Нашли мне ошибку, что мой тест памяти/RAM-диска Специалиста МХ неправильно находит объём RAM-диска - всегда проверяет весь объём, все 512 кБайт. Набегами разбирался в коде программы и ... ничего не нашёл. Наличие страницы RAM-диска (одной из восьми) у меня определяется по записи и чтению в первую ячейку памяти каждой страницы. Всё бы хорошо, но после записи в несуществующую страницу (в верхнюю, например, а ОЗУ физически меньшего размера) определённого числа, оно потом же и считывается?! Я бы грешил на эмулятор, но в реальном компьютере (я использую Сябр с мапером МХ) тоже самое. И задержки делал и разные числа писал - бестолку.

    Проверял так. Поставил в панельку под микросхему RAM-диска ОЗУ размером 128 кБайт (UT1024), отогнул 30 вывод (СЕ) и подал на него +5 вольт. Я подумал, что в своей программе напортачил, применяю стандартную Тест_МХ. И что? Там также: S1 - первая страница памяти, S2 - вторая страница памяти. Всё, должны существующие страницы для проверки кончится. Не тут-то было - тест идёт дальше - S3 и S4 нашёл, но ведь микросхема же 128 кБайт, где этот тест нашёл ещё 128 кБайт?
    Значит не только я столкнулся с такой проблемой наличия не существующих страниц RAM-диска, но и разработчики Теста_МХ. Интересно они это заметили в 90-е года?

  6. #35
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,403
    Спасибо Благодарностей отдано 
    314
    Спасибо Благодарностей получено 
    595
    Поблагодарили
    441 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как данные могут сохраняться, если ни одно устройство на шине не выбрано? Смотрите свою схему и адресацию. А еще, если диск организован на одном чипе то появляется мирроринг, ты это учитываешь?

  7. #36
    Moderator Аватар для fifan
    Регистрация
    30.05.2007
    Адрес
    г. Лянтор, Сургутского р-на, ХМАО
    Сообщений
    4,165
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    125
    Поблагодарили
    71 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Как данные могут сохраняться, если ни одно устройство на шине не выбрано? Смотрите свою схему и адресацию. А еще, если диск организован на одном чипе то появляется мирроринг, ты это учитываешь?
    Как тогда определять наличие конкретной страницы RAM-диска?

  8. #37
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,403
    Спасибо Благодарностей отдано 
    314
    Спасибо Благодарностей получено 
    595
    Поблагодарили
    441 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fifan Посмотреть сообщение
    Как тогда определять наличие конкретной страницы RAM-диска?
    Нумеровать их. Т.е., сначала убеждаешься в работоспособности первой ячейки каждой страницы, прогоняя все возможные. На этом этапе можно отсеять несуществующие физически страницы (если у микросхем раздельные CS). Потом обнуляешь первый байт всех страниц (с учетом коррекции на предыдущем этапе), а после начинаешь нумеровать их. Причем, сначала считываешь значение, если оно равно 0 то записываешь номер (от 1 конечно) и идешь к следующей, а вот если там будет число (по идее - номер первой страницы или 1) то прекращаешь. И пройденное количество страниц и будет настоящим размером памяти.

    Забыл сказать, можно предварительно сохранять текущее содержимое этих байт в основном ОЗУ, выполняя тем самым неразрушающий тест.
    Последний раз редактировалось HardWareMan; 17.02.2019 в 07:54.

  9. #38
    Moderator Аватар для fifan
    Регистрация
    30.05.2007
    Адрес
    г. Лянтор, Сургутского р-на, ХМАО
    Сообщений
    4,165
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    125
    Поблагодарили
    71 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    сначала убеждаешься в работоспособности первой ячейки каждой страницы, прогоняя все возможные.
    В этом то и проблема. После записи любого числа в первую ячейку, считывание даёт положительный результат в любом случае, даже если страницы не существует физически.

  10. #39
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,403
    Спасибо Благодарностей отдано 
    314
    Спасибо Благодарностей получено 
    595
    Поблагодарили
    441 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я же говорю, пронумеруй их. И посмотри сколько страниц.

  11. #40
    Veteran Аватар для Serg6845
    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,002
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    250
    Поблагодарили
    230 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fifan Посмотреть сообщение
    В этом то и проблема. После записи любого числа в первую ячейку, считывание даёт положительный результат в любом случае, даже если страницы не существует физически.
    А нужно сначала записать в первые ячейки всех теоретически возможных страниц их номера, а уже после этого - прочитать и посмотреть что читается. Причем писать начиная со старшей страницы и вниз, а читать - с нулевой и вверх. тогда если например есть 4 страницы вместо 8 - при чтении вместо 0-1-2-3-4-5-6-7 будет 0-1-2-3-0-1-2-3.

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

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

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

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

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

Похожие темы

  1. Специалист: Варианты
    от Mick в разделе Специалист
    Ответов: 488
    Последнее: 26.02.2024, 13:07
  2. Специалист: Рекомпиляция.
    от Tim0xA в разделе Специалист
    Ответов: 38
    Последнее: 11.07.2022, 12:08
  3. Специалист: Бейсик
    от Prusak в разделе Специалист
    Ответов: 28
    Последнее: 26.07.2019, 16:07
  4. Специалист: Разное
    от Splinter в разделе Специалист
    Ответов: 171
    Последнее: 09.05.2018, 07:50
  5. Тест памяти
    от spleen в разделе Софт
    Ответов: 2
    Последнее: 02.05.2006, 14:15

Ваши права

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