АНАЛОГО-ЦИФРОВАЯ «СИСТЕМА НА КРИСТАЛЛЕ» МУЛЬТИМЕДИЙНОГО ПРОЦЕССОРА MCAM-01 СЕРИИ «МУЛЬТИКАМ»

advertisement
АНАЛОГО-ЦИФРОВАЯ «СИСТЕМА НА КРИСТАЛЛЕ»
МУЛЬТИМЕДИЙНОГО ПРОЦЕССОРА MCAM-01
СЕРИИ «МУЛЬТИКАМ»
А.А. Беляев1, Т.В. Солохина1, А.В. Глушков1, Ю.Н. Александров1,
Я.Я. Петричкович1, Ю.В. Миронова1, Ю.М. Герасимов2
1
ГУП НПЦ «ЭЛВИС», secretary@elvees.com
2
ЗАО ЦП «АНГСТРЕМ-СБИС»
1. Введение
Разработанная в НПЦ «ЭЛВИС» [1] платформа «МУЛЬТИКОР» - это комплекс современных
аппаратно-программных средств, предназначенных для проектирования сложных интегральных схем
типа «систем на кристалле» и реализации различных приложений на их основе (http://www.elvees.ru).
В рамках данной платформы создана серия программируемых СнК цифровых сигнальных
контроллеров [2-5] - МС-12, МС-24, МС-0226 и др. Приборы данной серии имеют универсальную
систему команд, включающую операции с данными в форматах с фиксированной и плавающей
точкой, и не специализированные под какой-либо конкретный круг приложений.
Предметом рассмотрения настоящей статьи являются отличительные особенности новой
СБИС Мультимедийного процессора (МСаm-01), разработанной совместно с партнерами НПЦ
“ЭЛВИС” - "АНГСТРЕМ-М" (топологическое проектирование) и “АНГСТРЕМ-СБИС” (разработка
аналоговых блоков и PLL). Рассматриваются также возможности применения такой микросхемы в
различных мультимедийных приложениях.
Назначение, функциональные возможности и область применения процессора MCam-01
рассматриваются во 2 разделе данной статьи. Раздел 3 посвящен архитектурным особенностям
процессора. В разделе 4 рассматривается типовое применение данной микросхемы в качестве
контроллера цифровой фото/видео камеры. Оценка функциональных возможностей процессора
MCam-01 на примере задачи сжатия изображений/видео по стандарту JPEG/MJPEG приволится в
разделе 5, а в разделе 6 дается сравнение мультимедийного процессора MCam-01 с имеющей
аналогичное назначение микросхемой TMS320DM270 фирмы Texas Instruments [6]. В разделе 7
делаются итоговые замечания и оцениваются перспективы применения процессора MCam-01 и
дальнейшего развития серии «Мультикам».
2. Назначение, функциональные возможности и область применения микросхемы
MCam-01
Микросхема MCam-01 разрабатывалась как сигнальный контроллер для современной
цифровой фото/видео камеры со стандартным набором возможностей, присущих устройствам
указанного назначения. В частности, сигнальный контроллер указанного назначения
(мультимедийный процессор) должен иметь в своем составе интерфейсы:
- ввода/вывода видео сигнала;
- ввода/вывода аудио сигнала;
- интерфейсы различных типов памяти - FLASH, SRAM, SDRAM – для хранения программ и
данных;
- коммуникационные интерфейсы USB, UART, I2C, SPI и др. для обменов с PC и другими
носителями информации;
- отладочный интерфейс JTAG.
По своим функциональным возможностям мультимедийный процессор должен обеспечивать
выполнение в реальном времени необходимых процедур ввода/вывода аудио и видео сигналов, их
компрессии/декомпрессии, обработки и хранения. В частности, мультимедийный процессор должен
обеспечивать:
- ввод/вывод цифрового видео сигнала в одном из стандартных форматов;
- сжатие неподвижных изображений по стандарту JPEG;
- сжатие видео по стандартам MJPEG, MPEG-2/4, H.263, H.264/AVC;
- дополнительные функции по управлению камерой: определение экспозиции, автофокус,
балансировка белого, коррекция изображений, функция телетекста и др.
- ввод/вывод аналогового аудио сигнала, сжатие звука по стандартам G.711, G.722, G.723.1,
G.726, G.729, MP3-декодирование.
- обмен данными с PC и другими носителями информации.
Мультимедийный процессор MCam-01 обладает всеми указанными интерфейсами и
достаточной вычислительной мощностью для выполнения перечисленных функций. Это позволяет
утверждать, что микросхема MCam-01 обладает необходимыми функциональными возможностями
446
для того, чтобы стать элементной базой для эффективных программно-аппаратных решений не
только в качестве сигнального контроллера цифровой фото/видео камеры, но также и для широкого
круга «мультимедийных» приложений, связанных с обработкой звука, видео и неподвижных
изображений, в том числе систем цифрового телевидения.
3. Особенности архитектуры MCam-01
Выбор архитектурных и схемотехнических решений при проектировании процессора MCam01 производился с учетом следующих основных требований, которым должен удовлетворять
мультимедийный процессор:
- высокая производительность, достаточная для реализации перечисленных функций
обработки аудио/видео данных в реальном времени;
- наличие набора «мультимедийных» интерфейсов, необходимых для ввода-вывода видео- и
аудио- сигналов, управляющей информации, а также обменов с PC и другими носителями
информации;
- умеренное энергопотребление.
По сравнению с процессорами базовой серии «Мультикор» микросхема MCam-01 имеет ряд
существенных архитектурных отличий, определяемых указанными выше требованиями и
обеспечивающих возможность эффективной реализации на ее основе различных «мультимедийных»
приложений. Ниже перечислены основные особенности архитектуры мультимедийного процессора
MCam-01.
1) В состав MCam-01 входят три процессорных ядра - RISC-ядро и два DSP-ядра.
2) Основная вычислительная мощность обеспечивается двумя DSP-ядрами ELcore-17ТМ.
Высокая производительность DSP-ядер достигнута благодаря глубокой 7-фазной конвейеризации
программного конвейера (для сравнения: в контроллерах МС-12, МС-24 реализован 3-фазный, а в
контроллерах МС-0226, МС-0226G – 4-фазный конвейер). В результате процессор MCam-01 имеет
производительность примерно в 8 раз большую, чем процессор МС-12 серии «Мультикор».
3) В системе инструкций DSP-ядра ELcore-17ТМ поддерживаются операции только с
фиксированной точкой (16- и 32-разрядной). Исключение операций с плавающей точкой, которые не
являются необходимыми для реализации функций обработки видео- и аудио-сигналов, позволило
упростить вычислительные устройства DSP-ядра и соответственно понизить потребляемую
мощность.
4) RISC-ядро усилено аппаратной поддержкой операций умножения и деления, ускоряющих
выполнение данных операций. Это позволяет, частности, производить обработку звука ресурсами
одного только RISC-ядра, не прибегая к использованию DSP-ядер.
5) Мощный контроллер DMA позволяет выполнять обмены между портами и различными
областями памяти одновременно по 8-ми каналам. Помимо вычислительных ресурсов, возможность
одновременной передачи данных по нескольким каналам крайне важна при реализации
«мультимедийных» приложений, связанных с одновременным вводом-выводом различных типов
сигналов и данных.
6) В качестве двух системных шин в микросхеме MCam-01 используются две модификации
шины AMBA (Advanced Microcontroller Bus Architecture) [7], принятой в качестве стандарта для
платформы «МУЛЬТИКОР» – AMBA AHB и AMBA AXI.
Шина AMBA AHB работает под управлением RISC-ядра и предназначена для обменов с
«медленными» периферийными устройствами и управляющими регистрами. Шина AMBA AXI
работает, как правило, под управлением контроллера DMA и служит для обменов между портами и
различными областями памяти, которые благодаря структуре шины AMBA AXI могут производиться
по нескольким каналам одновременно.
7) Отличительной особенностью процессора MCam-01 является то, что два DSP-ядра
работают на общем поле памяти, что предельно упрощает обмен данными между ними и тем самым
повышает эффективность межпроцессорного взаимодействия.
Кроме того, в составе MCam-01 имеется специальный буфер объемом XBUF 16 32-разрядных
слов, предназначенный для обменов флагами между тремя процессорными ядрами и синхронизации
исполняемых программ при помощи механизма «семафора».
8) Процессор MCam-01 обладает широким набором интерфейсов (внешних портов), к числу
которых относятся:
- встроенный 12-разрядный звуковой сигма-дельта АЦП с частотой выборки 16 кГц для ввода
аудио сигнала голосового диапазона (0 - 3,4 кГц);
- встроенный 2-канальный 16-разрядный звуковой сигма-дельта ЦАП с частотой выборки 32
кГц для вывода аудио сигнала звукового диапазона (20 Гц - 20 кГц);
- порт ввода видеоданных (VPIN). Порт предназначен для ввода цифровых видеоданных по
8/10-разрядному параллельному интерфейсу в формате стандарта BT.656 (ITU-R Recomendation
BT.656);
447
- порт вывода видеоданных (VPOUT). Порт обеспечивает вывод видеоинформации в формате
стандартов CCIR601, BT.656 (ITU-R Recommendation BT.656), SMPTEx, 16-разрядного RGB
(5R/6G/5B) и монохромного видео с последовательной разверткой (raw video);
- контроллер шины USB. Порт обеспечивает, в частности, передачу сжатых видеоданных в
компьютер в соответствии со спецификацией USB 1.1 (Slave);
- контроллер шины I2C (master). Контроллер обеспечивает передачу управляющей
информации (например, к ПЗС-приемнику изображения) по простому 2-проводному интерфейсу I2C,
разработанному фирмой Philips [8];
- два линковых порта (LPORT), каждый из которых может быть сконфигурирован как порт
ввода-вывода общего назначения (GPIO). Линковый порт совместим с одноименным портом,
разработанным фирмой Analog Devices [9], и предназначен для организации межпроцессорных
обменов по 4-разрядному параллельному интерфейсу;
- два универсальных асинхронных порта UART. Данный интерфейс, в частности, может
использоваться для обменов данными с IBM PC через COM-порт по интерфейсу RS-232. Второй порт
может быть использован для подключения инфракрасного датчика, через который может
осуществляться дистанционный ввод управляющей информации.
9) При проектировании микросхемы MCam-01 большое внимание было уделено проблеме
минимизации энергопотребления. Режим энергосбережения реализуется, в частности, путем перехода
на пониженную рабочую частоту, а также путем блокировки переключения неработающих устройств.
4. Применение MCam-01 в качестве контроллера цифровой фото/видео камеры
Типовая схема применения микросхемы MCam-01 в качестве сигнального контроллера для
современной цифровой фото/видео камеры приведена на рис.1.
MCam-01
CCD/CMOS video in
Sensor
control
VPIN
VPOUT
video
out
NTSC/PAL
Encoder
TV
LCD Controller
LCD
I2C
motor
keys
1
2
UART
3
audio in
IR Sensor
GPIO
ADC
DAC
audio out
(stereo)
USB
COM
UART
LPT
PC
USB
JTAG
SDRAM
MPORT
FLASH
USB,UART,GPIO,MPORT
Memory Card
Controller
Removable Storage
TM
TM
Compact Flash , SmartMedia ,
TM
Memory Stick , Secure Digital
Рис. 1. Структурная схема цифровой фото/видео камеры на базе мультимедийного процессора
MCam-01
Программы, исполняемые мультимедийным процессором MCam-01, хранятся во FLASHпамяти, а данные – в памяти SDRAM.
Цифровые видеоданные (video in) поступают на входы порта VPIN процессора MCam-01.
Управление датчиком производится при помощи шины I2C. Выходной цифровой видеосигнал (video
out) с порта VPOUT может быть подан на внешний формирователь аналогового телевизионного
448
сигнала (NTSC/PAL Encoder) либо на вход контроллера ЖК-монитора (LCD Controller) для
отображения соответственно на телевизоре (TV) или ЖК-дисплее (LCD).
Входной аналоговый аудио сигнал (audio in) подается на вход встроенного аналогоцифрового преобразователя ADC. Выходной аналоговый аудио сигнал (audio out) со встроенного
цифро-аналогового преобразователя DAC подается на внешний усилитель для воспроизведения.
Компрессированные аудио/видеоданные могут быть выведены в компьютер (PC) через порт
USB либо сохранены на внешнем съемном носителе (Removable Storage) различных типов,
подключаемом через контроллер съемной памяти (Memory Card Controller) к какому-либо из портов:
USB, UART, GPIO, MPORT. Порт ввода-вывода общего назначения GPIO (General Purpose InputOutput) может также использоваться для приема управляющих сигналов с кнопок (keys) и для
управления двигателем (motor) фото/видео камеры.
Связь мультимедийного процессора MCam-01 с компьютером может производиться через
порты USB и UART, а также через порт JTAG в режиме отладки.
К одному из портов UART может быть также подключен инфракрасный датчик (IR Sensor),
через который может осуществляться дистанционный ввод управляющей информации.
5. Оценка функциональных возможностей процессора MCam-01 на примере задачи
сжатия изображений/видео по стандарту JPEG/MJPEG
В настоящем разделе дается сравнительная оценка производительности процессора MCam-01
и ранее разработанного процессора серии «Мультикор» - 1892ВМ3Т(МС-12). Сравнение
вычислительных возможностей указанных процессоров производится применительно к наиболее
распространенному методу сжатия неподвижных изображений - стандарту JPEG [10,11] и
реализуемому на его основе методу сжатия движущихся изображений - MJPEG (Motion-JPEG).
Процедура сжатия изображений по стандарту JPEG включает в себя следующие этапы
(см. рис.2):
1) Преобразование цветовых компонент изображения, то есть перевод изображения из
цветового пространства RGB в цветовое пространство YCbCr.
2) Двумерное дискретное косинус-преобразование (DCT).
3) Квантование коэффициентов преобразования.
4) Переупорядочение двумерного массива коэффициентов в одномерный по зигзагообразному
закону.
5) Кодирование квантованных коэффициентов (нулевой коэффициент – постоянная
составляющая – кодируется отдельно).
Преобразование
цветовых
компонент
DCT
Квантование
Zсканирование
Кодирование
Рис. 2. Этапы сжатия изображений по стандарту JPEG
В рамках работ по созданию прикладных библиотек для процессоров серии «Мультикор» в
НПЦ «ЭЛВИС» был программно реализован алгоритм сжатия изображений по стандарту JPEG на
ассемблере DSP-ядра ELcore-14. Вычислительные затраты для DSP-ядра ELcore-14 (МС-12),
необходимые для реализации отдельных процедур JPEG-сжатия, в пересчете на один монохромный
пиксел (цветовую компоненту) приводятся ниже:
Преобразование цветовых компонент
4,0 инстр./пиксел
DCT
4,1 инстр./пиксел
Квантование
1,1 инстр./пиксел
Z-сканирование
1,7 инстр./пиксел
Кодирование
4 – 24, в среднем ~ 9 инстр./пиксел
Всего:
~ 20 инстр./пиксел
Эта же программа может быть реализована практически без изменений на базе DSP-ядра
ELcore-17 (MCam-01). На основании полученных данных можно оценить вычислительные затраты,
необходимые для программной реализации JPEG/MJPEG-кодера для мультимедийного процессора
MCam-01.
449
Ниже в табл. 1 приведены характеристики производительности и процентные показатели
загруженности процессоров МС-12 и МСam-01 при реализации MJPEG-сжатия видео формата VGA
(цветовая модель - Bayer pattern [12]). (Кадр формата VGA содержит 640*480 = 307200 пикселов; при
скорости 25 кадров/сек поток входных данных составляет 7,68 млн. пикселов в секунду).
Таблица 1
Характеристики производительности и процентные показатели загруженности процессоров
МС-12 и MCam-01 при реализации MJPEG-сжатия видео формата VGA (предварительно)
МС-12
MCam-01
Количество DSP-ядер
1
2
Рабочая частота, МГц
100
350
Суммарная производительность всех DSP, млн. инстр./с
100
700
Пиковая производительность, 16-разрядная фиксир. точка, млн. оп./c
800
5600
192%
24%
Использование вычислительных ресурсов DSP при реализации
MJPEG-сжатия видео формата VGA (25 кадров/сек)
Заметим, что при реализации данной программы ресурсы RISC-ядра остаются практически
незадействованными. Это позволяет использовать RISC-ядро, например, для кодирования звука.
Что касается более сложных методов сжатия видеосигнала - MPEG-2/4, H.263, H.264/AVC, то
они потребуют оценочно в 2-3-4 раза больше вычислительных ресурсов, чем рассмотренный
алгоритм JPEG/MJPEG. С большой долей уверенности можно утверждать, что они также будут
успешно реализованы на базе процессора MCam-01.
В 2005 г. в НПЦ «ЭЛВИС» была разработана и запущена в изготовление тестовая СБИС
MCam-01S - первая микросхема новой специализированной серии аналого-цифровых «систем-накристалле», ориентированной на мультимедийные приложения, - серии «Мультикам». Топология
СБИС мультимедийныйного процессора представлена на рис. 3 ниже, на которой видны IP –ядра
СнК и аналоговые блоки ЦАП/АЦП. Микросхема спроектирована по технологическим нормам 0.18мкм и имеет размеры 5x5 мм*мм.
Рис. 3. Топология микросхемы Мультимедийного процессора МСам-01S
6. Сравнение мультимедийных процессоров MCam-01 и TMS320DM270
При проектировании мультимедийного процессора MCam-01 в качестве прототипа была
выбрана имеющая аналогичное назначение микросхема TMS320DM270 (Digital Media Processor) ,
разрабатываемая в настоящее время фирмой Texas Instruments.
450
Сравнительные характеристики процессоров MCam-01 и TMS320DM270 представлены в
табл. 2.
Таблица 2
Сравнительные характеристики мультимедийных процессоров
TMS320DM270 (Texas Instruments) и MCam-01 (НПЦ «ЭЛВИС»)
TMS320DM270
MCam-01
Тестовый кристалл
Серийный кристалл
Технология, корпус, архитектура
Технология: 0.13мкм
0.18 мкм
0.13мкм
Питание: (1.5В - ядро/3.3В - I/O)
(1.8В- ядро/3.3В - I/O)
(1.5 В - ядро/3.3В - I/O)
Корпус: 288 выводов MicroStar BGA
208 выводов TQFP
уточняется
80 MГц ARM7
ТМ
32-bit RISC
160 МГц RISCore
ТМ
Два 350МГц DSP-ядра ELcore-17ТМ
90 MГц TMS320C54x
DSP
Аппаратный кодер переменной длины(VLC/VLD)
Программно на DSP ELcore-17 ТМ
180 MГц 4SIMD image-processing engine (iMX)
Программно на DSP ELcore-17 ТМ
Аппаратная пиксельная предобработка
(коррекция) для цифровой камеры
Программная пиксельная предобработка
(коррекция) для цифровой камеры
Программное обеспечение
– Imaging: JPEG
– Imaging: JPEG (JPEG2000 –в перспективе)
– Video: H.263, M-JPEG, MPEG1, MPEG4
(atVGA), Nancy, WMV, DivX
– Video: M-JPEG, H.263 (H.264 – в перспективе),
MPEG2, MPEG4 (at VGA)
– Audio: AAC, ATRAC3, MP3, WMA
– Audio: MP3
– Voice: AMR, G.723.1, G.726, G.711
– Voice: G.711, G.722, G.723.1, G.726, G.729
Экспозиция, автофокус, балансировка белого для
цифровой камеры в реальном времени
Экспозиция, автофокус, балансировка белого для
цифровой камеры в реальном времени
Интерфейсы
120 MГц SDRAM с интерфейсом 16/32 бит
120 MГц SDRAM с интерфейсом 16/32 бит
-
SRAM с интерфейсом 8/16/32 бит
FLASH до 16 MB
FLASH до 64 MB с интерфейсом 8/16/32 бит
GPIO, два UART, USB 1.1
GPIO, два UART, USB 1.1
Цифровой 8-/16-разрядный видео вход/выход
Цифровой 8-/10-/16-разрядный видео вход/выход
10-разрядный ЦАП для формирования
аналогового видео-выхода (NTSC/PAL)
-
McBSP
-
-
Аналоговый аудио вход
(встроенный 12- разрядный моно АЦП)
Аналоговый аудио выход
-
(встроенный 16-разрядный стерео ЦАП)
2
IS
-
I2S
Два SPI (master/slave)
-
SPI (master/slave)
I2C (master)
I2C (master)
Внешняя начальная загрузка программ через
Внешняя начальная загрузка программ через
последовательный интерфейс (SIF) или хостпараллельный интерфейс памяти (MPORT)
интерфейс
В приводимой таблице даны два варианта параметров: для тестового кристалла,
изготовленного к настоящему времени и представляющего собой упрощенную версию
мультимедийного процессора, и для серийной микросхемы с полным набором функциональных
возможностей. По своим функциональным возможностям, как видно из приведенной таблицы,
процессор MCam-01 практически не уступает своему прототипу TMS320DM270. В отношении
451
потребляемой мощности тестовый кристалл процессора MCam-01, по-видимому, будет несколько
проигрывать по причине того, что он изготавливается по технологии 0,18мкм, в отличие от
TMS320DM270, изготавливаемого по технологии 0,13мкм.
7. Заключение
Рассмотренная в данной статье микросхема MCam-01 является первой микросхемой новой
серии специализированных сигнальных контроллеров, ориентированных на мультимедийные
приложения, - серии «Мультикам».
Микросхема MCam-01 представляет собой сложную трехпроцессорную систему на
кристалле, обладающую рядом существенных отличий в архитектуре, системе команд и схемотехнике
от процессоров серии «Мультикор». Процессор MCam-01 обладает высокой производительностью
(примерно в 8 раз больше, чем у процессора МС-12 серии «Мультикор») и широким набором
мультимедийных интерфейсов. Благодаря этому процессор MCam-01 способен одновременно решать
задачу сжатия видео сигнала формата VGA с полной кадровой скоростью, кодирование аудио
сигнала, обмен данными с компьютером, а также выполнять функции управления.
Это позволяет утверждать, что микросхема MCam-01 обладает достаточными
функциональными возможностями для реализации на ее основе широкого круга «мультимедийных»
приложений, связанных с обработкой звука, видео и неподвижных изображений, в том систем
цифрового телевидения.
ЛИТЕРАТУРА
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Александров Ю.Н., Беляев А.А., Глушков А.В., Грибов Ю.Н., Никольский А.В., Петричкович
Я.Я., Солохина Т.В. Новая отечественная платформа СБИС «МУЛЬТИКОР» для высокоточной
скоростной обработки информации и управления объектами // Цифровая обработка сигналов. 2001. - № 3. - С. 15-19.
Петричкович Я.Я., Солохина Т.В. Цифровые сигнальные контроллеры «МУЛЬТИКОР» - новые
отечественные серии систем на кристалле // Доклады 6-й Международной конференции
«Цифровая обработка сигналов и ее применения (DSPA-2004)». - Москва. - 31 марта - 2 апреля
2004. – Т. 1. - С. 8-15.
Солохина Т.В., Петричкович Я.Я., Глушков А.В., Беляев А.А., Грибов Ю.И., Никольский В.Ф.,
Силин В.А., Алексеев М.Н., Александров Ю.Н. Время кентавров: Микросхемы серии Мультикор11хх (МС-11хх) для встраиваемых и мобильных применений // Chip News. - № 8(71). - 2002. С. 10-17.
Солохина Т.В., Петричкович Я.Я., Глушков А.В., Александров Ю.Н., Глушков В.Д., Семенович
А.М., Беляев А.А., Грибов Ю.И., Никольский В.Ф., Силин В.А., Алексеев М.Н., Бабичевский
С.А., Федин В.А. Мультикор-12S - сигнальный контроллер с плавающей точкой для
высокоточных встраиваемых применений // Chip News. - № 8(81). - 2003. - С. 4-15.
Солохина Т.В., Петричкович Я.Я., Александров Ю.Н., Герасимов Ю.М., Заболотнов И.В.,
Алексеев М.Н., Беляев А.А., Грибов Ю.И., Глушков В.Д., Никольский В.Ф., Силин В.А., Крымов
А.А., Тимофеев О.А., Миронова Ю.В., Перекин Р.Н., Кучинский А.В., Чупринов А.А., Грачев Р.А.
Микросхемы базовых серий «МУЛЬТИКОР». Сигнальный микроконтроллер 1892ВМ2Т (МС-24)
// Chip News. - № 2(95). - 2005. - С. 20-31.
TMS320DM270 – Digital Media Processor // http://www.ti.com/dm270.
AMBA Specification (Rev 2.0) // http://www.arm.com.
http://www.philips.com.
http://www.analog.com.
Information Technology: Digital Compression and Coding of Continuous-Tone Still Images:
Requirements and Guidelines, 1992. International Telephone and Telegraph Consultative Committee,
Recommendation T. 81.
Pennebaker W.B., Mitchell J.L. JPEG: Still Image Compression Standard. Norwell, MA: Kluwer, 1993.
Bayer B.E. Color imaging array // U.S. Patent 3 971 065, Jul. 1976.
452
Download