Bài giảng Kỹ thuật Vi xử lý - Chương 2: Vi xử lí và Hệ thống vi xử lí - Hồ Viết Việt

pdf 22 trang huongle 6040
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kỹ thuật Vi xử lý - Chương 2: Vi xử lí và Hệ thống vi xử lí - Hồ Viết Việt", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_ky_thuat_vi_xu_ly_chuong_2_vi_xu_li_va_he_thong_vi.pdf

Nội dung text: Bài giảng Kỹ thuật Vi xử lý - Chương 2: Vi xử lí và Hệ thống vi xử lí - Hồ Viết Việt

  1. BàiBài gigiảảngng KKỹỹ thuthuậậtt ViVi xxửử lýlý NgànhNgành ĐĐiiệệnn ttửử ViViễễnn thụngthụng ĐạĐạii hhọọcc BỏchBỏch khoakhoa ĐĐàà NNẵẵngng ccủủaa HHồồ ViViếếtt ViViệệtt,, KhoaKhoa ĐĐTVTTVT TàiTài liliệệuu thamtham khkhảảoo [1][1] KKỹỹ thuthuậậtt vivi xxửử lýlý,, VVăănn ThThếế MinhMinh,, NXBNXB GiỏoGiỏo ddụụcc,, 19971997 [2][2] KKỹỹ thuthuậậtt vivi xxửử lýlý vàvà LLậậpp trỡnhtrỡnh AssemblyAssembly chocho hhệệ vivi xxửử lýlý,, ĐỗĐỗ XuõnXuõn TiTiếếnn,, NXBNXB KhoaKhoa hhọọcc && kkỹỹ thuthuậậtt,, 20012001
  2. ChChươươngng 22 ViVi xxửử lýlý vàvà HHệệ ththốốngng vivi xxửử lýlý 2.12.1 BBộộ vivi xxửử lýlý - Bộ vi xử lý (Microprocessor) là gỡ? - Cỏc thành phần của bộ vi xử lý - Ứng dụng của bộ vi xử lý 2.22.2 CỏcCỏc hhọọ vivi xxửử lýlý - Họ x86 của Intel- Luật Moore - Họ 68x của Motorola 2.32.3 HHệệ ththốốngng vivi xxửử lýlý - Bộ nhớ - Cỏc cổng I/O - Bus hệ thống: D-Bus, A-Bus, C-Bus - Thiết kế hệ thống vi xử lý?
  3. 2.12.1 BBộộ vivi xxửử lýlý „ MMộộtt bbộộ vivi xxửử lýlý làlà mmộộtt mmạạchch tớchtớch hhợợpp chchứứaa hànghàng ngànngàn,, ththậậmm chớchớ hànghàng tritriệệuu transistortransistor (LSI,(LSI, VLSI)VLSI) đượđượcc kkếếtt nnốốii vvớớii nhaunhau „ CỏcCỏc transistortransistor ấấyy cựngcựng nhaunhau làmlàm viviệệcc đểđể llưưuu trtrữữ vàvà xxửử lýlý ddữữ liliệệuu chocho phộpphộp bbộộ vivi xxửử lýlý cúcú ththểể ththựựcc hihiệệnn rrấấtt nhinhiềềuu chchứứcc nnăăngng hhữữuu ớchớch „ ChChứứcc nnăăngng ccụụ ththểể ccủủaa mmộộtt bbộộ vivi xxửử lýlý đượđượcc xỏcxỏc địđịnhnh bbằằngng phphầầnn mmềềmm ((cúcú ththểể llậậpp trỡnhtrỡnh đđưượợcc))
  4. BBộộ vivi xxửử lýlý „ Bộ vi xử lý đầu tiờn của Intel,4004, được giới thiệu vào năm 1971. „ 4004 chứa 2300 transistor. „ Bộ vi xử lý Pentium 4 hiện nay chứa 55 triệu transistor. „ Bộ vi xử lý thường được sử dụng trong cỏc mỏy vi tớnh (microcomputer) với vai trũ là CPU. Ngoài ra, chỳng cũn cú mặt ở nhiều thiết bị khỏc.
  5. CỏcCỏc thànhthành phphầầnn ccủủaa bbộộ vivi xxửử lýlý
  6. ALUALU vàvà ControlControl UnitUnit ALU „ Thựchiện cỏc phộp toỏn logic (AND, OR, XOR, NOT) và cỏc phộp toỏn số học(cộng, trừ, nhõn, chia) „ Thực hiện việc chuyển dữ liệu „ Việc thực hiện lệnh thực sự diễn ra ở ALU Control Unit „ Cú trỏch nhiệm liờn quan đến việc tỡm và thực hiện cỏc lệnh bằng cỏch cung cấp cỏc tớn hiệu điều khiển và định thời cho ALU và cỏc mạch khỏc biết phải làm gỡ và làm khi nào.
  7. CỏcCỏc thanhthanh ghighi (Registers)(Registers) „ Thanh ghi là nơimàbộ vi xử lý cú thể lưutrữđược mộtsố nhị phõn (Kớch cỡ của thanh ghi tớnh bằng bit) „ Bộ vi xử lý dựng cỏc thanh ghi để lưu trữ dữ liệu tạm thời trong quỏ trỡnh thực hiện chương trỡnh „ Cỏc thanh ghi cú thể được truy cập bằng cỏc cõu lệnh ngụn ngữ mỏy thường được gọi là cỏc thanh ghi người sử dụng cú thể nhỡn thấy được (cú thể truy cập được) „ Cỏc thanh ghi điều khiển và cỏc thanh ghi trạng thỏi được CU dựng để điều khiển việc thực hiện chương trỡnh. Đa số cỏc thanh ghi này người sử dụng khụng thể nhỡn thấy được
  8. 2.22.2 CCỏcỏc hhọọ vivi xxửử lýlý „ HiHiệệnn nay,nay, cúcú rrấấtt nhinhiềềuu nhànhà ssảảnn xuxuấấtt rara cỏccỏc chipchip vivi xxửử lýlý:Intel,:Intel, AMD,AMD, Motorola,Motorola, CyrixCyrix „ ThụngThụng ththườườngng,, mmộộtt hhọọ vivi xxửử lýlý làlà cỏccỏc chipchip vivi xxửử lýlý đượđượcc ssảảnn xuxuấấtt bbởởii mmộộtt nhànhà ssảảnn xuxuấấtt nàonào đđúú „ TrongTrong phphạạmm vivi mmộộtt hhọọ vivi xxửử lýlý,, theotheo ththờờii giangian vàvà theotheo cụngcụng nghnghệệ chchếế ttạạoo cúcú cỏccỏc đờđờii ((ththếế hhệệ)) vivi xxửử lýlý khỏckhỏc nhaunhau phõnphõn bibiệệtt theotheo ĐộĐộ dàidài TTừừ ccủủaa chỳngchỳng (bit)(bit) vàvà ttốốcc độđộ (Hz).(Hz). „ ĐộĐộ dàidài TTừừ (Word(Word Length)Length) ccủủaa mmộộtt chipchip vivi xxửử lýlý làlà kớchkớch ccỡỡ ttốốii đđaa ccủủaa cỏccỏc toỏntoỏn hhạạngng nhnhịị phõnphõn màmà núnú cúcú ththểể ththựựcc hihiệệnn cỏccỏc phộpphộp toỏntoỏn trờntrờn đđúú
  9. TTốốcc độđộ ccủủaa hhọọ vivi xxửử lýlý x86x86 ccủủaa IntelIntel The Continuing Evolution of Intel Microprocessors CIS105 December 2002 1600 1,400 1400 1200 1000 800 Speed (MHZ) 600 550 400 400 400 333 200 200 233 200 100 33 0.74 2 8 12 0 1971 1974 1979 1982 1985 1989 1993 1995 1997 1998 1998 1999 1999 2000 Year
  10. HHọọ vivi xxửử lýlý x86x86 ccủủaa IntelIntel Model Năm sản xuất Số lượng Transistor 4004 1971 2,300 8008 1972 2,500 8080 1974 5,000 8086 1978 29,000 80286 1982 120,000 80386™ processor 1985 275,000 80486™ DX processor 1989 1,180,000 Pentiumđ processor 1993 3,100,000 Pentium II processor 1997 7,500,000 Pentium III processor 1999 24,000,000 Pentium 4 processor 2000 55,000,000
  11. HHọọ vivi xxửử lýlý x86x86 ccủủaa IntelIntel 70’s70’s 4004 8008 8080 8086 Introduced 11/15/71 4/1/72 4/1/74 6/8/78 Clock Speeds 108KHz 200KHz 2MHz 5MHz, 8MHz, 10MHz Bus Width 4 bits 8 bits 8 bits 16 bits Number of 2,300 3,500 6,000 29,000 Transistors (10 microns) (10 microns) (6 microns) (3 microns) Addressable Memory 640 bytes 16 KBytes 64 KBytes 1 MB Virtual Memory Brief Description First microcomputer Data/character 10X the performance 10X the performance chip, Arithmetic manipulation of the 8008 of the 8080 manipulation
  12. HHọọ vivi xxửử lýlý x86x86 ccủủaa IntelIntel 80’s80’s Intel486TM Intel386TM DX Intel386TM SX DX CPU 80286 Microprocessor Microprocessor Microprocessor Introduced 2/1/82 10/17/85 6/16/88 4/10/89 Clock Speeds 6MHz, 8MHz, 10MHz, 16MHz, 20MHz, 16MHz, 20MHz, 25MHz, 33MHz, 12.5MHz 25MHz, 33MHz 25MHz, 33MHz 50MHz Bus Width 16 bits 32 bits 16 bits 32 bits Number of 134,000 275,000 275,000 1.2 million Transistors (1.5 microns) (1 micron) (1 micron) (1 micron) (.8 mic ron with 50MHz) Addressable Memory 16 megabytes 4 gigabytes 16 megabytes 4 gigabytes Virtual Memory 1 gigabyte 64 terabytes 64 terabytes 64 terabytes Brief Description 3-6X the performance First X 86 chip to 16-bit address bus Level 1 cache on chip of the 8086 handle 32-bit data sets enabled low-c ost 32-bit processing
  13. HHọọ vivi xxửử lýlý x86x86 ccủủaa IntelIntel 90’s90’s Intel486TM SX Pentiumđ Pentiumđ Pro Pentiumđ II Microprocessor Processor Processor Processor Introduced 4/22/91 3/22/93 11/01/95 5/07/97 Clock Speeds 16MHz, 20MHz, 60MHz,66MHz 150MHz, 166MHz, 200MHz, 233MHz, 25MHz, 33MHz 180MHz, 200MHz 266MHz, 300MHz Bus Width 32 bits 64 bits 64 bits 64 bits Number of 1.185 million 3.1 million 5.5 million 7.5 million Transistors (1 micron) (.8 micron) (0.35 micron) (0.35 micron) Addressable Memory 4 gigabytes 4 gigabytes 64 gigabytes 64 gigabytes Virtual Memory 64 terabytes 64 terabytes 64 terabytes 64 terabytes Brief Description Identical in design to Superscalar Dynamic execution Dual independent bus, Intel486TM DX but architecture brought architecture drives dynamic execution, without math 5X the performance of high-performing Intel MMXTM coprocessor the 33-MHz Intel486TM processor technology DX processor
  14. 2.32.3 HHệệ ththốốngng vivi xxửử lýlý
  15. LuLuậậtt MooreMoore Dr. Gordon E. Moore, Chairman Emeritus of Intel Corporation, dự đoỏn rằng Cứ một năm rưỡi thỡ số lượng transistor được tớch hợp trờn chip vi xử lý tăng gấp đụi
  16. 2.32.3 HHệệ ththốốngng vivi xxửử lýlý Address Bus MEMORY I/O Ports Microprocessor Data Bus Control Lines (Control Bus) Sơ đồ khối chức năng của một hệ thống vi xử lý
  17. HHệệ ththốốngng vivi xxửử lýlý „ GGồồmm 33 khkhốốii chchứứcc nnăăngng:: ViVi xxửử lýlý,, BBộộ nhnhớớ,, CỏcCỏc ccổổngng I/OI/O „ BBộộ nhnhớớ đượđượcc ththựựcc hihiệệnn bbằằngng cỏccỏc chipchip nhnhớớ bỏnbỏn ddẫẫnn ROMROM hohoặặcc RWM,RWM, làlà nnơơii llưưuu trtrữữ chchươươngng trỡnhtrỡnh vàvà ddữữ liliệệuu ĐốĐốii vvớớii vivi xxửử lýlý,, bbộộ nhnhớớ làlà mmộộtt ttậậpp hhợợpp cỏccỏc ụụ nhnhớớ phõnphõn bibiệệtt theotheo địđịaa chchỉỉ ccủủaa chỳngchỳng „ CỏcCỏc ccổổngng I/OI/O đượđượcc ththựựcc hihiệệnn bbằằngng cỏccỏc chipchip MSIMSI hohoặặcc LSI,LSI, làlà phphầầnn mmạạchch giaogiao titiếếpp gigiữữaa vivi xxửử lýlý vvớớii cỏccỏc thithiếếtt bbịị I/O.I/O. BBộộ vivi xxửử lýlý ccũũngng phõnphõn bibiệệtt cỏccỏc ccổổngng I/OI/O theotheo địđịaa chchỉỉ ccủủaa chỳngchỳng
  18. HHệệ ththốốngng vivi xxửử lýlý „ 33 khkhốốii chchứứcc nnăăngng:: ViVi xxửử lýlý,, BBộộ nhnhớớ,, CỏcCỏc ccổổngng I/OI/O ccủủaa mmộộtt hhệệ ththốốngng vivi xxửử lýlý traotrao đổđổii tớntớn hihiệệuu vvớớii nhaunhau thụngthụng quaqua BusBus hhệệ ththốốngng „ BusBus hhệệ ththốốngng làlà mmộộtt ttậậpp hhợợpp cỏccỏc đườđườngng truytruyềềnn ddẫẫnn dựngdựng chungchung,, baobao ggồồmm:: BusBus địđịaa chchỉỉ (A(A Bus),Bus), BusBus ddữữ liliệệuu (D(D Bus)Bus) vàvà BusBus đđiiềềuu khikhiểểnn (C(C Bus)Bus) „ CỏcCỏc tớntớn hihiệệuu địđịaa chchỉỉ didi chuychuyểểnn trờntrờn AA BusBus theotheo hhướướngng ttừừ vivi xxửử lýlý đếđếnn BBộộ nhnhớớ vàvà cỏccỏc ccổổngng I/O.I/O. SSốố llượượngng đườđườngng truytruyềềnn ddẫẫnn ccủủaa AA BusBus ((ggọọii làlà ĐộĐộ rrộộngng ccủủaa AA Bus)Bus) tớnhtớnh bbằằngng bit,bit, phphảảnn ỏnhỏnh khkhảả nnăăngng ququảảnn lýlý bbộộ nhnhớớ ccủủaa chipchip vivi xxửử lýlý
  19. HHệệ ththốốngng vivi xxửử lýlý „ CỏcCỏc tớntớn hihiệệuu ddữữ liliệệuu didi chuychuyểểnn trờntrờn DD BusBus theotheo ccảả 22 hhướướngng ttừừ vivi xxửử lýlý đếđếnn BBộộ nhnhớớ vàvà cỏccỏc ccổổngng I/OI/O vàvà ngngượượcc llạạii ((mmỗỗii lỳclỳc mmộộtt hhướướngng).). SSốố llượượngng đườđườngng truytruyềềnn ddẫẫnn ccủủaa DD BusBus ((ggọọii làlà ĐộĐộ rrộộngng ccủủaa DD Bus)Bus) tớnhtớnh bbằằngng bit,bit, phphảảnn ỏnhỏnh mmộộtt phphầầnn ttốốcc độđộ traotrao đổđổii ddữữ liliệệuu ccủủaa chipchip vivi xxửử lýlý vvớớII cỏccỏc khkhốốii chchứứcc nnăăngng khỏckhỏc „ ĐĐaa ssốố cỏccỏc tớntớn hihiệệuu trờntrờn CC BusBus làlà cỏccỏc tớntớn hihiệệuu đđiiềềuu khikhiểểnn riờngriờng llẽẽ,, cúcú tớntớn hihiệệuu xuxuấấtt phỏtphỏt ttừừ vivi xxửử lýlý,, cúcú tớntớn hihiệệuu đđii vàovào vivi xxửử lýlý ViVi xxửử lýlý ssửử ddụụngng cỏccỏc tớntớn hihiệệuu nàynày đểđể đđiiềềuu khikhiểểnn hohoạạtt độđộngng vàvà nhnhậậnn bibiếếtt trtrạạngng thỏithỏi ccủủaa cỏccỏc khkhốốii chchứứcc nnăăngng khỏckhỏc
  20. ThiThiếếtt kkếế phphầầnn ccứứngng ccủủaa hhệệ ththốốngng vivi xxửử lýlý „ ThiThiếếtt kkếế bbộộ nhnhớớ chocho hhệệ ththốốngng vivi xxửử lýlý:: GhộpGhộp nnốốii cỏccỏc chipchip nhnhớớ bỏnbỏn ddẫẫnn ssẵẵnn cúcú vvớớii busbus hhệệ ththốốngng saosao chocho khikhi bbộộ vivi xxửử lýlý truytruy ccậậpp bbộộ nhnhớớ thỡthỡ khụngkhụng xxảảyy rara xungxung độđộtt gigiữữaa cỏccỏc chipchip nhnhớớ vvớớii nhaunhau vàvà khụngkhụng xungxung độđộtt vvớớii cỏccỏc chipchip dựngdựng làmlàm ccổổngng I/OI/O „ TTươươngng ttựự,, ThiThiếếtt kkếế cỏccỏc ccổổngng I/OI/O chocho hhệệ ththốốngng vivi xxửử lýlý:: GhộpGhộp nnốốii cỏccỏc chipchip MSIMSI hohoặặcc LSILSI ththườườngng dựngdựng làmlàm ccổổngng I/OI/O vvớớii busbus hhệệ ththốốngng saosao chocho khikhi bbộộ vivi xxửử lýlý truytruy ccậậpp cỏccỏc thithiếếtt bbịị I/OI/O thỡthỡ khụngkhụng xxảảyy rara xungxung độđộtt gigiữữaa cỏccỏc chipchip đđúú vvớớii nhaunhau vàvà khụngkhụng xungxung độđộtt vvớớii cỏccỏc chipchip dựngdựng làmlàm bbộộ nhnhớớ
  21. ThiThiếếtt kkếế phphầầnn mmềềmm ccủủaa hhệệ ththốốngng vivi xxửử lýlý „ ViViếếtt chchươươngng trỡnhtrỡnh đđiiềềuu khikhiểểnn hohoạạtt độđộngng ccủủaa hhệệ ththốốngng phphầầnn ccứứngng theotheo chchứứcc nnăăngng mongmong mumuốốnn ((ththườườngng dựngdựng ngụnngụn ngngữữ AssemblyAssembly ccủủaa chipchip vivi xxửử lýlý dựngdựng trongtrong hhệệ ththốốngng)) „ DDịịchch chchươươngng trỡnhtrỡnh đđóó viviếếtt sangsang ngụnngụn ngngữữ mỏymỏy ssửử ddụụngng cỏccỏc chchươươngng trỡnhtrỡnh ddịịchch thớchthớch hhợợpp „ NNạạpp chchươươngng trỡnhtrỡnh ngụnngụn ngngữữ mỏymỏy vàovào bbộộ nhnhớớ ccủủaa hhệệ ththốốngng vivi xxửử lýlý „ KiKiểểmm tratra hohoạạtt độđộngng ccủủaa hhệệ ththốốngng vàvà ththựựcc hihiệệnn cỏccỏc hihiệệuu chchỉỉnhnh nnếếuu ccầầnn thithiếếtt „ CúCú ththểể nhnhờờ ssựự trtrợợ giỳpgiỳp ccủủaa cỏccỏc chchươươngng trỡnhtrỡnh mụmụ phphỏỏngng trờntrờn mỏymỏy tớnhtớnh