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 45 times
Last edited by CHRV on 16 Sep 2011, 16:23, edited 2 times in total.
Многое есть здесь: www.nedopc.com
User avatar
CHRV
Желесяка
 
Posts: 862
Joined: 15 Apr 2007, 22:52
Group: Registered users

Postby breeze » 12 Sep 2011, 11:13

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


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

Postby TS-Labs » 12 Sep 2011, 11:26

Не наблёл пока...
Было бы мегаинтересно глянуть в сорцы.
User avatar
TS-Labs
 
Posts: 1316
Joined: 19 Apr 2010, 11:10
Location: Wildest West
Group: Registered users

Postby lvd » 12 Sep 2011, 12:27

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

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

Postby TS-Labs » 12 Sep 2011, 14:23

На АТМ-ах так же?
User avatar
TS-Labs
 
Posts: 1316
Joined: 19 Apr 2010, 11:10
Location: Wildest West
Group: Registered users

Postby lvd » 12 Sep 2011, 16:29

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

Как на атмах, читай у рюрикарюмика.
Многого нет здесь: http://lvd.nedopc.com
Image
User avatar
lvd
 
Posts: 1422
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: 348
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: 348
Joined: 07 Apr 2007, 01:58
Group: Registered users

Postby ZEK » 13 Sep 2011, 16:21

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

Посмотрел в svn, там инвертирован rdat_n в строке
rawr_sr <= { rawr_sr[2:0], ~rdat_n };
у меня порты модуля по каралечному названы, суффиксы отрицательности сигнала не ставил
в общем модуль ожидает что rdat_n это отрицательные импульсы (какими приходят с дисковода), глянул в схему вроде полярность сигнала не меняется
инверсия лишняя и должно быть
[vg39.v:314]
rawr_sr <= { rawr_sr[2:0], rdat_n };
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: 1422
Joined: 07 Apr 2007, 22:28
Group: Registered users

Next

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

Who is online

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

cron