Vi xử lý máy vi tính - Chương 8
Số trang: 9
Loại file: doc
Dung lượng: 87.00 KB
Lượt xem: 20
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Nguyên tắc của việc trao đổi dữ liệu với thiết bị ngoại vi bằng cách thâm nhập trực tiếp vào bộ nhớ (DMA) .Trong các cách điều khiển việc trao đổi dữ liệu giữa thiết bị ngoại vi và hệ vi xử lý bằng cách thăm dò trạng thái sẵn sàng của thiết bị ngoại vi hay bằng cách ngắt bộ vi xử lý đã đươc nói đến ở các chương trước , dữ liệu thường được chuyển từ bộ nhớ qua bộ vi xử lý để rồi từ đó ghi vào thiết bị ngoại vi hoặc...
Nội dung trích xuất từ tài liệu:
Vi xử lý máy vi tính - Chương 8 CHÆÅNG 8 ; säú chu kyì âäöng häöVAÌO /RA DÆÎ LIÃÛU BÀÒNG DMA LAP: MOV AL, (SI );10 OUT PORT ,AL ; 101. Nguyãn tàõc cuía viãûc trao âäøi dæî liãûu våïi thiãút bë INC SI ; 2ngoaûi vi bàòng caïch thám nháûp træûc tiãúp vaìo bäü nhåï LOOP LAP ; 17(DMA) . ; CÄÜNG:39 chu kyìTrong caïc caïch âiãöu khiãøn viãûc trao âäøi dæî liãûu giæîa Âãø häù tråü cho viãûc trao âäøi dæî liãûu våïi thiãút bëthiãút bë ngoaûi vi vaì hãû vi xæí lyï bàòng caïch thàm doì ngoaûi vi bàòng caïch thám nháûp træûc tiãúp vaìo bäü nhåïtraûng thaïi sàôn saìng cuía thiãút bë ngoaûi vi hay bàòng caïch ,taûi mäùi vi maûch CPU thæåìng täön taûi chán yãu cáöu treongàõt bäü vi xæí lyï âaî âæåc noïi âãún åí caïc chæång træåïc , HOLD âãø thiãút bë ngoaûi vi , mäùi khi coï yãu cáöu duìng buïdæî liãûu thæåìng âæåüc chuyãøn tæì bäü nhåï qua bäü vi xæí cho viãûc trao âäøi dæî liãûu våïi bäü nhåï thç thäng qua chánlyï âãø räöi tæì âoï ghi vaìo thiãút bë ngoaûi vi hoàûc ngæåüc naìy maì baïo cho CPU biãút . âãún læåüt CPU , khi nhánlaûi , tæì thiãút bë ngoaûi vi noï âæåüc âoüc vaìo bäü vi xæí lyï âæåüc yãu cáöu treo thç noï tæû treo lãn (tæû taïch ra khoíi hãûâãø räöi tæì âoï âæåüc chuyãøn âãún bäü nhåï . vç thãú täúc thäúng bàòng caïch âæa caïc bit vaìo traûng thaïi tråí khaïngâäü trao âäøi dæî liãûu phuû thuäüc ráút nhiãöu vaìo täúc âäü cao )vaì âæa xung HLDA ra ngoaìi âãø thäng baïo CPU chothæûc hiãûn cuía caïc lãûnh MOV .IN vaì OUT cuía bäü vi xæí pheïp sæí duûng buï .lyï vaì do âoï viãûc trao âäøi dæî liãûu khäng thãø tiãún haình Så âäö khäúi cuía mäüt hãû vi xæí lyï coï khaí nàng trao âäøinhanh âæåc . dæî liãûu theo kiãøu DMA âæåüc thãø hiãûn trãn hçnh 8.1Trong thæûc tãú coï nhæîng khi ta cáön trao âäøi dæî liãûu tháûtnhanh våïi thiãút bë ngoaûi vi : nhæ khi cáön âæa dæî liãûuhiãûn thë ra maìn hçnh hoàûc trao âäøi dæî liãûu våïi bäü âiãöukhiãøn âéa .trong caïc træåìng håüp âoï ta cáön coï khaí nàngghi /âoüc dæî liãûu træûc tiãúp våïi bäü nhåï (diret memoryacces .DMA- thám nháûp vaìo bäü nhåï træûc tiãúp khängthä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 Ta nháûn tháúy trong hãû thäúng naìy , khi CPU tæû taïch raxæí lyï noïi chung âãöu phaíi duìng thãm maûch chuyãn duûng khoíi hãû thäúng bàûng tæû treo (æïng våïi vë trê hiãûn thåìiâãø âiãöu khiãøn viãûc thám nháûp træûc tiãúp vaìo bäü nhåï cuía caïc cäng tàõc chuyãøn maûch )âãø trao quyãön sæí( dircet memory access con troller.DMAC) duûng bus cho DMAC phaíi chëu traïch nhiãûm âiãöu khiãønCoï thãø láúy mäüt vê duû cuû thãø âãø minh hoaû âiiãuì naìy toaìn bäü hoaût âäüng trao âäøi dæî liãûu cuía hãû thäúng . âãø.trong khi mäüt maûch DMAC nhæ 8237A cuía inter coï thãø laìm âæåüc âiãöu âoï DMAC phaíi coï khaí nàng taûo ra âæåücâiãöu khiãøn viãûc chuyãøn mäüt byte trong mäüt maíng dæî caïc tên hiãûu âiiãuì khiãøn cáön thiãút giäúng nhæ caïc tênliãûu tæì bäü nhåï ra thiãút bë ngoaûi vi chè hãút 4 chu kyì hiãûu cuía CPU vaì baín thán noï phaíi laì mäüt thiãút bë láûpâäöng häö thç bäü vi xæí lyï 8088 phaíi laìm hãút cåî 4 chu kyì : trçnh âæåüc (âãø CPU “dàn doì ” noï bàòng caïch âæa vaìo caïctæì âiãöu khiãøn træåïc khi noï coï thãø hoaût âäüng âäüc 3.DMAC âæa ra tên hiãûu HRQ âãún chán HOLD cuía CPU âãøláûp ). yãu cáöu treo CPU .tên hiãûu HOLD phaíi åí mæïc cao cho âãúnQua trinh hoaût âäüng cuía hãû thäúng trãn coï thãø âæåüc toïm hãút quaï trçnh trao âäøi dæî liãûu .tàõt nhæ sau: 4. nháûn âæåüc yãu cáöu treo ,CPU kãút thuïc chu kyì busKhi thiãút bë ngoaûi vi coï yãu cáöu trao âäøi dæî liãûu kiãøu hiãûn taûi , sau doï noï treo caï bus cuía mçnh vaì âæa ra tênDMA våïi bäü nhåï , noï âæa yãu cáöu DRQ=1 âãún DMAC, hiãûu HLDA baïo cho DMAC âæåüc toaìn quyãön sæí duûngDMAC seî âæa yãu cáöu treo HRQ=1 âãún chán HOLD cuía bus.CPU . nhán âæåüc yãu cáöu treo , CPU seî treo caïc bus cuía 5.DMAC âæa ra xung DACK âãø baïo cho thiãút bë ngoaûi vimçnh vaì traí låìi cháúp nháûn treo qua tên hiãûu HLDA=1 âãún biãút laì coï thãø bàõt âáöu trao âäøi dæî liãûu .chán HACK cuía DMAC ,DMAC seî thäng baïo cho thiãút bë 6.DMAC bàõt âáöu chuyãøn dæî liãûu tæì bäü nhåï ra thiãút bëngoaûi vi thäng qua tên hiãûu DACK=1 laì noï cho pheïp thiãút ngoaûi vi bàòng caïch âæa âëa chè cuía byte ...
Nội dung trích xuất từ tài liệu:
Vi xử lý máy vi tính - Chương 8 CHÆÅNG 8 ; säú chu kyì âäöng häöVAÌO /RA DÆÎ LIÃÛU BÀÒNG DMA LAP: MOV AL, (SI );10 OUT PORT ,AL ; 101. Nguyãn tàõc cuía viãûc trao âäøi dæî liãûu våïi thiãút bë INC SI ; 2ngoaûi vi bàòng caïch thám nháûp træûc tiãúp vaìo bäü nhåï LOOP LAP ; 17(DMA) . ; CÄÜNG:39 chu kyìTrong caïc caïch âiãöu khiãøn viãûc trao âäøi dæî liãûu giæîa Âãø häù tråü cho viãûc trao âäøi dæî liãûu våïi thiãút bëthiãút bë ngoaûi vi vaì hãû vi xæí lyï bàòng caïch thàm doì ngoaûi vi bàòng caïch thám nháûp træûc tiãúp vaìo bäü nhåïtraûng thaïi sàôn saìng cuía thiãút bë ngoaûi vi hay bàòng caïch ,taûi mäùi vi maûch CPU thæåìng täön taûi chán yãu cáöu treongàõt bäü vi xæí lyï âaî âæåc noïi âãún åí caïc chæång træåïc , HOLD âãø thiãút bë ngoaûi vi , mäùi khi coï yãu cáöu duìng buïdæî liãûu thæåìng âæåüc chuyãøn tæì bäü nhåï qua bäü vi xæí cho viãûc trao âäøi dæî liãûu våïi bäü nhåï thç thäng qua chánlyï âãø räöi tæì âoï ghi vaìo thiãút bë ngoaûi vi hoàûc ngæåüc naìy maì baïo cho CPU biãút . âãún læåüt CPU , khi nhánlaûi , tæì thiãút bë ngoaûi vi noï âæåüc âoüc vaìo bäü vi xæí lyï âæåüc yãu cáöu treo thç noï tæû treo lãn (tæû taïch ra khoíi hãûâãø räöi tæì âoï âæåüc chuyãøn âãún bäü nhåï . vç thãú täúc thäúng bàòng caïch âæa caïc bit vaìo traûng thaïi tråí khaïngâäü trao âäøi dæî liãûu phuû thuäüc ráút nhiãöu vaìo täúc âäü cao )vaì âæa xung HLDA ra ngoaìi âãø thäng baïo CPU chothæûc hiãûn cuía caïc lãûnh MOV .IN vaì OUT cuía bäü vi xæí pheïp sæí duûng buï .lyï vaì do âoï viãûc trao âäøi dæî liãûu khäng thãø tiãún haình Så âäö khäúi cuía mäüt hãû vi xæí lyï coï khaí nàng trao âäøinhanh âæåc . dæî liãûu theo kiãøu DMA âæåüc thãø hiãûn trãn hçnh 8.1Trong thæûc tãú coï nhæîng khi ta cáön trao âäøi dæî liãûu tháûtnhanh våïi thiãút bë ngoaûi vi : nhæ khi cáön âæa dæî liãûuhiãûn thë ra maìn hçnh hoàûc trao âäøi dæî liãûu våïi bäü âiãöukhiãøn âéa .trong caïc træåìng håüp âoï ta cáön coï khaí nàngghi /âoüc dæî liãûu træûc tiãúp våïi bäü nhåï (diret memoryacces .DMA- thám nháûp vaìo bäü nhåï træûc tiãúp khängthä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 Ta nháûn tháúy trong hãû thäúng naìy , khi CPU tæû taïch raxæí lyï noïi chung âãöu phaíi duìng thãm maûch chuyãn duûng khoíi hãû thäúng bàûng tæû treo (æïng våïi vë trê hiãûn thåìiâãø âiãöu khiãøn viãûc thám nháûp træûc tiãúp vaìo bäü nhåï cuía caïc cäng tàõc chuyãøn maûch )âãø trao quyãön sæí( dircet memory access con troller.DMAC) duûng bus cho DMAC phaíi chëu traïch nhiãûm âiãöu khiãønCoï thãø láúy mäüt vê duû cuû thãø âãø minh hoaû âiiãuì naìy toaìn bäü hoaût âäüng trao âäøi dæî liãûu cuía hãû thäúng . âãø.trong khi mäüt maûch DMAC nhæ 8237A cuía inter coï thãø laìm âæåüc âiãöu âoï DMAC phaíi coï khaí nàng taûo ra âæåücâiãöu khiãøn viãûc chuyãøn mäüt byte trong mäüt maíng dæî caïc tên hiãûu âiiãuì khiãøn cáön thiãút giäúng nhæ caïc tênliãûu tæì bäü nhåï ra thiãút bë ngoaûi vi chè hãút 4 chu kyì hiãûu cuía CPU vaì baín thán noï phaíi laì mäüt thiãút bë láûpâäöng häö thç bäü vi xæí lyï 8088 phaíi laìm hãút cåî 4 chu kyì : trçnh âæåüc (âãø CPU “dàn doì ” noï bàòng caïch âæa vaìo caïctæì âiãöu khiãøn træåïc khi noï coï thãø hoaût âäüng âäüc 3.DMAC âæa ra tên hiãûu HRQ âãún chán HOLD cuía CPU âãøláûp ). yãu cáöu treo CPU .tên hiãûu HOLD phaíi åí mæïc cao cho âãúnQua trinh hoaût âäüng cuía hãû thäúng trãn coï thãø âæåüc toïm hãút quaï trçnh trao âäøi dæî liãûu .tàõt nhæ sau: 4. nháûn âæåüc yãu cáöu treo ,CPU kãút thuïc chu kyì busKhi thiãút bë ngoaûi vi coï yãu cáöu trao âäøi dæî liãûu kiãøu hiãûn taûi , sau doï noï treo caï bus cuía mçnh vaì âæa ra tênDMA våïi bäü nhåï , noï âæa yãu cáöu DRQ=1 âãún DMAC, hiãûu HLDA baïo cho DMAC âæåüc toaìn quyãön sæí duûngDMAC seî âæa yãu cáöu treo HRQ=1 âãún chán HOLD cuía bus.CPU . nhán âæåüc yãu cáöu treo , CPU seî treo caïc bus cuía 5.DMAC âæa ra xung DACK âãø baïo cho thiãút bë ngoaûi vimçnh vaì traí låìi cháúp nháûn treo qua tên hiãûu HLDA=1 âãún biãút laì coï thãø bàõt âáöu trao âäøi dæî liãûu .chán HACK cuía DMAC ,DMAC seî thäng baïo cho thiãút bë 6.DMAC bàõt âáöu chuyãøn dæî liãûu tæì bäü nhåï ra thiãút bëngoaûi vi thäng qua tên hiãûu DACK=1 laì noï cho pheïp thiãút ngoaûi vi bàòng caïch âæa âëa chè cuía byte ...
Tìm kiếm theo từ khóa liên quan:
lập trình bằng hợp ngữ bô nhớ máy tính kỹ thuật vi xử lý vi xử lý intel hệ thống vi xử lýTài liệu liên quan:
-
50 trang 499 0 0
-
Giáo trình Hệ điều hành: Phần 2
53 trang 222 0 0 -
Báo cáo môn học vi xử lý: Khai thác phần mềm Proteus trong mô phỏng điều khiển
33 trang 185 0 0 -
78 trang 168 3 0
-
Giáo trình Máy thu hình (Nghề Điện tử dân dụng - Trình độ: Trung cấp) - Trường Cao đẳng nghề Cần Thơ
79 trang 168 0 0 -
Báo cáo bài tập lớn môn Kỹ thuật vi xử lý: Thiết kế mạch quang báo - ĐH Bách khoa Hà Nội
31 trang 133 0 0 -
Báo cáo thực tập ngành: Máy điện, khí cụ điện, truyền động điện, kỹ thuật vi xử lý
95 trang 113 0 0 -
Báo cáo đồ án 2: Đo nhiệt độ, độ ẩm khí ga
31 trang 61 0 0 -
Bài giảng Kiến trúc của hệ vi xử lý
256 trang 44 0 0 -
Bài giảng Kiến trúc máy tính và hệ điều hành: Bài 8 - Nguyễn Hồng Sơn
41 trang 44 0 0