реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Низкая частота работы, Делитель частоты
likeasm
сообщение Jul 30 2014, 06:21
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 156
Регистрация: 15-04-10
Пользователь №: 56 673



Имеется PLL с которой выходит 48МГц на схему, требуется получить частоту 1,2-9,6 КГц. Я делаю ее через счетчик, который дергает триггер. Но вот погрешность получается 0,01%. Канал передачи синхронный, хотелось бы получиться значение получше чем 0,01%.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 30 2014, 06:33
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(likeasm @ Jul 30 2014, 10:21) *
Имеется PLL с которой выходит 48МГц на схему, требуется получить частоту 1,2-9,6 КГц. Я делаю ее через счетчик, который дергает триггер. Но вот погрешность получается 0,01%. Канал передачи синхронный, хотелось бы получиться значение получше чем 0,01%.

Что на выходе счетчика? Пересчитанная частота? Или сигнал разрешения для триггера? Если первое - то плохо...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
likeasm
сообщение Jul 30 2014, 07:28
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 156
Регистрация: 15-04-10
Пользователь №: 56 673



Прошу прощения, сразу надо было сказать, что речь идет о verilog и Spartan6, конструкция такая для 9,6КГц такая
always @(posedge 48M)
begin
if(counter==5000)
begin
counter<=0;
trig<=~trig;
end
end
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Jul 30 2014, 07:31
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Цитата(likeasm @ Jul 30 2014, 11:28) *
Прошу прощения, сразу надо было сказать, что речь идет о verilog и Spartan6, конструкция такая для 9,6КГц такая
always @(posedge 48M)
begin
if(counter==5000)
begin
counter<=0;
trig<=~trig;
end
end

У Вас счетчик считает от нуля до 5000, а должен по логике считать до 4999, отсюда и погрешность. Только так лучше не делать - формируйте чип енайбл и работайте на исходной частоте, как советовал iosifk
Go to the top of the page
 
+Quote Post
likeasm
сообщение Jul 30 2014, 07:58
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 156
Регистрация: 15-04-10
Пользователь №: 56 673



Можно пример или ссылку если не сложно rolleyes.gif
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 30 2014, 10:08
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(iosifk @ Jul 30 2014, 10:33) *
Что на выходе счетчика? Пересчитанная частота? Или сигнал разрешения для триггера? Если первое - то плохо...

Да, еще питание PLL должно быть на соотв.уровне. Если найдете файл описания, где будет сказано о влиянии питания на джиттер, то можно будет знать точно. А если нет, то "вручную" придется разбираться... Да еще и дорожки наверняка защищать от пролезания помех.
А примеры - у меня на сайте есть "Краткий Курс"... Остальное могу по скайпу... Писать буквами - долго...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Jul 30 2014, 13:48
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Поделите по модулю на 2500 и потом еще T триггером на 2
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 30 2014, 14:47
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(vadimp61 @ Jul 30 2014, 17:48) *
Поделите по модулю на 2500 и потом еще T триггером на 2

А можно еще и "модулю на 1250 и потом еще T триггером на 4"
А можно еще и "модулю на 5000 и потом еще результат на PLL умножить на 2" sm.gif
Вот только на результат в лучшую сторону это никак не повлияет...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Jul 30 2014, 17:39
Сообщение #9


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Цитата(iosifk @ Jul 30 2014, 18:47) *
А можно еще и "модулю на 1250 и потом еще T триггером на 4"
А можно еще и "модулю на 5000 и потом еще результат на PLL умножить на 2" sm.gif
Вот только на результат в лучшую сторону это никак не повлияет...

Можно и так)
Похоже ТС делает синхронный RS-232 о существовании которого Вы даже не подозревали laughing.gif
Уж с точностью лучшей чем 0,01% можно поделить и моим способом.
Мы просто не представляем всей схемы ТС, как у него идет прием данных от его передатчика и как они синхронизированы.
Go to the top of the page
 
+Quote Post
likeasm
сообщение Jul 30 2014, 18:54
Сообщение #10


Частый гость
**

Группа: Участник
Сообщений: 156
Регистрация: 15-04-10
Пользователь №: 56 673



Цитата(vadimp61 @ Jul 30 2014, 21:39) *
Можно и так)
Похоже ТС делает синхронный RS-232 о существовании которого Вы даже не подозревали laughing.gif
Уж с точностью лучшей чем 0,01% можно поделить и моим способом.
Мы просто не представляем всей схемы ТС, как у него идет прием данных от его передатчика и как они синхронизированы.

цель не синхронный rs-232, а старенький синхронный С1-ФЛ(И) канал с биимпульсным кодированием. Точность нужна для того, что приемник и передатчик не рассинхронизировались несколько минут в случае длительных помех. Спасибо за ответы товарищи, толкнули в нужную сторону!!!!

Сообщение отредактировал likeasm - Jul 30 2014, 19:01
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Jul 31 2014, 04:22
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Цитата(likeasm @ Jul 30 2014, 22:54) *
цель не синхронный rs-232, а старенький синхронный С1-ФЛ(И) канал с биимпульсным кодированием. Точность нужна для того, что приемник и передатчик не рассинхронизировались несколько минут в случае длительных помех. Спасибо за ответы товарищи, толкнули в нужную сторону!!!!

Ясно, делали, работало.
Но там без ФАПЧ никак, ведь тактовую надо "доставать" из данных, ведь у этого интерфейса нет отдельной линии тактирования.
Источником и приемником данных от С1-ФЛ у нас была синхронная PCM шина со скоростью 2048 кбит, из нее брался 1 тайм слот 64кбит/c и переносился на скорости 1,2 - 9,6 причем скорость определялась автоматически.
Каким устройством (тестером) планируете отлаживать ваше изделие?
ЗЫ
Я подозреваю что за этот интерфейс тоже некоторые форумчане не знают)
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 31 2014, 07:29
Сообщение #12


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(vadimp61 @ Jul 31 2014, 08:22) *
ЗЫ
Я подозреваю что за этот интерфейс тоже некоторые форумчане не знают)


Есть и другие связисты на форуме, кроме Вас. И многие из них имели дело и PCM. Хотя, конечно, не все они работали с некоторыми архаичными интерфейсами...
Но не делает Вам чести хвастаться собственными знаниями и любоваться собственной персоной...

PS
А что касается лично меня, то за 7 лет работы в ЛОНИИС со многими древними интерфейсами не сталкивался. Все больше делал приборы контроля цифровых станций и интернет-телефонии. А потому я действительно, еще много чего в компьютерной археологии я не знаю. И еще не знаю, например 100G Ethernet. Но надеюсь в ближайшем будущем его потрогать живьем...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
likeasm
сообщение Jul 31 2014, 10:03
Сообщение #13


Частый гость
**

Группа: Участник
Сообщений: 156
Регистрация: 15-04-10
Пользователь №: 56 673



Цитата(vadimp61 @ Jul 31 2014, 08:22) *
Каким устройством (тестером) планируете отлаживать ваше изделие?

плату сделали Spartan6 + обвязка ФЛ канала + RS-232.
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Jul 31 2014, 10:52
Сообщение #14


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Цитата(likeasm @ Jul 31 2014, 14:03) *
плату сделали Spartan6 + обвязка ФЛ канала + RS-232.

То есть по RS232 проверять то что передается между платами по интерфейсу C1-ФЛ?
Готового изделия которое бы работало с вашей разработкой С1-ФЛ нет? Все секретное?
Мы найти не смогли, использовали модем К1-Б
http://www.zelax.ru/products/converters/co...uct:description
похоже то что вы сделали на Spartan6
Go to the top of the page
 
+Quote Post
likeasm
сообщение Jul 31 2014, 11:36
Сообщение #15


Частый гость
**

Группа: Участник
Сообщений: 156
Регистрация: 15-04-10
Пользователь №: 56 673



Цитата(vadimp61 @ Jul 31 2014, 14:52) *
То есть по RS232 проверять то что передается между платами по интерфейсу C1-ФЛ?

ага отладка, терминал
Цитата(vadimp61 @ Jul 31 2014, 14:52) *
Готового изделия которое бы работало с вашей разработкой С1-ФЛ нет? Все секретное?

видел этот конвертер, в моем случае он не подошел. Задача врезаться в С1-ФЛ канал готового изделия для дополнительного помехоустойчивого кодирования.
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Jul 31 2014, 13:17
Сообщение #16


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Цитата(likeasm @ Jul 31 2014, 15:36) *
ага отладка, терминал

видел этот конвертер, в моем случае он не подошел. Задача врезаться в С1-ФЛ канал готового изделия для дополнительного помехоустойчивого кодирования.

Ну вот, оказывается тут главнее не как поделить частоту, а как ее выделить из потока данных, захватить ,удерживать и быстро выходить на режим захвата при отсутствии данных на входе.
у нас была опора 20.480 Мгц и хватало
ресурсы в матрице примерно такие Цыклон 1
+------------------------------------------------------------------------------------------+
; Fitter Resource Usage Summary ;
+---------------------------------------------+--------------------------------------------+
; Resource ; Usage ;
+---------------------------------------------+--------------------------------------------+
; Total logic elements ; 641 / 2,910 ( 22 % ) ;
; -- Combinational with no register ; 218 ;
; -- Register only ; 111 ;
; -- Combinational with a register ; 312 ;
; ; ;
; Logic element usage by number of LUT inputs ; ;
; -- 4 input functions ; 125 ;
; -- 3 input functions ; 249 ;
; -- 2 input functions ; 120 ;
; -- 1 input functions ; 65 ;
; -- 0 input functions ; 82 ;
; ; ;
; Logic elements by mode ; ;
; -- normal mode ; 355 ;
; -- arithmetic mode ; 286 ;
; -- qfbk mode ; 30 ;
; -- register cascade mode ; 0 ;
; -- synchronous clear/load mode ; 158 ;
; -- asynchronous clear/load mode ; 13 ;
; ; ;
; Total LABs ; 117 / 291 ( 40 % ) ;
; Logic elements in carry chains ; 320 ;
; User inserted logic elements ; 0 ;
; Virtual pins ; 0 ;
; I/O pins ; 15 / 104 ( 14 % ) ;
; -- Clock pins ; 2 / 2 ( 100 % ) ;
; Global signals ; 8 ;
; M4Ks ; 4 / 13 ( 31 % ) ;
; Total memory bits ; 1,072 / 59,904 ( 2 % ) ;
; Total RAM block bits ; 18,432 / 59,904 ( 31 % ) ;
; PLLs ; 0 / 1 ( 0 % ) ;
; Global clocks ; 8 / 8 ( 100 % ) ;
; Maximum fan-out node ; NCO:inst2|result[35] ;
; Maximum fan-out ; 114 ;
; Highest non-global fan-out signal ; average_to_coeff_36:inst5|Coeff_MAX[35]~44 ;
; Highest non-global fan-out ; 37 ;
; Total fan-out ; 2380 ;
; Average fan-out ; 3.60 ;
+---------------------------------------------+--------------------------------------------+
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 13:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01475 секунд с 7
ELECTRONIX ©2004-2016