การใช้งาน CPU โดยใช้ตัวจับเวลา 555 ตัวและการสังเคราะห์ตรรกะ


มีความคิดเห็นมากมายในหน้านี้ที่นี่ตามบรรทัดของ “ทำไมคุณใช้ไมโครคอนโทรลเลอร์เมื่อคุณสามารถใช้ตัวจับเวลา 555 ตัวได้อย่างง่ายดาย!” และใช่เราในบางกรณีเห็นด้วยกับความเชื่อมั่น แต่เมื่อมีโอกาสแสดงความคิดเห็นโดยผู้ใช้ Hackaday.io [Tim Böscke] แนะนำให้หันไปรอบ ๆ และสร้างไมโครคอนโทรลเลอร์จาก 555 ตัวจับเวลา Gauntlet นั้นดีและโยนลงจริงๆ ตอนนี้ขอให้ชัดเจนนี่ไม่ใช่ครั้งแรกที่เราเจอความคิดนี้มีการสร้างหั่นขนมหั่นขนมปัง 555 เมื่อสิบปีก่อน แต่นี่เป็นครั้งแรกที่เราเคยเห็นโดยใช้ประโยชน์จากการสังเคราะห์โอเพ่นซอร์สที่กำหนดเป้าหมายไปยัง PCB !

องค์ประกอบตรรกะแรกเป็นอินเวอร์เตอร์ที่ง่ายสร้างขึ้นโดยการวางหมุดที่กำหนดไว้และหมุดเกณฑ์ด้วยกัน

รูปแบบ Ltspice ของประตู nand ที่ใช้งานกับ 555 และไดโอด
จากนั้นมันเป็นเรื่องง่ายของการเพิ่มเครือข่าย Diode-Resistor สองสามตัวเข้ากับอินพุตเพื่อส่งผลให้ประตู Nand2 และประตู Nor2 การพัฒนาได้รับการเร่งความเร็วโดยการสร้างแบบจำลองวงจรตรรกะใน LTSPice เพื่อค้นหาการผสมผสานที่ดีที่สุดของค่าชิ้นส่วน จากองค์ประกอบที่ง่ายเหล่านี้สามารถนำไปใช้ฟังก์ชั่นตรรกะได้ดียิ่งขึ้น ถัดไปจำเป็นต้องใช้องค์ประกอบหน่วยความจำ ในฐานะที่เป็นโชคจะมีมัน 555 มีการพลิก Rs เป็นส่วนหนึ่งของวงจรที่ป้อนโดยอินพุตเปรียบเทียบคู่ สิ่งที่จำเป็นทั้งหมดคือการอคติการป้อนข้อมูลที่ VDD / 2 แล้วให้ป้อนข้อมูลผ่านทรานซิสเตอร์ผ่านและ Hello Presto! สามารถซ่อมได้แม้ว่าจะสลักช้า

[Tim] ก่อนหน้านี้ได้สร้างซีพียูที่เรียบง่ายที่เรียกว่า MCPU โดยมีคำแนะนำเพียงสี่คำได้รับการพัฒนาให้พอดีกับ 32 Macrocell FPGA ดังนั้นจึงสามารถนำการออกแบบนั้นมาใช้ซ้ำได้สำหรับโครงการนี้ ส่วนที่สนุกคือการใช้ประโยชน์จาก Toolchain PCBFlow [TIM] ซึ่งใช้การไหลของการสังเคราะห์ Yosys กับแบ็กเอนด์ที่กำหนดเองและเส้นทาง (PNR) มีการสร้างไฟล์เสรีภาพที่อธิบายถึงวงจร (macrocells) [TIM] ต้องการใช้งานจากนั้นสคริปต์การสังเคราะห์จะใช้การไหลโดยใช้ Yosys / GHDL เพื่อล้างการออกแบบแผนที่เป็นเทคโนโลยีที่กำหนดไว้ก่อนหน้านี้และเขียน NetList เครื่องมือ PNR สามารถใช้ได้ Yosys อย่างเป็นประโยชน์เขียน PDF ของการออกแบบเช่นเดียวกับ NetList Spice เครื่องมืออะไร!

เครื่องมือ PNR [TIM] สร้างขึ้นสำหรับ PCBFlow ถูกเขียนใน Python และส่งออกรูปแบบ XML ที่นกอินทรีสามารถใช้ได้ งานของมันคือการวาง macrocells (จงใจทำสแควร์) โดยการค้นหาวงจรกายภาพที่เหมาะสมรวมถึง Passives ทั้งหมดทิ้งไว้ใน PCB เพิ่มการเชื่อมต่อระหว่างกันแล้วเพิ่มประสิทธิภาพการใช้งานการใช้การอบแบบจำลองให้เหมาะสมสำหรับความยาวการร่องรอยที่เรียบง่าย เราคิดว่าผลลัพธ์ที่น่าดูสวยมากและวิธีการเป็นสิ่งที่สามารถนำกลับมาใช้ใหม่ได้อย่างง่ายดายสำหรับโครงการอื่น ๆ ในอนาคต

ขอบคุณ [ygdes] สำหรับการส่งสิ่งนี้มาแล้ว!

Leave a Reply

Your email address will not be published. Required fields are marked *