[導讀]作者簡介???王柏生??資深技術專家,先后就職于中科院軟件所、紅旗Linux和百度,現(xiàn)任百度主任架構師。在操作系統(tǒng)、虛擬化技術、分布式系統(tǒng)、云計算、自動駕駛等相關領域耕耘多年,有著豐富的實踐經驗。著有暢銷書《深度探索Linux操作系統(tǒng)》(2013年出版)。謝廣軍??計算機專業(yè)博士...
作者簡介? ? ?
王柏生??資深技術專家,先后就職于中科院軟件所、紅旗Linux和百度,現(xiàn)任百度主任架構師。在操作系統(tǒng)、虛擬化技術、分布式系統(tǒng)、云計算、自動駕駛等相關領域耕耘多年,有著豐富的實踐經驗。著有暢銷書《深度探索Linux操作系統(tǒng)》(2013年出版)。謝廣軍??計算機專業(yè)博士,畢業(yè)于南開大學計算機系。資深技術專家,多年的IT行業(yè)工作經驗。現(xiàn)擔任百度智能云副總經理,負責云計算相關產品的研發(fā)。多年來一直從事操作系統(tǒng)、虛擬化技術、分布式系統(tǒng)、大數據、云計算等相關領域的研發(fā)工作,實踐經驗豐富。?本文內容節(jié)選自《深度探索Linux虛擬化技術》,已獲得機械工業(yè)出版社華章公司授權。歡迎讀者文末留言,閱碼場和機械工業(yè)出版社華章公司將為每位精彩留言獲獎用戶奉送該書一本。PIC虛擬化計算機系統(tǒng)有很多的外設需要服務,顯然,CPU采用輪詢的方式逐個詢問外設是否需要服務,是非常浪費CPU的計算的,尤其是對那些并不是頻繁需要服務的設備。因此,計算機科學家們設計了外設主動向CPU發(fā)起服務請求的方式,這種方式就是中斷。采用中斷方式后,在沒有外設請求時,CPU就可以繼續(xù)其他計算任務,而不是進行很多不必要的輪詢,極大地提高了系統(tǒng)的吞吐[1]?在每個指令周期結束后,如果CPU關中斷標識(IF)沒有被設置,那么其會去檢查是否有中斷請求,如果有中斷請求,則運行對應的中斷服務程序,然后返回被中斷的計算任務繼續(xù)執(zhí)行。CPU不可能為每個硬件都設計專門的管腳接收中斷,管腳數量的限制、電路的復雜度、靈活度等方方面面都不現(xiàn)實,因此,需要設計一個專門管理中斷的單元。由中斷管理單元接受來自外圍設備的請求,確定請求的優(yōu)先級,并向CPU發(fā)出中斷。1981年IBM推出的第1代個人電腦PC/XT使用了一個獨立的8259A作為中斷控制器,自此,8259A就成為了單核時代中斷芯片事實上的標準。因為可以通過軟件編程對其進行控制,比如當管腳收到設備信號時,可以編程控制其發(fā)出的中斷向量號,因此,中斷控制器又稱為可編程中斷控制器(programmable interrupt controller),簡稱PIC。單片8259A可以連接8個外設的中斷信號線,可以多片級聯(lián)支持更多外設。8259A和CPU的連接如圖5所示。圖5 8259A和CPU連接片選和地址譯碼器相連,當CPU準備訪問8259A前,需要向地址總線發(fā)送8259A對應的地址,經過譯碼器后,譯碼器發(fā)現(xiàn)是8259A對應的地址,因此會拉低與8259A的CS連接的管腳的電平,從而選中8259A,通知8259A,CPU準備與其交換數據了。8259A的D0~7管腳與CPU的數據總線相連。從CPU向8259A發(fā)送ICW和OCW,從8259A向CPU傳送8259A的狀態(tài)以及中斷向量號,都是通過數據總線傳遞的。當CPU向8259A發(fā)送ICW、OCW時,當把數據送上數據總線后,需要通知8259A讀數據,CPU通過拉低WR管腳的電平的方式通知8259A,當8259A的WR管腳收到低電平后,讀取數據總線的數據。類似的,CPU準備好讀取8259A的狀態(tài)時,拉低RD管腳通知8259A。8259A和CPU之間的中斷信號的通知使用專用的連線,8259A的管腳INTR(interrupt request)和INTA(interrupt acknowledge)分別與處理器的INTR和INTA管腳相連。8259A通過管腳INTR向CPU發(fā)送中斷請求,CPU通過管腳INTA向PIC發(fā)送中斷確認,告訴PIC其收到中斷并且開始處理了。8259A與CPU之間的具體中斷過程如下:1)8259A的IR0~7管腳高電平有效,所以當中斷源請求服務時,拉高連接IR0~7的管腳,產生中斷請求。2)8259A需要將這些信號記錄下來,因此其內部有個寄存器IRR(Interrupt Request Register),負責記錄這個中斷請求,針對這個例子,IRR的bit 0將被設置為1。3)有的時候,我們會屏蔽掉某個設備的中斷。換句話說,就是的當這個中斷源向8259A發(fā)送信號后,8259A并不將這個中斷信號發(fā)送給CPU。讀者不要將屏蔽和CPU通過cli命令關中斷混淆,CPU關中斷時,中斷還會發(fā)送給CPU,只是在關中斷期間CPU不處理中斷。8259A中的寄存器IMR(Interrupt Mask Register)負責記錄某個中斷源是否被屏蔽,比如0號中斷源被設備了屏蔽,那么IMR的bit 0將被設置。那么這個IMR是誰設置的呢?當然是CPU中的操作系統(tǒng)。因此這一步,8259A將會檢查收到的中斷請求是否被屏蔽。4)在某一個時刻,可能有多個中斷請求,或者是之前存在IRR中的中斷并沒有被處理,8259A中積累了一些中斷。某一個時刻,8259A只能向CPU發(fā)送一個中斷請求,因此,當存在多個中斷請求時,8259A需要判斷一下中斷優(yōu)先級,這個單元叫做priority resolver,priority resolver將在IRR中選出優(yōu)先級最高的中斷。5)選出最高優(yōu)先級的中斷后,8259A拉高管腳INTR的電平,向CPU發(fā)出信號。6)當CPU執(zhí)行完當前指令周期后,其將檢查寄存器FLAGS的中斷使能位IF(Interrupt enable flag),如果允許中斷,那么將檢查INTR是否有中斷,如果有中斷,那么將通過管腳INTR通知8259A處理器將開始處理中斷。7)8259A收到CPU發(fā)來的INTA信號后,將置位最高優(yōu)先級的中斷在ISR(In-Service Register)中對應的位,并清空IRR中對應的位。8)通常,x86 CPU會發(fā)送第2次INTA,在收到第2次INTA后,8259A會將中斷向量號(vector)送上數據總線D0~D7。9)如果8259A設置為AEOI(Automatic End Of Interrupt)模式,那么8259A復位ISR中對應的bit,否則ISR中對應的bit一直保持到收到系統(tǒng)的中斷服務程序發(fā)來的EOI命令。我們知道,中斷服務程序保存在一個數組中,數組中的每一項對應一個中斷服務程序。在實模式下,這個數組稱為IVT(interrupt vector table);在保護模式下,這個數組稱為IDT(Interrupt descriptor table)。這個數組中保存的服務程序,并不是全部都是外部中斷,還有處理CPU內部異常的以及軟中斷服務程序。x86CPU前32個中斷號(0-31)留給處理器異常的,比如第0個中斷號,是處理器出現(xiàn)除0(Divide by Zero)異常的,不能被占用。因此,假設我們計劃IVT數組中第32個元素存放管腳IR0對應的ISR,那么我們初始化8259A時,通過ICW,設置起始的irq base為32,那么當8259A發(fā)出管腳IR0的中斷請求時,則發(fā)出的值是32,管腳IR1對應的是33,依此類推。這個32、33就是所謂的中斷向量(vector)。換句話說,中斷向量就是中斷服務程序在IVT/IDT中的索引。下面就是設置irq_base的代碼,在初始化時,通過第2個初始化命令字(ICW2)設置:?commit 85f455f7ddbed403b34b4d54b1eaf0e14126a126KVM: Add support for in-kernel PIC emulation?linux.git/drivers/kvm/i8259.c?static void pic_ioport_write(void *opaque, u32addr, u32 val){??…???? switch(s->init_state) {??? …??? case 1:????? s->irq_base = val
本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。
關鍵字:
驅動電源
在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。
關鍵字:
工業(yè)電機
驅動電源
LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...
關鍵字:
驅動電源
照明系統(tǒng)
散熱
根據LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。
關鍵字:
LED
設計
驅動電源
電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...
關鍵字:
電動汽車
新能源
驅動電源
在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...
關鍵字:
發(fā)光二極管
驅動電源
LED
LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數校正(PFC)、空間受限和可靠性等。
關鍵字:
LED
驅動電源
功率因數校正
在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...
關鍵字:
LED照明技術
電磁干擾
驅動電源
開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源
關鍵字:
LED
驅動電源
開關電源
LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。
關鍵字:
LED
隧道燈
驅動電源
LED驅動電源在LED照明系統(tǒng)中扮演著至關重要的角色。由于LED具有節(jié)能、環(huán)保、長壽命等優(yōu)點,使得LED照明在各個領域得到廣泛應用。然而,LED的電流、電壓特性需要特定的驅動電源才能正常工作。本文將介紹常用的LED驅動電...
關鍵字:
LED驅動電源
led照明
LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電源轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。
關鍵字:
LED
驅動電源
高壓工頻交流
種種跡象都在表明,半導體行業(yè)或已提前進入寒冬時期,越來越多的廠商開始扛不住了……
關鍵字:
LED
半導體
驅動電源
崧盛股份9日發(fā)布投資者關系活動記錄表,就植物照明發(fā)展趨勢、行業(yè)壁壘等問題進行分享。植物照明未來市場需求廣闊崧盛股份指出,植物照明將會走向長期產業(yè)領域。主要原因有三:第一,LED植物照明賦能終端種植更具有經濟價值。由于LE...
關鍵字:
崧盛股份
驅動電源
在當今高度發(fā)展的技術中,電子產品的升級越來越快,LED燈技術也在不斷發(fā)展,這使我們的城市變得豐富多彩。 LED驅動電源將電源轉換為特定的電壓和電流,以驅動LED發(fā)光。通常情況下:LED驅動電源的輸入包括高壓工頻交流電(即...
關鍵字:
LED
驅動電源
高壓直流
人類社會的進步離不開社會上各行各業(yè)的努力,各種各樣的電子產品的更新?lián)Q代離不開我們的設計者的努力,其實很多人并不會去了解電子產品的組成,比如LED電源。
關鍵字:
LED
驅動電源
低壓直流
隨著科學技術的發(fā)展,LED技術也在不斷發(fā)展,為我們的生活帶來各種便利,為我們提供各種各樣生活信息,造福著我們人類。LED驅動電源實際上是一種電源,但是它是一種特定的電源,用于驅動LED發(fā)射帶有電壓或電流的光。 因此,LE...
關鍵字:
LED
驅動電源
電流
LED燈作為一種新型節(jié)能和無污染光源,由于其特有的發(fā)光照明特性,在現(xiàn)代照明應用中發(fā)揮著革命性的作用。作為 LED 照明產業(yè)鏈中最為核心的部件之一,LED 驅動電源的驅動控制技術所存在的可靠性低、成本高等典型問題一直制約著...
關鍵字:
多路
LED
驅動電源
隨著社會的快速發(fā)展,LED技術也在飛速發(fā)展,為我們的城市的燈光煥發(fā)光彩,讓我們的生活越來越有趣,那么你知道LED需要LED驅動電源嗎?那么你知道什么是LED驅動電源嗎?
關鍵字:
LED
開關電源
驅動電源
早前有新聞稱,Cree在2018年開始宣布轉型高科技半導體領域,并一邊逐漸脫離照明與LED相關業(yè)務,一邊持續(xù)投資半導體。在今日,Cree宣布與SMART Global Holdings, Inc.達成最終協(xié)議,擬將LED...
關鍵字:
cree
led照明