Mảng và thay đổi giá trị dector (sự kiện tương đương)

W

Wild Life

Guest
Tôi tìm thấy sự kiện thuộc tính hữu ích, nhưng nó có thể được sử dụng chỉ với các tín hiệu std_logic tôi cần phải thực hiện cùng một điều kiện (giá trị thay đổi, tôi có nghĩa là) về một std_logic_vector (31 downto 0).
Code:
 tín hiệu A: std_logic_vector (31 downto 0) quá trình (đồng hồ) bắt đầu nếu rising_edge (đồng hồ) [COLOR = "# FF0000"] nếu A'event sau đó [/COLOR] .... kết thúc nếu; kết thúc nếu;
BIẾT Bộ luật RED IS UNCORRECT !!! Tôi chỉ muốn hiển thị những gì tôi có nghĩa là để mô tả ;-) Có một thuộc tính / cách để làm điều đó?
 
Thuộc tính SỰ KIỆN làm việc trên các tín hiệu std_logic_vector. Trong thực tế, họ làm việc trên bất kỳ loại TÍN HIỆU (std_logic, std_logic_vector, số nguyên, người sử dụng xác định các loại, ...) vấn đề lý do tại sao nó không phải là làm việc cho bạn là bởi vì bạn đang cố gắng để phát hiện một sự kiện A trong một quá trình tốc độ . Nếu các sự kiện thời gian không phù hợp chính xác (đồng hồ thời gian sự kiện = thời gian sự kiện), sự kiện sẽ không bao giờ được phát hiện. Điều này có nghĩa là quá trình sẽ chạy vào một thời điểm khác hơn so với tín hiệu A sẽ thay đổi và do đó các sự kiện trên không có thể được phát hiện theo cách này. Thêm tín hiệu A vào danh sách nhạy cảm và bạn sẽ thấy nó làm việc.
 
Các vấn đề về synthesizable VHDL? Sau đó, bạn nên xem xét rằng nó không phải chủ yếu là một vấn đề của VHDL cú pháp hơn là về khả năng phần cứng. Thay đổi giá trị có thể được phát hiện trong logic phần cứng bằng cách lấy mẫu tín hiệu và so sánh hiện tại với các giá trị trước đó được lưu trữ. Điều này cũng làm việc cho nhiều bit.
 
không cần phải viết thiết kế mà bạn không thể thực hiện sơ đồ
 
Mã màu đỏ là đúng VHDL VHDL không synthesisable của nó. "Sự kiện nên không được sử dụng trong các thiết kế synthesisable, vì nó không đại diện cho bất kỳ phần cứng thực tế (trừ khi bạn sử dụng nó cho các đồng hồ: nếu clk'event và CLK = '1 'sau đó ....). Tuy nhiên, cảm thấy phát điên với nó trong testbenches - nhưng tôi không đặt nó bên trong một quá trình tốc độ mặc dù (vì lý do fcfusion chỉ ra). Bạn cần phải làm những gì FvM đề nghị xây dựng một máy dò tiên tiến với một đăng ký và comparitor.
Code:
 quá trình (CLK) bắt đầu nếu rising_edge (CLK) Thein input_r
 
không cần phải viết thiết kế mà bạn không thể thực hiện của sơ đồ mạch
LOL, điều đó không có nghĩa là gì?
 
LOL, mà có nghĩa là gì?
Tôi nghĩ rằng, ông có nghĩa là, bạn sẽ có thể tưởng tượng một mạch logic phần cứng cho một thiết kế synthesizable. Không có phần cứng tương ứng cho một thuộc tính sự kiện.
 

Welcome to EDABoard.com

Sponsor

Back
Top