1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Bài giảng Thiết kế logic số: Lecture 3.1 - TS. Hoàng Văn Phúc

54 68 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 54
Dung lượng 1,23 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 Thiết kế logic số: Lecture 3.1 cung cấp cho người học các kiến thức: Giới thiệu FPGA, cấu trúc FPGA, các thành phần cơ bản trong FPGA. Mời các bạn cùng tham khảo nội dung chi tiết.

Trang 1

TS Hoàng Văn Phúc

Bộ môn KT Xung số - Vi xử lý

11/2014

Thiết kế logic số (Digital logic design)

https://sites.google.com/site/phucvlsi/teaching

Trang 2

Nội dung

 Giới thiệu FPGA, cấu trúc FPGA

 Các thành phần cơ bản trong FPGA

 Thời lượng: 06 tiết

2

Trang 3

FPGA là gì?

FPGA (Field-Programmable Gate Array):

- Là công nghệ IC lập trình (tái cấu hình: reconfigurable)

tiên tiến nhất hiện nay

- Field: khả năng lập trình (tái cấu hình) bởi người sử dụng, không phụ thuộc vào dây chuyền sản xuất IC

Trang 5

Công nghệ chế tạo FPGA của Xinlinx

http://www.xilinx.com/products/silicon-devices/fpga/index.htm

Trang 6

FPGA frequency scaling

6

Trang 7

Hệ thống nhúng (embedded system) trên FPGA

Source: Internet 7

System on board

System on chip

(SoC)

Trang 8

Kiến trúc chung của FPGA

LOGIC BLOCK LOGIC BLOCK ……… LOGIC BLOCK

LOGIC BLOCK LOGIC BLOCK ……… LOGIC BLOCK

LOGIC BLOCK LOGIC BLOCK ……… LOGIC BLOCK

Interconnect wires

8

Trang 9

CLB: Configurable logic block (Khối logic cấu hình được)

IOB: Input/Output block

Trang 10

Tái cấu hình cho FPGA

SRAM-based:

- Hoạt động phụ thuộc nguồn điện cung cấp

- Khả năng tái cấu trúc linh hoạt

- Cho phép thực hiện các thiết kế lớn

10

Trang 11

Hoạt động của FPGA

Người dùng ghi giá trị vào bộ nhớ cấu hình (configuration memory)

để xác định chức năng hệ thống:

CLBs

• Thay đổi nội dung bộ nhớ cấu hình  Thay đổi chức năng hệ thống

11

Trang 12

Kiến trúc của Configurable Logic Blocks (CLBs)

Mỗi CLB bao gồm:

Look-up Table (LUT): Bảng tra (chứa giá trị của hàm

logic cần tạo ra ứng với các tổ hợp tín hiệu vào tương

Trang 13

FPGA Programmable Interconnection Network

 Lưới kết nối dùng các chuyển mạch khả trình (programmable switches), hay các điểm kết nối khả trình (PIP: programmable interconnect points),

do các bit nhớ của bộ nhớ cấu hình điều khiển

 Một số loại PIP được sử dụng như sau:

Cross-point = connects vertical or horizontal wire segments allowing

turns

Breakpoint = connects or isolates 2 wire segments

Decoded MUX = group of 2^n cross-points connected to a single output

configured by n configuration bits

segments)

Trang 14

Programmable Input/output Cells

 Bi-directional Buffers

 Programmable for inputs or outputs

 Tri-state controls bi-directional operation

 Pull-up/down resistors

 FFs/ Latches are used to improve timing issues

 Routing Resources

 Connections to core of array

 Programmable I/O voltage and current levels

Boundary Scan Access

14

Boundary Scan: Quét biên

Trang 15

Xilinx Spartan 3E FPGA

15

DCM: Digital clock management (Khối quản lý clock)

Trang 16

Configurable Logic Block (CLB) - Spartan 3E

16

Trang 17

Phân bố Slices trong CLB - Spartan 3E

17

Trang 18

Phân bố tài nguyên trong SLICEM và SLICEL- Spartan 3E

18

L = logic X1Y0

Chỉ dùng cho mạch logic (tổ hợp)

X0Y0

M = Memory

Trang 19

Chi tiết về Slice trong Xilinx Spartan-3E FPGA

19

Trang 20

Phân bố của LUT (Look-up Table: Bảng tra)

20

Trang 21

Nguyên lý làm việc của LUT

21

Trang 22

22

Trang 23

Nguyên lý của Wide-multiplexers

Trang 24

Chuỗi bit nhớ - Carry chain (1)

24

Trang 25

Chuỗi bit nhớ - Carry chain (2)

25

Trang 26

Chuỗi bit nhớ - Carry chain (3)

26

Trang 27

27

Trang 28

I/O Voltage Banking (Chia bank cho I/O)

 Mạch I/O trên Spartan-3E đượcnhóm thành 4 I/O banks tương ứngvới 4 phía của linh kiện

 Mỗi bank có các chân nguồn riêng(for output driver and input reference voltages)

 I/O placement phải tương thích vớicác điện áp nguồn được lựa chọnvới mỗi bank

Trang 29

Ma trận chuyển mạch kết nối

(Interconnect-Switch matrix)

29

Trang 30

Đường kết nối: Interconnect-lines (1)

Long lines

Hex lines

30

Trang 31

Đường kết nối: Interconnect lines (2)

Double lines

Direct lines

31

Trang 32

Block RAM (RAM khối)

32

Trang 33

Distributed RAM (RAM phân bố)

33

Sử dụng các LUT để tạo ra RAM

Trang 34

Mạch nhân (Multiplier) – (1)

Trang 35

Mạch nhân (Multiplier) – (2)

Trang 36

Mạch nhân (Multiplier) – (3)

Trang 38

Câu 2: Bản chất của khối LUT là:

A Một khối logic đa năng có khả năng thực hiện mọi hàm logic

B Một khối logic khả trình có khả năng thực hiện mọi hàm logic

C Khối logic khả trình với cấu tạo cơ bản là một multiplexer

cỡ lớn có 16 đầu vào 1 đầu ra, 4 đầu vào chọn kênh

D Khối logic khả trình có khả năng thực hiện hàm 4 đầu vào bất kỳ

38

Trang 39

Câu 3: Phát biểu sau nào sau đây không chính xác:

A Chuỗi bit-nhớ trong FPGA thực chất được thiết kế theo

thuật toán cộng nối tiếp

B Cấu tạo của chuỗi bit nhớ làm giảm thiểu tài nguyên logic

sử dụng khi tổng hợp khối cộng trên FPGA

C Cấu tạo của chuỗi bit nhớ làm tăng tốc độ khối cộng

D Chuỗi bit nhớ được thiết kế riêng không phụ thuộc vàocác thành phần logic khả trình trong FPGA nhằm tối ưu khốicộng

39

Trang 40

Câu 4: Vai trò của bộ chọn kênh mở rộng:

A Để thực thi được các hàm số có nhiều hơn 4 đầu vào logic

B Để mở rộng các khối logic chức năng

C Để chọn kênh cho các đối tượng mở rộng

D Để mở rộng khối BLOCK RAM

40

Trang 41

Câu 5: Cấu hình của FPGA khi hoạt động được lưu ở đâu?

A Trong khối ROM

B Trong khối Block RAM

C Lưu trên máy tính và khi thực thi mới được nạp vào FPGA

D Lưu trong các SRAM nằm phân tán bên trong FPGA

41

Trang 42

Câu 6: Vai trò của Block RAM trong FPGA:

A Sử dụng trong các thiết kế đòi hỏi dung lượng khối nhớ lớn

B Sử dụng như các khối đệm cho quá trình cộng nhân

thường gặp trong các bài toán DSP

C Sử dụng trong các thiết kế đòi hỏi sự linh động trong cấu

trúc của khối RAM

D Sử dụng trong các khối nhớ đòi hỏi tốc độ làm việc với tốc

độ cao

42

Trang 43

Câu 7: Tại sao phải sử dụng nhiều dạng tài nguyên kết nối khác nhau?

A Để linh động trong tổ chức nối các khối thiết kế con với

nhau

B Để tối ưu thiết kế nhất có thể khi thực hiện kết nối các khốichức năng

C Để tiết kiệm tài nguyên logic

D Để đáp ứng các đặc thù khác nhau của các dạng tín hiệu

khác nhau trong thiết kế số

43

Trang 44

Câu 8: Phát biểu sau nào sau đây không chính xác:

A Khối nhân số nguyên được đặt cạnh các Block RAM nhằmtiết kiệm không gian bên trong FPGA

B Số lượng Block RAM trong Spartan 3E vào cỡ vài chục khối

C Các đường kết nối ba là các đường kết nối một chiều

D Tài nguyên kết nối trong FPGA gồm các ma trận chuyển vàcác dạng đường kết nối khác nhau

44

Trang 45

Extra Slides

(Slides bổ sung)

45

Trang 46

Look-up Tables (2:1 MUX Example)

 Configuration memory holds output of truth table

Trang 47

IOB-Delay Block

47

Trang 48

IOB-Delay Block

48

Trang 49

49

Trang 50

Clock tree

50

Trang 51

Configurable Logic Blocks (CLB)

A CLB can contain

several slices, which

make up a single CLB

Xilinx Virtex-5 FPGAs

(right) have two slices:

SLICEL (logic) and

SLICEM (memory)

In addition to the basic

CLB architecture, the

Virtex-5 contains

wide-function MUXs which can

implement:

- 4:1 MUX using 1 LUT

- 8:1 MUX using 2 LUTs

- 16:1 MUX using 4 LUTs

51

Trang 52

LUT Based RAM

 Normal LUT mode performs

read operation

 Address decoders with WE

generates clock signals to

latches for write operation

 Smaller RAMs can be

combined to create larger

RAMs

52

Trang 53

FPGA Configuration Interfaces

 Master (Serial or Parallel)

 FPGA retrieves configuration from ROM at initial power-up

 Slave (Serial or Parallel)

 FPGA configured by an external source (i.e microprocessor/ other FPGA)

 Used for dynamic partial re-configuration

 Boundary Scan

 4-wire IEEE standard serial interface used for testing

 Write and read access to configuration memory

 Interfaces to FPGA core internal routing network

53

Trang 54

Boundary Scan Configuration

Daisy Chain Configuration

Multi-FPGA Emulation Framework to support NoC design and verification (UNLV NSIL)

Test Access Point

Ngày đăng: 13/02/2020, 03:04

TỪ KHÓA LIÊN QUAN

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