Перейти к содержанию

    

zxcv

Участник
  • Публикаций

    69
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о zxcv

  • Звание
    Участник
  1. Цитата(Evgeny72 @ Mar 6 2017, 14:02) Имеется 4 асинхронных друг от друга входные группы сигналов I2S ... 1. Для этого есть специальные микросхемы: SRC (Sample Rste Converters) Их делают в том числе Cirrus Logic и Analog Devices 2. У Xilinx до ISE 14.2 для Spartan 6 и Virtex 6 была Asynchronous Sample Rate Converter Core 3. У Xilinx есть несколько апликух, в которых есть примеры реализации SRC: xapp514 и xapp1014.
  2. У Xilinx есть пример как сделать защиту прошивки ПЛИС от копирования при помощи DS2432 (1-wire EEPROM with SHA-1 engine). В проекте ПЛИС, в том числе, сделан генератор случайных чисел: LFSR работающий от двух генераторов на инверторах с линиями задержки. За счет того, что частота генераторов "гуляет" от напряжения и температуры случайные числа получаются не псевдослучайными, а случайными... xapp780 архив
  3. Платы в 75-м классе только одно и двухслойные. Их можно условно назвать плата-как-деталь. Их записываем в спецификацию в раздел детали. Выпускаем на них чертеж детали. Платы в 68-м классе многослойные (хотя есть и однослойные). Их можно условно назвать плата-как-сборочная-единица. Их записываем в спецификацию в раздел сборочные единицы. Выпускаем на них свою спецификацию и сборочный чертеж. На счет ширины. ИМХО. При производстве удобнее отрезать от листа более узкую полосу, а затем укоротить ее по длине, чем наоборот. Меньше расход материала... Плата из примера (абвг.75875х.ххх) содержит не только проводники, но и печатные элементы (конденсаторы, индуктивности) выполненные медью. Так и есть? или номер должен быть абвг.75872х.ххх? PS Термины используемые в 75-м классе: печатная схема, печатные элементы.
  4. Микросхемы для восстановления тактов и данных из таких потоков называются CDR (Clock and Data Recovery). Выпускает их, в том числе, и Analog Devices. Посмотрите у них апликухи.
  5. Цитата(likeasm @ Jun 15 2016, 18:43) Оговорился пробовал не ISE, а Foundation версии 1.5 Возможно не открывается в 1.5 т.к. был создан в более поздней версии Foundation. Серия XC3000 поддерживалась вплоть до 3.1i. Скиньте мне этот sch, попробую открыть на работе на 4.2i. Свой адрес скинул в Ваши ЛС. Или воспользуйтесь советом druzhin, открыть в Active-HDL. Т.к. именно Aldec писал для Xilinx оболочку схематика...
  6. Был еще Xilinx Foundation. Поддерживаемые им кристаллы тут. Лежало в закромах.
  7. Можно так: Пересадить 100 Гц на такты 100 МГц. Выделить каждый фронт 100 Гц и проинвертировать. Использовать этот сигнал как CE для триггеров частоты 100 МГц.
  8. Можно в DigiKey например через Global Key (за пару недель до СПб). Можно в Элтех. SMA-07 на складе. Можно в Чип и дип. Можно в Микронике. CH-7815 и SMA-07-TGG склад.
  9. Да, это так. В стандартах MPEG-2 и DVB механизм синхронизации звука, видео и данных для программы на приёмной стороне основан на использовании полей PTS и DTS. Алгоритм работы декодера примерно таков. Восстанавливается системная частота 27 МГц по меткам PCR. От неё запускается счётчик системной частоты с начальным значением из метки PCR. Далее декодер разбирает транспортный поток до уровня PES пакетов, находит поле PTS запоминает его и начинает записывать payload PES пакета в буфер. Когда счётчик системной частоты досчитает до запомненного значения PTS, разрешается чтение из буфера с payload-ом PES пакетов. И так со всеми потоками программы. При этом, если значение PTS слишком велико, по сравнению с проходящими в ТП значениями PCR, то ждать придётся долго и буфер переполнится. А если разница между PTS и PCR недостаточна, то данные начнут читаться слишком рано и декодеру элементарного потока их не хватит для декодирования кадра видео или пакета звука и он будет сбоить.
  10. Цитата(FLTI @ May 21 2016, 17:29) Так действительно можно поступить для данной задачи и тогда тактовая частота 27МГц от входного транспортного потока MPEG-2 TS фактически и будет тактовой частотой 27МГц для выходного транспортного потока MPEG-2 TS?Ещё раз повторюсь. Величина тактовой частоты 27 МГц ТП (как Вы её называете) не имеет никакого значения. Она может быть любой (в пределах ±100 ppm). На функционировании системы это не скажется, т.к. DVB-ASI асинхронный (по отношению к скорости ТП) интерфейс. И эта частота - просто частота переносчика. Важно лишь не изменять скорость транспортного потока (количество полезных байт, не K28.5, в секунду). Цитата(FLTI @ May 21 2016, 17:29) Я не планировал трогать все служебные поля входного транспортного потока MPEG-2 TS при его прохождении через ПК. Или какие-то служебные поля всё-таки придётся пересчитывать из-за того что при прохождении через ПК будут изменено содержание аудио-видеокадров?Навскидку, мне кажется, придется менять поля PTS и DTS в PES пакете видео, чтобы они соответствовали передаваемому в текущий момент значению поля PCR. Иначе произойдёт переполнение буферов T-STD. Или, что равнозначно, увеличивать на время декодирования - кодирования значения полей PCR. И, конечно, если Вы измените PID-ы, название программы, формат видео или что-нибудь ещё, то придётся изменить соответствующие поля в соответствующих таблицах системной информации.
  11. Цитата(FLTI @ May 21 2016, 16:15) А как практически по меткам PCR восстановить частоту 27 МГц? Может для этого есть готовый модуль на VHDL, чтобы в ПЛИС разместить?Про восстановление частоты из меток PCR написано в ISO/IEC 13818-1 D.0.3 System Time Clock recovery in the decoder. Готового VHDL модуля не встречал. Писали сами. Там всё просто: вычитатель, ПИД фильтр, сигма-дельта ЦАП на одном выводе ПЛИС, ФНЧ и ГУН на 27 МГц. Цитата(FLTI @ May 21 2016, 16:15) Может для моей задачи это и не потребуется? Вот что мне надо: транспортный поток MPEG-2 TS ( 8 бит + 27МГц ) заводится в ПК, там программно декодируется до ITU-R BT.656, некоторая информация в нём заменяется и далее обратно из ITU-R BT.656 кодируется в MPEG-2 TS и выводится из ПК. Нужно ли в такой схеме восстанавливать 27 МГц по меткам PCR или можно работать с той частотой 27МГц, которая идёт как несущая для входного транспортного потока MPEG-2 TS ( 8 бит + 27МГц )?Может восстанавливать 27 МГц и не потребуется, но по другой причине, чем указано у Вас. 27 МГц DVB-ASI, как я уже писал, никак не связана с частотой видео. Это просто скорость передачи слов по асинхронному интерфейсу. А нас интересуют 27 МГц связанные с видео. Что Вам надо - это правильно сформировать метки времени PCR в выходном потоке, чтобы декодер, установленный далее, правильно восстановил частоту 27 МГц. Проще всего это сделать не изменяя скорости выходного транспортного потока по отношению ко входному. Просто копируя поля PCR из входного потока в выходной. (Можно вместо копирования добавлять/вычитать константу к значениям входных полей PCR.) Также просто копировать значения полей PCR из входного ТП в выходной можно при кратном увеличении скорости выходного ТП. В общем виде это следует из формулы 2-4 ISO/IEC 13818-1, связывающей скорость ТП с временем прихода полей PCR, системной частотой 27 МГц и расстоянием в байтах между полями PCR. При не кратном входному изменении скорости выходного ТП значения полей PCR придётся пересчитывать (как и при изменении расстояния в байтах между соседними полями PCR).
  12. ЦитатаА HD-потоки ( судя по всему в MPEG-4 ) также могут передаваться через DVB-ASI ?Могут. ЦитатаЕсли да, то на какой тактовой частоте и какой стандарт описывает передачу HD через DVB-ASI?Всё тот же, ISO/IEC 13818-1. Во всех стандартах MPEG-2 и производных от них стандартах DVB для синхронизации частот приёмной стороны с передающей используются метки времени передаваемые в поле PCR программы. Т.е. все частоты для одной программы (для звука, изображения, синхронных данных) на приёмной стороне получаются при помощи микросхем ФАПЧ (PLL) из восстановленной по меткам PCR частоты 27 МГц. Для HD изображений для этих целей применяются микросхемы PLL наподобие MK2716 и её более навороченного собрата 664-03. Для получения частот для звуковых ЦАП - MK2705.
  13. Да, если на входе кодера было видео в соответствии с ITU-R BT.656 и если кодер и декодер в соответствии с ISO/IEC 13818-1 и ISO/IEC 13818-2.
  14. Цитата(FLTI @ May 18 2016, 16:06) Забыл в самом начале сказать, что имеется DVB-ASI в виде десериализированного 8-битного потока + его несущая частота 27МГц. Правильно ли я понимаю, что в этом случае 27 МГц из PCR восстанавливать не надо? 27 МГц DVB-ASI и системная частота 27 МГЦ восстановленная из PCR не равны между собой. 27 МГц восстановленные из PCR совпадают по частоте с частотой 27 МГц видеосигнала ITU-R BT.656 поданного на вход видеокодера данной программы. Что позволяет при после декодирования получить ту же частоту строк и кадров, что на передающей стороне и избежать пропуска / повторения кадров. Кроме того, в DVB-ASI может передаваться несколько видеопрограмм, и их системные частоты 27 МГц восстановленные из их полей PCR не будут равны. В пункте 2.4.2.1 System clock frequency стандарта ISO/IEC 13818-1 написано, что системная частота должна быть в допуске ±30ppm: The value of the system clock frequency is measured in Hz and shall meet the following constraints: 27 000 000 − 810 ≤ system_clock_frequency ≤ 27 000 000 + 810 Представьте что одна программа видео была у Вас с частотой 27 МГц + 810 Гц, а вторая с частотой 27 МГц - 810 Гц, что не противоречит стандарту ISO/IEC 13818-1. Цитата(FLTI @ May 18 2016, 16:06) Не понял, в каком смысле я знаю структуру полей видеопотока H, V и F внутри ITU-R BT.656? Да, я знаю, какой должна быть структура полей видеопотока H, V и F согласно стандарту ITU-R BT.656, но как её всё-таки вытащить из транспортного потока MPEG-2 TS без декодирования видео? Ну как же? Вы восстановили 27 МГц из поля PCR в точности равными 27 МГц на стороне кодера. Вы знаете что видео у Вас допустим PAL (формат видео передается в дескрипторах таблицы PMT программы) значит мы имеем 625 строк по 864*2 пикселя с частотой 25 кадров в секунду. В стандарте ITU-R BT.656 написано в какой момент в строке сигнал строчной синхронизации H принимает значение 0, а в какой 1 (SAV / EAV). А также какой строке меняются сигналы кадровой синхронизации V и сигнал синхронизации полей F. Если начать считать пиксели, строки и поля в произвольный момент времени, то максимум на что мы ошибёмся это ±0,5 кадра по сравнению с передающей стороной. И эта ошибка не будет меняться, т.к. частоты 27 МГц на передаче и приёме у нас равны.
  15. Цитата(FLTI @ May 17 2016, 12:41) DVB-ASI в виде десериализированного 8-битного потока, который уже очищен от K28.5 - это фактически транспортный поток MPEG-2 TS? Да, это транспортный поток. Можно ещё найти синхронизацию по началу пакета (сигнал PS) и добавить сигнал валидности данных (DV) особенно если входной DVB-ASI поток в режиме с длиной транспортного пакета 204 байта. Правда есть ещё один вариант транспортного потока - 204 байта с кодированием Рида-Соломона, но его я встречал только в своём оборудовании. Цитата(FLTI @ May 17 2016, 12:41) Если так, то как из транспортного потока MPEG-2 TS вытащить синхронизацию видеопотока H,V,F? Cинхронизация видеопотока H,V,F тоже закодирована в MPEG-2 или она идёт в незакодированном в MPEG-2 виде? Внутри транспортного потока передаётся таблица PAT с PID-ом 0x0000 в ней PID-ы таблиц PMT. В таблицах PMT передаются PID-ы транспортных пакетов с видео, звуком и т.п. В транспортных пакетах с видео передаются PES пакеты видео. В них элементарные потоки видео (как MPEG-2, так и MPEG-4). Декодировав их Вы получите видеокадр. Частота 27 МГц с которой Вы будете вычитывать видеокадр из декодера видео (для разрешения SD) восстанавливается из полей PCR, передаваемых в транспортном потоке. Эти поля передаются в транспортных пакетах с PID-ом, указанным в поле PCR_PID в таблице PMT (обычно совпадает с PID-ом видео данной программы). Если Вам нужны только H, V и F, то декодировать видео нет необходимости. 27 МГц Вы восстановите из PCR. Структуру полей видеопотока H, V и F внутри ITU-R BT.656 Вы знаете. Осталось только определиться с фазой кадра. Её можно получить из полей PTS и DTS PES пакетов видео.