|
Прояснить ситуацию, синхронная загрузка регистров по enable |
|
|
|
Mar 17 2008, 06:06
|
Знающий
   
Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822

|
Вопрос в следующем: есть код который конвертирует последовательность из 8-битного серийного потока (т.е. байтный поток, один байт за другим) в параллельные слова каждые 3 последовательных байта. Т.е. первые 2 байта загружаются в промеж. регистры, затем по третьему байту - все 3 считываются параллельно на выходе в соотв. раскладе. В принципе, все работает в симуляции как надо, но начало работы конвертора динхронизировано с определенным сигналом. Фронт данного enable синхронизирован с фронтом первого релевантного клока. Первый байт данных в потоке синхронизирован тоже по фронту того-же клока, т.е. должен загружаться в первый промеж. регистр по спаду первого клока. Т.е. по фронту первого клока получаем enable, по его спаду должны загрузить первое данное в регистр. Далее все продолжается синхронно, по каждому спаду идет загрузка в цепочку из 2х регистров, по каждому 3ему спаду - считывает параллельное данное. Проблема в следующем: при симуляции вижу получив enable на первом клоке (по его фронту), загрузка не начинается по спаду того-же клока, а только по спаду следующего (второго) клока, т.е. пропускается первый байт потока. Пока не пойму почему. Клок достаточно медленный (примерно 20-25 MHz), 50% duty cycle, симуляция: post-route functional. Вот релевантный кусок кода: Код process(nRST, IN_CLK, DV) --Input FIFO - buffering input RGB sequence begin if nRST = RST_pol or DV = not DV_active then r0 <= x"00"; r1 <= x"00"; RGB_OUT <= x"0000"; elsif IN_CLK'event and IN_CLK = '0' then --FIFO is chain-loaded upon falling edge r0 <= RGB_IN; --G sample (8 bits), 6 MSB bits will be picked r1 <= r0; --R sample (8 bits), 5 MSB bits will be picked if out_load_en = '1' then --loading the output RGB buffer (parallel RGB) RGB_OUT <= r1(7 downto 3) & r0(7 downto 2) & RGB_IN(7 downto 3); end if; end if; end process; Пока не пойму что мешает по получении enable по фронту клока начать загруску по спаду того-же клока...? Спасибо
|
|
|
|
|
 |
Ответов
|
Mar 17 2008, 08:35
|
Знающий
   
Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822

|
Цитата(dvladim @ Mar 17 2008, 11:58)  Поведение post-route отличается от функционального? Если да, меняйте схему.
Из того кода, что у вас, видно, что сброс асинхронный, а это не есть хорошо.
Приведите вейвформы. Спасибо за ответ. Я видимо не точно выразился: симуляция идет post-route functional, т.е. она после route но функциональная, т.е. без тайминга. Сброс там действительно асинхронный. Он может влиять таким образом ? Дал кусок симуляции, рележантные сигналы вверху окна. nrst - асинхронный reset clk - входной клок dv - enable загрузки (синхронизирован с фронтом клока) rgb_out_debug - данные на выходе (16 бит параллельные) oled_video_in - даннтые на входе (8-битный поток)
Эскизы прикрепленных изображений
|
|
|
|
Сообщений в этой теме
Саша Z Прояснить ситуацию Mar 17 2008, 06:06 Михаил_K Асинхронный сброс еще как может на это влиять.
Воо... Mar 17 2008, 10:32 Саша Z Цитата(Михаил_K @ Mar 17 2008, 14:32) Аси... Mar 17 2008, 11:25 Very_hard Цитатакстати - у себя обнаружил что забыл вставить... Mar 17 2008, 12:03 Саша Z Цитата(Very_hard @ Mar 17 2008, 16:03) Он... Mar 17 2008, 12:26  andrew_b Цитата(Саша Z @ Mar 17 2008, 15:26) С фро... Mar 17 2008, 12:33 Михаил_K Цитата(Саша Z @ Mar 17 2008, 14:25) Работ... Mar 17 2008, 12:40 Саша Z Цитата(Михаил_K @ Mar 17 2008, 16:40) Выр... Mar 17 2008, 12:56  Михаил_K Цитата(Саша Z @ Mar 17 2008, 15:56) Насче... Mar 17 2008, 13:01   Саша Z Цитата(Михаил_K @ Mar 17 2008, 17:01) ИМХ... Mar 17 2008, 13:23  andrew_b Цитата(Саша Z @ Mar 17 2008, 15:56) DV, ... Mar 17 2008, 13:23   Саша Z Цитата(andrew_b @ Mar 17 2008, 17:23) Во ... Mar 17 2008, 14:21    des00 Цитата(Саша Z @ Mar 17 2008, 09:21) Будем... Mar 18 2008, 03:37     Саша Z Цитата(des00 @ Mar 18 2008, 07:37) Прекра... Mar 18 2008, 06:01      des00 Цитата(Саша Z @ Mar 18 2008, 01:01) Шаман... Mar 18 2008, 10:14       Саша Z Цитата(des00 @ Mar 18 2008, 14:14) Да я д... Mar 18 2008, 11:33 Михаил_K Цитата(Саша Z @ Mar 17 2008, 17:21) ОК, с... Mar 17 2008, 15:03 Саша Z Цитата(Михаил_K @ Mar 17 2008, 19:03) Дел... Mar 17 2008, 15:18 Михаил_K Цитата(Саша Z @ Mar 18 2008, 14:33) Кстат... Mar 18 2008, 13:02 Саша Z Да, точно, фраернулся...:-) Mar 18 2008, 13:37 dvladim Цитата(Саша Z @ Mar 17 2008, 15:26) Возмо... Mar 18 2008, 18:19 Саша Z Цитата(dvladim @ Mar 18 2008, 22:19) На м... Mar 18 2008, 19:29 des00 Цитата(dvladim @ Mar 18 2008, 13:19) В сп... Mar 19 2008, 03:25 Михаил_K Вообще-то, дело вкуса. Я, например, чтобы избежать... Mar 19 2008, 07:45 andrew_b Ну коль пошла такая пьянка, спрошу:
Цитата(Михаил... Mar 19 2008, 09:06 Михаил_K Цитата(andrew_b @ Mar 19 2008, 12:06) Ну ... Mar 19 2008, 10:31
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|