ФИФО (электронный)Васина Википедия

Новости с планеты OGLE-2018-BLG-0677
Что вы не только не знали, но и не хотели знать
Автор темы
wiki_en
Всего сообщений: 110137
Зарегистрирован: 16.01.2024
 ФИФО (электронный)

Сообщение wiki_en »



В цифровой электронике FIFO (аббревиатура от «первым пришел — первым вышел») представляет собой цифровую электрическую цепь, которая хранит входящие данные и выводит сохраненные данные в том порядке, в котором они были получены. электроника|Электронные FIFO обычно используются для буферизации и управления потоками между аппаратными устройствами или между программным обеспечением и аппаратными устройствами, которые в течение конечных интервалов работают с разными скоростями передачи данных. FIFO в основном состоит из пары счетчиков, которые служат регистрами адреса памяти для чтения и записи, массива адресуемой памяти, а также логики состояния и управления. Память обычно является двухпортовой, чтобы обеспечить одновременные операции чтения и записи FIFO, и состоит из регистрового файла или двухпортового ОЗУ (оперативного запоминающего устройства).

===Регистры адреса памяти===

Электронный FIFO обычно реализуется как кольцевой буфер, который использует два регистра адреса памяти (MAR) для хранения адресов («Указатель (компьютерное программирование) | указатели» на) следующих ячеек памяти, к которым осуществляется доступ:
* Чтение MAR (RMAR) — содержит следующее место для чтения данных из
* Запись MAR (WMAR) — содержит следующее место для записи данных
Каждый MAR реализован как счетчик (цифровой)|счетчик, счетчик которого увеличивается каждый раз при передаче данных (WMAR увеличивается при записи FIFO; RMAR увеличивается при чтении FIFO). Первоначально оба MAR указывают на первую ячейку памяти, и FIFO пуст. FIFO заполняется, когда адрес записи достигает адреса чтения, и пуст, когда адрес чтения достигает адреса записи. Следовательно, когда FIFO заполняется или опустошается, адреса памяти для чтения и записи становятся равными.



Чтобы различать пустую и полную память, каждый MAR имеет дополнительный бит сверх того, что необходимо для адресации памяти. Все выходные биты MAR, за исключением нумерации бит#Самый значащий бит|Старший значащий бит (MSB) (т. е. младшие биты), служат адресом памяти. И наоборот, все выходные биты, включая старший бит, используются для контроля уровня FIFO (количества сохраненных слов). В тех случаях, когда MAR используют двоичные счетчики, текущий уровень FIFO представляет собой разницу между их двоичными выходными значениями: level=WMAR-RMAR. Для других выходных кодировок (например, кода Грея) перед вычислением разницы выходные данные MAR необходимо преобразовать в двоичные. В любом случае справедливо следующее:
* FIFO пуст, когда RMAR и WMAR равны
* FIFO полон, когда RMAR и WMAR различаются только старшими битами

===Флаги состояния===

FIFO обычно выводит сигналы состояния, которые указывают, достигнуты ли определенные пороговые значения уровня данных. Типичные примеры таких флагов состояния включают «полный», «пустой», «наполовину полный», «почти полный» и «почти пустой».

===Синхронный FIFO===
Синхронный FIFO — это электронный FIFO, в котором для чтения и записи используются общие часы. Поскольку операции чтения и записи выполняются в одном и том же тактовом домене, флаги могут генерироваться либо с помощью арифметики указателей, либо с помощью специального счетчика для мониторинга уровня FIFO.
===Асинхронный FIFO===
Асинхронный FIFO — это электронный FIFO, который использует разные такты для чтения и записи. Чтобы избежать ошибок из-за метастабильности, асинхронные FIFO обычно используют код Грея для указателей чтения и записи, а флаги генерируются посредством арифметики указателей.

== См. также ==
* Подход «дырявого ведра»
* Кольцевой буфер

Цифровые схемы

Подробнее: https://en.wikipedia.org/wiki/FIFO_(electronic)
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Электронный паспорт из поликарбоната
    wiki_en » » в форуме Васина Википедия
    0 Ответы
    38 Просмотры
    Последнее сообщение wiki_en
  • Шкодра Электронный
    wiki_de » » в форуме Васина Википедия
    0 Ответы
    56 Просмотры
    Последнее сообщение wiki_de
  • Электронный кампус Исследовательского университета
    wiki_de » » в форуме Васина Википедия
    0 Ответы
    10 Просмотры
    Последнее сообщение wiki_de