Nguyên văn bởi NEO3F
Xem bài viết
Thông báo
Collapse
No announcement yet.
VHDL & Verilog
Collapse
X
-
Bọn mình trước đây có làm FPU nhưng chỉ dùng Google để tìm kiếm nên không giữ tài liệu. Những gì bạn cần là
1/ Nắm vững VHDL ( các lệnh concurrent, sequential và biết cách thiết kế FSM ). Cái này có nhiều topic giới thiệu sách VHDL rồi.
2/ Tìm thuật toán ( Google các tài liệu về Computer Architecture ). Về cơ bản nó dựa trên nguyên tắc tính toán trên số nguyên
a/ Addition
c= a + b
c= 1.xxxxxxx * 2^m + 1.xxxxxx * 2^n ( n>m )
= 0.00..(n-m)..1xxxxx * 2^n + 1.xxxxxxx * 2^n ( dịch phải a hoặc dịch trái b để chuẩn hóa )
Vậy là c có phần expo là n, phần mantisa là tổng của 2 thằng sau khi đã chuẩn hóa. ( thực chất là tổng 2 số nguyên )
Note: Sub tương tự.
b/ Mul
c = [ Man(a)* 2^n ] * [ Man(b) * 2^m ]
c = Man(a) * Man(b) * 2^ (m+n)
Normalize kết quả về dạng 1.xxx là có kết quả.
Note: Div nguyên tắc tương tự để quy về thuật toán cho số nguyên.
Comment
-
Nguyên văn bởi NEO3F Xem bài viếtBọn mình trước đây có làm FPU nhưng chỉ dùng Google để tìm kiếm nên không giữ tài liệu. Những gì bạn cần là
1/ Nắm vững VHDL ( các lệnh concurrent, sequential và biết cách thiết kế FSM ). Cái này có nhiều topic giới thiệu sách VHDL rồi.
2/ Tìm thuật toán ( Google các tài liệu về Computer Architecture ). Về cơ bản nó dựa trên nguyên tắc tính toán trên số nguyên
a/ Addition
c= a + b
c= 1.xxxxxxx * 2^m + 1.xxxxxx * 2^n ( n>m )
= 0.00..(n-m)..1xxxxx * 2^n + 1.xxxxxxx * 2^n ( dịch phải a hoặc dịch trái b để chuẩn hóa )
Vậy là c có phần expo là n, phần mantisa là tổng của 2 thằng sau khi đã chuẩn hóa. ( thực chất là tổng 2 số nguyên )
Note: Sub tương tự.
b/ Mul
c = [ Man(a)* 2^n ] * [ Man(b) * 2^m ]
c = Man(a) * Man(b) * 2^ (m+n)
Normalize kết quả về dạng 1.xxx là có kết quả.
Note: Div nguyên tắc tương tự để quy về thuật toán cho số nguyên.
Em tính hiển thị các số và kết quả lên LCD của kit DE2. Có lẽ em cần làm 1 cái bàn phím giao tiếp với kit nữa phải ko Bác? Đầu tiên ta Normalize data về dạng 1.xxx , rồi chuẩn hóa>> kết quả >> unNormalize để ra KQ bình thường hiển thi lên LCD. Quá trình Normalize phức tạp ko Bác ?
Em có 1 thắc mắc : "Vậy là c có phần expo là n, phần mantisa là tổng của 2 thằng sau khi đã chuẩn hóa. ( thực chất là tổng 2 số nguyên )"
Em vi dụ Add: 2.365874 +5.369874=1.182937*2 + 1.3424685*2^2
=05914685*2^2+1.3424685=1.933937*2^2
Quá trình Normalize đưa data về dạng đơn giản hơn nhưng vẫn ko thoát khỏi cảnh phải cộng 2 số thập phân, giải thuật sẽ như thế nào hả Bác ?
Comment
-
Nguyên văn bởi honulolo Xem bài viếtEm vi dụ Add: 2.365874 +5.369874=1.182937*2 + 1.3424685*2^2
=05914685*2^2+1.3424685=1.933937*2^2
Quá trình Normalize đưa data về dạng đơn giản hơn nhưng vẫn ko thoát khỏi cảnh phải cộng 2 số thập phân, giải thuật sẽ như thế nào hả Bác ?
Chỉ cần dùng bộ công 24 bit thôi vì kết quả phần mantisa cũng chỉ có độ chính xác tới 24bit ( tương đương độ chính xác 6 số sau dấu phẩy ở thập phân ), có chính xác hơn thì rồi cũng phải truncate thôi.
Comment
-
Nguyên văn bởi NEO3F Xem bài viếtThì cậu cứ cộng nó vào bằng 1 bộ cộng 24bit bình thường thôi. Có vấn đề j đâu ??? Dùng luôn operator "+" cũng OK rồi còn j ?
Chỉ cần dùng bộ công 24 bit thôi vì kết quả phần mantisa cũng chỉ có độ chính xác tới 24bit ( tương đương độ chính xác 6 số sau dấu phẩy ở thập phân ), có chính xác hơn thì rồi cũng phải truncate thôi.
Em có gửi kèm 4 file, Bác có thể chú thích lên file giúp em đc ko ? Tại vì em muốn hiện thị lên kit DE2 của Altera nên em cần hiểu các lệnh để viết lại 32bits. Mong được Bác giúp đỡ.
Comment
-
Bạn vào www.xess.com tìm chắc chắn có phần basic Core giao tiếp PS2 keyboard.
PS: mình ko nhớ là nó có phiên bản verilog ko nhưng nó có đầy đủ tài liệu để bạn biết cách giao tiếp và hoàn toàn có thể chuyển từ code VHDL sang Verilog được.
Comment
-
BÁc NEO3F cho em hỏi lệnh For trong Verilog cú pháp như thế nào hả BÁc? Em thực hiện phép chia dạng dấu chấm động với phần mantissa dài 25 bit( đã thêm bit để chuẩn hóa trước khi tính toán),em có viết như sau nhưng gặp lỗi syntax
for (i=24;i>=0;i=i - 1)
begin t = m1 - m2;
if (t[24]==1)
begin
m3[i] = 0;
m1 = {m1[23:0],1'b0};
end
else
begin
m3[i] = 1;
m1 = {m1[23:0],1'b0};
end
end
Comment
-
De2
Nguyên văn bởi danbeo85rockphuthuy đưa minh địa chỉ mail đi, mình gửi cho. Còn việc giao tiếp DE2 và webcam thì mình chưa đủ sức vì muốn làm được chuyện đó bạn phải rành về con giao tiếp USB trên DE2, con nay khá thì phức tạp.
mình xin chân thành cám ơn
Comment
-
Nguyên văn bởi yesme@ Xem bài viếtTheo mình mỗi chủ đề chỉ cần chọn và đọc một cuốn sách "chất lượng khá" là được. Không nên đọc nhiều sách cùng một chủ đề vì điều đó sẽ làm bạn mất thời gian. Sau đó, khi bắt tay làm thực tế bạn có thể đọc thêm các bài báo hoặc search trên google về các vấn đề mình cần.
Em cũng đang muốn làm về VHDL nhưng chưa biết bắt đầu từ đâu.Em cũng có nhiều sách về nó nhưng ko biết chọn cuốn nào đầu tiên để đọc. Em có thể kể ra như: The VHDL Cookbook, Importing a VHDL, ModuleVHDL Programming by Example. Em đã thử đọc cuốn ...by example. Em nhờ bác yesme cho vài kinh nghiệm về cách học VHDL. Hì hiện em cũng đang làm ở phòng SIS, có thể nói là thế hệ sau bác. Mong bác giúp đỡ.
Comment
-
Tài liệu cơ bản về VHDL(tiếng việt) cho anh em mới bắt đầu.Attached Files
Comment
-
ps2
bạn nào làm PS/2 bằng verilog có thể liên hệ với mình để nhận toàn bộ ( sơ đồ khối,code,kết quả mô phỏng ModelSim )
nhân tiện cho mình hỏi các bạn về giải thuật sắp xếp và tìm kiếm ứng dụng để làm sổ tay điện thoại chẳng hạn..trên kit DE2 luôn ạ..có đọc wa bên dân IT nhưng mình k rành mấy ngôn ngữ bên đó nên mù tịt..giải thuật thì anh em điện tử ở đây ai biết được chỉ dạy mình sẽ dễ hiểu hơn. cheer!
mail : hoangtungking@yahoo.com
Comment
-
Nguyên văn bởi NEO3F Xem bài viếtBạn vào www.xess.com tìm chắc chắn có phần basic Core giao tiếp PS2 keyboard.
PS: mình ko nhớ là nó có phiên bản verilog ko nhưng nó có đầy đủ tài liệu để bạn biết cách giao tiếp và hoàn toàn có thể chuyển từ code VHDL sang Verilog được.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80À, sản phẩm họ thiết kế ra, họ yêu cầu mình chứng minh là sau chỉnh sửa thì 1 là gỡ jump cắm lại không hư mạch, 2 là gỡ jump thì 220Vdc vẫn dùng được led áp thấp 20V mà không hư led như mình báo, nên họ hiểu rõ mà....
-
Channel: Điện tử công suất
hôm nay, 06:08 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Tôi biết và tôi biết.
Sẽ bắt đầu với cái Sồn La, rồi mấy mạch nguồn vớ vỉn.... Rồi sẽ đèn led...
Cuộc đời là những chuyến xe, nên sẽ có:
Xe đạp điện, xe máy điện, xe ô tô điện, xe cấp cứu điện, xe tang điện.
Rồi xem.-
Channel: Điện tử công suất
hôm nay, 01:38 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Vấn đề là thu ánh sáng rồi phát ra ánh sáng cơ. Hồi mẫu giáo cô bảo đừng làm, lão không nhớ à?
Tốt nhất im mồm....-
Channel: Điện tử công suất
hôm nay, 01:26 -
-
Trả lời cho Tiếng Anh cho người Việtbởi bqvietBài học kiểu trực tuyến dù là loại đơn giản bậc nhất cũng vẫn cần chú tâm. Chỉ bật tai nghe lên thì không có loại nào thấm nổi đâu. Cách hay hơn, dễ hơn là kiếm phim tiếng Anh nào đó xem, ban đầu bật phụ đề tiếng Việt, nghe và...
-
Channel: Tâm tình dân kỹ thuật
14-02-2025, 16:15 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nguyendinhvanỞ đtvn này mới biết đến 2 loại mạch
1 step down
2 step up
Bây giờ anh lưu vong làm thuê bên nước lạ còn làm ra cái mach vừa up vùa dow luôn.
Tính chất là:
1 Đầu vào bằn ra cho nối thẳng
2 Đầu vào cao hơn...-
Channel: Điện tử công suất
14-02-2025, 00:51 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nguyendinhvanHa ha !
Thay đổi cách nghĩ thì sẽ nghĩ ra.
.
.
.
Một thứ cần kiểm soát dòng + nhiệt + công suất tiêu tán. Nhưng lại dùng tư duy ổn áp. Làm sao mà giải quyết được.
Nó là mạch ổn dòng.
Vì thế các anh nước lạ không thèm quan tâm là phải....-
Channel: Điện tử công suất
14-02-2025, 00:42 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80Vì cứ phải chỉnh sửa cho mỗi dải điện áp, quên chỉnh thì hư chíp phải bảo hành nên em thấy bất tiện, mới cần cái mạch 1 dải áp cao dùng cho tất cả loại đèn đó bác!...
-
Channel: Điện tử công suất
13-02-2025, 17:02 -
-
Trả lời cho Tiếng Anh cho người Việtbởi hankhungdtMình thỉnh thoảng cũng làm việc với người nước ngoài nói tiếng Anh thì toàn ghép nhặt từ, cộng với quơ tay quơ chân để diễn tả, hix. Nỗi khổ là không biết cách để mô tả sự việc. Tôi muốn tìm các bài giảng tiếng anh nào phù hợp...
-
Channel: Tâm tình dân kỹ thuật
13-02-2025, 08:43 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi ti500Chúc mừng bác đã chỉnh sửa thành công, nhưng theo em thì video hơi rối nếu bác muốn gửi cho bên supplier xem.
Nếu là em thì em chỉ cần nối dây để hiển thị liên tục điện áp ở ngõ ra là 220Vdc trước khi gắn LED, kế đến là cắm...-
Channel: Điện tử công suất
13-02-2025, 07:39 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi tuyennhanTrước khi có đủ thực lực thì chỉ làm vì mình thôi đừng nghĩ đến chuyện khác cái mạch toàn dãi tiện sử dụng nhưng tỷ lệ hư hỏng phải bảo hành cũng cao hơn ,lợi bất cập hại .
-
Channel: Điện tử công suất
13-02-2025, 07:22 -
Comment