48211510
DESCRIPTION
48211510TRANSCRIPT
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 1/10
Progress Report 1
Progress Report
Title: Multiply and Divide
โดย
นางสาวกสมา เชาวลต No. 48211510
นายวรพล เศรษฐภัทร No. 48211562
นายสทธชัย จรวัฒนากตต No. 48211575
--------------------------------------------------
Introduction:
การทางานของวงจรน จะเปนการจาลองการทางานของ Processor โดยเพ มความสามารถในการคณและหารเขาไปวนสวนของ ALU ซ งทางคณะผ จัดทาไดดาเนนการทางานมาเร อยๆ ซ งยัง
ไมเสรจเรยบรอย เหลออกประมาณ 30% ของช นงาน จงจะสาเรจ ซ งวัตถประสงคของการทางานคอ
1) การสรางวงจรจาลองการทางานของ Processor ทั งน เพ อเรยนร การทางานจรงของ
Processor
2) เพ อศกษาหลักการทางานของ processor SAP-1 และสามารถนาความร ท เรยนมา ประยกตใชได
3) เพ มความสามารถการทางานของ SAP-1 โดยการเพ มฟงกชันการทางานเขาให สามารถใชงานในวงจรท ม การ คณ และหาร ไดอยางมประสทธภาพมากข น
4) สามารถออกแบบ ALU ใหมความสามารถในการคานวณตัวเลขคณและหารได
Progress of Work:
1. Work Completed
วงจร SAP-1 เสรจเรยบรอยแลว ตอไปคอการเพ มฟงกชันการทางานเขาไปใน ALU ใน
SAP-1 วงจรท จะเพ มเขาไป คอ วงจรคณและหาร ซ งวงจรคณเสรจเรยบรอยแลวแตยังไมไดนามาไวใน ALU ตอนน กาลังดาเนนการทาวงจรหาร ซ งงานท ทาไปแลวไดประมาณ 70% ซ งยังเหลออก
30% ท ตองดาเนนการตอไป
2. Work in-progress
ขั นตอนในการทางาน
1.จากการท ไดเสนอวาจะทาวงจรเลขยกกาลังโดยท ไดออกแบบไวซ งจะตองมการเพ ม register ไป และเปนวงจรคณ ซอนวงจรคณ ซ งจากการทดลองออกแบบวงจรเลขยก
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 2/10
Progress Report 2
กาลัง จะเกดปญหาในการ debug หลายอยาง จงไดเปล ยนมาทาวงจร คณ หารแทนวงจรเลขยกกาลัง
2. วงจรคณและหาร ขณะน ไดทามาถง วงจร SAP-1 แลวโดยท วงจร SAP-1 ท เรา
ออกแบบมานั น สามารถทางานวงจรบวกและวงจรลบได โดยท วงจรคณกไดทาการออกแบบไวแลวแตยังไมสามารถตอใหเขากับวงจร SAP-1 ได ซ งเราไดพยายามแกไขอย
3. เร มแรกเรากตองออกแบบวงจร SAP-1 กอนโดยท เราทาการพัฒนาวงจรทละอยางโดยท เร มจากการสราง Register ALU แบบงายๆกอน โดยท เราจะสรางวงจรบวก และวงจรลบมาโดยท เราจะใช Su เปนตัวบอกวาเราจะทาเปนวงจรหรอไม ถา Su เปน 1 เรากจะไดวงจรเปนลบ แตถา Su เปน 0 จะไดเปนวงจรบวกซ ง Su จะมคาเปน 0 หรอ 1นั นเกดจากการท เรากดเลอกเองวาจะใหเปนบวกหรอลบดังรป
รปท 1 : รปแสดง Su ของวงจร SAP-1
ตอมาเรากเพ ม ROM เขาไปโดยท เราจะสามารถอานชดคาสั งของวงจรท เราตองการทดสอบไดโดยการเพ มกลอง ROM เขาไป โดยการอานคามากจาก TEXT ไฟล เราจะใชตัว memory_12_8 มาอานขอมลจาก TEXT ไฟล จากนั นสงออกมายัง ALU ท เราไดทาการตอไวแลว แตเราตองกดเลอกเองวาจะใหโหลดไปไวใน Register ตัวไหนเม อไหรเอง
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 3/10
Progress Report 3
รปท 2 : รปแสดง ROM ของวงจร SAP-1
รปท 3 : รปแสดง SHEET ภายใน ROM ของวงจร SAP-1
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 4/10
Progress Report 4
ตอมาคอการตอวงจร PC และ MAR เขามาใหกับวงจรท เราสรางไวเพ อใหวงจรสามารถโหลดเอาคามาจาก TEXT ไฟล โดยท เราจะสามารถโหลดออกมาทละบรรทัดโดยการปลอยคาเขาไปใน Register ซ งเราตองกาหนดวาจะใหเขาไปท ไหนกอน แลวจงสงเขา
ALU เพ อดาเนนการบวกและลบตอไป
รปท 4 : รปแสดง MAR และ PC ของวงจร SAP-1
รปท 5 : รปแสดง SHEET ภายใน PC ของวงจร SAP-1
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 5/10
Progress Report 5
รปท 6 : รปแสดง SHEET ภายใน MAR ของวงจร SAP-1 ขั นตอนสดทายในการทา SAP-1 คอการตอ IR Control Unit และ Output Register
ซ งวงจรน จะสามารถ Process ไดเองโดยไมตองบังคับคาตางๆ เหมอนท ผานมา
ขั นแรกวงจรจะเร มท PC สงสัญญาณออกมาแลวไปเลอกใน ROM วาจะใหทาอะไรโดยท ROM จะถกอานไปเร อยๆตามคาสั งท รับมาจาก MAR จากนั นจงสงคาลงไปใน
BUS เพ อใหวงจรอ นๆสามารถรับคาเพ อทางานตอไป โดยท IR จะรับคาเขาไปเพ อไปทาการ Decode ใหออกมาเปนสัญญาณวาวงจรขณะจะทาอะไร โดยท เรากาหนดไววา
0000 หมายถง การโหลดขอมลมาจาก ROM
0001 หมายถง คาสั ง ADD
0010 หมายถง คาสั ง SUB
1100 หมายถง OUT คอการสงคาออก OUTPUT
1111 หมายถง การ HLT การหยดโปรแกรม
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 6/10
Progress Report 6
รปท 7 : รปแสดง CONTROL UNIT และ IR ของวงจร SAP-1
สวนการขยายตอจาก SAP-1 คอ การทาวงจรคณและวงจรหารโดยท เราจะเพ มวงจรเหลาน เขาไปใน ALU ซ งมวงจรบวกและลบอย แลว ซ งขณะน ไดทาการตอวงจรคณสาเรจแลวแตยังไมไดนาเขาไปรวมกับวงจร SAP-1 ท ไดสรางเอาไวเพราะเน องจากเม อนาเขาไปรวมแลววงจร SAP-1 ไมสามารถทางานไดเน องจากจานวน bit ไมพอและวงจรทางานไมปกต ผลลัพธท ไดไมตรงกับคาจรงท ควรจะเปน ซ งยังหาวธรวมเขาไปใน ALU
ใหทางานแบบเลอกวาจะทาอะไรไมได โดยท วงจรคณท ไดออกแบบมาแลวจะมลักษณะดังน
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 7/10
Progress Report 7
รปท 8 : รปแสดงวงจรคณ
โดยเราใชหลักการท วาจะนา ตัวตั ง 4 bit มาเปนตัวหลักแลวนามา AND กับ ตัวเลข
ตัวเลขของ ตัวคณ โดยเลอกมาเพยงตัวเดยวเม อตัวคณเปน 1 กจะสงคาของตัวตั งเขาไปใน
ADDER แลวนาไปรวมกับผลของการ ADDER ท ไดจาก bit กอนหนาท ไดทาไวแลวโดยท ตองการทา SHIFT คาของผลท ไดมาจาก ADDER กอนหนาดวย ทาอยางน เร อยๆไปจนครบ 4 bit ซ งกไดคาออกมาตรงกับความจรงและวงจรหารท ไดออกแบบแตยังไมเสรจสมบรณ
3. ไดเรยนร อะไรจากการทางาน
1. ไดร วา Processor ทางานอยางไร มวธขั นตอนในการทางานอยางไร
2. ไดร วาแตละข ันตอนวงจรอะไรทางานอยางไร รับคาอยางไร สงคาอยางไร โดยไมจาเปน
วาตองทางานทั งหมดครบทก CLOCK กได 3. สามารถนาไปประยกต สรางวงจรอ นๆได โดยใชหลักพ นฐานของ SAP-1 ท ได ออกแบบไปแลว
4. ไดร จักการแกปญหาทละขั นตอน ดไปทละข ันตอน เพราะไมสามารถแกปญหาแบบผาน
ไปได
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 8/10
Progress Report 8
4 ปญหาตางๆ
4a. ปญหาท พบการทางาน
1. ปญหาท พบและไดถกแกไขไปแลว คอ การท CLK ท เราสรางมานั นไมตรงกับจังหวะ
CLK ท เราตองการบางครั งชาไป บางครั งเรวไป ซ งกไดทาการแกไขท ใชเวลาพอสมควรกวาจะได CLK ตามท ตองการ
2. MAR ไมสามารถสง Instruction การ ADD ได ทาใหคาว งโหลดเอามาแตคาท อย ในบรรทัดแรกเทานั นทาให PC ไมยอมเปล ยนคา โดยท การ Decoder นั นถกตองแลวทาใหเราตองไปแกท PC และ MAR ใหสัมพันธกัน
4b. ปญหาท พบและยังไมสามารถแกไขได 1. การนาวงจรคณท สรางข นมาไปใสไวในALU ของ SAP-1 ใหทางานได ทั งน เพราะวา
จานวน bit ท จะนามารับคาไมเพยง อกทั งการท จะแกแบบใหสามารถเลอกไดวาจะทาวงจรบวก ลบ คณ หรอหารไดนั นยังไมสามารถทาไดเน องจากตองตอ gate เขาไปอกมากซ งซับซอนยังไมสามารถทาได
2. วงจรหารยังไมสามารถออกแบบใหทางานไดจรงอย ในระหวางการแกไขซ งการหารนั นตองเทยบวา bit ตัวหนาเปน 0 หรอ 1 ยังไมสามารถทาไดอกทั งวงจรตางๆกยังไมสมบรณอกดวย
4c. ปญหาท เกดข นแลวทาใหเปล ยนการออกแบบ Prosessor
ตอนแรกจะทาวงจรท สามารถทาเลขยกกาลังได แตเม อไดทดลองทาจรงเกดปญหาข นมากมายโดยจานวนท ใชในการแสดงผลมมากมาย ไมสามารถแสดงไดหมด อกทั งตองสราง Branch อกซ งตองสรางข นมาอก โดยไดลองๆทาดแลวไมสามารถทาใหกลับมาคณอกคร ังไดจงเปล ยนการออกแบบใหเปน คณและหาร แทนซ งกมเคาโครงวานาจะสาเรจในเวลาท กาหนดไว
Implementation Plan :
ในข ันตน :
ทาการตอSAP-1 ลงใน Proteus ในคาบเรยนทไดศกษาไว ซ งทาเร อยมาและแกปญหาตางๆท เกดข นเพ อใหSAP-1 สมบรณกอนท จะทาอยางอ นเพ มเตม โดยลาดับการทาคอ
- ALU
- REGISTER A & B
- ROM
- PC
Multiply & Divide
7/16/2019 48211510
http://slidepdf.com/reader/full/48211510 9/10
Progress Report 9
- MAR
- IR
- CONTROL UNIT
- OUTPUT
ในข ันกลาง :
เม อเราตอ SAP-1 ตามท กลาวมาแลวจะพบปญหามากมาย ซ งตองใชเวลาพอสมควรในการแกปญหาตางๆท เกดข น
ในข ันทาย :
คาดไววาการทาคณกับหารนั นตองใชเวลาประมาณ 1 อาทตยในการออกแบบ
และลงมอตอจรงแลวแกปญหาท เกดข นอกประมาณ 1 อาทตย
โดยการทา SAP-1และพัฒนาคณกับหารแลวนั น คาดวาใชเวลาการทาโดยรวมแลวเสรจภายในเวลา 1 เดอน
Conclusion :
ปญหาหลักท พบคอการนาวงจรคณหรอหารท สรางเอาไวนามารวมกับวงจร Sap-1 ท ไดสรางเอาไวได สาเหตหลักคอการท ตองเพ มจานวน bit เขาไปใหวงจรท ออกแบบ กาหนดตัวท คอยควบคมวาจะเลอกใหเปนวงจรบวก ลบ คณ หาร ซ งตองแกใน ALU โดยการนา Gate ท จาเปนมาตอ
ใหไดตามท ตองการ อกทั งยังตองทาวงจรหารใหเรยบรอยกอนแลวนาเขามาในวงจร SAP-1 ใหไดเชนเดยวกับวงจรคณ ตองหาวธนามารวมในวงจร และสามารถเลอกไดวาจะใหเปนวงจรอะไรในชวงเวลาท ตองการใช
ผลท คาดวาจะไดรับ
- เขาใจหลักการทางานของ Processor อยางงาย
- มหลักการพัฒนา Processor อยางงาย เชน ส งท ตองคานงถงในการสงขอมล ขนาดBUS ท ใชในการสงซ งถาเราทาวงจรคณตองม BUS รองรับ เปน 2n
ขอคดเหนในทม
- วงจรเลขยกกาลังยากมาก จงไดเปล ยนมาเปนวงจรคณและหารแทน
- สวนท ยากในการทางาน คอ การออกแบบเบ องตน เพราะไดออกแบบมาบางครั งส งท คดมานั นเปนวธท ไมเหมาะสม เชน จานวน GATE มากเกนความจาเปน
Multiply & Divide