緩沖器,緩沖器基本原理是什么?
緩沖器,緩沖器基本原理是什么?
最基本線路構成的門電路存在著抗干擾性能差和不對稱等缺點。為了克服這些缺點,可以在輸出或輸入端附加反相器作為緩沖級;也可以輸出或輸入端同時都加反相器作為緩沖級。這樣組成的門電路稱為帶緩沖器的門電路。帶緩沖輸出的門電路輸出端都是1個反相器,輸出驅動能力僅由該輸出級的管子特性決定,與各輸入端所處邏輯狀態無關。而不帶緩沖器的門電路其輸出驅動能力與輸入狀態有關。另一方面。帶緩沖器的門電路的轉移特性至少是由3級轉移特性相乘的結果,因此轉換區域窄,形狀接近理想矩形,并且不隨輸入使用端數的情況而變化、加緩沖器的門電路,抗干擾性能提高10%電源電壓。此外,帶緩沖器的門電路還有輸出波形對稱、交流電壓增益大、帶寬窄、輸入電容比較小等優點。不過,由于附加了緩沖級,也帶來了一些缺點。例如傳輸延遲時間加大,因此,帶緩沖器的門電路適宜用在高速電路系統中。
背景知識
緩沖寄存器又稱緩沖器,它分輸入緩沖器和輸出緩沖器兩種。前者的作用是將外設送來的數據暫時存放,以便處理器將它取走;后者的作用是用來暫時存放處理器送往外設的數據。有了數控緩沖器,就可以使高速工作的CPU與慢速工作的外設起協調和緩沖作用,實現數據傳送的同步。由于緩沖器接在數據總線上,故必須具有三態輸出功能。
基本原理
在CPU的設計中,一般輸出線的直流負載能力可以驅動一個TTL負載,而在連接中,CPU的一根地址線或數據線,可能連接多個存儲器芯片,但現在的存儲器芯片都為MOS電路,主要是電容負載,直流負載遠小于TTL負載。故小型系統中,CPU可與存儲器直接相連,在大型系統中就需要加緩沖器。
任何程序或數據要為CPU所使用,必須先放到主存儲器(內存)中,即CPU只與主存交換數據,所以主存的速度在很大程度上決定了系統的運行速度。程序在運行期間,在一個較短的時間間隔內,由程序產生的地址往往集中在存儲器的一個很小范圍的地址空間內。指令地址本來就是連續分布的,再加上循環程序段和子程序段要多次重復執行,因此對這些地址中的內容的訪問就自然的具有時間集中分布的傾向。數據分布的集中傾向不如程序這么明顯,但對數組的存儲和訪問以及工作單元的選擇可以使存儲器地址相對地集中。這種對局部范圍的存儲器地址頻繁訪問,而對此范圍外的地址訪問甚少的現象被稱為程序訪問的局部化(Locality of Reference)性質。由此性質可知,在這個局部范圍內被訪問的信息集合隨時間的變化是很緩慢的,如果把在一段時間內一定地址范圍被頻繁訪問的信息集合成批地從主存中讀到一個能高速存取的小容量存儲器中存放起來,供程序在這段時間內隨時采用而減少或不再去訪問速度較慢的主存,就可以加快程序的運行速度。這個介于CPU和主存之間的高速小容量存儲器就稱之為高速緩沖存儲器,簡稱Cache。不難看出,程序訪問的局部化性質是Cache得以實現的原理基礎。同理,構造磁盤高速緩沖存儲器(簡稱磁盤Cache),也將提高系統的整體運行速度。目前CPU一般設有一級緩存(L1 Cache)和二級緩存(L2 Cache)。一級緩存是由CPU制造商直接做在CPU內部的,其速度極快,但容量較小,一般只有十幾K。PⅡ以前的PC一般都是將二級緩存做在主板上,并且可以人為升級,其容量從256KB到1MB不等,而PⅡ CPU則采用了全新的封裝方式,把CPU內核與二級緩存一起封裝在一只金屬盒內,并且不可以升級。二級緩存一般比一級緩存大一個數量級以上,另外,在目前的CPU中,已經出現了帶有三級緩存的情況。Cache的基本操作有讀和寫,其衡量指標為命中率,即在有Cache高速緩沖存儲器:
上面介紹的基本都是常說的內存的方方面面,下面我們來認識一下高速緩沖存儲器,即Cache。我們知道,任何程序或數據要為CPU所使用,必須先放到主存儲器(內存)中,即CPU只與主存交換數據,所以主存的速度在很大程度上決定了系統的運行速度。程序在運行期間,在一個較短的時間間隔內,由程序產生的地址往往集中在存儲器的一個很小范圍的地址空間內。指令地址本來就是連續分布的,再加上循環程序段和子程序段要多次重復執行,因此對這些地址中的內容的訪問就自然的具有時間集中分布的傾向。數據分布的集中傾向不如程序這么明顯,但對數組的存儲和訪問以及工作單元的選擇可以使存儲器地址相對地集中。這種對局部范圍的存儲器地址頻繁訪問,而對此范圍外的地址訪問甚少的現象被稱為程序訪問的局部化(Locality of Reference)性質。由此性質可知,在這個局部范圍內被訪問的信息集合隨時間的變化是很緩慢的,如果把在一段時間內一定地址范圍被頻繁訪問的信息集合成批地從主的系統中,CPU訪問數據時,在Cache中能直接找到的概率,它是Cache的一個重要指標,與Cache的大小、替換算法、程序特性等因素有關。增加Cache后,CPU訪問主存的速度是可以預算的,64KB的Cache可以緩沖4MB的主存,且命中率都在90%以上。以主頻為100MHz的CPU(時鐘周期約為10ns)、20ns的Cache、70ns的RAM、命中率為90%計算,CPU訪問主存的周期為:有Cache時,20×0.9+70×0.1=34ns;無Cache時,70×1=70ns。由此可見,加了Cache后,CPU訪問主存的速度大大提高了,但有一點需注意,加Cache只是加快了CPU訪問主存的速度,而CPU訪問主存只是計算機整個操作的一部分,所以增加Cache對系統整體速度只能提高10~20%左右。
非常好我支持^.^
(39) 86.7%
不好我反對
(6) 13.3%
相關閱讀:
- [模擬技術] 詳解模擬芯片內部的電路結構 2023-10-23
- [工業控制] 50個經典的西門子300PLC問題 2023-10-20
- [電子說] 為什么異步fifo中讀地址同步在寫時鐘域時序分析不通過? 2023-10-18
- [電子說] 時鐘信號的同步 在數字電路里怎樣讓兩個不同步的時鐘信號同步? 2023-10-18
- [電子說] 運放的穩定性評估的基本原理 2023-10-16
- [電子說] PLC S7-300/400系列系統PN網絡故障的判斷方法 2023-10-07
- [電子說] AUTOSAR實戰教程-通信協議棧介紹 2023-10-07
- [電子說] 基于MM32F0140的I2C與24C02通信 2023-09-28
( 發表人:愛電路 )