|
緩沖器在不同的領(lǐng)域有不同的含義。
在計(jì)算機(jī)領(lǐng)域,緩沖器指的是緩沖寄存器,它分輸入緩沖器和輸出緩沖器兩種。前者的作用是將外設(shè)送來的數(shù)據(jù)暫時存放,以便處理器將它取走;后者的作用是用來暫時存放處理器送往外設(shè)的數(shù)據(jù)。有了數(shù)控緩沖器,就可以使高速工作的CPU與慢速工作的外設(shè)起協(xié)調(diào)和緩沖作用,實(shí)現(xiàn)數(shù)據(jù)傳送的同步。由于緩沖器接在數(shù)據(jù)總線上,故必須具有三態(tài)輸出功能。
在其他領(lǐng)域,還有電梯緩沖器,汽車彈簧緩沖器等,其目的是用于減緩速度,提高安全性和舒適性。
定義:
緩沖寄存器又稱緩沖器,它分輸入緩沖器和輸出緩沖器兩種。前者的作用是將外設(shè)送來的數(shù)據(jù)暫時存放,以便處理器將它取走;后者的作用是用來暫時存放處理器送往外設(shè)的數(shù)據(jù)。由于緩沖器接在數(shù)據(jù)總線上,故必須具有三態(tài)輸出功能。
釋義:
buffer英音:['b?f?]美音:['b?f?]
英文名:buffer 中文譯名: 緩沖、緩沖器、緩沖液。
解釋:
1、電信設(shè)備。在數(shù)據(jù)傳輸中,用來彌補(bǔ)不同數(shù)據(jù)處理速率速度差距的存儲裝置叫做緩沖器。把
緩沖器
緩沖器
數(shù)據(jù)存放到緩沖器中的技術(shù)叫做緩沖。
2、生化術(shù)語。緩沖液:化學(xué)試劑。用于緩沖PH的變化,常用于生物工程實(shí)驗(yàn),如DNA、RNA等物質(zhì)的提取和提純,酶的性質(zhì)的測定,蛋白質(zhì)的分離等等。緩沖:某些試劑具有使溶液在加入酸或堿性物質(zhì)的時候PH變化不明顯的作用,這種作用叫做緩沖。
主要用來完成介質(zhì)液體或氣體波動壓力趨向于平穩(wěn)的容器。
接口集成電路專用語
最基本線路構(gòu)成的門電路存在著抗干擾性能差和不對稱等缺點(diǎn)。為了克服這些缺點(diǎn),可以在輸出或輸入端附加反相器作為緩沖級;也可以輸出或輸入端同時都加反相器作為緩沖級。這樣組成的門電路稱為帶緩沖
緩沖寄存器
緩沖寄存器
器的門電路。
帶緩沖輸出的門電路輸出端都是1個反相器,輸出驅(qū)動能力僅由該輸出級的管子特性決定,與各輸入端所處邏輯狀態(tài)無關(guān)。而不帶緩沖器的門電路其輸出驅(qū)動能力與輸入狀態(tài)有關(guān)。另一方面。帶緩沖器的門電路的轉(zhuǎn)移特性至少是由3級轉(zhuǎn)移特性相乘的結(jié)果,因此轉(zhuǎn)換區(qū)域窄,形狀接近理想矩形,并且不隨輸入使用端數(shù)的情況而變化、加緩沖器的門電路,抗干擾性能提高10%電源電壓。此外,帶緩沖器的門電路還有輸出波形對稱、交流電壓增益大、帶寬窄、輸入電容比較小等優(yōu)點(diǎn)。不過,由于附加了緩沖級,也帶來了一些缺點(diǎn)。例如傳輸延遲時間加大,因此,帶緩沖器的門電路適宜用在高速電路系統(tǒng)中。
基本原理
在CPU的設(shè)計(jì)中,一般輸出線的直流負(fù)載能力可以驅(qū)動一個TTL負(fù)載,而在連接中,CPU的一根地址線或數(shù)據(jù)線,可能連接多個存儲器芯片,但存儲器芯片都為MOS電路,主要是電容負(fù)載,直流負(fù)載遠(yuǎn)小于TTL負(fù)載。故小型系統(tǒng)中,CPU可與存儲器直接相連,在大型系統(tǒng)中就需要加緩沖器。
任何程序或數(shù)據(jù)要為CPU所使用,必須先放到主存儲器(內(nèi)存)中,即CPU只與主存交換數(shù)據(jù),所以主存的速度在很大程度上決定了系統(tǒng)的運(yùn)行速度。程序在運(yùn)行期間,在一個較短的時間間隔內(nèi),由程序產(chǎn)生的地址往往集中在存儲器的一個很小范圍的地址空間內(nèi)。指令地址本來就是連續(xù)分布的,再加上循環(huán)程序段和子程序段要多次重復(fù)執(zhí)行,因此對這些地址中的內(nèi)容的訪問就自然的具有時間集中分布的傾向。數(shù)據(jù)分
基本原理
基本原理
布的集中傾向不如程序這么明顯,但對數(shù)組的存儲和訪問以及工作單元的選擇可以使存儲器地址相對地集中。這種對局部范圍的存儲器地址頻繁訪問,而對此范圍外的地址訪問甚少的現(xiàn)象被稱為程序訪問的局部化(Locality of Reference)性質(zhì)。由此性質(zhì)可知,在這個局部范圍內(nèi)被訪問的信息集合隨時間的變化是很緩慢的,如果把在一段時間內(nèi)一定地址范圍被頻繁訪問的信息集合成批地從主存中讀到一個能高速存取的小容量存儲器中存放起來,供程序在這段時間內(nèi)隨時采用而減少或不再去訪問速度較慢的主存,就可以加快程序的運(yùn)行速度。這個介于CPU和主存之間的高速小容量存儲器就稱之為高速緩沖存儲器,簡稱Cache。不難看出,程序訪問的局部化性質(zhì)是Cache得以實(shí)現(xiàn)的原理基礎(chǔ)。同理,構(gòu)造磁盤高速緩沖存儲器(簡稱磁盤Cache),也將提高系統(tǒng)的整體運(yùn)行速度CPU一般設(shè)有一級緩存(L1 Cache)和二級緩存(L2 Cache)。一級緩存是由CPU制造商直接做在CPU內(nèi)部的,其速度極快,但容量較小,一般只有十幾K。PⅡ以前的PC一般都是將二級緩存做在主板上,并且可以人為升級,其容量從256KB到1MB不等,而PⅡ CPU則采用了全新的封裝方式,把CPU內(nèi)核與二級緩存一起封裝在一只金屬盒內(nèi),并且不可以升級。二級緩存一般比一級緩存大一個數(shù)量級以上,另外,在CPU中,已經(jīng)出現(xiàn)了帶有三級緩存的情況。
高速緩沖存儲器
高速緩沖存儲器,即Cache。我們知道,數(shù)據(jù)分布的集中傾向不如程序這么明顯,如果把在一段時間內(nèi)一定地址范圍被頻繁訪問的信息集合成批地從主的系統(tǒng)中,CPU訪問數(shù)據(jù)時,在Cache中能直接找到的概率,它是Cache的一個重要指標(biāo),與Cache的大小、替換算法、程序特性等因素有關(guān)。增加Cache后,CPU訪問主存的速度是可以預(yù)算的,64KB的Cache可以緩沖4MB的主存,且命中率都在90%以上。以主頻為100MHz的CPU(時鐘周期約為10ns)、20ns的Cache、70ns的RAM、命中率為90%計(jì)算,CPU訪問主存的周期為:有Cache時,20×0.9+70×0.1=34ns;無Cache時,70×1=70ns。由此可見,加了Cache后,CPU訪問主存的速度大大提高了,但有一點(diǎn)需注意,加Cache只是加快了CPU訪問主存的速度,而CPU訪問主存只是計(jì)算機(jī)整個操作的一部分,所以增加Cache對系統(tǒng)整體速度只能提高10~20%左右。
Java語言中的緩沖器
Buffer
java.nio.Buffer直接已知子類:ByteBuffer,CharBuffer,DoubleBuffer,FloatBuffer,IntBuffer,LongBuffer,ShortBufferpublic abstract classBufferextendsObject一個用于特定基本類型數(shù)據(jù)的容器。
緩沖區(qū)是特定基本類型元素的線性有限序列。除內(nèi)容外,緩沖區(qū)的基本屬性還包括容量、限制和位置:
緩沖區(qū)的容量是它所包含的元素的數(shù)量。緩沖區(qū)的容量不能為負(fù)并且不能更改。
緩沖區(qū)的限制是第一個不應(yīng)該讀取或?qū)懭氲脑氐乃饕。緩沖區(qū)的限制不能為負(fù),并且不能大于其容量。
緩沖區(qū)的位置是下一個要讀取或?qū)懭氲脑氐乃饕。緩沖區(qū)的位置不能為負(fù),并且不能大于其限制。
對于每個非 boolean 基本類型,此類都有一個子類與之對應(yīng)。
傳輸數(shù)據(jù)
此類的每個子類都定義了兩種獲取和放置操作:
相對操作讀取或?qū)懭胍粋或多個元素,它從當(dāng)前位置開始,然后將位置增加所傳輸?shù)脑財(cái)?shù)。如果請求的傳輸超出限制,則相對獲取操作將拋出BufferUnderflowException,相對放置操作將拋出BufferOverflowException;這兩種情況下,都沒有數(shù)據(jù)被傳輸。
絕對操作采用顯式元素索引,該操作不影響位置。如果索引參數(shù)超出限制,絕對獲取操作和放置操作將拋出IndexOutOfBoundsException。
當(dāng)然,通過適當(dāng)通道的 I/O 操作(通常與當(dāng)前位置有關(guān))也可以將數(shù)據(jù)傳輸?shù)骄彌_區(qū)或從緩沖區(qū)傳出數(shù)據(jù)。
做標(biāo)記和重置
緩沖區(qū)的標(biāo)記是一個索引,在調(diào)用reset方法時會將緩沖區(qū)的位置重置為該索引。并非總是需要定義標(biāo)記,但在定義標(biāo)記時,不能將其定義為負(fù)數(shù),并且不能讓它大于位置。如果定義了標(biāo)記,則在將位置或限制調(diào)整為小于該標(biāo)記的值時,該標(biāo)記將被丟棄。如果未定義標(biāo)記,那么調(diào)用reset方法將導(dǎo)致拋出InvalidMarkException。
不變式
標(biāo)記、位置、限制和容量值遵守以下不變式:
0<=標(biāo)記<=位置<=限制<=容量新創(chuàng)建的緩沖區(qū)總有一個 0 位置和一個未定義的標(biāo)記。初始限制可以為 0,也可以為其他值,這取決于緩沖區(qū)類型及其構(gòu)建方式。一般情況下,緩沖區(qū)的初始內(nèi)容是未定義的。
清除反轉(zhuǎn)重繞
除了訪問位置、限制、容量值的方法以及做標(biāo)記和重置的方法外,此類還定義了以下可對緩沖區(qū)進(jìn)行的操作:
clear()使緩沖區(qū)為一系列新的通道讀取或相對放置操作做好準(zhǔn)備:它將限制設(shè)置為容量大小,將位置設(shè)置為 0。
flip()使緩沖區(qū)為一系列新的通道寫入或相對獲取操作做好準(zhǔn)備:它將限制設(shè)置為當(dāng)前位置,然后將位置設(shè)置為 0。
rewind()使緩沖區(qū)為重新讀取已包含的數(shù)據(jù)做好準(zhǔn)備:它使限制保持不變,將位置設(shè)置為 0。
只讀緩沖區(qū)
每個緩沖區(qū)都是可讀取的,但并非每個緩沖區(qū)都是可寫入的。每個緩沖區(qū)類的轉(zhuǎn)變方法都被指定為可選操作,當(dāng)對只讀緩沖區(qū)調(diào)用時,將拋出ReadOnlyBufferException。只讀緩沖區(qū)不允許更改其內(nèi)容,但其標(biāo)記、位置和限制值是可變的?梢哉{(diào)用其isReadOnly方法確定緩沖區(qū)是否為只讀。
線程安全
多個當(dāng)前線程使用緩沖區(qū)是不安全的。如果一個緩沖區(qū)由不止一個線程使用,則應(yīng)該通過適當(dāng)?shù)耐絹砜刂茖υ摼彌_區(qū)的訪問。
調(diào)用鏈
指定此類中的方法返回調(diào)用它們的緩沖區(qū)(否則它們不會返回任何值)。此操作允許將方法調(diào)用組成一個鏈;例如,語句序列
b.flip(); b.position(23); b.limit(42);可以由以下更緊湊的一個語句代替 b.flip().position(23).limit(42);
從以下版本開始:1.4
緩沖器PCA9515ADR www.dzsc.com/ic-detail/9_3748.html的參數(shù)
濕氣敏感性等級(MSL):1(無限)
系列:-
包裝:剪切帶(CT) ,帶卷(TR)
零件狀態(tài):不可用于新設(shè)計(jì)
類型:緩沖器,轉(zhuǎn)接驅(qū)動器
應(yīng)用:I?C
輸入:2線式總線
輸出:2線式總線
數(shù)據(jù)速率(最大值):400kHz
通道數(shù):1
延遲時間:-
信號調(diào)節(jié): -
電容-輸入:7pF
電源電壓:2.3V~3.6V
電源電流:500?A
工作溫度:-40°C~85°C
封裝:8-SOIC(0.154",3.90mm寬)
供應(yīng)商器件封裝:8-SOIC
|
|