2.5 Các ví dụ• Thực hiện các cổng logic còn lại • Thực hiện các FF còn lại • Thực hiện bộ dồn kênh... Các kiểu dữ liệu... Các kiểu dữ liệu... Các kiểu dữ liệu... 3 Các kiểu dữ liệu... Cá
Trang 1– Giới thiệu chung
Trang 21 Giới thiệu chung
2
Trang 31.1 Giới thiệu về VHDL
Trang 81 Giới Thiệu chung
Trang 91.2 Các bước thiết kế
Trang 101 Giơi thiệu chung
Trang 111.3 Các công cụ tự động thiết kế điện tử
Trang 121 Giơi thiệu chung
Trang 131.4 Chuyển từ mã VHDL sang mạch
Trang 162 Cấu trúc mã lệnh
Trang 172.1 Các đơn vi cơ bản của VHDL
Trang 192 Cấu trúc mã lệnh
Trang 202.2 Khai báo thư viện
Trang 222 Cấu trúc mã lệnh
Trang 232.3 Thực thể
Trang 242.3 Thực thể
Trang 252 Cấu trúc mã lệnh
Trang 262.4 Kiến trúc
Trang 282 Cấu trúc mã lệnh
Trang 292.5 Các ví dụ
Trang 33• Thực hiện cổng NAND
Trang 342.5 Các ví dụ
• Thực hiện các cổng logic còn lại
• Thực hiện các FF còn lại
• Thực hiện bộ dồn kênh
Trang 353 Các kiểu dữ liệu
Trang 363.1 Các kiểu dữ liệu có sẵn
Trang 483 Các kiểu dữ liệu
Trang 493.2 Kiểu dữ liệu do User định nghĩa
Trang 533 Các kiểu dữ iệu
Trang 543.3 Các kiểu dữ liệu dẫn xuất
Trang 563 Các kiểu dữ liệu
Trang 573.4 Kiểu dữ liệu mảng
Trang 643 Các kiểu dữ liệu
Trang 653.5 Kiểu dữ liệu bản ghi
Trang 673 Các kiểu dữ liệu
Trang 683.6 Kiểu dữ liệu có dấu và không dấu
Trang 723 Các kiểu dữ liệu
Trang 733.7 Chuyển đổi kiểu dữ liệu
Trang 773 Các kiểu dự liệu cơ bản
Trang 783.8 Ví dụ
Trang 843 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
– Signal: biểu diễn cho dây kết nối giữa các cổng của các thành phần trong hệ thống.
– Variable: được sử dụng lưu trữ dữ liệu
nội bộ tạm thời, chỉ visible bên trong
process.
– Constant: hẳng số
Trang 853 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 863 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• Phân loại:
– External Signal: là các tín hiệu kết nối hệ
thống với bên ngoài, tạo nên giao diện
ghép nối của hệ thống với các hệ thống
khác
– Internal Signal: là các tín hiệu chỉ nhúng
bên trong hệ thống, không nhìn thấy từ bên ngoài, tạo ra sự truyền thông giữa
các thành phần bên trong hệ thống.
Trang 873 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 883 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 893 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 903 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• Phạm vi tác động của khai báo signal:
– Một signal được khai báo trong PACKAGE thì sử dụng
được (visible) trong tất cả các thiết kế sử dụng gói
package này.
– Một signal được khai báo trong ENTITY thì sử dụng
được (visible) trong tất cả các ARCHITECTURE gắn với ENTITY này.
– Một signal được khai báo trong phần khai báo của
ARCHITECTURE thì chỉ sử dụng được trong
architecture này.
– Một signal được khai báo trong 1 khối (block) bên trong
ARCHITECTURE thì chỉ sử dụng được bên trong khối đó.
Trang 913 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 923 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• Một đặc điểm quan trọng của signal khi được sử
dụng bên trong một phần của mã tuần tự (vd
PROCESS, FUNCTION, PROCEDURE) là:
–Giá trị không được cập nhật ngay
lập tức sau câu lệnh, mà phải đến kết thúc đoạn mã tuần tự đó.
Trang 933 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• Biến variable chỉ biểu diễn các dữ liệu nội bộ, chỉ
có thể sử dụng bên trong PROCESS, FUNCTION, hoặc PROCEDURE.
• Giá trị của biến variable không thể truyền ra
ngoài trực tiếp.
• Giá trị của biến được cập nhật trực tiếp sau từng
dòng mã lệnh.
Trang 943 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• Khai báo biến:
–VARIABLE name: type [range] [:=
init_value];
Trang 953 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 963 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• So sánh signal va variable
Trang 973 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
• Hằng số Constant là các tên được gán cho các giá trị
cụ thể của 1 kiểu DL Sử dụng hằng số cho phép
người thiết kế xây dựng mô hình dễ hiểu
(better-documented) và dễ thay đổi.
• Khai báo hằng số:
–CONSTANT name : type := value;
–Hằng số có thể khai báo trong package,
entity hoặc architecture Phạm vi tác
động giống như tín hiệu signal.
Trang 983 Các kiểu dữ liệu cơ bản
Các kiểu đối tượng
Trang 994 Các toán tử và thuộc tính
Trang 1004.1 các toán tử
Trang 1014.1 các toán tử
Toán tử gán
Trang 1024.1 các toán tử
Toán tử gán
Trang 1034.1 các toán tử
Toán tử logic
Trang 1044.1 các toán tử
Trang 1054.1 các toán tử
Trang 1064.1 các toán tử
Toán tử dịch
Trang 1074.1 các toán tử
Trang 1084.1 các toán tử
Trang 1094 Các toán tử và thuộc tính
Trang 1104.2 Các thuộc tính
Trang 1144 Các toán tử và thuộc tính
Trang 1154.3 Các thuộc tính do user định nghĩa
Trang 1174.3 Các thuộc tính do user định nghĩa
Trang 1184 Các toán tử và thuộc tính
Trang 1194.4 Chồng toán tử
Trang 1204 Các toán tử và thuộc tính
Trang 1214.5 Generic
Trang 1235 Mã lệnh song song
Trang 1245.1 Song song và tuần tự
Trang 1275 Mã lệnh song song
Trang 1285.2 Sử dụng các toán tử
Trang 1315 Mã lệnh song song
Trang 1325.3 Mệnh đề When
Trang 1465 Mã lệnh song song
Trang 1475.4 Generate
Trang 1535 Mã lệnh song song
Trang 1545.5 Block
Trang 1555.5 Block
Simple Block
Trang 1565.5 Block
Simple Block
Trang 1575.5 Block
Guarded Block
Trang 1585.5 Block
Guarded Block
Trang 1595.5 Block
Trang 1616 Mã lệnh tuần tự
Trang 1626.1 Process
Trang 1656 Mã lệnh tuần tự
Trang 1666.2 Tín hiệu và biến
Trang 1676 Mã lệnh tuần tự
Trang 1686.3 Lệnh IF
Trang 1736 Mã lệnh tuần tự
Trang 1746.4 Lệnh Wait
Trang 1756.4 Lệnh Wait
Wait Until
Trang 1766.4 Lệnh Wait
Wait Until
Trang 1776.4 Lệnh Wait
Wait On
Trang 1786.4 Lệnh Wait
Wait On
Trang 1796.4 Lệnh Wait
Wait For
Trang 1806.5 Lệnh Case
Trang 1826.5 Lệnh Case
Note
Trang 1836.5 Lệnh Case
Note
Trang 1846.5 Lệnh Case
Trang 1896 Mã lệnh tuần tự
Trang 1906.6 Lệnh Loop
Trang 1956.6 Lệnh Loop
Dùng Generic
Trang 1966.6 Lệnh Loop
Trang 1976.6 Lệnh Loop
Không Generic
Trang 1986.6 Lệnh Loop
Không Generic
Trang 1996 Mã lệnh tuần tự
Trang 2006.7 Một số ví dụ