วันอาทิตย์ที่ 29 กรกฎาคม พ.ศ. 2555

ความรู้ทั่วไปเกี่ยวกับ arm7


บทความ ARM7 เขียนโปรแกรมกับ ARM7
ทดลองโปรแกรมหลอดแอลอีดี

ในบทความนี้เป็นการเรียนรู้เกี่ยวกับพอร์ตไอ/โอ (i/o port) ของอาร์ม7 แต่ก่อนอื่นผมต้องขออภัยที่เขียนบทความได้ล่าช้ากว่าที่ควรจะเป็น ทั้งนี้เนื่องจากช่วงเดือนที่ผ่านมานั้นมีหลายเรื่องราวประดังเข้ามาพร้อมๆกัน ไม่ว่าจะเป็นเรื่องการจากไปของโน๊ตบุ๊ก IBM ที่อยู่ร่วมกันมากว่า 2 ปี เรื่องของการสอนที่ผมต้องสอนถึง 5 วิชา คือ ดิสคริตและโครงสร้าง การวิจัยดำเนินงาน การจัดการความมั่นคงสารสนเทศ หลักความมั่นคงคอมพิวเตอร์และไซเบอร์ และพฤติกรรมการสอน แค่เตรียมสอนก็หัวปั่นเลยทีเดียว นอกจากนี้ผมต้องปั่นภาคนิพนธ์ให้จบการศึกษา (ปริญญาโทสาขาเทคโนโลยีและยุทธศาสตร์สารสนเทศ) ซึ่งตอนนี้ก็จัดการเรียบร้อยแล้ว เหลือเก็บตกพวกแก้ไขความผิดพลาดในการพิมพ์เอกสาร พร้อมกันนี้ก็เข้าศึกษาต่อระดับปริญญาเอกในสาขาเทคโนโลยีคุณภาพ ต่อเนื่องกันไป พอซาๆ จากเรื่องงานก็มาเขียนบทความกันต่อ และคงเขียนต่อไปเรื่อยๆ จนกว่าทางอีทีทีจะเบื่อหน้าผมกันไปข้างนึงครับ (ฮ่ะๆๆ ล้อเล่นนะครับ)

 อุปกรณ์
ในบทความนี้ผมใช้อุปกรณ์ประกอบการทดลองดังนี้
1. บอร์ด ET-Base ARM7 LPC2103 (www.etteam.com/product/ARM/et-base_arm2103.htm)
2. บอร์ด ET-TEST 10P/OUT (www.etteam.com/product/13A02.html)
3. บอร์ด ET-USB/RS232 (www.etteam.com/product/12A28.html) สำหรับแปลงพอร์ต USB ให้เป็น RS232
4. คอมพิวเตอร์เอเซอร์แอสไพร์ 5051 (ควักเงินซื้ออีกแล้วครับ ฮ่ะๆ)

รูปที่ 1 (ซ้าย) ET-USB/RS232 (ขวา) ET-Base ARM7 LPC2103 และ ET-TEST 10P/OUT
ซอฟต์แวร์
โปรแกรมที่ผมใช้ประกอบการทดลองก็มีดังนี้ครับ
1. โปรแกรม LPC2000 Flash ของบริษัทฟิลิปส์ใช้สำหรับโปรแกรมชิพของอาร์ม 7
2. โปรแกรม Keil-ARM7 รุ่น 3.0a (รุ่นทดลอง) สำหรับเขียนภาษาซี ซึ่งถ้าสนใจรายละเอียดการใช้งานให้อ่านจากเอกสารต่อไปนี้ครับ
2.1 http://www.etteam.com/product/ARM/01/exKeil.pdf เป็นตัวอย่างการเขียนโปรแกรม ของอีทีที
2.2 http://www.etteam.com/product/ARM/01/qStartARM.pdf เป็นเอกสารสำหรับอาร์ม 7 เบื้องต้น ของอีทีที
3. ที่ขาดไม่ได้คือไมโครซอฟต์วินโดวส์ XP Pro SP2 (รหัสเป็นของจริง แต่ลงใหม่ไม่ได้แล้วเนื่องจากลงหลายครั้ง ไมโครซอฟต์ไม่ยอมให้ activated ผมเลยต้องใช้ของปลอมแล้วเปลี่ยนรหัสเป็นของจริง... งงไหมครับ :D)
วงจรการเชื่อมต่อ
ในการทดลองนี้ผมเชื่อมต่อบอร์ด ET-TEST 10P/OUT เข้ากับพอร์ต P0.8-P0.15 ของอาร์ม 7 ดังรูปด้านล่าง

รูปที่ 2 การเชื่อมต่อ ET-Base ARM7 LPC 2103 เข้ากับ ET-TEST 10P/OUT

พอร์ตของอาร์ม 7
อาร์ม 7 มีพอร์ตเอนกประสงค์ (GPIO: general purpose input/output) ให้ผู้เขียนโปรแกรมใช้งานได้ 2 พอร์ต คือ พอร์ต0 (P0) และพอร์ต1 (P1) ทั้งสองพอร์ตนี้จะถูกอ้างอิงด้วยเรจิสเตอร์ขนาด 32 บิต แต่ในการใช้งานจริง P0 ของบอร์ด ET-Base ARM7 LPC2103 นั้นเราสามารถใช้งานได้เพียง 30 บิต คือ ขา P0.0-P0.25 และ P0.27-P0.30 ส่วน P1 นั้นสามารถใช้ได้ 16 บิต คือ P1.16-P1.31
ในการสั่งงานนั้นจะต้องกำหนดการทำงานของแต่ละขาของพอร์ตผ่านทางเรจิสเตอร์ PINSEL0, PINSEL1 และ PINSEL2 ซึ่งมีรายละเอียดดังต่อไปนี
 
 จากการจัดเรียงบิตใน PINSEL0 จะพบว่าในแต่ละบิตของพอร์ต P0 นั้นประกอบไปด้วย 2 บิต ทั้งนี้เนื่องจาก เราสามารถที่จะกำหนดภาวการณ์ทำงานของแต่ละบิตของ P0 ได้ ดังรายละเอียดต่อไปนี้ครับ


สิ่งที่เราจะต้องระวังเป็นอย่างมากคือ ในการใช้ P0 นั้น เราจะต้องกำหนดค่าของ P0.0 และ P0.1 เป็น 01 กับ 01 เสมอ เนื่องจากวงจรของ ET-Base ARM7 LPC1203 นั้นต่อสองขานี้เข้ากับวงจร RS232 ซึ่งถ้ากำหนดค่าผิดพลาดอาจจะมีผลกับบอร์ดได้ครับ

ในตารางต่อไปนี้จะเป็นของ PINSEL1 ครับ
รายละเอียดของภาวการณ์ทำงานของแต่ละบิตของ P0.16-P0.30 เป็นดังต่อไปนี้ครับ
และตารางต่อไปนี้เป็นตารางของ PINSEL2 มีรายการแตกต่างจาก PINSEL0 และ PINSEL1 เนื่องจากในการกำหนดค่านั้นเราสามารถกำหนดภาวการณ์ทำงานได้ 4 ลักษณะดังตารางถัดไป
ทั้งนี้นอกจาก PINSEL0, PINSEL1 และ PINSEL2 แล้วยังมีเรจิสเตอร์สำหรับควบคุมการทำงานของ GPIO อีก นั่นคือ IOPIN, IOSET, IOCLR และ IODIR โดยมีหน้าที่ดังตารางต่อไปนี้


เรจิสเตอร์
การทำงาน
ความหมาย
IOPIN0
อ่าน
อ่านสภานะของพอร์ต P0
IOPIN1
อ่าน
อ่านสถานะของพอร์ต P1
IOSET0
เขียน/อ่าน
กำหนดบิตที่ระบุของพอร์ต P0 ให้เป็น 1
IOSET1
เขียน/อ่าน
กำหนดบิตที่ระบุของพอร์ต P1 ให้เป็น 1
IOCLR0
เขียน/อ่าน
กำหนดบิตที่ระบุของพอร์ต P0 ให้เป็น 0
IOCLR1
เขียน/อ่าน
กำหนดบิตที่ระบุของพอร์ต P1 ให้เป็น 0
IODIR0
เขียน
กำหนดบิตที่ระบุว่าเป็น 1 ของพอร์ต P0 เป็นส่วนนำออก
IODIR1
เขียน
กำหนดบิตที่ระบุว่าเป็น 1 ของพอร์ต P1 เป็นส่วนนำออก

จากข้อมูลทั้งหมดทำให้เราทราบว่าการติดต่อกับพอร์ตภายนอกนั้นเราจะต้องกำหนดค่าการทำงานของแต่ละบิตของ P0 กับ P1 ได้อย่างไร และเราได้รู้จักคำสั่งพื้นฐานอีก 8 คำสั่ง ที่ใช้สำหรับอ่านค่าสถานะของพอร์ต กำหนดค่าบิตของพอร์ตให้เป็น1 กำหนดค่าบิตของพอร์ตให้เป็น0 และกำหนดบิตของพอร์ตให้ทำงานเป็นส่วนนำเข้าหรือส่งออก
เพื่อความเข้าใจผมขอยกตัวอย่างง่ายๆให้พอมองเห็นภาพ เช่น ถ้าเราต้องการกำหนดให้ P0.8 ถึง P0.15 เป็นพอร์ตส่งออก (output port) เราจะต้องกำหนดค่าดังนี้
PINSEL0 = 0x00000005; /* กำหนดให้ P0.0 ทำงานเป็น TxD และ P0.1 ทำงานเป็น RxD*/
IODIR0 = 0x0000FF00; /* 0000 0000 0000 0000-1111 1111 0000 0000 */
ถ้าเราต้องการหลอดแอลอีดีให้มีการติด/ดับสลับกันไปจะสามารถเขียนขั้นตอนได้ดังนี้
IOSET0 = 0x0000FF00;
หน่วงเวลา
IOCLR0 = 0x0000FF00;
หน่วงเวลา
ตัวอย่างโปรแกรม
จากทั้งหมดเมื่อเรานำมารวมกันเป็นโปรแกรมจะสามารถเขียนออกมาได้อย่างนี้
#include <LPC21xx.h>
void delay(int nCnt)
{
int cnt, cnt2;
for (cnt=0; cnt<nCnt; cnt++) {
for (cnt2=0; cnt2<1000; cnt2++);
}
}
int main(void)
{
PINSEL0 = 0x00000005;
IODIR0 = 0x0000FF00;
for (;;) {
IOSET0 = 0x0000FF00;
delay(5000);
IOCLR0 = 0x0000FF00;
Delay(5000);
}
 }

สรุป
จากบทความนี้คงพอจะเป็นข้อมูลพื้นฐานได้ว่าเราจะสามารถกำหนดสภาวะการทำงานของพอร์ต และสั่งงานการทำงานของพอร์ตได้อย่างไร ในครั้งหน้าเราจะเพิ่มการเชื่อมต่อกับสวิทช์ร่วมกับหลอดแอลอีดีเพื่อสั่งให้แอลอีดีทำงานได้หลากหลายขึ้น โดยอาศัยตัวอย่างของการเขียนในครั้งนี้เป็นพื้นฐาน
สุดท้ายต้องขอขอบคุณทางบริษัทอีทีทีที่ยังคงสนับสนุนการทำงานของผม และขอขอบคุณครอบครัวที่ให้กำลังใจผมตลอดมา วันนี้ผมก็ต้องทำงานหนักมากขึ้น แต่ผมจะเขียนบทความให้ได้ทุกเดือน เพราะสิ่งที่ผมทำอยู่นี้เป็นความใฝ่ฝันของผม เพียงแต่เมื่อเราเติบโตขึ้น อะไรต่อมิอะไรก็นำพาเราไปทางโน้นทางนี้จนเราแทบจะไม่ได้อยู่บนทางเดินที่เราชอบ แต่อย่างไรก็ดีถึงผมจะต้องเดินออกนอกทางเดินที่ผมใฝ่ฝัน ผมก็ยังมีอีทีทีเป็นแหล่งเผยแพร่ความรู้ที่ผมพยายามศึกษา ถึงมันจะไม่มากมาย ไม่ยาก ไม่ลึกลับซับซ้อน แต่คงพอจะเป็นประโยชน์บ้างสำหรับคนเริ่มต้น หรือคนที่สนใจ

วันพุธที่ 18 กรกฎาคม พ.ศ. 2555

เทคโนโลยี FB-DIMM



เทคโนโลยี FB-DIMM

เทคโนโลยี FB-DIMM (โมดูลหน่วยความจำแบบแถวเรียงคู่ที่มีบัฟเฟอร์ครบถ้วน) เป็นการผสมผสานหน่วยความจำความเร็วสูง เข้ากับสถาปัตยกรรมหน่วยความจำแบบอนุกรมจุดต่อจุดใหม่ สำหรับเซิร์ฟเวอร์ยุคต่อไป
FB-DIMM
FB-DIMM คือเทคโนโลยีหน่วยความจำเซิร์ฟเวอร์ยุคต่อไป ซึ่งขณะนี้ JEDEC ซึ่งเป็นกลุ่มมาตรฐานอุตสาหกรรม กำลังกำหนดมาตรฐานอยู่ Intel Corporation ซึ่งเป็นผู้พัฒนาเทคโนโลยี FB-DIMM รายสำคัญ และเป็นผู้นำมาใช้งานเจ้าแรก กำลังเปิดตัวเซิร์ฟเวอร์ Xeon สองทาง (ชื่อรหัสว่า "Bensley") โดยใช้ชิปเซ็ต 5000 ชุด โดยจะเริ่มเปิดตัวในปี 2549 นี้ FB-DIMM เป็นโมดูลหน่วยความจำ "อัจฉริยะ" ซึ่งติดตั้งคอนโทรลเลอร์หน่วยความจำพิเศษไว้ในตัว
          FB-DIMM ไม่สามารถใช้ร่วมกับเซิร์ฟเวอร์ที่มีอยู่ ที่ใช้หน่วยความจำ DDR2 Registered DIMM ได้ นอกจากนั้นยังใช้งานกับแพลตฟอร์มของเดสก์ท็อป หรืออุปกรณ์มือถือไม่ได้ด้วย เนื่องจากออกแบบมาเฉพาะสำหรับเซิร์ฟเวอร์ ที่ใช้สถาปัตยกรรมหน่วยความจำ FB-DIMM เท่านั้น
เซิร์ฟเวอร์ที่ใช้ FB-DIMM
          เซิร์ฟเวอร์ที่ใช้ FB-DIMM เริ่มเปิดตัวแล้วเมื่อปลายเดือนพฤษภาคม 2549 โดยผู้ผลิตเซิร์ฟเวอร์และเมนบอร์ดรายใหญ่ Kingston จะเริ่มเปิดตัว FB-DIMM เฉพาะระบบ เมื่อ OEM เริ่มเปิดตัวแพลตฟอร์มเซิร์ฟเวอร์ใหม่ ValueRAM FB-DIMM ที่ได้มาตรฐานอุตสาหกรรมของ Kingston มีความจุที่ 512MB, 1GB และ 2GB ได้เริ่มเปิดตัวแล้วตั้งแต่ไตรมาสที่ 1 ของปี 2549 โดยคาดว่าจะเปิดตัว 4GB FB-DIMM ได้ในไตรมาสที่ 3 ของปี 2549

ผลกระทบต่อไอทีจากเทคโนโลยี FB-DIMM
          FB-DIMM ช่วยแก้ไขปัญหาเรื่องความจุของหน่วยความจำ DDR2 และจะทำให้เซิร์ฟเวอร์สองทางมีหน่วยความจำ DDR2 ได้สูงถึง 64 GB ในปี 2549 โดยเซิร์ฟเวอร์เหล่านี้จะกำหนดค่าให้ซ็อกเก็ตรองรับ FB-DIMM ได้ 8, 12, หรือ 16 ตัว ทำให้หน่วยความจำมีความยืดหยุ่นได้มากอย่างไม่เคยมีมาก่อน FB-DIMM จะช่วยให้อัพเกรดหน่วยความจำของเซิร์ฟเวอร์ได้เมื่อเวลาผ่านไปนานๆ จึงทำให้เซิร์ฟเวอร์มีอายุการใช้งานยาวนานขึ้น และช่วยลดต้นทุนโดยรวมของเจ้าของ (TCO) ลงอีกด้วย เซิร์ฟเวอร์ที่ใช้ FB-DIMM จะทำให้ซ็อกเก็ตหน่วยความจำทั้งหมดสามารถใช้งานได้ ต่างจากเซิร์ฟเวอร์ Lindenhurst ที่มีข้อจำกัด ทำให้ต้องปล่อยช่องเสียบหน่วยความจำว่างไว้ ถ้าเครื่องถึงขีดจำกัดนั้น
          แผนผังต่อไปนี้แสดงแพลตฟอร์ม Bensley สองแบบหลักๆ ที่คาดว่าจะออกในปี 2549 และแสดงความจุของหน่วยความจำ DDR2 ที่คาดว่าจะมี

หลักการทำงานของเทคโนโลยี FB-DIMM
          เทคโนโลยี FB-DIMM ใช้การเชื่อมต่อหน่วยความจำแบบอนุกรมความเร็วสูง (บัสแคบ) เหมือนกับเทคโนโลยี PCI Express ที่เปิดตัวไปแล้วเมื่อเดือนมิถุนายน 2547 โดย FB-DIMM จะมีคอนโทรลเลอร์อัจฉริยะติดตั้งอยู่ภายใน เรียกว่า Advanced Memory Buffer (AMB) ซึ่งทำหน้าที่อ่านและเขียน DRAM ของโมดูลทั้งหมด ขณะเดียวกันก็ดูแลการสื่อสารเชื่อมต่อที่ระดับความเร็วสูงระหว่างคอนโทรลเลอร์ของหน่วยความจำ FB-DIMMs คือโมดูลหน่วยความจำ "อัจฉริยะ"


          FB-DIMM ใช้ DDR2-533 และ DDR2-667 DRAM เดิม ซึ่งใช้งานอยู่แล้วบนเครื่องเดสก์ท็อปและโน๊ตบุ๊ครุ่นใหม่ๆ (แพลตฟอร์ม Bensley จะเริ่มเปิดตัวพร้อมกับหน่วยความจำ DDR2-533 และจะรองรับหน่วยความจำ DDR2-667 ในภายหลังในปี 2549)
          แพลตฟอร์มของเซิร์ฟเวอร์ที่ใช้ FB-DIMM จะเพิ่มหน่วยความจำขึ้นถึง 6 ช่อง โดยใช้ FB-DIMM 8 ตัวต่อช่อง เมื่อกำหนดค่าสูงสุด เซิร์ฟเวอร์ระดับบนในอนาคตจะมีซ็อกเก็ตสำหรับ FB-DIMM ถึง 48 ช่อง ช่วยให้เพิ่มความจุของหน่วยความจำได้ถึง 192 GB โดยใช้โมดูล 4-GB FB-DIMM


          FB-DIMM ใช้ชิปหน่วยความจำ DDR2 มาตรฐานที่ 1.8 โวลต์ Advanced Memory Buffer ต้องใช้ไฟ 1.5 โวลต์ FB-DIMM ใช้พลังงานมากกว่า DDR2 Registered DIMM รุ่นเก่า (เพิ่มขึ้นประมาณ 3-5 วัตต์ต่อโมดูล)

         ด้วยความแตกต่างจากแพลตฟอร์มของเซิร์ฟเวอร์ก่อนปี 2549 ซึ่งได้รับผลกระทบจากปัญหาการจัดลำดับ สำหรับหน่วยความจำ DDR2 จึงทำให้ FB-DIMM ขจัดปัญหาเรื่องการจัดลำดับบนเซิร์ฟเวอร์ Bensley และ FB-DIMM ในอนาคตได้ เซิร์ฟเวอร์ Bensley ใหม่ๆ สามารถรองรับ FB-DIMM ลำดับคู่ได้ในซ็อกเก็ตทุกช่อง
FB-DIMM กับส่วนกระจายความร้อน
          Advanced Memory Buffer (AMB) ซึ่งเป็นชิปอัจฉริยะที่ทำหน้าที่จัดการการสื่อสารบนโมดูลของหน่วยความจำ FB-DIMM เป็นคอนโทรลเลอร์ หรือหน่วยประมวลผลเฉพาะ ซึ่งมีความร้อนมากกว่า DRAM ดังนั้นส่วนกระจายความร้อนจึงช่วยไล่ความความร้อนออกจากชิป AMB และ DRAM โดยมีพื้นที่กว้างขึ้น เพื่อระบายความร้อนด้วยพัดลมที่ติดตั้งอยู่ภายในเซิร์ฟเวอร์ FB-DIMM ทุกตัวของ Kingston จะมีส่วนกระจายความร้อนให้ DIMM เต็มที่ เพื่อช่วยเพิ่มความน่าเชื่อถือในการทำงาน
          เซิร์ฟเวอร์ทั้งหมดที่ใช้หน่วยความจำ FB-DIMM จะได้รับการออกแบบจากผู้ผลิต ให้สามารถกระจายความร้อนออกจากโมดูลหน่วยความจำได้อย่างมีประสิทธิภาพ
ชิป AMB คืออะไร และทำไมจึงความจำเป็น
          ชิป AMB หรือชิป Advanced Memory Buffer เป็นหน่วยประมวลผลเฉพาะ (หรือคอนโทรลเลอร์) ที่ติดตั้งไว้บนโมดูล FB-DIMM ทุกตัว เพื่อช่วยให้คอนโทรลเลอร์หน่วยความจำในเมนบอร์ดของเซิร์ฟเวอร์ "เอ้าท์ซอร์ส" ฟังก์ชันในการบริหาร DRAM ไปยังชิป AMB ได้ กระบวนการเอ้าท์ซอร์สนี้เอง ช่วยแก้ไขปัญหาไฟส่วนเกินปริมาณมาก ที่ส่งผลกระทบต่อโมดูลเซิร์ฟเวอร์ DIMM จดทะเบียน
          นอกเหนือจากบริหารการอ่านและเขียนทั้งหมดของ FB-DIMM ไปยังการทำงานของ DRAM แล้ว AMB ยังทำหน้าที่จัดการการสื่อสารเชื่อมต่อหน่วยความจำความเร็วสูง โดยเชื่อมโยงคอนโทลเลอร์หน่วยความจำ กับ FB-DIMM ทุกตัวในช่อง
FB-DIMM จะมีราคามากกว่าโมดูลหน่วยความจำเซิร์ฟเวอร์ DIMM จดทะเบียน ที่มีอยู่หรือไม่?
          ในการกำหนดค่าหน่วยความจำ DDR2 ตั้งแต่ 8G ขึ้นไปให้เหมือนกัน โดยทั่วไปเซิร์ฟเวอร์ Bensley จะลดค่าใช้จ่ายของหน่วยความจำลงได้มากกว่าเซิร์ฟเวอร์ Lindenhurst รุ่นเก่าๆ

          เซิร์ฟเวอร์ Bensley จะช่วยให้ซ็อกเก็ต FB-DIMM ทั้งหมดสามารถใช้งานได้ จึงช่วยเพิ่มช่องห่างระหว่างความจุของหน่วยความจำได้อย่างมีประสิทธิภาพ เช่น ในการกำหนดค่าให้เซิร์ฟเวอร์ Lindenhurst ที่มีหน่วยความจำ DDR2 ความจุ 16 GB จะมีตัวเลือกให้ใช้โมดูลหน่วยความจำลำดับเดี่ยวขนาด 2-GB ได้แปดตัว หรือโมดูลหน่วยความจำลำดับคู่ขนาด 4-GB ได้สี่ตัว ซึ่งทั้งสองตัวเลือกมีค่าใช้จ่ายสูงเนื่องจาก DRAM มีราคาสูงกว่า บนแพลตฟอร์มของ Bensley ที่ใช้ซ็อกเก็ต FB-DIMM สิบหกตัว สามารถใช้ FB-DIMM ขนาด 1-GB ได้สิบหกตัว ทำให้ประหยัดค่าใช้จ่ายได้มาก FB-DIMM ช่วยลดต้นทุนของหน่วยความจำลงได้ โดยใช้โมดูลหน่วยความจำความจุต่ำที่มีราคาถูก แทนโมดูลหน่วยความจำความจุสูงที่มีราคาแพงกว่ามาก
          ชิป AMB จะเพิ่มต้นทุนให้กับหน่วยความจำเซิร์ฟเวอร์ FB-DIMM เล็กน้อย และคาดว่าต้นทุนส่วนนี้จะลดลง เมื่อเริ่มผลิตในปริมาณมากในปี 2549
ใช้ FB-DIMM ความเร็ว 533MHz และ 667MHz รวมกันบนเมนบอร์ดเดียวกันได้หรือไม่
          ได้ แต่เซิร์ฟเวอร์ที่รองรับความเร็วของ DDR2-667 จะเข้าถึงหน่วยความจำด้วยความเร็วที่ลดลง หรือที่ความเร็ว 533MHz สำหรับกรณีนี้ เพื่อประสิทธิภาพในการทำงานและความประหยัดสูงสุด FB-DIMM ทั้งหมดควรจะมีความเร็วเท่ากัน
ใช้ FB-DIMM ลำดับเดี่ยวและคู่ร่วมกันได้หรือไม่
          FB-DIMM ทั้งหมดควรจะติดตั้งในซ็อกเก็ตที่ตรงกันตามช่องที่จับคู่กัน เพื่อการทำงานแบบช่องคู่ได้อย่างเหมาะสม (เช่น โมดูล 1 ของช่อง A ควรจะตรงกับโมดูล 1 ของช่อง B) แม้ว่า FB-DIMM ลำดับเดี่ยวและคู่สามารถติดตั้งในเซิร์ฟเวอร์เฉพาะได้ แต่การทำงานแบบช่องคู่ที่เหมาะสมอาจได้รับผลกระทบ จากการใช้ FB-DIMM ลำดับเดี่ยวและคู่ร่วมกันในซ็อกเก็ตช่องคู่ที่ตรงกัน
DDR2-800 FB-DIMM จะออกได้เมื่อไหร่
          ในไตรมาสที่สองของปี 2549 ยังไม่มีแผนที่แน่นอนว่าจะออก DDR2-800 FB-DIMM ได้ในปี 2549
แนวโน้มตลาดกับเทคโนโลยี FB-DIMM
          เทคโนโลยี FB-DIMM จะเริ่มใช้กับแพลตฟอร์ม Bensley ใหม่ๆ ของ Intel ทั้งหมดในปี 2549 และคาดว่าจะเริ่มใช้แพลตฟอร์ม Xeon MP ใหม่ของ Intel ได้ในปี 2550 ขณะนี้ JEDEC กำลังกำหนดมาตรฐาน FB-DIMM สำหรับแพลตฟอร์มของเซิร์ฟเวอร์ยุคถัดไปอยู่ Kingston คาดว่า FB-DIMM จะกลายเป็นมาตรฐานหน่วยความจำเซิร์ฟเวอร์อย่างรวดเร็ว ในไม่กี่ปีข้างหน้า