RAM แบบขนานโดยไม่มีพินจำนวนมาก?


16

ย้อนกลับไปในช่วงทศวรรษ 1970 Texas Instruments มีผลิตภัณฑ์ที่เลิกใช้แล้วซึ่งเรียกว่า GRAM (และอ่านได้เทียบเท่า GROM) ซึ่งเป็นชิปหน่วยความจำมาตรฐานที่มีที่อยู่และข้อมูลมัลติเพล็กซ์ทั้งหมด 8 ขา คุณจะเริ่มต้นการดำเนินการโดยส่งชิปที่อยู่สองไบต์แล้วทุกครั้งที่คุณอ่านหมุดหรืออ่านมันจะอ่านหรือเขียนไบต์โดยใช้บัสแล้วเพิ่มเคาน์เตอร์ที่อยู่ภายใน ผลที่ได้คือชิปหน่วยความจำที่เกือบจะเร็ว (อย่างน้อยสำหรับการดำเนินการเข้าถึงตามลำดับ) เป็นชิปหน่วยความจำแบบขนานมาตรฐาน แต่ที่ต้องการเพียง 16-pin แพ็คเกจแทนที่จะเป็น 28-pin แพ็คเกจความทรงจำอื่น ๆ ที่คล้ายกันในวันนั้นต้องการ .

วันนี้สำหรับแอพพลิเคชั่นที่คล้ายกันคุณมักจะใช้หน่วยความจำอนุกรมที่เข้าถึง SPI ได้ แต่ปัญหาคือความทรงจำดังกล่าวค่อนข้างช้า (ส่วนใหญ่มีความเร็วสูงสุดประมาณ 20Mbit / s บางตัวทำงานเร็วเป็นสองเท่า) แต่ฉันไม่ได้พบเร็วกว่านั้น) ในขณะที่ชิ้นส่วน TI ที่ทันสมัยนั้นอาจเร็วกว่านั้นมากทำให้สามารถเข้าถึง 100 + Mbit / s ได้อย่างง่ายดาย

มีอะไรที่ยังคงอยู่ในการผลิตและมีพฤติกรรมคล้ายกับชิป TI เหล่านั้นหรือไม่ สิ่งที่ใกล้เคียงที่สุดที่ฉันสามารถหาได้ในวันนี้คือชิ้นส่วนที่กำหนดเองเช่น VLSI VS23S010Dซึ่งรวมอุปกรณ์หน่วยความจำที่รองรับอินเทอร์เฟซที่ฉันกำลังมองหาพร้อมกับไดรเวอร์จอแสดงผล ฉันกำลังมองหาบางสิ่งบางอย่างในแพ็คเกจ 14 หรือ 16 พิน (ฉันคิดว่า 14 เป็นค่าต่ำสุดที่สมจริง - กำลัง 2x, ข้อมูล 8x, นาฬิกา, การเลือกที่อยู่, อ่านไบต์, เขียนไบต์)


ไมโครคอนโทรลเลอร์ MC68HC11 มีที่อยู่แบบมัลติเพล็กซ์ + บัสข้อมูลที่น่ารำคาญซึ่งคล้ายกับที่คุณอธิบายหน่วยความจำนั้นยอดเยี่ยมมาก
ท่อ

แต่ 68HC11 เพียง muxed A0..7; A8 .. 15 ยังคงเป็นหมุดแยกกัน
amI

คำตอบ:


19

โซลูชันมาตรฐานที่เหมาะสมน่าจะเป็นQSPI (หรือที่เรียกว่า QPI หรือ SQI) มันเป็นส่วนขยายของอินเตอร์เฟส SPI แต่ใช้บิตข้อมูลสี่ (quad ดังนั้น Q ในตัวย่อ) บิต (IO0 / IO1 / IO2 / IO2 / IO3) แทนสัญญาณเดียวสำหรับแต่ละทิศทาง (MISO / MOSI)

ดังนั้นชิปจึงมีขนาดเล็กมาก (โดยทั่วไปคือ SO-8) และอินเทอร์เฟซมีประสิทธิภาพมาก: คุณต้องส่งที่อยู่สำหรับแต่ละคำสั่งการอ่านหรือเขียน แต่จากนั้นคุณสามารถอ่านหลายไบต์ในการระเบิดสี่บิตในแต่ละรอบนาฬิกา ความเร็วสัญญาณนาฬิกาสูงสุดโดยทั่วไปคือ 104MHz สำหรับแฟลช สามารถทำได้เร็วยิ่งขึ้นโดยใช้การส่งสัญญาณอัตราข้อมูลคู่ (สี่บิตที่แต่ละขอบนาฬิกาทั้งขึ้นและลงดังนั้นแปดบิตในแต่ละรอบนาฬิกา - โดยทั่วไปชิปแฟลชจะสูงสุดที่ 80MHz ในโหมดนี้)

แผ่นข้อมูลชิปจะให้รายละเอียดทั้งหมดเกี่ยวกับความหมาย / การใช้งานของสัญญาณแต่ละอย่าง เพื่อแสดงให้เห็นว่านี่คือแผนภาพกำหนดเวลาคำสั่งอ่าน (ในโหมดอัตราข้อมูลเดียวและนำมาจากแผ่นข้อมูลนี้ ):

ป้อนคำอธิบายรูปภาพที่นี่

ที่นี่คุณจะเห็นว่าคุณต้องใช้รอบนาฬิกา 14 รอบเพื่อรับไบต์แรก (ที่ 80MHz หมายถึงเวลาเข้าถึง 175ns) แต่ถ้าคุณต้องการจำนวนไบต์เพิ่มเพียง 2 รอบต่อไบต์ (25ns) ดังนั้นการอ่านการถ่ายภาพต่อเนื่องจะทำให้เร็วกว่า 70ns ทั่วไปหรือแม้แต่ชิป 45 แฟลชแบบขนาน

คุณสามารถค้นหาส่วนแฟลช NOR จากผู้ผลิตจำนวนมากได้อย่างง่ายดายโดยใช้ส่วนต่อประสานนี้ โปรดทราบว่าการแสดงของพวกเขา (ความเร็วสูงสุด, รอบจำลอง) และคุณสมบัติ (Quad i / O หรือเพียงแค่ Dual I / O, การรองรับ DDR) จะแตกต่างกันดังนั้นโปรดตรวจสอบแผ่นข้อมูล

RAM หายากขึ้นเล็กน้อย แต่ยังคงมีให้ใช้โดยเฉพาะอย่างยิ่งจาก Microchip (เช่น23LC512 ), ON semi (เช่นN01S818HA ) และ ISSI (เช่นIS62WVS2568GBLL-45 ) แม้ว่าจะช้ากว่าแฟลชก็ตาม แต่ ISSI ที่ฉันแนะนำข้างต้นยังคงสูงถึง 45MHz (อัตราข้อมูลเดียว) โดยเห็นได้ชัดว่ารอบการอ่านขั้นต่ำจำเป็นต้องมี 11 นาฬิกาสำหรับไบต์แรก หรือใส่ในอีกทางหนึ่ง: 200ns + 45ns ต่อไบต์ (ปริมาณข้อมูล 180Mbit / s) ซึ่งไม่เลวและเกินความเร็วแกรมที่คุณระบุ

นอกจากนี้โปรดทราบว่า MCUs ระดับสูงจำนวนมาก (จาก NXP, ST, ... ) สนับสนุนอินเทอร์เฟซนี้ในฮาร์ดแวร์


ใช่มันดูเหมือนสิ่งที่ฉันเป็นหลังจากนั้น ขอบคุณ :)
จูลส์

อินเทอร์เฟซที่คล้ายกันอีกอย่างคือบัส SD แบบ 4 บิต
Dmitry Grigoryev

@DmitryGrigoryev ถูกต้องแล้ว แต่ฉันไม่คิดว่าคุณจะพบชิป RAM ที่ติดอยู่กับสิ่งนี้ได้ มีแนวโน้มว่ามีเพียงชิปแฟลช NAND (eMMC)
สลัวขาดศรัทธาใน

@dim - ความเข้าใจของฉัน (ขึ้นอยู่กับอินเตอร์เฟส QSPI ของ ST) คือพวกเขาอ่าน / เขียน (ไม่ใช่แค่อ่านอย่างเดียว) - RAM vs Flash ไม่ควรมีความสำคัญเช่นกัน
ThreePhaseEel

@ThreePhaseEel คุณถูกต้อง: บนชิป ST อินเตอร์เฟส QSPI สามารถตั้งค่าได้ในหนึ่งในสองโหมด: โหมดทางอ้อม (คุณสั่งให้คำสั่งกับชิปโดยการตั้งค่าการลงทะเบียนอย่างชัดเจน) และโหมดหน่วยความจำที่แปลโดยอัตโนมัติ หน่วยความจำเข้าถึงคำสั่งการอ่าน) ในโหมดแมปหน่วยความจำคู่มืออ้างอิงอย่างชัดเจนบอกว่าอนุญาตให้อ่านเท่านั้น อย่างไรก็ตามในโหมดอ้อมคุณสามารถส่งคำสั่งใดก็ได้ที่คุณต้องการ (อ่าน / เขียน / อะไรก็ได้) ตามที่คุณพูดถึง ฉันจะแก้ไขตาม
สลัวหมดศรัทธาใน

2

ฉันโพสต์คำตอบนี้เป็นคำตอบอื่นเนื่องจากเป็นสิ่งที่แตกต่างอย่างสิ้นเชิง

มีอินเทอร์เฟซอื่น แต่พบได้น้อยกว่าซึ่งเหมาะกับคำอธิบายของคุณ: HyperBusออกแบบโดย Cypress (เป็นกรรมสิทธิ์)

อันนี้ใช้ DDR ที่ความเร็วสูงกว่ามาก (มากถึง 166MHz) และบัส 8 บิต ดังนั้นคุณสามารถเข้าถึง 2666 Mbit / s (ว้าว!) ซึ่งทำให้ QSPI อยู่ไกล มันถูกออกแบบมาสำหรับ DRAM ที่มีความหนาแน่นสูงกว่า SRAM ดังนั้นคุณสามารถค้นหาชิป 8M x 8 (เทียบกับ 256k x 8 สำหรับ ISSI QSPI SRAM ที่กล่าวถึงในโพสต์อื่น) ใช้เพียง 12 สัญญาณ (ไม่รวมแรงดันไฟฟ้า)

นี่คือผลิตภัณฑ์จาก HyperRAM ISSI: IS66WVH8M8ALL นอกจากนี้ยังมีผลิตภัณฑ์ HyperFlash ที่คุณสามารถหาได้

แต่เราอยู่ในผลิตภัณฑ์ประเภทอื่น มันมีราคาแพงกว่าง่ายกว่า sourceable ชิปโดยทั่วไปคือ BGA และอินเทอร์เฟซนั้นค่อนข้างซับซ้อน (เนื่องจากความเร็วสูงและ DDR) นอกจากนี้ MCU ที่น้อยลงก็สนับสนุนสิ่งนี้


มีแฟลช QSPI เวอร์ชัน 8 บิตจากผู้จำหน่ายหลายรายซึ่งค่อนข้างคล้ายกับ "HyperBus" ในแง่ของประสิทธิภาพ
Timmy Brolin
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.