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

NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252

93 661 5
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Nghiên cứu và thiết kế mạng công nghiệp sử dụng chip FPGA và CPU 89S8252
Tác giả Nguyễn Bảo Kỳ
Trường học Đại Học Bách Khoa
Chuyên ngành Vô Tuyến - Điện Tử
Thể loại Luận văn thạc sĩ
Năm xuất bản 2004
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 93
Dung lượng 1,43 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

trạm Ethernet sẽ phát hiện ra xung đột nhờ so sánh dữ liệu trên đường truyền với dữ liệu đã phát

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

_oOo _

NGUYỄN BẢO KỲ

NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252

CHUYÊN NGÀNH : Vô Tuyến - Điện Tử

MÃ SỐ : 02.07.01

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, THÁNG 03 NĂM 2004

PHẦN 1 GIỚI THIỆU MẠNG CÔNG NGHIỆP 1.GIỚI THIỆU MẠNG CÔNG NGHIỆP

Trang 2

Trong nhiều thập niên năm qua việc ứng dụng mạng thông tin vào lĩnh vực côngnghiệp đã bùng nổ rất mạnh mẽ.Các hệ thống mạng phát triển rất mạnh và đadạng

Việc ứng dụng mạng công nghiệp đã mang lại những lợi ích rõ nét

 Chi phí lắp đặt hệ thống

 Nhân công điều hành

 Tiện ích quản lý hệ thống

 Cải thiện môi trường làm việc

Mở rộng ra từ mạng cục bộ ,các hệ thống cục bộ có thể kết nối với nhau tạo ramột mạng diện rộng Như vậy chỉ với một máy tính có thể quản lý tập trungmạng điều khiển

Mô hình hệ thống mạng điều khiển

Trang 3

Có thể xem mô hình mạng công nghiệp gần giống như các mô hình mạngkhác.Tuy nhiên có sự đa dạng trong kiểu dữ liệu mạng công nghiệp

Các dạng dữ liệu trong mạng công nghiệp :

 Tín hiệu máy đang hoạt động hay đang nghỉ

 Số máy trong mạng

 Tình trạng tốt hay xấu của từng máy

 Chu kỳ hoạt động của máy

 Cấu hình của các máy

 Tín hiệu kiểm tra mạng

 Thông tin trả lời từ các máy

Máy

2

KIT4KIT3

KIT6KIT5

KIT8KIT7

KIT10KIT9

Mô hình kết nối các mạng cục bộ

ApplicationPresentationSessionTransportNetworkData linkPhysical

Application

TransportInternet

Network access

OSI TCP/IP

Trang 4

Lớp truy xuất mạng : Network Access Layer.

Lớp liên mạng : Internet Layer

Lớp vận chuyển : Transport Layer

Lớp ứng dụng : Application Layer

Chức năng của các lớp :

2.1.1.Lớp truy xuất mạng (Network Access Layer):

Lớp truy xuất mạng đại diện cho các bộ phận kết nối vật lý như cáp, bộ chuyển đổi(Adapter), card mạng, giao thức kết nối, giao thức truy cập mạng Lớp này cónhiệm vụ trao đổi dữ liệu giữa các máy chủ và mạng

TCP/IP không định nghĩa lớp này mà dùng các chuẩn có sẵn như IEEE, X25,RS232, ETHERNET,

Trang 5

2.1.2.Lớp liên mạng (Internet Layer):

Chịu trách nhiệm cung cấp địa chỉ logic cho giao diện mạng vật lý để điều khiểnviệc truyền thông tin giữa các máy Lớp này nhận dữ liệu từ lớp vận chuyển, đónggói thành các IP datagram với các IP header chứa thông tin của việc truyền dữliệu, sau đó chuyển xuống lớp truy xuất mạng để truyền Lớp này cũng cung cấpcác giao thức để thông báo lỗi

2.1.3.Lớp vận chuyển:

Lớp vận chuyển có nhiệm vụ phân phát dữ liệu tới các chương trình ứng dụngkhác nhau Lớp này có hai nghi thức quan trọng là TCP (Transmission ControlProtocol) và UDP (User Datagram Protocol) Đơn vị dữ liệu ở lớp này là các bảntin

2.1.4.Lớp ứng dụng:

Đây là lớp cao nhất, dùng để truy xuất các dịch vụ trên mạng bằng các chươngtrình ứng dụng Một chương trình ứng dụng sẽ tương tác với các nghi thức của lớpnày để gửi và nhận dữ liệu Các dịch vụ trên lớp này gồm có: truyền thư (SMTP),truyền nhận file (FTP) , truy cập từ xa (TELNET),

2.2.Nghi thức Ethernet:

Lớp truy xuất mạng trong TCP/IP sử dụng các nghi thức mạng có sẵn như :Ethernet, IEEE 802, X25, Frame Relay, ATM.Trong các mạng LAN, nghi thứcđược sử dụng phổ biến nhất là mạng Ethernet

Ethernet:

Dựa trên điều khiển đa truy cập CSMA/CD (Carrier Sense Multiple

Access/Collision Detect)

Các chức năng cơ bản của Ethernet là:

 Truyền và nhận các gói dữ liệu

 Giải mã các gói và kiểm tra địa chỉ trước khi phát cho phần mềm lớp trên

 Kiểm tra lỗi

2.2.1.Điều khiển đatruy cập CSMA:

Trước khi truyền dữ liệu trên mạng, một trạm Ethernet phải lắng nghe hoạt độngcủa kênh truyền Nếu phát hiện kênh truyền bị bận, nó sẽ chờ mà không truyền.Nếu kênh truyền trống thì nó sẽ truyền

Sau bit cuối cùng của một khung truyền trạm Ethernet phải đợi một khoảng thờigian nhất định để tạo một khoảng cách giữa các khung Khoảng cách này chính làthời gian cho phép các trạm khác có thể chiếm kênh truyền

Trong trường hợp xảy ra xung đột (khi có hai trạm cùng phát hiện ra kênh trống vàtruyền dữ liệu lên), trạm Ethernet sẽ phát hiện ra xung đột nhờ so sánh dữ liệu trên

Trang 6

đường truyền với dữ liệu đã phát Cả hai trạm sẽ cùng ngưng phát và chờ trongmột khoảng thời gian ngẫu nhiên trước khi phát lại Do thời gian chờ phát lại củamỗi trạm là ngẫu nhiên nên có thể tránh được việc tái xung đột, tuy nhiên nếu điềunày xảy ra, các trạm sẽ phải chờ một lần nữa với thời gian chờ ngẫu nhiên tăng lên

để giảm xác suất tái xung đột

2.2.2.Định dang khung Ethernet:

Preamble

(8 byte) DestinationAddress

(6 byte)

SourceAddress(6 byte)

Type(2 byte) (46->1500Data

byte)

FCS(3 byte)

2.2.2.1.Preamble :

Gồm 8 byte:

 7 byte đầu có giá trị 10101010 có chức năng đồng bộ cho phần cứng

 1 byte có giá trị 10101011 báo cho biết bắt đầu của 1 frame

2.2.2.2 Destination Address và Source Address:

Địa chỉ nguồn và địa chỉ đích, mỗi trạm Ethernet được gán một địa chỉ 48 bit cốđịnh

2.2.2.5.FCS (Frame Check Sequence):

Cho phép trạm nhận xác định việc truyền có bị lỗi hay không

2.3.Khảo sát Token Ring

Token Ring có 2 loại khung cơ bản

2.3.1.Khung Token

Khung Token có chiều dài 3 byte

 Start: Byte mở đầu

 Access control:Byte điểu khiển

 End :Byte kết thúc

Trang 7

2.3.2.Khung dữ liệu/lệnh

Khung dữ liệu/lệnh có kích thước thay đổi tùy thuộc vào trường thông tin.Khung

dữ liệu mang thông tin của lớp trên.Trong khi đó khung lệnh mang thông tin điều

khiển và không chứa thông tin của lớp trên

 Start:Mở đầu khung

 Access control :Phân biệt khung Token hoặc khung lệnh /dữ liệu

 Frame control :Phân biệt loại thông tin điều khiển

 Destination address:Địa chỉ đến của khung

 Source address:Nơi xuất phát của khung

 Data:Có kích thước thay đổi mang thông tin

 FCS:Kiểm tra lỗi khung

Frame control

Destination address

Destination address

Source address

Source address

Data

status

Frame status

Trang 8

PHẦN 2 GIỚI THIỆU GIẢI THUẬT TÍNH CRC

KIỂM TRA DƯ THỪA THEO CHU KỲ CRC

Trường kiểm tra lỗi FCS được thực hiện qua giải thuật tính CRC.Các CRC khácnhau ứng với các đa thức sinh ứng khác nhau

Kết quả phần dư R chính là CRC cần gán vào bản tin để phát

Việc lấy bản tin nhân 2n tức là thêm vào số số không bằng bậc của đa thức sinh Sau đó thực hiện chia module – 2 cho đa thức sinh Phần dư R chính là CRC cầntìm

Tại đầu phát bản tin M được thêm vào thành phần CRC trước khi phát

Tại đầu thu khi nhận được chuỗi dữ liệu cũng được xử lý như đầu phát Tuy nhiênkết quả cho R là bằng không thì kết luận việc truyền không bị lỗi Nếu phần dư Rkhác không thì kết luận việc truyềøn bị lỗi

Trang 9

8 bit dịch

Trang 10

PHẦN 3 ĐIỀU CHẾ VÀ GIẢI ĐIỀU CHẾ FSK

Hệ thống mạng được thiết kế đặt trong môi trường công nghiệp Do vậy dữ liệu rất

dễ bị nhiễu và suy hao Để tăng độ tin cậy trong việc truyền dữ liệu ,tín hiệu từmáy tính gửi xuống cần được điều chế và giải điều chế

0 1

Dạng tín hiệu FSK

0 1

Dạng tín hiệu giải điều chế FSK

Trang 11

hệ thống thay vì chúng ta bắt tay ngay vào xây dựng một hệ thống lớn.

1.1.CÁC THUẬT NGỮ VHDL

Trong VHDL tồn tại những thuật ngữ liên quan mà trong các phần sau sẽ được đềcập đến Các khối cơ bản của VHDL được sử dụng hầu hết trong các thiết kế,cácthuật ngữ sau được định nghĩa cho các khối cơ bản trong VHDL

Entity –Tất cả các thiết kế trong một hợp phần gọi là entity.Entity là khối cơ bản

nhất trong một thiết kế Mức trên cùng của một thiết kế gọi là top-level entity.Nếuchúng ta thực hiện một thiết kế được phân cấp ,thì dưới các mô tả mức cao là các

mô tả có mức thấp hơn (lower-level).Các mô tả mức thấp hơn gọi là lower-levelentity

Architecture-Tất cả các entity đều tồn tại phần mô tả kiến trúc thiết kế bên trong

nó (Architecture description) Trong phần kiến trúc thiết kế này các hoạt động củamột hệ thống được mô tả một cách rõ ràng Một entity có thể bao gồm nhiều phầnkiến trúc thiết kế khác nhau.Một kiến trúc có thể là thiết kế theo dạng hành

vi ,trong khi đó một kiến trúc khác có thể được thiết kế theo dạng cấu trúc

Configuration –Các mô tả configuration nhằm mục đích chỉ định architecture

body nào được sử dụng trong thiết kế trong số nhiều architecture mà một entity cóthể có và chỉ định cặp entity_architecture body nào sẽ tương ứng với các phần khaibáo trong architecture đó Các mô tả configuration có thể coi là danh sách cácphần được sử dụng trong thiết kế

Package- Một package được coi là một tập hợp các kiểu dữ liệu được sử dụng

thường xuyên trong thiết kế và các chương trình con trong thiết kế hệ thống

Trang 12

Attribute-Các thuộc tính của dữ liệu được mô tả kèm theo các đối tượng VHDL

hoặc định nghĩa trước dữ liệu cho các đối tượng trong VHDL.Ví dụ như nhiệt độgiới hạn khi hoạt động của một thiết bị nào đó

Generic –Generic là một thuật ngữ trong VHDL mô tả cho các thông số được

dùng trong entity.Giả sử trong mô tả ở mức các cổng tồn tại các thông số là độ trễcạnh lên và cạnh xuống của xung ,các giá trên được mô tả qua GENERIC phù hợpvới các ENTITY

Process-Đây là thuật ngữ sử dụng thường xuyên trong các thiết kế.Process là đơn

vị thực thi cơ bản trong VHDL.Tất cả hoạt động được thể hiện dựa trên các mô tảVHDL mà trong đó các mô tả được phân thành một hay nhiều các process

1.2.CÁC KIỂU THIẾT KẾ TRUYỀN THỐNG

Trong thiết kế truyền thống, các công cụ CAE (Computer Aided Engineering)được người thiết kế sử dụng Khi sử dụng CAE,các người thiết kế phải tạo raschematic cho các thiết kế

Các schematic bao gồm các ký hiệu mô tả các thành phần cơ bản của thiết kế vàđược kết nối bằng những đường tín hiệu Các ký hiệu mô tả đó phụ thuộc vào cácthư viện đã dựng sẵn

Các thành phần cơ bản được kết nối bằng các đường tín hiệu Các kết nối này rấtquan trọng việc xây dựng thiết kế ,các netlist tương ứng với mỗi thiết kế nhậnđược từ những thiết kế này Các netlist này giúp tạo ra các kiểu giả lập nhằm kiểmtra lại thiết kế trước khi xây dựng ,đồng thời cung cấp các thông tin cho các phầnmềm xây dựng một thiết kế phần cứng thật sự

Hình dưới mô tả một ví dụ thiết kế reset-set-flip-flop (RSFF) xây dựng theo một

ký hiệu mô tả cái khái quát flip-flop trên với thiết kế :

 Ngõ vào của thiết bị: SET và RESET

 Ngõ ra của thiết bị : Q và QB

 Chức năng của thiết bị được thể hiện qua tên của ký hiệu

Các ký hiệu định rõ giao tiếp bên ngồi của thiết bị và chức năng của thiết kế.Cáckết nối bên trong ký hiệu thể hiện qua các schematic xây dựng trên những thànhphần cơ bản (trong ví dụ này các cổng logic được sử dụng )

1.2.1.Tương quan giữa các ký hiệu và các entity

SET Q

Trang 13

Tất cả các thiết kế đều dựa trên các ENTITY.Các ENTITY được xem là các kýhiệu đại diện tồn tại trong các thiết kế dựa trên CAE.Dưới đây là phần mô tả ởmức trêncho RSFF:

 Tên của khai báo ENTITY là rsff

 ENTITY trên khai báo phần thiết kế bao gồm 4 ngõ (vào/ra) thông qua từ khóa PORT

 Từ khóa IN mô tả có 2 ngõ set và reset là ngõ vào có dạng tín hiệu là BIT

 Từ khóa OUT mô tả có 2 ngõ qvà qb là ngõ có dạng tín hiệu là BIT

Các khai báo trong ENTITY cho các ngõ tương ứng với các mô tả trong ký hiệuđược dùng trong CAE

ENTITY là cách mô tả tổng quát nhất cho các giao tiếp của thiết kế với các thiết

bị bên ngồi.Các thông số cho một giao tiếp bao gồm số các ngõ (vào/ra),hướngcủa các ngõ ,dạng tín hiệu tồn tại ở các ngõ

1.2.2.Tương quan giữa các schematic và architecture

Schematic cho rsff được mô tả tương ứng trong VHDL là architecture.Cácarchitecture đều xây dựng trên nền tảng là các ENTITY và chúng mô tả các hành

vi ứng xử trong ENTITY đó Để thực hiện mô tả ARCHITECTURE cho ENTITYrsff ta có thể thực hiện như sau:

Trang 14

rsff.Trong ENTITY có thể có nhiều ARCHITECTURE trong nó ,cácARCHITECTURE có thể là dạng mô tả hành vi hoặc đối với ví dụ trên nó có thể

mô tả dưới dạng cấu trúc Giữa 2 từ khóa ARCHITECTURE và BEGIN là cáckhai báo cho các đường tín hiệu hay các thành phần được sử dụng trong cấu trúc

đó

Trong ví dụ trên thành phần cổng logic NAND được khai báo choARCHITECTURE.Trình biên dịch cần biết các thông tin về giao tiếp của cácthành phần được sử dụng trong ARCHITECTURE,các giao tiếp đó được mô tả sau

từ khóa PORT.Mọi mô tả được đặt giữa 2 từ khóa BEGIN và END ,các mô tả đóxảy ra đồng thời với nhau

Trang 15

1.2.3.Thành phần component

Thành phần NAND được sử dụng 2 lần trong ví dụ trên tương ứng là U1 vàU2.Thành phần NAND được sử dụng với cái tên là U1 với ngõ đầu tiên nối với tínhiệu set, ngõ thứ 2 nối với tín hiệu qb và ngõ thứ 3 nối với tín hiệu q.Nếu chúng taquan sát mô tả của COMPONENT chúng ta sẽ thấy ngõ đầu tiên là a,ngõ thứ 2 làb,đó là 2 ngõ vào ,ngõ thứ 3 là ngõ ra với tên là c.Do đó các ngõ sẽ có các tín hiệutương ứng nối với nó.Cụ thể là :Ngõ a của thành phần NAND trong U1 nối với tínhiệu set,ngõ b nối với tín hiệu qb và ngõ c sẽ được nối với tín hiệu q.Đối vớiU2,chúng ta sẽ thấy được các kết nối sau từ khóa PORT MAP.Chúng ta còn mộtcách mô tả qua đó chúng ta sẽ thấy mọi kết nối được rõ ràng hơn

Để mô tả với cùng một mạch như vậy ta có thể sử dụng thiết kế dạng hành vi.Đây

là dạng thiết kế mô tả một hệ thống thông qua việc thể hiện rõ cách thức hoạt động,hành vi ứng xử của nó Thiết kế này được thực hiện bằng một tập hợp lệnh đượcthực thi theo thứ tự.Khi ta chọn kiểu thiết kế dạng hành vi,cấu trúc của hệ thốnghồn tồn không thể hiện

ACRCHITECTURE behaviour OF rff IS

BEGIN

q<=not (qb AND set);

qb<=NOT(q AND reset);

END behaviour;

1.2.5.Các mô tả hành vi tuần tự

Trong cách thiết kế bằng mô tả hành vi trên,các chức năng của rsff không đượcnêu rõ trong những mô tả VHDL.Ngồi 2 cách thiết kế trên ,chúng ta còn cáchthiết kế thứ 3 dựa vào mô tả chức năng theo thuật tốn của thiết bị thông qua sửdụng cú pháp PROCESS.Các mô tả đó có thể trình bày như sau :

Trang 16

ELSIF set =’0’ AND reset =’0’THEN

Một mô tả PROCESS gồm 3 phần.Phần đầu tiên gọi là danh sách độ nhạy

(SENSITIVITY LIST);phần thứ hai được coi là phần khai báo (DECLARATION)

đặt trước từ khóa BEGIN và phần sau từ khóa BEGIN là phần mô tả Các tín hiệuđặt trong dấu ngoặc đơn sau từ khóa PROCESS là danh sách độ nhạy củaPROCESS khi có sự thay đổi giá trị xảy ra trên một trong các tín hiệu trong danhsách này,các lệnh trong PROCESS sẽ được thực thi

1.2.7.Vùng khai báo của PROCESS

Phần khai báo biến của PROCESS nằm trong khoảng giữa cuối danh sách độ nhạy

và từ khóa BEGIN.Trong ví dụ trên,phần khai báo này được để trống.Trong phầnnày các biến hay các hằng số được khai báo ,các biến khai báo chỉ được hiểu trongphạm vi PROCESS đó Khi gán giá trị cho biến ta dùng ký hiệu “:= “ Chú ý trongmột PROCESS ta không khai báo SIGNAL

1.2.8.Vùng thực thi tuần tự trong PROCESS

Các mô tả trong phần này sẽ được thực thi một cách tuần tự trong PROCESS khi

có bất kỳ tín hiệu nào thay đổi trong danh sách độ nhạy sau từ khóaPROCESS.Trong ví dụ này các mệnh đề IF sẽ được kiểm tra đầu tiên và thực thikhi các mệnh đề IF này đúng

1.2.9.Các mô tả Configuration

Một ENTITY có thể có hơn một ARCHITECTURE,phần này cung cấp sự chỉ địnhARCHITECTURE nào đó được sử dụng trong thiết kế trong số nhiềuARCHITECTURE mà một ENTITY có thể có,và chỉ định cặp ENTITY-ARCHTECTURE nào ứng với các COMPONENT được khai báo Ta xét ví dụ sau:

Trang 17

Thiết kế dùng mô tả CONFIGURATION thường dùng trong thiết kế phâncấp.Chúng ta có thể hiểu phần CONFIGURATION trong ví dụ trên nhưsau :CONFIGURATION tên là rsffcon1.Hai thành phần U1 và U2 kiểu NANDđược sử dụng trong kiến trúc netlist,sử dụng ENTITY mynand,với version1 trongthư viện có tên là WORK.ENTITY rsff có ARCHITECTURE là netlist,và thànhphần nand có ENTITY là mynand và ARCHITECTURE là version1.

Trang 18

PHẦN 5TỔNG QUAN FPGA

FPGA :

FPGA thích hợp cho nhiều ứng dụng vì chúng có tốc độ thích hợp (tầm xung nhịp:

50 đến 200 MHz) Các FPGA tiêu biểu chứa nhiều bản sao của một tế bào hayphần tử logic (LE=Logic Element) cơ bản lập trình được Một phần tử logic (LE)

có thể cài đặt một mạng các cổng logic mà đưa vào 1 hay 2 flip flop Các LE đượcsắp xếp theo cột hay ma trận trong chip

Để thực hiện các phép tốn phức tạp, các LE được nối lại bằng cách dùng mạng nốikết lập trình được Mạng này chứa các kết nối hàng và/hoặc cột cho tồn chip Cácnối kết giữa các LE gần nhau thì ngắn hơn và nhanh hơn

Field-Programmable Gate Array (FPGA) đã xuất hiện như giải pháp cơ bản chovấn đề tranh thủ thời gian để đưa ra thị trường và rủi ro tài chính phải gánh chịutrong quá trình nghiên cứu sản phẩm của công nghệ điện tử Nó cho phép chế tạongay và giá sản phẩm rất thấp FPGA là 1 thiết bị cấu trúc logic có thể được người

sử dụng lập trình trực tiếp mà không phải sử dụng bất kỳ 1 công cụ chế tạo mạchtích hợp nào

Các thiết bị lập trình được đóng vai trò quan trọng lâu dài trong thiết kế các phầncứng số Chúng là các chip đa dụng có thể được cấu hình theo nhiều cách chonhiều ứng dụng Loại đầu tiên của thiết bị có thể lập trình được sử dụng rộng rãi làProgrammable read-Only Memory (PROM) PROM là thiết bị lập trình chỉ được 1lần gồm 1 dãy các ô nhớ chỉ đọc PROM có thể thực hiện bất kỳ hàm logic theobảng sự thật nào bằng cách sử dụng các đường địa chỉ như các ngõ nhập và ngõxuất được xác định bởi nội dung các bit nhớ

Có 2 loại PROM cơ bản, 1 loại chỉ có thể được lập trình bởi nhà sản xuất và 1 loại

có thể được lập trình bởi người dùng Loại thứ nhất được gọi là programmable và loại thứ 2 được gọi là field-programmable Khi sản xuất các chiplogic, hiệu suất tốc độ cao có thể đạt được với các chip mask-programmable vì cáckết nối bên trong thiết bị được thực hiện bằng phần cứng khi sản xuất Ngược lại,các kết nối của field-programmable luôn cần đến 1 số loại chuyển mạch lập trìnhđược (cầu chì chẳng hạn) và vì vậy chậm hơn kết nối cứng Tuy nhiên, thiết bịfield-programmable chứa đựng các ưu điểm có giá trị hơn sự hạn chế về tốc độ

mask- Các chip field-programmable rẻ hơn các chip mask-programmable khi sản xuấtvới số lượng nhỏ

 Các chip field-programmable có thể được lập trình tức thì trong vài phút,trongkhi các chip mask–programmable khi sản xuất phải mất hàng tuần hay hàngtháng

Trang 19

Hai biến thể field-programmable của PROM là Erasable Programmable Only Memory (EPROM) và Electrically Erasable Programmable Read- OnlyMemory (EEPROM) cung cấp 1 ưu điểm: cả hai có thể được xóa và lập trình lạinhiều lần.

Read-Một loại thiết bị lập trình được khác, được thiết kế đặc biệt để thực hiện cácmạch logic là Progammable Logic Device (PLD) Một PLD thông thường gồmmột dãy các cổng AND được nối với một dãy các cổng OR Mạch logic có thểđược thực hiện trong PLD theo dạng tổng của tích (sum-of-products) Loại cơ bảnnhất cua PLD là Progammable Array Logic (PAL): PAL gồm một khối các cổngAND lập trình được nối đến một khối các cổng OR cố định Một loại PAL kháclinh hoạt hơn là Programmable Logic Array (PLA) PLA cũng có cấu trúc giốngPAL nhưng các kết nối là lập trình được PLA có cả 2 loại mask programmable vàfield programmable

Cả 2 loại PLD trên cho phép thực hiện các mạch logic có tốc độ cao.Tuy nhiên cấutrúc đơn giản của chúng chỉ cho phép thực hiện các mạch logic nhỏ

Loại thiết bị lập trình được tổng quát nhất gồm 1 dãy các phần tử rời rạc có thểđược kết nối với nhau theo mô tả của người sử dụng Loại thiết bị này được gọi làMask–Programmable Gate Array (MPGA) Các MPGA phổ biến nhất gồm cáchàng transistor có thể được kết nối để thực hiện các mạch logic Các kết nối dongười dùng định nghĩa này có thể có trong cả các hàng và các cột Ưu điểm chínhcủa MPGA so với PLD là nó cung cấp 1 cấu túc tổng quát cho phép thực hiện cácmạch logic lớn hơn Vì cấu trúc kết nối của chúng có thể mở rộng cùng với sốlượng logic

Field Programmable Gate Array (FPGA) đã kết hợp khả năng lập trình của PLD

và cấu trúc kết nối có thể mở rộng của MPGA Do đó các thiết bị lập trình loại này

có mật độ logic cao hơn

Trang 20

Cấu trúc FPGA

Mô hình FPGA

Giống như MPGA, 1 FPGA gồm 1 dãy các phần tử rời rạc có thể được kết nối vớinhau theo 1 cách chung Giống như PLA, các kết nối giữa các phần tử là có thể lậptrình được FPGA được giới thiệu đầu tiên bởi công ty Xilinx năm 1985.Kể từ đó

có nhiều loại FPGA đã được nhiều công ty phát triển Actel, Altera, Plessey, PlusLogic, Advanced Micro Devices (AMD), Quick Logic, Concurrent Logic,Crosspoint Solutions…

Hình trên mô tả mô hình lý thuyết của 1 FPGA Nó gồm 1 dãy 2 chiều các logicblock có thể được kết nối bằng các nguồn kết nối chung Các nguồn kết nối gồmcác đoạn dây nối (segment) có thể có chiều dài khác nhau Bên trong các kết nối làcác chuyển mạch lập trình được dùng để nối các logic block với các đoạn dâyhoặc các đoạn dây với nhau Mạch logic được cài đặt trong FPGA bằng cách ánh

xạ logic vào các logic block riêng rẻ và sau đó nối các logic block cần thiết quacác chuyển mạch

Các logic block

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ủalogic block có thể được thiết kế theo nhiều cách khác nhau Một số logic block có

Trang 21

thể chỉ đơn giản là các cổng AND 2 ngõ nhập Các logic block khác có cấu trúcphức tạp hơn như các multiplexer hay các bảng tìm kiếm (look up-table) Trongmột số loại FPGA, các logic block có thể có cấu trúc hồn tồn giống như PAL Hầuhết các logic block chứa 1 số loại flip-flop, để hỗ trợ cho việc thực hiện các mạchtuần tự.

Các nguồn 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úcrouting (routing architecture) Kiến trúc routing gồm các đoạn dây nối và cácchuyể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ấutạo khác nhau như pass transistor được điều khiển bởi cell SRAM, các cầu chìnghịch (anti-fuse), EPROM transistor và EEPROM transistor Giống như logicblock có thể nhiều cách khác nhau để thiết kế các kiến trúc routing Một số FPGAcung 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 cáckết nối hơn nên routing phức tạp hơn

Thiết kế mạch ngẫu nhiên

Mạch logic ngẫu nhiên thường được thưc hiện bằng PAL Nếu tốc độ của mạchkhông đòi hỏi khắt khe (các PAL nhanh hơn hầu hết các FPGA) thì mạch có thểđược thực hiện bằng FPGA Hiện nay, FPGA có thể thực hiện 1 mạch cần từ 10đến 20 PAL

Thay thế các chip SSI cho mạch ngẫu nhiên

Các mạch hiện tại trong các sản phẩm thương mại thường chứa nhiều chip SSI.Trong nhiều trường hợp các chip SSI này có thể được thay thế bằng FPGA và kếtquả là giảm diện tích của board mạch

Chế tạo mẫu

FPGA rất lý tưởng cho các ứng dụng tạo mẫu sản phẩm Giá thành thực hiện thấp

và cần thời gian ngắn để thực hiện thiết kế,cung cấp nhiều ưu điểm hơn so với các

Trang 22

phương pháp truyền thống để chế tạo mẫu phần cứng Các bản mẫu ban đầu có thểđược thực hiện rất nhanh và những thay đổi sau đó được thực hiện dễ dàng và íttốn kém

Máy tính dựa trên FPGA

Một loại máy tính hồn tồn mới có thể được chế tạo với các FPGA có thể tái lậptrình ngay trên mạch FPGA Các máy này có một mạch chứa các FPGA với cácchân board nối với các chip lân cận giống như thông thường Ý tưởng là 1 chươngtrình phần mềm có thể được “biên dịch “(sử dụng kỹ thuật tổng hợp mức cao,mứclogic và mức sơ đồ hoặc bằng tay) vào ngay phần cứng Phần cứng này sẽ đượcthực hiện bằng cách lập trình bo mạch FPGA Phương pháp này có 2 ưu điểmchính: một là không cần quá trình lấy lệnh như các bộ vi xử lý truyền thống vìphần cứng đã gộp cả các lệnh Kết quả là tốc độ có thể tăng lên hàng trăm lần Hai

là môi trường tính tốn có thể được thực hiện song song mức cao, làm tăng tốcthêm nữa

Tái cấu hình phần cứng trực tuyến

FPGA cho phép có thể thay đổi theo mong muốn cấu trúc cuả một máy đang hoạtđộng Một ví dụ là các thiết bị máy tính từ xa có thể được thay đổi trực tuyến đểkhắc phục sự cố hay có lỗi thiết kế Kiểu FPGA thích hợp nhất cho các ứng dụngnày là những FPGA có các chuyển mạch lập trình được

Tóm lại FPGA có thể sử dụng có hiệu quả trong nhiều ứng dụng thực tế Nếu sosánh với MPGA thì nó có 2 lợi điểm quan trọng: FPGA có giá thành tạo mẫu thấphơn, thời gian chế tạo ngắn hơn

Trang 23

PHẦN 6 TỔNG QUAN PROJECT MANAGER

Project Manager là một ứng dụng cho phép tích hợp xử lý các môi trường thiết kếkhác nhau như :

 Trình soạn thảo hình vẽ

 Trình soạn thảo ngôn ngữ

 Trình soạn thảo trạng thái

Project Manager thực hiện các chức năng sau :

 Tự động tải các trình soạn thảo thiết kế khi Project được mở

 Kiểm tra lỗi các trình soạn thảo thiết kế khi Project được mở

 Hiển thị các quá trình biên dịch

 Hiển thị trạng thái và tất cả các lỗi trong cửa sổ trạng thái

 Hiển thị thông tin các trình soạn thảo

Project Manager hỗ trợ các họ Xilinx sau

 Virtex

 VirtexE

Trang 25

Trình soạn ngôn ngữ

Trình soạn thảo cho phép thiết kế bằng ba ngôn ngữ khác nhau VHDL, ABEL vàVerilog

Trang 26

Trình soạn thảo trạng thái

Trình soạn thảo trạng thái cho phép thiết kế các trạng thái xảy ra dưới dạng máytrạng thái

Trang 27

PHẦN 7 GIỚI THIỆU CÁC CHIP SỬ DỤNG

89S8252 hỗ trợ các chân lập trình nối tiếp

 P1.7(SCK ):Chân clock khi lập trình nối tiếp

 P1.6(MISO):Ngõ vào dữ liệu lập trình

Trang 28

1.8.Con trỏ luân phiên:

89S8252 hỗ trợ 2 con trỏ luân phiên cho phép truy cập vào EEPROM hoặc thanh ghi DPTR

RXA:Ngõ vào analog

CAP:Kết nối tụ 0.1uF

RXF:Ngõ vào analog có qua mạch lọc

FIL:Điều khiển ngõ vào.FIL =1 chọn ngõ vào lọc ,FIL =0 chọn ngõ vào không qua

bộ lọc

TEST:Đặt IC vào chế độ kiểm tra TEST = 0, IC hoạt động bình thường

TX:Điều khiển ngõ ra phát.TX =1 cấm ngõ ra phát,TX = 0 cho phép ngõ ra phát.VSS: Đất IC

SYNC:Ngõ ra xung đảo 1200baud

Trang 29

 Lập trình giảm nguồn tiêu thụ trong từng macrocell

 Hỗ trợ nhiều loại dạng chân PLCC,PQFP,TQFP,PQFP

Function Block 2

Macrcells 1to 8

Function Block 6

Macrcells 1to 8

SwitchMatrix

I/OBlock

Trang 30

Phần mềm được viết mô hình hoạt động của mạng cho phép truy xuất đến các Kittrong mạng Người sử dụng chỉ quan tâm đến lớp ứng dụng cần truy xuất đến Kitnào trong mạng và dữ liệu là gì Ở đây dữ liệu được biên dịch giữa phần mềmquản lý và các Kit một cách trong suốt

1.2.Giao diện truy cập mạng

Trang 31

Giao diện truy cập thông tin mạng thông qua các ngõ nhập dữ liệu ,địa chỉ ,tốc độ

Gửi dữ liệu

Trang 32

Gửi khung Token đến

địa chỉ của Kit con

trỏ

Và các thanh ghi

Không

Time out? Không

Xóa Time outTăng biến số lần phát

Lỗi đường truyền

Có Không

Gửi khung dữ liệu đến địa chỉ của Kit con trỏ

Và các thanh ghi

Gửi khung dữ liệu đến địa chỉ của Kit con trỏ

Trang 33

Gán độ dài khung bằng 5

Gán độ dài khung bằng 5

Gán độ dài khung bằng 0

Gán độ dài khung bằng 0

Không Không

AB

C

D

EKhông

Thủ tục nhận dữ liệu

Trang 34

Tăng con trỏ dữ liệu

Trang 35

Thủ tục nhận dữ liệu xử lý các khung lệnh nhận được từ Kit convert.dsn gửi lênbằng 2 con trỏ

 Con trỏ giữ vị trí ban đầu của bộ đệm

 Con trỏ giữ vị trí dữ liệu có trong bộ đệm

Khi 2 con trỏ khác nhau chứng tỏ trong bộ đệm có dữ liệu.Khi bộ đệm nhận đủmột khung lệnh thì thủ tục tính FCS.Kết quả tính FCS xác định khung nhận tốthay bị lỗi Khi khung nhận tốt thì thủ tục tiếp tục xử lý xem khung dữ liệu nhậnđược là loại khung gì thông qua byte Command trong khung mà có những xử lýtương ứng với khung vừa nhận

Tính FCS K

Trả con trỏ dữ liệu về

vị trí ban đầuXóa cờ nhận

Tính FCS K

Thoát

Không

Trang 36

Dịch phải FCSDịch phải DataDịch phải CommandDịch phải AddressDịch phải HeaderGiảm số lần quay 1 đơn vị

Gán Header vào byte FCS

Có Tính FCS

Trang 37

Command Lớp liên kết

Khung dữ liệu phát

Lớp liên kết

Command Lớp liên kết

Khung dữ liệu thu

Trang 38

Private Sub timer_ack_Timer()

MsgBox "Network erro", vbExclamation

'Day la doan kiem tra Ack Neu nhan duoc dung Ack

'thi off kiem tra timoout

'Neu nhu nhan duoc frame tot ma khong dung

'Ack cua kenh vua gui thi cagnh bao dong thoi

'cung off luon timeout

'Kiem tra ACK nhan duoc

'Co Complte_F bao nhan frame tot

If Complete_F Then

'=============================================

Complete_F = False

If Crc_F Then

Trang 39

MsgBox "Crc8 erro", vbExclamation

FrmMain.timer_ack.Enabled = False

Else

If (Rx_frame(1) <> Kit) Then

MsgBox "Address erro", vbExclamation

FrmMain.timer_ack.Enabled = False

Else

'Sau 6 s ma chua nhan duoc Ack thi canh bao duong truyen

If (Rx_frame(2) <> Ack_F) Then

MsgBox "Ack erro", vbExclamation

Ngày đăng: 25/04/2013, 13:00

HÌNH ẢNH LIÊN QUAN

Hình trên mô tả mô hình lý thuyết của 1 FPGA. Nó gồm 1 dãy 2 chiều các logic  block có thể được kết nối bằng các nguồn kết nối chung - NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252
Hình tr ên mô tả mô hình lý thuyết của 1 FPGA. Nó gồm 1 dãy 2 chiều các logic block có thể được kết nối bằng các nguồn kết nối chung (Trang 20)
Sơ đồ chân : - NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252
Sơ đồ ch ân : (Trang 27)
Sơ đồ nguyên lý - NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252
Sơ đồ nguy ên lý (Trang 53)
Sơ đồ nguyên lý - NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252
Sơ đồ nguy ên lý (Trang 54)
Sơ đồ nguyên lý - NGHIÊN CỨU VÀ THIẾT KẾ MẠNG CÔNG NGHIỆP SỬ DỤNG CHIP FPGA VÀ CPU 89S8252
Sơ đồ nguy ên lý (Trang 56)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w