Правильная ссылка на эту страницу
http://az-design.ru/Support/HardWare/NCR/D19860908Elc033.shtml

Разработка графических микросхем с ориентацией не на АРМ, а на персональные компьютеры

УДК 681.323

NCR aims its graphics chips at PC instead of work stations, No.20, pp.61—63.

При создании двухкристального набора контроллеров, работающих с быстродействием 3,75 млн. команда/с, фирма NCR поставила главной целью снижение производственных затрат. Графический контроллер 7300, содержащий 16-разрядный графический процессор, и интерфейсный контроллер памяти 7301 могут работать параллельно и реализовать достаточно широкие возможности обработки графических данных для недорогих персональных компьютеров.

Большинство графических контроллеров и процессоров предназначаются для инженерных и конторских АРМ, характеризующихся высокими функциональными возможностями и высокой ценой. Однако фирма NCR Corp. пришла к выводу, что существует обширный средний сектор рынка — сектор менее дорогих, но гораздо более многочисленных персональных компьютеров, уже готовый для внедрения мощного графического процессора, который мог бы удовлетворить требования этого сектора при приемлемой стоимости. В качестве первого пробного камня в рамках реализации разработанной ею стратегии фирма NCR выбрала набор из двух графических контроллеров — цветной графический контроллер 7300 и интерфейсный контроллер памяти 7301.

«В области графических средств наблюдается явная тенденция к переводу все большего количества функций сегодняшних программ на реализацию аппаратным способом,— говорит Алан Лофтус, директор отделения микроэлектроники фирмы NCR по логическим микросхемам (Колорадо-Спрингс). — Чем больше функций вам удастся реализовать на кристалле, тем больше будет мощность контроллера или процессора и тем быстрее он будет работать. Однако все это надо делать с учетом конечной стоимости». Инженеры его фирмы разработали пару кристаллов с параллельной архитектурой, широкими возможностями воспроизведения цветных изображений, обработки текстов и с полиэкранным режимом. «Картина на экране может быть красноречивее тысячи слов, однако если у вас не будет 10 или 20 строк текста, чтобы описать происходящее, она не будет иметь никакого смысла»,— говорит Лофтус.

Разработчики фирмы NCR скомбинировали такие традиционные графические методы, как буферизация кадров и представление текста в графическом виде, с такими новыми методами и средствами, как два режима вывода текста (один из которых предусматривает генерацию стандартных знаков кода ASCII), переменная длина слова памяти, вывод изображения при помощи кэш-памяти и двухуровневая справочная таблица цветов. При этом фирма NCR построила свою стратегию на более четком соблюдении требований перспективных графических стандартов — по сравнению с многими графическими процессорами, имеющимися в настоящее время в продаже.

Набор графических микросхем 7300/7301 изготавливается по n-канальной МОП-технологии с 2-мкм топологическими нормами и двумя слоями поликремния. Несмотря на такие нежесткие топологические нормы быстродействие контроллеров достигает внушительной величины 3,75 млн. команда/с, они могут управлять дисплеями при работе с тактовой частотой до 30 МГц и выполнять пересылки битовых блоков экрана со скоростями до 2 млн. элементов отображения в секунду.

Параллельная архитектура пары контроллеров предусматривает изменение длины слова памяти с изменением количества поддерживаемых битовых плоскостей. Эта архитектура обеспечивает более эффективное использование памяти и позволяет легко расширять и модифицировать систему.

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

Цветной графический контроллер 7300 (рис.1) содержит высокоскоростной графический процессор, который берет на себя многие из задач, обычно выполняемых главным ЦП. Он содержит также независимые входной и выходной буферы (каждый состоит из 16 регистров по 16 бит), работающие по алгоритму FIFO (первый на входе — первый на выходе). Хотя внутренняя структура является 8-разрядной, эта интерфейсная логика позволяет с одинаковым успехом работать как с 8-, так и с 16-разрядными процессорами. Регистровые буферы FIFO служат для пересылки команд и данных элементов отображения. Регистр команд используется для указания разрядности шины данных (8 или 16 бит), управления сбросами и инициализации режима установления связи для обменов при прямом доступе к памяти. В регистре состояния содержатся признаки состояния регистровых буферов FIFO, показывающие, в частности, когда выходной регистровый буфер FIFO пуст. По линии готовности Ready выдается сигнал, отражающий состояние входного регистрового буфера при операциях записи и выходного буфера при операциях чтения.

В составе графического контроллера 7300 реализованы 16-разрядный графический процессор, кэш-память, справочные таблицы и логические функциональные бло
Рис.1. В составе графического контроллера 7300 реализованы 16-разрядный графический процессор, кэш-память, справочные таблицы и логические функциональные блоки. Контроллер выполняет многие задачи, которые обычно решает главный процессор.

Ключевым компонентом системы является кэш-память, которая позволяет обрабатывать видеоизображения с частотами до 30 МГц при использовании в буфере кадра стандартных динамических ЗУПВ. В то время как графический микрокомпьютер формирует изображение в кэш-памяти, аппаратный контроллер последовательности осуществляет регенерацию изображения на экране. Изображение, сформированное в кэш-памяти, перезагружается в буфер кадра. Разработчики выбрали данное решение, а не доступ к памяти в режиме интерливинга потому, что во втором случае потребовалась бы более высокая пропускная способность канала обмена с памятью и применение более высокоскоростных и дорогих динамических ЗУПВ.

Контроллер может обслуживать буфер кадра, содержащий до 1024*1024 элементов отображения (по 8 бит на элемент). Контроллер 7300 формирует стробы 8-разрядных адресов строк и столбцов, а также сигналы чтения/записи, стробы CAS1 и CAS2. Регенерация содержимого ЗУПВ производится автоматически контроллером регенерации типа RAS (Row Address Strobe —строб адреса строки). В буфере кадра используется абсолютная адресация (т.е. адресация в координатах X и Y), что исключает необходимость преобразования линейных адресов в адреса экрана, поскольку такой подход, хотя он и является общепринятым, приводит к замедлению работы системы и увеличению времени реакции экрана. Поскольку контроллер 7300 может обрабатывать до 8 бит информации на элемент отображения, для повышения гибкости разработчики фирмы NCR решили разделить справочную таблицу цветов на две 4-разрядные подтаблицы — справочную таблицу оттенков и таблицу яркости. Битовые плоскости 0—3 называются адресом оттенка и используются для выбора 16 из 4096 возможных оттенков. Битовые плоскости 4—7 — это адрес яркости, они используются для выбора 16 из возможных 32 уровней яркости. Когда при помощи справочной таблицы декодируются данные оттенка, выбирается одно из 16 слов. Эти слова имеют длину 12 бит и содержат значения красного, зеленого и синего цветов, по 4 бита каждое. Затем оба этих значения умножаются на величины яркости и преобразуются в аналоговый выходной сигнал. Сочетание значений оттенков и яркости позволяет выбирать 256 цветов из общего набора, включающего приблизительно 60 000 различимых цветов и оттенков.

Набор команд GKS

Одной из главных целей при проектировании контроллера 7300 было обеспечение полного соответствия требованиям графического стандарта. Стандартный высокоуровневый командный язык упрощает и ускоряет работу системного программиста. Соблюдение требований графического стандарта означает, что последующие конструктивные изменения скорее всего не потребуют существенной переработки системного программного обеспечения.

Из различных предлагаемых сейчас проектов графических стандартов (см. «Обострение конкуренции в области графических ИС» в разделе «Сообщения») разработчики фирмы NCR выбрали стандарт Системы графического ядра (GKS) Американского национального института стандартов (АНИС). Реализованный на кристалле контроллера 7300 набор команд содержит 25 графических, синхронизирующих и управляющих команд, совместимых со стандартом GKS. По словам Лофтуса, главное преимущество использования набора команд, соответствующего стандарту GKS,— это возможность написания программ, независимых от конкретных типов устройств и обмена программами между системами, которые реализуют стандарт GKS. Кроме того, многие из функций, которые предусматриваются этим стандартом, внедренным корпорацией IBM в своих персональных компьютерах PC, в контроллерах 7300/7301 реализуются непосредственно аппаратным способом. Благодаря этому повышается быстродействие, поскольку отпадает необходимость программной эмуляции этих функций. Однако главное преимущество, как отмечает Лофтус,— это снижение затрат на разработку программ. Если, например, прикладная программа используется для создания слайдов, то делать это можно с применением оборудования самых различных изготовителей, не меняя никаких кодов прикладной программы. Все, что требуется,— это драйвер устройства для конкретного оборудования. Драйвер контроллера 7300 обеспечивает прямую совместимость с обширным набором прикладных программ, включая программы, работающие под управлением операционных систем MS-DOS, PC-DOS и Unix.

Обработка текстов

Большинство существующих однокристальных графических контроллеров и процессоров (даже некоторые из самых современных), как указывает Лофтус, не способны эффективно обрабатывать текстовые данные, что является весьма серьезным ограничением. Хотя широкие графические возможности необходимы, на практике большинство прикладных программ для графических систем требуют все же активной обработки текстовых данных. Контроллер 7300 был разработан с учетом решения этой важной задачи.

В обычном случае для обработки текстов используется внешний знакогенератор. На кристалле же контроллера 7300 размещены средства, обеспечивающие генерацию набора знаков и запоминание его в той части буфера кадра, которая не воспроизводится на экране. Размер знаков (ширину и высоту) определяет пользователь, причем в наборе можно определить до 256 знаков. В каждый конкретный момент времени могут активно работать два полных набора знаков, при условии что в буфере кадра имеется достаточно места. Доступ к этим поразрядным картам изображений знаков производится при помощи 8-разрядных кодов, что исключает трудности, возникающие при передаче изображений из главного процессора в графический контроллер всякий раз, когда они требуются для воспроизведения.

Гибкость контроллера 7300 дополнительно повышается благодаря наличию двух режимов обработки текста. В режиме ускоренной обработки Fastext контроллер 7300 генерирует стандартные текстовые знаки ASCII с задаваемыми пользователем основным и фоновым цветами. Режим формирования текстовых знаков графическими средствами обеспечивает возможность формирования текста с пропорциональными промежутками между знаками в любом из четырех направлений — вверх, вниз, вправо или влево — с использованием цикла чтения-модификации-записи. В этом режиме текстовые знаки кажутся как бы нарисованными по трафарету на существующем фоне.

Пара контроллеров 7300/7301 имеет несколько видов средств обработки текстов, которые особенно полезны для персональных компьютеров. Речь идет о программировании шрифтов и автоматических справочных таблицах. Встроенные средства программирования шрифтов дают пользователю возможность создавать специальные наборы знаков, указывая их размеры и содержимое, и включать их в текст, приспосабливая таким образом текст к конкретным требованиям, причем без использования внешних знакогенераторов.

Автоматическая просмотровая таблица исключает узкое место, возникающее из-за необходимости передачи содержимого поразрядных карт изображения от главного процессора графическому каждый раз, когда воспроизводится некоторый знак. Вместо этого поразрядные карты изображений знаков хранятся непосредственно в буфере кадра, а доступ к ним осуществляется при помощи 8-разрядных кодов.

Как говорит Лофтус, описываемая пара контроллеров позволяет воспроизводить до восьми окон полной ширины плюс контрольные поля, что дает возможность более эффективно выполнять многие из операций с окнами и пиктограммами, в настоящее время реализуемых на большинстве персональных компьютеров программным способом. В наборе команд контроллеров имеется команда перемещения контрольного поля Move Viewport, которая обеспечивает передачи копий блоков со скоростью более 2 млн. элементов отображения в секунду.

На кристалле контроллера 7300 имеется средство, обычно отсутствующее в других графических контроллерах и процессорах,— программируемая справочная таблица цветов с режимом наложения. Это позволяет пользователю создавать на экране дисплея многоцветные изображения или комбинировать цвета и оттенки согласно требованиям приложения. Режим наложения предусматривает воспроизведение изображений с приоритетностью плоскостей, когда изображения плоскостей более высокого приоритета появляются перед изображениями плоскостей более низкого приоритета. Изображения плоскостей можно выборочно формировать и воспроизводить, что расширяет возможности полиэкранной работы. Путем занесения различных значений в справочную таблицу можно создавать мультипликационные эффекты.

Для воспроизведения изображений, содержащих 256 цветов из реализованной на кристалле палитры (64 000 цветов), в состав контроллера 7300 включен трехразрядный умножающий цифро-аналоговый преобразователь с четырьмя аналоговыми выходами. Чтобы обеспечивать развязку от высоковольтных схем монитора и формировать сигналы ТТЛ-уровней или управлять 5-Ом схемами монитора, необходим внешний буфер. Частота передачи элементов отображения может достигать 30 МГц, так что картина на экране воспроизводится с высокой четкостью и без миганий.

Форматы изображения и временные характеристики монитора определяются в контроллере 7300 программным способом, что позволяет использовать одну и ту же аппаратуру в самых разнообразных приложениях. Кроме того, в контроллере 7300 имеется факультативный программный синхросигнал, поэтому в приложениях с низкой скоростью передачи видеоданных упомянутый графический процессор работает с синхросигналом двойной частоты, что повышает скоростные характеристики системы.

Наличие двух независимых (входного и выходного) регистровых буферов FIFO (16 слов по 16 разрядов) в контроллере 7300 обеспечивает асинхронное взаимодействие с 8- и 16-разрядными процессорами. В адресном пространстве главного процессора контроллер 7300 занимает две ячейки; одна служит для чтения и записи при работе с регистровыми буферами FIFO, а другая— для чтения регистра состояния и записи в регистр команд. Для работы в режиме прямого доступа к памяти предусмотрены сигналы установления связи, а линию готовности можно использовать дл«я включения периодов ожидания в процессе выполнения операций ввода-вывода.

В свой цветной графический контроллер группе разработчиков фирмы NCR удалось включить внушительное число различных блоков, однако ей пришлось принимать трудное решение по поводу организации работы с памятью. По словам Лофтуса, учитывая возможные технико-экономические характеристики и стоимость системы, а не только высокие плотность компоновки и скорость как таковые, разработчики решили создать отдельный контроллер интерфейса памяти. «Аналогичные функции можно было бы реализовать при использовании сдвиговых ТТЛ-регистров и соответствующей связующей логики, однако в этом случае скоростные характеристики оказались бы более низкими, а стоимость более высокой,— говорит он. — С другой стороны, объединение обеих схем на одном кристалле также позволило бы повысить скорость, однако — путем перехода на более дорогостоящую технологию изготовления схем с высокой плотностью упаковки».

Интерфейсный контроллер памяти 7301 разработан как главный управляющий процессор и мультиплексор/демультиплексор памяти, что позволяет использовать общедоступные недорогие динамические ЗУПВ. Работой контроллера 7301 управляет процессор 7300, причем это делается прозрачно (незаметно) для пользователя.

Для достижения высоких качеств и скорости графическая система должна быть в состоянии быстро передавать блоки данных в рамках буфера кадра. Главным фактором с точки зрения качества системы, предлагаемой фирмой NCR, является именно возможность выполнять быстрые пересылки блока данных в пределах буфера кадров, а также обмены блоками данных с кэш-памятью контроллера 7300 (рис.2). Для данных элементов отображения можно выполнять операции сдвига, маскирования и наложения, а также исключающее ИЛИ с существующими элементами отображения. Каждый контроллер 7301 поддерживает две битовые плоскости.

Работая совместно с контроллером 7300, схема интерфейса памяти 7301 обеспечивает управление операциями доступа к памяти.
Рис.2. Работая совместно с контроллером 7300, схема интерфейса памяти 7301 обеспечивает управление операциями доступа к памяти.

Для построения 16-цветного дисплея с буфером кадров 1024*512 (рис.3) используется цветной графический контроллер 7300, два интерфейсных контроллера памяти 7301, восемь ЗУПВ 64К*4 бит и два ТТЛ-буфера для сигналов управления и адресов ЗУПВ. Для каждого аналогового выхода необходима также двухтранзисторная буферная схема.

На базе пары контроллеров 7300/7301 строится система 16-цветного дисплея, имеющая буфер кадров 1024*512 элементов отображения и содержащая менее дюжин
Рис.3. На базе пары контроллеров 7300/7301 строится система 16-цветного дисплея, имеющая буфер кадров 1024*512 элементов отображения и содержащая менее дюжины интегральных схем.

По словам Лофтуса, эту систему можно настраивать на работу во многих различных приложениях. Временные параметры, количество воспроизводимых линий и число элементов отображения на линию — все это задается программным способом. Единственные ограничения — это максимальный размер буфера кадров, который составляет 1024*1024*8 бит, и максимальная частота передачи видеоданных 30 МГц. В рамках указанных ограничений такую систему можно использовать в дисплеях самых разнообразных форматов, в том числе 640*200, 640*400, 640*480, 800*400 и 960*350 элементов отображения, с прогрессивной разверткой и 60-Гц частотой регенерации во всех случаях. При максимальной емкости буфера кадров 1 Мбайт система может также работать с большим дисплеем с чересстрочной разверткой, например в формате 1000*700 элементов отображения.

Хотя фирма NCR реализовала свой графический процессор в виде двух кристаллов, она планирует со временем, как говорит Лофтус, реализовать большинство функций микросхем 7300 и 7301 в однокристальном графическом контроллере, что позволит еще более уменьшить число микросхем в системе. При изготовлении нового кристалла фирма будет использовать КМОП-технологию с топологическими нормами менее 2 мкм. Предполагается, что однокристальный вариант контроллера появится в 1987г.

Дочерние статьи:

Три года работы группы инженеров фирмы NCR

Выходные данные:

Журнал "Электроника" том 59, No.10 (743), 1986г - пер. с англ. М.: Мир, 1986, стр.74

Electronics Vol.59 No.19 May 12, 1986 A McGraw-Hill Publication

Electronics Vol.59 No.20 May 19, 1986 A McGraw-Hill Publication

Раздел: МЕТОДЫ, СХЕМЫ, АППАРАТУРА

Тема:     Графические ИС





Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:44 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/HardWare/NCR/D19860908Elc033.shtml