Устройство и совместимость микросхем семейства UOC I

Телевизионные процессоры Ultimate One Chip (UOC) серии TDA93xx/TDA95xx (выпускались до конца сентября 2009г). БОльшая часть информации о них взята отсюда: http://www.anyram.net/anyram_ru/portfolio/index.php

Собственно, они первоначально и исследовали все основные проблемы.

Устройство микросхемы UOC

UOC содержат внутри 2 кристалла:

1. Собственно микроконтроллер на базе x51, аналогичный применявшимся ранее SAA55xx/SAA56xx с интегрированной OTP ROM различного объема и телетекстом (опционально), в нескольких версиях.

2. Сигнальный процессор, во многом подобный TDA8844/TDA8885, также в нескольких версиях.

Управление сигнальным процессором - по внутренней I2C шине.

Маркировка микросхем UOC

Маркировка на корпусе м/с:

Маркировка на корпусе м/с

Номер прошивки (четыре цифры в конце заводской маркировки) - уникален и не повторяется внутри группы UOC TDA93xx/95xx. То есть, например, номеру 0792 соответствует только TDA9381PS/N2/3I0792 (третья строка - партномер от LG 0ICTMPH010A), и никаких других TDA93…(TDA95…) с окончанием 0792 нет и не может быть никогда.

Остальные элементы маркировки имеют служебное назначение.

Взаимная совместимость ПО

Кроме запрограммированных при изготовлении, UOC выпускались и в виде OTP (однократно программируемых болванок с различным набором опций).

Совместимость прошивок ROM и OTP болванок определяется следующими различиями:

1. Версия микроконтроллера и сигнального процессора: 2 основных типа – тип 1 (TDA93xxPS/N1) и улучшенный – тип 2 (все остальные). Между собой ограниченно совместимы, но лучше обойтись без экспериментов.

Возможности применения и адаптации ПО в UOC разных версий

2. Размер памяти (ROM/RAM): 64K/1K или 128K/2K. Прошивки меньшего размера ROM могут быть размещены в болванке с бОльшим. Прошивки, рассчитанные на 2K RAM, не будут работать в болванке с 1K RAM.

3. Телетекст: нет телетекста, 1-страничный, 10-страничный. Прошивки от м/с с 1-страничным телетекстом можно поместить в болванку без него – работать будет все, кроме приема телетекста. Прошивки от м/с с 10-страничным телетекстом требуют 2K RAM, иначе ничего работать не будет вообще.

4. Путь обработки звука: FM или QSS. Касается только корпусов SDIP-64. Прошивки от FM нельзя переносить в болванки QSS, и наоборот – не будет звука. Для корпусов QFP-80 этого различия нет.

5. Структура памяти: обычная или Split Memory. Между собой несовместимы.

6. В серии TDA959x вывод 44 для корпуса SDIP-64 (49 – для QFP-80) используется как выход сигнала Scan Velocity Modulation (SVM). В серии Split Memory эта опция есть в TDA9376.

SVM – вещь малополезная, к тому же работающая только в системе PAL, ее отсутствие практически незаметно. Поэтому можно спокойно размещать прошивки от TDA959x в других болванках.

В то же время перенос прошивки обычной м/с в корпусе SDIP-64 в болванку с SVM может быть затруднителен, поскольку вывод 44 (линейный выход звука) будет занят под SVM, и звуковой сигнал придется снимать с вывода Audio Deemphasis: 28 (FM) или 32 (QSS в режиме внутреннего декодирования) через повторитель, что потребует изменений в схеме.

В корпусе QFP-80 вывод 49 практически никогда не используется, поэтому такие болванки с SVM можно применять вместо обычных.

7. TDA939xH значительно отличаются от всех остальных: нет радиоканала, и выводы аналоговой части расположены по-другому. Несовместимы с другими.

Bсе остальные опции, в том числе EW-коррекция, системы ТВ и т.д. на самом деле присутствуют всегда, независимо от названия болванки. На рисунках изменяемые опции выделены:

Для корпуса SDIP-64

Опции для корпуса SDIP-64

Для корпуса QFP-80

Опции для корпуса QFP-80

Однако если при разработке ПО использовались библиотеки Philips (а таких прошивок большинство), то прямой перенос ПО из одного типа болванок в другой невозможен. Это связано с наличием предустановленных байтов сигнатуры в Character ROM: прошивки, созданные средствами разработки от Philips, при инициализации обращаются к сигнатуре. Чтобы избежать этого при смене болванки, требуется патч. Задача – сделать прошивку не зависящей от сигнатуры.

UOC типа Split Memory (см. таблицу) принципиально отличаются по структуре памяти. Их прошивки несовместимы с обычными, хотя назначение выводов одинаково, и в одном и том же шасси могут стоять как обычные, так и Split Memory. Они проще, чем обычные UOC, корпуса SDIP-64 тоже бывают разных конфигураций по звуку (FM и QSS). И также при переносе прошивок может потребоваться патч.

В предложенной программе предусмотрен скрипт для патча.

Интересующимся - простое описание процесса

Для анализа прошивок применим встроенный в программу hex-редактор с функцией поиска и сравнения. Можно также использовать, например, 010-Editor или что-нибудь попроще, например, редактор от какого-нибудь программатора.

В таблице OTPDevice+ указаны основные параметры для разных типов UOC.

Очень подробно об этом - опять же на сайте разработчиков:

http://www.anyram.net/forum/viewtopic.php?id=18

http://www.anyram.net/forum/viewtopic.php?id=42