อะไรคือความแตกต่างและสถานที่ที่คุณจะใช้แต่ละอัน
อะไรคือความแตกต่างและสถานที่ที่คุณจะใช้แต่ละอัน
คำตอบ:
มีการแลกเปลี่ยนกันมากมาย
Wikipedia ยัง:
แม้จะมีทรานซิสเตอร์เพิ่มเติม แต่การลดลงของสายกราวด์และสายบิตทำให้เค้าโครงมีความหนาแน่นมากขึ้นและความจุในการเก็บข้อมูลต่อชิปที่สูงขึ้น นอกจากนี้แฟลช NAND โดยทั่วไปจะได้รับอนุญาตให้มีข้อผิดพลาดจำนวนหนึ่ง (แฟลช NOR ที่ใช้สำหรับ BIOS ROM คาดว่าจะไม่มีข้อผิดพลาด) ผู้ผลิตพยายามเพิ่มปริมาณการจัดเก็บที่ใช้งานได้ให้มากที่สุดโดยลดขนาดของทรานซิสเตอร์ให้ต่ำกว่าขนาดที่สามารถทำได้อย่างน่าเชื่อถือจนถึงขนาดที่การลดลงต่อไปจะเพิ่มจำนวนความผิดพลาดได้เร็วกว่าที่จะเพิ่มพื้นที่เก็บข้อมูลทั้งหมด
ดังนั้นแฟลช NOR สามารถระบุตำแหน่งได้ง่ายขึ้น แต่ไม่ใกล้เคียงกับความหนาแน่น
ถ้าคุณดูที่การเปรียบเทียบ PDF ที่ดีงาม
NOR มีพลังงานสแตนด์บายต่ำเป็นเรื่องง่ายสำหรับการเรียกใช้โค้ดและมีความเร็วในการอ่านสูง
NAND มีพลังงานที่ใช้งานได้ต่ำกว่ามาก (บิตการเขียนเร็วกว่าและต้นทุนต่ำกว่า), ความเร็วการเขียนสูงขึ้น (มาก), ความจุที่สูงขึ้นมาก, ราคาต่อบิตที่ต่ำกว่ามากและง่ายต่อการใช้ที่เก็บไฟล์ เนื่องจากความเร็วในการอ่านลดลงเมื่อใช้เพื่อการเรียกใช้โค้ดคุณจะต้องโกสต์เพื่อ ram
หากต้องการอ้างอิงส่วนเล็ก ๆ ด้วยตารางที่ดีด้านบน ...
แฟลช NAND มีราคาถูกกว่าดังนั้นคุณจึงต้องการใช้งานหากทำได้ ข้อเสียคือมันไม่น่าเชื่อถือ แฟลช NAND เร็วกว่าในการใช้งานส่วนใหญ่โดยมีข้อยกเว้นที่น่าสังเกตว่าเป็นการอ่านแบบสุ่มขนาดเล็ก ถ้าคุณต้องการอ่านสองสามไบต์จากที่อยู่แบบสุ่มในหน่วยความจำ NOR จะเร็วขึ้น สำหรับการอ่านหน่วยความจำขนาดใหญ่ NAND ทำได้ดีพอสมควรและจริง ๆ แล้วชนะ NOR สำหรับชิ้นส่วนที่ใหญ่พอ
ระบบปฏิบัติการแบบฝังตัวส่วนใหญ่จะมีรหัสเพื่อแก้ไขข้อผิดพลาดใน NAND Flash นอกจากนี้ยังมีไมโครคอนโทรลเลอร์พร้อมการแก้ไขข้อผิดพลาดของฮาร์ดแวร์ ปัญหาที่แท้จริงเกิดขึ้นในเวลาบูต - bootloaders ระดับแรกไม่มีรหัสแก้ไขข้อผิดพลาดและพวกเขายังไม่ได้กำหนดค่าตัวควบคุมหน่วยความจำให้เรียกใช้ฮาร์ดแวร์ ECC เลย เป็นปัญหาไก่และไข่เล็กน้อย - คุณไม่สามารถโหลดรหัส ECC ได้โดยไม่มีข้อผิดพลาดเนื่องจากคุณยังไม่ได้โหลดรหัส ECC
เพื่อแก้ไขปัญหานี้ผู้ผลิตหน่วยความจำบางรายจะระบุภูมิภาคที่แน่นอนของชิปที่รับประกันว่าจะปราศจากข้อผิดพลาด (4 kB แรกหรืออะไรทำนองนั้น) คุณใส่ bootloader กับซอฟต์แวร์ ECC ที่นั่น (เช่นU-boot ) อ่านมันโดยไม่มีข้อผิดพลาดจากนั้นใช้มันเพื่ออ่านเคอร์เนลระบบปฏิบัติการของคุณแก้ไขข้อผิดพลาดในขณะที่คุณไป นอกจากนี้คุณยังสามารถเก็บ bootloader ในแฟลชอนุกรมและใช้แฟลช NAND สำหรับสิ่งที่มีขนาดใหญ่เช่นเคอร์เนลระบบปฏิบัติการหรือระบบไฟล์
ฉันพบบันทึกแอปพลิเคชัน Atmel นี้มีประโยชน์: http://www.atmel.com/dyn/resources/prod_documents/doc6255.pdf
NOR อนุญาตการเข้าถึงแบบสุ่ม แต่ NAND ไม่ได้ (การเข้าถึงหน้าเท่านั้น)
จากวิกิพีเดีย :
แฟลช NOR และ NAND ได้ชื่อมาจากโครงสร้างการเชื่อมต่อระหว่างเซลล์หน่วยความจำ ในแฟลช NOR เซลล์เชื่อมต่อขนานกับบิตไลน์ทำให้เซลล์สามารถอ่านและตั้งโปรแกรมแยกกันได้ การเชื่อมต่อแบบขนานของเซลล์คล้ายกับการเชื่อมต่อแบบขนานของทรานซิสเตอร์ในเกต CMOS NOR ในแฟลช NAND เซลล์เชื่อมต่อเป็นอนุกรมคล้ายกับเกท NAND การเชื่อมต่อแบบอนุกรมใช้พื้นที่น้อยกว่าแบบขนานทำให้ลดค่าใช้จ่ายของแฟลช NAND ไม่ป้องกันเซลล์ NAND จากการอ่านและตั้งโปรแกรมแยกต่างหาก