เมื่อสัปดาห์ที่แล้ว มีการประกาศโดย W. Clifford ผู้ซึ่งเปิดตัวเวอร์ชันใหม่ 0.8 ของ Yosys
สำหรับผู้ที่ไม่เคยได้ยินเกี่ยวกับ Yosys ฉันสามารถบอกคุณได้ว่า eนี่คือกรอบสำหรับเครื่องมือสังเคราะห์ RTL. ปัจจุบันนับ ด้วยความเข้ากันได้ของ Verilog ในวงกว้าง และจัดเตรียมชุดขั้นตอนวิธีการสังเคราะห์พื้นฐานสำหรับโดเมนแอปพลิเคชันต่างๆ
หลายสิ่งได้ถูกเพิ่มเข้ามาในรุ่นใหม่นี้แต่ข้อมูลหลักที่สามารถเห็นได้ในบันทึกประจำรุ่นคือการพัฒนาของ Yosys นั้นมีการใช้งานมาก
เป้าหมายของ Yosys ในการเป็น "มีด Swiss Army ฟรี" ของ FPGA ถือได้ว่าแทบจะขาดไม่ได้ในปัจจุบัน
เกี่ยวกับ Yosys Open SYnthesis Suite
โยซิส สามารถปรับให้เข้ากับงานสังเคราะห์ใด ๆ โดยการรวมบัตรที่มีอยู่ (อัลกอริทึม) โดยใช้สคริปต์การสังเคราะห์และเพิ่มการส่งผ่านเพิ่มเติมตามความจำเป็นเมื่อขยายฐานรหัส Yosys C ++
Yosys เป็นซอฟต์แวร์เสรีที่ได้รับอนุญาตภายใต้ใบอนุญาต ISC (ใบอนุญาตที่เป็นไปตาม GPL ซึ่งมีเงื่อนไขคล้ายกับใบอนุญาต MIT หรือใบอนุญาต BSD 2 ข้อ)
ในกระบวนการพัฒนา FPGA / ASIC การสังเคราะห์เป็นขั้นตอนของการแปลงแบบจำลองฮาร์ดแวร์จำลองเป็น "RTL netlist" ซึ่งจะได้วงจรจริง
เกี่ยวกับ Verilog
Verilog คือ Hardware Modeling Language (Hardware Description Language HDL) สำหรับอธิบายการจำลองวงจรดิจิทัล
แบบจำลอง Verilog นี้ทำหน้าที่เป็นข้อกำหนดสำหรับการทำให้เป็นจริง "ทางกายภาพ" ของส่วนประกอบที่จำลอง
การสังเคราะห์ HDL สามารถมองได้ว่าเป็นการแปลงรหัส HDL ให้เป็น "โครงร่างอิเล็กทรอนิกส์" ซึ่งประกอบด้วยส่วนประกอบดิจิทัลที่เชื่อมต่อกัน สิ่งนี้เรียกว่า "RTL Network List" (Log Transfer Level)
Yosys ไม่ใช่ซอฟต์แวร์ฟรีเพียงตัวเดียวสำหรับการสังเคราะห์ Verilog (เราสามารถนึกถึงการใช้ ODIN II ในชุดซอฟต์แวร์ VTR)
แต่ไม่ต้องสงสัยเลยว่าซอฟต์แวร์ฟรีเป็นซอฟต์แวร์ที่ได้รับการพูดถึงล่าสุดและมีการพัฒนาที่มีการใช้งานมากที่สุด
ในความเป็นจริง ตอนนี้ Yosys ตั้งเป้าไปที่ FPGA ราคาถูกมากมายเช่น CoolRunner-II, ECP5, MAX10, Cyclone IV และโดยเฉพาะ ICE40
ICE40 มีความพิเศษเล็กน้อยในรายการเนื่องจาก FPGA นี้ได้เปิดตัวเครือข่ายการพัฒนาทั้งหมดแล้ว
แน่นอน เราสามารถทำการสังเคราะห์ Verilog ได้เนื่องจาก FPGA เข้ากันได้กับ Yosysแต่ยังรวมถึงตำแหน่งการกำหนดเส้นทางด้วย arachnepnr เช่นเดียวกับการสร้างไฟล์การกำหนดค่า (bitstream) ด้วย icepack / iceprog
นอกจากนี้ยังสามารถตรวจสอบเวลาด้วย icetime
เกี่ยวกับ Yosys เวอร์ชันใหม่
- ในการเปิดตัว Yosys ใหม่นี้ได้มีการประกาศฟังก์ชันใหม่ซึ่งสามารถไฮไลต์ดังต่อไปนี้:
- ภาษา FIRRTL ที่ใช้โดย Chisel3 เป็นแบ็กเอนด์ที่เป็นไปได้ในการสร้าง netlist
- การสนับสนุนกลไกการตรวจสอบอย่างเป็นทางการของ yosys-smtb ถือได้ว่ามีเสถียรภาพ
- รายการ FPGA ที่รองรับ (และ ASIC อื่น ๆ ) นั้นยาวอย่างสิ้นหวัง
- เช่นเดียวกับรูปแบบ« netlist »ที่อนุญาตให้รวมเข้ากับซอฟต์แวร์ที่เป็นกรรมสิทธิ์ของผู้ก่อตั้ง: BLIF, EDIF, BTOR, SMT-LIB, RTL Verilog, FIRRTL
จะติดตั้ง Yosys บน Linux ได้อย่างไร?
สำหรับใคร สนใจที่จะลองใช้เครื่องมือนี้พวกเขาสามารถทำการติดตั้งบนระบบของพวกเขาได้ ในการดำเนินการนี้ต้องปฏิบัติตามคำแนะนำที่เราแบ่งปันด้านล่าง
ไปยัง ผู้ที่เป็นผู้ใช้ Ubuntu และอนุพันธ์ของมันสามารถเพลิดเพลินกับการติดตั้งที่เรียบง่าย. ซึ่งสามารถทำได้โดยการเพิ่มที่เก็บต่อไปนี้ในระบบของคุณ
ก่อนอื่นเราต้องเปิดเทอร์มินัลด้วย Ctrl + ALT + T และดำเนินการคำสั่งต่อไปนี้:
sudo add-apt-repository ppa:saltmakrell/ppa
เสร็จแล้วเราต้องอัปเดตรายการแพ็คเกจและที่เก็บของเราด้วย:
sudo apt-get update
และในที่สุดเราก็ติดตั้งแอปพลิเคชันด้วย:
sudo apt-get install yosys
สำหรับลินุกซ์ที่เหลือเราต้องคอมไพล์เครื่องมือ. สำหรับสิ่งนี้เราต้องโคลนซอร์สโค้ดของที่เก็บ GIT:
git clone https://github.com/cliffordwolf/yosys.git
กำหนดการตั้งค่าการสร้างด้วย:
make config-clang vi Makefile vi Makefile.conf
ในที่สุดสร้างทดสอบและติดตั้ง:
make make test sudo make install
เพื่อรับข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้รวมถึงสามารถค้นหาเอกสารเกี่ยวกับการใช้ Yosys คุณสามารถ ไปที่ลิงค์ต่อไปนี้