91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

系統(tǒng)芯片設(shè)計(jì)—驅(qū)動(dòng)程序(Driver)

倩倩 ? 來源:Semi Connect ? 作者:Semi Connect ? 2022-08-12 14:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

驅(qū)動(dòng)程序(Driver)是一種可以使應(yīng)用軟件和硬件通信的特殊底層軟件,其功能是為上層軟件提供調(diào)用接口,控制硬件設(shè)備的工作。固定是指被硬件廠商固化在硬件內(nèi)部的驅(qū)動(dòng)程序。

系統(tǒng)芯片軟硬件構(gòu)架自下而上可分為硬件設(shè)備,硬件驅(qū)動(dòng)和上層軟件,其中硬件驅(qū)動(dòng)又可分為硬件依賴層(Hardware Dependent Layer)和硬件抽象層(Hardware Abstraction Layer),如圖5-98(a)所示。作為系統(tǒng)架構(gòu)的重要組成部分,硬件驅(qū)動(dòng)主要完成以下的功能:初始化和釋放設(shè)備;讀取上層軟件傳送給硬件設(shè)備的請(qǐng)求數(shù)據(jù)和回送硬件設(shè)備的響應(yīng)數(shù)據(jù);檢測錯(cuò)誤和處理中斷。

fe1dad14-19f6-11ed-ba43-dac502259ad0.jpg

由于硬件驅(qū)動(dòng)程序與硬件設(shè)備緊密相關(guān),硬件驅(qū)動(dòng)程序通常由系統(tǒng)芯片廠商提供。硬件廠商根據(jù)硬件特性編寫硬件驅(qū)動(dòng)程序。硬件驅(qū)動(dòng)程序所需實(shí)現(xiàn)的接口和功能由硬件特性決定。從系統(tǒng)芯片軟件框架的角度看,硬件驅(qū)動(dòng)程序向下控制硬件設(shè)備運(yùn)行,向上提供標(biāo)準(zhǔn)的調(diào)用接口方便上層軟件使用。對(duì)于上層軟件,硬件驅(qū)動(dòng)程序是一個(gè)個(gè)獨(dú)立的“黑盒子”,其功能是使特定硬件以標(biāo)準(zhǔn)化應(yīng)用接口的方式對(duì)上層軟件提供服務(wù),隱藏設(shè)備的工作過程中的細(xì)節(jié)操作。只要保證驅(qū)動(dòng)層調(diào)用接口相同,軟件設(shè)計(jì)者就可以讓應(yīng)用程序在不同的硬件上運(yùn)行,硬件設(shè)計(jì)者可以不斷升級(jí)硬件而不影響舊軟件在新設(shè)備上運(yùn)行。當(dāng)上層軟件需要使用某個(gè)硬件功能,上層軟件會(huì)先發(fā)送相應(yīng)指令到外設(shè)驅(qū)動(dòng)程序,外設(shè)驅(qū)動(dòng)程序接收指令后,將其翻譯成外設(shè)控制器能讀懂的電子信號(hào)命令。

操作系統(tǒng)中,硬件依賴層通常由硬件廠商以固件的形式提供,而硬件抽象層被集成到操作系統(tǒng)中,由操作系統(tǒng)廠商以標(biāo)準(zhǔn)設(shè)備驅(qū)動(dòng)的形式提供,如圖5-98(b)所示。目前,市場占有率領(lǐng)先的Windows和Linux操作系統(tǒng)內(nèi)核中均集成了硬件抽象層。然而,不同操作系統(tǒng)的設(shè)備驅(qū)動(dòng)上層接口不一致,且不同設(shè)備廠商的固件接口也存在差異,導(dǎo)致軟件開發(fā)者無法隨意選擇設(shè)備廠商。未來,標(biāo)準(zhǔn)設(shè)備驅(qū)動(dòng)接口與固件接口將進(jìn)一步標(biāo)準(zhǔn)化,使得軟件開發(fā)者可以在不同設(shè)備廠商的設(shè)備間無縫切換。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制器
    +關(guān)注

    關(guān)注

    114

    文章

    17787

    瀏覽量

    193079
  • 驅(qū)動(dòng)程序
    +關(guān)注

    關(guān)注

    19

    文章

    869

    瀏覽量

    50456
  • 系統(tǒng)芯片
    +關(guān)注

    關(guān)注

    0

    文章

    39

    瀏覽量

    18579

原文標(biāo)題:系統(tǒng)芯片設(shè)計(jì)—驅(qū)動(dòng)程序

文章出處:【微信號(hào):Semi Connect,微信公眾號(hào):Semi Connect】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【「Linux 設(shè)備驅(qū)動(dòng)開發(fā)(第 2 版)」閱讀體驗(yàn)】Linux內(nèi)核平臺(tái)抽線共和設(shè)備驅(qū)動(dòng)程序

    device *dev); struct driver_private *p; }; device_driver結(jié)構(gòu)體是任何設(shè)備驅(qū)動(dòng)程序的基本元素 設(shè)備聲明——填充設(shè)備 struct
    發(fā)表于 02-03 21:57

    哪些Windows作系統(tǒng)支持Nu-Link-Me的VCOM功能?是否需要安裝任何其他驅(qū)動(dòng)程序?

    哪些Windows作系統(tǒng)支持Nu-Link-Me的VCOM功能?是否需要安裝任何其他驅(qū)動(dòng)程序
    發(fā)表于 08-26 06:06

    摩爾線程發(fā)布圖形顯卡驅(qū)動(dòng)程序v310.120

    8月20日,摩爾線程發(fā)布版本號(hào)為v310.120的圖形顯卡驅(qū)動(dòng)程序。本次更新帶來多項(xiàng)重大技術(shù)升級(jí):新增對(duì)Windows 11 24H2版本的正式支持,WDDM驅(qū)動(dòng)同步升級(jí)至3.2版本。同時(shí),新驅(qū)動(dòng)
    的頭像 發(fā)表于 08-21 16:07 ?1371次閱讀

    為FreeRTOS增加新的設(shè)備驅(qū)動(dòng)程序

    如果你正在使用FreeRTOS構(gòu)建嵌入式系統(tǒng),并且考慮添加新的設(shè)備驅(qū)動(dòng)程序,那么這篇文章很適合你。高效的設(shè)備集成不僅僅是讓設(shè)備功能正常運(yùn)行——更關(guān)乎模塊化、可靠性和安全性。
    的頭像 發(fā)表于 08-06 15:44 ?981次閱讀
    為FreeRTOS增加新的設(shè)備<b class='flag-5'>驅(qū)動(dòng)程序</b>

    zephyr設(shè)備驅(qū)動(dòng)程序模型

    ? ? 1:Zephyr 內(nèi)核支持多種設(shè)備驅(qū)動(dòng)程序。驅(qū)動(dòng)程序是否可用取決于board 和驅(qū)動(dòng)程序。 Zephyr 設(shè)備模型為配置作為系統(tǒng)一部分的驅(qū)動(dòng)
    的頭像 發(fā)表于 07-29 10:34 ?690次閱讀
    zephyr設(shè)備<b class='flag-5'>驅(qū)動(dòng)程序</b>模型

    如何安裝 CY7C65213 的驅(qū)動(dòng)程序?

    無法連接 teraterm。 我嘗試安裝 CypressDriverInstaller_1,但是驅(qū)動(dòng)程序沒有更新。 你能指導(dǎo)如何安裝 CY7C65213 的驅(qū)動(dòng)程序嗎?
    發(fā)表于 05-27 07:58

    如何處理FX3 USB驅(qū)動(dòng)程序與MFI相關(guān)接口的安裝?

    USB 電纜將設(shè)備(沒有 PMODE 的 SPI 引腳)連接到 PC(USB 2.0)并為 WestBridge 設(shè)備安裝驅(qū)動(dòng)程序時(shí),在斷開設(shè)備與 PC 的連接并重新連接后,驅(qū)動(dòng)程序會(huì)在幾秒鐘后從
    發(fā)表于 05-23 07:54

    CY4500 EZ-PD協(xié)議分析儀缺少驅(qū)動(dòng)程序怎么解決?

    Win10 CY4500 Analyzer 4.0.0 安裝程序似乎不包含硬件驅(qū)動(dòng)程序。固件更新實(shí)用程序或 CY4500 產(chǎn)品頁面上的支持部分也是如此。顯然沒有驅(qū)動(dòng)程序
    發(fā)表于 05-23 06:43

    如何在Android設(shè)備上安裝Cyusb3014芯片驅(qū)動(dòng)

    1.如何在Android設(shè)備上安裝Cyusb3014芯片驅(qū)動(dòng)? 我們?cè)?Windows 上有 FX3 驅(qū)動(dòng)程序 SDK。 2.如何在Android系統(tǒng)上下載固件到
    發(fā)表于 05-15 07:23

    是否有辦法用標(biāo)準(zhǔn)Windows驅(qū)動(dòng)程序控制GPIO嗎?

    關(guān)于 CY7C65213-28PVXI 的控制, 我正在考慮更改 VenderID 并使用標(biāo)準(zhǔn) Windows 驅(qū)動(dòng)程序對(duì)其進(jìn)行控制。 但是,使用標(biāo)準(zhǔn) Windows 驅(qū)動(dòng)程序存在一個(gè)
    發(fā)表于 05-08 07:05

    USB串行Windows驅(qū)動(dòng)程序安裝程序無法下載是怎么回事?

    USB 串行 Windows 驅(qū)動(dòng)程序安裝程序無法下載
    發(fā)表于 05-07 08:09

    Linux環(huán)境再升級(jí):PLIN驅(qū)動(dòng)程序正式發(fā)布

    PLIN驅(qū)動(dòng)程序現(xiàn)已正式發(fā)布,本文將展示如何安裝PLIN驅(qū)動(dòng)程序,以及如何在Linux環(huán)境下進(jìn)行基本的PLIN通信操作,確保您能夠快速掌握并應(yīng)用這一新工具。
    的頭像 發(fā)表于 04-21 15:29 ?1047次閱讀
    Linux環(huán)境再升級(jí):PLIN<b class='flag-5'>驅(qū)動(dòng)程序</b>正式發(fā)布

    如何使用MCAL的TJA1145實(shí)現(xiàn)驅(qū)動(dòng)程序?

    你好: 我希望使用 MCAL 的 TJA1145 實(shí)現(xiàn)驅(qū)動(dòng)程序,您能幫我嗎
    發(fā)表于 04-03 06:50

    RTC芯片有Linux PCA2131驅(qū)動(dòng)程序嗎?

    RTC 芯片有 Linux PCA2131驅(qū)動(dòng)程序嗎? 1) 如果沒有,我可以使用任何兼容的驅(qū)動(dòng)程序驅(qū)動(dòng)這個(gè) RTC 芯片嗎? 2) 如果
    發(fā)表于 03-31 06:22

    安裝包安裝時(shí)報(bào)驅(qū)動(dòng)無簽名

    用labview2020生成安裝包文件在win7安裝時(shí)提示安裝的驅(qū)動(dòng)程序未簽名。驅(qū)動(dòng)程序NI-PAL Legacy Wrapper Driver for Windows,服務(wù) nipalusbedl.求助怎樣解決?
    發(fā)表于 03-12 14:58