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

 
 
> Ошибки при работе схемы на ПЛИС, Прошу помощи. Временный задержки
bognev
сообщение Jan 22 2014, 10:36
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 4-06-11
Пользователь №: 65 475



Приветсвую всех!

Возникла такая проблема и требуется помощь в ее решении.
Пишу проект на virtex 6. В проекте реализован 16 канальный DDC. Работоспособность проверена на железке.
Мне необходимо разместить на каждом канале алгоритм подавления несинхронной помехи. Сам алгоритм подавления я написал и проверил также его работоспособность. Но при размещении 16 подавителей, по 1 на каждый канал столкнулся с проблемой нехватки ресурсов slice. Решение проблемы нашел в последовательной обработке на более высокой частоте. Но при этом столнулся с другой проблемой. При отладке в ChipScope видно, что схема ведет себя не корректно. Например, счетчик считает 1 2 3 !2! 4 5 6. Возникают значения, которых не должно быть. Если в ChipScope раскрыть шину, то видно что некоторые сигналы в шине задерживаются на один такт и это приводит к ошибке. Собственно, это мой первый проект и раньше с временными задержками в схеме не сталкивался. Алгоритм синхронный и почему возникают такие задержки мне не понятно. Вопрос в том, в какую сторону копать в чем проблема и как бороться с временными задержками в ПЛИС? Так как вопрос достаточно общий, не знаю, какую информацию еще надо предоставить и в процессе обсуждения выложу ее.

Заранее благодарю за помощь.

Сообщение отредактировал bognev - Jan 22 2014, 10:40
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bogaev_roman
сообщение Jan 22 2014, 12:40
Сообщение #2


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

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



Я давно в ISE не работал, но все равно тут можно сказать, что частоты у Вас высокие и разводится все с временными ошибками. Причем ошибки есть и по сетапам и по холдам и в разных клоковых доменах. Причем ошибки, скажем, по сетапу для clk_adc вообще заоблачные - более 3 периодов. Могу только посоветовать разбираться последовательно с каждым клоком и смотреть на суммарные задержки и, скорее всего, менять алгоритм - в ином случае это работать не будет, тут даже чипскопом смотреть не нужно. Т.е. по сути получается что у Вас часть логики реально не синхронна ибо в некоторых путях суммарная задержка от выхода триггера до входа следующего триггера больше такта рабочей частоты.

Посмотрите для начала максимальный путь сигнала для частоты clk_adc, сколько логических уровней и порядок задержек на каждом уровне, может там что-нибудь и попроще будет - напрмер используется синхронный сброс и для него можно пересинхронизацию сделать.
Go to the top of the page
 
+Quote Post
bognev
сообщение Jan 23 2014, 06:53
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 4-06-11
Пользователь №: 65 475



Цитата(bogaev_roman @ Jan 22 2014, 16:40) *
Посмотрите для начала максимальный путь сигнала для частоты clk_adc, сколько логических уровней и порядок задержек на каждом уровне, может там что-нибудь и попроще будет - напрмер используется синхронный сброс и для него можно пересинхронизацию сделать.


Если я правильно вас понял, то

CODE
Timing constraint: NET "clk_adc" PERIOD = 2.7027027 ns HIGH 50%;
For more information, see Period Analysis in the Timing Closure User Guide (UG612).
48009355 paths analyzed, 160420 endpoints analyzed, 32116 failing endpoints
32116 timing errors detected. (32028 setup errors, 88 hold errors, 0 component switching limit errors)
Minimum period is 12.125ns.
--------------------------------------------------------------------------------

Paths for end point ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp_30 (SLICE_X57Y28.CIN), 167868 paths
--------------------------------------------------------------------------------
Slack (setup path): -9.423ns (requirement - (data path - clock path skew + uncertainty))
Source: ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000000b0 (FF)
Destination: ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp_30 (FF)
Requirement: 2.702ns
Data Path Delay: 12.249ns (Levels of Logic = 10)(Component delays alone exceeds constraint)
Clock Path Skew: 0.159ns (1.635 - 1.476)
Source Clock: clk_adc rising at 0.000ns
Destination Clock: clk_adc rising at 2.702ns
Clock Uncertainty: 0.035ns

Clock Uncertainty: 0.035ns ((TSJ^2 + TIJ^2)^1/2 + DJ) / 2 + PE
Total System Jitter (TSJ): 0.070ns
Total Input Jitter (TIJ): 0.000ns
Discrete Jitter (DJ): 0.000ns
Phase Error (PE): 0.000ns

Maximum Data Path at Slow Process Corner: ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000000b0 to ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp_30
Location Delay type Delay(ns) Physical Resource
Logical Resource(s)
------------------------------------------------- -------------------
SLICE_X75Y110.BQ Tcko 0.337 ddc/adc1_x<9>_REPLICA_1417
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000000b0
SLICE_X57Y35.C1 net (fanout=1) 5.320 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000153
SLICE_X57Y35.CMUX Tilo 0.191 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000234
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000002f9/LUT5
SLICE_X57Y35.D3 net (fanout=2) 0.451 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000463
SLICE_X57Y35.COUT Topcyd 0.319 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000234
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000002f8/LUT6
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000002cd
SLICE_X57Y36.CIN net (fanout=1) 0.000 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig0000042a
SLICE_X57Y36.DQ Tito_logic 0.537 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000238
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000002c5
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000238_rt
SLICE_X60Y33.D2 net (fanout=1) 0.863 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000238
SLICE_X60Y33.DMUX Tilo 0.196 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig000001f8
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk0000022a/LUT5
SLICE_X60Y34.A2 net (fanout=2) 0.599 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000393
SLICE_X60Y34.COUT Topcya 0.410 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig000001fc
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk00000229/LUT6
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000001f3
SLICE_X60Y35.CIN net (fanout=1) 0.000 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig0000035c
SLICE_X60Y35.COUT Tbyp 0.078 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000200
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000001eb
SLICE_X60Y36.CIN net (fanout=1) 0.000 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000358
SLICE_X60Y36.AQ Tito_logic 0.438 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000204
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000001e3
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000201_rt
SLICE_X57Y27.A2 net (fanout=1) 1.115 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig00000201
SLICE_X57Y27.AMUX Tilo 0.194 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp<28>
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000001bc/LUT5
SLICE_X57Y27.B4 net (fanout=2) 0.644 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig0000031e
SLICE_X57Y27.COUT Topcyb 0.404 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp<28>
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk000001bb/LUT6
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk0000017e
SLICE_X57Y28.CIN net (fanout=1) 0.000 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/sig000002f1
SLICE_X57Y28.CLK Tcinck 0.153 ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp<31>
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U1/blk00000175
ddc/ddc/x_gen_mult_s4[0].x_mult_q/U2/outp_30
------------------------------------------------- ---------------------------
Total 12.249ns (3.257ns logic, 8.992ns route)
(26.6% logic, 73.4% route)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- bognev   Ошибки при работе схемы на ПЛИС   Jan 22 2014, 10:36
- - bogaev_roman   Цитата(bognev @ Jan 22 2014, 14:36) Приве...   Jan 22 2014, 10:57
|- - bognev   Цитата(bogaev_roman @ Jan 22 2014, 14:57)...   Jan 22 2014, 12:05
- - bognev   А каким способом можно уменьшить эти нарушения? Ка...   Jan 22 2014, 14:52
|- - bogaev_roman   Цитата(bognev @ Jan 22 2014, 18:52) А как...   Jan 22 2014, 15:30
|- - bognev   Цитата(bogaev_roman @ Jan 22 2014, 19:30)...   Jan 22 2014, 18:54
|- - gibson1980   ЦитатаРешение проблемы нашел в последовательной об...   Jan 23 2014, 07:40
|- - bognev   Цитата(gibson1980 @ Jan 23 2014, 11:40) М...   Jan 23 2014, 07:49
|- - gibson1980   Цитата(bognev)Можно по подробнее? Коре элементы ес...   Jan 23 2014, 07:56
|- - bognev   Цитата(gibson1980 @ Jan 23 2014, 11:56) М...   Jan 23 2014, 08:02
|- - gibson1980   Наоборот поставить. Я так понимаю что должно умень...   Jan 23 2014, 08:13
|- - bognev   Цитата(gibson1980 @ Jan 23 2014, 12:13) Н...   Jan 23 2014, 08:24
|- - gibson1980   В корках умножителей речь идет вроде о LUTах, посм...   Jan 23 2014, 08:30
|- - bognev   Цитата(gibson1980 @ Jan 23 2014, 12:30) В...   Jan 23 2014, 08:38
- - iosifk   Цитата(bognev @ Jan 22 2014, 14:36) Возни...   Jan 22 2014, 18:25
- - iosifk   Цитата(bognev @ Jan 22 2014, 14:36) . Реш...   Jan 23 2014, 08:41
|- - bognev   Цитата(iosifk @ Jan 23 2014, 12:41) На са...   Jan 23 2014, 09:10
- - bogaev_roman   По поводу поста 9 - большое кол-во логических уров...   Jan 23 2014, 09:54
|- - bognev   Цитата(bogaev_roman @ Jan 23 2014, 13:54)...   Jan 23 2014, 10:14
|- - bogaev_roman   Цитата(bognev @ Jan 23 2014, 14:14) В 9 п...   Jan 23 2014, 10:50
|- - bognev   Цитата(bogaev_roman @ Jan 23 2014, 14:50)...   Jan 23 2014, 11:16
|- - Maverick   проект синхронный? асинхронщины нет? переходы из р...   Jan 23 2014, 20:15
||- - bognev   Цитата(Maverick @ Jan 24 2014, 00:15) про...   Jan 24 2014, 06:34
||- - Maverick   Цитата(bognev @ Jan 24 2014, 08:34) перех...   Jan 24 2014, 07:08
||- - bognev   Цитата(Maverick @ Jan 24 2014, 11:08) рек...   Jan 24 2014, 20:18
||- - Bad0512   Цитата(bognev @ Jan 25 2014, 03:18) Спаси...   Jan 25 2014, 06:45
||- - bognev   Цитата(Bad0512 @ Jan 25 2014, 10:45) Пров...   Jan 25 2014, 07:22
||- - Bad0512   Цитата(bognev @ Jan 25 2014, 14:22) RКаки...   Jan 25 2014, 08:34
||- - bognev   Временные ошибки в памяти свелись к сигналу сброса...   Jan 27 2014, 08:22
|- - o_khavin   Цитата(bognev @ Jan 23 2014, 15:16) 16 би...   Jan 23 2014, 22:26
- - bognev   Стал дальше реализовывать проект и столкнулся с но...   Jan 31 2014, 04:50
|- - Джеймс   Цитата(bognev @ Jan 31 2014, 07:50) Стал ...   Jan 31 2014, 06:47
|- - bognev   Цитата(Джеймс @ Jan 31 2014, 10:47) Замен...   Feb 2 2014, 15:15
- - Timmy   Я бы посоветовал для начала разместить user_rd_dat...   Jan 31 2014, 05:54


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 18:04
Рейтинг@Mail.ru


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