KHOA ĐÀO TẠO CHẤT LƯỢNG CAOKHÓA LUẬN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH THIẾT KẾ VÀ SO SÁNH MẠCH CỘNG 16 BIT SỬ DỤNG KỸ THUẬT ĐƯỜNG ỐNG GVHD: TS... Tên đề tài: Thiết kế và so
Trang 1KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
KHÓA LUẬN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH
THIẾT KẾ VÀ SO SÁNH MẠCH CỘNG 16 BIT
SỬ DỤNG KỸ THUẬT ĐƯỜNG ỐNG
GVHD: TS VÕ MINH HUÂN SVTH: HUỲNH THỊ KIM CHI MSSV: 11119159
S K L 0 0 3 9 5 9
Trang 2KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
Trang 3CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc
***
Tp Hồ Chí Minh, ngày 20 tháng 7 năm 2015
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ và tên sinh viên : Huỳnh Thị Kim Chi MSSV: 11119159
Ngành: Công Nghệ Kỹ Thuật Máy Tính Lớp: 11119CL1
Giảng viên hướng dẫn: TS Võ Minh Huân ĐT: 0909437522
Ngày nhận đề tài: 16/03/2015 Ngày nộp đề tài: 20/07/2015
1 Tên đề tài: Thiết kế và so sánh mạch cộng 16 bit sử dụng kỹ thuật đường ống
2 Các số liệu, tài liệu ban đầu: Không có
3 Nội dung thực hiện đề tài: Thiết kế mạch cộng 16 bit sử dụng kỹ thuật đường ống và so sánh kết quả với mạch cộng CLA
4 Sản phẩm: Mạch cộng 16 bit sử dụng kỹ thuật đường ống và kết quả so sánh
TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN
Trang 4CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc ***
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên Sinh viên: Huỳnh Thị Kim Chi MSSV: 11119159 Ngành: Công Nghệ Kỹ Thuật Máy Tính
Tên đề tài: Thiết kế và so sánh mạch cộng 16 bit sử dụng kỹ thuật đường ống
Họ và tên Giáo viên hướng dẫn: TS Võ Minh Huân
NHẬN XÉT
1 Về nội dung đề tài & khối lượng thực hiện:
2 Ưu điểm:
3 Khuyết điểm:
4 Đề nghị cho bảo vệ hay không?
5 Đánh giá loại:
6 Điểm:……….(Bằng chữ: )
Tp Hồ Chí Minh, ngày tháng năm 20…
Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)
Trang 5CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc
*******
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên: Huỳnh Thị Kim Chi MSSV: 11119159 Ngành: Công Nghệ Kỹ Thuật Máy Tính
Tên đề tài: Thiết kế và so sánh mạch cộng 16 bit sử dụng kỹ thuật đường ống
Họ và tên Giáo viên phản biện:
NHẬN XÉT
1 Về nội dung đề tài & khối lượng thực hiện:
2 Ưu điểm:
3 Khuyết điểm:
4 Đề nghị cho bảo vệ hay không?
5 Đánh giá loại:
6 Điểm:……….(Bằng chữ: )
Tp Hồ Chí Minh, ngày thángnăm 20…
Giáo viên phản biện
(Ký & ghi rõ họ tên)
Trang 6ĐỀ CƯƠNG CHI TIẾT
Tên đề tài : Thiết kế và so sánh mạch cộng 16 bit sử dụng kỹ thuật đường ống
Giáo viên hướng dẫn : TS.Võ Minh Huân
Thời gian thực hiện : 18 tuần
Sinh viên thực hiện : Huỳnh Thị Kim Chi
Loại đề tài : Nghiên cứu (giải pháp,kỹ thuật) và mô phỏng trên máy tính
STT Công việc Thời gian thực hiện
1 Tìm hiểu và cài đặt phần mềm Cadence trên hệ điều
hành Linux
3 tuần (16/3 5/4)
2 Thiết kế và mô phỏng cổng Inverter, AND, OR,
NAND trên phần mềm Cadence
3 tuần (6/4 26/4)
3 Tìm hiểu mạch cộng 16 bit, kỹ thuật đường ống và
mạch cộng Carry Look-Ahead
3 tuần (4/5 24/5)
4 Thiết kế mạch cộng 1 bit, 4 bit, mạch cộng 16 bit sử
dụng kỹ thuật đường ống và mạch cộng Carry Ahead
Look-4 tuần (25/5 21/6)
5 Mô phỏng, lấy các thông số trong mạch và so sánh 2 tuần (22/6 5/7)
6 Viết báo cáo 2 tuần (6/7 19/7)
7 Kiểm tra tổng thể đề tài 1 tuần (14/7 19/7)
Nội dung công việc :
1 Tìm hiểu và cài đặt phần mềm Cadence trên hệ điều hành Linux
1.1 Tìm hiểu phần mềm Cadence
1.2 Cài đặt Cadence trên hệ điều hành Linux trong môi trường máy ảo Vmware
1.3 Chạy chương trình và khắc phục các lỗi nếu có
1.4 Tiến hành bổ sung thư viện và model cho phần mềm
4 Phương pháp thiết kế mạch cộng 16 bit sử dụng kỹ thuật đường ống
5 Mô phỏng và lấy các thông số trong mạch
5.1 Mô phỏng
5.2 Lấy các thông số và so sánh
6 Viết báo cáo
7 Kiểm tra tổng thể đề tài
Xác nhận của GVHD Ngày 20 tháng 7 năm 2015
SVTH Huỳnh Thị Kim Chi
Trang 7Cài đặt phần mềm Cadence trên hệ điều hành Linux
Sử dụng hệ điều hành RedHat cài trên máy ảo Vmware
Các gói cài đặt Cadence
Kiểm tra tổng thể đề tài
Xác nhận của GVHD Sinh viên thực hiện
Trang 8(Ký và ghi rõ họ và tên)
Trang 9LỜI CẢM ƠN
Đầu tiên, sinh viên gửi lời cảm ơn sâu sắc đến Thầy TS.Võ Minh Huân vì đã trực tiếphướng dẫntrong suốt thời gian thực hiện đề tài và tạo mọi điều kiện để sinh viên hoàn thành tốt đề tài này
Sinh viên cũng xin cảm ơn quý thầy cô thuộc Khoa Điện - Điện Tử và Khoa Đào Tạo Chất Lượng Cao trong bốn năm qua đã tận tụy dạy dỗ, truyền đạt cho sinh viên những kiến thức cơ bản để vận dụng vào đề tài và hành trang bước vào đời
Cuối cùng, sinh viên gửi lời cảm ơn đến gia đình, bạn bè đã động viên, giúp đỡ sinh viên trong suốt quá trình thực hiện đề tài
Tuy nhiên trong quá trình thực hiện đề tài không thể tránh khỏi những thiếu sót, kính mong thầy cô thông cảm và chỉ bảo thêm
Chúc quý thầy cô, các anh, chị và các bạn hoàn thành tốt công việc và thành công trong cuộc sống
Sinh viên thực hiện Huỳnh Thị Kim Chi
Trang 10LỜI NÓI ĐẦU
Tính toán là nhu cầu không thể thiếu cùng với đó các loại máy tính được phát minh và không ngừng cải tiến để phục vụ nhu cầu tính toán ngày càng cao của con người Với nhu cầu xử lý số liệu lớn ngày càng cao thì đòi hỏi con người không ngừng nghiên cứu, tìm hiểu những kỹ thuật mới tối ưu đáp ứng nhu cầu đó.Vấn đề đặt ra là làm sao tăng tốc độ tính toán cho mạch
Dựa vào nhu cầu thực tế trên mà sinh viên quyết định chọn đề tài: “Thiết kế và
so sánh mạch cộng 16 bit sử dụng kỹ thuật đường ống” để làm đề tài tốt nghiệp
Tuy sinh viên đã nỗ lực hoàn thành đồ án song thời gian có hạn và kiến thức còn hạn chế nên nội dung không thể tránh khỏi những sai sót Rất mong nhận được ý kiến đóng góp của quý thầy cô và các bạn sinh viên để đồ án hoàn thiện hơn
Xin chân thành cảm ơn!
Sinh viên thực hiện Huỳnh Thị Kim Chi
Trang 11LIỆT KÊ HÌNH
HÌNH 2.1: CấU TRÚC DE-MOSFET KÊNH P 2
HÌNH 2.2: KÝ HIệU DE-MOSFET KÊNH P VÀ KÊNH N 3
HÌNH 2.3: CấU TRÚC E-MOSFET KÊNH P 3
HÌNH 2.4: KÝ HIệU E-MOSFET KÊNH P VÀ KÊNH N 3
HÌNH 2.5: CÁC Bộ Xử LÝ PENRYN 4
HÌNH 2.6: KÝ HIệU VÀ BảNG Sự THậT CổNG NOT 5
HÌNH 2.7: SƠ Đồ KHốI MạCH CộNG 16 BIT PIPELINE 6
HÌNH 2.8: SƠ Đồ VÀ KÍ HIệU CủA MạCH CộNG BÁN PHầN 9
HÌNH 2.9: SƠ Đồ MạCH VÀ KÍ HIệU CủA MạCH CÔNG TOÀN PHầN 10
HÌNH 2.10: MạCH CộNG HAI Số N BIT 11
HÌNH 2.11: MạCH CộNG TOÀN PHầN ở TầNG THứ I 11
HÌNH 2.12: CÁC MứC LOGIC CủA MạCH CLA 12
HÌNH 3.1: LệNH KHởI ĐộNG PHầN MềM CADENCE 14
HÌNH 3.2: TạO MớI MộT THƯ VIệN MớI (1) 15
HÌNH 3.3: TạO MớI MộT THƯ VIệN (2) 16
HÌNH 3.4: TạO PROJECT MớI 16
HÌNH 3.5: GIAO DIệN LÀM VIệC CủA CADENCE 17
HÌNH 3.6: LấY LINH KIệN (1) 17
HÌNH 3.7: LấY LINH KIệN (2) 18
HÌNH 3.8: CHỉNH THÔNG Số NGUồN XUNG 19
HÌNH 3.9: CHỉNH THÔNG Số PFET 20
HÌNH 3.10: CHỉNH THÔNG Số NFET 21
HÌNH 3.11: CHỉNH THÔNG Số NGUồN 22
HÌNH 3.12: MÔ PHỏNG DạNG SÓNG (1) 23
HÌNH 3.13: MÔ PHỏNG DạNG SÓNG (2) 23
HÌNH 3.14: MÔ PHỏNG DạNG SÓNG (3) 24
HÌNH 3.15: MÔ PHỏNG DạNG SÓNG (4) 25
HÌNH 3.16: MÔ PHỏNG DạNG SÓNG (5) 26
HÌNH 3.17: MÔ PHỏNG DạNG SÓNG (6) 27
HÌNH 3.18: GIÁ TRị DÒNG ĐIệN 27
HÌNH 4.1: MạCH CộNG 16 BIT Sử DụNG Kỹ THUậT ĐƯờNG ốNG 28
HÌNH 4.2: DạNG SÓNG NGÕ VÀO A<0:3> CủA KHốI 4 BIT THứ 1 29
HÌNH 4.3: DạNG SÓNG NGÕ VÀO B<0:3> CủA KHốI 4 BIT THứ 1 29
HÌNH 4.4: DạNG SÓNG NGÕ VÀO C CủA KHốI 4 BIT THứ 1 30
HÌNH 4.5: DạNG SÓNG NGÕ RA S<0:3> CủA KHốI 4 BIT THứ 1 30
HÌNH 4.6: DạNG SÓNG NGÕ VÀO A <0:3> CủA KHốI 4 BIT THứ 2 31
HÌNH 4.7: DạNG SÓNG NGÕ VÀO B<0:3> CủA KHốI 4 BIT THứ 2 31
HÌNH 4.8: DạNG SÓNG NGÕ VÀO C CủA KHốI 4 BIT THứ 2 32
HÌNH 4.9: DạNG SÓNG NGÕ RA S<4:7> CủA KHốI 4 BIT THứ 2 32
Trang 12HÌNH 4.10: DạNG SÓNG NGÕ VÀO A <0:3> CủA KHốI 4 BIT THứ 3 33
HÌNH 4.11: DạNG SÓNG NGÕ VÀO B <0:3> CủA KHốI 4 BIT THứ 3 33
HÌNH 4.12: DạNG SÓNG NGÕ VÀO C CủA KHốI 4 BIT THứ 3 34
HÌNH 4.13: DạNG SÓNG NGÕ VÀO S <8:11> CủA KHốI 4 BIT THứ 3 34
HÌNH 4.14: DạNG SÓNG NGÕ VÀO A <0:3> CủA KHốI 4 BIT THứ 4 35
HÌNH 4.15: DạNG SÓNG NGÕ VÀO B <0:3> CủA KHốI 4 BIT THứ 4 35
HÌNH 4.16: DạNG SÓNG NGÕ VÀO C CủA KHốI 4 BIT THứ 4 36
HÌNH 4.17: DạNG SÓNG NGÕ VÀO S <12:15> CủA KHốI 4 BIT THứ 4 36
HÌNH 4.18: MạCH CộNG 16 BIT CLA 37
Trang 13LIỆT KÊ BẢNG Bảng 2.1: Bảng sự thật mạch cộng bán phần
Bảng 2.2: Bảng sự thật mạch cộng toàn phần
Trang 14LIỆT KÊ TỪ VIẾT TẮT
Từ viết tắt Nội dung
SoC System of Chip
SVS Static Voltage Scaling
DVFS Dynamic Voltage and Frequency Scaling
AVS Adaptive voltage Scaling
MTCMOS Multi-threshold CMOS
VIP Verification IP
VRC virtual power/ground rails clamp
EDA Electronic design automation
RTL register-transfer level
VHDL VHSIC Hardware Description Language
DRAM Dynamic random-access memory
CLA Carry Look-Ahead
MIPS Microprocessor without Interlocked Pipeline Stage
Trang 15TÓM TẮT ĐỀ TÀI
Đề tài “ THIẾT KẾ VÀ SO SÁNH MẠCH CỘNG 16 BIT SỬ DỤNG KỸ THUẬT
ĐƯỜNG ỐNG” là sự kết hợp giữa việc tìm hiểu bộ công cụ thiết kế vi mạch Cadence
và thiết kế, mô phỏng, so sánh mạch cộng 16 bit sử dụng kỹ thuật đường ống Từ đó biết được ưu điểm của kỹ thuật đường ống trong thiết kế Đề tài đã hoàn thành được những vấn đề cơ bản sau:
o Mô phỏng mạch điện các cổng cơ bản
o Mô phỏng mạch cộng 16 bit CLA
o Mô phỏng mạch cộng 16 bit sử dụng kỹ thuật đường ống
Trang 16CHƯƠNG 1: GIỚI THIỆU1.1 Giới thiệu tổng quan:
Ngày nay ngành công nghiệp vi mạch đã không còn xa lạ trên thế giới và nó đang phát triển mạnh mẽ ở Việt Nam, đặc biệt là thiết kế vi mạch Việc phát triển công nghệ và công cuộc chạy đua công nghệ đòi hỏi ngành công nghiệp vi mạch phải tìm kiếm các phương án khác nhau để đáp ứng cũng như cạnh tranh trên thị trường Trong
đó cải tiến về tốc độ truyền dữ liệu hay rút ngắn thời gian xử lý là điều rất được quan tâm Kỹ thuật đường ống là kỹ thuật có nhiều ưu điểm trong việc tăng tốc độ xử lý của mạch Đồ án này sinh viên nghiên cứu về kỹ thuật đường ống trong mạch cộng 16 bit
1.2 Mục đích của đề tài:
Tìm hiểu phần mềm Cadence trong thiết kế vi mạch
Thiết kế và mô phỏng mạch Inverter bằng phần mềm Cadence
Tiến hành thiết kế và so sánhmạch cộng 16 bit CLA với mạch cộng 16 bit sử dụng kỹ thuật đường ống
1.3 Đối tượng và phạm vi nghiên cứu:
Đối tượng nghiên cứu:
o Mô phỏng mạch điện cơ bản
1.4 Phương pháp nghiên cứu:
Tham khảo tài liệu:
o Nguồn tài liệu sinh viên sử dụng gồm tài liệu tiếng Anh và tiếng Việt trên Internet
o Tham khảo tài liệu do giáo viên hướng dẫn cung cấp
Thực hành:
o Mô phỏng mạch trên phần mềm Cadence
o So sánh kết quả đạt được
Trang 17CHƯƠNG 2: CƠ SỞ LÝ THUYẾT2.1 Lý thuyết MOSFET:
2.1.1 Cấu tạo:
MOSFET(Metal Oxide Semiconductor Field Effect Transistor) là Transistor hiệu ứng trường, có cấu tạo đặc biệt và hoạt động khác với Transistor thông thường Mosfet có cực cửa cách điện với kênh dẫn điện bằng một lớp cách điện mỏng Lớp cách điện thường dùng là chất oxit nên ta gọi tắt là transistor trường loại MOS
Transistor trường MOS có hai loại: transistor MOSFET kênh sẵn và transistor MOSFET kênh cảm ứng Trong mỗi loại MOSFET lại có hai loại là kênh bán dẫn loại N và kênh bán dẫn loại P
2.1.2 Phân loại:
Mosfet kênh sẵn
Mosfet kênh sẵn còn gọi là MOSFET chế độ nghèo Mode MOSFET viết tắt là DE-MOSFET).Transistor trường loại MOS kênh sẵn
(Depletion-là transistor khi chế tạo người ta đã chế tạo sẵn kênh dẫn
Hình 2.1: Cấu trúc DE-MOSFET kênh p
Trang 18Hình 2.2: Ký hiệu DE-MOSFET kênh p và kênh n
Khi transistor làm việc, thông thường cực nguồn S được nối với
đế và nối đất nên 𝑈𝑆 = 0 Các điện áp đặt vào các chân cực cửa G và cực máng
D là so với cực S Nguyên tắc cung cấp nguồn điện cho các chân cực, sao cho hạt dẫn đa số chạy từ cực nguồn S qua kênh về cực máng D để tạo dòng điện ID trong mạch cực máng Còn điện áp đăt trên cực cửa có chiều sao cho MOSFET làm việc ở chế độ giàu hạt dẫn hoặc ở chế độ nghèo hạt dẫn
Nguyên lý làm việc của hai loại transistor kênh P và kênh N giống nhau chỉ có cực tính của nguồn điện cung cấp cho các chân điện cực là trái dấu nhau
Đặc tính truyền đạt: 𝐼𝐷 = 𝑓(𝑈𝐺𝑆) khi 𝑈𝐷𝑆 = 𝑐𝑜𝑛𝑠𝑡
MOSFET kênh cảm ứng
Hình 2.3: Cấu trúc E-MOSFET kênh p
Hình 2.4: Ký hiệu E-MOSFET kênh p và kênh n
Trang 19Nguyên lý làm việc của loại kênh P và kênh N giống hệt nhau chỉ khác nhau về cực tính của nguồn cung cấp đặt lên các chân cực Trước tiên, nối cực nguồn S với đế và nối đất, sau đó cấp điện áp giữa cực cửa và cực nguồn
để tạo kênh dẫn
2.2 Công nghệ 45nm
Ngày nay những thiết bị trong ngành công nghiệp bán dẫn ngày càng được thiết kế nhỏ gọn, nhanh và tích hợp nhiều chức năng với giá thành rẻ hơn Công nghệ 45nm là một giải pháp giải quyết vấn đề kích thước trong ngành công nghiệp ngày càng được chú trọng này
Những con chip mang mã Penryn là bộ vi xử lý đầu tiên do Intel giới thiệu
sử dụng công nghê 45nm Penryn dựa trên công nghệ CMOS 45 nm chạy nhanh và mát hơn so với các bộ vi xử lý sử dụng công nghệ 65 nm trước đây và hiệu năng tăng đáng kể so với dòng chip khác
Hiện tại Intel đã có 6 bộ xử lý Penryn và 16 sản phẩm 45nm
Hình 2.5: Các bộ xử lý Penryn 2.2.1 Ưu điểm
Hiệu năng cao hơn
Giảm điện thế hoạt động, tỏa nhiệt ít hơn và nâng cao xung nhịp xử
lý trong tương lai
Trang 20 Tăng tốc độ đảo mạch lên khoảng 20% và giảm điện năng cần cho hoạt động này là 30%
Giảm bớt sự thất thoát điện năng
Kỹ thuật đường ống (Pipeline) là một kỹ thuật thực hiện lệnh trong
đó các lệnhđược thực hiện theo kiểu gối đầu nhằm tận dụng những khoảng thời gian rỗi(stalls) giữa các công đoạn (stages), qua đó làm tăng tốc độ thực hiện lệnh của vi xử lý
Trang 212.4.2 Đặc điểm của kỹ thuật đường ống
Hình 2.7: Sơ đồ khối mạch cộng 16 bit pipeline
Hình 2.7 là sơ đồ khối của mạch cộng 16 bit sử dụng kỹ thuật đường ống
Để cộng được 16 bit thì ta chia nhỏ 16 bit thành 4 khối nhỏ, mỗi khối 4 bit T ở trên hình là chốt cấu tạo từ flip flop D Mạch có nhiềuđiểm giống với mạch cộng CLA, chỉ khác là mạch có thêm flip flop làm chốt trong mạch
Kỹ thuật pipeline có những đặc điểm quan trọng sau:
Không làm giảm độ trễ của các tác vụ đơn
Nhiều công việc được xử lý đồng thời sử dụng những tài nguyên khác nhau
Pipeline làđầyđủ khi nó luôn tiếp nhận 1 lệnh mới tại mỗi chu kìđồng
bộ
Tốc độ đường ống bị giới hạn bởi tầng chậm nhất của đường ống
Cần một mạch điện để thi hành mỗi giai đoạn của lệnh vì tất cả các giai đoạn của lệnh được thi hành cùng một lúc
Giải mã các lệnh một cách đơn giản để có thể giải mã và đọc toán hạng trong một chu kỳ xung nhịp duy nhất
Cần có bộ làm tính ALU hữu hiệu để thi hành lệnh số học dài nhất trong khoảng thời gian ít hơn một chu kỳ xung nhịp
Trang 22 Cần nhiều thanh ghi lệnh để lưu giữ lệnh mà ta phải xem xét cho mỗi giai đoạn thi hành lệnh
Cần nhiều thanh ghi bộ đếm chương trình PC để có thể tiếp tục các lệnh khi bị ngắt quãng
Số lượng các giai đoạn trong pipeline phụ thuộc vào các thiết kế của
vi xử lý: 5 giai đoạn, 14 hay 31 giai đoạn
Lựa chọn số giai đoạn:
o Thời gian thực hiện mỗi giai đoạn nên có thời gian bằng nhau, giai đoạn chậm thườngđược tách nhỏ
o Vềđộ dài pipeline thì càng nhiều giai đoạn hiệu quả càng cao Nếu bị trống giai đoạn thì mất nhiều thời gian để lấp
Pipeline có 5 khâu của một lệnh trong MIPS (Microprocessor without Interlocked Pipelined Stages).:
F (Fetch): nhận lệnh
D(Decode): giải mã lệnh
X (Execution): thực hiện lệnh
M (Memory Access): truy cập bộ nhớ
W (Result Write Back): ghi kết quả
Ta có thể tính được thời gian hoàn thành công việc như sau:
Thời gian để thực hiện một công đoạn là T/5
Thời gian thực hiện 1 lệnh là T
Thời gian thực hiện 2 lênh là T + T/5
Thời gian thực hiện 3 lệnh là T + 2T/5
Nếu không có xung đột thì tốc độ vi xử lý có thể tăng lên 400%
Vì thực hiện nhiều công đoạn cùng một lúc nên dễ xảy ra xung đột (Hazard)
Trang 23 Xung đột dữ liệu (Data Hazard): gồm RAW(Read after Write), WAR (Write After Read), WAW (Write After Write)
Xung đột điều khiển (Control Hazard): xảy ra khi có lệnh
rẽ nhánh (Branch Hazard)
2.4.3.2 Giải quyết xung đột
Xung đột là yếu tố quan trọng ảnh hưởng tới tốc độ của vi xử lý trong kỹ thuật pipeline Vì vậy giải quyết xung đột là rất cần thiết Các cách giải quyết xung đột là:
Chèn trễ: hoạt động khá ổn định với xung đột cấu trúc và
xung đột dữ liệu, tuy nhiên vẫn chưa tận dụng được nhiều chu kỳ nhàn rỗi cúa máy nên hiệu suất chưa cao
Tổ chức lại các lệnh (Instruction Reorganization): kỹ
thuật này đòi hỏi trình dịch phải dự đoán được sự phụ thuộc dữ liệu giữa các lệnh qua đó thay đổi trật tự các lệnh Tuy nhiên phương pháp này cần có trình dịch thông mình nên chi phhí trình dịch sẽ tăng
Sử dụng đường dữ liệu nội đặc biệt: giá trị của biến sẽ
được cập nhật rất sớm nhờ sử dụng phương pháp này Nhờ vậy làm giảm số chu
kỳ rỗi trong pipeline và tăng tốc độ của vi xử lý Dữ liệu được lưu ở bộ nhớ đệm ALUout sau pha X và sẽ được ghi lên thanh ghi trong pha M (hoặc pha W đối với lệnh đầu tiên) Nhờ vậy giải quyết được phần lớn các xung đột về dữ liệu
cũng như cấu trúc
Tomasulo: thuật toán được đưa ra vào năm 1967 bởi
Robert Tomasulo làm việc cho hãng IBM Ý tưởng là sử dụng địa chỉ Tag và bit trạng thái để đánh dấu các thanh ghi, qua đó biết thanh ghi đó đang bận hay đang
rỗi để sử dụng cho phù hợp
Định biểu: sử dụng các vector trạng thái và bảng đặt chỗ
(reservation table) để đánh dấu các trạng thái của các tầng pipeline Từ đó xác
định được số chu kỳ cần đưa dữ liệu vào để tránh xung đột
Trang 242.5.1 Bộ cộng bán phần ( Half adder, HA)
Bộ cộng bán phần là mạch cộng hai số 1 bit A và B, xuất ra tổng S và số dư của phép tính C
Hình 2.8: Sơ đồ và kí hiệu của mạch cộng bán phần
2.5.2 Mạch cộng toàn phần (Full adder)
Mạch cộng toàn phần là mạch cộng 3 bit A, B và 𝐶𝑖𝑛 (số dư của phép tính trước), xuất ra 2 số là tổng S và số dư 𝐶𝑜𝑢𝑡
Trang 25Bảng 2.2: Bảng sự thật mạch cộng toàn phần
biểu thức điều kiện của S và 𝐶𝑜
S = A ⊕ 𝐵 ⊕ C = A𝐵 𝐶𝑖 + 𝐴 𝐵𝐶 + 𝐴𝐵𝑖 𝐶𝑖 + A𝐵𝐶𝑖
Carry Look-Ahead Adder (CLA: mạch cộng nhìn trước số nhớ) là một loại
bộ cộng dùng trong logic kỹ thuật số.Bộ cộng CLA cải thiện tốc độ bằng cách giảm thời gian cần thiết để xác định bit carry.Các bộ công CLA tính toán một hoặc nhiều bit carry trước khi tính tổng, làm giảm thời gian chờ để tính toán các kết quả của các bit có giá trị lớn hơn Bộ cộng Kogge-Stone và Brent-Kung là ví
dụ của loại bộ cộng này
Trang 26Hình 2.10: Mạch cộng hai số n bit
Hình 2.11: Mạch cộng toàn phần ở tầng thứ i
Trong hình trên ta thấy 𝑃𝑖 = 𝐴𝑖 ⊕ 𝐵𝑖và 𝐺𝑖 = 𝐴𝑖𝐵𝑖 Giá trị𝑃𝑖và𝐺𝑖 chỉ phụ thuộc vào thành phần ngõ vào𝐴𝑖, 𝐵𝑖.Giá trị tính toán của tất cả𝑃𝑖có độ trễ của một cổng XOR Giá trị tính toán của tất cả𝐺𝑖có độ trễ của một cổng AND
Tổng ngõ ra và số nhớ có thể được định nghĩa là:
𝑆𝑖 = 𝑃𝑖 ⊕ 𝐶𝑖và 𝐶𝑖+1 = 𝐺𝑖 + 𝑃𝑖𝐶𝑖Trong đó, 𝐺𝑖 là tín hiệu phát sinh số nhớ, tạo ra carry-out khi 𝐺𝑖 = 1 và 𝑃𝑖
là tín hiệu lan truyền, carry-in =1 được truyền ở tầng cộng thứ i
Số nhớ được tạo ra trong hai trường hợp:
Trang 27𝐶𝑛 = 𝐺𝑛 −1+ 𝑃𝑛 −1𝐺𝑛−2 + 𝑃𝑛−1𝑃𝑛−2𝐺𝑛−3+ + 𝑃𝑛−1𝑃𝑛−2… 𝑃1𝐺0
+ 𝑃𝑛−1𝑃𝑛−2… 𝑃1𝑃0𝐶0Những tín hiệu từ carry-in đến carry-out đều yêu cầu một cổng OR và một cổng AND (2 level AND-OR)
Hình 2.12: Các mức logic của mạch CLA
Xét bộ cộng 4 bit CLA bao gồm 3 mức logic:
o mức thứ nhất: tạo ra tất cả tín hiệu P và G gồm bốn bộ logic P và G, mỗi bộ gồm một cổng XOR và một cổng AND Tín hiệu ngõ ra sẽ có giá trị sau một chu kì
o mức thứ 2: các khối logic CLA gồmbốn mạch logoc cấp 2 thực hiện Nó tạo ra các tín hiệu carry (C1, C2, C3, C4) Tín hiệu ngõ ra sẽ có giá trị sau 3 chu kì
o mức thứ 3: Bốn cổng XOR mà tạora các tín hiệu sum Ngõ ra của tín hiệu ( S0, S1, S2, S3) có giá trị sau bốn chu kì
Mạch cộng CLA cũng có giới hạn là khi n lớn thì độ phức tạp sẽ tăng cao
Độ trễ tổng của mạch công CLA n bit là độ trễ của 4 cổng
o 𝑃𝑖, 𝐺𝑖 : độ trễ 1 cổng
o 𝐶𝑖 : độ trễ 2 cổng
o 𝑆 : tổng s có độ trễ 1 cổng