Ví dụ về quá trình

Một phần của tài liệu Luận văn : Kỹ thuật PLD và ASIC doc (Trang 87 - 88)

III. MÔ TẢ PHẦN CỨNG TRONG VHDL

b. Ví dụ về quá trình

Chúng ta hãy quan sát ví dụ 2-12 của phát biểu quá trình trong kiến trúc

Ví dụ 2-12:

LIBRARY IEEE;

USE IEEE.std_logic_1164.ALL;

ENTITY nand2 IS

PORT (a, b: IN STD_LOGIC;

c: OUT STD_LOGIC);

END nand2;

ARCHITECTURE nand2 OF nand2 IS

BEGIN

PROCESS (a,b)

VARIABLE temp : STD_LOGIC;

BEGIN

temp := NOT (a AND b);

IF (temp = ‘1’ ) THEN c <= temp AFTER 6 ns;

ELSIF (temp = ‘0’ ) THEN c <= temp AFTER 5 ns;

ELSE c <= temp AFTER 6 ns;

END IF;

ENDPROCESS;

END and2;

Trong ví dụ này trình bày cách viết mô hình cho một cổng NAND đơn giản có 2 ngõ vào dùng phát biểu tuần tự.

Phát biểu USE khai báo gói VHDL để cung cấp những thông tin cần thiết cho phép xây dựng mô hình cho cổng NAND. Phát biểu USE được dùng để cho mô hình có thể được mô phỏng với trình mô phỏng VHDL mà không cần thêm bước hiệu chỉnh nào.

Thực thể khai báo 3 port cho cổng nand2. Port a và port b là ngõ vào và port c là ngõ ra. Tên của kiến trúc cùng tên với thực thể.

Kiến trúc chỉ chứa một phát biểu, một phát biểu quá trình đồng thời.

Phần khai báo quá trình bắt đầu tại từ khoá PROCESS và kết thúc tại từ khoá BEGIN. Phần phát biểu quá trình bắt đầu tại từ khoá BEGIN và kết thúc tại từ khoá END PROCESS. Phần khai báo quá trình có hai phát biểu tuần tự: một phát biểu gán biến:

Và một phát biểu IF THEN ELSE

IF (temp = ‘1’ ) THEN c <= temp AFTER 6 ns;

ELSIF (temp = ‘0’ ) THEN c <= temp AFTER 5 ns;

ELSE c <= temp AFTER 6 ns;

END IF;

Quá trình chứa danh sách nhạy rõ ràng với 2 tín hiệu chứa bên trong:

PROCESS (a,b)

Quá trình đang thực hiện (nhạy) với 2 tín hiệu ab. Trong ví dụ này, ab là 2 port ngõ vào của mô hình. Các port ngõ vào xây dựng các tín hiệu có thể được dùng như các ngõ vào, các port ngõ ra xây dựng các tín hiệu có thể được dùng như các ngõ ra, các port inout xây dựng các tín hiệu có thể được dùng cho cả 2 vào – ra.

Khi port a hoặc b thay đổi giá trị thì phát biểu bên trong quá trình được thực hiện. Mỗi phát biểu được thực hiện theo thứ tự nối tiếp bắt đầu với phát biểu trên cùng của phát biểu quá trình và thực hiện từ trên xuống dưới. Sau khi tất cả các phát biểu đã được thực hiện một lần, quá trình đợi cho đến khi có sự thay đổi tín hiệu hoặc port nằm trong danh sách nhạy.

Một phần của tài liệu Luận văn : Kỹ thuật PLD và ASIC doc (Trang 87 - 88)