คู่มือผู้ใช้การกำหนดค่าคอนโทรลเลอร์ Microsemi SmartFusion2 FPGA Fabric DDR
การแนะนำ
SmartFusion2 FPGA มีตัวควบคุม DDR ในตัวสองตัว โดยตัวหนึ่งสามารถเข้าถึงได้ผ่าน MSS (MDDR) และอีกตัวหนึ่งมีไว้สำหรับการเข้าถึงโดยตรงจาก FPGA Fabric (FDDR) MDDR และ FDDR ทั้งสองควบคุมหน่วยความจำ DDR นอกชิป
หากต้องการกำหนดค่าคอนโทรลเลอร์ Fabric DDR อย่างสมบูรณ์ คุณต้อง:
- ใช้ตัวกำหนดค่าตัวควบคุม DDR หน่วยความจำภายนอกของ Fabric เพื่อกำหนดค่าตัวควบคุม DDR เลือกอินเทอร์เฟซบัสดาต้าพาธ (AXI หรือ AHBLite) และเลือกความถี่สัญญาณนาฬิกา DDR รวมถึงความถี่สัญญาณนาฬิกาดาต้าพาธของโครงสร้าง
- ตั้งค่ารีจิสเตอร์สำหรับรีจิสเตอร์คอนโทรลเลอร์ DDR เพื่อให้ตรงกับคุณลักษณะหน่วยความจำ DDR ภายนอกของคุณ
- สร้างอินสแตนซ์ Fabric DDR โดยเป็นส่วนหนึ่งของแอปพลิเคชันผู้ใช้และสร้างการเชื่อมต่อดาต้าพาธ
- เชื่อมต่ออินเทอร์เฟซการกำหนดค่า APB ของคอนโทรลเลอร์ DDR ตามที่กำหนดโดยโซลูชัน Peripheral Initialization
ตัวกำหนดค่าตัวควบคุมหน่วยความจำภายนอก Fabric DDR
ตัวกำหนดค่าหน่วยความจำภายนอกของ Fabric DDR (FDDR) ใช้เพื่อกำหนดค่าพาธข้อมูลโดยรวมและพารามิเตอร์หน่วยความจำ DDR ภายนอกสำหรับตัวควบคุม Fabric DDR
รูปที่ 1-1 • FDDR Configurator โอเวอร์view
การตั้งค่าหน่วยความจำ
ใช้การตั้งค่าหน่วยความจำเพื่อกำหนดค่าตัวเลือกหน่วยความจำของคุณใน MDDR
- ประเภทหน่วยความจำ – LPDDR, DDR2 หรือ DDR3
- ความกว้างของข้อมูล – 32 บิต, 16 บิต หรือ 8 บิต
- ความถี่นาฬิกา – ค่าใดๆ (ทศนิยม/เศษส่วน) ในช่วง 20 MHz ถึง 333 MHz
- SECDED เปิดใช้งาน ECC – เปิดหรือปิด
- การทำแผนที่ที่อยู่ – {แถว,ธนาคาร,คอลัมน์},{ธนาคาร,แถว,คอลัมน์}
การตั้งค่าส่วนต่อประสานผ้า
อินเทอร์เฟซผ้า FPGA – นี่คืออินเทอร์เฟซข้อมูลระหว่าง FDDR และการออกแบบ FPGA เนื่องจาก FDDR เป็นตัวควบคุมหน่วยความจำ จึงตั้งใจให้เป็นทาสบนบัส AXI หรือ AHB ต้นแบบของบัสจะเริ่มต้นธุรกรรมบัส ซึ่ง FDDR จะตีความว่าเป็นธุรกรรมหน่วยความจำ และสื่อสารกับหน่วยความจำ DDR นอกชิป ตัวเลือกอินเทอร์เฟซแฟบริค FDDR คือ:
- การใช้อินเทอร์เฟซ AXI-64 – ต้นแบบหนึ่งรายเข้าถึง FDDR ผ่านอินเทอร์เฟซ 64 บิต\ AXI
- การใช้อินเทอร์เฟซ AHB-32 เดี่ยว – ต้นแบบหนึ่งรายเข้าถึง FDDR ผ่านอินเทอร์เฟซ AHB 32 บิตเดียว
- การใช้อินเทอร์เฟซ AHB-32 สองตัว – ต้นแบบสองตัวเข้าถึง FDDR โดยใช้อินเทอร์เฟซ AHB 32 บิตสองตัว
ตัวหารนาฬิกา FPGA – ระบุอัตราส่วนความถี่ระหว่างนาฬิกาควบคุม DDR (CLK_FDDR) และนาฬิกาที่ควบคุมอินเทอร์เฟซแฟบริค (CLK_FIC64) ความถี่ CLK_FIC64 ควรเท่ากับความถี่ของระบบย่อย AHB/AXI ที่เชื่อมต่อกับอินเทอร์เฟซบัส FDDR AHB/AXI สำหรับเช่นampอย่างไรก็ตาม หากคุณมี DDR RAM ทำงานที่ 200 MHz และระบบย่อย Fabric/AXI ของคุณทำงานที่ 100 MHz คุณต้องเลือกตัวหารด้วย 2 (รูปที่ 1-2)
รูปที่ 1-2 • การตั้งค่าอินเทอร์เฟซแฟบริค – ข้อตกลงอินเทอร์เฟซ AXI และตัวหารนาฬิกา FDDR
ใช้ผ้า พีแอลแอล ล็อค – หาก CLK_BASE มีที่มาจาก Fabric CCC คุณสามารถเชื่อมต่อเอาต์พุต Fabric CCC LOCK กับอินพุต FDDR FAB_PLL_LOCK ได้ CLK_BASE ไม่เสถียรจนกว่า Fabric CCC จะล็อก ดังนั้น Microsemi ขอแนะนำให้คุณถือ FDDR ไว้ในการรีเซ็ต (เช่น ยืนยันอินพุต CORE_RESET_N) จนกว่า CLK_BASE จะเสถียร เอาต์พุต LOCK ของ Fabric CCC บ่งชี้ว่านาฬิกาเอาต์พุต Fabric CCC มีความเสถียร ด้วยการเลือกตัวเลือก ใช้ FAB_PLL_LOCK คุณสามารถเปิดเผยพอร์ตอินพุต FAB_PLL_LOCK ของ FDDR ได้ จากนั้นคุณสามารถเชื่อมต่อเอาต์พุต LOCK ของ Fabric CCC กับอินพุต FAB_PLL_LOCK ของ FDDR
ความแข็งแกร่งของไดรฟ์ IO
เลือกจุดแข็งของไดรฟ์แบบใดแบบหนึ่งต่อไปนี้สำหรับ DDR I/O ของคุณ:
- ความแรงของไดรฟ์ครึ่งหนึ่ง
- แรงขับเต็มที่
ขึ้นอยู่กับประเภทหน่วยความจำ DDR และความแรงของ I/O ที่คุณเลือก Libero SoC จะตั้งค่ามาตรฐาน DDR I/O สำหรับระบบ FDDR ของคุณดังต่อไปนี้:
ประเภทหน่วยความจำ DDR | ความแรงของไดรฟ์ครึ่งหนึ่ง | แรงขับเต็มที่ |
DDR3 | SSTL15I | SSTL15II |
DDR2 | SSTL18I | SSTL18II |
แอลพีดีดีอาร์ | แอลพีดีอาร์ไอ | แอลพีดีอาร์ไอ |
เปิดใช้งานการขัดจังหวะ
FDDR สามารถเพิ่มการขัดจังหวะได้เมื่อตรงตามเงื่อนไขที่กำหนดไว้ล่วงหน้าบางประการ เลือกเปิดใช้งานการขัดจังหวะในตัวกำหนดค่า FDDR หากคุณต้องการใช้การขัดจังหวะเหล่านี้ในแอปพลิเคชันของคุณ
ซึ่งจะแสดงสัญญาณขัดจังหวะบนอินสแตนซ์ FDDR คุณสามารถเชื่อมต่อสัญญาณขัดจังหวะเหล่านี้ได้ตามที่คุณต้องการ สัญญาณขัดจังหวะต่อไปนี้และเงื่อนไขเบื้องต้นพร้อมใช้งาน:
- FIC_INT – สร้างขึ้นเมื่อมีข้อผิดพลาดในการทำธุรกรรมระหว่าง Master และ FDDR
- IO_CAL_INT – ช่วยให้คุณสามารถปรับเทียบ DDR I/O's อีกครั้งโดยการเขียนไปยังการลงทะเบียนคอนโทรลเลอร์ DDR ผ่านทางอินเทอร์เฟซการกำหนดค่า APB เมื่อการสอบเทียบเสร็จสิ้น การขัดจังหวะนี้จะเพิ่มขึ้น สำหรับรายละเอียดเกี่ยวกับการปรับเทียบ I/O ใหม่ โปรดดูคู่มือผู้ใช้ Microsemi SmartFusion2
- PLL_LOCK_INT – บ่งชี้ว่า FDDR FPLL ถูกล็อค
- PLL_LOCKLOST_INT – บ่งชี้ว่า FDDR FPLL สูญเสียการล็อค
- FDDR_ECC_INT – บ่งชี้ว่าตรวจพบข้อผิดพลาดหนึ่งหรือสองบิต
ความถี่นาฬิกาผ้า
การคำนวณความถี่นาฬิกาตามความถี่นาฬิกาปัจจุบันและตัวหาร CLOCK ซึ่งแสดงเป็น MHz
ความถี่สัญญาณนาฬิกาของผ้า (เป็น MHz) = ตัวหารความถี่สัญญาณนาฬิกา / ตัวหาร CLOCK
แบนด์วิดท์หน่วยความจำ
การคำนวณแบนด์วิดท์หน่วยความจำขึ้นอยู่กับค่าความถี่สัญญาณนาฬิกาปัจจุบันของคุณในหน่วย Mbps
แบนด์วิดธ์หน่วยความจำ (เป็น Mbps) = 2 * ความถี่สัญญาณนาฬิกา
แบนด์วิดท์ทั้งหมด
การคำนวณแบนด์วิดท์ทั้งหมดขึ้นอยู่กับความถี่สัญญาณนาฬิกาปัจจุบัน ความกว้างของข้อมูล และตัวหาร CLOCK ในหน่วย Mbps
แบนด์วิดท์ทั้งหมด (เป็น Mbps) = (2 * ความถี่สัญญาณนาฬิกา * ความกว้างของข้อมูล) / ตัวหาร CLOCK
การกำหนดค่าตัวควบคุม FDDR
เมื่อคุณใช้ Fabric DDR Controller เพื่อเข้าถึงหน่วยความจำ DDR ภายนอก จะต้องกำหนดค่า DDR Controller ณ รันไทม์ ซึ่งทำได้โดยการเขียนข้อมูลการกำหนดค่าไปยังรีจิสเตอร์การกำหนดค่าคอนโทรลเลอร์ DDR เฉพาะ ข้อมูลการกำหนดค่านี้ขึ้นอยู่กับคุณลักษณะของหน่วยความจำ DDR ภายนอกและแอปพลิเคชันของคุณ ส่วนนี้จะอธิบายวิธีป้อนพารามิเตอร์การกำหนดค่าเหล่านี้ในตัวกำหนดค่าตัวควบคุม FDDR และวิธีการจัดการข้อมูลการกำหนดค่าโดยเป็นส่วนหนึ่งของโซลูชัน Peripheral Initialization โดยรวม โปรดดูคู่มือผู้ใช้ Peripheral Initialization สำหรับข้อมูลโดยละเอียดเกี่ยวกับโซลูชัน Peripheral Initialization
รีจิสเตอร์ควบคุม Fabric DDR
Fabric DDR Controller มีชุดรีจิสเตอร์ที่จำเป็นต้องกำหนดค่าขณะรันไทม์ ค่าการกำหนดค่าสำหรับรีจิสเตอร์เหล่านี้แสดงถึงพารามิเตอร์ที่แตกต่างกัน (เช่นample, โหมด DDR, ความกว้าง PHY, โหมดถ่ายภาพต่อเนื่อง, ECC ฯลฯ) สำหรับรายละเอียดเกี่ยวกับการลงทะเบียนการกำหนดค่าคอนโทรลเลอร์ DDR โปรดดูคู่มือผู้ใช้ Microsemi SmartFusion2
การกำหนดค่าการลงทะเบียน Fabric DDR
ใช้แท็บ Memory Initialization (รูปที่ 2-1) และ Memory Timing (รูปที่ 2-2) เพื่อป้อนพารามิเตอร์ที่สอดคล้องกับหน่วยความจำ DDR และแอพพลิเคชั่นของคุณ ค่าที่คุณป้อนในแท็บเหล่านี้จะถูกแปลเป็นค่ารีจิสเตอร์ที่เหมาะสมโดยอัตโนมัติ เมื่อคุณคลิกพารามิเตอร์เฉพาะ รีจิสเตอร์ที่เกี่ยวข้องจะถูกอธิบายไว้ในหน้าต่างคำอธิบายรีจิสเตอร์ (รูปภาพ 1-1 ในหน้า 4)
รูปที่ 2-1 • การกำหนดค่า FDDR – แท็บการเริ่มต้นหน่วยความจำ
รูปที่ 2-2 • การกำหนดค่า FDDR – แท็บการกำหนดเวลาหน่วยความจำ
นำเข้าการกำหนดค่า DDR Files
นอกเหนือจากการป้อนพารามิเตอร์หน่วยความจำ DDR โดยใช้แท็บ Memory Initialization และ Timing แล้ว คุณยังสามารถนำเข้าค่าการลงทะเบียน DDR จาก file. โดยคลิกปุ่มนำเข้าการกำหนดค่าและไปที่ข้อความ file มีชื่อรีจิสเตอร์และค่า DDR รูปที่ 2-3 แสดงไวยากรณ์การกำหนดค่าการนำเข้า
รูปที่ 2-3 • การกำหนดค่าการลงทะเบียน DDR File ไวยากรณ์
บันทึก: หากคุณเลือกที่จะนำเข้าค่ารีจิสเตอร์แทนที่จะป้อนโดยใช้ GUI คุณต้องระบุค่ารีจิสเตอร์ที่จำเป็นทั้งหมด โปรดดูรายละเอียดในคู่มือผู้ใช้ SmartFusion2
การส่งออกการกำหนดค่า DDR Files
คุณยังสามารถส่งออกข้อมูลการกำหนดค่าการลงทะเบียนปัจจุบันเป็นข้อความ file. นี้ file จะประกอบด้วยค่ารีจิสเตอร์ที่คุณนำเข้า (ถ้ามี) รวมถึงค่าที่คำนวณจากพารามิเตอร์ GUI ที่คุณป้อนในกล่องโต้ตอบนี้
หากคุณต้องการยกเลิกการเปลี่ยนแปลงที่คุณทำกับการกำหนดค่าการลงทะเบียน DDR คุณสามารถทำได้โดยใช้ Restore Default การดำเนินการนี้จะลบข้อมูลการกำหนดค่าการลงทะเบียนทั้งหมด และคุณต้องนำเข้าใหม่หรือป้อนข้อมูลนี้ใหม่ ข้อมูลถูกรีเซ็ตเป็นค่ารีเซ็ตฮาร์ดแวร์
ข้อมูลที่สร้างขึ้น
คลิกตกลงเพื่อสร้างการกำหนดค่า ตามข้อมูลที่คุณป้อนในแท็บทั่วไป การกำหนดเวลาหน่วยความจำ และการเตรียมใช้งานหน่วยความจำ ตัวกำหนดค่า FDDR จะคำนวณค่าสำหรับการลงทะเบียนการกำหนดค่า DDR ทั้งหมด และส่งออกค่าเหล่านี้ไปยังโปรเจ็กต์เฟิร์มแวร์และการจำลองของคุณ fileส. ที่ส่งออก file ไวยากรณ์แสดงในรูปที่ 2-4
รูปที่ 2-4 • การกำหนดค่าการลงทะเบียน DDR ที่ส่งออก File ไวยากรณ์
เฟิร์มแวร์
เมื่อคุณสร้าง SmartDesign ต่อไปนี้ files ถูกสร้างขึ้นในไดเร็กทอรี /firmware/ drivers_config/sys_config เหล่านี้ files จำเป็นสำหรับแกนเฟิร์มแวร์ CMSIS ในการคอมไพล์อย่างถูกต้องและมีข้อมูลเกี่ยวกับการออกแบบปัจจุบันของคุณ รวมถึงข้อมูลการกำหนดค่าอุปกรณ์ต่อพ่วงและข้อมูลการกำหนดค่านาฬิกาสำหรับ MSS อย่าแก้ไขสิ่งเหล่านี้ fileด้วยตนเอง เนื่องจากจะถูกสร้างขึ้นใหม่ทุกครั้งที่มีการสร้างการออกแบบรูทของคุณใหม่
- sys_config.c
- sys_config.h
- sys_config_mddr_define.h – ข้อมูลการกำหนดค่า MDDR
- sys_config_fddr_define.h – ข้อมูลการกำหนดค่า FDDR
- sys_config_mss_clocks.h – การกำหนดค่านาฬิกา MSS
การจำลอง
เมื่อคุณสร้าง SmartDesign ที่เชื่อมโยงกับ MSS ของคุณ การจำลองต่อไปนี้ files ถูกสร้างขึ้นในไดเร็กทอรี /simulation:
- ทดสอบ bfm - BFM ระดับบนสุด file ที่ดำเนินการครั้งแรกระหว่างการจำลองใดๆ ที่ใช้โปรเซสเซอร์ SmartFusion2 MSS Cortex-M3 มันรัน peripheral_init.bfm และ user.bfm ตามลำดับ
- อุปกรณ์ต่อพ่วง_init.bfm – ประกอบด้วยขั้นตอน BFM ที่จำลองฟังก์ชัน CMSIS::SystemInit() ที่ทำงานบน Cortex-M3 ก่อนที่คุณจะเข้าสู่ขั้นตอน main() โดยจะคัดลอกข้อมูลการกำหนดค่าสำหรับอุปกรณ์ต่อพ่วงใดๆ ที่ใช้ในการออกแบบไปยังการลงทะเบียนการกำหนดค่าอุปกรณ์ต่อพ่วงที่ถูกต้อง จากนั้นรอให้อุปกรณ์ต่อพ่วงทั้งหมดพร้อมก่อนที่จะยืนยันว่าผู้ใช้สามารถใช้อุปกรณ์ต่อพ่วงเหล่านี้ได้
- FDDR_init.bfm – ประกอบด้วยคำสั่งเขียน BFM ที่จำลองการเขียนข้อมูลรีจิสเตอร์การกำหนดค่า Fabric DDR ที่คุณป้อน (โดยใช้กล่องโต้ตอบแก้ไขรีจิสเตอร์) ลงในรีจิสเตอร์ตัวควบคุม DDR
- user.bfm – มีไว้สำหรับคำสั่งของผู้ใช้ คุณสามารถจำลอง datapath ได้โดยเพิ่มคำสั่ง BFM ของคุณเองในสิ่งนี้ file. คำสั่งในนี้ file จะถูกดำเนินการหลังจาก Peripheral_init.bfm เสร็จสิ้น
การใช้ fileข้างต้น เส้นทางการกำหนดค่าจะถูกจำลองโดยอัตโนมัติ คุณจะต้องแก้ไข user.bfm เท่านั้น file เพื่อจำลองดาต้าพาธ อย่าแก้ไข test.bfm, peripheral_init.bfm หรือ MDDR_init.bfm fileเป็นเหล่านี้ files จะถูกสร้างขึ้นใหม่ทุกครั้งที่มีการสร้างการออกแบบรูทของคุณใหม่
เส้นทางการกำหนดค่า Fabric DDR
โซลูชัน Peripheral Initialization กำหนดให้นอกเหนือจากการระบุค่ารีจิสเตอร์การกำหนดค่า Fabric DDR แล้ว คุณยังกำหนดค่าพาธข้อมูลการกำหนดค่า APB ใน MSS (FIC_2) ฟังก์ชัน SystemInit() เขียนข้อมูลไปยังการลงทะเบียนการกำหนดค่า FDDR ผ่านทางอินเทอร์เฟซ FIC_2 APB
บันทึก: หากคุณใช้ System Builder เส้นทางการกำหนดค่าจะถูกตั้งค่าและเชื่อมต่อโดยอัตโนมัติ
รูปที่ 2-5 • ตัวกำหนดค่า FIC_2 โอเวอร์view
ในการกำหนดค่าอินเทอร์เฟซ FIC_2:
- เปิดกล่องโต้ตอบตัวกำหนดค่า FIC_2 (รูปที่ 2-5) จากตัวกำหนดค่า MSS
- เลือกตัวเลือก Initialize peripherals using Cortex-M3
- ตรวจสอบให้แน่ใจว่าได้เลือก MSS DDR เช่นเดียวกับบล็อก Fabric DDR/SERDES หากคุณใช้งานอยู่
- คลิกตกลงเพื่อบันทึกการตั้งค่าของคุณ ซึ่งจะแสดงพอร์ตการกำหนดค่า FIC_2 (อินเทอร์เฟซนาฬิกา รีเซ็ต และบัส APB) ดังแสดงในรูปที่ 2-6
- สร้าง MSS ขณะนี้พอร์ต FIC_2 (FIC_2_APB_MASTER, FIC_2_APB_M_PCLK และ FIC_2_APB_M_RESET_N) ได้รับการเปิดเผยที่อินเทอร์เฟซ MSS และสามารถเชื่อมต่อกับ CoreSF2Config และ CoreSF2Reset ตามข้อกำหนดของโซลูชัน Peripheral Initialization
รูปที่ 2-6 • พอร์ต FIC_2
คำอธิบายพอร์ต
พอร์ตหลัก FDDR
ตาราง 3-1 • พอร์ตหลัก FDDR
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
CORE_RESET_N | IN | รีเซ็ตคอนโทรลเลอร์ FDDR |
CLK_BASE | IN | นาฬิกาอินเทอร์เฟซ FDDR Fabric |
FPLL_LOCK | ออก | เอาต์พุตล็อค FDDR PLL – สูงเมื่อ FDDR PLL ถูกล็อค |
CLK_BASE_PLL_LOCK | IN | อินพุตล็อคผ้า PLL อินพุตนี้จะถูกเปิดเผยเมื่อมีการเลือกตัวเลือก Use FAB_PLL_LOCK เท่านั้น |
ขัดจังหวะพอร์ต
พอร์ตกลุ่มนี้จะถูกเปิดเผยเมื่อคุณเลือกตัวเลือกเปิดใช้งานการขัดจังหวะ
ตาราง 3-2 • พอร์ตขัดจังหวะ
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
PLL_LOCK_INT | ออก | ยืนยันเมื่อ FDDR PLL ล็อก |
PLL_LOCKLOST_INT | ออก | ยืนยันเมื่อการล็อค FDDR PLL สูญหาย |
ECC_INT | ออก | ยืนยันเมื่อมีเหตุการณ์ ECC เกิดขึ้น |
IO_CALIB_INT | ออก | ยืนยันเมื่อการสอบเทียบ I/O เสร็จสิ้น |
FIC_INT | ออก | ยืนยันเมื่อมีข้อผิดพลาดในโปรโตคอล AHB/AXI บนอินเทอร์เฟซ Fabric |
อินเทอร์เฟซการกำหนดค่า APB3
ตาราง 3-3 • อินเทอร์เฟซการกำหนดค่า APB3
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
APB_S_PENABLE | IN | เปิดใช้งานทาส |
APB_S_PSEL | IN | เลือกทาส |
APB_S_PWRITE | IN | เขียนเปิดใช้งาน |
APB_S_PADDR[10:2] | IN | ที่อยู่ |
APB_S_PWDATA[15:0] | IN | เขียนข้อมูล |
APB_S_PRREADY | ออก | ทาสพร้อม |
APB_S_PSLVERR | ออก | ข้อผิดพลาดทาส |
APB_S_PRDATA[15:0] | ออก | อ่านข้อมูล |
APB_S_PRESET_N | IN | รีเซ็ตทาส |
APB_S_PCLK | IN | นาฬิกา |
อินเทอร์เฟซ DDR PHY
ตาราง 3-4 • อินเทอร์เฟซ DDR PHY
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
FDDR_CAS_N | ออก | แรม แคส |
FDDR_CKE | ออก | แรมซีเคอี |
FDDR_CLK | ออก | นาฬิกา, ด้าน P |
FDDR_CLK_N | ออก | นาฬิกา ด้าน N |
FDDR_CS_N | ออก | แรม ซีเอสเอ็น |
FDDR_ODT | ออก | แรม ODT |
FDDR_RAS_N | ออก | แรม ราส |
FDDR_RESET_N | ออก | รีเซ็ต DRAM สำหรับ DDR3 |
FDDR_WE_N | ออก | ดราม่าเหวิน |
FDDR_ADDR[15:0] | ออก | บิตที่อยู่ Dram |
FDDR_BA[2:0] | ออก | ที่อยู่ธนาคารดราม่า |
FDDR_DM_RDQS[4:0] | เข้า | ดราม่าดาต้ามาสก์ |
FDDR_DQS[4:0] | เข้า | อินพุต / เอาท์พุต Data Strobe ของ Dram - ด้าน P |
FDDR_DQS_N[4:0] | เข้า | อินพุต / เอาท์พุต Data Strobe ของ Dram - ด้าน N |
FDDR_DQ[35:0] | เข้า | อินพุต/เอาต์พุตข้อมูล DRAM |
FDDR_FIFO_WE_IN[2:0] | IN | FIFO ในสัญญาณ |
FDDR_FIFO_WE_OUT[2:0] | ออก | สัญญาณออก FIFO |
FDDR_DM_RDQS ([3:0]/[1:0]/[0]) | เข้า | ดราม่าดาต้ามาสก์ |
FDDR_DQS ([3:0]/[1:0]/[0]) | เข้า | อินพุต / เอาท์พุต Data Strobe ของ Dram - ด้าน P |
FDDR_DQS_N ([3:0]/[1:0]/[0]) | เข้า | อินพุต / เอาท์พุต Data Strobe ของ Dram - ด้าน N |
FDDR_DQ ([31:0]/[15:0]/[7:0]) | เข้า | อินพุต/เอาต์พุตข้อมูล DRAM |
FDDR_DQS_TMATCH_0_IN | IN | FIFO ในสัญญาณ |
FDDR_DQS_TMATCH_0_OUT | ออก | สัญญาณออก FIFO |
FDDR_DQS_TMATCH_1_IN | IN | สัญญาณ FIFO ใน (32 บิตเท่านั้น) |
FDDR_DQS_TMATCH_1_OUT | ออก | สัญญาณออก FIFO (32 บิตเท่านั้น) |
FDDR_DM_RDQS_ECC | เข้า | มาสก์ข้อมูล Dram ECC |
FDDR_DQS_ECC | เข้า | Dram ECC Data Strobe อินพุต/เอาต์พุต – ด้าน P |
FDDR_DQS_ECC_N | เข้า | Dram ECC Data Strobe อินพุต/เอาต์พุต – ด้าน N |
FDDR_DQ_ECC ([3:0]/[1:0]/[0]) | เข้า | อินพุต/เอาต์พุตข้อมูล DRAM ECC |
FDDR_DQS_TMATCH_ECC_IN | IN | ECC FIFO ในสัญญาณ |
FDDR_DQS_TMATCH_ECC_OUT | ออก | สัญญาณออก ECC FIFO (32 บิตเท่านั้น) |
บันทึก: ความกว้างของพอร์ตสำหรับบางพอร์ตจะเปลี่ยนไปขึ้นอยู่กับการเลือกความกว้างของ PHY สัญลักษณ์ “[a:0]/ [b:0]/[c:0]” ใช้เพื่อแสดงถึงพอร์ตดังกล่าว โดยที่ “[a:0]” หมายถึงความกว้างของพอร์ตเมื่อเลือกความกว้าง PHY แบบ 32 บิต , “[b:0]” สอดคล้องกับความกว้าง PHY 16 บิต และ “[c:0]” สอดคล้องกับความกว้าง PHY 8 บิต
อินเทอร์เฟซบัส AXI
ตาราง 3-5 • อินเตอร์เฟซบัส AXI
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
AXI_S_เยี่ยมเลย | ออก | เขียนที่อยู่พร้อม |
AXI_S_WREADY | ออก | เขียนที่อยู่พร้อม |
AXI_S_BID[3:0] | ออก | รหัสตอบกลับ |
AXI_S_BRESP[1:0] | ออก | เขียนตอบกลับ |
AXI_S_BVALID | ออก | เขียนตอบกลับถูกต้อง |
AXI_S_ARREADY | ออก | อ่านที่อยู่ให้พร้อม |
AXI_S_RID[3:0] | ออก | อ่าน ID Tag |
AXI_S_RRESP[1:0] | ออก | อ่านการตอบสนอง |
AXI_S_RDATA[63:0] | ออก | อ่านข้อมูล |
AXI_S_RLAST | ออก | อ่านล่าสุด – สัญญาณนี้ระบุการถ่ายโอนครั้งล่าสุดในการอ่านต่อเนื่อง |
AXI_S_RVALID | ออก | อ่านที่อยู่ที่ถูกต้อง |
AXI_S_AWID[3:0] | IN | เขียนรหัสที่อยู่ |
AXI_S_AWADDR[31:0] | IN | เขียนที่อยู่ |
AXI_S_AWLEN[3:0] | IN | ความยาวระเบิด |
AXI_S_AWSIZE[1:0] | IN | ขนาดระเบิด |
AXI_S_AWBURST[1:0] | IN | ประเภทระเบิด |
AXI_S_AWLOCK[1:0] | IN | ประเภทล็อค – สัญญาณนี้ให้ข้อมูลเพิ่มเติมเกี่ยวกับคุณลักษณะอะตอมของการถ่ายโอน |
AXI_S_AWVALID | IN | เขียนที่อยู่ที่ถูกต้อง |
AXI_S_WID[3:0] | IN | เขียนรหัสข้อมูล tag |
AXI_S_WDATA[63:0] | IN | เขียนข้อมูล |
AXI_S_WSTRB[7:0] | IN | เขียนไฟ |
AXI_S_WLAST | IN | เขียนครั้งสุดท้าย |
AXI_S_WVALID | IN | เขียนถูกต้อง |
AXI_S_BREADY | IN | เขียนพร้อม |
AXI_S_ARID[3:0] | IN | อ่านรหัสที่อยู่ |
AXI_S_ARADDR[31:0] | IN | อ่านที่อยู่ |
AXI_S_ARLEN[3:0] | IN | ความยาวระเบิด |
AXI_S_ARSIZE[1:0] | IN | ขนาดระเบิด |
AXI_S_ARBURST[1:0] | IN | ประเภทระเบิด |
AXI_S_ARLOCK[1:0] | IN | ประเภทล็อค |
AXI_S_ARVALID | IN | อ่านที่อยู่ที่ถูกต้อง |
AXI_S_RREADY | IN | อ่านที่อยู่ให้พร้อม |
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
AXI_S_CORE_RESET_N | IN | MDDR Global รีเซ็ต |
AXI_S_RMW | IN | ระบุว่าไบต์ทั้งหมดของเลน 64 บิตถูกต้องสำหรับบีตทั้งหมดของการถ่ายโอน AXI หรือไม่
|
อินเทอร์เฟซบัส AHB0
ตาราง 3-6 • อินเตอร์เฟสบัส AHB0
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
AHB0_S_HREADYOUT | ออก | AHBL Slave พร้อมแล้ว – เมื่อค่าสูงสำหรับการเขียน แสดงว่าทาสพร้อมที่จะยอมรับข้อมูล และเมื่อค่าสูงสำหรับการอ่าน แสดงว่าข้อมูลนั้นถูกต้อง |
AHB0_S_HRESP | ออก | สถานะการตอบสนอง AHBL – เมื่อขับเคลื่อนสูงเมื่อสิ้นสุดธุรกรรม บ่งชี้ว่าธุรกรรมเสร็จสมบูรณ์โดยมีข้อผิดพลาด เมื่อขับเคลื่อนต่ำเมื่อสิ้นสุดธุรกรรม แสดงว่าธุรกรรมเสร็จสมบูรณ์แล้ว |
AHB0_S_HRDATA[31:0] | ออก | AHBL อ่านข้อมูล – อ่านข้อมูลจากสเลฟถึงมาสเตอร์ |
AHB0_S_HSEL | IN | การเลือกทาส AHBL – เมื่อถูกยืนยัน สเลฟคือทาส AHBL ที่เลือกในปัจจุบันบนบัส AHB |
AHB0_S_HADDR[31:0] | IN | ที่อยู่ AHBL – ที่อยู่ไบต์บนอินเทอร์เฟซ AHBL |
AHB0_S_HBURST[2:0] | IN | AHBL ระยะระเบิด |
AHB0_S_HSIZE[1:0] | IN | ขนาดการถ่ายโอน AHBL – ระบุขนาดของการถ่ายโอนปัจจุบัน (ธุรกรรม 8/16/32 ไบต์เท่านั้น) |
AHB0_S_HTRANS[1:0] | IN | ประเภทการโอน AHBL – ระบุประเภทการโอนของธุรกรรมปัจจุบัน |
AHB0_S_HMASTLOCK | IN | ล็อค AHBL – เมื่อถูกยืนยัน การโอนปัจจุบันเป็นส่วนหนึ่งของธุรกรรมที่ถูกล็อค |
AHB0_S_HWRITE | IN | การเขียน AHBL – เมื่อสูงแสดงว่าธุรกรรมปัจจุบันเป็นการเขียน เมื่อต่ำแสดงว่าธุรกรรมปัจจุบันเป็นการอ่าน |
AHB0_S_HREADY | IN | AHBL พร้อม – เมื่ออยู่ในระดับสูง แสดงว่าทาสพร้อมที่จะยอมรับธุรกรรมใหม่ |
AHB0_S_HWDATA[31:0] | IN | AHBL เขียนข้อมูล – เขียนข้อมูลจากต้นแบบไปยังสเลฟ |
อินเทอร์เฟซบัส AHB1
ตาราง 3-7 • อินเตอร์เฟสบัส AHB1
ชื่อพอร์ต | ทิศทาง | คำอธิบาย |
AHB1_S_HREADYOUT | ออก | AHBL Slave พร้อมแล้ว – เมื่ออยู่ในระดับสูงสำหรับการเขียน แสดงว่าทาสพร้อมที่จะยอมรับข้อมูล และเมื่ออยู่ในระดับสูงสำหรับการอ่าน แสดงว่าข้อมูลนั้นถูกต้อง |
AHB1_S_HRESP | ออก | สถานะการตอบสนอง AHBL – เมื่อขับเคลื่อนด้วยระดับสูงเมื่อสิ้นสุดธุรกรรม บ่งชี้ว่าธุรกรรมเสร็จสมบูรณ์โดยมีข้อผิดพลาด เมื่อขับเคลื่อนในระดับต่ำเมื่อสิ้นสุดธุรกรรม แสดงว่าธุรกรรมเสร็จสมบูรณ์เรียบร้อยแล้ว |
AHB1_S_HRDATA[31:0] | ออก | AHBL อ่านข้อมูล – อ่านข้อมูลจากสเลฟถึงมาสเตอร์ |
AHB1_S_HSEL | IN | การเลือกทาส AHBL – เมื่อถูกยืนยัน สเลฟคือทาส AHBL ที่เลือกในปัจจุบันบนบัส AHB |
AHB1_S_HADDR[31:0] | IN | ที่อยู่ AHBL – ที่อยู่ไบต์บนอินเทอร์เฟซ AHBL |
AHB1_S_HBURST[2:0] | IN | AHBL ระยะระเบิด |
AHB1_S_HSIZE[1:0] | IN | ขนาดการถ่ายโอน AHBL – ระบุขนาดของการถ่ายโอนปัจจุบัน (ธุรกรรม 8/16/32 ไบต์เท่านั้น) |
AHB1_S_HTRANS[1:0] | IN | ประเภทการโอน AHBL – ระบุประเภทการโอนของธุรกรรมปัจจุบัน |
AHB1_S_HMASTLOCK | IN | ล็อค AHBL – เมื่อถูกยืนยัน การโอนปัจจุบันเป็นส่วนหนึ่งของธุรกรรมที่ถูกล็อค |
AHB1_S_HWRITE | IN | AHBL write – เมื่ออยู่ในระดับสูง แสดงว่าธุรกรรมปัจจุบันเป็นการเขียน เมื่อต่ำ แสดงว่าธุรกรรมปัจจุบันถูกอ่าน |
AHB1_S_HREADY | IN | AHBL พร้อม – เมื่ออยู่ในระดับสูง แสดงว่าทาสพร้อมที่จะยอมรับธุรกรรมใหม่ |
AHB1_S_HWDATA[31:0] | IN | AHBL เขียนข้อมูล – เขียนข้อมูลจากต้นแบบไปยังสเลฟ |
การสนับสนุนผลิตภัณฑ์
กลุ่มผลิตภัณฑ์ Microsemi SoC สนับสนุนผลิตภัณฑ์ของตนด้วยบริการสนับสนุนต่างๆ รวมถึงฝ่ายบริการลูกค้า ศูนย์สนับสนุนด้านเทคนิคของลูกค้า ก webเว็บไซต์ จดหมายอิเล็กทรอนิกส์ และสำนักงานขายทั่วโลก ภาคผนวกนี้มีข้อมูลเกี่ยวกับการติดต่อ Microsemi SoC Products Group และการใช้บริการสนับสนุนเหล่านี้
บริการลูกค้า
ติดต่อฝ่ายบริการลูกค้าสำหรับการสนับสนุนผลิตภัณฑ์ที่ไม่ใช่ด้านเทคนิค เช่น ราคาผลิตภัณฑ์ การอัพเกรดผลิตภัณฑ์ ข้อมูลอัปเดต สถานะการสั่งซื้อ และการอนุญาต
จากอเมริกาเหนือ โทร 800.262.1060
จากส่วนอื่นของโลก โทร 650.318.4460
แฟกซ์จากทุกที่ในโลก 408.643.6913
ศูนย์สนับสนุนด้านเทคนิคของลูกค้า
กลุ่มผลิตภัณฑ์ Microsemi SoC มีเจ้าหน้าที่ศูนย์สนับสนุนด้านเทคนิคของลูกค้าพร้อมด้วยวิศวกรที่มีทักษะสูง ซึ่งสามารถช่วยตอบคำถามเกี่ยวกับฮาร์ดแวร์ ซอฟต์แวร์ และการออกแบบเกี่ยวกับผลิตภัณฑ์ Microsemi SoC ศูนย์สนับสนุนด้านเทคนิคของลูกค้าใช้เวลามากมายในการสร้างบันทึกการใช้งาน ตอบคำถามเกี่ยวกับวงจรการออกแบบทั่วไป เอกสารเกี่ยวกับปัญหาที่ทราบ และคำถามที่พบบ่อยต่างๆ ดังนั้น ก่อนที่คุณจะติดต่อเรา โปรดไปที่แหล่งข้อมูลออนไลน์ของเรา เป็นไปได้มากที่เราได้ตอบคำถามของคุณแล้ว
การสนับสนุนด้านเทคนิค
เยี่ยมชมการสนับสนุนลูกค้า webงาน (www.microsemi.com/soc/support/search/default.aspx) สำหรับข้อมูลเพิ่มเติมและการสนับสนุน มีคำตอบมากมายให้เลือกค้นหา web แหล่งข้อมูลรวมถึงไดอะแกรม ภาพประกอบ และลิงก์ไปยังแหล่งข้อมูลอื่นๆ บน webเว็บไซต์.
Webเว็บไซต์
คุณสามารถเรียกดูข้อมูลทางเทคนิคและไม่ใช่ทางเทคนิคที่หลากหลายได้จากหน้าแรกของ SoC ที่ www.microsemi.com/soc.
การติดต่อศูนย์สนับสนุนด้านเทคนิคของลูกค้า
วิศวกรที่มีทักษะสูงเป็นเจ้าหน้าที่ของศูนย์สนับสนุนด้านเทคนิค สามารถติดต่อศูนย์สนับสนุนทางเทคนิคได้ทางอีเมลหรือผ่าน Microsemi SoC Products Group webเว็บไซต์.
อีเมล
คุณสามารถสื่อสารคำถามทางเทคนิคของคุณไปยังที่อยู่อีเมลของเราและรับคำตอบกลับทางอีเมล แฟกซ์ หรือโทรศัพท์ นอกจากนี้ หากคุณมีปัญหาด้านการออกแบบ คุณสามารถส่งอีเมลถึงการออกแบบของคุณได้ fileเพื่อรับความช่วยเหลือ เราตรวจสอบบัญชีอีเมลอย่างต่อเนื่องตลอดทั้งวัน เมื่อส่งคำขอของคุณถึงเรา โปรดตรวจสอบให้แน่ใจว่าได้ใส่ชื่อนามสกุล ชื่อบริษัท และข้อมูลติดต่อของคุณ เพื่อการดำเนินการตามคำขอของคุณอย่างมีประสิทธิภาพ ที่อยู่อีเมลสนับสนุนทางเทคนิคคือ soc_tech@microsemi.com.
กรณีของฉัน
ลูกค้ากลุ่มผลิตภัณฑ์ Microsemi SoC สามารถส่งและติดตามกรณีทางเทคนิคทางออนไลน์โดยไปที่ My Case
นอกประเทศสหรัฐอเมริกา
ลูกค้าที่ต้องการความช่วยเหลือนอกเขตเวลาของสหรัฐอเมริกาสามารถติดต่อฝ่ายสนับสนุนด้านเทคนิคทางอีเมล (soc_tech@microsemi.com) หรือติดต่อสำนักงานขายในพื้นที่ สามารถดูรายชื่อสำนักงานขายได้ที่ www.microsemi.com/soc/company/contact/default.aspx
การสนับสนุนด้านเทคนิคของ ITAR
สำหรับการสนับสนุนทางเทคนิคเกี่ยวกับ RH และ RT FPGA ที่ควบคุมโดย International Traffic in Arms Regulations (ITAR) โปรดติดต่อเราทาง soc_tech_itar@microsemi.com. หรือภายใน My Cases ให้เลือกใช่ในรายการแบบหล่นลงของ ITAR สำหรับรายการทั้งหมดของ Microsemi FPGA ที่ควบคุมโดย ITAR โปรดไปที่ ITAR web หน้าหนังสือ.
Microsemi Corporation (NASDAQ: MSCC) นำเสนอกลุ่มผลิตภัณฑ์โซลูชั่นเซมิคอนดักเตอร์ที่ครอบคลุมสำหรับ: การบินและอวกาศ การป้องกันประเทศ และความปลอดภัย องค์กรและการสื่อสาร และตลาดอุตสาหกรรมและพลังงานทางเลือก ผลิตภัณฑ์ประกอบด้วยอุปกรณ์อะนาล็อกและ RF ที่มีประสิทธิภาพสูงและมีความน่าเชื่อถือสูง สัญญาณผสมและวงจรรวม RF, SoCs ที่ปรับแต่งได้, FPGA และระบบย่อยที่สมบูรณ์ Microsemi มีสำนักงานใหญ่อยู่ที่ Aliso Viejo รัฐแคลิฟอร์เนีย เรียนรู้เพิ่มเติมที่ www.microsemi.com.
© 2014 ไมโครเซมิ คอร์ปอเรชั่น สงวนลิขสิทธิ์. Microsemi และโลโก้ Microsemi เป็นเครื่องหมายการค้าของ Microsemi Corporation เครื่องหมายการค้าและเครื่องหมายบริการอื่นๆ ทั้งหมดเป็นทรัพย์สินของเจ้าของที่เกี่ยวข้อง
สำนักงานใหญ่ของ บริษัท Microsemi
One Enterprise, Aliso Viejo CA 92656 สหรัฐอเมริกา
ภายในสหรัฐอเมริกา: +1 949-380-6100
ฝ่ายขาย: +1 949-380-6136
โทรสาร: +1 949-215-4996
เอกสาร / แหล่งข้อมูล
![]() |
การกำหนดค่าตัวควบคุม Microsemi SmartFusion2 FPGA Fabric DDR [พีดีเอฟ] คู่มือการใช้งาน การกำหนดค่าตัวควบคุม SmartFusion2 FPGA Fabric DDR, SmartFusion2, การกำหนดค่าตัวควบคุม FPGA Fabric DDR, การกำหนดค่าตัวควบคุม |