นี่คือคำสั่ง ibdm-ibnl-file ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
อิบนิ - รูปแบบ IB netlist ทั่วไป
DESCRIPTION
ไฟล์โทโพโลยี IBDM ibdm-topo-ไฟล์ ให้หมายถึงอธิบายผ้า IB โดยใช้ชุดของ
ระบบที่กำหนดไว้ล่วงหน้า คำจำกัดความของระบบมีให้ในไฟล์เดียวในรูปแบบ IBNL ที่
อธิบายการเชื่อมต่อ InfiniBand ภายในของระบบในแง่ของบอร์ดและ
อุปกรณ์ เมื่อ IBDM เริ่มทำงาน มันจะแยกวิเคราะห์ไฟล์คำจำกัดความของระบบที่มีอยู่ก่อนหน้านั้น
จัดการไฟล์ทอพอโลยี ไฟล์จะอยู่ในไดเร็กทอรีต่อไปนี้ที่สัมพันธ์กับ
คำนำหน้าการติดตั้ง: /lib/ibdm1.0/ibnl.
หน้านี้อธิบายรูปแบบไฟล์ IBNL ที่ใช้ในการกำหนดระบบ IB โดยพลการ
การเชื่อมต่อ IB ภายใน มันสรุปแนวคิดหลักที่ใช้โดยไฟล์ ให้รายละเอียด
สำหรับวิธีเขียนไฟล์ดังกล่าวและให้คำจำกัดความอย่างเป็นทางการของไวยากรณ์ไฟล์ในBNF
ชอบรูปแบบ (YACC/วัวกระทิงสามารถอ่านได้)
1. หลัก แนวคิด
รูปแบบไฟล์ที่อธิบายสำหรับการกำหนดการเชื่อมต่อ IB ของระบบทั่วไปใช้ดังต่อไปนี้
คำศัพท์:
โหนด
การสร้างอินสแตนซ์ของอุปกรณ์ IB อาจเป็นสวิตช์หรือตัวแปลงช่องสัญญาณ
ระบบย่อย
การสร้างอินสแตนซ์ของบอร์ดหรือโมดูลในระบบ
ระบบ
คำจำกัดความของบอร์ดหรือโมดูล
ท็อปซิสเต็ม
ระบบสูงสุดที่กำหนดไว้ในไฟล์ที่กำหนด
ตัวดัดแปลงระบบย่อย
หลายระบบอนุญาตให้ระบบย่อยเปลี่ยนแปลงได้หลายแบบ เช่น a . เวอร์ชัน 12X
แผ่นกระดานใน MTS9600 ตัวแก้ไขเป็นส่วนต่อท้ายชื่อบอร์ด รูปแบบ IBNL
รองรับการกำหนดชื่อหลายชื่อให้กับบอร์ดเดียวกัน
2. เนื้อไม่มีมัน รูปแบบ
รูปแบบไฟล์ที่แน่นอนมีอยู่ในส่วนที่ 4 ส่วนนี้ให้เฉพาะส่วนเพิ่มเติม
ข้อมูลเกี่ยวกับความหมายเฉพาะของส่วนต่างๆ
ไฟล์ IBNL มีความละเอียดอ่อนในการขึ้นบรรทัดใหม่ เนื่องจากต้องใช้ส่วนต่างๆ ในการขึ้นบรรทัดใหม่
ไฟล์ถูกแบ่งออกเป็นหลายระบบ (ตัวเลือก) และหนึ่งส่วน TOPSYSTEM แต่ละคนมีหนึ่ง
หรือชื่ออื่นๆ
การเชื่อมต่อถูกกำหนดไว้ภายในส่วน SYSTEM/TOPSYSTEM เท่านั้น ดังนั้นจึงอาจมีสองส่วน
ประเภท:
1. ระหว่างโหนดหรือระบบย่อยใดๆ กับโหนดหรือระบบย่อยอื่น
2. จากโหนดหรือระบบย่อยใด ๆ ไปยังตัวเชื่อมต่อของระบบ
NOTE-1: ระบบด้านบนสามารถกำหนดพอร์ตที่อาจซ้ำซ้อนและไม่ได้เชื่อมต่อกับใดๆ
ขั้วต่อบอร์ดระดับล่าง ในกรณีเหล่านี้ พอร์ตจะถูกละเว้นจาก
ระบบผลลัพธ์ คุณลักษณะนี้ช่วยให้สามารถกำหนดพอร์ตแผงด้านหน้าของ 12X/4X เช่น
ว่าหากเลือกลีฟ 12X จะใช้พอร์ตที่แผงด้านหน้า 12X เท่านั้น
หมายเหตุ-2: ความกว้างและความเร็วของพอร์ตที่ระดับต่ำสุดมีลำดับความสำคัญมากกว่า
คำจำกัดความที่ให้ไว้ในระดับบนของลำดับชั้น
3. แนวทาง for การเขียน a System อิบลิน เนื้อไม่มีมัน
ควรปฏิบัติตามขั้นตอนต่อไปนี้เพื่อให้ระบบใหม่ IBNL:
ก) ตั้งชื่อไฟล์ตามชื่อระบบ: .ibnl
b) กำหนดส่วนระบบสำหรับแต่ละบอร์ดที่รวมอยู่ในระบบ
c) ชื่อพอร์ตของกระดานเป็นเพียงสตริง เราใช้รูปแบบง่าย ๆ ของ Pn โดยที่ N
เป็นเพียงหมายเลขซีเรียล แต่คุณสามารถเลือกชื่อใดก็ได้ที่คุณต้องการ เพียงให้แน่ใจว่ามันเป็น
ที่ไม่ซ้ำกัน
d) เมื่อมีรสชาติที่แตกต่างกันของกระดานเช่นเมื่อคุณมีตัวเลือก 4x และ 12x สำหรับ
บอร์ดตั้งชื่อบอร์ดเสริมด้วย postfix ตัวอย่างระบบดังกล่าว
ที่รองรับบอร์ด LEAF ประเภท 12x และ 4x จะเป็นการกำหนด SYSTEMS สองระบบ:
ระบบ LEAF,LEAF:4x,LEAF:4X
...
ใบระบบ:12x,ใบ:12X
...
NOTE-3: การสร้างอินสแตนซ์ของบอร์ด LEAF ในบอร์ดอื่นหรือระบบบนสุด
ไม่จำเป็นต้องระบุ postfix และกำลังตัดสินใจเฉพาะเมื่อโทโพโลยี
กำลังแยกวิเคราะห์ไฟล์ "SYSTEM LEAF" ที่ไม่มี postfix จะถูกใช้เป็นค่าเริ่มต้น
ตัวอย่างต่อไปนี้คือวิธีที่ LEAF สร้างอินสแตนซ์ในระบบบนสุด:
TOPSYSTEM ระบบ MyIb
ใบไม้ ใบไม้1
...
ใบไม้ ใบไม้2
...
บอร์ด LEAF รุ่น 4x หรือ 12x จริงสามารถระบุได้ใน
ไฟล์ทอพอโลยีส่วน CFG เพื่อเลือกชุดค่าผสมที่เหมาะสมของบอร์ดเสริมใน
ระบบ. ตัวอย่างจะเป็น:
MyIbSystem N001 CFG: leaf2=12x
ในกรณีนี้ leaf1 จะเป็น 4x เนื่องจากไม่มีตัวปรับแต่งพิเศษที่กำหนดไว้สำหรับมัน (และ
LEAF เป็นใบไม้ 4x โดยค่าเริ่มต้น) Leaf2 จะเป็น 12x ตามที่กำหนดไว้ในCFG
มาตรา.
จ) ควรพิจารณาพิเศษในการออกแบบส่วนระบบบนเมื่อ
มีบอร์ดให้เลือกหลายประเภท ส่วนระบบบนสุดอาจมีหลายรายการ
คำจำกัดความของปลั๊กแผงด้านหน้า เช่น P1-4x และ P1-12x (ใช่ ก็แค่
ชื่อที่ควรตามตัวอักษรที่แผงด้านหน้าหรือด้านหลัง) ในฐานะที่เป็น
ไม่จำเป็นต้องมีรสชาติที่แตกต่างกันของกระดานเพื่อกำหนดชื่อเดียวกันสำหรับ
พอร์ตของพวกเขารวมถึงพอร์ต 12x อาจทำให้การเชื่อมต่อระดับบนสุดบางส่วน
ห้อยต่องแต่ง (ไม่เชื่อมต่อ) และทำให้พอร์ตแผงด้านหน้าของรสอื่น ๆ
จะถูกลบออกจากคำจำกัดความของระบบขั้นสุดท้าย เป็นตัวอย่างให้เรา
พิจารณาบอร์ด LEAF ธรรมดาที่มี 3 พอร์ต 4x รสชาติและ 12x พอร์ตรสชาติ
เราขอแนะนำให้เชื่อมต่อในระดับบนสุดโดยใช้รูปแบบต่อไปนี้:
ใบระบบ:4x
โหนด U1
1 -4x-> 4XP1
2 -4x-> 4XP2
3 -4x-> 4XP3
...
ใบระบบ:12x
โหนด U1
1 -12x-> 12XP1
...
ท็อปซิสเต็ม myIbSystem
ใบระบบย่อย1
4XP1 -> L1/P1
4XP2 -> L1/P2
4XP3 -> L1/P3
12XP1 -> L1/P1-12x
f) วางไฟล์ใน /lib/IBDM/ibdm1.0/ibnl ไดเร็กทอรี
g) ตรวจสอบรูปแบบไฟล์ใหม่โดยวางไว้ในไดเร็กทอรี ibnl ตามที่อธิบายไว้
ด้านบน สร้างโทโพโลยีอย่างง่าย (ibdm-topo-ไฟล์ ไฟล์ที่มีหนึ่งเช่น
ระบบและการทำงาน ไอบีเอ็มทีอาร์ ยูทิลิตี้เพื่อแยกวิเคราะห์มันติดตามเส้นทางง่าย ๆ
ผ่านมัน
4. เป็นทางการ คำนิยาม in ปปส ไวยากรณ์:
อินท์ ::= ([1-9][0-9]*⎪0) ;
ความกว้าง ::= (4x⎪8x⎪12x) ;
ความเร็ว ::= (2.5G⎪5G⎪10G) ;
NODETYPE ::= (SW⎪CA⎪HCA);
ชื่อ ::= ([\[\]\\\*/A-Za-z0-9_.:%@~]+) ;
NL: สาย ⎪ สาย NL;
เฉพาะ: ⎪ NL;
ibnl: ระบบ ONL ระบบบนสุด;
ระบบ: ⎪ ระบบ ระบบ ;
sub_inst_attributes: ⎪ sub_inst_attributes sub_inst_attribute NL;
sub_inst_attribute: NAME '=' NAME '=' NAME ⎪ NAME '=' NAME '=' INT ⎪ NAME '=' NAME ;
ระบบด้านบน: TOPSYSTEM system_names NL sub_inst_attributes insts ;
ระบบ: SYSTEM system_names NL insts ;
system_names: system_name ⎪ system_names ',' system_name ;
system_name: NAME ;
insts: ⎪ insts node ⎪ insts ระบบย่อย ;
โหนด: node_header NL node_connections ;
node_header: NODE NODETYPE INT ชื่อชื่อ ;
node_connections: ⎪ node_connections node_connection NL ;
node_connection: node_to_node_link ⎪ โหนด_to_port_link ;
node_to_node_link: INT '-' WIDTH '-' SPEED '-' '>' NAME ⎪ INT '-' WIDTH '-' '>' NAME INT ⎪
INT '-' ความเร็ว '-' '>' ชื่อ INT ⎪ INT '-' '>' NAME INT ;
node_to_port_link: INT '-' WIDTH '-' SPEED '-' '>' NAME ⎪ INT '-' WIDTH '-' '>' NAME ⎪ INT
'-' ความเร็ว '-' '>' NAME ⎪ INT '-' '>' NAME ;
ระบบย่อย: subsystem_header NL subsystem_connections ;
subsystem_header: ชื่อระบบย่อย NAME ;
ระบบย่อย_การเชื่อมต่อ: ⎪ ระบบย่อย_การเชื่อมต่อ ระบบย่อย_การเชื่อมต่อ NL ;
ระบบย่อยการเชื่อมต่อ: subsystem_to_subsystem_link ⎪ subsystem_to_port_link ;
subsystem_to_subsystem_link: NAME '-' WIDTH '-' SPEED '-' '>' NAME ⎪ NAME '-' WIDTH
'-' '>' NAME NAME ⎪ NAME '-' SPEED '-' '>' NAME NAME ⎪ NAME '-' '>' NAME NAME ;
ระบบย่อย_to_port_link: NAME '-' WIDTH '-' SPEED '-' '>' NAME ⎪ NAME '-' WIDTH '-' '>'
NAME ⎪ NAME '-' SPEED '-' '>' NAME ⎪ NAME '-' '>' NAME ;
ใช้ ibdm-ibnl-file ออนไลน์โดยใช้บริการ onworks.net