寫在前面:
服務(wù)器 從功能上來講酒甸,跟我們?nèi)粘W(xué)習(xí)辦公使用的臺式機(jī)和筆記本沒有本質(zhì)區(qū)別插勤,主要也是由最為關(guān)鍵的三大件CPU析恋、內(nèi)存卤橄、硬盤組成喇颁,但是服務(wù)器的應(yīng)用場景主要是提供給企業(yè)等角色用來支撐形形色色業(yè)務(wù)橘霎,不僅僅是用來安裝瀏覽器訪問網(wǎng)頁姐叁、安裝播放器看看電影原环,因此服務(wù)器會使用更強(qiáng)的配置处窥,即更強(qiáng)勁的CPU谒麦、更大的內(nèi)存绕德、更大的硬盤存儲耻蛇。從外形上來說城丧,服務(wù)器存在多種外形豌鹤,如機(jī)架式、刀片式灵临、塔式等等儒溉,最主要的區(qū)別在于服務(wù)器一般不會配置顯示器顿涣、鍵盤涛碑、鼠標(biāo)等部件用于近端操作蒲障,一般通過IP遠(yuǎn)程連接的方式訪問即可庄撮。因?yàn)榉?wù)器一般情況下都會放置于單獨(dú)的機(jī)房重窟,而且風(fēng)扇噪音會比家用電腦更大些巡扇。
Firmware 一般指固件厅翔,固件(Firmware)就是寫入EPROM(可擦寫可編程只讀存儲器)或EEPROM(電可擦可編程只讀存儲器)中的程序刀闷。
固件是指設(shè)備內(nèi)部保存的設(shè)備“驅(qū)動程序”甸昏,通過固件施蜜,操作系統(tǒng)才能按照標(biāo)準(zhǔn)的設(shè)備驅(qū)動實(shí)現(xiàn)特定機(jī)器的運(yùn)行動作翻默,比如光驅(qū)、刻錄機(jī)等都有內(nèi)部固件肯污。
固件是擔(dān)任著一個系統(tǒng)最基礎(chǔ)最底層工作的軟件蹦渣。而在硬件設(shè)備中剂桥,固件就是硬件設(shè)備的靈魂权逗,因?yàn)橐恍┯布O(shè)備除了固件以外沒有其它軟件組成师坎,因此固件也就決定著硬件設(shè)備的功能及性能胯陋。
原理:
固件(firmware)一般存儲于設(shè)備中的電可擦除只讀存儲器EEPROM(Electrically Erasable Programmable ROM)或FLASH芯片中遏乔,一般可由用戶通過特定的刷新程序進(jìn)行升級的程序。一般來說了讨,擔(dān)任著一個數(shù)碼產(chǎn)品最基礎(chǔ)胞谭、最底層工作的軟件才可以稱之為固件丈屹,比如計算機(jī)主板上的基本輸入/輸出系統(tǒng)BIOS(Basic Input/output System)泉瞻,在以前其實(shí)更多的專業(yè)人士叫它固件。
通常這些硬件內(nèi)所保存的程序是無法被用戶直接讀出或修改的舅锄。在以前皇忿,一般情況下是沒有必要對固件進(jìn)行升級操作的鳍烁,即使在固件內(nèi)發(fā)現(xiàn)了嚴(yán)重的Bug也必須由專業(yè)人員帶著寫好程序的芯片把原來機(jī)器上的更換下來幔荒。早期固件芯片一般采用了ROM設(shè)計爹梁,它的Firmware代碼是在生產(chǎn)過程中固化的姚垃,用任何手段都無法修改念链。隨著技術(shù)的不斷發(fā)展,修改固件以適應(yīng)不斷更新的硬件環(huán)境成了用戶們的迫切要求积糯,所以掂墓,可重復(fù)寫入的可編程可擦除只讀存儲器EPROM(Erasable Programmable ROM),EEPROM和flash出現(xiàn)了看成。這些芯片是可以重復(fù)刷寫的梆暮,讓固件得以修改和升級啦粹。
固件的其他介紹
一忍饰、BIOS
1.界面信息
主界面:
BIOS信息:包括版本、生成日期亮靴、固件版本等
主板信息:平臺搓侄、處理器乳讥、PCH等
內(nèi)存信息:內(nèi)存容量
系統(tǒng)信息的設(shè)置:語言、時間
ME (Intel Management Engine) :Intel ME 是 Intel Management Engine 的簡稱 ,中文翻譯為 英特爾管理引擎,Intel ME 是指 Intel 芯片中一個獨(dú)立于CPU和操作系統(tǒng)的微處理器。ME里面有用于遠(yuǎn)程管理的功能犬庇,在出現(xiàn)嚴(yán)重漏洞的時可以在不受用戶操控下遠(yuǎn)程管理企業(yè)計算機(jī)。
高級選項(xiàng):
關(guān)于CPU纽帖、PCH吹截、PCI以及USB等的配置
1蛾默、處理器配置:
預(yù)取
緩存技術(shù)利用局部性原理,使速度更快的上層存儲器成為下層存儲器的緩沖。基于技術(shù)的限制及成本的考慮,上層存儲器的容量要比下層存儲器小得多。數(shù)據(jù)如果存在于上層存儲器中,就可以直接對其進(jìn)行讀寫, 這種情形叫做命中,命中的統(tǒng)計概率叫做命中率;如果未命中就必須涉及到訪問下層存儲器君旦,這種情形也叫失效。
但是隨著應(yīng)用規(guī)模的不斷擴(kuò)大緩存失效所占的比例越來越大,成為影響緩存性能的主要因素料祠。為了提高緩存的命中率,
預(yù)取技術(shù)通過計算和訪存的重疊,在Cache可能會發(fā)生失效之前發(fā)出預(yù)取請求以便在該數(shù)據(jù)真正被使用到時己提前將數(shù)據(jù)塊取入Cache,從而避免Cache失效造成的處理器停頓堕阔。
2、常用參考代碼
3谨娜、UPI配置
4、內(nèi)存配置
5彰阴、IIO配置
Linux設(shè)備驅(qū)動之IIO子系統(tǒng),是專用于模數(shù)轉(zhuǎn)換器(ADC)和數(shù)模轉(zhuǎn)換器(DAC)的內(nèi)核子系統(tǒng)。
6、高級電源管理配置
CPU P狀態(tài)控制
以下是ACPI規(guī)格的具體電源管理狀態(tài):
全局狀態(tài)(Global system states) ·用戶可見 ·分4個狀態(tài):G0, G1, G2, G3
睡眠狀態(tài)(Sleeping states) ·全局狀態(tài)G1(不含S5)的睡眠狀態(tài) ·分5個狀態(tài):S1屑宠,S2卫玖,S3,S4说榆,S5
設(shè)備電源狀態(tài)(Device Power states) ·用戶不可見 ·只要有一個配置顯示為“on”(啟動)狀態(tài)邦鲫,另一個則顯示為“off”(關(guān)閉)狀態(tài) ·分4個狀態(tài):D0你画,D1敦迄,D2,D3
CPU電源狀態(tài)(CPU Power states) ·也叫做CPU睡眠狀態(tài) ·在全局狀態(tài)G0 ·分5個狀態(tài):C0瞧柔,C1倒谷,C2,C3收奔,C4 ·將來會有C6狀態(tài)(Penryn)
CPU/設(shè)備性能狀態(tài)(CPU / Device Performance states) ·電壓和時鐘頻率由工作量決定 ·P-state狀態(tài)總量符合CUP/設(shè)備規(guī)格 ·例如,CPU倍頻越高殊霞,P-states就越高
CPU溫度監(jiān)控(CPU Thermal Monitor) ·當(dāng)CPU溫度超過極限時,監(jiān)控系統(tǒng)會降低CPU的性能 ·在TM1中疤估,功過改變周期來降低CPU性能 ·在TM2種慷荔,通過改變時鐘頻率和核心電壓(P-state)來降低CPU性能
服務(wù)器管理
關(guān)于BMC的等待時間、預(yù)設(shè)值枉疼、網(wǎng)絡(luò)配置侮措、用戶信息以及日志等設(shè)置,還可查看BMC的自檢狀態(tài)乖杠、版本以及系統(tǒng)事件日志分扎。
安全
設(shè)置管理員密碼和用戶密碼
輸入管理員密碼則有權(quán)進(jìn)入BIOS SETUP;用戶密碼是開機(jī)密碼滑黔,可以進(jìn)入啟動列表或者BIOS界面笆包。
BOOT:
1、setup prompt timeout:設(shè)置啟動時屏幕提示等待時間
2略荡、bootup numlock state:是啟動時鍵盤上的數(shù)字鎖定鍵的狀態(tài)的意思庵佣。
3、quick boot(迅速啟動)建議開啟(enabled)汛兜,可提高啟動的速度
說明:開機(jī)每次都要檢測硬件 在bios里設(shè)置quick boot,計算機(jī)在啟動時不進(jìn)行全面自檢巴粪,從而加速系統(tǒng)
啟動速度quiet boot(安靜開機(jī))
說明:此項(xiàng)目讓您在開機(jī)畫面上顯示供貨商標(biāo)志。設(shè)定值為:關(guān)閉(disabled)粥谬、開啟(enabled)肛根。預(yù)設(shè)設(shè)定值為「開啟」(enabled)。
4漏策、boot mode select:選擇UEFI/Legacy
5派哲、fixed boot order priorities:固定的啟動順序優(yōu)先級
6、CSM配置
CSM (兼容性支持模塊):是BIOS上Boot選項(xiàng)里的一個下拉子項(xiàng)目(一些老的主板上沒有此選項(xiàng))掺喻,與Secure Boot(安全啟動)是并列項(xiàng)芭届。CSM開啟使得可以支持UEFI啟動和非UEFI啟動储矩。若是需要啟動傳統(tǒng)MBR設(shè)備,則需開啟CSM褂乍。關(guān)閉CSM則變成純UEFI啟動持隧,且完全支持安全啟動。Secure Boot(安全啟動)逃片,安全啟動僅適用于使用UEFI啟動的操作系統(tǒng)屡拨。在筆記本的BIOS里,這里更多的是使用Enabled(打開)和Disabled(關(guān)閉)兩個選項(xiàng)褥实。在電腦自帶Windows 8的情況下呀狼,Secure Boot(安全啟動)默認(rèn)是Enabled(打開)。從而使得CSM(兼容性支持模塊)又默認(rèn)是Disabled(關(guān)閉)性锭,進(jìn)而導(dǎo)致電腦不能啟動不完全支持UEFI的設(shè)備赠潦。要使得電腦能啟動不完全支持UEFI的設(shè)備,就必須關(guān)閉Secure Boot草冈,然后打開CSM。
保存退出
選擇是否保存之前的各種設(shè)置瓮增,也可恢復(fù)默認(rèn)設(shè)置怎棱,退出BIOS
2、BIOS階段劃分
BIOS大致可以劃分為6個階段绷跑,具體如下:1.SEC:Security(安全) (處理平臺重啟事件拳恋;創(chuàng)造一個臨時的內(nèi)存區(qū)(注意:這個時候內(nèi)存還未初始化);在系統(tǒng)中作為一個可信的root砸捏;傳遞信息到PEI谬运。 開發(fā)者可以不怎么關(guān)注,極少涉及)2.PEI:pre-efi initialization(預(yù)EFI初始化) ( 初始化一些永久的內(nèi)存垦藏;HOBs(Hand-off Blocks)中的內(nèi)存梆暖;以及在HOBs里面的FV(firmware volume)位置;傳遞控制權(quán)到DXE階段掂骏。 開發(fā)者需要一定的關(guān)注轰驳,用得還是比較多的)3.DXE:driver execution environment(驅(qū)動程序執(zhí)行環(huán)境) (開發(fā)者需重點(diǎn)關(guān)注,從名字可以看出來弟灼,服務(wù)器上硬件驅(qū)動的執(zhí)行環(huán)境级解,與后期外設(shè)的使用,有極大的關(guān)系)4.BDS:boot device select(引導(dǎo)設(shè)備選擇) (初始化console設(shè)備田绑;加載設(shè)備驅(qū)動勤哗;嘗試加載和執(zhí)行啟動項(xiàng)。 開發(fā)者同樣需要重點(diǎn)關(guān)注)5.RT:run time service(運(yùn)行時服務(wù)) (這個層次掩驱,基本和OS bootloader關(guān)系比較緊密芒划,需要了解OS)6.AL:after life(transition from the os back to the environment) of system
3冬竟、BIOS與BMC的通信
在x86服務(wù)器,BIOS需要與各種硬件和芯片打交道腊状,當(dāng)然也包括BMC(Baseboard Management Controller)诱咏。
BIOS與BMC之間的通信,主要使用的是IPMI缴挖。有2個階段袋狞,PEI和DXE(包括DXE后面的),用的是不同的IPMI函數(shù)(這點(diǎn)需要注意)映屋。雖然使用的是IPMI苟鸯,但是會有兩個通道,分別是KCS棚点、BT早处。一般使用KCS通道。請記住瘫析,BMC是不能主動與BIOS通信的砌梆;BIOS會發(fā)送IPMI命令給BMC,BMC如果成功接收的話贬循,就會有個返回信息給BIOS咸包,所以“看起來像是BMC可以與BIOS通信”。
如果產(chǎn)生了通信故障如何解決:(1)確認(rèn)BIOS是否發(fā)送了IPMI命令給BMC杖虾,可以查看BMC返回的completion code烂瘫;(2)確認(rèn)BMC是否收到了BIOS發(fā)送的IPMI命令;(3)如果BIOS發(fā)送了IPMI命令奇适,但是BMC未接收:可能是BMC的IPMI進(jìn)程正處于忙碌狀態(tài)坟比,所以丟掉了這條IPMI命令(BIOS這邊如果發(fā)送失敗,可以嘗試多次發(fā)送嚷往;另外葛账,可以稍微調(diào)高點(diǎn)KCS通道的延時);當(dāng)然间影,也有可能是BMC的IPMI進(jìn)程掛了注竿。(4)如果涉及到了底層協(xié)議的具體實(shí)現(xiàn),一條IPMI命令通常涉及到2個底層實(shí)現(xiàn)函數(shù)魂贬,SendDataToBmcPort()和ReceiveBmcDataFromPort()巩割。接收時,BIOS從KCS的I/O端口讀取數(shù)據(jù)付燥,讀完后宣谈,會檢測KCS寄存器中OBF狀態(tài)寄存器,如果BMC沒有寫數(shù)據(jù)键科,就會計數(shù)減1闻丑,延時5ms漩怎,然后重試;當(dāng)BMC一直不寫數(shù)據(jù)時嗦嗡,計數(shù)到0勋锤,就認(rèn)為BMC有故障,返回Device Error侥祭。
4叁执、BIOS在計算機(jī)啟動過程中的工作
4.1、基本概念
4.1.1 BIOS(基本輸入輸出系統(tǒng))
BIOS直接與硬件打交道矮冬,為操作系統(tǒng)提供控制硬件設(shè)備的基本功能谈宛。
BIOS分為系統(tǒng)BIOS(主板BIOS,控制計算機(jī)啟動的主要代碼)胎署、顯卡BIOS和其他設(shè)備BIOS(IDE控制器吆录、SCSI卡或網(wǎng)卡)
BIOS一般存放在ROM(只讀存儲芯片)中,在關(guān)機(jī)或掉電后琼牧,這些代碼也不會消失恢筝。
4.1.2 內(nèi)存地址
內(nèi)存每個字節(jié)都被賦予了一個地址,以便CPU訪問巨坊。最初的8086處理器能夠訪問的內(nèi)存最大只有1MB(0~FFFFFH):?低端640KB被稱為基本內(nèi)存滋恬;A0000H~BFFFFH保留給顯示卡顯存使用;C0000H~FFFFFH則保留給BIOS使用抱究,其中顯卡BIOS一般在C0000H~C7FFFH處,IDE控制器的BIOS在C8000H~CBFFFH處带斑,系統(tǒng)BIOS一般占用了最后的64KB或更多一點(diǎn)的空間鼓寺。
4.1.3 MBR
磁盤指的是硬盤、軟盤勋磕、U盤妈候、光盤等等這種類型的設(shè)備。?對每個類型磁盤挂滓,都有MBR和分區(qū)來組成這個磁盤苦银。?按照標(biāo)準(zhǔn),每個磁盤可以有最多4個主分區(qū)赶站,1個擴(kuò)展分區(qū)幔虏。擴(kuò)展分區(qū)上可以分多個邏輯分區(qū)。磁盤每個分區(qū)的第一個扇區(qū)是用來存放特別的信息贝椿,比如引導(dǎo)加載程序想括,而不用來存放文件等信息(每個分區(qū)的第一個扇區(qū)無法通過文件系統(tǒng)來訪問)。?注意:MBR不屬于任何分區(qū)烙博。MBR除了存放引導(dǎo)加載程序瑟蜈,還在后64個字節(jié)中存放這個磁盤的分區(qū)表烟逊。
4.2、BIOS啟動過程
4.2.1
按下電源開關(guān)铺根,電源就開始向主板和其它設(shè)備供電宪躯;此時電壓還不太穩(wěn)定,主板上的 控制芯片組會向CPU發(fā)出并保持一個RESET(重置)信號位迂,讓CPU內(nèi)部自動恢復(fù)到初始狀態(tài)访雪,但CPU在此刻不會馬上執(zhí)行指令;當(dāng)芯片組檢測到電源已經(jīng)開始穩(wěn)定供電了(當(dāng)然從不穩(wěn)定到穩(wěn)定的過程只是一瞬間的事情)囤官,它便撤去RESET信號(如果是手工按下計算機(jī)面板上的Reset按鈕來重啟機(jī)器冬阳,那么松開該按鈕時芯片組就會撤去RESET信號);CPU馬上就從地址FFFF0H處開始執(zhí)行指令党饮。這個地址是系統(tǒng)BIOS的地址范圍肝陪,這里放的只是一條跳轉(zhuǎn)指令,跳到系統(tǒng)BIOS中真正的啟動代碼處刑顺。
4.2.2 系統(tǒng)BIOS的啟動代碼首先進(jìn)行POST(Power-on self test 加電后自檢)
POST主要檢測系統(tǒng)中的一些關(guān)鍵設(shè)備是否能正常工作氯窍,eg:內(nèi)存和顯卡。
由于POST是最早進(jìn)行的檢測過程蹲堂,此時顯卡未初始化狼讨,如果系統(tǒng)BIOS在POST過程中發(fā)現(xiàn)致命錯誤,eg:未找到內(nèi)存或內(nèi)存有問題(此時只檢查640k常規(guī)內(nèi)存)柒竞,那么系統(tǒng)BIOS就會直接控制喇叭發(fā)聲報告錯誤政供,聲音不同,錯誤類型不同朽基。
在正常情況下布隔,POST非常快稼虎,結(jié)束后會調(diào)用其它代碼來進(jìn)行更完整的硬件檢測衅檀。
4.2.3 系統(tǒng)BIOS查找顯卡BIOS
系統(tǒng)BIOS在C0000H處找到顯卡BIOS之后就調(diào)用它的初始化代碼,由顯卡BIOS初始化顯卡霎俩。此時會在屏幕上顯示一些初始化信息(生產(chǎn)廠商哀军、圖形芯片等)。
系統(tǒng)BIOS會接著查找其他設(shè)備的BIOS程序打却,找到后同樣調(diào)用這些BIOS內(nèi)部的初始化代碼完成設(shè)備初始化杉适。
4.2.5
接著系統(tǒng)BIOS將檢測CPU的類型和工作頻率,測試所有的RAM学密,同時在屏幕上顯示內(nèi)存測試的進(jìn)度淘衙。可在CMOS設(shè)置中自行決定使用簡單耗時少或詳細(xì)耗時多的測試方式腻暮。
4.2.6
內(nèi)存測試通過后彤守,系統(tǒng)BIOS將開始檢測系統(tǒng)中安裝的一些標(biāo)準(zhǔn)硬件設(shè)備(硬盤毯侦、CD-ROM、串口具垫、并口和軟驅(qū)等)侈离,較新版本的系統(tǒng)BIOS在這一過程中還要自動檢測和設(shè)置內(nèi)存的定時參數(shù)、硬盤參數(shù)和訪問模式筝蚕。
4.2.7
標(biāo)準(zhǔn)設(shè)備檢測完畢后卦碾,系統(tǒng)BIOS內(nèi)部支持即插即用的代碼開始檢測和配置系統(tǒng)中安裝的即插即用設(shè)備。每找到一個設(shè)備起宽,系統(tǒng)BIOS都會在屏幕上顯示設(shè)備的名稱洲胖、型號等,同時為該設(shè)備分配中斷坯沪、DMA通道和I/O端口等資源绿映。
4.2.8
所有硬件檢測配置完畢,多數(shù)系統(tǒng)BIOS會清屏并在屏幕上方顯示一個表格腐晾,概略列出了系統(tǒng)中安裝的各種標(biāo)準(zhǔn)硬件設(shè)備以及他們使用的資源和一些相關(guān)工作參數(shù)叉弦。
4.2.9
接著系統(tǒng)BIOS將更新ESCD(Extended System Configuration Data,擴(kuò)展系統(tǒng)配置數(shù)據(jù))。ESCD是系統(tǒng)BIOS用來與操作系統(tǒng)交換硬件配置信息的一種手段藻糖,這些數(shù)據(jù)被存放在CMOS(一小塊特殊的RAM淹冰,由主板上的電池來供電)之中。通常ESCD數(shù)據(jù)只在系統(tǒng)硬件配置發(fā)生改變后才會更新巨柒,所以不是每次啟動機(jī)器時都能夠看到“Update?ESCD…?Success”這樣的信息樱拴。不過,某些主板的系統(tǒng)BIOS在保存ESCD數(shù)據(jù)時使用了與Windows?9x不相同的數(shù)據(jù)格式洋满,于是Windows?9x在它自己的啟動過程中會把ESCD數(shù)據(jù)修改成自己的格式疹鳄。但在下一次啟動機(jī)器時,即使硬件配置沒有發(fā)生改變芦岂,系統(tǒng)BIOS也會把ESCD的數(shù)據(jù)格式改回來。如此循環(huán)垫蛆,將會導(dǎo)致在每次啟動機(jī)器時禽最,系統(tǒng)BIOS都要更新一遍ESCD,這就是為什么有些機(jī)器在每次啟動時都會顯示出相關(guān)信息的原因袱饭。
4.2.10
ESCD更新完畢后川无,系統(tǒng)BIOS的啟動代碼將進(jìn)行它的最后一項(xiàng)工作:即根據(jù)用戶指定的啟動順序從軟盤、硬盤或光驅(qū)啟動MBR虑乖。系統(tǒng)BIOS將讀取磁盤上的主引導(dǎo)記錄MBR懦趋,并放入指定位置(0x7c00)的內(nèi)存。然后BIOS把控制權(quán)交給MBR疹味。主引導(dǎo)記錄由兩部分組成:代碼和分區(qū)表仅叫。MBR代碼首先檢測其他代碼(如查看是否有"55AA"有效標(biāo)記)帜篇,然后從分區(qū)表中找到第一個活動分區(qū),讀取并執(zhí)行這個活動分區(qū)的分區(qū)引導(dǎo)記錄诫咱。
以上就是計算機(jī)在打開電源開關(guān)進(jìn)行冷啟動時要完成的各種初始化工作笙隙。如果從Windows中選擇重新啟動計算機(jī)來進(jìn)行熱啟動挥唠,那么post將被跳過仇穗,直接從第三步開始薪韩,另外第五步的檢測CPU和內(nèi)存測試也不會進(jìn)行茉盏。
二株憾、BMC
在介紹BMC之前需要了解一個概念筷黔,即平臺管理(platform management)草巡。平臺管理表示的是一系列的監(jiān)視和控制功能唯卖,操作的對象是系統(tǒng)硬件憎夷。比如通過監(jiān)視系統(tǒng)的溫度莽鸿,電壓,風(fēng)扇岭接、電源等等富拗,并做相應(yīng)的調(diào)節(jié)工作,以保證系統(tǒng)處于健康的狀態(tài)鸣戴。當(dāng)然如果系統(tǒng)真的不正常了啃沪,也可以通過復(fù)位的方式來重新啟動系統(tǒng)。同時平臺管理還負(fù)責(zé)記錄各種硬件的信息和日志記錄窄锅,用于提示用戶和后續(xù)問題的定位创千。以上的這些功能可以集成到一個控制器上來實(shí)現(xiàn),這個控制器被稱為基板管理控制器(Baseboard Manager Controller入偷,簡稱BMC)追驴。
BMC是一個獨(dú)立的系統(tǒng),它不依賴與系統(tǒng)上的其它硬件(比如CPU疏之、內(nèi)存等)殿雪,也不依賴與BIOS、OS等(但是BMC可以與BIOS和OS交互锋爪,這樣可以起到更好的平臺管理作用丙曙,OS下有系統(tǒng)管理軟件可以與BMC協(xié)同工作以達(dá)到更好的管理效果)。一般我們的電腦不會帶BMC其骄,因?yàn)橛锰幉淮罂髁恍囟取㈦娫吹鹊墓芾碚珻PU來控制就夠了索抓。但是對于系統(tǒng)要求高的設(shè)備,比如服務(wù)器,就會用到BMC逼肯。當(dāng)然因?yàn)锽MC是一個獨(dú)立的系統(tǒng)耸黑,對于某些嵌入式設(shè)備,可能不需要其它處理器汉矿,光一個BMC就能完成工作崎坊。說到底BMC本身也是一個帶處理器(一般都是ARM處理器)的小系統(tǒng),單獨(dú)用來處理某些工作也完全是可以的洲拇。
BMC全稱BaseboardManagement Controller奈揍,通俗來講,BMC是整個服務(wù)器單板的大管家赋续。從一款服務(wù)器上電時刻男翰,它的所有部件都?xì)wBMC來負(fù)責(zé)和管理。BMC是一個獨(dú)立于服務(wù)器系統(tǒng)的小型操作系統(tǒng)纽乱。作用是方便服務(wù)器遠(yuǎn)程管理蛾绎、監(jiān)控、安裝鸦列、重啟等租冠。 BMC是一個集成在主板上的芯片(也有通過PCIE等各種形式插在主板上),對外表現(xiàn)形式只是一個標(biāo)準(zhǔn)的RJ45網(wǎng)口薯嗤,擁有獨(dú)立的IP顽爹。普通維護(hù)只需使用瀏覽器訪問IP:PORT登錄管理界面,服務(wù)器集群一般使用BMC指令進(jìn)行大規(guī)模無人值守操作骆姐。一般服務(wù)器BMC網(wǎng)口是獨(dú)立的镜粤,仔細(xì)看印有BMC字樣,也有小型服務(wù)器BMC網(wǎng)口和通信網(wǎng)口是二合一的玻褪。
BMC是一款服務(wù)器AC上電起始即運(yùn)行的軟件肉渴,運(yùn)行在服務(wù)器上一款單獨(dú)的ARM芯片上,這個ARM芯片就是BMC軟件的CPU带射,同時會芯片外圍會配置自己的RAM同规、Flash等器件,只要服務(wù)器插上電源線窟社,BMC軟件便快速運(yùn)行起來捻浦,此時有可能我們通常意義上的x86服務(wù)器側(cè)的OS都還沒有安裝呢。BMC是整個服務(wù)器的大管家桥爽,主要用于服務(wù)器各個部件(CPU、內(nèi)存昧识、硬盤钠四、風(fēng)扇、機(jī)框等)的溫度、電壓等健康狀態(tài)進(jìn)行檢測缀去,同時根據(jù)各個溫度采集點(diǎn)情況實(shí)時調(diào)整風(fēng)扇轉(zhuǎn)速保證服務(wù)器不產(chǎn)生過溫侣灶、而且控制總體功耗又不能過高,如果單板部件出現(xiàn)任何異常則通過SNMP協(xié)議缕碎、SMTP協(xié)議褥影、Redfish協(xié)議等多種業(yè)界通用規(guī)范講信息及時上報給上層網(wǎng)管,以便運(yùn)維人員及時處理咏雌,保證業(yè)務(wù)無損凡怎。
此處介紹下帶外管理和帶內(nèi)的概念,通常情況下x86側(cè)執(zhí)行的運(yùn)維管理動作被稱作帶內(nèi)的方式赊抖,而BMC是脫離x86側(cè)獨(dú)立運(yùn)行的服務(wù)器管理軟件统倒,被稱作帶外管理軟件。 BMC可以采集任何服務(wù)器上的除x86側(cè)運(yùn)行的私有業(yè)務(wù)本身之外的任何信息氛雪,但是請注意房匆,現(xiàn)在業(yè)界的BMC帶外管理軟件有各種解決方案,可以采集到任何你想要的信息报亩。因?yàn)榧词箯膸鉄o法獲取的信息浴鸿,當(dāng)前業(yè)界也存在帶外和帶內(nèi)監(jiān)控結(jié)合、帶外統(tǒng)一提供接口的方案弦追,可以實(shí)現(xiàn)通過BMC獲取任何想要獲得信息岳链。
從功能上來講,BMC主要用于采集單個服務(wù)器上各種信息骗卜,同時提供給上層運(yùn)維網(wǎng)管軟件宠页。主要有兩種手段,第一種BMC會提供各種各樣的接口供上層網(wǎng)管查詢寇仓,如web举户、命令行等人機(jī)接口、SNMP遍烦、IPMI俭嘁、Restful等機(jī)機(jī)接口;第二種是主動上報服猪,當(dāng)檢測到有故障產(chǎn)生時供填,BMC可以通過SNMP trap消息、SMTP 郵件消息罢猪、Redfish http json報文等手段上報給上層網(wǎng)管軟件的服務(wù)端近她,以便運(yùn)維人員及時識別處理故障。一般情況下膳帕,BMC軟件上報的消息中都會明確的指明具體是哪個部件產(chǎn)生了故障粘捎、處理建議是怎樣的等等薇缅。
SNMP:簡單網(wǎng)絡(luò)管理協(xié)議(SNMP) 是專門設(shè)計用于在 IP 網(wǎng)絡(luò)管理網(wǎng)絡(luò)節(jié)點(diǎn)(服務(wù)器、工作站攒磨、路由器泳桦、交換機(jī)及HUBS等)的一種標(biāo)準(zhǔn)協(xié)議,它是一種應(yīng)用層協(xié)議娩缰。SNMP 使網(wǎng)絡(luò)管理員能夠管理網(wǎng)絡(luò)效能灸撰,發(fā)現(xiàn)并解決網(wǎng)絡(luò)問題以及規(guī)劃網(wǎng)絡(luò)增長。通過 SNMP 接收隨機(jī)消息(及事件報告)網(wǎng)絡(luò)管理系統(tǒng)獲知網(wǎng)絡(luò)出現(xiàn)問題拼坎。
RESTFUL:一種網(wǎng)絡(luò)應(yīng)用程序的設(shè)計風(fēng)格和開發(fā)方式浮毯,基于HTTP,可以使用XML格式定義或JSON格式定義演痒。RESTFUL適用于移動互聯(lián)網(wǎng)廠商作為業(yè)務(wù)使能接口的場景亲轨,實(shí)現(xiàn)第三方OTT調(diào)用移動網(wǎng)絡(luò)資源的功能,動作類型為新增鸟顺、變更惦蚊、刪除所調(diào)用資源。
BMC通過不同的接口與系統(tǒng)中的其它組件連接讯嫂。在**IPMB(Intelligent Platform Management Bus)**總線上連接著各個管理控制器蹦锋,分別執(zhí)行不同功能。IPMB總線上還連接著一些I2C器件欧芽,用來作為傳感器的接口莉掂,讓系統(tǒng)管理軟件能夠通過IPMB來讀取傳感器的數(shù)據(jù)。同時千扔,這些傳感器的具體配置信息憎妙,如告警門限、事件觸發(fā)是否允許等配置都保存在一組名為SDR(Sensor Data Record)的數(shù)據(jù)里面曲楚。而傳感器產(chǎn)生的告警事件則保存在一組叫做SEL(Sensor Event Log)的數(shù)據(jù)里面厘唾。在IPMB總線上,連接著一個ICMB(Intelligent Chassis Management Bus)橋龙誊,通過ICMB可以和遠(yuǎn)程的另一個管理平臺通信抚垃。此外,在IPMB總線上趟大,還可以外接其他的用戶板鹤树,用來擴(kuò)展IPMI管理平臺的功能。
BMC芯片就相當(dāng)于計算機(jī)中的中央處理器逊朽,通過BMC芯片上一對SMBus接口連接網(wǎng)絡(luò)罕伯,用戶可通過網(wǎng)絡(luò)訪問實(shí)現(xiàn)對遠(yuǎn)程服務(wù)器接管的帶外管理(Out-of-band)功能,例如遠(yuǎn)程接管服務(wù)器(Pre-OS)叽讳,在客戶端實(shí)現(xiàn)對遠(yuǎn)程服務(wù)器的完全接管追他;通過RS-232接口連接Modem熊昌,在遠(yuǎn)程服務(wù)器宕機(jī)情況下,用戶可以通過撥號訪問獲取SDR湿酸、SEL數(shù)據(jù),分析診斷故障原因灭美;BMC通過IPMB接口訪問模組風(fēng)扇背板推溃、電源背板等上的SMC,實(shí)現(xiàn)對各種背板的溫度電壓風(fēng)扇轉(zhuǎn)速等關(guān)鍵參數(shù)管理届腐;BMC通過系統(tǒng)接口(多用SMIC:Server Management Interface Chip)铁坎,實(shí)現(xiàn)IPMI消息傳輸機(jī)制,控制LCD顯示和實(shí)現(xiàn)上層軟件與底層F/W通信犁苏,實(shí)現(xiàn)告警硬萍、數(shù)據(jù)采集。SDR(傳感器數(shù)據(jù)存儲庫)围详、SEL系統(tǒng)事件日志)朴乖、FRU(Field Replacement Unit)物理實(shí)體可以是做在芯片內(nèi)的存儲體,也可以是外掛的E2PROM助赞。
在x86側(cè)OS上部署一套自研的Agent买羞,也可以采集到我想要的各種信息,對于少量與硬件強(qiáng)相關(guān)的信息雹食,我在帶內(nèi)OS上通過BMC接口查詢補(bǔ)全畜普,這種帶內(nèi)結(jié)合帶外管理的方式不是也挺好嗎?
全帶外管理群叶,是當(dāng)前各大服務(wù)器廠商推出的單板運(yùn)維管理的解決方案吃挑。各大服務(wù)器廠商當(dāng)前均自研統(tǒng)一的帶內(nèi)Agent信息補(bǔ)全工具,最終匯集信息至BMC側(cè)統(tǒng)一對外提供接口街立。理論上來說舶衬,可以滿足單板運(yùn)維管理的訴求。對于服務(wù)器用戶來說几晤,這是零成本的解決方案约炎,強(qiáng)烈建議采用,何必自己再研發(fā)一套增加成本呢蟹瘾?
不過這里既然叫做BMC圾浅,那么總的來說重點(diǎn)還是在平臺管理,所以本文主要說的是服務(wù)器中的BMC憾朴。
BMC在系統(tǒng)中的位置大致如下圖所示:
BMC通過不同的接口與系統(tǒng)中的其它組件連接狸捕。LPC、I2C众雷、SMBUS灸拍,Serial等做祝,這些都是比較基本的接口,而IPMI鸡岗,它是與BMC匹配的總線混槐,所有的BMC都需要實(shí)現(xiàn)這種接口,這里需要特別的介紹轩性。
IPMI
IPMI的全稱是Intelligent Platform Management Interface声登,智能平臺管理接口。IPMI規(guī)定了很多的東西揣苏,BMC是其中最重要的一個部分悯嗓,此外還有一些”衛(wèi)星“控制器通過IPMB與BMC相連,這些”衛(wèi)星“控制器一般控制特定的設(shè)備卸察。
IPMB全稱Intelligent Platform Management Bus脯厨,是一種基于I2C的串行總線,它用于BMC與”衛(wèi)星“控制器的通信坑质,其上傳遞的是IPMI命令合武。
下面的圖描述了與IPMI有關(guān)的各個模塊:
智能平臺管理接口 (IPMI) 是一種開放標(biāo)準(zhǔn)的硬件管理接口規(guī)格,定義了嵌入式管理子系統(tǒng)進(jìn)行通信的特定方法洪乍。IPMI 信息通過基板管理控制器 (BMC)(位于 IPMI 規(guī)格的硬件組件上)進(jìn)行交流眯杏。使用低級硬件智能管理而不使用操作系統(tǒng)進(jìn)行管理,具有兩個主要優(yōu)點(diǎn): 首先壳澳,此配置允許進(jìn)行帶外服務(wù)器管理岂贩;其次,操作系統(tǒng)不必負(fù)擔(dān)傳輸系統(tǒng)狀態(tài)數(shù)據(jù)的任務(wù)巷波。用戶可以利用IPMI監(jiān)視服務(wù)器的物理健康特征萎津,如溫度、電壓抹镊、風(fēng)扇工作狀態(tài)锉屈、電源狀態(tài)等。
IPMI的核心是一個專用芯片/控制器(叫做服務(wù)器處理器或基板管理控制器(BMC))垮耳,其并不依賴于服務(wù)器的處理器颈渊、BIOS或操作系統(tǒng)來工作,是一個單獨(dú)在系統(tǒng)內(nèi)運(yùn)行的無代理管理子系統(tǒng)终佛,只要有BMC與IPMI固件其便可開始工作俊嗽,而BMC通常是一個安裝在服務(wù)器主板上的獨(dú)立的板卡。IPMI良好的自治特性便克服了以往基于操作系統(tǒng)的管理方式所受的限制铃彰,例如操作系統(tǒng)不響應(yīng)或未加載的情況下其仍然可以進(jìn)行開關(guān)機(jī)绍豁、信息提取等操作。
在工作時牙捉,所有的IPMI功能都是向BMC發(fā)送命令來完成的竹揍,BMC接收并在系統(tǒng)事件日志中記錄事件消息敬飒,維護(hù)描述系統(tǒng)中傳感器情況的傳感器數(shù)據(jù)記錄。
一般來說芬位,BMC具有以下功能:
1.通過系統(tǒng)的串行端口進(jìn)行訪問
2.故障日志記錄和 SNMP 警報發(fā)送
3.訪問系統(tǒng)事件日志 (System Event Log ,SEL) 和傳感器狀況
4.控制包括開機(jī)和關(guān)機(jī)
5.獨(dú)立于系統(tǒng)電源或工作狀態(tài)的支持
6.用于系統(tǒng)設(shè)置无拗、基于文本公用程序和操作系統(tǒng)控制臺的文本控制臺重定向
而通過IPMI ,用戶可以主動監(jiān)測組件的狀況昧碉,以確保不超出預(yù)置閾值蓝纲,例如服務(wù)器溫度。這樣晌纫,通過避免不定期的斷電,協(xié)助維護(hù)了 IT 資源的運(yùn)行時間永丝。 IPMI的預(yù)告故障能力也有助于 IT 周期的管理锹漱。通過檢查系統(tǒng)事件日志 (SEL),可以更輕松的預(yù)先判定故障組件慕嚷。只要將服務(wù)器接入網(wǎng)絡(luò)并且沒有斷開服務(wù)器的電源哥牍,不管服務(wù)器的處于何種狀態(tài)(開機(jī)、關(guān)機(jī)喝检、重啟)嗅辣,都可以允許用戶通過網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程管理。
下面簡單的介紹各個部分挠说。
MOTHERBOARD
首先是圖中的左下角部分澡谭,名稱寫著Mother Board。
通常损俭,在服務(wù)器中蛙奖,這一部分是主角,它包含了CPU杆兵,PCH等主要的部件雁仲。它連接除了數(shù)個組件:網(wǎng)卡,串口和IPMI總線琐脏,其實(shí)還有一個部分在圖中最上面中間的PCI總線攒砖。
網(wǎng)卡:服務(wù)器需要用到網(wǎng)卡,重點(diǎn)其實(shí)在于BMC到網(wǎng)卡的連接日裙,后續(xù)會介紹吹艇。
串口:串口用于輸出服務(wù)器的調(diào)試信息,值得注意的是Serial Port Sharing阅签,它使得服務(wù)器的串口輸出可以直接輸出掐暮,也可以輸出到BMC。至于為什么要輸出到BMC政钟,這里其實(shí)需要注意的是一種常用的場景路克。服務(wù)器位于機(jī)房樟结,而工作人員通常不會直接在機(jī)房操作,而是通過網(wǎng)絡(luò)(這也是為什么BMC會連接網(wǎng)卡的原因)進(jìn)行操作精算,這個時候過需要獲取服務(wù)器的串口信息瓢宦,就不方便直接去機(jī)房,這個時候通過BMC來獲取服務(wù)器串口信息就是一個好主意灰羽。
IPMI總線:這是BMC與服務(wù)器通信并進(jìn)行控制的主體驮履,當(dāng)然少不了。
PCI總線:這個部分的作用跟串口很像廉嚼。服務(wù)器除了輸出串口信息玫镐,當(dāng)然還需要輸出圖形界面之類的東西。從服務(wù)器端來看怠噪,它通過PCI連接的就是一個顯卡恐似,通過它來輸出顯示。
IPMB
再來到圖中的右上角傍念,其中描述的是通過IPMB連接的設(shè)備矫夷。
這些設(shè)備跟BMC類似,也是用來進(jìn)行管理芯片憋槐。它們是對BMC的補(bǔ)充双藕,從而擴(kuò)展BMC的功能。
Non-volatile Storage
我們知道BMC其實(shí)是一個獨(dú)立的芯片阳仔,那么它肯定也需要運(yùn)行系統(tǒng)忧陪。通過BMC里面運(yùn)行的是一個類Unix系統(tǒng),而該系統(tǒng)就存放在Non-volatile Storage中近范,通常就是SPI Flash里面赤嚼。跟一般的存儲介質(zhì)沒有本質(zhì)的區(qū)別。除了系統(tǒng)本身之后顺又,還包含一系列BMC會存放的信息更卒。比如從服務(wù)器上面獲取到的串口信息;系統(tǒng)本身的報警信息稚照;FRU信息等蹂空。
Sensors & Control Circuitry
這一部分雖然圖中只占很小的一部分,但卻是BMC最基本的功能:獲取信息和控制環(huán)境果录。BMC會通過I2C/PECI等總線去獲取設(shè)備的溫度上枕,然后根據(jù)預(yù)先設(shè)定的策略去調(diào)整溫度。調(diào)整的方式兩種弱恒,一種就是調(diào)整風(fēng)扇辨萍,屬于主動降溫;另一種是調(diào)整供電,比如CPU的P狀態(tài)锈玉,或者關(guān)閉多余的硬盤等爪飘,屬于被動降溫。
FRU
FRU的全稱是Field Replaceable Unit拉背。
從圖中也可以看出师崎,類似內(nèi)存條,CPU等就屬于FRU椅棺,它們在服務(wù)器中通常是可以更換的犁罩。
BMC會檢測這些設(shè)備并保存相關(guān)的信息。
當(dāng)這些設(shè)備的在位情況發(fā)生變化時两疚,BMC會發(fā)生相關(guān)的告警床估。
三、PSoC
可編程化系統(tǒng)單芯片(PSoC)诱渤,是一種可編程化的混合訊號陣列架構(gòu)顷窒,由一個芯片內(nèi)建的微控制器(MCU)所控制,整合可組態(tài)的類比與數(shù)位電路源哩,內(nèi)含UART、定時器鸦做、放大器(amplifier)励烦、比較器、數(shù)位類比轉(zhuǎn)換器(ADC)泼诱、脈波寬度調(diào)變(PWM)坛掠、濾波器(Filter)、以及SPI治筒、GPIO屉栓、I2C等元件數(shù)十種元件,協(xié)助客戶節(jié)省研發(fā)時間耸袜。
簡介
可編程化系統(tǒng)單芯片(PSoC)友多,是一種可編程化的混合訊號陣列架構(gòu),由一個芯片內(nèi)建的微控制器(MCU)所控制堤框,整合可組態(tài)的類比與數(shù)位電路域滥,內(nèi)含UART、定時器蜈抓、放大器(amplifier)启绰、比較器、數(shù)位類比轉(zhuǎn)換器(ADC)沟使、脈波寬度調(diào)變(PWM)委可、濾波器(Filter)、以及SPI腊嗡、GPIO着倾、I2C等元件數(shù)十種元件拾酝,協(xié)助客戶節(jié)省研發(fā)時間。
Altera屈呕、Atmel微宝、Xilinx、Lattice皆有推出PSoC產(chǎn)品虎眨。實(shí)現(xiàn)PSoC有兩種方法:利用FPGA/CPLD蟋软;另一是在ASIC中加入可編程模組。
PSOC 固件主要功能:
SATA嗽桩、SAS硬盤LED控制岳守;
BMC獲取PSOC版本信息;
BMC通過PSOC獲取硬盤狀態(tài)碌冶;
PSOC 4是一個可以重配置和擴(kuò)展的平臺架構(gòu)湿痢,是一個包含ARM Cortex-M0 CPU的可編程嵌入式系統(tǒng)控制器。通過靈活自動布線資源扑庞,它將可編程及可重新配置的模擬模塊與數(shù)字模塊相結(jié)合譬重。基于此平臺的PSOC 4200-L產(chǎn)品系列組合了具有數(shù)字可編程邏輯罐氨、可編程模擬臀规、可編程互聯(lián)和片外存儲器擴(kuò)展安全性的微控制器、高性能的模數(shù)轉(zhuǎn)換栅隐、支持比較器模式的運(yùn)算放大器以及標(biāo)準(zhǔn)通信和定時外設(shè)塔嬉。針對新應(yīng)用和設(shè)計方面的要求。
PSOC 4200-L產(chǎn)品與PSOC 4平臺系列產(chǎn)品完全向上兼容租悄〗骶浚可編程模擬和數(shù)字子系統(tǒng)支持靈活、現(xiàn)場調(diào)試的設(shè)計泣棋。
BMC更新PSOC固件
PSOC的固件可以通過BMC的WEBUI更新胶哲,PSOC固件在線更新文件是‘cyacd’格式的文件,BMC不能更新PSOC的hex文件潭辈。PSOC的hex格式的固件文件需要通過燒錄器在工廠離線燒錄或使用賽普拉斯提供的工具燒錄纪吮。
BMC WEBUI更新PSOC路徑:維護(hù)->固件更新->更新PSOC固件
當(dāng)用戶在BMC的WEBUI更新PSOC,BMC發(fā)送更新命令到PSOC萎胰,PSOC進(jìn)入在線更新模式碾盟,然后BMC將PSOC的更新文件傳輸給PSOC,在PSOC內(nèi)部完成更新技竟。
BMC 發(fā)送I2C命令: 0x01 0x02
PSOC返回數(shù)據(jù):0x01/0x00
當(dāng)PSOC返回0x01時冰肴,說明PSOC進(jìn)入了在線更新模式,然后BMC和PSOC交互完成固件的傳輸,PSOC內(nèi)部再完成固件更新動作熙尉。如果要確定升級的固件是否正確联逻,可以在BMC的WEBUI查看當(dāng)前PSOC 的版本號。
四检痰、CPLD
CPLD采用CMOS EPROM包归、EEPROM、快閃存儲器和SRAM等編程技術(shù)铅歼,從而構(gòu)成了高密度公壤、高速度和低功耗的可編程邏輯器件。
CPLD主要由邏輯塊椎椰、可編程互連通道和I/O塊三部分構(gòu)成厦幅。
CPLD中的邏輯塊類似于一個小規(guī)模PLD,通常一個邏輯塊包含4~20個宏單元慨飘,每個宏單元一般由乘積項(xiàng)陣列确憨、乘積項(xiàng)分配和可編程寄存器構(gòu)成。每個宏單元有多種配置方式瓤的,各宏單元也可級聯(lián)使用休弃, 因此可實(shí)現(xiàn)較復(fù)雜組合邏輯和時序邏輯功能。對集成度較高的CPLD圈膏,通常還提供了帶片內(nèi)RAM/ROM的嵌入陣列塊塔猾。
可編程互連通道主要提供邏輯塊、宏單元本辐、輸入/輸出引腳間的互連網(wǎng)絡(luò)。輸入/輸出塊(I/O塊)提供內(nèi)部邏輯到器件I/O引腳之間的接口医增。
邏輯規(guī)模較大的CPLD一般還內(nèi)帶JTAG邊界掃描測試電路慎皱,可對已編程的高密度可編程邏輯器件做全面徹底的系統(tǒng)測試,此外也可通過JTAG接口進(jìn)行在系統(tǒng)編程叶骨。
由于集成工藝茫多、集成規(guī)模和制造廠家的不同,各種CPLD分區(qū)結(jié)構(gòu)忽刽、邏輯單元等也有較大的差別天揖。
應(yīng)用
基于SRAM(靜態(tài)隨機(jī)存儲器)的可重配置PLD(可編程邏輯器件)的出現(xiàn),為系統(tǒng)設(shè)計者動態(tài)改變運(yùn)行電路中PLD的邏輯功能創(chuàng)造了條件跪帝。PLD使用SRAM單元來保存配置數(shù)據(jù)今膊。這些配置數(shù)據(jù)決定了PLD內(nèi)部的互連關(guān)系和邏輯功能,改變這些數(shù)據(jù)伞剑,也就改變了器件的邏輯功能斑唬。由于SRAM的數(shù)據(jù)是易失的,因此這些數(shù)據(jù)必須保存在PLD器件以外的EPROM、EEPROM或FLASH ROM等非易失存儲器內(nèi)恕刘,以便使系統(tǒng)在適當(dāng)?shù)臅r候?qū)⑵湎螺d到PLD的SRAM單元中缤谎,從而實(shí)現(xiàn)在電路可重配置ICR(In-Circuit Reconfigurability)
————————————————
版權(quán)聲明:本文為CSDN博主「烏托邦BB」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議褐着,轉(zhuǎn)載請附上原文出處鏈接及本聲明坷澡。
原文鏈接:https://blog.csdn.net/sinat_42759524/article/details/103971946