色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FPGA之外中斷是什么?這個場景跟中斷有什么關系呢?

DIri_ALIFPGA ? 來源:未知 ? 作者:李倩 ? 2018-06-25 10:42 ? 次閱讀

中斷是什么?

中斷的漢語解釋是半中間發生阻隔、停頓或故障而斷開。那么,在計算機系統中,我們為什么需要“阻隔、停頓和斷開”呢?

舉個日常生活中的例子,比如說我正在廚房用煤氣燒一壺水,這樣就只能守在廚房里,苦苦等著水開——如果水溢出來澆滅了煤氣,有可能就要發生一場災難了。等啊等啊,外邊突然傳來了驚奇的叫聲“怎么不關水龍頭?”于是我慚愧的發現,剛才接水之后只顧著抱怨這份無聊的差事,居然忘了這事,于是慌慌張張的沖向水管,三下兩下關了龍頭,聲音又傳到耳邊,“怎么干什么都是這么馬虎?”。伸伸舌頭,這件小事就這么過去了,我落寞的眼神又落在了水壺上。

門外忽然又傳來了鏗鏘有力的歌聲,我最喜歡的古裝劇要開演了,真想奪門而出,然而,聽著水壺發出“咕嘟咕嘟”的聲音,我清楚:除非等到水開,否則沒有我享受人生的時候。

這個場景跟中斷有什么關系呢?

如果說我專心致志等待水開是一個過程的話,那么叫聲、電視里傳出的音樂不都讓這個過程“半中間發生阻隔、停頓或故障而斷開”了嗎?這不就是活生生的“中斷”嗎?

在這個場景中,我是唯一具有處理能力的主體,不管是燒水、關水龍頭還是看電視,同一個時間點上我只能干一件事情。但是,在我專心致志干一件事情時,總有許多或緊迫或不緊迫的事情突然出現在面前,都需要去關注,有些還需要我停下手頭的工作馬上去處理。只有在處理完之后,方能回頭完成先前的任務,“把一壺水徹底燒開!”

中斷機制不僅賦予了我處理意外情況的能力,如果我能充分發揮這個機制的妙用,就可以“同時”完成多個任務了。回到燒水的例子,實際上,無論我在不在廚房,煤氣灶總是會把水燒開的,我要做的,只不過是及時關掉煤氣灶而已,為了這么一個一秒鐘就能完成的動作,卻讓我死死地守候在廚房里,在10分鐘的時間里不停地看壺嘴是不是冒蒸氣,怎么說都不劃算。我決定安下心來看電視。當然,在有生之年,我都不希望讓廚房成為火海,于是我上了鬧鐘,10分鐘以后它會發出“尖叫”,提醒我爐子上的水燒開了,那時我再去關煤氣也完全來得及。我用一個中斷信號——鬧鈴——換來了10分鐘的歡樂時光,心里不禁由衷地感嘆:中斷機制真是個好東西。

正是由于中斷機制,我才能有條不紊地“同時”完成多個任務,中斷機制實質上幫助我提高了并發“處理”能力。它也能給計算機系統帶來同樣的好處:如果在鍵盤按下的時候會得到一個中斷信號,CPU就不必死守著等待鍵盤輸入了;如果硬盤讀寫完成后發送一個中斷信號,CPU就可以騰出手來集中精力“服務大眾”了——無論是人類敲打鍵盤的指尖還是來回讀寫介質的磁頭,跟CPU的處理速度相比,都太慢了。沒有中斷機制,就像我們苦守廚房一樣,計算機談不上有什么并行處理能力。

跟人相似,CPU也一樣要面對紛繁蕪雜的局面——現實中的意外是無處不在的——有可能是用戶等得不耐煩,猛敲鍵盤;有可能是運算中碰到了0除數;還有可能網卡突然接收到了一個新的數據包。這些都需要CPU具體情況具體分析,要么馬上處理,要么暫緩響應,要么置之不理。無論如何應對,都需要CPU暫停“手頭”的工作,拿出一種對策,只有在響應之后,方能回頭完成先前的使命,“把一壺水徹底燒開!”

計算機系統實現中斷機制是非常復雜的一件工作,再怎么說人都是高度智能化的生物,而計算機作為一個鐵疙瘩,沒有程序的教導就一事無成。而處理一個中斷過程,它受到的限制和需要學習的東西太多了。

首先,計算機能夠接收的外部信號形式非常有限。中斷是由外部的輸入引起的,可以說是一種刺激。在燒水的場景中,這些輸入是叫聲和電視的音樂,我們這里只以聲音為例。其實現實世界中能輸入人類CPU——大腦的信號很多,圖像、氣味一樣能被我們接受,人的信息接口很完善。而計算機則不然,接受外部信號的途徑越多,設計實現就越復雜,代價就越高。因此個人計算機(PC)給所有的外部刺激只留了一種輸入方式——特定格式的電信號,并對這種信號的格式、接入方法、響應方法、處理步驟都做了規約(具體內容本文后面部分會繼續詳解),這種信號就是中斷或中斷信號,而這一整套機制就是中斷機制。

其次,計算機不懂得如何應對信號。人類的大腦可以自行處理外部輸入,我從來不用去擔心鬧鐘響時會手足無措——走進廚房關煤氣,這簡直是天經地義的事情,還用大腦想啊,小腿肚子都知道——可惜計算機不行,沒有程序,它就紋絲不動。因此,必須有機制保證外部中斷信號到來后,有正確的程序在正確的時候被執行。

還有,計算機不懂得如何保持工作的持續性。我在看電視的時候如果去廚房關了煤氣,回來以后能繼續將電視進行到底,不受太大的影響。而計算機則不然,如果放下手頭的工作直接去處理“意外”的中斷,那么它就再也沒有辦法想起來曾經作過什么,做到什么程度了。自然也就沒有什么“重操舊業”的機會了。這樣的處理方式就不是并發執行,而是東一榔頭,西一棒槌了。

那么,通用的計算機系統是如何解決這些問題的呢?它是靠硬件和軟件配合來協同實現中斷處理的全過程的。我們將通過Intel X86架構的實現來介紹這一過程。

CPU執行完一條指令后,下一條指令的邏輯地址存放在cs和eip這對寄存器中。在執行新指令前,控制單元會檢查在執行前一條指令的過程中是否有中斷或異常發生。如果有,控制單元就會拋下指令,進入下面的流程:

1. 確定與中斷或異常關聯的向量i (0£i£255)

2. 尋找向量對應的處理程序

3. 保存當前的“工作現場”,執行中斷或異常的處理程序

4. 處理程序執行完畢后,把控制權交還給控制單元

5. 控制單元恢復現場,返回繼續執行原程序

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10854

    瀏覽量

    211589
  • 中斷
    +關注

    關注

    5

    文章

    898

    瀏覽量

    41471
  • 計算機系統
    +關注

    關注

    0

    文章

    282

    瀏覽量

    24105

原文標題:FPGA之外,了解一下中斷

文章出處:【微信號:ALIFPGA,微信公眾號:FPGA極客空間】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    28335的pwm中斷和cap中斷是怎么實現的

    28335的pwm中斷和cap中斷是怎么實現的,CPUtimer什么關系
    發表于 09-04 10:30

    請問BSPBootLoader和內核什么關系

    各位老師: 請問BSP是啥?BootLoader和內核什么關系啊?韋老師的課程里講這方面嗎?韋老師的書上有這么一張圖,BSP處于哪部分
    發表于 10-09 21:18

    請問ucosiii系統定義中斷函數和裸機中的中斷函數是什么關系

    請問ucosiii中的系統定義中斷函數和裸機中的中斷函數是什么關系,二者是怎么聯系起來的????????比如ucos中斷(void)BSP_IntHandlerEXTI1(void)和
    發表于 04-23 04:11

    什么是區塊鏈?比特幣區塊鏈什么關系

    什么是區塊鏈?比特幣區塊鏈什么關系區塊鏈的實例嗎?
    發表于 05-17 06:47

    什么是概率?信息和概率什么關系

    什么是概率?什么是信息?信息和概率什么關系
    發表于 07-19 08:49

    MCU、DSP和FPGA什么關系

    為什么MCU、DSP和FPGA會同時存在?MCU、DSP和FPGA什么關系
    發表于 09-22 08:39

    什么是中斷源?識別中斷哪些方法

    什么是內部中斷?8086/8088CPU哪些內部中斷?觸發器、寄存器及存儲器之間什么關系
    發表于 10-26 08:04

    定時器中斷的應用都有哪些

    中斷產生和單片機什么關系?定時器中斷的應用都有哪些
    發表于 01-19 06:59

    flashEEPROM之間什么關系

    flashEEPROM之間什么關系
    發表于 01-29 20:24

    MSP430哪些可屏蔽中斷_MSP430中斷的優先級

    ,UART,I2C)等等。 現在我就談談關于MSP430中斷的一些特性,主要是在項目經歷中感覺比較有用的問題,大家分享下。 第一,MSP430中斷的優先級。 MSP430支持中斷優先
    發表于 05-29 15:41 ?2935次閱讀

    單片機學習教程之外中斷和定時器及串口中斷的資料和程序說明

    本文檔的主要內容詳細介紹的是單片機學習教程之外中斷和定時器及串口中斷的資料和程序說明。CPU收到中斷請求,停下正在處理的工作A,去處理事件B,處理完后繼續回到
    發表于 04-18 17:27 ?5次下載
    單片機學習教程<b class='flag-5'>之外</b>部<b class='flag-5'>中斷</b>和定時器及串口<b class='flag-5'>中斷</b>的資料和程序說明

    USB接口與雷電接口什么關系

    USB接口和雷電接口什么關系
    的頭像 發表于 01-13 16:34 ?1.8w次閱讀

    while(1)和中斷關系

    菜鳥自結,大神飄過。發現自己以前學習51單片機存在很多問題!今天被問到一個問題才發現自己的學習態度很糟糕。初學51時,不是很理解51中斷和while(1)的關系,一直以為中斷就應該有while(1
    發表于 11-15 12:51 ?11次下載
    while(1)和<b class='flag-5'>中斷</b>的<b class='flag-5'>關系</b>

    51單片機之外中斷方式 ——— INT0 中斷

    51單片機之外中斷方式 ——— INT0 中斷
    發表于 11-22 11:51 ?153次下載
    51單片機<b class='flag-5'>之外</b>部<b class='flag-5'>中斷</b>方式 ———  INT0 <b class='flag-5'>中斷</b>

    FPGA中Bank和Clock Region之前有什么關系

    FPGA中的Bank和Clock Region什么關系
    的頭像 發表于 05-15 09:32 ?1149次閱讀
    <b class='flag-5'>FPGA</b>中Bank和Clock Region之前有<b class='flag-5'>什么關系</b>?
    主站蜘蛛池模板: 男人插女人动态图| 老师扒开尿口男生摸尿口| 久久婷五月综合色啪网| 青草影院内射中出高潮-百度| 无人区乱码1区2区3区网站| 最近中文字幕2019国语4| 闺蜜撬开我的腿用黄瓜折磨我| 九九热视频在线观看| 人性本色联盟| 一级毛片美国| 国产成人精品电影| 六六影院午夜伦理| 校园女教师之禁区| 99热国产这里只有精品9九| 国产亚洲欧洲日韩在线观看 | 国产午夜在线视频| 男女爽爽无遮挡午夜视频在线观看| 午夜福利理论片高清在线| 99国产精品综合AV无码| 国产午夜电影院| 清晨紧湿爱运动h高h| 又粗又大又爽又黄的免费视频 | 国产成人无码AV麻豆| free18sex性自拍裸舞| 绑着男军人的扒开内裤| 国产精品ⅴ视频免费观看| 国产h视频在线观看网站免费| 成人精品视频在线| 火影忍者高清无码黄漫| 风车动漫(p)_在线观看官网| 人妻插B视频一区二区三区| 成人公开免费视频| 神马影院午夜伦理限级| 99久久免费热在线精品| 国产一区免费在线观看| 毛片免费观看视频| 涩涩游戏盒| av在线观看地址| 秋霞特色大片18岁入口| 国产高清视频在线观看不卡v| 乳液全集电影在线观看|