成人精品水蜜桃_成人在线丰满少妇av_91亚洲国产高清_欧美日韩免费区域视频在线观看

首頁 新聞 > 科技 > 正文

深入理解FIFO(包含有FIFO深度的解釋)

FIFO

一、先入先出隊列(First Input First Output,FIFO)這是一種傳統的按序執行方法,先進入的指令先完成并引退,跟著才執行第二條指令。

1.什么是FIFO?

FIFO是英文First In First Out 的縮寫,是一種先進先出的數據緩存器,他與普通存儲器的區別是沒有外部讀寫地址線,這樣使用起來非常簡單,但缺點就是只能順序寫入數據,順序的讀出數據,其數據地址由內部讀寫指針自動加1完成,不能像普通存儲器那樣可以由地址線決定讀取或寫入某個指定的地址。

2.什么情況下用FIFO?

FIFO一般用于不同時鐘域之間的數據傳輸,比如FIFO的一端時AD數據采集,另一端時計算機的PCI總線,假設其AD采集的速率為16位 100K SPS,那么每秒的數據量為100K×16bit=1.6Mbps,而PCI總線的速度為33MHz,總線寬度32bit,其最大傳輸速率為1056Mbps,在兩個不同的時鐘域間就可以采用FIFO來作為數據緩沖。另外對于不同寬度的數據接口也可以用FIFO,例如單片機位8位數據輸出,而DSP可能是16位數據輸入,在單片機與DSP連接時就可以使用FIFO來達到數據匹配的目的。

3.FIFO的一些重要參數

FIFO的寬度:也就是英文資料里常看到的THE WIDTH,它只的是FIFO一次讀寫操作的數據位,就像MCU有8位和16位,ARM 32位等等,FIFO的寬度在單片成品IC中是固定的,也有可選擇的,如果用FPGA自己實現一個FIFO,其數據位,也就是寬度是可以自己定義的。

FIFO的深度:THE DEEPTH,它指的是FIFO可以存儲多少個N位的數據(如果寬度為N)。如一個8位的FIFO,若深度為8,它可以存儲8個8位的數據,深度為12 ,就可以存儲12個8位的數據,FIFO的深度可大可小,個人認為FIFO深度的計算并無一個固定的公式。在FIFO實際工作中,其數據的滿/空標志可以控制數據的繼續寫入或讀出。在一個具體的應用中也不可能由一些參數算數精確的所需FIFO深度為多少,這在寫速度大于讀速度的理想狀態下是可行的,但在實際中用到的FIFO深度往往要大于計算值。一般來說根據電路的具體情況,在兼顧系統性能和FIFO成本的情況下估算一個大概的寬度和深度就可以了。而對于寫速度慢于讀速度的應用,FIFO的深度要根據讀出的數據結構和讀出數據的由那些具體的要求來確定。

滿標志:FIFO已滿或將要滿時由FIFO的狀態電路送出的一個信號,以阻止FIFO的寫操作繼續向FIFO中寫數據而造成溢出(overflow)。

空標志:FIFO已空或將要空時由FIFO的狀態電路送出的一個信號,以阻止FIFO的讀操作繼續從FIFO中讀出數據而造成無效數據的讀出(underflow)。

讀時鐘:讀操作所遵循的時鐘,在每個時鐘沿來臨時讀數據。

寫時鐘:寫操作所遵循的時鐘,在每個時鐘沿來臨時寫數據。

讀指針:指向下一個讀出地址。讀完后自動加1。

寫指針:指向下一個要寫入的地址的,寫完自動加1。

讀寫指針其實就是讀寫的地址,只不過這個地址不能任意選擇,而是連續的。

4.FIFO的分類

根均FIFO工作的時鐘域,可以將FIFO分為同步FIFO和異步FIFO。同步FIFO是指讀時鐘和寫時鐘為同一個時鐘。在時鐘沿來臨時同時發生讀寫操作。異步FIFO是指讀寫時鐘不一致,讀寫時鐘是互相獨立的。

5.FIFO設計的難點

FIFO設計的難點在于怎樣判斷FIFO的空/滿狀態。為了保證數據正確的寫入或讀出,而不發生益處或讀空的狀態出現,必須保證FIFO在滿的情況下,不能進行寫操作。在空的狀態下不能進行讀操作。怎樣判斷FIFO的滿/空就成了FIFO設計的核心問題。由于同步FIFO幾乎很少用到,這里只描述異步FIFO的空/滿標志產生問題。

在用到觸發器的設計中,不可避免的會遇到亞穩態的問題(關于亞穩態這里不作介紹,可查看相關資料)。在涉及到觸發器的電路中,亞穩態無法徹底消除,只能想辦法將其發生的概率將到最低。其中的一個方法就是使用格雷碼。格雷碼在相鄰的兩個碼元之間只由一位變換(二進制碼在很多情況下是很多碼元在同時變化)。這就會避免計數器與時鐘同步的時候發生亞穩態現象。但是格雷碼有個缺點就是只能定義2^n的深度,而不能像二進制碼那樣隨意的定義FIFO的深度,因為格雷碼必須循環一個2^n,否則就不能保證兩個相鄰碼元之間相差一位的條件,因此也就不是真正的各雷碼了。第二就是使用冗余的觸發器,假設一個觸發器發生亞穩態的概率為P,那么兩個及聯的觸發器發生亞穩態的概率就為P的平方。但這回導致延時的增加。亞穩態的發生會使得FIFO出現錯誤,讀/寫時鐘采樣的地址指針會與真實的值之間不同,這就導致寫入或讀出的地址錯誤。由于考慮延時的作用,空/滿標志的產生并不一定出現在FIFO真的空/滿時才出現。可能FIFO還未空/滿時就出現了空/滿標志。這并沒有什么不好,只要保證FIFO不出現overflow or underflow 就OK了。

很多關于FIFO的文章其實討論的都是空/滿標志的不同算法問題。

在Vijay A. Nebhrajani的《異步FIFO結構》一文中,作者提出了兩個關于FIFO空/滿標志的算法。

第一個算法:構造一個指針寬度為N+1,深度為2^N字節的FIFO(為便方比較將格雷碼指針轉換為二進制指針)。當指針的二進制碼中最高位不一致而其它N位都相等時,FIFO為滿(在Clifford E. Cummings的文章中以格雷碼表示是前兩位均不相同,而后兩位LSB相同為滿,這與換成二進制表示的MSB不同其他相同為滿是一樣的)。當指針完全相等時,FIFO為空。這也許不容易看出,舉個例子說明一下:一個深度為8字節的FIFO怎樣工作(使用已轉換為二進制的指針)。FIFO_WIDTH=8,FIFO_DEPTH= 2^N = 8,N = 3,指針寬度為N+1=4。起初rd_ptr_bin和wr_ptr_bin均為“0000”。此時FIFO中寫入8個字節的數據。wr_ptr_bin =“1000”,rd_ptr_bin=“0000”。當然,這就是滿條件。現在,假設執行了8次的讀操作,使得rd_ptr_bin =“1000”,這就是空條件。另外的8次寫操作將使wr_ptr_bin 等于“0000”,但rd_ptr_bin 仍然等于“1000”,因此FIFO為滿條件。

顯然起始指針無需為“0000”。假設它為“0100”,并且FIFO為空,那么8個字節會使wr_ptr_bin =“1100”,, rd_ptr_bin 仍然為“0100”。這又說明FIFO為滿。

在Vijay A. Nebhrajani的這篇《異步FIFO結構》文章中說明了怎樣運用格雷碼來設置空滿的條件,但沒有說清為什么深度為8的FIFO其讀寫指針要用3+1位的格雷碼來實現,而3+1位的格雷碼可以表示16位的深度,而真實的FIFO只有8位,這是怎么回事?而這個問題在Clifford E. Cummings的文章中得以解釋。三位格雷碼可表示8位的深度,若在加一位最為MSB,則這一位加其他三位組成的格雷碼并不代表新的地址,也就是說格雷碼的0100表示表示7,而1100仍然表示7,只不過格雷碼在經過一個以0位MSB的循環后進入一個以1為MSB的循環,然后又進入一個以0位MSB的循環,其他的三位碼仍然是格雷碼,但這就帶來一個問題,在0100的循環完成后,進入1000,他們之間有兩位發生了變換,而不是1位,所以增加一位MSB的做法使得該碼在兩處:0100~1000,1100~0000有兩位碼元發生變化,故該碼以不是真正的格雷碼。增加的MSB是為了實現空滿標志的計算。Vijay A. Nebhrajani的文章用格雷碼轉二進制,再轉格雷碼的情況下提出空滿條件,僅過兩次轉換,而Clifford E. Cummings的文章中直接在格雷碼條件下得出空滿條件。其實二者是一樣的,只是實現方式不同罷了。

第二種算法:Clifford E. Cummings的文章中提到的STYLE #2。它將FIFO地址分成了4部分,每部分分別用高兩位的MSB 00 、01、 11、 10決定FIFO是否為going full 或going empty (即將滿或空)。如果寫指針的高兩位MSB小于讀指針的高兩位MSB則FIFO為“幾乎滿”,

若寫指針的高兩位MSB大于讀指針的高兩位MSB則FIFO為“幾乎空”。

在Vijay A. Nebhrajani的《異步FIFO結構》第三部分的文章中也提到了一種方法,那就是方向標志與門限。設定了FIFO容量的75%作為上限,設定FIFO容量的25%為下限。當方向標志超過門限便輸出滿/空標志,這與Clifford E. Cummings的文章中提到的STYLE #2可謂是異曲同工。他們都屬于保守的空滿判斷。其實這時輸出空滿標志FIFO并不一定真的空/滿。

說到此,我們已經清楚地看到,FIFO設計最關鍵的就是產生空/滿標志的算法的不同產生了不同的FIFO。但無論是精確的空滿還是保守的空滿都是為了保證FIFO工作的可靠。

二、先進先出法 (first in,first out ,FIFO)

先進先出法是指根據先入庫先發出的原則,對于發出的存貨以先入庫存貨的單價計算發出存貨成本的方法.采用這種方法的具體做法是:先按存貨的期初余額的單價計算發出的存貨的成本,領發完畢后,再按第一批入庫的存貨的單價計算,依此從前向后類推,計算發出存貨和結存貨的成本.

先進先出法是存貨的計價方法之一。它是根據先購入的商品先領用或發出的假定計價的。用先進先出法計算的期末存貨額,比較接近市價。

先進先出法是以先購入的存貨先發出這樣一種存貨實物流轉假設為前提,對發出存貨進行計價的一種方法。采用這種方法,先購入的存貨成本在后購入的存貨成本之前轉出,據此確定發出存貨和期末存貨的成本

關鍵詞: FIFO

最近更新

關于本站 管理團隊 版權申明 網站地圖 聯系合作 招聘信息

Copyright © 2005-2018 創投網 - m.7778890.com All rights reserved
聯系我們:33 92 950@qq.com
豫ICP備2020035879號-12

 

成人精品水蜜桃_成人在线丰满少妇av_91亚洲国产高清_欧美日韩免费区域视频在线观看
国产精品国产一区二区| 26uuuu精品一区二区| 欧美日本在线观看| 精品久久人人做人人爱| 亚洲欧美偷拍三级| 国产一区二区三区久久久| 欧美破处大片在线视频| 色域天天综合网| 精品国产免费一区二区三区香蕉| 美腿丝袜亚洲综合| 中文字幕亚洲区| 中文字幕中文字幕中文字幕亚洲无线| 久久婷婷色综合| 欧美国产激情二区三区| 中文字幕欧美一| 1024成人网色www| 亚洲一区在线观看网站| 五月天亚洲精品| 麻豆精品国产传媒mv男同| 狠狠色丁香婷综合久久| 成人免费高清在线| 91精品免费观看| 一区二区不卡在线视频 午夜欧美不卡在| 国产自产视频一区二区三区| 亚洲黄网站黄| 精品国产第一区二区三区观看体验| 亚洲福中文字幕伊人影院| 91免费视频观看| 在线不卡中文字幕| 午夜精品在线看| 精品999网站| 欧美mv日韩mv| 韩国成人在线视频| 性一交一乱一区二区洋洋av| 国产欧美一二三区| 成人午夜视频福利| 欧美视频自拍偷拍| 午夜视频一区在线观看| 在线国产欧美| 欧美激情一区二区| 不卡的av电影在线观看| 亚洲欧美日韩中文字幕一区二区三区| 黄页视频在线91| 色悠悠亚洲一区二区| 亚洲欧美自拍偷拍色图| 欧美不卡在线| 久久久久97国产精华液好用吗| 国产精品伊人色| 欧美午夜精品久久久久久超碰 | 91视频一区二区| 日韩免费看的电影| 国产一区在线不卡| 欧美性猛交xxxxxxxx| 日韩精品欧美精品| 亚洲一区精彩视频| 亚洲高清在线精品| 亚洲一区二区在线看| 一区二区三区四区中文字幕| 日韩视频精品| 亚洲女子a中天字幕| 极品日韩av| 亚洲欧美另类久久久精品| 激情自拍一区| 中文字幕一区二区三区四区| 伊人久久成人| 亚洲乱码精品一二三四区日韩在线| 狠狠干综合网| 亚洲视频香蕉人妖| 一本久道久久久| 性感美女久久精品| 一本大道久久a久久精二百| 日韩av不卡一区二区| 91福利国产成人精品照片| 免费观看30秒视频久久| 欧美日产国产精品| 国产a区久久久| 亚洲欧洲美洲综合色网| 国产成人亚洲综合a∨婷婷图片| 国产精品毛片一区二区三区| 国产成人精品免费| 在线精品观看国产| 国产激情91久久精品导航| 日韩视频永久免费| 欧美99在线视频观看| 《视频一区视频二区| 欧美主播一区二区三区美女 久久精品人 | 日韩中文字幕91| 9191久久久久久久久久久| 懂色一区二区三区免费观看| 国产人成一区二区三区影院| 亚洲国产日韩综合一区| 婷婷开心激情综合| 欧美日本乱大交xxxxx| 97精品视频在线观看自产线路二| 欧美经典一区二区三区| 国产精品日韩一区二区三区| 另类专区欧美蜜桃臀第一页| 精品国产123| 99视频+国产日韩欧美| 美日韩一区二区| 久久综合久久综合亚洲| 久久久国产精品不卡| 欧美区国产区| 日本v片在线高清不卡在线观看| 日韩视频在线一区二区| 亚洲国产精品久久久久久女王| 日韩高清欧美激情| 精品免费日韩av| 一本色道久久99精品综合| 久久 天天综合| 欧美国产97人人爽人人喊| 久久伊人一区二区| 99在线热播精品免费| 亚洲午夜日本在线观看| 欧美二区在线观看| 一区二区高清| 精品一区二区日韩| 亚洲天堂中文字幕| 欧美日本一区二区三区| 禁久久精品乱码| 国产精品99久久久久久宅男| 亚洲另类春色国产| 日韩欧美激情一区| 久久精品二区| 欧美片网站免费| 国产伦精一区二区三区| 夜夜嗨av一区二区三区| 精品伦理精品一区| 老司机久久99久久精品播放免费| 农村妇女精品| 精品一区二区三区免费毛片爱 | 99香蕉国产精品偷在线观看| 国产成人在线视频网址| 亚洲成a天堂v人片| 国产欧美一区二区三区在线看蜜臀| 色哟哟亚洲精品| 狠狠色噜噜狠狠狠狠色吗综合| 成人美女在线视频| 日本一区二区三区高清不卡| 免费在线亚洲欧美| 成人深夜在线观看| 一区二区三区在线不卡| 欧美日韩一区二区欧美激情| 日韩午夜在线播放| 激情综合视频| 亚洲欧美一区在线| 国产999精品久久久久久| 免费成人在线影院| 亚洲国产中文字幕| 亚洲欧美aⅴ...| 中文字幕免费一区| 日韩精品资源二区在线| 精品视频一区二区不卡| 久久久av水蜜桃| 中文一区二区| 亚洲国产精品第一区二区| 欧美日韩精选| 97aⅴ精品视频一二三区| 国产精品一区二区男女羞羞无遮挡 | 国产91精品入口| 国产在线乱码一区二区三区| 日韩不卡手机在线v区| 亚洲一级二级在线| 亚洲精品高清视频在线观看| 国产精品传媒在线| 日本一区二区视频在线| 欧美精品一区二区三区四区| 欧美一级一级性生活免费录像| 欧美日韩一区成人| 欧美性做爰猛烈叫床潮| 欧美日韩免费观看一区二区三区| 巨乳诱惑日韩免费av| 久久久人人人| 日本丰满少妇一区二区三区| 日本道色综合久久| 欧美在线你懂得| 欧美视频自拍偷拍| 88在线观看91蜜桃国自产| 欧美日韩一级二级三级| 欧美精品1区2区3区| 欧美一区二区三区免费大片 | 成人a区在线观看| 97精品视频在线观看自产线路二| 在线精品观看国产| 欧美日韩免费在线视频| 欧美一级片在线| 精品日韩欧美在线| 国产婷婷色一区二区三区| 欧美国产精品v| 亚洲区小说区图片区qvod| 洋洋成人永久网站入口| 首页国产欧美日韩丝袜| 麻豆精品在线播放| 粉嫩一区二区三区性色av| 97精品视频在线观看自产线路二| 国内精品视频在线播放| 亚洲欧美日韩精品在线| 欧美日韩一区国产| 欧美成人官网二区| 中文字幕永久在线不卡|