การสำรวจเชิงลึกเกี่ยวกับการทดสอบ Boundary Scan (JTAG) สำหรับฮาร์ดแวร์ ครอบคลุมหลักการ ข้อดี การใช้งาน และแนวโน้มในอนาคตในการผลิตและออกแบบอิเล็กทรอนิกส์
การทดสอบฮาร์ดแวร์: คู่มือฉบับสมบูรณ์เกี่ยวกับการสแกนขอบเขต (JTAG)
ในโลกของอิเล็กทรอนิกส์ที่พัฒนาอยู่ตลอดเวลา การรับประกันคุณภาพและความน่าเชื่อถือของฮาร์ดแวร์เป็นสิ่งสำคัญยิ่ง เมื่อความหนาแน่นของแผงวงจรเพิ่มขึ้นและขนาดของส่วนประกอบเล็กลง วิธีการทดสอบแบบดั้งเดิมจึงกลายเป็นเรื่องที่ท้าทายและมีค่าใช้จ่ายสูงขึ้น Boundary Scan หรือที่เรียกว่า JTAG (Joint Test Action Group) มอบโซลูชันที่มีประสิทธิภาพและหลากหลายสำหรับการทดสอบชุดประกอบอิเล็กทรอนิกส์ที่ซับซ้อน คู่มือฉบับสมบูรณ์นี้จะเจาะลึกถึงหลักการ ผลประโยชน์ การใช้งาน และแนวโน้มในอนาคตของการทดสอบ Boundary Scan
Boundary Scan (JTAG) คืออะไร?
Boundary Scan เป็นวิธีการมาตรฐานสำหรับการทดสอบการเชื่อมต่อระหว่างวงจรรวม (IC) บนแผงวงจรพิมพ์ (PCB) โดยไม่ต้องใช้การตรวจสอบทางกายภาพ กำหนดโดยมาตรฐาน IEEE 1149.1 ซึ่งระบุโปรโตคอลการสื่อสารแบบอนุกรมและสถาปัตยกรรมที่อนุญาตให้เข้าถึงโหนดภายในของ IC ผ่านพอร์ตทดสอบเฉพาะ พอร์ตนี้มักประกอบด้วยสัญญาณสี่หรือห้าสัญญาณ: TDI (Test Data In), TDO (Test Data Out), TCK (Test Clock), TMS (Test Mode Select) และ TRST (Test Reset) (ถ้ามี)
ในแกนหลัก Boundary Scan เกี่ยวข้องกับการวางเซลล์สแกนที่อินพุตและเอาต์พุตของ IC เซลล์สแกนเหล่านี้สามารถจับข้อมูลจากตรรกะการทำงานของ IC และเลื่อนออกไปผ่านพอร์ตทดสอบ ในทางกลับกัน ข้อมูลสามารถเลื่อนเข้าไปในเซลล์สแกนจากพอร์ตทดสอบและนำไปใช้กับตรรกะการทำงาน ด้วยการควบคุมข้อมูลที่เลื่อนเข้าและออก วิศวกรสามารถทดสอบการเชื่อมต่อระหว่าง IC ระบุข้อบกพร่อง และแม้แต่ตั้งโปรแกรมอุปกรณ์
ที่มาและวิวัฒนาการของ JTAG
ความซับซ้อนที่เพิ่มขึ้นของแผงวงจรพิมพ์ (PCB) และเทคโนโลยีติดตั้งบนพื้นผิว (SMT) ในทศวรรษ 1980 ทำให้การทดสอบ 'เตียงตะปู' แบบดั้งเดิมเป็นเรื่องยากและมีค่าใช้จ่ายสูงขึ้น ด้วยเหตุนี้ กลุ่ม Joint Test Action Group (JTAG) จึงถูกก่อตั้งขึ้นเพื่อพัฒนาวิธีการทดสอบ PCB ที่ได้มาตรฐานและคุ้มค่า ผลลัพธ์คือมาตรฐาน IEEE 1149.1 ซึ่งได้รับการรับรองอย่างเป็นทางการในปี 1990
ตั้งแต่นั้นมา JTAG ได้พัฒนาจากเทคโนโลยีการทดสอบที่เน้นการผลิตเป็นหลักไปสู่โซลูชันที่ใช้กันอย่างแพร่หลายสำหรับแอปพลิเคชันต่างๆ ซึ่งรวมถึง:
- การทดสอบการผลิต: ตรวจจับข้อบกพร่องในการผลิต เช่น รอยต่อสั้น วงจรเปิด และการวางส่วนประกอบที่ไม่ถูกต้อง
- การตั้งโปรแกรมในระบบ (ISP): การตั้งโปรแกรมหน่วยความจำแฟลชและอุปกรณ์ที่ตั้งโปรแกรมได้อื่นๆ หลังจากประกอบเข้ากับ PCB แล้ว
- การเปิดใช้งานและแก้ไขข้อบกพร่องของบอร์ด: การวินิจฉัยปัญหาฮาร์ดแวร์ในระหว่างการออกแบบและการพัฒนา
- การกำหนดค่า FPGA: การกำหนดค่า FPGA โดยไม่จำเป็นต้องใช้โปรแกรมเมอร์ภายนอก
- แอปพลิเคชันด้านความปลอดภัย: ตั้งโปรแกรมและตรวจสอบอุปกรณ์อย่างปลอดภัย และสำหรับการดำเนินการตรวจสอบความปลอดภัย
ส่วนประกอบสำคัญของระบบ Boundary Scan
ระบบ Boundary Scan โดยทั่วไปประกอบด้วยส่วนประกอบต่อไปนี้:
- IC ที่เข้ากันได้กับ Boundary Scan: IC ที่ใช้มาตรฐาน IEEE 1149.1 และมีเซลล์สแกนขอบเขต
- พอร์ตเข้าใช้งานการทดสอบ (TAP): อินเทอร์เฟซทางกายภาพบน IC ที่ใช้ในการเข้าถึงตรรกะการสแกนขอบเขต (TDI, TDO, TCK, TMS, TRST)
- ตัวควบคุมพอร์ตเข้าใช้งานการทดสอบ (ตัวควบคุม TAP): เครื่องสถานะภายใน IC ที่ควบคุมการทำงานของตรรกะการสแกนขอบเขต
- รีจิสเตอร์ Boundary Scan (BSR): รีจิสเตอร์เปลี่ยนที่ประกอบด้วยเซลล์สแกนขอบเขต
- รีจิสเตอร์ข้อมูลการทดสอบ (TDR): รีจิสเตอร์ที่ใช้สำหรับการเลื่อนข้อมูลเข้าและออกจาก IC ระหว่างการทดสอบ TDR ทั่วไป ได้แก่ รีจิสเตอร์ Bypass, รีจิสเตอร์คำสั่ง และรีจิสเตอร์ที่ผู้ใช้กำหนด
- ไฟล์ Boundary Scan Description Language (BSDL): ไฟล์ข้อความที่อธิบายความสามารถในการสแกนขอบเขตของ IC รวมถึง pinout โครงสร้างห่วงโซ่การสแกน และชุดคำสั่ง ไฟล์ BSDL จำเป็นสำหรับการสร้างเวกเตอร์ทดสอบ
- อุปกรณ์ทดสอบอัตโนมัติ (ATE): ระบบที่ให้สิ่งกระตุ้นและวัดการตอบสนองของอุปกรณ์ที่อยู่ภายใต้การทดสอบ (DUT) ระบบ ATE โดยทั่วไปมีตัวควบคุม Boundary Scan และซอฟต์แวร์
- ซอฟต์แวร์ Boundary Scan: ซอฟต์แวร์ที่ใช้ในการสร้างเวกเตอร์ทดสอบ ควบคุมฮาร์ดแวร์ Boundary Scan และวิเคราะห์ผลการทดสอบ
ประโยชน์ของการทดสอบ Boundary Scan
Boundary Scan มีข้อดีมากมายกว่าวิธีการทดสอบแบบดั้งเดิม:
- การครอบคลุมการทดสอบที่ดีขึ้น: Boundary Scan สามารถเข้าถึงโหนดจำนวนมากบน PCB ได้ ทำให้มีการครอบคลุมการทดสอบสูง แม้สำหรับการออกแบบที่ซับซ้อนซึ่งมีการเข้าถึงทางกายภาพที่จำกัด
- ลดเวลาในการพัฒนาการทดสอบ: ซอฟต์แวร์ Boundary Scan สามารถสร้างเวกเตอร์ทดสอบได้โดยอัตโนมัติจากไฟล์ BSDL ซึ่งช่วยลดเวลาและความพยายามที่จำเป็นในการพัฒนาโปรแกรมทดสอบ
- ลดต้นทุนการทดสอบ: Boundary Scan ช่วยลดความจำเป็นในการตรวจสอบทางกายภาพ ลดต้นทุนของอุปกรณ์ทดสอบและลดความเสี่ยงต่อความเสียหายของ PCB
- การแยกข้อผิดพลาดที่เร็วขึ้น: Boundary Scan ให้ข้อมูลการวินิจฉัยโดยละเอียด ทำให้วิศวกรสามารถระบุและแยกข้อผิดพลาดได้อย่างรวดเร็ว
- การตั้งโปรแกรมในระบบ (ISP): Boundary Scan สามารถใช้ในการตั้งโปรแกรมหน่วยความจำแฟลชและอุปกรณ์ที่ตั้งโปรแกรมได้อื่นๆ หลังจากประกอบเข้ากับ PCB แล้ว ทำให้กระบวนการผลิตง่ายขึ้น
- ลดขนาดและต้นทุนบอร์ด: ด้วยการลดความต้องการจุดทดสอบ Boundary Scan ทำให้สามารถออกแบบบอร์ดที่มีขนาดเล็กลงและมีต้นทุนน้อยลง
- การตรวจจับข้อบกพร่องแต่เนิ่นๆ: การใช้ boundary scan ในช่วงการออกแบบช่วยให้ตรวจพบปัญหาการผลิตที่อาจเกิดขึ้นได้เร็วยิ่งขึ้น ลดต้นทุนของข้อผิดพลาดในภายหลัง
แอปพลิเคชันของ Boundary Scan
Boundary Scan ใช้ในแอปพลิเคชันที่หลากหลาย ซึ่งรวมถึง:
- การทดสอบการผลิต: ตรวจจับข้อบกพร่องในการผลิต เช่น รอยต่อสั้น วงจรเปิด และการวางส่วนประกอบที่ไม่ถูกต้อง
- การตั้งโปรแกรมในระบบ (ISP): การตั้งโปรแกรมหน่วยความจำแฟลชและอุปกรณ์ที่ตั้งโปรแกรมได้อื่นๆ หลังจากประกอบเข้ากับ PCB แล้ว
- การเปิดใช้งานและแก้ไขข้อบกพร่องของบอร์ด: การวินิจฉัยปัญหาฮาร์ดแวร์ในระหว่างการออกแบบและการพัฒนา
- การกำหนดค่า FPGA: การกำหนดค่า FPGA โดยไม่จำเป็นต้องใช้โปรแกรมเมอร์ภายนอก
- แอปพลิเคชันด้านความปลอดภัย: ตั้งโปรแกรมและตรวจสอบอุปกรณ์อย่างปลอดภัย และสำหรับการดำเนินการตรวจสอบความปลอดภัย
ตัวอย่างการใช้งาน Boundary Scan:
- อุปกรณ์โทรคมนาคม: ตรวจสอบความสมบูรณ์ของการเชื่อมต่อความเร็วสูงบนการ์ดส่วนต่อประสานเครือข่ายที่ซับซ้อน ลองนึกภาพบริษัทโทรคมนาคมในสตอกโฮล์มที่ต้องการรับประกันความน่าเชื่อถือของโครงสร้างพื้นฐาน 5G ของพวกเขา Boundary scan ช่วยให้พวกเขาวินิจฉัยปัญหาการเชื่อมต่อบนบอร์ดที่มีประชากรหนาแน่นได้อย่างรวดเร็ว
- ระบบอิเล็กทรอนิกส์ยานยนต์: ทดสอบการทำงานของหน่วยควบคุมอิเล็กทรอนิกส์ (ECU) ในรถยนต์ ตัวอย่างเช่น ผู้ผลิตในสตุ๊ตการ์ทใช้ boundary scan เพื่อทดสอบการสื่อสารระหว่างหน่วยควบคุมเครื่องยนต์และหน่วยควบคุมเกียร์
- การบินและอวกาศและการป้องกันประเทศ: รับประกันความน่าเชื่อถือของระบบอิเล็กทรอนิกส์ที่สำคัญในอากาศยานและอุปกรณ์ทางทหาร ผู้รับเหมาด้านกลาโหมในสหรัฐอเมริกาอาจใช้ boundary scan เพื่อตรวจสอบการเชื่อมต่อของส่วนประกอบในระบบควบคุมการบิน ซึ่งความน่าเชื่อถือเป็นสิ่งสำคัญยิ่ง
- ระบบอัตโนมัติอุตสาหกรรม: การวินิจฉัยและซ่อมแซมข้อบกพร่องในตัวควบคุมลอจิกที่ตั้งโปรแกรมได้ (PLC) และอุปกรณ์อุตสาหกรรมอื่นๆ ลองพิจารณาโรงงานในญี่ปุ่นที่ใช้ boundary scan เพื่อระบุการเชื่อมต่อที่ผิดพลาดใน PLC ที่ควบคุมแขนหุ่นยนต์อย่างรวดเร็ว
- อุปกรณ์ทางการแพทย์: ตรวจสอบการทำงานของส่วนประกอบอิเล็กทรอนิกส์ในอุปกรณ์ทางการแพทย์ เช่น เครื่องกระตุ้นหัวใจและเครื่องกระตุกหัวใจ ผู้ผลิตอุปกรณ์ทางการแพทย์ในสวิตเซอร์แลนด์ใช้ boundary scan เพื่อให้แน่ใจว่าเส้นทางการสื่อสารในอุปกรณ์ช่วยชีวิตมีความน่าเชื่อถือ
การใช้งาน Boundary Scan: คู่มือทีละขั้นตอน
การใช้งาน Boundary Scan เกี่ยวข้องกับหลายขั้นตอน:
- การออกแบบเพื่อความสามารถในการทดสอบ (DFT): พิจารณาข้อกำหนดด้านความสามารถในการทดสอบในระหว่างขั้นตอนการออกแบบ ซึ่งรวมถึงการเลือก IC ที่เข้ากันได้กับ Boundary Scan และการตรวจสอบให้แน่ใจว่ามีการกำหนดค่าห่วงโซ่ Boundary Scan อย่างถูกต้อง ข้อควรพิจารณา DFT ที่สำคัญ ได้แก่ การลดจำนวนตัวควบคุม TAP บนบอร์ด (อาจต้องใช้ตัวควบคุม TAP แบบเรียงซ้อนในการออกแบบที่ซับซ้อน) และการรับประกันความสมบูรณ์ของสัญญาณที่ดีบนสัญญาณ JTAG
- การได้มาซึ่งไฟล์ BSDL: รับไฟล์ BSDL สำหรับ IC ที่เข้ากันได้กับ Boundary Scan ทั้งหมดในการออกแบบ ไฟล์เหล่านี้มักจัดทำโดยผู้ผลิต IC
- การสร้างเวกเตอร์ทดสอบ: ใช้ซอฟต์แวร์ Boundary Scan เพื่อสร้างเวกเตอร์ทดสอบตามไฟล์ BSDL และ netlist การออกแบบ ซอฟต์แวร์จะสร้างลำดับสัญญาณที่จำเป็นในการทดสอบการเชื่อมต่อโดยอัตโนมัติ เครื่องมือบางอย่างมีตัวสร้างรูปแบบการทดสอบอัตโนมัติ (ATPG) สำหรับการทดสอบการเชื่อมต่อ
- การดำเนินการทดสอบ: โหลดเวกเตอร์ทดสอบลงในระบบ ATE และดำเนินการทดสอบ ระบบ ATE จะใช้รูปแบบการทดสอบกับบอร์ดและตรวจสอบการตอบสนอง
- การวินิจฉัยข้อผิดพลาด: วิเคราะห์ผลการทดสอบเพื่อระบุและแยกข้อผิดพลาด ซอฟต์แวร์ Boundary Scan โดยทั่วไปจะให้ข้อมูลการวินิจฉัยโดยละเอียด เช่น ตำแหน่งของรอยต่อสั้นและวงจรเปิด
- การตั้งโปรแกรมในระบบ (ISP): หากจำเป็น ให้ใช้ Boundary Scan เพื่อตั้งโปรแกรมหน่วยความจำแฟลชหรือกำหนดค่าอุปกรณ์ที่ตั้งโปรแกรมได้
ความท้าทายของ Boundary Scan
ในขณะที่ Boundary Scan มอบข้อดีที่สำคัญ ยังมีข้อควรพิจารณาอีกด้วย:
- ต้นทุนของ IC ที่เข้ากันได้กับ Boundary Scan: IC ที่เข้ากันได้กับ Boundary Scan อาจมีราคาแพงกว่า IC ที่ไม่รองรับ Boundary Scan นี่เป็นเรื่องจริงโดยเฉพาะอย่างยิ่งสำหรับส่วนประกอบรุ่นเก่าหรือไม่ค่อยพบ
- ความพร้อมใช้งานและความถูกต้องของไฟล์ BSDL: ไฟล์ BSDL ที่ถูกต้องและสมบูรณ์เป็นสิ่งจำเป็นสำหรับการสร้างเวกเตอร์ทดสอบที่มีประสิทธิภาพ น่าเสียดายที่ไฟล์ BSDL นั้นไม่ได้มีให้ใช้งานเสมอไปหรืออาจมีข้อผิดพลาด ตรวจสอบไฟล์ BSDL เสมอก่อนใช้งาน
- ความซับซ้อนของการสร้างเวกเตอร์ทดสอบ: การสร้างเวกเตอร์ทดสอบสำหรับการออกแบบที่ซับซ้อนอาจเป็นเรื่องที่ท้าทาย ต้องใช้ซอฟต์แวร์และความเชี่ยวชาญพิเศษ
- การเข้าถึงโหนดภายในที่จำกัด: Boundary Scan ให้การเข้าถึงพินของ IC แต่ไม่ให้การเข้าถึงโดยตรงไปยังโหนดภายในภายใน IC
- ปัญหาความสมบูรณ์ของสัญญาณ: ห่วงโซ่ Boundary Scan ที่ยาวอาจทำให้เกิดปัญหาความสมบูรณ์ของสัญญาณได้ โดยเฉพาะอย่างยิ่งที่ความเร็วสัญญาณนาฬิกาสูง การยุติและเส้นทางสัญญาณที่เหมาะสมเป็นสิ่งสำคัญ
การเอาชนะความท้าทายของ Boundary Scan
มีหลายกลยุทธ์ในการเอาชนะข้อจำกัดของการสแกนขอบเขต:
- การเลือกส่วนประกอบเชิงกลยุทธ์: เลือกส่วนประกอบที่เข้ากันได้กับ boundary scan สำหรับพื้นที่สำคัญของการออกแบบที่มีการเข้าถึงการทดสอบจำกัด
- การตรวจสอบ BSDL อย่างละเอียด: ตรวจสอบและตรวจสอบไฟล์ BSDL อย่างรอบคอบเพื่อความถูกต้อง ติดต่อผู้ผลิตส่วนประกอบหากพบข้อผิดพลาด
- การลงทุนในเครื่องมือขั้นสูง: ใช้เครื่องมือ boundary scan ที่มีประสิทธิภาพซึ่งรองรับการสร้างรูปแบบการทดสอบอัตโนมัติ (ATPG) และความสามารถในการวินิจฉัยขั้นสูง
- การรวม Boundary Scan กับเทคนิคการทดสอบอื่นๆ: รวม boundary scan เข้ากับวิธีการทดสอบอื่นๆ เช่น การทดสอบการทำงาน การทดสอบในวงจร (ICT) และการทดสอบโพรบแบบบิน เพื่อให้ครอบคลุมการทดสอบอย่างครอบคลุม
- การปรับโครงสร้าง JTAG Chain Topology ให้เหมาะสม: ใช้เทคนิคการกำหนดเส้นทางและยุติ JTAG chain อย่างระมัดระวังเพื่อลดปัญหาความสมบูรณ์ของสัญญาณ พิจารณาใช้การบัฟเฟอร์หรือเทคนิคการปรับสภาพสัญญาณอื่นๆ
มาตรฐานและเครื่องมือ Boundary Scan
หัวใจสำคัญของ Boundary Scan คือมาตรฐาน IEEE 1149.1 อย่างไรก็ตาม มาตรฐานและเครื่องมืออื่นๆ อีกหลายรายการมีบทบาทสำคัญ:
- IEEE 1149.1 (JTAG): มาตรฐานพื้นฐานที่กำหนดสถาปัตยกรรมและโปรโตคอล Boundary Scan
- IEEE 1149.6 (เครือข่ายดิจิทัลขั้นสูง): ขยาย Boundary Scan เพื่อรองรับสัญญาณที่แตกต่างกันความเร็วสูงที่พบในเครือข่ายดิจิทัลขั้นสูง
- BSDL (Boundary Scan Description Language): ภาษามาตรฐานสำหรับการอธิบายความสามารถในการสแกนขอบเขตของ IC
- SVF (Serial Vector Format) และ STAPL (Standard Test and Programming Language): รูปแบบไฟล์มาตรฐานสำหรับการจัดเก็บและแลกเปลี่ยนเวกเตอร์ทดสอบ
มีเครื่องมือ Boundary Scan เชิงพาณิชย์และโอเพนซอร์สมากมาย ซึ่งรวมถึง:
- ระบบ ATE: แพลตฟอร์มการทดสอบที่ครอบคลุมจากผู้จำหน่ายเช่น Keysight Technologies, Teradyne และ National Instruments
- เครื่องมือ Boundary Scan เฉพาะ: เครื่องมือพิเศษจากบริษัทต่างๆ เช่น Corelis, Goepel electronic และ XJTAG
- โซลูชัน JTAG แบบฝังตัว: JTAG emulators และ debuggers จากบริษัทต่างๆ เช่น Segger และ Lauterbach
- เครื่องมือโอเพนซอร์ส: OpenOCD (Open On-Chip Debugger) และ UrJTAG เป็นเครื่องมือ JTAG โอเพนซอร์สยอดนิยม
อนาคตของ Boundary Scan
Boundary Scan ยังคงพัฒนาอย่างต่อเนื่องเพื่อตอบสนองความท้าทายของระบบอิเล็กทรอนิกส์สมัยใหม่
- การรวมที่เพิ่มขึ้น: Boundary Scan กำลังถูกรวมเข้ากับ IC มากขึ้นเรื่อยๆ ทำให้สามารถทดสอบและวินิจฉัยได้อย่างครอบคลุมมากขึ้น
- ความสามารถในการแก้ไขข้อบกพร่องขั้นสูง: Boundary Scan ถูกนำมาใช้สำหรับงานแก้ไขข้อบกพร่องขั้นสูงมากขึ้น เช่น การทดสอบหน่วยความจำและการจำลอง CPU
- Boundary Scan ความเร็วสูง: กำลังพัฒนาเทคนิคใหม่ๆ เพื่อเพิ่มความเร็วของ Boundary Scan ทำให้การทดสอบและการตั้งโปรแกรมเร็วขึ้น
- แอปพลิเคชันด้านความปลอดภัย: Boundary Scan ถูกนำมาใช้เพื่อเพิ่มความปลอดภัยของอุปกรณ์อิเล็กทรอนิกส์โดยจัดหาช่องทางที่ปลอดภัยสำหรับการตั้งโปรแกรมและการตรวจสอบ ความสามารถในการเข้าถึงและกำหนดค่าอุปกรณ์ใหม่จากระยะไกลผ่าน JTAG ทำให้เกิดข้อกังวลด้านความปลอดภัย ขับเคลื่อนนวัตกรรมในมาตรการรักษาความปลอดภัย
- การรวมเข้ากับ Digital Twins: ข้อมูล Boundary Scan สามารถใช้เพื่อสร้าง digital twins ของชุดประกอบอิเล็กทรอนิกส์ ทำให้สามารถบำรุงรักษาเชิงคาดการณ์และปรับปรุงความน่าเชื่อถือ
โดยสรุป Boundary Scan เป็นเทคโนโลยีที่สำคัญในการรับประกันคุณภาพและความน่าเชื่อถือของระบบอิเล็กทรอนิกส์สมัยใหม่ ด้วยการทำความเข้าใจหลักการ ประโยชน์ และการใช้งาน วิศวกรสามารถใช้ประโยชน์จาก Boundary Scan เพื่อปรับปรุงการครอบคลุมการทดสอบ ลดต้นทุนการทดสอบ และเร่งเวลาในการออกสู่ตลาด เนื่องจากระบบอิเล็กทรอนิกส์ยังคงมีความซับซ้อนมากขึ้น Boundary Scan จะยังคงเป็นเครื่องมือสำคัญสำหรับการทดสอบฮาร์ดแวร์