ตัวอย่างการออกแบบ I/O ที่แตกต่างด้วยความเร็วสูงของซอฟต์แวร์ Quartus® II ประกอบด้วยสามเมกะฟังก์ชัน:
- ตัวรับสัญญาณ LVDS (altlvds_rx)
- ตัวคูณ (lpm_mult)
- ตัวส่งสัญญาณ LVDS (altlvds_tx)
โมดูลตัวรับสัญญาณ LVDS ตัวคูณ และตัวส่งสัญญาณ LVDS ถูกสร้างขึ้นโดยใช้ปลั๊กอิน Quartus® II software MegaWizard® โดยเชื่อมต่อกันตามที่แสดงไว้ในรูปภาพที่ 1 ซึ่งแสดงถึงประสิทธิภาพของ:
- การแปลงข้อมูลซีเรียล 840 เมกะบิตต่อวินาที (Mbps) เป็นข้อมูลขนาน 8 บิตโดยใช้altlvds_rx
- การคูณข้อมูลแบบขนาน 8 บิตสองตัวโดยใช้lpm_mult
- การแปลงข้อมูลแบบขนานที่ออกจากตัวคูณให้เป็นข้อมูลซีเรียลโดยใช้ altlvds_tx
ตัวคูณจะถูกนําไปใช้ในบล็อกการประมวลผลสัญญาณดิจิทัล (DSP) เฉพาะภายในอุปกรณ์ Intel® Stratix® แรงจูงใจที่อยู่เบื้องหลังตัวอย่างนี้คือการแสดงการแปลงข้อมูล การทดสอบถูกสร้างขึ้นใน Verilog และการจําลองโดยใช้เครื่องมือ ModelSim*-Intel® FPGA
ดาวน์โหลดไฟล์ที่ใช้ในตัวอย่างนี้:
การใช้การออกแบบนี้อยู่ภายใต้และอยู่ภายใต้ข้อกําหนดและเงื่อนไขของข้อตกลงสิทธิ์การใช้งานตัวอย่างการออกแบบของ Intel®
ตารางที่ 1 ไฟล์ที่รวมอยู่ใน diff_io_top.zip
คําอธิบาย | ไฟล์ไดเรกทอรี||
---|---|---|
SRC | diff_io_top.v lvds_rx.v mult.v lvds_tx.v |
ไฟล์การออกแบบระดับสูงที่สร้างอินสแตนซ์ของตัวรับสัญญาณ ตัวคูณ และตัวส่งสัญญาณ ตัวรับสัญญาณ LVDS ที่สร้างขึ้นโดยปลั๊กอิน MegaWizard ตัวคูณ 8 บิตที่สร้างขึ้นโดยปลั๊กอิน MegaWizard ตัวส่งสัญญาณ LVDS ที่สร้างขึ้นโดยปลั๊กอิน MegaWizard |
Sim | testbench.y diff_io_top.vo diff_io_top.sdo comp_altera_lib.do comp_gate.do gate_sim.do ไลบรารีStratix |
สร้างอินสแตนซ์โมดูลระดับบนสุดและประกอบด้วยเวกเตอร์ทดสอบ Verilog netlist ที่สร้างขึ้นโดยซอฟต์แวร์ Quartus II เพื่อใช้กับเครื่องมือ ModelSim ไฟล์กําหนดเวลา SDF ที่สร้างขึ้นโดยซอฟต์แวร์ Quartus II สคริปต์เพื่อคอมไพล์ไลบรารี Stratix สคริปต์เพื่อคอมไพล์ testbench และเน็ตลิสต์ระดับเกต สคริปต์เพื่อเรียกใช้งานการออกแบบในเครื่องมือ ModelSim แบบจําลองที่คอมไพล์ ModelSim |
ตารางที่ 2 รายการตัวอย่างพอร์ตการออกแบบ I/O ที่แตกต่างความเร็วสูง
คําอธิบาย | ประเภท | ชื่อพอร์ต |
---|---|---|
rx_in[0] | อินพุต | ข้อมูลไบนารีอินพุตซีเรียลแบบไม่มีการรับรอง 1 บิต |
rx_in[1] | อินพุต | ข้อมูลไบนารีอินพุตซีเรียลแบบไม่มีการรับรอง 1 บิต |
rx_inclock | อินพุต | สัญญาณนาฬิกาอินพุตกับความถี่ 105 MHz |
tx_out[0] | ผลลัพธ์ | ข้อมูลไบนารีเอาต์พุตซีเรียลที่ไม่มีการรับรองขนาด 1 บิต |
tx_out[1] | ผลลัพธ์ | ข้อมูลไบนารีเอาต์พุตซีเรียลที่ไม่มีการรับรองขนาด 1 บิต |
tx_outclock | ผลลัพธ์ | เอาต์พุตสัญญาณนาฬิกาจากลูปที่ล็อคเฟส (PLL) พร้อมความถี่ 105 MHz |
การจําลองการออกแบบ
- เรียกใช้เครื่องมือ ModelSim* 5.6c
- เปลี่ยนไดเรกทอรีเป็นตําแหน่งที่มีไฟล์การจําลองอยู่
- แหล่งที่มาของสคริปต์ gate_sim.do โดยใช้คําสั่ง: VSIM > do gate_sim.do
ผลของการคูณจะปรากฏหลังจาก 180 ns
ลิงก์ที่เกี่ยวข้อง
สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ตัวอย่างนี้ในโครงการของคุณ ให้ไปที่: