คู่มือผู้ใช้การกำหนดค่าคอนโทรลเลอร์ Microsemi SmartFusion2 FPGA Fabric DDR
การกำหนดค่าตัวควบคุม Microsemi SmartFusion2 FPGA Fabric DDR

การแนะนำ

SmartFusion2 FPGA มีตัวควบคุม DDR ในตัวสองตัว โดยตัวหนึ่งสามารถเข้าถึงได้ผ่าน MSS (MDDR) และอีกตัวหนึ่งมีไว้สำหรับการเข้าถึงโดยตรงจาก FPGA Fabric (FDDR) MDDR และ FDDR ทั้งสองควบคุมหน่วยความจำ DDR นอกชิป
หากต้องการกำหนดค่าคอนโทรลเลอร์ Fabric DDR อย่างสมบูรณ์ คุณต้อง:

  1. ใช้ตัวกำหนดค่าตัวควบคุม DDR หน่วยความจำภายนอกของ Fabric เพื่อกำหนดค่าตัวควบคุม DDR เลือกอินเทอร์เฟซบัสดาต้าพาธ (AXI หรือ AHBLite) และเลือกความถี่สัญญาณนาฬิกา DDR รวมถึงความถี่สัญญาณนาฬิกาดาต้าพาธของโครงสร้าง
  2. ตั้งค่ารีจิสเตอร์สำหรับรีจิสเตอร์คอนโทรลเลอร์ DDR เพื่อให้ตรงกับคุณลักษณะหน่วยความจำ DDR ภายนอกของคุณ
  3. สร้างอินสแตนซ์ Fabric DDR โดยเป็นส่วนหนึ่งของแอปพลิเคชันผู้ใช้และสร้างการเชื่อมต่อดาต้าพาธ
  4. เชื่อมต่ออินเทอร์เฟซการกำหนดค่า APB ของคอนโทรลเลอร์ DDR ตามที่กำหนดโดยโซลูชัน Peripheral Initialization

ตัวกำหนดค่าตัวควบคุมหน่วยความจำภายนอก Fabric DDR

ตัวกำหนดค่าหน่วยความจำภายนอกของ Fabric DDR (FDDR) ใช้เพื่อกำหนดค่าพาธข้อมูลโดยรวมและพารามิเตอร์หน่วยความจำ DDR ภายนอกสำหรับตัวควบคุม Fabric DDR

รูปที่ 1-1 • FDDR Configurator โอเวอร์view
ตัวกำหนดค่าตัวควบคุมหน่วยความจำภายนอก Fabric DDR

การตั้งค่าหน่วยความจำ 

ใช้การตั้งค่าหน่วยความจำเพื่อกำหนดค่าตัวเลือกหน่วยความจำของคุณใน 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 – แท็บการเริ่มต้นหน่วยความจำ
การกำหนดค่าตัวควบคุม FDDR

รูปที่ 2-2 • การกำหนดค่า FDDR – แท็บการกำหนดเวลาหน่วยความจำ
การกำหนดค่าตัวควบคุม FDDR

นำเข้าการกำหนดค่า DDR Files

นอกเหนือจากการป้อนพารามิเตอร์หน่วยความจำ DDR โดยใช้แท็บ Memory Initialization และ Timing แล้ว คุณยังสามารถนำเข้าค่าการลงทะเบียน DDR จาก file. โดยคลิกปุ่มนำเข้าการกำหนดค่าและไปที่ข้อความ file มีชื่อรีจิสเตอร์และค่า DDR รูปที่ 2-3 แสดงไวยากรณ์การกำหนดค่าการนำเข้า

รูปที่ 2-3 • การกำหนดค่าการลงทะเบียน DDR File ไวยากรณ์
นำเข้าการกำหนดค่า DDR Files
บันทึก: หากคุณเลือกที่จะนำเข้าค่ารีจิสเตอร์แทนที่จะป้อนโดยใช้ 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
เส้นทางการกำหนดค่า Fabric DDR

ในการกำหนดค่าอินเทอร์เฟซ FIC_2:

  1. เปิดกล่องโต้ตอบตัวกำหนดค่า FIC_2 (รูปที่ 2-5) จากตัวกำหนดค่า MSS
  2. เลือกตัวเลือก Initialize peripherals using Cortex-M3
  3. ตรวจสอบให้แน่ใจว่าได้เลือก MSS DDR เช่นเดียวกับบล็อก Fabric DDR/SERDES หากคุณใช้งานอยู่
  4. คลิกตกลงเพื่อบันทึกการตั้งค่าของคุณ ซึ่งจะแสดงพอร์ตการกำหนดค่า FIC_2 (อินเทอร์เฟซนาฬิกา รีเซ็ต และบัส APB) ดังแสดงในรูปที่ 2-6
  5. สร้าง 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
พอร์ต 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 หรือไม่
  1. บ่งชี้ว่าไบต์ทั้งหมดในจังหวะทั้งหมดถูกต้องในการระเบิด และตัวควบคุมควรตั้งค่าเริ่มต้นให้เขียนคำสั่ง
  2. บ่งชี้ว่าบางไบต์ไม่ถูกต้อง และคอนโทรลเลอร์ควรตั้งค่าเริ่มต้นเป็นคำสั่ง RMW
    ซึ่งจัดอยู่ในประเภทสัญญาณแถบข้างช่องที่อยู่การเขียน AXI และใช้ได้กับสัญญาณ AWVALID ใช้เฉพาะเมื่อเปิดใช้งาน ECC เท่านั้น

อินเทอร์เฟซบัส 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, การกำหนดค่าตัวควบคุม

อ้างอิง

ฝากความคิดเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องกรอกข้อมูลมีเครื่องหมาย *