Có thể kể tên một số đề tài ứng dụng các công nghệ kỹ thuật xử lý thông minh, hiện đại như là smart home, smart car, smart phone,...Nhưng đi theo những công nghệ phát triển những ứng dụn
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH
ĐIỀU KHIỂN TỐI ƯU HÓA CÔNG SUẤT TIÊU THỤ
VÀ THỜI GIAN HOẠT ĐỘNG SỬ DỤNG KỸ THUẬT DYNAMIC FREQUENCY SCALING CHO CÁC
ỨNG DỤNG DÙNG PIN TRÊN FPGA
GVHD: TS VÕ MINH HUÂN SVTH: NGUYỄN VĂN NHỰT MSSV: 11119074
S K L 0 0 4 2 6 6
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
ĐỒ ÁN TỐT NGHIỆP
Tp Hồ Chí Minh, tháng 01 năm 2016
ĐIỀU KHIỂN TỐI ƯU HÓA CÔNG SUẤT TIÊU THỤ
VÀ THỜI GIAN HOẠT ĐỘNG SỬ DỤNG KỸ THUẬT DYNAMIC FREQUENCY SCALING CHO CÁC ỨNG
DỤNG DÙNG PIN TRÊN FPGA
SVTH : NGUYỄN VĂN NHỰT
MSSV: 11119074 Khóa : 2011 – 2015
Ngành : Công nghệ kỹ thuật máy tính
GVHD: TS VÕ MINH HUÂN
Trang 3LỜI CẢM ƠN
Lời đầu tiên, người sinh viên thực hiện đề tài xin được phép chân thành gửi lời cảm ơn đến thầy Võ Minh Huân, giáo viên hướng dẫn đề tài đã định hướng và trao đổi những kinh nghiệm quý báu để người thực hiện đề tài hoàn thành những nội dung trong đề tài một cách hoàn chỉnh nhất, cũng như tạo những điều kiện thuận lợi nhất từ cơ sở vật chất, không gian nghiên cứu và những góp ý quý báu cho người thực hiện để người thực hiện đề tài có thể thực hiện và hoàn thành tốt đề tài này
Người thực hiện đề tài cũng xin trân trọng cảm ơn các thầy(cô) trong trường Đại Học Sư Phạm Kỹ Thuật TP HCM nói chung và thầy(cô) khoa Điện – Điện Tử nói riêng đã tận tình truyền đạt những kiến thức nền tảng để từ đó người thực hiện
đề tài có các kỹ năng cơ bản để phát triển, hoàn thành đề tài nghiên cứu cho riêng mình
Cũng xin gửi lời cảm ơn đến gia đình, các bạn sinh viên trong lớp đã trao đổi, góp ý tạo điều kiện thuận lợi về mặt vật chất và tinh thần để sinh viên thực hiện đề tài hoàn thành một cách tốt đẹp và đúng thời gian
Mặc dù đã có nhiều cố gắng và nỗ lực thực hiện, nhưng do kiến thức cũng như khả năng bản thân còn nhiều hạn chế nên trong quá trình thực hiện đề tài không thể tránh khỏi những sai phạm, thiếu sót… Rất mong nhận được sự góp ý, chỉ dẫn
từ hội đồng bảo vệ, quý thầy cô và các bạn sinh viên
Giáo viên hướng dẫn Người thực hiện đề tài
TS.Võ Minh Huân Nguyễn Văn Nhựt
Trang 4MỤC LỤC
LỜI CẢM ƠN v
DANH TỪ CÁC TỪ VIẾT TẮT ix
DANH MỤC BẢNG x
DANH MỤC HÌNH x
DANH MỤC CÔNG THỨC xii
CHƯƠNG 1 TỔNG QUAN 1
1.1 Tình hình nguyên cứu hiện nay 1
1.2 Tính cấp thiết của đề tài 1
1.3 Mục tiêu nghiên cứu 1
1.4 Nhiệm vụ nghiên cứu 2
1.5 Đối tượng và phạm vi nghiên cứu 2
1.6 Phương pháp nghiên cứu 2
CHƯƠNG 2 CÔNG SUẤT TIÊU THỤ 3
2.1 Giới thiệu 3
2.1.1 Các định nghĩa 4
2.1.2 Các ví dụ 4
2.1.3 Những nguồn của sự tiêu tán công suất: 7
2.2 Công suất động: 9
2.2.1 Hệ số hoạt động 10
2.2.2 Điện dung 13
2.2.3 Điện áp 17
2.2.4 Tần số 22
2.2.5 Dòng ngắn mạch 22
2.2.6 Các mạch cộng hưởng 23
CHƯƠNG 3 KIT FPGA SPARTAN-3E VÀ NGÔN NGỮ VERILOG 25
Trang 53.1 Tổng quan về FPGA 25
3.1.1 Khái niệm cơ bản và cấu trúc FPGA 26
3.1.2 Vi mạch FPGA được cấu thành từ các bộ phận 27
3.2 Kit Spartan-3E và môi trường lập trình ISE 14.2 28
3.2.1 Kit Spartan-3E 28
3.2.2 Môi trường lập trình ISE 14.2 32
3.3 Ngôn Ngữ Verilog 37
3.3.1 Quá trình phát triển Verilog 37
3.3.2 Những đặc tính Verilog 38
3.3.3 Quy ước về từ khóa 39
3.3.4 Loại dữ liệu trong Verilog 44
3.3.5 Khai báo dữ liệu 45
3.3.6 Khai báo net 47
3.3.7 Khai báo Reg 49
3.3.8 Khai báo Port 50
3.3.9 Khai báo mảng và phần tử nhớ một và hai chiều 51
3.3.10 Khai báo số nguyên, thời gian, số thực, và thời gian thực 52
3.3.11 Khai báo tham số 54
CHƯƠNG 4 THIẾT KẾ HỆ THỐNG 55
4.1 Sơ đồ khối hệ thống 55
4.1.1 Yêu cầu hệ thống 55
4.1.2 Sơ đồ khối và chức năng của hệ thống 56
4.1.3 Hoạt động của hệ thống 57
4.2 Thiết kế và tính toán hệ thống 57
4.2.1 Khối nguồn 57
4.2.2 Khối measurement 58
4.2.3 Khối ADC 61
4.2.4 Computer 62
Trang 64.2.5 FPGA 66
4.2.6 Chương trình ứng dụng 69
CHƯƠNG 5 KẾT QUẢ VÀ NHẬN XÉT 73
5.1 Kết quả 73
5.1.1 Phần cứng 73
5.1.2 Phần mềm 74
5.2 Kết quả thực nghiệm 74
CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 76
6.1 Kết luận 76
6.2 Đánh giá 76
6.2.1 Ưu điểm 76
6.2.2 Khuyết điểm 76
6.3 Hướng ứng dụng và phát triển 77
TÀI LIỆU THAM KHẢO 78
Trang 7DANH TỪ CÁC TỪ VIẾT TẮT Chữ cái viết tắt Cụm từ giải thích
ADC Analog Digital Convert
PIC Programmable Intelligent Computer
FPGA Field programmable Gate Array
UART Universal Asynchronous Receiver Transmitter
VDD Positive Supply Voltage
RS232 Standard for serial communication
VGA Video Graphics Array
CMOS Complementary metal-oxide Semiconductor DVS Dynamic Voltage Scaling
ASIC Aplication-Specific integrated circuit
MSB Most Significant bit
LSB Least Significant bit
Trang 8DANH MỤC BẢNG
Bảng 2.1 : Tần suất chuyển mạch 12
Bảng 3.1: Mô tả chức năng từng ký tự trong lập trình 44
Bảng 3.2: Mô tả ký tự và chức năng lệnh 53
Bảng 4.1: Thời gian của kiểu VGA 640x480 71
Bảng 5.1: Thời gian sử dụng của mạch phụ thuộc vào tần số 74
Bảng 5.2: Bảng thông số năng lượng mất đi trong những giờ khác nhau 75
DANH MỤC HÌNH Hình 2.1: Điện trở 4
Hình 2.2: Nguồn áp 5
Hình 2.3: Tụ Điện 5
Hình 2.4: Bộ chuyển đổi CMOS 6
Hình 2.5: Năng lượng, công suất, dòng và áp của một bộ chuyển đổi 7
Hình 2.6: Công suất trong Niagra2 9
Hình 2.7: Clock gating 11
Hình 2.8: Các mạch AND 4 ngõ vào 12
Hình 2.9: Các tần suất tín hiệu và các hệ số hoạt động 13
Hình 2.10: Glitching in a chain of gates 13
Hình 2.11: Kích thước transistor trong một 15
Hình 2.12: Activity Factors 16
Hình 2.13: Energy – delay trade – off 17
Hình 2.14: Vùng điện áp đi qua 18
Hình 2.15: Cấp chuyển đổi 19
Hình 2.16: Clustered voltage scaling 20
Hình 2.17: Hệ thống DVS 21
Hình 2.18: Năng lượng giảm từ DVS 21
Hình 2.19: Cộng hưởng xung clock 23
Hình 3.1: Cấu trúc 27
Hình 3.2: Kit FPGA Spartan 3E 29
Hình 3.3: Cấu trúc các thành phần Spartan-3E 30
Hình 3.4: Chip Spartan-3E và các thông số 31
Hình 3.5: Mở chương trình 32
Hình 3.6: Tạo Project mới 32
Hình 3.7: Lựa chọn thiết bị chương trình 33
Hình 3.8: Lựa chọn Module 33
Hình 3.9: Lựa chọn ngõ vào ngõ ra 34
Trang 9Hình 3.11: Viết chương trình 35
Hình 3.12: Kiểm tra mã nguồn 35
Hình 3.13: Gán chân 35
Hình 3.14: File gán chân 36
Hình 3.15: Kết nối FPGA 36
Hình 3.16: Bước 1: Configure Target Device 36
Hình 3.17: Bước 2: Boundary Scan 36
Hình 3.18: Bước 3: Initialize Chain 37
Hình 4.1: Sơ đồ hệ thống 56
Hình 4.2: Nguồn 12v 57
Hình 4.3: Nguồn 5v 58
Hình 4.4: Sơ đồ khối measurement 58
Hình 4.5: Độ lợi bằng 1 59
Hình 4.6: Opamp Differential Aplifier 59
Hình 4.7: Sơ đồ nguyên lý 60
Hình 4.8: Hình ảnh thực tế 60
Hình 4.9: Chuyển đổi Analog to Digital 61
Hình 4.10: Đồ thị thể hiện độ phân giải, 61
Hình 4.11: Hình ảnh thực tế đo điện áp 62
Hình 4.12: Frame truyền UART 63
Hình 4.13: Giao tiếp cổng COM máy tính với 64
Hình 4.14: Lưu đồ giải thuật trên máy tính 65
Hình 4.15: Giao diện trên máy tính 65
Hình 4.16: Hình ảnh giao tiếp giữa máy tính và 66
Hình 4.17: Kết nối giữa FPGA và 2 cổng DB9 67
Hình 4.18: Sơ đồ khối nhận dữ liệu từ máy tính thông qua RS232 67
Hình 4.19: Cách phát hiện Start bit 68
Hình 4.20: Dùng trạng thái máy để đi qua từng bit dữ liệu nhận được 68
Hình 4.21: Sơ đồ hệ thống game 69
Hình 4.22: Thời gian lấy mẫu hiển thị CRT 70
Hình 4.23: Kết quả mô phỏng hiển thị 71
Hình 4.24: Kết quả thực tế 72
Hình 5.1: Kết quả thời gian sử dụng của một mạch 74
Hình 5.1.a: Sử dụng tần số khác nhau để tăng thời gian hoạt động 74
Hình 5.2: Biểu đồ thể hiện năng lượng mất 75
Trang 10DANH MỤC CÔNG THỨC
Công thức 2.1 4
Công thức 2.2 4
Công thức 2.3 4
Công thức 2.4 5
Công thức 2.5 5
Công thức 2.6 5
Công thức 2.7 6
Công thức 2.8 6
Công thức 2.9 8
Công thức 2.10 8
Công thức 2.11 8
Công thức 2.12 12
Công thức 2.13 16
Công thức 2.14 16
Công thức 2.15 16
Công thức 2.16 24
Công thức 4.1 61
Công thức 4.2 62
Công thức 4.3 62
Trang 11TÓM TẮT
Trong thời kì công nghệ luôn phát triển không ngừng, nền khoa học kĩ thuật của nước ta cũng cần phải bắt kịp xu hướng chung của thế giới nếu không muốn bị tụt hậu, các nước phát triển trên thế giới đã phát triển các board ứng dụng công suất thấp trong dạy học, các trường dạy học Việt Nam chúng ta phát triển khoa học công nghệ cũng khá nhanh,công nghệ của nước ta ngày càng phát triển đặt biệt là quá trình hội nhập phát triển kinh tế toàn cầu,các thiết bị điện ngày càng cải tiến và hiện đại, nhưng nước ta vẫn chưa phát triển các ứng dụng,các nghiên cứu về giảm công suất tiêu thụ trong lĩnh vực điện- điện tử, đặt biệt là nguồn năng lượng ngày
càng mất dần đi.Chính vì vậy người thực hiện mong muốn thực hiện đề tài “Điều
khiển tối ưu hóa công suất tiêu thụ và thời gian hoạt động sử dụng kỹ thuật Dynamic Frequency Scaling cho các ứng dụng dùng Pin trên FPGA” Tuy đề
tài cũng không phải là đề tài mới, nhiều người đã thực hiện, nhưng người thực hiện mong muốn các thiết bị ngày càng hoạt động với một công suất thấp, sau khi đề tài này được hoàn thành, người thực hiện chỉ mong muốn các nhà nghiên cứu phát triển ứng dụng công suất thấp vào thiết bị, các board mạch góp phần đất nước Việt Nam ngày càng phát triển
Đề tài được thực hiện trên kit FPGA, được xây dựng trên công nghệ CMOS,một trong những công nghệ phát triển nhất hiện nay
Đề tài này được thực hiện dưới sự hướng dẫn tận tình của thầy Võ Minh Huân, cũng như hỗ trợ thiết bị từ nhà trường, của hãng xilinx Qua sự giúp đỡ của thầy Võ Minh Huân, tìm hiểu trên mạng, các datasheet từ các thiết bị điện tử song kiến thức có hạn, kinh nghiệm còn hạn chế nên trong quá trình thực hiện đề tài còn nhiều thiếu xót Người thực hiện mong muốn được sự góp ý từ hội đồng bảo vệ, các thầy cô, các bạn sinh viên trong trường để nâng cao được chất lượng đồ án
Trang 12CHƯƠNG 1
TỔNG QUAN
1.1 Tình hình nguyên cứu hiện nay
Trong vài thập niên gần đây nền kinh tế thế giới đã có những dấu hiệu chuyển mình rõ rệt, các ngành kĩ thuật của các nước có những đột phá vô cùng mạnh mẽ, chuyển dần từ lao động máy móc sang trí tuệ nhân tạo Để bắt kịp xu hướng chung của thế giới, cùng với sự đi lên của nên kinh tế mở, năng động mang tính thị trường của thế giới, nền khoa học kỹ thuật của nước ta cũng có những bước phát triển nhất định Một trong những xu hướng phát triển của khoa học kỹ thuật mà nước ta đang hướng tới là tự động hóa, hiện đại hóa Hiện nay, đa phần các nhà máy
đã thay thế việc dùng sức lao động của con người, thay vào đó là các dây chuyền sản xuất tự động, giảm thiểu sức lao động của con người, đem lại sự hiệu quả, chính xác, năng suất cao Có thể kể tên một số đề tài ứng dụng các công nghệ kỹ thuật xử
lý thông minh, hiện đại như là smart home, smart car, smart phone, Nhưng đi theo những công nghệ phát triển những ứng dụng nhanh đến chóng mặt thì công nghệ phát triển nguồn năng lượng để cung cấp những thiết bị công nghệ cao thì còn rất chậm,để giảm thiểu được năng lượng,các nhà khoa học đã nghiên cứu và tạo ra những thiết bị có thể điều hòa được công suất làm tăng thời gian sử dụng của một thiết bị.Chính vì thế mà người thực hiện đồ án mong muốn được tìm hiểu về công
suất và cách ổn định công suất với đề tài “Điều khiển tối ưu hóa công suất tiêu
thụ và thời gian hoạt động sử dụng kỹ thuật Dynamic Frequency Scaling cho các ứng dụng dùng Pin trên FPGA”
1.2 Tính cấp thiết của đề tài
Công suất và năng lương là một trong những lĩnh vực cấp thiết nhất hiện nay,với những thiết bị công nghệ ngày càng có nhiều ứng dụng,có nhiều chức năng thì cần có rất nhiều năng lượng để cung cấp.Đề tài về công suất thì nhiều người đã thực hiện trên thế giới trong những ứng dụng khác nhau nhưng ở Việt Nam thì chưa được phổ biến rộng rãi
1.3 Mục tiêu nghiên cứu
Với đề tài “Điều khiển tối ưu hóa công suất tiêu thụ và thời gian hoạt
động sử dụng kỹ thuật Dynamic Frequency Scaling cho các ứng dụng dùng Pin trên FPGA”đây là đề tài bước đầu tạo cơ sở nền tảng kiến thức cơ bản để từ đó tìm
tòi phát triển ứng dụng khác trong đời sống hằng ngày Sau khi thực hiện xong đồ
Trang 13 Phân tích mạch điện
Lập trình trên kit FPGA bằng ngôn ngữ Verilog
Tính toán được công suất tiêu thụ trong một mạch
Biết cách giảm công suất tiêu thụ trong một mạch
Cách truyền dữ liệu từ máy tính xuống kit FPGA thông qua RS232
Rèn luyện khả năng đọc và phân tích số liệu
1.4 Nhiệm vụ nghiên cứu
Nguyên cứu và tìm hiểu cấu tạo kit FPGA Spartan-3E
Tìm hiểu về phần mềm Xilinx và cách lập trình bằng ngôn ngữ Verilog
Tìm hiểu công suất tiêu thụ động
Các module đi kèm theo là khối đo điện áp,khối ADC,RS232
Xây dựng một hệ thống và tính toán theo yêu cầu đưa ra
1.5 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu
Kit FPGA Spartan-3E,mạch RS2332,mạch shunt resistor,ADC,VGA
Phạm vi nghiên cứu
Với đề tài mà người thực hiện, phạm vi nghiên cứu đề tài ngoài những kiến thức đã học trên trường,ngoài ra người thực hiện còn phải nghiên cứu thêm về ngôn ngữ verilog và khối shunt resistor,cách chuyển đổi tốc độ baud trên kit FPGA, cách
xử lý tín hiệu
1.6 Phương pháp nghiên cứu
Phương pháp tự thu thập thông tin,kết hợp với những kiến thức có sẵn,học hỏi bạn bè,thầy cô và quan trọng nhất là sự giúp đỡ của thầy hướng dẫn để giúp người thực hiện đồ án thực hiện đề tài
Ý tưởng: Dùng mạch shunt resistor để đo điện áp rơi trên điện trở shunt sau
đó đưa qua bộ ADC của PIC để chuyển đổi sau đó đưa máy tính,sau đó máy tính điều khiển và ổn định,nếu điện áp lớn chứng tỏ dòng qua điện trở shunt tăng lên khi đó người thực hiên cho ứng dụng chạy tần số lớn nhất, nếu dòng
đi qua điện trở shunt nhỏ thì người thực hiện sẽ giảm bớt tần số.Như vậy có thể điều hòa được công suất cũng như giảm hao năng lượng khi năng lượng không đủ
Trang 14và chơi Nó cũng là sự tiêu tán vào trong vũ trụ Vì vậy phổ biến vẫn là các sự biến đổi năng lượng trong cuộc sống mỗi ngày mà chũng ta thường không biết tất cả về chúng Hầu hết chúng ta làm việc đó một cách lặng lẽ và không được chú ý đến
Ngày nay, chúng ta quan tâm đến công suất là một trong số những điểm mà chúng ta thấy.Trong cá ứng dụng di động, các sản phẩm thường đều sử dụng các nguồn pin Trong khi đó công nghệ pin đã được cải thiện rõ rệt hàng năm, tuy nhiên, mỗi pin có một trọng lượng và một kích thước nhất định thì nó có một dung lượng nhất định Ví dụ, một cặp pin AA có thể sạc lại có dung lượng khoảng 7 W-
hr và một pin laptop lithium-ion tốt thì có dung lượng khoảng 80 W-hr/lb Chắc chắn là khi pin được sử dụng thì nó sẽ bị giảm và cần phải được nạp lại hoặc là thay thế Các nhà thiết kế sản phẩm quan tâm đến việc kéo dài tuổi thọ pin và đồng thời thêm vào các tính năng khác và làm giảm kích thước, vì vậy việc thiết kế ra các IC
có công suất thấp chính là chìa khoá quan trọng Trong các ứng dụng có sự kết nối vĩnh viễn với một dây điện thì luôn tồn tại vấn đề về việc làm giảm sự phụ thuộc vào các nguồn nhiên liệu hoá thạch và làm giảm hiện tượng hiệu ứng nhà kín, do đó đòi hỏi chúng ta phải tìm kiếm các giải pháp công suất thấp cho tất cả các vấn đề liên quan đến thiết bị điện tử Các chip công suất thấp được giới hạn khoảng 150W trước khi làm lạnh chất lỏng hoặc là tản nhiệt thì trở nên cần thiết Trong năm 2006,
Trang 15.Điều này tiêu tốn khoảng 4.5 tỉ đôla và chiếm 1.5% trong tổng sự tiêu thụ năng lượng của nước Mỹ.Sự tiêu tốn năng lượng nhiều hơn là trong lĩnh vực truyền hình trong nước Trong khi đó, chức năng chip đã được giới hạn trong một khu vực, nó thường bị bắt buộc bởi công suất.Thiết kế với công suất thấp và thiết kế với hiệu quả năng lượng đã trở nên tương đồng nhau
2.1.2 Các ví dụ
Hình 0.1: Điện trở
Trang 16Hình 2.1 biểu diễn một điện trở Điện áp và dòng điện đƣợc quan hệ với nhau theo định luật Ohm, V = IR, vì vậy công suất tức thời đƣợc tiêu thụ trong điện trở là:
Trang 17Hình 0.4: Bộ chuyển đổi CMOS
Hình 2.4 biểu diễn một bộ chuyển đổi CMOS điều khiển một tải điện dung Khi những switch ngõ vào chuyển từ 1 thành 0, transistor pMOS trở nên ON và điện áp VDD đƣợc nạp cho tải Theo nhƣ công thức 2.6, năng lƣợng đƣợc tích trữ trong tụ điện:
Trang 18Hình 0.5: Năng lượng, công suất, dòng và áp của một bộ chuyển đổi
Khi những switch ngõ vào chuyển từ 0 thành 1, transistor pMOS trở nên OFF và transistor nMOS trở nên ON, tụ điện xả Năng lượng đã tích luỹ trong tụ điện bị suy giảm trong transistor nMOS.Nguồn cung cấp không cung cấp năng lượng trong suốt quá trình chuyển đổi này.Những phân tích tương tự được áp dụng cho bất kỳ CMOS tĩnh nào điều khiển một tải điện dung
Hình 2.5 biểu diễn các dạng sóng của một bộ chuyển đổi điều khiển một tụ điện 150pF ở tần số 1GHz Khi Vin bắt đầu giảm, transistor pMOS bắt đầu trở nên
ON Nó bắt đầu bị bão hoà, dòng Ip dốc lên và các mức độ cuối cùng ra ở Idsat như là
Vin giảm Cuối cùng, Vout tăng đến điểm mà pMOS chuyển sang chế độ tuyến tính
Ip
2.1.3 Những nguồn của sự tiêu tán công suất:
Sự tiêu tán công suất trong các mạch CMOS bắt nguồn từ hai yếu tố:
Sự tiêu tán động do vì:
Sự nạp, xả của những tải điện dung như là những cổng chuyển mạch
Dòng ngắn mạch trong
Trang 19 Sự tiêu tán tĩnh do vì:
Sự rò rỉ dưới ngưỡng thông qua các transistor OFF
Sự rò rỉ cực cổng thông qua lớp điện môi cổng
Sự rò từ sự khuếch tán của cực nguồn/ cực máng
Sự xung đột dòng bên trong các mạch tỷ lệ
Kết hợp các vấn đề này lại với nhau ta có công suất tổng của một mạch:
Công suất có thể được xem xét ở các chế độ tích cực, chế độ chờ sẵn và chế
độ ngủ Công suất tích cực là công suất tiêu thụ trong khi chip làm việc hữu ích Nó thường bị chi phối bởi Pswitching Công suất ở chế độ chờ là công suất tiêu thụ trong khi chip không làm việc Nếu xung clock ngưng tác động và các mạch tỷ lệ bị tắt thì khi đó công suất ở chế độ chờ được hình thành do sự rò rỉ Trong chế độ ngủ, các nguồn cung cấp cho các mạch không cần thiết được tắt đi để loại bỏ sự rò rỉ Điều này làm giảm đáng kể công suất ở chế độ ngủ, tuy nhiên chip vẫn yêu cầu về thời gian và năng lượng để có thể hoạt động trở lại vì vậy chế độ ngủ chỉ có thể tồn tại khi chip không hoạt động trong một thời gian đủ dài
Nhận thấy rằng có khoảng 1/3 công suất của vi xử lí được tiêu tốn cho xung clock, 1/3 cho các bộ nhớ và 1/3 còn lại là cho các dây và các cổng logic Trong các công nghệ nano, gần 1/3 công suất bị rò rỉ.I/O tốc độ cao cũng đóng góp một phần phát triển.Ví dụ, hình 2.6 thể hiện sự tiêu thụ công suất tích cực của bộ xử lí Sun‟s 8-core 84W Các core và thành phần khác là cách giải thích chung cho xung clock, cổng logic và các dây
Trang 20Hình 0.6: Công suất trong Niagra2 2.2 Công suất động:
Công suất động gồm chủ yếu là công suất chuyển mạch, được cho bởi công thức 2.9.Điện áp cung cấp VDD và tần số f thì dễ dàng được biết đến bởi người thực hiện.Việc ước lượng công suất động có thể được xem xét tại mỗi nút của mạch Điện dung của nút là tổng hợp điện dung của gate, điện dung của sự khuếch tán và điện dung của dây tại nút Điện dung hiệu dụng của nút là giá trị điện dung của chính nó nhân với hệ số hoạt động Công suất chuyển mạch phụ thuộc vào tổng các điện dung hiệu dụng của tất cả các nút
Các hệ số hoạt động có thể phụ thuộc nhiều vào từng nhiệm vụ cụ thể được thực hiện.Ví dụ, một bộ xử lí trong một cell điện thoại sẽ sử dụng công suất lớn hơn
để chạy những trò chơi video so với việc hiển thị một lịch xem ngày tháng.Các công
cụ CAD là ác công cụ rất tốt cho việc ước lượng công suất khi nó đưa ra một khối lượng các công việc thực tế.Việc thiết kế công suất thấp liên quan đến việc xem xét
và sự giảm của các điều kiện trong công suất chuyển mạch
VDD là một số hạng bậc 2, nó thì tốt để lựa chọn giá trị VDD nhỏ nhất mà có thể hỗ trợ tần số được yêu cầu của sự hoạt động.Tương tự như vậy, chọn tần số thấp nhất của hoạt động để đạt được chất lượng mong muốn cuối cùng.Hệ số hoạt động chủ yếu được làm giảm bằng cách đặt các khối không sử dụng ở chế độ ngủ.Cuối cùng, mạch có thể được tối ưu để làm giảm điện dung tải tổng của mỗi phần
Ví dụ 2.1:
Một hệ thống trên chip số trong công nghệ 1V 65nm (với chiều dài kênh 50
nm và 𝜆 = 25 𝑛𝑚) có 1 triệu transistor, trong đó có 50 triệu transistor trong các cổng logic và phần còn lại là trong các mảng bộ nhớ Độ rộng trung bình của transistor trong các cổng logic là 12 𝜆 và độ rộng trung bình của transistor trong bộ
Trang 21nhớ là 4𝜆.Các mảng bộ nhớ được chia thành các bank và chỉ có bank cần thiết mới được kích hoạt để cho hệ số hoạt động bộ nhớ là 0.02.Các cổng logic CMOS tĩnh có
hệ số hoạt động trung bình là 0.1 Giả sử mỗi transistor góp 1fF/𝜇𝑚 của mỗi điện dung cổng và 0.8fF/ 𝜇𝑚 của điện dung khuếch tán Bỏ qua điện dung dây (mặc dù
nó có thể chiếm một phần lớn trong tổng công suất).Ước lượng công suất chuyển mạch khi hoạt động ở 1GHz
Cách giải quyết: Ta có, (50 x 106 transistor logic)(12 𝜆)(0.025 𝜇𝑚/ 𝜆)((1 + 0.8)fF/ 𝜇𝑚) = 27nF của các transistor logic và (590 x 106 transistor bộ nhớ)(4 𝜆)(0.025 𝜇𝑚/ 𝜆)((1 + 0.8)fF/ 𝜇𝑚) = 171nF của các transistor bộ nhớ Sự tiêu hao công suất chuyển mạch là [(0.1)(27 x 10-9) + (0.02)(171 x 10-9)](1.0V)(109 Hz)
= 6.1W
Công suất động cũng bao gồm một phần công suất ngắn mạch được gây ra bởi công suất tăng vọt từ VDD đến GND khi cả mạch kéo lên và mạch kéo xuống có một phần ON trong khi một transistor chuyển mạch Điều này thường ít hơn 10% của toàn thể, vì vậy nó có thể ước lượng toàn bộ nhờ thêm vào 10% công suất chuyển mạch
Công suất chuyển mạch được tiêu tốn bằng việc chuyển năng lượng để nạp cho một tải điện dung, sau đó đổ năng lượng đến GND Bằng trực giác, ta có thể mong đợi rằng công suất có thể được lưu lại bằng cách xáo trộn năng lượng xung quanh đến nơi cần thiết hơn là việc đổ đó
2.2.1 Hệ số hoạt động
Hệ số hoạt động là một đòn bẫy mạnh mẽ và dễ sử dụng cho việc làm giảm năng lượng.Nếu một mạch có thể tắt hoàn toàn thì hệ số hoạt động và công suất động sẽ bằng 0.Các khối thường được tắt bằng cách ngưng xung clock, điều này được gọi là sự chon xung clock.Khi một khối mở, hệ số hoạt động là 1 cho các xung clock và giảm đáng kể cho các nút trong các mạch logic.Hệ số hoạt động của một cổng logic có thể được ước lượng bằng cách tính toán tần suất chuyển mạch Sự ổn định có thể làm tăng hệ số hoạt động
2.2.1.1 Sự chọn xung clock
Nó có ảnh hưởng lớn vì xung clock có một hệ số hoạt động cao và việc lựa chọn xung clock để đưa vào ngõ vào các thanh ghi dịch của một khối ngăn chặn các thanh ghi dịch chuyển mạch và do đó ngưng tất cả các hoạt động trong dòng hướng xuống của cổng logic kết hợp
Sự lựa chọn xung clock có thể được hoạt động trên bất kỳ thanh ghi dịch nào được cho phép.Đôi khi sự logic để tính toán tín hiệu cho phép thì dễ dàng; ví dụ
Trang 22như, một khối dấu phẩy động có thể bị tắt khi không có chương trình dấu phẩy động nào đang được đưa ra.Thường là các tín hiệu lựa chọn xung clock thường là những đường có tính quyết định nhất trong chip
Tín hiệu clock phải hoạt động ổn định (1 cho các hệ thống đang sử dụng các flip-flop tác động cạnh lên).Hình 2.7 cho thấy làm thế nào để chốt một tín hiệu cho phép để có thể đảm bảo chắc chắn là tín hiệu cho phép không thay đổi trước khi có cạnh xuống xung clock
Enable Logic
Registers
Clk
Enable Latch
Clock Gater
Hình 0.7: Clock gating
Khi một khối logic lớn bị tắt, xung clock có thể được cho qua cổng sớm trong mạng lưới phân phối xung clock, không chỉ tắt các thanh ghi dịch mà còn tắt một phần của mạng toàn cục.Hệ thống xung clock có hệ số hoạt động là 1 và một điện dung cao, vì vậy nó tiết kiệm công suất đáng kể
2.2.1.2 Tần suất chuyển mạch
Nhắc lại rằng hệ số hoạt động của một nút chính là tần suất chuyển mạch từ
0 lên 1.Tần suất này phụ thuộc vào hàm logic.Bằng việc phân tích tần suất xuất hiện
1 ở mỗi nút chúng ta có thể ước lượng được các hệ số hoạt động Mặc dù các nhà thiết kế không ước lượng thủ công các hệ số hoạt động rất thường xuyên, việc thực hiện này không đáng để làm tăng thêm một vài trực giác về hoạt động chuyển mạch
Định nghĩa: Pi là tần suất xuất hiện 1 tại nút thứ i 𝑃 𝑖 = 1 − 𝑃𝑖 là tần suất xuất hiện 0 tại nút thứ i 𝛼𝑖 là hệ số hoạt động tại nút i, đó là tần suất nút đó là 0 trong một chu kỳ và 1 trong chu kỳ tiếp theo Nếu tần suất là không tương quan từ chu kỳ này đến chu kỳ kia thì
Trang 23Công thức0.12
𝛼𝑖 = 𝑃 𝑖P i
Với dữ liệu ngẫu nhiên hoàn toàn thì có P = 0.5 và 𝛼 = 0.25 Dữ liệu có cấu trúc có thể có các tần suất khác nhau Ví dụ, các bit lên của một số nguyên không dấu 64-bit đại diện cho một đại lượng vật lý như là cường độ âm thanh hoặc số tiền trong tài khoản ngân hàng của bạn là 0 trong hầu hết thời gian Hệ số hoạt động thì thấp hơn 0.25 cho loại dữ liệu này
Bảng 2.2.1.2 liệt kê các tần suất ngõ ra của các cổng khác nhau như một hàm của các tần suất ngõ vào của chúng, giả sử các ngõ vào là không tương quan Theo như công thức (2.12), hệ số hoạt động của ngõ ra là 𝑃 𝑌PY
Bảng 0.1 : Tần suất chuyển mạch
Ví dụ 2.2:
Hình 2.8 là một cổng AND 4 ngõ vào, hình a các cổng mắc theo hình cây và hình b các cổng mắc theo hình chuỗi Xác định các hệ số hoạt động tại mỗi nút trong mạch, giả sử rằng các tần suất ngõ vào là PA = PB = PC = PD = 0.5
Hình 0.8: Các mạch AND 4 ngõ vào
Trong cách mắc theo hình chuỗi thì hệ số hoạt động thấp hơn tại các nút trung gian
Trang 24Hình 0.9: Các tần suất tín hiệu và các hệ số hoạt động
Các tín hiệu trở nên tương quan và các tần suất có điều kiện trở nên cần thiết.Các công cụ phân tích công suất là cách thuận tiện nhất để giải quyết các mạch phức tạp lớn
Sự đánh giá sơ bộ công suất yêu cầu giả định một hệ số hoạt động trước khi
mã RTL được viết và các workload được biết.𝛼 = 0.1 là sự lựa chọn hợp lý trong trường hợp không có dữ liệu tốt hơn
2.2.1.3 Sự tăng vọt
Các sự tăng vọt gây ra sự tiêu hao công suất lớn Các cổng mắc theo kiểu chuỗi thì đặc biệt dễ bị vấn đề này Sự tăng vọt có thể làm tăng hệ số hoạt động của một cổng lên trên 1 và có thể giải thích cho phần lớn công suất trong các mạch đã biết như các bộ cộng có nhớ và cách bộ nhân mảng Công suất tăng vọt có thể được đánh giá một cách chính xác thông qua các mô hình tính toán thời gian
Hình 0.10: Glitching in a chain of gates
2.2.2 Điện dung
Điện dung chuyển mạch bắt nguồn từ các dây và các transistor trong mạch Điện dung của dây được tối thiểu hoá thông qua sự bố trí và kế hoạch thiết kế tốt
Trang 25(khía cạnh vùng của cấu trúc thiết kế) Các đơn vị đó biến đổi một lượng lớn dữ liệu nên được đặt gần nhau để làm giảm chiều dài dây
Điện dung của các thiết bị chuyển mạch được làm giảm bằng việc lựa chọn ít hơn các chế độ của cổng logic và các transistor nhỏ hơn.Các cổng có kích thước nhỏ nhất có thể được dùng trên các đường không có tính quyết định Mặc dù Logical Effort chỉ ra rằng nổ lực trạng thái tốt nhất là khoảng 4, sử dụng một nổ lực trạng thái lớn làm tăng Vì vậy, các cổng đó thì lớn hoặc là có một hệ số hoạt động cao và như vậy đa phần công suất có thể được làm giảm chỉ với một tác động hiệu suất nhỏ Ví dụ, các bộ đệm lái các I/O đệm hoặc các dây dài có thể sử dụng một nổ lực trạng thái từ 8 đến 12 để làm giảm kích thước bộ đệm Tương tự, các thanh ghi dịch nên sử dụng các transistor được đồng bộ nhỏ bởi vì hệ số hoạt động của chúng
là một hàm của biên độ và lớn hơn của các transistor trong mạch tổ hợp logic.Bằng cách sử dụng các cổng đảo hoặc là các bộ đệm thì chúng ta sẽ có được hiệu quả năng lượng tốt nhất để lái các sợi dây dài hơn là sử dụng nhiều cổng phức tạp mà có các nổ lực logic cao hơn
Hình 2.11 trình bày một ví dụ về kích thước transistor trong một bộ cộng Kogge-Stone 64-bit Trong hình 2.11.(a), các cổng được điều chỉnh kích thước lại
để có thể đạt được độ trễ nhỏ nhất có thể Các đỉnh nhọn cao ở giữa tương ứng với các cổng lớn lái các dây dài Trong hình 2.11.(b), các mạch được tối ưu lại cho độ trễ lớn hơn 10% Năng lượng được làm giảm 55%.Trong tự nhiên, các cách tiết kiệm năng lượng lớn có thể được thực hiện bằng cách nới lỏng một lượng nhỏ từ điểm trễ nhỏ nhất của một mạch
Trang 26Hình 0.11: Kích thước transistor trong một
bộ cộng Kogge-Stone 64-bit Không phải có phương thức nào dạng đóng để xác định các kích thước của cổng mà năng lượng là nhỏ nhất dưới một ràng buộc về độ trễ, ngay cả với các mạch đơn giản như là một chuỗi cổng đảo Tuy nhiên, đó là cách đơn giản để giải quyết vấn đề số học, điều này sẽ được đề cập đến trong phần tiếp theo
Kích thước cổng dưới một ràng buộc về độ trễ:Xem xét một mô hình để
tính toán năng lượng của một mạch Nếu một cổng đảo đơn vị có điện dung cổng là 3C, sau đó là mọt cổng với effort logic là g, độ trễ ký sinh p và kích thích x có gx lần như nhiều điện dung cổng và px lần như là nhiều điện dung khuếch tán của cổng, điện dung của dây là Cwire và điện dung cổng của tất cả các trạng thái nó lái Năng lượng của nguyên mạch là tổng hợp các năng lượng của mỗi mạch
Trang 27Công thức 0.14
E =
𝑖𝑒𝑛𝑜𝑑𝑒𝑠 𝑎𝑖(𝑐𝑖 + 𝑝𝑖𝑥𝑖 + 𝑗 ∈𝑓𝑎𝑛𝑜𝑢𝑡 𝑖 𝑔𝑗𝑥𝑗) = 𝑖∈𝑛𝑜𝑑𝑒𝑠 𝑎𝑖𝑥𝑖𝑑𝑖Bây giờ tìm cách tối thiểu hoá E để mà với trường hợp xấu về thời gian đến thì ít hơn độ trễ D Vấn đề là vẫn còn một posynomial và có một giải pháp duy nhất
để có thể được tìm thấy một cách nhanh chóng là dùng một bộ tối ưu tốt
Ví dụ 2.3:
Giả sử rằng tần suất ngõ vào là 0.5
Hình 2.12 trình bày các hệ số hoạt động tại mỗi nút Do đó, năng lượng của mạch là
Trang 28Dmin cho bất kỳ lượng năng lượng nào trừ khi kích thước của ngõ vào cổng đảo được tăng (nó sẽ làm tăng độ trễ của mạch trước đó)
Hình 0.13: Energy – delay trade – off 2.2.3 Điện áp
Điện áp là một hiệu ứng bậc hai trên công suất động Do đó, việc chọn nguồn cung cấp công suất thấp hơn làm giảm đáng kể đến sự tiêu tán công suất Như nhiều transistor hoạt động trong chế độ bão hoà vận tốc, nguồn cung cấp công suất thấp hơn có thể không làm giảm hiệu suất nhiều như là các mô hình long-channel Chip có thể được chia thành nhiều miền điện áp, ở mỗi miền được tối ưu về các sự cần thiết cho chính xác các mạch Ví dụ, một hệ thống trên một con chip có thể sử dụng một điện áp cung cấp cao cho các bộ nhớ để đảm bảo sự ổn định của cell, một điện áp trung bình cho một xử lí và một điện áp thấp cho các thiết bị ngoại vi I/O chạy ở tốc độ thấp hơn.Đi xem xét làm thế nào các vùng điện áp có thể tắt hoàn toàn để tiết kiệm công suất rò trong suốt chế độ ngủ
Điện áp có thể được điều chỉnh dựa trên chế độ hoạt động, ví dụ, một bộ xử
lí của laptop có thể hoạt động ở điện áp cao và tốc độ cao khi được cắm vào một bộ chuyển đổi AC, nhưng ở điện áp và tốc độ thấp hơn khi được cắm vào nguồn pin Nếu tỷ lệ giữa tần số và điện áp giảm theo một tỷ lệ nhất định thì công suất sẽ giảm theo hàm bậc ba Ví dụ, bộ xử lí của laptop có thể quay lại tỷ lệ 2/3 giữa tần số và điện áp để tiết kiệm 70% công suất khi không được cắm
2.2.3.1 Các miền điện áp
Một vài thách thức trong việc sử dụng các miền điện áp bao gồm các mức chuyển đổi điện áp cho các tín hiệu qua các miền, việc chọn lựa các mạch trong miền và việc định tuyến công suất cung cấp đến nhiều miền
Trang 29Hình 2.14 trình bày sự kết nối trực tiếp của các cổng đảo trong hai miền sử dụng nguồn cung cấp cao và thấp, VDDH và VDDL.Một cổng trong miền VDDH có thể trực tiếp lái một cổng trong miền VDDL.Tuy nhiên, cổng trong miền VDDL sẽ chuyển mạch nhanh hơn là nó chuyển mạch nếu nó được lái bởi một cổng VDDL khác Bộ phân tích thời gian phải xem xét điều này khi tính toán sự ảnh hướng đến độ trễ, sợ rằng một thời gian giữ bị vi phạm.Không được tốt, cổng trong miền VDDL không thể trực tiếp lái một cổng trong miền VDDH Khi n2 là ở VDDL, transistor pMOS trong miền VDDL có Vgs = VDDH – VDDL Nếu giá trị này vượt qua Vt thì pMOS sẽ ON và bật sự kết nối dòng Ngược lại, nếu giá trị đó nhỏ thấp hơn Vt thì pMOS bị tăng sự
rò rỉ Vấn đề này có thể được làm giảm bằng cách sử dụng một thiết bị pMOS Vt
cao trong bộ thu nếu sự khác nhau về điện áp giữa các miền là đủ nhỏ
Hình 0.14: Vùng điện áp đi qua
Phương pháp chuẩn để xử lí sự giao cắt miền điện áp là một bộ đảo cấp độ, trình bày trong hình 2.15 Khi A = 0, N1 OFF và N2 ON N2 kéo Y xuống thành 0,
a)
b)
Trang 30P1 ON, kéo X lên thành VDDH và P2 OFF Khi A = 1, N1 ON, N2 OFF N1 kéo X xuống thành 0, P2 ON, kéo Y lên thành VDDH.Trong trường hợp bộ đảo cấp độ giống như là một bộ đệm và thường lái Y giữa 0 và VDDH mà không làm các transistor còn lại trở nên ON Không may mắn là bộ đảo cấp độ phải trả giá về độ trễ (khoảng 2 FO4) và công suất tại mỗi miền giao cắt Cái giá phải trả có thể được giảm nhẹ bằng cách tạo ra bộ đảo đi vào một thanh ghi dịch và chỉ giao các miền điện áp trong giới hạn chu kỳ xung clock
Hình 0.15: Cấp chuyển đổi
Cách đơn giản nhất để sử dụng các miền điện áp là liên kết mỗi miền với một khu vực lớn Như vậy, mỗi miền sẽ nhận công suất của chính nó Chú ý rằng các bộ đảo cấp độ yêu cầu hai nguồn công suất cung cấp, vì vậy chúng ta nên đặt gần thiết
bị ngoại vicủa miền nơi mà cần thiết cho các sự giao cắt giữa các miền
Một cách tiếp cận thay thế được gọi là clustered voltage scaling (CVS) trong
đó hai điện áp cung cấp có thể được sử dụng trong một khối đơn Hình 2.16trình bày một ví dụ của clustered voltage scaling Các cổng đầu tiên trong đường dẫn dùng VDDH.Các cổng không có tính quyết định sau đó trong đường dẫn sử dụng
VDDL Các điện áp được gán vào để một đường dẫn không bao giờ giao cắt từ một cổng VDDL đến một cổng VDDH trong một khối của mạch logic kết hợp, vì vậy các
bộ đảo cấp độ chỉ được yêu cầu tại các thanh ghi dịch CVS yêu cầu hai nguồn công suất được phân bố trên toàn bộ khối Điều này có thể đạt được bằng cách sử dụng hai đường ray công suất Một cell library có thể có các phiên bản điện áp thấp và cao cho mỗi cell, được làm khác đi chỉ bằng đường ray tức là ở đó mỗi transistor đã được kết nối, để mà đặc tính của cổng có thể được hoán đổi.Chú ý rằng có nhiều quá trình xử lí yêu cầu một khoảng trống lớn giữa n – well ở các điện áp khác, nó giới hạn sự lân cận của các cổng VDDH và VDDL
Trang 31Hình 0.16: Clustered voltage scaling 2.2.3.2 Tỷ lệ điện áp động (DVS)
Nhiều hệ thống có sự yêu cầu về hiệu suất biến đổi thời gian.Ví dụ, một bộ giải mã video yêu cầu nhiều sự tính toán cho các cảnh chuyển động nhanh hơn là các cảnh tĩnh.Một workstation thì yêu cầu hiệu suất tốt khi chạy SPICE hơn là khi chạy Solitaire Vì thế các hệ thống có thể tiết kiệm được một lượng lớn năng lượng bằng cách giảm tần số xung clock đến giá trị nhỏ nhất đủ để hoàn thành công việc theo như lịch trình, sau đó giảm điện áp cung cấp đến giá trị nhỏ nhất cần thiết để hoạt động ở tần số đó Điều này gọi là tỷ lệ điện áp động (DVS) hoặc tỷ lệ điện áp/ tần số động Hình 2.17trình bày sơ đồ khối của một hệ thống DVS cơ bản.Bộ điều khiển DVS lấy thông tin từ hệ thống về tải làm việc and/or nhiệt độ tắt dần Nó xác định điện áp cung cấp và tần số xung clock đủ để hoàn thành workload theo lịch trình hoặc là tối đa hoá hiệu suất mà không bị quá nhiệt Một bộ điều chỉnh điện áp chuyển mạch ảnh hưởng đến các bước xuống của Vin từ một giá trị cao đến giá trị cần thiết VDD Lõi logic gồm một vòng khoá pha hoặc bộ tổng hợp xung clock để tạo ra tần số xung clock được chỉ định
DVS
Switching Voltage Regulator
V in Voltage Control
VDD Freq Control
Workload Temperature
Trang 32Định nghĩa rate là một phần của hiệu suất được yêu cầu để hoàn thành workload trong một thời gian được chỉ định nhất định.Hình 2.17 vẽ tỷ lệ năng lượng Nếu tỷ lệ nhỏ hơn 1, tần số xung clock được điều chỉnh giảm xuống theo hoặc hệ thống có thể chạy tần số cao nhất cho đến khi công việc hoàn thành, sau khi dungè xung clock và ngủ; điều này có thể đơn giản hơn là xây dựng nên một xung clock dạng sin có thể điều chỉnh được Không có DVS, năng lượng biến đổi tuyến tính với tỷ lệ.Với DVS lý tưởng, điện áp cũng có thể được làm giảm ở tỷ lệ thấp hơn Giả sử rằng mối quan hệ tuyến tính giữa điện áp và tần số, năng lượng tỷ lệ theo tỷ lệ bậc ba, cho nhiều cái tiết kiệm hơn ở tỷ lệ thấp hơn Hoạt động ở tỷ lệ một nửa lớn nhất thì chỉ tốn một phần 8 năng lượng
Hình 0.18: Năng lượng giảm từ DVS
Giả sử một điện áp cung cấp dạng sin có thể đièu chỉnh được, nó thì đắt hơn một nguồn cung cấp với các mức khác nhau.Đặc tính của một mạch giao với một
Trang 33dãi liên tục của điện áp và tần số là quá khó Nếu điện áp cung cấp bị giới hạn đên 3 mức,…,1.0,0.75, 0.5V và các tần số bị giới hạn bởi 3 mức, có nhiều lợi ích của DVS mà nó có thể đạt được
Ngưỡng dưới và sự rò cổng thì nhạy cao với điện áp cung cấp, vì vậy DVS cũng ảnh hưởng đến sự giảm rò trong suốt các chu kỳ của hoạt động thấp
Hoạt động ở các điện áp VDD đã biến đổi có nghĩa là một bộ ổn định điện áp
có thể điều chỉnh được mà nó giảm điện áp từ nguồn cung cấp cao hơn.Thận trọng khi sử dụng bộ ổn áp loại chuyển mạch, nói cách khác là công suất sẽ bị tán xạ trong bộ ổn áp
2.2.4 Tần số
Công suất động thì tỷ lệ trực tiếp với tần số, vì vậy một chip hiển nhiên là không nên hoạt động nhanh hơn cần thiết.Như đã đề cập trước đó, việc giảm tần số cũng đồng nghĩa với cho phép giảm kích thước các transistor hoặc sử dụng một điện
áp cung cấp thấp hơn, nó có một tác động lớn về mặt công suất.Hiệu suất có thể được bù đắp thông qua việc xử lí song, đặc biệt nếu vùng đó không quan trọng như
là công suất
Thậm chí nếu các nguồn cung cấp nhiều điện áp không có sẵn, một con chip vẫn có thể sử dụng nhiều miền tần số để mà chắc chắn các phần có thể chạy chậm hơn các phần khác.Ví dụ, giao diện bus của một con vi xử lí thường chạy chậm hơn nhiều lần so với lõi.Các miền tần số thấp cũng có thể tiết kiệm năng lượng bằng cách sử dụng các transistor nhỏ hơn
Các miền giao tần số là dễ nhất nếu các tần số được quan hệ với nhau bởi cácphép nhân số nguyên và các xung clock thì được đồng bộ giữa các miền.Trong phần 10.6 sẽ thảo luận về vấn đề đồng bộ
lệ cạnh ngõ vào thì chậm hơn tỷ lệ cạnh ở ngõ ra, dòng ngắn mạch là một phần nhỏ (<10%) của dòng đến tải và có thể bị khoá lại trong sự tính toán tay Nó thì tốt để
mà sử dụng tỷ lệ cạnh có liên quan ở các cổng ngõ vào với độ rộng các transistor để tối thiểu hoá dòng ngắn mạch của chúng.Điều này đạt được bằng cách giữ nổ lực
Trang 34trạng thái hợp lý trước đó…v.v…, 4 hoặc ít hơn Trong tự nhiên, các cổng với các
tỷ lệ ngõ vào và ra cân bằng thì có công suất ngắn mạch thấp
Công suất ngắn mạch có độ nhạy cao đến tỉ lệ là v = Vt/VDD Trong giới hạn này thì v > 0.5, dòng ngắn mạch được ước tính toàn bộ bởi vì các mạng kéo lên và kéo xuống thì không bao giờ ON một cách đồng thời Với v = 0.3 hoặc 0.2, công suất ngắn mạch thường khoảng 2% đến 10% công suất chuyển mạch, tương ứng, giả sử các cạnh sạch Trong bộ xử lí nano mét, Vt có thể có rất hiếm việc xuống dưới 0.3V mà không có sự xuất hiện của sự rò rỉ và VDD là một hàm bậc một của 1V, vì vậy dòng ngắn mạch trở nên hầu như không đáng kể
2.2.6 Các mạch cộng hưởng
Các mạch cộng hưởng tìm cách để làm giảm sự tiêu tán công suất chuyển mạch bằng cách để cho năng lượng tác động liên tiếp qua lại giữa các thành phần lưu trữ như các tụ điện và các cuộn cảm hơn là đổ năng lượng xuống đất.Kỹ thuật này thì thích hợp nhất với các ứng dụng như là xung clock mà nó hoạt động ở một tần số cố định
Hình 2.19 trình bày một mô hình của một mạch cộng hưởng xung clock
Cclock là điện dung của mạch clock Trong một mạch xung clock thuông thường nó được lái giữa VDD và GND bằng một bộ đệm xung clock mạnh Mạch cộng hưởng xung clock thêm vào cuộn cảm L1 và tụ điện C2, nó xấp xỉ bằng 10Cclock Rclock và
Rin tượng trưng cho sự mất mát trong các dây clock và trong cuộn cảm mà chất lượng của bộ cộng hưởng thì thấp hơn Trong mạch cộng hưởng xung clock, năng lượng di chuyển qua lại giữa L1 và Cclock , việc này gây ra một dao động sine tại tần
số cộng hưởng f Bộ điều khiển chỉ bơm vừa đủ năng lượng để bù trừ cho sự mất mát do điện trở C2 phải đủ lớn để lưu trữ lượng năng lượng dư thừa và không có nhiễu với sự cộng hưởng của điện dụng xung clock
Trang 35IBM đã chứng minh một hệ thống phân phối xung clock toàn cục công hưởng cho bộ xử lí Cell Tại tần số hoạt động 4-5 GHz, hệ thống có thể làm giảm công suất chip 10% Một vài hạn chế của mạch cộng hưởng xung clock bao gồm giới hạn dãi tần số hoạt động, ngõ ra xung clock có dạng sin và khó khăn trong việc tạo ra cuộn cảm chất lượng cao trong một bộ xử lí CMOS
Trang 36So sánh FPGA vói ASIC và phần tử khác
ASIC là một vi mạch IC được thiết kế dành cho một ứng dụng cụ thể.FPGA cũng được xem như một loại vi mạch bán dẫn chuyên dụng cho ASIC,nhưng nếu so sánh FPGA với những ASIC đặc chế hoàn toàn hay ASIC thiết kế trên thư viện logic thì FPGA không đạt tới mức tối ưu như những loại này,và hạn chế trong khả năng thực hiện những tác vụ đặc biệt phức tạp tuy vậy FPGA ưu việt hơn ở chỗ có thể tái cấu trúc lại khi sử dụng,công đoạn thiết kế đơn giản do vậy chi phí giảm ,rút ngắn thời gian đưa sản phẩm vào sử dụng
Còn nếu so sánh với các dạng vi mạch bán dẫn lập trình được cấu trúc mảng phần tử logic như PLA ,PAL,CPLD thì FPGA ưu việt hơn các điểm:
Tác vụ tái lập của FPGA thưc hiện đơn giản hơn
Khả năng lập trình linh động hơn
Kiến trúc của FPGA cho phép nó có khả năng chứa khối lượng cổng logic (logic gate),so với các vi mạch bán dẫn lập trình được có trước nó
Thiết kế hay lập trình cho FPGA được thực hiện chủ yếu bằng ngôn ngữ mô
tả phần cứng HDL như VHDL,Verilog,AHDL,các hãng sản suất FPGA lớn như Xilinx,Altera thường cung cấp các gói phần mềm và thiết bị phụ trợ cho quá trình thiết kế,cũng như có một hãng thứ ba cung cấp các gói phần mềm này như,Synosys,Synplify, Các gói phần mềm này có khả năng thực hiện tấc cả các bước toàn bộ quy trình thiết kế IC chuẩn với đầu vào là thiết kế trên HDL (còn gọi là mã RTL)
FPGA được thiết kế đầu tiên bởi Ross Freeman,người sáng lập công ty
Trang 37đối lớn các phần tử bán dẫn vào một vi mạch.So với kiến trúc trước đó là CPLD,PPGA có khả năng chứa tới từ 100.000 đến hang vài tỷ cổng logic,trong khi CPLD chỉ chứa từ 10.000 đến 100.000 cổng logic.con số này đối vói PAL,PLA còn thấp hơn nữa chỉ đạt vài nghìn đến 10.000
CPLD được cấu trúc từ số lượng nhất định các khối SPLD(Simple Programmable logic device ) thuật ngữ chung chỉ PAL,PLA,SPLD thường là một mảng logic AND/OR lập trình được có kích thước xác định và chứa một số lượng hạn chế các sản phẩm từ bộ nhớ đồng bộ (clocked register ) Cấu trúc này hạn chế khả năng thưc hiện những hàm phức tạp và thông thường hiệu suất làm việc của vi mạch phụ thuộc vào cấu trúc cụ thể của vi mạch hơn là vào yêu cầu bài toán
Kiến trúc của FPGA là kiến trúc mảng các khối logic,mỗi khối này nhỏ hơn nhiều nếu đem so sánh với một khối SPLD,ưu điểm này giúp FPGA có thể chứa nhiều hơn các phần tử logic và phát huy tối đa khả năng lập trình của các phần tử logic và hệ thống mạch kết nối để đạt được mục đích này thì kiến trúc của FPGA phức tạp hơn nhiều so với CPLD
Một điểm khác biệ t nữa với CPLD là trong những FPGA hiện đại được tích hợp nhiều bộ logic số hock đã được tối ưu hóa,hỗ trợ RAM,ROM,tốc độ cao,hay các bộ nhân,cộng dùng những ứng dụng vi xử lý tín hiệu số.Ngoài khả năng cấu trúc lại vi mạch ở mức toàn cục,một số FPGA hiện đại còn hỗ trợ cấu trúc lại ở mức cục bộ,tức là khả năng cấu trúc lại một bộ phận riêng lẻ trong khi vẫn đảm bảo hoạt động bình thường cho các bộ phận khác
Khái niệm cơ bản và cấu trúc của FPGA,Vi mạch FPGA được cấu thành từ các bộ phận
3.1.1 Khái niệm cơ bản và cấu trúc FPGA
FPGA (Field Programmable Gate Arrays-Ma trận cổng lập trình được theo hàng) là một thiết bị bán dẫn bao gồm các khối logic lập trình được gọi là “logic Block”, và các kết nối khả trình.Các khối logic có thể được lập trình để thực hiện các chức năng của khối logic cơ bản như AND,XOR,hoặc các chức năng kết hợp phức tạp hơn như decoder hoặc các phép tính toán học
Trong hầu hết các kiến trúc FPGA,Các khối logic cũng bao gồm cả phần tử nhớ.Đó có thể là các Flip-Flop hoặc những bộ nhớ hoàn chỉnh hơn
Trang 38Hình 0.1: Cấu trúc 3.1.2 Vi mạch FPGA được cấu thành từ các bộ phận
Các khối logic cơ bản lập trình được (logic block ): Phần tử chính của FPGA
là các khối logic (logic block).Khối logic được cấu thành từ LUT và một phần tử nhớ đồng bộ flip-flop.LUT(Look up table) là khối logic có thể thực hiện bất kỳ hàm logic nào từ 4 đầu vào,kết quả của hàm này tùy vào mục đích mà gửi ra ngoài khối logic trực tiếp hay thông qua phần tử nhớ flip-flop
Trong tài liệu hướng dẫn của các dòng FPGA của Xilinx còn sử dụng khái niệm SLICE,1 Slice gồm 4 khối logic tạo thành,số lượng các Slices thay đổi từ vài nghìn đến vài chục nghìn tùy theo loại FPGA
Hệ thống mạch liên kết lập trình được: Mạng liên kết trong FPGA được cấu thành từ các đường kết nối theo hai phương ngang và đứng,tùy theo từng loại FPGA mà các đường liên kết nối được chia thành các nhóm khác nhau,vị dụ trong XC4000 của Xilinx có 3 loại kết nối: Ngắn,dài và rất dài.Các đường kết nối được nối với nhau thông qua các khối chuyển mạch lập trình được (Programmable switch), trong một số khối chuyển mạch chứa một số lượng nút chuyển lập trình được,đảm bảo cho các dạng liên kết phức tạp khác nhau
Khối vào/ra(IO Pads):khối vào/ra nhiều hay ít là tùy thuộc vào từng loại FPGA.Chúng có thể được kết nối với các thiết bị bên ngoài như LED,USB,RS232,RAM… tùy thuộc vào mục đích sử dụng
Các phần tử tích hợp sẵn:Ngoài các khối logic,tùy theo các loại FPGA khác nhau mà có các phần tử tích hợp thêm khác nhau,ví dụ để thiết kế những ứng dụng SoC trong dòng Virtex 4,5 của Xilinx có chứa nhân xử lý PowerPC,hay cho những ứng dụng xử lý tín hiệu số trong FPGA được tích hợp các DSP Slice là bộ nhân,cộng tốc độ cao,thực hiện hàm A*B+c,ví dụ
Trang 39dòng Virtex của Xilinx chứa từ vài chục đến hàng trăm DSP Slices với A,B,C 18-bit
3.2 Kit Spartan-3E và môi trường lập trình ISE 14.2
3.2.1 Kit Spartan-3E
3.2.1.1 Các thành phần của kit Spartan-3E và tính năng
Xilinx XC3S500E Spartan-3E FPGA
Up to 232 user-I/O pins
320-pin FBGA package
Over 10,000 logic cells
Xilinx 4 Mbit Platform Flash configuration PROM
Xilinx 64-macrocell XC2C64A CoolRunner™ CPLD
64 MByte (512 Mbit) of DDR SDRAM, x16 data interface, 100+ MHz
16 MByte (128 Mbit) of parallel NOR Flash (Intel StrataFlash)
FPGA configuration storage
MicroBlaze code storage/shadowing
16 Mbits of SPI serial Flash (STMicro)
FPGA configuration storage
MicroBlaze code shadowing
2-line, 16-character LCD screen
PS/2 mouse or keyboard port
VGA display port
10/100 Ethernet PHY (requires Ethernet MAC in FPGA)
Two 9-pin RS-232 ports (DTE- and DCE-style)
On-board USB-based FPGA/CPLD download/debug interface
50 MHz clock oscillator
SHA-1 1-wire serial EEPROM for bitstream copy protection
Hirose FX2 expansion connector
Three Digilent 6-pin expansion connectors
Four-output, SPI-based Digital-to-Analog Converter (DAC)
Two-input, SPI Analog to Digital Converter(ADC) with gainpre-amplifier
programmable- ChipScope™ SoftTouch debugging port
Rotary-encoder with push-button shaft
Trang 40 Four slide switches
Four push-button switches
SMA clock input
8-pin DIP socket for auxiliary clock oscillator
3.2.1.2 Các thông số kỹ thuật và một số hình ảnh
Spartan-3E có nhiều tính năng nổi bật đầu tiên phải kể đến đó là khả năng tích hợp,từ 100,000 gates đến 1,6 triệu gates.Ngoài ra,còn một số đặc điểm chính của Spartan-3E là:
Dễ sử dụng,giá thành thấp,tiêu thụ điện năng ít
Mật độ tích hợp nhiều phần tử logic
Tốc độ xung nhip hệ thống từ 5-300Mhz
Năm mức tiêu thụ điện năng (3.3v, 2.5v,1.8v, 1.5v,1.2 v)
Truyền dữ liệu với tốc độ cao
Hình 0.2: Kit FPGA Spartan 3E