George Mason UniversityGiới thiệu về các công cụ FPGA... Các công cụ tổng hợp… và các công cụ khác... end MLU_DATAFLOW;Diễn tả VHDL Circuit netlist Tổng hợp Logic... Những đặc điểm của
Trang 1George Mason University
Giới thiệu về các công cụ
FPGA
Trang 2Quá trình thiết kế (1)
Design and implement a simple unit
permitting to speed up encryption with
RC5-similar cipher with fixed key set
on 8031 microcontroller Unlike in the
experiment 5, this time your unit has to
be able to perform an encryption
algorithm by itself, executing 32
rounds…
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;
Trang 4Điều khiển quá trình thiết kế Active-HDL
Trang 5Các công cụ mô phỏng
Một vài công cụ khác…
Trang 66
Trang 8Các công cụ tổng hợp
… và các công cụ khác
Trang 9end MLU_DATAFLOW;
Diễn tả VHDL Circuit netlist
Tổng hợp Logic
Trang 10Những đặc điểm của các công cụ tổng hợp
• Interpret RTL code
• Produce synthesized circuit netlist in a
standard EDIF format
• Give preliminary performance estimates
• Some can display circuit schematics
corresponding to EDIF netlist
Trang 11Thực thi
• Sau đó tổng hợp toàn bộ quá trình thực thi bằng công cụ của nhà cung cấp FPGA
Trang 1212
Trang 13Native Generic Database file
Bộ sưả đổi giàng buộc
File giàng buộc của người dùng
Native Constraint File
Electronic Design
Interchange Format
Circuit netlist Giàng buộc về thời gian
Tổng hợp
Trang 14File UCF mẫu
NET "clock" LOC = "P8";
NET "control<0>" LOC = "K4";
NET "control<1>" LOC = "K3";
NET "control<2>" LOC = "K2";
NET "reset" LOC = "E11";
NET "segments<0>" LOC = "R10";
NET "segments<1>" LOC = "P10";
NET "segments<2>" LOC = "M11";
NET "segments<3>" LOC = "M6";
NET "segments<4>" LOC = "N6";
NET "segments<5>" LOC = "T7";
NET "segments<6>" LOC = "R7";
Trang 15Gán chân
LAB2
CLOCK CONTROL(0) CONTROL(2) CONTROL(1)
RESET
SEGMENTS(0) SEGMENTS(1) SEGMENTS(2) SEGMENTS(3) SEGMENTS(4) SEGMENTS(5) SEGMENTS(6)
P8 E11
FPGA
Trang 16Bộ sửa đổi giàng buộc
Trang 17Circuit netlist
Trang 19Sắp đặt
CLB SLICES
FPGA
Trang 20Kết nối
C ác kết nối có thể lập trình
FPGA
Trang 21Bộ phân tích thời gian tĩnh
• Thực hiện việc phân tích tĩnh thực hiện của mạch
• Đưa ra các đường dẫn với tất cả các
nguồn giữ chậm
• Xác định tần số clock lớn nhất
Trang 22Ph ân tích thời gian tĩnh
• Critical Path – The Longest Path From
Outputs of Registers to Inputs of
Trang 23Ph ân tích thời gian tĩnh
• Min Clock Period = Length of The
Critical Path
• Max Clock Frequency = 1 / Min Clock
Period
Trang 24Định cấu hình
• Khi m ột thiết kế được thực hiện, bạn phải
tạo ra mọt file mà FPGA có thể hiểu được
• File Bit c ó thể nạp trực tiếp vào FPGA , ho ặc
có thể chuển vào PROM để lưu trữ chương trình
Trang 25George Mason University
XESS Board
Trang 26External Connections to XSA Board
Trang 27Arrangement of Components
Trang 28XSA Board Connectivity
Trang 29100 MHz Programmable Oscillator
Trang 30Resources & Required Reading
Spartan FPGA devices
Xilinx Spartan-3 FPGA Family:
Complete Data Sheets
• Module 1: Introduction & Ordering Information
• Module 2: Functional Description
Trang 32MUX_4_1
L0 L1
NEG_Y
Y
Y1 A1
B1
MUX_0
MUX_1 MUX_2
MUX_3