Việc chủ động thiết kế và chế tạo các thiết bị trong trạm thủy iện nói chung và máy iều tốc nói đ đriêng phù hợp với công cuộc công nghiệp hóa hiện ại hóa của nền kinh tế đnước nhà.. Các
Trang 1LUẬN VĂN THẠC SĨ KHOA HỌC
NGHIÊN CỨU ỨNG DỤNG
THIẾT KẾ BỘ ĐIỀU KHIỂN TẢI TRONG TRẠM THỦY ĐIỆN NHỎ
NGÀNH: XỬ LÝ TÍN HIỆU VÀ TRUYỀN THÔNG
MÃ SỐ: .
HỌC VIÊN: LÊ HỒNG TIẾN .
HƯỚNG DẪN KHOA HỌC: T.S NGUYỄN KIM KHÁNH
HÀ NỘI – 2005
Trang 2LUẬN VĂN THẠC SĨ KHOA HỌC
NGHIÊN CỨU ỨNG DỤNG CÔNG NGHỆ ASIC-FPGA THIẾT KẾ BỘ ĐIỀU KHIỂN TẢI TRONG TRẠM THỦY ĐIỆN NHỎ
NGÀNH: XỬ LÝ TÍN HIỆU VÀ TRUYỀN THÔNG
MÃ SỐ: .
HỌC VIÊN: LÊ HỒNG TIẾN .
HƯỚNG DẪN KHOA HỌC: T.S NGUYỄN KIM KHÁNH
Trang 3M ỤC ỤC L
MỤC LỤC a
DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT c
DANH MỤC CÁC BẢNG f
DANH MỤC CÁC HÌNH VẼ f
MỞ ĐẦU h
Chương 1 TỔNG QUAN VỀ NHIỆM VỤ CỦA ĐỀ TÀI 1
1.1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 1
1.1.1 THIẾT BỊ TRONG CÁC TRẠM THỦY ĐIỆN TRÊN THẾ GIỚI 1
1.1.2 THIẾT BỊ ĐIỆN TRONG CÁC TRẠM THỦY ĐIỆN NHỎ Ở VIỆT NAM, NHU CẦU THỰC TẾ 4
1.2 MỤC ĐÍCH CỦA ĐỀ TÀI 7
1.3 NỘI DUNG CỦA LUẬN VĂN 7
1.4 PHƯƠNG PHÁP NGHIÊN CỨU VÀ THỰC HIỆN 7
Chương 2 QUI TRÌNH THIẾT KẾ ASIC/ASIP VÀ CÔNG NGHỆ FPGA 8
2.1 GIỚI THIỆU 8
2.2 LINH KIỆN ASIC DẢI CỔNG MẶT NẠ 8
2.3 SỰ PHÁT TRIỂN CỦA CÁC LINH KIỆN CÓ THỂ LẬP TRÌNH 10
2.3.1 Programmable Read Only Memories (PROM) 10
2.3.2 Programmable Logic Arrays (PLA) 11
2.3.3 Programmable Array Logic (PAL) 11
2.3.4 CPLD và FPGA 12
2.3.5 Complex Programmable Logic Devices (CPLD) 13
2.3.6 Field Programmable Gate Array (FPGA) 17
2.3.7 Lựa chọn giữa CPLD và FPGA 23
2.4 TRÌNH TỰ THIẾT KẾ 23
2.4.1 Đề ra các yêu cầu kỹ thuật 23
2.4.2 Thiết kế vi mạch 26
2.4.3 Mô phỏng xem xét thiết kế – 26
2.4.4 Tổng hợp mạch 27
2.4.5 Bố trí và định tuyến 27
2.4.6 Mô phỏng lại Xem xét lần cuối - 27
2.4.7 Kiểm tra 28
2.5 VẤN ĐỀ THIẾT KẾ 28
2.5.1 Thiết kế kiểu Top - Down 28
2.5.2 Luôn chú ý đến kiến trúc 30
2.5.3 Thiết kế đồng bộ 30
2.5.4 Các điểm thả nổi (Floating Node) 39
2.5.5 Xung đột Bus 40
2.5.6 One -Hot State Encoding 41
2.6 THIẾT KẾ ĐỂ KIỂM TRA 43
2.6.1 Kiểm tra các phần tử logic dư thừa 43
2.6.2 Khởi tạo các máy trạng thái (Initializing State Machine) 44
2.6.3 Các điểm có thể quan sát được 44
2.6.4 Các kỹ thuậ t quét 45
Trang 42.7 VẤN ĐỀ MÔ PHỎNG 47
2.7.1 Mô phỏng chức năng 48
2.7.2 Phân tích định thời tĩnh 49
2.7.3 Mô phỏng định thời 49
Chương 3 CƠ SỞ LÝ THUYẾT CỦA ĐỀ TÀI 51
3.1 CÁC YÊU CẦU VỀ ĐO LƯỜNG ĐIỀU KHIỂN BẢO VỆ ĐỐI VỚI TỔ - - MÁY PHÁT ĐIỆN 51
3.2 MÁY ĐIỀU TỐC SỰ ĐIỀU CHỈNH CỦA TUA BIN NƯỚC - 52
3.2.1 SƠ LƯỢC VỀ LÝ THUYẾT VỀ ĐIỀU CHỈNH TUA BIN 52
3.2.2 CÁC PHƯƠNG PHÁP ĐIỀU CHỈNH TUA BIN 53
3.3 BỘ ĐIỀU KHIỂN TẢI 55
3.3.1 Nguyên lý cơ bản 55
3.3.2 Tham số điều khiển 62
Chương 4 THIẾT KẾ HỆ THỐNG 64
4.1 PHƯƠNG ÁN THIẾT KẾ THIẾT BỊ 64
4.1.1 Phân tích các thiết kế hiện có 64
4.1.2 Lựa chọn phương án thực hiện 66
4.2 TÍNH TOÁN THIẾT KẾ 70
4.2.1 Đo tần số 70
4.2.2 Tính giá trị điều khiển ∆α 73
4.2.3 Tính toán góc cắt của các khối tải 73
4.2.4 Phương thức điều khiển 75
4.2.5 Tính toán các thông số chính 76
4.3 THIẾT KẾ THIẾT BỊ 77
4.3.1 Khối tính toán 77
4.3.2 Khối chấp hành 81
4.3.3 Cấp nguồn 83
Chương 5 KẾT LUẬN 84
TÀI LIỆU THAM KHẢO 85 PHỤ LỤC I
MÃ NGUỒN TRONG VI XỬ LÝ AT89C51 I
MÃ NGUỒN THIẾT KẾ MẠCH FPGA XII
Trang 5DANH M ỤC CÁC KÝ HIỆU , CH Ữ VIẾT TẮT
ADC – (Analog to Digital Conv ioners ), sự chuyển đổi một á tr êgi ị li n tục (tương tự) sang giá s r r h â trị ố ời ạc ệ nhị ph n
ALU – A( rithmetic ogic L Unit), đơn vị logic s học, là mố ạch ử x lý tốc độcao dùng tđể ính to án và so sánh
ASIC – (Application pecific ntegrated ircuit S I C ), mạch tích h ợp ứng ụng d
c ụthể, là m t ộ vi mạch (chip) được thiết ế theo y u cầu của một ứng ụng k ê d c ụthể khác ới vi mạch có mục đích v chung
ATM – (Asynchronous Transfer ode), côM ng nghệ ạng ử d m s ụng cho
mạng ục ộ c b và mạng diện rộng h ỗtrợ âm thanh và h ình ảnh thời gian thực
BIST – ( Built In Self Test), l khả ăng của ột ạch ích ợp để thẩmà n m m t h định c ác chức năng b n trong của nó ê
CLB – (Configurable Logic lockB ), khối logic có ể định cấu h th ình
CMOS – (Complementary Metal Oxide Semiconductor), công nghệ được
s dử ụng ộng r r ãi trong thiết k mế ạch t hích ợp
CPLD – (Complex rogrammable P Logic Device, Complex PLD), linh
kiện logic c thể ập ình ó l tr đượcchế ạo ừ ột v t t m ài PLD đơn giản ới ma trận v chuyển mạch có thể ập l trình gi ữa c ác khối logic, thông thường ử ụng b s d ộnhớ EEPROM, b nh flash memory hoộ ớ ặc SRAM để lưu giữ logic thiết k ế
c c êủa ác li n kết ối n
CPU – (Central rocessing P Unit), b x lý ộ ử trung tâ m
DFT – ( Design For-Test), phương pháp luận để đảm b - ảo thiết ế ẽ àm k s l việc đúngsau khi chế t ạo
ELC – ( lectronic oad ontrolE L C ), thiết b i ị đ ềukhiển t ải
Trang 6EEPROM – ( lectrically r aE E as ble rogramable ead- nly emory), bộ P R O M
nhớ có ểth lập trình ch đọc, có th á bỉ ể xo ằng iện đ
EPROM – ( r a E as ble Programable Read- nly emorO M y), bộ ớ có ể nh th
l ậptrình chỉ đọc, c thể xo ó á
FPGA - Field Programmable Gate Array
FTZ - (Forbiden Triger Zone), vùng c mấm ở, khái ệm s dni ử ụng trong
điều khiển g óc pha dòng i đ ện
HDL – (Hardware Description anguage ng L ), ôn ngữ mô t mả ạch đ ện i
IC – (Integrated Circuit), linh kiện mạch t h ích ợp
NRE – ( Non Recurring - Engineering) ên quan li đến chi phí t ạo ra sảnphẩm mới, ph ải trả trước Trong công nghiệp bán d , NRE là ẫn chi ph phát í tri ểnthiết ế ạch và làm k m ảnh ặt ạ m n
RAM – (Random Aces Mem y), bộ ớ truy xuất s or nh ngẫu nhi n ê
ROM – ( Read Only Memor- y), bộ ớ ỉnh ch đọc
SoC – (System On a Chip), mạch iđ ện hoàn chỉnh, sản ph làm vi êẩm ệctr n
m ộtchip đơn
PAL – (Programmable Array Logic), logic mảng có thể lập tr ình
PID, PI, PD - (Proportional- Integral Derivative), các phương pháp ô- th ng
dụng trong l thuyết i ý đ ềukhiển
PLA – ( rogram P mable ogic L Array), mảng ác li n kết c ê logic c thể ậpó l trình
PLD - (Programmable ogic L Device), các ại vi mạch logic có thể lập lotrình theo y u cê ầu của người s dử ụng
PROM – ( r P ogramable Read-Only Mem y), bộ ớ có ể lập ình or nh th tr chỉ
Trang 7đọc
RTL – (Register Transfer Level description) là s mô t m, ự ả ạch đ ện ố ề i s v
m dặt òng ữ liệu giữa ác thanh ghi, chứa th ng tin gi chu k d c ô ữa ỳ đồng h ồxung nhịp và mạch số
SRAM – ( Static RAM), bộ nhớ RAM tĩnh
VME (bus) – V ( ersaModule Eurocard BUS) ô, c ng nghệ bus m rở ộngđược átph triển bởi Motorola, Signetics, Mostek và Thompson CSF trong những năm 80
VHDL – (Very High peed ntegrated ircuitS I C Hardware Description Language), một ngôn ngữ mô t ảphần cứng thông dụng
Trang 8DANH MỤC CÁC BẢNG
Bảng 2.1 So sánh FPGA kích cỡ nhỏ và kích cỡ lớn- 21
Bảng 2.2 CPLD so với FPGA- 23
DANH MỤC CÁC HÌNH VẼ Hình 1.1 - Thiết bị điều tốc điều khiển phụ tải (Srilanca) 3
Hình 1.2 - Thiết bị điều tốc điều khiển phụ tải (Niu-Dilan) 3
Hình 1.3 - Thiết bị điều tốc điều khiển phụ tải (Nhật Bản) 3
Hình 1.4 - Một trạm thuỷ điện điều chỉnh lưu lượng 6
Hình 1.5 - Một trạm thuỷ điện điều chỉnh phụ tải 6
Hình 2.1 - Kiến trúc dải cổng mặt nạ 9
Hình 2.2 Kiến trúc PLA 11-
Hình 2.3 - Kiến trúc PAL 12
Hình 2.4 So sánh CPLD và FPGA- 12
Hình 2.5 - Kiến trúc CPLD 13
Hình 2.6 - Khối chức năng của CPLD 14
Hình 2.7 - Khối vào/ra của CPLD 15
Hình 2.8 - Kiến trúc FPGA 18
Hình 2.9 – FPGA: Khối logic có thể định cấu hình 18
Hình 2.10 - FPGA: khối vào/ra có thể định cấu hình 19
Hình 2.11 – FPGA: Liên kết có thể lập trình 20
Hình 2.12 - Luồng thiết kế 24
Hình 2.13 - Thiết kế kiểu Top-Down 29
Hình 2.14 - Không đồng bộ: Điều kiện chạy đua 31
Hình 2.15 - Đồng bộ: Không có điều kiện chạy đua 32
Hình 2.16 - Không đồng bộ: Trễ phụ thuộc phần tử logic 32
Hình 2.17 - Đồng bộ: Trễ không phụ thuộc phần tử logic 33
Hình 2.18 - Không đồng bộ: Vi phạm thời gian nhận mẫu 33
Hình 2.19 - Đồng bộ: Không vi phạm thời gian nhận mẫu 34
Hình 2.20 - Không đồng bộ: Chạy không đều 34
Hình 2.21 - Đồng bộ: Chạy đều 35
Hình 2.22 - Không đồng bộ: Sai xung đồng hồ 35
Hình 2.23 - Đồng bộ: Không sai xung đồng hồ 35
Hình 2.24 - Vấn đề siêu ổn định - Metastability 36
Hình 2.25 - Giải pháp đối với Metastability 38
Trang 9Hình 2.26 - Vấn đề các điểm thả nổi 40
Hình 2.27 – Các giải pháp cho vấn đề các điểm thả nổi 40
Hình 2.28 - Vấn đề xung đột Bus 41
Hình 2.29 - Giải pháp cho vấn đề xung đột Bus 41
Hình 2.30 - Máy trạng thái: Phương pháp bình thường 42
Hình 2.31 - Máy trạng thái: One-Hot Encoding 42
Hình 2.32 - Kiểm tra các phần tử logic dư thừa 44
Hình 2.33 - Các điểm có thể quan sát được 45
Hình 2.34 - Scan Methodology 46
Hình 2.35 - Sự tự kiểm tra bên trong 47
Hình 3.1 - Nguyên lý điều khiển phụ tải 56
Hình 3.2 - Sơ đồ bố trí thiết bị ELC 56
Hình 3.3 - Dòng điện qua tải giả 58
Hình 3.5 - Chia nhỏ khối tải giả 60
Hình 3.6 - Quan hệ giữa góc cắt tải và công suất (hai khối tải) 61
Hình 3.7 – Góc mở không phù hợp thực tế do tính toán 62
Hình 3.8 - Góc mở không phù hợp thực tế do trễ 62
Hình 4.1 – Tích phân rời rạc 68
Hình 4.2 - Chức năng của thiết bị điều khiển tải 69
Hình 4.3 - Nguyên lý các khối chức năng của thiết bị ELC 70
Hình 4.4 - Thuật toán tính góc cắt tải 74
Hình 4.5 - Điều khiển cắt tải của một pha 75
Hình 4.6 - CPU và các giao tiếp chính 78
Hình 4.7 - Mạch biến đổi tín hiệu tần số 78
Hình 4.8 - Mạch các công tắc thiết lập giá trị điều khiển 79
Hình 4.9 - Mạch phát hiện điểm “0” 80
Hình 4.10 - Tín hiệu Rơ le sự cố 81
Hình 4.11 - Mạch điều khiển của một pha dùng biến áp xung 83
Hình 4.12 - Khối cung cấp nguồn 83
Trang 10Ngoài hệ thống nguồn điện nối lưới Quốc gia, theo quy hoạch có gần 300
xã vùng sâu, vùng xa, không có khả năng nối lưới Quốc gia cũng được chú ý , phát triển năng lượng điện tại chỗ t ừ nhiều ngu , như ồn điện gió, pin mặt trời, thuỷ điện nhỏ, trong đó chủ ếu y là thuỷ i đ ện nhỏ qua các dự án của Chính , phủ và các tổ chức Quốc tế như Ngân hàng thế giới (WB , Ng n hàng phát) âtri â Á (ểnch u ADB , ơ quan hợp t ) C ác quốc ế Nhật ả JICA t B n ( ) …
Trong các công trình thuỷ điện, các thiết bị đo lường điều khiển - - bảo vệ giữ vị trí rất quan trọng; Chúng đảm bảo cho sự hoạt động an toàn và hiệu quả của thiết bị trong nhà máy, nâng cao và duy trì chất lượng dòng điện phát ra theo yêu cầu ngày càng tăng của phụ tải ối với các trạm thuỷ iện nhỏ và Đ đ
Trang 11cực nhỏ hoạt động độc lập hoặc trong lưới iện nhỏ, việc ảm bảo chất lượng đ đdòng điện ều phụ thuộc vào việc duy trì sự cân bằng công suất phát ra và đcông suất tiêu thụ của phụ tải Sự cân bằng này được thực hiện bởi thiết bị
điều tốc Cho ến nay, hầu như các trạm thuỷ iện nhỏ và cực nhỏ ều sử đ đ đdụng thiết bị iều tốc cơ khí hoặc thậm chí bằng tay ối với nhiều trường đ Đhợp, sử dụng thiết bị iều tốc iều chỉnh lưu lượng truyền thống là không đ đkinh tế, chưa thật sự phù hợp với yêu cầu thực tế Mặt khác, hầu hết các thiết
bị trong một trạm phát iện ều phải nhập từ nước ngoài Ngoài việc phải sử đ đdụng ngoại tệ, việc nhập khẩu các thiết bị từ nước ngoài làm cho việc bảo hành, bảo dưỡng và sửa chữa thiết bị gặp nhiều khó khăn Việc chủ động thiết
kế và chế tạo các thiết bị trong trạm thủy iện nói chung và máy iều tốc nói đ đriêng phù hợp với công cuộc công nghiệp hóa hiện ại hóa của nền kinh tế đnước nhà Các công trình thuỷ điện đã xây dựng trong giai đoạn trước, sử dụng công nghệ của những năm 60 đã lạc hậu, phần lớn đã hư hỏng, có nhu cầu lớn về sửa chữa, thay thế và nâng cấp thiết bị Các công trình thuỷ điện được xây dựng trong giai đoạn tới có mức đầu tư lớn, đòi hỏi rất cao về khoa học, công nghệ Riêng về lĩnh vực các thiết bị đo lường điều khiển - - bảo vệ,
sử dụng các thành tựu mới nhất của công nghệ điện tử tin học đã trở thành - tiêu chuẩn công nghiệp
Hiện nay, linh kiện FPGA được sử dụng nhiều trong việc tạo ra các sản phẩm mẫu (prototype) của hệ thống điện tử, đặc biệt là các hệ thống SoC (system on chips) Bên cạnh đó, giá thành của FPGA ngày càng rẻ, cho phép
độ tích hợp trên chip lớn, nên không những thích hợp cho việc tạo sản phẩm mẫu để thử nghiệm hệ thống, mà còn có thể dùng cho việc sản xuất các hệ thống khi số lượng sản phẩm không quá lớn Khi số lượng sản phẩm không quá lớn, hệ thống bằng FPGA kinh tế hơn là chế tạo IC đặc chủng, điều rất quan trọng khi ở Việt Nam chúng ta chưa có công nghệ chế tạo IC Qui trình
Trang 12chế tạo, kiểm tra sản phẩm FPGA đơn giản và rẻ hơn nhiều so với chế tạo IC, phù hợp với điều kiện phát triển công nghệ trong nước Nước ta có tiềm năng lớn về phần mềm, hướng nghiên cứu nắm vững kiến thức về FPGA , VHDL, thiết kế hệ thống SoC… sẽ thúc đẩy khả ă n ng tham gia th ịtrường gia công off-shell cho các công ty lớn tương tự như gia công phần mềm
Với mục đích nghiên cứu khả năng sử dụng công nghệ FPGA chế tạo chip (IC) chuyên dụng phục vụ thực tế sản xuất, từng bước tăng cường khả năng ứng dụng của FPGA trong điều kiện Việt Nam; Xuất phát từ nhu cầu thực tế, tác giả đã lựa chọn đề tài “NGHIÊN CỨU ỨNG DỤNG CÔNG NGHỆ ASIC-FPGA THIẾT KẾ BỘ ĐIỀU KHIỂN TẢI TRONG TRẠM THỦY ĐIỆN NHỎ”, với mong muốn đưa các kết quả nghiên cứu khoa học ứng dụng vào thực tế sản xuất
Trang 13Chương 1 TỔNG QUAN V Ề NHIỆM V C Ụ ỦA ĐỀ TÀI
1.1 T ÍNH ẤP C THI ẾT ỦA ĐỀ C T ÀI
1.1.1 THIẾT BỊ TRONG CÁC TRẠM THỦY ĐIỆN TRÊN THẾ GIỚI.
Ngày nay khoảng cách giữa nghiên cứu và ứng dụng được rút ngắn rất nhiều so với các thập niên trước Các thành tựu mới của khoa học công nghệ luôn được ứng dụng vào thực tế, và qua thực tế quay lại hoàn thiện hơn Việc chế tạo thiết bị đo lường điều khiển bảo vệ- - đã ứng dụng rất nhiều thành tựu của khoa học về điều khiển tự động, của công nghệ điện tử tin học Nhìn chung, có thể ưa ra một số nhận xét sau:đ
1 Hầu như, việc ứng dụng vi xử lý, cô ng nghệ đ ện t - i ử tin h đã trở ọc thành phổ biến Ưu điểm của chúng đã có nhiều tác giả đề cập, ở đây ta có thể nêu ra một số nét chính:
- Kích thước nhỏ;
- Thời gian xử lý nhanh, với tốc độ xử lý cỡ µs hoàn toàn đảm bảo tính thời gian thực (real-time) trong đo lường và iều khiển;đ
- Độ chính xác cao, với các thế hệ 8, 16 và 32 bit, độ chính xác đã đạt mức
độ vô cùng lớn so với yêu cầu iều khiển;đ
- Số lượng các ầu vào ra lớn cùng các tính nđ ăng điều khiển được tích hợp trên linh kiện (on-chip), làm tăng khả năng xử lý nhiều tác dụng cùng lúc, bộ điều khiển trở thành a tác dụng, không chỉ ơn thuần iều khiển ộtđ đ đ m thông
số nhất định c ; ụthể
- Khả năng truyền tin mang đến khả năng đo lường iều khiển từ xa, dễ đdàng thiết lập mạng thông tin SCADA;
Trang 14- Mềm dẻo trong thuật toán: Do các thuật toán iều khiển là phần mềm, đviệc thay thế, sửa chữa các thuật điều khiển, các thông số hoàn toàn là phần mềm, không phải sửa chữa hoặc thay thế phần cứng (Do đó mạch ện iđ phần
cứng ũng đơ c n giản ơn nhiều h );
- Giá thành tương ối rẻ và dễ chế tạo trong nước: Do giá thành chế tạo đcác linh kiện iện tử giảm xuống nhanh chóng, do mức ộ sử dụng rộng rãi, đ đnên việc mua các linh kiện không quá khó khăn Mặt khác, trình độ về iện tử đ
- tin học trong nước đã phát triển cao, nên có thể hoàn toàn làm chủ được việc viết phần mềm điều khiển Việc đầu tư sản xuất không lớn khi so sánh với các thiết bị cơ khí - thuỷ lực
2 Đối với các trạm thủy iện công suất lớn, việc ng mở tua bin và các đ đóthiết bị cần phải có công suất lớn, nên cơ cấu chấp hành vẫn là thủy lực
3 Đối với trạm thủy iện nhỏ, sử dụng cơ cấu chấp hành là đ động cơ iện đ
đã trở nên phổ biến do kích thước gọn, cơ cấu ơn giản, giá thành chế tạo rẻ đhơn nhiều so với cơ cấu thủy lực
4 M ột xu hướng ắt đầu phổ biến b là với các trạm thủy đ iện nh ho t ỏ ạ động c l độ ập , sử dụng điều tốc tải giả hay còn gọi là b i ộ đ ều khi t ển ải (ELC) làm đơn giản hẳn quá trình iều khiển, ộ bền thiết bị ược tđ đ đ ăng lên,
do thiết bị làm việc ổn ịnh ở một chế ộ nhất đ đ định; giá thành thiết bị rẻ hơn nhiều so với iều chỉnh lưu lượng.đ
Theo các thông tin, tài liệu từ các công ty, tổ chức nước ngoài về thủy điện nhỏ như: Hãng TANAKA (Nhật bản), Trung tâm khu vực Châu Á - Thái
Bình ương về thủy iện nhỏ (D đ HRC - Hàng Châu Trung Quốc), Mạng lưới
-cộng tác ề thuỷ đ ện nhỏ SHP network) cho thấy đ v i ( iều tốc iều chỉnh phụ đtải (Electronic Load Control - ELC) đã ược sử dụng rộng rãi trong các đtrường hợp như đã phân tích ở trên Loại thi b cết ị ủa Srilanca hoàn àn to s ử
Trang 15dụng ỹ k thuật analog, phù h v t mợp ới ổ áy thuỷ đ ện ực nhỏ T ết ị ủa i c hi b c
hãng PowerFlow (Niu-Dilan) sử dụng linh kiện PLD (Programable Logic Device), phù h v c ợp ới ác trạm thuỷ đ ện nhỏ Cũng ử ụng cho các trạm i s dthuỷ đ iện nh , thiết b c ỏ ị ủa TANAKA (Nhật Bản) sử ụng vi xử lý kết hợp với dlinh kiện FPGA
Hình 1.1 - Thiết bị điều tốc iều khiển phụ tải (Srilanca)đ
Hình 1.2 - Thiết bị điều tốc iều khiển phụ tải (Niuđ -Dilan)
Hình 1.3 - Thiết bị điều tốc iều khiển phụ tải (Nhật Bản)đ
Trang 161.1.2 THIẾT BỊ ĐIỆN TRONG CÁC TRẠM THỦY ĐIỆN NHỎ Ở VIỆT NAM, NHU CẦU THỰC TẾ
Có thể nhận thấy một s ốvấn đề trong lĩnh vực này:
Thứ nhất, đối với các trạm thủy iện nhỏ, giá thành của máy iều tốc đ đchiếm tỷ trọng tương đối lớn trong tổng giá trị các thiết bị Mặt khác, do cơ cấu tiêu chuẩn hóa thiết bị tua bin, một loại máy iều tốc ược sử dụng đ đ trong
m ột phạm vi lớn ề công suất của tua bin, nên đối với tổ máy công suất nhỏ, v
tỷ trọng giá thành của máy iều tốc càng lớn.đ Ví dụ: Máy i t -đ ều ốc TT 150 sử
dụng cho các t mổ áy thuỷ đ ện ừ 20 200 k , i t – W có á gi 160 triệu đồng, trong khi giđó á thành c ácthiết b ịtua bin và máy phát khoảng 5 triệu đồng/kW
là loại máy Cơ khí Thuỷ lực; Sau một thời gian vận hành nhất - định, hầu như
đã bị hư hỏng mà không có phụ tùng thay thế Các chi tiết thuỷ lực tuy không lớn, nhưng đòi hỏi phải gia công rất chính xác và chất lượng vật liệu tốt Đa
số các trạm thuỷ điện nhỏ này, do không có máy điều tốc hoặc do máy điều tốc đã bị hư hỏng, phải vận hành bằng tay, nên chất lượng dòng điện không đảm bảo tiêu chuẩn hoà lưới quốc gia, mặt khác rất dễ hư hỏng tổ máy khi gặp sự cố
Thứ ba, thực tế vận hành các trạm thủy iện nhỏ hoạt ộng ộc lập cho đ đ đthấy trong nhiều trường hợp, việc sử dụng các thiết bị ều tốc iều chỉnh lưu đi đlượng tỏ ra không phù hợp, vì những lý do sau:
- Với các trạm thủy điện nhỏ và cực nhỏ, sử dụng iều tốc iều chỉnh lưu đ đlượng kéo theo sự t ng giá thành thiết bị, thậm chí có trường hợp, giá thành ăthiết bị iều tốc còn cao hơn các thiết bị còn lại của trạm thủy iện;đ đ
- V với iệc điều chỉnh lưu lượng bắt buộc tua bin thủy iện phải có cấu tạo , đphù hợp, làm t ng sự phức tạp về thiết bị, t ng chi phí vận hành, bảo dưỡng ă ă
Trang 17Hơn nữa, trong trường hợp này, sự hoạt động của thiết bị luôn biến động do
sự thay ổi của phụ tải tiêu thụ (là rất lớn khi hoạt đ động độc lập), làm giảm tuổi thọ của thiết bị;
- Tại các trạm thuỷ điện trên hệ thống tưới, không thể tuỳ ý thay ổi lưu đlượng qua tổ máy; hoặc tại các vị trí mà iều kiện về dòng chảy không bị hđ ạn chế, vì thế không thể hoặc không cần thiết điều chỉnh lưu lượng;
- Tại các đ địa iểm xa xôi, hẻo lánh như vùng núi cao, các ồn biên đphòng do thiếu nhân lực vận hành, do iều kiện i lại khó khđ đ ăn rất cần thiết ơn giản hóa việc vận hành thiết bị đ để tự động hóa từng phần hoặc hoàn toàn việc vận hành trạm;
Vì thế, trong những trường hợp có thể, sử dụng iều tốc iều chỉnh phụ tải đ đ
sẽ mang lại hiệu quả tốt hơn: ơn giản hơn về thiết bị, dễ dàng vận hành, như Đvậy giá thành xây dựng sẽ thấp hơn mà chất lượng dòng iện vẫn đ được ảm đbảo
Theo tài liệu qui hoạch điều tra ềv thuỷ đ ện i nhỏ của Trung tâm nghiên
c ứu thuỷ đ ện nhỏ Viện Khoa học thuỷ ợi nhu cầu chế tạo mới, sửa chữa i , l , thay thế thiết bị c ũ cho các trạm thuỷ điện là rất lớn, việc chủ động thiết kế, chế tạo được máy iều tốc nói chung cũng như đ điều tốc iều chỉnh phụ tải đtrong nước sẽ mang lại nhiều lợi ích về kinh tế, xã hội
Bên cạnh việcchủ động s ản xuất ác thiết ị phục ụ nhu cầu c b v trong nước, khả ă n ng xuất khẩu c ác thiết b ịthuỷ đ iện là ện thựchi Trung tâm nghi n cê ứu thuỷ đ iện nh đã bắt đầu ất ỏ xu khẩu ác c thiết b ịthuỷ đ iện ỏ nh sang các ước n
kh nhác ư Indonexia, T y Ban Nha, Pháp Để g â óp phần thúc đẩy việc xuấtkhẩu, cần có những nghi n cứu để năng cao chất lê ượng ủa c thiết ị b
Như đã đề cập trong phần m đầu, việc đẩy mở ạnh ản s xuất i t đ ện ừnguồnthu n ng dồi d cào ủa n ta l nhu cầu hiện ực Hy vọng đề t gà th ài óp ph ần
Trang 18nhỏ bé v côào ng cuộc iện í á cđ kh ho ủa nước à nh
1 – Tua bin thuỷ lực; 2 Máy điều tốc –
H 4 - M ình 1 ộttrạm thuỷ i i đ ện đ ềuchỉnh ưu lượng l
H 5 - M ình 1 ột trạm thuỷ i i đ ện đ ềuchỉnh phụ ải t
Trang 191.2 M ỤC ĐÍCH ỦA ĐỀ C T ÀI
1 Nghi n cê ứu khả ă n ng ứng dụng thành ựu ng nghệ đ t cô iện t ử tin học v ào
thực t s ế ản xuất, cụ ểth là công ngh ệ ASIC-FPGA, phù hợp với ch ương ủ trchính sách ủa c Nhà nước ề v phát tri ển công nghệ ông tin th
2 Bám át ào nhu cầu thực ế ủa ản xuất đ ện phục ụ ác ùng, miền s v t c s i v c v
xa xôi hẻo ánh, việc chế tạo b i l ộ đ ềukhiển tải (ELC) sẽ óp phần ào việc c g v ảithiện cuộc ống nô s ng th n miền úi, theo phương hô n ướng công nghiệp áho ,
hiện đại hoá nông th n miềnô núi Việcchế ạo ộ t b ELC mang lại nhiều l ợi íchthi thết ực
1.3 N ỘI DUNG CỦA LUẬN Ă V N
N ộidung của luận ăn bao gồm: v
- Lý thuyết: Khảo sát phương pháp thiết kế hệ thống bằng công nghệ FPGA
- Thực nghiệm: Ứng ụng d công nghệ FPGA thiết kế thiết b ịđiều khiển
ph t ụ ải trong trạm thủy điệnnhỏ
1.4 PH ƯƠ NG PH ÁP NGHIÊN CỨU VÀ TH ỰC HI ỆN
- Tham khảo các tài liệu của nước ngoài
- Khảo sát các thiết bị của nước ngoài đang hoạt động tại các trạm thủy điện tại Việt Nam
- Tự nghiên cứu thiết k ế chế ạo t thiết b ị
Trang 20Chương 2 QUI TRÌNH THIẾT K AS Ế IC V À CÔ NG NGH Ệ
FPGA
2.1 GI ỚI THIỆU
Field Programmable Gate Array (FPGA) đang trở thành phần then chốt
của mọi thiết kế hệ thống Nhiều nhà sản xuất đưa ra nhiều kiến trúc và qui trình khác nhau Loại nào là phù hợp với thiết kế của người ùng? ần thiết d C
kế thế nào để vi mạch có thể làm việc đúng đắn và hoạt động như mong muốn trong toàn bộ hệ thống?
Phần đầu ủa c chương ày đề ập ấu trúc n trong v đặc ính ủa ác n c c bê à t c c thiết b nị ày PLD (Programmable logic devices) được mô t ả khái quát, ẫn dđến mô t ả chi ti Fết PGA ác ki C ến trúc khác nhau của loại thi b nết ị ày được khảo s át chi ti cho phết ép quyết định ựa l chọn loại thiết ị ph b ù h vợp ới thiết
k ế
Phần tiếp theo là tiến trình thi ết k d ế ựán FPGA Ph ần ày n mô t c bả ác ước thiết k c ế ần thiết Điều n ày cho phép người ết k thi ế ho quặc ản d trị ự án định
rõ t ài nguyên và t k ạo ếhoạch
Phần cuối ủa chương thảo luận chi tiết ề thiết ế, c v k mô phỏng và thửnghiệm khi thiết ế FPGA Hiểu biết những thử nghiệm này sẽ cho phép thiết k
kế vi mạch hoạt động chính xác trong hệ thống và tin cậy suốt th gian tuổi ờithọ của s ảnphẩm
2.2 LINH KIỆN ASIC DẢI ỔNG MẶT N C Ạ
M ột vi mạch t hích ợp ứng dụng c ụ thể, hay ASIC, là một vi mạch có thểđược thiết k bế ởi một k s ỹ ư không c kiến thức ó chuy n s u về ậtê â v lý bán d ẫn
hoặc x lý b dử án ẫn Nh ản xuất AS đã ạo ra thư ện c ô (à s IC t vi ác cell) và chức
Trang 21năng (function) m người thiết ếà k có s dthể ử ụng mà ôkh ng cần biết chính ác x
l àm sao các chức ăng đó được thực hiện tr n chất án ẫn Nh ản xuất n ê b d à s
ASIC cũng h tr ỗ ợ phần mềm t ự động c á ác qu trình như ổng ợp t h và b í ố tr
mạch, thậm ch í có thể cung cấp ng nghệ cô ứng dụng để h trỗ ợ c kác s ết ỹ ư thi
k ế ASIC thực hiện nhiệm ụ v
D cải ổng (gate array) là m ột ASIC với ấu trúc ụ thể bao gồm ác àng c c c h
và c c c ột ủa ấu trúc transitor chuẩn ỗiM ô c bơ ản, hoặc ỗi ổng, bao gồm m c
cùng ố nhỏ transistor kh ng li n kết ới nhau Thực ế, kh ng một transistor s ô ê v t ô
n ê d i cào tr n ả ổng được ối ới nhau lúc n v đầu Lý do cho điều này là, các ết k
n s ối ẽ được x ác định cuối ùng ởi ản thiết kế ủ người ùng ỗi khi nhận c b b c a d M được bản thiết kế, ph mềm s b í tần ẽ ố tr ính toán transistor ào ần được li n n c ê
kết Đầu ti n, các àm chức ăng mức thấp được ết ối ới nhau ê h n k n v Ví dụ, 6 transistor có thể được ối ới n v nhau để t ra D ạo flip-flop, c ác transistor n s ày ẽđược định v mị ột cách ật lý rất ần v g nhau Sau khi các àm h ch năng mức ức
thấpđược định tuyến, đến ượt chúng ẽ được ê l s li n kết ới nhau Phần ềm s v m ẽ
tiếp tục á ìnhqu tr x lý n ử ày cho đến khi toàn b ộthiết k ế được hoàn ch ỉnh C ấutrúc hàng và cột được mô t hả ở ình 2.1
Trang 22Nhà s ảnxuất ASIC chế tạo ều ối chứa c d cnhi kh ác ải ổng chưa li n kết ớiê v nhau và nó có thể ử ụng cho bất ỳ s d k yêu cầu ào ột ạch ích ợp bao n M m t h
gồm nhiều ớp ật liệu trong l v đó có v ật ệuli b d án ẫn , chất ách đ ện c i và chất
d iẫn đ ện ột khối chưa li n kếtM ê được x lý vử ới t c c lất ả ác ớp ngoại ltrừ ớp kim loại cuối ùng liê c n kết c các ổng ới nhau ỗi v M khi thiết k k ế ết thúc, nhà chế tạo đơn giản cần b ổ sung các l ớp kim loại cuối ùng n khối t c lê để ạo ra vi
mạch, ử ụng ặt ạ photomasks) cho mỗi lớp kim loại Vì lý do này, đôi s d m n (khi nó được nhắc đến như là dải cổng mặt n (ạ Masked Gate Array) âđể ph n biệt nó v ớiFPGA
2.3 S Ự PHÁT TRIỂN ỦA ÁC LINH KIỆN C C CÓ TH L Ể ẬP TR ÌNH
C ác linh kiện có thể ập trình đã trải qua ột cuộc ách ạng u dài để l m c m lâ đạt tới s ự phức tạp như ngày nay Ph ần sau đưa ra sự xem xét theo thời gian
c c ủa ác linh kiện ày ừ đơn giản đến phức ạp n t t
2.3.1 Programmable Read Only Memories (PROM)
Bộ nhớ ROM lập trình được (Programmable Read Only Memorie - PROM) đơn giản là bộ nhớ có thể dễ dàng lập trình lại bởi người sử dụng để chứa nội dung nhất định Nội dung này có thể là một chương trình c ủavi xử
lý, một thuật toán đơn giản hoặc trạng thái áy M v m ột ài loại PROM chỉ có thể lập trình ột lần Các loại m PRO khM ác, ư nh EPROM hoặc EEPROM có thể á và xo ghi nhiều l ần
PROM r ất thuận tiện cho việc thực thi b k ất ỳloại t hổ ợp logic nào với s ốgiới h c ạn ác đầu ào v và đầu ra Là phần tử logic tuần tự, các thi b có ết ị xung đồng hồ ngo nhài ư flip flop ho- ặc vi xử lý ph được b ải ổ sung vào Ngoài , raPROM có khuynh hướng ất chậm, r vì v ậychúng không hữu v c ích ới ác ứng
dụng ần ốc độ c t nhanh
Trang 232.3.2 Programmable Logic Arrays (PLA)
Mảng logic lập trình được (Programmable Logic Arrays PLA) là một giải - pháp đối với giới hạn tốc độ và số đầu vào của PROM PLA bao gồm s l ố ớn
c ác đầu ào được ối ới ớp (plane) các ổng AND, ơi các ổ ợp khác v n v l c n t h nhau của tín hi ệu có thể được êli n kết AND ới nhau tu v ỳtheo cách ác phần c
t ử được ập l trình ác đầu ra của ác ớp AND đi trực tiếp ới ớp ổng OR, C c l t l c
nơi các quan hệ được êli n kết OR theo các hợp tổ khác nhau và cuối cùng đưa
ra kết quả ại ác đầuT c ra và đầu vào, c ác khối đảo cho logic NOT Nhữngó c linh kiện n có ày thể thực ện m s l h t hhi ột ố ớn àm ổ ợp, mặc dù ôkh ng phải t ất
c t h ả ổ ợp giống như trường ợp linh kiện PROM thực hiệ Tuy nhi n, chúng h n ê
n ói chung c nhiều ơn số đầu v và ó h ào nhanh hơn
Hình 2.2 - Kiến trúc PLA2.3.3 Programmable Array Logic (PAL)
Logic mảng lập trình được (Programmable Array Logic - PAL) biến thểlà
c ủa PLA Giống như PLA, nó có l ớpAND rộng, lập trình được đối ới logic v AND các đầu vào Tuy nhi n, ê l ớp OR được ố định gi c , ới hạn s đầu ố ra có thể
OR v ới nhau Các thiết b ị logic cơ ản kh , như b ác multiplexer, exclusive OR,
và b ộ chốt latche) ( được ổ b sung th m vào ác đầu àoê c v và ra Quan trọng
nhất, các ần t ph ử đồng ồ h (clocked element), flip flop thông thường, được đóng gói ùng c Những linh kiện này hiện nay c thể thực hiện ố ớn ác àmó s l c h
Trang 24-logic bao gồm h àm logic tuần t ự theo nh xung (clocked sequential logic) ịp
c ần thiết cho ác áy c m trạng thái Điều này là sự phát triển quan trọng cho phép linh kiện PAL có thể thay thế nhiều logic chuẩn trong nhiều thiết ế kPAL cũng có tốc độ r ấtnhanh
Hình 2.3 - Kiến trúc PAL2.3.4 CPLD và FPGA
Hình 2.4 - So sánh CPLD và FPGA
M cột ách lý tưởng, người thiết ế phần ứng mong muốn một c gì k c ái đómang lại s ự linh hoạt và s ự phức t ạp của ASIC, ưnh ng với một quá trình ngắn hơn linh kiện có thể lập trình (programmable device) Giải pháp đưa đến hai
dạng linh kiện ới m - CPLD Complex Programmable Logic Device) và FPGA ((Field Programmable Gate Array) Như có thể thấy trong hình 4, linh kiện 2
Trang 25CPLD và FPGA khắc ục s ph ự khiếm khuyết giữa linh kiện PAL và Gate Array Linh kiện CPLD có t ốc độ nhanh nh linh kiư ệnPAL nhưng c độ ó phức
h ợpcao hơ Linh kiện FPGA đạt đến độ phức ợp ủa Gate Array, lại có n h c thể
l ậptrình được
2.3.5 Complex Programmable Logic Devices (CPLD)
Linh kiện CPLD (Complex Programmable Logic Devices) v c b ề ơ ảnchúng đượcthiết k ế đểxuất hiện như là một s lố ớn linh kiện PAL trên một vi
mạch đơn, được li n kết ới nhau qua các chuyển ê v mạch giao điểm (crosspoint switch) Chúng ử ụng ùng ột cô s d c m ng cụ phát triển và lập trình
và được ựa d êtr n cùng công nghệ, ưng chnh úng có thể ử x lý phức ợp ơ h h n
2.3.5.1 Các cấu trúc CPLD
Hình 2.5 - Kiến trúcCPLD
S ơ đồ trong hình 2.5 thể hiện cấu trúc bên trong của linh kiện CPLD thông thường Trong khi mỗi nhà sản xuất có các biến thể khác nhau, nói chung chúng giống nhau ở chỗ chúng gồm các khối chức năng, kh vối ào/ra và một
ma trận k n C ết ối ác linh kiện ử ụng ác phần ử ập trình được để ập trình, s d c t l l
phụ thuộc v côào ng nghệ ủa c nhà s ản xuất, có thể là c ô ác EPROM,
EEPROM hoặc Flash EPROM
Trang 26C ác khối chức ăng n
Khối chức ăng thô n ng thường được thể hiện tr n h 2 ê ình 6 ớpL AND v ẫn
c t t òn ồn ại thể hiện ởi ác b c dây cắt ngang ớp AND L có thể chấp nhận đầu
v t ào ừ khối ào ra ừ ác khối chức ăng khác hoặc phản ồi ừ trong cùng v , t c n h t
m ột khối chức ăng ác quan hệ, sau đó n C được ử x lý logic OR ới nhau sử v
dụng c các ổng OR ố định, c và c ác quan hệ được ựa chọn qua bộ ồn nh l d kê
lớn ác đầu ra của ộ ồn nh sau đóC b d kê có thể chuyển trực tiếp ra khỏi khối
hoặc qua flip-flop Khối c ụ thể này bao gồm ác phần ử logic bổ sung như c t
c ác phần ử OR t N có l thể ựa chọn và t ín hiệu master reset, thêm vào có để thể
l ậptrình ph n cực ở ác trạng ái â c th khác nhau
Thông thường, ối kh chức ă được thiết k t n ng ế ương tự với cấu trúc PAL đã
có, như 22V10, sao cho người thiết kế có thể sử dụng các công cụ quen thuộc hoặc thậm chí không thay đổi các thiết kế cũ
Hình 2.6 - Khối chức ăng của n CPLD
C ác khối vào /ra
Hình 2.7 thể hiện một khối vào/ra thông thường của linh kiện CPLD Khối
Trang 27vào/ra được sử dụng để điều khiển tín hiệu tới các chân của linh kiện CPLD tại các ngưỡng điện áp thích hợp với dòng thích hợp Thông thường, khối flip-flop được bao gồm, như chỉ ra trên hình 2.7 Điều này được thực hiện trên các cổng ra sao cho các tín hiệu đồng hồ có thể xuất ra trực tiếp tới các chân
mà không gặp phải sự chậm trễ đáng kể nào Nó được thực hiện đối với các cổng vào sao cho tín hiệu không ị trễ nhiều b trước khi tới flip-flop, tăng yêu cầu ảnh hưởng t thời gian Ngoài ra, một số lượng nhỏ các phần tử logic ớiđược thêm vào khối vào/ra đơn giản để tăng thêm tài nguyên cho linh kiện
Hình 2.7 - Khối vào/ra ủa c CPLD
S ê ự li n kết c ác khối
S êự li n kết ủa linh kiện CPLD là một ma trận chuyển mạch rất lớn có thể c lập trình được cho phép tín hiệu từ tất cả các phần tử của linh kiện đi tới tất cả các phần tử khác của linh kiện Tuy không có chuyển ạch m nào có êthể li n k ết
t c ất ả khối chức ăng b n trong với nhau, chúng n ê có s mđủ ự ềm d ẻo để cho
phép nhiều ổ ợp c t h ác ên kết li
C ác phần ử t có th l ể ập tr ình
C à s ác nh ản xuất khác nhau sử ụng ác ng nghệ khác nhau để thực hiện d c cô
c ác phần ử t có l thể ập trình ủa linh kiện CPLD Các công nghệ thông dụng là c EPROM, EEPROM và Flash EPROM C côác ng nghệ ày n là tương tự, hoặc
Trang 28v c với ác ersion hiện đại, hoặc ới ng nghệ v cô mà đã được ử ụng đối ới s d v linh
kiện l ậptrìnhđược đơn giản ất nh PROM
2.3.5.2 Các vấn đề cấu trúc CPLD
Khi xem xét một linh kiện CPLD để ử ụng cho thiết ế, ác ấn đề sau s d k c v
c t ần ính đến:
1 Công nghệ ập trình l
- EPROM, EEPROM, hay Flash EPROM? Đ ều ày s x i n ẽ ác định thiết ị b
c l ần để ậptrình linh kiện và liệu chúng ần ập trình một l c l ầnhay nhiều l ần
2 Khả ă n ng của ối kh chức ă n ng
- Bao nhiêu khối chức ăng có n trong linh kiện?
- Bao nhi u kết ê quả ích t và tổng có s dthể ử ụng?
- l Độtrễ ớn nhất và nhỏ nhất qua các khối logic?
- Có c t ác ài nguyên bổ sung như XNOR, ALU, v.v…?
- Dạng đ ều i khiển thanh ghi nào có s (ví d có ẵn ụ, cho phép xung đồng ồ, hreset, preset, polarity control)? Có bao nhiêu đầu vào cục bộ tới khối chức năng và bao nhiêu đầu vào toàn cục?
- Kiểu đ ều khiển xung đồng ồ tr n linh kiện i h ê và trường ợp ệch xung h l
nhịp x ấu nhất là gì i n s Đ ều ày ẽ giúp ác định ần ố ớn nhấ x t s l t mà linh kiện có thể hoạt động
3 Khả ă n ng vào/ra
- Bao nhi u cổngê v /ra ào độc lập, s dử ụng cho mọi chức năng, và bao nhiêu
cổng dành ri ng cho xung đồng hồ, master reset, v.v ? ê
- Khả ăng đ ều khiển ra dưới ạng ức đ ện áp n i d m i và dòng?
- Kiểu logic bổ sung trong khối vào/ra mà có thể ử ụng để t s d ăng cường
Trang 29chức năng của thiết k ? ế
2.3.5.3 C ví d v h ác ụ ề ọ linh kiện CPLD
M v h ột ài ọ linh kiện CPLD ừ ác nh ản xuất khác nhau được liệtt c à s kê
dưới đâ y:
- H ọMAX 7000 MAX 9000 ủa Alteravà c
- H ọATF v ATV của Atmelà
- H ọ ispLSI của Lattice
- H ọ MACH ủa Latticec
- H ọ XC9500 ủa Xilinxc
2.3.6 Field Programmable Gate Array (FPGA)
FPGA được ọi như ậy g v vì đáng nhẽ có c ấu trúc ương tự linh kiện PAL t
hoặclinh kiện ập ình l tr được khác ch, úng được ấu c trúc r ất giống ảng ổng m cASIC i n l Đ ều ày àm cho linh kiện FPGA ất ữu ụng trong việc r h d chế ạo ẫu t m linh kiện ICAS , hoặc ở ơi mà n cuối ùng phải ử ụng c s d ASIC Ví d m ụ, ột linh kiện FPGA có thể ử ụng trong thi s d ết k c ế ần xuất hiện ớm trê s n thị trường,
không c quan tần âm đến á cgi ả Sau đó ột linh kiện m ASIC c thể ử ụngó s dthay thế FPGA khi s lượng sản phẩm tố ăng l n, để giảm á ê gi thành
2.3.6.1 Các cấu trúc FPGA
M à s ỗi nh ản xuấ linh kiện FPGA t có m c ột ấu trúc riêng của họ, ưng nh
nhìn chung chúng ến bi đổi xung quanh cấu trúc thể hiện ở ình 8 C h 1 ấu trúcbao gồm c ác khối logic c thể định ấu nh, khối vó c hì ào/ra c thể định cấu hình, ó
và c êác li n kết có l thể ập trình Ngo ài ra, sẽ có mạch đồng h ồđể điều khiển t ín
hiệu xung nhịp t tới ừng khối logic, ác àic t nguyên bổ sung như ALU, ộ nhớ, b
và có có c b thể ác ộ giải mã Hai kiểu phần ử t có l thể ập trình đối ớ FPGA l v i à
Trang 30Hình 2.8 - Kiến trúc FPGA
C ác khối logic c thể định ấu nh (Configurable Logic Block - ó c hì CLB)
Hình 2.9 – FPGA: Khối logic có thể định cấu hình
C ác khối logic c thể định ấu nh chứa đựng logic cho linh kiện FPGA ó c hìTrong cấu trúc khối ớn, các CLB này s l ẽ chứa đựng đủ ác quan hệ logic để c
t ạo ra máy trạng thái nhỏ Trong cấu trúc khối nhỏ, nhiều ơn so với ảng h m
cổng ASIC thực ự, khối CLB ẽ chỉ chứa đựng khối logic rất ơ ản ơ đồ s s c b S trong hình 2.9 sẽ được coi như khối lớn Nó chứa RAM t để ạo ra các hàm
Trang 31logic tổ hợp tu ý Nó cũng ỳ chứa ác flip- c flopcho các phần t ử chứaxung nhịp
đồng hồ và b d kênh địnhộ ồn để tuyến logic trong kh t và tối ừ ới các t àinguyên b n ngoài ộ ồnê B d kênh cũng cho phép ựa chọn ấu, reset l d và l ựachọn xoá đầu v ào
C ác khối ào/ra c thể định ấu nh v ó c hì
Hình 2.10 - FPGA khối vào/ra có thể định cấu hình :
Khối vào/ra có thể định c hìấu nh th hi, ể ện êtr n hình 10, 2 được s dử ụng để
d t ẫn ín hiệu ào vi mạch v và g ửi chúng trở ại l Nó bao gồm b ộ đệm v và b ào ộđệm ra 3 trạng thái và c b iác ộ đ ều khiển ra ki open collector Thông thường ểu
có c i ác đ ện trở pull up tr n các ổng ra v đôi khi c ác đ ện trở pull down - ê c à ó c i
-C c ực ủa đầu ra c thể được ập trình ích ực cao hoặc ích ực thấó l t c t c p và
thường tốc lđộ ệch ủa c cổng ra c thể ập ình thó l tr ời gian tăng và giảm nhanh
hoặcchậm Th m vào đó, ường có khối ê th flip-flop trên cổng ra v thế ín hiệuì t xung đồng h có ồ thể trực ếp ất ti xu ra các ch n kh ng b â ô ị ự s ễtr đáng k n ể ào
Nó được thực hiện đối với các cổng vào sao cho không có quá nhiều sự trễ trên tín hiệu trước khi tới flip-flop, mà nó sẽ tăng yêu cầu ề v nhịp thời gian trên linh kiện
Trang 32Liê n kết có th l ể ập trình
S êự li n kết n trong của linh kiện FPGA bê r ất khác so với linh kiện CPLD,
nhưng r ất giống v c gới ái ọi là d cải ổng ASIC Trong hình 2.11, có thể thấy
c ấu trúc ủa ài nguy n linh kiện c t ê Có c ác đường ẫn ài d d có thể ối ác khối n c CLB tới hạn, là c ác khối xa về mặt vật lý với c ác khối khác ên vi mạch, để tr
không gây ra sự ễ Chtr úng ũng c có thể được ử ụng s d như bus trong của vi
mạch Đồng thời có c ác đường ẫn ngắn được ùng để ết ối ác khối CLB d d k n c riêng rẽ được định ị ật v v lý g ần nhau Thường có m ột hoặc ài ma trận v chuyển mạch, giống như ở linh ki CPLD, để k nối ện ết những y d d và dâ ẫn ài
ngắn cùng nhau theo những cách nhấtđịnh ácC chuyển ạch m có lthể ập trìnhbên trong vi mạch cho phép li n k các ê ết khối CLB t các đường êới li n kết và
c ác đường li n kết với ê nhau và tới ma trận chuy mển ạch Các b ộđệm ba trạng thái được sử dụng để nối nhiều kh CLB tớiối các đường dẫn dài, t thành ạo
bus ác đường ẫn ài đặc biệt, được ọiC d d g là các đường xung nhịp tổng thể, được thiết k ế đặc ệt bi với trở kháng thấp và như ậy thời gian truyền nhanh v
Có c êác li n kết ới ác ộ đệm xung nhịp t c b và tới m phần t ỗi ử xung nhịp trong
m ỗi khối CLB i n Đ ều ày giải thích ách ác xung nhịp được ph n phối trong c c âlinh kiện FPGA
Hình 2.11 – FPGA Liên kết có thể lập trình :
Trang 33M ạch đồng ồ h
C ác khối vào/ra đặc biệt ới ác ộ đệm xung nhịp v c b cao đặc biệt, được biếtnhư là c côác ng c iều khiển ụ đ xung đồng hồ, được âph n bố xung quanh vi
mạch ác ộ đệm n C b ày được ối ới đầu ào xung đồng ồ n v v h và i đ ều khiển ín t
hiệu xung tới ác đường xung nhịp t c ổng thể mô t ên C ả ở tr ác đường xung đồng h nồ ày được thiết ế độ ệch thời gian nhỏ k l và thời gian truyền nhanh
Chúng ta sẽ thảo luận ở sau, ự thiết ế đồng ộ s k b là b ắt buộc ới linh kiện v FPGA, vì lđộ ệch tuyệt đối và thời gian trễ ôkh ng thể được đảm ảo Chỉ khi b
sử dụng t ín hiệu xung đồng ồ ừ ác ộ đệm xung nh mới h t c b ịp có thể đảm b ảo
s và lựtrễ ệch ươ t ng đối
2.3.6.2 So sánh kích cỡ nhỏ và kích cỡ lớn
Linh kiện FPGA ích ỡ nhỏ gi k c ống d cải ổng ASIC ởchỗ ác ối c kh CLB chỉ
chứa c phần t ác ử nhỏ, rất c bơ ản như các cổng NAND, NOR v.v Nguyê ý n l
ở đây là c ác phần t nh có th kết nối để tạo ử ỏ ể ra các chức n ng lớn mà ôă kh ng
lãng ph qu nhiều phần ử logic Trong linh kiện FPGA ích ỡ ớn, ơi mà í á t k c l n
c ác khối CLB có thể chứa hai hoặc nhiều phần ử flip flop, ột thiết k t - m ế không
c ần nhiều phần ử flip flop ẽ để ngỏ kh ng sử ụng nhiều đến chúng Ng t - s ô d ược
lại, cấu trúc k c ích ỡ nhỏ u cầu nhiều ơn tài nguy n định tuyến, ẽ chiếm yê h ê s nhi khều ông gian và gâ êy n n sự trễ lớn có ểth ôkh ng b được s tối ù ự ưu về cấu trúc
S ự so sánh ợi thế ủa ỗi loại ấu trúc thể hiện ở ảng 1 ựa chọn ấu l c m c b 2 L c trúc n ào để sử dụng ph thuụ ộc v ào ứng ụng c d ụthể
Trang 342.3.6.3 Lập tr ình kiểu RAM so với kiểu phản cầu ì ch
Có hai phương pháp khi lập trình linh kiện FPGA Thứ nhất, ki SRAM, ểuđòi ỏi h c ác bit của b ộ nhớ t (ĩnh Static RAM cho mỗi ột) m phần t ử được l ậptrình Vi ết một bit “0” sẽ ắt ột chuyển m t m ạch, viết ột bit “1” sẽ ật ột m b m chuyển mạch tương ứng Ph ng pháp thứ hai đòi hỏi các phản ầuươ c chì (anti-fuses) bao gồm một vi cấu trúc, ngược lại v cầu ì ôới ch th ng thường, ìnhb
thường để ngỏ ột òng đ ện nhất định trong thời gian lập ình linh kiện s M d i tr ẽ
l àm hai đầu phản ầu ch được ết ối c ì k n
L c ợi thế ủa linh kiện FPGA kiểu SRAM chúng là sử dụng qui trình chế ạo t chuẩn mà c ác nhà m áy chế ạo vi mạch ường d t th ùng và chúng lu ôn luôn tối
ưu cho s hoạt động Khi lập ự trình ại SRAM, linh kiện FPGA có th lập l ể trình
l ại được nhiều ần, thậm ch khi chúng l í n ằm trong hệ ống, giống ư cth nh áchghi bình thường SRAM ế đ ểm ủa Y u i c chúng chúng không ổn định, điều đó
có nghĩa khi cấp nguồn kh ng đều, c thể ô ó có khả ăng bị thay đổi ội dung n n Đồng thời, linh kiện ểu ki SRAM có trễ k n l độ ết ối ớn
L c ợi thế ủa linh kiện FPGA kiểu phản ầu ch c ì là chúng kh ng mất ữ liệu ô d
và êtrễ do li n kết rấ nhỏ, do vậy chúng hoạt động nhanh hơ ếu đ ểm ủa t n Y i c
chúng là úng đòi h á ch ỏi qu trình chế ạo t phức tạp, cần ột ộ ập tr m b l ình ngoài
để lập trình cho chúng, và m l ỗi ầnchúng được ập trình l , chúng ôkh ng thể thay đổi lại
2.3.6.4 Ví d c ụ ác họ FPGA
Linh ki FPGA kiện ểu SRAM:
- Altera FLEX family
- Atmel AT6000 and AT40K families
- Lucent Technologies ORCA family
- Xilinx XC4000 and Virtex families
Trang 35Linh kiện FPGA kiểu phản ầu c chì:
- Actel SX and MX families
- Quicklogic pASIC family
2.3.7 Lựachọn giữa CPLD và FPGA
Lựa chọn giữa CPLD và FPGA s ẽ phụ thuộc v ào đặc ểm iđ và yêu c c ầu ủa
từng ự d án ự ổng ết ề đặc điểm S t k v cho từng loại được thể hi bệnở ảng 2 2
C ấutrúc Tương tự PAL Tương tự Gate Array
M ật độ Thấp đến trung bình Trung bình đến cao
12 22V10 hoặc h n ơ đến 1 tri cổng ệu
Tiêu thụ ăng lượng n Cao Trung bình
2.4.1 Đề ra c yêác u cầu ỹ thu k ật
Tầm quan trọng của yêu cầu k ỹthuật không hề ị ph b óng Điều n là đại ày
s c ự ầnthiết tuyệt đối, đặc biệt như là hướng ẫn d cho việc ựa chọn ng nghệ l côđúng đắn Yêu cầu k ỹthu ật cho phép ỗi ột m m người thiết k ế hi toàn b h ểu ộ ệ
thống và ần ph việc ủa t c ừng người Nó cho phép người ỹ ư thiết ế k s k có giao
Trang 36diện đúng đắn ới v phần òn ại ủa c l c linh kiện Nó cũng tiết kiệm ời gian và thgiảm s ựsai sót Kh ông thể kh ng ô có yêu cầu k ỹthu ật
Hình 2.12 - Luồng thiết ế k
M yêột u cầu ỹ k thuật ần c có c ác thông tin sau:
- S tơ đồ ổng bêthể n ngoài thể hiện cách linh kiện l ắptrong hệ thống
- S c ơ đồ ác khối bên trong thể hiện từng ph chức nần ăng chính
- Mô t c âả ác ch n vào/ra
⇒Khả ăng đ ều khiển đầu ra n i
⇒ M ứcngưỡng đầu ào v
- Đánh giá v ề thời gian
⇒ Thời gian khởi tạo và lưu dữ liệu đối với c âác ch n đầu v ào
Trang 37⇒ Thời gian truyền của các chân đầu ra
⇒ Thời gian chu kỳ đồng ồ h
M i ột đ ều quan trọng c ầnphải hiểu đây là t ài ệu “sống”, nhiều ần s có li ph ẽ
s ựthay đổi khi vi mạch được thiết k ế
2.4.1.1 L ựa chọn công nghệ
T ài liệu ỹ thuật k có thể sử dụng để ìm t ra nh ản xuất ốt nhất ớià s t v công nghệ và á c gi ảphù h v yêợp ới u cầuthiế ết k
2.4.1.2 Lưạ chọn phương pháp đầu vào
T ại thời đ ểm ày i n phải quyết định phương pháp đầu vào nào thích ợp ới h v thiết k h nế ơ Đối v c ới ác vi mạch nhỏ, đầu ào ểu s v ki ơ đồ ường th được ựa l chọn, đặc biệt ếu ỹ s n k ư thiết ế đã quen thuộc với k các công cụ Đối v các ới
vi mạch lớn, ngôn ngữ mô t ả phần ứng (HDL) như Verilog hoặc VHDL cđược sử dụng vì t c ính ơ động, mềm d và d ẻo ễ đọc Khi sử dụng ng n ngữ bậc ôcao, phần mềm tổng ợp ẽ được h s yêu cầu để “tổng ợp ho ” bản thiết ế h á k
Điều này có nghĩa phần ềm tạo là m ra các cổng b thấp t mô t b ậc ừ ả ậccao
2.4.1.3 Lựa chọn công cụ tổng hợp
T ại thời đ ểm này ph i ải quyết định ựa chọn phần ềm t l m ổng ợp ếu ự h n dđịnh thiết k ế linh kiện FPGA với ông n ngữ HDL Điều n rày ất quan trọng vì
m côỗi ng cụ ổng ợp t h có khuyến c áo hoặc có phương pháp thi k ết ếphần cứng
b ắt buộc để chúng có thể thực hiện ổng ợp đúng đắn ần thiết ết trước t h C bi
Trang 38những phương pháp ày để tr n ánh ôkh ng phải thiết k l ế ại vi mạch v ềsau
T ại cuối giai đoạn này, iều rất quan trọng là có s đ ự xem xét ại thiết ế l k
T c c côất ả ác ng đ ạno riêng cần được xem xét để quyết định chắc chắn u cầu yê
k ỹthuật đúng đắn, ng nghệ và phương pháp là cô đầu vàothiết ế ẽ k s lựa chọn
2.4.2 Thiết k ế vi mạch
Điều rất quan trọng tiếp theo thiết ế ốt thực hành Nó k t là bao hàm ác ấn c v
đề thiết k ếsau
- Thiết ế kiểu ừ tr n xuống (top down) k t ê
S dử ụnglogic ph ợp ới ki trúcù h v ến c ủa linh kiện đãchọn
- Macro
- Đồng ộ b thiết ế k
- Ngăn ngừa si u ổn định ê
- Tránh đ ểm n ( i thả ổi floating node)
- Tránh xung đột us bus contention) b (
2.4.3 Mô phỏng xem x – ét thiết ế k
Mô phỏng là m á ột qu trình ần được tiến ành trong khi thiết kế C c h ác phần
nhỏ của thiết ế ần được k c mô phỏng êri ng biệt ước khi li n ktr ê ết chúng trong
c ác phần ớn ơ ẽ l h n S có nhiều ước ặp thiết ế b l k và mô phỏng để đạt được ết k quả chính ác x
M l ỗi ầnthiết ế k và mô phỏng ết thúc ph k , ải tiến ành xem x t ại ản thiết h é l b
k T ế ốt nhất là có người kiểm tra sự mô phỏng và đảm ảo b chắc chắn kh ng ô
b s gì và ôỏ ót kh ng c giả định sai nào ảy Đ ều àyó x ra i n là m ột trong các xem
x ét quan trọng nhất ởi b vì v s mô chỉ ới ự phỏng đúng đắn và hoàn chỉnh ới m
Trang 39chứng t rỏ ằng vi mạch s ẽhoạt động đúng đắn trong hệ thống
2.4.4 Tổng ợp mạch h
N ếu thiết ế ằng ng n ngữ HDL, ước tiếp theo l ổng ợp vi mạch k b ô b à t h
Điều n ày đòi hỏi sử dụng phần mềm tổng ợp để h êbi n dịch ột ách ối ưu m c t
m ức độ thiết ế chuyển ịch thanh ghi (register transfer level - RTL) sang k d thiết k m cế ức độ ổng (gate level để) có thể ánh xạ sang các khối logic trong linh kiện FPGA Điều này có thể đòi ỏi định h rõ c ác chuyển ạch m và êti u chuẩn tối ưu ho trong mã á HDL, hoặc ới ác tham số ủa phần ềm t v c c m ổng
h ợp để đảm ảo ự định b s thời và s dử ụng ốt t
2.4.5 B trí và ố định tuyến
Bước tiếp heo l ếp đặt vi mạch t à x , dẫn đến thi k vết ế ật lý thực t ế cho vi mạch thực t Bế ước này đòi hỏi sử dụng c côác ng cụ phần mềm c à ủa nh cung
c t ấp ối ưu ho chương trình viá ệc l ập trình vi mạch để ựcth hiện ản b thiết kế
Ti ếp đóthiết k ế được ập l tr v ình ào vi mạch
2.4.6 Mô phỏng ại Xem x l l - ét ần cuối
Sau khi bố ítr , vi mạch phải được mô phỏng l n v s ần ữa ới ố ệuli định ời th
mới, thay đổi do sự ố tr thực ế ếu ọi việc tr i chảy đến thời đ ểm ày, b í t N m ô i n
c k ác ết quả mô phỏng ới m s ù hẽ ph ợp ới v các k ết quả ti n đ án Ngược l , ê o ại
có thể có ba hướng diễn ến trong trình bi t ự thiết k N v ế ếu ấn đề ất ện xu hi ở
đây là nghiêm trọng, c ác phần c ủa linh kiện FPGA có thể cần phải được thiết
k l N ế ại ếu đơn giản là có mchỉ ột v hài ướng định thời ngoài bi hoên ặc thiết
k ế linh kiện FPGA hơi lớn, có thể cần thiết thực hiện s tự ổng h khác với s ợp ựkiểm soát ốt ơn hoặc đơn giản t h là thực hiện ố tr b í và định tuyến khác ới ự v s kiểm soát ốt ơ ào thời đ ểm ày, sự t h n V i n xem xét cuối cùng là cần thiết để
Trang 40x ác nhận kh ng có gì b b s ô ị ỏ ót
2.4.7 Kiểm tra
Đối v i ớ linh kiện có thể lập trình, đơn giản lập trình thi ết b và ị ngay lập
t có v m ức ật ẫu Phải đặt ẫu ào ệ thống m v h và x ác định toàn ộ ệ thống àm b h l việc đúng đắn ếu tu n theo các qu trN â á ình đến thời i nđ ểm ày, v c ới ác khối
chức năng nhỏ khả ăng ất ớn là h n r l ệ thống ẽ hoạt s động tốt Các khối ức ch
năng ày n có thể được ố tr xoay vòng b í b s s ởi ự ửa đổi h ệ ốngth hoặc thay đổi phần mềm h ệ thống ác khối chức ăng ày ần được kiểm C n n c tra v ghi nhậnà
l ại sao cho chúng có thể được gi ữ nguyên trong lần xem xét sau của i mạch v
S t h và ự ích ợp kiểm tra hệ thống là i c đ ều ần thiết ại thời đ ểm ày để đảm t i n
b t c c ảo ất ả ác phần ử ủa ệ thống àm việc đúng đắn ới nhau t c h l v
Khi vi mạch được đưa vào chế tạo, c có một v s ần ài ự kiểm tra b n trong hệ ê
thống, liên tục kiểm tra hệ ống trong mộtth thời gian dài N ếu vi mạch đãđược thiết k ế đúng, nó s ẽ chỉ ị b hỏng vì s c iện hoặc c học thường th ự ố đ ơ ểhiện trong ác ki kic ểu ểm tra về độ ền b
2.5 V ẤN ĐỀ THI ẾT Ế K
Trong phần này, chúng ta xem xét l v là ĩnh ực duy nhất trong thiết k ế linh kiện FPGA hoặc là r riêất ng của loại linh kiện này
2.5.1 Thiết k ế ểu ki Top Down
-Top down ph- là ương pháp ết k thi ế theo đó c ác chức ăng mức độ cao nđược x ác định trước, và việc th hiện chi tiết chức năng mứcực độ thấp được
b ổsung sau S có ơ đồ thể xem như một cây cấu trúc nh ư hình 1 Kh trên 2 3 ối
cùng đại diện cho toàn ộ vi mạch ỗi khối ở ức thấp ơn biểu diễn ác b M m h c chức năng chính ủa vi mạch Các khối c trung gian c thể chứa các ó khối chức