Universal Memory Tester

Системный софт

Postby Koshi » Wed, 05.03.2014 14:25:41

umt2_3beta.png

Universal MEMORY tester v2.3

Supported:
1.Spectrum 128
2.Pentagon 1024/512
3.Scorpion1024/256
4.KAY 1024
5.KAY 2048 (Phoenix)
6.Profi1024/512
7.ATM4.5 (1024/512)
8.ATM7.1 (1024)
9.PentEvo (TSConf)
10.Sprinter (4096)

Алгоритмы тестирования памяти:
1. быстрое тестирование памяти, проверяется записью одного и тогоже байта в страницу.
  • Вначале проверяется наличие всех страниц 8(128kb)-256(4mb). Если хоть одна страница не совпала - выводит мессадж: "WRONG PAGING!!!".
    (проверяется записью номера страницы в её начало и затем проверки оного после записи кодов во все страницы)
  • Затем идёт проверка самих страниц. Если страница в порядке то она помечается ярко-зелёным квадратом!
    (вначале страница заполняется кодом #00 и проверяется, затем заполняется кодом #FF и опять же проверяется. То же самое повторяется с кодами #55 и #AA)
2. проверка памяти через запись псевдо-случайных чисел
  • Вначале проверяется наличие всех страниц 8(128kb)-256(4mb). Если хоть одна страница не совпала - выводит мессадж: "WRONG PAGING!!!".
    (проверяется записью номера страницы в её начало и затем проверки оного после записи кодов во все страницы)
  • Затем начинается двухпроходный тест. Вначале во все страницы пишутся случайные числа, пройденные страницы помечаются ярко-циановым цветом. Потом начинается второй проход - проверка сгенерированных данных. Страницы в которых всё нормально помечаются ярко-зелёным цветом, сбойные страницы - ярко-красным!
3. проверка памяти битовыми сдвигами
  • Вначале проверяется наличие всех страниц 8(128kb)-256(4mb). Если хоть одна страница не совпала - выводит мессадж: "WRONG PAGING!!!".
    (проверяется записью номера страницы в её начало и затем проверки оного после записи кодов во все страницы)
  • В начале, с помощью ГПСЧ, создаётся паттерн размером 2кб (находится прямо в экране). Этот блок данных размножается на всю память, следом запускается сам тест. Вначале сверяем память по паттерну, потом сдвигаем всю память на 1 бит, и заново запускаем сверку с паттерном, но так же сдвинутым на 1 бит. Продолжаем в цикле... Соответственно данные в память кидаются только 1 раз, а далее просто сдвигаются (модифицируются), с последующей проверкой.
P.S. если есть мысли по поводу алгоритмов тестинга - пишем!

Исходник: UMT 2.3.ASM + FONT32.C
Attachments
umt2_3x.zip
(17.94 KiB) Downloaded 721 times
umt2_3.zip
(19.33 KiB) Downloaded 1162 times
Last edited by Koshi on Wed, 25.12.2019 20:23:01, edited 18 times in total.
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby Koshi » Wed, 05.03.2014 14:27:50

начинаю потихоньку переселять темы, ещё живых проектов ;P
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby TS-Labs » Wed, 05.03.2014 15:15:42

Гуд. :ok2:
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby introspec » Fri, 07.03.2014 00:40:43

Очень интересно, хотя использовать по-назначению мне это и негде :)
User avatar
introspec
 
Posts: 579
Joined: Sun, 14.07.2013 15:36:47

Postby introspec » Fri, 07.03.2014 01:08:41

А исходники планируются к публикации? мой интерес к собственно тестам памяти невелик, но вот практический код манипулирующий 100500 сортами памяти - это довольно интересно, как мне кажется.
User avatar
introspec
 
Posts: 579
Joined: Sun, 14.07.2013 15:36:47

Postby g0blinish » Fri, 07.03.2014 08:04:39

ехехе, в старые времена 7zip служил не как тест, а как детектор глючной памяти..
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby TS-Labs » Fri, 07.03.2014 21:29:31

Как детектор глючной памяти служил инсталлятор винды.
Кстати, как железяка, могу сказать, что совсем не всегда из софтверного теста ОЗУ можно выловить багу ОЗУ, которая может вылезти на другом софте.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby EARL » Sat, 08.03.2014 11:53:02

Я в свое время детектил глючную память, путем запуска компиляции ядра FreeBSD и сборка влилась с ошибкой, если память была глючной, в то время как другие тестилки показывали, что с ОЗУ все норм. На профике у меня был какой-то косяк с некоторыми РУ7 при нагреве, поэтому начинали плавать биты в одной паге, но только когда машинка поработала перед этим какое-то время.
EARL
 
Posts: 71
Joined: Fri, 30.08.2013 09:29:15
ICQ: 393716620

Postby Black_Cat » Sat, 08.03.2014 12:27:20

Koshi, архитектура управления памятью указанная у тебя как KAY 2048 (Phoenix), насамделе именуется SKAY (т.е. Scorpion & KAY), она объединяет не токо управление ОЗУ, но и ПЗУ. Исправь пож. на "SKAY 2048 (Scorpion & KAY)", если не трудно.
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby MC68k » Sat, 08.03.2014 14:55:26

TS-Labs wrote:Как детектор глючной памяти служил инсталлятор винды OS/2 Warp.
fixed
An invisible thread connects those who are destined to meet, regardless of time, place, and circumstance. The thread may stretch or tangle. But it will never break.
User avatar
MC68k
 
Posts: 177
Joined: Sun, 22.12.2013 13:54:17
LOCATION: 3rd planet from sun

Postby palsw » Mon, 15.12.2014 21:31:12

чем отличается 0.9 от 1.0 ?
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Postby Koshi » Tue, 20.01.2015 22:15:16

palsw wrote:чем отличается 0.9 от 1.0 ?

да ничем по сути, манагер бейзы (4мб) заменен манагером тсконфы (4мб).
P.S. все порываюсь переписать umt с нуля. ибо то, что там щас - тихий ужас... ;P
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby TS-Labs » Tue, 20.01.2015 23:21:16

Категорически советую попробовать данный алгоритм:
? MM @ - 29.12.2012 00:01
Самый вредный и длинный тест ОЗУ:
1.Копируем в А-адрес массив (например, из ПЗУ) длиной Б.
2.Размножаем в ОЗУ вышеупомянутый массив.
3.Сравниваем с Оригиналом.
4.Сдвигаем на 1 бит по всей длине ОЗУ.
5.Сравниваем с оригиналом с бит-поправкой.
6.Повторить циклы сдвиг-контроль много раз.(например, 10000 раз)
7.Не забывать между циклами делать паузу не менее 0.5 с без обращения к ОЗУ вообще (например, какой-либо цикл в ПЗУ).
8.Считается, что такой цикл, пройденный 2 самых полных круга (полных - по количеству бит в массиве - например, 100000 бит) -
гарантирует от ошибок "утечка в смежный конденсатор в матрице ДОЗУ". Применяется для выходного контроля милитарисских ЭВМ.
П.С.Для сельской месности выбирать массив длиной больше 8 кбайт не рекомендуется.

(Отсюда.)
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby Koshi » Sat, 04.04.2015 07:30:20

Обновил тест.

Изменения:
.добавлен русский язык
.переписан интерфейс
.появился тест на 128к
.сделана возможность запуска основного теста, даже если проверка мапинга страниц не прошла (в некоторых случаях может быть полезно)

P.S. фонт будет другой, так же добавится 3й алг (с битовыми сдвигами)
P.P.S. обладателям 2мб по схеме kay1024+scorp1024 (kay2048), просьба проверить тест, мне проверить негде...
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby palsw » Sat, 04.04.2015 23:25:34

Как бы еще sprinter добавить в тест - реально есть железки рабочие , а озу нечем проверить...
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Postby Koshi » Sun, 05.04.2015 08:04:36

добавил спринтер, проверяет только основную память 4мб. (кэш и видео рам не проверяется)
заодно исправил пару опечаток и глюк на тесте 4мб в быстром алгоритме...

P.S. тест памяти Sprinter'a не проверялся, посему тестируем...
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby palsw » Sun, 05.04.2015 09:53:05

Koshi, даже не ожидал!
у меня походу 1 спринтер остался ,который я притом включаю для проверки ново писанных программ .(которые в эмуляторе работают ,а на реале не совсем :) ).

Сейчас попробую запустить...
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Postby Sayman » Sun, 05.04.2015 10:28:39

Нельзя ли выдать часть исходника теста памяти Спринтера, чтобы засунуть его в местную дос. а то запускать из образа трд как то не очень хотелось бы. Спасибо!
Sayman
 
Posts: 14
Joined: Sun, 05.04.2015 10:25:56

Postby palsw » Sun, 05.04.2015 10:36:00

Видео готово!
первый блин комом ,но за столько лет - это очень вкусный блин!
Last edited by palsw on Mon, 06.04.2015 11:08:55, edited 1 time in total.
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Postby palsw » Sun, 05.04.2015 10:39:58

Sayman, в эмуле запускал -- как там?я еще позавтракать не успел уже реал гоняю.Вот радости с утра привалило :) ))
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Postby Sayman » Sun, 05.04.2015 10:52:20

при тестировании нужно обходить стороной страницу dcp, страницы видеопамяти гонять нужно отдельно как-то и по всей видимости при тестировании этих страниц на экране будут артефакты.
в эмуле не смогу запустить - нет режима эмуляции трдоса (переход в трдос).
Sayman
 
Posts: 14
Joined: Sun, 05.04.2015 10:25:56

Postby palsw » Sun, 05.04.2015 11:01:09

раз такая пьянка - протестирую Феникс 0.5.1 новым тестом - так как старую версию 0.9 очень активно использовал при наладке турбо режима 7мгц и тест очень помог в свое время...

Работает тест в режиме Феникс 2048 в турбо режиме :)
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Postby Koshi » Sun, 05.04.2015 13:19:04

Sayman wrote:Нельзя ли выдать часть исходника теста памяти Спринтера, чтобы засунуть его в местную дос. а то запускать из образа трд как то не очень хотелось бы.

исходники вскоре выложу...
Sayman wrote:при тестировании нужно обходить стороной страницу dcp

паги #50-#5F так понимаю?
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby Sayman » Sun, 05.04.2015 14:33:27

паги #50-#5F так понимаю?

это страницы видеопамяти. по доступу к ним я буду потом отдельно разбираться и их пока лучше тоже обходить стороной. страница с дешифратором портов (dcp), это страница #40.
таким образом получается, что страницы #40, #50 - #5f обходим за километр.
Sayman
 
Posts: 14
Joined: Sun, 05.04.2015 10:25:56

Postby palsw » Sun, 05.04.2015 22:19:40

Sayman,
это страницы видеопамяти


запись в видео озу идет парраллельно и в основное озу .считывание с видео озу идет на самом деле только с основного озу и некогда с видео озу. (каламбур) .

таким образом можно смело писать страницы #50 - #5f и верифицировать их - так как это будут именно страницы основного озу (SIMM).
а кратковременные артефакты на экране не страшные для теста и юзера.Имхо
User avatar
palsw
 
Posts: 247
Joined: Tue, 15.10.2013 00:09:10
LOCATION: Украина_Измаил

Next

Return to Utilities

Who is online

Users browsing this forum: No registered users and 0 guests

x