Tải bản đầy đủ (.pdf) (69 trang)

Nghiên cứu, thiết kế và tích hợp các chip FPGA PLD vào hệ thống thu nhận ảnh vệ tinh khí tượng luận văn ths kỹ thuật

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.93 MB, 69 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Văn Hiệu

NGHIÊN CỨU, THIẾT KẾ VÀ TÍCH HỢP CÁC CHIP FPGA/PLD VÀO HỆ
THỐNG THU NHẬN ẢNH VỆ TINH KHÍ TƯỢNG

LUẬN VĂN THẠC SỸ

Hà nội, 2006


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Văn Hiệu

NGHIÊN CỨU, THIẾT KẾ VÀ TÍCH HỢP CÁC CHIP FPGA/PLD VÀO HỆ
THỐNG THU NHẬN ẢNH VỆ TINH KHÍ TƯỢNG

Ngành: Công nghệ thông tin
Mã số: 1.01.10

LUẬN VĂN THẠC SỸ

Người hướng dẫn khoa học :
PGS. TS. Ngô Diên Tập

Hà nội, 2006



MỤC LỤC
MỞ ĐẦU ………………………………..…………………......…............5
CHƢƠNG 1: TỔNG QUAN VỀ CÔNG NGHỆ FPGA………..….............7
1.1 Cấu trúc FPGA……………………………………………......…............7
1.1.1 Các logic block…………………………………………..….………..8
1.1.2 Các nguồn kết nối……………………………………....………......10
1.1.3 Khối vào ra……………………………………………………..…...12
1.2 Phân loại FPGA………………………………………………..……….13
1.3 Công nghệ lập trình FPGA…………………………………………….14
1.3.1. Công nghệ phản cầu chì Antifuse…………………………….….14
1.3.2. Công nghệ SRAM………………………………………………....17
1.4 Họ Chip Flex 8000 của hãng Altera …………………………………..19
1.4.1. Các tính chất của họ Flex 8000…………………………….........19
1.4.2.Mô tả tổng quát………………………...………….........................21
1.4.3 Mô tả chức năng……………………………..…………................24
CHƢƠNG 2: GIỚI THIỆU VỀ VỆ TINH GMS, MT-SAT NHẬT BẢN
VÀ HỆ THU ẢNH VỆ TINH……………………………..………….........29
2.1 Vệ tinh GMS, MT-SAT của Nhật Bản……………………………......29
2.1.1 Các thông số kỹ thuật của vệ tinh GMS- 5………………………29
2.1.2 Cấu trúc khung dữ liệu ảnh vệ tinh GMS - 5 …………………..29
2.1.3 Các đặc tính tín hiệu phát ảnh phân giải cao của vệ tinh GMS-5.....33
2.1.4 Vệ tinh MT – SAT (Nhật Bản).........................................................36
2.2 Giới thiệu khái quát về hệ thu ảnh vệ tinh khí tƣợng.
.........................36
CHƢƠNG 3: THIẾT KẾ, CHẾ TẠO MODULE ĐIỆN TỬ KHỐI ĐỒNG
BỘ KHUNG ẢNH CỦA HỆ THU ẢNH VỆ TINH...................................39

1



3.1 Khối tạo mã giải ngẫu nhiên PN ……………..............................39
3.2 Khối nhận dạng đầu khung ảnh....................................................40
3.3 Khối giải mã PN............................................................................. 41
3.4 Khối chuyển đổi chuỗi bit nối tiếp thành song song.....................42
CHƢƠNG 4: THỰC NGHIỆM VÀ CÁC KẾT QUẢ................................43
4.1 Các bƣớc thực hiện một project trên FPGA.........................................43
4.1.1 Tạo một project.......................... ....................................................45
4.1.2 Sử dụng Graphic Editor.................................................................45
4.1.3 Tổng hợp mạch từ sơ đồ.................................................................53
4.1.4 Thực hiện mô phỏng chức năng....................................................54
4.1.5 Sử dụng Message Processor để định vị và sửa các lỗi .................61
4.2. Những kết quả……….…………………………………………………62
KẾT LUẬN ….……………………………………………………………..67
TÀI LIỆU THAM KHẢO………………………………...…….………....70

2


NHỮNG CHỮ VIẾT

TẮT

ASIC

Application Specific Integrated Circuit

CPLD

Complex Programmable Logic Device


CLB

Configurable Logic Block

DES

Data Encryption Standard

DRAM

Dynamic Random Access Memory

FIFO

First In First Out

FPGA

Field Programmable Gate Array

JTAG

Joint Test Advisory Group

IOB

input Output Block

LAB


Logic array block

LE

Logic element

LPM

library of parameterized module

LUT

Look Up Table

PAL

Programmable Array Logic device

PLA

Programmable Logic Array

PLD

Programmable Logic Device

PROM

Programmable Read Only Memory


EPROM

Erasable Programmable Read Only Memory

ROM

Read Only Memory

SPLD

Simple Programmable Logic Device

3


SRAM

Static Random Access Memory

VHDL

VHISC High Level Description Language

VHSIC

Very High Speed Integrated Circuit

4



MỞ ĐẦU

Năm 1985 hãng Xilinx (Mỹ) giới thiệu trên thị trường một dòng linh
kiện mới thuộc chủng loại linh kiện điện tử khả trình (PLD) với tên gọi là
FPGA (Field Programmable Gate Array) và ngay lập tức nhận đã được sự
hưởng ứng cao từ phía khách hàng. Từ đó đến nay các hãng sản xuất chip
FPGA không ngừng cải tiến phát triển các họ sản phẩm mới ngày càng hoàn
thiện hơn.
Thiết kế mạch điện tử sử dụng FPGA là điều không còn mới mẻ trên thế
giới, ở Việt Nam công nghệ FPGA cũng đã được du nhập khoảng 5-7 năm trở
lại đây và đã có khá nhiều đề tài khoa học-công nghệ của các Viện nghiên
cứu, các Trường đại học thậm chí các đơn vị sản xuất trong lĩnh vực này. Sinh
viện của một số trường đại học kỹ thuật cũng đã được học những giáo trình về
FPGA. Sử dụng các chip FPGA trong thiết kế mạch điện tử cho phép chúng ta
rút ngắn được đáng kể thời gian và công sức trong việc tạo ra các mạch mẫu
thử nghiệm, giảm một cách đáng kể kích thước của các bo mạch điện tử, tiết
kiệm được tối đa chi phí làm mạch in, cho phép cập nhật nhanh tới các linh
kiện điện tử mới trên thị trường thế giới và đặc biệt rất linh hoạt trong việc
thay đổi các phương án thiết kế.
Do những đặc điểm trên, công nghệ FPGA thường được sử dụng trong
một số lĩnh vực sau:
- Thiết kế sản phẩm mẫu
- Các hệ thống đa chức năng và cần thay đổi linh hoạt khi sử dụng
- Các hệ thống đặc biệt đơn chiếc như trong công nghệ vũ trụ và quốc
phòng.

5



- Các hệ thống sử lý tín hiệu thời gian thực và các hệ thống nhúng.
Các sản phẩm chip FPGA trên thị trường thế giới chủ yếu là của các
hãng nổi tiếng của Mỹ như: Xilinx, Actel, Altera. Hiện nay trên thế giới cũng
đã xuất hiện các chíp khả trình bao gồm các phân tử xử lý tín hiệu tương tự
FPAA (Field Programmable Analog Array), các chip khả trình xử lý được
đồng thời cả tín hiệu số và tương tự (mix-signal), sự kết hợp các công cụ trên
còn tạo ra khả năng thiết kế các hệ system-on-chip, thậm chí Lab-on-chip
(trong đó có cả các sensor).
Do các đặc tính lổi bật của chip FPGA nói trên, trong luận văn này đã sử
dụng chip FPGA vào hệ thông thu ảnh vệ tinh khí tượng. Nhằm nâng cao tinh
ổn định và nhỏ gon của hệ thu ảnh phân giải cao kỹ thuật số cho vệ tinh khí
tượng phục vụ dự báo thòi tiết cũng như phát hiện theo dõi các bién động của
khí hậu.

6


Chƣơng 1
TỔNG QUAN VỀ CÔNG NGHỆ FPGA
1.1 Cấu trúc FPGA
Trước đây phần lớn các loại linh kiện điện tử logic sau khi được chế tạo là
cố định về cấu trúc và chức năng không lập trình được như các IC logic họ
74, còn các loại linh kiện lập trình đơn giản như EPROM, EEPROM, PLD.
Để thuận tiện cho việc thiết kế, thử nghiêm, tạo mẫu, phát triển ứng dụng, sản
suất ở quy mô nhỏ, người ta đã chế tạo ra các linh kiện logic khả trình PLD
(Programmable Logic Device) có nghĩa là linh kiện logic có khả năng cấu
hình lại nhiều lần cho các ứng dụng khác nhau mà không cần phải thay đổi
mạch.

Hình 1: Cấu trúc tổng quát của FPGA.

Linh kiện khả trình gồm hai loại chính là CPLD (Complex Programmable
Logic Device) và FPGA (Field Programmable Gate Array). Trên hình 1 chỉ ra
cấu trúc tổng quát của một FPGA. Một FPGA gồm một mảng các ô (cell)
logic, các ma trận kết nối, và các chuyển mạch. [11]

7


1.1.1 Các logic block [11]
Cấu trúc và nội dung của logic block được gọi là kiến trúc của nó. Kiến
trúc của logic block có thể được thiết kế theo nhiều cách khác nhau. Một số
logic block có thể chỉ đơn giản là các cổng AND hai ngõ nhập. Các logic
block khác có cấu trúc phức tạp hơn như các bộ quét động (multiplexer) hoặc
các bảng tìm kiếm (look-up table). Trong một số loại FPGA, các logic block
có thể có cấu trúc hoàn toàn giống PAL. Hầu hết các logic block chứa một số
loại flip-flop để hỗ trợ cho việc thực hiện các mạch tuần tự.

Hình 2: Cấu trúc của Logic Block.
Các phần tử CLB (Configurable Logic block) cơ bản được thể hiện trong
hình 2. Mỗi một phần tử CLB bao gồm 2 flip-flop và 2 khối chức năng độc
lập 4 đầu vào. Các khối chức năng này có tính mềm dẻo cao bởi vì hầu hết
các chức năng lôgic kết hợp cần ít hơn 4 đầu vào. Mười ba đầu vào và bốn
đầu ra của CLB cung cấp đường dẫn tới các flip-flop chức năng. Các CLB
tiến hành hầu hết các logic trong một FPGA. Các phần tử CLB chủ yếu được
biểu diễn trong hình 2. Hai khối chức năng 4 đầu vào (F và G) tạo ra các chức
8


năng đa dạng. Hầu hết các chức năng logic kết hợp cần 4 đầu vào hoặc ít
hơn. Tuy nhiên, một chức năng thứ ba (H) thì được cung cấp. Khối chức năng

H có 3 đầu vào. Hai đầu vào này có thể là đầu ra của F và G, đầu vào thứ ba
thì từ phía bên ngoài CLB. Vì vậy CLB có thể thực hiện các chức năng lên tới
9 đầu vào, giống như kiểm tra tính chẵn lẻ của số nguyên hoặc sự so sánh
đồng nhất thức được khai triển của hai tập hợp của bốn đầu vào.
Mỗi CLB bao gồm hai flip - flop có thể được sử dụng để lưu trữ các đầu
ra khối chức năng. Tuy nhiên, các khối flip - flop và chức năng cũng có thể
được sử dụng một các độc lập. DIN có thể được sử dụng như một đầu vào
trực tiếp tới một trong hai flip - flop. H1 có thể chạy tới flip - flop thông qua
khối chức năng H. Các đầu ra khối chức năng cũng có thể được tiếp cận từ
phía bên ngoài CLB, sử dụng hai đầu ra độc lập của đầu ra flip - flop. Tính
chất đa dụng này làm tăng tỷ trọng logic và làm đơn giản hoá định hướng
(routing). Mười ba đầu vào và bốn đầu ra CLB cung cấp đường dẫn tới các
khối chức năng và các flip-flop. Các đầu vào và đầu ra này nối với các nguồn
nối liền với nhau có thể lập trình được ở bên ngoài block.
Bốn đầu vào độc lập được cung cấp tới một trong hai khối chức năng
(F1-F4 và G1-G4). Các khối chức năng này, các khối mà đầu ra của nó được
gán là F' và G’, có khả năng thực hiện bất kỳ hàm Boole xác định của 4 đầu
vào một cách tuỳ tiện. Các khối chức năng được thực hiện như các bảng tìm
kiếm bộ nhớ. Vì vậy sự trì hoãn phổ biến thì độc lập với chức năng được thực
hiện. Khối chức năng thứ ba, được gán là H', có thể thực hiện bất kỳ hàm
Boole nào của ba đầu vào của nó. Hai trong số các đầu vào này có thể lựa
chọn là các đầu ra khối chức năng F' và G'. Như một sự lựa chọn, một hoặc cả
hai đầu vào này có thể tới từ bên ngoài CLB (H2, H0). Đầu vào thứ ba phải
tới từ bên ngoài block (H1).

9


1.1.2. Các nguồn kết nối [11]


Hình 3: Cấu trúc của các kết nối.

Cấu trúc và nội dung của các nguồn kết nối trong FPGA được gọi là kiến
trúc routing (routing architecture). Kiến trúc routing gồm các đoạn dây nối và
các chuyển mạch lập trình được. Các chuyển mạch lập trình được có thể có
nhiều cấu tạo khác nhau như: pass-transistor được điều khiển bởi cell RAM,
các cầu chì nghịch (anti-fuse), EPROM tranzito và EEPROM tranzito. Giống
như logic block, có nhiều cách khác nhau để thiết kế các kiến trúc routing.
Một số FPGA cung cấp nhiều kết nối đơn giản giữa các logic block, một số
khác cung cấp ít kết nối hơn nên routing phức tạp hơn.
Tất cả các đường nối bên trong thì bao gồm các đoạn kim loại với các
điểm nối có thể lập trình được để thực hiện định hướng (routing) mong
muốn. Sự phong phú các nguồn routing khác nhau được cung cấp để đạt được
routing tự động có hiệu quả. Số kênh routing được sắp xếp theo kích cỡ của
mảng; nó tăng với kích cỡ mảng. Các đầu vào và đầu ra CLB được phân bố
trên tất cả 4 mặt của block, tạo ra sự linh hoạt routing.

10


Có bốn loại liên kết chủ yếu, ba loại được phân biệt bởi độ dài tương
đối của các đoạn của chúng: các đường dài đơn, đường dài đôi và đường dài.
(Chú ý: Số lượng các kênh routing được biểu diễn trong bảng dưới đây chỉ là
mô tả, số lượng thực của các kênh routing thay đổi với kích cỡ mảng). Thêm
vào đó, tám buffer toàn bộ chạy nhanh, mạng lưới độ lệch thấp thường sử
dụng cho clock hoặc các tín hiệu điều khiển toàn bộ.
1.1.3 Khối vào ra [11,12]
Các khối vào/ra thường được viết tắt là IOB (input Output Block), cấu
hình cung cấp giao diện giữa các chân bên ngoài và các tín hiệu logic bên
trong. Mỗi IOB điều khiển một chân và có thể được xác định cho đầu vào,

đầu ra hay các tín hiệu hai chiều. Hình 6 biểu diễn biểu đồ một khối vào ra.
Các tín hiệu đầu vào, hai đường, được gọi là I1 và I2, mang các tín hiệu
đầu vào tới mảng. Các đầu vào cũng nối với một điện trở đầu vào cái mà có
thể lập trình được như một flip – flop lật trạng thái theo sườn xung hay một
mạch chốt (latch). Lựa chọn bằng cách đặt gốc thích hợp từ thư viện biểu
tượng. Các đầu vào có thể được cấu hình toàn bộ cho các điểm đi vào TTL
(1,2V) hoặc CMOS (2,5V)

Hình 4: Cấu trúc khối vào ra.

11


Hai điều chỉnh toàn bộ của điểm bắt đầu đầu vào và mức độ đầu ra là
độc lập với nhau. Có một hiện tượng trễ nhỏ khoảng 300mV. Các tín hiệu
clock riêng biệt được cung cấp cho các thanh ghi đầu vào và đầu ra; các clock
này có thể đảo ngược, sinh ra ... Cũng như với trường hợp các thanh ghi CLB,
một tín hiệu set/reset toàn bộ có thể được sử dụng để set hay xoá các thanh
ghi đầu vào và đầu ra bất cứ khi nào mạng Reset tồn tại.
Các đầu vào được ghi, các tín hiệu I1 và I2 thoát block có thể mang các
tín hiệu đầu vào trực tiếp hay ghi lại. Các phần tử lưu trữ đầu vào hay đầu ra
trong mỗi IOB có một đầu vào có thể clock chung, cái mà qua cấu hình có thể
hoạt hoá một cách riêng lẻ cho flip - flop đầu vào hay đầu ra hoặc cả hai.
Clock này có thể vận hành chính xác như chân EC trên CLB XC4000E. Nó
không thể đảo ngược trong IOB.
1.2. Phân loại FPGA [12]
Các loại FPGA của nhiều công ty khác nhau có các đặc tính riêng, tuy
nhiên chúng có thể được chia làm 4 loại chính: cấu trúc mảng đối xứng
(symetrical array), cấu trúc hàng (row-based), cấu trúc PLD phân cấp
(hierarchical PLD) và cấu trúc đa cổng (sea-of-gates).


Hình 5: Bốn loại cấu trúc FPGA trên thực tế.
12


1.3Công nghệ lập trình FPGA [11]
1.3.1 Công nghệ phản cầu chì antifuse
Một amorphous-silicon antifuse có thể được gắn trên cầu nối (via) hoặc
trên khoảng cách giữa lớp kim loại như được chỉ ra trên hình 6. Trong một ma
trận cổng semi-custom, các lớp trên và lớp dưới của kim loại tạo nên một
đường dẫn trực tiếp qua một metal interconnect via. Trong một FPGA dựa
trên silic vô định hình, hai lớp kim loại được cách biệt bằng silic vô định hình
tạo thành sự cách điện. Một xung khoảng 10V-12V trong một khoảng thời
gian cần thiết có thể được dùng bắc qua via, làm cho các lớp trên và dưới của
kim loại nối với nhau gây nên một đường dẫn (với điện trở khoảng 50 om),
như chỉ ra trên hình 6. Bởi vì kích thước của một amorphous-silicon antifuse
là giống như của một đường nối kim loại tiêu chuẩn, các bộ phận lập trình
được có thể đặt rất dầy đặc và chỉ bị giới hạn bởi kích thước của metal-line
pitch, như hình 7. Sau khi đã được lập trình, một antifuse sẽ không thể bị xoá
hoặc tái lập trình.

Hình 6: Một phần tử phản cầu chì.

13


Hình 7: Mảng mặt nạ phần tử phản cầu chì.
Để lập trình được một antifuse, một sự khác biệt về thế phải
được dùng giữa các thành phần antifuse. Mỗi thành phần antifuse
được cách biệt bởi một tranzito và do vậy các thành phần khác

nhau không thể bị lập trình một cách tình cờ. Những tranzito này,
cũng như là các logic có liên quan cho việc đảm bảo vị trí của các
antifuse, lập thành bộ mạch có thể lập trình được ở trên.
Các sản phẩm Actel FPGA dùng Oxide-Nitride-Oxide (ONO) antifuse.

Hình 8: Phần tử phản cầu chì ONO (ONO antifuse).
Những cái này bao gồm 3 lớp trên hinh 8.
- Lớp trên: là một lớp dẫn điện làm từ polysilicon nối mạch tới một lớp
của tấm kim loại.
14


- Lớp giữa là một tổ hợp ONO và là một lớp cách điện.
- Lớp cuối là môt lớp dẫn điện của negatively doped diffusion.
Khi không được lập trình, ONO antifuse cách điện lớp đầu tiên và lớp
cuối cùng của tấm kim loại. Cầu chì được lập trình theo cách tuần tự như là
cho một amorphous-silicon antifuse: Một thế được sử dụng, làm cho lớp cách
điện ở giữa bị penetraded (bao phủ/mất tác dụng) bởi hai tấm ở trên và ở dưới
tạo thành một đường nối mạch với điện trở thấp (300 ôm).

Hình 9: Cấu trúc routing của một ví dụ trên thiết bị Cypress pASIC380.
Bởi vì các thành phần antifuse được đặt rất sát nhau, những FPGAs sử
dụng công nghệ này thường có kết cấu hệ thống linh hoạt cho phép các dây
nối có thể được dùng ở mọi điểm giao. Hình 9 miêu tả một thiết kế hệ
thống của một antifuse FPGA. Các hộp mở tại các điểm giao hiển thị các
antifuse lập trình được. Đầu ra và vào của tế bào logic có thể nối với bất kì
dây đứng nào (ngoại trừ cấu trúc đồng hồ, trong hình vẽ này chỉ được nối
với đồng hồ, cơ cấu và cơ cấu lại của flip-flop). Các dây dẫn trong một cột
15



thẳng đứng có thể nối với các dây ở hàng ngang tại những điểm giao
nhau. Một vài dây thành phần dài hơn chỉ độ 1 tế bào logic. Những cái này
có thể nối với các dây dẫn ở bộ phận ở trên hoặc ở dưới nhưng trên cùng
một lố kim loại thông qua một antifuse lập trình được, được gọi là các pass
link, được biển thị bởi một dấu x trong hình. Một thiết kế hệ thống được
làm hoàn toàn bằng dây có thể cung cấp độ linh hoạt lớn nhất. Tuy nhiên,
dùng các dây thành phần cho các đường dẫn dài sẽ đòi hỏi nhiều antifuse
cần được lập trình, mỗi cái lại thêm một giá trị điện trở vào đường dẫn.
Điện trở lớn làm chậm quá trình hoạt động. Do vậy, các dây khác cho phép
tăng chiều dài (bốn tế bào logic hoặc toàn bộ chiều dài chiều rộng của ma
trận) có thể được tối ưu hoá trong cả cấu trúc ở cục bộ địa phương và rộng.
1.3.2 Công nghệ SRAM [11]
Các tế bào Static RAM (SRAM) có thể được dùng để điểu khiển trạng
thái của các pass tranzito nhằm thiết lập đường nối giữa các dây nằm ngang
và dây nằm dọc. Hình 10 miêu tả sáu pass tranzito cho phép tạo nên sự tổ
hợp trong đường nối của 4 dây (N, S, E, W). Điện trở giữa cực S và D
(source-to-drain) là khoảng 1000 ôm. Các tế bào SRAM có thể được dùng
để lái các đầu vào của thể đa thành phần nhằm chọn một trong số nhiều tín
hiệu được truyền tải trên một đường dẫn nhất định.
Một tế bào bộ nhớ SRAM bao gồm 5 transistor (hình 11): hai cái dùng
cho mỗi cái cầu giao và một cái dùng để định địa chỉ (dùng để chọn tế bào
bộ nhớ cho chương trình). Một tế bào SRAM có thể được tái lập trình,
không giống như các thành phần antifuse, và bị thay đổi hình dạng sau khi
được lập trình. Tuy nhiên, các tế bào SRAM là không ổn định, tức là trạng
thái của các tế bào bộ nhớ sẽ bị mất đi khi ngắt điện. Các FPGA dựa trên
SRAM cần phải được lập trình mỗi khi mạch được đóng điện. Việc này
cũng giống như là các thành phần antifuse cần phải được định địa chỉ và tải
dữ liệu khi lập trình cho mạch.
16



Hình 10: Tế bào SRAM sử dụng trạng thái điều khiển của Pass transitors

Hình 11: Cấu trúc một tế bào SRAM (SRAM cell).
Một tế bào SRAM và pass tranzito kèm theo lớn hơn đáng kể so với một
thành phần antifuse và tranzito lập trình kèm theo. Các thành phần lập trình
này không thể được đặt sát nhau như cho các thành phần antifuse. SRAM
FPGA do vậy không có cấu trúc dây dẫn mà trong đó có thành phần lập trình
ở hầu hết các điểm nối làm tăng khoảng cách giữa các kim loại, giảm mật độ,
tăng giá thành và làm chậm khả năng hoạt động. Thay thế vào đó, các thành
phần lập trình được lắp đặt mang tính thủ thuật hơn để có thể đem lại sự cân
bằng trong chọn lựa giữa tính truyền tải, mật độ và công suất. Đối với các
antifuse FPGA, một số dây dẫn có thể được làm dài thêm bởi một tế bào logic
17


và nhưng cái khác có thể được làm dài hơn nữa nhằm đáp ứng độ linh hoạt
trong truyền dẫn mà vẫn có thể đảm bảo được mật độ và công suất.
1.4 Họ chip Flex 8000 của hãng Altera [12]
1.4.1 Các tính chất của họ Flex 8000
- Giá thành thấp, mật độ cao được thể hiện trong bảng
+ Từ 2500 đến 16000 cổng.
+ 282 đến 1500 flipflop
Bảng 1: Các đặc tính kĩ thuật của họ chip Flex 8000

Các đặc tính mức hệ thống
- Cấu hình lại trong bảng mạch ( In – circuit reconfigurability - ICR)
thông qua các thiết bị cấu hình bên ngoài hoặc điều khiển thông minh.
- Các chip Flex 8000 hỗ trợ liên kết nối thành phần ngoại vi PCI SIG

(peripheral component interconnect Special Interest Group )
- Mạch kiểm tra quét đường biên BST (boundary-scan test ) JTAG tuân
theo chuẩn IEEE Std. 1149.1-1990 được cài đặt sẵn trên chip.
- Hỗ trợ giao diện vào ra nhiều điện áp I/O cho phép thiết bị chạy ở mức
5 V, trong khi các chân I/O thoả mãn với các mức lôgic 5 và 3,3 V.
- Nguồn năng lượng thấp (đặc trưng tiêu biểu là 0,5 mA hoặc thấp hơn
trong chế độ standby).
Liên kết nối linh hoạt

18


- Cấu trúc định tuyến liên tục liên kết nối FastTrack cho ta các trì hoãn
liên kết nối nhanh có thể đoán trước.
- Chuỗi nhớ (carry chain) chuyên dụng thực hiện các hàm số học như là
các bộ cộng nhanh, các bộ đếm, các bộ so sánh (tự động được sử dụng bởi
các công cụ phần mềm và các hàm lớn).
- Chuỗi nối tầng (cascade chain) chuyên dụng thực hiện các hàm logic
tốc độ cao, fan-in lớn (tự động được sử dụng bởi các công cụ phần
mềm và các hàm lớn).
- Mô phỏng 3- trạng thái thực hiện các bus 3 trạng thái nội (bên trong chip)
Các chân I/O đa năng
- Điều kiện cho phép ngõ ra 3 trạng thái riêng rẽ đối với mỗi chân
- Tuỳ chọn cực máng hở (open-drain) trên mỗi chân
- Điều khiển tốc độ chuyển trạng thái ngõ ra lập trình được (programmable output slew-rate control) để giảm nhiễu (do) chuyển mạch
(switching noise)
- Bộ ghi (register) ngoại vi có trì hoãn từ ngõ vào xung clock đến ngõ ra
hay gọi tắt là trì hoãn clock- ngõ ra (clock-to-output delay) và trì hoãn
thiết lập (setup delay) nhanh
- Tuỳ chọn vỏ linh hoạt tử 84 đến 304 chân xem trong bảng 2

- Hỗ trợ phần mềm thiết kế và định vị trí và định tuyến (place-and-route)
tự động, được cung cấp bởi các hệ thống phát triển (development
system) MAX PIus II của Altera cho các PC dựa trên Windows và
các trạm làm việc SunSPARCstation, HP 9000 họ 700/800
Bảng 2 loại chân và số chân được sử dụng cho chức năng I/O

19


- Hỗ trợ thêm nhập thiết kế và mô phỏng thiết kế, được cung cấp bởi
các tập tin netlist 200 và 300 của EDIF, thư viện các mô-đun biểu
hiện bằng thông số LPM (library of parameterized module), các thành
phần Design Ware, Verilog HDL, VHDL và các giao diện khác cho
các công cụ EDA phổ biến từ các nhà sản xuất như Cadence,
Exemplar Logic, Mentor Graphics, OrCAD, Synopsys, Synplicity,
VeriBest và ViewLogic.

1.4.2 Mô tả tổng quát [9,12]
Họ FLEX của Altera kết hợp các tính năng hữu ích của cả EPLD và
FPGA. Họ Flex 8000 lý tưởng cho các ứng dụng khác nhau bởi vì nó kết hợp
cấu trúc fine-grained và các nét đặc trưng về thanh ghi của FPGA với thời
gian trễ liên kết tốc độ cao và đoán trước được của EPLD. Lôgic được thực
hiện trong LE bao gồm 4 đầu vào của khối LUT và các thanh ghi lập trình
được. Sự thực hiện cao được cung cấp bởi một hệ thống liên tục, nhanh của
nguồn định tuyến.
Các thiết bị FLEX 8000 cung cấp một số lượng lớn phần tử lưu trữ cho
các ứng dụng khác nhau ví dụ như xử lý tín hiệu số DSP, đường truyền số liệu
băng rộng và sự truyền dữ liệu. Các thiết bị này là sự lựa chọn tuyệt vời cho
các giao diện bus, phối hợp TTL, các hàm xử lý và các quá trình điều khiển
tốc độ cao. Các loại vỏ chip nhiều chân có thể phối hợp bus 32 bit vào cùng

một thiết bị. Bảng 3 mô tả sự thực hiện FLEX 8000 và các yêu cầu của LE
cho các ứng dụng tiêu biểu.
Bảng 3: Mô tả FLEX 8000.

20


Tất cả gói thiết bị FLEX 8000 cung cấp 4 đầu vào chuyên dụng cho
các tín hiệu điều khiển đồng bộ với hệ số phân đầu ra rộng. Mỗi chân I/O có
một thanh ghi hỗ trợ trên thiết bị ngoại vi. Như các đầu ra, các thanh ghi này
cung cấp fast clock-to-output times, như các đầu vào, chúng cung cấp thời
gian tiến hành nhanh.
Sự liên kết và lôgic trong cấu trúc FLEX 8000 thì được cấu hình với các
phần tử CMOS SRAM. Các thiết bị FLEX 8000 được cấu hình với hệ thống
năng lượng với dữ liệu được lưu trữ trong một EPROM song song chuẩn công
nghiệp hoặc một seri Altera các thiết bị cấu hình, hoặc với dữ liệu cung cấp
bởi một điều khiển hệ thống. Altera cung cấp các thiết bị cấu hình EPC1,
EPC1213, EPC1064 và EPC 1441, loại mà cấu hình các thiết bị FLEX 8000
thông qua một dòng dữ liệu nối tiếp. Dữ liệu cấu hình cũng có thể được lưu
trữ trong một chuẩn công nghiệp 32K - 8 bit hoặc thiết bị cấu hình lớn hơn,
hoặc lấy từ hệ thống RAM. Sau khi một thiết bị FLEX 8000 được cấu hình,
nó có thể được cấu hình lại trong bảng mạch bằng cách khởi động thiết bị và
lặp lại dữ liệu mới. Bởi vì cấu hình lại yêu cầu thời gian nhỏ hơn 100ms, thay
đổi thời gian thực có thể được làm trong suốt quá trình vận hành hệ thống.
Các thiết bị FLEX 8000 bao gồm một giao diện vi xử lý cái mà cho phép
vi xử lý cấu hình các thiết bị FLEX 8000 nối tiếp, song song, đồng bộ hoặc
không đồng bộ. Giao diện cũng cho phép vi xử lý khiến cho một thiết bị
FLEX 8000 như là một bộ nhớ và cấu hình thiết bị bằng cách ghi vào bộ nhớ
ảo, khiến cho người thiết kế tạo ra phần mềm cấu hình một cách dễ dàng.
Các chip FLEX 8000 được hỗ trợ bởi các hệ thống phát triển

MAX+PLUS II của Altera. Các gói tích hợp đơn cung cấp khả năng nhập
thiết kế bằng sơ đồ, văn bản (bao gồm AHDL) và dạng sóng, biên dịch và
tổng hợp logic, mô phỏng hoàn toàn và phân tích định thời trong trường hợp
xấu nhất và cấu hình chip.Phần mềm của Altera cung cấp EDIF 2 0 0 và 3 0
0, LPM, Verilog HDL, VHDL và thêm các giao diện khác để nhập thiết kế và

21


hỗ trợ mô phỏng từ các công cụ PC chuẩn công nghiệp khác và công cụ
EDA dựa trên trạm làm việc UNIX.
Phần mềm Altera hoạt động dễ dàng với các công cụ dải cổng phổ biến
EDA để tổng hợp và mô phỏng. Thí dụ, phần mềm Altera có thể tạo ra các
tập tin Verilog HDL để mô phỏng với các công cụ chẳng hạn như Cadence
Verilog-XL. Ngoài ra phần mềm Altera còn chứa các thư viện EDA sử dụng
các tính chất cụ thể của chíp chẳng hạn như chuỗi nhớ, được sử dụng cho các
bộ đếm nhanh và các hàm số học. Chẳng hạn như, thư viện Synopsys Design
Compile, được cung cấp bởi các hệ thống mở rộng của Altera, chứa các hàm
DesignWare được tối ưu hoá cho kiến trúc FLEX 8000.
Các hệ thống mở rộng của Altera hoạt động trên các PC dựa trên
Windows và SPARCstarion, và các trạm làm việc HP 9000 họ 700/800, IBM
RISC System/6000.
1.4.3 Mô tả chức năng
Cấu trúc FLEX 8000 tạo thành một ma trận lớn các khối được gọi là
phần tử logic (LE). Mỗi LE bao gồm một LUT 4 lối vào cung cấp khả năng
logic kết hợp và một flip-flop cái mà cung cấp khả năng logic liên tục. Cấu
trúc tinh của LE cung cấp khả năng logic một cách hiệu quả cao.
Một LAB bao gồm 8 LE. Mỗi LAB là một cấu trúc độc lập với các đầu
vào chung, liên kết và các tín hiệu điều khiển. Cấu trúc LAB cung cấp một cấu
trúc nhớ thô cho việc thực hiện thiết bị cao và định tuyến một cách dễ dàng.


22


Hình 12: Sơ đồ khối của chip FLEX 8000.

I/O element: phần tử I/O
Logic array block: khối dải logic LAB
Logic element: phần tử logic LE
FastTrack interconnect: liên kết FastTrack
Hình 12 mô tả sơ đồ khối cấu trúc của FLEX 8000. Mỗi một nhóm 8 LE
được kết hợp lại thành một LAB; Các LAB được sắp sếp thành hàng và cột.
Các chân IO được cung cấp bởi các phần tử IO cục bộ ở cuối mỗi dòng hoặc
cột. Một khối IOE bao gồm một bộ đệm hai hướng và một flip-flop.
Sự liên kết tín hiệu trong các thiết bị FLEX 8000 và giữa các chân thiết
bị được cung cấp bởi liên kết FastTrack, một loạt các kênh liên tiếp, nhanh
23


×