VG93 digital ФАПЧ by ZEK

ZX evolution software and hardware

Postby CHRV » 12 Sep 2011, 10:32

Интегрировал сабж. Огромное спасибо ZEK.
Всем кто пользуется ахтунг-дискетами особено 5.25 - тестирен нах!!!
vg93pll_zek3.zip
(39.95 KB) Downloaded 980 times
Last edited by CHRV on 16 Sep 2011, 16:23, edited 2 times in total.
Многое есть здесь: www.nedopc.com
User avatar
CHRV
Желесяка
 
Posts: 966
Joined: 15 Apr 2007, 22:52
Group: Registered users

Postby breeze » 12 Sep 2011, 11:13

CHRV wrote:Интегрировал сабж.


В svn это уже есть? а то я собираю со своей конфигурацией клавы :smoke:
User avatar
breeze
 
Posts: 764
Joined: 07 Feb 2009, 17:19
Location: Оттуда
Group: Registered users

Postby lvd » 12 Sep 2011, 12:27

TS-Labs wrote:Было бы мегаинтересно глянуть в сорцы.

Насколько я знаю, сорцы были на говнофоруме. Как я понял, там основная фишка в том, что в момент прихождения импульса с дисковода счётчик не тупо ресетится на константу (как в пентагоне и изначально в пентеве), а к нему прибавляется половина фазовой разницы.
Многого нет здесь: http://lvd.nedopc.com
Image
User avatar
lvd
 
Posts: 1786
Joined: 07 Apr 2007, 22:28
Group: Registered users

Postby lvd » 12 Sep 2011, 16:29

TS-Labs wrote:На АТМ-ах так же?

Как на атмах, читай у рюрикарюмика.
Многого нет здесь: http://lvd.nedopc.com
Image
User avatar
lvd
 
Posts: 1786
Joined: 07 Apr 2007, 22:28
Group: Registered users

Postby deathsoft » 12 Sep 2011, 18:52

TS-Labs wrote:На АТМ-ах так же?

На АТМ2 автомат на озу (РУ2), там можно сделать как угодно.
User avatar
deathsoft
 
Posts: 358
Joined: 07 Apr 2007, 01:58
Group: Registered users

Postby deathsoft » 12 Sep 2011, 18:53

lvd wrote:Как на атмах, читай у рюрикарюмика.

http://vtrdos.ru/book/DISKCONT.ZIP
User avatar
deathsoft
 
Posts: 358
Joined: 07 Apr 2007, 01:58
Group: Registered users

Postby ZEK » 13 Sep 2011, 16:21

:applause:
Last edited by ZEK on 25 Aug 2020, 15:36, edited 1 time in total.
ZEK
 
Posts: 11
Joined: 13 Sep 2011, 07:16
Group: Registered users

Postby lvd » 13 Sep 2011, 20:32

ZEK. если не возражаешь, приступим к разбору говнокода :)

1.
Code: Select all
   reg [5:0] counter = 0;

Это не говнокод, но такая запись играет роль только при СИМУЛЯЦИИ (например, в моделсиме), означает, что регистр устанавливается в 0 ещё до нулевого момента времени и выполнения всех initial'ов. При синтезе квартусом игнорится.

2.
Code: Select all
   wire[5:0] inc   = rawr_sr[1:0] == 2'b10 ? shift : 1;
...
   vg_rawr <= !(rawr_sr[3] && !rawr_sr[0] ); // rawr 100ns

Вот это уже говнокод. Дело в том, что сигнал rdat_n полностью асинхронный относительно клока, и потому перед использованием должен пересинхронизироваться. Пересинхронизация делается путём пропускания сигнала через ДВА (или больше) триггера. У тебя он используется после пропускания только через один триггер.

Ещё непонятно, что означает "rawr_sr[3] && !rawr_sr[0]". Почему нельзя написать просто rawr_sr[3] && !rawr_sr[2] (выделение нужного фронта)? Но может тут я просто не догоняю глубинного смысла...

И ещё. Чем не устраивает предварительный фильтр на сигнал rdat (в моём коде со слов digital filter и до assign rdat = )? Он позволяет не реагировать схеме на импульсы-помехи длительностью менее 4 тактов 28мгц. Или такое не нужно?
Многого нет здесь: http://lvd.nedopc.com
Image
User avatar
lvd
 
Posts: 1786
Joined: 07 Apr 2007, 22:28
Group: Registered users

Postby CHRV » 13 Sep 2011, 21:33

ZEK wrote:Посмотрел в svn, там инвертирован rdat_n в строке

Сорри, это я накосячил.
Вы это разберитесь с lVD, чую клево все будет :).
Многое есть здесь: www.nedopc.com
User avatar
CHRV
Желесяка
 
Posts: 966
Joined: 15 Apr 2007, 22:52
Group: Registered users

Postby ZEK » 13 Sep 2011, 23:31

:applause:
Last edited by ZEK on 25 Aug 2020, 15:37, edited 1 time in total.
ZEK
 
Posts: 11
Joined: 13 Sep 2011, 07:16
Group: Registered users

Next

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

Who is online

Users browsing this forum: Google [Bot] and 1 guest

cron