UG0644 DDR AXI อนุญาโตตุลาการ
ข้อมูลสินค้า
DDR AXI Arbiter เป็นส่วนประกอบฮาร์ดแวร์ที่ให้
อินเทอร์เฟซหลัก AXI 64 บิตไปยังคอนโทรลเลอร์ DDR-SDRAM บนชิป
โดยทั่วไปจะใช้ในแอปพลิเคชันวิดีโอสำหรับการบัฟเฟอร์และ
การประมวลผลข้อมูลพิกเซลวิดีโอ คู่มือผู้ใช้ผลิตภัณฑ์มีให้
ข้อมูลโดยละเอียดและคำแนะนำเกี่ยวกับการใช้งานฮาร์ดแวร์
การจำลองสถานการณ์และการใช้ทรัพยากร
การติดตั้งฮาร์ดแวร์
DDR AXI Arbiter ออกแบบมาเพื่อเชื่อมต่อกับ DDR-SDRAM
ตัวควบคุมบนชิป มีอินเทอร์เฟซหลัก AXI 64 บิต
ซึ่งทำให้สามารถประมวลผลข้อมูลพิกเซลวิดีโอได้อย่างรวดเร็ว ผู้ใช้ผลิตภัณฑ์
คู่มือให้คำอธิบายการออกแบบโดยละเอียดของ DDR AXI
Arbiter และการใช้งานฮาร์ดแวร์
การจำลอง
คู่มือผู้ใช้ผลิตภัณฑ์ให้คำแนะนำเกี่ยวกับการจำลอง
DDR AXI Arbiter โดยใช้เครื่องมือ MSS SmartDesign และ Testbench เหล่านี้
เครื่องมือช่วยให้ผู้ใช้สามารถตรวจสอบความถูกต้องของการออกแบบและ
ตรวจสอบการทำงานที่เหมาะสมของส่วนประกอบฮาร์ดแวร์
การใช้ทรัพยากร
DDR AXI Arbiter ใช้ทรัพยากรระบบ เช่น ลอจิก
เซลล์ บล็อกหน่วยความจำ และทรัพยากรการกำหนดเส้นทาง ผู้ใช้ผลิตภัณฑ์
คู่มือจัดทำรายงานการใช้ทรัพยากรโดยละเอียดซึ่ง
สรุปข้อกำหนดด้านทรัพยากรของ DDR AXI Arbiter นี้
สามารถใช้ข้อมูลเพื่อให้แน่ใจว่าส่วนประกอบฮาร์ดแวร์สามารถ
นำไปใช้ภายในทรัพยากรระบบที่มีอยู่
คำแนะนำการใช้ผลิตภัณฑ์
คำแนะนำต่อไปนี้ให้คำแนะนำเกี่ยวกับวิธีใช้
ผู้ตัดสิน DDR AXI:
ขั้นตอนที่ 1: การติดตั้งฮาร์ดแวร์
ใช้ส่วนประกอบฮาร์ดแวร์ DDR AXI Arbiter กับอินเทอร์เฟซ
ด้วยคอนโทรลเลอร์บนชิป DDR-SDRAM ทำตามการออกแบบ
คำอธิบายที่ให้ไว้ในคู่มือผู้ใช้ผลิตภัณฑ์เพื่อให้แน่ใจว่าเหมาะสม
การใช้งานส่วนประกอบฮาร์ดแวร์
ขั้นตอนที่ 2: การจำลอง
จำลองการออกแบบ DDR AXI Arbiter โดยใช้ MSS SmartDesign และ
เครื่องมือทดสอบ ปฏิบัติตามคำแนะนำที่ให้ไว้ในผลิตภัณฑ์
คู่มือผู้ใช้เพื่อตรวจสอบความถูกต้องของการออกแบบและทำให้มั่นใจ
การทำงานที่เหมาะสมของส่วนประกอบฮาร์ดแวร์
ขั้นตอนที่ 3: การใช้ทรัพยากร
Review รายงานการใช้ทรัพยากรที่มีให้ในผลิตภัณฑ์
คู่มือผู้ใช้เพื่อกำหนดความต้องการทรัพยากรของ DDR AXI
ผู้ตัดสิน ตรวจสอบให้แน่ใจว่าสามารถนำส่วนประกอบฮาร์ดแวร์ไปใช้ได้
ภายในทรัพยากรระบบที่มีอยู่
เมื่อปฏิบัติตามคำแนะนำเหล่านี้ คุณจะสามารถใช้ DDR ได้อย่างมีประสิทธิภาพ
ส่วนประกอบฮาร์ดแวร์ AXI Arbiter สำหรับการบัฟเฟอร์ข้อมูลพิกเซลวิดีโอและ
การประมวลผลในแอปพลิเคชันวิดีโอ
คู่มือผู้ใช้ UG0644
ผู้ตัดสิน DDR AXI
กุมภาพันธ์ 2018
ผู้ตัดสิน DDR AXI
เนื้อหา
1 ประวัติการแก้ไข…………………………………………………………………………………………………………….. 1
1.1 การแก้ไข 5.0 ………………………………………………………………………………………. 1 1.2 การแก้ไข 4.0 ………………………………………………………………………………………………………………………. 1 1.3 การแก้ไข 3.0 ………………………………………………………………………………………………………………………. 1 1.4 การแก้ไข 2.0 ………………………………………………………………………………………………………………………. 1 1.5 การแก้ไข 1.0 ………………………………………………………………………………………………………………………. 1
2 บทนำ ………………………………………………………………………………………………………………….. 2 3 ฮาร์ดแวร์ การนำไปใช้………………………………………………………………………………………………3
3.1 คำอธิบายการออกแบบ ……………………………………………………………………………………………………………… 3 3.2 อินพุตและเอาต์พุต …………………………………………………………………………………………………………….. 5 3.3 พารามิเตอร์การกำหนดค่า ……… …………………………………………………………………………………………. 13 3.4 แผนภาพเวลา ………………………………………………………………………………. 14 3.5 โต๊ะทดสอบ …………………………………………………………………………………………….. 16
3.5.1 การจำลอง MSS SmartDesign …………………………………………………………………………………………………. 25 3.5.2 โต๊ะทดสอบจำลอง ……………………………………………………………………………. 30 3.6 การใช้ทรัพยากร ………………………………………………………………………….. 31
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
ผู้ตัดสิน DDR AXI
1
ประวัติการแก้ไข
ประวัติการแก้ไขจะอธิบายการเปลี่ยนแปลงที่เกิดขึ้นในเอกสาร โดยจะแสดงรายการการเปลี่ยนแปลงตามการแก้ไข โดยเริ่มจากการเผยแพร่ครั้งล่าสุด
1.1
การแก้ไขครั้งที่ 5.0
ในการแก้ไข 5.0 ของเอกสารนี้ ส่วนการใช้ทรัพยากรและรายงานการใช้ทรัพยากร
ได้รับการปรับปรุง สำหรับข้อมูลเพิ่มเติม โปรดดูที่ การใช้ทรัพยากร (ดูหน้า 31)
1.2
การแก้ไขครั้งที่ 4.0
ต่อไปนี้เป็นบทสรุปของการเปลี่ยนแปลงในฉบับปรับปรุง 4.0 ของเอกสารนี้
เพิ่มพารามิเตอร์การกำหนดค่า testbench ในตาราง สำหรับข้อมูลเพิ่มเติม โปรดดู Configuration Parameters (ดูหน้า 16) เพิ่มข้อมูลเพื่อจำลองคอร์โดยใช้ testbench สำหรับข้อมูลเพิ่มเติม โปรดดูที่ Testbench (ดูหน้า 16) อัปเดตการใช้ทรัพยากรสำหรับค่า DDR AXI Arbiter ในตาราง สำหรับข้อมูลเพิ่มเติม โปรดดูที่ การใช้ทรัพยากร (ดูหน้า 31)
1.3
การแก้ไขครั้งที่ 3.0
ต่อไปนี้เป็นบทสรุปของการเปลี่ยนแปลงในฉบับปรับปรุง 3.0 ของเอกสารนี้
เพิ่มข้อมูล 8 บิตสำหรับเขียนแชนเนล 1 และ 2 สำหรับข้อมูลเพิ่มเติม โปรดดูคำอธิบายการออกแบบ (ดูหน้า 3) อัปเดตส่วน Testbench สำหรับข้อมูลเพิ่มเติม โปรดดูที่ Testbench (ดูหน้า 16)
1.4
การแก้ไขครั้งที่ 2.0
ในการแก้ไข 2.0 ของเอกสารนี้ ตัวเลขและตารางในเอกสารได้รับการปรับปรุงในส่วน Testbench
สำหรับข้อมูลเพิ่มเติม โปรดดูที่ Testbench (ดูหน้า 16)
1.5
การแก้ไขครั้งที่ 1.0
การแก้ไข 1.0 เป็นการเผยแพร่ครั้งแรกของเอกสารนี้
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
1
ผู้ตัดสิน DDR AXI
2
การแนะนำ
ความทรงจำเป็นส่วนสำคัญของแอปพลิเคชันวิดีโอและกราฟิกทั่วไป ใช้สำหรับการบัฟเฟอร์ข้อมูลพิกเซลวิดีโอ บัฟเฟอร์ทั่วไปหนึ่งรายการample คือดิสเพลย์เฟรมบัฟเฟอร์ซึ่งข้อมูลพิกเซลวิดีโอทั้งหมดสำหรับเฟรมจะถูกบัฟเฟอร์ในหน่วยความจำ
อัตราข้อมูลคู่ (DDR)-synchronous DRAM (SDRAM) เป็นหนึ่งในหน่วยความจำที่ใช้กันทั่วไปในแอปพลิเคชันวิดีโอสำหรับการบัฟเฟอร์ SDRAM ถูกใช้เนื่องจากความเร็วซึ่งจำเป็นสำหรับการประมวลผลที่รวดเร็วในระบบวิดีโอ
รูปต่อไปนี้แสดง exampไฟล์ไดอะแกรมระดับระบบของหน่วยความจำ DDR-SDRAM ที่เชื่อมต่อกับแอปพลิเคชันวิดีโอ
รูปที่ 1 · การเชื่อมต่อหน่วยความจำ DDR-SDRAM
ใน Microsemi SmartFusion®2 System-on-Chip (SoC) มีคอนโทรลเลอร์ DDR บนชิปสองตัวที่มีอินเทอร์เฟซแบบขยายขั้นสูง (AXI) 64 บิตและอินเทอร์เฟซสลาฟบัสประสิทธิภาพสูงขั้นสูง (AHB) ขั้นสูง 32 บิตไปยังฟิลด์ที่ตั้งโปรแกรมได้ ผ้าเกทอาร์เรย์ (FPGA) ต้องใช้อินเทอร์เฟซหลัก AXI หรือ AHB เพื่ออ่านและเขียนหน่วยความจำ DDR-SDRAM ที่เชื่อมต่อกับคอนโทรลเลอร์ DDR บนชิป
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
2
ผู้ตัดสิน DDR AXI
3
การติดตั้งฮาร์ดแวร์
3.1
คำอธิบายการออกแบบ
DDR AXI Arbiter ให้อินเทอร์เฟซหลัก AXI 64 บิตกับคอนโทรลเลอร์ DDR-SDRAM บนชิปของ
อุปกรณ์ SmartFusion2 DDR AXI Arbiter มีสี่ช่องสำหรับอ่านและสองช่องสำหรับเขียนไปยัง
ตรรกะของผู้ใช้ บล็อกตัดสินระหว่างสี่ช่องทางการอ่านเพื่อให้การเข้าถึงการอ่าน AXI
ช่องทางแบบวนรอบ ตราบใดที่คำขออ่านของมาสเตอร์ช่อง 1 นั้นสูง AXI
ช่องการอ่านถูกจัดสรรให้กับมัน อ่านช่อง 1 มีความกว้างของข้อมูลขาออกคงที่ 24 บิต อ่านช่อง 2, 3,
และ 4 สามารถกำหนดค่าเป็นความกว้างเอาต์พุตข้อมูล 8 บิต 24 บิต หรือ 32 บิต สิ่งนี้ถูกเลือกโดยทั่วโลก
พารามิเตอร์การกำหนดค่า
บล็อกยังตัดสินระหว่างสองช่องทางการเขียนเพื่อให้การเข้าถึงช่องทางการเขียน AXI ในลักษณะปัดเศษ ช่องเขียนทั้งสองมีลำดับความสำคัญเท่ากัน ช่องการเขียน 1 และ 2 สามารถกำหนดค่าเป็นความกว้างของข้อมูลอินพุต 8 บิต 24 บิต หรือ 32 บิต
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
3
ผู้ตัดสิน DDR AXI
รูปภาพต่อไปนี้แสดงไดอะแกรม pin-out ระดับบนสุดของ DDR AXI Arbiter รูปที่ 2 · บล็อกไดอะแกรมระดับบนสุดของ DDR AXI Arbiter Block
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
4
ผู้ตัดสิน DDR AXI
รูปภาพต่อไปนี้แสดงแผนภาพบล็อกระดับบนสุดของระบบที่มีบล็อก DDR AXI Arbiter ที่พอร์ตไปยังอุปกรณ์ SmartFusion2 รูปที่ 3 · แผนภาพบล็อกระดับระบบของ DDR AXI Arbiter บนอุปกรณ์ SmartFusion2
3.2
อินพุตและเอาต์พุต
ตารางต่อไปนี้แสดงรายการพอร์ตอินพุตและเอาต์พุตของ DDR AXI Arbiter
ตารางที่ 1 · พอร์ตอินพุตและเอาต์พุตของ DDR AXI Arbiter
ชื่อสัญญาณ RESET_N_I
อินพุตทิศทาง
ความกว้าง
SYS_CLOCK_I BUFF_READ_CLOCK_I
อินพุตอินพุต
rd_req_1_i rd_ack_o
อินพุตเอาต์พุต
rd_done_1_o start_read_addr_1_i
อินพุตเอาต์พุต
ไบต์_to_read_1_i
ป้อนข้อมูล
video_rdata_1_o
เอาท์พุต
[(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL1_AXI_BUFF_ AWIDTH + 3) – 1 : 0] [(g_RD_CHANNEL1_VIDEO_DATA_WIDTH1):0]คำอธิบาย
สัญญาณรีเซ็ตแบบอะซิงโครนัสต่ำแบบแอคทีฟเพื่อการออกแบบ
นาฬิการะบบ
นาฬิกาอ่านบัฟเฟอร์ภายในของช่องเขียนต้องเป็นสองเท่าของความถี่ SYS_CLOCK_I
อ่านคำขอจากอาจารย์ 1
อนุญาโตตุลาการรับทราบเพื่ออ่านคำขอจากท่านอาจารย์ 1
อ่านจบโท1
ที่อยู่ DDR จากตำแหน่งที่อ่านจะต้องเริ่มต้นสำหรับการอ่านช่อง 1
ไบต์ที่จะอ่านออกจากช่องอ่านที่ 1
เอาต์พุตข้อมูลวิดีโอจากช่องอ่าน 1
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
5
ผู้ตัดสิน DDR AXI
ชื่อสัญญาณ rdata_valid_1_o rd_req_2_i rd_ack_2_o
rd_done_2_o start_read_addr_2_i
ไบต์_to_read_2_i
video_rdata_2_o
rdata_valid_2_o rd_req_3_i rd_ack_3_o
rd_done_3_o start_read_addr_3_i
ไบต์_to_read_3_i
video_rdata_3_o
rdata_valid_3_o rd_req_4_i rd_ack_4_o
rd_done_4_o start_read_addr_4_i
ไบต์_to_read_4_i
video_rdata_4_o
rdata_valid_4_o wr_req_1_i wr_ack_1_o
wr_done_1_o start_write_addr_1_i
ไบต์_to_write_1_i
video_wdata_1_i
wdata_valid_1_i wr_req_2_i
ทิศทาง เอาต์พุต อินพุต เอาต์พุต
อินพุตเอาต์พุต
ป้อนข้อมูล
เอาท์พุต
เอาต์พุต อินพุต เอาต์พุต
อินพุตเอาต์พุต
ป้อนข้อมูล
เอาท์พุต
เอาต์พุต อินพุต เอาต์พุต
อินพุตเอาต์พุต
ป้อนข้อมูล
เอาท์พุต
เอาต์พุต อินพุต เอาต์พุต
อินพุตเอาต์พุต
ป้อนข้อมูล
ป้อนข้อมูล
อินพุตอินพุต
ความกว้าง
[(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL2_AXI_BUFF_AWIDTH + 3) – 1 : 0] [(g_RD_CHANNEL2_VIDEO_DATA_WIDTH1):0] [(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL3_AXI_BUFF_AWIDTH + 3) – 1 : 0] [(g_RD _CHANNEL3_VIDEO_DATA_WIDTH1 ):0] [(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL4_AXI_BUFF_AWIDTH + 3) – 1 : 0] [(g_RD_CHANNEL4_VIDEO_DATA_WIDTH1):0] [(g_AXI_AWIDTH-1):0] [(g_WR_CHANNEL1_AXI_BUFF_AWIDTH + 3) – 1 : 0 ] [(g_WR_CHANNEL1_VIDEO_DATA_WIDTH1):0]
คำอธิบาย อ่านข้อมูลที่ถูกต้องจากช่องอ่าน 1 อ่านคำขอจาก Master 2 Arbiter รับทราบเพื่ออ่านคำขอจาก Master 2 อ่านเสร็จสิ้นไปยังที่อยู่ Master 2 DDR จากตำแหน่งที่ต้องเริ่มอ่านสำหรับช่องอ่าน 2 ไบต์ที่จะอ่านออกจากช่องอ่าน 2 ข้อมูลวิดีโอ เอาต์พุตจากช่องอ่าน 2 อ่านข้อมูลที่ถูกต้องจากช่องอ่าน 2 อ่านคำขอจาก Master 3 Arbiter รับทราบเพื่ออ่านคำขอจาก Master 3 อ่านเสร็จสิ้นไปยังที่อยู่ Master 3 DDR จากที่การอ่านจะต้องเริ่มต้นสำหรับการอ่านช่อง 3 ไบต์ที่จะอ่านออกจากการอ่าน แชนเนล 3 ข้อมูลวิดีโอเอาต์พุตจากการอ่านแชนเนล 3 อ่านข้อมูลที่ถูกต้องจากการอ่านแชนเนล 3 อ่านคำขอจาก Master 4 Arbiter รับทราบเพื่ออ่านคำขอจาก Master 4 Read เสร็จสิ้นไปยัง Master 4 DDR address จากตำแหน่งที่ต้องอ่านเพื่อเริ่มต้นการอ่านแชนเนล 4 ไบต์ อ่านออกจากช่องอ่าน 4 เอาต์พุตข้อมูลวิดีโอจากช่องอ่าน 4 อ่านข้อมูลที่ถูกต้องจากช่องอ่าน 4 เขียนคำขอจาก Master 1 อนุญาโตตุลาการรับทราบเพื่อเขียนคำขอจาก Master 1 เขียนเสร็จสิ้นไปยังที่อยู่ Master 1 DDR ซึ่งการเขียนจะต้องเกิดขึ้นจากการเขียนช่อง 1 ไบต์ที่จะเขียนจากการเขียนช่อง 1 ข้อมูลวิดีโออินพุตเพื่อเขียนช่อง 1
เขียนข้อมูลที่ถูกต้องเพื่อเขียนช่อง 1 เขียนคำขอจาก Master 1
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
6
ผู้ตัดสิน DDR AXI
ชื่อสัญญาณ wr_ack_2_o
ทิศทางเอาต์พุต
wr_done_2_o start_write_addr_2_i
อินพุตเอาต์พุต
ไบต์_to_write_2_i
ป้อนข้อมูล
video_wdata_2_i
ป้อนข้อมูล
wdata_valid_2_i สัญญาณ AXI I/F อ่านช่องที่อยู่ m_arid_o
อินพุตเอาต์พุต
m_araddr_o
เอาท์พุต
m_arlen_o
เอาท์พุต
m_arsize_o m_arburst_o
เอาท์พุต เอาท์พุต
m_arlock_o
เอาท์พุต
m_arcache_o
เอาท์พุต
m_arprot_o
เอาท์พุต
ความกว้าง
[(g_AXI_AWIDTH-1):0] [(g_WR_CHANNEL2_AXI_BUFF_AWIDTH + 3) – 1 : 0] [(g_WR_CHANNEL2_VIDEO_DATA_WIDTH1):0]
คำอธิบาย การรับทราบโดยอนุญาโตตุลาการเพื่อเขียนคำขอจาก Master 2 เขียนเสร็จสิ้นไปยังที่อยู่ Master 2 DDR ซึ่งการเขียนจะต้องเกิดขึ้นจากการเขียนช่อง 2 ไบต์ที่จะเขียนจากการเขียนช่อง 2 ข้อมูลวิดีโออินพุตเพื่อเขียนช่อง 2
เขียนข้อมูลที่ถูกต้องในการเขียนช่อง 2
อ่านรหัสที่อยู่ บัตรประจำตัว tag สำหรับกลุ่มสัญญาณที่อยู่อ่าน
อ่านที่อยู่ ระบุที่อยู่เริ่มต้นของธุรกรรมแบบแยกส่วนการอ่าน มีเฉพาะที่อยู่เริ่มต้นของการระเบิดเท่านั้น
ความยาวระเบิด ระบุจำนวนการถ่ายโอนที่แน่นอนในหนึ่งชุด ข้อมูลนี้กำหนดจำนวนของการถ่ายโอนข้อมูลที่เกี่ยวข้องกับที่อยู่
ขนาดระเบิด ขนาดการถ่ายโอนแต่ละครั้งในการระเบิด
ประเภทระเบิด เมื่อรวมกับข้อมูลขนาดแล้ว ให้รายละเอียดวิธีคำนวณที่อยู่สำหรับการถ่ายโอนแต่ละครั้งภายในชุดต่อเนื่อง
แก้ไขเป็น 2'b01 à ที่อยู่ที่เพิ่มขึ้น
ประเภทล็อค ให้ข้อมูลเพิ่มเติมเกี่ยวกับลักษณะอะตอมของการถ่ายโอน
คงที่ 2'b00 à การเข้าถึงปกติ
ประเภทแคช ให้ข้อมูลเพิ่มเติมเกี่ยวกับคุณสมบัติแคชของการถ่ายโอน
แก้ไขเป็น 4'b0000 à ไม่สามารถแคชได้และไม่สามารถบัฟเฟอร์ได้
ประเภทการป้องกัน ให้ข้อมูลหน่วยป้องกันสำหรับการทำธุรกรรม
คงที่ 3'b000 à ปกติ การเข้าถึงข้อมูลที่ปลอดภัย
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
7
ผู้ตัดสิน DDR AXI
ชื่อสัญญาณ m_arvalid_o
ทิศทางเอาต์พุต
ความกว้าง
m_arready_i
ป้อนข้อมูล
อ่านช่องข้อมูล
m_rid_i
ป้อนข้อมูล
[3:0]m_rdata_i m_rresp_i
m_rlast_i m_rvalid_i
อินพุตอินพุต
[(g_AXI_DWIDTH-1):0] [1:0]อินพุตอินพุต
m_rready_o
เอาท์พุต
เขียนช่องที่อยู่
m_awid_o
เอาท์พุต
m_awaddr_o
เอาท์พุต
[3:0] [(g_AXI_AWIDTH-1):0]คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
คำอธิบาย อ่านที่อยู่ที่ถูกต้อง
เมื่อ สูง ที่อยู่ที่อ่านและข้อมูลการควบคุมนั้นถูกต้องและยังคงอยู่ในระดับสูงจนกว่าที่อยู่จะรับทราบสัญญาณ m_arready จะสูง
`1′ = ที่อยู่และข้อมูลควบคุมถูกต้อง
`0′ = ที่อยู่และข้อมูลการควบคุมไม่ถูกต้อง อ่านที่อยู่ให้พร้อม ทาสพร้อมที่จะยอมรับที่อยู่และสัญญาณควบคุมที่เกี่ยวข้อง:
1 = ทาสพร้อม
0 = ทาสไม่พร้อม
อ่าน ID tag. ไอดี tag ของสัญญาณกลุ่มข้อมูลที่อ่าน ค่า m_rid ถูกสร้างขึ้นโดย Slave และต้องตรงกับค่า m_arid ของธุรกรรมที่อ่านซึ่งกำลังตอบสนอง อ่านข้อมูล อ่านการตอบสนอง
สถานะของการถ่ายโอนการอ่าน คำตอบที่อนุญาตคือ OKAY, EXOKAY, SLVERR และ DECERR อ่านครั้งสุดท้าย
การถ่ายโอนล่าสุดในการอ่านระเบิด อ่านถูกต้อง มีข้อมูลการอ่านที่จำเป็นและการถ่ายโอนการอ่านสามารถทำได้:
1 = อ่านข้อมูลที่มีอยู่
0 = ไม่มีข้อมูลการอ่าน อ่านพร้อม. อาจารย์สามารถยอมรับข้อมูลที่อ่านและข้อมูลการตอบสนอง:
1= มาสเตอร์พร้อมแล้ว
0 = ต้นแบบไม่พร้อม
เขียนรหัสที่อยู่ บัตรประจำตัว tag สำหรับกลุ่มสัญญาณการเขียนแอดเดรส เขียนที่อยู่. ระบุที่อยู่ของการโอนครั้งแรกในธุรกรรมการเขียนแบบต่อเนื่อง สัญญาณควบคุมที่เกี่ยวข้องจะใช้เพื่อกำหนดที่อยู่ของการถ่ายโอนที่เหลือในการระเบิด
8
ผู้ตัดสิน DDR AXI
ชื่อสัญญาณ m_awlen_o
ทิศทางเอาต์พุต
ความกว้าง [3:0]
m_awsize_o
เอาท์พุต
[2:0]m_awburst_o
เอาท์พุต
[1:0]m_awlock_o
เอาท์พุต
[1:0]m_awcache_o
เอาท์พุต
[3:0]m_awprot_o
เอาท์พุต
[2:0]m_awvalid_o
เอาท์พุต
คำอธิบาย
ความยาวระเบิด ระบุจำนวนการถ่ายโอนที่แน่นอนในหนึ่งชุด ข้อมูลนี้กำหนดจำนวนของการถ่ายโอนข้อมูลที่เกี่ยวข้องกับที่อยู่
ขนาดระเบิด ขนาดการถ่ายโอนแต่ละครั้งในการระเบิด ไฟแสดงสถานะของไบต์เลนระบุว่าจะอัปเดตเลนไบต์ใด
แก้ไขเป็น 3'b011 à 8 ไบต์ต่อการถ่ายโอนข้อมูลหรือการถ่ายโอน 64 บิต
ประเภทระเบิด เมื่อรวมกับข้อมูลขนาดแล้ว ให้รายละเอียดวิธีคำนวณที่อยู่สำหรับการถ่ายโอนแต่ละครั้งภายในชุดต่อเนื่อง
แก้ไขเป็น 2'b01 à ที่อยู่ที่เพิ่มขึ้น
ประเภทล็อค ให้ข้อมูลเพิ่มเติมเกี่ยวกับลักษณะอะตอมของการถ่ายโอน
คงที่ 2'b00 à การเข้าถึงปกติ
ประเภทแคช ระบุแอตทริบิวต์ที่บัฟเฟอร์ได้ แคชได้ เขียนผ่าน เขียนกลับ และจัดสรรของธุรกรรม
แก้ไขเป็น 4'b0000 à ไม่สามารถแคชได้และไม่สามารถบัฟเฟอร์ได้
ประเภทการป้องกัน ระบุระดับการป้องกันปกติ สิทธิพิเศษ หรือความปลอดภัยของธุรกรรม และระบุว่าธุรกรรมนั้นเป็นการเข้าถึงข้อมูลหรือการเข้าถึงคำสั่ง
คงที่ 3'b000 à ปกติ การเข้าถึงข้อมูลที่ปลอดภัย
เขียนที่อยู่ที่ถูกต้อง ระบุว่าที่อยู่การเขียนและการควบคุมที่ถูกต้อง
มีข้อมูล:
1 = ข้อมูลที่อยู่และการควบคุมที่มีอยู่
0 = ไม่มีข้อมูลที่อยู่และการควบคุม ข้อมูลที่อยู่และการควบคุมจะคงที่จนกว่าสัญญาณตอบรับที่อยู่ m_awready จะสูงขึ้น
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
9
ผู้ตัดสิน DDR AXI
ชื่อสัญญาณ m_awready_i
อินพุตทิศทาง
ความกว้าง
เขียนช่องข้อมูล
m_wid_o
เอาท์พุต
[3:0]m_wdata_o m_wstrb_o
เอาท์พุต เอาท์พุต
[(g_AXI_DWIDTH-1):0]พารามิเตอร์ AXI_DWDITH[7:0]
m_wlast_o m_wvalid_o
เอาท์พุต เอาท์พุต
m_wready_i
ป้อนข้อมูล
เขียนสัญญาณช่องทางการตอบสนอง
m_bid_i
ป้อนข้อมูล
[3:0]m_bresp_i m_bvalid_i
ป้อนข้อมูล
[1:0]ป้อนข้อมูล
m_bready_o
เอาท์พุต
คำอธิบาย เขียนที่อยู่ให้พร้อม บ่งชี้ว่าสเลฟพร้อมที่จะยอมรับที่อยู่และสัญญาณควบคุมที่เกี่ยวข้อง:
1 = ทาสพร้อม
0 = ทาสไม่พร้อม
เขียน ID tag. ไอดี tag ของการถ่ายโอนข้อมูลแบบเขียน ค่า m_wid ต้องตรงกับค่า m_awid ของธุรกรรมการเขียน เขียนข้อมูล
เขียนไฟ สัญญาณนี้ระบุว่าเลนไบต์ใดที่จะอัปเดตในหน่วยความจำ มีไฟแฟลชสำหรับเขียนหนึ่งอันสำหรับแต่ละแปดบิตของบัสข้อมูลการเขียน เขียนสุดท้าย การถ่ายโอนครั้งล่าสุดในการเขียนแบบต่อเนื่อง เขียนถูกต้อง มีข้อมูลการเขียนและไฟแฟลชที่ถูกต้อง:
1 = เขียนข้อมูลและไฟแฟลชได้
0 = เขียนข้อมูลและไฟแฟลชไม่พร้อมใช้งาน เขียนพร้อม สเลฟสามารถรับข้อมูลการเขียน: 1 = สเลฟพร้อม
0 = ทาสไม่พร้อม
รหัสตอบกลับ การระบุ tag ของการเขียนตอบกลับ ค่า m_bid ต้องตรงกับค่า m_awid ของธุรกรรมการเขียนที่สเลฟตอบสนอง เขียนตอบกลับ สถานะของธุรกรรมการเขียน คำตอบที่อนุญาตคือ OKAY, EXOKAY, SLVERR และ DECERR เขียนตอบกลับถูกต้อง คำตอบการเขียนที่ถูกต้องสามารถใช้ได้:
1 = เขียนตอบกลับได้
0 = ไม่สามารถเขียนคำตอบได้ พร้อมตอบกลับ อาจารย์สามารถรับข้อมูลตอบกลับได้
1 = ต้นแบบพร้อม
0 = ต้นแบบไม่พร้อม
รูปภาพต่อไปนี้แสดงแผนภาพบล็อกภายในของตัวตัดสิน DDR AXI
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
10
ผู้ตัดสิน DDR AXI
รูปภาพต่อไปนี้แสดงแผนภาพบล็อกภายในของตัวตัดสิน DDR AXI รูปที่ 4 · แผนภาพบล็อกภายในของ DDR AXI Arbiter
แต่ละช่องการอ่านจะถูกทริกเกอร์เมื่อได้รับสัญญาณอินพุตสูงบนอินพุต read_req_(x)_i แล้วล่ะก็
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
11
ผู้ตัดสิน DDR AXI
แต่ละช่องการอ่านจะถูกทริกเกอร์เมื่อได้รับสัญญาณอินพุตสูงบนอินพุต read_req_(x)_i แล้วมันampคือที่อยู่ AXI เริ่มต้นและไบต์สำหรับอ่านอินพุตซึ่งเป็นอินพุตจากต้นแบบภายนอก แชนเนลยอมรับต้นแบบภายนอกโดยการสลับ read_ack_(x)_o แชนเนลจะประมวลผลอินพุตและสร้างธุรกรรม AXI ที่จำเป็นเพื่ออ่านข้อมูลจาก DDR-SDRAM ข้อมูลที่อ่านในรูปแบบ AXI 64 บิตจะถูกจัดเก็บไว้ในบัฟเฟอร์ภายใน หลังจากอ่านข้อมูลที่จำเป็นและจัดเก็บไว้ในบัฟเฟอร์ภายในแล้ว โมดูลคลายการบรรจุหีบห่อจะเปิดใช้งาน โมดูล un-packer จะแยกคำ 64 บิตแต่ละคำออกเป็นความยาวบิตข้อมูลเอาต์พุตที่จำเป็นสำหรับช่องเฉพาะนั้น เช่นample ถ้าช่องถูกกำหนดค่าเป็นความกว้างของข้อมูลเอาต์พุต 32 บิต คำ 64 บิตแต่ละคำจะถูกส่งออกมาเป็นคำข้อมูลเอาต์พุต 32 บิตสองคำ สำหรับแชนเนล 1 ซึ่งเป็นแชนเนล 24 บิต ตัวคลายแพ็กเกอร์จะคลายแพ็กคำ 64 บิตแต่ละคำเป็นข้อมูลเอาต์พุต 24 บิต เนื่องจาก 64 ไม่ใช่ผลคูณของ 24 ดังนั้นตัวแยกแพ็คสำหรับการอ่านแชนเนล 1 จึงรวมกลุ่มของคำ 64 บิตสามคำเพื่อสร้างคำข้อมูล 24 บิตแปดคำ สิ่งนี้ทำให้เกิดข้อจำกัดในการอ่านแชนเนล 1 ที่ไบต์ข้อมูลที่ร้องขอโดยมาสเตอร์ภายนอกควรหารด้วย 8 ลงตัว อ่านแชนเนล 2, 3 และ 4 สามารถกำหนดค่าเป็นความกว้างของข้อมูล 8 บิต 24 บิต และ 32 บิต ซึ่งก็คือ กำหนดโดยพารามิเตอร์การกำหนดค่าส่วนกลาง g_RD_CHANNEL(X) _VIDEO_DATA_WIDTH หากมีการกำหนดค่าเป็น 24 บิต ข้อจำกัดที่กล่าวถึงข้างต้นจะมีผลกับแต่ละรายการด้วย แต่ถ้ากำหนดค่าเป็น 8 บิตหรือ 32 บิต จะไม่มีข้อจำกัดเช่น 64 คูณด้วย 32 และ 8 ในกรณีเหล่านี้ คำ 64 บิตแต่ละคำจะถูกแยกออกเป็นสองคำข้อมูล 32 บิตหรือแปด 8 คำข้อมูลบิต
Read Channel 1 แกะคำข้อมูล 64 บิตที่อ่านจาก DDR-SDRAM ออกเป็น 24 บิต ข้อมูลเอาต์พุตเป็นชุดๆ ละ 48 คำ 64 บิต นั่นคือเมื่อใดก็ตามที่มีคำ 48 บิต 64 คำในบัฟเฟอร์ภายในของช่องอ่าน 1 ผู้คลายการบรรจุหีบห่อเริ่มคลายการบรรจุเพื่อให้ข้อมูลเอาต์พุต 24 บิต หากไบต์ข้อมูลที่ร้องขอเพื่ออ่านน้อยกว่า 48 คำ 64 บิต โปรแกรมคลายแพ็กเกอร์จะถูกเปิดใช้งานหลังจากที่อ่านข้อมูลทั้งหมดจาก DDR-SDRAM แล้วเท่านั้น ในช่องการอ่านที่เหลืออีกสามแชนเนล ตัวคลายแพ็กเกอร์จะเริ่มส่งข้อมูลการอ่านหลังจากที่อ่านออกจาก DDR-SDRAM ตามจำนวนไบต์ที่ร้องขอครบถ้วนแล้วเท่านั้น
เมื่อกำหนดค่าช่องทางการอ่านสำหรับความกว้างเอาต์พุต 24 บิต ที่อยู่การอ่านเริ่มต้นจะต้องสอดคล้องกับขอบเขต 24 ไบต์ สิ่งนี้จำเป็นเพื่อให้เป็นไปตามข้อจำกัดที่ผู้คลายการบรรจุหีบห่อคลายกลุ่มของคำ 64 บิตสามคำเพื่อสร้างคำเอาต์พุต 24 บิตแปดคำ
ช่องการอ่านทั้งหมดสร้างเอาต์พุตที่อ่านเสร็จแล้วไปยังต้นแบบภายนอกหลังจากที่ส่งไบต์ที่ร้องขอไปยังต้นแบบภายนอก
ในกรณีของช่องสัญญาณเขียน มาสเตอร์ภายนอกจะต้องป้อนข้อมูลที่จำเป็นไปยังช่องเฉพาะ ช่องการเขียนใช้ข้อมูลอินพุตและบรรจุเป็นคำ 64 บิตและจัดเก็บไว้ในที่จัดเก็บข้อมูลภายใน หลังจากเก็บข้อมูลที่จำเป็นแล้ว ต้นแบบภายนอกจะต้องจัดเตรียมคำขอเขียนพร้อมกับที่อยู่เริ่มต้นและไบต์ที่จะเขียน เมื่อampเมื่อใช้อินพุตเหล่านี้ ช่องเขียนจะยอมรับต้นแบบภายนอก หลังจากนี้ แชนเนลจะสร้างธุรกรรมการเขียน AXI เพื่อเขียนข้อมูลที่จัดเก็บไว้ใน DDR-SDRAM ช่องการเขียนทั้งหมดสร้างเอาต์พุตการเขียนเสร็จแล้วไปยังต้นแบบภายนอกเมื่อไบต์ที่ร้องขอถูกเขียนลงใน DDR-SDRAM หลังจากที่มีการร้องขอให้เขียนไปยังช่องทางการเขียน ข้อมูลใหม่จะต้องไม่ถูกเขียนลงในช่องทางการเขียน จนกว่าธุรกรรมปัจจุบันจะเสร็จสิ้นโดยการยืนยัน wr_done_(x)_o
ช่องการเขียน 1 และ 2 สามารถกำหนดค่าเป็นความกว้างของข้อมูล 8 บิต 24 บิต และ 32 บิต ซึ่งกำหนดโดยพารามิเตอร์การกำหนดค่าส่วนกลาง g_WR_CHANNEL(X)_VIDEO_DATA_WIDTH หากกำหนดค่าเป็น 24 บิต ไบต์ที่จะเขียนต้องคูณด้วยแปด เนื่องจากตัวแบ่งบรรจุภายในบรรจุคำข้อมูล 24 บิตแปดคำเพื่อสร้างคำข้อมูล 64 บิตสามคำ แต่ถ้ากำหนดค่าเป็น 8 บิตหรือ 32 บิต ก็ไม่มีข้อจำกัดดังกล่าว
สำหรับแชนเนล 32 บิต ต้องอ่านคำ 32 บิตอย่างน้อยสองคำ สำหรับแชนเนล 8 บิต จำเป็นต้องอ่านคำขั้นต่ำ 8 บิต เนื่องจากโมดูลผู้ตัดสินไม่มีช่องว่างภายใน ในช่องอ่านและเขียนทั้งหมด ความลึกของบัฟเฟอร์ภายในจะมากกว่าความกว้างแนวนอนของจอแสดงผลหลายเท่า ความลึกของบัฟเฟอร์ภายในคำนวณดังนี้:
g_RD_CHANNEL(X)_HORIZONTAL_RESOLUTION* g_RD_CHANNEL(X)_VIDEO_DATA_WIDTH * g_RD_CHANNEL(X)_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
โดยที่ X = หมายเลขช่อง
ความกว้างของบัฟเฟอร์ภายในถูกกำหนดโดยความกว้างของบัสข้อมูล AXI นั่นคือ พารามิเตอร์การกำหนดค่า
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
12
ผู้ตัดสิน DDR AXI
ความกว้างของบัฟเฟอร์ภายในถูกกำหนดโดยความกว้างของบัสข้อมูล AXI นั่นคือ พารามิเตอร์การกำหนดค่า g_AXI_DWIDTH
ธุรกรรมการอ่านและเขียน AXI ดำเนินการตามข้อกำหนด ARM AMBA AXI ขนาดธุรกรรมสำหรับการถ่ายโอนข้อมูลแต่ละครั้งถูกกำหนดเป็น 64 บิต บล็อกสร้างธุรกรรม AXI ของความยาวต่อเนื่องคงที่ 16 ครั้ง บล็อกยังตรวจสอบว่าการระเบิดเพียงครั้งเดียวข้ามขอบเขตที่อยู่ AXI ที่ 4 KByte หรือไม่ หากการระเบิดครั้งเดียวข้ามขอบเขต 4 KByte การระเบิดจะแบ่งออกเป็น 2 ครั้งในขอบเขต 4 KByte
3.3
พารามิเตอร์การกำหนดค่า
ตารางต่อไปนี้แสดงรายการพารามิเตอร์การกำหนดค่าที่ใช้ในการติดตั้งฮาร์ดแวร์ของ DDR AXI Arbiter พารามิเตอร์เหล่านี้เป็นพารามิเตอร์ทั่วไปและสามารถเปลี่ยนแปลงได้ตามข้อกำหนดของแอปพลิเคชัน
ตารางที่ 2 · พารามิเตอร์การกำหนดค่า
ชื่อ g_AXI_AWIDTH g_AXI_DWIDTH g_RD_CHANNEL1_AXI_BUFF_AWIDTH
g_RD_CHANNEL2_AXI_BUFF_AWIDTH
g_RD_CHANNEL3_AXI_BUFF_AWIDTH
g_RD_CHANNEL4_AXI_BUFF_AWIDTH
g_WR_CHANNEL1_AXI_BUFF_AWIDTH
g_WR_CHANNEL2_AXI_BUFF_AWIDTH
g_RD_CHANNEL1_HORIZONTAL_RESOLUTION g_RD_CHANNEL2_HORIZONTAL_RESOLUTION g_RD_CHANNEL3_HORIZONTAL_RESOLUTION g_RD_CHANNEL4_HORIZONTAL_RESOLUTION g_WR_CHANNEL1_HORIZONTAL_RESOLUTION g_WR_CHANNEL2_HORIZONTAL_RESOLUTION g_RD_CHANNEL1 _VIDEO_DATA_WIDTH g_RD_CHANNEL2_VIDEO_DATA_WIDTH g_RD_CHANNEL3_VIDEO_DATA_WIDTH g_RD_CHANNEL4_VIDEO_DATA_WIDTH g_WR_CHANNEL1_VIDEO_DATA_WIDTH g_WR_CHANNEL2_VIDEO_DATA_WIDTH g_RD_CHANNEL1_BUFFER_LINE_STOR อายุ
คำอธิบาย
ความกว้างบัสแอดเดรส AXI
ความกว้างบัสข้อมูล AXI
กำหนดความกว้างของบัสสำหรับบัฟเฟอร์ภายในช่อง 1 ที่อ่าน ซึ่งเก็บข้อมูลการอ่าน AXI
กำหนดความกว้างของบัสสำหรับบัฟเฟอร์ภายในช่อง 2 ที่อ่าน ซึ่งเก็บข้อมูลการอ่าน AXI
กำหนดความกว้างของบัสสำหรับบัฟเฟอร์ภายในช่อง 3 ที่อ่าน ซึ่งเก็บข้อมูลการอ่าน AXI
กำหนดความกว้างของบัสสำหรับบัฟเฟอร์ภายในช่อง 4 ที่อ่าน ซึ่งเก็บข้อมูลการอ่าน AXI
ระบุความกว้างของบัสสำหรับบัฟเฟอร์ภายในเขียนแชนเนล 1 ซึ่งเก็บข้อมูลการเขียน AXI
ระบุความกว้างของบัสสำหรับบัฟเฟอร์ภายในเขียนแชนเนล 2 ซึ่งเก็บข้อมูลการเขียน AXI
วิดีโอแสดงความละเอียดแนวนอนสำหรับอ่านช่อง 1
วิดีโอแสดงความละเอียดแนวนอนสำหรับอ่านช่อง 2
วิดีโอแสดงความละเอียดแนวนอนสำหรับอ่านช่อง 3
วิดีโอแสดงความละเอียดแนวนอนสำหรับอ่านช่อง 4
วิดีโอแสดงความละเอียดแนวนอนสำหรับเขียนช่อง 1
วิดีโอแสดงความละเอียดแนวนอนสำหรับเขียนช่อง 2
อ่านความกว้างบิตเอาต์พุตวิดีโอช่อง 1
อ่านความกว้างบิตเอาต์พุตวิดีโอช่อง 2
อ่านความกว้างบิตเอาต์พุตวิดีโอช่อง 3
อ่านความกว้างบิตเอาต์พุตวิดีโอช่อง 4
เขียนช่อง 1 ความกว้างบิตอินพุตวิดีโอ
เขียนช่อง 2 ความกว้างบิตอินพุตวิดีโอ
ความลึกของบัฟเฟอร์ภายในสำหรับอ่านช่อง 1 ในแง่ของจำนวนเส้นแนวนอนที่แสดง ความลึกของบัฟเฟอร์คือ g_RD_CHANNEL1_HORIZONTAL_RESOLUTION * g_RD_CHANNEL1_VIDEO_DATA_WIDTH * g_RD_CHANNEL1_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
13
ผู้ตัดสิน DDR AXI
3.4
ชื่อ g_RD_CHANNEL2_BUFFER_LINE_STORAGE g_RD_CHANNEL3_BUFFER_LINE_STORAGE g_RD_CHANNEL4_BUFFER_LINE_STORAGE g_WR_CHANNEL1_BUFFER_LINE_STORAGE g_WR_CHANNEL2_BUFFER_LINE_STORAGE
คำอธิบาย
ความลึกของบัฟเฟอร์ภายในสำหรับอ่านช่อง 2 ในแง่ของจำนวนเส้นแนวนอนที่แสดง ความลึกของบัฟเฟอร์คือ g_RD_CHANNEL2_HORIZONTAL_RESOLUTION * g_RD_CHANNEL2_VIDEO_DATA_WIDTH * g_RD_CHANNEL2_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
ความลึกของบัฟเฟอร์ภายในสำหรับอ่านช่อง 3 ในแง่ของจำนวนเส้นแนวนอนที่แสดง ความลึกของบัฟเฟอร์คือ g_RD_CHANNEL3_HORIZONTAL_RESOLUTION * g_RD_CHANNEL3_VIDEO_DATA_WIDTH * g_RD_CHANNEL3_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
ความลึกของบัฟเฟอร์ภายในสำหรับอ่านช่อง 4 ในแง่ของจำนวนเส้นแนวนอนที่แสดง ความลึกของบัฟเฟอร์คือ g_RD_CHANNEL4_HORIZONTAL_RESOLUTION * g_RD_CHANNEL4_VIDEO_DATA_WIDTH * g_RD_CHANNEL4_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
ความลึกของบัฟเฟอร์ภายในสำหรับเขียนช่อง 1 ในแง่ของจำนวนเส้นแนวนอนที่แสดง ความลึกของบัฟเฟอร์คือ g_WR_CHANNEL1_HORIZONTAL_RESOLUTION * g_WR_CHANNEL1_VIDEO_DATA_WIDTH * g_WR_CHANNEL1_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
ความลึกของบัฟเฟอร์ภายในสำหรับเขียนช่อง 2 ในแง่ของจำนวนเส้นแนวนอนที่แสดง ความลึกของบัฟเฟอร์คือ g_WR_CHANNEL2_HORIZONTAL_RESOLUTION * g_WR_CHANNEL2_VIDEO_DATA_WIDTH * g_WR_CHANNEL2_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
ไดอะแกรมกำหนดเวลา
รูปต่อไปนี้แสดงการเชื่อมต่อของอินพุตคำขออ่านและเขียน ที่อยู่หน่วยความจำเริ่มต้น ไบต์สำหรับอ่านหรือเขียนอินพุตจากต้นแบบภายนอก อ่านหรือเขียนการรับทราบ และเอาต์พุตการอ่านหรือเขียนที่สมบูรณ์ที่กำหนดโดยผู้ชี้ขาด
รูปที่ 5 · แผนภาพเวลาสำหรับสัญญาณที่ใช้ในการเขียน/อ่านผ่านอินเทอร์เฟซ AXI
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
14
ผู้ตัดสิน DDR AXI
รูปต่อไปนี้แสดงการเชื่อมต่อระหว่างการป้อนข้อมูลการเขียนจากต้นแบบภายนอกพร้อมกับการป้อนข้อมูลที่ถูกต้องสำหรับช่องการเขียนทั้งสอง รูปที่ 6 · ไทม์ไดอะแกรมสำหรับการเขียนลงที่จัดเก็บข้อมูลภายใน
รูปต่อไปนี้แสดงการเชื่อมต่อระหว่างเอาต์พุตข้อมูลที่อ่านไปยังต้นแบบภายนอกพร้อมกับเอาต์พุตข้อมูลที่ถูกต้องสำหรับช่องการอ่านทั้งหมด 2, 3 และ 4 รูปที่ 7 · แผนภาพเวลาสำหรับข้อมูลที่ได้รับผ่าน DDR AXI Arbiter สำหรับช่องการอ่าน 2, 3 , และ 4
รูปต่อไปนี้แสดงการเชื่อมต่อระหว่างเอาต์พุตข้อมูลที่อ่านสำหรับช่องที่ 1 ที่อ่านเมื่อ g_RD_CHANNEL 1_HORIZONTAL_RESOLUTION มากกว่า 128 (ในกรณีนี้ = 256) รูปที่ 8 · ไทม์ไดอะแกรมสำหรับข้อมูลที่ได้รับผ่าน DDR AXI Arbiter Read Channel 1 (มากกว่า 128 ไบต์)
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
15
ผู้ตัดสิน DDR AXI
รูปต่อไปนี้แสดงการเชื่อมต่อระหว่างเอาต์พุตข้อมูลที่อ่านสำหรับช่องที่อ่าน 1 เมื่อ g_RD_CHANNEL 1_HORIZONTAL_RESOLUTION น้อยกว่าหรือเท่ากับ 128 (ในกรณีนี้ = 64) รูปที่ 9 · ไทม์ไดอะแกรมสำหรับข้อมูลที่ได้รับผ่าน DDR AXI Arbiter Read Channel 1 (น้อยกว่าหรือเท่ากับ 128 ไบต์)
3.5
ม้านั่งทดสอบ
มี Testbench เพื่อตรวจสอบการทำงานของ DDR Arbiter core ตารางต่อไปนี้แสดงรายการพารามิเตอร์ที่สามารถกำหนดค่าได้ตามแอปพลิเคชัน
ตารางที่ 3 · พารามิเตอร์การกำหนดค่า Testbench
ชื่อ IMAGE_1_FILE_ชื่อภาพ_2_FILE_NAME g_DATA_WIDTH ความกว้าง ความสูง
คำอธิบายอินพุต file ชื่อภาพที่จะเขียนโดยเขียนช่องที่ 1 Input file ชื่อภาพที่จะเขียนโดยช่องเขียน 2 ความกว้างข้อมูลวิดีโอของช่องอ่านหรือเขียน ความละเอียดแนวนอนของภาพที่จะเขียนและอ่านโดยช่องเขียนและอ่าน ความละเอียดแนวตั้งของรูปภาพที่จะเขียนและอ่านโดยเขียนและอ่าน ช่อง
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
16
ผู้ตัดสิน DDR AXI
ขั้นตอนต่อไปนี้จะอธิบายวิธีการใช้ Testbench เพื่อจำลองคอร์ผ่าน Libero SoC 1. ในหน้าต่าง Design Flow ให้คลิกขวาที่ Create SmartDesign แล้วคลิก Run เพื่อสร้าง SmartDesign
รูปที่ 10 · สร้าง SmartDesign
2. ป้อนชื่อของการออกแบบใหม่เป็น video_dma ในกล่องโต้ตอบ Create New SmartDesign และคลิก OK มีการสร้าง SmartDesign และผืนผ้าใบจะแสดงทางด้านขวาของบานหน้าต่าง Design Flow
รูปที่ 11 · การตั้งชื่อ SmartDesign
3. ในหน้าต่าง Catalog ให้ขยาย Solutions-Video และลากและวาง SF2 DDR Memory Arbiter ในผืนผ้าใบ SmartDesign
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
17
ผู้ตัดสิน DDR AXI
รูปที่ 12 · ตัวตัดสินหน่วยความจำ DDR ในแค็ตตาล็อก Libero SoC
DDR Memory Arbiter Core แสดงขึ้น ดังแสดงในรูปต่อไปนี้ คลิกสองครั้งที่แกนเพื่อกำหนดค่าผู้ชี้ขาดหากจำเป็น
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
18
ผู้ตัดสิน DDR AXI
รูปที่ 13 · หน่วยความจำ DDR Arbiter Core ใน SmartDesign Canvas
4. เลือกพอร์ตทั้งหมดของคอร์และคลิกขวา จากนั้นคลิก เลื่อนขั้นเป็นระดับบนสุด ตามที่แสดงใน
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
19
ผู้ตัดสิน DDR AXI
4. เลือกพอร์ตทั้งหมดของคอร์และคลิกขวา จากนั้นคลิก เลื่อนขั้นเป็นระดับบนสุด ดังแสดงในรูปต่อไปนี้ รูปที่ 14 · เลื่อนระดับเป็นตัวเลือกระดับบนสุด
ตรวจสอบให้แน่ใจว่าได้เลื่อนระดับพอร์ตทั้งหมดเป็นระดับบนสุดก่อนที่จะคลิกไอคอนสร้างส่วนประกอบในแถบเครื่องมือ
5. คลิกไอคอนสร้างส่วนประกอบในแถบเครื่องมือ SmartDesign ดังแสดงในรูปต่อไปนี้
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
20
ผู้ตัดสิน DDR AXI
5. คลิกไอคอนสร้างส่วนประกอบในแถบเครื่องมือ SmartDesign ดังแสดงในรูปต่อไปนี้ คอมโพเนนต์ SmartDesign ถูกสร้างขึ้น รูปที่ 15 · สร้างส่วนประกอบ
6. ไปที่ View > หน้าต่าง > Fileส. การ Fileกล่องโต้ตอบจะปรากฏขึ้น 7. คลิกขวาที่โฟลเดอร์จำลองแล้วคลิกนำเข้า Files ดังแสดงในรูปต่อไปนี้
รูปที่ 16 · การนำเข้า File
8. เพื่อนำเข้าตัวกระตุ้นภาพ fileนำทางและนำเข้ารายการใดรายการหนึ่งต่อไปนี้ files แล้วคลิกเปิด
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
21
ผู้ตัดสิน DDR AXI
8. เพื่อนำเข้าตัวกระตุ้นภาพ fileนำทางและนำเข้ารายการใดรายการหนึ่งต่อไปนี้ files แล้วคลิกเปิด ก. เช่นampไฟล์ RGB_in.txt file มีให้พร้อมกับม้านั่งทดสอบตามเส้นทางต่อไปนี้:
..Project_namecomponentMicrosemiSolutionCore ddr_memory_arbiter 2.0.0กระตุ้น
เพื่อนำเข้า sampรูปภาพอินพุตม้านั่งทดสอบ เรียกดูไปยัง sampรูปภาพอินพุตของ testbench fileแล้วคลิก Open ดังแสดงในรูปต่อไปนี้ รูปที่ 17 · รูปภาพอินพุต File การเลือก
ข. หากต้องการนำเข้ารูปภาพอื่น ให้เรียกดูโฟลเดอร์ที่มีรูปภาพที่ต้องการ fileแล้วคลิกเปิด ตัวกระตุ้นภาพที่นำเข้า file อยู่ในไดเร็กทอรีจำลองดังแสดงในรูปต่อไปนี้ รูปที่ 18 · ใส่รูปภาพ File ในไดเรกทอรีจำลอง
9. นำเข้า ddr BFM fileส. สอง files ซึ่งเทียบเท่ากับ
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
และ
22
ผู้ตัดสิน DDR AXI
9. นำเข้า ddr BFM fileส. สอง files ซึ่งเทียบเท่ากับ DDR BFM — ddr3.v และ ddr3_parameters.v มีให้พร้อมกับเครื่องทดสอบที่พาธต่อไปนี้: ..Project_namecomponentMicrosemiSolutionCoreddr_memory_arbiter 2.0.0Stimulus คลิกขวาที่โฟลเดอร์ตัวกระตุ้นแล้วเลือกนำเข้า Fileตัวเลือก จากนั้นเลือก BFM ดังกล่าว fileส. DDR BFM ที่นำเข้า files อยู่ภายใต้สิ่งกระตุ้นดังแสดงในรูปต่อไปนี้ รูปที่ 19 · นำเข้า File
10. ไปที่ File > นำเข้า > อื่นๆ การนำเข้า Fileกล่องโต้ตอบจะปรากฏขึ้น รูปที่ 20 · นำเข้า Testbench File
11. นำเข้าชุดทดสอบและส่วนประกอบ MSS files (top_tb.cxf, mss_top_sb_MSS.cxf, mss_top.cxf และ mss
..Project_namecomponentMicrosemiSolutionCoreddr_memory_arbiter 2.0.0กระตุ้น
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
23
11.
ผู้ตัดสิน DDR AXI
รูปที่ 21 · นำเข้า Testbench และส่วนประกอบ MSS Files
รูปที่ 22 · top_tb สร้างแล้ว
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
24
ผู้ตัดสิน DDR AXI
3.5.1
จำลอง MSS SmartDesign
คำแนะนำต่อไปนี้อธิบายวิธีการจำลอง MSS SmartDesign:
1. คลิกแท็บ Design Hierarchy และเลือก Component จากรายการดรอปดาวน์ที่แสดง MSS SmartDesign ที่นำเข้าจะปรากฏขึ้น
2. คลิกขวาที่ mss_top ใต้ Work แล้วคลิก Open Component ดังรูปต่อไปนี้ ส่วนประกอบ mss_top_sb_0 แสดงขึ้น
รูปที่ 23 · เปิดส่วนประกอบ
3. คลิกขวาที่คอมโพเนนต์ mss_top_sb_0 แล้วคลิก Configure ดังแสดงในรูปต่อไปนี้
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
25
ผู้ตัดสิน DDR AXI
3. คลิกขวาที่คอมโพเนนต์ mss_top_sb_0 แล้วคลิก Configure ดังแสดงในรูปต่อไปนี้ รูปที่ 24 · กำหนดค่าส่วนประกอบ
หน้าต่างการกำหนดค่า MSS จะปรากฏขึ้น ดังแสดงในรูปต่อไปนี้ รูปที่ 25 · หน้าต่างการกำหนดค่า MSS
4. คลิก ถัดไป ผ่านแท็บการกำหนดค่าทั้งหมด ดังที่แสดงในภาพต่อไปนี้
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
26
ผู้ตัดสิน DDR AXI
4. คลิก ถัดไป ผ่านแท็บการกำหนดค่าทั้งหมด ดังที่แสดงในภาพต่อไปนี้ รูปที่ 26 · แท็บการกำหนดค่า
MSS ได้รับการกำหนดค่าหลังจากกำหนดค่าแท็บ Interrupts รูปต่อไปนี้แสดงความคืบหน้าของการกำหนดค่า MSS รูปที่ 27 · หน้าต่างการกำหนดค่า MSS หลังการกำหนดค่า
5. คลิก ถัดไป หลังจากการกำหนดค่าเสร็จสิ้น หน้าต่าง Memory Map จะแสดงดังรูปต่อไปนี้
รูปที่ 28 · แผนที่หน่วยความจำ
6. คลิกเสร็จสิ้น
7. คลิก สร้างส่วนประกอบ จากแถบเครื่องมือ SmartDesign เพื่อสร้าง MSS ตามที่แสดงใน
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
27
ผู้ตัดสิน DDR AXI
7. คลิก Generate Component จากแถบเครื่องมือ SmartDesign เพื่อสร้าง MSS ดังแสดงในรูปต่อไปนี้ รูปที่ 29 · สร้างส่วนประกอบ
8. ในหน้าต่าง Design Hierarchy ให้คลิกขวาที่ mss_top ใต้ Work แล้วคลิก Set As Root ดังแสดงในรูปต่อไปนี้ รูปที่ 30 · ตั้งค่า MSS เป็นรูท
9. ในหน้าต่าง Design Flow ให้ขยาย Verify Pre-synthesized Design ภายใต้ Create Design คลิกขวา
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
28
ผู้ตัดสิน DDR AXI
9. ในหน้าต่าง Design Flow ให้ขยาย Verify Pre-synthesized Design ภายใต้ Create Design คลิกขวาที่ Simulate แล้วคลิก Open Interactively มันจำลอง MSS รูปที่ 31 · จำลองการออกแบบก่อนการสังเคราะห์
10. คลิก No ถ้าข้อความแจ้งเตือนแสดงขึ้นเพื่อเชื่อมโยง Testbench stimulus กับ MSS 11. ปิดหน้าต่าง Modelsim หลังจากการจำลองเสร็จสิ้น
รูปที่ 32 · หน้าต่างจำลอง
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
29
ผู้ตัดสิน DDR AXI
3.5.2
จำลอง Testbench
คำแนะนำต่อไปนี้อธิบายวิธีการจำลองการทดสอบ:
1. เลือก top_tb SmartDesign Testbench และคลิก Generate Component จากแถบเครื่องมือ SmartDesign เพื่อสร้าง testbench ดังแสดงในรูปต่อไปนี้
รูปที่ 33 · การสร้างส่วนประกอบ
2. ในหน้าต่าง Stimulus Hierarchy ให้คลิกขวาที่ top_tb (top_tb.v) testbench file แล้วคลิกตั้งเป็นสิ่งกระตุ้นที่ใช้งานอยู่ เปิดใช้งานการกระตุ้นสำหรับ top_tb testbench file.
3. ในหน้าต่าง Stimulus Hierarchy ให้คลิกขวาที่ top_tb (
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
) โต๊ะทดสอบ file และคลิกเปิด
30
ผู้ตัดสิน DDR AXI
3. ในหน้าต่าง Stimulus Hierarchy ให้คลิกขวาที่ top_tb (top_tb.v) testbench file และคลิก Open Interactively จาก Simulate Pre-Synth Design สิ่งนี้จำลองแกนสำหรับหนึ่งเฟรม รูปที่ 34 · การจำลองการออกแบบก่อนการสังเคราะห์
4. หากการจำลองถูกขัดจังหวะเนื่องจากรันไทม์จำกัดใน DO fileให้ใช้คำสั่ง run -all เพื่อเสร็จสิ้นการจำลอง หลังจากจำลองเสร็จแล้ว ให้ไปที่ View > Files > การจำลองเป็น view ภาพเอาต์พุตของม้านั่งทดสอบ file ในโฟลเดอร์จำลอง
ผลลัพธ์ของการจำลองข้อความเทียบเท่ากับหนึ่งเฟรมของรูปภาพ จะถูกจัดเก็บไว้ในข้อความ Read_out_rd_ch(x).txt file ขึ้นอยู่กับช่องอ่านที่ใช้ สามารถแปลงเป็นภาพและเปรียบเทียบกับภาพต้นฉบับ
3.6
การใช้ทรัพยากร
บล็อก DDR Arbiter ถูกนำไปใช้กับ FPGA M2S150T SmartFusion®2 System-on-Chip (SoC) ใน
แพ็คเกจ FC1152) และ PolarFire FPGA (แพ็คเกจ MPF300TS_ES – 1FCG1152E)
ตารางที่ 4 · การใช้ทรัพยากรสำหรับ DDR AXI Arbiter
ทรัพยากร DFFs 4-input LUTs MACC RAM1Kx18
การใช้งาน 2992 4493 0 20
(สำหรับ:
g_RD_CHANNEL(X)_HORIZONTAL_RESOLUTION = 1280
g_RD_CHANNEL(X)_BUFFER_LINE_STORAGE = 1
g_WR_CHANNEL(X)_BUFFER_LINE_STORAGE = 1
g_AXI_DWIDTH = 64
g_RD_CHANNEL(X)_VIDEO_DATA_WIDTH = 24
แรม64x18
g_WR_CHANNEL(X)_VIDEO_DATA_WIDTH = 32) 0
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
31
ผู้ตัดสิน DDR AXI
Microsemi Corporate Headquarters One Enterprise, Aliso Viejo, CA 92656 สหรัฐอเมริกา ภายในสหรัฐอเมริกา: +1 800-713-4113 นอกสหรัฐอเมริกา: +1 949-380-6100 แฟกซ์: +1 949-215-4996 อีเมล: sales.support@microsemi.com www.microsemi.com
© 2018 ไมโครเซมิ คอร์ปอเรชั่น สงวนลิขสิทธิ์. Microsemi และโลโก้ Microsemi เป็นเครื่องหมายการค้าของ Microsemi Corporation เครื่องหมายการค้าและเครื่องหมายบริการอื่นๆ ทั้งหมดเป็นทรัพย์สินของเจ้าของที่เกี่ยวข้อง
Microsemi ไม่รับประกัน รับรอง หรือรับประกันเกี่ยวกับข้อมูลที่มีอยู่ในที่นี้ หรือความเหมาะสมของผลิตภัณฑ์และบริการสำหรับวัตถุประสงค์เฉพาะใดๆ และ Microsemi จะไม่รับผิดใด ๆ ที่เกิดขึ้นจากการใช้งานหรือการใช้ผลิตภัณฑ์หรือวงจรใดๆ ผลิตภัณฑ์ที่จำหน่ายในที่นี้และผลิตภัณฑ์อื่นๆ ที่จำหน่ายโดย Microsemi ได้รับการทดสอบอย่างจำกัด และไม่ควรใช้ร่วมกับอุปกรณ์หรือการใช้งานที่มีความสำคัญต่อภารกิจ ข้อมูลจำเพาะด้านประสิทธิภาพใด ๆ ที่เชื่อว่าเชื่อถือได้แต่ไม่ได้รับการตรวจสอบ และผู้ซื้อต้องดำเนินการและดำเนินการตามประสิทธิภาพและการทดสอบผลิตภัณฑ์อื่นๆ ทั้งหมด เพียงอย่างเดียวและร่วมกับหรือติดตั้งในผลิตภัณฑ์ขั้นสุดท้ายใดๆ ผู้ซื้อจะไม่พึ่งพาข้อมูลและประสิทธิภาพการทำงานหรือพารามิเตอร์ใด ๆ ที่ Microsemi ให้มา เป็นความรับผิดชอบของผู้ซื้อในการพิจารณาความเหมาะสมของผลิตภัณฑ์ใดๆ อย่างอิสระ และเพื่อทดสอบและตรวจสอบสิ่งเดียวกัน ข้อมูลที่ Microsemi ให้ไว้ด้านล่างนี้มีให้ "ตามที่เป็นอยู่" และมีข้อบกพร่องทั้งหมด และความเสี่ยงทั้งหมดที่เกี่ยวข้องกับข้อมูลดังกล่าวตกอยู่ที่ผู้ซื้อทั้งหมด Microsemi ไม่ให้สิทธิ์ในสิทธิบัตร ใบอนุญาต หรือสิทธิ์ในทรัพย์สินทางปัญญาอื่นใดแก่ฝ่ายใด ไม่ว่าโดยชัดแจ้งหรือโดยปริยาย ไม่ว่าจะเกี่ยวกับข้อมูลดังกล่าวเองหรือสิ่งใด ๆ ที่อธิบายโดยข้อมูลดังกล่าว ข้อมูลที่ให้ไว้ในเอกสารนี้เป็นกรรมสิทธิ์ของ Microsemi และ Microsemi ขอสงวนสิทธิ์ในการเปลี่ยนแปลงข้อมูลในเอกสารนี้หรือผลิตภัณฑ์และบริการใดๆ ได้ตลอดเวลาโดยไม่ต้องแจ้งให้ทราบ
Microsemi Corporation (Nasdaq: MSCC) นำเสนอผลงานที่ครอบคลุมของเซมิคอนดักเตอร์และระบบโซลูชันสำหรับการบินและอวกาศและการป้องกัน การสื่อสาร ศูนย์ข้อมูล และตลาดอุตสาหกรรม ผลิตภัณฑ์ประกอบด้วยวงจรรวมสัญญาณผสมแบบอะนาล็อกที่มีประสิทธิภาพสูงและชุบแข็งด้วยรังสี, FPGA, SoCs และ ASIC; ผลิตภัณฑ์การจัดการพลังงาน อุปกรณ์จับเวลาและซิงโครไนซ์และการแก้ปัญหาเวลาที่แม่นยำ การกำหนดมาตรฐานโลกสำหรับเวลา อุปกรณ์ประมวลผลเสียง โซลูชั่น RF; ส่วนประกอบที่ไม่ต่อเนื่อง โซลูชันการจัดเก็บข้อมูลและการสื่อสารระดับองค์กร เทคโนโลยีความปลอดภัยและ anti-t ที่ปรับขนาดได้ampเอ้อ ผลิตภัณฑ์; โซลูชันอีเทอร์เน็ต Power-over-Ethernet ICs และมิดสแปน; ตลอดจนความสามารถในการออกแบบและบริการที่กำหนดเอง Microsemi มีสำนักงานใหญ่อยู่ที่เมือง Aliso Viejo รัฐแคลิฟอร์เนีย และมีพนักงานประมาณ 4,800 คนทั่วโลก เรียนรู้เพิ่มเติมที่ www.microsemi.com
50200644
คู่มือผู้ใช้ UG0644 ฉบับปรับปรุง 5.0
32
เอกสาร / แหล่งข้อมูล
![]() |
ไมโครชิป UG0644 DDR AXI Arbiter [พีดีเอฟ] คู่มือการใช้งาน UG0644 DDR AXI อนุญาโตตุลาการ, UG0644, DDR AXI อนุญาโตตุลาการ, AXI อนุญาโตตุลาการ |