Presentation is loading. Please wait.

Presentation is loading. Please wait.

1. 2 Mikrop Unit Kawalan (CU) menjanakan semua isyarat dalaman CPU. Ia memeriksa daftar2 ketika power on, janakan isyarat utk ambil arahan ke ALU. CU.

Similar presentations


Presentation on theme: "1. 2 Mikrop Unit Kawalan (CU) menjanakan semua isyarat dalaman CPU. Ia memeriksa daftar2 ketika power on, janakan isyarat utk ambil arahan ke ALU. CU."— Presentation transcript:

1 1

2 2 Mikrop Unit Kawalan (CU) menjanakan semua isyarat dalaman CPU. Ia memeriksa daftar2 ketika power on, janakan isyarat utk ambil arahan ke ALU. CU mungkin keseluruhannya dibina drpd hw (hardwired controller spt state counter & PLA) atau campuran arahan2 sw (kodmikro tersimpan dlm CPU) & hw (kawalan aturcaramikro). Intel famili 8086 dan motorola famili 68000 menggunakan kawalan aturcaramikro. Daftar – kecil, memori laju yg selalunya utk simpan data & alamat yg bersekutu dgn arahan yg sedang dilaksanakan. ALU melaksanakan operasi aritmetik dan logik.

3 3 Kitaran Perlaksanaan Arahan Dua langkah utama dlm kitaran ini – Ambil arahan berikutnya drpd memori utama – Nyahkod dan Laksanakan arahan tersebut Kitaran ambilan mengandungi: – Guna penunding arahan (IP) utk setkan bus alamat dgn alamat arahan berikutnya dan tingkatkan IP – Tunggu (bbrp ratus nanosaat) utk data dipindahkan ke bus data drpd memori – Baca data dr bus data Kitaran perlaksanaan mengandungi: – Nyahkod arahan dan janakan jujukan yg betul bg isyarat dalaman dan luaran. – Laksanakan arahan dan ulang semula kitaran ambilan.

4 4

5 5 Kitaran Ambilan & Perlaksanaan Bertalianpaip Bus Interface Unit (BIU) ambil arahan2 drpd memori berikan kpd instruction stream byte queue dan mula ambil arahan berikutnya serta merta Execution Unit (EU) keluarkan arahan2 drpd instruction stream byte queue Kedua-dua boleh beroperasi serentak (ini dinamakan pipelined parallel processing)

6 6

7 7

8 8 Mikrop Intel 8086/8088 8086 dan 8088 lbh kurang sama kecuali 8088 mempunyai 8 talian data luaran manakala 8086 mempunyai 16 talian. Kedua2nya ada: – 16bit lebar bus data dalaman – 20 pin alamat (16 alamat/data + 4 alamat/status) bg m’blhkan alamat memori maksima ialah 1Mbyte – Pin2 alamat/data multipleks (8088 hy ada 8pin multipleks) – 2 mod operasi (mod maksima dan minima) – Set arahan yg sama

9 9 Senibina Dalaman 8088 Kedua2nya 8088/8086 proses selari Ada dua unit pemproses: EU & BI; beroperasi pd waktu yg sama BIU hantar keluar alamat, ambil arahan drpd memori, baca data drpd port & memori, dan tulis data ke port & memori dgnkatalain BIU mengawal secara perpindahan data dan alamat pada bus2 utk EU. EU memberitahu BIU drpd mana utk ambil arahan atau data, nyahkod arahan dan laksanakan arahan.

10 10

11 11

12 12 BIU Laksana operasi bus spt ambil arahan, baca/tulis operan data utk memori, m’input/m’output data utk persisian IO Lakukan fungsi lain spt inst queiung dan data acquisition 8bit (16bit) data bus dua hala utk 8088 (8086) 20bit bus alamat, blh alamat 2 20 (1,048,576) bait Ada segment register, inst pointer, address generator adder, bus control logic dan inst queue. Guna instruction queue utk melaksanakan senibina talianpaip (praambilan sehingga 4 (6) bait kod arahan utk 8088 (8086) dan seterusnya simpan dan capai kod2 tersebut dlm tertib FIFO

13 13 EU B’t/jwb utk menyahkod & melaksanak’ inst. Ada: ALU, status & control flag, gen. Purpose register & temp operand register. EU capai inst drpd output bg inst queue & data drpd gen purpose register. Ia baca 1 inst pd 1 masa, nyahkodkannya, janakn alamat operan jk perlu, berikan pd BIU & mohon utk melaksanakan kitaran baca/tulis ke memori atau IO, dan laksanakan operasi yg tlh ditentuk’ o inst pd operan. Ktk p’laksanaan EU mungkin uji flag status & kawalan & kemaskini falg2 ini mengikut keputusan perlaksanaan.

14 14 Think of them as places where you can store data during run-time of the program. They are relatively small and very fast, much faster then RAM or Hard disk. At first - What are this registers ? How much of them do i have ? This is a question of which processor you have. If you have something ranging between a 8086 and a 80286 you've got ax,bx,cx,dx,sp,bp,si,di,ip,cs,ds,ss,es and the flag-register. Makes 14. If you have soemthing starting from a 80386 you've got eax,ebx,ecx,edx,esp,ebp,esi,edi,eip,cs,ds,ss,es,fs,gs and the extended flag-register. Makes 16

15 15 Organisasi Register 8086 Daftar – Tujuan am & khusus Am diguna sbg daftar 8bit au 16bit: pegang data, pembolehubah, keputusan sementera, counter, alamat offset Khas digunakan sbg daftar segmen, penuding, indeks dan alamat offset – 16bit Daftar Tujuan Am Ada 8, dilabelkan AH, AL, BH, BL, CH, CL, DH, DL, setiap daftar blh memegang data sebanyak 8bit. Utk menyimpan 16bit data, gabungkan H dan L menjadi AX, BX, CX & DX. AL dikenali sbg daftar penumpuk (acc) Kebaikan daftar dalaman, ia lbh cepat dicapai drpd memori luaran kerana tiada rujukan dan memori diperlukan utk m’dptk’ data.

16 16 Organisasi Register AX, BX, CX and DX are data-registers. They can be used as multi-purpose registers, but they have their special abilities too : AX is often used as accumulator for instruction such as multiplication, division and some adjustment function. BX is used as base-pointer & holds the offset address of a location in a memory system, CX as a counter (e.g repeated string instruction (I.e. REP/REPE/REPNE), shift & rotate (use CL as the count) and LOOP/LOOPD (use CX/ECX) DX for data or holds a part of the result from multiplication or part of dividend before division.

17 17 Organisasi Register 8086 Daftar Segmen – Tiada dlm 8085, 8086 ada – 1Mb blh dialamatkan, dbhg kpd 10 segmen logikal, setiap satu b’saiz 16kb – Ada empat: Code (CS) –tempat dimana kod disimpan (program & procedure). Daftar CS memberitahu permulaan alamat bagi seksyen bagi memori yang memegang kod. 64 kB dlm 8088- 80286 dan 4G dlm 80368 dan keatas Data (DS) – merujuk kpd segmen data bg memori, yakni tempat dimana program disimpan. Extra (ES) – data segmen bg memori yang lain Stack (SS) – mengalamat segmen stack bg memori, yakni tempat dimana data stack disimpan

18 18 Organisasi Daftar 8086 Daftar Pointer – Mengandungi offset bg daftar segmen tertentu. – IP, BP dan SP masing2 selalunya ada offset bg segmen code, data dan stack. Daftar Index – Index selalunya digunakan sbg tujuan am dan offset storan dalam kes pengalamat yg membabitkan index. – SI digunakan utk menyimpan offset bg lokasi sumber dlm segmen data manakala DI utk destinasinya. – Manipulasi string.

19 19 Organisasi Daftar 8086 Daftar Flag – Flag menunjukkan keadaan mikrop berserta mengawal operasinya. – Ia adlh ff yg menunjukkan bbrp keadaan yg terhasil dr perlaksanaan inst atau mengawal operasi tertentu bg EU. 16bit flag rergister dlm EU mengandungi 9 flag aktif. – Flag keadaan: 6 flag keadaan. Mereka diset atau direset o EU berdasar keputusan bbrp operasi aritmetik. – Flag kawalan: 3 flag selebihnya digunakan utk mengawal operasi tertentu bg mikrop.

20 20

21 21 Organisasi Daftar 8086 Daftar Flag Keadaan – Carry flag (CF) menunjuk’ bawaan slps penambah’/pinjam’ slps penolak’. Jg menunjuk’ keadaan ralat. – Parity flag (PF) adlh logik 0 utk pariti ganjil & logik 1 pariti genap – Auxiliary carry flag (AF) ptg utk penambah’ & penolak’ BCD: pgg bawaan (pinjaman) slps penambah’ (penolak’) ant posisi bit 3 dan 4. Hy digunakan utk inst DAA & DAS utk menyelaras AL slps penambah’ (penolak’) BCD. – Zero flag (ZF) menunjuk’ jwpn operasi arit/logik adlh sifar. – Sign flag (SF) menunjuk’ tanda jwpn arit slps operasi arit – Overflow flag (OF) keadaan yg wujud pabila nom bertanda dicampur/ditolak. Ia menunjukkan bhw jwpn tlh melebihi kapasiti mesin tsbt.

22 22 Organisasi Daftar 8086 Daftar Flag Kawalan – Flag kawalan diset atau direset dengan inst yg diberi oleh anda dlm program. Tiga flag kawalan ialah: Trap flag (TP) – digunak’ utk ‘single stepping through a program’ Interrupt flag – digunak’ utk membolehk’atau tidak sampukan bg program Direction flag – digunakan dgn inst string

23 23 Pengsegmenan Memori Dlm 8086, daftar hy 16bit shj, kita perlu dua daftar utk 20bit alamat. Skim ini dibhg’ kpd bbrp segmen logikal yg bersaiz 64Kb yg dialamat oleh daftar segmen 16bit yg menunding kpd titik mula bg segmen tersebut. Utk mencari lokasi spesifik dlm segmen kita perlu alamat offset bersaiz 16bit.

24 24 Pengsegmenan Memori Utk mendapat alamat fizikal daripada dua daftar ini, langkah2 beikut dijalankan: Alamat segmen: 1005h Alamat offset: 5555h Alamat segmen: 1005h0001 0000 0000 0101 Anjakan 4bit:0001 0000 0000 0101 0000 + Alamat offset: 0101 0101 0101 0101 Alamat fizikal:0001 0101 0101 1010 0101

25 25 Pengsegmenan Memori Kelebihan – Memblh’ kapasiti memori menjadi 1Mb w/p alamat yg mengendalikannya ialah 16bit – M’blh’ penempatan bhgn kod, data & stack bg program yg sama di segmen memori yg berlainan, utk perlindungan data dan kod. – M’bnr’ program &/ datanya ditempatkan kwsn memori yg berlainan stp kali program dilaksanakan.


Download ppt "1. 2 Mikrop Unit Kawalan (CU) menjanakan semua isyarat dalaman CPU. Ia memeriksa daftar2 ketika power on, janakan isyarat utk ambil arahan ke ALU. CU."

Similar presentations


Ads by Google