1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx

51 821 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 1,75 MB

Nội dung

Giới thiệu về FPGA FPGA là viết tắt của "Field Programmable Gate Array", là vi mạch dùng cấu trúc mảng phần tử logic mà người dùng có thể lập trình được, có thể thực hiện các tính năng

Trang 2

MỤC LỤC

Mở đầu 1

CHƯƠNG 1 TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL 2

1.1 Giới thiệu về FPGA 2

1.2 Kiến trúc chung của một FPGA 3

1.3 Ngôn ngữ phần cứng HDL 5

CHƯƠNG 2 CÁC CÔNG CỤ THIẾT KẾ 14

2.1 Những đặc điểm cơ bản của XtremeDSP Development Kit-IV 14

2.2 Các phần mềm chuyên dụng 23

2.3 Quy trình thiết kế tổng quát 29

CHƯƠNG 3 GIỚI THIỆU MÔ HÌNH SOFTWARE DEFINED RADIO CHO HỆ ĐO THỬ KÊNH MIMO 32

3.1 Khái niệm MIMO 32

3.2 Lịch sử phát triển hệ MIMO 33

3.3 Những ưu điểm của hệ MIMO 33

3.4 Mô hình Software Defined Radio cho hệ đo thử kênh MIMO 37

CHƯƠNG 4 KẾT QUẢ THỰC NGHIỆM……….40

4.1 Cơ sở lý thuyết………40

4.2 Mô hình thiết kế……….………41

4.3 Kết quả mô phỏng trên MATLAB……… 43

4.4 Kết quả thực nghiệm trên FPGA 46

Kết luận

Tài liệu tham khảo Error! Bookmark not defined

Trang 3

Mở đầu

Hiện nay Thông tin vô tuyến là một ngành phát triển rất mạnh mẽ, các công nghệ

sử dụng trong thông tin vô tuyến ngày càng được đổi mới nhằm nâng cao tính hiệu quả trong điều chế, giải điều chế và truyền thông tin Tuy nhiên công nghệ phát triển càng cao thì lại càng đặt ra những khó khăn trong vấn đề thực nghiệm cho các sinh viên trong các trường Đại học Các yêu cầu về phần cứng đôi khi lại trở thành những thử thách vô cùng phức tạp trong việc đưa các mô hình thiết kế vào thực tế Vì vậy FPGA ra đời như một giải pháp cung cấp môi trường làm việc hiệu quả cho các ứng dụng thực tế Tính linh động cao trong quá trình thiết kế cho phép FPGA giải quyết những bài toán phức tạp mà trước kia chỉ thực hiện nhờ phần mềm máy tính Ngoài ra, nhờ mật độ cổng logic cao, FPGA được ứng dụng cho những bài toán đòi hỏi khối lượng tính toán lớn và dùng trong các hệ thống làm việc theo thời gian thực

Trong số các hãng sản xuất FPGA, Xilinx là một trong các hãng đi đầu trong việc sản xuất chip, không chỉ bởi các công cụ hỗ trợ thiết kế hoàn thiện mà còn cho phép người dùng có khả năng can thiệp sâu vào hệ thống, trong đó phải kể tới các chip dòng Virtex-sản phẩm mới nhất của Xilinx trong những năm gần đây Qua quá trình tìm hiểu, nhóm nghiên cứu đã thực hiện được một số các ứng dụng trên FPGA nhằm hướng tới việc

sử dụng FPGA như một công cụ để giải quyết bài toán đo kênh MIMO Đây là vấn đề thu hút được rất nhiều sự quan tâm của các nhà nghiên cứu trong lĩnh vực truyền thông vô tuyến Để phục vụ cho mục đich này, trong nội dung bài luận văn dưới đây, em sẽ trình bày về việc sử dụng FPGA để thiết kế mô hình Software Defined Radio cho hệ đo thử kênh MIMO

Trang 4

CHƯƠNG 1 TỔNG QUAN VỀ FPGA

VÀ NGÔN NGỮ VHDL

1.1 Giới thiệu về FPGA

FPGA là viết tắt của "Field Programmable Gate Array", là vi mạch dùng cấu trúc mảng phần tử logic mà người dùng có thể lập trình được, có thể thực hiện các tính năng logic thông qua máy tính của mình với giá rẻ, và có thể xóa đi viết lại nhiều lần Xilinx là công ty đầu tiên bán ra FPGA và luôn chiếm thị phần lớn nhất Ngoài ra còn có Alterna,

Lattice, Actel, QuickLogic Nhiều nhà sản xuất hiện đang cung cấp rất nhiều cấu trúc và

phương pháp xử lý khác nhau Vì vậy, việc chọn một cấu trúc và một phương pháp xử lý

để có thể đáp ứng được các yêu cầu về chức năng và độ ổn định, đối với một hệ thống trong thực tế là vấn đề mang tính quyết định Thiết bị logic lập trình được được phát minh lần đầu vào cuối thập kỷ 1970 và ngay lập tức đã trở lên phổ biến trong ngành công nghiệp bán dẫn Ngoài khả năng lập trình đa dạng, công nghệ này còn có thời gian sản xuất nhỏ nên có khả năng cạnh tranh thương mại rất lớn Hơn nữa, việc thiết kế với nó

khá dễ dàng và nó có khả năng lập trình lại nhiều lần

FPGA được thiết kế đầu tiêm bởi Ross Freeman, người sáng lập công ty Xilinx vào năm 1984, kiến trúc mới của FPGA cho phép tính hợp số lượng tương đối lớn các phần tử bán dẫn vào 1 vi mạch so với kiến trúc trước đó là CPLD (Complex Programmable Logic Device).Điểm tương đồng của CPLD và FPGA là ở chỗ chúng đều bao gồm một số lượng tương đối lớn các phần tử logic khả trình Tuy nhiên mật độ tích hợp thì khác nhau, mật

độ cổng logic của CPLD nằm trong khoảng từ vài nghìn đến hàng chục nghìn, trong khi với FPGA thì mật độ tích hợp cỡ hàng chục nghìn cho đến vài triệu

FPGA và CPLD có rất nhiều điểm khác biệt tuy nhiên kiến trúc là điểm khác biệt chính giữa CPLD và FPGA CPLD có kiến trúc giới hạn ở một mức độ nào đó, nó bao gồm một hoặc nhiều dải logic “sum-of-products” khả trình và được cung cấp một số tương đối nhỏ các thanh ghi được đồng bộ Điều này làm cho CPLD trở nên không được mềm dẻo lắm, nhưng bù lại trễ timing lại dễ dự đoán hơn và tốc độ kết nối logic cũng cao

Trang 5

hơn FPGA Với FPGA, thì kiến trúc theo một cách khác trội hơn hẳn CPLD bởi vì FPGA

sử dụng các liên kết nối Điều này không những tạo cho nó mềm dẻo hơn rất nhiều mà còn làm tăng độ phức tạp trong thết kế

Điểm khác biệt nữa giữa FPGA và CPLD là trong hầu hết chip FPGA đều có các hàm cấp cao (như bộ cộng và bộ nhân) và các bộ nhớ đã được nhúng vào Ngoài ra, trong các FPGA đời mới còn hỗ trợ đầy đủ hoặc một phần việc cấu hình lại trong hệ thống, cho phép thay đổi thiết kế tức là có thể cập nhật hệ thống hoặc cấu hình động (dynamic reconfiguration) khi chúng đang hoạt động như là một chức rất bình thường Một vài FPGA còn có khả năng cấu hình lại cục bộ (partial re-configuration) tức là một phần của thiết bị được cấu hình trong khi các phần còn lại vẫn đang hoạt động

1.2 Kiến trúc chung của một FPGA

Cấu trúc tổng thể của FPGA bao gồm:

-Các khối Logic -Hệ thống liên kết mạch -Các phần tử tích hợp sẵn

Hình 1.1 Cấu trúc tổng thể của một FPGA 1.2.1 Khối logic FPGA

Trang 6

Hình 1.2 Khối Logic

FPGA chứa trong nó rất nhiều khối logic có thể tái cấu hình CLB (Configurable Logic Blocks) được liên kết với nhau thành bằng các liên kết khả trình (Programmable Interconnect) Các khối vào ra được phân bố xung quanh chip tạo thành các liên kết với bên ngoài Bên trong khối logic CLB có bảng LUT (Look-Up Table) và các phần tử nhớ

(FlipFlop hoặc bộ chốt) 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 tạo thành từ gồm 4 khối logic, 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

Nếu nhìn cấu trúc tổng thể của mảng LUT thì ngoài 4 đầu vào kể trên còn hỗ trợ thêm 2 đầu vào bổ xung từ các khối logic phân bố trước và sau nó nâng tổng số đầu vào của LUT lên 6 chân Cấu trúc này là nhằm tăng tốc các bộ số học logic

1.2.2 Hệ thống mạch liên kết

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 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

(programable switch), trong một 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

1.2.3 Các phần tử tích hợp sẵn

Trang 7

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 trong Atmel FPSLIC tích hợp nhân ARV…, hay cho những ứng dụng xử lý tín hiệu số DSP trong FPGA được tích hợp các DSP Slide là bộ nhân cộng tốc độ cao, thực hiện hàm A*B+C, ví dụ dò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

1.3 Ngôn ngữ mô tả phần cứng (HDL)

Ngôn ngữ mô tả phần cứng (HDL) là ngôn ngữ lập trình phần mềm dùng để mô hình họat động mong muốn của phần cứng Có hai khía cạnh mà HDL tạo điều kiện để

mô tả phần cứng: mô hình hành vi trừu tượng và mô hình cấu trúc phần cứng

Mô hình hành vi trừu tượng Ngôn ngữ mô tả phần cứng tạo điều kiện dễ dàng cho

việc mô tả trừu tượng hành vi của phần cứng đối với các mục đích đặc tả (chỉ rõ chi tiết

kỹ thuật) Hành vi này không chỉ bị chi phối bới các khía cạnh cấu trúc hoặc thiết kế của ý địh phần cứng

Mô hình cấu trúc phần cứng Cấu trúc phần cứng có khả năng được mô hình trong

ngôn ngữ mô tả phần cứng mà không cần quan tâm đến hành vi thiết kế

Năm 1980 bộ Quốc phòng Mỹ (DOD) muốn thực hiện việc thiết kế mạch tự dẫn chứng, muốn theo đuổi một hệ phương pháp thiết kế tổng quát và có thể sử dụng lại được với các công nghệ mới Rõ ràng đã có nhu cầu cho một ngôn ngữ lập trình chuẩn để mô tả chức năng và cấu trúc của các mạch số đối với việc thiết kế vi mạch (IC) Sau đó DOD đã tài trợ cho một dự án thuộc chương trình vi mạch có tốc độ rất cao VHSIC (very high speed integrated circuit) để tạo ra ngôn ngữ mô tả phần cứng chuẩn Kết quả là dự án này đã tạo

ra ngôn ngữ mô tả phần cứng VHSIC hay thường được gọi là VHDL (VHSIC Hardware Description Language-Ngôn ngữ miêu tả phần cứng VHSIC) như hiện nay

VHDL được xem như là sự kết hợp của các ngôn ngữ sau : ngôn ngữ tuần tự + ngôn ngữ đồng thời + netlist + định thời + mô phỏng Do đó cấu trúc VHDL cho phép thể hiện cách thức thực hiện theo kiểu song song hay tuần tự của một hệ thống số có hoặc không có timing Nó cũng cho phép vẽ mô hình một hệ thống bằng các liên kết nối của các thành phần

Trang 8

VHDL được dành cho tổng hợp mạch (synthesis) cũng như mô phỏng mạch (simulation) Dù VHDL có thể mô phỏng một cách đầy đủ, nhưng không phải tất cả các cấu trúc đều được VHDL tổng hợp

1.3.1 Các ưu điểm của VHDL

- Chương trình trong VHDL có thể được viết theo nhiều cấu trúc khác nhau: Ngẫu nhiên, tuần tự, nối chân, định thời chỉ rõ, ngôn ngữ sinh dạng sóng

- VHDL là một ngôn ngữ phân cấp, hệ thống số có thể được mô phỏng như một kết nối các khối mà các khối này được thực hiện bởi các khối con khác nhỏ hơn

- Cung cấp một cách mềm dẻo các phương thức thiết kế trên xuống, dưới lên, hoặc

tổ hợp cả hai

- Cung cấp cả hai mode đồng bộ và không đồng bộ

- Linh hoạt trong kĩ thuật mô phỏng số như sử dụng biểu đồ trạng thái, thuật toán, các hàm Boolean

- Có tính đại chúng: VHDL được phát triển dưới sự bảo trợ của chính phủ Mỹ và hiện nay là một tiêu chuẩn của IEEE VHDL được sự hỗ trợ của nhiều nhà sản xuất thiết bị cũng như nhiều nhà cung cấp công cụ thiết kế mô phỏng hệ thống

- VHDL cung cấp 3 kiểu mẫu viết khác nhau: structural, dataflow và behavioral

- Không giới hạn về độ lớn của thiết kế khi sử dụng ngôn ngữ

- VHDL hoàn toàn độc lập với công nghệ chế tạo phần cứng Một mô tả hệ thống dùng VHDL thiết kế ở mức cổng có thể được chuyển thành các bản tổng hợp mạch khác nhau tuỳ thuộc công nghệ chế tạo phần cứng mới ra đời nó có thể được áp dụng ngay cho các hệ thống đã thiết kế

- Khả năng định nghĩa kiểu dữ liệu mới cung cấp một công cụ hữu hiệu cho thiết kế

và mô phỏng công nghệ mới với một mức rất cao

1.3.2 Cấu trúc một mô hình hệ thống sử dụng ngôn ngữ VHDL

VHDL là ngôn ngữ mô tả phần cứng do vậy mà nó có thể được sử dụng để làm mô hình của một hệ thống số Hệ thống số có thể đơn giản là các cổng logic hay phức tạp như một hệ thống hoàn chỉnh Các khối xây dựng nên ngôn ngữ VHDL gọi là các khối thiết

kế Có 3 khối thiết kế chính:

- Khai báo Entity (Thực thể)

- Khai báo Architecture (Kiến trúc)

Trang 9

- Khai báo Configuration (Cấu hình)

- Đôi khi ta s ử d ụ n g c á c g ó i (Packages) và mô hình kiểm tra hoạt động của hệ thống (Testbench)

a Entity (Thực thể)

Khai báo thực thể trong VHDL là phần định nghĩa các chỉ tiêu phía ngoài của một phần tử hay một hệ thống Khai báo Entity là chỉ ra tên của Entity và liệt kê các cổng vào/ra Các cổng là các (dây) tín hiệu mà qua đó entity giao tiếp với môi trường bên ngoài Ví dụ, một mạch bán tổng được chỉ ra ở hình 8 :

Trang 10

Architecture là nhãn được đặt tuỳ theo người viết chương trình Cấu trúc bên trong của Architecture có thể được viết theo một trong số các kiểu mẫu sau:

-Tập hợp kết nối bên trong của các thiết bị

-Tập các câu lệnh ngẫu nhiên

-Tập các câu lệnh tuần tự

-Kết hợp của ba dạng trên

Các kiểu mô hình này sẽ được mô tả cụ thể như sau:

 Kiểu kiến trúc

Kiểu này được xây dựng dựa trên một tập các thành phần được kết nối Ví dụ như

bộ bán tổng được chỉ ra sau đây:

architecture HA-STRUCTURE of HALF-ADDER is

X1: XOR2 port map(A,B,SUM);

A1 : AND2 port map (A,B,CARRY);

End HA-STRUCTURE;

 Kiểu luồng dữ liệu

Trong kiểu này, luồng dữ liệu qua Entity trước tiên được biểu diễn bằng các phép gán đồng thời Kiểu luồng dữ liệu của bộ bán cộng được chỉ ra trong ví dụ sau:

Trang 11

Architecture DATAFLOW of HALF-ADDER is Begin

SUM <= A xor B after 8ns;

CARRY <= A and B after 4ns;

End DATAFLOW;

Trong ví dụ này kiểu luồng dữ liệu sử dụng hai phép gán tín hiệu đồng thời (hoặc gán nối tiếp) Trong phép gán cho tín hiệu thì ký hiệu gán là “<=” Giá trị của biểu biểu thức bên phải được gán cho tín hiệu bên phía tay trái Một phép gán đồng thời được thực hiện chỉ khi có bất kỳ tín hiệu trong biểu thức phía phải có sự thay đổi, tức là giá trị tín hiệu thay đổi Thông tin trễ cũng có thể được thêm vào phép gán bằng cách sử dụng mệnh

đề “after”

 Kiểu behavior

Kiểu behavior chỉ ra cách thức hoạt động của một entity như là một tập hợp lệnh được thực hiện theo kiểu nối tiếp bằng cách sử dụng process Chúng không chỉ ra rõ ràng cấu trúc của entity mà chỉ ra chức năng của nó Ví dụ sau xem xét kiểu behavior của bộ bán tổng

Architecture BEHAVIOR of HALF-ADDER is Begin

Trang 12

Một process cũng có một phần để khai báo (trước từ khóa “begin”) và một phần để trình bày (giữa từ khóa “begin” và “process”) Các lệnh bên trong phần trình bày này được thực hiện theo kiểu nối tiếp Danh sách các tín hiệu được chỉ ra trong dấu ngoặc sau

từ khóa “process” tạo thành một danh sách “nhạy” Tức là, khi có sự thay đổi của bất kỳ giá trị nào trong danh sách này thì mới thực hiện các lệnh trong process Tuy nhiên, tất cả các process trong một chương trình thì đều thực hiện đồng thời

Khai báo biến (bắt đầu bằng từ khóa “variable”), trong ví dụ này có hai biến X và Y Các biến được gán với ký hiệu là “:=” và giá trị của vế phải gán cho giá trị biến bên trái

Library CMOS-LIB, MY-LIB;

Configuration CONFIG of HALF-ADDER is

Trang 13

d Package (Gói)

Mục đích cơ bản của Package là gói gọn các phần nhỏ có thể được sử dụng trong nhiều thiết kế Package là một biện pháp thường dùng để lưu dữ thông tin có thể được sử dụng trong nhiều Entity Mối quan hệ trong Package cho phép dữ liệu có thể được tham chiếu bởi những Entity khác Vì thế dữ liệu có thể được chia sẻ

Một Package gồm hai phần: Phần khai báo và phần thân (Body) Phần khai báo định nghĩa giao diện cho Package, bằng một cách tương tự như định nghĩa của Entity Thân của Package chỉ rõ sự biến đổi quan hệ trong Package giống như trong Architecture VHDL là không giống như cách thực thi chương trình một cách tuần tự như chương trình của PC, các lệnh của VHDL được thực hiện một cách đồng thời Vì lí do này, người

ta thường gọi là “mã VHDL” chứ không gọi là “chương trình VHDL” Trong VHDL, chỉ các lệnh nằm trong PROCESS, FUNCTION hoặc PROCEDURE mới được thực thi một cách tuần tự

Như đã đề cập ở trên, một trong những ưu điểm của VHDL là nó cho phép tổng hợp một mạch hay một hệ thống trong một thiết bị khả trình (như PLD hoặc FPGA) hoặc trong một chip ASIC Các bước thực hiện một project được chỉ ra trong hình 1.3

Trang 14

Hình 1.4 Sơ đồ thiết kế VHDL

Thiết kế được bắt đầu bằng việc viết mã VHDL và lưu vào file có đuôi “.vhd” có cùng tên với tên của ENTITY Bước đầu tiên trong quá trình tổng hợp là biên dịch Biên dịch là quá trình chuyển từ ngôn ngữ VHDL bậc cao (mô tả mạch ở mức RTL – mức chuyển thanh ghi) sang dạng danh sách kết nối (netlist) ở mức gate Bước thứ hai là tối

ưu, được thực hiện trên danh sách kết nối mức gate để đạt được sự tối ưu về tốc độ hoặc tối ưu về diện tích sắp đặt Ở giai đoạn này, thiết kế có thể được mô phỏng Cuối cùng một phần mềm Place-và-route sẽ tạo ra sự sắp đặt (layout) vật lý cho một thiết bị PLD/FPGA hoặc sẽ tạo ra mặt nạ (mask) cho chip ASIC

e Mô hình kiểm tra hoạt động (Testbench)

Một trong các nhiệm vụ rất quan trọng là kiểm tra bản mô tả thiết kế Kiểm tra một

mô hình VHDL được thực hiện bằng cách quan sát hoạt động của nó trong khi mô phỏng

và các giá trị thu được có thể đem so sánh với yêu cầu thiết kế.Môi trường kiểm tra có thể

Trang 15

hiểu như một mạch kiểm tra ảo Môi trường kiểm tra sinh ra các tác động lên bản thiết

kế và cho phép quan sát hoặc so sánh kết quả hoạt động của bản mô tả thiết kế Thông thường thì các bản mô tả đều cung cấp chương trình thử Nhưng ta cũng có thể tự xây dựng chương trình thử (testbench) Mạch thử thực chất là sự kết hợp của tổng hợp nhiều thành phần Nó gồm ba thành phần Mô hình VHDL đã qua kiểm tra, nguồn dữ liệu và

bộ quan sát Hoạt động của mô hình VHDL được kích thích bởi các nguồn dữ liệu và kiểm tra tính đúng đắn thông qua bộ quan sát

Hình 1.5 Sơ đồ tổng quát của một chương trình thử (Testbench)

Trong đó: DUT: (device under test) mô hình VHDL cần kiểm tra

Observer: khối quan sát kết quả

Data source: nguồn dữ liệu (khối tạo ra các tín hiệu kích thích)

Trang 16

Chương 2 Các công cụ thiết kế

2.1 Những đặc điểm cơ bản của XtremeDSP Development Kit-IV

2.1.1 Giới thiệu chung

XtremeDSP Development Kit-IV là bộ KIT có khả năng cung cấp một nền tảng phát triển cao cho công Nghệ FPGA Virtex-IV Pro.Hai bộ ADC và DAC có tốc độ cao cho phép người dùng có thể lập trình nhằm xử lý các ứng dụng như Software Defined Radio, 3G Wireless, Networking, HDTV hoặc hình ảnh Video Bộ KIT có chứa một bo mạch chủ nối với một module nằm trên một board màu xanh Bo mạch chủ được gọi là BenONE-Kit Motherboard và module trên được gọi là BenADDA DIME-II module

Nhiệm vụ của bo mạch chủ BenONE-Kit

• Hỗ trợ cho module BenADDA DIME-II

• Hỗ trợ giao diện USB hoặc 3.3V/5V PCI

• Hỗ trợ giao diện PCI 3.3V/5V 32 bit/33-MHz và giao diện USB 1.1

• Các LED hiên thị

• Mạch tạo cấu hình JTAG

• Các chân cắm nối trực tiếp với người dùng có thể lập trình được (FPGA I/O)

Module BenADDA DIME-II

• Chíp FPGA: XC4VSX35-10FF668

• Hai kênh DAC độc lập: AD6645 ADC (14-bits 105 MSPS)

• Hai kênh ADC độc lập: AD9772 DAC (14-bits 160 MSPS)

• Hỗ trợ clock ngoài, bộ dao động onboard và clock có thể lập trình

Trang 17

• Hai bộ nhớ SRAM (133MHz, 512Kx32 bits mỗi bên)

• Các LED hiển thị

Hình 2.1 Giao diện ngoài của XtremeDSP Development Kit-IV

Hình 2.2 Bộ KIT sử dụng chuẩn kết nối MCX

Trang 18

Hình 2.3 Giao diện phía trong của XtremeDSP Development Kit-IV

2.1.2 Các thành phần chính của XtremeDSP Development Kit-IV

a Chíp FPGA (XC4VSX35)

Các đặc điểm chính của XC4VSX35:

• Rocket IO Transceiver Blocks: 8

• PowerPC Processor Blocks: 2

Trang 19

b Các bộ ADC

Module BenADDA DIME- sử dụng trong XtremeDSP Development Kit-IV có hai kênh vào tương tự, mỗi kênh có dữ liệu và tín hiệu điều khiển độc lập tới FPGA.Hai ADC (AD6645) cho phép thực hiện hai thiết lập dữ liệu với độ rộng 14 bit.Tín hiệu đưa vào ADC và tín hiệu ra thông qua chuẩn kết nối MCX

Hình 2.4 Sơ đồ tín hiệu qua ADC vào FPGA

 Các đặc điểm chính của khối ADC (AD6645)

• Cung cấp ADC 14-bit, kiểu mã bù 2

Trang 20

 ADC clock

Mỗi ADC có thể được thiết lập clock trực tiếp bằng tín hiệu LVPECL một cách độc lập.Tín hiệu LVPECL có thể được điều khiển bằng Virtex-II XC2V80-4CS144 FPGA (Clock FPGA).Một số các clock có thể dùng trong FPGA:

-Clock 105 MHZ on board bằng tinh thể

-Clock ngoài đưa vào thông qua chuẩn kết nối MCX

-Clock lập trình qua bộ dao động trên KIT

Chú ý rằng bộ ADC (AD6645) chỉ có thể hỗ trợ clock vào lớn nhất lên tới 105 MHZ.Điều này rất quan trọng nếu muốn sửdụng một trong các clock DIME (Ví dụ như

CLKA,CLKB,CLKC),vì những clock có thể lớn hơn 105 MHz

c Các bộ DAC (AD9772A)

Module BenADDA DIME-I sử dụng trong XtremeDSP Development Kit-IV có hai kênh lối ra tương tự, mỗi kênh có dữ liệu và tín hiệu điều khiển độc lâp tới FPGA.Hai bộ DAC (AD9772A )cung cấp hai đường dữ liệu mỗi đường 14 bit.Tín hiệu vào và tín hiệu

ra thông qua kết qua kết nối MCX

Hình 2.5 Sơ đồ tín hiệu qua DAC cho dữ liệu ra tương tự

Trang 21

 Các đặc điểm chính của DAC (AD9772A)

• Cung cấp DAC 14-bit

• Tốc độ dữ liệu lối ra tối đa 160MSPS

• Sử dụng clock LVPECL lối vào lấy từ Virtex-II XC2V80-4CS144 Clock FPGA

• Bộ nhân đồng hồ có vòng khóa pha trong

• Trở kháng lối ra 50 Ω thông qua chuẩn kết nối MCX

 DAC clock

Mỗi DAC có thể được clock trực tiếp , độc lập thông qua tín hiệu LVPECL.Tín hiệu LVPECL có thể được điều khiển bởi Virtex-II XC2V80-4CS144 FPGA (Clock FPGA).Một số các clock có thể sử dụng thông qua clock FPGA:

-Clock 105 MHZ on board bằng tinh thể

-Clock ngoài đưa vào thông qua chuẩn kết nối MCX

-Clock lập trình qua bộ dao động trên KIT

d Bộ nhớ ZBT SRAM

Bộ KIT cung cấp 2 bộ nhớ độc lập ZBT SRAM Mỗi bộ có thể cấu hình 512k x 32.Bộ nhớ này có khả năng lưu dữ liệu trên board thông qua bus dữ liệu 32-bit tới mỗi bộ nhớ

Trang 22

Hình 2.6 Sơ đồ ZBT SRAM

 Đặc điểm chính của ZBT SRAM

• Thời gian chu kỳ nhanh: 6ns, 7.5ns và 10ns

• 100% bus được tận dụng

• Điều khiển qua giao diện tín hiệu tối thiểu

• Có các chân điều khiển đọc/viết riêng

• Sử dụng tín hiệu điều khiển, địa chỉ thanh ghi,dữ liệu vào ra, có thể thiết lập được clock

• Cho phép dữ liệu vào ra thông thường

• Có mode tuyến tính hoặc ghép xen

 ZBT SRAM Clocking

Hai bộ nhớ ZBT SRAM trên bộ KIT có thể được clock độc lập thông qua việc chèn thêm tín hiệu clock phản hồi.Mỗi bộ nhớ có một tín hiệu có thể được hiệu chỉnh trong FPGA đảm bảo cho clock của ZBT SRAM và chân phản hồi có clock giống hệt nhau với

độ sai khác nhỏ nhất Quá trính này đảm bảo cho logic trong được khóa pha với dữ liệu đưa vào

Trang 23

e Vào ra số

Một số đặc điểm vào ra của bộ KIT:

• Một đầu bus 14 chân trên bo mạch chủ.Nó cho phép 12 kết nối trực tiếp hai chiều tới FPGA với hai chân nối đất

• Một đầu bus 34 chân hiệu chỉnh trên bo mạch chủ.Nó cho phép 28 kết nối trực tiếp hai chiều tới chip FPGA.Các phần còn lại cho các kết nối 3,3V,nối đất, và 'không được nối

• Hai đầu vào ra 2 chân cung cấp 2 kết nối hai chiều tới chip FPGA

• Một lối vào cho clock ngoài trên bo mạch chủ có thể thiết lập được tần số

• Một khe cắm cho bộ dao động trên bo mạch chủ.Chú ý rằng trên bo mạch chủ không có bộ dao động mà chỉ có socket để người dùng sử dụng các bộ dao động cho các ứng dụng riêng biệt

g DIME-II System Clocks

Module BenADDA DIME-II có thể tạo ra ba hệ thống clock cho FPGA, các clock đó được gọi là CLKA,CLKB và CLKC.Các tín hiệu clock được tạo ra trên bo mạch chủ DIME-II và được đưa vào vùng module nơi đặt module BenADDA DIME-II.Các clock này có thể được điều khiển bới người dùng và được đưa đến các chân Global Clock và cung cấp một cách linh hoạt nhất cho FPGA.Tuy nhiên cần chú ý rằng chức năng của các DIME-II clock này được xác định bởi bo mạch chủ Khi module BenADDA DIME-II được đặt vào bo mạch chủ BenONE-Kit,khi đó trong cấu hình KIT XtremeDSP Development Kit-IV,các clock của DIME-II là :

-CLKA: clock do bộ tạo dao động có thể lập trình trên bo mạch chủ BenONE-Kit -CLKB: clock do bộ tạo dao động có thể lập trình trên bo mạch chủ BenONE-Kit

Trang 24

-CLKC: kết nối tới một socket để hỗ trợ bộ tạo dao động tinh thể

Hình 2.7 Sơ đồ hệ thống clock

h LED hiển thị

XtremeDSP Development Kit-IV có một số “user-definable” và các LED hiển thị cho phép người dùng kiểm tra trạng thái oạt động của bộ KIT.Có các LED kiểm tra các cấu hình người dùng và các LED hiển thị trạng thái hệ thống, cấu hình các giao diện và nguồn (Interface LEDs) Các LED sử dụng bộ KIT có ba màu (mỗi LED hiển thị tổng cộng ba màu khác nhau: Đỏ, Xanh và Vàng/Dacam)

Trang 25

Hình 2.8 Sơ đồ các LED trạng thái 2.2 Các phần mềm chuyên dụng

2.2.1 Tổng quan về phần mềm ISE của Xilinx

Hệ thống phần mềm ISE của Xilinx là một môi trường thiết kế tích hợp bao gồm thiết kế chương trình, mô phỏng và thực hiện các thiết kế trên các thiết bị FPGA hay CPLD.ISE có thể tham gia vào việc điều khiển mọi giai đoạn trong quy trình thiết kế.Thông qua giao diện của ISE, người dùng có thể can thiệp vào các thiết kế và sử dụng các công cụ thực hiện thiết kế Ngoài ra người dùng còn có thể can thiệp vào các file hay tài liệu có liên quan đến project đang thiết kế

Ngày đăng: 26/07/2014, 21:20

HÌNH ẢNH LIÊN QUAN

Hình 1.2 Khối Logic - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 1.2 Khối Logic (Trang 6)
Hình 1.4 Sơ đồ thiết kế VHDL - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 1.4 Sơ đồ thiết kế VHDL (Trang 14)
Hình 1.5 Sơ đồ tổng quát của một chương trình thử (Testbench) - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 1.5 Sơ đồ tổng quát của một chương trình thử (Testbench) (Trang 15)
Hình 2.1. Giao diện ngoài của XtremeDSP Development Kit-IV - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.1. Giao diện ngoài của XtremeDSP Development Kit-IV (Trang 17)
Hình 2.2.  Bộ KIT sử dụng chuẩn kết nối MCX - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.2. Bộ KIT sử dụng chuẩn kết nối MCX (Trang 17)
Hình 2.3. Giao diện phía trong của XtremeDSP Development Kit-IV  2.1.2.  Các thành phần chính của XtremeDSP Development Kit-IV - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.3. Giao diện phía trong của XtremeDSP Development Kit-IV 2.1.2. Các thành phần chính của XtremeDSP Development Kit-IV (Trang 18)
Hình 2.4. Sơ đồ tín hiệu qua ADC vào FPGA - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.4. Sơ đồ tín hiệu qua ADC vào FPGA (Trang 19)
Hình 2.5. Sơ đồ tín hiệu qua DAC cho dữ liệu ra tương tự - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.5. Sơ đồ tín hiệu qua DAC cho dữ liệu ra tương tự (Trang 20)
Hình 2.6. Sơ đồ ZBT SRAM - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.6. Sơ đồ ZBT SRAM (Trang 22)
Hình 2.7. Sơ đồ hệ thống clock  h.  LED hiển thị - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.7. Sơ đồ hệ thống clock h. LED hiển thị (Trang 24)
Hình 2.8. Sơ đồ các LED trạng thái  2.2. Các phần mềm chuyên dụng - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.8. Sơ đồ các LED trạng thái 2.2. Các phần mềm chuyên dụng (Trang 25)
Hình 2.9. Giao diện phần mềm ISE - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.9. Giao diện phần mềm ISE (Trang 26)
Hình 2.10. Tổng quan về FUSE - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.10. Tổng quan về FUSE (Trang 27)
Hình 2.11. Các khối Block Set DSP Xilinx  b.  Hỗ trợ cho Matlab - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.11. Các khối Block Set DSP Xilinx b. Hỗ trợ cho Matlab (Trang 29)
Hình 2.12. Cửa sổ ước lượng tài nguyên  d.  Mô phỏng phần cứng Co-Simulation - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.12. Cửa sổ ước lượng tài nguyên d. Mô phỏng phần cứng Co-Simulation (Trang 30)
Hình 2.13. Khả năng kết hợp các môi trường thiết kế  2.3. Quy trình thiết kể tổng quát - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.13. Khả năng kết hợp các môi trường thiết kế 2.3. Quy trình thiết kể tổng quát (Trang 31)
Hình 2.14. Quy trình thiết kế tổng quát - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 2.14. Quy trình thiết kế tổng quát (Trang 31)
Hình 3.2. Hệ số dải - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 3.2. Hệ số dải (Trang 36)
Hình 3.3. Phân tập tại nơi phát - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 3.3. Phân tập tại nơi phát (Trang 37)
Hình 3.4. Hợp kênh không gian - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 3.4. Hợp kênh không gian (Trang 38)
Hình 3.5. Sự suy giảm giao thoa - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 3.5. Sự suy giảm giao thoa (Trang 38)
Hình 3.6. Sơ đồ bộ phát sử dụng FPGA của ĐH Alberta, Canada - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 3.6. Sơ đồ bộ phát sử dụng FPGA của ĐH Alberta, Canada (Trang 40)
Hình 3.7. Sơ đồ bộ thu sử dụng FPGA của ĐH Alberta, Canada - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 3.7. Sơ đồ bộ thu sử dụng FPGA của ĐH Alberta, Canada (Trang 41)
Hình 4.1. Mô hình bên phát - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 4.1. Mô hình bên phát (Trang 43)
Hình 4.2. Mô hình bên thu - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 4.2. Mô hình bên thu (Trang 44)
Hình 4.3. Mô phỏng bên phát - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 4.3. Mô phỏng bên phát (Trang 46)
Hình 4.4. Mô phỏng bên thu khi có trễ (φ≠0) - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 4.4. Mô phỏng bên thu khi có trễ (φ≠0) (Trang 47)
Hình 4.5. Mô phỏng bên thu khi không có trễ (φ=0) - BÁO CÁO TỐT NGHIỆP: TỔNG QUAN VỀ FPGA VÀ NGÔN NGỮ VHDL docx
Hình 4.5. Mô phỏng bên thu khi không có trễ (φ=0) (Trang 48)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w