PYFPGA هو فئة Python لتطوير FPGA المستقلة . يسمح باستخدام ملف مشروع واحد وتنفيذ التوليف والتنفيذ وتوليد BitStream و/أو النقل إلى اللوحات المدعومة بشكل برمجي .
قم بإنشاء أداة FPGA المخصصة باستخدام سير عمل مصمم حسب احتياجاتك!
تحذير: (2022-05-15) PYFPGA بصدد إعادة كتابته/تبسيط بقوة. معظم التغييرات داخلية ، لكن API (فئة
Project
) ستتغير.
مثال أدنى على كيفية استخدام PYFPGA:
from fpga import Project
# Specify the backend tool and an optional project name
prj = Project ( 'vivado' , 'example' )
# Set the device/part
prj . set_part ( 'xc7z010-1-clg400' )
# Add HDL sources to the project
prj . add_files ( 'location1/*.v' )
prj . add_files ( 'location2/top.v' )
# Optionally add constraint files to the project
prj . add_files ( 'location3/example.xdc' )
# Set the top-level unit name
prj . set_top ( 'Top' )
# Generate the bitstream running the tool
prj . generate ()
الآن ، يمكنك قراءة المستندات أو العثور على المزيد من الأمثلة في أمثلة فرعية.
توفر واجهة برمجة التطبيقات التي تنفذها Project class
:
PYFPGA هي حزمة Python 3 ، تم تطويرها على Debian GNU/Linux. يجب أن يعمل على أي نظام تشغيل متوافق مع POSIX آخر وربما أيضًا على نظام تشغيل مختلف. إذا حققت إما نجاح الفشل على الأنظمة غير البسيطة ، فيرجى إخبارنا من خلال متتبع القضية.
--synth
) بتحويل مصادر VHDL إلى Netlist VHDL 1993.ghdl-yosys-plugin
) ويدعم تنسيقات الإخراج المتعددة: JSON ، Verilog ، EDIF ، إلخ.ملحوظات:
يتطلب pyfpga python >=3.6
. في الوقت الحالي ، لا يتوفر سوى مستودع GIT الذي تم استضافته على Github. يمكن تثبيته مع PIP:
pip install 'git+https://github.com/PyFPGA/pyfpga#egg=pyfpga'
على GNU/Linux ، يتطلب تثبيت حزم PIP على النظام
sudo
. بدلاً من ذلك ، استخدم--local
لتثبيت PYFPGA في منزلك.
يمكنك الحصول على نسخة من المستودع إما من خلال استنساخ git أو تنزيل Tarball/Zipfile:
git clone https://github.com/PyFPGA/pyfpga.git
cd pyfpga
ثم ، استخدم PIP من جذر الريبو:
pip install -e .
مع
-e
(--editable
) ، يتم تثبيت تطبيقك في حزم الموقع عبر نوع من الارتباط. يتيح ذلك سحب التغييرات من خلال git أو تغيير الفرع ، دون الحاجة إلى إعادة تثبيت الحزمة.