Unified Data Model

สิ่งหนึ่งที่ท้าทายในขั้นตอน product development ทุกวันนี้คือการบริการข้อมูลที่แม่นยำ ข้อมูลที่สอดคล้องถูกต้องระหว่างขั้นตอนการออกแบบ ซึ่งมักจะมีการแก้ ปรับเปลี่ยนไปมา ระหว่างการพัฒนาหนึ่งๆ

นักออกแบบในอดีต ใช้เครื่องมือต่างชนิด ต่างประเภท ในระหว่างขั้นของการออกแบบ เมื่อจบแต่ละขั้นและต้องการก้าวหน้าขั้นต่อไป จะใช้วิธีส่งไฟล์ เช่นการส่ง design จาก SCH ไปยัง PCB เป็นต้น แต่ในยุคปัจจุบัน product development ไม่ได้จบเพียงนั้น ยังต้องรวม embedded software development, FPGA design, mechanical CAD, procurement (เอกสารสำหรับการจัดซื้อ), ไปถึงไฟล์สำหรับ manufacturing ในกระบวนการที่ซับซ้อนขึ้น การส่งไฟล์ข้ามระหว่างขั้นตอน หากขาดการจัดการที่ดี จะประสบปัญหาอย่างมาก และทำให้เกิดปัญหาได้ง่าย ตัวอย่างเช่น หาก BOM มาถึงขั้นตอนการจัดซื้อ แต่ปรากฏว่าทางทีมออกแบบได้ปรับเปลี่ยนอุปกรณ์บางตัว ข้อมูลการปรับเปลี่ยนจะถ่ายทอดมาทางจัดซื้อได้อย่างไร?

Altium Designer แก้ปัญหาเหล่านี้โดยการพัฒนา Unified Data Model ขึ้น

The unified data model

ขั้นตอนการออกแบบใน Altium Designer กระจายอยู่รอบๆข้อมูล เครื่องมือแต่ละชนิดใน Altium Designer กระทำโดยตรงกับชุดหรือกลุ่มข้อมูลของเครื่องมือนั้น แนวคิดเรื่อง Unified Data Model มิได้หมายความว่าจะมีไฟล์เพียงชุดเดียว รองรับงานออกแบบทั้งระบบ แต่หมายความว่า เครื่องมือแก้ไขแต่ละตัวจะเปิดไฟล์ที่เกี่ยวข้อง ส่วนการประสานงานระหว่างเครื่องจะเป็นกระบวนการเบื้องหลัง ในหน่วยความจำ เพื่อส่งต่อระหว่างเครื่องมือแก้ไขด้วยกัน ไม่จำเป็นต้องเชื่อมต่อผ่านระบบไฟล์ในฮาร์ดดิสค์ เช่นเครื่องมือแยกชนิด เมื่อใดก็ตามเมื่อใช้คำสั่ง Save ข้อมูลในหน่วยความจำจะถูกบันทึกเข้าในไฟล์ และเข้าไปในเนื้อที่บนฮาร์ดิสค์ทันที

ข้อดีของ Unified Data Model มีจุดสำคัญดังนี้

  • สามารถ Synchronize ระหว่างข้อมูล design ไม่จำเป็นต้องกระทำผ่านไฟล์ในฮาร์ดดิสค์
  • นักออกแบบแต่ละคนสามารถมองเห็นข้อมูลทั้งหมดได้อย่างชัดเจน เข้าถึงและเลือกตัดสินใจบนข้อมูลที่เขาต้องการที่ดีที่สุด
  •  สถานะของข้อมูลสามารถตรวจสอบได้ โดยผ่านระบบ version control เป็นต้น

Direct design synchronization

เนื่องจากเครื่องมือแก้ไขแต่ละชนิดของ Altium Designer ทำงานอยู่บน Unified Data Model ผลกระทบการแก้ไขในขั้นตอนหนึ่ง จะพุ่งทะลุไปยังขั้นตอนต่อไป โดยไม่มีปัญหาความผิดพลาด ตัวอย่างเช่นเพิ่ม component เข้าไปใน SCH และสั่ง update จะทำให้ component ตัวนั้นปรากฏบน PCB และพร้อมสำหรับ placement ทันที อีกตัวอย่าง ทำ pin swap ของ FPGA ที่มีจำนวน 1000 ขา เพื่อให้ routing ได้ง่าย ซึ่งการสลับขานี้จะถูกนำไปปรับปรุงใน SCH ทันทีเช่นกัน อีกตัวอย่างเช่น เพิ่ม memory เข้าไปใน FPGA processor (เนื่องจากเดิมไม่พอใช้งานในโปรแกรม) กระบวนการเพิ่มจะถูกผลักดันให้ไปปรับปรุงทั้งใน embedded firmware ทั้งหมดใน project และพร้อมใช้งานหรือ debug ต่อได้ทันที งานซึ่งเคยน่าเบื่อและมีโอกาสเกิดความผิดพลาดสูง จะเป็นงานที่ง่ายขึ้นอย่างชัดเจน

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer