2010-08-06 47 views
8

Tôi muốn bắt đầu lập trình FPGA. Tôi không có bất kỳ kiến ​​thức ở tất cả về cách FPGAs làm việc và như vậy. Tôi muốn có một bảng phát triển, không quá đắt, nhưng nó phải có ít nhất 40 chân I/O. Bất cứ điều gì lên đến $ 300 là OK.Bắt đầu lập trình FPGA

Tôi quyết định rằng tôi muốn lập trình ở Verilog. Tôi không chắc về những điều sau đây:

  1. Làm cách nào để 'chương trình' biên dịch của tôi được lưu trữ trên chip? Tôi đoán chip này có một số loại EEPROM để lưu chương trình của tôi, nhưng từ những gì tôi đã đọc, nó dường như được lưu trong RAM. Tôi muốn chương trình của tôi vẫn còn trên chip (hoặc được tải bằng cách nào đó) mỗi khi nó tăng sức mạnh.

  2. Tôi có thể mua chip FPGA riêng biệt (không phải toàn bộ bảng phát triển) để sản xuất không? Và nếu có, tôi có thể tải chương trình của mình lên chip riêng như thế nào? Liệu nó trong một số cách kết nối với hội đồng phát triển?

+0

bản sao có thể có của [Bắt đầu với lập trình FPGA.] (Http://stackoverflow.com/questions/1711306/getting-started-with-fpga-programming) –

+0

trang không tìm thấy, bro, do đó, nó mát mẻ. –

+0

@CarlNorum Chỉ hiển thị với 10 nghìn thành viên. –

Trả lời

1
  1. Trong Xilinx FPGA ngữ "chương trình" được gọi là bitstream. Có một số FPGA có flash nhúng để lưu trữ bitstream (ví dụ: Spartan 3AN). Hầu hết các FPGA đòi hỏi một số lưu trữ bitstream bên ngoài. Đây là một configuration guide về cách cấu hình một FPGA.

  2. Có thể. Có nhiều cách để thực hiện cấu hình. Hầu hết trong số họ yêu cầu một số mạch bên ngoài.

+0

Hầu hết các FPGA đều có mạch logic chuyên dụng để biết cách đọc cấu hình từ một chip flash sử dụng giao thức dành riêng cho nhà cung cấp, sau đó nhà cung cấp bán các bộ nhớ cấu hình. Không đổ mồ hôi giao thức nhà cung cấp cụ thể mặc dù, những kỷ niệm thực sự là khá giá cả cạnh tranh. Sau đó, bạn có thể tải bộ nhớ cấu hình trước khi cài đặt lên bảng hoặc sử dụng giao diện gỡ lỗi JTAG để tải chương trình bộ nạp flash (nhà cung cấp) ghi vào bộ nhớ cấu hình, khi đặt lại bộ tải flash biến mất và thiết kế của bạn nạp vào. –

2

Toàn bộ điểm sử dụng FPGA là "chương trình" của bạn thực sự là mạch chứ không phải RAM. Có các thành phần logic vật lý được cấu hình khi bạn viết bitstream cho FPGA. Đây là lý do tại sao họ có thể chạy nhanh hơn rất nhiều cho các ứng dụng chuyên ngành - về cơ bản bạn đang tạo phần cứng tùy chỉnh.

Xilinx là một trong những nhà sản xuất FPGA chính. Hãy thử số website của họ. Xem phần Bảng & Bộ dụng cụ.

Hãy thử đọc thêm về công nghệ trước khi bạn đi trước chính mình. Bạn sẽ cần một sự hiểu biết mạnh mẽ về cách FPGA làm việc trước khi bạn có thể lập trình chúng hiệu quả. Wikipedia là một nơi tuyệt vời để bắt đầu.

+0

FPGA chắc chắn mất cấu hình của họ khi bạn tắt nguồn và phải tải lại nó từ bộ nhớ flash. Trong một số chip, bộ nhớ flash đó được tích hợp vào vải FPGA để nó có thể được tải nhanh hơn nhiều, chúng thường được gọi là CPLD. Ngoài ra các FPGA không có flip-flops và cổng logic, thay vào đó chúng có "các phần tử logic" của một hương vị hay cái khác bao gồm bảng tra cứu (về cơ bản là một khối RAM nhỏ) giống như một mạng nhỏ các cổng , đồng hồ và thiết lập lại đầu vào, và đầu ra từ LUT cả trước và sau khi đi qua một thanh ghi (D flip-flop). –

+0

Cảm ơn Ben, tôi đã xóa thông tin xấu khỏi câu trả lời của mình. –

4

Tôi muốn giới thiệu bảng Digilent Basys làm phần giới thiệu. Nó chỉ có 16 I/O bên ngoài, nhưng nó đã có RAM, USB, công tắc, nút, đèn LED, màn hình 7 phân đoạn, đầu nối VGA và đầu nối PS/2 trên bo mạch - Bạn không thể tìm thấy FPGA với ít hơn 40 chân I/O. Nếu bạn muốn I/O cho một dự án khác, hãy sử dụng Nexys để thay thế - Nhiều thiết bị ngoại vi hơn tôi quan tâm đến danh sách và cũng có bộ kết nối Hirose 43-pin tốc độ cao nếu bạn có dự án cần khoảng 40 kết nối.

Ngoài ra, hãy cân nhắc cách bạn muốn giao tiếp với PC của mình. Mục tiêu của bạn là tạo một hệ thống nhúng hay giao tiếp với máy tính thông qua kết nối PCI/Ethernet/USB?

Có, bạn có thể mua các bảng FPGA riêng biệt để sản xuất - Có một loạt các tùy chọn chóng mặt, mặc dù - Digikey có 5,300 tại thời điểm này. Bạn cần một số cách để chương trình FPGA, và một chip NVM trên bo mạch mà các chương trình FPGA khởi động là một lựa chọn phổ biến. Tuy nhiên, bạn nên bắt đầu với một hội đồng phát triển được hỗ trợ tốt và đã có một lập trình viên, toolchain và mô phỏng có sẵn trước khi bạn nhận được quá xa vào việc thiết kế bảng của bạn hoặc lo lắng về cách lưu chương trình của bạn vào chip. Đó là những điều tốt để biết, nhưng họ không phải là điều bạn muốn lo lắng ngay bây giờ. Chúc may mắn!

Các vấn đề liên quan