FIFO存儲器

?

FIFO( First Input First Output)簡單說就是指先進先出。由于微電子技術的飛速發展,新一代FIFO芯片容量越來越大,體積越來越小,價格越來越便宜。作為一種新型大規模集成電路,FIFO芯片以其靈活、方便、高效的特性,逐漸在高速數據采集、高速數據處理、高速數據傳輸以及多機處理系統中得到越來越廣泛的應用。
中文名
FIFO存儲器
外文名
First Input First Output
含????義
先進先出
功????能
數據集中起來進行進機和存儲

目錄

  1. 1?簡介
  2. 2?功能

簡介

編輯
在系統設計中,以增加數據傳輸率、處理大量數據流、匹配具有不同傳輸率的系統為目的而廣泛使用FIFO存儲器,從而提高了系統性能。FIFO存儲器是一個先入先出的雙口緩沖器,即第一個進入其內的數據第一個被移出,其中一個存儲器的輸入口,另一個口是存儲器的輸出口。對于單片FIFO來說,主要有兩種結構:觸發導向結構和零導向傳輸結構。觸發導向傳輸結構的FIFO是由寄存器陣列構成的,零導向傳輸結構的FIFO是由具有讀和寫地址指針的雙口RAM構成。

功能

編輯
FIFO存儲器是系統的緩沖環節,如果沒有FIFO存儲器,整個系統就不可能正常工作,它主要有幾方面的功能:
1)對連續的數據流進行緩存,防止在進機和存儲操作時丟失數據;
2)數據集中起來進行進機和存儲,可避免頻繁的總線操作,減輕CPU的負擔;
3)允許系統進行DMA操作,提高數據的傳輸速度。這是至關重要的一點,如果不采用DMA操作,數據傳輸將達不到傳輸要求,而且大大增加CPU的負擔,無法同時完成數據的存儲工作。
因此,選擇合適的存儲芯片對于提高系統性能很重要,在以往的設計中經常采用的是“乒乓型”存儲方式,這種方式就是采用兩片存儲器,數據首先進入其中一片,當數據滿時再讓數據進入第二片存儲器,同時通過邏輯控制,將第一片存儲器中的數據取走,以此類推,兩片輪流對數據進行緩存。這種方式有著較明顯的缺點,首先是控制復雜,要有專門的邏輯來維護這種輪流機制;其次,數據流的流向要不斷變化,限制了數據流的速率,還容易產生干擾。從數據傳輸上說,緩存芯片容量越大,對后續時序要求就越低,可減少總線操作的頻次;但從數據存儲上說,就意味著需要開辟更大的內存空間來進行進行緩沖,會增加計算機的內存開銷,而且容量越大,成本也越高。因此,在綜合考慮系統性能和成本的基礎上,選擇滿足系統需要的芯片即可。
FIFO是First In/First-Out的縮寫,是先入先出的意思。FIFO存儲器分為寫入專用區和讀取專用區。讀操作與寫操作可以異步進行,寫入區上寫入的數據按照寫入的順序從讀取端的區中讀出,類似于吸收寫入端與讀出端速度差的一種緩沖器。計算機的串口,一般也都具有FIFO緩沖器(不是單一的FIFO存儲器,而是嵌入在設備內部)。
FIFO存儲器的連接模式如圖所示。在FIFO存儲器而不是地址總線上附加了表示內部緩沖器狀態(Buffer Full,緩沖器已滿;Buffer Empty,緩沖器為空)的狀態引腳,連接于FIFO的雙方利用該狀態進行操作的控制。另外,還設計了在接通電源及復位(Reset)或由于操作中的某些異常等原因而重新初始化(無數據狀態)FIFO的復位引腳,這可以說是FIFO存儲器的特點。

轉載于:https://www.cnblogs.com/CodeWorkerLiMing/p/10634164.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449346.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449346.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449346.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

通過8個技巧讓你成為一個超強的Linux終端用戶

本文由 極客范 - minejo 翻譯自 Chris Hoffman。歡迎加入極客翻譯小組,同我們一道翻譯與分享。轉載請參見文章末尾處的要求。使用Linux終端不僅僅是只輸入命令。學習這些基本的技巧,你就會逐漸掌握Bash shell,這個在大多數Linux發行版上默認…

國信證券學習系列(2)

獲取指數池: def init(ContextInfo):#設置股票池stock300 ContextInfo.get_stock_list_in_sector(滬深300)ContextInfo.stock300_weight {}stock300_symbol []stock300_weightlist [] ContextInfo.index_code ContextInfo.stockcode"."ContextInfo.m…

旅游服務商Bikego完成A輪融資,共建創投、馬蜂窩投資

2月26日消息,近日Bikego宣布完成A輪融資,共建創投、北京馬蜂窩之旅國際旅行社投資。目前金額尚未公開。 bikego領趣旅行成立于2016年,是一家目的地日游服務運營商。從內容切入,提供國內自由行客戶的白天玩法解決方案,…

python-flask-1

https://askubuntu.com/questions/244641/how-to-set-up-and-use-a-virtual-python-environment-in-ubuntu 1. virtualenv安裝 sudo apt-get install virtualenv sudo apt install virtualenvwrapper echo "source /usr/share/virtualenvwrapper/virtualenvwrapper.sh&quo…

JSch:Java Secure Channel -- java 代碼實現 ssh 遠程操作

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 JSch 是SSH2的一個純Java實現。 它允許你連接到一個 sshd 服務器,使用端口轉發,X11轉發,文件傳輸等…

國信證券學習系列(3)

日內回轉策略&#xff1a;做T策略 擇時交易&#xff1a; if date[-8:-3] ! 14:55:if macd > 0 and macd_pre < 0:# 根據MACD>0則開倉,小于0則平倉if avaliable > df.iloc[-1, 0] * ContextInfo.Lots * 100:order_shares(ContextInfo.get_universe()[0], ContextIn…

時序數據庫連載系列: 時序數據庫一哥InfluxDB之存儲機制解析

2019獨角獸企業重金招聘Python工程師標準>>> InfluxDB 的存儲機制解析 本文介紹了InfluxDB對于時序數據的存儲/索引的設計。由于InfluxDB的集群版已在0.12版就不再開源&#xff0c;因此如無特殊說明&#xff0c;本文的介紹對象都是指 InfluxDB 單機版 1. InfluxDB 的…

如何在Linux上提高文本的搜索效率

本文由 極客范 - minejo 翻譯自 Xmodulo。歡迎加入極客翻譯小組&#xff0c;同我們一道翻譯與分享。轉載請參見文章末尾處的要求。對于系統管理員或程序員來說&#xff0c;當需要在復雜配置的目錄中或者在大型源碼樹中搜尋特定的文本或模式時&#xff0c;grep類型的工具大概是…

Spring Boot 10:處理Json數據中的null值

Jackson版&#xff1a; /*** Jackson 配置類 對Json數據進行特殊處理** Author YangXuyue* Date 2019/04/02 07:12*/ Configuration public class JacksonConfig {/*** 配置Jackson** param builder* return* Author YangXuyue* Date 2019/04/02 07:14*/BeanPrimaryConditional…

國信證券學習系列(4)

機器學習篇章&#xff0c;本章不過時腳本小子&#xff0c;機器學習最核心的是機器&#xff0c;是模型。 學習&#xff0c;無非就是找些有的沒的因子扔進去&#xff0c;但說實話&#xff0c;機器學習&#xff0c;太過容易過擬合&#xff0c;容易無效化。回測好看的一筆&#xf…

JSch - Java Secure Channel : java 代碼實現服務器遠程操作

一、前言 前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 JSch是SSH2的純Java實現 。 JSch允許您連接到sshd服務器并使用端口轉發&#xff0c;X11轉發&#xff0c;文件傳輸等&#xff0…

前嗅ForeSpider教程:數據建表

今天&#xff0c;小編為大家帶來的教程是&#xff1a;如何在前嗅ForeSpider中&#xff0c;進行數據建表操作及各注意事項。主要內容包括&#xff1a;快速建表&#xff0c;自由建表&#xff0c;字段參數&#xff0c;數據表的創建&#xff0c;關聯與刪除&#xff0c;以及表單變更…

世紀大爭論:Linux還是GNU/Linux?

本文由 極客范 - 愛開源的貢獻開源社區 翻譯自 Chris Hoffman。歡迎加入極客翻譯小組&#xff0c;同我們一道翻譯與分享。轉載請參見文章末尾處的要求。我們在網上已經習慣用“Linux”來稱呼Linux操作系統了&#xff0c;然而&#xff0c;偶爾也用“GNU/Linux”來稱呼和指代同…

PyTorch Softmax

PyTorch provides 2 kinds of Softmax class. The one is applying softmax along a certain dimension. The other is do softmax on a spatial matrix sized in B, C, H, W. But it seems like some problems existing in Softmax2d. : ( 轉載于:https://www.cnblogs.com/hiz…

國信證券學習系列(5)

網格策略&#xff0c;號稱勝率100%的策略&#xff0c;只要扛得住回撤&#xff0c;怎么說呢&#xff0c;它包含了最簡單的思想&#xff0c;大道至簡&#xff0c;真的是沒有什么復雜的&#xff0c;原理清晰&#xff0c;思路簡單。可以明確知道我掙的是那筆錢&#xff0c;為什么獲…

promise

## 前言 今天來分享下promise的用法&#xff0c;es6偉大發明之一&#xff0c;當初我學習的時候也是蠻頭大的&#xff0c;不知道為啥&#xff0c;整個腦子就是&#xff0c;我在哪&#xff0c;我要干啥的懵圈&#xff0c;后面認真學習之后&#xff0c;覺得真是十分好用&#xff0…

計算機集群 解說

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 計算機集群簡稱集群是一種計算機系統&#xff0c;它通過一組松散集成的計算機軟件和/或硬件連接起來高度緊密地協作完成計算工作。 在某…

同時尋找最大數和最小數的最優算法 第二大數

我們知道&#xff0c;在一個容量為n的數據集合中尋找一個最大數&#xff0c;不管用什么樣的比較算法&#xff0c;至少要比較n-1次&#xff0c;就算是用競標賽排序也得比較n-1次&#xff0c;否則你找到的就不能保證是最大的數。那么&#xff0c;在一個容量為n的數據集合中同時尋…

淺談mpvue項目目錄和文件結構

2019獨角獸企業重金招聘Python工程師標準>>> 在Visual Studio Code里面打開項目文件夾&#xff0c;我們可以看到類似如下的文件結構&#xff1a; 1、package.json文件 package.json是項目的主配置文件&#xff0c;里面包含了mpvue項目的基本描述信息、項目所依賴的各…

[AHOI2009]最小割(最大流+tarjan)

繼續填坑了&#xff0c;啦啦啦 這道題本來是準備枚舉每個邊&#xff0c;暫時去除它&#xff0c;但發現時間會爆炸的 于是決定另辟蹊徑 于是這篇題解就應運而生 首先還是網絡流跑一邊 畢竟題目叫最小割嘛&#xff0c;給個面子 然后跑一邊tarjan對滿流的邊處理掉&#xff0c;即不…