數(shù)據(jù)采集控制卡的接口的控制方式
(1)程序查詢方式。在這種方式cpu通過i/o指令詢問指定外設(shè)當(dāng)前的狀念,如果外設(shè)準(zhǔn)備就緒則進(jìn)行數(shù)據(jù)的輸人或輸出,否則cpu等待,循環(huán)查詢。這種方式的優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單,只需要少量的硬件電路即可,缺點(diǎn)是由于cpu的速率遠(yuǎn)遠(yuǎn)高于外設(shè),因此通常處于等待狀態(tài),工作效率很低。
(2)中斷處理方式。在這種方式下,cpu不再被動(dòng)等待,而是可以執(zhí)行其他程序。一旦外設(shè)的數(shù)據(jù)準(zhǔn)各就緒就可以向cpu提出中斷服務(wù)請(qǐng)求,cpu如果響應(yīng)該請(qǐng)求,便暫時(shí)停止當(dāng)前程序的執(zhí)行,轉(zhuǎn)去執(zhí)行與該請(qǐng)求對(duì)應(yīng)的服務(wù)程序,完成后再繼續(xù)執(zhí)行原來被中斷的程序。中斷處理方式的優(yōu)點(diǎn)是顯而易見的,它不但為cpu省去了查詢外設(shè)狀態(tài)和等待外設(shè)就緒所花費(fèi)的時(shí)間,提高了cpu的工作效率,還滿足了外設(shè)的實(shí)時(shí)要求,但需要為每個(gè)i/o設(shè)各分配一個(gè)中斷請(qǐng)求號(hào)和編寫相應(yīng)的中斷服務(wù)程序,此外還需要一個(gè)中斷控制器(i/o接口芯片)管理設(shè)各提出的中斷請(qǐng)求,例如設(shè)置中斷屏蔽、中斷請(qǐng)求優(yōu)先級(jí)等。此外,中斷處理方式的缺點(diǎn)是每傳送一個(gè)字符都要進(jìn)行一次中斷,在中斷處理程序中還需保留和恢復(fù)現(xiàn)場(chǎng)以便能繼續(xù)原程序的運(yùn)行,工作量較大。如果需要大量數(shù)據(jù)交換,系統(tǒng)的性能會(huì)很低。
由于計(jì)算機(jī)的部分中斷號(hào)碼的使用是重復(fù)的,在使用isa卡的情形下,這種情形是不允許的,在使用poi卡的情形下,中斷是可以共享的。只要是使用pci接口的卡片,在引發(fā)中斷的同時(shí),都可以正確地得到應(yīng)有的通知,而不必?fù)?dān)心中斷是否會(huì)被其他的設(shè)各奪去,這是因?yàn)閜ci接口芯片在處理的關(guān)系。
isa卡在取得中斷信號(hào)后,并不會(huì)馬上釋放此中斷信號(hào);而pci卡取得中斷信號(hào)后,馬上將中斷信號(hào)釋放,故pci卡在中斷的使用上要比isa適配卡靈活。
(3)dma(直接存儲(chǔ)器存取)傳送方式。dma最明顯的一個(gè)特點(diǎn)是采用一個(gè)專門的硬件電路dma控制器來控制內(nèi)存與外設(shè)之間的數(shù)據(jù)交換,無需cpu介人,大大提高了cpu的工作效率。在進(jìn)行dma數(shù)據(jù)傳送之前,dma控制器會(huì)向cpu申請(qǐng)總線控制權(quán),如果cpu允許則將總線控制權(quán)交出。因此,在數(shù)據(jù)交換時(shí),總線控制權(quán)由dma控制器掌握。傳輸結(jié)束后,dma控制器將總線控制權(quán)交還給cpu。
使用dma的時(shí)間就不能太長(zhǎng),否則可能使得cpu無法處理內(nèi)存,因?yàn)閐ma在使用過程中占用了總線,cpu在這時(shí)候不能對(duì)總線作其他操作,也就是說,此時(shí)的cpu無法存取資料;由于dma的傳輸速率非常快,比cpu或軟件的操作都還要快,在傳輸大量實(shí)時(shí)數(shù)據(jù)時(shí)(如音樂、語言),此種方式是相當(dāng)適合的。
評(píng)論