làm thế nào để có được một đồng hồ divider Nx64k sử dụng Verilog????

G

guolh

Guest
làm thế nào để có được một đồng hồ divider Nx64k sử dụng hình thức 32.768MHz Verilog??

guolh (at) bbn.cn

 
Nx64k là gì?

Nếu bạn muốn chia một đồng hồ bởi 65536, sau đó nó thành một nguồn cấp dữ liệu 16-bit nhị phân truy cập, và sản lượng bit quan trọng nhất.
Bạn có cần giúp làm điều đó?

 
Chia CLK bởi N * 65.536 nơi 1 <= N <= 31
Mã số:

module đầu (CLK, N, trên);

Tham số nbits = 5;

Tham số cbits = 16;

CLK đầu vào;

input [nbits-1: 0] N;

reg [nbits-1: 0] count0 = 0;

reg [cbits-1: 0] count1 = 0;

đầu ra ngoài;phân công ra = count1 [cbits-1];luôn luôn @ (posedge CLK) bắt đầu

count0 <= (count0 == 0)?
N - 1: count0 - 1;

count1 <= count1 (count0 == 0);

cuối

endmodule
 
N * 64k là 64k, 128k, 192K, 256k, 320k, 384k....
mã của bạn là không đúng!
Cảm ơn!

 
Bạn nghĩ gì là sai trái với nó?
Bạn đã không giải thích rõ ràng "Nx64k".
31 kết quả đầu ra ở tần số khác nhau có lẽ?
k = 1000 thay vì 1024 có lẽ?

 
xin lỗi!
1k = 1000Hz!
31 kết quả đầu ra ở tần số khác nhau, phụ thuộc vào giá trị N!

 
Một kỹ sư tốt phải học để xác định các yêu cầu rõ ràng!

<img src="http://www.edaboard.com/images/smiles/icon_wink.gif" alt="Wink" border="0" />Bạn có 31 kết quả đầu ra đồng thời ở những tần số khác nhau, hoặc để bạn có một đầu ra có tần số được chọn bởi các đầu vào N?

Thêm "Hz" để đầu ra những thay đổi thiết kế toàn bộ.Bây giờ các đầu vào / đầu ra tỷ lệ tần số không phải là một số nguyên.Nếu bạn có thể chịu đựng được một chu kỳ đồng hồ của jitter trên đầu ra, sau đó một cách tiếp cận DDS đơn giản sẽ làm việc.Nếu không, bạn sẽ cần một nâng cao hơn DDS sinewave, hoặc một tổng hợp bằng cách sử dụng một PLL bên ngoài.Sự lựa chọn của bạn?

 

Welcome to EDABoard.com

Sponsor

Back
Top