โปรเจ็กต์ CircuitVerse

หน้านี้มีรายละเอียดของโปรเจ็กต์การเขียนเชิงเทคนิคที่ได้รับการยอมรับสำหรับ Google Season of Docs

สรุปโปรเจ็กต์

องค์กรโอเพนซอร์ส
CircuitVerse
นักเขียนเชิงเทคนิค
dvls
ชื่อโปรเจ็กต์:
การรวมและการปรับปรุงหนังสือแบบอินเทอร์แอกทีฟของ CircuitVerse
ความยาวของโปรเจ็กต์:
ระยะเวลามาตรฐาน (3 เดือน)

คำอธิบายโปรเจ็กต์

ข้อมูลสรุป 1 รายการ

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

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

วัตถุประสงค์ของข้อเสนอนี้คือการทํางานร่วมกับที่ปรึกษาเพื่อสร้างหลักเกณฑ์การมีส่วนร่วม จัดทำแผนการพัฒนาหัวข้อ และมีส่วนร่วมในการปรับปรุงเนื้อหาปัจจุบัน รวมถึงสร้างเนื้อหาใหม่ตามแผนการพัฒนา

2 สถานะปัจจุบันของหนังสือแบบอินเทอร์แอกทีฟ

นับตั้งแต่ที่โปรเจ็กต์เริ่มต้นขึ้นใน Google Summer of Code 2019 โปรเจ็กต์ก็มี "การเติบโตที่ไม่มีการจัดการ" จากความช่วยเหลือของชุมชนนักเรียน องค์กรของโปรเจ็กต์นั้นก่อตั้งขึ้นโดยนักพัฒนาซอฟต์แวร์เป็นหลัก จึงได้เข้าร่วม GSoD เพื่อขอความช่วยเหลือจากภายนอกเพื่อปรับปรุงหนังสือแบบอินเทอร์แอกทีฟ นักพัฒนาของโครงการระบุว่าขณะนี้หนังสือจำเป็นต้องเขียนบางส่วนใหม่ การเพิ่มเนื้อหาใหม่ และทำให้มีรายละเอียดและครอบคลุมมากขึ้น นอกจากนี้ ทีมคาดว่าหลังจาก GSoD จะมีหลักเกณฑ์สำหรับการมีส่วนร่วมใหม่ รวมถึง "แผนแม่บท" ทั่วไปสำหรับการพัฒนาเนื้อหา

3 ประโยชน์ของข้อเสนอนี้

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

4 การวิเคราะห์ทางเลือกที่ใช้ได้

โครงการโอเพนซอร์สที่สมบูรณ์หลายโครงการที่มีลักษณะคล้ายกันได้พัฒนาหลักเกณฑ์การสนับสนุนสำหรับเอกสารประกอบแล้ว เช่น Wikibooks ([ความช่วยเหลือ:การมีส่วนร่วม], [Wikibooks:นโยบายและหลักเกณฑ์]), OpenStreetMap ([หลักเกณฑ์การแก้ไขขององค์กร]) หรือโครงการเอกสารของ Linux ([คู่มือผู้เขียน LDP]) คุณใช้ตัวอย่างเหล่านี้เพื่อสร้างหลักเกณฑ์ของโปรเจ็กต์โดยอิงตามประสบการณ์ของโปรเจ็กต์โอเพนซอร์สที่ประสบความสำเร็จได้

สำหรับแผนการพัฒนาหัวข้อ คุณสามารถเปรียบเทียบหลักสูตรของหลักสูตรแบบเปิด (เช่น [MIT Open Courseware]) รวมถึงหนังสืออ้างอิงเกี่ยวกับวงจรตรรกะดิจิทัล รวมถึงหนังสือแบบเปิด เช่น [Lessons In Electronic Circuits -- Volume IV -Digital], [Wikibooks: Digital circuits] และ [Wikibooks: Digital Electronics]

[ความช่วยเหลือ:การมีส่วนร่วม] https://en.wikibooks.org/wiki/Help:Contributing

[Wikibooks:นโยบายและหลักเกณฑ์] https://en.wikibooks.org/wiki/Wikibooks:Policies_and_guidelines

[หลักเกณฑ์การแก้ไขแบบเป็นระเบียบ] https://wiki.osmfoundation.org/wiki/Organised_Editing_Guidelines

[คู่มือผู้เขียน LDP] https://www.tldp.org/LDP/LDP-Author-Guide/html/index.html

[MIT Open Courseware] https://ocw.mit.edu/

[Lessons In Electric Circuits -- Volume IV -Digital] https://www.ibiblio.org/kuphaldt/electricCircuits/Digital/index.html

[Wikibooks: Digital Circuits] https://en.wikibooks.org/wiki/Digital_Circuits

[Wikibooks: Digital Electronics] https://en.wikibooks.org/wiki/Digital_Electronics

5 โครงสร้างของเอกสารประกอบที่เสนอ

หนังสือแบบอินเทอร์แอกทีฟนี้อาจมีประโยชน์ต่อผู้ชมในวงกว้าง ตั้งแต่ผู้ที่สนใจอิเล็กทรอนิกส์มือสมัครเล่นและนักเรียนระดับมัธยมศึกษาไปจนถึงนักเรียนระดับอุดมศึกษาและผู้เชี่ยวชาญที่ต้องการทบทวนหรือเสริมทักษะในวงจรตรรกะดิจิทัล

เพื่อจัดการกับความหลากหลายของผู้ใช้หนังสือ เราจึงเสนอโครงสร้าง "หลายเลเยอร์" โดยแต่ละเลเยอร์จะสอดคล้องกับระดับความซับซ้อนและเชิงลึกทางทฤษฎีที่เพิ่มขึ้นของเนื้อหา

ดังนั้น โครงสร้างของเอกสารประกอบจึงมี 2 มิติ โดยมิติข้อมูลแรกสอดคล้องกับลําดับหัวข้อแบบตรรกะหรือดั้งเดิมในระบบตรรกะดิจิทัล ส่วนมิติข้อมูลที่สองแสดงถึงระดับ

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

  • การนำเสนอโดยใช้ตัวเลขฐาน 2
    • ระดับพื้นฐาน: เลขฐาน 2, จํานวนเชิงลบ, ฐานอื่นๆ, การเขียนโค้ด
    • ระดับกลาง: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
    • ระดับขั้นสูง: โมดูลและวงแหวน
  • การดำเนินการทางคณิตศาสตร์ด้วยเลขฐานสอง
    • ระดับพื้นฐาน: การบวก การลบ การคูณ การหาร
    • ระดับปานกลาง: พีชคณิตบูลีน ฟังก์ชันบูลีน
    • ระดับขั้นสูง: พีชคณิตอื่นๆ, การแยกส่วน Shannon
  • คอมโพเนนต์ SSI แบบผสม
    • ระดับพื้นฐาน: สัญลักษณ์ ลอจิกเกต ตารางความจริง
    • ระดับกลาง: ตระกูลลอจิก เกตสากล
    • ระดับขั้นสูง: ลักษณะการทำงานตามเวลา (รูปแบบการกำหนดเวลา อันตราย)
  • การออกแบบตรรกะแบบผสม:
    • ระดับพื้นฐาน: คำอธิบายฟังก์ชันการทำงาน การติดตั้งใช้งาน
    • ระดับกลาง: ฟังก์ชัน Canonical, k-Maps
    • ระดับขั้นสูง: ตัวแปรที่ป้อนในแผนที่, Quine McCluskey, การแสดงลูกบาศก์ไบนารี
  • คอมโพเนนต์ MSI แบบผสม
    • ระดับพื้นฐาน: MUX, DEMUX, Encoder, Decoder, Half adder, Full adder
    • ระดับกลาง: ฟังก์ชันตาม MUX
    • ระดับขั้นสูง: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
  • คอมโพเนนต์ LSI แบบผสม
    • ระดับพื้นฐาน: ROM, ALU
    • ระดับกลาง: PLD (PLA, PAL, GAL)
    • ระดับขั้นสูง: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
  • คอมโพเนนต์ SSI ตามลำดับ
    • ระดับพื้นฐาน: สลัก รองเท้าแตะ สัญญาณนาฬิกา แผนภาพเวลา
    • ระดับกลาง: การตอบกลับหน่วยความจํา ระบบแบบซิงค์ ระบบแบบแอซิงค์
    • ระดับขั้นสูง: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
  • คอมโพเนนต์ MSI ตามลำดับ
    • ระดับพื้นฐาน: รีจิสเตอร์ ตัวนับ
    • ระดับกลาง: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
    • ระดับขั้นสูง: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
  • การออกแบบตามลำดับ

    • ระดับพื้นฐาน: [ไม่มีเนื้อหาที่เฉพาะเจาะจง]
    • ระดับปานกลาง: การสังเคราะห์ตามลำดับ, FSM (Mealy, Moore), แผนภาพสถานะ, การลดสถานะ, การกำหนดสถานะ, เงื่อนไขการแข่ง
    • ระดับขั้นสูง: การออกแบบตาม MSI, การออกแบบตาม LSI, แผนภาพลำดับการทำงาน, แผนภาพ MDS

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

    ระดับกลางควรมีเนื้อหาและข้อกำหนดเทียบเท่าหลักสูตรระดับอุดมศึกษาเบื้องต้นเกี่ยวกับระบบตรรกะดิจิทัล

    ระดับขั้นสูงสุดท้ายนี้ประกอบด้วยเนื้อหาที่มักจะพบในหลักสูตรขั้นสูงเสริมหรือหลักสูตรขั้นสูงที่ไม่บังคับของระบบดิจิทัลในมหาวิทยาลัย

    เราจะพูดคุยเกี่ยวกับโครงสร้างที่เสนอนี้กับที่ปรึกษาในระยะเริ่มต้นของโปรเจ็กต์ (สัปดาห์ที่ 3) จากนั้นจะนำข้อมูลนี้ไปใช้เป็นข้อมูลเพื่อร่างแผนการพัฒนาหัวข้อในระยะยาว

    โครงสร้างที่เสนอนี้สามารถใช้เนื้อหาปัจจุบันส่วนใหญ่ (หากไม่ใช่ทั้งหมด) ของเอกสารประกอบ ซึ่งจะได้รับการแก้ไขและขยายหรือแก้ไขตามความเหมาะสมเมื่อจำเป็น นอกจากนี้ เราจะเขียนส่วนใหม่สำหรับเนื้อหาที่เอกสารประกอบที่มีอยู่ยังไม่ครอบคลุม

เป้าหมาย 6 ข้อ

  1. จัดทำฉบับร่างแรกของหลักเกณฑ์การมีส่วนร่วมสำหรับโปรเจ็กต์หนังสือแบบอินเทอร์แอกทีฟ
  2. ร่างการพัฒนาหัวข้อของหนังสือ
  3. เขียนเนื้อหาที่มีอยู่ใหม่และปรับโครงสร้าง
  4. สร้างเนื้อหาใหม่ตามแผนการพัฒนา

7 ลำดับเวลา

สัปดาห์ที่ 1: (14-20 กันยายน) วิเคราะห์และพูดคุยกับที่ปรึกษาเกี่ยวกับหลักเกณฑ์ที่ดีที่สุดโดยอิงตามตัวอย่างของโปรเจ็กต์อื่นๆ รวมถึงประสบการณ์ที่ได้รับในโปรเจ็กต์จนถึงตอนนี้ สัปดาห์ที่ 2: (21-27 ก.ย.) เขียนร่างหลักเกณฑ์ สัปดาห์ที่ 3: (28 ก.ย. - 4 ต.ค.) พูดคุยเกี่ยวกับร่างแผนการพัฒนาหัวข้อกับที่ปรึกษา สัปดาห์ที่ 4: (5-11 ต.ค.) เขียนแผนการพัฒนา สัปดาห์ที่ 5-11: (12 ต.ค. - 29 พ.ย.) เขียนเนื้อหาที่จะมีส่วนร่วม ซึ่งประกอบด้วยเนื้อหาที่มีการปรับโครงสร้างใหม่และหัวข้อใหม่ๆ สัปดาห์ที่ 12: (30 พ.ย. - 5 ธ.ค.) การส่งรายงานโครงการ การประเมินโปรเจ็กต์: (3-10 ธ.ค.) - การส่งการประเมินของนักเขียนเนื้อหาทางเทคนิค - การส่งการประเมินของที่ปรึกษา

8 ทำไมหนังสืออินเทอร์แอกทีฟของ CircuitVerse

เนื่องจากวิกฤตโควิด-19 ทั่วโลก ฉันจึงเริ่มมองหาแหล่งข้อมูลออนไลน์ที่จะเป็นประโยชน์ต่อนักเรียนในหลักสูตรระดับปริญญาตรีเกี่ยวกับระบบตรรกะดิจิทัล เราสนับสนุนเทคโนโลยีแบบ Free-Libre Open Source มาหลายทศวรรษแล้ว จึงให้ความสำคัญกับโปรเจ็กต์ประเภทนี้ ฉันเจอโปรแกรมจำลอง CircuitVerse และคิดว่าเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการไม่มีกิจกรรมในห้องปฏิบัติการเนื่องด้วยมาตรการยับยั้งโควิด-19 ของมหาวิทยาลัย ขณะทดสอบเครื่องจำลอง ฉันได้พบหนังสือแบบอินเทอร์แอกทีฟด้วย และแม้ว่าเนื้อหาจะยังไม่เพียงพอเป็นข้อมูลอ้างอิงหลักสำหรับหลักสูตรที่สมบูรณ์เกี่ยวกับระบบตรรกะดิจิทัล แต่เนื้อหาในปัจจุบันนั้นถูกต้องและเข้าใจง่าย ฉันจึงใส่ไว้ในแหล่งข้อมูลการเรียนรู้

เนื่องจากฉันใช้เครื่องจำลองและหนังสือขององค์กรนี้อย่างหนัก องค์กรจึงติดต่อมาเพื่อแจ้งให้ฉันทราบเกี่ยวกับ GSoD เราเห็นโอกาสนี้ว่าเป็นโอกาสที่จะได้มีส่วนร่วมกับโปรเจ็กต์โดยตรงจากความรู้ความเชี่ยวชาญของเรา

9 ส่วนอ้างอิง

  • [ความช่วยเหลือของ Wikibooks:การมีส่วนร่วม]
  • [Wikibooks:Policies and guidelines]
  • [OpenStreetMap Organised Editing Guidelines]
  • [The Linux Documentation Project (LDP) Author Guide]
  • [MIT Open Courseware Introductory Digital Systems Laboratory Syllabus]
  • [บทเรียนเกี่ยวกับวงจรไฟฟ้า -- เล่มที่ 4 - ระบบดิจิทัล]
  • [หนังสือวิกิพีเดีย: วงจรดิจิทัล]
  • [Wikibooks: ดิจิทัลอิเล็กทรอนิกส์]
  • [The Linux Brochure Project]

    [ความช่วยเหลือเกี่ยวกับ Wikibooks:การสนับสนุน] https://en.wikibooks.org/wiki/Help:Contributing

    [Wikibooks:นโยบายและหลักเกณฑ์] https://en.wikibooks.org/wiki/Wikibooks:Policies_and_guidelines

    [หลักเกณฑ์การแก้ไขอย่างเป็นระบบของ OpenStreetMap] https://wiki.osmfoundation.org/wiki/Organified_Editing_Guidelines

    [คู่มือผู้เขียนของ The Linux Documentation Project (LDP)] https://www.tldp.org/LDP/LDP-Author-Guide/html/index.html

    [MIT Open Courseware Introductory Digital Systems Laboratory Syllabus] https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-111-introductory-digital-systems-laboratory-spring-2006/syllabus/

    [Lessons In Electric Circuits -- Volume IV -Digital] https://www.ibiblio.org/kuphaldt/electricCircuits/Digital/index.html

    [Wikibooks: Digital Circuits] https://en.wikibooks.org/wiki/Digital_Circuits

    [Wikibooks: Digital Electronics] https://en.wikibooks.org/wiki/Digital_Electronics

    [The Linux Brochure Project] http://lbproject.sourceforge.net/