在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

FPGA之外中斷是什么?這個(gè)場(chǎng)景跟中斷有什么關(guān)系呢?

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

中斷是什么?

中斷的漢語(yǔ)解釋是半中間發(fā)生阻隔、停頓或故障而斷開(kāi)。那么,在計(jì)算機(jī)系統(tǒng)中,我們?yōu)槭裁葱枰白韪簟⑼nD和斷開(kāi)”呢?

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

門(mén)外忽然又傳來(lái)了鏗鏘有力的歌聲,我最喜歡的古裝劇要開(kāi)演了,真想奪門(mén)而出,然而,聽(tīng)著水壺發(fā)出“咕嘟咕嘟”的聲音,我清楚:除非等到水開(kāi),否則沒(méi)有我享受人生的時(shí)候。

這個(gè)場(chǎng)景跟中斷有什么關(guān)系呢?

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

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

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

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

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

計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)中斷機(jī)制是非常復(fù)雜的一件工作,再怎么說(shuō)人都是高度智能化的生物,而計(jì)算機(jī)作為一個(gè)鐵疙瘩,沒(méi)有程序的教導(dǎo)就一事無(wú)成。而處理一個(gè)中斷過(guò)程,它受到的限制和需要學(xué)習(xí)的東西太多了。

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

其次,計(jì)算機(jī)不懂得如何應(yīng)對(duì)信號(hào)。人類的大腦可以自行處理外部輸入,我從來(lái)不用去擔(dān)心鬧鐘響時(shí)會(huì)手足無(wú)措——走進(jìn)廚房關(guān)煤氣,這簡(jiǎn)直是天經(jīng)地義的事情,還用大腦想啊,小腿肚子都知道——可惜計(jì)算機(jī)不行,沒(méi)有程序,它就紋絲不動(dòng)。因此,必須有機(jī)制保證外部中斷信號(hào)到來(lái)后,有正確的程序在正確的時(shí)候被執(zhí)行。

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

那么,通用的計(jì)算機(jī)系統(tǒng)是如何解決這些問(wèn)題的呢?它是靠硬件和軟件配合來(lái)協(xié)同實(shí)現(xiàn)中斷處理的全過(guò)程的。我們將通過(guò)Intel X86架構(gòu)的實(shí)現(xiàn)來(lái)介紹這一過(guò)程。

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

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

2. 尋找向量對(duì)應(yīng)的處理程序

3. 保存當(dāng)前的“工作現(xiàn)場(chǎng)”,執(zhí)行中斷或異常的處理程序

4. 處理程序執(zhí)行完畢后,把控制權(quán)交還給控制單元

5. 控制單元恢復(fù)現(xiàn)場(chǎng),返回繼續(xù)執(zhí)行原程序

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

    關(guān)注

    68

    文章

    10863

    瀏覽量

    211763
  • 中斷
    +關(guān)注

    關(guān)注

    5

    文章

    898

    瀏覽量

    41497
  • 計(jì)算機(jī)系統(tǒng)

    關(guān)注

    0

    文章

    282

    瀏覽量

    24115

原文標(biāo)題:FPGA之外,了解一下中斷

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    28335的pwm中斷和cap中斷是怎么實(shí)現(xiàn)的

    28335的pwm中斷和cap中斷是怎么實(shí)現(xiàn)的,CPUtimer什么關(guān)系
    發(fā)表于 09-04 10:30

    請(qǐng)問(wèn)BSPBootLoader和內(nèi)核什么關(guān)系

    各位老師: 請(qǐng)問(wèn)BSP是啥?BootLoader和內(nèi)核什么關(guān)系啊?韋老師的課程里講這方面嗎?韋老師的書(shū)上有這么一張圖,BSP處于哪部分
    發(fā)表于 10-09 21:18

    請(qǐng)問(wèn)ucosiii系統(tǒng)定義中斷函數(shù)和裸機(jī)中的中斷函數(shù)是什么關(guān)系

    請(qǐng)問(wèn)ucosiii中的系統(tǒng)定義中斷函數(shù)和裸機(jī)中的中斷函數(shù)是什么關(guān)系,二者是怎么聯(lián)系起來(lái)的????????比如ucos中斷(void)BSP_IntHandlerEXTI1(void)和
    發(fā)表于 04-23 04:11

    什么是區(qū)塊鏈?比特幣區(qū)塊鏈什么關(guān)系

    什么是區(qū)塊鏈?比特幣區(qū)塊鏈什么關(guān)系區(qū)塊鏈的實(shí)例嗎?
    發(fā)表于 05-17 06:47

    什么是概率?信息和概率什么關(guān)系

    什么是概率?什么是信息?信息和概率什么關(guān)系
    發(fā)表于 07-19 08:49

    MCU、DSP和FPGA什么關(guān)系

    為什么MCU、DSP和FPGA會(huì)同時(shí)存在?MCU、DSP和FPGA什么關(guān)系
    發(fā)表于 09-22 08:39

    什么是中斷源?識(shí)別中斷哪些方法

    什么是內(nèi)部中斷?8086/8088CPU哪些內(nèi)部中斷?觸發(fā)器、寄存器及存儲(chǔ)器之間什么關(guān)系
    發(fā)表于 10-26 08:04

    定時(shí)器中斷的應(yīng)用都有哪些

    中斷產(chǎn)生和單片機(jī)什么關(guān)系?定時(shí)器中斷的應(yīng)用都有哪些
    發(fā)表于 01-19 06:59

    flashEEPROM之間什么關(guān)系

    flashEEPROM之間什么關(guān)系
    發(fā)表于 01-29 20:24

    MSP430哪些可屏蔽中斷_MSP430中斷的優(yōu)先級(jí)

    ,UART,I2C)等等。 現(xiàn)在我就談?wù)勱P(guān)于MSP430中斷的一些特性,主要是在項(xiàng)目經(jīng)歷中感覺(jué)比較有用的問(wèn)題,大家分享下。 第一,MSP430中斷的優(yōu)先級(jí)。 MSP430支持中斷優(yōu)先
    發(fā)表于 05-29 15:41 ?2939次閱讀

    單片機(jī)學(xué)習(xí)教程之外中斷和定時(shí)器及串口中斷的資料和程序說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)學(xué)習(xí)教程之外中斷和定時(shí)器及串口中斷的資料和程序說(shuō)明。CPU收到中斷請(qǐng)求,停下正在處理的工作A,去處理事件B,處理完后繼續(xù)回到
    發(fā)表于 04-18 17:27 ?5次下載
    單片機(jī)學(xué)習(xí)教程<b class='flag-5'>之外</b>部<b class='flag-5'>中斷</b>和定時(shí)器及串口<b class='flag-5'>中斷</b>的資料和程序說(shuō)明

    USB接口與雷電接口什么關(guān)系

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

    while(1)和中斷關(guān)系

    菜鳥(niǎo)自結(jié),大神飄過(guò)。發(fā)現(xiàn)自己以前學(xué)習(xí)51單片機(jī)存在很多問(wèn)題!今天被問(wèn)到一個(gè)問(wèn)題才發(fā)現(xiàn)自己的學(xué)習(xí)態(tài)度很糟糕。初學(xué)51時(shí),不是很理解51中斷和while(1)的關(guān)系,一直以為中斷就應(yīng)該有while(1
    發(fā)表于 11-15 12:51 ?11次下載
    while(1)和<b class='flag-5'>中斷</b>的<b class='flag-5'>關(guān)系</b>

    51單片機(jī)之外中斷方式 ——— INT0 中斷

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

    FPGA中Bank和Clock Region之前有什么關(guān)系

    FPGA中的Bank和Clock Region什么關(guān)系
    的頭像 發(fā)表于 05-15 09:32 ?1155次閱讀
    <b class='flag-5'>FPGA</b>中Bank和Clock Region之前有<b class='flag-5'>什么關(guān)系</b>?
    主站蜘蛛池模板: 日本69sex护士www| 成人拍拍视频| 两性色午夜视频自由成熟的性| 女人张开腿给男人桶爽免费| 玖玖玖精品视频免费播放| 亚洲精品久久久久午夜福| 操久在线| 亚洲偷偷| 色福利在线| 成人在线色视频| www.黄com| 天天躁夜夜躁狠狠躁2021西西| 欧美日本俄罗斯一级毛片| 色窝网| 男人都懂得网址| 天堂w| 国产紧缚jvid| 亚洲黄色三级| www.日本黄色| 额去鲁97在线观看视频| 综合久色| 让她爽的喷水叫爽乱| 天天透天天干| 国产成人夜间影院在线观看| 亚洲香蕉毛片久久网站老妇人| 色资源在线观看| 午夜美女久久久久爽久久| 手机在线完整视频免费观看| 天堂网www在线观看| 亚洲精品福利视频| 欧美一卡二卡科技有限公司| 美女被猛男躁免费视频网站| 国产在线理论片免费播放| 香蕉久久影院| 国外精品视频在线观看免费| 综合啪啪| 日本黄色片黄色片| 韩彩英三级无删版甜性涩爱| 久久xxx| 免费看美女的逼| 国产福利午夜|