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

Đề tài: THIẾT KẾ THIẾT BỊ CHUYỂN MẠCH BĂNG THÔNG LỚN LỚP II (SWITCH LAYER II) TRÊN FPGA

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 (4.04 MB, 70 trang )

THIẾT KẾ THIẾT BỊ CHUYỂN MẠCH
BĂNG THÔNG LỚN LỚP II
(SWITCH LAYER II) TRÊN FPGA
Sinh viên thực hiện

:

Giáo viên hướng dẫn :

Ngô Văn Minh, ĐTCT14A
Đào Xuân Lộc, ĐTVT14C
Vương Duy Phú, ĐTVT14C
TS. Trịnh Quang Kiên
TS. Đào Đình Hà
1/70


MỞ ĐẦU

Hệ thống máy chủ Google

Thiết bị chuyển mạch kết nối các máy chủ

Thiết bị chuyển mạch Cisco
2/70


NHIỆM VỤ ĐỒ ÁN

Nghiên cứu tổng quan về Switch Layer 2


Làm chủ công nghệ, làm bước đệm, nền tảng phát triển
Thiết kế kiến trúc lõi Switch tốc độ cao
cho các thiết bị khác như router, siterouter

Mô phỏng thiết kế và hiện thực hoá trên FPGA

3/70


GIỚI THIỆU
Phân loại thiết bị chuyển mạch lớp 2

- Switch không có tính năng quản lý: Đây là loại Switch không hỗ trợ bất kỳ giao
diện quản lý nào. Switch chỉ hoạt động chỉ bằng việc cắm và chạy, người dùng dễ
dàng sử dụng.
- Switch thông minh đơn giản: Loại Switch này hỗ trợ một ứng dụng thứ ba hoặc
có giao diện web để có thể dễ dàng quản lý và cấu hình một số tính năng cơ bản
như VLAN, QoS, IGMP.
- Switch thông minh: có thể quản lý bằng giao diện web, giao thức dòng lệnh từ
xa có mã hoá, giao thức quản lý mạng đơn giản.
- Switch quản lý cao cấp: Đây là loại Switch có một cổng kết nối hỗ trợ giao diện
dòng lệnh. Loại Switch này hỗ trợ rất nhiều tính năng như các tính năng quản lý
liên quan VLAN, phát quảng bá nhóm, quản lý từ xa, điều khiển luôn.

4/70


GIỚI THIỆU
Giao diện cấu hình


Phần
điều
khiển

Ethernet, PCIe, UART...
Khối xử lí cấu hình
...

...

Phần
chuyển
mạch

Phân kênh

Gom kênh

...

Lớp liên kết dữ liệu

Bộ nhớ đệm

...

Lõi tìm kiếm
(Vương Duy Phú)

Khối xử lí chuyển mạch


GMII/RGMII

Bảng
MAC

Giao
Giao
diện
diện
Ethernet Ethernet

Lọc gói

Hàng
đợi

...

Giao
diện
Ethernet

Lớp vật lý

Lớp vật lý
(Ngô Văn Minh)
...

...


Phân
tích gói

Lõi chuyển mạch
(Đào Xuân Lộc)

GMII/RGMII

Đường
truyền
S1

S2

...

Sn

Hình a. Sơ đồ khối Switch nhiều cổng

5/70


NỘI DUNG CHÍNH

1

Tổng quan về mạng thông tin và thiết bị chuyển mạch lớp 2


2 Thiết kế tổng quan thiết bị chuyển mạch lớp 2
3 Thiết kế giao tiếp ngoại vi
4 Thiết kế bộ nhớ CAM và TCAM
5 Thiết kế bộ nhớ đệm của hệ thống
6 Thiết kế khối xử lí chuyển mạch
7

Thiết kế khối điều khiển và hiện thực hoá Switch trên FPGA
6/70


NỘI DUNG CHÍNH

1

Tổng quan về mạng thông tin và thiết bị chuyển mạch lớp 2

2 Thiết kế tổng quan thiết bị chuyển mạch lớp 2
3 Thiết kế giao tiếp ngoại vi
4 Thiết kế bộ nhớ CAM và TCAM
5 Thiết kế bộ nhớ đệm của hệ thống
6 Thiết kế khối xử lí chuyển mạch
7

Thiết kế khối điều khiển và hiện thực hoá Switch trên FPGA
7/70


TỔNG QUAN VỀ MẠNG THÔNG TIN VÀ
THIẾT BỊ CHUYỂN MẠCH LỚP 2

Mô hình OSI
Trạm A
Host A

Trạm B
Host B

Lớp ứng dụng
Application layer

Lớp ứng dụng
Application layer

Lớp trình bày
Presentation layer

Giao thức lớp trình bày
Presentation protocol

Lớp trình bày
Presentation layer

Lớp phiên
Session layer

Lớp phiên
Session layer

Lớp vận chuyển
Transport layer


Lớp vận chuyển
Transport layer

Lớp mạng
Network layer

Lớp mạng
Network layer

Lớp mạng
Network layer

Lớp mạng
Network layer

Lớp liên kết dữ liệu
Datalink layer

Lớp liên kết dữ liệu
Datalink layer

Lớp liên kết dữ liệu
Datalink layer

Lớp liên kết dữ liệu
Datalink layer

Lớp vật lý
Physical layer


Lớp vật lý
Physical layer

Lớp vật lý
Physical layer

Lớp vật lý
Physical layer

Đường truyền vật lý

Hình 1.2 Mô hình OSI

8/20


TỔNG QUAN VỀ MẠNG THÔNG TIN VÀ
THIẾT BỊ CHUYỂN MẠCH LỚP 2
Thiết bị chuyển mạch lớp 2
Internet
Gateway

Router

Switch 2

Switch 1

LAN1


Switch 3

LAN2

Hình 1.3 Vị trí của Switch trong mạng
9/70


TỔNG QUAN VỀ MẠNG THÔNG TIN VÀ
THIẾT BỊ CHUYỂN MẠCH LỚP 2
Thiết bị chuyển mạch lớp 2
Router

TRUNK

VLAN 1
Switch

Router

Switch 1

Switch 2

Switch 3

TRUNK

Switch 2


Switch 1
LAN 2

LAN 3

VLAN 1

Hình 1.4 Mạng cục bộ ảo

VLAN 2

VLAN 3

10/70


NỘI DUNG CHÍNH

1

Tổng quan về mạng thông tin và thiết bị chuyển mạch lớp 2

2 Thiết kế tổng quan thiết bị chuyển mạch lớp 2
3 Thiết kế giao tiếp ngoại vi
4 Thiết kế bộ nhớ CAM và TCAM
5 Thiết kế bộ nhớ đệm của hệ thống
6 Thiết kế khối xử lí chuyển mạch
7


Thiết kế khối điều khiển và hiện thực hoá Switch trên FPGA
11/70


THIẾT KẾ TỔNG QUAN
THIẾT BỊ CHUYỂN MẠCH LỚP 2
Sơ đồ khối thiết bị chuyển mạch lớp 2
Giao diện cấu hình

Phần
điều
khiển

Ethernet, PCIe, UART...
Khối xử lí cấu hình
...

...

Phần
chuyển
mạch

Phân kênh

Gom kênh

...

Lớp liên kết dữ liệu


Bộ nhớ đệm

...

...

Phân
tích gói

GMII/RGMII

Bảng
MAC

Giao
Giao
diện
diện
Ethernet Ethernet

Lọc gói

Hàng
đợi

...

Giao
diện

Ethernet

Lớp vật lý

...

Khối xử lí chuyển mạch

GMII/RGMII

Đường
truyền
S1

S2

...

Sn

Hình 2.1 Sơ đồ khối cấu trúc của Switch nhiều cổng

12/70


NỘI DUNG CHÍNH

1

Tổng quan về mạng thông tin và thiết bị chuyển mạch lớp 2


2 Thiết kế tổng quan thiết bị chuyển mạch lớp 2
3 Thiết kế giao tiếp ngoại vi
4 Thiết kế bộ nhớ CAM và TCAM
5 Thiết kế bộ nhớ đệm của hệ thống
6 Thiết kế khối xử lí chuyển mạch
7

Thiết kế khối điều khiển và hiện thực hoá Switch trên FPGA
13/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Mô hình kết nối vật lý

Cổng
quang
Bộ chuyển đổi
quang - SFP

Bộ chuyển đổi
RJ45 - SFP

Bộ biến đổi
quang điện

SFP

PHY
SFP


RJ45

Biến áp

Hình 3.1 Mô hình giao tiếp giữa cổng Ethernet và chip vật lý
14/70


THIẾT KẾ GIAO TIẾP NGOẠI VI

EMAC
EMAC
EMAC

TX_CLK
GTX_CLK
TXCLK
TXC
TXD[7:0]
TXD[3:0]
TXD[3:0]
TX_EN
TXEN
TXCTL
COL

2.5 MHz,

2.5 MHz,

25 MHz,
2.5
25 MHz,
MHz,
125
MHz
25
125MHz
MHz

COL

CRS

CRS

RX_CLK

RXCLK
RXC
RXD[7:0]
RXD[3:0]
RXD[3:0]
RX_DV
RX_DV
RXCTL

MDIO
MDIO
MDIO


MAC
MAC
MAC

Mô hình kết nối các giao diện MII

PHY
PHY
PHY

Biến
áp
Biến
áp áp
Biến

RJ-45
RJ-45
RJ-45

MDC
MDC
MDC

3.2 Sơ đồ tín hiệuHình
MII giữa
Hình 3.4
sử dụng
giao diện GMII

giữaPHY
PHYvàvàMAC
MAC
3.6 RGMII
TXC (dữ liệu bên truyền)
(Đã thêm độ trễ)
TXD[3:0], TXCTL

t3
tGCH
tR

tF
RXCLK
TXCLK TsetupT
TholdT

TXC (bên nhận)

TholdR

RXD[0:7]
TsetupR
RXDV
RXER
TXD[0:7]
TXEN

RXC ( dữ liệu phía truyền)
RXDLY=1

(Đã thêm độ trễ)
tGCL
RXD[3:0], RXCTL

tF
tR

Vih tF

Vil

TsetupT

TholdT

RXC (bên nhận)

tGHTT
tGHTR

TholdR

Vih

TskewR

Vil
Hình 3.7 Đặc tính thời gian của chu kỳ truyền nhận dữ liệu
RGMII
Hình 3.3 Đặc tính thời gian của chu kỳ tRtruyền nhận dữ liệu MII

Hình 3.5 Đặc tính thời gian của chu kỳ truyền nhận dữ liệu GMII

15/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Các giao diện điều khiển
SDA

Slave 3
Địa chỉ:
0100111

A

z

...

SCL

SDA

CMD[7:0]

Kết thúc

Slave 2
Địa chỉ:
1001100


W

A[6:0]

Bắt đầu

Slave 1
Địa chỉ:
1101001

Bắt đầu

+VCC

R

A[6:0]

A

D[7:0]

N

SDA

...

SCL


Master
SCL

Hình 3.8 Sơ đồ kết nối mạng I2C và quá trình truyền nhận dữ liệu
+VCC

...

MDC
PHY1
Địa chỉ:
A[4:0]

PHY2
Địa chỉ:
A[4:0]

PHY3
Địa chỉ:
A[4:0]

MDIO

a4 a3 a2 a1 a0 r4

Bắt đầu

Ghi


Địa chỉ PHY

r3 r2 r1 r0

D[15:0]

Thanh ghi địa chỉ

Dữ liệu

...

MDC
a4 a3 a2 a1 a0 r4
MDIO

r3 r2 r1 r0

MDIO
D[15:0]

Master
MDC

Bắt đầu

Đọc

Địa chỉ PHY


Thanh ghi địa chỉ

Hình 3.9 Sơ đồ kết nối mạng MDIO và quá trình truyền nhận dữ liệu

Dữ liệu

16/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Thiết kế mạch in
CPU RESET

RESET
EXT PLL

BIẾN ÁP 1

PHY 2

BIẾN ÁP 2

PHY N

BIẾN ÁP N

MDIO

SFP 1


SGMII

SFP N

I2C

CPU I2C

1xPCIE

1xPCIE_REFCLK100M

FPGA

PHY 1

...

FPGA_125MHz

...

MII
GMII
RGMII

...

CPU I2C


1.8V
1.2V
1.0V

SW

PHY RESET

RJ45

Thạch anh
25MHZ

CPU
USB TO COM

1.8V

1.2V
1.0V

3.3V

Chuyển đổi

3.3V

Chuyển đổi
DC/DC
12V >3.3V


RJ45/
USB
Nguồn DC
12V

Hình 3.10 Sơ đồ tổng quan hệ thống Switch

17/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Thiết kế mạch in

Tên bank

Ký hiệu chân nối tới
chip vật lý
10 cặp sai phân hoặc
20 tín hiệu I/O

4 cặp sai phân hoặc 8
tín hiệu I/O đồng bộ

Tên tín hiệu

Độ dài (mil)

TXC


2008.669

TXCTL

2008.669

TXD_0

2008.669

TXD_1

2008.539

TXD_2

2008.669

TXD_3

2008.669

Hình 3.11 Sai lệch của nhóm RTL0_RGMII_TXD
10 cặp sai phân hoặc
20 tín hiệu I/O

Nguồn cấp cho bank

Hình 3.12 Nguồn 1.8 V cấp cho FPGA


18/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Thiết kế mạch in

Hình 3.13 Ví dụ layout của
Switch 4 cổng dưới góc nhìn 2D

Hình 3.14 Ví dụ Layout của
Switch 4 cổng dưới góc nhìn 3D
19/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Khối giao tiếp TEMAC

FPGA
TEMAC

Giao diện AXIS TX

Chuyển
đổi thành
GMII/MII

Kiểm soát
lưu lượng

Chuyển

đổi
trung
gian

RGMII
GMII
MII

Chuyển
đổi thành
AXIS

Giao diện AXIS RX
Giao diện quản lý

Khối
GMII/
MII

Khối
điều khiển
hoạt động

Khối cấu
hình

MDIO

Trích xuất
thông số


Các bộ
đếm thống


Điều khiển
ngắt

MDIO

Hình 3.15 Sơ đồ khối chức năng của TEMAC
20/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Mô phỏng TEMAC
RX_RGMII

RX
FIFO

MAC_RX_AXIS

TEMAC
TX_RGMII

TX
FIFO

MAC_TX_AXIS


Hình 3.16 Mô hình mô phỏng bằng phương pháp nối lặp
RX_RGMII

a

d

2

0

3

0

4

0

5

0

MAC_RX_AXIS

6

0


a

5

2

0

3

0

4

0

5

0

da 02 03 04 05 06 5a 02 03 04 05 06

Hình 3.17 Giản đồ sóng tín hiệu
RX_RGMII và MAC_RX_AXIS

6

TX_RGMII

a


d

2

0

3

0

4

MAC_TX_AXIS

0

5

0

6

0

a

5

2


0

3

0

4

0

5

da 02 03 04 05 06 5a 02 03 04 05 06

Hình 3.18 Giản đồ sóng tín hiệu
TX_RGMII và MAC_TX_AXIS
21/70

0

6


THIẾT KẾ GIAO TIẾP NGOẠI VI
Kiểm tra trên phần cứng

Mạch Switch thành phẩm
RX_RGMII


Ethernet

PHY

MAC_RX_AXIS

TEMAC
TX_RGMII

Bộ tạo
dữ liệu

FPGA

MAC_TX_AXIS

Hình 3.19 Sơ đồ kiểm tra đường truyền phía TX

Hình 3.20 Kết quả thu được trên Wireshark khi kiểm tra đường truyền TX

22/70


THIẾT KẾ GIAO TIẾP NGOẠI VI
Kiểm tra trên phần cứng
Mạch Switch thành phẩm
RX_RGMII
MAC_RX_AXIS

Ethernet


PHY

RX
FIFO

TEMAC
TX_RGMII

MAC_TX_AXIS

TX
FIFO

Đảo
địa
chỉ
MAC

FPGA

Hình 3.21 Sơ đồ kiểm tra RX bằng phương pháp nối vòng dữ liệu

Hình 3.22 Gói tin nhận được trên PC được ghi lại
bằng Wireshark khi kiểm tra phía RX

23/70


THIẾT KẾ GIAO TIẾP NGOẠI VI

Kiểm tra trên phần cứng
Mạch Switch thành phẩm
RX0_RGMII

Ethernet

MAC_RX0_AXIS

TEMAC
0

PHY 0

PC0

FPGA

MAC_TX0_AXIS

TX0_RGMII

RX0
FIFO
TX0
FIFO

RX1_RGMII
MAC_RX1_AXIS

Ethernet

PC1

TEMAC
1

PHY 1
TX1_RGMII

MAC_TX1_AXIS

RX1
FIFO

TX1
FIFO

Hình 3.21 Sơ đồ kiểm tra bằng phương pháp nối chéo

Hình 3.22 Mô hình kiểm tra nối chéo trên thực tế

112 MB/s

Hình 3.23 Kết quả sao chép dữ liệu giữa hai máy và ping giữa hai máy tính

24/70


NỘI DUNG CHÍNH

1


Tổng quan về mạng thông tin và thiết bị chuyển mạch lớp 2

2 Thiết kế tổng quan thiết bị chuyển mạch lớp 2
3 Thiết kế giao tiếp ngoại vi
4 Thiết kế bộ nhớ CAM và TCAM
5 Thiết kế bộ nhớ đệm của hệ thống
6 Thiết kế khối xử lí chuyển mạch
7

Thiết kế khối điều khiển và hiện thực hoá Switch trên FPGA
25/70


×