đồng hồ phân chia với VHDL?

M

martur

Guest
xin chào tôi có một vấn đề với VHDL. trong thực tế, tôi wrot tập tin testbench để mô phỏng thiết kế của tôi. trong tập tin này, tôi cần phải chỉ định một giá trị đặc biệt đối với một tín hiệu trong một periode cụ thể. vì vậy tôi được sử dụng biểu thức sau đây: CLK
 
Nếu thiết kế dành riêng cho một gia đình FPGA gần đây, bạn sẽ sử dụng một số nhân xung nhịp PLL. Nếu không, không có cách nào tốt. Logic chậm trễ tế bào có thể được sử dụng, nhưng mạnh mẽ ảnh hưởng bởi quá trình điện áp, và nhiệt độ (PVT) biến thể. Hoặc cung cấp một yếu tố 4 tần số đồng hồ cao hơn.
 
Kính gửi Marter, Bạn đã thực hiện truy cập của bit n nếu bạn cần phải phân chia bất kỳ đồng hồ từ 2 đến sức mạnh 'n'. nếu có nhu cầu tần số specfic cho tôi biết các chi tiết của freq đầu vào, tần số đầu ra và "thời gian về Preet
 
nếu bạn có yêu cầu tần số specfic cho tôi biết chi tiết của đầu vào freq, tần số đầu ra và 'bật' thời gian
OP được rõ ràng về các yêu cầu, ông có một chiếc đồng hồ với thời gian của 100ns (10MHz) và ông muốn sử dụng sự chậm trễ 25ns đó là thời kỳ của 40MHz như FvM nói rằng ông có thể sử dụng một số nhân tần số đồng hồ nội bộ nếu có hoặc đồng hồ bên ngoài 40 MHz. martur, chúng tôi giả định rằng CLK 100ns (cao nhất) tần số đồng hồ chính có sẵn trong hệ thống của bạn và không phải là một chiếc đồng hồ đã được chia. Alex
 
Dear Marter, Bạn phải thực hiện truy cập của bit n nếu bạn cần phải phân chia bất kỳ đồng hồ từ 2 đến sức mạnh 'n'. nếu bạn có yêu cầu tần số specfic cho tôi biết chi tiết của đầu vào freq, tần số đầu ra và vào thời gian trọng Preet
Điều này chỉ tốt nếu bạn sử dụng đầu ra của truy cập này là một chiếc đồng hồ cho phép trong phạm vi của đồng hồ cơ sở của bạn. Nói chung là xấu thực hành để sử dụng đầu ra từ một truy cập vào sổ đăng ký đồng hồ khác. Nó là an toàn hơn nhiều để sử dụng một PLL
 
Kính gửi TrickyDicky, plz xây dựng quan điểm của bạn với một ví dụ. điều này sẽ cho phép tôi để hiểu rõ hơn. Kính trọng, Preet
 
Tôi không có một ví dụ - tin tức của nó chỉ xấu để sử dụng cho một truy cập như một chiếc đồng hồ cho các thiết bị khác. Nó có thể làm việc ở lần, nhưng có thể trở nên không đáng tin cậy mà không có cảnh báo và bị ảnh hưởng bởi nhiệt độ. Vì vậy, thay vì sử dụng nó như một chiếc đồng hồ, sử dụng như một chiếc đồng hồ cho phép:
Code:
 cnt_proc: quá trình (CLK) bắt đầu nếu rising_edge (CLK) sau đó CNT
 
TrickyDicky thân mến, bao nhiêu tôi có thể phân chia bằng cách sử dụng Preet trọng PLL
 
càng nhiều như là PPL sẽ cho phép. Xem tài liệu cho FPGA cụ thể của bạn. Thông thường, bạn có thể nhận được bất cứ điều gì từ một vài MHz đến 100 của MHz.
 
kiểm tra mã chia đồng hồ của tôi: [url = http://www.vhdlcodes.com/2010/08/vhdl-code-for-clock-divider.html] Tất cả các Giới thiệu về VHDL Mã, PCB thiết kế và AVR: VHDL mã cho Divider Clock [/url]
 
kiểm tra mã chia đồng hồ của tôi: [url = http://www.vhdlcodes.com/2010/08/vhdl-code-for-clock-divider.html] Tất cả các Giới thiệu về VHDL Mã, PCB thiết kế và AVR: VHDL mã cho Clock Divider [/url]
Đó là tốt về mặt lý thuyết, nhưng cho một thiết kế thực tế, nó là hữu ích hơn để tạo ra một chiếc đồng hồ cho phép (một tín hiệu đó là cao đối với một chu kỳ đồng hồ) hoặc sử dụng một PLL. Nó không phải là khuyến khích sử dụng một logic / đăng ký / đầu ra flip-flop như một chiếc đồng hồ. Đồng hồ A cho phép được sử dụng như thế này trong VHDL: Mã quá trình (CLK, rst_n) nếu rst_n = '0 'sau đó đặt tất cả các đăng ký để thiết lập lại giá trị elsif rising_edge (CLK) sau đó - nó có thể hữu ích để có một số thứ ở đây - ví dụ như thiết lập được tạo ra đồng hồ cho phép bằng không nếu clock_enable = '1 'sau đó làm việc ở đây kết thúc nếu kết thúc nếu kết thúc quá trình; [/CODE] Khi clock_enable = "0" quá trình này sẽ giữ trạng thái. Cho phép đồng hồ thường được tạo ra bởi các đồng hồ giống như các mạch sử dụng nó. Với đồng hồ cho phép bạn có thể có một hệ thống mạnh mẽ với nhiều "đồng hồ" (đồng hồ cho phép). Đó là mạnh mẽ bởi vì tất cả mọi thứ là tốc độ của cùng một đồng hồ.
 
Đó là điều tốt về mặt lý thuyết, nhưng cho một thiết kế thực tế, nó là hữu ích hơn để tạo ra một chiếc đồng hồ cho phép (một tín hiệu đó là cao đối với một chu kỳ đồng hồ) hoặc sử dụng một PLL. Nó không phải là khuyến khích sử dụng một logic / đăng ký / đầu ra flip-flop như một chiếc đồng hồ. Đồng hồ A cho phép được sử dụng như thế này trong VHDL: Mã quá trình (CLK, rst_n) nếu rst_n = '0 'sau đó đặt tất cả các đăng ký để thiết lập lại giá trị elsif rising_edge (CLK) sau đó - nó có thể hữu ích để có một số thứ ở đây - ví dụ như thiết lập được tạo ra đồng hồ cho phép bằng không nếu clock_enable = '1 'sau đó làm việc ở đây kết thúc nếu kết thúc nếu kết thúc quá trình; [/CODE] Khi clock_enable = "0" quá trình này sẽ giữ trạng thái. Cho phép đồng hồ thường được tạo ra bởi các đồng hồ giống như các mạch sử dụng nó. Với đồng hồ cho phép bạn có thể có một hệ thống mạnh mẽ với nhiều "đồng hồ" (đồng hồ cho phép). Là mạnh mẽ bởi vì tất cả mọi thứ là tốc độ của cùng một đồng hồ
Đoạn mã trên trang web của tôi là Synthesizable . Và nó mang lại cho sản lượng 100%. Bạn nên cố gắng đầu tiên. Và cho phép đồng hồ, u có thể trực tiếp thêm tín hiệu mã của tôi ..
 
mã trên trang web của tôi là Synthesizable . Và nó mang lại cho sản lượng 100%. Bạn nên cố gắng đầu tiên. Và cho phép đồng hồ, u có thể trực tiếp thêm tín hiệu mã của tôi ..
Chỉ vì nó là synthesisable doesnt có nghĩa là một ý tưởng tốt của nó để dạy cho mọi người mà tạo ra đồng hồ trong logic là một ý tưởng tốt. Bạn nên sửa đổi nó để nói rằng "op" nên được sử dụng như cho phép bất kỳ logic nội bộ khác chứ không phải là một chiếc đồng hồ.
 
Bạn nên sửa đổi nó để nói rằng "op" nên được sử dụng như cho phép bất kỳ logic nội bộ khác chứ không phải là một chiếc đồng hồ
Nhưng nó không được thiết kế như một chiếc đồng hồ một chu kỳ cao cho phép chứ không phải là nhiệm vụ 50% chu kỳ gợn chia đồng hồ. Nói chung, tôi có thể tưởng tượng một số trường hợp mà các đồng hồ chia phục vụ mục đích của nó, ví dụ như tạo ra một sản lượng đồng hồ bên ngoài cho một thiết bị ngoại vi, nhưng nhiều trường hợp nơi mà một chiếc đồng hồ cho phép sẽ được ưa thích. Giả sử, bạn không có một PLL để tạo ra một chiếc đồng hồ với sự chậm trễ không, nó có thể là cần thiết để sử dụng giải pháp đồng hồ chia xấu cho một tên miền đồng hồ chậm. Tuy nhiên, thời gian đóng cửa của miền tín hiệu qua sẽ thêm một số nỗ lực thiết kế thêm. Tiêu đề chủ đề là phần nào gây hiểu lầm bằng cách này, bởi vì các bài bản gốc thực sự là yêu cầu nhân đồng hồ chứ không phải là phân chia.
 

Welcome to EDABoard.com

Sponsor

Back
Top