Пляшет тактовая частота Z80

ZX evolution software and hardware

Postby AASand » 22 Sep 2012, 15:23

Сделал я тут полезно-бесполезную примбамбасину для Пентевы, которая меряет частоту процессора и выводит на семисегментный LED. С одной стороны иногда полезно знать на какой частоте работает Z80, т.к. играешь в игру и начинает казаться, что что-то она шибко быстро играет. И не понять, это так задуманно или я случайно выставил повышенную частоту в ERS. И сбрасывать игру не хочется чтобы узнать правильно ли выставлена частота, потому что вроде уже далеко прошел и сначала начинать влом. А с другой довольно симпатично выглядит - типа моддинг. Так вот, частоту 3.5 мегагерц компьютер держит стабильно, 7 МГц плюс-минус десяток герц, а вот 14 МГц пляшут как попало в районе 10-14 мегагерц. Частота, как я понял зависит от того, что делает комп. Если он делает что-то монотонное, то и частота стабилизируется, например на 12 МГц. Частота в 14 МГц появляется довольно редко. Восновном я вижу 12-13 МГц. Так идолжно быть? И почему это происходит?
AASand
 
Posts: 29
Joined: 29 Jul 2011, 05:12
Group: Registered users

Postby AASand » 22 Sep 2012, 16:23

TS-Labs wrote:Бред же, нет? На 7МГц частота равна частоте генератора / 4 и не тормозится. На чем сделана прибамбасина?

Ну, бред не бред, а в ERS мультиметр UT71D показывает частоту 7.016 МГц, а в запущенных демках 6.996 МГц. Частоту снимаю с 6-ой ножки Z80. А примбамбасину я сделал на ATMega 8 c предделителем на 128. Результат измерения выводил через UART. Точность у неё получилась где-то +-256 Гц (использовал мультиметр UT71D как эталон). Но на семисегментники вывожу только двухзначное чило соответствующее мегагерцам.
AASand
 
Posts: 29
Joined: 29 Jul 2011, 05:12
Group: Registered users

Postby deathsoft » 22 Sep 2012, 17:26

AASand wrote:Ну, бред не бред, а в ERS мультиметр UT71D показывает частоту 7.016 МГц, а в запущенных демках 6.996 МГц.

Осциллографом посмотри, если сигнал клока не "плавает", то частота стабильная, тамже и частоту почмотри (если осцил цифровой, он до герца выводит частоту)
User avatar
deathsoft
 
Posts: 348
Joined: 07 Apr 2007, 01:58
Group: Registered users

Postby нолька » 22 Sep 2012, 17:29

если Z80 работает без торможений, это не значит, что частота постоянна. 7.016 - это погрешность вычислений (больше 7 никак не может быть), а вот 6.996 вполне объяснимо, т.к. клок останавливается при определенных условиях, но на кол-ве выполненных тактов это не отражается.
я проснулся среди ночи и понял, что всё...
всё идет по плану
User avatar
нолька
рОвный
 
Posts: 264
Joined: 08 Apr 2007, 21:12
Group: Registered users

Postby deathsoft » 22 Sep 2012, 17:31

нолька wrote:7.016 - это погрешность вычислений (больше 7 никак не может быть)

Да может кварц херовый, и частота плавает, хотя врядли.
User avatar
deathsoft
 
Posts: 348
Joined: 07 Apr 2007, 01:58
Group: Registered users

Postby AASand » 22 Sep 2012, 18:33

deathsoft wrote:Осциллографом посмотри

Осциллограф у меня аналоговый и поэтому точно посмотреть не могу. Ну а приблизительно плавания частоты я не замечаю. При запуске программ (когда идет обращение к SD-card) частота всегда кратковременно поднимается до 14 МГц и заметить скачка частоты на осциллографе не представляется возможным. И запустив любую программу частота становится ровно 6.996 МГц и остаётся стабильной. Но сбросив компьютер и выйдя в ERS частота опять 7.016 МГц. Прям как напряжение, которое просаживается под нагрузкой. Может быть и частота 3.5 МГц тоже немного скакла бы если её можно было бы включать в ERS. Но вобщем меня это не напрягает, т.к. бордюрные эффекты на стандартной частоте воспроизводятся правильно. Только немного разочаровала работа компа на частоте 14 МГц. Выходит на ней точно такты почти и не посчитаешь раз клок в определённые моменты вообще отрубается.
AASand
 
Posts: 29
Joined: 29 Jul 2011, 05:12
Group: Registered users

Postby DimkaM » 23 Sep 2012, 06:50

Насколько точно мега8 считает герцы. На 3.5мгц может и поспевает, а 7 и 14 начинает проёбывать клоки. допустим ты повесил clock/128 на прерывание, сколько тактов съедает само прерывание,обработчик прерывания и функция выводящая инфу на индикатор. если на прерывании, то оно зависимо от клока меги

И надобы синхронизировать еву и мегу, возьми клок меги с евы - 28мгц. Если мега тока не подогреется от такой частоты.
Last edited by DimkaM on 23 Sep 2012, 07:08, edited 1 time in total.
ZX-Evo rev C, ZXNetUsb rev A
DimkaM
 
Posts: 1269
Joined: 24 Mar 2010, 13:42
Location: джунгли Амазонки
Group: Registered users

Postby DimkaM » 23 Sep 2012, 07:07

нинашол у меги8 предделителя на 128.

---пост адд---
нашол в асинхронном

я так думаю если предделитель 128, то какая точность измерений ? оно будет плавать в какомто диапазоне.
ZX-Evo rev C, ZXNetUsb rev A
DimkaM
 
Posts: 1269
Joined: 24 Mar 2010, 13:42
Location: джунгли Амазонки
Group: Registered users

Postby DimkaM » 23 Sep 2012, 07:37

UT71D
Частота: 40Hz/400Hz/4kHz/40kHz/400KHz/4MHz/40MHz/400MHz: ±(0.01%+8)
точность на 7мгц +\-708тактов, а если относительно 40мгц то +\-4008тактов


а про 14мгц, то lvd говорил реальный прирост несколько меньше.
ZX-Evo rev C, ZXNetUsb rev A
DimkaM
 
Posts: 1269
Joined: 24 Mar 2010, 13:42
Location: джунгли Амазонки
Group: Registered users

Postby AASand » 23 Sep 2012, 08:14

DimkaM wrote:Насколько точно мега8 считает герцы

Точность от меги мне не нужна. Я же вывожу только кол-во мегагерц, а килогерцы меня не интересуют. Для более точного измерения использовался мультиметр и если даже он немного врёт, то относительную разницу он все-таки фиксирует. В ERS стабильно показывает 7.016 МГц, а в любом запущенном приложении стабильно 6.996МГц. Именно это меня и интересует. Ведь ERS является темже самым приложением и ничем не отличается от других, разве, что работает из ПЗУ. Больше я разницы не вижу.

P.S. А мега при кварце 16 МГц без делителей довольно точно измеряет частоту до 200КГц. Если нужна большая точность я обычно делаю огромный счетчик на Altera с эталонным генератором для отсчета времени измерения. А потом спокойно считываю значение из нее микроконтроллером.
AASand
 
Posts: 29
Joined: 29 Jul 2011, 05:12
Group: Registered users

Next

Return to Пентева - софт и железо

Who is online

Users browsing this forum: No registered users and 4 guests

cron