Thiết kế logic sốCHƯƠNG 1 – GIỚI THIỆU CHUNG • Giới thiệu chung • Quy trình phát triển hệ thống điện tử • Mô hình kiến trúc và các mức thiết kế hệ thống số • Tổng quan về các công nghệ
Trang 1Thiết kế logic số
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Trang 2Thiết kế logic số
Giới thiệu môn học
• Tên môn học: Thiết kế logic số
• Phân bố thời gian:
– Giảng lý thuyết : tiết– Kiểm tra : tiết
– Thực hành, thực tập : BT lớn– Tự học : 80 giờ
Trang 3Thiết kế logic số
Kiến thức môn học
• Môn học cung cấp cho sinh viên phương pháp
mô tả, thiết kế theo cấu trúc, RTL và hành vi các
Trang 6• CHƯƠNG 2 – CẤU KIỆN LOGIC KHẢ TRÌNH (PLD).
• CHƯƠNG 3 – CĂN BẢN VỀ NGÔN NGỮ MÔ TẢ PHẦN
Trang 7Thiết kế logic số
Tài liệu tham khảo
• [1] Volnei A Pedroni, Circuit Design with VHDL, Massachusetts Institute of Technology, 2004
Efficiency, Portability, and Scalability”, Wiley, ISBN 978-0-471-72092-8,
2006
• [3] M Morris Mano, Digital Design, Third Edition, Prentice Hall, 2002
• [4] VHDL for Programmable Logic by Kevin Skahill, Addison Wesley, 1996
Trang 8Thiết kế logic số
CHƯƠNG 1 – GIỚI THIỆU CHUNG
• Giới thiệu chung
• Quy trình phát triển hệ thống điện tử
• Mô hình kiến trúc và các mức thiết kế hệ thống số
• Tổng quan về các công nghệ thực hiện hệ thống số
• Quy trình thiết kế vi điện tử
• Vai trò của thiết kết vi điện tử sử dụng HDL
• Lưu đồ thiết kế vi điện tử dùng HDL
• Các phần mềm EDA hỗ trợ thiết kế logic dùng HDL
Trang 9Thiết kế logic số
1.1 GIỚI THIỆU CHUNG
• Hệ thống số đang là trung tâm của các hệ thống điện tử
• Mọi phát triển hiện nay đều dựa vào công nghệ
số
• Trang bị kiến thức và kỹ năng thiết kế hệ thống
số là rất quan trọng đối với kỹ sư điện tử
Trang 10Thiết kế logic số
1.1 GIỚI THIỆU CHUNG
• Các phương thức nền tảng cho phát triển hệ thống số:
– Phát triển trên cơ sở rút gọn hàm logic, bảng trạng thái, máy trạng thái, dùng các cấu kiện logic chuẩn chức năng cố định.
– Phát triển trên cơ sở dùng các hệ vi xử lý, vi điều khiển, bộ xử lý tín hiệu số, và thực hiện ghép nối máy tính.
– Phát triển hệ thống số trên cơ sở thiết kế logic số:
• Sử dụng ngôn ngữ mô tả phần cứng HDL mô tả được hệ thống số cần thiết kế
• Thực hiện tổng hợp và thực hiện chúng trên các cấu kiện logic khả trình PLD
• Hoặc chuyển sang các mức thiết kế vật lý, layout và thực hiện trên các vi mạch số VLSI
Trang 11Thiết kế logic số
• môn học Thiết kế logic số chủ yếu tập trung vào hướng thứ 3
• là phương pháp thiết kế phổ biến
• phương pháp thiết kế trọng tâm mà sinh viên sử dụng để phát triển các hệ thống số là Thiết kế logic dùng HDL
• đòi hỏi SV phải có kiến thức nền tảng tổng hợp tốt của cả hai hướng trên
• đòi hỏi SV phải có hiểu biết về hoạt động của
đối tượng được thiết kế
Trang 12Thiết kế logic số
1.2 QUY TRÌNH PHÁT TRIỂN HỆ THỐNG ĐIỆN TỬ
• được thưc hiện trên cơ sở phát triển các hệ thống con
và ghép chúng với nhau
• chú ý ba điểm như sau trong quá trình thiết kế:
– Luôn luôn sử dụng chung:
– Không bao giờ từ bỏ bất cứ điều gì để thay đổi:
– Hầu hết có nhiều hơn một cách để giải quyết một vấn đề
•
Trang 13Thiết kế logic số
1.2 QUY TRÌNH PHÁT TRIỂN HỆ THỐNG ĐIỆN TỬ
• Quy trình phát triển một hệ thống số là quá trình
một thiết kế được phát triển từ những ý tưởng
ban đầu đến sự hiện thực hóa được một sản
phẩm.
• Quá trình phát triển một sản phẩm hệ thống số
có thể tiếp cận theo một trong hai hướng sau:
– Quy trình phát triển tuần tự– Quy trình phát triển song song
Trang 14Thiết kế logic số
1.2.1 Quy trình phát triển tuần tự
• Xác định yêu cầu sản phẩm: Xác định các yều cầu,
tham số kỹ thuật cần phát triển cho sản phẩm
• Thiết kế: Tạo ra thiết kế ban đầu
• Kiểm tra thiết kế: Kiểm tra chức năng của thiết kế ban
đầu có đúng yêu cầu không?
• Chế mẫu: Tạo ra sản phẩm mẫu vật lý của thiết kế và
kiểm tra hoạt động của mẫu theo yêu cầu thiết kế
• Kiểm tra mẫu: Xác định xem liệu chức năng của thiết
kế có như kỳ vọng hay không và kiểm tra xem có xuất hiện những vấn đề của thiết kế mà cần được giải
quyết hay không?
Trang 15Thiết kế logic số
1.2.1 Quy trình phát triển tuần tự
• Thiết kế lại: Dựa vào những vấn đề đã phát hiện ở
bước trên, thực hiện thiết kế lại sản phẩm để giải quyết những vấn đề đó
• Kiểm tra lại thiết kế: Kiểm tra chức năng của thiết kế
mới có đúng yêu cầu không?
• Sản xuất sản phẩm: Khi thiết kế đã được kiểm tra
thành công, thì có thể sản xuất hoạt loạt sản phẩm
• Kiểm tra sản phẩm: Các sản phẩm đã được sản xuất
dược kiểm tra để phát hiện lỗi xuất hiện trong quá trình sản xuất
Trang 16Thiết kế logic số
1.2.2 Quy trình phát triển song song
• Các bước có thể tiến hành song song.
• mỗi bước từ ý tưởng thiết kế đến bước sản xuất
và kiểm tra được liên kết với nhau, cho phép
thông tin được chuyển qua lại giữa các bước
• Toàn bộ quá trình có cấu trúc dàn dàn trải
• cho phép nhiều vấn đề được giải quyết cùng
nhau
•
Trang 17Thiết kế logic số
1.3 TỔNG QUAN VỀ CÁC CÔNG NGHỆ THỰC
HIỆN HỆ THỐNG SỐ
• Sử dụng cấu kiện chuẩn
– Sử dụng cấu kiện logic chuẩn có ứng dụng/chức năng cố
• Lập trình phần mềm: Phát triển hệ thống số dựa trên các
hệ vi xử lý hoặc vi điều khiển đa dụng, hoặc Bộ xử lý tín hiệu
số (DSPs)
• Lập trình/Cấu hình phần cứng :Phát triển hệ thống số dựa
trên lập trình phần cứng để cấu hình cho các cấu kiện logic khả trình (PLD)
Trang 18Thiết kế logic số
PLD (programble logic device)
• là một chip LSI có chứa nhiều cấu trúc logic
đồng nhất và các kết nối khả trình
• cho phép nhà thiết kế tạo tuỳ biến cho nó để
dùng cho bất kỳ ứng dụng đặc biệt nào,
• tức là nó có thể được người dùng lập trình lại cấu hình phần cứng để thực hiện một chức
năng cần thiết cho ứng dụng của họ
Trang 19Thiết kế logic số
Ưu điểm của PLD
• Thời gian thiết kế ứng dụng ngắn
• Chi phí phát triển thấp
• Giảm thiểu được yêu cầu khoảng trống trên bảng mạch
• Giảm thiểu được yêu cầu về điện
• Bảo đảm tính bảo mật của thiết kế
• Tốc độ chuyển mạch nhanh hơn
• Mật độ tích hợp cao
• Chi phí sản xuất số lượng lớn thấp
• PLD cũng cho phép nhà thiết kế có nhiều phương tiện linh động, có thể được lập trình lại trong vài giây
Trang 20• Mỗi logic cell gồm có vài cổng logic hoặc một Flip-Flop
• Cần có một bước sản xuất cuối cùng để thực hiện tạo ra lớp kết nối các logic cell này theo mẫu kết nối đã được tạo ra bởi người sử dụng khi thực hiện một thiết kế xác định
Trang 21Thiết kế logic số
– Standard Cell: không có cấu trúc cố định
• nhà sản xuất tạo ra mặt nạ riêng để xây dựng IC dựa vào những lựa chọn linh kiện của người sử dụng như các bộ điều khiển, ALU, RAM, ROM, vi xử lý từ thư viện standard cell mà nhà sản xuất đã đưa ra.
Trang 22Hardware Programming
Fixed application
Standard Cell Gate
Arrays
Trang 23Thiết kế logic số
3.Công nghệ thiết kế vi mạch số mật độ tích
hợp lớn
• Công nghệ thực hiện việc thiết kế vi mạch số ở
mức Transistor trên bề mặt của tinh thể bán
Trang 24Thiết kế logic số
Công nghệ SoC (System on Chip)
• Hệ thống trên một vi mạch, là một khái niệm
dùng để chỉ các hệ thống được xây dựng trên ý tưởng tích hợp tất cả các thành phần của một
hệ thống máy tính lên trên một vi mạch đơn
• Hệ thống trên một vi mạch có thể bao gồm các khối chức năng số, tương tự, tín hiệu kết hợp
(mixed-signal) và cả các khối tần số radio (RF).
• Ứng dụng điển hình của các hệ thống trên một
vi mạch là các hệ thống nhúng
Trang 25– cũng như độ phức tạp của ứng dụng
• VLSI và SoC :
– có thể mất tới vài năm cho việc thiết kế và kiểm tra.
– này phù hợp cho việc phát triển những loại cấu kiện có số lượng cao,hiệu năng cao nhất, đa dụng nhất
Trang 26Thiết kế logic số
So sánh chung giữa các công nghệ logic số
• Công nghệ Cấu kiện chuẩn (VD PLD, VLX,
VĐK):
– thích hợp cho yêu cầu phát triển sản phẩm nhanh, số lượng không lớn và có mật độ tích hợp cũng độ phức tạp không quá lớn,
– tiện lợi trong giai đoạn nghiên cứu phát triển, chế thử sản phẩm
• công nghệ Cấu kiện chuẩn là lựa chọn khá thích hợp cho việc phát triển các hệ thống số không
quá phức tạp, với số lượng không lớn, thời gian phát triển nhanh,
Trang 27Thiết kế logic số
1.3.2 So sánh các loại cấu kiện chuẩn
• Các cấu kiện chuẩn phổ biến :
– Cấu kiện logic chuẩn, ASSP, MCU, RISC/GPP, DSP,
Trang 28Thiết kế logic số
Tiêu chí đánh giá:
• Thời gian đưa sản phẩm ra thị trường: đây là
tiêu chí quan trọng nhất trong một chu trình phát triển, từ vài năm đến vài tháng.
• Năng lực thực hiện: là tiêu chí quyết định năng
lực của sản phẩm
• Giá thành: thường là tiêu chí hiển nhiên nhất,
nhưng trong đa số trường hợp vẫn xếp sau Thời gian ra thị trường và Năng lực thực hiện
Trang 29Thiết kế logic số
Tiêu chí đánh giá:
• Dễ phát triển: tiêu chí này đi cùng với hỗ trợ phát triển,
công cụ phát triển, giá phát triển và có thể phân chi tiết thành
– Hỗ trợ kỹ thuật, – Đào tạo kỹ thuật, – Trang web có giá trị của thành phần thứ ba, – Công cụ phần mềm,
– Tài liệu,
• Năng lượng tiêu thụ: Tiêu chí này quan trọng trong các
sản phẩm xách tay như điện thoại di động
• Tính mềm dẻo: là khả năng sửa đổi hay tăng thêm chức
năng cho thiết bị khi có yêu cầu
Trang 30– Thay đổi nhanh xung quanh bản thiết kế.
– Tương đối dễ thử nghiệm các mạch
• Nhược điểm:
– Các yêu cầu về kích thước trong bảng mạch lớn.
– Khó tạo được những mạch ứng dụng phức tạp.
– Yêu cầu về điện lớn.
– Thiếu tính bảo mật (Các bảng mạch có thể bị sao chép).
– Các yêu cầu về chi phí bổ sung, khoảng trống, điện…cần thiết
để chỉnh sửa bản thiết kế hoặc bổ sung các tính năng khác.
Trang 31Thiết kế logic số
Công nghệ ASSP
• Thời gian ra thị trường của ASSP:
– nếu thị trường đã có và sản phẩm cũng đã sẵn sàng thì tiêu chí này từ tốt cho đến rất tốt
– Nếu thị trường mới và còn phải phát triển các đặc điểm mới cho sản phẩm thì tiêu chí này là kém
• Giá thành của ASSP
– tốt cho loạt sản phẩm nhỏ, – tuy nhiên kém hơn chút ít so với DSP.
• Năng lượng tiêu thụ của ASSP
– rất tốt khi được thiết kế tối ưu cho ứng dụng xác định
• Dễ phát triển của ASSP : khá
• Tài liệu phát triển chung :không tốt vì ASSP định hướng cho thiết kế chuyên dụng
• Tính mềm dẻo của ASSP : kém
Trang 32Thiết kế logic số
Công nghệ MCU (Microcontroller)
• Thời gian ra thị trường của MCU : rất tốt
• Năng lực thực hiện MCU : khá
– So với RISC/GPP thì tài nguyên để thực hiện các phép toán của MCU nhỏ hơn và tần số làm việc cũng thấp hơn
• Giá thành của MCU : tốt do nói chung MCU là các chip nhỏ tương đối rẻ
• lượng tiêu thụ thì MCU : khá
• phát triển của MCU : tốt
• hỗ trợ phát triển: hầu hết các nhà cung cấp MCU đều có mạng lưới giúp đỡ tốt
• Tính mềm dẻo MCU : rất tốt
Trang 33Thiết kế logic số
Công nghệ RISC/GPP
• Thời gian ra thị trường của RISC/GPP : tốt
• Năng lực thực hiện của RISC : tốt
• Giá thành của RISC : khá
• Năng lượng tiêu thụ của RISC : khá
• Dễ phát triển của RISC : tốt
• Tính mềm dẻo của : rất tốt so với thực hiện
bằng phần cứng
Trang 34• Năng lực thực hiện của DSP : rất tốt
• Giá thành DSP : tốt
• Năng lượng tiêu thụ của DSP : rất tốt
• Dễ phát triển : rất tốt
– công cụ phát triển DSP rất mạnh, dễ sử dụng – mạng lưới hỗ trợ kỹ thuật tốt
• Tính mềm dẻo của DSP : rất tốt
– với xử lý tín hiệu thời gian thực, có nhiều công cụ tốt và thích đáng nhất
Trang 35Thiết kế logic số
Công nghệ Configurable Processor
• Configurable Processor: Bộ xử lý có khả năng
cấu hình.
• Thời gian ra thị trường : kém
• Năng lực thực hiện :rất tốt do có thể cấu hình
Trang 36• Thời gian ra thị trường của FPGA : tốt
• Năng lực thực hiện của FPGA : rất tốt
Trang 37Thiết kế logic số
Quy trình thiết kế vi điện tử
1 Design Idea (Ý tưởng thiết kế)
• Xây dựng ý tưởng và mô hình hệ thống, các yêu cầu của hệ
thống trong ứng dụng
2 Behavioral Design (Thiết kế chức năng)
Thiết kế hệ thống ở mức chức năng hoạt động của hệ thống, kết quả của quá trình này có thể là các Flow Graph, Flow chart, hay các Pseudocode, Trong giai đoạn này chúng ta chỉ xác định các chức năng chung của hệ thống, các lối vào và lối ra Chưa xây dựng kiến trúc cụ thể hay các khối chức năng cụ thể của hệ
thống
Trang 38Thiết kế logic số
3 Data Path Design (Thiết kế cấu trúc đường
dữ liệu)
- Bộ thanh ghi và hàm chuyển đổi (Mô hình đường
dữ liệu Data Path)
- Máy trạng thái (Xây dựng bộ điều khiển theo Mô hình FSM)
- Tập các kết nối giữa các khối chức năng (Mô hình kết nối cấu trúc)
- Kiến trúc tập lệnh điều khiển hoạt động của của
hệ thống.
Trang 39Thiết kế logic số
4 Logic Design (Thiết kế mạch logic)
– Tạo ra Gate Wirelist, Netlist – sử dụng các cấu trúc logic cơ bản, các flip-flop để xây dựng các thanh ghi dữ liệu, bus, các khối logic và các mạch điều khiển các khối đó
– thu được một netlist gồm các gate và flip-flop cơ bản
5 Physical Design (Thiết kế mạch mức vật lý)
– Tạo ra Transistor List, Layout – thay thế các gate và các flip-flop bằng các transistor tương đương hoặc các cell trong thư viện cấu trúc linh kiện trong phần mềm thiết kế
– Bản thiết kế layout cho phép chuyển sang khâu sản xuất để chế tạo hệ thống số
Trang 40Thiết kế logic số
Quy trình thiết kế vi điện tử
Trang 41Thiết kế logic số
Quy trình thiết kế vi điện tử
Trang 42Sơ đồ mạch nguyên lý (Schematic)
Tổng hợp thành mạch số
Mô tả bằng HDL
Trang 43Thiết kế logic số
Mạch nguyên lý mạch FullAdder
Mã VHDL mô tả cấu trúc, hoạt động của mạch FullAdder
ENTITY FullAdder IS
PORT (Ai, Bi, Ci1: IN BIT;
Si, Ci: OUT BIT);
END FullAdder;
ARCHITECTURE dataflow OF FullAdder IS
BEGIN Si<= Ai XOR Bi XOR Ci1;
Ci<=(Ai AND Bi) OR (Ai AND Ci1) OR (Bi AND Ci1);
END dataflow;
Mạch số FullAdder
Trang 44• Thiết kế mức vật lý (Physical Design)
• Kiểm tra thiết kế (Verification)
Trang 45Thiết kế logic số
Thiết kế logic
• thực hiện phân tích thiết kế và thực hiện các
bước thiết kế ở các mức khác nhau kiến trúc hệ thống, chức năng hoạt động, cấu trúc đường dữ liệu, cũng như như cấu trúc logic của hệ thống
• sử dụng ngôn ngữ HDL để mô tả lại thiết kế ở các mức độ trừu tượng cao
• Kết quả của bước thiết kế logic là file mô tả HDL
Trang 46hình hoạt động, mô hình RTL
Trang 47Thiết kế logic số
Thiết kế mức vật lý (Physical Design)
• Bước thứ nhất là quá trình sàn lọc giữa mô hình cấu
trúc và mô hình vật lý đẻ tạo ra layout cho netlist
• Bước thứ 2 là phân tích và điều chỉnh các đặc tính điện
cảu mạch
• Như vậy thiết kế mức logic gồm có các nhiệm vụ
– Phân vùng (Floor planning): tạo ra layout mức RTL và hệ thống – Đặt (Placement):tạo ra layout ở mức cổng, bao gồm các vị trí của cổng
– Định tuyến (Routing):định tuyến cho các đường kết nối giữa các cổng
– Rút gọn mạch (Circuit Extraction) Thực hiện rút gọn chiều dài,
vị trí của mỗi kết nối xác định
Trang 48Thiết kế logic số
• X-ray core2duo
• Xbox 360 CPU
Trang 49Thiết kế logic số
Kiểm tra thiết kế (Verification)
• xác định xem các thiết kế ở các mức có thỏa
mãn các mục tiêu thiết kế hay không
• thực hiện bằng mô phỏng ở các giai đoạn khác nhau :
– Mô phỏng chức năng (thực hiện trước khi tổng hợp),– mô phỏng sau tổng hợp,
– mô phỏng và phân tích định thời (thực hiện sau bước thiết kế mức vật lý)
Trang 50Thiết kế logic số
Sản xuất và đóng gói
• Đây là quá trình đưa các thiết kế vật lý vào chíp
• là quá trình nạp cấu hình cho chip trong công nghệ PLD
• hay tạo các mặt lạ (IC mask) để xác định các khoảng
không gian trên tấm wafer mà vùng đó được lắng đọng, khuếch tán,
• hay loại bỏ để tạo ra các lớp bán dẫn, điện cực được
sắp xếp phù hợp theo bản thiết kết vật lý để tạo ra cấu trúc bán dẫn của hệ thống
• Sau đó các wafer được cắt thành các chip riêng rẽ
• Mỗi chip được đóng gọi và kiểm tra
Trang 51Thiết kế logic số
Lưu đồ thiết kế vi điện tử dùng HDL
Logic Design Synthesis Physical Design Verification
Thiết kế logic
nestlist
Tổng hợp thiết kế
Mô phỏng chức năng Testbench
Layout file
Thiết kế vật lý Mô phỏng sau
tổng hợp
Ý tưởng thiết kế
Mô phỏng và phân tích định thời
Sản xuất và đóng gói Testing
Mô tả HDL