Bài giảng Lập trình Hợp ngữ - Chương 2: Tổ chức CPU

NỘI DUNG

2.1 Giới thiệu hệ thống số

2.2 Bộ xử lý trung tâm CPU

2.3 Hệ thống Bus

2.4 Bộ thanh ghi

2.5 Cơ chế định vị địa chỉ

2.6 Các đặc tính thiết kế liên quan đến hiệu suất CPU họ Intel

2.7 Các đặc trưng của CPU họ Intel

2.8 Câu hỏi ôn tập

 

ppt112 trang | Chia sẻ: hienduc166 | Lượt xem: 653 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Lập trình Hợp ngữ - Chương 2: Tổ chức CPU, để xem tài liệu hoàn chỉnh bạn click vào nút TẢI VỀ ở trên
duøng ñeå boå sung cho ñoaïn döõ lieäu  coù vuøng nhôù >64k cho ñoaïn döõ lieäu.74Chuong 2 : Tổ chức CPUThanh ghi traïng thaùi (thanh ghi côø)Thanh ghi côø laø thanh ghi 16 bit naèm beân trong EU (Excution Unit). Tuy nhieân chæ coù 9 trong 16 bit ñöôïc söû duïng.7 bit coøn laïi khoâng duøng.ODI TSZAPC15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0O OverFlow flag	D : Direction flag	 I : Interrupt flagT : Trap flag 	S : Sign flag	 Z : Zero flagA : Auxiliary flag P : Parity flag	 C : Carry flag	75Chuong 2 : Tổ chức CPUThanh ghi traïng thaùi (thanh ghi côø)Giaûi thích :Côø CF : chæ thò coäng coù nhôù, tröø coù möôïn.Côø PF : On khi keát quaû cuûa taùc vuï coù soá bit 1 laø soá chaún.Neáu soá bit 1 laø soá leû thì PF laø Off.Côø AF : coù nhôù trong pheùp coäng hoaëc coù möôïn trong pheùp tröø vôùi 4 bit thaáp sang 4 bit cao.Côø ZF : On khi taùc vuï luaän lyù cho keát quaû laø 0.Côø SF : bit cao nhaát cuûa keát quaû seõ ñöôïc copy sang SF. SF =1 keát quaû laø soá aâm. SF = 0 khi keát quaû laø soá döong.76Chuong 2 : Tổ chức CPUThanh ghi traïng thaùi (thanh ghi côø)Giaûi thích :Côø OF : OF=1 khi keát quaû bò traøn soá (vöôït quaù khaû naêng löu tröõ ). Neáu keát quaû khoâng bò traøn thì OF=0.3 bit coøn laïi laø 3 bit ñieàu khieån :Côø TF : baùo CPU thi haønh töøng böôùc. Cung caáp coâng cuï debug chöông trình.Côø IF : IF=1 giuùp 8086 nhaän bieát coù yeâu caàu ngaét quaõng coù che.Côø DF : xaùc ñònh höôùng theo chieàu taêng/giaûm trong xöû lyù chuoåi.8086 cho pheùp User laäp trình baät taét caùc côø CF,DF,IF,TF 77Chuong 2 : Tổ chức CPUThanh ghi chæ soá (Index)5 thanh ghi offset duøng ñeå xaùc ñònh chích xaùc 1 byte hay 1 word trong 1 ñoaïn 64K.Ñoù laø :IP : thanh ghi con troû leänh, cho bieát vò trí cuûa leänh hieän haønh trong ñoaïn leänh. Con troû leänh IP coøn ñöôïc goïi laø boä ñeám chöông trình.Thöôøng ñöôïc duøng keát hôïp vôùi CS ñeå theo doõi vò trí chính xaùc cuûa leänh seõ ñöôïc thöïc hieän keá tieáp.78Chuong 2 : Tổ chức CPUThanh ghi chæ soá (Index)Caùc thanh ghi con troû Stack : SP vaø BP, moãi thanh ghi daøi 16 bit.SP (Stack pointer) cho bieát vò trí hieän haønh cuûa ñænh Stack.BP (Basic Pointer) duøng ñeå truy caäp döõ lieäu trong Stack. SI (source index) : troû ñeán oâ nhôù trong ñoaïn döõ lieäu ñöôïc ñònh ñòa chæ bôûi thanh ghi DS.DI (destination) : chöùc naêng töông töï SI.Hai thanh ghi naøy thöôøng duøng trong xöû lyù chuoåi.79Chuong 2 : Tổ chức CPUĐỊA CHỈ LUẬN LÝ VÀ THANH GHIĐể tham khảo đến bộ nhớ trong chương trình, VXL 8086 cho phép sử dụng các địa chỉ luận lý 1 cách trực tiếp hoặc thông qua các thanh ghi của nó.Thanh ghi đoạn dùng để chứa segmentThanh ghi tổng quát dùng để chứa địa chỉ trong đoạn offsetĐể tham khảo đến địa chỉ luận lý có segment trong thanh ghi DS, offset trong thanh ghi BX, ta viết DS:BX80Chuong 2 : Tổ chức CPUEx : nếu lúc tham khảoDS = 2000h BX = 12A9h thì địa chỉ luận lý DS:BX chính là tham khảo đến ô nhớ 2000:12A981Chuong 2 : Tổ chức CPUTrong cách sử dụng địa chỉ luận lý thông qua các thanh ghi có 1 số cặp thanh ghi luôn phải dùng chung với nhau 1 cách bắt buộc :CS:IP lấy lệnh (địa chỉ lệnh sắp thi hành)SS:SP địa chỉ đỉnh StackSS:BP thông số trong Stack (dùng trong chương trình con)DS:SI địa chỉ chuổi nguồnES:DI địa chỉ chuổi đích82Chuong 2 : Tổ chức CPUChương trình mà VXL 8086 thi hành thường có 3 đọan : Đọan chương trình có địa chỉ trong thanh ghi CS.Đọan dữ liệu có địa chỉ trong thanh ghi DS.Đọan stack có địa chỉ trong thanh ghi SS.83Chuong 2 : Tổ chức CPUCaùc ñaëc tính cuûa CPU IntelHieäu quaû cuûa CPU thuoäc hoï Intel khi xöû lyù vaø chuyeån giao thoâng tin ñöôïc xaùc ñònh bôûi caùc yeáu toá sau :Taàn soá maïch xung ñoàng hoà cuûa CPU.Ñoä roäng cuûa Data busÑoä roäng cuûa Address bus84Chuong 2 : Tổ chức CPUCaùc ñaëc tính cuûa CPU IntelTaàn soá maïch xung ñoàng hoà cuûa CPU.caøng nhanh thì toác ñoä xöû lyù caøng nhanh.Ñoä roäng cuûa Data bus caøng roäng thì caøng nhieàu data ñöôïc chuyeån giao trong 1 laàn giao dòch.Ñoä roäng cuûa Address bus caøng roäng thì khaû naêng quaûn lyù boä nhôù caøng lôùn.85Chuong 2 : Tổ chức CPUCaùc ñaëc tính cuûa CPU IntelLoaïi CPUData Bus (bit)Address bus (bit)Khaû naêng quaûn lyù boä nhôù80888201 MB808616201MB80286162416Mb8038632324 GB8048632324 GBPentium64324GB86Chuong 2 : Tổ chức CPUToùm taét CPU hoï IntelCPU 80286 : Data bus 16 bit neân moãi laàn chuyeån giao 2 bytes  quaûn lyù 16MB boä nhôù.Chæ coù khaû naêng thöïc hieän caùc pheùp toaùn ñoái vôùi caùc soá nguyeân, coù theå duøng taäp leänh 80286 ñeå moâ phoûng caùc pheùp toaùn soá hoïc daáu chaám ñoäng nhöng ñieàu naøy seõ laøm giaûm hieäu suaát heä thoáng. Neáu muoán coù khaû naêng thöïc hieän caùc pheùp toaùn daáu chaám ñoäng phaûi gaén CoProccessor 8087. 80286 laøm vieäc theo 2 cheá ñoä : cheá ñoä thöïc vaø cheá ñoä baûo veä.87Chuong 2 : Tổ chức CPUToùm taét CPU hoï IntelCPU 80386 : Data bus 32 bit neân coù theå quaûn lyù 4GB boä nhôù.Caùc thanh ghi daøi 32 bit  taêng ñoä chính xaùc cuûa caùc pheùp toaùn. Ñoä roäng Bus  taêng toác ñoä thöïc thi.CPU 80386 hoaøn toaøn töông thích vôùi caùc CPU tröôùc noù.88Chuong 2 : Tổ chức CPUToùm taét CPU hoï IntelCPU 80486 : coù bus 32 bit . 1 Coprocessor 387, boä phaän ñieàu khieån Cache, 1 Cache 8K, duøng phoái hôïp taäp leänh ruùt goïn RISC vaø taäp leänh phöùc taïp CISC.CPU 80486 phaàn lôùn caùc leänh chæ duøng 1 soá ít xung.Söû duïng cô cheá ñöôøng oáng coù khaû naêng xöû lyù 5 leänh ñoàng thôøi : Laáy leänh tröôùc PreFetch Giaûi maõ laàn 1 Decode 1 Giaûi maõ laàn 2 Decode 2 Thöïc thi leänh Execution Ghi laïi traïng thaùi. WriteBack89Chuong 2 : Tổ chức CPURISC & CISCNguyeân lyù CISC : Complex Intruction Set ComputerTaäp leänh khaù lôùn >300 leänhKhaû naêng ñònh vò phöùc taïpMoät soá leänh caàn phaûi vi leänh hoaùquaù nhieàu leänh  naïp laâu  laøm chaäm heä thoáng leänh phöùc taïp neân time giaûi maõ leänh nhieàu khi lôùn hôn time thöïc thi.Chæ coù hôn 20% leänh thöôøng duøng tôùi90Chuong 2 : Tổ chức CPURISC & CISCNguyeân lyù RISC : taäp leänh thu goïnReduce Intruction Set Computertaäp leänh nhoû  thi haønh ngay khoâng caàn giaûi maõ. leänh laøm vieäc theo cô cheá ñöôøng oáng (pipeline).91Chuong 2 : Tổ chức CPUCPU Pentium3 thaønh phaàn goùp söùc taêng toác ñoä xöû lyù cuûa Pentium : Ñôn vò tính toaùn soá nguyeân supercallar Boä nhôù Cache caáp 1 ôû beân trong CPU. Ñôn vò tính toaùn soá chaám ñoäng supercallar92Chuong 2 : Tổ chức CPUSÔ ÑOÀ KHOÁI PENTIUMHaøng nhaët sôùmCache leänh8KBIU Quaûn lyù BusBoä xöû lyù daáu chaám ñoängRegistersU Pipeline cuûa ALUV Pipeline cuûa ALUregistersCacheData8KVuøng ñeäm ñíchReõ nhaùnh93Chuong 2 : Tổ chức CPUCaâu hoûi oân taäpBus laø gì? Trong caùc loaïi Bus, Bus naøo laø Bus 2 chieàu. Cho 1 oâ nhôù coù ñòa chæ vaät lyù laø 1256H, cho bieát ñòa chæ daïng segment:offset vôùi caùc ñoaïn 1256H vaø 1240H.OÂ nhôù coù ñòa chæ vaät lyù 80FD2H, ôû trong ñoaïn naøo thì noù coù offset = BFD2H?Xaùc ñònh ñòa chæ vaät lyù cuûa oâ nhôù coù ñòa chæ logic 0A51H:CD90H 94Chuong 2 : Tổ chức CPUCaâu hoûi oân taäpTheá naøo laø bieân giôùi ñoaïn? Söï khaùc nhau cô baûn giöõa boä vi xöû lyù 8086 vaø 80286?Thuyeát minh trình töï CPU thöïc hieän caâu leänh Mem(b)  Not Mem(a) Chu kyø leänh, chu kyø maùy. Cho bieát quan heä giöõa chu kyø clock, chu kyø maùy vaø chu kyø leänh.Quan heä giöõa taäp leänh vaø kieán truùc cuûa CPU95Chuong 2 : Tổ chức CPUCaâu hoûi oân taäpGiaûi thích taïi sao khi taêng taàn soá xung clock, giaûm chu kyø wait state cuûa boä nhôù, theâm cache cho CPU laïi laøm cho heä thoáng chaïy vôùi hieäu suaát cao hôn. ? Trình baøy chieán löôïc chính löu tröõ thoâng tin trong Cache?Tính toác ñoä chuyeån giao döõ lieäu cuûa maùy tính coù CPU 486DX-66MHz vaø maùy Pentium 100MHz.Phaân bieät RISC vaø CISC.Trình baøy cô cheá ñöôøng oáng trong thöïc thi cuûa CPU96Chuong 2 : Tổ chức CPUBus ISA-8 bits :chạy ở tốc độ đồng hồ là 8 MHz truyền tải dữ liệu tối đa 8 MB/s.chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 6MB/s.chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 1MB/s.chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 12MB/s.97Chuong 2 : Tổ chức CPUBus ISA-16 bits :chạy ở tốc độ đồng hồ là 812 MHz truyền tải dữ liệu tối đa 8 MB/s.chạy ở tốc độ đồng hồ là 32 MHz truyền tải dữ liệu tối đa 12MB/s.chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 12MB/s.chạy ở tốc độ đồng hồ là 16MHz truyền tải dữ liệu tối đa 12MB/s.98Chuong 2 : Tổ chức CPUBus PCI :truyền tải dữ liệu tối đa 528 MB/s.truyền tải dữ liệu tối đa 128MB/s.truyền tải dữ liệu tối đa 512MB/s.truyền tải dữ liệu tối đa 64MB/s.99Chuong 2 : Tổ chức CPUDẫn đầu về Chipset hiện có trên thị trường là :a.AMDb.ALIc.Inteld.Mac100Chuong 2 : Tổ chức CPUHệ thống Bus là hệ thống xa lộ thông tin bên trong PC giúp trao đổi:a.thông tin giữa các máy tínhb.dữ liệu giữa các thiết bị ngọai vic. dữ liệu giữa bộ VXL và các thiết bị khácd. tất cả đều đúng101Chuong 2 : Tổ chức CPUMọi họat động của máy tính từ CPU đến bộ nhớ RAM và những thiết bị I/O đều phảI thông qua sự nốI kết được gọi chung là :a.Chuẩn giao tiếpb.Busc.BIOSd.CMOS102Chuong 2 : Tổ chức CPUBÀI TẬPBài 1 : Cho biết giá trị chuổi ‘XY’ được lưu trữ trong MT dướI dạng số hex và dạng số bin?Bài 2 : Cho biết giá trị ở hệ 10 của các số nguyên có dấu sau :a.10000000b	b.01111111bBài 3 : Cho đoạn code sau :MOV AH,7F	INT 20HMOV AX,1234	Hãy cho biết giá trị của 	MOV BH,AL	các thanh ghi AX,BX ?MOV BL,AH103Chuong 2 : Tổ chức CPUBÀI TẬPBài 4: Cho đoạn code sau :MOV AL,81ADD AL, 0FEINT 20HGiả sử các số đều là số có dấu. Giải thích kết quả chứa trong thanh ghi AL khi đoạn code trên được thực thi. Sử dụng giá trị ở hệ 10 để giải thích. 104Chuong 2 : Tổ chức CPUBÀI TẬPBài 5: Giả sử thanh ghi trong MT của bạn dài 24 bits, cho biết giá trị của số dương lớn nhất mà thanh ghi này có thể chứa ở 2 hệ 2 và hệ 16? Bài 6 : Biến đổI địa chỉ sau thành địa chỉ tuyệt đối0950:010008F1:0200105Chuong 2 : Tổ chức CPUMAINBOARD106Chuong 2 : Tổ chức CPUMAINBOARD107Chuong 2 : Tổ chức CPUMAINBOARD108Chuong 2 : Tổ chức CPU109Chuong 2 : Tổ chức CPU110Chuong 2 : Tổ chức CPUMAINBOARD111Chuong 2 : Tổ chức CPU112Chuong 2 : Tổ chức CPU

File đính kèm:

  • pptChuong_02_To_chuc_CPU.ppt