ตัวอย่างการออกแบบนี้สาธิตวิธีโหลดค่าสัมประสิทธิ์ใหม่จากไฟล์เมื่อใช้ฟังก์ชัน IP MegaCore ของคอมไพเลอร์ finite Impulse Response (FIR) FIR Compiler มอบความยืดหยุ่นในการเปลี่ยนค่าสัมประสิทธิ์ในขณะใช้งาน ในขณะที่ FIR Compiler กําลังประมวลผลข้อมูลด้วยค่าสัมประสิทธิ์หนึ่งชุด แต่คุณสามารถโหลดอีกชุดใหม่ได้โดยไม่กระทบต่อการประมวลผลคอร์
เพื่อเพิ่มประสิทธิภาพของซิลิคอน ค่าสัมประสิทธิ์จะไม่ถูกจัดเก็บตามลําดับตามธรรมชาติ ตัวอย่างนี้อธิบายถึงขั้นตอนการจัดตั้งค่าสัมประสิทธิ์ใหม่โดยใช้ไฟล์ปฏิบัติการ coef_seq.exeที่คอมไพล์ไว้ล่วงหน้า ตัวกรองใช้ค่าสัมประสิทธิ์สี่ชุด: Low Pass, High Pass, Band Pass และตัวกรองการปฏิเสธแบนด์ สองตัวแรกมีพารามิเตอร์ใน IP Toolbench สองตัวหลังต้องถูกโหลดใหม่ในขณะทํางานและต้องจัดลําดับล่วงหน้า Testbench ที่ให้มาแสดงให้คุณเห็นวิธีการตั้งค่าการควบคุมเพื่อโหลดค่าสัมประสิทธิ์ใหม่เพื่อให้เป็นไปตามข้อกําหนดการกําหนดเวลา
ดาวน์โหลดไฟล์ที่ใช้ในตัวอย่างนี้:
- ดาวน์โหลดไฟล์ตัวอย่างการออกแบบการโหลดสัมประสิทธิ์ FIR (เวอร์ชั่น 91)
- ดาวน์โหลดไฟล์ README เพื่อโหลดค่าสัมประสิทธิ์ FIR (เวอร์ชั่น 91)
การใช้การออกแบบนี้อยู่ภายใต้และอยู่ภายใต้ข้อกําหนดและเงื่อนไขของข้อตกลงสิทธิ์การใช้งานตัวอย่างการออกแบบของ Intel®
ไฟล์ในการดาวน์โหลด zip ประกอบด้วย:
- fir91.v - ไฟล์ห่อคอมไพเลอร์ FIR
- coef_reload_tb.v - ไฟล์ Testbench
- coef_reload_msim.tcl - สคริปต์ Tcl สําหรับการรันการจําลองการทํางานโดยใช้เครื่องมือ ModelSim*
- coef_seq.exe - ไฟล์ปฏิบัติการของ Windows ที่จัดแนวสัมประสิทธิ์ใหม่
ตารางที่ 1 รายการพอร์ตคอมไพเลอร์ FIR
ชื่อพอร์ต |
ชนิด |
คำ อธิบาย |
---|---|---|
CLK |
อินพุต |
สัญญาณนาฬิกา |
reset_n |
อินพุต |
สัญญาณรีเซ็ตต่ําที่ทํางานอยู่ซิงโครนัส |
sink_data[15:0] |
อินพุต |
ข้อมูลอินพุตตัวอย่าง |
coef_set |
อินพุต |
เลือกชุดสัมประสิทธิ์ชุดใดที่ใช้สําหรับการคํานวณ |
sink_valid |
อินพุต |
ระบุเมื่อข้อมูลป้อนเข้าถูกต้อง |
source_ready |
อินพุต |
ระบุด้วยโมดูลดาวน์สตรีมหากสามารถยอมรับข้อมูลได้ |
sink_error[1:0] |
อินพุต |
สัญญาณข้อผิดพลาดที่ระบุการละเมิดโปรโตคอลAvalon ®-ST ในด้านอ่างล้างจาน |
coef_set_in |
อินพุต |
เลือกว่าจะโหลดค่าสัมประสิทธิ์ชุดใด |
coef_we |
อินพุต |
สัญญาณเปิดใช้งานการเขียนสูงที่เปิดใช้งานอยู่ |
coef_in[18:0] |
อินพุต |
ค่าสัมประสิทธิ์อินพุตเมื่อโหลดสัมประสิทธิ์ใหม่ |
source_data[37:0] |
ผลลัพธ์ |
เอาต์พุตตัวกรอง |
sink_ready |
ผลลัพธ์ |
ระบุด้วยตัวกรอง FIR เมื่อสามารถยอมรับข้อมูลได้ |
source_valid |
ผลลัพธ์ |
ระบุด้วยตัวกรอง FIR เมื่อมีข้อมูลที่ถูกต้องที่จะส่งออก |
source_error[1:0] |
ผลลัพธ์ |
สัญญาณข้อผิดพลาดที่ระบุการละเมิดโปรโตคอลAvalon ®-ST ในด้านต้นทาง |
ตารางที่ 2 พารามิเตอร์ FIR Compiler
พารามิเตอร์ FIR |
ค่า |
---|---|
อัตราการกรอง |
เดียว |
จํานวนช่องสัญญาณอินพุต |
1 |
บิตวิดธ์อินพุต |
16 |
บิตวิดธ์เอาต์พุต |
38 (ความละเอียดเต็มรูปแบบ) |
บิตวิดธ์สัมประสิทธิ์ |
16 |
จํานวนชุดสัมประสิทธิ์ |
2 |
จํานวนสัมประสิทธิ์ในแต่ละชุด |
37 |
ตระกูลอุปกรณ์ |
Stratix® IV |
โครง สร้าง |
DA: ฟิลเตอร์แบบขนานเต็มรูปแบบ |
ระดับไปป์ไลน์ |
1 |
อุปกรณ์จัดเก็บข้อมูล |
เซลล์ลอจิก |
อุปกรณ์จัดเก็บข้อมูลสัมประสิทธิ์ |
M512 |
กล่องรีโหลดสัมประสิทธิ์ |
ตรวจ สอบ |
ใช้กล่องนาฬิกาเดี่ยว |
ตรวจ สอบ |