Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Vi xử lý máy vi tính - Chương 8 pps
MIỄN PHÍ
Số trang
6
Kích thước
64.0 KB
Định dạng
PDF
Lượt xem
986

Vi xử lý máy vi tính - Chương 8 pps

Nội dung xem thử

Mô tả chi tiết

CHÆÅNG 8 VAÌO /RA DÆÎ LIÃÛU BÀÒNG DMA

1. Nguyãn tàõc cuía viãûc trao âäøi dæî liãûu våïi thiãút bë ngoaûi vi bàòng caïch

thám nháûp træûc tiãúp vaìo bäü nhåï (DMA) .

Trong caïc caïch âiãöu khiãøn viãûc trao âäøi dæî liãûu giæîa thiãút bë ngoaûi vi

vaì hãû vi xæí lyï bàòng caïch thàm doì traûng thaïi sàôn saìng cuía thiãút bë

ngoaûi vi hay bàòng caïch ngàõt bäü vi xæí lyï âaî âæåc noïi âãún åí caïc chæång

træåïc , dæî liãûu thæåìng âæåüc chuyãøn tæì bäü nhåï qua bäü vi xæí lyï âãø räöi tæì

âoï ghi vaìo thiãút bë ngoaûi vi hoàûc ngæåüc laûi , tæì thiãút bë ngoaûi vi noï

âæåüc âoüc vaìo bäü vi xæí lyï âãø räöi tæì âoï âæåüc chuyãøn âãún bäü nhåï . vç thãú

täúc âäü trao âäøi dæî liãûu phuû thuäüc ráút nhiãöu vaìo täúc âäü thæûc hiãûn cuía

caïc lãûnh MOV .IN vaì OUT cuía bäü vi xæí lyï vaì do âoï viãûc trao âäøi dæî

liãûu khäng thãø tiãún haình nhanh âæåc .

Trong thæûc tãú coï nhæîng khi ta cáön trao âäøi dæî liãûu tháût nhanh våïi thiãút

bë ngoaûi vi : nhæ khi cáön âæa dæî liãûu hiãûn thë ra maìn hçnh hoàûc trao âäøi

dæî liãûu våïi bäü âiãöu khiãøn âéa .trong caïc træåìng håüp âoï ta cáön coï khaí

nàng ghi /âoüc dæî liãûu træûc tiãúp våïi bäü nhåï (diret memory acces

.DMA- thám nháûp vaìo bäü nhåï træûc tiãúp khäng thäng qua CPU) thç måïi

âaïp æïng âæåüc yãu cáöu vãö täúc âäü trao âäøi dæî liãûu .âãø laìm âæåüc âiãöu naìy

caïc hãû vi xæí lyï noïi chung âãöu phaíi duìng thãm maûch chuyãn duûng âãø

âiãöu khiãøn viãûc thám nháûp træûc tiãúp vaìo bäü nhåï ( dircet memory

access con troller.DMAC)

Coï thãø láúy mäüt vê duû cuû thãø âãø minh hoaû âiiãuì naìy .trong khi mäüt

maûch DMAC nhæ 8237A cuía inter coï thãø âiãöu khiãøn viãûc chuyãøn mäüt

byte trong mäüt maíng dæî liãûu tæì bäü nhåï ra thiãút bë ngoaûi vi chè hãút 4

chu kyì âäöng häö thç bäü vi xæí lyï 8088 phaíi laìm hãút cåî 4 chu kyì :

; säú chu kyì âäöng häö

LAP: MOV AL, (SI );10

OUT PORT ,AL ; 10

INC SI ; 2

LOOP LAP ; 17

; CÄÜNG:39 chu kyì

Âãø häù tråü cho viãûc trao âäøi dæî liãûu våïi thiãút bë ngoaûi vi bàòng

caïch thám nháûp træûc tiãúp vaìo bäü nhåï ,taûi mäùi vi maûch CPU thæåìng täön

taûi chán yãu cáöu treo HOLD âãø thiãút bë ngoaûi vi , mäùi khi coï yãu cáöu

duìng buï cho viãûc trao âäøi dæî liãûu våïi bäü nhåï thç thäng qua chán naìy

maì baïo cho CPU biãút . âãún læåüt CPU , khi nhán âæåüc yãu cáöu treo thç

noï tæû treo lãn (tæû taïch ra khoíi hãû thäúng bàòng caïch âæa caïc bit vaìo traûng

thaïi tråí khaïng cao )vaì âæa xung HLDA ra ngoaìi âãø thäng baïo CPU

cho pheïp sæí duûng buï .

Så âäö khäúi cuía mäüt hãû vi xæí lyï coï khaí nàng trao âäøi dæî liãûu theo kiãøu

DMA âæåüc thãø hiãûn trãn hçnh 8.1

Ta nháûn tháúy trong hãû thäúng naìy , khi CPU tæû taïch ra khoíi hãû thäúng

bàûng tæû treo (æïng våïi vë trê hiãûn thåìi cuía caïc cäng tàõc chuyãøn maûch )

âãø trao quyãön sæí duûng bus cho DMAC phaíi chëu traïch nhiãûm âiãöu

khiãøn toaìn bäü hoaût âäüng trao âäøi dæî liãûu cuía hãû thäúng . âãø laìm âæåüc

âiãöu âoï DMAC phaíi coï khaí nàng taûo ra âæåüc caïc tên hiãûu âiiãuì khiãøn

cáön thiãút giäúng nhæ caïc tên hiãûu cuía CPU vaì baín thán noï phaíi laì mäüt

thiãút bë láûp trçnh âæåüc (âãø CPU “dàn doì ” noï bàòng caïch âæa vaìo caïc tæì

âiãöu khiãøn træåïc khi noï coï thãø hoaût âäüng âäüc láûp ).

Qua trinh hoaût âäüng cuía hãû thäúng trãn coï thãø âæåüc toïm tàõt nhæ sau:

Khi thiãút bë ngoaûi vi coï yãu cáöu trao âäøi dæî liãûu kiãøu DMA våïi bäü

nhåï , noï âæa yãu cáöu DRQ=1 âãún DMAC, DMAC seî âæa yãu cáöu treo

HRQ=1 âãún chán HOLD cuía CPU . nhán âæåüc yãu cáöu treo , CPU seî

treo caïc bus cuía mçnh vaì traí låìi cháúp nháûn treo qua tên hiãûu HLDA=1

âãún chán HACK cuía DMAC ,DMAC seî thäng baïo cho thiãút bë ngoaûi

vi thäng qua tên hiãûu DACK=1 laì noï cho pheïp thiãút bë ngoaûi vi trao

âäøi dæî liãûu kiãøu DMA .khi quaï trçnh DMA kãút thuïc thç DMAC âæa ra

tên hiãûu HRQ=0.

Trong thæûc tãú täön taûi 3 kiãøu trao âäøi dæî liãûu bàòng caïch thám nháûp træûc

tiãúp vaìo bäü nhåï nhæ sau:

+ Treo CPU mäüt khoaíng thåìi gian âãø trao âäøi caí maíng dæî liãûu .

+treo CPU âãø trao âäøi tæìng byte.

+táûn duûng thåìi gian khäng duìng bus âãø trao âäøi dæî liãûu .

ta seî láön luåüt giåïi thiãûu qua caïc kiãøu trao âäøi dæî liãûu naìy .

• Trao âäøi caí mät maíng dæî liãûu

Trong chãú âäü naìy CPU bë treo trong suäút quaï trçnh trao âäøi maíng

dæî liãûu .Chãú âäü naìy âæåüc duìng khi ta coï nhu cáöu trao âäøi dæî liãûu våïi äø

âéa hoàûc âæa dæî liãûu ra hiãøn thë . caïc bæåïc thuí tuûc âãø chuyãøn mäüt

maíng dæî liãûu tæì bäü nhåï ra thiãút bë ngoaûi vi:

1.CPU phaíi ghi tæì âiãöu khiãøn vaì tæì chãú âäü laìm viãûc vaìo DMAC âãø

quy âënh caïch thæïc laìm viãûc , âëa chè âáöu cuía maíng nhåï , âäü daìi cuía

maíng nhåï ,...

2.khi thiãút bë ngoaûi vi co yãu cáöu trao âäøi dæî liãûu , noï âæa DRQ =1

âãún DMAC .

3.DMAC âæa ra tên hiãûu HRQ âãún chán HOLD cuía CPU âãø yãu cáöu

treo CPU .tên hiãûu HOLD phaíi åí mæïc cao cho âãún hãút quaï trçnh trao

âäøi dæî liãûu .

Tải ngay đi em, còn do dự, trời tối mất!