A... em làm được rồi. Mừng quá!!
Thông báo
Collapse
No announcement yet.
FPGA cơ bản
Collapse
This is a sticky topic.
X
X
-
Chào bác "Thớt" cùng mọi người.
Mình đang tìm hiểu cái này nhưng hiện tại đang dừng ở khái niệm. Mình có vài điều thắc mắc nhờ các bạn giải thích :
1. FPGA thì như một tổ hợp các khối logic. Nhưng độ tích hợp các khối logic này đến mức nào ? Tối đa là các cổng And, Or... Hay là đến các modul như Adc, Uart, Usb ...? Hay cao hơn nữa. Bởi vì mình cần có 1 modul trên FPGA mà phải tạo từ cái cơ bản thì rất mệt.
2. Khi dùng code mô tả phần cứng, chương trình sẽ tự chọn các khối logic và kết nối với nhau theo mô tả hay nó sẽ chỉ đưa ra các khối logic mà ta mô tả và ở bước nào đó ta phải nối chúng với nhau như vẽ mạch điện ?
3. Ta sẽ lựa chọn IO, các khối logic vật lý và kết nối chúng với nhau thủ công để tạo nên phần cứng theo ý muốn ?
4. Mình thấy các bác dùng Kit sẵn, trong trường hợp mình muốn có thiết kế riêng nó có giống với các IC lập trình khác ? (Nó fix cứng chân nguồn, clock, reset, dao động, nạp ...).
5. Chương trình của FPGA lưu trên RAM nên sẽ mất khi mất điện do đó phải có 1 bộ nhớ như EEPROM để lưu chương trình. Vậy bộ nhớ RAM và EEPROM mình phải sử dụng một số loại đặc biệt và kết nối với FPGA qua những chân đặc biệt khi thiết kế hay là nó đã tích hợp sẵn trong chip FPGA ?.
Comment
-
Độ tích hợp khá đa dạng. Từ đơn giản cỡ thanh ghi dịch cho tới lớn như UART, phức tạp như khối giao tiếp RAM hay mã hóa, giải mã dữ liệu ... Thậm chí khủng là nguyên cái lõi vi xử lý 32 bit chạy được Linux như MicroBlaze của hãng Xilinx chẳng hạn. Bản thân thiết kế cái lõi đấy cũng là miễn phí, mã nguồn mở.
Nếu thiết kế FPGA theo kiểu "vẽ mạch" thì người dùng sẽ dùng các khối cơ bản mà nhà sản xuất cung cấp sẵn (AND, OR, NOT, flip flop ...) nối lại với nhau y như khi vẽ mạch logic; tuy nhiên cách này thường chỉ dùng cho dự án nhỏ. Dự án trung bình và lớn thường dùng một ngôn ngữ mô tả phần cứng để "lập trình phần cứng" FPGA tương tự lập trình phần mềm máy tính. Có 3 ngôn ngữ lập trình phần cứng phổ biến là VHDL, Verilog và SystemC. Chúng đều là chuẩn quốc tế ENSI/IEC/IEEE nên độc lập một cách tương đối với phần cứng.
Cũng tương tự phần mềm viết bằng C++ dùng thư viện Qt có thể biên dịch trên cả Windows, Linux lẫn MacOS ... dự án FPGA viết bằng VHDL nếu dùng thư viện tốt cũng sẽ tổng hợp (synthersize) cho cả FPGA của Xilinx lẫn Altera, thậm chí Lattice hay Actel ... (hàng của Actel hơi đặc thù nên không ai dám nói mạnh được).
VHDL xuất thân từ ADA nên rất giống Pascal. Verilog khá giống C. Còn SystemC thì chính là biến thể từ C++. Nói chung là dễ học với người đã biết lập trình.
Comment
-
Tương tự MCU, người thiêt kế bình thường hoàn toàn đủ khả năng để thiết kế mạch từ đầu dùng FPGA. Dùng kit chỉ là những người mới bắt đầu còn bỡ ngỡ.
Trước đây, cấu hình FPGA cũng được lưu trong bộ nhớ ngoài Ví dụ họ Spartan-3 và 3E của Xilinx 3 về trước. Sau này các hãng đều chuyển sang lưu ở flash ngay bên trong FPGA, ví dụ Spartan-3A và Spartan-6.
Comment
Bài viết mới nhất
Collapse
-
bởi chinhnguyen9Hoạt động của thế hệ mạch cân bằng trước đây dựa trên nguyên lý so áp giữa 2 string liền kề. Hoạt động cân bằng chỉ kích hoạt khi sự chênh lệch vượt ngưỡng 100mV và ngưng hoạt động khi mức chênh lệch giảm xuống còn 30mV. Bản...
-
Channel: Điện tử dành cho người mới bắt đầu
hôm nay, 05:07 -
-
bởi chinhnguyen9Xem hình minh họa có phần thuyết minh bên trong tiện việc quan sát và đọc thuyết minh. Khi G1 high dòng điện chạy theo các đường màu đen khi G2 high dòng điện chạy theo các đường màu nâu đỏ.
Bổ sung một tính chất củng cố cho tên gọi tụ bay: Trong mạch đề cập chỉ...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 21:02 -
-
bởi chinhnguyen9Sản phẩm này ghi version 2.0 01-2024 MADE IN CHINA nhưng không thấy thương hiệu hình 1
Do 8 chân G của 8 mosfet được đấu song song thành 2 nhóm nên có cùng biên độ xung kích 12V. Nhưng Q1 và Q2 nằm cuối dãy, chân S cùa chúng có điện áp DC cao đến...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 20:37 -
-
bởi xuanthiettivi em bị mất remote lỡ vào chế độ usb giờ không chọn lại source được. ai có file nạp cho em xin với ạ. Model 32HD957T2
-
Channel: Điện tử truyền hình
Hôm qua, 10:53 -
-
Trả lời cho Giải thích nôm na từ "tụ bay"bởi chinhnguyen9Đa tạ lời cảm ơn của bạn. Mến!
-
Channel: Hướng dẫn sử dụng diễn đàn
Hôm qua, 05:06 -
-
Trả lời cho Xin tư vấn về mạch cầu H cho inverter 1000wbởi thebinhzChắc là không được đâu bạn ơi
Quán ăn Vĩnh Yên-
Channel: Điện tử công suất
25-04-2024, 21:56 -
-
Trả lời cho Giải thích nôm na từ "tụ bay"bởi thebinhzCảm ơn bạn nhiều nha
Nhà hàng Vĩnh Yên-
Channel: Hướng dẫn sử dụng diễn đàn
25-04-2024, 21:50 -
-
bởi chinhnguyen9Vai viết này đã được chuyển sang chuyên mục phù hợp....
-
Channel: Hướng dẫn sử dụng diễn đàn
25-04-2024, 08:29 -
-
bởi chinhnguyen9
Xem hình có phần thuyết minh bên trong tiện việc quan sát và đọc thuyết minh. Khi G1 high dòng điện chạy theo các đường màu đen khi G2 high dòng điện chạy theo các đường màu nâu đỏ.
Bổ sung một tính chất củng cố cho tên gọi tụ...-
Channel: Hướng dẫn sử dụng diễn đàn
24-04-2024, 01:15 -
-
Trả lời cho CODE/ROM-dvb-vcd-dvd-mindikaraoke- Máy nạp Rombởi ThaPhong20Mình cần giúp đõ đầu California MIDI-800K
Ngày trc có nghe tin đồn đầu này có thể chạy đĩa DH-3600 nên mua Vol 26 về chạy thử và nó báo góc trái dòng code rồi tự thay nền DH-3600S luôn. Sau khi tự thay nền thì nó tiếp tục báo dòng Code...-
Channel: Thiết bị thu phát MEDIA dân dụng
23-04-2024, 19:24 -
Comment