ตัวต้านทานการเลิกจ้าง: พวกเขาต้องการอะไร?


20

สำหรับโครงการที่ฉันกำลังออกแบบฉันใช้IS42s32800 (TSOP) SDRAM กับไมโครคอนโทรลเลอร์LPC1788 (QFP) บน PCB ฉันมี 4 เลเยอร์ที่มีระนาบกราวด์อยู่ด้านล่างเลเยอร์สัญญาณด้านบนและระนาบ VDD อยู่เหนือเลเยอร์สัญญาณด้านล่าง การติดตามเฉลี่ยระหว่าง CPU และ RAM มีความยาว 60 มม. โดยมีการติดตามที่ยาวที่สุดคือ 97 มม. สายนาฬิกายาว 53 มม. และไม่มีเส้นที่มีตัวต้านทานการเลิกจ้าง สิ่งที่ฉันอยากรู้คือว่าจำเป็นหรือไม่ที่จะต้องมีตัวต้านทานการเลิกจ้างในสาย DRAM การออกแบบนี้จะทำงานโดยไม่มีพวกเขาหรือฉันควรจะไม่รำคาญที่จะลองโดยไม่มีตัวต้านทานหรือไม่?


แผ่นข้อมูลพูดอะไร?
Matt Young

ไม่มีอะไร - issi.com/pdf/42S32800.pdf
özg

ลิงค์อัพเดทissi.com/WW/pdf/42-45S32800G.pdf
Jesus Castane

คำตอบ:


32

หากความถี่ / เวลาและระยะทางเพิ่มขึ้นสูงพอที่จะทำให้เกิดปัญหาได้คุณต้องเลิกจ้าง

รุ่นสายส่ง

ที่การติดตามที่ยาวที่สุด 97 มม. ฉันคิดว่าคุณอาจหนีไปได้หากไม่มีผลการคำนวณด้านล่าง) หากคุณมีแพ็คเกจ PCB ที่จัดการกับโมเดล IBIS และการจำลองระดับบอร์ด (เช่น Altium และแพ็คเกจราคาแพงอื่น ๆ ) จากนั้นจำลองการตั้งค่าของคุณ คุณต้องการพวกเขาจากผลลัพธ์

หากคุณไม่มีความสามารถนี้คุณสามารถทำการคำนวณคร่าวๆโดยใช้ SPICE
ฉันยุ่งเล็กน้อยกับLTSpiceนี่คือผลลัพธ์ ( อย่าลังเลที่จะแก้ไขสิ่งต่าง ๆ หากใครเห็นข้อผิดพลาด)

หากเราถือว่า:

  • เวลาที่เพิ่มขึ้นสัญญาณอินพุต RAM ของคุณอยู่ที่ประมาณ 2ns
  • PCB คือ FR4 ที่มี Er หรือ ~ 4.1
  • ความหนาทองแดง PCB คือ 1oz = 0.035 มม
  • ความสูงร่องรอยเหนือพื้นราบ = 0.8 มม
  • ความกว้างร่องรอย = 0.2 มม
  • ความยาวร่องรอย = 97 มม
  • การป้อนข้อมูล RAM เท่ากับ10kΩพร้อมกับ 5pF (ความจุจากแผ่นข้อมูลความต้านทานที่เลือกสำหรับอินพุต LVTTL ทั่วไปเนื่องจากไม่มีสิ่งใดมอบให้ - แผ่นข้อมูลนั้นแย่มากตัวอย่างเช่นกระแสไฟฟ้ารั่วที่หน้า 21 จะได้รับเป็น 10A !?)
  • ความต้านทานของตัวขับคือ100Ω (นำมาจากแผ่นข้อมูลแสดงค่าสูง / ต่ำและกระแส -> Vh = Vdd - 0.4 @ 4mA ดังนั้น 0.4V / 4mA = 100Ω)

การใช้wCalc (เครื่องมือเครื่องคิดเลขสายส่ง) ตั้งค่าเป็นโหมด microstrip และเจาะตัวเลขในเราได้รับ:

  • Zo = 177.6Ω
  • L = 642.9 pH / mm
  • C = 0.0465 pF / mm
  • R = 34.46 mΩ / mm
  • ความล่าช้า = 530.4 ps

ตอนนี้ถ้าเราป้อนค่าเหล่านี้ลงใน LTSpice โดยใช้องค์ประกอบสายส่งแบบสูญเสียและจำลองที่เราได้รับ:

การลอกสายไฟ

นี่คือการจำลองวงจรข้างต้น:

Stripline Sim Zdrv = 100 โอห์ม

จากผลลัพธ์นี้เราสามารถเห็นความต้านทานเอาต์พุต 100 ance ที่เราไม่ควรคาดหวังว่าจะมีปัญหาใด ๆ

เพียงเพื่อความสนใจสมมติว่าเรามีไดรเวอร์ที่มีความต้านทานเอาต์พุต 20 Ωผลลัพธ์จะแตกต่างกันมาก (แม้ที่ 50 Ωมี 0.7 V มากกว่า / undershoot โปรดทราบว่านี่เป็นส่วนหนึ่งเนื่องจากความจุอินพุต 5pF ทำให้เกิดเสียงเรียกเข้า overshoot ที่ 2ns จะน้อยลงโดยไม่มีประจุ [~ 3.7V] ดังนั้นตามที่ Kortuk ชี้ให้เห็นการตรวจสอบพารามิเตอร์ที่ถูกรวมเป็นก้อนแม้ว่าจะไม่ได้รับการปฏิบัติเหมือน TLine - ดูจุดสิ้นสุด):

Stripline Sim Zdrv = 20 โอห์ม

กฎง่ายๆคือถ้าเวลาหน่วง (เวลาสำหรับสัญญาณที่จะเดินทางจากคนขับไปยังอินพุต) มากกว่า 1 ใน 6 ของช่วงเวลาเร่งด่วนจากนั้นเราต้องปฏิบัติตามร่องรอยเป็นสายส่ง (สังเกตว่าบางคนพูดว่า 1 / 8th บางคน พูด 1 / 10th ซึ่งเป็นอนุรักษ์นิยมมากขึ้น) ด้วยความล่าช้า 0.525 ns และเวลาเพิ่มขึ้น 2ns ให้ 2 / 0.525 = 3.8 (<6) เราต้องรักษามันเป็น TLine ถ้าเราเพิ่มเวลาการเพิ่มเป็น 4ns -> 4 / 0.525 = 7.61 และทำแบบจำลอง 20 same เดิมอีกครั้งเราจะได้รับ:

Stripline Zdrv = 20 ohm Tr = 4ns

เราสามารถเห็นเสียงกริ่งน้อยกว่าดังนั้นอาจไม่ต้องดำเนินการใด ๆ

ดังนั้นเพื่อตอบคำถามโดยสมมติว่าฉันใกล้ชิดกับพารามิเตอร์แล้วมันไม่น่าเป็นไปได้ที่การทิ้งพวกเขาออกไปจะทำให้คุณเกิดปัญหา - โดยเฉพาะอย่างยิ่งเมื่อฉันเลือกเวลาขึ้น / ลงที่ 2ns ซึ่งเร็วกว่าแผ่นข้อมูล LPC1788 (หน้า 88 Tr min = 3 ns, Tfall min = 2.5 ns)
เพื่อให้แน่ใจว่าการใส่ตัวต้านทานซีรีย์ 50 on ในแต่ละบรรทัดอาจจะไม่เจ็บ

รุ่นส่วนประกอบที่เป็นก้อน

ดังที่ได้กล่าวไว้ข้างต้นแม้ว่าสายไม่ใช่สายส่งเรายังคงสามารถเรียกเข้าที่เกิดจากพารามิเตอร์ lumped การติดตาม L และตัวรับสัญญาณ C สามารถทำให้เกิดเสียงเรียกเข้าได้มากถ้าQสูงพอ
กฎง่ายๆคือการตอบสนองต่อขั้นตอนการป้อนข้อมูลที่สมบูรณ์แบบ Q ของ 0.5 หรือน้อยกว่าจะไม่ดังแหวน Q ของ 1 จะมี 16% เกินกำหนดและ Q 2 2 44% เลยเถิด
ในทางปฏิบัติไม่มีขั้นตอนการป้อนข้อมูลที่สมบูรณ์แบบ แต่ถ้าขั้นตอนสัญญาณมีพลังงานอย่างมีนัยสำคัญสูงกว่าความถี่จังหวะ LC นั้นจะมีการเรียกเข้า

ดังนั้นสำหรับตัวอย่างความต้านทานของไดรเวอร์ 20, ของเราหากเราแค่ถือว่าเส้นเป็นวงจรที่มีค่าเป็นก้อนคำถามจะเป็น:

Q=LCRs=62.36nH9.511พีF20Ω=4.05

(ความจุคือความจุอินพุต 5pF + ความจุของสาย - ความต้านทานของบรรทัดถูกละเว้น)

การตอบสนองต่ออินพุตขั้นตอนที่สมบูรณ์แบบคือ:

Vโอโวลต์อีRsชั่วโมงโอโอเสื้อ=3.3Vอี-π(4Q2)-1=2.23V

ดังนั้นกรณีที่แย่ที่สุดยอดเกินความจริงจะเป็น 3.3V + 2.23V = ~ 5.5V

สำหรับช่วงเวลาที่เพิ่มขึ้นของ 2 ns เราจำเป็นต้องคำนวณความถี่เรโซแนนท์ LC และพลังงานสเปกตรัมเหนือสิ่งนี้เนื่องจากการเพิ่มขึ้นของเวลา:

ความถี่เสียงเรียกเข้า = 1 / (2PI * sqrt (LC)) = 1 / (2PI * sqrt (62.36nH * 9.511pF)) = 206MHz

12πLC=12π62.36nH9.511พีF

อายุการใช้งาน 2 ns มีพลังงานที่สำคัญต่ำกว่าความถี่ (กฎของหัวแม่มือ) ซึ่ง ได้แก่ :

0.5 / Tr = 0.5 / 2 ns = 250 MHz ซึ่งสูงกว่าความถี่เสียงเรียกเข้าที่คำนวณข้างต้น

ด้วยความถี่หัวเข่าของความถี่เสียงเรียกเข้าเลยการเลยเถิดจะอยู่ที่ประมาณครึ่งหนึ่งของอินพุตขั้นตอนที่สมบูรณ์แบบดังนั้นประมาณ 1.2 เท่าของความถี่หัวเข่าที่เราอาจมองไปที่ 0.7 การตอบสนองขั้นตอนที่สมบูรณ์แบบ:

ดังนั้น 0.7 * 2.23 V = ~ 1.6 V

โดยประมาณเกินยอดสูงสุดด้วย 2 ns risetime = 3.3 V + 1.6 V = 4.9 V

LC0.5

จำลอง:

เป็นก้อน

การจำลองขั้นตอนที่สมบูรณ์แบบ:

การตอบสนองขั้นตอนเป็นก้อน

การจำลอง Risetime 2 ns:

ก้อน 2ns risetime

โซลูชัน (ที่มีตัวต้านทาน 100 Ω Rdrv + 60 Ωตัวต้านทาน = 160 R = รวม R1 เพิ่ม):

วิธีการแก้ปัญหาเปียกชื้นก้อน

เราสามารถเห็นการเพิ่มตัวต้านทาน 160 produces สร้าง 0 V เกินพิกัดตอบสนองฉับพลันวิกฤตคาดว่า

การคำนวณข้างต้นขึ้นอยู่กับกฎของหัวแม่มือและไม่แน่นอนอย่างเต็มที่ แต่ควรเข้าใกล้พอในกรณีส่วนใหญ่ หนังสือยอดเยี่ยม "การออกแบบดิจิทัลความเร็วสูง" โดย Jonhson และ Graham เป็นหนังสืออ้างอิงที่ยอดเยี่ยมสำหรับการคำนวณประเภทนี้และอีกมากมาย (อ่านบทตัวอย่าง NEWCO สำหรับคล้ายกับข้างบน แต่ดีกว่า - ส่วนใหญ่มาจากความรู้นี้ หนังสือ)


@OliGlaser โดยทั่วไปในโลกแห่งความเป็นจริงเราจะวัด L และ C ของ microstrip (สำหรับระบบ lumped) หรือเราแค่คำนวณมันเพื่อให้ได้ตัวเดาการศึกษาสำหรับตัวต้านทานสำหรับค่า Q 0.5 และปรับค่านั้นโดยสังเกตุ ?
Saad

1
ฉันว่ามันขึ้นอยู่กับโครงการและเครื่องมือของคุณ หากคุณใช้เครื่องมือ PCB ระดับไฮเอนด์สิ่งนี้และสิ่งอื่น ๆ อีกมากมายจะถูกสร้างขึ้นมาเพื่อคุณโดยอัตโนมัติหากคุณระบุข้อ จำกัด ที่ถูกต้อง หากไม่ใช้เครื่องมือที่มีราคาแพงมันจะจ่ายเงินให้กับการประเมินเบื้องต้นอย่างน้อยที่สุดเพื่อประเมินว่าคุณอาจมีปัญหาหรือไม่ - ใช้เวลาไม่นานและอาจหลีกเลี่ยงปัญหามากมายในภายหลัง หากไม่แน่ใจคุณสามารถทำสิ่งต่าง ๆ ได้เช่นเพิ่มแผ่นอิเล็กโทรดเพื่อติดตั้งตัวต้านทานการเลิกจ้างหากจำเป็น (สามารถลองใช้ค่าต่าง ๆ ได้ - สังเกตุได้ดีหากทำงาน)
Oli Glaser

นอกจากนี้โปรดทราบว่าคุณไม่จำเป็นต้องให้คิวเป็นจุดที่ 0.5 ด้านล่างนี้ก็โอเคเช่นกัน (เหนือจุดเริ่มต้นของเสียงเรียกเข้า - underdamped) 0.5 เป็นเพียงค่าที่เหมาะสมที่สุด เมื่อคุณเพิ่ม R (overdamped) risetime จะช้าและในที่สุดก็กลายเป็นปัญหา แต่คุณมักจะมีระยะขอบ
Oli Glaser

6

Altera แนะนำให้ใช้กับ SDRAM บางประเภทในเอกสารนี้แต่บอกว่าสามารถหลีกเลี่ยงได้โดยใช้การเลิกจ้างภายในสำหรับ FPGA และ SDRAM หากมีการเสนอให้ บอร์ด FPGA ที่ฉันมีกับ SDRAM ไม่ได้มีการยกเลิกการเชื่อมต่อภายนอกและอุปกรณ์ไม่มีการยกเลิกภายใน ดูเหมือนว่าพวกเขาควรจะใช้อย่างดีเลิศ แต่ในทางปฏิบัติพวกเขามักจะถูกทิ้งไว้ คุณควรจะไปกับมัน


ฉันยังไม่ได้ - แต่ผู้ผลิตบอร์ดพัฒนาของฉันใช้พวกเขาดังนั้นฉันคิดว่าฉันควรจะเหมือนกัน
özg

@ user9663 หากคุณจะทำการทดสอบการปล่อยมลพิษใด ๆ ฉันคิดว่าตัวต้านทานการเลิกจ้างเป็นความคิดที่ดีในการป้องกันการเรียกเข้า พูดตามตรงฉันมีประสบการณ์น้อยมากกับ SDRAM
justing
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.