ООО ЭФО
Поиск по складу
Программа поставок 2016
Сегодня
www.powel.ru
источники питания
www.korpusa.ru
конструктивы и корпуса РЭА
www.wless.ru
беспроводные технологии
www.mymcu.ru
микроконтроллеры
altera-plis.ru
микросхемы Altera
www.infiber.ru
волоконно-оптические
компоненты в
промышленности
www.efo-power.ru
силовая электроника
www.efo-electro.ru
электротехническая
продукция
www.efometry.ru
контрольно-измерительные приборы
www.golledge.ru
кварцевые резонаторы и генераторы Golledge
www.sound-power.ru
профессиональные усилители класса D
Поиск по сайту
Подписка на новости

Система менеджмента
качества сертифицирована на соответствие требованиям:
ISO 9001, ГОСТ Р ИСО 9001 и СРПП ВТ - подтверждено сертификатами соответствия в системах сертификации Русского Регистра, ГОСТ Р, международной сети IQNet, "Оборонсертифика" и "Военный Регистр".

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


Rambler s Top100



ChipFind - поисковая система по электронным компонентам
EEN
webmaster
Санкт-Петербург: (812) 327-86-54  zav@efo.ru Москва: (495) 933-07-43  moscow@efo.ru Екатеринбург: (343) 278-71-36  ural@efo.ru Пермь: (342) 220-19-44  perm@efo.ru
Казань: (843) 518-79-20  kazan@efo.ru Ростов-на-Дону: (863) 220-36-79  rostov@efo.ru Н. Новгород: (831) 434-17-84  nnov@efo.ru Новосибирск: (383) 286-84-96  nsib@efo.ru
о нас склад библиотека статьи
 
IDT: Память FIFO и ее применение
Татьяна Мамаева,
15 февраля 2001 г.

1. Сравнительный анализ памяти FIFO, RAM и ROM

         Характерной особенностью памяти FIFO по сравнению с обычной памятью RAM или ROM является отсутствие адресных линий. Базовая архитектура FIFO представлена в виде массива (RAM ARRAY) с перемещаемыми при считывании и записи указателями начала (READ POINTER) и конца (WRITE POINTER) свободного пространства памяти (рис.1). Преимуществом такого способа организации памяти является выводная совместимость микросхем FIFO, имеющих разную информационную емкость.



Рис.1. Базовая архитектура памяти FIFO

         Другим отличительным свойством памяти FIFO является наличие отдельного порта для чтения и отдельного порта для записи данных. Благодаря наличию указателей и двухпортовой структуре памяти FIFO, стробы считывания и записи данных могут поступать на одноименные входы памяти в произвольном порядке. И, если в памяти RAM операции чтения и записи данных выполняются строго последовательно во времени, то в памяти FIFO допускается выполнение записи и считывания в независимых друг от друга асинхронных режимах.
         Недостатком FIFO является то, что содержимое уже прочитанной ячейки памяти может быть автоматически замещено новым значением, тогда как в RAM или ROM содержимое ячеек может быть изменено только путем непосредственной адресации и записи в них новых значений. Для предотвращения непредусмотренной потери данных в состав микросхем памяти FIFO введены флаги заполненности. В процессе функционирования память FIFO может находиться в одном из следующих возможных состояний: "нормальная работа", "буфер пуст", "буфер почти пуст", "буфер заполнен на1/2 от максимального размера пространства памяти", "буфер почти полон", "буфер полон". Флаги заполненности являются индикаторами этих состояний и позволяют внешним устройствам осуществлять гибкий контроль над потоками считываемых или записываемых данных. С целью обеспечения помехоустойчивой передачи данных в канале связи, в состав большинства современных микросхем памяти FIFO добавлена функция повторного считывания данных из буфера, начиная с первого слова. Расширением этой функции является возможность повторного считывания произвольного сегмента памяти путем пользовательской установки указателя начала записи.
         Общими характеристиками памяти FIFO, памяти RAM и памяти ROM, принимаемыми в расчет на этапе проектирования, остаются быстродействие, разрядность слова и информационная емкость. Быстродействие характеризуют временем цикла считывания или записи, разрядность определяют числом бит в слове чтения или записи, информационную емкость характеризуют числом единиц информации в битах или словах, которое микросхема памяти может хранить одновременно.

2. Классификация памяти FIFO производства IDT Inc.

         Все устройства FIFO можно подразделить на классы, определяемые по способу воздействия входных управляющих сигналов (асинхронная и синхронная память) и по способу управления передачей данных (однонаправленная и двунаправленная память). В качестве подкласса асинхронной памяти можно выделить микросхемы Serial-to-Parallel FIFOs (последовательная запись/параллельное считывание) и Parallel-to-Serial FIFOs (параллельная запись/последовательное считывание). В микросхему Parallel-to-Serial FIFO данные записываются всеми разрядами одновременно, а считываются с одного выхода последовательно во времени. По аналогии осуществляется обращение к данным в микросхеме Serial-to-Parallel FIFO. Классификацию устройств памяти FIFO, производимых корпорацией IDT, можно представить в следующем виде:

  • Асинхронная память
    • Семейство Asynchronous x9 и Asynchronous Dual x9
      256:64Kx9
    • Семейство Specialty FIFOs
      Parallel-to-Serial FIFOs 256:1Kx16, 1K:4Kx9
      Serial-to-Parallel FIFOs 2K:4Kx9
      Low Density 64x4, 64x5
  • Синхронная память
    • Семейство Super Sync II (133 МГц)
      512:64Kx72
      512:128Kx36
      8K:256Kx18
      16K:512Kx9
    • Семейство Super Sync (100 МГц)
      8K:256Kx18
      16K:512Kx9
    • Семейство Sync FIFO и Synchronous Dual x9, x18 (100 МГц)
      64:128Kx36
      256:4Kx18
      64:8Kx9
  • Двунаправленная память
    • Семейство Bi-directional Asynchronous FIFOs x18
      512:1Kx18(x2)
    • Семейство Bi-directional Synchronous FIFOs x18
      256:512x18(x2)
    • Семейство Bi-directional Synchronous FIFOs x36
      64:64Kx36(x2)

3. Принцип работы асинхронной памяти FIFO.

         В асинхронной памяти FIFO операции записи и чтения из памяти производятся сигналами W' и R' соответственно (рис.2). Запись информации осуществляется через порт DATA IN, а считывание - через порт DATA OUT с тремя состояниями. В структуре памяти предусмотрена схема формирования флагов заполненности FF' и EF'.


Рис.2. Структура асинхронной памяти FIFO

         Для успешной работы интерфейса памяти FIFO большое значение имеют временные соотношения между сигналами. На рис.3 показаны типичные временные диаграммы циклов записи и чтения данных. В цикле записи внешнее устройство выставляет записываемые данные на линиях D0-D8 и сопровождает их стробом записи W'. Данные должны быть установлены за время tDS до прихода фронта сигнала W'. В цикле чтения информация на выходной шине данных Q0-Q8 появляется через время tA после спада сигнала R'.



Рис.3. Временные диаграммы циклов записи и чтения

         Состояния флагов заполненности FF' и EF' определяются на основе сопоставления значений указателей. Активный уровень на выходе EF' устанавливается в том случае, если разность между значениями указателей начала и конца записи равна нулю, и информирует о неготовности выхода к считыванию следующего слова. Активный уровень на выходе FF' устанавливается, если эта разность соответствует значению максимального размера памяти FIFO, и информирует о неготовности входа принять для записи следующее слово.
         На рис.4 приведены временные диаграммы переключения флага EF' ("буфер пуст"). Сигнал на выходе EF' становится активным через время tREF после прихода спада сигнала на входе R' при чтении последнего записанного слова из памяти.



Рис. 4. Временные диаграммы переключения флагов заполненности

         Как видно из временных диаграмм, следующий цикл чтения из памяти игнорируется. Через время tWEF.после записи в память нового слова состояние флага EF' восстанавливается и принимает уровень логической "1". По состоянию сигналов на выводах EF' или EF' внешние управляющие устройства определяют, возможно ли обращение к буферу памяти для записи или считывания данных.
         Если буфер FIFO пуст, то игнорируется чтение, в противном случае игнорируется запись. В асинхронной памяти FIFO длительность активного сигнала на выходе EF' непосредственно зависит от временного соотношения между сигналами W' и R'. В большинстве схемных реализаций сами флаги заполненности используются для управления прохождением внешних сигналов чтения или записи и обеспечивают необходимую достоверность обмена данными. Однако, в ряде приложений в составе внешнего управляющего устройства требуется введение дополнительной функции контроля за длительностью сигналов заполненности памяти FIFO для предотвращения потери передаваемых данных.

4. Принцип работы синхронной памяти FIFO

         Особенностью синхронной памяти FIFO является наличие синхронного интерфейса для управления передачей данных (рис.5). Под управлением сигнала разрешения записи WEN' и сигнала синхронизации WCLK осуществляется запись данных в порт DATA IN, а под управлением сигнала разрешения чтения REN' и сигнала синхронизации RCLK - считывание данных из порта DATA OUT с тремя состояниями. Контроль за состоянием буфера, как и в асинхронной памяти, производится с помощью флагов заполненности EF', FF'. Сигналы синхронизации могут быть представлены одиночными импульсами или в виде пачек импульсов и подаваться на соответствующие входы памяти FIFO в асинхронном порядке.
         На рис. 6 приводятся временные диаграммы циклов записи и чтения данных для синхронной памяти FIFO. Цикл записи начинается с выставления внешним устройством данных



Рис. 5 Структура синхронной памяти FIFO



Рис. 6 Временные диаграммы циклов записи и чтения

на линиях D0-D17 и сигнала разрешения записи WEN'. Сигнал разрешения записи WEN' должен быть установлен за время tENS, а данные - за время tDS до прихода фронта сигнала WCLK. Цикл чтения начинается с выставления внешним устройством сигнала разрешения чтения REN'. Информация на выходной шине данных Q0-Q17 появляется через время tA после фронта сигнала RCLK.
         Сигналы на выходах флагов заполненности, как и в асинхронной памяти, изменяются с некоторой задержкой после выполнения операций чтения или записи, влияющих на состояние буфера. Но преимуществом синхронной памяти является то, что сигнал на выходе FF' переключается синхронно с фронтом сигнала WCLK, а сигнал на выходе EF' переключается синхронно с фронтом сигнала RCLK. Таким образом, длительность сигнала любого логического уровня на выходах FF' и EF' не может быть меньше одного периода тактовой частоты записи или чтения, соответственно. Временные диаграммы сигналов, формируемых на выводах флагов заполненности FF' и EF' представлены на рисунке 7 - Временные диаграммы переключения флага FF' и на рисунке 8 - Временные диаграммы переключения флага EF'
         Время tSKEW1 (рис.7) характеризует минимальный интервал, требуемый для гарантированного переключения флага FF' по первому фронту WCLK, следующему после фронта RCLK. Состояние сигнала на выходе FF' изменится через время tFF после прихода фронта WCLK. По аналогии, время tSKEW2 (рис.8) характеризует минимальный интервал между появлением фронта WCLK и следующим фронтом RCLK. Сигнал на выходе EF' переключится через время tREF после прихода фронта RCLK.

5. Наращивание разрядности и информационной емкости FIFO

         В процессе проектирования новых устройств нередко возникает задача объединения микросхем памяти FIFO в один модуль. Наращивание разрядности достигается путем соединения всех одноименных входов микросхем, кроме информационных. Для контроля за потоками данных могут использоваться флаги заполненности одной из микросхем в модуле. Способ решения этой задачи иллюстрирует рис.9, на котором показан блок FIFO емкостью 512 слов и разрядностью слова 18 бит, построенный на микросхемах IDT7201. Каждая микросхема имеет организацию 512х9 бит.



Рис. 9 Наращивание разрядности


Рис. 10 Наращивание информационной емкости

         Пример наращивания информационной емкости приведен на рис.10. Блок FIFO емкостью 1536 слов и разрядностью слова 9 бит построен на трех микросхемах IDT7201. Для этого соединяют все одноименные выводы микросхем D9-D0, Q9-Q0, W', R', RS'. Исключение составляют выводы флагов заполненности и выводы управления расширением. Выводы флагов заполненности объединяются по схеме "ИЛИ". Композитные сигналы заполненности FULL' и EMPTY' позволяют отразить состояние модуля памяти как единого целого. С помощью выводов управления расширением организуется эстафетный доступ к микросхемам модуля: сигналы расширения XI' и XO' последовательно проходят через все микросхемы FIFO, обеспечивая обращение только к одному сегменту модуля памяти в каждый момент времени. Выходы остальных микросхем памяти в этот момент времени находятся в третьем состоянии, а сигналы чтения и записи данных игнорируются. Низкий уровень на входе FL' указывает на первый сегмент модуля.

6. Рекомендации по применению памяти FIFO

         Основными областями применения памяти FIFO являются устройства с последовательными потоками параллельных данных (например, цифровая видеокамера, сетевой концентратор и др.). В составе этих устройств память FIFO может применяться в качестве буфера для приёма, накопления и выдачи по запросу накопленных данных. Наличие такого буфера позволяет высвободить ресурсы процессора от постоянного сканирования магистрали при приеме медленных асинхронных потоков данных. Процессор в этом случае можно будет подключать к буферу FIFO только для выгрузки накопленных данных, пользуясь информацией о состоянии флагов заполненности.
         Другим примером применения памяти FIFO является преобразование скорости передачи данных в процессе взаимодействия двух асинхронных устройств с разной пропускной способностью. Для организации непрерывного обмена потоками данных преобразованию подлежит также разрядность входной и выходной шины данных.
         В случае применения RAM для решения аналогичных задач требуется наличие дополнительной схемы управления, представляющей собой контроллер прямого доступа к памяти. Это связано с необходимостью формирования адресов ячеек в процессе выполнения операций записи и чтения. Преимущество в применении памяти FIFO состоит в естественном порядке прохождения данных (первым поступил - первым выводится) и в отсутствии внешней схемы для формирования адресов ячеек.
         В качестве реальных примеров применения памяти FIFO можно привести следующие: устройство цифровой обработки и вывода на монитор сигналов, поступающих от рентгеновской установки; устройство сопряжения мультипроцессорного модуля на базе DSP с PCI шиной; кодек MPEG для телевидения высокой четкости.
         В первом случае микросхемы "IDT72V21105, 256Kx18 FIFO" применяются для согласования скорости передачи данных между тремя асинхронными устройствами: источником цифрового рентгеновского сигнала, модулем цифровой обработки данных на базе нескольких DSP процессоров и видеоконтрольного устройства. Для обеспечения требуемой ширины пакета передаваемых данных микросхемы FIFO включены в режиме наращивания информационной емкости и образуют модуль памяти с организацией 1,5Mx18.
         Во втором случае две однонаправленные микросхемы "IDT72V36110, 128Kx36 FIFO" используются для организации двунаправленного обмена данными между 32-разрядным PCI-интерфейсом с тактовой частотой 33 МГц и модулем, состоящим из двух DSP процессоров с пропускной способностью шины данных 66 МГц и разрядностью 16 бит. Для поддержания обмена данными между 32-разрядной и 16-разрядной шинами используется дополнительная функция BUS MATCHING.
         В кодеке MPEG-2 для телевидения высокой четкости удачным решением является использование памяти FIFO и, в частности,"IDT72V2113, 512Kx9". Стандарт MPEG-2 предусматривает возможность гибкого изменения скорости передачи видеоданных в очень широких пределах, а также работы как с чересстрочной, так и с прогрессивной развертками, при частоте полей 50 или 60 Гц.
         Итак, микросхемы памяти FIFO можно рекомендовать к применению:

  • в качестве буфера обмена данными между быстродействующим процессором и более медленными периферийными устройствами;

  • для согласования устройств с различной скоростью передачи данных;

  • для организации обмена данными между шинами с разным форматом слова.

IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT IDT
© 1999-2016 All Right Reserved. EFO Ltd. При использовании материалов ссылка на источник обязательна.
Контактная информация