1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Điều khiển nhúng - Chương 1: Thiết kế phần cứng dùng FPGA

26 103 0

Đ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 26
Dung lượng 1,17 MB

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

Nội dung

Bài giảng Điều khiển nhúng - Chương 1: Thiết kế phần cứng dùng FPGA cung cấp cho người học các kiến thức: Giới thiệu cấu trúc FPGA, giải mã địa chỉ phần cứng, sử dụng quartus/block diagram. Mời các bạn cùng tham khảo.

Trang 1

THIẾT KẾ PHẦN CỨNG

DÙNG FPGA

Chương 1

Trang 2

I GIỚI THIỆU CẤU TRÚC FPGA

1.1 FPGA (Field Programmable Gate Array)

- Là mạch tích hợp có khả năng cấu hình lại

bởi người thiết kế, thực hiện các hàm logic

từ cơ bản đến phức tạp

- FPGA được cấu thành từ các bộ phận:

• Các khối logic cơ bản lập trình được

(logic block)

• Hệ thống mạch liên kết lập trình được

• Khối vào/ra (IO Pads)

• Phần tử thiết kế sẵn khác như DSP

slice, RAM, ROM, nhân vi xử lý

- Cấu hình FPGA dùng ngôn ngữ mô tả

phần cứng HDL (hardware description

Trang 3

I GIỚI THIỆU CẤU TRÚC FPGA

1.1 FPGA (Field Programmable Gate Array)

Trang 4

I GIỚI THIỆU CẤU TRÚC FPGA

1.1 FPGA (Field Programmable Gate Array)

Trang 5

I GIỚI THIỆU CẤU TRÚC FPGA

1.1 FPGA (Field Programmable Gate Array)

- Họ Cyclone IV của Altera

Trang 6

I GIỚI THIỆU CẤU TRÚC FPGA

1.2 CPLD (Complex Programmable Logic Device)

- Cấu trúc đơn giản hơn FPGA và ít khối logic hơn FPGA

- Bộ nhớ cấu hình trên EEPROM

- Thời gian trễ dễ kiểm soát

Trang 7

I GIỚI THIỆU CẤU TRÚC FPGA

1.2 CPLD (Complex Programmable Logic Device)

Trang 8

I GIỚI THIỆU CẤU TRÚC FPGA

1.2 CPLD (Complex Programmable Logic Device)

The MAX II CPLD has the following features (MAX II Device Handbook):

• Low-cost, low-power CPLD

• Instant-on, non-volatile architecture

• Standby current as low as 25 μA

• Provides fast propagation delay and clock-to-output times

• Provides four global clocks with two clocks available per logic array block (LAB)

• UFM block up to 8 Kbits for non-volatile storage

• MultiVolt core enabling external supply voltages to the device of either

3.3V, 2.5V or 1.8V

• MultiVolt I/O interface supporting 3.3-V, 2.5-V, 1.8-V, and 1.5-V logic levels

Trang 9

I GIỚI THIỆU CẤU TRÚC FPGA

1.2 CPLD (Complex Programmable Logic Device)

- Họ MAX II của Altera

Trang 10

I GIỚI THIỆU CẤU TRÚC FPGA

Trang 11

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 WR và RD trên 2 chân riêng biệt (kiến trúc Intel)

2 3 4 5 6 7 8 9

11

1

19 18 17 16 15 14 13 12

D1 D2 D3 D4 D5 D6 D7 D8 CLK OE

Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8

2 4 6 8

1

18 16 14 12 11

13 15 17

9 7 5 3

19

A1 A2 A3 A4

1OE

Y1 Y2 Y3 Y4 A5

A6 A7 A8

Y5 Y6 Y7 Y8

2OE

2 3 4 5 6 7 8 9

19 1

18 17 16 15 14 13 12 11

A0 A1 A2 A3 A4 A5 A6 A7

G DIR

B0 B1 B2 B3 B4 B5 B6 B7

Trang 12

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 WR và RD trên 2 chân riêng biệt (kiến trúc Intel)

2 3 4 5 6 7 8 9

11

19 18 17 16 15 14 13 12

D1 D2 D3 D4 D5 D6 D7 D8 CLK

Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8

2 4 6 8

1

18 16 14 12 11

13 15 17

9 7 5 3

A1 A2 A3 A4

Y1 Y2 Y3 Y4 A5

A6 A7 A8

Y5 Y6 Y7 Y8

2 3 4 5 6 7 8 9

1

18 17 16 15 14 13 12 11

A0 A1 A2 A3 A4 A5 A6 A7

B0 B1 B2 B3 B4 B5 B6 B7

Trang 13

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 WR và RD trên 2 chân riêng biệt (kiến trúc Intel)

- Sơ đồ kết nối quá trình đọc dữ liệu

74LS244

2 4 6 8

1

18 16 14 12 11

13 15 17

9 7 5 3

19

A1 A2 A3 A4

1OE

Y1 Y2 Y3 Y4 A5

A6 A7 A8

Y5 Y6 Y7 Y8

2OE

1 2

3

CS

RD

1 2

3

CS RD

74LS245

2 3 4 5 6 7 8 9

19 1

18 17 16 15 14 13 12 11

A0 A1 A2 A3 A4 A5 A6 A7

G DIR

B0 B1 B2 B3 B4 B5 B6 B7

Trang 14

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 WR và RD trên 2 chân riêng biệt (kiến trúc Intel)

- Sơ đồ kết nối quá trình ghi dữ liệu

1 2

3

74LS573

2 3 4 5 6 7 8 9

11 1

19 18 17 16 15 14 13 12

D0 D1 D2 D3 D4 D5 D6 D7 LE OE

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

WR

CS

1 2

3

74LS574

2 3 4 5 6 7 8 9

11

1

19 18 17 16 15 14 13 12

D1 D2 D3 D4 D5 D6 D7 D8 CLK OE

Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8

CS WR

Trang 15

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 RD và WR trên 2 chân riêng biệt (kiến trúc Intel)

* Ví dụ 1: Giải mã dùng IC 74138

- Phần cứng 8 đường địa chỉ A7-A0,

8 đường dữ liệu D7-D0 Giải mã các

ngoại vi sau:

• ADC: 4 kênh 8 bit

• DAC: 2 kênh 8 bit

• PWM: 6 kênh 8 bit

• Encoder: 6 kênh 8 bit

• DI: 2 kênh 8 bit

U1

74LS138

1 2 3

15 14 13 12 11 10 9 7

6 4 5

A B C

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

G1 G2A G2B

Trang 16

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 RD và WR trên 2 chân riêng biệt (kiến trúc Intel)

* Các bước thực hiện

- Bước 1: Tính số kênh lớn nhất trong 1 module để xác định số địa chỉ cần giải

mã cho các kênh

6 kênh -> cần 3 đường địa chỉ A[2:0]

- Bước 2: Tính số module để xác định số địa chỉ cần giải mã cho các module

(Không cần gán địa chỉ liên tục cho các module)

5 module -> cần 3 đường địa chỉ A[5:3], hoặc A[6:4], hoặc A[7:5]

- Bước 3: Vẽ sơ đồ kết nối module: kết nối địa chỉ giải mã và dữ liệu tới các

module, xác định địa chỉ của từng module

- Bước 4: Vẽ sơ đồ kết nối kênh: kết nối địa chỉ và dữ liệu của các kênh trong

1 module Xác định địa chỉ của từng kênh trong 1 module

Trang 17

2.1 RD và WR trên 2 chân riêng biệt (kiến trúc Intel)

- Sơ đồ kết nối module

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

Trang 18

2.1 RD và WR trên 2 chân riêng biệt (kiến trúc Intel)

- Sơ đồ kết nối kênh

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

Trang 19

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.1 RD và WR trên 2 chân riêng biệt (kiến trúc Intel)

* Ví dụ 2:

- Phần cứng 8 đường địa chỉ A7-A0, 8 đường dữ liệu D7-D0 Giải mã cácngoại vi sau:

• ADC: 16 kênh 8 bit

• DAC: 2 kênh 8 bit

• PWM: 4 kênh 8 bit

• Encoder: 4 kênh 8 bit

• DI: 4 kênh 8 bit

• DO: 2 kênh 8 bit

• CAP: 6 kênh 8 bit

15 14 13 12 11 10 9 7

6 4 5

A B C

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

G1 G2A G2B

Trang 20

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.2 Tín hiệu WR và RD trên 1 chân (kiến trúc Motorola)

Giản đồ ghi dữ liệu Giản đồ đọc dữ liệu

- Chuyển đổi Giao tiếp RD/WR trên 1 chân -> Giao tiếp RD, WR trên 2 chânriêng biệt?

Trang 21

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.2 Tín hiệu WR và RD trên 1 chân (kiến trúc Motorola)

D[7 0]

A[7 0]

STROBE WR/RD

D[7 0] A[7 0]

RD WR CS

Trang 22

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.2 Tín hiệu WR và RD trên 1 chân (kiến trúc Motorola)

- Giao tiếp cồng máy in LPT chuẩn EPP (Enhanced Parallel Port)

Trang 23

II GIẢI MÃ ĐỊA CHỈ PHẦN CỨNG

2.3 Độ rộng dữ liệu khác nhau

- Phần cứng 8 đường địa chỉ A7-A0,

8 đường dữ liệu D7-D0 Giải mã các

ngoại vi sau:

• ADC: 4 kênh 12 bit

• DAC: 4 kênh 12 bit

• PWM: 6 kênh 10 bit

• Encoder: 6 kênh 16 bit

• DI: 2 kênh 8 bit

• DO: 2 kênh 8 bit

1 2 3 4 5 6 7 8

39 38 37 36 35 34 33 32

21 22 23 24 25 26 27 28

17 16 29 30 11 10

EA/VP X1

X2

RESET

INT0 INT1 T0 T1 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7

P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 RD WR PSEN ALE/P TXD RXD

Trang 24

III SỬ DỤNG QUARTUS/ BLOCK DIAGRAM

3.1 Qui trình thực hiện

Trang 25

III SỬ DỤNG QUARTUS/ BLOCK DIAGRAM

3.1 Qui trình thực hiện

- Tạo 1 project mới: File -> New project wizard

- Thiết kế dùng sơ đồ nguyên lý: File -> New -> Block Diagram / Schematic File

- Biên dịch mạch thiết kế: Processing -> Start Compilation

- Gán chân tín hiệu vào, tín hiệu ra: Assignments -> Assignment Editor

- Mô phỏng mạch thiết kế: File -> New -> Vector Waveform File

- Lập trình và cấu hình FPGA: Tools -> Programmer

- Kiểm tra mạch

Trang 26

III SỬ DỤNG QUARTUS/ BLOCK DIAGRAM

3.2 Liên kết các khối

- Tạo 1 filet mới: File -> New -> Block Diagram / Schematic File

- Đóng gói file thành 1 khối (module): File -> Create/Update -> Create

Symbol File for Current File

- Sử dụng khối vừa tạo trong 1 Schematic File khác: Double Click -> Libraries

Ngày đăng: 15/05/2020, 22:37

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

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