Разработка буферной памяти видеоадаптера

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    599,79 Кб
  • Опубликовано:
    2014-03-04
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка буферной памяти видеоадаптера

Реферат

 

Курсовой проект содержит: пояснительную записку на ____ л., рисунков-25, таблиц-7, 7 источников, графическую часть на 2 листах формата А1.

АРХИТЕКТУРА И СТРУКТУРА КОМПЬЮТЕРА, БУФЕРНОЙ ПАМЯТИ ВИДЕОАДАПТЕРА, РАЗРАБОТКА СТРУКТУРНОЙ И ПРИНЦИПИАЛЬНОЙ СХЕМЫ БУФЕРНОЙ ПАМЯТИ ВИДЕОАДАПТЕРА КОМПЬЮТЕРА

Объектом для разработки является буферная память видео адаптера компьютера.

Целью данной работы является разработка буферной памяти видео адаптера. При разработке буферной памяти необходимо учитывать критерии оптимизации по потребляемой мощности и аппаратным средствам. Номинальным напряжением питания прибора составит 5 вольт.

В результате проведённой работы по разработке буферной памяти видео адаптера, позволяет осуществлять поставленные задачи.

буферная память видеоадаптер компьютер

Содержание

Введение

1. Анализ архитектуры и структуры элементной базы видеоадаптеров компьютера

1.1 Анализ архитектуры и структуры компьютера

1.2 Анализ архитектуры и структуры буферной памяти видео адаптера

2. Разработка буферной памяти видеоадаптера

2.1 Разработка структурной схемы буферной памяти видеоадаптера

2.2 Разработка принципиальной схемы устройства

2.3 Расчет потребляемой мощности, и подбор блока питания

Заключение

Список литературы

Приложения

Введение


В настоящее время, когда компьютерные системы развиваются быстрее всего во всем мире, не говоря уже о суперстремительном росте вычислительных скоростей, появляется проблема разработки внешних дополнительных устройств, для выполнения той или иной специфической задачи. Сейчас нереально разрабатывать и продавать узкоспециализированные компьютерные системы, для широкого круга пользователей. Большинство пользователей, просто требует, чтобы их компьютер выполнял множество различных функций, вот например самые распространенные из них, это аудио и видео возможности, а с появлением интернета компьютер превратился в очень удобное и мощное средство общения и не только посредством текста, пользователи хотят разговаривать и видеть друг друга. Как мы видим, возможности современных компьютерных систем далеко ушли от тех, для выполнения которых была придумана ЭВМ. Но для дополнительных функций нужны и дополнительные аппаратные и программные средства. Например, для ввода в компьютер графической информации используется сканер или телекамера, а с развитием общества такие потребности быстро растут. Сложность таких устройств не велика, но если требуется высокое качество и при этом на ввод информации нужно затратить минимум времени, то сложность таких устройств очень резко возрастает.

В данном курсовом проекте, поставлена задача, разработать буферную память видеоадаптера. Задача может быть выполнена при проектировании в EWB, с использованием четырёх разрядного универсального регистра 74194 (4-bit Bidirectional Univ. Shift Reg), элемента "И" (2-Input AND Gate), элемента "НЕ" (NOT Gate), источника питания (Pull-Up Resistor), заземления (Ground), переключателя (Switch), генератора импульса (Clock Properties), лампочки (Red Prode).

1. Анализ архитектуры и структуры элементной базы видеоадаптеров компьютера


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

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

1.1 Анализ архитектуры и структуры компьютера


С середины 60-х годов очень сильно изменился подход к созданию вычислительных машин. Вместо разработки аппаратуры и средств математического обеспечения стала проектироваться система, состоящая из синтеза аппаратных (hardware) и программных (software) средств. При этом на главный план выдвинулась концепция взаимодействия. Так возникло новое понятие архитектура ЭВМ. Под архитектурой ЭВМ принято понимать совокупность общих принципов организации аппаратно-программных средств и их основных характеристик, определяющая функциональные возможности вычислительной машины при решении соответствующих типов задач. Обобщённая структурная схема ЭВМ первых поколений представлена на рисунке 1.

Рисунок 1 - Структурная схема ЭВМ первого и второго поколений

Архитектура ЭВМ охватывает значительный круг проблем, связанных с созданием комплекса аппаратных и программных средств и учитывающих большое количество определяющих факторов. Среди этих факторов основными являются: стоимость, сфера применения, функциональные возможности, удобство в эксплуатации, а одним из основных компонентов архитектуры считаются аппаратные средства. Архитектуру вычислительного средства необходимо отличать от структуры ВС. Структура вычислительного средства определяет его текущий состав на определенном уровне детализации и описывает связи внутри средства. Архитектура же определяет основные правила взаимодействия составных элементов вычислительного средства, описание которых выполняется в той мере, в какой необходимо для формирования правил взаимодействия. Она устанавливает не все связи, а только наиболее необходимые, которые должны быть известны для более грамотного использования применяемого средства.

Архитектура ЭВМ включает в себя как структуру, отражающую состав ПК, так и программно - математическое обеспечение. Структура ЭВМ - совокупность элементов и связей между ними. В ЭВМ третьего поколения произошло улучшение структуры, за счёт разделения процессов ввода-вывода информации и процесса её обработки, как показано на рисунке 2.

Рисунок 2 - Структурная схема ЭВМ третьего поколения

Сильно связанные устройства АЛУ и УУ получили название процессор. В структуре ЭВМ появились дополнительные устройства, которые стали называться: процессоры ввода-вывода, устройства управления обмена информацией, каналы ввода вывода (КВВ). Здесь наметились тенденции к децентрализации управления параллельной работе отдельных устройств, что резко позволило повысить быстродействие ЭВМ в целом.

Среди каналов ввода-вывода выделяли мультиплексные каналы, способные обслуживать большое количество медленно работающих устройств ввода-вывода, и селекторные каналы, обслуживающие в монопольных режимах скоростные внешние запоминающиеся устройства (ВЗУ).

В персональных ЭВМ, относящихся к ЭВМ четвёртого поколения, произошло дальнейшее изменение структуры. Они унаследовали её от мини ЭВМ, как показано на рисунке 3.

Рисунок 3 - Структурная схема ПЭВМ

Соединение всех устройств в единую машину обеспечивается с помощью общей шины, представляющую собой линии передачи данных, адресов, сигналов управления питания. Единая система аппаратурных соединений значительно упростила структуру, сделав её ещё более децентрализованной. Все передачи данных по шине осуществляются под управлением сервисных программ.

Ядро ПЭВМ образуют процессор и основная память (ОП), состоящая из оперативной памяти и постоянно запоминающего устройства (ПЗУ). ПЗУ предназначается для записи постоянного хранения наиболее часто используемых программ управления. Подключение всех внешних устройств (ВнУ): дисплея, клавиатуры, внешних ЗУ и др., обеспечивается через соответствующие адаптеры - согласователи скоростей работы сопрягаемых устройств или контроллеры - специальные устройства управления периферийной аппаратурой. Контроллеры в ПЭВМ играют роль каналов ввода-вывода. В качестве особых устройств следует выделить таймер - устройство измерения времени и контроллер прямого доступа к памяти (КПД) - устройство, обеспечивающее доступ к ОП, минуя процессор.

Способ формирования структуры ПЭВМ является достаточно логичным и естественным стандартом для данного класса ЭВМ.

Основным принципом построения всех современных ЭВМ является программное управление. Основы учения об архитектуре вычислительных машин были заложены Джон фон Нейманом. Совокупность этих принципов породила классическую (фон-неймановскую) архитектуру ЭВМ.

Современную архитектуру компьютера определяют следующие принципы:

принцип программного управления;

принцип программы, сохраняемой в памяти;

принцип произвольного доступа к памяти.

На основании этих принципов можно утверждать, что современный компьютер - техническое устройство, которое после ввода в память начальных данных в виде цифровых кодов и программы их обработки, выраженной тоже цифровыми кодами, способно автоматически осуществить вычислительный процесс, заданный программой, и выдать готовые результаты решения задачи в форме, пригодной для восприятия человеком. Реальная структура компьютера значительно сложнее, чем рассмотренная выше (ее можно назвать логической структурой). В современных компьютерах, в частности персональных, все чаще происходит отход от традиционной архитектуры фон - Неймана, обусловленный стремлением разработчиков и пользователей к повышению качества и производительности компьютеров. Качество ЭВМ характеризуется многими показателями. Это и набор команд, которые компьютер способный понимать, и скорость работы центрального процессора, количество периферийных устройств, ввода-вывода, присоединяемых к компьютеру одновременно и т.д. Главным показателем является быстродействие - количество операций, какую процессор способен выполнить за единицу времени. На практике пользователя больше интересует производительность компьютера - показатель его эффективного быстродействия, то есть способности не просто быстро функционировать, а быстро решать конкретные поставленные задачи. Как результат, все эти и прочие факторы способствуют принципиальному и конструктивному усовершенствованию элементной базы компьютеров, то есть созданию новых, более быстрых, надёжных и удобных в работе процессоров, запоминающих устройств, устройств ввода-вывода и т.д. Тем не менее, следует учитывать, что скорость работы элементов невозможно увеличивать беспредельно (существуют современные технологические ограничения и ограничения, обусловленные физическими законами). Поэтому разработчики компьютерной техники ищут решения этой проблемы усовершенствованием архитектуры ЭВМ. Так, появились компьютеры с многопроцессорной архитектурой, в которой несколько процессоров работают одновременно, а это означает, что производительность такого компьютера равняется сумме производительностей процессоров. В мощных компьютерах, предназначенных для сложных инженерных расчетов и систем автоматизированного проектирования (САПР), часто устанавливают два или четыре процессора. В сверхмощных ЭВМ (такие машины могут, например, моделировать ядерные реакции в режиме реального времени, прогнозировать погоду в глобальном масштабе) количество процессоров достигает нескольких десятков.

1.2 Анализ архитектуры и структуры буферной памяти видео адаптера


Видеокарта состоит из четырех основных устройств:

памяти, контроллера, цифро-аналогового преобразователя (ЦАП, DAC) и видео-ПЗУ.

Видеопамять нужна для хранения изображения. От её объема зависит максимально возможное разрешение видеокарты. Полное разрешение видеокарты можно посчитать по формуле Г х В х Ц, где - количество точек по горизонтали, В - по вертикали, а Ц - количество возможных цветов каждой точки. Например, для разрешения 640x480x16 достаточно 256 КБ, для 800x600x256 - 512 КБ, для 1024x768x65536 - 2 МБ. Для хранения цветов отводится некоторое целое число двоичных разрядов, поэтому количество цветов всегда является степенью двойки: 4 разряда - 16 цветов, 8 разрядов - 256 цветов, 16 разрядов - 65 536 цветов (так называемый режим High Color - высококачественное цветовоспроизведение), 24 разряда - 16 777 216 цветов (True Color - реалистичное цветовоспроизведение).

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

В зависимости от назначения различают:

-        оперативные запоминающие устройства (ОЗУ) предназначенные для записи, хранения и считывания данных в процессе их обработки. В зарубежной литературе они обозначаются как RAM - Random Access Memory;

-        постоянные запоминающие устройства (ПЗУ), предназначенные для хранения и считывания неизменных данных, предварительно заносимых на этапе их программирования. В зарубежной литературе ПЗУ обозначаются как ROM - Read Only Memory.

В зависимости от способа обращения к массиву данных различают:

-        адресные ЗУ, в которых обращение к ячейкам памяти происходит по их физическим адресам, задаваемым в виде кода адреса;

-        ассоциативные ЗУ, в которых поиск ячеек памяти с последующей выдачей данных, производится по их содержанию.

Наибольшее распространение получили адресные ЗУ с произвольной выборкой, которые при обращении допускают любой порядок следования адресов. Применяются также ЗУ с последовательной выборкой, при которой выборка ячеек памяти производится только в порядке возрастания или убывания адресов.

Основными узлами ЗУ являются дешифратор адреса; матрица памяти, состоящая из отдельных запоминающих ячеек; выходная часть, обеспечивающая внешнее сопряжение и схема управления режимами работы (запись, хранение или считывание). Основными характеристиками ЗУ являются:

-        структурная организация памяти, определяющая её информационную емкость N=2n X т, где п - разрядность адреса, am - разрядность хранимых данных или длина слова;

-        уровни входных и выходных сигналов, которые, как правило, приводятся к стандартным уровням ТТЛ, КМОП или ЭСЛ;

-        напряжение питания и токи потребления в различных режимах работы;

-        быстродействие, определяемое для различных режимов работы.

ИС ЗУ изготавливаются в зависимости oт назначения по различным технологиям с использованием различной элементной базы и физических принципов хранения данных.

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

Общая структура статического ОЗУ показана на рисунке 4.

Рисунок 4 - Общая структура статического ОЗУ с организацией 2n x 1

ОЗУ содержит дешифраторы строк ДШХ и столбцов ДШY, на входы которых подаются разряды адреса ячейки памяти. Матрица памяти, состоящая из X строк и Y столбцов, подключена к выходам дешифраторов строк и столбцов через шины адреса ША и разрядов ШР. По заданному адресу выбирается одна из 2n ячеек памяти. Записи по входу DI или считывание по выходу DO производится с помощью формирователя сигналов записи и считывания ФЗС под действием управляющих сигналов WR/RD и CS (Chip Select), подаваемых на схему управления СУ. Выдача данных производится через выходной элемент ВЭ с ОК или тремя состояниями. Диаграммы работы статического ОЗУ в различных режимах приведены на рисунке 5.

Рисунок 5 - Диаграммы работы статического ОЗУ

Работа ОЗУ начинается с подачи адреса. После установления кода адреса подается сигнал CS = 0, разрешающий формирование сигналов выборки ячейки памяти. При сигнале WR/RD = 0 производится запись в выбранную ячейку памяти, при этом выход ОЗУ находится в отключенном состоянии. При WR/RD = 1 производится считывание данных, при этом состояние входа DI не оказывает влияния на работу ОЗУ. При CS = 1 ОЗУ находится в режиме хранения с отключением выхода DO, при этом состояния адресных входов, входа DI и входов управления не влияют на работу ОЗУ. Быстродействие ОЗУ оценивается временем цикла и выборки. Время цикла - это минимально допустимое время между подачей сигнала выборки при записи и сигнала выборки для последующего считывания. Время выборки - это интервал времени между подачей сигнала выборки и появлением данных на выходе ОЗУ. Для снижения энергопотребления в режиме хранения питание можно сохранять только на матрице памяти, отключив его от остальных узлов. Такая организация питания, называемая активно-пассивной, позволяет существенно снизить потребляемую мощность.

ИС статических ОЗУ выполняются преимущественно по ТТЛ, КМОП и ЭСЛ - технологиям и имеют различную структурную организацию, как показано на рисунке 6.

Рисунок 6 - ИС статических ОЗУ

в качестве примера приведены ИС статических ОЗУ типа 155РУ7 (ТТЛ, с организацией 1 К х 1), 537РУ10 (КМОП, с организацией 2К x 8). В ОЗУ с пословной организацией, входы и выходы данных совмещаются и выполняются двунаправленными, с управлением от дополнительного сигнала ОЕ (Output Enable). Для увеличения информационной емкости устройств памяти применяются различные схемы наращивания. На (рисунке 7, а) показано построение модуля оперативной памяти с информационной емкостью N=2 n x m на базе одноразрядных ИС ОЗУ. Количество ИС в модуле равно разрядности слова данных. На все ИС адрес и сигналы управления подаются одновременно. На (рисунке 7, б) показана схема построения модуля памяти с информационной емкостью 2 k х т на базе ИС с организацией 2 n x т. Дополнительные разряды адреса Аn. Аk-1 необходимые для увеличения емкости памяти подаются на дешифратор старших разрядов адреса, выходные сигналы которых, используются для обращения к той или иной ИС ОЗУ.

а)                                                              б)

Рисунок 7 - Способы наращивания информационной ёмкости ОЗУ

При необходимости одновременного наращивания разрядности данных и емкости применяется комбинация двух рассмотренных схем.

Существенное увеличение информационной емкости при одновременном снижении энергопотребления достигается в ОЗУ динамического типа, в которых данные хранятся в виде заряда на емкости МОП - транзисторов. Из-за разряда конденсатора емкостью порядка 0,1 пФ при токе утечки порядка 10-10, а время хранения не превышает 1-2 мс. Поэтому для предотвращения разрушения данных производится периодический подзаряд емкости, или так называемая регенерация данных. Регенерация производится двумя способами. При внешней регенерации производится периодический перебор всех ячеек памяти, при которой производится считывание и повторная запись данных. В ОЗУ с внутренней регенерацией, подзаряд емкостей производится встроенными средствами в промежутках между выборками. Такие ОЗУ называются квазистатическими. Так как ОЗУ динамического типа предназначены для построения памяти с большой информационной емкостью, то в силу имеющихся ограничений по числу внешних выводов ИС ввод адреса производится в два приема, сначала вводится адрес строки, а затем адрес столбца. Для стробирования ввода адресов в отличие от ОЗУ статического типа, вместо одного сигнала CS используется два управляющих сигнала RAS (Row Address Select) и CAS (Column Address Select).

Информационная ёмкость БИС динамических ОЗУ достигает десятков мегабит и значительно превосходит ёмкость БИС ОЗУ статического типа.

В зависимости от назначения различают следующие типы ИС ПЗУ:

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

-        программируемые ПЗУ (ППЗУ или PROM - Programmable ROM) с возможностью однократного программирования содержимого матрицы памяти электрическим способом;

-        репрограммируемые ПЗУ (РПЗУ или EPROM - Erasable PROM) с возможностью многократного программирования электрическим способом и стиранием данных электрическим способом или с помощью ультрафиолетового облучения.

В отличие от ОЗУ все виды ПЗУ, включая предварительно запрограммированные ППЗУ и РПЗУ, работают только в режимах хранения и считывания. Структура ПЗУ проще структуры ОЗУ (рисунок 8), так как отсутствуют узлы управления записью и ввода данных.

При считывании данных по заданному адресу используется только один сигнал CS.

Рисунок 8 - Общая структура статического ОЗУ с организацией 2n x 1

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

а)                                                     б)

Рисунок 9 - Варианты построения ячеек ППЗУ

При программировании ПЗУ производится пережигание ненужных перемычек серией импульсов тока. Для этого в состав ППЗУ вводится дополнительный узел электрического программирования. Программирование ППЗУ производится на специальных стендах - программаторах по специальной программе. После программирования производится термотренировка ППЗУ при повышенной температуре (около 100°С) с целью предотвращения самовосстановления перемычек.

ИС ППЗУ имеют пословную организацию с m = 4 или 8 при различной информационной емкости и имеют выход с ОК или с тремя состояниями. Так например ИС ППЗУ 556РТ18, изготовленная по ТТЛШ - технологии имеет емкость 2К х 8, выход с тремя состояниями и время считывания 60 нс.

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

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

Наращивание информационной емкости постоянной памяти производится по схемам аналогичным для оперативной памяти, как показано на рисунке 7.

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

ЦАП служит для преобразования потока данных, формируемых видеоконтроллером, в уровни интенсивности цвета, подаваемые па монитор. Мониторы используют аналоговый видеосигнал, поэтому возможный диапазон цветности изображения определяется только параметрами ЦАП. Большинство ЦАП имеют разрядность 8x3 - три канала основных цветов (красный, синий, зеленый, RGB), по 256 уровней яркости на каждый цвет, что в сумме дает 16.7 млн цветов. Обычно ЦАП совмещен на одном кристалле с видеоконтроллером.

Буферная память имеет несколько назначений:

Целью механизма буферной памяти, является уменьшение потребляемых ресурсов объектом приёмником, требующего сравнительно больших затрат, путём уменьшения частоты поступления потока данных в объект-приёмник;

Целью механизма буферной памяти является создание участка оперативной памяти для отработки процессов памяти, и других процессов, время выполнения которых зависит от размеров памяти. Буферной памятью называется - объект памяти, которым владеют одновременно два объекта, не связанные между собой.

Обычно два объекта, владеющие буферной памятью, называются по типу их отношений с буфером, источник - приёмник. Один объект источник помещает данные в буфер, а другой объект - приёмник снимает их с буфера. Но сами эти объекты, не связаны между собой ни какой архитектурной зависимостью кода. Между прочим, такая модель взаимодействия получила название прокси, когда существует система-посредник между двумя системами. То есть буфер иными словами является прокси-объектом, а источник - буфер - приёмник - прокси-системой. Рабочий цикл буфера.

Буферная память имеет три основных состояния:

состояние сброса;

состояние наполнения;

состояние передачи.

Состояние сброса - это первоначальное состояние буфера, в котором весь буфер считается пустым.

Состоянием наполнения называется момент времени, в котором информация помещается в буфер.

Состоянием передачи называется процесс, когда информация из буфера перемещается в объект приёмник.

Графическое изображение цикла работы буфера представлено на рисунке 10.

Рисунок 10 - Графическое изображение цикла работы буфера

Состояние сброса является начальным состоянием буферной памяти, после того как она заказана и выделена. Буферную память, как правило, заказывает третье лицо, и назначает её владельцам, источнику и приёмнику. То есть источник, и приёмник не подозревают, что они работают через буфер. Очень часто буферную память заказывает и объект приёмник, который, по сути, управляет выходным хранилищем данных. В этом случае, он подключается к объекту источнику и передаёт ему буфер. Но никогда буферную память не заказывает объект источник. Можно считать, что объект источник должен быть сконструирован так, чтобы он не подозревал, что работает с буфером. Конечно, на любое правило есть исключения, но в большинстве случаев, такое утверждение указывает на не оптимальность управляющего алгоритма, либо на возможность потенциальной ошибки в нём. Объект источник помещает поток данных в буфер, при этом этот процесс передачи может быть организован двумя методами:

сегментами;

произвольно.

В первом случае считается, что источник заполняет буфер посегментно, фиксированными блоками памяти. Во втором случае, заполнение буфера происходит произвольным образом. По способу заполнения можно выделить следующие виды взаимодействия:

по сессионное заполнение;

циклическое;

неупорядоченное.

В первом случае источник заполняет буфер во время специальных периодов называемых сессиями, во втором случае буфер заполняет в каком-либо непрерывном цикле, и в третьем случае буфер заполняется в произвольный момент времени. И, наконец, по способу доступа источника и приёмника:

синхронный;

асинхронные.

От приведённой выше классификации зависят методы и способы построения рабочего цикла буфера. Главным моментом в жизни буфера является его переполнение, именно по возникновению этого события происходит процедура передачи и перевод буфера в состояние сброса. То как это происходит, зависит от схемы взаимодействия.

Если память в буфере занимается сегментно, то тогда возникает возможность предсказывать переполнение, и передать данные в приёмник в любой момент, когда он будет готов для приёма. В подобных алгоритмах активно используются асинхронные вызовы и событийные системы потенциалов, но можно ограничиться и традиционными способами.

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

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

Выделение памяти буферу.

Вопрос создания буфера открывается в момент создания объекта приёмника. И как нестранно такое утверждение - правило. Сколько же памяти следует отдавать на буфер? Вот довольно жёсткий принцип:

Размер буфера должен быть таким, чтобы суммарное время выполнения кода обслуживающее режим наполнения, было бы равно времени выполнения кода, выполняющего режим передачи. При этом код исполняемый объектом источником должен иметь приемлемое время исполнения.

В первой части определения разговор идёт касательно так называемого первого назначения буфера. Обычно код организующий выделение памяти средствами ОС является <тяжёлым кодом>, то есть он требует сравнительно много времени на выполнение. Предположим, если вы выполняете какие-то циклические действия над потоком ввода из файла, то было бы чрезвычайно расточительно обращаться к диску за каждым байтом. В этом случае, с диска считывается сразу дамп памяти, а некая операция выполняется над этим дампом. Данный пример, аналогичен, так же если вместо источника диска, подставить источник - некую функцию, конвертирующую данные, либо что-то ещё.

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

Однако, несмотря на всё вышесказанное, прямое использование этого правила не возможно, так как число влияющих факторов на выбор размера буфера намного больше из тех, что рассмотрены в правиле. На выбор размера буфера так же влияют: гранулярность памяти, физический размер страниц, методы выделения памяти, удобство работы обслуживающих алгоритмов, и др. Так же фактором выбора размера буфера является место его размещения и метод получения.

Буферную память можно разместить как статически, то есть заранее расположенную в секции неинициализированных данных, так и динамически выделенную.

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

Буферную память целесообразно размещать в области виртуальной памяти, т.е. в файле подкачки. В любом случае размер буфера обязан быть кратен размеру страницы в данной системе. Однако гранулярность выделения памяти в Win32 является 64-bits, что создаёт жёсткие ограничения на размер буфера. Поэтому стоит выделять некоторое пространство памяти для нескольких буферов, и давать им размеры и базовые адреса по размерам страниц.

Один буфер для многих и многоуровневая буферизация.

Широкий круг задач приходится выполнять жёстко последовательно. Например, ввод с клавиатуры может быть направлен в данный момент времени только в один источник. Этим можно воспользоваться для организации одного буфера. Для использования многими, можно применить технологию ускользающих. В этом случае сброс буфера будет выполняться либо когда он наполнен, либо когда к буферу обращается другой объект-хозяин. Место под такой буфер можно зарезервировать в неинициализированном разделе, если он не превышает 8kb - 12kb оперативно памяти. Использование статических буферов является более эффективными по способу адресации, и тем эта эффективность выше, чем больше кода использует данный буфер. Статические буфера желательно использовать, где только это возможно, хотя это возможно далеко не везде. К счастью существует метод многоуровневой буферизации. Как следует из названия, этот метод представляет собой наличие объекта хозяина у буфера, где объект хозяин сам является буфером. Буфер, который <стоит> ближе к действительному источнику именуется первым, а все последующие по порядку. Обычно каждый последующий буфер имеет меньшую частоту сброса, а значит, занимает больше памяти. Метод многоуровневой буферизации позволяет комбинировать достоинства нескольких приёмов размещения буферов. Например, первым буфером может являться буфер размещённый статически, а вторым - размещённый динамически. Примером использования многоуровневой системы буферизации может послужить API работы с файлами. Вы можете использовать кокой-то свой буфер для выполнения задач, когда система прозрачно для вас выполняет ещё одну буферизацию. А если вспомнить про физический буфер, находящийся в самом жёстком диске, то мы получим трёх уровневую систему буферизации ввода.

Определённый интерес представляет использование, какой-либо памяти и буфера. Модель работы такой системы выглядит так:

объект источник помещает данные в область памяти не являющуюся буфером;

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

2. Разработка буферной памяти видеоадаптера


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

2.1 Разработка структурной схемы буферной памяти видеоадаптера


При проведении анализа и существующих методов схемотехники устройств, было отдано предпочтение четырёх разрядному универсальному регистру 74194, и схеме управления буферной памятью состоящей из:

генератора импульсов;

элемента "НЕ";

элемента "И" (2-input AND Gate);

источника питания.

Ниже представлена структурная схема устройства, которая в основе будет использоваться при создании буферной памяти видеоадаптера (рисунок 11).

Рисунок 11 - Структурная схема буферной памяти

На основании выше построенной структурной схемы и выбора элементной базы и схемой управления буферной памятью, построим функциональную схему.

Данная схема будет иметь:

четырёх разрядных универсальных регистра 74194, разрядностью буфера 8 бит с объёмом буфера 2 байта и количеством битов порции информации 8 бит;

четырёх разрядных универсальных регистра 74194 для управления работой и передачи информации; работать от напряжения 5 вольт, и иметь 8 ключей, для параллельных информационных входов, 2 общих ключа на управляющие входы, вешнюю схему управления буферной памятью (рисунок 12).

Рисунок 12 - Структурная схема устройства буферной памяти

Для работы буферной памяти видео адаптера, производится запрос - ответ в асинхронном режиме. Источник помещает данные в буфер памяти, из кодовой шины данных по параллельным информационным входам A, B, C, D, данные поступают в буфер памяти по 1 байту порции информации, затем по параллельным информационным выходам QA, QB, QC, QD в следующий информационный вход А, B, C, D, и так далее пока заполнится буфер данных.

При заполнении буферной памяти в количестве 8 бит, подаётся логическая 1 на элемент "НЕ", о заполнении памятью на старший бит последнего в буферной памяти четырёх разрядного универсального регистра 74194. Тогда внешняя схема управления подаёт сигнал на вход сброса регистра CLR логическое 0, для выдачи порции информации на шину видеоадаптера, через управляющие параллельные информационные выходы QA, QB, QC, QD.

Другой объект приёмник, снимает данные через шину видеоадаптера к монитору, тогда 1 байт из кодовой шины данных опять принимается и заполняется в буфер памяти.

2.2 Разработка принципиальной схемы устройства


Для построения буферной памяти видеоадаптера, мы будем использовать четырёх разрядный универсальный регистр 74194, элемент "И" (2-Input AND Gate), элемента "НЕ" (NOT Gate), источника питания (Pull-Up Resistor), заземления (Ground), переключателя (Switch), генератора импульса (Clock Properties).

Рассмотрим схемы, характеристики и таблицы истинности каждого элемента устройства по отдельности. Расположение выводов показано на рисунке 13.

Универсальный четырёх разрядный микропроцессор 74194, имеет следующие расположения выводов:

вход сброса регистра CLR;

последовательный информационный вход со сдвигом вправо SR;

параллельный информационный вход А;

параллельный информационный вход В;

параллельный информационный вход С;

параллельный информационный вход D;

последовательный информационный вход со сдвигом влево SL;

земля GND;

управляющий входом S0;

управляющий входом S1;

вход подачи синхроимпульса CLK;

параллельные информационные выходы QD;

параллельные информационные выходы QC;

параллельные информационные выходы QB;

параллельные информационные выходы QA;

питание VCC.

Рисунок 13 - Расположение выводов микропроцессора 74194

Состояние управления входами четырёх разрядного микропроцессора 74194 приведена в таблице 1.

Таблица 1 - состояния управления входами микропроцессора 74194

S0

S1

P. P. P

0 0 1 1

0 1 0 1

PX - Режим хранения Сдвиг (влево или вправо) Сдвиг (вправо или влево) Параллельная запись


Таблица состояния регистра микропроцессора 74194 приведена на рисунке 14.

Рисунок 14 - состояния микропроцессора 74194

Четырёх разрядный универсальный регистр 74194 собирается из готового одного полусумматора и из трёх полных сумматоров (рисунок 15).

Рисунок 15 - Функциональная схема четырёх разрядного АЛЛУ

Полусумматор, сумматор - это электронная логическая схема, выполняющая суммирование двоичных чисел поразрядным сложением. Сумматор является центральным узлом арифметико-логического устройства компьютера. Сумматор выполняет сложение многозначных двоичных чисел. Он представляет собой последовательное соединение одноразрядных двоичных сумматоров, каждый из которых осуществляет сложение в одном разряде. Если при этом возникает переполнение разряда, то перенос суммируется с содержимым старшего соседнего разряда. На (рисунке 16 а) показан полусумматор, а на (рисунке 16 б) сумматор.

а)                                           б)

Рисунок 16 - Основные элементы тракта данных:

а) полусумматор; б) сумматор

Полусумматор состоит из элемента "И"; и "исключение ИЛИ" (рисунок 17).

Рисунок 17 - Структурная схема полусумматора

Tаблица 2 - таблица истинности полусумматора

А0

В0

S0

C0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1


Сумматор состоит из элемента "И"; "Исключение ИЛИ"; "ИЛИ" (рисунок 18).

Рисунок 18 - Принципиальная схема сумматора

Таблица 3 - Таблица истинности для сумматора

А1

B1

C0

S1

C1

0

0

0

0

0

0

0

1

1

0

0

1

0

1

0

0

1

1

0

1

1

0

0

1

0

1

0

1

0

1

1

1

0

0

1

1

1

1

1

1


Логический элемент "И" (рисунок 19).

Рисунок 19 - Зарубежное (слева) и отечественное (справа) изображение логического элемента "И"

Таблица 4 - Таблица истинности элемента "И"

 Х1

 Х2

 Y

0

0

0

1

0

1

0

0

1

1

1


Логический элемент "ИЛИ" (рисунок 20).

Рисунок 20 - Зарубежное (слева) и отечественное (справа) изображение логического элемента "ИЛИ"

Таблица 5 - Таблица истинности элемента "ИЛИ"

X1

X2

Y

0

0

0

0

1

1

1

0

1

1

1

1


Логический элемент "исключение ИЛИ" показан на рисунке 21.

Рисунок 21 - Зарубежное (справа) и отечественное (слева) изображение логического элемента "исключение ИЛИ".

Таблица 6 - Таблица истинности для элемента "исключение ИЛИ".

X1

X2

X3

0

0

0

0

1

1

1

0

0

1

1

0


Логический элемент "HE" (рисунок 22)

Рисунок 22 - Зарубежное (слева) и отечественное (справа) изображение логического элемента "НЕ

"

Таблица 7 - Таблица истинности элемента "HE"

Х

Y

0

1

1

0


Генератор импульса показан на рисунке 23.

Рисунок 23 - Генератор импульса

Внешняя схема управления буферной памятью показана на рисунке 24.

Рисунок 24 - Схема управления буферной памяти видеоадаптера

Основываясь на данных с функциональной и структурной схемой буферной памяти, и описаний всех применяемых микросхем и логических элементов, приступим к разработке принципиальной схемы устройства. Для выполнения поставленной задачи потребуется:

четырёх разрядных универсальных регистра 74194;

логических элемента "И";

логический элемент "НЕ";

генератора импульса.

Логика работы устройства полностью совпадает с разработанной логикой работы функциональной схемы рисунка 25.

Рисунок 25 - Принципиальная схема буферной памяти видеоадаптера

2.3 Расчет потребляемой мощности, и подбор блока питания


Для того чтобы рассчитать мощность, потребляемую разработанным устройством преобразования двоично-десятичного числа в двоично-шестнадцатеричное число необходимо выяснить мощность, которую потребляют используемые элементы схемы в отдельности.

Исходя из паспортных данных, мы получили следующие:(74194) - 45мВт;

логические элементы на базе 74хх серии 5мВт на элемент;

) генератор тактовых импульсов.

Расчетная общая потребляемая мощность равна

*6+3*5+15=290 мВт.

Расчет Б/П I=P/Uпит. I=0.290/5=0,058 А

Опираясь на данный расчет для питания разработанного устройства можно подобрать блок питания 5 вольт, с током не менее 0,06 А.

Заключение


Задачей данной курсовой работы является проектирование устройства, выполняющего работу буферной памяти видеоадаптера. Для успешного решения поставленной задачи процесс проектирования был разделен на стадии, а именно: структурное, функционально-логическое и принципиальное (техническое) проектирование.

При структурном проектировании выбирались, конкретизировались принципы построения устройства в целом. Определялся состав, устанавливались связи взаимодействия между отдельными частями-блоками, формулировались требования к блокам и выполняемым ими функциям.

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

При техническом (принципиальном) проектировании была проведена детализация проектных решений: выбраны типы физических элементов, на которых будет реализовано устройство, то есть элементная база; конкретизированы номиналы элементов и модулей; в заключение проведены расчеты на обеспечение заданных технических требований.

Список литературы


1. Вычислительные системы, сети и телекомуникации: Учебник. - 2-е изд., перераб. И доп. / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; Под редакцией А.П. Пятибратова. - М.: Финансы и статистика, 2001. - 512с: ил.

2. И.К. Каримов. Вычислительные машины, системы и сети. Методические указания к выполнению лабораторных работ № 1-9 по курсу для студентов специальности 210100 "Управление и информатика в технических системах" очной и заочной форм обучения. - Петропавловск-Камчатский: КамчатГТУ, 2007. - 131с.

. Чье Ен Ун Схемотехника. Импульсные и цифровые устройства. - Петропавловск-Камч.: Изд-во КамчатГТУ, 2002. - 157 с.

4. Из чего состоит видеокарта. #"723854.files/image026.gif">

Похожие работы на - Разработка буферной памяти видеоадаптера

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!