Bài giảng Thiết kế logic số - Chương 3 (Phần 2)

Thiết kế logic số  
(VLSI design)  
TS. Hoàng Văn Phúc  
Bộ môn KT Xung Số-Vi xử lý  
11/2014  
Nội dung  
Nhắc lại bài trước: Cấu trúc FPGA  
Qui trình thiết kế hệ thống số trên FPGA  
Các ví dụ thiết kế  
Thời lượng: 06 tiết  
2
Nhắc lại về FPGA: Cấu trúc cơ bản  
IO_PAD  
IO_PAD  
IO_PAD  
…………………..  
LOGIC BLOCK  
LOGIC BLOCK  
LOGIC BLOCK  
…………………..  
…………………..  
LOGIC BLOCK  
LOGIC BLOCK  
LOGIC BLOCK  
Interconnect  
wires  
IP_COREs, RAM,  
ROM...  
LOGIC BLOCK  
LOGIC BLOCK  
LOGIC BLOCK  
…………………..  
…………………..  
IO_PAD  
IO_PAD  
IO_PAD  
3
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  
4
Hoạt động của FPGA  
Người dùng ghi giá trị vào bộ nhớ  
cấu hình (configuration memory)  
để định chức năng hệ thống:  
Kết nối giữa CLBs và I/O cells  
Mạch logic cần thực thi trên  
CLBs  
Các khối I/O  
• Thay đổi nội dung bộ nhớ cấu hình Thay đổi chức năng hệ thống  
• Việc thay đổi có thể thực hiện khi mạch đang chạy (run-time  
configuration) Tính toán tái cấu hình (RC: reconfigurable computing)  
5
Kiến trúc của Configurable Logic Blocks (CLBs)  
Mỗi CLB bao gồm:  
Look-up Tables (LUT): Bảng tra  
Mạch Carry & Control  
Các phần tử nhớ  
Configurable Logic Block (CLB): Khối logic khả trình (có thể tái cấu hình)  
6
Hệ thống nhúng (embedded system) trên FPGA  
System on board  
System on chip  
(SoC)  
Source: Internet  
7
ASIC (Application Specific Integrated Circuit) và  
FPGA (Field Programmable Gate Array)  
ASIC (IC chuyên dụng)  
FPGA  
Chức năng cố định  
Người dùng có thể định lại  
cấu hình cho thiết kế  
Thời gian thiết kế dài và Thời gian thiết kế ngắn và chi  
chi phí cao phí thấp  
Tốc độ và hiệu năng cao Tốc độ và hiệu năng thấp hơn  
Tiết kiệm chi phí đối với Hiệu quả với số lượng sản  
số lượng sản phẩm lớn phẩm nhỏ  
8
Qui trình thiết kế với FPGA và ASIC  
9
Đánh giá một thiết kế trên FPGA  
Tốc độ (speed): thông qua tốc độ clock tối đa hoặc  
độ trễ dài nhất của mạch tổ hợp (critical path)  
Tài nguyên sử dụng: số lượng LUTs, slices, CLBs…  
cần cho thiết kế  
Thông lượng: số lượng bit dữ liệu có thể được xử lý  
trong một đơn vị thời gian  
Công suất tiêu thụ  
10  
Qui trình thiết kế trên FPGA (Tổng quan)  
11  
Qui trình thiết kế trên FPGA (chi tiết)  
Design and implement a simple  
unit permitting to speed up  
encryption with RC5-similar cipher  
with fixed key set on 8031  
Specification (Mô tả bài toán)  
microcontroller. Unlike in the  
experiment 5, this time your unit  
has to be able to perform an  
encryption algorithm by itself,  
executing 32 rounds…..  
Mô tả VHDL (Source Files) hoặc sơ đồ mạch logic  
Functional simulation  
(Mô phỏng chức năng)  
Library IEEE;  
use ieee.std_logic_1164.all;  
use ieee.std_logic_unsigned.all;  
entity RC5_core is  
port(  
clock, reset, encr_decr: in std_logic;  
data_input: in std_logic_vector(31 downto 0);  
data_output: out std_logic_vector(31 downto 0);  
out_full: in std_logic;  
key_input: in std_logic_vector(31 downto 0);  
key_read: out std_logic;  
);  
end RC5_core;  
Post-synthesis simulation  
(Mô phỏng sau tổng hợp)  
Synthesis  
(Tổng hợp)  
12  
Qui trình thiết kế trên FPGA (chi tiết)  
Implementation  
(Thực thi)  
Timing simulation  
(Mô phỏng về thời gian)  
Configuration  
(Cấu hình)  
On board testing  
(Kiểm tra trên mạch)  
13  
Technology mapping (Ánh xạ công nghệ)  
Là việc ánh xạ từ chức năng logic vào cấu trúc phần  
cứng cụ thể của FPGA  
Mạch logic:  
Đường tín hiệu:  
14  
Technology mapping (tiếp)  
15  
Phần mềm thiết kế trên FPGA của Xilinx  
Phân cấp thiết kế Design/Files/Libraries  
Source files/Summary …  
Khung để gõ lệnh hoặc thể hiện nhanh kết quả chạy biên dịch thiết kế  
ISE: Integrated Software Environment  
16  
Các thành phần chính của Xilinx ISE Suite  
XST: Synthesis tool (Công cụ để tổng hợp thiết kế)  
Implementation tool (Công cụ thực thi)  
Generate programming file (Tạo file cấu hình)  
Configuration (Cấu hình cho FPGA)  
ISIM: trình mô phỏng tích hợp trong ISE (chức năng tương  
tự modelsim)  
Các thành phần khác: Plan-ahead, xPower analyzer …  
Ngoài ra, gần đây Xilinx phát triển thêm Vivado Suite có các  
thành phần hỗ trợ tổng hợp mức cao (high level synthesis)  
cho phép tổng hợp thiết kế từ các ngôn ngữ bậc cao như C,  
C++  
17  
VHDL vs. Schematic  
library IEEE;  
use IEEE.STD_LOGIC_1164.ALL;  
entity compare_module is  
port (value : in std_logic_vector(3 downto 0);  
res : out std_logic);  
end compare_module;  
architecture Behavioral of compare_module is  
signal std : std_logic_vector (4 downto 0);  
begin  
val <= '0' & value;  
process (val, std)  
begin  
sub <= val - std;  
res <= sub(4);  
end process;  
end Behavioral;  
Độc lập với công nghệ  
Dễ hơn trong quản lý thiết kế phức tạp  
Dễ kiểm tra thiết kế hơn  
HDL  
Schematic: Thiết kế bằng sơ đồ nguyên lý  
18  
Synthesis (Tổng hợp thiết kế)  
Synthesis  
Generate netlist  
(post simulation  
model)  
Create  
Create RTL  
schematic  
Check syntax  
& synthesis  
Technology  
schematic  
(optional)  
(optional)  
(optional)  
Kiểm tra cú pháp  
và tổng hợp  
Tạo sơ đồ  
nguyên lý công  
nghệ  
Tạo netlist  
Tạo sơ đồ  
nguyên lý RTL  
RTL = Structural HDL  
Netlist: Bản mô tả thiết kế mạch dưới dạng text  
19  
Synthesis  
UNISIM Library  
library IEEE;  
use IEEE.STD_LOGIC_1164.ALL;  
entity compare_module is Port  
value: in std_logic_vector (3 downto 0);  
res : out std_logic);  
end compare_module;  
architecture Behavioral of compare_module is  
signal std : std_logic_vector (4 downto 0);  
begin  
val <= '0' & value;  
process (val, std)  
begin  
sub <= val - std;  
res <= sub(4);  
end process;  
end Behavioral;  
20  
Tải về để xem bản đầy đủ
pdf 42 trang Mãnh Khiết 12/01/2024 12220 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Thiết kế logic số - Chương 3 (Phần 2)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_thiet_ke_logic_so_chuong_3_phan_2.pdf