Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React Angular CSS Node.Js PHP HTML5 Vue JS
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA Microsoft AZ-900 AWS Certified Developer - Associate
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Qlik Sense Blockchain
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Virtual Reality
Google Flutter Android Development iOS Development React Native Swift Dart (programming language) Mobile App Development Kotlin SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting Canva InDesign Character Design Procreate Digital Illustration App
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Life Purpose Mindfulness Meditation Sound Therapy CBT Cognitive Behavioral Therapy
Entrepreneurship Fundamentals Business Fundamentals Freelancing Business Strategy Startup Business Plan Online Business Blogging Home Business
Digital Marketing Social Media Marketing Marketing Strategy Internet Marketing Google Analytics Copywriting Email Marketing YouTube Marketing Podcasting

IT & SoftwareHardwareComputer Architecture

Design a CPU

Computer Architecture and Design
Bestseller
Rating: 4.7 out of 54.7 (419 ratings)
3,582 students
Created by Ross McGowan
Last updated 12/2021
English
English, Afrikaans, 

What you'll learn

  • Design and Simulate an 8 BIT CPU
  • Create your own INSTRUCTION SET
  • Create your own ASSEMBLY LANGUAGE
  • Create your own ASSEMBLER in EXCEL
  • Create your own assembly language DEBUGGER in EXCEL VBA
  • Write your own assembly language PROGRAMS
  • Put simply , 'IF YOU WANT TO KNOW HOW A COMPUTER WORKS THEN TAKE THIS COURSE !!!'
  • That's right , 'IF YOU REALLY WANT TO KNOW HOW A COMPUTER WORKS THEN TAKE THIS COURSE !!!'
  • Subtitles added in 78 different languages

Requirements

  • You need a computer. Also I would suggest a book called ButHowDoItKnow , The Basic Principles of Computers for Everyone by J. Clark Scott.

Description

If you want to know how a computer works then this course is for you. I work through the design of a simple CPU (Central Processing Unit) which is the beating heart of a modern computer. I design and simulate each block of the CPU in an online tool called Logisim. You can download the tool and simulate the CPU on your own computer or if you  like you can take a copy of my simulation files and just load them into the tool and simulate what you have learned in the videos or just listen along to the videos (it's up to you).

I have added subtitles for 78 different languages. If your language is not there then get in touch and I will add it in. If you are not a native English speaker then try the subtitles and run the videos at 0.75x speed.

First we download the free design tool called LOGISIM in which we design and simulate our CPU and take a look around the tool and show you how it works. Then the fun begins. We design and simulate the following blocks

Simple logic gates

1 bit memory cell

8 bit memory cell

8 bit register

Decoder

RAM (Random Access Memory)

ALU (Arithmetic Logic Unit)

Clock

We then take a break from our hard work (pheeewww!!!) and ask the question ,  ' Can a computer answer the question of Life the Universe and Everything ? '  We look at some of the ideas behind what a computer is and what it can and more importantly cannot do ! We answer this question in the next two videos.

Algorithms

Turing Machines

After this little break we then get back to designing our CPU. We design and simulate the most difficult section called the Control Unit. This is where the MAGIC happens and you will get that amazing EUREKA moment when you can say, ' I KNOW HOW A COMPUTER WORKS !!! ' In this section we build up the INSTRUCTION SET within the CONTROL UNIT. This INSTRUCTION SET consists of :

FETCH EXECUTE Cycle

ALU Instructions

LOAD and STORE Instructions

DATA Instruction

JUMP REGISTER Instruction

JUMP ADDRESS Instruction

JUMP IF Instruction

CLEAR FLAGS Instruction

We then build up an ASSEMBLER in Microsoft Excel (what's an assembler ? Once you get to this point you will know and you will be home and dry !)

We then model the CPU using Excel VBA and from this build an ASSEMBLY LANGUAGE DEBUGGER. This will help us write our ASSEMBLY LANGUAGE PROGRAMS. Finally we are in a position to load the CPU up with our first assembly language program. An algorithm that multiplies 2 numbers together (might not sound like much but you can then design your own algorithms and simulate them on YOUR OWN CPU).

We then look at the Top Level Simulation. We load up the CPU RAM (memory) with our first program and watch it running through the program live right in front of our eyes. You can let it execute the code quickly or you can step through a 0 and a 1 at a time and see every little detail of what is happening inside the CPU that YOU have just designed !!!

Also keep a look out in the bonus section for extra material that I will be periodically adding. I expand the CPU from 8 bits to 16 bits , create some more assembly language algorithms that run on the CPU and explain in detail the VBA code from the assembler and debugger (PLUS MORE TO COME).

This course follows the CPU design in the book ButHowDoItKnow (The Basic Principles of Computers for Everyone). THIS COURSE IS FEATURED ON THE AUTHORS WEBSITE. You do not need to buy the book to follow the course but I would highly recommend the book.

IF YOU WANT TO KNOW WHAT LIES AT THE HEART OF A COMPUTER AND HOW IT WORKS THEN THIS IS THE COURSE FOR YOU !!!

Who this course is for:

  • Everyone and anyone who asks the question ' How do computers work ?'

Instructor

Ross McGowan
Applied Mathematics and Computer Science Educator
Ross McGowan
  • 4.6 Instructor Rating
  • 660 Reviews
  • 5,062 Students
  • 13 Courses

I am a graduate in Communications Engineering from Edinburgh University. I have spent my adult life working in the communications industry. First as an integrated circuit designer then in mobile telecomms. My first love is mathematics and the application of mathematics to engineering problems. I also have a love of learning and teaching. Mathematics should be fun and enjoyable and an intuitive understanding should be gained first and foremost. Comprehension is king.

Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.