日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

一步步编写操作系统 14 CPU与外设通信——IO接口 上

發布時間:2023/12/10 windows 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一步步编写操作系统 14 CPU与外设通信——IO接口 上 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

介紹顯卡之前,必須得和大家交待清楚,那么多的外部設備,cpu是如何與他們交流。

大家都學過微機接口技術吧?沒學過也沒關系,反正我也只是籠統地說說^_^,保證大家一定能看得懂。

按理說,如果硬件種類較少,讓cpu直接同硬件進行IO操作也不是很過分,但現實不是這樣的,計算機能發展到今天這樣興盛,是和誕生各種各樣的硬件分不開的。微型計算機通過外部設備與外面的世界互換信息,外部設備種類繁多,原理各異,有機械式、電動式、電子式,輸出的信號也多種多樣,有模擬量、數字量、開關量。它們都有自己特性,數據格式不相同,有的外設是用串行數據,有的是并行數據,并且它們都在自己的時序下工作,無論它們的速度如何,在cpu看來都太慢了。

讓cpu小朋友與每個“個性不同,脾氣迥異”的硬件大大們打交道,這也太為難cpu了,您看,通過執行jmp $這樣的死循環語句就能看得出,人家cpu可是個踏實低調的主,所以,“交際”這類活動對它還是少點好。再說,同任何一個設備打交道,cpu那么速度那么快,它不得嫌棄別人慢嗎,為了減少自己的等待時間,還得為低速設備準備數據緩沖區。cpu用的信號都是TTL電平,外設大多數都是機電設備,機電設備可不能用TTL電平驅動,這還不算完呢,cpu系統總線上傳送的都是并行數據(所以你聽到的都是8位、16位、32位cpu…),外設可是并行、串行都有,還得轉換格式,想想就麻煩啊。看來,不可能讓cpu一一適應它們,否則cpu要做的工作太多了。

cpu面臨的問題,就像校長面臨一群學生一樣,讓校長親自管理每個學生的學習,即使是肌肉男施瓦辛格也得累倒,于是,班主任的出現幫了大忙,每個班主任負責一批學生,由他們了解學生的情況后再向校長匯報,這樣校長他不需要過人的體格,工作起來也會游刃有余了。人創造出來的東西必然脫離不了人的思維,cpu工程師們也給cpu找了“班主任”,在cpu和外設之間加了個代理,總之,以后cpu有什么事就同它接觸就行了。什么速度不匹配,緩沖區之類的,全都由代理來搞定。舉個例子,如果是串行設備,cpu就同串行接口通信,把數據發給它后,數據再經由串行接口發給串行設備,串行設備有了反饋后,把數據發送給串行接口,再經串行接口返回給cpu,并行設備也是如此。

任何不兼容的問題,都可以通過增加一“層”來解決。在cpu和外設之間的這一層就是IO接口。IO接口形式不限,它可以是個電路板,也可以是塊芯片,甚至可以是個插槽,它的作用就是在cpu和外設之間相互做協調轉換,如cpu和外設速度不匹配,它就是變速箱,cpu和外設信號不通用,它就是翻譯機。

這樣通過加了中間層后,工作就被劃分成多個部分,每個部分都有專人負責,大家都輕松了,多好啊。

不過,說的還是有點抽象是嗎?那就整點具體的,機箱里的聲卡就是驅動音響設備的IO接口,本章介紹的顯卡也同樣是一種IO接口,它是用來驅動顯示器的。也許您打開機箱后也未發現我說的聲卡和顯卡,那是不是就沒有它們呢?當然不會,要是聽不到聲音看不到圖像,人們買電腦干嗎?用來學習的?哈哈,你懂的。其實它們被集成在主板芯片組中了,您用的就是傳說中的集成聲卡和集成顯卡。這下清楚多了吧,下面咱們還是繼續說點抽象的。

IO接口是連接cpu與外部設備的邏輯控制部件,既然稱為邏輯,就說明可分為硬件和軟件兩部分。硬件部分所做的都是一些實質具體的工作,其功能是協調cpu和外設之間的種種不匹配,如雙方由于速度不匹配,那IO接口就實現數據緩沖以減少等待時間,數據格式不匹配,IO接口就在這兩種格式間互相轉換。IO接口內部實際上也是由軟件來控制運作的,這就是所謂的“邏輯”部分,所以軟件是指用來控制接口電路工作的驅動程序以及完成內部數據傳輸所需要的程序。

既然提到了軟件,這就意味著編程,這樣一來,IO接口芯片又可按照是否可編程來分類,可分為可編程接口芯片和不可編程接口芯片。

接口的作用是連接處理器和外部設備,如果外部設備很簡單,傻瓜型的、不需要設定就直接能用,就可以用不可編程接口芯片與處理器連接,不可編程接口芯片是種非常簡單的IO接口。

當然物理設備還是很貴重的,并且計算機中的IO接口數量也是有限的,所以我們當然希望IO接口功能越多越好,可以設置多種工作模式,甚至允許多個外部設備通過同一個IO接口芯片與處理器連接。計算機與IO接口的通信是通過計算機指令實現的,當我們需要定制某些功能時,我們也必須用計算機指令告訴IO接口:哪些設備連接在此IO接口上、此IO接口的工作模式等。這種通過軟件指令選擇IO接口上的功能、工作模式的做法,稱為“IO接口控制編程”。這通常是用端口讀寫指令in/out來實現的,后面會說到。

cpu太忙了,它的時間特別寶貴,為了簡化cpu訪問外部設備的工作,能夠輕松地同任何硬件通信,大家就約定好IO接口的功能:

1.設置數據緩沖,解決cpu與外設的速度不匹配。

cpu和外設速度上的差異可以通過設置緩沖區來解決,也就是說,數據先存儲在緩沖區里,等需要的時候(無論緩沖區是否滿了)就傳送出去。

2.設置信號電平轉換電路。

cpu和外設的信號電平不同,如cpu所用的信號是TTL電平,而外設大多數是機電設備,故不能使用TTL電平驅動,可以在接口電路中設置電平轉換電路來解決。

3.設置數據格式轉換

外設是多種多樣的,輸出的信息可能是數字信號、模擬信號等,而cpu只能處理數字信號。數字信號需要經過數/模轉換(D/A)成模擬量才能被送到外設以驅動硬件,模擬量也同樣需要經過模/數(A/D)轉換成數字量才能被cpu處理。所以接口電路中需要包括A/D轉換器和D/A轉換器。另外,即使雙方使用的都是數字信號,這也牽涉到格式和字長的問題,如cpu使用的是8位或16位或32位并行數據,而外設用并行或串行數據都有可能,所以IO接口中必須能夠識別格式并且轉換成對方需要的形式才行。

4.設置時序控制電路來同步cpu和外部設備

硬件的工作也是按照某種時序,它們都有自己的時序系統,就像cpu工作在自己的晶振時序上一樣。雙方時序不同,接口電路就要協調這兩種不同的時間計法。如,cpu發控制信號、定時信號給IO接口電路,IO接口用它們來控制和管理硬件。隨后硬件有了反饋后,其應答信號也需要通過接口返回給cpu,這樣cpu先“問”,硬件后“回答”,就實現了一次握手,之后便可以實現IO的同步操作。

5.提供地址譯碼

cpu同多個硬件打交道,每個硬件要反饋的信息很多,所以一個IO接口必須包含多個端口(即IO接口上的寄存器)來存儲這些信息內容。但同一時刻,只能有一個端口和cpu數據交換,這就需要IO接口提供地址譯碼電路,使cpu可以選中某個端口,使其可以訪問數據總線。

在后來新加入的硬件只要符合此約定就能同cpu數據交換,這樣cpu就可以輕松應對種類萬千的硬件啦。

后面的內容下半場再說。

總結

以上是生活随笔為你收集整理的一步步编写操作系统 14 CPU与外设通信——IO接口 上的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 小蝌蚪视频色 | 爱情岛论坛永久入口 | 毛片天堂 | 污网站在线观看免费 | 国产一区99 | 国产精品外围 | 欧美精品视 | 午夜91视频 | 91插插插永久免费 | 不卡的在线视频 | 好男人www社区 | 日韩亚洲欧美在线观看 | 制服丝袜一区二区三区 | 午夜免费网址 | www.一区 | 狠狠v欧美v日韩v亚洲ⅴ | 91 高清 在线 制服 偷拍 | 亚洲第一中文字幕 | 欧美性bbw | 欧美成人h版在线观看 | 免费看黄色的网址 | 丰满人妻一区二区 | 成人免费在线视频网站 | 手机成人在线 | 欧美婷婷六月丁香综合色 | 国产一级视频 | 欧美夜夜 | 亚洲视频你懂的 | 亚洲少妇一区二区三区 | 欧美精品久久久久久久 | 春日野结衣av | 亚洲综合色视频 | 青青国产在线观看 | 天堂网男人 | 性色tv| 日本国产一区二区三区 | 欧美精品一区二区三区久久久竹菊 | 黄色特级网站 | 欧美一二在线 | 吊视频一区二区三区 | 日本人妖xxxx | 正在播放欧美 | 人人超碰人人 | 欧美福利在线观看 | 欧洲精品久久久久毛片完整版 | av一区免费 | 日韩av在线影院 | 天堂va欧美ⅴa亚洲va一国产 | 国产中文字幕网 | av最新天堂 | 一久久| 欧美一级性 | 色欲av无码一区二区三区 | 国产一卡二卡三卡四卡 | 国产伦理一区二区三区 | 蜜桃传媒一区二区亚洲 | 秋霞午夜 | 国产精选第一页 | 九色国产视频 | 亚洲青涩在线 | 都市激情亚洲一区 | 国产精品日本一区二区在线播放 | 少妇又紧又色又爽又刺激 | 国产影音先锋 | 久久这里有精品视频 | 国产亚洲一区二区三区 | 国产操女人 | 污视频网站免费观看 | 欧美日韩中文视频 | 国产成人精品电影 | 精国产人伦一区二区三区 | 国产群p视频 | 羞羞动漫免费观看 | 亚洲一区a | 国产精品一区二区黑人巨大 | 精品亚洲成人 | 无码任你躁久久久久久老妇 | 四虎激情 | 另类天堂 | www.一区二区三区 | 亚洲熟妇无码一区二区三区导航 | 久久久久五月 | 成人午夜视频免费在线观看 | 欧美成人午夜免费视在线看片 | 婷婷久草 | 九九久久国产 | 综合网激情| 日韩中文字幕在线视频 | 久久国产柳州莫菁门 | 久久久久亚洲av片无码下载蜜桃 | 亚洲午夜精品一区 | 久久午夜无码鲁丝片 | 日日摸日日干 | 日本五十路 | 欧洲一区二区三区在线 | 伊人婷婷在线 | 亚洲美女自拍偷拍 | 国产精选中文字幕 | 欧美专区在线观看 |