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
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ loa tép bé xíu như ngón chân cái thôi ạ. Thiếu gì chỗ để đâu. Quan trọng là gắn thêm nó loa nghe ok hay ko thôi ạ...
-
Channel: Điện thanh
hôm nay, 11:44 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi viettinhNó không phải cái loa rời. Chả nhẽ đèo thêm 2 con loa tép ngoài thì kỳ lắm....
-
Channel: Điện thanh
hôm nay, 09:45 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ chú mua thêm loa tép nối tiếp qua con tụ rồi mắc vào cùng loa trung là được ạ...
-
Channel: Điện thanh
Hôm qua, 19:53 -
-
Trả lời cho Tìm datasheet linh kiện điện tử.bởi mèomướpDạ cháu hỏi bạn cháu thì bạn ấy trả lời như thế này ạ. Cháu cũng hông bít có đúng hông nữa ạ
Linh kiện điện tử với mã "943BA" và "W58BAL" là một loại cầu chì tự động (circuit breaker) do TE Connectivity sản...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 19:50 -
-
bởi viettinhChuyện là mình mới đập hộp con loa kéo Sony SRS-XV900. Do khu vực mình k có sẵn hàng để trải nghiệm thực tế nên chỉ tham khảo các kênh revew online.
Mua về sử dụng thì thấy hơi buồn về chất âm, Mở max k to bằng cái loa kéo china, bass...-
Channel: Điện thanh
Hôm qua, 17:18 -
-
Trả lời cho Tìm datasheet linh kiện điện tử.bởi yeurap7em tra google cũng ko có...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 16:37 -
-
Trả lời cho Trình điều khiển bước rời rạcbởi mèomướpDạ nếu chú đã viết được chương trình cho vđk thì thêm 1 chương trình con chạy động cơ bước chỉ đơn giản là copy phát. Về phần cứng thì vài con cách ly quang, vài con mosfet thôi ạ. thực sự là dễ dàng như bài tập bình thường của sinh viên thôi ạ...
-
Channel: Máy công cụ
06-01-2025, 12:55 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi Minhdai95vâng mình cảm ơn mn đã góp ý
-
Channel: Điện tử công suất
06-01-2025, 11:30 -
-
bởi tom22Xin chào
Tôi có một dự án trong đó một động cơ bước tích hợp được điều khiển bởi một bộ vi điều khiển.
Nhưng tôi thực sự không thích trả tiền cho trình điều khiển bước, khi tôi có một bộ vi điều khiển có khả năng thực...-
Channel: Máy công cụ
06-01-2025, 10:54 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi mèomướpDạ chú chủ thớt có thời gian và đam mê thì cứ từ từ ngâm cứu đi ạ đừng nghe chú Chú bq... dọa mà sợ ạ. Cái nguồn nhìn cũng lởm có khi hông bằng cái máy hàn tàu của chị hàng xóm hôm nọ tháo ra sửa với chú thợ thông ống nước suốt đêm mới xong. Chú ý an toàn xíu là được ạ...
-
Channel: Điện tử công suất
05-01-2025, 15:40 -
Comment